터미널 탭 완성 [중복]


15

가능한 중복 :
Mac OS에서 명령에 대한 배쉬 완료

방금 리눅스에서 Mac으로 옮겼는데, 내가 겪고있는 문제 중 하나는 탭 완성이 1 단계 깊이에 불과하다는 것입니다. 그 수정 방법을 잘 모르겠습니다.

예를 들어 설명하겠습니다-우분투에서 git을 사용하면 입력을 시작합니다.

$ git

그리고 탭을 누르면 쉘은 명령을 완료하거나 입력 한 문자에 사용할 수있는 옵션을 표시합니다. 그것이 내 Mac에서도 발생합니다 (1 레벨). 그러나 명령의 다음 부분을 계속 입력하면

$ git commit

Mac 터미널은 Linux에서와 같이 다음 하위 명령 (git 용)을 완료하지 않습니다. 이 다중 레벨 명령 완료를 지원하는 다른 프로그램도 마찬가지입니다. 이것이 readline 라이브러리 문제 일 수 있지만 어떤 것을 설치해야하는지 잘 모르겠습니다.


그것은 readline 문제가 아니며 (사실, "문제"가 아닙니다), Ubuntu는 bash에 대한 사용자 정의 패키지를 보유하고 있기 때문입니다.
Jed Smith

이것은 분명히 bash 구성 문제입니다 (호스트 이름 완성과 같이 Mac + 에서이 동작을 많이 구성했기 때문에 bash에 대한 전원 스크립트를 찾아서 프로파일에 추가해야합니다).
Shane C. Mason

답변:


13

bash_completion을 다운로드 하여에서 제공하십시오 .bashrc. 그런 다음 contrib/completion/git-completion.bashgit distribution에서을 넣습니다 bash_completion.d.

또는 MacPorts 를 통해 설치할 수 있습니다 .


고마워, 이것은 효과가 있었다. [-f / opt / local / etc / bash_completion] 인 경우 .bashrc에 다음을 추가했습니다. 그런 다음 소스 / opt / local / etc / bash_completion fi
sa125

1
더 좋은 방법은 homebrew를 통해 설치하십시오 : brew install bash-completion
abyx

@abyx : homebrew와 macports 사이의 "더 나은"선택은 매우 주관적인 것입니다

2

git의 경우 컴파일을 완료 할 수있는 옵션이 있습니다.

포트를 사용하여 Git을 설치 한 경우 (권장)이 명령으로 git을 다시 설치할 수 있습니다

sudo port install git-core +svn+bash_completion+doc

bash 완료, git-svn 지원 및 문서로 git을 설치할 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.