ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:20.85KB ,
资源ID:8794221      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8794221.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(vim学习笔记.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

vim学习笔记.docx

1、vim学习笔记vim有5中模式:(1)正常模式normal mode(2)插入模式 insert mode(3)命令模式 command mode(4)可视模式 visual mode(5)选择模式 select mode移动命令motion:h j k l 左下上右ctrl+f 往前翻一页ctrl+b 往后翻一页ctrl+d 往前翻半页ctrl+u 往后翻半页$ 光标移到行首 光标移到行尾0 光标移到行首#G 或 # shift+g 光标移到#行gg 光标移到文件头G 或shift+g 光标移到文件尾H 或shift+h 光标移到当前页的头L 或shift+l 光标移到当前页的尾M 或shi

2、ft+m 光标移到当前页的中间w 光标移到下一个字的头部W e 光标移到下一个字的尾部Eb 光标退回到上一个字的头部插入Insert:I 进入插入模式,从第一个不为空的地方插入i 在当前光标下前面插入a 在当前光标后面插入A 在当前行尾插入o 新建一行 -光标动O 新建一行 -光标不动删除delete:dd 删除当前行 或用大写Dd#w 删除当前字开始的#个字#dd 删除从当前行开始的后面#行x 删除后面#x 执行#次命令X和#X 删除前面修改change:c#w 修改从当前字开始的#个字C 修改当前位置到行尾复制copy:yy 复制当前行#yy 复制从当前行开始的#行#ywyw 从当前光标位

3、置开始复制一个字p 粘贴替换replace:r 替换当前光标下的字符R 替换光标所到之处的字符,知道按ESC为止回到上一个操作:u命令行::set nu 显示行数/ 正向搜索 可以用n 选择下一个符合的字符? 反向搜索 可以用n选择上一个符合的字符保存save:w file 保存文件名为filewq 保存并退出q! 强制退出shift+左键shift+右键shift+上键shift+下键替换字符串::%s/xxx/yyy 每一行第一个:%s/xxx/yyy/g 每一行所有的:s/xxx/yyy:s/xxx/yyy/gn,$s/xxx/yyyn,$s/xxx/yyy/g可以使用 # 作为分隔符,

4、此时中间出现的 / 不会作为分隔符:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/:e! 返回到上一次保存:e file 切换编辑文件:n#当编辑时有多个文件(比如vim file1 file2)时切换到下一个文件,与:e file 代表该行不会保存在文件中gvim filename 在新的窗口中编辑一个文件,多了许多menu按钮vim filename 在当前的终端中编辑一个文件vim有好多模式 最基本的两个是normal mode和insert mode要查看mode 输入set showmodeJ-join 将两行变为1行#J 将从当前行开始的#行合并为一

5、行uundo 和redo:u-undo最后一次编辑,也就是最后一次完整的insert模式下输入的东西,都会被undo;或者undo最后一次命令如输入xxxx 则需要uuuu才能恢复,而不是输入一个uctrl+r- redo和undo是配套用的,即如果没有undo redo就不起作用,就相当于ctrl+z和ctl+y一样追加:i-在光标前插入a-在光标后插入I-在行首第一个非空处插入A-在行尾插入添加新的一行:o-在当前行下面添加新行,并且进入insert模式O-在当前行上面添加新行,并且进入insert模式注:#+命令 代表执行#次命令 #+i + 编辑 +esc例如3+a+!+esc-!退出

6、:ZZ 保存并退出没有备份 如果ZZ了 就不能返回以前的文件了这里可以开启备份的配置输入命令 set backup,backup的文件名是当前文件名+ 例如test.txt- test.txt 如果不想有这样的文件名 可以自己设定backup的扩展名 set backupext=.bak例如test.txt-test.txt.bakq!-不保存退出e!-不保存并且重新加载原文件继续编辑帮助:help或者按F1CTRL+ (jump to tag)将光标放在tag上面,然后ctrl+相当于鼠标点击超链接ctrl+T (pop to tag)ctrl+O(jump to older positio

7、n)标签tag:就相当于goto里面的标签 用来标识一个位置可以用ctags *.c命令来生产tag文件,然后在vim中使用:tag startlist,这个命令可以找到 startlist函数,即使它在另一个文件中:tags-列出tags:tag-到达最低端的tag:#tag -返回#次tag如果想既有当前文件 又能看到tag的文件,那么可以使用stag tagname然后ctrl+W+移动:w-往后移动一个单词 ,单词首部#w-往后移动#个单词b-往前移一个单词#b-往前移#个单词e-往后移动一个单词 单词尾部#e-往后移动#个单词 单词尾部ge-往前移动一个单词 单词尾部#ge-往前移动

8、#个单词 单词尾部$-移到行尾 键盘上END-移到行首(第一个非空) 键盘上0-移到最开端HOMEfx-从当前字符开始查找字符x 例如fa 查找a#fx-从当前字符开始查找第#个x字符Fx-反向查找x#Fx-反响查找第#个xtx和fx功能一样,只不过是它最终停在该字符的前面tx Tx #tx #Tx取消查找 比如已经按下f,又不想查找了 那么接着按下esc匹配括号:%-比如将鼠标放在左括号上,然后%那么会自动定位到与该左括号对应的右括号()如果光标不在这些符号上,输入%后回自动定位到第一个符号上面#G- 如果想回到跳转之前的位置用,如果你再次使用 则又会回来G-到文件尾gg-文件头H (hom

9、e、high)-当前页的开头,也就是说你能看见的所有行的第一行L(last、low)-当前页的开头,也就是说你能看见的所有行的第一行M(middle)-当前页的中间,也就是说你能看见的所有行的中间ctrl+G-告诉你当前在哪 比如文件名 当前位置第几行第几列 占总文件的百分之多少:set number:set nonumber是否显示行号:set ruler 在右下角显示光标的位置比如行列:set noruler 取消显示ctrl+U-向后滚半个屏幕ctrl+D-向前滚半个屏幕ctrl+F-向前滚一个屏幕ctrl+B-向后滚一个屏幕ctrl+E-网上滚一行,其实内容是往下翻,ctrl+Y-往下

