Vim Takma Adları Yok Sayıyor


11

Eğer vim'de bir komut kullanarak

map <f4> :! pdflatex %<cr>

Vim, pdflatex için takma adımı yok sayacak (takma ad pdflatex = 'pdflatex --temp-dir = bir şey' gibi). Vim'in görmezden gelmemesini sağlamak mümkün mü?


Vim kabuğunuz veya kabuğunuzun giriş kabuğunuzla eşleşmesi mümkün müdür?
DaveParillo

Yanıtlar:


16

Vim, takma adlarınızı 'yok sayar' çünkü kabuğunuz, ayrıştırılacak bir 'ruh hali' içinde .bash_profile/.bashrcdeğildir (takma adlarınızın nerede tanımlandığını belirtmediniz) çünkü bir giriş / etkileşimli kabuk olarak başlatılmamıştır ( hakkında daha fazla bilgi edinmek için burayı okuyun) ne zaman ve ne sebeple okunur).

Yani, birkaç seçeneğiniz var:

  1. pdflatexTakma adınızda kullandığınız kodu bir komut dosyasına yerleştirin ve
  2. vimrc:, 'set shell=/bin/bash\ -l'takma adlarınızı .bash_profile dosyasına koyun
  3. Kabuğunuzu etkileşimli / giriş kabuğu olarak arayın: :! bash -l -i -e 'pdflatex .'

2
Giriş / giriş yapmanın önemi yoktur ~/.bashrc- yalnızca etkileşimli / etkileşimli değildir.
user1686

benim takma adım .bash_profile .. hmm Soruyu biraz değiştirdim. Mevcut kabukta koşmayı tercih ederim. İkinci çözümünüz en 'kabul edilebilir' görünüyordu, ancak yeni bir mermi açmak genellikle ana klasörde başladığı için% değişkenini işe yaramaz hale getirir.
vonhogen

Bu şaşırtıcı ve kapsamlı bir cevap. Teşekkürler!
Abel
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.