On 21/07/2013 10:56 a.m., Steve Litt wrote:
Hi all,

First of all, thank you for adding Character Styles in LyX 1.4.x in
2006. As far as I'm concerned, character styles was the last thing LyX
needed to be complete.

Now I'd like to ask another favor: a quicker way to apply character
styles. As it stands now,

* Highlight
* rightclick
* Select Text Style to pop up the text style menu
* Select your character style off that popup.

You can also do it with Edit->Text_Style, but that's no easier.

Besides being long and drawn out, unless you handle your mouse cursor
*just right*, the Text Styles submenu closes and you need to
re-highlight "Text Menu" and try again. You can make it a little more
foolproof by actually *clicking* "Text Menu", but it's still way too
many steps for something you often have to do twice per sentence for
twenty sentences in a row.

You can also do it with the keyboard:

* Highlight
* Alt+E then S
* Keep hitting Tab until it highlights the right character style.

This is actually much better, but it's still enough fidgeting to make
you forget what you were writing. There's no alternative facilitating
going backward if you tab too far, at least without taking your hands
off home position. And tabbing around another time is complicated by
the fact that true character styles are intermingled with Capitalize,
Uppercase, Lowercase, and "Customized", which is really just a form of
non-ERT fingerpainting and shouldn't be done in a styles-based (or
WYSIWYM, if you prefer) document.

At a minimum, character styles would sure be easier if completely
unrelated functions Capitalize, Uppercase, Lowercase, and Customized
were removed from that menu. Personally, I'd like to get "Dissolve Text
Style" off that menu for a million different reasons, including risk of
accidental dissolution, easier to apply text styles, and the fact that
the few time one actually needs to dissolve a text style, one can mouse
inside and cut, use the backspace key to delete the inset, then paste.
That's a horribly inefficient process, but I can't imagine anyone
dissolving text styles often, so it doesn't cost much. In contrast, I
often need to do five character style applications per paragraph.

I'm not being a prima donna here. I've been using this interface since
2006, trying to get used to it. But it's not getting any easier, and in
fact it slows me down enough that I lose my train of thought, and
that's one of the worst thing an authoring tool can do to its user.

You know what I'd like to see? For starters, put Customize, Capitalize,
Uppercase, Lowercase, and Dissolve somewhere else, leaving only true
character styles on the Alt+E,S menu. Second, code the Alt+E,S menu so
typing a letter would move the highlight to the next character
style beginning with that letter. That would start to make applying
character styles a reflex that doesn't interfere with thought about
content. For extra credit, have a single hotkey bring up the floating
menu of character styles.

Believe me, if you use character styles in the same way they're used in
books of the Unleashed series, the For Dummies series, O'Reilly books,
or even a well written howto, making the changes I suggest here would
relieve much of the drudgery and distraction from authoring.

Thanks,

SteveT

Steve Litt                *  http://www.troubleshooters.com/
Troubleshooting Training  *  Human Performance


Hi Steve,

LyX comes with a logical markup module (LyX 2.0.6/Resources/layouts/logicalmkup.module). This provides some flex insets giving character styles like 'noun', 'strong' and 'code', and is worth looking at in a text editor. You could define your own styles analogously and then attach them to shortcut keys. For instance, to use the 'code' style in that module, I've assigned (Tools > Preferences > Editing > Shortcuts then click New) the shortcut Ctrl+Alt+C to

flex-insert Code

Now typing Ctrl+Alt+C places the cursor in a Code character style inset.

I find it convenient to also have a shortcut to jump out of an inset. The right arrow key is a bit of a stretch and I like to have something lying more naturally under the fingers. I use Ctrl+J (J for Jump) for that purpose, assigned to

command-sequence line-end; char-right; toggle-inset

Andrew

Reply via email to