blog icon indicating copy to clipboard operation
blog copied to clipboard

Vim 使用

Open penglongli opened this issue 8 years ago • 0 comments
trafficstars

下边是一些 vim 的使用方式

vim 的一些设置

  • 设置 TAB 为 4 个空格
root@mbp:~/# vim ~/.vimrc
set ts=4
  • 设置 TAB 转换为空格
root@mbp:~/# vim ~/.vimrc
set expandtab
  • 设置自动缩进
root@mbp:~/# vim ~/.vimrc
set autoindent
  • 如果 vim 乱码,可以设置语言
export LC_ALL=en_US.UTF-8  
export LANG=en_US.UTF-8

在所有行首、行尾添加字符串

  • 每行的行首都添加一个字符串:%s/^/要插入的字符串
  • 每行的行尾都添加一个字符串:%s/$/要插入的字符串
  • :5,15 s/$/“ :第 5 到第 15 行的末尾增加 “ 双引号

全局替换

  1. 全局替换::%s/test/123456/gc
  • g 表示全局
  • c 表示需要确认
  • 表示:文件中的 test 值全部替换为 123456

在选中的行的特定位置增加相同的字符串

在选中行的行首增加空格

  1. 按 ESC 返回普通模式
  2. 按 Ctrl + V 进入纵向编辑模式(VISUAL BLOCK)
  3. 按上下键选中多行
  4. 按 Shift + i 键进入插入(INSERT)模式
  5. 在所选行中最上边一行的行首,插入空格
  6. 按 ESC,所有选中的行均按照第一行增加了空格

在选中行的中间增加字符串

如上所述,第 5 步的时候改为在中间增加字符串

多行增加或减小缩进

  1. 按 ESC 返回普通模式
  2. 按 V 进入纵向编辑
  3. 按上下键(或 j)键选中多行
  4. 按 < 或者 > 来向前缩进或者向后缩进。
  5. . 重复前一步骤

vim 间的复制与黏贴

这个主要是 vim 间的复制与黏贴,非是操作系统层面的

复制黏贴

  1. 按 ESC 进入普通模式
  2. 键入:y4y,表示复制 4 行
  3. 键入:p,会把复制的行黏贴进 vim 中

撤销

  1. 按 ESC 进入普通模式
  2. 键入:u,会撤销刚才的操作

Linux & Mac 下 复制文件内容

Mac

cat ~/.bashrc | pbcopy

排序

输入:

:sort u

能够排序并仅取相同行的第一行

penglongli avatar Oct 31 '17 12:10 penglongli