* [yasnippet] can not creating links with description
@ 2011-08-08 20:46 Karl Voit
2011-08-09 15:05 ` Bianca Lutz
0 siblings, 1 reply; 4+ messages in thread
From: Karl Voit @ 2011-08-08 20:46 UTC (permalink / raw)
To: emacs-orgmode
Hi!
I'd like to create a link like
[[file:~/share/all/org-mode/contacts.org::*foo][company:foo]]
... and therefore I created:
,----[ ~/snippets/org-mode/vkcomp ]
| # name : expand link to company
| # --
| [[file:~/share/all/org-mode/contacts.org::*$1][company:$1]] $0
`----
But: unfortunately my Org-mode behaves strangely when applying the
snippet: "company:" with blinking cursor in the «c» which does not
let me enter the string which replaces «$1».
I guess this is related to «hiding the actual link when a
description is set».
Can I define a snippet which behaves like following? After entering
the snippet command and pressing TAB, I get the chance to type «foo»
part and after another TAB, the link as stated above is finished and
the cursor is at the end.
Thanks!
--
Karl Voit
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [yasnippet] can not creating links with description
2011-08-08 20:46 [yasnippet] can not creating links with description Karl Voit
@ 2011-08-09 15:05 ` Bianca Lutz
2011-08-09 15:40 ` Bianca Lutz
2011-08-10 14:28 ` Karl Voit
0 siblings, 2 replies; 4+ messages in thread
From: Bianca Lutz @ 2011-08-09 15:05 UTC (permalink / raw)
To: news1142; +Cc: emacs-orgmode
Hi Karl,
I do not know how to accomplish this with a single field but the
following workaround might be sufficient:
,----[ ~/snippets/org-mode/vkcomp ]
| # name : expand link to company
| # --
| [[file:~/share/all/org-mode/contacts.org::*$1][${2:$$(unless yas/modified-p
| (let ((field (nth 0 (yas/snippet-fields (first (yas/snippets-at-point))))))
| (concat "companie: "
| (and field (buffer-substring
| (yas/field-start field)
| (yas/field-end field))))))]] $0
`----
As long as the first field is active the second one is empty, thus, no
troublesome link hiding will occur. As I said, this isn't exactly what
you were asking for, since you have to press TAB a second time to
actually exit the snippet.
Best regards,
Bianca.
On Mon, Aug 8, 2011 at 10:46 PM, Karl Voit <devnull@karl-voit.at> wrote:
> Hi!
>
> I'd like to create a link like
>
> [[file:~/share/all/org-mode/contacts.org::*foo][company:foo]]
>
> ... and therefore I created:
>
> ,----[ ~/snippets/org-mode/vkcomp ]
> | # name : expand link to company
> | # --
> | [[file:~/share/all/org-mode/contacts.org::*$1][company:$1]] $0
> `----
>
> But: unfortunately my Org-mode behaves strangely when applying the
> snippet: "company:" with blinking cursor in the «c» which does not
> let me enter the string which replaces «$1».
>
> I guess this is related to «hiding the actual link when a
> description is set».
>
> Can I define a snippet which behaves like following? After entering
> the snippet command and pressing TAB, I get the chance to type «foo»
> part and after another TAB, the link as stated above is finished and
> the cursor is at the end.
>
> Thanks!
>
> --
> Karl Voit
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [yasnippet] can not creating links with description
2011-08-09 15:05 ` Bianca Lutz
@ 2011-08-09 15:40 ` Bianca Lutz
2011-08-10 14:28 ` Karl Voit
1 sibling, 0 replies; 4+ messages in thread
From: Bianca Lutz @ 2011-08-09 15:40 UTC (permalink / raw)
To: news1142; +Cc: emacs-orgmode
I just realized that the test for field being non-nil is superfluous
in the example below -- the usual copy and paste mess got me. Thus,
you may omit it, i.e. use
(concat "companie: " (buffer-substring ...))
instead of
(concat "companie: " (and field (buffer-substring ...)))
Bianca.
On Tue, Aug 9, 2011 at 5:05 PM, Bianca Lutz <bialut@googlemail.com> wrote:
> Hi Karl,
>
> I do not know how to accomplish this with a single field but the
> following workaround might be sufficient:
>
> ,----[ ~/snippets/org-mode/vkcomp ]
> | # name : expand link to company
> | # --
> | [[file:~/share/all/org-mode/contacts.org::*$1][${2:$$(unless yas/modified-p
> | (let ((field (nth 0 (yas/snippet-fields (first (yas/snippets-at-point))))))
> | (concat "companie: "
> | (and field (buffer-substring
> | (yas/field-start field)
> | (yas/field-end field))))))]] $0
> `----
>
> As long as the first field is active the second one is empty, thus, no
> troublesome link hiding will occur. As I said, this isn't exactly what
> you were asking for, since you have to press TAB a second time to
> actually exit the snippet.
>
> Best regards,
> Bianca.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [yasnippet] can not creating links with description
2011-08-09 15:05 ` Bianca Lutz
2011-08-09 15:40 ` Bianca Lutz
@ 2011-08-10 14:28 ` Karl Voit
1 sibling, 0 replies; 4+ messages in thread
From: Karl Voit @ 2011-08-10 14:28 UTC (permalink / raw)
To: emacs-orgmode
* Bianca Lutz <bialut@googlemail.com> wrote:
> Hi Karl,
Hi!
> I do not know how to accomplish this with a single field but the
> following workaround might be sufficient:
This works great! Thank you for the code!
--
Karl Voit
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-08-10 14:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-08 20:46 [yasnippet] can not creating links with description Karl Voit
2011-08-09 15:05 ` Bianca Lutz
2011-08-09 15:40 ` Bianca Lutz
2011-08-10 14:28 ` Karl Voit
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.