Boşluktaki bazı boşlukları, ama hepsini değil, vim'de gösterme?


3

Kullanıyorum set list ve set listchars vim'deki seçenekler. Özelleştirmek istiyorum set listchars sondaki boşlukları vb. görüntülemek için, ancak sekmeleri göstermeyin. Belirli bir beyaz boşluk türünün görüntülenmesini istemediğimi belirtmek mümkün mü?

Bunu denedim:

set listchars=tab:,trail:·,extends:>,precedes:<,nbsp:%

Ancak yükleme sırasında bir sözdizimi hatası aldım. .vimrc.

Yanıtlar:


3

Bu mümkün değil maalesef. Sadece :set list açık veya kapalı, ve içinde tanımlamadığınız öğeler için 'listchars', varsayılanlar kullanılacaktır.

Her zaman altında çalışmasını tavsiye etmem :set listbazı yan etkileri olduğu için (örneğin yumuşak sargısını etkiler).

Sadece izleyen boşlukları vurgulamakla ilgileniyorsanız, bunu başka yollarla yapan eklentiler var. Aslında ben yazdım ShowTrailingWhitespace eklentisi bunun için; Sayfada alternatifler var.


3

Bunun teknik olarak mümkün olmamasına rağmen, birinin bir sekme için gösterilecek karakter olarak hile yapıp özel Unicode boşluk karakterlerini (normal boşluk karakteri değil) girebileceğini keşfettim. Bu hala vimin kullanıyor olsa da hl-NonText Rengi vurgulayarak, kesinlikle daha az rahatsız edici.

Başka bir deyişle, bunu (veya benzeri) yapın:

set listchars=tab:  ,trail:·,extends:>,precedes:<,nbsp:%

Sonra iki karakter tab: Hangi değil normal boşluk karakterleri - bunlar + 2002 U . Bunları vim'in içine girebilirsiniz Ctrl-V u 2 0 0 2 (ekleme modunda).

Şimdiye kadar herhangi bir kötü yan etki görmedim.


5
Neden sadece boşluk kullanmıyorsunuz? set listchars+=tab:\ \
Nikita Kouevda

1
@NikitaKouevda, böyle yerlerden kaçabileceğinizi bilmiyordum. Bu da işe yarıyor. Bunu cevap olarak belirtirseniz, doğru olarak işaretlerim.
Andrew Ferrier
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.