📓 Archive

BOOK

FGJ: Create:2024/06/10 Update: (2024-10-24)

  • Intro(Vim实用技巧_高清_中文版.pdf) #

    练习文件「practical-vim」repo:https://github.com/rxedu/practical-vim
    当前clone文件路径~/Desktop/_scratch/practical-vim

    • 第一章 vim解决问题的方式 #

      1). 重复命令:.
      2). 复合命令:(C:c$, s:cl, S:^c, I:^i, A:$a, o:A<CR>, O:ko)
      3). 将 + 号前后追加空格,采用删1加3的方式:使用s命令删除当前光标下的+,然后输入空格+空格。
      4). 重复,回退命令,edit:{.,u},f/t:{;,,},F/T:{;,,},/pattern:{n,N},?pattern:{n,N},:s:{&,u},macro:{@x,u}
      5). 使用*查找光标下的单词,{n,N}上下。

    • 第二章 普通模式 #

      7). 停顿时请移开画笔,想象在作画,经常<C-[>
      8). 需要换行尽量使用<Esc>o,把修改切成最小粒度。使用<up>,<down>,<left>,<right>会产生新的撤销块。
      9). 构造可重复的修改,比如删除【The end is nigh】中的 nigh 。可以使用如下,也可以在 vimgolf中进行判决
      反向删除dbx , . == x
      正向删除bdw , . == dw
      删除整的单词daw , . == daw
      10). 使用<C-a>,[count]<C-x>对光标下|后的数字进行加减,默认八进制,通过配置文件设置set nrformats=修改成十进制
      11). 能重复就别用次数
      12). 操作符待决策模式gg~,gu,gU,gUgU | gUU,>,>>,<,=,

    • 第三章 插入模式 #

      13). 插入模式即使更正错误:即使在bash shell中,也可以使用。【<C-h>:删除前一个字符(同退格), <C-w>:删除前一个单词, <C-u>:删除至行首】
      15). 不离开插入模式,粘贴寄存器中的文本。将第一行的书名粘到第二行末,光标在第一个字符。yt,jA␣<C-r>0.<Esc>

      16). 随时随地做运算:在插入模式中,使用<C-r>=调用表达式寄存器,输入表达式6*35<CR>做运算,将结果插入到当前光标下。
      17). 用字符编码插入非常用字符: <C-v>u{四位十六进制 unicode}:例<C-v>u00bf-¿。查看贯标下的字符使用:ga
      18). 插入以二合字母{char1}{char2}表示的字符
      <C-k>{char}{char},例如<C-k>12-½<C-k>?I-¿,使用命令查看二合字母:digraphs,:h digraph-table:h digraphs-default

    • 第四章 可视模式 #

      20). 深入理解可视模式: 使用:<C-g>在 visual 模式和 select 模式切换,选择模式相当于普通编辑器中选择后直接输入替换那种效果。
      21). 选择高亮选区: 【v:面向字符,V:面向行,<C-v>:面相列块,gv:重选上次高亮区域】,重复会取消选择,比如连着按两次v
      22). 重复执行面向行的可视命令: Vj>.,Vj2>
      23). 只要可能,最好用操作符命令,而不是可视命令: vitU可是模式中会影响部分(等长),gUit普通模式在的操作符刚好。


      24). 用面向列块的可视模式编辑表格数据: 减少列之间的间距并以竖线分割,<C-v>3jx...gvr|,添加横线yypVr-


      25). 修改列文本: 删除影响所有行,但是修改的话只影响顶行,使用<CR>后会变得正常。修改sprite -> components。<C-v>jjec,components,<Esc>


      26). 在长短不一的高亮块后添加文本: (可视模式中的i,a被视为文本对象的组成部分)。在每行末尾添加;: <C-v>jj$A;<Esc>

    • 第五章 命令行模式 #

      在按下:键时,Vim 会切换到命令行模式。出于历史原因,在命令行模式中执行的命令又被称做 Ex 命令。在我们按/调出查找提示符或用 <C-r>= 访问表达式寄存器(参见技巧 16)时,命令行模式也会被激活。

      27). 结识 Vim 的命令行模式:
      有些命令和插入模式通用。例如,可以用<C-w><C-u>分别删除至上个单词的开头及行首,
      也可以用 <C-v><C-k>来插入键盘上找不到的字符(技巧49),
      还可以用 <C-r>{register} 命令使用寄存器,如技巧15。


      30). 在指定范围上执行普通模式命令:使用可视模式选择后 摁:冒号 输入 normal A; 执行每行追加;命令。

    • 第七章 打开及保存文件 #


      45). 以超级用户权限保存文件: :w !sudo tee % > /dev/null

    • 第十一章 宏 #


      70). 录制宏插入可变数值: 比如在每一行前面追加 1)2)… 等。:let i = 1, qa, I<C-r>=i<CR>)<Esc>, :let i += 1, q

  • Reference #


comments powered by Disqus