0%

小抄

“Hanging on in quiet desperation is the English way.”——《Time》

Vim 也好,Shell 也好,Markdown 也好,总会遇上一些常常会用但又常常忘记的命令和方法。翻找别人的博客总是不便,不如在这里积累归纳,随时查用。一个简单的原则是只记录自己最常用的操作,提升查找速度的同时,降低记忆的难度。

Vim

位移命令

命令 作用
h, j, k, l 方向移动
w, b 以单词为单位,前进后退(至单词的开头)
e, ge 以单词为单位,前进后退(至单词的结尾)
0, $ 移动到行首和行尾
gg, G 移动到文档开头和结尾

光标命令

命令 作用
:number 移动到指定行
% 移动到匹配括号
C-d, C-e, C-f 向下滚动半屏、一行、一屏
C-u, C-y, C-b 向上滚动半屏、一行、一屏
zz, zt, zb 当前行置于屏幕中央、顶端、底端
ma 在当前位置添加标记,a 是其名称。大小写字母共 52 个标记可选
`a, ‘a 移动到标记
:marks 列出所有标记
:delmarks 删除标记。跟名字则删除对应标记,跟 ! 则删除所有标记

查找替换

命令 作用
/string 向下搜索字符串
?string 向上搜索字符串
n, N 搜索下一个/上一个(与最初的搜索方向相同或相反)
* 向下搜索当前光标所在的单词
# 向上搜索当前光标所在的单词
^, $, ., \ 匹配一行开头、一行结尾、任意字符、特殊字符
:s/old/new 将本行的 old 替换为 new
:1,10 s/old/new 将 1 到 10 行的 old 替换为 new
:0,$ s/old/new 将文档开头到结尾的 old 替换为 new

编辑命令

编辑命令最强大之处在于可以和位移命令组合使用,例如 cw 可以改变一个单词。还可以和命令计数配合组合使用,例如 d3w 可以删除三个单词。

命令 作用
i, I 在光标之前/行首插入
a, A 在光标之后/行尾插入
c 改变文本,相当于删除要改变的部分并且进入 insert 模式
cc 改变整行,保留原有缩进
x 删除光标位置的字符
r 替换当前光标所在字符,使用命令计数可以指定替换的字符数
R 一直替换,直到按下 esc
d 删除选中的内容
dd 删除一行
y 复制
yy 复制一行
p, P 在光标前/后粘贴
u 撤销
C-r 重做
. 重复命令,撤销重做除外
v visual 模式
V 行模式

MarkDown

转义字符

MarkDown 中一些特殊符号除了符号本身,还可以使用 html 中的转义字符来输入。以下是一些常见转义字符:

显示效果 描述 实体名称 实体编号
空格    
< 小于 &lt; &#60;
> 大于 &gt; &#62;
& 与号 &amp; &#38;
引号 &quot; &#34;
撇号 &apos; &#39;

如果不希望字符被转义,可以在前面加上反斜杠。

另外,想要在反引号`中转义反引号,使用反斜杠是不能做到的。正确的方法是在最外层使用两次反引号。

Intellij

快捷键 作用
Ctrl + / 行注释当前行或者选中的行
Ctrl + Shift + / 块注释选中的行