vim编辑器初级(七)
:syntax on 打开语法高亮
:syntax off 关闭语法高亮
vim有两套语法颜色方案,分别用于背景亮和背景暗时,当vim启动时它会尝试辨别背景并选择合适的颜色方案,但vim辨别背景时可能出错
:set background? 查看background选项的值为多少
:set background=light 将background选项的值设为light,也可设为dark,这样就可以让vim选用正确的颜色方案
vim会通过文件扩展名来识别文件类型,如果你的文件没有一个标准的扩展名那么vim就不能正确地将语法高亮显示
:set filetype=c 这样就可以告诉vim你正在编辑的文件是C语言的源文件,也可以设置为其他类型
% 用于匹配括号,将光标置于左括号或右括号,按下%后光标就跳转到相对应的右括号或左括号,也可以匹配C语言的注释符号#ifdef等预处理指令
<< 将光标所在行向左缩进,在前面加一个数字就会缩进那么多行
>> 将光标所在行向右缩进,在前面加一个数字就会缩进那么多行
< 后接一个动作,会将从当前行到动作定位处的所有行都向左缩进
> 后接一个动作,会将从当前行到动作定位出的所有行都向右缩进
:set shiftwidth=4 设置每一次缩进的宽度,通常设置为4最具有可读性
:set tabstop=4 设置每个tab的宽度为4,这样就与shiftwidth保持一致
vim有多种缩进模式,主要有的三种:
即cindent 使得vim会根据标准的C风格自动将程序进行缩进,在以#开头的行中,所有的缩进都被移除
smartindent 使得vim会将每行都与它的前一行保持相同的缩进,如果它的前一行包含{或}那么会自动增加或减少一层缩进
autoindent 使得vim会将每行都与它的前一行保持相同的缩进
在insert mode下,CRTL-D会使vim向左缩进
= 在viusal mode下会将选中的文本利用内部的格式化程序进行自动缩进,在normal mode下后接一个动作,将当前光标所在至动作定位处的所有文本自动缩进
在命令行用vimdiff命令打开两个或更多文件,就可以显示出这些文件的不同之处
此时可以用:dp命令将当前文件的更改移动到另一个文件中,也可以用:do命令将另一个文件的更改移动到当前文件中
zf 在visual mode下选中文本后执行zf命令会将所选文本折叠起来,在normal mode下后接一个动作,将当前光标所在行至动作定位行的所有文本折叠
zo 将光标移动到折叠行上,执行zo会打开折叠
:set foldmethod=indent 会使vim自动将所有文本按照缩进进行折叠
zc 关闭一层折叠
zX 将缩进情况复位
zv 有时折叠会使光标所在的行被折叠起来,此时执行zv命令会令vim展开足够多行知道光标所在的那行显示出来
:set foldlevel=3 设置折叠层次,例如设置为3后,所有缩进了三个以上层次的文本都会被折叠,默认的foldlevel值为0
zm 将foldlevel减1,会使缩进的文本增加
zr 将foldlevel加1,会使缩进的文本减少
zR 直接取消折叠
zM 尽最大可能折叠
[CTRL-I 跳转到光标所在的词,从文件的开头进行搜索,包括#include所引入的文件
]CTRL-I 跳转到光标所在的词,从当前光标的位置开始搜索
gd 寻找光标所在变量的局部定义
gD 寻找光标所在变量的全局定义
[CTRL-D 寻找光标所在宏的第一次定义,#include所引入的文件也被搜索
]CTRL-D 寻找光标所在宏的下一次定义
[d 显示光标所在宏的第一次定义,#include所引入的文件也被搜索
]d 显示光标所在宏的下一次定义
[D 列出光标所在宏的所有定义
]D 列出光标所在宏的所有定义,从当前位置往后
>i{ 先将光标放在{上,然后执行命令>i{,会将{ }内的文本全部向右缩进
i} 先将光标放在{上,然后按v进入visual mode,再执行i}会选中{ }中的文本,之后执行>,也可以将{ }内的文本全部向右缩进
K键 将光标所在的词作为主题,执行操作系统的man命令
转载于:https://www.cnblogs.com/dreamtrue13/p/6640417.html
vim编辑器初级(七)相关推荐
- linux软件管理(Vim编辑器使用) ——(七)
windows : .exe 安装 .卸载 安装: mysql.exe cc.exe 卸载 : 该软件唯一的标识 ,包名 alibaba android : *.apk 卸载 包 ...
- 6.Linux中vi/vim编辑器详解
文章目录 前言 一.vim/vi 介绍 二.vi/vim学习图(初级) 三.文本编辑(状态)概览 四.使用vi打开文本的方式 五.命令模式 1.进入插入模式(进行文本编辑) 2.从插入模式切换为命令行 ...
- kali linux 里vim如何使用_Kali Linux的vi编辑器/vim编辑器使用方法
转载声明:本文为转载文章 Kali Linux系统的vi编辑器/vim编辑器的使用和CentOS有很多不同.基本使用方法如下 1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(comma ...
- linux vim编辑器的用法
vim编辑器 文本编辑器,字处理器 ASCII nano, sed vi: Visual Interface vim: VI iMproved 全屏编辑器,模式化编辑器 vim模式: 编辑模式(命令模 ...
- Linux01-Linux文本编辑器vim编辑器深入详解22
一.vim编辑器 1.文本编辑器,字处理器: 2.vi:Visual Interface: 3.vim:VI iMproved,是vi的增强功能: 4.全屏编辑器:vi.vim.nano; 5.vim ...
- vim 编辑器命令整理
文章目录 一.基本使用流程 二.普通命令模式 (一)切换到插入模式(编辑/写入/输入) (二)切换到可视模式(选择文本模式) (三)切换至底行命令模式 (四)替换/修改 1. 切换到替换模式 2. 替 ...
- Linux——vim编辑器详解
vim编辑器 文本编辑器,字处理器 ASII nano sed vi:visual Interface vim VI improved 全屏编辑器,模式化编辑器 编辑-->输入 i:在当前光标所 ...
- linux vim修改字符串,Linux系统vi(vim)编辑器命令说明
Linux系统vi(vim)编辑器命令说明 刘大喵 • 2019 年 02 月 06 日 vi(vim)是上Linux非常常用的代码编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim ...
- 编辑器之神——vim编辑器
编辑器之神--vim编辑器 一.vi介绍 Vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器,由于在Unix及Linux系统的任何版本, ...
最新文章
- android+3g,不到900的Android+3G手机 TCL A906评测
- 传递给beanshell的参数_jmeter基础之断言及参数的关联性
- but was actually of type 'com.sun.proxy.$Proxy**'的两种解决方法
- nssl1438-战略威慑【枚举,树的直径】
- android超级管理员权限作用,Android获取超级管理员权限的实现
- .view-content:overflow:hidden 大错误
- 中国农业种植施肥机械行业市场供需与战略研究报告
- [LeetCode]Ugly Number
- Atitit 解析m4a文件的元数据标签音乐名,歌手 专辑 年代等信息 java版本 目录 1.1. 自己解析mp4 m4a结构	1 1.2. 格式返回	1 1.3. /bookmarksHtmlE
- 23位子网掩码是多少_24 28 30 位的子网掩码是多少
- matlab 画三维图像
- 机器学习-决策树算法
- APICloud前端框架
- word中如何设置奇偶页不同的页眉和页脚,怎么从指定页开始加页码
- 上海交通大学python实践教程答案_python实践教程答案(求python课后习题答案)
- ProM安装以及配置
- kali永久提root权限
- 2021 年Python最新学习软件及文档资料分享
- 微信注册筛选软件 微信开通筛选技术
- java内存泄漏怎么检测_JAVA内存泄漏原因和内存泄漏检测工具
热门文章
- devc++鼠标变成了光标_Excel填充别再用鼠标拖拉了!用这4个方法,效率至少高10倍!...
- xampp mysql 查询很慢_如何开启mysql的慢查询机制
- python if else 必须同时出现吗,Python:Inline if语句else什么也不做
- 【WebRTC---源码篇】(三)Windows/Linux音视频采集封装模块
- java socket优化_Java Socket编程代码优化
- C语言 | 二维数组
- Linux C语言结构体
- centos7.4编译mysql5.6,centos7编译安装mysql5.6
- 里氏替换原则_代码需要有单一职责,还要开闭,里氏替换又是什么鬼?
- mysql parameter_C#MySqlParameter问题