gud-mode
은 gdb의 complete
명령을 호출하여 가능한 완료 목록을 검색합니다.
(run /mnt)
반환 된 목록에있는 각 항목의 첫 번째 부분이 절단 : 당신의 예에서, 반환 된 목록은 다음 ("/ MN"로 시작하는 파일 시스템에 하나의 디렉토리가 있다고 가정)를 포함 할 것 그래서 당신이 볼 수 있듯이 오프, 나머지 전체 목록은
(/mnt)
이다 GDB의complete
명령에 의해 반환이 항목은 이미 후행 슬래시 없다. 이 문제를 해결할 수있는 유일한 희망은 gdb의 명령을 패치하거나 Emacs의 gud-mode
을 패치하는 것입니다. 어떻게 든 완성 된 단어가 디렉토리인지 확인한 다음 슬래시를 추가하여 (공백 문자).
그러나 물론
, 당신은 단순히 잠재적으로 다시 기본
gud-gdb-complete-command
에 떨어지면, 그러나 아마 촉구 완료 다른 종류의 작업을 수행 한 다른 완료 함수에
TAB 키를 결합 할 수있다. 이를 위해
은 당신의 이맥스 파일에 다음을 넣어보십시오 :
(defun my-gud-gdb-setup()
(define-key (current-local-map) "\t" 'my-gud-gdb-complete-command))
(defun my-gud-gdb-complete-command (&optional COMMAND PREDICATE FLAGS)
(interactive)
(unless (comint-dynamic-complete-filename)
(gud-gdb-complete-command COMMAND PREDICATE FLAGS)))
(add-hook 'gdb-mode-hook 'my-gud-gdb-setup)
이 코드는 먼저 파일로 현재 단어를 확장하려고 TAB 키에 새로운 기능을 결합, 만 실패하면 기본값 gud-gdb-complete-command
이 호출됩니다.
이것은 나에게도 정말 성가신 일이었습니다. 수정본을 아래에서 시도 할 것입니다. – bph