Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vim 编辑器必知必会 #117

Open
FrankKai opened this issue Nov 1, 2018 · 19 comments
Open

vim 编辑器必知必会 #117

FrankKai opened this issue Nov 1, 2018 · 19 comments
Labels

Comments

@FrankKai
Copy link
Owner

FrankKai commented Nov 1, 2018

本来想学习vi的,但是突然发现vim是vi improved,所以就直接学vim了。
stackoverflow上找到的"What is the difference between Vi and Vim?"答案,也确实指出vim是vi的一个超集,有很多很赞的特性,值得深入学习。
关于vim的学习,主要通过 https://www.openvim.com/ 这个超级赞的网站(不得不承认,老外的网站做的真心好)。

  • 两种模式:插入模式和普通模式(命令模式)
  • 上下左右:k,j,h,l
  • 单词移动:w,e,b
  • 命令加上数字后更加强大:7j,3w,3e
  • 输入重复文字:3igo Esc
  • 搜索字符:f / F
  • 跳到匹配的括号:%
  • 跳到行头行尾:0 ,$
  • 找光标处的单词:*,#
  • 跳到文件开始结尾:gg,G,2G
  • 搜索单词:/text n,N
  • 插入新行:o,O
  • 删除字符:x,X
  • 替换字符:r
  • 删除单词:d
  • 重复执行上条命令:.
  • Visual模式:v
  • Real Vim::w,:q,:q!,u,ctrl + R
@FrankKai FrankKai changed the title vi 编辑器命令 vim 编辑器命令 Nov 2, 2018
@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

两种模式:插入模式和普通模式(命令模式)

  • insert mode : 编辑模式,写入text,i切换为此模式。
  • normal mode:正常模式,操作text,Esc切换为normal模式。
  • 文本编辑器底部有mode状态,只有在insert模式下,才会显示INSERT,normal模式没有任何显示。
  • 退出插入模式:Esc,ctrl + c。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

上下左右:k,j,h,l

  • k -> 上
  • j -> 下
  • h -> 左
  • l -> 右

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

单词移动:w,e,b

  • w -> 移动到下一个单词的开始字符
  • b -> 移动到当前单词的开始字符
  • e -> 移动到当前单词的结束字符

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

命令加上数字后更加强大:7j,3w,3e

数字可以与k,j,h,l和w,b,e一起结合起来使用。

  • 7j:向下移动7行。
  • 3w:向后移动3个单词,定位在第4个单词开头。
  • 3e:向右移动2个单词,定位在第3个单词开头。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

输入重复文字:3igo Esc

e.g. 3igo Esc

  • 3: normal模式下,输入3。
  • igo: insert模式下,输入go。
  • Esc:切回normal模式,重复输入go3次。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

搜索字符:f / F

  • f和F,fo找到下一个o
  • 3fo,找到之后的第三个o

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

跳到匹配的括号:%

  • 匹配到( , { , [。
  • 单行匹配。
  • 仅匹配词之后的,例如单词前后都有parentheses,仅仅匹配到后面的。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

跳到行头行尾:0 ,$

  • 跳到行头,0。
  • 跳到行尾,$。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

找光标处的单词:*,#

  • *:从上往下找单词。
  • #:从下往上找单词。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

跳到文件开始结尾:gg,G,2G

  • gg跳到文件的开始位置。
  • G跳到文件的结束位置。
  • G前面可以跟想跳到的行数。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

搜索单词:/text n,N

  • /text: 搜索文件中的text
  • n,N:跳转到最近搜索的text

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

插入新行:o,O

  • o:插入新行,同时自动切为insert模式

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

删除字符:x,X

  • x,X:删除光标所在字符

idea:这个比DELETE操作方便很多,少了右移的一步。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

替换字符:r

  • r: 喜欢光标所在字符

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

删除单词:d

  • d:dw,可以使用p粘贴被删除的单词

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

重复执行上条命令:.

  • .:例如输入d2w,.可以重复执行d2w,持续删除2个单词。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

Visual模式:v

  • v:切换到Visual模式,这种模式可以像鼠标选中一样操作。
  • v e e e d :会删除3个单词。

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

Real Vim::w,:q,:q!,u,ctrl + R

  • :w 保存
  • :q 退出
  • :q! 不保存退出
  • u 撤销 ,这个命令类似ctrl + z
  • ctrl + R 重做,这个命令类似ctrl + shift + z
  • :help:寻找帮助

@FrankKai
Copy link
Owner Author

FrankKai commented Nov 3, 2018

强烈推荐 https://www.openvim.com/ !!!💯 💯 💯

@FrankKai FrankKai changed the title vim 编辑器命令 vim 编辑器必知必会 Nov 3, 2018
@FrankKai FrankKai added the Linux label Mar 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant