Você pode usar apenas %
para o arquivo atual. Este comando deve servir ao seu propósito:
:! python %
No vim, se eu estiver trabalhando em um script Python, normalmente vou digitar:
:! python this_script.py
para executar o script. Existe um atalho para o nome do arquivo atual? Se não, posso facilmente fazer um? Eu sou novo no vim, e não sei como procurar no Google por isso.
Uma outra maneira é usar o pacote realmente legal para o vim: Dobragem de Python eficiente: Dobre o código python bem e alternar com um pressionamento de tecla que dobra o "defs, classes", mas também liga "shift + e" para "salvar + executar", tão legal e útil!
FYI, se você também estiver usando o interpretador Python incorporado no Vim, poderá obter o nome com o atributo vim.current.buffer.name
. Você man também deseja usar o comando: update para gravar o arquivo automaticamente. Eu tenho um mapeamento como para buffers Python:
nmap ;ru :update<CR>:python pyterm(vim.current.buffer.name)
O pyterm
é uma função que também abre um novo interpretador Python em uma nova janela de terminal e o executa no modo interativo.
Alguns ponteiros
:h 'makeprg
:h :make
Tags vim keyboard-shortcuts macro