커서 깜박임을 멈추는 방법

커서 깜박임을 멈추는 방법

blinking커서를 놓는 방법텔레타이프라이터? (또는 다른 곳).

보너스 포인트거의 모든 곳에서 커서가 깜박이는 것을 중지하는 범용 설정입니다.

답변1

하나 있다표준 제어 순서터미널에서 커서 깜박임을 끕니다.

printf '\033[?12l'

그러나 많은 터미널에서는 이 설정을 구현하지 않으므로 계속 읽어보세요.

스위칭을 위해 보다 광범위하게 구현된 표준 터미널 설정이 있습니다.커서 가시성높은 가시성, 일반 가시성, 투명 사이. 일부 터미널은 정상과 높음 사이에 차이가 없으며 깜박이는지 여부에 대한 보장이 없습니다. 존재하다용어 정보, 방출 cvvis또는 문자열(예 : ) cnorm입니다 . 동civistput cvvis용어 모자항목은 vs, ve및 입니다 vi.

이 설정은 터미널에 유지되지 않습니다.초기화, 따라서 많은 전체 화면 응용 프로그램을 시작한 후에도 지속되지 않을 수 있습니다. 터미널의 재설정 문자열에 커서 구성 변경 순서를 추가하면 이러한 어려움을 극복할 수 있습니다.

  • ncurses를 사용하는 terminfo 기반 시스템에서는 터미널의 terminfo 설정을 .terminfo 확장자를 가진 파일에 저장합니다 infocmp >>~/etc/terminfo.txt. rs1(기본 재설정) 순서를 변경하려면 설명을 편집하세요 (예: rs1=\Ec로 교체) rs1=\Ec\E[?12l. 일부 프로그램과 설정을 변경 rs2(완전 재설정) 해야 할 수도 있습니다. 그런 다음 terminfo 설명을 컴파일합니다 tic ~/etc/terminfo.txt(이 설명은 디렉토리에 기록되거나 $TERMINFO설정 ~/.terminfo되지 않은 경우). 또는 그 이상 자동으로:
    infocmp -1 | sed '/^.rs[12]=/ s/,$/\\E[?12l,/' | tic -
    
  • termcap 기반 시스템에서는 /etc/termcaptermcap 데이터베이스에서 termcap 설정(일반적으로 )을 가져옵니다. is(기본 재설정) 및 (전체 재설정) 시퀀스를 변경하여 rs설정을 추가합니다(예 : ) :is=\Ec\E[?12l:. 환경 변수를 TERMCAP편집된 값(으로 시작하고 끝남 :)으로 설정합니다.

일부 터미널 및 기타 애플리케이션에서는 더 많은 옵션을 제공합니다.

  • 이것xtermcursorBlink리소스가 로 설정되거나 명령 true-bc에 옵션이 전달되면 커서가 깜박입니다. 깜박임 속도는 cursorOnTime및 리소스를 통해 cursorOffTime사용자 정의할 수 있습니다 .
  • 일부 다른 GUI 터미널 에뮬레이터는 해당 구성 대화 상자를 확인하여 커서를 깜박일 수 있습니다.
  • 이것Linux PC(VGA) 콘솔다양한 커서 설정이 있습니다. 정확한 의미와 적용 가능성은 기본 VGA 구현(Linux 프레임 버퍼 또는 비디오 카드)에 따라 다릅니다. 기본 커서가 깜박이는 경우 유사한 명령을 사용하여 하드웨어 커서를 끄고 소프트웨어 커서를 켜십시오. printf '\033[17;127?c'(첫 번째 매개변수 17은 하드웨어 커서 없이 소프트웨어 커서를 제공하고, 두 번째 매개변수 127로 설정하면 본질적으로 반전 비디오가 됩니다. ). 터미널 재설정에 대해서는 위를 참조하세요.
  • 존재하다이맥스, M-x blink-cursor-mode커서 깜박임을 전환합니다. 닫으려면 입력하세요 (blink-cursor-mode 0). ~/.emacs이는 전역 설정이며 텍스트 터미널에는 적용되지 않습니다.

당신은 또한 볼 수 있습니다유리 린코프(Jurta)의 깜박이지 않는 페이지Lesstif, Tk, Gtk(Gnome), Qt(KDE), Firefox 등에서 깜박임을 끄는 방법을 알아보세요.

답변2

루트 액세스 권한이 있으면 이것이 더 쉽다는 것을 알았습니다.

~$ echo 0 > /sys/class/graphics/fbcon/cursor_blink

/etc/rc.local아치 리눅스 처럼 머신 시작 스크립트에 넣었습니다 .

답변3

그러면 커서로 단색 노란색 블록(깜박이지 않음)이 표시됩니다.

echo -n -e '\e[?17;14;224c'

자세한 내용은 다음 참고 자료를 확인하세요.리눅스 게시판그리고이맥스 위키파일이 /usr/src/linux/Documentation/VGA-softcursor.txt시스템에 존재하는 경우

답변4

Linux tty에서는 이스케이프 시퀀스 "\e[?48;0;64c"나 원하는 것을 사용할 수 있지만 tmux/vim에서는 작동하지 않습니다.

Tmux/Vim은 cnorm시작 시 명령을 실행하고 기본적으로 명령을 포함합니다 "\e[?0c". 이렇게 하면 위 설정의 효과가 취소되는 것을 볼 수 있습니다. cnormTUI 애플리케이션이 커서를 원하는 대로 재설정하려면 위의 순서로 변경해야 합니다 .

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

마지막 명령은 ~/.terminfotmux 서버/vim을 다시 시작하면 자동으로 얻어지는 새로운 terminfo를 생성합니다.

관련 정보