Vim: перемещение файлов? - PullRequest
1 голос
/ 20 мая 2011

В настоящее время, если я редактирую файл и решаю, что хочу его переименовать, я использую:

:!mv % new.py
:new new.py
:bd

Чтобы переименовать файл, откройте новый файл, затем удалите старый буфер.

Есть ли более простой способ переименовать файл, не оставляя старые буферы без дела?

(я понимаю, что я мог бы также использовать :sav, но тогда мне нужно было бы :bpнесколько раз, чтобы найти предыдущий буфер, :bd it, затем :bn обратно в новый буфер)

Ответы [ 2 ]

3 голосов
/ 20 мая 2011

Я думаю, вы, возможно, ищете этот плагин.

Это небольшой плагин, который делает: saveas и удаляет старый файл.

2 голосов
/ 20 мая 2011

Я думаю, что добавить плагин намного сложнее, чем вы ищете.Вы можете использовать функцию, чтобы связать эту функцию с новой командой.

function! s:movefunction(arg)
  let oldnum = bufnr("%")
  let newname = a:arg
  execute "!mv %" . " " . newname
  exe "new " . newname
  exe "bd" . oldnum
endfunction

command! -nargs=* Newmv call s:movefunction('<args>')

После добавления этого в ваш .vimrc вы можете вызвать его, выполнив

:Newmv new_file_name.py
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...