Bunları italikleştirmek yerine, arama desenlerini Daha Az Vurgula


23

Anladığım kadarıyla adam lessçağrı cihazı olarak kullanır ve anahtar kelimeleri ararken, anahtar lesskelimeleri italik olarak "vurgular". Bunu gerçekten sakıncalı buluyorum, bu yüzden bunu set hlsearchbuldum vim'in farklı bir geçmişe sahip olduğu vim gibi bir şeyle değiştirmek istiyorum .

Koşmaya çalıştım man -P vim systemdama bu hata durumu 1 ile çıktı, bu yüzden sıkışmış gibi görünüyorum less.

man lessBu konuda yardım edebileceğim bir şey yoktu (bunun yerine -G, italikten bile daha kötü olan bir araya gelme seçeneğinin tamamen kapanacağını öğrendim ).

Söyleneni kimse, man sayfalarında arama vurgulaması yapmayı (arka plan rengini değiştirmeyi) nasıl bilen var mı?

FYI Ubuntu 14.10 kullanıyorum

Bu soruyla karşılaştım aynı şeyi soruyor gibi görünüyor ama bu işin nasıl yürüdüğünden emin değilim ( LESS_TERMCAP_so). lessAdam sayfası bu söz etmez. (Bu çözümle garip sonuçlar alıyorum)


Bu satırı ~/.bashrcdosyanıza yerleştirdiğiniz anlamına gelir . export LESS_TERMCAP_so=$'\E[30;43m'Bu cevabı da bakınız. Unix.stackexchange.com/questions/38634/…
iyrin

1
Bazen man man | vim -vim konfigürasyonumdan, anahtarlarımdan ve fonksiyonlarımdan faydalanmak için kullanıyorum
JJoao

Buna bir çözüm buldun mu? Bir makinede de aynı sorunu yaşıyorum ve aradaki farkın ne olduğunu bulamıyorum. LESS_TERMCAP_soDeğişken yukarıda tüm dosyanın turuncu arka plana dönmesine neden olur ...
user1338062

Korkarım hala
bununla

Yanıtlar:


16

Süper kullanıcı hakkında bir cevap buldum: /superuser/566082/less-doesnt-highlight-search

TERM ayarınızla ilgili olduğu anlaşılıyor. Örneğin, normal gnome-terminal penceresinde normalde daha az vurgulama (beyaz arka plan vurgulaması) etkili olur, ancak tmux'tayken italik olur. Benim için fark, TERM’in tmux’da “screen” olarak, fakat “xterm-256color” olarak ayarlanmasıdır. Tmux penceresinde "TERM = xterm-256color" u ayarladığımda, daha az vurgulamak arkaplan vurgulamaya geri döner.


Zaten bu soruyu unutmayı başardım ama bu heyecan verici bir haber. Elimi bilgisayara alır almaz bunu test edeceğim!
sgp667

1
Bu pratik olmayan bir çözümdür, çünkü diğer uygulamalar TERM'in WeeChat gibi tmux içindeyken ekrana (*) ayarlanmasına bağlıdır. Tmux'ta ekran * ayarlanmadığında, WeeChat'ın garip render sorunları var.
Blaine Lafreniere

Tmux <2.0 ile ilgili bir sorunum olduğunu ve tmux v2'den beri bir sorunum olmadığını belirttim.
artfulrobot,

Harika keşif. Şimdi sahip set -g default-terminal "xterm-256color"benim de ~ / .tmux.conf benim CentOS üzerinde 7 kutu (ve diğerleri).
sshow

Var olup screen-256colorolmadığını görmek için kontrol edin : deneyin ls /usr/share/terminfo/s/.
aDroid

8

Sözü LESS_TERMCAP_soeksik kaldı. Bu, daha azının termcap so(göze çarpan) özelliğini geçersiz kılmak için kullanılan özel ortam değişkenidir . Bu özelliği kullanmak için, aynı zamanda bir se(standend) yeteneği de sağlamanız gerekir.

Terminfo'ya (5) kılavuz sayfası bir terminfo için bu özelliklerin özetini (smso / Sihirli çarpıcılık çerezi genişliği) ve Termcap (böylece / se) isimleri verir:

   enter_standout_mode           smso       so        begin standout mode
   exit_standout_mode            rmso       se        exit standout mode  

Vurgulama ile ilgili bölümü şöyle açıklar:

