Dieter Deyke <[EMAIL PROTECTED]> writes:
> [EMAIL PROTECTED] (Daniel Jensen) writes:
>
>> Dieter Deyke <[EMAIL PROTECTED]> writes:
>>
>>> I am trying to use bongo-insert-uri on my emacs running natively on
>>> Windows XP, but do get a missing function error for x-get-selection.
>>> Could it be that the code using it is X windows specific?
>>
>> I think I found the bug, but I cannot test it myself. On MS Windows,
>> x-get-selection is redefined, but x-get-clipboard is not. Does this
>> patch fix the problem for you?
>>
>> --- bongo-old/bongo.el 2007-01-15 14:15:44.000000000 +0100
>> +++ bongo-new/bongo.el 2007-02-03 11:53:21.000000000 +0100
>> @@ -6171,7 +6171,7 @@
>> (let ((primary (x-get-selection)))
>> (and (bongo-uri-p primary) primary)))
>> (and (x-selection-exists-p 'CLIPBOARD)
>> - (let ((clipboard (x-get-clipboard)))
>> + (let ((clipboard (x-get-selection 'CLIPBOARD)))
>> (and (bongo-uri-p clipboard) clipboard)))))
>> (uri
>> (read-string (concat "Insert URI"
>>
[...]
> The patch now generates a different error:
>
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
> string-match("\\(?:\\`\\([a-zA-Z]\\(?:\\(?:[EMAIL
> PROTECTED]&!*\"'(),]\\)\\|\\(?:%[[:xdigit:]]\\{2\\}\\)\\)+\\):\\)" nil)
> (if (string-match (eval-when-compile ...) file-name) (progn (match-string 1
> file-name)))
> (when (string-match (eval-when-compile ...) file-name) (match-string 1
> file-name))
> bongo-uri-scheme(nil)
> (null (bongo-uri-scheme file-name))
> (not (null (bongo-uri-scheme file-name)))
> bongo-uri-p(nil)
> (and (bongo-uri-p clipboard) clipboard)
[...]
Thank you. I have installed the following patch:
diff -rN -u old-bongo/bongo.el new-bongo/bongo.el
--- old-bongo/bongo.el 2007-02-03 19:15:30.000000000 +0100
+++ new-bongo/bongo.el 2007-02-03 19:15:30.000000000 +0100
@@ -1771,8 +1771,9 @@
(match-string 1 file-name)))
(defun bongo-uri-p (file-name)
- "Return non-nil if FILE-NAME is a URI."
- (not (null (bongo-uri-scheme file-name))))
+ "Return non-nil if FILE-NAME is a URI.
+As a special case, return nil if FILE-NAME is nil."
+ (and file-name (not (null (bongo-uri-scheme file-name)))))
(defun bongo-unescape-uri (uri)
"Replace all occurences of `%HH' in URI by the character HH."
@@ -6192,7 +6193,9 @@
(let ((primary (x-get-selection)))
(and (bongo-uri-p primary) primary)))
(and (x-selection-exists-p 'CLIPBOARD)
- (let ((clipboard (x-get-clipboard)))
+ (let ((clipboard (if (fboundp 'x-get-clipboard)
+ (x-get-clipboard)
+ (x-get-selection 'CLIPBOARD))))
(and (bongo-uri-p clipboard) clipboard)))))
(uri
(read-string (concat "Insert URI"
Please verify that this fixes your problem.
--
Daniel Brockman <[EMAIL PROTECTED]>
_______________________________________________
bongo-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/bongo-devel