emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] RFQ - new contribution - org-screenshot.el


From: Viktor Rosenfeld
Subject: Re: [O] RFQ - new contribution - org-screenshot.el
Date: Tue, 21 May 2013 19:40:14 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Hi,

Haider Rizvi wrote:

> Max Mikhanosha <address@hidden> writes:
> 
> > Hi All,
> >
> > I've been writing some documentation in OrgMode with screenshots, and
> > as with any screenshot taking, it takes a while to get one just right.
> >
> > A few tiny helper utilities, quickly snowballed into this :-) It may
> > need some cleanup, but IMHO its too awesome not to share it with the
> > list.
> >
> > To try it out, you'll need /usr/bin/scrot which is available as
> > "scrot" package on most distributions.
> 
> Cool. Can you make this a bit portable. On Mac OSX, the utility is
> called screencapture, and can be run with the same flags. 

Attached is a very first try at making org-screenshot run on OS X. Many
open issues remain:

- Clicking in a window will not take a screenshot using `screencapture
  -s' but aborts the process altogether and does not create a file. To
  capture a window one has to use `screencapture -w'. Another option is
  to use `screencapture -i' and toggle between window and selection mode
  using the space bar. The problem with this approach is that hitting
  the control key will place the screenshot into the clipboard and not
  create a file either.  
  
- Delay does not work because `screencapture -d' has a different
  meaning. To delay a screenshot, one has to use `screencapture -T'.

Cheers,
Viktor
  
> Here is a
> piece of code that was published earlier with a sample use.
> 
> http://thread.gmane.org/gmane.emacs.orgmode/69221/focus=69272
> 
> ,----
> | #+BEGIN_SRC emacs-lisp
> |   (defun paste-clipboard-to-file (&optional filename temp-dir)
> |     "Take a screenshot using the crosshairs and saveit to FILENAME,
> |     if it is given or to a temp file in the TEMP-DIR
> |     directory. Then add an orgmode style link at point."
> |     (interactive)
> |     (let* ((temporary-file-directory (or temp-dir "images"))
> |            (fname (or filename (make-temp-file "img" nil ".jpg"))))
> |       (call-process-shell-command (concat 
> |                                     "/usr/sbin/screencapture -s " fname))
> |       (insert "\n[[file:" fname "]]")
> |       (org-display-inline-images)))  
> |   ;;
> |   (global-set-key (kbd "C-c p") 'paste-clipboard-to-file)
> |   
> | #+END_SRC
> `----
> 
> Regards, 
> -- 
> Haider
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]