1_debug_info =1;
2%   User Initialization file for the JED editor  -*- slang -*-
3%   If a user does not have a startup file in the user's home directory,
4%   JED will automatically load this from JED_LIBRARY.   Thus is is easier
5%   for a system manager to make defaults for all users.
6
7%   Do not edit this file directly.  Instead, copy it to your home
8%   directory (sys$login:jed.rc on VMS or $HOME/.jedrc on Unix) and edit
9%   the resulting file.
10
11%   To uncomment a line, simply remove any leading '%' characters.
12
13%   This file is divided into various sections.  The first section pertains
14%   to keybindings (e.g., Wordstar, Emacs, EDT, etc...) and the following
15%   sections pertain to user preferences such as default TAB sizes, line
16%   and column numbers on status line, colors, indentation style, etc...
17
18#ifdef KANJI
19%   SLang_code = SJIS;		% After Jed-j0.6.0, default code is japanese EUC.
20%   () = evalfile("kinsoku");
21%   () = evalfile("jp-samp");
22#endif
23
24if (BATCH == 0)
25{
26%----------------------------------------------------------------------
27%  Keybindings  (not loaded for batch processes)
28%
29%    Default bindings are Emacs-like with EDT emulation on Unix and VMS.
30%    For the PC, only Emacs is enabled by default.  If you do not want EDT
31%    bindings, simply coment out the appropriate line.
32%
33%    For Wordstar like bindings, comment out EDT and Emacs lines and
34%    uncomment Wordstar line.  A similar statement applies for BRIEF,
35%    and for Borland IDE-like bindings.
36%
37   () = evalfile("emacs");           % Emacs-like bindings
38%  () = evalfile("edt");             % EDT emulation
39%  () = evalfile ("ide");            % Borland IDE (see also doc/ide-mode.txt)
40%  () = evalfile ("brief");          % Brief Keybindings (MSDOS only!!)
41%  () = evalfile("wordstar");        % Wordstar (considered to be obsolete)
42%  Note: For EDT emulation, jed386.exe requires that the GOLD.COM TSR
43%        be loaded.  This TSR is available from space.mit.edu:/pub/davis/jed.
44
45% Some of the above emulations may set keys that conflict with access to
46% the menubars.  For example, emacs uses ESC-f to move by words.  The
47% next line causes the keys to activate the menus.  Comment this out
48% to preserve the emulation.
49   enable_menu_keys ();
50
51% If you use jed inside an XTerminal, you can use the mouse to access the
52% menus and move the cursor by uncommenting the next line:
53%  enable_xmouse ();
54
55% What should the Ctrl-H key do??
56%
57%  setkey ("bol", "^H");              % causes ^H to go to beg of line (EDT)
58%  setkey ("help_prefix", "^H");      % Uncomment to have Ctrl-H as help
59
60#ifdef XWINDOWS
61   % See xjed.txt for information regarding the delete key under X Windows.
62   %    x_set_keysym (0xFFFF, 0, "\e[3~");
63   %    setkey ("delete_char_cmd", "\e[3~");
64#endif
65   %  !!!!  ^S/^Q flow control problems !!!!
66   %  if you experience problems with JED suddenly going into search mode
67   %  for some reason then you are a victim of the emacs emulation's
68   %  binding of the ^S key to the search function.
69   %  TO prevent this from happening, either find out how to
70   %  prevent unwanted ^S/^Q characters or uncomment the next line:
71#ifdef UNIX
72   %enable_flow_control (1);
73#endif
74
75%----------------------------------------------------------------------
76%
77%   TAB key setting  -- by default, the tab key is bound to 'indent_line_cmd'.
78%                       If you want a real tab inserted, uncomment next line.
79%
80%   setkey("self_insert_cmd", "^I");
81
82%----------------------------------------------------------------------
83
84%  Initial help screen --- comment out to disable.
85%  Note that for the help to be valid, it must occur AFTER bindings are
86%  loaded.
87
88% help();               % Pops up a help window
89
90}  %Batch
91
92%%%%%%%%%%%%%%%% top menu bar %%%%%%%%%%%%%%%
93
94% To disable it, uncomment the next line.  Note that menus will still be
95% available but the menubar will be hidden when not in use.
96% enable_top_status_line (0);
97
98
99%----------------------------------------------------------------------
100% JED global variables  --- defaults shown
101%
102#ifdef VMS UNIX
103%USE_ANSI_COLORS = 1;   % if non-zero, JED will display colors on a color
104                        % terminal (Unix and VMS only) See doc/color.txt
105                        % for more discussion and look below for setting
106                        % the colors.
107#endif
108No_Backups = 0;         % If non-zero, backup files will not be created.
109Startup_With_File = 1;  % if greater then zero, force JED to prompt for a file
110                        %   if none is specified on the command line.  If
111                        %   negative, inhibit startup message.
112DISPLAY_TIME    = 1;    % non-zero enables the time to be displayed on
113                        %  status line, zero disables it.  If this value
114                        %  is -1, 24 hour time will be used.
115HIGHLIGHT	= 1;	% non-zero for region highlighting
116WANT_SYNTAX_HIGHLIGHT = 1;
117                        % Highlight syntax in C, Fortran, and TeX modes.
118                        % See section on colors
119                        %  below for choosing how to highlight.  On Unix and
120                        %  VMS systems, USE_ANSI_COLORS must also be non-zero.
121HORIZONTAL_PAN	= 20;	% if zero, no automatic panning.  If positive, only
122                        % the current line is panned.  If negative, pan window.
123#ifdef IBMPC_SYSTEM
124  HORIZONTAL_PAN  = -1; % For msdos, panning window might be better:
125#endif
126
127#ifdef IBMPC_SYSTEM
128  LINENUMBERS	= 2;	% A value of zero means do NOT display line number on
129#else                   % status line line.  A value of 1, means to display
130  LINENUMBERS	= 1;	% the linenumber. A value greater than 1 will also
131#endif			% display column number information.  I recommend a
132			% value of 2 only at high baud rates
133
134BLINK		= 1;	% if non zero, blink matching parenthesis
135TAB_DEFAULT	= 8;	% Tab size  (also try edit_tab_stops)
136WRAP		= 78;	% wrap column
137ADD_NEWLINE	= 1;	% add newline to file when writing if one not present
138IGNORE_BEEP	= 3;	% Beep terminal during error messages---
139                        %  1 == sound only, 2 = visible bell only, 3 = both
140_traceback	= 0;	% Non zero means dump traceback on S-Lang errors
141WRAP_INDENTS	= 0;	% Non zero indents next line after wrapping current.
142			%  Make this a 1 if you want indented text mode.
143CASE_SEARCH	= 0;    % zero turns off case sensitivity for
144                        % search functions, non-zero turns it on
145%KILL_LINE_FEATURE = 0;
146			% If non-zero, kill line will kill through end of the
147			%  line if Point is at the beginning of the line. For
148			%  emacs-like behavior, set this to zero.
149
150%---------------------------------------------------------------------------
151% C-mode variables:
152%---------------------------------------------------------------------------
153C_INDENT	= 3;	% amount of space to indent within block.
154C_BRACE		= 2;	% amount of space to indent brace
155C_BRA_NEWLINE   = 0;    % If non-zero, insert a newline first before inserting
156                        % a '{'.  Many C programmers like this to be 0. A zero
157			% value will force '{' to be on same line as insertion.
158			% The jed source code uses 1 for this variable.
159
160			% Note that in C mode, the keys '{' and '}' are bound
161			% to the commands 'brace_bra_cmd' and 'brace_ket_cmd'
162			% respectively.
163
164C_Colon_Offset = 1;     % Controls the indentation of case statements.
165C_CONTINUED_OFFSET = 2; % This variable controls the indentation of statements
166                        % that are continued onto the next line.
167%---------------------------------------------------------------------------
168
169%---------------------------------------------------------------------------
170% Ruby-mode
171%---------------------------------------------------------------------------
172
173% amount of space to indent within block.
174variable ruby_indent_level = 2;
175
176% Load ruby mode when openning .rb' files.
177autoload("ruby_mode", "ruby");
178add_mode_for_extension ("ruby", "rb");
179
180%---------------------------------------------------------------------------
181
182#ifdef MSDOS XWINDOWS MSWINDOWS
183% Alt-key handling.  Setting this variable controls how the
184% Alt key is handled.  By default it is set to 27 (Ascii ESCAPE).  This means
185% that any key pressed in conjunction with the alt key produces ESCAPE
186% followed by the key itself.  If ALT-X is pressed, an ESCAPE-X is generated.
187% Set it to zero to turn off Alt key processing.  On XWindow systems, setting
188% this to zero will cause the high bit to be set on the character.
189% ALT_CHAR = 27;
190
191#endif
192
193%    Mute (dead or accent) keys
194%    Valid Mute keys are:
195%      ^, ~, ', `, \d168 (ISO Diaeresis), \d180 (ISO Acute), and \".
196%    This means pressing this key then the key you want to accent yields
197%     the accented character.  If you do not know what this is, you do not
198%     need them.  By default, they are turned off.
199
200%mute_set_mute_keys (" ^ ~ ' ` \d168 \d180 \"  ");  % choose all or subset
201
202META_CHAR	= -1;	% All chars with hi bit set will self insert
203
204#ifdef KANJI
205%  DISPLAY_EIGHT_BIT = 1;
206#else
207# ifdef IBMPC_SYSTEM
208%  DISPLAY_EIGHT_BIT = 128;
209# else
210%  DISPLAY_EIGHT_BIT = 160; % Other systems assume ISO Latin 1
211# endif
212#endif
213
214% Color Settings
215% Look at jed/lib/color/README for a description of predefined color
216% schemes.
217set_color_scheme ("black3");
218%set_color_scheme ("blue2");
219
220#ifdef UNIX
221%
222%  Terminal type.  By default, on Unix termcap is used.  However, some
223%  (if not all) termcaps do not include AL, DL strings for vtxxx terminals.
224%
225%  True blue vt100 terminals cannot insert and delete lines so the AL and DL
226%  termcap entries are not appropriate for them.  However, almost no one
227%  uses a true vt100 terminal anymore but they set their TERM variable to
228%  vt100 just the same.  If you do not like the way your terminal scrolls,
229%  and it is more than a vt100, either set your TERM variable appropriately
230%  or add vt100 to the list below.
231%
232
233if (0)
234{
235   $1 = "vt102 vt200 vt220 vt300 vt320 vt420 xterms";
236   if (is_substr($1, getenv("TERM"))) set_term_vtxxx(0);
237}
238#endif
239
240
241%  Compiler interface --- uncomment one of the following:
242%
243compile_parse_error_function = "gcc";           % GNU compiler
244% compile_parse_error_function = "Ultrix_cc";     % cc on Ultrix
245% compile_parse_error_function = "bcc";           % Borlands BCC
246% compile_parse_error_function = "sun_acc";       % SunOS C++ and ACC
247% compile_parse_error_function = "hp_cc";         % HPUX cc
248
249
250%
251%  Hooks:  read jed/doc/hooks.sl for more information
252%
253define dired_hook ()
254{
255   local_unsetkey ("^K");
256   local_setkey ("dired_kill_line", "^K");
257}
258
259
260
261#ifdef KANJI
262%autoload("skk", "skk");
263%setkey("jskip_word", "\ef");
264%setkey("jbskip_word", "\eb");
265auto_file_code(TRUE);
266%KANJI_DETECT = 1;		% default: 2
267#ifdef CANNA
268autoload("canna_mode", "canna");
269setkey("canna_mode", "^\\"); % Already defined in $JED_ROOT/lib/canna.sl
270#endif
271
272#ifdef VMS UNIX		% UNIX default is EUC	already set in Jed-j
273%set_default_kanji_fileio_code(JIS);
274%set_kanji_fileio_code(JIS);
275%set_kanji_input_code(JIS);
276%set_kanji_display_code(JIS);
277%han_to_zen = TRUE;	% Hankaku -> Zenkaku Convert flag
278#else
279%set_default_kanji_fileio_code(SJIS);
280%set_kanji_fileio_code(SJIS);
281%set_kanji_input_code(SJIS);
282%set_kanji_display_code(SJIS);
283%han_to_zen = FALSE;
284#endif
285%KfioAuto = FALSE;
286%file_kanjicode_detect = FALSE;
287#endif
288%define text_mode_hook ()
289%{
290%}
291%
292%define fortran_hook ()
293%{
294%}
295%
296%define tex_mode_hook ()
297%{
298%}
299%
300%define c_mode_hook ()
301%{
302%}
303%
304%define mail_hook ()
305%{
306%   % See lib/sendmail.sl for other options.
307%   local_unsetkey ("^C");
308%   local_setkey ("mail_send", "^C^C");   %emacs-like
309%}
310%
311%define slang_mode_hook ()
312%{
313%}
314%
315%variable Tcl_Check_Syntax;
316%define tcl_mode_hook ()
317%{
318%   Tcl_Check_Syntax = 0;
319%}
320
321