Você pode usar o arquivo: plugin de linha disponível aqui , que faz exatamente o que você quer ...
Várias ferramentas como grep
, py.test
, etc ... usam o padrão <FileName>:<line number>:
para apontar para erros. Por exemplo:
; grep -Hn Common setup.cfg
setup.cfg:11: Common
Como posso modificar o vim e o gvim para que eu possa invocá-los assim:
gvim setup.cfg:11:
em vez de
gvim setup.cfg +11
Eu sei que posso escrever um pequeno script de shell que analise as coisas, mas me pergunto se existe uma maneira mais fácil.
Você pode usar o arquivo: plugin de linha disponível aqui , que faz exatamente o que você quer ...
Não há jeito, e acho que um roteiro é o único caminho. A razão é, e se você tivesse um arquivo chamado setup.cfg: 11 e quisesse editá-lo?
Aqui está um script rápido que faz o que você quer como um oneliner ...
editline() { vim ${1%%:*} +${1##*:}; }
Com Vundle.vim , adicione isso ao seu .vimrc
:
Plugin 'bogado/file-line'
Você também pode usar esse alias:
alias gd 'set number='echo \!:1 | perl -pe "s/([0-9]*:)?(.+)[,:]([0-9]+).*//"'; set file='echo \!:1 | perl -pe "s/([0-9]*:)?(.+)[,:]([0-9]+).*//"'; eval "if ($number == $file) then \
gvim $file \
else \
gvim $file +$number \
endif"'