emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Rick Frankel <rick@rickster.com>
To: John Kitchin <jkitchin@andrew.cmu.edu>
Cc: Alan Schmitt <alan.schmitt@polytechnique.org>,
	emacs-orgmode@gnu.org,
	Carsten Dominik <carsten.dominik@gmail.com>
Subject: Re: make new links show as figures?
Date: Wed, 30 Oct 2013 12:02:20 -0400	[thread overview]
Message-ID: <db7651ca97913f26058c2fffe9bac160@mail.rickster.com> (raw)
In-Reply-To: <CAJ51ETqDBg_i0N2j7GF4W5nA0XWNTXTWfwvrXH4pgBPa-yOuyA@mail.gmail.com>

On 2013-10-26 08:10, John Kitchin wrote:
> Other than having to repeat yourself, wouldn't the
> [[custom:file.ext][file:file.png]] syntax allow for most/all of the
> use cases mentioned?
> 
> rick
> 
> Yes, I think [[custom:file.ext][file:file.png]] would cover all
> those cases.

So it turns out that this is a REALLY simple patch (two characters):

--- a/lisp/org.el
+++ b/lisp/org.el
@@ -18853,7 +18853,7 @@ BEG and END default to the buffer boundaries."
(widen)
(setq beg (or beg (point-min)) end (or end (point-max)))
(goto-char beg)
-   (let ((re (concat "\\[\\[\\(\\(file:\\)\\|\\([./~]\\)\\)\\([^]\n]+?"
+   (let ((re (concat 
"\\[.*\\[\\(\\(file:\\)\\|\\([./~]\\)\\)\\([^]\n]+?"
(substring (org-image-file-name-regexp) 0 -2)
"\\)\\]" (if include-linked "" "\\]")))
(case-fold-search t)

This seems to work in all cases I can think of (see test file below).
Let me know if this works for you and i will apply to master when i
get home and have git push access.

rick
--------- 8< --------------------
* Setup (babel me)
#+BEGIN_SRC dot :file "image1.png"
digraph { one }
#+END_SRC

#+BEGIN_SRC sh
echo "digraph { one }" > image1.dot
#+END_SRC

#+RESULTS:
[[file:image1.png]]

#+BEGIN_SRC dot :file "image2.png"
digraph { two }
#+END_SRC

#+RESULTS:
[[file:image2.png]]
* Tests
** file link
- with  path (=./=)
[[file:./image1.png]]
- without path
[[file:image1.png]]
** no uri link
- with path ( =./=)
[[./image1.png]]
- without path (this does not expand as an image)
[[image1.png]]
** with description
Note: this does not expand as an image unless
`org-display-inline-images' is called with =include-linked=  true.
[[file:./image1.png][an image]]
** image in description
[[./image1.dot][./image1.png]]
** in both
This will always display the image in the description regardless of
the value of the =include-linked= argument to
`org-display-inline-images' (but open the image in the link).

[[./image1.png][./image2.png]]

  reply	other threads:[~2013-10-30 16:02 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-23  1:53 make new links show as figures? John Kitchin
2013-10-23 13:54 ` Rick Frankel
2013-10-24  7:28   ` Alan Schmitt
2013-10-24 10:08     ` Carsten Dominik
2013-10-24 13:45       ` Rick Frankel
2013-10-24 21:48         ` John Kitchin
2013-10-25 16:49           ` Rick Frankel
2013-10-26 12:10             ` John Kitchin
2013-10-30 16:02               ` Rick Frankel [this message]
2013-10-31 10:04                 ` Alan Schmitt
2013-10-31 15:47                   ` Rick Frankel
2013-10-31 16:20                     ` Cook, Malcolm
2013-10-31 16:55                       ` Rick Frankel
2013-10-31 17:06                     ` Alan Schmitt
2013-10-24 23:41       ` Rick Frankel
2013-10-25  1:18       ` Rick Frankel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=db7651ca97913f26058c2fffe9bac160@mail.rickster.com \
    --to=rick@rickster.com \
    --cc=alan.schmitt@polytechnique.org \
    --cc=carsten.dominik@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=jkitchin@andrew.cmu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).