emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

TeX input method


From: Stefan Monnier
Subject: TeX input method
Date: Mon, 02 Oct 2006 15:40:47 -0400
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

I like the TeX input method and tend to turn it on in ever more buffers.
But as I do that I start to bump into cases where it annoys me.
Overall it's a pretty discrete input method, but I recently got annoyed by
some of the keys it uses.

I'm sure other people have other pet peeves, but here are my two main
problems and suggestion to fix each.

- First problem: ~ is mapped to the non-breaking space.  It actually took me
  a while to understand why my ~ key didn't insert a tilde: TeX usually only
  fiddles with key sequences, so you get to see visually that thjere's
  something going on (because of the underscored text, and the echo area
  output).  I suggest to leave ~ alone and use `\ SPC' for nbsp.
  But then inserting \ can become a bit cumbersome (although C-q \ still
  works), so maybe this should be complemented by a mapping from `\ \' -> \.
  Here is the patch hunk I'm using right now in latin-ltx.el for that:

   @@ -901,7 +901,8 @@
     ("\\Bbb{Z}" ?ℤ)
     ("--" ?–)
     ("---" ?—)
   - ("~" ? )                           ; nbsp
   + ("\\\\" ?\\)
   + ("\\ " ? ) ;; ("~" ? )      ; nbsp ; Hijacking ~ would be too annoying.
     ("\\mu" ?μ)
     ("\\rho" ?ρ)
     ("\\mathscr{I}" ?ℐ)                ; moment of inertia

