[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Texmacs-dev] shortcuts and big parantheses (done)
From: |
Nix N. Nix |
Subject: |
Re: [Texmacs-dev] shortcuts and big parantheses (done) |
Date: |
11 Apr 2003 12:11:17 -0600 |
On Fri, 2003-04-11 at 02:53, Joris van der Hoeven wrote:
> In fact, what we really need is a user option
> which defines the way brackets are entered in math-mode.
> In that case, you may create a mode such that typing '('
> would insert '()'. This also avoids the multiplication of
> all sorts of keyboard bindings.
That's true, however, having these bindings gives you the most flexible
control over your brackets.
> However, I am not yet settled about the way this should work.
> One might also imagine that '()' becomes part of
> the structure itself (and similarly for mathematical operations).
> Cf. MathML content markup vs. MathML presentation markup.
No ! '()' should never be part of the structure itself ! I should
always be able to remove one of '(' or ')'. Consider for example
writing a long derivation inside a table located in an \equation*. Your
right-hand-side is one big bracket that's growing larger and larger. As
you type, you realize it won't fit. So you highlight from a meaningful
point up to the end (the closing bracket included), cut, create a new
row underneath this one, paste. Now your opening bracket is in one
cell, but your closing bracket is in another.
To make a long story short, I don't think we should introduce structure
for bracket pairs. Brackets are fine the way they are, only
inconvenient, because of the left/right delimiter issue, especially in
the case of '||'. I once had structures for bracket pairs:
...
<assign|roundbrackets|<macro|x|<left|(><arg|x><right|)>>>
<assign|squarebrackets|<macro|x|<left|[><arg|x><right|]>>>
<assign|abses|<macro|x|<left|\|><arg|x><right|\|>>>
...
This sucked badly, because the left and right brackets were inaccessible
separately. That's why I went on the (make-brackets l r) quest, where,
with David's help, I was successful.
>
> > I have also added properly defined shortcuts for make-wide-under and
> > make-above and make-below.
>
> I have to think about a good keyboard prefix for make-wide-under.
> In any case, something starting with 'math'.
Have a look at my patch. I defined
"math:under" for (make-wide-under ...)
"math:brackets" for '()', '[]', etc.
"math:ubrackets" for '(]', '[)', '|>', and '<|'
"math:script" for (make-above) and (make-below)
You can always change the resolution of these wildcards.
Oh - one long-standing issue: The shortcut for "group" (M-G) doesn't
work, and hasn't worked for a while.