Yanıtlar:
Önceden önerildiği gibi, açtığınız dosyanın dizinine geçecek olan autochdir'i kullanabilirsiniz, diğer seçenek
:cd mydirectory
dizini değiştirecek. Bu mutlak veya göreceli bir yol olabilir, bu nedenle :cd ..
bir seviye yukarı çıkacaktır. Ya :cd %:h
da, autochdir'i ayarlamadan, geçerli dosyanın bulunduğu dizini de değiştirecek olanı kullanabilirsiniz.
:cd
dizini ana dizininiz olarak değiştirir (veya Windows'ta geçerli dizini yazdırır).
:cd -
dizini ziyaret ettiğiniz önceki dizine değiştirir.
%
, yol dahil geçerli dosya adını çevirir, :
değiştirici ekler h
, yani son yol ayırıcısına kadar olan yol, yani dosya adının kendisini hariç tutar.
Ayrıca dosya sistemine netrw dosya gezgini ile göz atıyorsanız, c tuşuna basarak mevcut dizini ayarlayabilirsiniz.
set autochdir
için de kullanın . 'c' key
!command args
Eklemeyi deneyin set autochdir
adresinden Müşteri .vimrc
. Yalnızca bu kez değiştirmek istiyorsanız, kullanın :cd
(veya :cd!
zorlamak için).
cnoremap cd. lcd %:p:h
nnoremap ,cd :cd %:p:h<CR>:pwd<CR>
'c' key
buna eşlik etmek için netrw dosya gezgininde de kullanın .
Vim ile ilgili sorunun ne olduğunu bilmiyorum. Şu anki olarak vim'i başlattığım dizini istiyorum.
Yukarıdaki autochd ile ilgili ipucunu takip ettim ve .vimrc dosyamda noautcd olarak ayarladım.
Henüz yapmadım, ama bundan sonra böyle bir vim başlatmak üzereyim:
vim —cmd 'cd `pwd`'
Bu, mevcut dizine yapışmasını sağlayacaktır!
İle netrw:
basılarak ek olarak cgeçerli dizini ayarlamak için anahtarı, ayrıca koyabilir:
let g:netrw_keepdir= 0
senin içinde .vimrc
; bu netrw
, tarama dizinini mevcut dizinle aynı tutacağı anlamına gelir .
Bunu benim için .vimrc
otomatik olarak eklemek Vim'in çalışma dizinini mevcut dosyaya değiştirir:
autocmd BufEnter * silent! :lcd%:p:h
set autochdir
bunu da yapıyor :-)