On 30.04.2016 17:55, racoon wrote:
On 30.04.2016 16:56, Richard Heck wrote:
On 04/30/2016 10:00 AM, racoon wrote:
Thanks Jürgen. I guess your reply implies that there is no special
function for this in LyX.

No, but it would not be hard to create a simple module that did this.

I'll give it a try. Two things are holding me a bit back though

1. The code by Jürgen does not work in environments.
2. The Customization documentation seems a bit on the short side when it
comes to examples.

Also, it would be nicer to have a bookmark front end like the one for other references. So, for example, when you change the *label* of the bookmark it automatically everywhere elsewhere in the document. Actually, I guess the distinction between *label* and *content* is somewhat unhappy. Would be good if the content just is the label, or the content is all that is visible to the user in the editor. In this way the text remains very readable. Internally, LyX could just give any bookmark a number or so. But where the bookmark is defined and where its reference is inserted there just the content is visible. Maybe with some frame to make clear that it is a bookmark... wishful thinking.

Daniel


Daniel


Richard



A problem with the solution you posted is that it seems to work only
in the case when the bookmark is set in a normal paragraph. Otherwise
it seems to fail for some reason. I have attached an example.

On 30.04.2016 14:53, Jürgen Spitzmüller wrote:
Am Samstag, den 30.04.2016, 09:36 +0200 schrieb racoon:
Hi,

In word you can create bookmarks based on a passage in the text. Is
there such a feature in LyX?

So basically it would work like this:

1. You mark a passage (e.g. a word).
2. You make it a bookmark.
2. You go somewhere else and insert a cross reference top the
bookmark.
This will lead to the content of the bookmark being inserted and a
hyperlink to that passage being created.

I think it is a nice idea to create hyperlinks (like in Wikipedia)
to
certain terms that are explained elsewhere. Also if one changes
one's
mind about the term one can just change it at the bookmark and it is
changed everywhere in the text.

(I guess it is similar to creating a definition in LaTeX

\def\foo{Whatever}

So one can use now \foo to insert "Whatever" in the text and can
change
what is actually inserted in the definition. What is missing is the
hyperlink part to the bookmark. So it is not exactly the same.)


Preamble:

\usepackage{etoolbox}
\usepackage{hyperref}
\newcommand\setbookmark[2]{%
\csdef{bkmk@#1}{#2}%
\label{bkmk:#1}%
#2
}

\newcommand\usebookmark[1]{%
\hyperref[bkmk:#1]{\csuse{bkmk@#1}}%
}


Usage:

\setbookmark{test}{A test!}
marks the bookmark "test" and prints the text "a test!"


\usebookmark{test}
prints the text "a test!" as a hyperlink to the former occurrence.

HTH
Jürgen



Best,
Daniel









Reply via email to