linux修改vim环境,Linux学习笔记(二)——vim配置

所以先要对“vim”编辑器进行改造。网上有很多关于牛人写有关于vim改造的步骤,在这里推荐:

下图为该牛人打造的vim编辑器,相信看了过后,你一定非常喜欢。

069a1d8c42a26aad2e929f82bb1eb51f.png

这篇博客对打造IDE的vim作了比较详细的说明步骤,我就不再多说(偷一下懒)。以下为我为参考了该博客的vim配置:

" This line should not be removed as it ensures that various options are

" properly set to work with the Vim-related packages available in Debian.

runtime! debian.vim

" Uncomment the next line to make Vim more Vi-compatible

" NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes numerous

" options, so any other options should be set AFTER setting 'compatible'.

set nocompatible

" Vim5 and later versions support syntax highlighting. Uncommenting the

" following enables syntax highlighting by default.

if has("syntax")

syntax on"语法高亮

endif

"colorscheme ron" elflord ron peachpuff default设置配色方案,vim自带的配色方案保存在/usr/share/vim/vim72/colors目录下

" detect file type

filetype on

filetype plugin on

" If using a dark background within the editing area and syntax highlighting

" turn on this option as well

"set background=dark

" Uncomment the following to have Vim jump to the last position when

" reopening a file

if has("autocmd")

au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif

"have Vim load indentation rules and plugins according to the detected filetype

filetype plugin indent on

endif

" The following are commented out as they cause vim to behave a lot

" differently from regular Vi. They are highly recommended though.

"set ignorecase"搜索模式里忽略大小写

"set smartcase"如果搜索模式包含大写字符,不使用'ignorecase'选项。只有在输入搜索模式并且打开'ignorecase'选项时才会使用。

set autowrite"自动把内容写回文件:如果文件被修改过,在每个:next、:rewind、:last、:first、:previous、:stop、:suspend、:tag、:!、:make、CTRL-]和CTRL-^命令时进行;用:buffer、CTRL-O、CTRL-I、'{A-Z0-9}或`{A-Z0-9}命令转到别的文件时亦然。

set autoindent"设置自动对齐(缩进):即每行的缩进值与上一行相等;使用noautoindent取消设置

set smartindent"智能对齐方式

set tabstop=4"设置制表符(tab键)的宽度

set softtabstop=4"设置软制表符的宽度

set shiftwidth=4" (自动)缩进使用的4个空格

set cindent"使用C/C++语言的自动缩进方式

set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s"设置C/C++语言的具体缩进方式

"set backspace=2"设置退格键可用

set showmatch"设置匹配模式,显示匹配的括号

set linebreak"整词换行

set whichwrap=b,s,,[,] "光标从行首和行末时可以跳到另一行去

"set hidden " Hide buffers when they are abandoned

set mouse=a" Enable mouse usage (all modes)"使用鼠标

set number" Enable line number"显示行号

"set previewwindow"标识预览窗口

set history=50" set command history to 50"历史记录50条

"--状态行设置--

set laststatus=2 "总显示最后一个窗口的状态行;设为1则窗口数多于一个的时候显示最后一个窗口的状态行;0不显示最后一个窗口的状态行

set ruler"标尺,用于显示光标位置的行号和列号,逗号分隔。每个窗口都有自己的标尺。如果窗口有状态行,标尺在那里显示。否则,它显示在屏幕的最后一行上。

"--命令行设置--

set showcmd"命令行显示输入的命令

set showmode"命令行显示vim当前模式

"--find setting--

set incsearch"输入字符串就显示匹配点

set hlsearch

"-- omnicppcomplete setting --

"按下F3自动补全代码,注意该映射语句后不能有其他字符,包括tab;否则按下F3会自动补全一些乱码

"imap

"按下F2根据头文件内关键字补全

"imap

set completeopt=menu,menuone "关掉智能补全时的预览窗口

let OmniCpp_MayCompleteDot = 1 " autocomplete with .

let OmniCpp_MayCompleteArrow = 1 " autocomplete with ->

let OmniCpp_MayCompleteScope = 1 " autocomplete with ::

let OmniCpp_SelectFirstItem = 2 " select first item (but don't insert)

let OmniCpp_NamespaceSearch = 2 " search namespaces in this and included files

let OmniCpp_ShowPrototypeInAbbr = 1 " show function prototype in popup window

let OmniCpp_GlobalScopeSearch=1 " enable the global scope search

let OmniCpp_DisplayMode=1 " Class scope completion mode: always show all members

"let OmniCpp_DefaultNamespaces=["std"]

