Como diz o ditado, “Os trabalhadores devem primeiro aprimorar suas ferramentas se quiserem fazer seu trabalho bem.” Como um criador de código profissional, como você pode não tratar sua arma de programação - o editor VIM! Talvez os leitores diriam que a arma da programação não deveriam ser as ferramentas integradas de várias linguagens? Como VS para escrever programas C / C ++, software Codeblock (plataforma cruzada), como Eclipse para escrever programas Java (agora existem plug-ins que suportam C / C ++ / Python), como PyCharm para escrever programas Python, etc. Esses ambientes integrados de desenvolvimento humanizado são poderosos e fáceis de usar. Mas o sucesso também está aqui, e o fracasso também está aqui. Este artigo irá apresentar o editor Vim e sua configuração básica em detalhes.
Introdução
Como diz o ditado, "Os trabalhadores devem primeiro aprimorar suas ferramentas se quiserem fazer seu trabalho bem" e, como um criador de código profissional, como ele pode tratar bem seu editor de arma de programação-VIM! Talvez os leitores diriam que a arma da programação não deveriam ser as ferramentas integradas de várias linguagens? Como VS para escrever programas C / C ++, software Codeblock (plataforma cruzada), como Eclipse para escrever programas Java (agora existem plug-ins que suportam C / C ++ / Python), como PyCharm para escrever programas Python, etc. Esses ambientes integrados de desenvolvimento humanizado são poderosos e fáceis de usar. Mas acho que o sucesso também está aqui, e o fracasso também está aqui.
- Redundância de funções
Agora as ferramentas do ambiente integrado para programação são muito poderosas, mas não usamos muitas funções, ao invés disso, leva muito tempo para iniciar cada vez. Portanto, o ambiente integrado não é adequado para produtores de códigos profissionais. Costumamos dizer que o que nos convém é o melhor, principalmente a ferramenta de programação, afinal, ela não sai das nossas mãos todos os dias. - A personalização é muito baixa
Basicamente, cada ferramenta de desenvolvimento integrada não deixa muito espaço de personalização para os usuários, e os usuários só podem se acostumar com o uso popular fornecido pelos fornecedores de software. Para usuários que estão familiarizados com várias linguagens, ele precisa dominar vários ambientes de integração de desenvolvimento e é melhor usar o Vim para resolver tudo. - Uso misto de mouse e teclado
Na verdade, o benevolente vê o benevolente e o sábio vê a sabedoria. Pessoalmente, acho que a programação eficiente ainda requer teclados práticos e deve ser proficiente no uso de algumas teclas de atalho básicas.
O Vim básico é um editor de texto, mas seu poder está em seus enormes plug-ins. Esses plug-ins permitem que o Vim faça muitas coisas incríveis, que é um pouco como o navegador Google. Como autocompletar código, salto de erro, destaque, etc., o Vim tem plug-ins correspondentes para lidar, os usuários podem entender e combinar livremente. Portanto, o limite de entrada para o Vim ainda é bastante alto, principalmente porque você tem mais comandos para aprender.Aqui está um site que recomenda jogar e lembrar comandos e um guia de aprendizagem do Vim . Além disso, criar um ambiente Vim adequado a você economizará muito tempo e poderá afiar sua faca sem cortar madeira acidentalmente. Vamos dar uma olhada na configuração básica do plugin Vim de nível básico .
Configuração básica
-
Instale vim, scripts, doc
sudo apt-get install vim vim-scripts vim-doc
Dicas:
- software vim vim, o diretório de instalação é / usr / share / vim
- vim-scripts Plug-ins básicos para vim, incluindo destaque de sintaxe, etc. O diretório de instalação é / usr / share / vim-scripts
- vim-doc arquivo de ajuda do vim, mas em inglês
-
Documento de Ajuda Chinês
- Baixe a última versão do documento de ajuda do vim em chinês
- Descompacte a pasta doc para o diretório ~ / .vim
-
Configurar arquivo ~ / .vimrc
Configurando .vimrc personalizado (não sei se o comando pode ser usado
:help command
para visualizar o arquivo de ajuda chinês)
Plug-ins úteis
Existem muitos plug-ins no Vim, e eles são muito poderosos e poderosos. O endereço do plug-in do site oficial está aqui , mas muitos de seus plug-ins foram transferidos para o Github.
-
ctags
ctags podem estabelecer o índice de tag da árvore de origem (uma tag é um lugar onde um identificador é definido, como uma definição de função), de modo que os programadores possam localizar funções, variáveis, definições de macro, etc. para visualizar o protótipo durante programação.-
Instale a ferramenta exuberant-ctags
sudo apt-get install exuberant-ctags
-
Criar índice de base de código C ++
-
Baixe arquivos de cabeçalho libstdc ++ , incluindo STL e streams em C ++.
-
Descompacte para o diretório ~ / .vim / tags e execute o comando ctags
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ cpp_src mv tags ~/.vim/tags/cpptag
-
Definir em .vimrc
set tags+=~/.vim/tags/cpptag
-
-
Criar índice de base de código Gcc
-
Depois que o essencial da compilação for instalado no ubuntu, haverá arquivos de cabeçalho C / C ++ no diretório / usr / include / c ++.
sudo apt-get install build-essential
-
Copie os arquivos em /usr/include/c++/4.8 para a pasta ~ / .vim / tags / gcc e execute o comando ctags
cp -R /usr/include/c++/4.8 ~/.vim/tags/gcc ctags -R --c++-kinds=+p --fields=+iaS --extra=+q gcc mv tags ~/.vim/tags/gcctag
-
Definir em .vimrc
set tags+=~/.vim/tags/gcctag
-
-
-
A
janela da lista de tags que aparece no lado direito da tela é a janela da lista de tags, na qual você pode ver todas as tags definidas no arquivo: macros, definições, variáveis, funções, etc .; clicando em uma tag, você pode pular para a posição definida pela tag; um certo tipo de tag é dobrado para facilitar a visualização.-
Instalar lista de tags
vim-addon-manager install taglist
-
Configurar em .vimrc
"""""""""""""""""""""""""""""""""" " 标签列表的设置 """""""""""""""""""""""""""""""""" " 启动vim后,自动打开taglist窗口 let Tlist_Auto_Open=1 " 高亮显示当前标签列表中的标签 let Tlist_Auto_Highlight_Tag=1 " 添加新文件后,标签列表将自动更新 let Tlist_Auto_Update=1 " 显示标签域--类 let Tlist_Display_Tag_Scope=1 " 如果taglist窗口是最后一个窗口,则退出vim let Tlist_Exit_OnlyWindow=1 " Taglist窗口里可折叠 let Tlist_Enable_Fold_Column=1 " 只显示当前文件的标签,折叠其他文件的标签 let Tlist_File_Fold_Auto_Close=1 " 多个文件间切换时,标签列表也更新为当前文件 let Tlist_Show_One_File=1 " 标签列表显示在Buffer区的右边 "let Tlist_Use_Right_Window=1 " 单击标签列表中的标签将定位到标签定义处 let Tlist_Use_SingleClick=1
-
Descrição da tecla de atalho personalizada
<F10>
Abrir / fechar lista de rótulos
-
-
winmanager
WinManager é usado para gerenciar navegadores e buffers de arquivos. O WinManager versão 2.0 ou superior também pode gerenciar outros plug-ins do tipo IDE, mas os usuários são obrigados a adicionar algumas variáveis auxiliares e ganchos aos plug-ins para oferecer suporte ao WinManager (o documento de ajuda tem instruções relacionadas).-
Instale winmanager
vim-addon-manager install winmanager
-
Configurar em .vimrc
"""""""""""""""""""""""""""""""""" " 文件管理器 """""""""""""""""""""""""""""""""" " 进入vim后自动打开winmanager let g:AutoOpenWinManager =1 " 设置要管理的插件 let g:winManagerWindowLayout='FileExplorer|TagList' " 如果所有编辑文件都关闭了,退出vim "let g:persistentBehaviour=0 " <F9>打开/关闭文件管理器 nnoremap <silent> <F9> :WMToggle<CR>
-
Descrição da tecla de atalho personalizada
<F9>
Abrir / fechar o navegador de arquivos
-
-
minibufexplorer
MiniBufferExplorer é usado para navegar e gerenciar buffers. Se apenas um arquivo for aberto, ele não será exibido na tela. Depois de abrir vários arquivos, ele aparecerá automaticamente na tela. O Vim também tem suas próprias ferramentas de gerenciamento de buffer, mas apenas comandos como: ls,: bnext,: bdelete, etc. não são fáceis de usar nem intuitivos.-
Instale minibufexplorer
vim-addon-manager install minibufexplorer
-
Configurar em .vimrc
"""""""""""""""""""""""""""""""""" " 缓冲区管理 """""""""""""""""""""""""""""""""" " 用<C-h/j/k/l>切换到上下左右窗口 let g:miniBufExplMapWindowNavVim = 1 " 用Ctrl+箭头切换到上下左右窗口 let g:miniBufExplMapWindowNavArrows = 1 "let g:bufExplorerMaxHeight=30 " 只有一个buffer,MiniBufExplorer这栏也会出现 "let g:miniBufExplorerMoreThanOne=0 " normal模式下<Tab>移动到下一个buffer,<C-Tab>上一个 nnoremap <silent> <Tab> :bn<CR> nnoremap <silent> <C-Tab> :bp<CR> " 不要在不可编辑内容的窗口(如TagList)中打开选中的buffer let g:miniBufExplModSelTarget = 1"
-
Descrição da tecla de atalho personalizada
<Tab>
Mover para o próximo buffer<C-Tab>
Mover para o buffer anterior
-
-
Com
a correção rápida através do conjunto de comandos de correção rápida, você pode compilar o programa no Vim e pular diretamente para o local do erro para correção. Você pode então recompilar e fazer correções até que o erro não ocorra mais. Como o Quickfix já está integrado ao vim, basta configurá-lo.-
Configurar em .vimrc
"""""""""""""""""""""""""""""""""" " QuickFix设置 """""""""""""""""""""""""""""""""" " 按下<F2>,执行make nnoremap <F2> :TlistToggle<CR> :make<CR><CR><CR> :copen<CR> :TlistToggle<CR> " 按下<F12>,执行make clean nnoremap <F12> :make clean<CR><CR><CR> :cclose<CR> " 按下<F3>,光标移到上一个错误所在的行 nnoremap <F3> :cp<CR> " 按下<F4>,光标移到下一个错误所在的行 nnoremap <F4> :cn<CR>
-
Descrição da tecla de atalho personalizada
<F2>
fazer programa atual<F10>
fazer um programa atual limpo<F3>
Mova o cursor para a linha do erro anterior<F4>
Mova o cursor para a linha do próximo erro
-
referências
Se este artigo for útil para você, ou se você estiver interessado em artigos técnicos, siga a conta pública do WeChat: Technical Tea Party.Você pode receber artigos técnicos relacionados o mais rápido possível, obrigado!
Este artigo é publicado automaticamente pela ArtiPub , uma plataforma multi- postagem