Bash에 대한 추가 완성 기능 설치

Bash에 대한 추가 완성 기능 설치

나는 bash 완성 todo.txt cli를 사용해 본 적이 없지만 한번 시도해 보기로 결정했습니다. 저자의 github에 그는 다음과 같이 썼습니다.

(Optional, since v 2.9:) Install the Bash completion, either system-wide, for all users:

      $ sudo cp todo_completion /etc/bash_completion.d/todo
or 

      put it somewhere in your home directory and source it from your .bashrc:

이제 bash 완료 설치 문서에는 다음과 같이 나와 있습니다.

The easiest way to install this software is to use a package; it is available
in many operating system distributions.  The package's name is usually
bash-completion.  Depending on the package, you may still need to source it
from either /etc/bashrc or ~/.bashrc (or any other file sourcing those). You
can do this by simply using:

# Use bash-completion, if available
[[ $PS1 && -f /usr/share/bash-completion/bash_completion ]] && \
    . /usr/share/bash-completion/bash_completion

그래서 내 이해로는 이것이 틀릴 수 있으므로 넣어야합니다.

# Use bash-completion, if available
    [[ $PS1 && -f /usr/share/bash-completion/bash_completion ]] && \
        . /usr/share/bash-completion/bash_completion

~/.bashrc. todo-completion지금 당장 뛰어들어볼까 /usr/share/bash-completion/bash-completion? 그렇다면 나는 그것밖에 없는데 아직 한 단계 아래가 /usr/share/bash-completion있다 .completionbash-completion

솔직히, 나는 아마도 이 사고 과정에 대해 완전히 틀렸을 것입니다. 나는 많은 검색을 해봤 todo지만 bash-completion너무 유망한 것은 없습니다. 그렇다면 이 중 어느 것도 정확하지 않은 경우 두 가지를 어떻게 함께 설정합니까?

답변1

파일을 추가하면 /usr/share/bash-completion/다음에 패키지가 업데이트될 때 pacman이 해당 파일을 덮어씁니다.

이런 일이 발생하지 않도록 하려면 ~/.bash_completion마스터 완성 스크립트 끝에서 를 사용하세요. ~에서자주 묻는 질문:

Q: 새 버전을 게시할 때마다 다시 삽입하지 않고 로컬 완성을 삽입하려면 어떻게 해야 합니까?

A. 기본 완성 스크립트 끝에서 구문 분석되는 ~/.bash_completion에 배치하세요. 다음 질문도 참조하세요.

또는 Arch에서 시스템 전체에 액세스하려면 파일을 /etc/bash_completion.d/.

관련 정보