let OmniCpp_ShowScopeInAbbr=1 " show scope in abbreviation and remove the last column

let OmniCpp_ShowAccess=1

"-- Taglist setting --

let Tlist_Ctags_Cmd='ctags' "因为我们放在环境变量里,所以可以直接执行

let Tlist_Use_Right_Window=1 "让窗口显示在右边,0的话就是显示在左边

let Tlist_Show_One_File=0 "让taglist可以同时展示多个文件的函数列表

let Tlist_File_Fold_Auto_Close=1 "非当前文件,函数列表折叠隐藏

let Tlist_Exit_OnlyWindow=1 "当taglist是最后一个分割窗口时,自动推出vim

"是否一直处理tags.1:处理;0:不处理

let Tlist_Process_File_Always=1 "实时更新tags

let Tlist_Inc_Winwidth=0

"-- WinManager setting --

let g:winManagerWindowLayout='FileExplorer|TagList' "设置我们要管理的插件

let g:persistentBehaviour=0 "如果所有编辑文件都关闭了,退出vim

nmap wm :WMToggle

" -- MiniBufferExplorer --

let g:miniBufExplMapWindowNavVim = 1 "按下Ctrl+h/j/k/l,可以切换到当前窗口的上下左右窗口

let g:miniBufExplMapWindowNavArrows = 1 "按下Ctrl+箭头,可以切换到当前窗口的上下左右窗口

let g:miniBufExplMapCTabSwitchBufs = 1 "启用以下两个功能:Ctrl+tab移到下一个buffer并在当前窗口打开;Ctrl+Shift+tab移到上一个buffer并在当前窗口打开;ubuntu好像不支持

"let g:miniBufExplMapCTabSwitchWindows = 1 "启用以下两个功能:Ctrl+tab移到下一个窗口;Ctrl+Shift+tab移到上一个窗口;ubuntu好像不支持

let g:miniBufExplModSelTarget = 1"不要在不可编辑内容的窗口(如TagList窗口)中打开选中的buffer

"--fold setting--

set foldmethod=syntax "用语法高亮来定义折叠

set foldlevel=100 "启动vim时不要自动折叠代码

set foldcolumn=5 "设置折叠栏宽度

"-- QuickFix setting --

"--ctags setting--

"按下F5重新生成tag文件,并更新taglist

map :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .:TlistUpdate

imap :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .:TlistUpdate

set tags=tags

set tags+=./tags "add current directory's generated tags file

set tags+=/usr/include/c++/tags

" F5编译和运行C程序,F6编译和运行C++程序

" "请注意,下述代码在windows下使用会报错

" "需要去掉./这两个字符

"

" " C的编译和运行

map :call CompileRunGcc()

func! CompileRunGcc()

exec "w"

exec "!gcc % -o %

exec "! ./%

endfunc

"按下F6,执行make clean

map :make clean

"按下F7,执行make编译程序,并打开quickfix窗口,显示编译信息

map :make:copen

"按下F8,光标移到上一个错误所在的行

map :cp

"按下F9,光标移到下一个错误所在的行

map :cn

"以上的映射是使上面的快捷键在插入模式下也能用

imap :make clean

imap :make:copen

imap :cp

imap :cn

map :cs add ./cscope.out .:cs reset

imap :cs add ./cscope.out .:cs reset

"将:cs find c等Cscope查找命令映射为c等快捷键(按法是先按Ctrl+Shift+-,然后很快再按下c)

nmap s :cs find s =expand(""):copen

nmap g :cs find g =expand("")

nmap d :cs find d =expand(""):copen

nmap c :cs find c =expand(""):copen

nmap t :cs find t =expand(""):copen

nmap e :cs find e =expand(""):copen

nmap f :cs find f =expand("")

nmap i :cs find i =expand(""):copen

let g:SuperTabRetainCompletionType = 2

let g:SuperTabDefaultCompletionType = ""

"-- Cscope setting --

if has("cscope")

set csprg=/usr/bin/cscope"指定用来执行cscope的命令

set csto=0"设置cstag命令查找次序:0先找cscope数据库再找标签文件;1先找标签文件再找cscope数据库

set cst"同时搜索cscope数据库和标签文件

set cscopequickfix=s-,c-,d-,i-,t-,e-"使用QuickFix窗口来显示cscope查找结果

set nocsverb

if filereadable("cscope.out")"若当前目录下存在cscope数据库,添加该数据库到vim

cs add cscope.out

