vim操作

v ctrl+v shift+v 区别

v:光标经过的行都被选中(开始光标所在行的前面没有选中)

vim操作

ctrl+v:只选中了光标经过的列

vim操作

插入

  1. 当前光标前插入
    i
  2. 当前光标后插入
    a
  3. 当前光标所在行的行尾插入
    A
  4. 当前光标所在行的行首插入
    I
  5. 光标的下一行插入
    o
  6. 光标的上一行插入
    O

复制

1. 单行复制

esc正常模式—- >yy—->在想要复制地方的上一行按p(正常模式esc)

2. 多行复制

1. 可视模式 (Visual-mode)
ctrl+v —>移动光标选择要复制的字段—-> y —-> 在想要复制地方的上一行按p
2. 正常模式(esc)
光标移动到要复制多行的第一行上—->nyy(n是要复制的行数)—> p
3. 命令行模式
:23, 34 copy 54 —>将第23行到34行复制到54行

注释

视图模式下
v 或许 crtl+v —>移动光标选择要注释的字段—-> shift+i —–> # —–> esc

取消注释

v 或许 ctrl+v —>移动光标选择要取消注释的字段—-> j 或者k —-> d

缩进/缩出

按v进入visual状态—–> 移动光标选择多行—-> 用><``缩进``或缩出

vim不正常退出

恢复文件,要使用以下命令:
$ vim -r test.txt
按照提示回车即可。然后保存文件,并删除.swp隐藏文件(rm .test.txt.swp文件)
但是不是任何时候都可以

光标移动

不同行间的移动
  1. 到文件第一行
    esc–>gg
  2. 到文件的最后一行
    esc—>shift+g
  3. 跳转到特定的行
    esc —> n(想要跳转的行号) —> shelf+g
  4. 光标向下移动指定行数
    esc—>n(想要移动的行数)—>+
    22 --> +:光标向下移动22行
  5. 光标向上移动指定行数
    esc—>n(想要移动的行数)—>-

  6. H:光标移至屏幕顶行
    M:光标移至屏幕中间行
    L:光标移至屏幕最后行
  7. 查看当前的位置
    esc—–>ctrl+g
一行之间光标的移动

移动行的首尾
首:0home
尾:$end

按单词移动
  1. 移动到下一个单词开始
    esc—>w
  2. 移动到上一个单词开始
    esc—-> b
  3. 移动下一个单词结尾
    esc—> e
  4. 移动到上一个单词的结尾
    esc —> g—>e
  5. 跳转到下一个字符串开始
    esc—>shift+w (只在空格处停)
  6. 移动到上个字串的开始
    esc—>shift+b
  7. 移动到下个字串的结尾
    esc—>shift+e
  8. 移动到上个字串的结尾
    esc —>g—-> shift+e

屏幕的滚动

翻页

PgUp PgDn

相对于光标滚动屏幕
  1. 光标所在的行移动到窗口的顶端
    esc —> z—>t
  2. 光标所在的行移动到窗口的中间
    esc —> z—>z
  3. 光标所在的行移动到窗口的底部
    esc —> z—>b

查找历史记录

q/ or q?

多行操作

  1. 删除列
    ctrl+v—>移动光标选择想要删除的某一列—->d
  2. 插入列
    1.光标定位到要操作的地方。
    2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
    3.SHIFT+i(I) 输入要插入的内容。
    4.ESC 按两次,会在每行的选定的区域出现插入的内容。

vim间切换文件

  1. :e file_path
    打开另一个文件
  2. :bn
    切换到某一个文件
  3. :ls
    查看文件编码
  4. ctrl+6
    两文件间切换
  5. vsplit
    打开多个窗口,并排
  6. Ctrl+ww——依次向后切换到下一个窗格中

vim 查看当前文件的路径

ctfl+shift+g
:f