@Jesse가 이미 지적했듯이 여기서 원하는 것은 company-files
백엔드입니다. 여러 가지 방법으로 사용할 수 있습니다.
company-files
직접 통화 할 수 있는 키를 묶습니다 .
command를 사용하십시오 company-begin-backend
. 백엔드를 사용하라는 프롬프트가 표시되면 완료 후보를 제공합니다.
company-other-backend
백엔드 목록을 회전하는 데 사용 합니다 (다음 항목 참조). 이것은 완료를 트리거하는 데 사용되거나 회사 모드가 트리거 된 후 다른 완료 후보 세트로 전환하기 위해 사용될 수 있습니다. 회사 맵에서 키 바인딩을 할당 할 수 있습니다 (예 :(define-key company-active-map (kbd "C-e") #'company-other-backend)
변수를 구성하십시오 company-backends
. 회사 모드는 현재 접두사 (즉, 포인트 앞의 텍스트)를 허용하는 백엔드를 찾기 위해이 목록을 순회합니다. 현재 접두사를 수락하지만 완료 후보를 제공하지 않는 백엔드를 목록에 포함하는 것은 전적으로 가능합니다.이 시점에서 회사 모드는 아무것도 자동 완성하지 않습니다. 필요에 맞는 방식으로 백엔드를 주문하도록 목록을 사용자 정의 할 수 있습니다.
수정의 몇 가지 예 company-backends
:
파일 이름 만 완성하려는 경우 유일한 백엔드로 만들 수 있습니다.
(setq company-backends '(company-files))
그럴 것 같지 않으므로 가장 일반적으로 사용되는 백엔드를 먼저 배치 한 다음 앞에서 언급 한 옵션 중 하나를 사용하여 백엔드를 전환하거나 다른 것이 필요할 때 이름별로 하나씩 호출하는 것이 좋습니다.
병합 된 완료 후보 세트를 작성하는 '그룹'백엔드를 구성 할 수도 있습니다. 예를 들어 다음을 시도하십시오.
(setq company-backends '((company-capf company-dabbrev-code company-files)))
이는 세 개의 다른 백엔드에서 후보를 병합하는 단일 백엔드를 지정합니다. 완료 시점, dabbrev 및 파일 시스템의 결과를 제공합니다.
모드 후크를 사용하여 다른 주요 모드에 대해 다른 백엔드 세트를 지정할 수 있습니다. 예를 들면 다음과 같습니다.
(add-hook 'org-mode-hook
(lambda ()
(setq-local company-backends '((company-files company-dabbrev)))))
(add-hook 'emacs-lisp-mode-hook
(lambda ()
(setq-local company-backends '((company-capf company-dabbrev-code)))))