vim 常用操作设置

vim第一个小技巧:有时当我们使用普通用户打开一个文件,修改了很多内容,在保存的时候才发现没有权限,此时需要使用sudo来写入,命令如下:

:w !sudo tee %

vim常用设置:(写入 /etc/vimrc 文件或者~/.vimrc,永久生效)

set nu!            " 显示行号
set tabstop=4      " tab键为4个空格
set autoindent     " 换行自动缩进
set shiftwidth=4   " 自动缩进时的宽度
set ts=4           " tabstop的宽度  
set softtabstop=4  " 退格键
set paste          " 粘贴时不自动换行
set laststatus=2   " 显示当前文件名
%retab!            " vim属性修改后需要执行此命令重载属性配置

也可在终端设置是否显示行号:

:set nu    " 显示行号
:set nonu  " 不显示行号

将所有tab,每个tab替换为4个空格

:set ts=4
:set expandtab
:%retab!

将所有空格以4个为单位,替换成tab

空格替换为TAB:
:set ts=4
:set noexpandtab
:%retab!

vim字符串替换

:s/old/new/              " 当前行old的第一次出现改为new
:s/old/new/g             " 当前行所有old改为new
:50,100s/old/new/g       " 当前文件50到100行所有old改为new
:1,$s/old/new/g          " 当前文件所有old改为new
:%,$s/old/new/g          " 当前文件所有old改为new

撤销和恢复

u:撤销上一步的操作
Ctrl+r:恢复上一步撤销的操作

如果在终端要使用vim打开多个文件,可以:
横向分割显示:

vim -o filename1 filename2

纵向分割显示:

vim -O filename1 filename2

如果已经用vim打开了一个文件,想要在窗口中同时再打开另一个文件(其中,vs可以用vsplit替换,sp可以用split替换,如果finename不存在,则会新建该文件并打开):
横向分割显示:

:vs filename

纵向分割显示:

sp filename

关闭光标所在的窗口

:q 
或 
:close

关闭除光标所在的窗口之外的其他窗口

:only

关闭所有窗口

:qa

切换窗口

ctrl + w w       " 即按住ctrl键,再按两下w键。
或
ctrl + w         " 即按住ctrl键,按一次w键,再按一次表示方向的h或j或k或l,则光标会切换到当前窗口的 左|下|上|右 侧的窗口

文件间切换

Ctrl+6    " 下一个文件
:bn       " 下一个文件
:bp       " 上一个文件

vim 临时退出

方法一:使用 Ctrl-z 以及 fg 这两个命令组合。
  这一解决方法主要利用了 Linux/Unix 的作业机制。
    具体原理是:Ctrl-z 命令将当前的 Vi/Vim 进程放到后台执行,之后 shell 环境即可为你所用;
    fg 命令则将位于后台的 Vi/Vim 进程放到前台执行,这样我们就再次进入 Vi/Vim 操作界面并恢复到原先的编辑状态。
方法二:使用行命令 :sh。
  在 Vi/Vim 的正常模式下输入 :sh即可进入 Linux/Unix shell 环境。在要返回到 Vi/Vim 编辑环境时,输入 exit 命令即可。
  这两种方法实现机制不一定,但效果一样,都非常快捷有效。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章