No mínimo, sempre descomente "sintaxe ativada" em / etc / vim / vimrc
No mínimo, sempre descomente "sintaxe ativada" em / etc / vim / vimrc
Respostas:
Nosso CTO possui uma configuração Vim bastante cheia de recursos no GitHub .
Luzes:
Acho ótimo para a codificação do Ruby, pois nossas ferramentas de administração do sistema são escritas em Ruby.
Primeiro, se você tiver mais de um par de máquinas que trabalham com você, considere colocar o seu ~/.vim/
, ~/.vimrc
e de outros arquivos úteis Config ( screen
, seu shell, etc.) em um sistema de controle de revisão. Eu prefiro usar darcs
- é barato nos sistemas Debian (não é necessário instalar o compilador Haskell, basta instalar o pacote diretamente), distribuído e possui ótimos modos interativos. Se você sabe / gosta git
, também pode ficar com isso.
Meus arquivos de configuração atuais estão disponíveis no meu repositório darcs http://repo.harnir.net/
,. Alguns exemplos específicos do meu ~/.vimrc
acompanhamento. Desculpe, não há links para scripts, etc. porque eu sou um novo usuário, mas todos aqueles que você pode encontrar http://vim.org/
.
um script de backup é essencial quando você edita arquivos remotos. Eu uso o script cbackup.vim , que mantém as últimas 10 cópias de cada arquivo editado em um diretório central e remove automaticamente os antigos - basta colocar no seu ~/.vim/plugins/
diretório e esquecê-lo :-)
TaskList permite procurar rapidamente FIXME
, XXX
e TODO
tags no arquivo atual, exibi-los e ir para o tag com apenas uma tecla. Se você usar essas tags, considere instalar esta
O dbext é essencial para todo o DBA, também muito útil para programadores que trabalham com bancos de dados. Vamos executar consultas, verificar a estrutura dos bancos de dados e outros enfeites. É essencialmente um front-end para ferramentas como mysql
, sqlite3
, sqlplus
e outros. Se você trabalha com bancos de dados, é obrigatório!
Eu não vi muitas sintaxes úteis na natureza, a maioria dos arquivos com os quais os administradores de sistemas trabalham são configurações /etc
e geralmente são bem destacadas. Na minha ~/.vim/syntax/
Eu tenho atualmente sintaxe para cores CSS , que é incrível (também bom para os desenvolvedores web), mas o resto não é muito bem escrito, eu talvez vou atualizá-los no tempo livre. Os arquivos de sintaxe adicionais que valem a pena são os seguintes: dhcpd.conf , / etc / network / interfaces , arquivos de configuração do nginx e o local.cf do SpamAssassin .
Dica útil com sintaxe: se um arquivo de configuração não for reconhecido (com um nome estranho, como /etc/apache2/sites-enabled/some.domain.com
, você pode anexar a extensão correta ao seu nome (neste caso .conf
)) ou adicionar uma modelagem do ViM ao final:
# vim: filetype = apache
A maioria das opções de configuração é muito popular, como set nocompatible ruler
etc. Opções muito boas para ter são:
set gdefault
: inverte o g
modo s///g
- com essa opção /g
será usada por padrão, para que você não precise adicioná-lo todas as vezes - basta adicioná-lo para desativá-lo
set incsearch ignorecase smartcase hlsearch
: essencial para pesquisar arquivos - incremental, mostra correspondências em tempo real; a pesquisa ignora maiúsculas, a menos que você use letras maiúsculas
set pastetoggle=<F6>
: ou outra tecla que você preferir, alterna entre paste
e nopaste
modos, uma obrigação se você copiar e colar algo de páginas da web como ServerFault :-)
set noerrorbells visualbell t_vb=
: livre-se da campainha irritante ou visual sempre que fizer algo;)
cole seu nome de usuário e data atual em um arquivo, útil se você trabalha em equipe e adiciona comentários em arquivos sobre quem mudou algo quando. Basta escrever xxsig
e pressionar espaço, ele será alterado para algo como harnir 20090531
. Para que isso funcione corretamente com o root (ou seja, escreva seu nome de usuário em vez de root
), é necessário fazer login usando sudo
.
iabbrev xxsig <Esc>: r! [-n "$ SUDO_USER"] && echo "$ SUDO_USER` date '+ \% Y \% m \% d'` "\ | \ | echo "$ USER` date '+ \% Y \% m \% d'` "<CR> I <BS> <Esc> A
Inserir comentários "linhas", tipo # -- Some title -------------------{{{1
, comprimento 78 caracteres - pressione \com#
no modo normal e pronto. Você estará automaticamente no modo Substituir para poder adicionar o título:
nmap \ com # O # <Esc>72A-<Esc>3A{<Esc>A1<Esc> <Home> 4 <Right> R <Space>
Você pode facilmente modificá-lo para outros sistemas de comentários ( "
, //
, etc.), ou apenas verificar meu arquivo de configuração.
Se você possui seus arquivos de configuração no sistema RCS, às vezes pode querer incluir opções de configuração específicas para uma determinada máquina. Para isso, é bom ter um ~/.vimrc.local
arquivo, incluído automaticamente no final da configuração (se estiver presente, é claro).
se arquivável (expand ("~ / .vimrc.local")) source ~ / .vimrc.local fim se
Não tenho certeza de que parte disso está relacionada especificamente ao administrador de sistemas, mas meus itens essenciais são:
syntax on
set background=dark
set shiftwidth=2
set tabstop=2
if has("autocmd")
filetype plugin indent on
endif
set showcmd " Show (partial) command in status line.
set showmatch " Show matching brackets.
set ignorecase " Do case insensitive matching
set smartcase " Do smart case matching
set incsearch " Incremental search
Também sempre garanto que a máquina tenha acesso ao arquivo de destaque da sintaxe nginx .
Se você normalmente trabalha com um usuário, isso torna possível "canalizar" um arquivo para o sudo para que ele possa ser salvo.
cmap w!! %!sudo tee > /dev/null %
use o comando:
:w!!
para invocar o sudo e salvar o arquivo.
tee
vez de cat
?
Você também pode analisar esta pergunta do SO: O que há no seu vimrc ?
Plugue sem vergonha. Esta não é realmente uma alteração .vimrc, mas um plugin do VIM. Eu uso RCSVers em todas as versões instaladas do VIM. Basicamente, ele usa o comando RCS para salvar uma versão de qualquer arquivo que você editar. Você não sabe quantas vezes estraguei um arquivo de configuração apenas para que os RCSVers me salvassem, mostrando as alterações que fiz.
Como sei que muitos iniciantes do VIM lerão isso, a melhor sugestão que tenho é: "Não fique com preguiça e coloque entradas de mapa no seu .vimrc" Aprender maneiras não padronizadas de fazer as coisas no VIM fará com que você sinta que um total gimp quando você está sem o vimrc. A curva de aprendizado para o vi é íngreme, mas você não está fazendo nenhum favor a si mesmo escolhendo não aprender.
Pelo menos uma parte da minha resposta é igual à minha programação .vimrc:
set hidden
map <TAB> :e#<CR>
map <F7> :set paste!<CR>
map <F8> :set hlsearch!<CR>
map <F9> :!co -l %<CR>:e<CR>
map <F10> :!rcsdiff %<CR>
map <F11> :!ci -u %<CR>:e<CR>
Se pelo menos alguns arquivos que você está editando não estão no RCS, eles deveriam estar! :)
Desativando todos os modos de indentação "inteligentes". Ótimo para programação, inferno para arquivo de configuração.
Costumo usar strace para rastrear problemas estranhos. Como resultado, tentar destacar a sintaxe de algumas linhas pode ficar ridículo com uma cadeia de caracteres grande. Sendo esse o caso, eu uso o conjunto synmaxcol = 2048 para limitar a sintaxe destacada em 2048 colunas.
Eu também sou bastante fã do plugin taglist, que usa tags exuberantes. Até agora, fui capaz de contornar as binárias ctags compiladas e não encontrei nenhum problema de biblioteca. Isso rapidamente me permite navegar por qualquer código com o qual trabalho. Aqueles geralmente sendo Perl, Python ou C.