- Second problem: the TeX input method uses a leading { even though it's not
  necessary: all the corresponding chars can be input with a simpler
  key-sequence (just skip the { and }).  E.g. the german ß can be input with
   `{ \ s s }' or with `\ s s'.

  So I think we should remove those redundant key-sequences and thus free
  the { key.  See attached patch for that.


        Stefan


--- orig/leim/quail/latin-ltx.el
+++ mod/leim/quail/latin-ltx.el
@@ -45,17 +45,17 @@
 
 (quail-define-rules
  ("!`" ?¡)
- ("{\\pounds}" ?£) ("\\pounds" ?£)
- ("{\\S}" ?§) ("\\S" ?§)
+ ("\\pounds" ?£) ;; ("{\\pounds}" ?£)
+ ("\\S" ?§) ;; ("{\\S}" ?§)
  ("\\\"{}" ?¨)
- ("{\\copyright}" ?©) ("\\copyright" ?©)
+ ("\\copyright" ?©) ;; ("{\\copyright}" ?©)
  ("$^a$" ?ª)
  ("\\={}" ?¯)
  ("$\\pm$" ?±) ("\\pm" ?±)
  ("$^2$" ?²)
  ("$^3$" ?³)
  ("\\'{}" ?´)
- ("{\\P}" ?¶) ("\\P" ?¶)
+ ("\\P" ?¶) ;; ("{\\P}" ?¶)
  ;; Fixme: Yudit has the equivalent of ("\\cdot" ?⋅), for U+22C5, DOT
  ;; OPERATOR, whereas · is MIDDLE DOT.  JadeTeX translates both to
  ;; \cdot.
@@ -71,8 +71,8 @@
  ("\\~{A}" ?Ã)  ("\\~A" ?Ã)
  ("\\\"{A}" ?Ä)  ("\\\"A" ?Ä)
  ("\\\k{A}" ?Ą)
- ("{\\AA}" ?Å) ("\\AA" ?Å)
- ("{\\AE}" ?Æ) ("\\AE" ?Æ)
+ ("\\AA" ?Å) ;; ("{\\AA}" ?Å)
+ ("\\AE" ?Æ) ;; ("{\\AE}" ?Æ)
  ("\\c{C}" ?Ç)  ("\\cC" ?Ç)
  ("\\`{E}" ?È)  ("\\`E" ?È)
  ("\\'{E}" ?É)  ("\\'E" ?É)
@@ -93,14 +93,14 @@
  ("\\\"{O}" ?Ö)  ("\\\"O" ?Ö)
  ("\\\k{O}" ?Ǫ)
  ("$\\times$" ?×) ("\\times" ?×)
- ("{\\O}" ?Ø) ("\\O" ?Ø)
+ ("\\O" ?Ø) ;; ("{\\O}" ?Ø)
  ("\\`{U}" ?Ù) ("\\`U" ?Ù)
  ("\\'{U}" ?Ú) ("\\'U" ?Ú)
  ("\\^{U}" ?Û) ("\\^U" ?Û)
  ("\\\"{U}" ?Ü) ("\\\"U" ?Ü)
  ("\\\k{U}" ?Ų)
  ("\\'{Y}" ?Ý) ("\\'Y" ?Ý)
- ("{\\ss}" ?ß) ("\\ss" ?ß)
+ ("\\ss" ?ß) ;; ("{\\ss}" ?ß)
 
  ("\\`{a}" ?à) ("\\`a" ?à)
  ("\\'{a}" ?á) ("\\'a" ?á)
@@ -108,8 +108,8 @@
  ("\\~{a}" ?ã) ("\\~a" ?ã)
  ("\\\"{a}" ?ä) ("\\\"a" ?ä)
  ("\\\k{a}" ?ą)
- ("{\\aa}" ?å) ("\\aa" ?å)
- ("{\\ae}" ?æ) ("\\ae" ?æ)
+ ("\\aa" ?å) ;; ("{\\aa}" ?å)
+ ("\\ae" ?æ) ;; ("{\\ae}" ?æ)
  ("\\c{c}" ?ç) ("\\cc" ?ç)
  ("\\`{e}" ?è) ("\\`e" ?è)
  ("\\'{e}" ?é) ("\\'e" ?é)
@@ -130,7 +130,7 @@
  ("\\\"{o}" ?ö) ("\\\"o" ?ö)
  ("\\\k{o}" ?ǫ)
  ("$\\div$" ?÷) ("\\div" ?÷)
- ("{\\o}" ?ø) ("\\o" ?ø)
+ ("\\o" ?ø) ;; ("{\\o}" ?ø)
  ("\\`{u}" ?ù) ("\\`u" ?ù)
  ("\\'{u}" ?ú) ("\\'u" ?ú)
  ("\\^{u}" ?û) ("\\^u" ?û)
@@ -181,7 +181,7 @@
  ("\\u{\\i}" ?ĭ) ("\\ui" ?ĭ)
 
  ("\\.{I}" ?İ) ("\\.I" ?İ)
- ("{\\i}" ?ı) ("\\i" ?ı)
+ ("\\i" ?ı) ;; ("{\\i}" ?ı)
  ("\\^{J}" ?Ĵ) ("\\^J" ?Ĵ)
  ("\\^{\\j}" ?ĵ) ("\\^j" ?ĵ)
  ("\\c{K}" ?Ķ) ("\\cK" ?Ķ)
@@ -191,8 +191,8 @@
  ("\\c{L}" ?Ļ) ("\\cL" ?Ļ)
  ("\\c{l}" ?ļ) ("\\cl" ?ļ)
 
- ("{\\L}" ?Ł) ("\\L" ?Ł)
- ("{\\l}" ?ł) ("\\l" ?ł)
+ ("\\L" ?Ł) ;; ("{\\L}" ?Ł)
+ ("\\l" ?ł) ;; ("{\\l}" ?ł)
  ("\\'{N}" ?Ń) ("\\'N" ?Ń)
  ("\\'{n}" ?ń) ("\\'n" ?ń)
  ("\\c{N}" ?Ņ) ("\\cN" ?Ņ)
@@ -206,8 +206,8 @@
 
  ("\\H{O}" ?Ő) ("\\HO" ?Ő)
  ("\\U{o}" ?ő) ("\\Uo" ?ő)
- ("{\\OE}" ?Œ) ("\\OE" ?Œ)
- ("{\\oe}" ?œ) ("\\oe" ?œ)
+ ("\\OE" ?Œ) ;; ("{\\OE}" ?Œ)
+ ("\\oe" ?œ) ;; ("{\\oe}" ?œ)
  ("\\'{R}" ?Ŕ) ("\\'R" ?Ŕ)
  ("\\'{r}" ?ŕ) ("\\'r" ?ŕ)
  ("\\c{R}" ?Ŗ) ("\\cR" ?Ŗ)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]