Re: [STUMP] Stump, Emacs and X selection.

Patricio Martinez <[email protected]>
Newsgroups gmane.comp.window-managers.stumpwm.devel
Message-ID <[email protected]>
Amazing, I'll probe it soon and I'll see how work.

  

Thank you very much

  
Sent from [Nylas N1](https://nylas.com/n1?ref=n1), the extensible, open source
mail client.  

On may. 13 2016, at 1:27 pm, Dimitri Minaev &lt;[email protected]&gt; wrote:  

> Hello,

>

> I'm trying to write a Stumpwm command that would create a note in  
Org-mode and paste the current selection and some other info taken  
from Firefox -- the URL and the tab title. While trying to implement  
the command I met a couple of problems.

>

> First, it doesn't work with non-Latin characters. I'm not sure whether  
this is related to Stumpwm or Emacs. Stump's get-x-selection yields  
correct result, but window-send-string seemingly drops all Cyrillic  
characters from that string.

>

> Then the other problem appeared. To avoid confusion between the  
primary selection and the URL, I save the selection content in a  
variable before putting the URL to another variable, but it seems that  
these two variables are in the state of quantum entanglement. When one  
of them is changed, the other one changes, too. I thought that the two  
calls of (get-x-selection) might return the same object, which would  
result in 'url' being replaced by 'sel'. So, I tried to copy the  
string using copy-seq before assigning it to 'sel', but it didn't  
help. Now I'm completely lost :)

>

> Finally, I came up with the version that works correctly when it is  
run two times :). After the first execution, it pastes two selections  
and no URL. If you re-select the area in Firefox and run the same  
command, the expected output will appear. What is wrong here?

>

> (defcommand emacs-remember () ()  
  "Send selection into emacs org-mode"  
  (let ((current-window-name (if (current-window) (window-title  
(current-window)) "No current window"))  
      (current-window-class (if (current-window) (window-class  
(current-window)) "No window class"))  
      (copy-from-firefox (equal (window-class (current-window)) "Firefox"))  
      (sel (get-x-selection))  
      (url ""))  
      (setf sel (get-x-selection))  
    (when copy-from-firefox  
        (send-meta-key (current-screen) (kbd "F6"))  
        (send-meta-key (current-screen) (kbd "C-c"))  
        (setf url (get-x-selection))  
        (send-meta-key (current-screen) (kbd "F6")))  
    (run-or-raise "emacs" '(:class "Emacs"))  
    (send-meta-key (current-screen) (kbd "M-x"))  
    (window-send-string "org-capture")  
    (send-meta-key (current-screen) (kbd "RET"))  
    (window-send-string "f")  
    (window-send-string (format nil "~a~%~a~%~%" current-window-name url))  
    (window-send-string sel)))
>

> Thanks.

>

> \--  
With best regards,  
Dimitri Minaev

>

> _______________________________________________  
Stumpwm-devel mailing list  
[email protected]  
https://lists.nongnu.org/mailman/listinfo/stumpwm-devel

_______________________________________________
Stumpwm-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/stumpwm-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.