`
yacobe
  • 浏览: 21719 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

vim常用配置

    博客分类:
  • UNIX
vim 
阅读更多
配置文件地址为/etc/vimrc

或者可以在Home文件夹下自建.vimrc

set number
显示行号

set autoindent
换行后自动缩进

set smartindent
输入花括号换行后自动缩进

set tabstop=4
Tab键位4个空格

set shiftwidth=4
自动缩进的值为4个空格

set expandtab
只用空格代替Tab。(这个功能对Python或者Haskell这种对缩进和空格很敏感的编程语言很重要。)


Alternatively, you can copy the following content into your .vimrc file.

"--------------------------------------------------------------------------
" Features
"--------------------------------------------------------------------------
" use vim settings, rather than vi settings
set nocompatible

" enable syntax highlighting
syntax on

" colour scheme
colorscheme koehler

" allows switching from unsaved buffers without saving first
set hidden

" tab autocompletion in the command space
set wildchar=<TAB>
set wildmenu
set wildmode=longest,full

" filetype specific commands
filetype indent plugin on
autocmd FileType make :set noexpandtab
autocmd FileType c :set cindent
autocmd FileType tex :set spell
autocmd FileType html :set textwidth=0 shiftwidth=2 softtabstop=2
autocmd BufNewFile,BufReadPost *.log :set filetype=messages

" abbreviations for convenience
iab #i #include
iab #d #define
iab perr fprintf(stderr, "%s:%d:\n", __FILE__, __LINE__);<ESC>23ha

"--------------------------------------------------------------------------
" Usability options
"--------------------------------------------------------------------------
" allow backspacing over autoindent, line breaks and start of insert action
set backspace=indent,eol,start

" number of lines remembered in the command line history
set history=50

" show matching bracket briefly after one is inserted
set showmatch

" stop certain movements from always going to the first character of a line
set nostartofline

" enable the use of mouse for all modes
"set mouse=a
set mouse=r

" display the name of the file currently being edited in the title
set title

" display line numbers
set number

" shows line/column information for the current cursor position
set ruler

" shows partial commands in the last line of the screen
set showcmd

" always display the status line, even if only one window is displayed
set laststatus=2

" set the command window height to 2 lines
"set cmdheight=2
set cmdheight=1

" use visual bell instead of beeping when doing something wrong
set visualbell

" if visual bell is set, vim will neither flash nor beep
set t_vb=

" highlights searches
set hlsearch

" use case insensitive search, except when using capital letters
set ignorecase
set smartcase

" set incremental searching
set incsearch

"--------------------------------------------------------------------------
" Indentation, wrapping and folding
"--------------------------------------------------------------------------
" indentation settings for 4 spaces instead of tabs
set shiftwidth=4
set softtabstop=4
set expandtab

" indentation settings for using hard tabs as indent
"set shiftwidth=4
"set tabstop=4

" keep the same indenting as the previous line when starting a new line
set autoindent

" round indents off to shiftwidth
set shiftround

" turn off text wrapping
set nowrap

" mark lines with a character that exceed 80 characters
set listchars+=extends:+

" maximum allowable line length
set textwidth=79

" code folding
set foldmethod=syntax
set foldlevelstart=99

"--------------------------------------------------------------------------
" Mappings
"--------------------------------------------------------------------------
" map Y to act like D and C, i.e. to yank until EOL, rather than act as yy
map Y y$

" map <C-L> (redraw screen) to also turn off search highlighting until the
" next search
nnoremap <C-L> :nohl<CR><C-L>

" map <F2> to open .vimrc config file
map <F2> :e ~/.vimrc<CR>
"map <F2> :e ~/_vimrc<CR>

" map <F3> to do a printed word count for a tex document
map <F3> :w !untex -e -o - \| wc -w<CR>

" map <F4> to 'make' (skips output)
map <F4> :make<CR><CR><CR>

" map <F5> to 'make'
map <F5> :make<CR>

" use <F11> to toggle between auto-indenting for code paste
nnoremap <F11> :set invpaste paste?<CR>
set pastetoggle=<F11>
set showmode

" map '\w' to toggle line wrapping
noremap <silent> <Leader>w :call ToggleWrap()<CR>
function ToggleWrap()
    if &wrap
        echo "Wrap OFF"
        setlocal nowrap
        set virtualedit=all
        set textwidth=79
        silent! nunmap <buffer> <Up>
        silent! nunmap <buffer> <Down>
        silent! nunmap <buffer> <Home>
        silent! nunmap <buffer> <End>
        silent! iunmap <buffer> <Up>
        silent! iunmap <buffer> <Down>
        silent! iunmap <buffer> <Home>
        silent! iunmap <buffer> <End>
    else
        echo "Wrap ON"
        setlocal wrap linebreak nolist
        set virtualedit=
        set textwidth=0
        setlocal display+=lastline
        noremap  <buffer> <silent> <Up>   gk
        noremap  <buffer> <silent> <Down> gj
        noremap  <buffer> <silent> <Home> g<Home>
        noremap  <buffer> <silent> <End>  g<End>
        inoremap <buffer> <silent> <Up>   <C-o>gk
        inoremap <buffer> <silent> <Down> <C-o>gj
        inoremap <buffer> <silent> <Home> <C-o>g<Home>
        inoremap <buffer> <silent> <End>  <C-o>g<End>

        " override normal J, K, 0, $
        noremap  <buffer> <silent> k gk
        noremap  <buffer> <silent> j gj
        noremap  <buffer> <silent> 0 g0
        noremap  <buffer> <silent> $ g$
    endif
endfunction

"--------------------------------------------------------------------------
" Other options
"--------------------------------------------------------------------------
" mintty specific cursors when in normal and insert mode
"let &t_ti.="\e[1 q"
"let &t_SI.="\e[5 q"
"let &t_EI.="\e[1 q"
"let &t_te.="\e[0 q"

" gvim specific options
"colorscheme desert
"set imdisable
"set guifont=Consolas:h11:cANSI
"autocmd GUIEnter * set visualbell t_vb=
"set lines=45 columns=85
"set directory=.,$TEMP
"set clipboard=unnamed
  • _.tar (7 KB)
  • 下载次数: 0
分享到:
评论

相关推荐

    vim常用配置文件下载

    我自己的vim配置文件,包括常用的代码不全,git提示,nerdtree,taglist等。 复制到根目录下重命名为.vimrc

    vim常用插件配置文件

    "vim常用插件配置文件"这个主题正是围绕如何优化Vim的使用体验,通过安装和配置一系列插件来提升开发效率。 1. **NERDTree**: 这是Vim的一个文件管理器插件,它在左侧提供了一个树形视图,让用户可以方便地浏览和...

    vim常用编辑命令 vim常用编辑命令

    掌握Vim的基础命令能够极大地提高文本编辑效率,以下是对标题和描述中提及的Vim常用编辑命令的详细解析。 #### 光标移动命令 - **h 或 左箭头键**:使光标向左移动一个字符。 - **j 或 下箭头键**:使光标向下移动...

    vim常用插件配置说明

    **Vim常用插件配置详解** 在编程世界中,Vim作为一个强大的文本编辑器,以其高效的操作和高度可定制性赢得了众多程序员的喜爱。为了提升Vim的使用体验和工作效率,许多开发者选择安装并配置各种插件。本篇将详细...

    vim 常用快捷键笔记

    ### vim 常用快捷键知识点 #### 一、引言 Vim 是一款功能强大的文本编辑器,广泛应用于各种操作系统之中,特别是 Linux 和 Unix 平台。它源自 vi 编辑器,但添加了许多增强功能,使得它更加高效且易于定制。本文将...

    vim常用插件集合

    标题提及的“vim常用插件集合”是一组能够增强Vim功能的扩展,这些插件包括ctags、TagList、minibuffer、winmanager以及可能未详述的"a"插件。以下是对这些插件的详细说明: 1. **ctags**:这是一个源代码导航工具...

    vim常用命令总结

    ### vim常用命令总结 #### 一、概述 `vim`是一款功能强大的文本编辑器,在Linux环境中广泛使用。本文档旨在总结`vim`编辑器中常用的命令,这些命令可以帮助用户高效地进行文本编辑工作。总结包括查找命令、修改...

    VIM常用命令大全

    ### VIM常用命令详解 #### 一、简介 VIM(Vi IMproved)是一款功能强大的文本编辑器,它基于原始的vi编辑器进行了大量的改进和扩展。VIM因其高效的文本编辑能力和广泛的系统兼容性,在程序员和技术人员中非常受欢迎...

    我的vimrc常用设置

    vimrc文件是Vim编辑器的配置文件,它定义了用户自定义的快捷键、行为设置以及各种偏好。通过定制vimrc,我们可以使Vim更加符合个人的工作习惯,提高编程效率。下面将详细介绍标题和描述中提到的一些常见vimrc设置...

    vim常用快捷键和配置设置

    以下是一些关于Vim常用快捷键、配置和插件的详细说明: 1. **Vim中的Tab操作**:在Vim中,Tab键可以用于缩进代码,但也可以通过配置实现其他功能。例如,你可以设置`map &lt;Tab&gt; &gt;i`使得在插入模式下按下Tab键进行...

    vim常用命令整理

    ### Vim常用命令详解 #### 一、模式切换 Vim具备三种主要的工作模式:命令模式(Command mode)、插入模式(Insert mode)以及可视模式(Visual mode)。掌握这些模式之间的切换是高效使用Vim的基础。 - **切换到插入...

    vim常用插件集,将其配置成IDE

    本压缩包包含了一些Vim常用的插件,用于提升代码编辑体验。 首先,`omnicppcomplete`是一个针对C++编程的代码自动补全插件。它能够提供智能感知,根据上下文提供可能的函数、类和变量名,极大地提高了编码效率。...

    VIM常用插件安装包

    本压缩包"VIM常用插件安装包"就是为了帮助用户快速提升VIM的使用体验,通过将这些插件解压到你的`vimfiles`目录下,即可享受到这些插件带来的便利。 首先,了解`vimfiles`目录。在Windows系统中,这个目录通常位于`...

    vim常用插件及vimrc

    本资源提供的"vim常用插件及vimrc"正是为了帮助用户优化Vim的使用体验,提高编程效率。 首先,我们需要了解vimrc文件。vimrc是Vim的配置文件,它存储了用户的个性化设置,如快捷键绑定、颜色方案、自动完成设置等。...

    vim基本配置以及常用插件

    下面将详细介绍 Vim 的基本配置以及一些常用插件,帮助你提高编程效率。 **一、.vimrc配置** `.vimrc`文件是Vim的配置文件,通常位于用户的家目录下(Linux/macOS: `~/.vimrc`, Windows: `%USERPROFILE%/_vimrc`或...

    vim常用 插件集合

    本篇将详细介绍标题为"vim常用插件集合"的相关知识点,包括`supertab-0.32.tar.bz2`、`taglist_45.zip`、`ctags-5.8.tar.gz`和`cscope-15.7a.tar.bz2`这四个压缩包中的插件。 1. **Supertab**: Supertab是一款Vim...

    vim配置文件

    - 安装ctags并配置Vim使其自动更新和使用标签库,可以在`.vimrc`中添加相关设置。 2. **cscope**: - cscope是一个更加强大的代码浏览器,除了提供类似ctags的跳转功能外,还能进行复杂的查询,比如全局定义、...

    vim常用命令vim常用命令vim常用命令

    以下是一些Vim常用命令的详细说明: 1. **移动光标**: - `k`: 向上移动一行,`nk`则向上移动n行。 - `j`: 向下移动一行,`nj`则向下移动n行。 - `h`: 向左移动一列,`nh`则向左移动n列。 - `l`: 向右移动一列...

Global site tag (gtag.js) - Google Analytics