您可以通过左右滑屏查看更多笔记内容。。

Modifying the Contact

23 Jul 2019 . category: tech .
更多笔记

vim 的常用命令


考试:

复制粘贴:yy复制,p粘贴;复制全部yG

折叠:向上折叠–zf;

剪切:dd 剪切所有,dG;

二、vim的使用

- 三种模式 - 命令模式 黄绿色 - 插入模式 命令模式下输入 i ,变蓝色 。按ESC退出插入模式,回到命令模式 - 末行模式 命令模式下输入 :

- 进入 - vim <文件名> # 进入或创建文件; 所有文件都能用vim打开

- 退出 末行模式下:   - q 退出   - wq 保存并退出 输入代码后,wq保存退出会进入检查界面,检查代码是否符合pep8的规范,之后再:q直接退出。   - q! 不保存退出

- 移动光标 命令模式下:

  - 方向键:h 左 j 下 k 上 l 右 小键盘的方向键也可以 命令模式下:   - gg 回到行首   - G 回到行末   - ^ 非空格行首   - 0 行首   - $ 行尾

- 输入模式(插入) 命令模式下:

  - i 从光标所在位置前开始插入; I 在当前非空格行首插入   - a 从光标所在位置后面开始输入; A在当前行尾还是输入   - o 在光标所在行下方新增一行并输入模式; O 在当前上面一行插入

复制和粘贴 命令模式下:

  - yy 复制整行内容 3yy 复制3行内容 yw 复制当前光标到单词尾的内容 3yw复制3个单词   - p粘贴

**删除与撤销 ** 命令模式下:

  - dd 删除行 6dd 删除6行(光标下面的) dw 删除一个单词 x 删除光标所在的位置   - u 撤销 Ctrl+r 反撤销

- 块状操作 命令模式下:

  - v 块选择 Ctrl+v 列块选择 (输入命令后移动光标选择区域)   - 多行注释 命令模式下:Ctrl+v 选择要注释的行, shift+i # 然后再按ESC

- 搜索 命令模式下:

  - /内容 向前搜索内容 (向下)   - ?内容 向后搜索内容 (向上)   - n 向下查找   - N 向上查找

- 替换 末行模式下 :

  - :s/s1/s2 替换当前行的第一个s1为s2   - :s/s1/s2/g 替换当前行中所有s1为s2   - :%s/s1/s2/g 替换文中所有的s1为s2


第一讲小结

  1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键。 h (左移) j (下行) k (上行) l (右移)

  2. 欲进入 Vim 编辑器(从命令行提示符),请输入:vim 文件名 <回车>

  3. 欲退出 Vim 编辑器,请输入 :q! <回车> 放弃所有改动。 或者输入 :wq <回车> 保存改动。

  4. 在正常模式下删除光标所在位置的字符,请按: x

  5. 欲插入或添加文本,请输入:

    i   输入欲插入文本   <ESC>             在光标前插入文本
    A   输入欲添加文本   <ESC>             在一行后添加文本
    

特别提示:按下 键会带您回到正常模式或者撤消一个不想输入或部分完整 的命令。

dw 删除当前的这个单词;;光标移至准备要删除的单词的起始处。接着输入 dw 删除掉该单词。

d$ 删除从光标开始到末尾的所有代码; d$ 从光标处删至当前行尾部

使用删除操作符 d 的删除命令的格式如下:

    d   motion

其中: d - 删除操作符。 motion - 操作符的操作对象(在下面列出)。

一个简短的动作列表: w - 从当前光标当前位置直到下一个单词起始处,不包括它的第一个字符。 e - 从当前光标当前位置直到单词末尾,包括最后一个字符。 $ - 从当前光标当前位置直到当前行末。

因此输入 de 会从当前光标位置删除到单词末尾。

