快速入门vim——常用vim配置、快捷按键、WinManager插件

快速入门vim——常用vim配置、快捷按键、WinManager插件

如果你不想手动配置,这里还为你准备了脚本。详见文章末尾,*(^_^)*。

常用配置

Ubuntu下vim配置所在/etc/vim/vimrc

set mouse= "关闭鼠标模式
set nocompatible "关闭vi兼容模式
set fileencoding=utf-8 "Vim 中当前编辑的文件的字符编码方式,Vim 保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此)。
set encoding=utf-8 "Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等
set cursorline "推荐设置, 将光标所在行以下划线标注显示
set smartindent "开启智能缩进模式, 其它模式还包括cindent, autoindent
set nu " 开启行号显示
set ic "搜索时,忽略大小写
set is "开启输入关键字, 立即匹配
set hlsearch "高亮显示搜索结果
set guifont=Consolas:h12 "win平台Gvim的设置界面字体设置
colorscheme torte "主题颜色设置
set nobackup "设置保存时,不生成备份文件
set noundofile "设置不生成undo文件
set tabstop=4 "设置tab宽度为4个空格的宽度
set softtabstop=4
set shiftwidth=4
set expandtab " 注意在set expandtab情况下,可以使用命令:%retab!,将tab换成空格。在set noexpandtab情况下,使用命令:%retab!,可以将空格转成tab
au BufNewFile,BufRead *.ll set filetype=masm " 设置llvm IR文件,以masm的样式显示
set ff=unix " ff 是fileformats 的缩写

func! HEX() "调用该函数后,文件以16进制显示
exec "w"
exec "%!xxd"
endfunc

func! EXPANDTAB() "调用该函数后,文件中的所有tab转换为4个空格
set expandtab
%ret! 4
endfunc

"-- WinManager 配置 --
let g:winManagerWindowLayout="FileExplorer" " 设置我们要管理的插件
func! WM()
exec "WMToggle"
endfunc

常用插件

Vim 得益于广大开发者的支持,各种繁多的插件使得 Vim 更加强大方便和益用。以下只罗列部分自己用到的,更多的自己需要的可以善用搜索。

ctrlp 优雅的地打开源代码

nerdtree 优雅的地浏览文件目录

snipmate 优雅的代码自动片断

supertab 优雅的代码补全

tabular 优雅的对齐

tagbar 优雅的outline

css-color 优雅的在vim里查看css颜色

vim-fugitive 优雅的在vim里使用git

vim-powerline 很美观实用的状态栏

vim-surround 优雅的编辑tag

vundule 优雅的管理你的vim插件

vimwiki 优雅的内建wiki

colorselector 优雅的像女人试衣服一样试配色

配置主题

配置主题需要在vimrc中以下面的命令指定主题,例如指定主题为elflord

colorscheme elflord

常见的主题有:

default

elflord

orning

eachpuff

late

lue

elek

vening

urphy

ron

torte

darkblue

desert

koehler

pablo

shine

zellner

每种主题的效果可以看这里

常用快捷键

