Re: [O] How to attach data in clipboard directly?
Hi Carlos, Carlos Russo mestre.adamas...@gmail.com writes: Nevertheless, it's a good pointer: I was able to cook up an elisp function that calls an applescript to do the osx-dependent stuff. A good start, then -- could someone add this to Worg hacks? Thanks, -- Bastien
Re: [O] How to attach data in clipboard directly?
Hello What I want is that emacs/orgmode understands the contents of the clipboard and creates that file for me. For instance, if it detects that the contents of the clipboard is an image or some sort of non-text format, emacs would dump the clipboard data to a file, auto-generate a filename, guessing the data type, and attach that file to my org-file via org-attach-attach. See Automatic screenshot insertion on Worg: http://orgmode.org/worg/org-hacks.html#sec-3-8 Best regards, Seb Thank you for your suggestion, Seb. The script Automatic screenshot insertion from Worg is based on import from Imagemagick, which operates on X buffers. I'm actually running Aquamacs in Mac OS X (10.6), so this solution doesn't work for me. Nevertheless, it's a good pointer: I was able to cook up an elisp function that calls an applescript to do the osx-dependent stuff. I suppose that X11 users could use xclip or xsel instead (did not try it, though). Here is the elisp bit: (defun org-capture-clipboard-as-png () Save the contents of the clipboard as a time stamped unique-named .png file in the same directory as the org-buffer and insert a link to this file. (interactive) (setq filename (concat (make-temp-name (concat (buffer-file-name) _ (format-time-string %Y%m%d_%H%M%S_)) ) .png)) (call-process ~/.emacs.d/scripts/save_clipboard.applescript nil nil nil filename ) (insert (concat [[ filename ]])) ;; (org-display-inline-images) ) and here is the applescript bit ( save_clipboard.applescript ) #!/usr/bin/osascript on run argv set fn to item 1 of argv # Check if Clipboard is empty set blnIsClipboardEmpty to false try set dataClipboard to the clipboard on error strErrorMessage number intErrorNumber if (intErrorNumber is -25131) then set blnIsClipboardEmpty to true end if end try # Try to save clipboard contentsas png if blnIsClipboardEmpty is false then set d to the clipboard as «class PNGf» set fid to open for access fn with write permission write d to fid close access fid end if end run Sure, this is far from perfect. I would like these scripts to - guess data type that is in clipboard and save the data with the correct extension - make the elisp script aware of the file extension - somehow feed this to org-attach, in order to have all of the git-attach goodies. but this is beyond my skills at the moment... Any hints?
[O] How to attach data in clipboard directly?
Hello, I often need to paste fragments of pictures/images to my org file. Typically, I manually paste the fragment to a file, and then use C-c C-a m to attach that file to my org-file. This is rather tedious, because there are a few steps and extra programs involved, and I guess there must be a better way to do this. What I want is that emacs/orgmode understands the contents of the clipboard and creates that file for me. For instance, if it detects that the contents of the clipboard is an image or some sort of non-text format, emacs would dump the clipboard data to a file, auto-generate a filename, guessing the data type, and attach that file to my org-file via org-attach-attach. I'm thinking of a org-attach-clipboard sort of command, accessible via the C-c C-a (org-attach) menu. Perhaps I'm demanding too much from emacs and org-mode, but hey, couldn't it be done? It would be a cool feature... More important, _hasn't_ this been done already? Regards, Carlos