Tab 키를 누를 때 bash의 자동 완성 기능을 비활성화할 수 있습니까?
내가 이렇게 하고 싶은 이유는 들여쓰기를 위해 여러 공백 대신 탭을 사용하는 편집기에서 터미널에 코드를 붙여넣는 경우가 많기 때문입니다.
아니요, 탭 대신 공백을 사용하도록 설득할 수는 없습니다.
답변1
놓다
set disable-completion on
문자열을 입력 ~/.inputrc
하고 쉘을 다시 시작하십시오. 완료가 완전히 비활성화됩니다.
답변2
데니스의 솔루션
bind 'set disable-completion on'
Bash에서 즉시 수행할 수도 있습니다. .bashrc에 넣을 필요는 없습니다.
Musta의 솔루션(bash --noediting)은 작동하지만 명령줄 편집도 비활성화합니다.
또 다른 방법은
bind -u complete
("full"과 관련된 키 바인딩을 설정 해제합니다)
http://www.gnu.org/software/bash/manual/bashref.html, 4.2 Bash 내장 명령.
답변3
Bash 탭 완성을 일시적으로 비활성화하려면 다음 옵션을 사용하여 Bash를 시작할 수 있습니다 --noediting
.
alias noed='bash --noediting'
답변4
터미널 매칭 있음괄호 안에 붙여넣기(즉, 대부분의 최신 터미널) 다음을 bind 'set enable-bracketed-paste on'
실행하여 붙여넣은 코드의 읽기 라인 처리를 건너뛸 수 있습니다.
user@host:~$ bind 'set enable-bracketed-paste off'
user@host:~$ STR="Foo
>
Display all 2376 possibilities? (y or n)^C
user@host:~$ bind 'set enable-bracketed-paste on'
user@host:~$ STR="Foo
Bar"