文件操作
命令解释
:e filename打开文件编辑
:w保存文件
:q退出vim
:q!退出vim,不保存文件
:x保存文件,退出vim
:sav filename另存为文件为filename
.重复1次之前更改的操作
5.重复5次之前更改的操作
在文件中移动
命令解释
k or Up Arrowmove the cursor up one line
j or Down Arrow向下移动光标
e将光标移动到单词的结尾
b将光标移动到单词的开头
0 r ^将光标移动到行首
G将光标移动到文件最后一行的行首
gg将光标移动到文件第一行的行首
:59移动光标到59行
20|将光标移动到第20个字符列
%Move cursor to matching parenthesis
[[跳转到function的开头
[{跳转到block的开头
Ctrl + o跳转到光标上一次停留的位置
剪切、复制和粘贴
命令解释
y复制选中的文本到剪贴板
p粘贴剪贴板中的内容
dd剪切当前行
yy复制当前行
y$复制光标位置到行尾的所有内容到剪贴板
yw复制一个单词到剪贴板
D剪切光标位置到行尾的所有内容到剪贴板
搜索
命令解释
/word从上到下搜索word
?word从下到上搜索word
*从上到下搜索光标停留处的word
#从下到上搜索光标停留处的word
/\cstring搜索 STRING 或者 string
/jo[ha]n搜索 john 或 joan。vim的搜索支持正则表达式,如果要搜索"[",需要转义,如:/\[
/< the搜索以 the开头的单词
/the>搜索以 the结尾的单词
/< the>搜索 the单词
/fred|joe搜索 fred 或 joe单词
/<\d\d\d\d>搜索 4 个数字组成的单词
/^\n{3}搜索 3个连续空行
替换
命令解释
:%s/old/new/g替换文件每行的第一个old为new
:%s/onward/forward/giReplace onward by forward, case unsensitive
:%s/old/new/gc替换文件中所有的old为new,每次一都会确认后才替换
:2,35s/old/new/g替换文件中第2-35行所有的old为new
:5,$s/old/new/g替换文件中第5行到结尾所有的old为new
:%s/^/hello/g为每行首增加hello
:%s/$/Harry/g为每行尾增加Harry
:%s/ *$//g删除每行结尾的空白符
:g/string/d删除所有包含string的行
:v/string/d删除所有不包含string的行
s/Bill/Steve/替换当前行的第一个Bill为Steve
s/Bill/Steve/g替换当前行的所有Bill为Steve
:%s/Bill/Steve/g替换文件中的所有Bill为Steve
:%s/^M//g删除 DOS 中的回车换行 (^M)
:%s/\r/\r/g转换消除 DOS中的回车换行成换行
大小写转换
命令解释
Vu输入V进入VISUAL BLOCK模式选择文本,然后输入u,将所有选择文本转化为小写
VU输入V进入VISUAL BLOCK模式选择文本,然后输入u,将所有选择文本转化为大写
g~~Invert case
VeU将一个单词转化为大写
Ve~一个单词切换大小写
:set ignorecase设置搜索忽略大小写,可以简写为set ic
:%s/<./\u&/g将所有单词首字母大写
:%s/<./\l&/g将所有单词首字母小写
:%s/.*/\u&将每行首字母大写
:%s/.*/\l&将每行首字母小写
读写文件
命令解释
:1,10 w outfile将1-10行写到当前目录下名为outfile文件中
:1,10 w >> outfile将1-10行追加到当前目录下名为outfile文件中
:r infile将当前目录下infile名字的文件内容插入到当前行之下
:23r infile将当前目录下infile名字的文件内容插入到23行之下
文件浏览器

vim自带的文件浏览器并不友好,推荐使用winmanager插件,下载地址,提取密码:ue7o

安装插件的步骤:

1.下载winmanager插件到Downloads文件夹

2.执行以下命令安装插件以及配置vim

cd ~/Downloads
unzip winmanager.zip -d winmanager# 解压
mkdir -p ~/.vim/doc/ # 如果已经有了该目录可以跳过此步骤
mkdir -p ~/.vim/plugin/ # 如果已经有了该目录可以跳过此步骤
cp ~/Downloads/winmanager/doc/winmanager.txt ~/.vim/doc/
cp ~/Downloads/winmanager/plugin/* ~/.vim/plugin/

# WinManager配置写入vimrc
sudo sh -c 'echo "
\"-- WinManager setting --
let g:winManagerWindowLayout=\"FileExplorer\" \" 设置我们要管理的插件
func! WM()
exec \"WMToggle\"
endfunc" >> /etc/vim/vimrc'

3.使用winmanager插件,使用vim打开/tmp/1.txt文件,然后在vim中执行:call WM(),即可打开winmanager,如下图所示:

关闭winmanager,再次执行call WM()即可

和 Unix 系统交互
命令解释
:!pwd执行Linux系统命令pwd
!!pwd执行Linux系统命令pwd,并将结果插入到该文件
:sh打开sh,暂时回到linux命令行
分屏显示
命令解释
:split filename横向分割窗口,打开文件
ctrl-w up arrow选择上一个窗口
ctrl-w ctrl-w选择下一个窗口
:vsplit file竖向分割窗口,打开文件
Marks
命令解释
m {a-z}标记当前位置为{a-z}
’ {a-z}移动光标到标签{a-z}
‘’移动光标到上一个标签
文本缩进
命令解释
:set autoindent打开自动缩进
:set smartindent打开智能缩进
:set shiftwidth=4设置缩进的宽度
>>向右增加缩进
<<向左增加缩进
=%调整()或{}之间的缩进
VG=重新调整全文的缩进
语法高亮
命令解释
:syntax on打开语法高亮
:syntax off关闭语法高亮
:set syntax=perl设置语法高亮为perl模式,前提是必须有perl语法高亮的配置

vim按键图

一键配置vim

如果你不想手动配置,这里还为你准备了脚本下载,提取密码: bobc

预先将vim_config.tar.gz下载到~/Downloads中

使用方法:

cd ~/Downloads
tar -zxvf vim_config.tar.gz # 解压
cd vim_config
./vim_config.sh # 配置vim

执行完以上命令后,你就可以和vim快乐的相处了。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值