特别提示: 对于勇于探索者,请在正常模式下面仅按代表相应动作的键而不使用操作符,您 将看到光标的移动正如上面的对象列表所代表的一样。

  1. 移动光标到下面标记有 —> 的一行的开始。

  2. 输入 2w 使光标向后移动两个单词。

  3. 输入 3e 使光标向后移动到第三个单词的末尾。

  4. 输入 0 (数字零) 移动光标到行首

    第二小结

  5. 欲从当前光标删除至下一个单词,请输入:dw
  6. 欲从当前光标删除至当前行末尾,请输入:d$
  7. 欲删除整行,请输入:dd

  8. 欲重复一个动作,请在它前面加上一个数字:2w
  9. 在正常模式下修改命令的格式是: operator [number] motion 其中: operator - 操作符,代表要做的事情,比如 d 代表删除 [number] - 可以附加的数字,代表动作重复的次数 motion - 动作,代表在所操作的文本上的移动,例如 w 代表单词(word), $ 代表行末等等。

  10. 欲移动光标到行首,请按数字0键:0

  11. 欲撤消以前的操作,请输入:u (小写的u) 欲撤消在一行中所做的改动,请输入:U (大写的U) 欲撤消以前的撤消命令,恢复以前的操作结果,请输入:CTRL-R

r:接着输入 r 和要替换成的字符,这样就能将错误替换掉了

                                  第三讲小结


  1. 要重新置入已经删除的文本内容,请按小写字母 p 键。该操作可以将已删除
     的文本内容置于光标之后。如果最后一次删除的是一个整行,那么该行将置
     于当前光标所在行的下一行。

  2. 要替换光标所在位置的字符,请输入小写的 r 和要替换掉原位置字符的新字
     符即可。

  3. 更改类命令允许您改变从当前光标所在位置直到动作指示的位置中间的文本。
     比如输入 ce 可以替换当前光标到单词的末尾的内容;输入 c$ 可以替换当
     前光标到行末的内容。

  4. 更改类命令的格式是:

         c   [number]   motion
                     第四讲第一节:定位及文件状态

  ** 输入 CTRL-G 显示当前编辑文件中当前光标所在行位置以及文件状态信息。
     输入大写 G 则直接跳转到文件中的某一指定行。**

  提示:切记要先通读本节内容,之后才可以执行以下步骤!!!

  1. 按下 CTRL 键不放开然后按 g 键。我们称这个键组合为 CTRL-G。
     您会看到页面最底部出现一个状态信息行,显示的内容是当前编辑的文件名
     和文件中光标位置。请记住行号,它会在步骤3中用到。

提示:您也许会在屏幕的右下角看到光标位置,这会在 'ruler' 选项设置时发生
      (参见 :help 'ruler')

  2. 输入大写 G 可以使得当前光标直接跳转到文件最后一行。
     输入 gg 可以使得当前光标直接跳转到文件第一行。

  3. 输入您曾停留的行号,然后输入大写 G。这样就可以返回到您第一次按下
     CTRL-G 时所在的行了。

  4. 如果您觉得没问题的话,请执行步骤1至步骤3的操作进行练习。
                              第四讲小结


  1. CTRL-G 用于显示当前光标所在位置和文件状态信息。
     G 用于将光标跳转至文件最后一行。
     先敲入一个行号然后输入大写 G 则是将光标移动至该行号代表的行。
     gg 用于将光标跳转至文件第一行。

  2. 输入 / 然后紧随一个字符串是在当前所编辑的文档中正向查找该字符串。
     输入 ? 然后紧随一个字符串则是在当前所编辑的文档中反向查找该字符串。
     完成一次查找之后按 n 键是重复上一次的命令,可在同一方向上查
     找下一个匹配字符串所在;或者按大写 N 向相反方向查找下一匹配字符串所在。
     CTRL-O 带您跳转回较旧的位置,CTRL-I 则带您到较新的位置。

  3. 如果光标当前位置是括号(、)、[、]、{、},按 % 会将光标移动到配对的括号上。

  4. 在一行内替换头一个字符串 old 为新的字符串 new,请输入  :s/old/new
     在一行内替换所有的字符串 old 为新的字符串 new,请输入  :s/old/new/g
     在两行内替换所有的字符串 old 为新的字符串 new,请输入  :#,#s/old/new/g
     在文件内替换所有的字符串 old 为新的字符串 new,请输入  :%s/old/new/g
     进行全文替换时询问用户确认每个替换需添加 c 标志        :%s/old/new/gc