2013-01-22 6 views
3

나는 dired로 파고를 사용합니다. ^를 사용하여 백업하는 것은 나에게 매우 직관적이지 않습니다. 나는 그것을 b 나 r과 같이 다른 것으로 바 꾸고 싶었습니다. 어떻게하면됩니까? 글로벌 세트 키를 얻을 수 없었습니다.emacs에서 몇 가지 간단한 키로 bind^

~ 건배! 대신 [yourkey]의 NJ

답변

4

(define-key dired-mode-map [yourkey] 'dired-up-directory)

, 당신은 [UP] 같은 이름, 또는 "b"또는 "R"을 넣을 수 있습니다, 이것은 단지 dired, 주에있을 것입니다.

(define-key dired-mode-map "b" 'dired-up-directory)

또한 인스턴스 제어 업을 위해 할 수 있습니다. 어떤 상황에서이 []을 쉽게 사용할 수 있다는 마음, 그래서 당신은

아이디어는 (문자 그대로) [C-up][yourkey]을 대체 할 것 : 특정 맵에 대한 키를 정의하고 원하는 기능에 바인딩.

편집 : 당신은 사물의 종류 스스로 다음을 당신이 종료 (-mode 맵)을 가지고있는 모드 알고하는 방법을 알고 너무, 너무 LaTeX의 모드 -지도, 이맥스 - lisp- 모드지도 등 define-key와 함께 사용하는 사람.

바인딩에 연결된 함수를 확인하려면 C-h k (Ctrl + h, k) 키를 사용하면 다른 것으로 바인딩 될 수있는 함수가 무엇인지 표시됩니다 (비록 dired-mode가 활성화되어있을 때 호출해야합니다!). 여기에 도시 된 elisp 사용할 경우

+0

qwerty가 아닌 키워드를 사용하고 있는데,'^'가 죽은 키인 경우,'dead-ircumflex'에 바인딩하여 사용할 수 있습니다 : '(define- key dired-mode-map [dead-circumflex] 'dired-up-directory)' – AdrieanKhisbe

4

대안 :

C-HI그램(dired-x) Optional Installation Dired JumpRET

을하면 dired-jump 전화 C-XC-J을 사용할 수있다.

이것은 파일 버퍼에서도 작동하기 때문에 dired-up-directory보다 좋습니다 (이 경우 dired에서 상위 디렉토리로 이동 함).

결과로 생성 된 dired 버퍼는 사용자가 온 파일 또는 디렉토리로 설정된 지점을가집니다.

+0

단축키가 고유 키 ^보다 길지만 Cx Cj는 좋은 속임수입니다. 정확히 무엇이 요구되는지, 하나의 디렉토리로 올라갑니다. – thdox

0

그게 무슨 가치가 있는지, 나는 전자을 사용하여 디렉토리를 이동하려면 다음을 사용합니다. 대신 새로운 버퍼에 상위 디렉토리를로드하는, 현재 버퍼에 남아 있다는 점에서

(add-hook 'dired-mode-hook 
      (lambda() 
      (define-key dired-mode-map (kbd "e") 
       (lambda() (interactive) (find-alternate-file ".."))))) 

dired-up-directory 다릅니다. (사용하지 않은 버퍼를 신경 쓰곤했었다.)

+0

@phils, 당신 말이 맞아요. 제 'init'에'lambda '가 있습니다.이 포스트를 위해이 파일을 변경했는데,'lambda'가 적절하지 않아야한다고 생각하지 않았습니다. – harpo