Kısacası,
less yerine
vim (
vimpager) koymak için çaba sarf ediyorum. Komut dosyaları için renkleri (ve cesur ve her şey güzel) tükürmek için ayarlarım var.
less renk kodlarını anlar ve güzel görüntüler.
vim kodlarını ayrıştırabilir ve renkleri/kalınlığı
less gibi nasıl yapabilirim?
İki cevap:
Kısa bir tane: vim betiğini kullanmak istersiniz AnsiEsc.vim . Dosyanızdaki gerçek ANSI kaçış dizilerini gizleyecek ve metni uygun şekilde renklendirmek için sözdizimi vurgulamasını kullanacaktır. Bunu bir çağrı cihazında kullanmanın problemi, vim'in bunu ne zaman kullanacağını tanıması gerekmesidir. Sadece her zaman yükleyebilir veya diğer sözdizimi dosyalarıyla çakışıp çakılmayacağından emin değilim. Bunu denemeniz gerekecek.
Uzun bir cevap: Umabileceğiniz en iyi şey, kısmen taşınabilir olmayan bir çözümdür. Daha azı terminal kaçış dizilerini gerçekten anlamamaktadır, çünkü bunlar büyük ölçüde terminale bağlıdır, ancak daha azı bunları (bir alt kümesini) tanıyabilir ve
-r Kullanırsanız bunları terminale geçirmeyi bilir ( veya
-R) seçeneğini işaretleyin. Terminal kaçış dizilerini yorumlar ve metnin niteliklerini değiştirir (renk, kalın, altı çizili ...). Çağrı cihazı yerine editör olan Vim, ham kontrol karakterlerini terminale aktarmaz. Bunları bir şekilde göstermesi gerekir, böylece onları gerçekten düzenleyebilirsiniz. Dizileri gizlemek ve bunları metnin renklerini ayarlamak için kullanmak için gizleme ve sözdizimi vurgulama gibi diğer vim özelliklerini kullanabilirsiniz, ancak, her zaman terminal dizilerinin yalnızca bir alt kümesini işleyecek ve muhtemelen bazı terminallerde çalışmayacaktır. .
Bu, bir metin düzenleyicisini çağrı cihazı olarak kullanmaya çalıştığınızda karşılaşacağınız birçok sorundan sadece biridir.
Şimdi vim 8 ile
:terminal ve sonra bu terminalde
cat myfile ve Ctrl-w N ile normal moda geri dönün. Bu, ANSI renk kodlarını doğru olarak görüntüler. Bu adımları otomatikleştirerek ve bir dosya yerine standart girdiden okuyarak, daha az değiştirmek için vim kullanmak mümkün olmalıdır.