博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
配置linux下的Vim,函数一键跳转man手册,光标显示等
阅读量:3948 次
发布时间:2019-05-24

本文共 3270 字,大约阅读时间需要 10 分钟。

对大多的开发者来说,vi是一个好用的代码编辑器。

它可以在linux中默认安装,也就是说,在你的linux中如果没有其他的编译器,那vi就是你最后的港湾。
但是有些人觉得vi的功能少了点,所以他们给vi增加了许多的插件来实现多种功能
,例如光标的位置显示,状态栏的显示,缩进格式,一键编译运行等等。
我的使用理念是尽量减少插件的影响,用基本的编辑器也能较好写出质量不错的代码。所以对于vi的升级版,vim来说,我只增加了一些基本功能,和一个函数跳转man手册的插件,这样可以提升效率。
毕竟在代码编写的过程中需要查看man手册,使用跳转,不能分屏。或者自己开另一个终端,所以我觉得不如找到一个插件可以直接从函数跳转到man。
我们要注意的是需要先安装一个vim,还需要一个vim的插件 Vundle

至于安装的代码,我在下方给出,需要一句一句执行

有些功能,我使用了 " 注释掉了,如果你需要,可以自行去掉 ” 来使用它

配置代码来源网络;
安装 vim

sudo apt-get install vim

安装 git

sudo apt-get install git

运行这段代码,等待它结束

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

然后运行

vi ~/.vimrc

或者

gedit ~/.vimrc

复制以下代码到 .vimrc里

set nocompatible              " 去除VI一致性,必须filetype off                  " 必须" 设置包括vundle和初始化相关的runtime pathset rtp+=~/.vim/bundle/Vundle.vimcall vundle#begin()" 另一种选择, 指定一个vundle安装插件的路径"call vundle#begin('~/some/path/here')" 让vundle管理插件版本,必须Plugin 'VundleVim/Vundle.vim'" 以下范例用来支持不同格式的插件安装." 请将安装插件的命令放在vundle#begin和vundle#end之间." Github上的插件" 格式为 Plugin '用户名/插件仓库名'Plugin 'tpope/vim-fugitive'" 来自 http://vim-scripts.org/vim/scripts.html 的插件" Plugin '插件名称' 实际上是 Plugin 'vim-scripts/插件仓库名' 只是此处的用户名可以省略Plugin 'L9'" 由Git支持但不再github上的插件仓库 Plugin 'git clone 后面的地址'Plugin 'git://git.wincent.com/command-t.git'" 本地的Git仓库(例如自己的插件) Plugin 'file:///+本地插件仓库绝对路径'Plugin 'file:///home/gmarik/path/to/plugin'" 插件在仓库的子目录中." 正确指定路径用以设置runtimepath. 以下范例插件在sparkup/vim目录下Plugin 'rstacruz/sparkup', {
'rtp': 'vim/'}" 安装L9,如果已经安装过这个插件,可利用以下格式避免命名冲突Plugin 'ascenator/L9', {'name': 'newL9'}Plugin 'vim-utils/vim-man'" 你的所有插件需要在下面这行之前call vundle#end() " 必须filetype plugin indent on " 必须 加载vim自带和插件相应的语法和文件类型相关脚本" 忽视插件改变缩进,可以使用以下替代:"filetype plugin on"" 简要帮助文档" :PluginList - 列出所有已配置的插件" :PluginInstall - 安装插件,追加 `!` 用以更新或使用 :PluginUpdate" :PluginSearch foo - 搜索 foo ; 追加 `!` 清除本地缓存" :PluginClean - 清除未使用插件,需要确认; 追加 `!` 自动批准移除未使用插件" 将你自己对非插件片段放在这行之后"设置编码,中文不乱码set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936set termencoding=utf-8set encoding=utf-8"显示行号set number"突出显示当前行set cursorline"突出当前列"set cursorcolumn"启用鼠标"set mouse=aset selection=exclusiveset selectmode=mouse,key"显示括号匹配set showmatch"设置缩进set tabstop=4"设置自动缩进长度为4空格set shiftwidth=4"继承前一行的缩进方式set autoindent"设置粘贴模式set paste"显示空格和tab键"set listchars=tab:>-,trail:-"显示状态栏set laststatus=2" 我的状态行显示的内容(包括文件类型和解码) set statusline=%F%m%r%h%w\ [FORMAT=%{
&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{
strftime(\"%d/%m/%y\ -\ %H:%M\")} "set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%] "显示光标当前位置set ruler"打开文件类型检测filetype plugin indent on"vim配置立即生效autocmd BufWritePost $MYVIMRC source $MYVIMRC"语法高亮set syntax=on"搜索忽略大小写set ignorecase"C的编译和运行 map
:call CompileRunGcc()
func! CompileRunGcc() exec "w" exec "!gcc % -o %<" exec "! ./%<" endfunc " C++的编译和运行 map
:call CompileRunGpp()
func! CompileRunGpp() exec "w" exec "!g++ % -o %<" exec "! ./%<" endfuncnmap m :Man
=expand("
")
nmap vm :Vman
=expand("
")

然后保存,退出

执行这句代码

vim +PluginInstall +qall

或者,在vim的底行模式中输入以下代码

:PluginInstall

在之后自动进入安装,过程可能有点长,耐心等待,当界面回到Bash或者vim时

就是完成了,再次进入到vim就可以光标移动到函数上,在底行模式按m,可以上下分屏显示man手册,或者按 v+m 这两个按键,可以左右分屏显示man手册。
在底行模式下使用 ctrl + w + w 这三个按键可以在分屏之间跳转。

其他的分屏操作可以在网上寻找,后期我会写一篇有关这方面的博客。

转载地址:http://rkewi.baihongyu.com/

你可能感兴趣的文章
Android的Gradle技巧 1.3从命令行执行Gradle构建
查看>>
Android的Gradle技巧 1.4从Android Studio执行Gradle构建
查看>>
Android的Gradle技巧 1.5添加Java库依赖关系
查看>>
Android的Gradle技巧 1.6使用Android Studio添加库依赖关系
查看>>
Android的Gradle技巧 1.7配置存储库
查看>>
android Collections 排序,
查看>>
Android的Gradle技巧 2.1设置项目属性
查看>>
Android的Gradle技巧 2.2将应用程序从Eclipse ADT移植到Android Studio
查看>>
Android的Gradle技巧 2.3从Eclipse移植应用程序ADT使用Eclipse
查看>>
昂山素季 Aung San Suu Kyi
查看>>
AI 人工智能第一课 从贝叶斯定理开始
查看>>
朴素贝叶斯python实现
查看>>
Logistic回归原理及公式推导
查看>>
并发性与并行性 并发性与并行性
查看>>
惰性求值,可组合和模块化的JavaScript
查看>>
How to Extend Django User Model 如何扩展Django用户模型
查看>>
两个行业的故事:编程语言与富裕国家和发展中国家之间的差异
查看>>
15个用于管理MySQL服务器mysqladmin命令
查看>>
服务器端I / O性能:Node,PHP,Java与Go
查看>>
多行文本编辑时,同一行编辑不同类型的字符时自动换行的问题
查看>>