[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

[MD:6283] ldap.el



[MD:6277] Text is read-only: "Attempt to change text outside
editable field"
の件は直りました。で、本題。

M-x eudc-query-form RET で LDAP で検索できます。
これは姓だけしかわからない人にメールを出すのに部署名と共に
検索できるのでとても便利です。
アドレスを確かめたら BBDB に入れちゃうので、
eudc-expand-inline はボクは使わないです。

Cygwin の ldapsearch を使うと「 *ldap-search*」には

> o:< file:///cygdrive/c/tmp/ldapsearch-o-b03512

のように格納されるため期待した出力と合ってないようです。
次のように変更しようと思いますが他のパターンってあります?
環境変数 TMP = c:\tmp で使ってる場合だけこうなってる?

Index: ldap.el
===================================================================
--- ldap.el	(revision 3600)
+++ ldap.el	(working copy)
@@ -584,9 +584,13 @@
 		  value (match-string 3))
             ;; Need to handle file:///D:/... as generated by OpenLDAP
             ;; on DOS/Windows as local files.
-            (if (and (memq system-type '(windows-nt ms-dos))
-                     (eq (string-match "/\\(.:.*\\)$" value) 0))
-                (setq value (match-string 1 value)))
+            (when (memq system-type '(windows-nt ms-dos))
+	      (if (eq (string-match "/\\(.:.*\\)$" value) 0)
+		  (setq value (match-string 1 value)))
+	      ;; if cygwin file:///cygdrive/c/...
+	      (if (eq (string-match "/cygdrive/\\(.\\)/\\(.*\\)$" value) 0)
+		  (setq value (concat (match-string 1 value) ":/"
+				      (match-string 2 value)))))
 	    ;; Do not try to open non-existent files
 	    (if (equal value "")
 		(setq value " ")

これで問題なければ Emacs 本体の方へ出そう思うのですが。
-- 
kose(a)meadowy.org