home *** CD-ROM | disk | FTP | other *** search
/ Internet File Formats / InternetFileFormatsCD.bin / text / latex / mac / alpha60.hqx / Tcl / SystemCode / latexKeys.tcl < prev    next >
Encoding:
Text File  |  1995-06-29  |  4.3 KB  |  142 lines

  1. #############################################################################
  2. #############################################################################
  3. #
  4. # latexKeys.tcl (called from latex.tcl)
  5. #
  6. # Special LaTeX key bindings (see latexMenu.tcl and latexSmart.tcl for
  7. #                             additional bindings)
  8. #
  9. # abbreviations:  <o> = option, <z> = control, <s> = shift, <c> = command
  10. #
  11. #############################################################################
  12. #
  13. # Author:  Tom Scavo (trscavo@syr.edu)
  14. #
  15. #############################################################################
  16. #############################################################################
  17.  
  18. # Initial binding of LaTeX command keys.
  19. proc bindLaTeXKeys {} {
  20.     bindKeypadKeys
  21.     shadowUseDollarSigns
  22.     bindGreekKeys "bind"
  23. }
  24.  
  25. proc bindKeypadKeys {} {
  26.     # Completely take over the keypad:
  27.     set mods {<> <c> <o> <z> <s> <co> <cz> <cs> <oz> <os> <zs> \
  28.               <coz> <cos> <ozs> <cozs>}
  29.     foreach mod $mods {
  30.         bind Kpad0 $mod dummyTeX "TeX"
  31.         bind Kpad1 $mod dummyTeX "TeX"
  32.         bind Kpad2 $mod dummyTeX "TeX"
  33.         bind Kpad3 $mod dummyTeX "TeX"
  34.         bind Kpad4 $mod dummyTeX "TeX"
  35.         bind Kpad5 $mod dummyTeX "TeX"
  36.         bind Kpad6 $mod dummyTeX "TeX"
  37.         bind Kpad7 $mod dummyTeX "TeX"
  38.         bind Kpad8 $mod dummyTeX "TeX"
  39.         bind Kpad9 $mod dummyTeX "TeX"
  40.         bind Kpad= $mod dummyTeX "TeX"
  41.         bind Kpad/ $mod dummyTeX "TeX"
  42.         bind Kpad* $mod dummyTeX "TeX"
  43.         bind Kpad- $mod dummyTeX "TeX"
  44.         bind Kpad+ $mod dummyTeX "TeX"
  45.         bind Enter $mod dummyTeX "TeX"
  46.         bind Kpad. $mod dummyTeX "TeX"
  47.     }
  48.     bind Kpad8 prevSubsection "TeX"
  49.     bind Kpad2 nextSubsection "TeX"
  50.     bind Kpad8 <s> prevSubsectionSelect "TeX"
  51.     bind Kpad2 <s> nextSubsectionSelect "TeX"
  52.     bind Kpad8 <c> prevSection "TeX"
  53.     bind Kpad2 <c> nextSection "TeX"
  54.     bind Kpad8 <sc> prevSectionSelect "TeX"
  55.     bind Kpad2 <sc> nextSectionSelect "TeX"
  56.     bind Kpad4 prevCommand "TeX"
  57.     bind Kpad6 nextCommand "TeX"
  58.     bind Kpad4 <s> prevCommandSelect "TeX"
  59.     bind Kpad6 <s> nextCommandSelect "TeX"
  60.     bind Kpad4 <so> prevCommandSelectWithArgs "TeX"
  61.     bind Kpad6 <so> nextCommandSelectWithArgs "TeX"
  62.     bind Kpad4 <c> prevEnvironment "TeX"
  63.     bind Kpad6 <c> nextEnvironment "TeX"
  64.     bind Kpad4 <sc> prevEnvironmentSelect "TeX"
  65.     bind Kpad6 <sc> nextEnvironmentSelect "TeX"
  66. }
  67.  
  68. # The proc 'shadowUseDollarSigns' is executed automatically whenever 
  69. # the flag 'useDollarSigns' is altered.
  70. trace variable TeXmodeVars(useDollarSigns) w shadowUseDollarSigns
  71. proc shadowUseDollarSigns {{name1 {}} {name2 {}} {op w}} {
  72.     global TeXmodeVars
  73.     if {$TeXmodeVars(useDollarSigns)} then {
  74.         if {$TeXmodeVars(expertMode) == 0} then {
  75.             alertnote "Dollar signs are not recommended unless the flag\
  76.                        \'expertMode\' is enabled."
  77.         }
  78.         menu -M TeX -n {Math Modes} -m -p interpretMenuItem {
  79.             {<B<O/4TeX math}
  80.             {<B<O<I/4TeX displaymath}
  81.             "(-"
  82.             {LaTeX math}
  83.             {LaTeX displaymath}
  84.         }
  85.     } else {
  86.         menu -M TeX -n {Math Modes} -m -p interpretMenuItem {
  87.             {TeX math}
  88.             {TeX displaymath}
  89.             "(-"
  90.             {<B<O/4LaTeX math}
  91.             {<B<O<I/4LaTeX displaymath}
  92.         }
  93.     }
  94. }
  95.  
  96. proc bindGreekKeys {func} {
  97.     eval $func    'm'    <z>    prefixChar "TeX"
  98.     eval $func    'a'    <M>    alpha    "TeX"
  99.     eval $func    'b'    <M>    beta    "TeX"
  100.     eval $func    'c'    <M>    chi    "TeX"
  101.     eval $func    'd'    <M>    delta    "TeX"
  102.     eval $func    'd'    <sM>    Delta    "TeX"
  103.     eval $func    'e'    <M>    epsilon    "TeX"
  104.     eval $func    'e'    <zM>    varepsilon    "TeX"
  105.     eval $func    'f'    <M>    phi    "TeX"
  106.     eval $func    'f'    <sM>    Phi    "TeX"
  107.     eval $func    'f'    <zM>    varphi    "TeX"
  108.     eval $func    'g'    <M>    gamma    "TeX"
  109.     eval $func    'g'    <sM>    Gamma    "TeX"
  110.     eval $func    'h'    <M>    eta    "TeX"
  111.     eval $func    'i'    <M>    iota    "TeX"
  112.     eval $func    'k'    <M>    kappa    "TeX"
  113.     eval $func    'l'    <M>    lambda    "TeX"
  114.     eval $func    'l'    <sM>    Lambda    "TeX"
  115.     eval $func    'm'    <M>    mu    "TeX"
  116.     eval $func    'n'    <M>    nu    "TeX"
  117.     eval $func    'o'    <M>    omicron    "TeX"
  118.     eval $func    'p'    <M>    pi    "TeX"
  119.     eval $func    'p'    <sM>    Pi    "TeX"
  120.     eval $func    'p'    <zM>    varpi    "TeX"
  121.     eval $func    'q'    <M>    theta    "TeX"
  122.     eval $func    'q'    <sM>    Theta    "TeX"
  123.     eval $func    'q'    <zM>    vartheta    "TeX"
  124.     eval $func    'r'    <M>    rho    "TeX"
  125.     eval $func    'r'    <zM>    varrho    "TeX"
  126.     eval $func    's'    <M>    sigma    "TeX"
  127.     eval $func    's'    <sM>    Sigma    "TeX"
  128.     eval $func    's'    <zM>    varsigma    "TeX"
  129.     eval $func    't'    <M>    tau    "TeX"
  130.     eval $func    'u'    <M>    upsilon    "TeX"
  131.     eval $func    'u'    <sM>    Upsilon    "TeX"
  132.     eval $func    'v'    <M>    nabla    "TeX"
  133.     eval $func    'w'    <M>    omega    "TeX"
  134.     eval $func    'w'    <sM>    Omega    "TeX"
  135.     eval $func    'x'    <M>    xi    "TeX"
  136.     eval $func    'x'    <sM>    Xi    "TeX"
  137.     eval $func    'y'    <M>    psi    "TeX"
  138.     eval $func    'y'    <sM>    Psi    "TeX"
  139.     eval $func    'z'    <M>    zeta    "TeX"
  140. }
  141.  
  142.