Czy istnieje skrót vim dla <nazwa bieżącego pliku>?

13

W vimie, jeśli pracuję nad skryptem w Pythonie, często piszę:

:! python this_script.py

wykonać skrypt. Czy istnieje skrót do nazwy bieżącego pliku? Jeśli nie, czy mogę to zrobić z łatwością? Jestem nowy w vimie i nie jestem pewien, jak to zrobić w Google.

Eric Wilson
źródło

Odpowiedzi:

20

Możesz po prostu użyć %dla bieżącego pliku. To polecenie powinno służyć do celu:

:! python %
Deepak Mittal
źródło
4
Dlatego nie zapominaj, że musisz cytować %znak, używając poleceń takich jak :s... :s/Foo\%X//... jeśli nie, nazwa pliku pojawi się tam.
Mei
0

Do Twojej wiadomości, jeśli używasz również wbudowanego interpretera Pythona w Vimie, możesz uzyskać nazwę z tym vim.current.buffer.nameatrybutem. Możesz także użyć polecenia: update, aby automatycznie zapisać plik. Mam mapowanie jak dla buforów Python:

nmap ;ru :update<CR>:python pyterm(vim.current.buffer.name)

pytermTo funkcja, która również otwiera nowy interpreter Pythona w nowym oknie terminala i uruchamia go w trybie interaktywnym.

Keith
źródło
0

Niektóre wskazówki

:h 'makeprg
:h :make
morda kapciu
źródło