Відповіді:
Як вже було запропоновано, ви можете використовувати autochdir, який зміниться в каталог файлу, який ви відкрили, інший варіант
:cd mydirectory
що змінить каталог. Це може бути абсолютний або відносний шлях, тому :cd ..
буде рухатися вгору на один рівень. Або ви можете використовувати, :cd %:h
який також змінить каталог, у якому знаходиться поточний файл, але без встановлення autochdir.
:cd
змінить каталог у ваш домашній каталог (або у Windows, надрукуйте поточний каталог).
:cd -
змінить каталог на попередній каталог, який ви відвідали.
%
переводить поточне ім'я файлу, включаючи шлях, :
додає модифікатор, h
є head, тобто шлях до останнього роздільника шляху, тобто виключаючи саме ім'я файлу.
Крім того, якщо ви переглядаєте файлову систему за допомогою провідника файлу netrw, ви можете встановити поточний каталог натисканням клавіші c.
set autochdir
для 'c' key
отримання ефекту в оболонці, так що ви можете використовувати !command args
в зміненому режимі.
Спробуйте додати set autochdir
до свого .vimrc
. Якщо ви хочете змінити це лише один раз, використовуйте :cd
(або :cd!
примушуйте).
cnoremap cd. lcd %:p:h
а nnoremap ,cd :cd %:p:h<CR>:pwd<CR>
замість цього
'c' key
в netrw file Explorer для супроводу цього.
З netrw:
в доповненні до натискання cкнопки для установки поточного каталогу, ви можете також помістити:
let g:netrw_keepdir= 0
у вашому .vimrc
; це означає, що netrw
каталог веб-переглядачів буде таким самим, як і поточний каталог.
Додавши це до мого, .vimrc
автоматично змінюється робочий режим Vim на поточний файл:
autocmd BufEnter * silent! :lcd%:p:h
set autochdir
робить це також :-)