ctrlTbash에는 커서 앞의 마지막 두 문자를 바꾸는 + 단축키가 있다는 것을 알았습니다 .
엔지니어들이 왜 이것을 포함하기로 결정했는지 궁금합니다.
- 이전 규칙에서 상속됩니까?
- 아니면 이것이 일반적인 실제 목적에 도움이 됩니까?
답변1
오타를 빠르게 수정하는 데 매우 유용합니다.
sl
~이 되다
ls
싱글로 CtrlT.
AltT를 사용하여 단어를 바꿀 수도 있습니다 (예를 들어service
와 systemctl
...) 사이를 전환하는 경우.
역사적으로 이 CtrlT기능은 아마도 Emacs에서 Bash로 이전되었을 것입니다. 아마도 다른 편집기에서 Emacs로 복사되었을 것입니다. Stanford의 E 편집기에 나타납니다(참조).필수Ep. 13) 1980년까지 E는 Richard Stallman에게 강력한 영향력을 행사했습니다(예:무료만큼 무료). 이는 1989년에 처음 출시되기 전 Bash의 초기 버전에서 구현되었으며 readline
현재 있는 라이브러리(Bash의 첫 번째 항목) 에 포함되었습니다 .readline
ChangeLog
이에 대한 힌트가 있습니다.)
답변2
이는 문자를 바꾸기 위해 control-를 사용하는 GNU Emacs에서 (readline을 통해) 상속되었습니다 :T
https://www.gnu.org/software/emacs/manual/html_node/emacs/Transpose.html
Bash의 라인 편집기는 기본적으로 Emacs 모드로 설정되어 있지만 원하는 경우 vi 모드로 전환할 수 있습니다.
답변3
이 키 조합은 입력한 마지막 2개의 문자가 줄 끝에서 바뀌도록 하는 텍스트 편집기에서 상속된 바인딩 emacs
이며, 줄 중간에 사용될 경우 커서 왼쪽에 있는 문자를 해당 문자로 바꿉니다. 커서 아래.
몇 번의 키 입력만으로 쉽게 사용할 수 있는 기능을 이렇게 거의 사용하지 않는 기능에 바인딩하는 것은 어리석은 일처럼 보였습니다. 나 같은 노련한 사람들은 1970년대 후반 300보드 모뎀 시대에 항상 이 방법을 사용했고, 특히 대기열이 길 때 전송 시간을 어느 정도 절약했습니다.
Alt+ 에 바인딩된 유사하고 더 유용한 명령은 T커서의 왼쪽과 오른쪽에 있는 단어를 바꿉니다.
T의 첫 글자이기 때문에 선택되었습니다바꾸어 놓다. 유사한 출처를 가진 다른 바인딩은 다음과 같습니다.
- Ctrl+ B, 에 대한뒤에, 커서를 왼쪽으로 한 위치 이동하고,
- Alt+ B커서를 한 단어 왼쪽으로 이동합니다.
- Ctrl+ F, 에 대한앞으로, 커서를 오른쪽으로 한 위치 이동하고,
- Alt+ F커서를 한 단어 오른쪽으로 이동합니다.
- Ctrl+ A, 에 대한안팡또는내기, 커서를 줄의 시작 부분으로 이동하고,
- Ctrl+ E, 에 대한끝, 커서를 줄의 끝으로 이동합니다.
- Ctrl+ N, 에 대한다음, 다음 줄을 검색하고,
- Ctrl+ P, 에 대한더 일찍, 다음 줄을 검색하고,
- Ctrl+ D, 에 대한삭제, 커서 아래의 문자를 삭제하고,
- Alt+ D커서 아래의 단어를 삭제하고,
- Ctrl+ K, 에 대한죽이다, 줄의 끝 부분을 잘라냅니다.
- Ctrl+ Y, 에 대한바보, 클립보드의 내용을 붙여넣고,
따라서 이러한 바인딩은 readline
GNU 패키지에서 구현되며 이를 사용자 입력에 사용하는 모든 프로그램에서 사용할 수 있습니다.세게 때리다, 그러나 또한데이터 베이스,기원전, ...
이들 중 일부는 Firefox URL 입력 줄, OS/X 그래픽 인터페이스의 텍스트 입력 필드 및 많은 X 기반 창 관리자와 같은 다른 환경에서도 사용할 수 있습니다.
윔사용자는 환경 변수를 통해 해당 바인딩을 선택할 수 있습니다.
답변4
오타를 매우 빠르게 수정하세요. 임팩트 코스 이전에 2개의 교정기 블록을 직접 설치하십시오.
& 하이픈 사이에 공백을 입력 ls-
하고 싶다면 +를 ls
사용할 수 있습니다 .CtrlT
이 방법은 하이픈 뒤에 공백이 있으면 작동합니다. 그런 다음 Ctrl+를 수행합니다.T