Terminalinizde bir veya daha fazla ekran özelliği varsa, bunlar çeşitli şekillerde gösterilebilir. İyi bir görüntü , yüksek kontrast, kolayca göze çarpan , hata mesajlarını ve diğer dikkat çekenleri vurgulayan formatı temsil eden standout modu olarak bir ekran formu seçmelisiniz . (Bir seçeneğiniz varsa, ters video artı yarı parlaklık iyidir veya yalnız video ters.) Bekleme moduna girme ve çıkma sırası sırasıyla smso ve olarak verilir rmso.

Çarpıcılık için renk kullanmak istiyorsanız, rengi LESS_TERMCAP_sesıfırlayan bir karşılık sağlamanız gerekir . Bu, kılavuzdaki renkleri başka nedenlerle (groff'in SGR renk özelliğini kullanmak gibi) kullanmayı beklemiyorsanız yapmak oldukça kolaydır.

Bir yorumda önerilen değeri varsayarak:

export LESS_TERMCAP_so=$'\E[30;43m'

o zaman bunu kullanarak çoğu terminal için sıfırlayabilirsiniz.

export LESS_TERMCAP_se=$'\E[39;49m'

Bu arada, italiklerin nedeni GNU için terminal tanımlamasının , italikscreen için standart kaçış dizisini kendi göze çarpan / göze çarpan yetenekleri olarak kullanmasıdır. Bunlardan bazıları terminal veritabanı girişinde ele alınmıştır .


Bu benim için gerçekten işe yarayan ilk çözümdü (Mac’te tmux’ta). Sadece yukarıdaki dışa aktarma satırının her ikisini de bash config dosyasına ekliyorum.
Marlun

Ancak, tüm ortam değişkenlerimi görmek için "export" yazarsam, bu satırlar vurgulandıktan sonra her şey vurgulanmaya devam eder ve terminal vurgulanmaya devam eder, bu yüzden onu kapatıp yenisini başlatmam gerekir.
Marlun

Bu gibi durumlarda, değişkenleri, belirli değişkenleri gerektiren programı çağıran bir betik içine koyarım. Değiştirilen değişkenler sadece senaryo içinde geçerlidir.
Thomas Dickey

export | lessçok geçici bir çözüm olarak da işlev görür
Marlun

4

Hit ESCuvurgulama arama kapatmak için lessbir aramadan sonra; Yeni bir arama tekrar açılacak, böylece bir oturum isabetini vurgulayarak aramayı kalıcı olarak kapatmak için -G.

Alternatif olarak LESS='-G'ortamınıza koyun veya manböyle çalıştırın :

LESS='-G' man less

İronik olarak tüm bu lessmanpage belgelenmiştir ...

Ayrıca aşağıdakileri ortama koyabilirsiniz, örneğin .bash_profile:

export MANPAGER='less -G'

sorumu açıkladığım gibi, tamamen çevirmek istemiyorum, ekranımda görünmesini değiştirmek istiyorum. Sorumu yanıltıcı olabilir, çünkü birisi benim için düzenlemiş.
sgp667

1

İçin tmux Sette TERMiçin tmux-256color . Diğer güzel şeyler arasında, bu "olağan" ters vurgulama ile daha az vurgulanır . Fedora veya cygwin gibi modern bir şey kullanırken iyi çalışıyor.

$ cat ~/.tmux.conf
⋮
set-option -g default-terminal tmux-256color

Ncurses'in CentOS üzerinde paketler ancak iki tmux tanımları (yok tmux ve tmux-256color ). Onları federasyondan kolayca ithal ettim. Hafif kırışıklık CentOS' olmasıdır ncurses'in doğrudan Fedora'nın terminfo'ya dosyalarını anlamak için çok eski.

Fedorada:

$ infocmp tmux256-color >temp.txt

Centos'ta:

$ scp fedora-machine:temp.txt .
$ tic temp.txt

Sonra tmux içinde :

$ TERM=tmux-256-color man tmux

Sonuç!

FYI tic komutu, derlenmiş uçbirim tanımını kişisel terim veritabanınıza koyar, yani ~/.terminfo/t/tmux-256color(bu durumda). İstediğiniz buysa, bunu global veritabanına taşımaktan çekinmeyin:

$ sudo mv ~/.terminfo/t/tmux-256color /usr/share/terminfo/t/
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.