elseif $CSCOPE_DB != """否则只要环境变量CSCOPE_DB不为空,则添加其指定的数据库到vim

cs add $CSCOPE_DB

endif

set csverb

endif

set completeopt=longest,menu

set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim73,/usr/share/vim/vimfiles/after,/var/lib/vim/addons/after,~/.vim/after,/root/.vim/autocomp

以下为我的vim配置文件。有兴趣的可以直接解压放在/root目录下。

还有一些功能没有实现,会在以后慢慢补上。Vim环境搭建好后,就开始进行Linux那漫长的学习之路了……

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要修改vim配置文件,可以按照以下步骤进行: 1. 打开终端,输入命令:vim ~/.vimrc,打开vim配置文件。 2. 在打开的文件中,可以添加自己需要的配置,比如设置tab键为4个空格,可以添加以下代码: set tabstop=4 set shiftwidth=4 set expandtab 3. 保存修改,按下Esc键,输入:wq保存并退出。 4. 重新打开vim,就可以看到修改后的配置生效了。 注意:修改vim配置文件需要一定的vim基础知识,如果不熟悉vim的操作,建议先学习一下vim的基本用法。 ### 回答2: Vim是一种常见的文本编辑器,经常被用来在Linux系统上编辑文本。Vim的默认配置可以满足一些简单的编辑需求,但当需要更高效的编辑时,通常就需要对Vim配置进行修改。以下是如何修改Vim配置文件: 1. 找到Vim配置文件:Vim配置文件通常位于用户的主目录下。在终端中输入以下命令可以找到Vim配置文件: ``` cd ~ ls -a ``` 其中,‘~’表示用户的主目录,‘ls -a’命令用于显示所有文件和目录,包括隐藏的文件和目录。Vim配置文件名为“.vimrc”,如果该文件不存在,则需要手动创建。 2. 修改Vim配置文件:打开“.vimrc”文件,可以使用任何文本编辑器,如‘vim’、‘nano’等。在文件中输入需要修改配置信息,如下: ``` set number set autoindent set tabstop=4 set shiftwidth=4 ``` 以上配置用于设置行号、自动缩进、制表符宽度、缩进宽度等。其中,‘set’可以用于设置Vim的行为。更多常用的配置信息可以在Vim的文档中找到。 3. 保存配置文件并退出:修改配置后,需要保存并退出文件。在Vim中,可以使用“:wq”命令,即“write and quit”。 4. 测试配置是否生效:重新打开终端,输入‘vim’命令即可启动Vim编辑器。如果之前的配置正确地生效,那么新打开的Vim编辑器就会使用新的配置。 总体来说,修改Vim配置文件可以使编辑器更加适应用户的习惯,提高编辑的效率。需要注意的是,在修改配置文件时,应当谨慎操作,避免不小心破坏了原有的配置。 ### 回答3: 为了提升vim的编辑效率和舒适度,我们可以通过修改vim配置文件来适应自己的编辑习惯。下面我将介绍如何在Linux系统中修改vim配置文件。 1. 打开vim配置文件 vim配置文件为~/.vimrc,我们可以使用vim或者其他文本编辑器打开它。如果你是第一次修改该文件,可能需要创建它。 $ vi ~/.vimrc 2. 设置vim自动缩进 自动缩进是vim中一个非常有用的功能,可以大大提高编辑效率。我们可以通过以下命令来设置自动缩进为4个空格: set softtabstop=4 set shiftwidth=4 set expandtab 其中softtabstop和shiftwidth分别表示当按下Tab键时插入几个空格,expandtab表示是否将Tab键转换为空格。 3. 设置行号和高亮显示 为了能更好的阅读代码,在vim中开启行号和语法高亮也是非常重要的。我们可以通过下列命令来设置: set number " 显示行号 syntax on " 开启语法高亮 4. 设置快捷键和映射 为了增加编辑效率和舒适度,我们可以设置一些快捷键和映射,来达到更快地输入一些常见命令的效果。 例如,我们可以设置Ctrl-s保存当前编辑文件的快捷键: map <C-s> :w<CR> 其中map表示映射快捷键,<C-s>表示Ctrl-s,:w表示保存文件,<CR>表示回车键。 5. 修改颜色主题 最后,我们可以根据自己的喜好修改vim的颜色主题,来使编辑器看起来更加美观。vim默认提供了许多颜色主题,可以通过以下命令来设置: colorscheme desert " 修改为desert主题 修改完毕后,需要保存退出。重新打开vim即可看到修改后的效果。 总之,通过修改vim配置文件,可以提高编辑效率和舒适度,更好地适应自己的编辑习惯,是一项非常实用和必要的技能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值