Thanks everyone. I evidently wasn't clear enough on where I'm at and what I 
was hoping for.

I know how to insert real curly quote characters into TiddlyWiki using my 
preferred input method (I'm on Linux actually, @springer), and I regularly 
do this. However, as with any input method that I'm aware of, it requires 
extra keypresses on top of straight quotes, which would be nice to avoid if 
possible. All of my other editing environments, from word processors to 
text editors to document preparation systems, support one of two ways of 
allowing you to type straight quotes but display curly quotes:

   - automatically upgrading straight quotes when *typing* them
   - automatically upgrading straight quotes when *rendering* them from 
   source, either during a compilation phase or when displaying the document

The first solution probably isn't too practical for TiddlyWiki, since as 
others have mentioned there is often need to type straight quotes. (In vim 
I can press ^V " for a straight quote with curly-quotes on, but that's not 
supported in CodeMirror.)

smartquotes.js and similar tools work at render time, and they have no 
difficulty avoiding accidentally curling quotation marks that are part of 
code. They automatically skip anything within HTML tags, scripts, <pre> 
blocks, and so on. They dynamically replace the quotation marks within the 
DOM after the page loads, so that the real characters are there afterwards. 
Another set of tools (used in tools like XeTeX, Sphinx, Jekyll, and some 
Markdown renderers) replace at compile time (in TiddlyWiki, this would 
presumably be during parsing).

@Anjar, that's a pretty slick solution with ::before and ::after, but not 
being able to copy the quotation marks is more annoying to me than having 
to spend a bit longer typing them at the start.

I think a solution that's better than what I'm currently doing needs to:

   - understand the semantic role of the quotation mark in the text so that 
   it knows not to replace quotes that are part of code;
   - work completely automatically, converting " characters to the 
   appropriate curly versions when a tiddler or other wikitext is wikified (if 
   it screws up occasionally, I can go back and put a raw quote that goes the 
   right direction in)
   - actually place the new character within the DOM so that it copies 
   correctly.

If we don't know of anything that exists and adding some feature that does 
this to TiddlyWiki doesn't seem workable, that's a fine answer. It just 
seems a little odd to me that TiddlyWiki is the only serious modern 
document tool I use that doesn't use a library like this.

On Wednesday, December 9, 2020 at 5:16:29 PM UTC-6 springer wrote:

> Soren, I surmise you're on Windows…
>
> But if Mac-users find this thread: 
> opt-[ gets you an opening curly-double-quote 
> opt-shift-[ gets you a closing curly-double-quote
> (for single-quote variants, it's the same as above but with end-bracket: 
> opt-] and opt-shift-] )
>
> There are good reasons not to want tiddlywiki to replace automatically, at 
> least for anyone who makes use of various quote-delimited parameters in 
> macros, etc. For example, Shiraz's <<alert src:"Alert text here">> can work 
> with complex text only when I can type something like: 
>
> <<alert src:"Don‘t yell “Fire!” in a crowded theater!">> 
>
> ;) -Springer
>
> On Sunday, December 6, 2020 at 9:01:51 PM UTC-5 Soren Bjornstad wrote:
>
>> I'm starting to get sick of using a four-button compose-key sequence to 
>> get “curly quotes” in my tiddlers. Has anyone thought about or tried 
>> integrating a library like smartquotes.js 
>> <https://github.com/kellym/smartquotes.js> into TiddlyWiki to 
>> automatically curl "straight quotes" in output? TiddlyWiki automatically 
>> upgrades hyphens to dashes, and if anything straight quotes are an even 
>> more egregious typographical mistake, so it feels like something TiddlyWiki 
>> should handle for me.
>>
>> I don't believe CodeMirror has any options related to upgrading the 
>> characters on insertion, but I do use CodeMirror so that would be an 
>> acceptable way too.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywiki+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/eda9c86c-3241-413e-a601-af52cac20ea4n%40googlegroups.com.

Reply via email to