181号Information

(!)
自宅設置サーバーのHDDがトんじゃったので,現在復旧作業中です...
Diary>42[43]44
CONTENTS

じゆうちょう

43 NTEmacs+image-dired+cygwin   2011-08-17 16:46:13

先日はコミケお疲れさまでした.ウチのスペースにお越しいただいたみなさま,本当にありがとうございました.

さて,NTEmacs上でimage-diredがうまく機能しない場合の対処法. 特に,Thumb could not be created for file ...とか,Could not resize imageとか *Message*バッファに表示される場合は,以下の手順はいかが.

まず,cygwinでimage-magickをインストールして, /cygwin/binにwindowsからPATHを通しておきます. 次に,(setq image-dired-cmd-create-thumbnail-program "c:\cygwin\bin\convert.exe")(setq image-dired-cmd-rotate-thumbnail-program "c:\cygwin\bin\mogrify.exe")

最後に以下のパッチを適用.

@@ -1807,6 +1807,11 @@
                   (cons ?h height)
                   (cons ?f file)
                   (cons ?t new-file))))
+          ;; convert unix path form into windows form
+          (setq command (replace-regexp-in-string "/" "\" command))
+          ;; replace "convert" command with full path "convert" command
+          (setq command (replace-regexp-in-string "convert"
+          "c:\cygwin\bin\convert.exe" command)) 
           (setq ret (call-process shell-file-name nil nil nil
 				  shell-command-switch command))
           (if (not (= 0 ret))

とりあえずパスの形式を変更して,convertコマンドのパスを絶対パスに. convertコマンドはwindows標準にもあるんだけど,それが優先されたっぽい?

ここからは余談.パッチをあてた関数(image-dired-display-image)を 別ファイルに書き出しておく場合は,この関数が image-diredの初期化後に評価されるようにしてね. でないと,image-dired初期化時に,この関数は変更前に戻ります.

 
Diary>42[43]44