Use o VIM para passar opções para o leitor de PDF

2

Eu tenho um script BASH que recompila um documento de látex e o reabre usando meu leitor de PDF quando o buffer é gravado de volta. O comando no meu '.vimrc' é assim:

autocmd BufWritePost *.tex !~/scripts/latex_update.sh %

Isso funciona bem, mas o leitor sempre abre o PDF para a primeira página. Isso é inconveniente, já que tenho que rolar para ver as alterações que acabei de fazer. Eu gostaria de definir uma variável VIM chamada 'page_num' e passá-la como um segundo argumento para o meu script.

Eu tentei isso no VIM:

:let g:page_num=2

Eu mudei meu 'autocmd' para:

 autocmd BufWritePost *.tex !~/scripts/latex_update.sh % g:page_num

No entanto, a variável global 'page_num' não é substituída por seu valor. Como posso obter o VIM para passar o valor de 'page_num'?

Obrigado!

    
por Daeden 17.07.2013 / 22:45

1 resposta

2

Usar :exe para expandir a variável antes de executar o restante do comando deve funcionar:

autocmd BufWritePost *.txt exe '!~/scripts/latex_update.sh %' g:page_num

Observe que você não precisa concatenar (o operador . ) ou colocar um espaço antes de g:page_num , pois :exe faz isso como parte de sua expansão de argumento.

    
por 17.07.2013 / 23:41

Tags