insert입력하는 동안 실수로 키보드를 누르는 경우가 많아 텍스트가 엉망이 되기 때문에 키보드의 키를 비활성화하고 싶습니다 .
xmodmap
다음을 사용하여 삽입 키를 완전히 비활성화 할 수 있음을 발견했습니다 .
xmodmap -e "keycode 106 ="
이것은 작동하지만 또 다른 문제가 있습니다. 열쇠는 완전히 다른 목적으로 사용되는 midnight commander
것으로 나타났습니다 . insert텍스트 편집기처럼 덮어쓰기를 전환하는 것이 아니라 여러 파일을 선택하는 데 사용됩니다.
이 기능은 mc
실제로 매우 유용해서 자주 사용합니다.
insert텍스트 편집기에서 키 입력을 재정의 설정/해제 역할로 비활성화하고 보조 역할을 "파일 선택"으로 유지하는 방법이 있습니까 mc
?
답변1
Insert키가 다른 키 기호(응용 프로그램이 생각하는 키를 결정하는 키의 기호 이름)를 보내 도록 합니다 F25
. 예: .
xmodmap -e "keycode 106 = F25"
바인딩을 명령 f25
으로 인식하도록 mc를 구성합니다 . 복사 (또는 사용 중인 키맵이 있는 위치)하고 행을 로 변경합니다 .Mark
/etc/mc.keymap
~/.mc/mc.keymap
Mark = insert; ctrl-t
Mark = insert; f25; ctrl-t
답변2
Midnight Commander의 키 바인딩 대부분은 사용자 정의가 가능합니다. 말씀하신 기능은 다음과 같습니다.표시, 기본 키맵 파일에 있습니다. 예 /etc/mc.keymap
:
[panel]
Search = ctrl-s; alt-s
Mark = insert; ctrl-t
~에 따르면매뉴얼 페이지, 자신만의 키맵 파일을 제공하고 이를 첫 번째로 찾은 파일로 만들면 다음을 사용합니다.저것시스템의 키맵이 아닌 파일. 할당하여표시문제가 발생할 경우 무시할 수 있는 다양한 키 시퀀스가 있습니다 mc
.Insert
다음을 통해 키맵 파일 Insert에 사용된 다른 위치를 볼 수 있습니다.mc
dpkg -L mc |xargs grep -i -n insert 2>/dev/null
예를 들어 에 사용된다고 나와 있습니다 InsertOverwrite
.
Binary file /usr/bin/mc matches
/etc/mc/mc.keymap.emacs:81:Mark = insert; ctrl-t
/etc/mc/mc.keymap.emacs:302:InsertFile = f15
/etc/mc/mc.keymap.emacs:304:InsertOverwrite = insert
/etc/mc/mc.keymap.emacs:322:InsertLiteral = ctrl-q
/etc/mc/mc.keymap.emacs:365:Up = k; y; insert; up; ctrl-p
/etc/mc/mc.keymap:80:Mark = insert; ctrl-t
/etc/mc/mc.keymap:220:Store = ctrl-insert
/etc/mc/mc.keymap:221:Paste = shift-insert
/etc/mc/mc.keymap:302:InsertFile = f15
/etc/mc/mc.keymap:304:InsertOverwrite = insert
/etc/mc/mc.keymap:322:InsertLiteral = ctrl-q
/etc/mc/mc.keymap:362:Up = k; y; insert; up; ctrl-p
/etc/mc/mc.keymap.default:80:Mark = insert; ctrl-t
/etc/mc/mc.keymap.default:220:Store = ctrl-insert
/etc/mc/mc.keymap.default:221:Paste = shift-insert
/etc/mc/mc.keymap.default:302:InsertFile = f15
/etc/mc/mc.keymap.default:304:InsertOverwrite = insert
/etc/mc/mc.keymap.default:322:InsertLiteral = ctrl-q
/etc/mc/mc.keymap.default:362:Up = k; y; insert; up; ctrl-p
/etc/mc/mcedit.menu:450:I Insert `Changelog' string
/etc/mc/mcedit.menu:467:i Insert a out of command to cursor.
Binary file /usr/bin/mcview matches
Binary file /usr/bin/mcdiff matches
Binary file /usr/bin/mcedit matches