On Fri, Sep 24, 2010 at 00:36, Christiaan Hofman <[email protected]> wrote:
>> I know nothing of the implementation of course, but I imagined that
>> the RTF file was going through a parser of some sort which replaced
>> the <$???/> bits by the appropriate values of the fields. I was
>> thinking that maybe this parser could be made to also replace those
>> strings within a HYPERLINK construct (where they are delimited by %3C
>> and %3E).
>
> Again, no, the hyperlinks are in the underlying /data/, while the parser
> replaces template tags in the /text/. The hyperlinks are not text, they're
> attributes.
I understand that they are not the same thing conceptually. But
practically they look almost the same in the file: they are just ASCII
characters. Maybe I know too little about the parser to really
understand, but, since a RTF file is actually just a collection of
ASCII character, I imagined that this parser just does some
find-and-replace operations on the template tags, probably based on a
regular expression that looks something like:
\<\$.*?\\\>
So I imagined that it would be equally able to perform these
operations on other regular expressions too.
To reuse my example above, a minimalist RTF file with just the DOI as
a link to the resolved DOI online would be:
{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf320
{\fonttbl\f0\froman\fcharset0 Palatino-Roman;}
{\colortbl;\red255\green255\blue255;}
{\info
{\author
Foo}}\paperw11900\paperh16840\margl1440\margr1440\vieww9000\viewh8400\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
{\field{\*\fldinst{HYPERLINK "%3C$urls.Doi/%3E"}}{\fldrslt
\f0\fs22 \cf0 <$fields.Doi/>}}}
The first template tag is %3C$urls.Doi/%3E is the destination of the
link, which should be expanded to http://dx.doi.org/value-of-doi, and
the second is <$fields.Doi/>, which should be expanded to
value-of-doi.
So, in the end, what I am saying is: can the parser recognise both
<$***/> and %3C$***/%3E as tag delimiters?
>> This way, all imaginable link would be possible, as they are
>> in HTML. One would only have to create the link manually in the RTF
>> editor (rather than have the templating system create it for him with
>> .linkedText).
>
> But it wouldn't be manageable for most, because it would require editing
> template tags into the underlying RTF data, which most people (including me)
> would not be able to do. The point is that now you just include the tags in
> the rich text as text, and you don't bother with the underlying RTF data
> format. It's either one or the other, you can't mix things up.
I am displaying the raw RTF data above for the sole purpose of showing
that a tag in the text and a tag within the hyperlink are not so
different. But I actually created everything in TextEdit. Just select
a piece of text, select Edit > Add Link..., and, in the pane that
opens, write the destination address, possibly including template
tags.
I acknowledge that it would be more difficult that letting .linkedText
do the work but it would allow for finer configuration where needed
(the custom google scholar search I did in HTML turns out to be quite
useful).
Anyhow, thanks for all your work on the rest. I'm just trying to
better understand how things are working under the hood but maybe I
just shouldn't ;)
JiHO
---
http://maururu.net
------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
Bibdesk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-users