Dired或Dired +到剪贴板的当前路径


Answers:


25

将光标移动到目录标题行(显示目录的位置-例如,use M-<),然后单击w。这会将目录名称复制到kill ring。(w从Dired复制任何文件名,它也适用于目录头。)

如果尚未这样做,请自定义x-select-enable-clipboard为non- nil,这样会将选择内容复制到剪贴板。


@Constantine的评论很有意义。无需移动到目录标题行来获取绝对名称,您可以C-0 w在任何文件或目录行上使用。这样会将绝对文件名放在剪贴板中。粘贴时,只需删除相对文件名部分,即可获得绝对目录名。


16
我认为值得一提的是C-h k wdired缓冲区中的表示“使用零前缀arg,使用每个已标记文件的绝对文件名。”,即“按C-0 w获取绝对路径”。
君士坦丁

@康斯坦丁:好点。我更新了答案以提及这一点。
画了

5
@Constantine:您可以使用“ 0 w”(与干缓冲区中的“ 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))
  )
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.