zoukankan      html  css  js  c++  java
  • 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学习65 实战使用awk高级功能统计网络请求连接状态
    Linux学习64 awk使用与实战
    Linux学习63 shell脚本高级编程-信号捕捉实战
    Linux学习62 shell脚本高级编程-数组和字符串处理
    Linux学习61 企业军工级别安全策略-SELinux简介
    Linux学习60 centos7新特性-systemd及systemctl实战
    Linux学习59 shell脚本高级用法-函数编程与应用实战
    【HBase】HBase与MapReduce的集成案例
    【HBase】底层原理
    【HBase】Java实现过滤器查询
  • 原文地址:https://www.cnblogs.com/ant-colonies/p/6268681.html
Copyright © 2011-2022 走看看