जवाबों:
यह आपको एक कर्सर के रूप में एक ठोस पीला ब्लॉक (नॉनब्लिंकिंग) देता है:
echo -n -e '\e[?17;14;224c'
अधिक जानकारी के लिए इन संदर्भों की जाँच करें: Linuxgazette और EmacsWiki साथ ही फ़ाइल /usr/src/linux/Documentation/VGA-softcursor.txt
(यदि आपके सिस्टम पर मौजूद है)
echo -e '\033[?16;0;224c'
टर्मिनलों पर पलक झपकते कर्सर को बंद करने के लिए एक मानक नियंत्रण अनुक्रम है।
printf '\033[?12l'
हालाँकि कई टर्मिनल इस सेटिंग को लागू नहीं करते हैं, इसलिए इसे पढ़ें।
उच्च दृश्यता, सामान्य दृश्यता और अदर्शन के बीच कर्सर दृश्यता को बदलने के लिए अधिक व्यापक रूप से कार्यान्वित मानक टर्मिनल सेटिंग है । कुछ टर्मिनलों में सामान्य और उच्च के बीच कोई अंतर नहीं होता है, और इस बात की कोई गारंटी नहीं है कि एक या दूसरे पलक झपकेंगे या नहीं। में terminfo , फेंकना cvvis
, cnorm
या civis
स्ट्रिंग (उदाहरण के लिए tput cvvis
)। इसी termcap प्रविष्टियां होती हैं vs
, ve
और vi
।
ये सेटिंग एक टर्मिनल रीसेट से नहीं बचेगी , इसलिए आप पा सकते हैं कि यह कई पूर्ण-स्क्रीन अनुप्रयोगों के लॉन्च से नहीं बचता है। आप अपने टर्मिनल के रीसेट स्ट्रिंग में कर्सर विन्यास परिवर्तन अनुक्रम जोड़कर इस कठिनाई को दूर कर सकते हैं।
infocmp >>~/etc/terminfo.txt
। बदलने के लिए वर्णन संपादित करें rs1
(बुनियादी रीसेट) अनुक्रम, जैसे की जगह rs1=\Ec
से rs1=\Ec\E[?12l
। कुछ कार्यक्रमों और सेटिंग्स के साथ, आपको rs2
(पूर्ण रीसेट) भी बदलना पड़ सकता है । फिर tic ~/etc/terminfo.txt
(यह निर्देशिका के तहत लिखता है $TERMINFO
, या ~/.terminfo
अगर परेशान) के साथ टर्मो विवरण का संकलन करें ।/etc/termcap
) से टर्मकैप सेटिंग्स को पकड़ो । अपनी सेटिंग्स को बढ़ाने के लिए is
(मूल रीसेट) और rs
(पूर्ण रीसेट) क्रमों को बदलें, जैसे :is=\Ec\E[?12l:
। TERMCAP
पर्यावरण वैरिएबल को संपादित मान (शुरुआत और अंत :
) के साथ सेट करें ।कुछ टर्मिनल और अन्य एप्लिकेशन आपको अधिक विकल्प देते हैं:
cursorBlink
संसाधन के लिए सेट है true
या -bc
विकल्प कमांड लाइन पर पारित कर दिया है। पलक की दर संसाधनों cursorOnTime
और cursorOffTime
संसाधनों के माध्यम से अनुकूलन योग्य है ।printf '\033[17;127?c'
(पहला पैरामीटर 17 आपको हार्डवेयर कर्सर के बिना सॉफ़्टवेयर कर्सर देता है, और 127 पर सेट दूसरा पैरामीटर इसे अनिवार्य रूप से उलटा वीडियो बनाता है)। टर्मिनल रीसेट के बारे में ऊपर देखें।M-x blink-cursor-mode
कर्सर के निमिष टॉगल करता है। इसे बंद करने के लिए (blink-cursor-mode 0)
अपने अंदर रखें ~/.emacs
। यह एक वैश्विक सेटिंग है और पाठ टर्मिनल में लागू नहीं होती है।Lesstif, Tk, Gtk (Gnome), Qt (KDE), फ़ायरफ़ॉक्स, आदि में ब्लिंकिंग को कैसे बंद करें, इसके लिए Juri Linkov (Jurta) का कोई ब्लिंकिंग पेज भी देखें ।
Linux tty में आप भागने के क्रम का उपयोग कर सकते हैं "\e[?48;0;64"
या जो भी आपको पसंद है लेकिन यह tmux / vim में काम नहीं करता है। Tmux / Vim स्टार्टअप पर "cnorm" कमांड जारी करता है जिसमें डिफ़ॉल्ट रूप से a "\e[?0c"
। आप देख सकते हैं कि यह उपरोक्त सेटिंग के प्रभावों को कम करता है। कर्सर को अपनी वरीयता के लिए रीसेट करने के लिए आपको TUI अनुप्रयोगों के लिए उपरोक्त क्रम में cnorm को बदलना होगा। Gilles द्वारा इस पर अधिक जानकारी लेकिन अगर आप एक त्वरित सुधार के लिए देख रहे हैं यह कोशिश:
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
~/.terminfo
यदि आप tmux सर्वर / विम को रीस्टार्ट करते हैं तो अंतिम कमांड नया टर्मऑफ जनरेट करेगा, जिसके तहत स्वचालित रूप से उठाया जाना चाहिए।
रखना
\ 033 [17;? 0; 127c
आपके PS1 चर के लिए और आप लगातार ब्लिंक करना बंद कर देंगे।
ईजी:
निर्यात PS1 = '\ 033 [? 17; 0; 127c \ u: \ w \ $'
BLUEBOXNOBLINK="\033[?17;0;60c"
, तबPS1="\[$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
नहीं काफी बिल्कुल के लिए क्या कहा जाता है, यह कर्सर गायब बनाता है ... setterm -blink off
और अधिक का वादा लगता है, लेकिन यह पाठ, न कि वास्तविक कर्सर को प्रभावित करता है।
setterm -cursor off; setterm -cursor on
यहाँ काम करता है, लेकिन यह एक अस्वीकार्य समाधान है
मैंने डाला
echo 0 > /sys/class/graphics/fbcon/cursor_blink
in /etc/rc.local और ऑनलाइन निर्देशों का उपयोग करके इसके लिए एक सिस्टमड सेवा बनाई। हालाँकि, मैंने देखा कि कभी-कभी बूट के बाद भी कर्सर ब्लिंक होता है। आधुनिक सिस्टम सिस्टम पर sysfs के माध्यम से ब्लिंकिंग कर्सर को स्थायी रूप से बंद करने का सही तरीका जानना अच्छा होगा, क्या किसी को कोई सुझाव नहीं है? कुछ वितरण में /etc/sysfs.conf है, लेकिन मैं आर्क चला रहा हूं और इस फाइल को sysfsutils या अन्य जगहों पर नहीं ढूंढता।
एक अस्थायी फिक्स के रूप में मैंने निम्नलिखित कमांड को चलाया
sudo zsh -c 'echo -n "\033[?17;0;255c" >> /etc/issue'
कुछ प्रयोग से पता चला है कि अंत में '255c' ऊपर सूचीबद्ध '127c' से बेहतर काम करता है, यह ग्रे कर्सर के बजाय एक सफेद उत्पादन करता है।
लिनक्स कंसोल के लिए:
अपनी फ़ाइल में लाइनों में -I "\033[?17;0;255c"
विकल्प जोड़ें । ऐसा करने के लिए:getty
/etc/inittab
/etc/inittab
फ़ाइल को टेक्स्ट एडिटर से खोलें । वहाँ लाइनों, जिनमें शामिल है होना चाहिए getty
या agetty
या इसी तरह की। एक उदाहरण है:
tty1::respawn:/sbin/getty 38400 tty1
-I "\033[?17;0;255c"
प्रत्येक getty
पंक्ति में जोड़ें । एक उदाहरण के रूप में, जोड़ने के बाद -I "\033[?17;0;255c"
, getty
ऊपर की रेखा निम्नानुसार दिखाई देगी:
tty1::respawn:/sbin/getty -I "\033[?17;0;255c" 38400 tty1
सिस्टम को रिबूट करें, या वैकल्पिक रूप से, सभी getty
प्रक्रियाओं को मार दें ।
एक बेहतर विकल्प यह है कि इसे लाइनों में लगाने के बजाय ESC[?17;0;255c
अंदर रखा जाए । इसका उपयोग करना इस प्रकार है:/etc/issue
getty
vi
/etc/issue
का उपयोग कर खोलें vi
।/etc/issue
फ़ाइल के किसी भी भाग पर , इन्सर्ट मोड डालें।^V
(जो है, Ctrlv), तो प्रेस Esc। बच चरित्र अब डाला जाना चाहिए।[?17;0;255c
।एक अन्य विकल्प हार्डवेयर कर्सर (एक सॉफ्टवेयर कर्सर का उपयोग करने के बजाय) रख रहा है और हार्डवेयर कर्सर को ब्लिंक करना बंद कर देता है और इसे ब्लॉक कर्सर बनाता है। ऐसा करने के लिए:
निम्नलिखित को इसमें जोड़ें /etc/inittab
:
# Stop cursor blink on Linux console
::sysinit:/bin/sh -c "echo 0 > /sys/class/graphics/fbcon/cursor_blink"
जोड़े ESC[?8c
को /etc/issue
। ऐसा करने के निर्देशों के लिए "वैकल्पिक 2" का संदर्भ लें।
हालांकि, इस विकल्प के साथ, कर्सर उज्ज्वल सफेद नहीं बनता है। मुझे लगता है कि यह केवल सॉफ्टवेयर कर्सर के उपयोग से संभव है।
इनमें से किसी भी विकल्प का पालन करने के बाद, आप एक सफेद, गैर-ब्लिंकिंग, ब्लॉक कर्सर प्राप्त करेंगे।