文本选择操作


       为了方便地选取文本块,Vim编辑器引入了可视模式Visual Mode)。要选取一段文本块,操作步骤如下:

        将光标移动到要复制文本块的开始处。要注意的是进入可视模式后,选中文本块是以开始光标位置向后或向前复制的,并且开始光标处的字符包含在将选中文本块中

        

        使用不同的快捷键进入不同的可视化模式。

字符可视化模式:Characterwise Visual Mode,以字符为单位选择文本,快捷键:v

行可视化模式   :Linewise Visual Mode,以文本行为单位选择文本,快捷键:V

块可视化模式   :Blockwise Visual Mode,选择一个矩形框内的文本,快捷键:Ctrl + v(Linux)、Ctrl + q(Windows)

        进行复制剪切或其他操作。

x or d : 剪切,所选文本块进入剪贴板,删除操作可以用剪切操作来实现。

y         : 复制,复制当前所选文本块。

r字符   : 替换,当前所选文本块的所有字符替换成新的字符。

or U : 反转大小写,当前所选文本块的所有字符全部进行小写或大写转换。

文本复制操作


       • y         : 只在可视化模式中使用,复制选定文本块到剪贴板。

       • [n]yy  : 当前行向后复制n行,当n省略时表示复制当前行。

       • y^      : 复制光标所在行光标位置到行头的内容。

       • y$       : 复制光标所在行光标位置到行尾的内容。

       • [n]yw : 以当前位置向后复制n个word,当n省略时表示向后复制1个word。

       • [n]yG : 复制第n行和当前行之间所有行,当n省略时表示复制当前行至尾行之间所有行。

Tips:

       点号(.)可以重复上次编辑命令。

文本剪切操作


       • d         : 只在可视化模式中使用,剪切选定文本块到剪贴板。

       • [n]dd  : 以当前行向后剪切n行,当n省略时表示剪切当前行。

       • d^      : 剪切光标所在行光标位置到行头的内容。

       • d$       : 剪切光标所在行光标位置到行尾的内容。

       • [n]dw : 以当前位置向后剪切n个word,当n省略时表示向后剪切1个word。

       • [n]dG : 剪切第n行和当前行之间所有行,当n省略时表示剪切当前行至尾行之间所有行。

Tips:

       点号(.)可以重复上次编辑命令。

文本粘贴操作


       • p : 小写p表示粘贴当前游标后,整行复制表示粘贴在游标所在行的下一行。

       • P : 大写P表示粘贴当前游标前,整行复制表示粘贴在游标所在行的上一行。

文本替换操作


• 命令格式

:[replace-range]s/replace-pattern/replace-string/[c,e,g,i]

• 命令说明

replace-range :

       文本替换范围,一般形式为[m,n],表示将要替换m行到n行之间的文本。该选项可以省略,省略时表示替换当前行的文本。可以使用通配符$%,其中通配符$表示末尾行;通配符%表示[1,$],即目前编辑的整个文本。

replace-pattern :

       将要被替换的字符串,可以使用正则表达式来匹配。

replace-string :

       替换replace-pattern的字符串

c :

       每次替换前询问,c表示confirm。

e :

       不显示错误信息,e表示error。

g :

       不询问整行替换,g表示global。

i :

       不区分大小写,i表示ignore。

/ :

       分隔符。注意可以使用#作为分隔符,此时字符串中出现的/不再作为分隔符。

• 常用命令说明

:%s/read_cb/ReadCallBack/g

将当前文本的所有read_cb字符串替换为ReadCallBack字符串

