home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / jed098-4.zip / JED / LIB / TEX.SL < prev    next >
Text File  |  1997-02-01  |  2KB  |  74 lines

  1. %
  2. %  simple TeX mode for JED
  3. %
  4. %  When tex mode is loaded, 'tex_mode_hook' is called.  This hook will allow
  5. %  users to customize the mode.  In particular, certain functions here have
  6. %  no keybindings, e.g., 'latex_do_environment'.  So, in your jed.rc file,
  7. %  add something like:
  8. %    define tex_mode_hook () {
  9. %       local_setkey ("latex_do_environment", "^C^E");
  10. %    }
  11. %  which binds the function to Ctrl-C Ctrl-E.
  12.  
  13.  
  14. % Load the common definitions if not already loaded.
  15. !if (is_defined ("tex_ldots")) () = evalfile ("texcom");
  16.  
  17.  
  18. $1 = "TeX-Mode";
  19.  
  20. !if (keymap_p($1))
  21. {
  22.    make_keymap ($1);
  23.    definekey ("tex_insert_quote", "\"", $1);
  24.    definekey ("tex_insert_quote", "'", $1);
  25.    definekey ("tex_blink_dollar", "$", $1);
  26.    definekey ("tex_ldots", ".", $1);
  27. }
  28.  
  29.  
  30. %!% Mode useful for editing TeX and LaTeX modes.  
  31. %!% Useful bindings:
  32. %!%  '"'  :  tex_insert_quote
  33. %!%  '\'' :  tex_insert_quote
  34. %!%  '$'  :  tex_blink_dollar
  35. %!%  '.'  :  tex_ldots.  Inserts a '.' except if preceeded by two dots.  In 
  36. %!%           this case, the dots are converted to \ldots.
  37. %!%
  38. %!%  When tex mode is loaded, 'tex_mode_hook' is called.  This hook will allow
  39. %!%  users to customize the mode.  In particular, certain functions here have
  40. %!%  no keybindings, e.g., 'latex_do_environment'.  So, in your jed.rc file,
  41. %!%  add something like:
  42. %!%    define tex_mode_hook () {
  43. %!%       local_setkey ("latex_do_environment", "^C^E");
  44. %!%    }
  45. %!%  which binds the function to Ctrl-C Ctrl-E.
  46. define tex_mode ()
  47. {
  48.    variable mode = "TeX";
  49.    variable texmode = "TeX-Mode";
  50.    use_keymap (texmode);
  51.    set_mode ("TeX", 0x1 | 0x20);
  52.    set_buffer_hook ("par_sep", "tex_paragraph_separator");
  53.    set_buffer_hook ("wrap_hook", "tex_wrap_hook");
  54.    use_syntax_table (texmode);
  55.    runhooks ("tex_mode_hook");
  56.    % This is called after the hook to give the hook a chance to load the
  57.    % abbrev table.
  58.    if (abbrev_table_p (mode)) use_abbrev_table (mode);
  59. }
  60.  
  61. %-----------------------------------------------------------%
  62. #ifdef 0
  63. define tex_info_find_node ()
  64. {
  65.    variable node;
  66.    
  67.    node = read_mini ("Node:", Null_String, Null_String);
  68.    !if (strlen (node)) return;
  69.    info_mode ();
  70.    info_find_node ("(latex)top");
  71.    info_find_node (strcat ("(latex)", node));
  72. }
  73. #endif
  74.