10、滚一行查找:/string 查找某个字符串对于.*%/?$等特殊字符,需要加反斜杠 例如/然后按n-表示光标移动到下一个匹配字符 #n-表示光标移动到下#个字符N-有相反的效果?word -向后查找字符串,它的功能与/一样n-往后 N-往前其实/+n = ?+N忽略大小写:set ignorecase set noignorecasevim会记住输入的查找历史 例如/+up(down)或者 当你记得需要查找的首字母,你可以/+o+up 例如你查找one 不光是/ 会有历史,:也会有历史查询整个单词,排除那些只是某个单词的一部分的内容:例如输入/the 只会查找到单词the 排除there等包含

11、the的单词,但是这个并没有把xxxthe排除输入/这个才是真正的the*和#-查找到所有跟整个单词匹配的字符串g*和g#-只要包含该字符串的所有单词都可以设置高亮查找::set hlsearch:set nohlsearch:nohlsearch -只是当前查找不高亮显示 如果下一次查找还会高亮显示查找轮回:set wrapscan -当查找的某个字符到达最后一个匹配字符时,再按n则回到第一个匹配的地方:set nowrapscan-不会回到第一个匹配的地方 在最后一个停止初始化设置参数::scriptsnames 显示一些脚本文件名字:edit /.vimrc 然后编辑该文件 在改文件最后

12、添加:set hlsearch然后ZZ 保存退出这样当你下次打开vim的时候就会默认为hlsearch查找行首或者行尾的字符/string 行首/$string 行尾匹配任何单个字符 用dot (.)/c.m 表示第一个字符是c 第二个字符任意 第三个字符是m当你真正的要查找一个.时,需要用转义字符.ctrl+O(older)- 该功能和功能类似ctrl+I(I在O旁边)和tab键功能一样:jumps 列出跳转的位置可以自己设置marks 就是标记 类似于书签,到时候通过命令很容易回到这里命令mmark 设置比较 mark为az定位到该mark 使用mark 定位到该标记所在行的行首mark定

13、位到该标记所在列例如先ma 然后a 就会回到该a标记的地方操作可以带任意的移动操作:移动操作有hjkl w e $ 0等操作有d c等 例如d $ 从当前到行尾删除 d4w 删除从当前的4个单词 d 删除从当前到行首 dl-相当于x dh-相当于X这种即为operator-motion模式操作符c-change 其实它跟d的功能完全一样,只不过c会进入插入模式而且cw(和ce相同)时不会删除到下一个单词开始处,而dw会删除到下一个单词开始处 例如song jun cw-删除了song 但dw-删除了song+空格更多的change:cc跟dd对应 只不过进入插入模式相当于dd+ax-dlX-d

14、hD-d$C-c$s-clS-cc -change整行数字#应该放在哪里:#dw-作#次dw操作d#w-一次删除#个单词这两个效果一样也可以这样用adbw 删除了a*b个单词替换单个字符:r-它的功能跟cl和s功能一样,只不过它不需要按esc,也就是说它的整个过程都是在命令模式下进行的例如 there is something rT-There is something 而且还是处于命令行模式也可以#rT-替换了也可以将某个字符替换成回车换行 r+.-重复一个改变的动作-注意这里的改变不包含光标的移动To generate a table of contents要删除标签tagff.f.但是它

15、不会重复u和ctrl+R,以及需要:的命令.是一个非常重要可视模式visual mode就是将你选种的高亮显示 让你很直观的看到你要删除那些东西,这样非常方便,例如你不知道删除几个单词所以不好用d#w 但是如果使用v模式,则只要选中这些然后输入d就可以了如果不想删除这些高亮显示的 则按esc如果想选择整行使用VVjj-高亮显示当前行以及下面两行高亮显示块ctrl+V-选区为一个矩形块注意operator后面能够跟motion移动text:当你使用d 或 x或者其他操作如c删除时,可以使用p(put 不是paste)将被删除的东西黏贴到其他地方 注意p操作不需要y操作 在当前光标的下面(后面)黏

16、贴P-在当前光标的上面(前面)黏贴可以P p好多次 #p #P交换两个字符-xp例如the打成了teh-将光标移到e 然后输入xp即可复制文本:y(yanking本来是copy 但是c被change占了)y是operator所以后面可以跟motion 如yw 注意yw包含空格 ye不包含空格yy-复制整行使用剪切板:当使用的是gui时,可以使用菜单栏里面的copy和paste功能,使用Visual mode选中复制的数据当没有GUI时,使用*+y *+p的操作set modifiableset nomodifiable文本对象:text object比如当你在一个word中间时,如果输入dw则

17、只会删除光标一个的单词部分,不能删除整个单词,这时你需要把光标移到单词开始处才能dw掉整个单词daw-可以简化这种操作,delete a wordcaw也一样ciscas a sentence上面a word 和a sentence都是对象在V模式也可以使用例如v+as 这样就选中一行目前已经有三种方式对文本进行改变1、operator+motion 需要考虑光标位置2、visual mode3、operator+text 不需要考虑光标位置替换模式replace modeR 进入替换模式在该模式下 敲backspace键 会恢复原来的数据,而不是删除-改变当前光标下的大小写设置vim参数 增加插件扩展vim功能vimrc文件:vim在启动时执行该文件,该文件里面有初始化命令(vi里面是exrc)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1