bash_completion을 채색하십시오


9

입력 grep하고 TAB두 번 누르면 bash_completion현재 디렉토리의 파일과 디렉토리가 나열됩니다. 초기 문자를 입력하면 파일 이름도 완성됩니다. 디렉토리에 많은 파일과 서브 디렉토리가 포함 된 경우 디렉토리가 상당히 혼란스럽고 구성이 잘못 될 수 있다는 것이 유일한 문제입니다.

bash_completion적어도 디렉토리와 다르게 색상을 지정할 수 있다면 도움이 될 것 ls -lA입니다.

이것이 가능한가?

편집하다:

다음은 샘플 bash_completion구성 파일의 모습입니다.

if [[ ${cur} == -* ]] ; then
    COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
    return 0

else
    _filedir
fi

1
이것이 가능한지 모르겠지만 bash의 기본 동작입니다 zsh.
terdon

1
확실하지 않은 경우에 대비하여 해결책을 찾고 있습니다.bash
Martin Vegter

어떤 파일을 보여주고 있습니까?
terdon

답변:


7

Bash의 현재 버전에는 이와 같은 기본 제공 기능이 없으며을 사용 하여이 작업을 수행 할 수 있습니다 zsh. 기본적으로 있습니다.

완료와 관련된 도구 중 하나를이라고 compgen합니다. 명령을 올바르게 채색하여 표시 할 수는 있지만 이것은 해킹이므로 실제로 유용하지는 않습니다.

$ compgen -W "$(ls --color=always *)"

그러면 색상이 지정된 파일이 올바르게 나열되지만에서 색상을 가져오고 있으므로이 ls기본 색상을 고려하지 않습니다 auto_completion.

참고 문헌


내 편집 내용을 참조하십시오. 나는 어떤이 없습니다 ls내에서 bash_completion설정 파일. _filedir파일을 나열 하는 기능이있는 것 같습니다 .
Martin Vegter
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.