文本编辑器vim

相关概念

       vim简介:vi(Visual Interface),文本编辑器,vim->viimproved

       文本编辑器种类:

              行编辑器:sed

              全屏编辑器:vi,nano

              图形编辑器:gedit(简单图形编辑器),gvim(vim编辑器图形版本)

       *vim既可以编辑文本也可以编辑二进制文件(-b选项)

主要模式

       编辑模式:insert,修改文本

       命令模式:normal,默认模式,移动光标,复制粘贴文本

       扩展命令模式:extended_command,保存退出等

       *替换模式:replace,命令模式下使用R进入,不经常使用

模式切换

       normal-->insert:i、a、o、I、A、O等

       insert-->normal:Esc

       normal-->extended_command:使用冒号:

       extended_command-->normal:Esc

编辑模式

       方向键移动光标,手动输入字符

命令模式

       退出:ZZ(保存),ZQ(不保存)

       查找:/pattern(光标处向文件尾部查找)、?pattern(光标处向文件首部查找)

       光标跳转:

                字符跳转:方向键;h(左)、j(下)、k(上)、l(右)

                单词跳转:w(下个单词词首)、e(当前或下个单词词尾)、b(当前或前个单词词首);num w(e、b)->一次跳转num个单词

                页面跳转:H(页首)、M(页中)、L(页尾)、zt(光标所在行移至屏幕顶端)、zz(移至屏幕中间)、zb(移至屏幕底端)

                行跳转:num G(跳转至num行)、G(最后一行)、1G(第一行)、gg(第一行)

                行间跳转:0(移至行首)、^(移至行首第一个非空白字符)、$(移至行尾)

                句间跳转:) 后一句、( 前一句

                段间跳转:} 后一段、{ 前一段

               翻屏:PgUp、PgDn

               字符编辑:

                      删除字符:x(删除光标处字符)、num x(删除光标处起num个字符)、J(删除换行符)

        替换字符:r(替换光标处字符)、~(转换大小写)

        删除操作:

  *删除字符使用dl,删除单词使用dw,删除句使用d)和d(,删除段使用d}和d{


        复制操作:

*复制字符使用dl,复制单词使用dw,复制句使用d)和d(,复制段使用d}和d{

        粘贴操作:

                p(缓存区复制的命令为整行时粘贴至光标所在行下方,否则粘贴至光标后)

                P(缓存区复制的命令为整行时粘贴至光标所在行上方,否则粘贴至光标前)

       改变操作:

              c命令:操作类似于d命令,命令作用为先执行复制命令再切换至编辑模式

       特殊命令:

              numi content [Esc]:在光标处粘贴content内容num次

              vi[:选中[ ]之间的内容(光标需在[ ]之间)

              di”:删除” ”之间的内容(光标需在“ ”之间)

              yi(:删除( )之间的内容(光标需在( )之间)

              *上述三个操作标识符可自行定义,但冒号:在使用时失效

        组合命令:

              y、d、gU(变大写)、gu(变小写)

              [eg]:0y$->0(光标移至行首)+y(开始复制)+$(复制到所在行行尾)

        撤销更改:u(撤销最近更改)、U(撤销之前多次更改)

        重复操作:Ctrl+r(重做最后撤销的更改)、.(重复前个操作)、num.(重复前个操作num次)

扩展命令模式

           退出::q、:q!(强制退出,丢弃所做的修改)、:wq(保存退出)、:x(保存退出)

           地址定界:

使用方式:定界命令后跟编辑命令(d、y等)

            查找替换:

                  :地址定界 s /待替换内容/替换内容/修饰符(标识符不一定用/,可自行选择)

                  待替换内容:可使用模式匹配

                  替换内容:不能使用模式,但可使用\1,\2等后向引用符号或&

            标识符:i(忽略大小写)、g(全局替换)、gc(全局替换,每次替换前询问)

                      [eg]:%s #etc#root#g(表示将全文所有的etc替换为root)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容