vim文本编辑操作的更多相关文章

  1. vim文本编辑工具(全)

    VIM文本编辑工具 编辑模式 i    在当前字符前插入I   在光标所在的行首插入a 在当前字符后插入A 在光标所在行尾插入o 在当前行的下一行插入新的一行O 在当前行的上一行插入新的一行 s   ...

  2. VIM编辑器操作指令

    VIM有三种操作模式: 1,命令模式--command mode 2,输入模式--insert mode 3,底行模式--last line mode [在命令模式的时候,按Shift +  :出现的 ...

  3. 必须熟悉的vim快捷键操作

    转载请表明出处http://www.dabu.info/?p=801 Vim/Vi 没有菜单,只有命令 Vim/Vi 工作模式介绍:插入模式 和  命令模式 是vi的两个基本模式.——插入模式 ,是用 ...

  4. VIm快捷操作

    vim快捷操作 移动 行级移动 $ 行尾 0 行头 段级移动 { 段首 } 段尾 屏幕级别 L: 屏幕尾部 H: 屏幕头部 文档级别 G: 文档尾部 1G:头部 nG:文档n行 删除 dd: 删除当前 ...

  5. VIM常用操作手册

    VIM常用操作手册 1.多行操作,多行注释,多行取消注释 https://jingyan.baidu.com/article/9c69d48f43ed6d13c8024e7b.html 2.常用操作 ...

  6. Service系统服务(二):补充应用技巧、软连接与硬连接、man手册、zip备份、vim效率操作、自定义yum软件仓库、发布及测试yum仓库、编译安装软件包

    一.补充应用技巧 目标: 本例要求掌握在运维中比较常用的一些扩展命令技巧的使用,完成下列小技巧操作: 1> 采用数值形式将目录/root的权限调整为 rwx------   2> 将记录的 ...

  7. vim效率操作

                                        vim效率操作 案例6:vim效率操作 6.1问题 本例要求掌握使用vim文本编辑器时能够提高操作效率的一些常用技巧和方法,完成 ...

  8. 2019.5.13-5.17知识点:文件管理、目录操作、索引节点、软硬链接,vim文本编辑 知识点

    文件管理 ● cp 复制文件 cp /路径(原文件) /路径(复制文件)/文件重命名(可选)    -i:覆盖前询问    -r:递归复制目录及内部内容   -a:归档,相当于-dr --preser ...

  9. vim编辑器操作

    vim被称为编辑器之神,另外一个是sublime.vim较vi比较高级,vi适用于文本编辑,vim更加适合于coding.凡是vim里面的命令在vi都是适用的. vim的大众版的三种模式(其实不止三种 ...

随机推荐

  1. [android] AndroidManifest.xml【 manifest -> uses-permission】

    在  API Level 1 时被引入 简介: 在某些情况下,你为app设置的权限将会影响到google应用商店会用何种规则来过滤你的APP. 如果你需要一个硬件相关的权限——CAMERA,googl ...

  2. Unity UGUI实现Button按钮长按状态的判断

    代码: using UnityEngine.EventSystems; using System.Collections; /// <summary> /// 脚本位置:UGUI按钮组件身 ...

  3. Unity5 AssetBundle打包加载及服务器加载

    Assetbundle为资源包不是资源 打包1:通过脚本指定打包 AssetBundleBuild ab = new AssetBundleBuild                         ...

  4. 算法优化:rgb向yuv的转化最优算法

    朋友曾经给我推荐了一个有关代码优化的pdf文档<让你的软件飞起来>,看完之后,感受颇深.为了推广其,同时也为了自己加深印象,故将其总结为word文档.下面就是其的详细内容总结,希望能于己于 ...

  5. DML语句报错是因为控制文件无法扩大还是另有原因?

    今天处理了一个很有意思的故障问题,来龙去脉是这种: 客户来电咨询控制文件无法扩展,数据库仅仅能查询但不支持DML,须要远程支持.接到电话的第一反应就是CONTROL_FILE_RECORD_KEEP_ ...

  6. 《C++ Primer Plus》第5章 循环和关系表达式 学习笔记

    C++提供了3种循环: for 循环. while 循环 和 do while 循环 .如果循环测试条件为 true 或非零,则循环将重复执行一组指令: 如果测试条件为 false 或 0 , 则结束 ...

  7. 教你在Ubuntu上体验Mac风格

    导读 老实说,我是个狂热的 Ubuntu 迷,我喜欢 Ubuntu 默认的 Unity 主题样式外观.此外,还有很多关于 Ubuntu 14.04 的漂亮图标主题样式 可用来美化默认的外观.但正如我上 ...

  8. poj_2823 线段树

    题目大意 给定一行数,共N个.有一个长度为K的窗口从左向右滑动,窗口中始终有K个数字,窗口每次滑动一个数字.求各个时刻窗口中的最大值和最小值. 题目分析 直接搜索,复杂度为O(n^2).本题可以看做是 ...

  9. 【BZOJ1050】[HAOI2006]旅行comf 并查集

    [BZOJ1050][HAOI2006]旅行comf Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<300 ...

  10. 170321、Spring+Quartz实现定时任务的配置方法

    Quartz是Java版开源定时调度器. 核心概念: Job 表示一个工作,要执行的具体内容.此接口中只有一个方法 void execute(JobExecutionContext context): ...