Yanıtlar:
Bu, imleç olarak size katı sarı bir blok (yanıp sönmeyen) verir:
echo -n -e '\e[?17;14;224c'
Daha fazla bilgi için bu referansları inceleyin: Linuxgazette ve EmacsWiki ile dosya /usr/src/linux/Documentation/VGA-softcursor.txt(sisteminizde varsa)
echo -e '\033[?16;0;224c'
Terminallerde yanıp sönen imleci kapatmak için standart bir kontrol sırası vardır .
printf '\033[?12l'
Ancak birçok terminal bu ayarı uygulamaz, bu yüzden okumaya devam edin.
Yüksek görünürlük, normal görünürlük ve görünmezlik arasında imleç görünürlüğünü değiştirmek için daha yaygın olarak uygulanan standart bir terminal ayarı vardır . Bazı terminaller normal ve yüksek arasında bir fark yaratmaz ve birinin diğerinin yanıp sönmeyeceğinin veya açmayacağının garantisi yoktur. In terminfo'ya , yayarlar cvvis, cnormya civisdize (örneğin tput cvvis). İlgili termcap girişleri vardır vs, veve vi.
Bu ayar bir terminal sıfırlama işlemine dayanamayacağından, birçok tam ekran uygulamasının başlatılmasında hayatta kalamayacağını görebilirsiniz. Terminalinizin sıfırlama dizisine imleç konfigürasyon değiştirme dizisini ekleyerek bu zorluğun üstesinden gelebilirsiniz.
infocmp >>~/etc/terminfo.txt. Değiştirmeye açıklamasını düzenleyin rs1yerine örneğin (temel sıfırlama) dizisi rs1=\Ecile rs1=\Ec\E[?12l. Bazı program ve ayarlarda, rs2(tam sıfırlamayı) da değiştirmeniz gerekebilir . Sonra terminfo açıklamasını ile derleyin tic ~/etc/terminfo.txt(bu, dizinin altına yazar $TERMINFOveya ~/.terminfoayarlanmamışsa)./etc/termcap). Değiştir is(temel reset) ve rs, örneğin ayarlarınızı eklemek için (tam sıfırlama) dizileri :is=\Ec\E[?12l:. Set TERMCAPDüzenlenen değere ortam değişkeni (başlangıç ve ile biten :).Bazı terminaller ve diğer uygulamalar size daha fazla seçenek sunar:
cursorBlinkkaynak olarak ayarlanır trueveya -bcseçenek komut satırında geçirilir. Göz kırpma hızı cursorOnTimeve cursorOffTimekaynakları aracılığıyla özelleştirilebilir .printf '\033[17;127?c'(ilk parametre 17 size yazılım imlecini donanım imleci olmadan verir ve ikinci parametre 127 olarak ayarlanmışsa esasen ters video yapar). Terminal sıfırlama ile ilgili yukarıya bakın.M-x blink-cursor-modeimleç en yanıp geçiş yapar. Put (blink-cursor-mode 0)Sepetinde ~/.emacskapatmak için. Bu genel bir ayardır ve bir metin terminalinde geçerli değildir.Ayrıca bakınız Lessur , Tk, Gtk (Gnome), Qt (KDE), Firefox ve diğerlerinde yanıp sönmenin nasıl kapatılacağı ile ilgili Juri Linkov (Jurta) 'nın Yanıp Sönme Yok sayfası .
Linux tty'de kaçış dizisini "\e[?48;0;64"veya ne istersen kullanabilirsiniz, ancak bu tmux / vim'de çalışmaz. Tmux / Vim, başlangıçta varsayılan olarak a içeren bir "cnorm" komutu verir "\e[?0c". Bunun, yukarıdaki ayarın etkilerini geri aldığını görebilirsiniz. TUI uygulamalarının imleci tercihinize göre sıfırlaması için normalliği yukarıdaki sıraya göre değiştirmeniz gerekir. Gilles bu konuda daha fazla bilgi ancak hızlı bir düzeltme arıyorsanız, şunu deneyin:
infocmp linux > /tmp/linux-terminfo
# Replace the last escape sequence here with your colors and settings
sed -i 's/cnorm=\\E\[?25h\\E\[?0c/cnorm=\\E[?25h\\E?48;0;64c/' /tmp/linux-terminfo
tic /tmp/linux-terminfo
Son komut, ~/.terminfoeğer tmux server / vim'i yeniden başlatırsanız, otomatik olarak alınması gereken yeni terimleri üretecektir .
Koymak
\ 033 [17,? 0; 127c
PS1 değişkeninize, sürekli yanıp sönmeyi keseceksiniz.
ÖRNEĞİN:
dışa aktarma PS1 = '\ 033 [? 17; 0; 127c \ u: \ w \ $'
BLUEBOXNOBLINK="\033[?17;0;60c", sonraPS1="\[$BLUEBOXNOBLINK\]\[$BROWN\]\u \[$CYAN\]\W: \[$NC\]"
sudo cp /etc/issue /etc/issue.tmp
setterm -cursor off | sudo tee /etc/issue
cat /etc/issue.tmp | sudo tee --append /etc/issue
sudo rm /etc/issue.tmp
sudo reboot
-cursor offİstenilen şey tam olarak değil , imleci ortadan kaldırır ... setterm -blink offdaha umut verici görünüyor, ama gerçek imleci değil, metni etkiliyor.
setterm -cursor off; setterm -cursor onBurada çalışıyor, ancak kabul edilemez bir geçici çözüm
Koydum
echo 0 > /sys/class/graphics/fbcon/cursor_blink
/etc/rc.local içinde ve çevrimiçi talimatları kullanarak bir systemd servisi oluşturdu. Ancak, bazen açılıştan sonra imlecin hala yanıp söndüğünü farkettim. Modern bir sistemd sistemde sysfs ile yanıp sönen imleci kalıcı olarak kapatmanın doğru yolunu bilmek iyi olurdu, kimsenin herhangi bir ipucu var mı? Bazı dağıtımlarda /etc/sysfs.conf var ama Arch kullanıyorum ve bu dosyayı sysfsutils veya başka bir yerde bulamıyorum.
Geçici bir düzeltme olarak aşağıdaki komutu koştum
sudo zsh -c 'echo -n "\033[?17;0;255c" >> /etc/issue'
Bazı deneyler, sonunda '255c' nin yukarıda listelenen '127c' den daha iyi çalıştığını gösterdi, gri imleç yerine beyaz bir renk üretti.
Linux konsolu için:
Dosyanızdaki satırlara -I "\033[?17;0;255c"seçenek ekleyin . Böyle yaparak:getty/etc/inittab
Aç /etc/inittabbir metin editörü ile dosyayı. İhtiva çizgiler olmalıdır gettyya agettyveya benzer. Bir örnek:
tty1::respawn:/sbin/getty 38400 tty1
-I "\033[?17;0;255c"Her gettysatıra ekleyin . Bir örnek olarak, ekledikten sonra -I "\033[?17;0;255c", gettysıra olmazdı Yukarıdaki satır aşağıdaki gibidir:
tty1::respawn:/sbin/getty -I "\033[?17;0;255c" 38400 tty1
Sistemi yeniden başlatın ya da alternatif olarak tüm gettyişlemleri sonlandırın.
Daha iyi bir alternatif koymaktır ESC[?17;0;255ciçinde /etc/issueyerine koyma, gettyçizgileri. Bunu kullanarak yapmak viaşağıdaki gibidir:
/etc/issueKullanarak açın vi./etc/issueDosyanın herhangi bir yerinde ekleme moduna girin.^V(yani Ctrlv) düğmesine ve ardından düğmesine basın Esc. Kaçış karakteri şimdi eklenmelidir.[?17;0;255c.Başka bir alternatif, donanım imlecini tutmak (bir yazılım imleci kullanmak yerine) ve donanım imlecinin yanıp sönmesini durdurup blok imleci yapmaktır. Böyle yaparak:
Aşağıdakileri ekleyin /etc/inittab:
# Stop cursor blink on Linux console
::sysinit:/bin/sh -c "echo 0 > /sys/class/graphics/fbcon/cursor_blink"
Ekle ESC[?8ciçin /etc/issue. Bunu yapma talimatları için "Alternatif 2" ye bakın.
Ancak, bu seçenekle, imleç parlak beyaz hale gelmez. Sanırım bu sadece yazılım imlecini kullanarak mümkün.
Bu alternatiflerden herhangi birini takip ettikten sonra, beyaz, yanıp sönmeyen, blok imleci elde edeceksiniz.