Dired 또는 Dired +의 현재 경로를 클립 보드로


18

디렉토리에 Dired 버퍼가 열려 있다고 가정 해보십시오. 디렉토리 경로를 클립 보드로 보내려면 어떻게해야합니까?

또한 Dired 커서가 파일을 먼저 열지 않고 특정 파일에있을 때 어떻게합니까?

답변:


25

커서를 디렉토리 헤더 행으로 이동 한 다음 (예 :을 사용하여 M-<) 디렉토리 를 누르십시오 w. 그러면 디렉토리 이름이 킬 링에 복사됩니다. ( wDired에서 모든 파일 이름을 복사하며 디렉토리 헤더에서도 작동합니다.)

그리고 아직 그렇게하지 않았다면, x-select-enable-clipboard아닌로 사용자 지정 하면 nil선택 항목이 클립 보드에 복사됩니다.


@Constantine의 의견은 좋은 지적입니다. 절대 이름을 얻기 위해 디렉토리 헤더 행으로 이동하는 대신 C-0 w모든 파일 또는 디렉토리 행에서 사용할 수 있습니다 . 클립 보드에 절대 파일 이름이 입력됩니다. 붙여 넣을 때 상대 파일 이름 부분을 제거하여 절대 디렉토리 이름을 얻을 수 있습니다.


16
나는 그것의 가치가 있다고 언급 생각 C-h k wA의 dired버퍼, 즉 '제로 접두사 인수, 각 표시된 파일의 절대 파일 이름을 사용합니다. 함께 "말한다"를 눌러 C-0 w절대 경로를 얻을 수 있습니다. "
Constantine

@Constantine : 좋은 지적입니다. 이것을 언급하기 위해 답변을 업데이트했습니다.
Drew

5
@Constantine : "0 w"를 사용할 수 있습니다 (이것은 dired 버퍼에서 "C-0 w"와 동일)
jfs

금지 모드에서는 "C-0 w"를 사용하십시오. 링을 죽이는이 전체 경로 (경로 + 파일 이름).
a_subscriber

1

나는 설정 x-select-enable-clipbardt제안했지만 작동하지 않았다. 나는이 코드를 여기에서 사용한다 : http://blog.binchen.org/posts/copy-file-name-or-full-path-of-file-in-emacs-dired-buffer-into-system-clipboard .html

;; {{ copy the file-name/full-path in dired buffer into clipboard
;; `w` => copy file name
;; `C-u 0 w` => copy full path
(defadvice dired-copy-filename-as-kill (after dired-filename-to-clipboard activate)
  (with-temp-buffer
    (insert (current-kill 0))
    (shell-command-on-region (point-min) (point-max)
                             (cond
                              ((eq system-type 'cygwin) "putclip")
                              ((eq system-type 'darwin) "pbcopy")
                              (t "xsel -ib")
                              )))
  (message "%s => clipboard" (current-kill 0))
  )
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.