Linux中vim编辑器的缩进的功能键
vim编程时,经常需要对代码进行缩进处理,以增加程序的可读性和后期的代码维护.
可以采用多种方式达到缩进的目的:
1) 命令模式(command mode)
2) Visual模式(visual mode)
2) 输入模式(entry mode)
3) 末行模式(last-line mode)
4) 在/etc/vimrc有给予vim的环境配置, 一般地, 个性化的定制vim的功能,建议在~/.vimrc文件中进行配置(一般用户可自行创建该文件).
命令模式:
>> 当前行增加一个单位缩进 (即多少个空格为一个单位,为配置文件参数shiftwidth的值)
<< 当前行减少一个单位缩进 (可以连续多次缩进多个单位长度)
#>> 当前行增加#个单位缩进
#<< 当前行减少#个单位缩进 (6>>)
== 为自动排版,也可减少一个单位缩进
Visual模式:(在command mode下Ctrl + V切换)
可将选定的单行或多行:
> 增加一个单位缩进
< 减少一个单位缩进
#> 增加#单位缩进
#< 减少#单位缩进
输入模式:
Ctrl+T增加一个单位缩进
Ctrl+D减小一个单位缩进
末行模式:
startline, endline > 将startline至endline增加一个单位缩进 (经验证,貌似不能出现#>)
startline, endline < 将startline至endline减少一个单位缩进
在配置文件~/.vimrc中添加个性化自动缩进的环境配置参数:
一般有以下的几种:
autoindent: 新增加的行和前一行有相同的缩进形式;
smartindent: 1)每一行都和前一行有相同的缩进量;
2)当遇到右花括号"}"时,则取消了缩进形式;
3)如果一行是以#开头的,则不缩进;
4)此外还增加了识别C语言关键字的功能;
cindent: 这是C语言的缩进形式,采用这样的缩进方式的程序语言有:C,C++,Java等;
当采用这种缩进格式时,vi就会自动的采用标准的C语言形式.
先进性: autoindent < smartindent < cindent
可以用如下命令进行缩进形式的设置:(可在末行模式下操作)
set autoindent 或 set ai
set smartindent 或 set si
set cindent 或 set ci
关闭缩进时: set noautoindent
...
与缩进(indent)相关的参数有:shiftwidth、tabstop、softtabstop、expandtab.
shiftwidth 操作(<<和>>)时缩进一个单位;
tabstop 一个tab键所占的空格数,linux 内核代码建议每个tab占用8个空格;
softtabstop 敲入tab键时实际占有的空格数;
expandtab 输入tab时自动将其转化为空格;
说明tabstop、softtabstop、expandtab之间的关系:
1)三者均用于定义一次tab键所代表的空格数;
2)当定义了softtabstop时,tabstop和expandtab均以softtabstop为准;
3)即当softtabstop=4 无论tabstop和expandtab为何值,最终都为4个空格作为一个单位.
vim ~/.vimrc
Linux中vim编辑器的缩进的功能键的更多相关文章
- Linux中vim编辑器常用操作技巧
Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-styl ...
- Linux中vim编辑器 的 快捷键 --- 常用 的 都比较全
Linux中vim编辑器的功能非常强大,许多常用快捷键用起来非常方便,这里将我学vim入门时学的一些常用的快捷键分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到 ...
- 【Linux】Linux中VIM编辑器的使用
vim编辑器是我们在Linux中不可或缺的一部分,我们通常会使用它去自定义编辑文本已达到我们的需求,那么vim文本编辑器具体要怎么使用呢.今天跟大家分享一下vim编辑器的使用: vim编辑器模式介绍 ...
- Linux中vim编辑器的总结
vi( Visual Interface ) vim( VI iMproveed ):为纯文本(ASCII)全屏编辑器,也是模式化编辑器. vim的三种模式: 1)编辑模式(命令模式) 2)输入模式 ...
- Linux中vim编辑器常用命令
移动光标 Ctrl+f:屏幕向下移动一页,相当于[Page Down]按键Ctrl+b:屏幕向上移动一页,相当与[PageUp]按键 0或功能键[Home]:数字‘0’:移动到这一行的最前面的字符处$ ...
- Linux中vim编辑器莫名下方出现H的问题
在使用vim编辑文件的时候,不知道自己是按了哪个快捷键,导致了,每次编辑文件时,下方命令行出现数字+H的格式命令,使得整个文件没法编辑,强制退出后进入不能解决问题,各种文件的编辑都不行,找不出原因,最 ...
- linux中vim编辑器的翻页命令
Linux jdk查看文件的最后一行 输入$回车 查看文件的第一行 输入0或者1回车 向前翻页 Ctrl + f f为forw ...
- linux中vim编辑器三种模式及常用命令的使用
Linux命令经常使用才会烂熟于心 命令行模式: 移动光标: 向下左右箭头可以移动光标: 将光标移动到行尾:$; 将光标移动到行头:^: 将光标移动到页尾:shift+g; 将光标移动到页头:1+sh ...
- Linux的vim编辑器中的翻页命令
当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页命令为:Ctrl + f 键 f 的英文全拼为:forward: ...
随机推荐
- C语言学习笔记--C语言中的逗号表达式
逗号表达式:exp1,exp2,epx3,...,expN; (1)逗号表达式是 C 语言中的“粘贴剂” (2)逗号表达式用于将多个子表达式连接为一个表达式 (3)逗号表达式的值为最后一个子表达式的值 ...
- [java] volatile关键字对while循环条件提升问题补充
在java并发编程中,代码如下: volatile boolean asleep; ... while(!asleep){ countSomeSheep(); } 如果此处忘记将asleep变量设置为 ...
- Structuring Machine Learning Projects 笔记
1 Machine Learning strategy 1.1 为什么有机器学习调节策略 当你的机器学习系统的性能不佳时,你会想到许多改进的方法.但是选择错误的方向进行改进,会使你花费大量的时间,但是 ...
- 项目积累demo-01
1 搭建Spring-Boot项目 在这里我使用intellij新建spring boot工程: 点击next; 输入Group以及artifact之后.点击next.之后点击web.接着finish ...
- elasticsearch2.x插件之一:kibana
介绍: 要说kibana,就不得不先说一下logstash.这里呢,先要讲个故事.故事是开头是这样的,Logstash早期曾经自带了一个特别简单的logstash-web用来查看ES中的数据,其功能太 ...
- 共用体的定义和应用【C++】
定义: 使用覆盖技术,几个变量相互覆盖,从而使几个不同变量共占同一段内存的结构,成为共同体类型的结构. 共同体的定义类似结构体,不过共同体的所有成员都在同一段内存中存放,起始地址一样,并且同一时刻只能 ...
- p1919 A*B Problem升级版
传送门 题目 给出两个n位10进制整数x和y,你需要计算x*y. 输入格式: 第一行一个正整数n. 第二行描述一个位数为n的正整数x. 第三行描述一个位数为n的正整数y. 输出格式: 输出一行,即x* ...
- 阶段2-新手上路\项目-移动物体监控系统\Sprint1-声音报警子系统开发\第1节-Sprint Backlog规划
根据之前的sprint1-声音报警子系统是相对比较大的一个需求,需要把它进一步细化,然后指定sprint Backlog product Backlog是整个产品的功能列表! sprint Backl ...
- 使用Cors后台设置WebAPI接口跨域访问
昨天根据项目组前端开发工程师反映,在浏览器端无法直接使用ajax访问后台接口获取数据,根据他的反映,我查阅了相关跨域的解决方案: 一:使用jsonP,但是jsonP只能使用GET请求,完全不符合我项目 ...
- KINECT2通过ROS在线跑ORBSLAM2
source ~/.bashrc export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/user/ORB_SLAM2/Examples/ROS 上面这个一 ...