I’d be inclined to go with tag-based markup in Zotero, since I really don’t
think we want to pollute stored(/synced/displayed) data with arbitrary
inline markup, and we already have mechanisms in various places to deal with
HTML. Simon and I have discussed using a stripped-down version of TinyMCE
for title fields to handle this. My only concern would be performance, since
the TinyMCE-based rich-text notes in 2.0 have a bit of a display lag, and
that’d be more of an issue for title fields.
Sorry, Dan, we might be talking at cross purposes. The reference to
tag-based versus characters was specific to quotes – I think everyone
is agreed that wysiwyg is preferable to wiki-style markup. The
question is whether quotes should be represented as tags, rather than
as Unicode characters, with me thinking out loud that it would be
simpler to allow users to enter them normally via the keyboard.
But are you suggesting that a user would override the locale-specified quote
characters that appeared around a title in bibliographic output by editing
the data value in Zotero? If so, that doesn’t make much sense to me, because
then the data would essentially be locale-specific, and we’d need to strip
or interpret those characters anywhere we wanted to process or display the
values.
No, sorry if what I wrote gave that impression. The current
quotes=“true” markup in CSL for styles that need quotes is certainly
the right way to go for wrapping titles in quotes during bib
rendering. The next step will be to figure out how to set the
characters used for the quotes. For the outer quotes on a title (if
any) there seem to be two proposals on the table. One is to define
four locale terms, one for each of the opening and closing, single and
double quote characters. The other is to have an option in the
bibliography section that says something like , with permutations for the various
possible combinations of quote marks. Either way, the quote marks to
be used would be defined in the style, and applied by the style.
There would be no tampering with field content.
For quotes that appear around titles, I don’t see why we’d need anything in
the actual data values. For quotes that appear within a title, a tag-based
approach that separates structure from presentation makes more sense to me.
At first blush this looked attractive to me also, but I think that it
turns out to be more complicated to implement common cross-lingual
cases via this route. At the boundary between French and English, you
might have an English review of a book written in French, which uses
French quotes in the title of the review:
J. Smith, “A Review of Cholley’s «Je suis un chat»”, Literary Studies
(2000), v. 10, n. 5
I could be wrong, but I think that would be the commonly expected
behavior in this case. The inner quotes aren’t hard-wired: they would
need to flip-flop to singles if the review were cited in a style that
applies French guillemets instead of English quotes to a title. But
in the example above, the guillemets are outside the scope of English
punctuation, so they are just passed through verbatim.
Implementing this in CSL is not difficult, and it wouldn’t require any
changes in Zotero to make it work; quote characters are just entered
as part of literal text of titles in which they appear, and display as
ordinary UTF-8. Any flip-flop mangling at bib render time would be up
to the CSL processor. To make flip-flop work where it’s needed, the
set of quote marks to be recognized in input for the locale of the
style, and the hierarchy of quotes to be used in output, would need to
be fixed, either as locale terms, or using some special element for
that purpose. (Separating input from output quote character sets
would solve any lurking problems with courier-style quote marks
slipping through into typeset output.)
If the inner quotes were tag markup, on the other hand, they would
need to carry a hint of the locale of the source in order to produce
the correct quotation glyphs. You would also need some blocking or
intercept mechanism to prevent the insertion of literal quote
characters via the keyboard … while somehow permitting users to
insert apostrophes … it seems like it could get pretty complicated
pretty quickly.
Or perhaps I’m completely misunderstanding the issue…
I think we’re all on the same page, it’s just uncharted territory.