2011年5月22日

Windows のショートカット lnk ファイルを開く w32-symlinks.el [失敗]

M-x install-elisp-from-emacswiki [RET]
w32-symlinks.el [RET]
C-c

として、 elc を一旦削除し、 el を以下のように書き換えて

     ;; (string= (buffer-substring 1 21)  ; otherwise not a shortcut file
     ;;           "L\0\0\0\ \x01\x14\x02\0\0\0\0\0\xC0\0\0\0\0\0\0\x46")
     (string= (buffer-substring 1 21)  ; otherwise not a shortcut file
          "L\0\0\0\ \x01\x14\x02\0\0\0\0\0_\0\0\0\0\0\0\x46")

init.el に以下を記載するも、開くことができなかった。

;; ------------------------------------------------------------------------
;; @ 最近使ったファイルを開く recentf-ext.el
;; 参考:http://ntemacsjp.sourceforge.jp/matsuan/IndexJp.html

;; follow windows short cut

(when (and (featurep 'dos-w32) (locate-library "w32-symlinks"))
  (setq w32-symlinks-handle-shortcuts t)
  (require 'w32-symlinks)

  ;; http://www.bookshelf.jp/soft/meadow_25.html#SEC279

  (defadvice minibuffer-complete
    (before expand-symlinks activate)
    (let ((file (expand-file-name
                 (buffer-substring-no-properties
                  (line-beginning-position)
                  (line-end-position)))))
      (when (string-match ".lnk$" file)
        (delete-region
         (line-beginning-position)
         (line-end-position))
        (if (file-directory-p
             (w32-symlinks-parse-symlink file))
            (insert
             (concat
              (w32-symlinks-parse-symlink file) "/"))
          (insert (w32-symlinks-parse-symlink file)))))))


el の書き換えに参考にしたのは以下

[Emacs]NTEmacs で w32-symlinks を使えるようにする
http://d.hatena.ne.jp/holidays-l/20101226/p1

[QED]
******************************************************************************

0 件のコメント:

コメントを投稿