1                         Initialization file for JOE
2                                Standard Joe
3
4 JOE looks for this file in:
5	1 - $HOME/.joerc
6	2 - @JOERC@/joerc
7
8 This file can include other files by placing the following include command
9 in the first column:
10
11 :include filename
12
13 FIRST SECTION: Default global options (these options can also be specified
14 on the command line.  Also the NOXON, LINES, COLUMNS, DOPADDING and BAUD
15 options can be specified in environment variables):
16
17 Put each option you want set in the first column:
18
19 -option	Sets the option
20 --option	Clears the option
21
22-help_is_utf8	Set if help text is in UTF-8 format.  Leave clear if it's a raw 8-bit format.
23
24 -mid		Cursor is recentered when scrolling is necessary
25 -left nn	Amount to jump left when scrolling is necessary (-1 for 1/4 width)
26 -right nn	Amount to jump right when scrolling is necessary (-1 for 1/4 width)
27
28 -marking	Text between ^KB and cursor is highlighted (use with -lightoff)
29
30 -asis		Characters 128 - 255 shown as-is
31
32 -force		Force final newline when files are saved
33
34 -nolocks	If you don't want file locks to be used
35
36 -nomodcheck	Disable periodic checking of disk file newer than buffer
37		(this checking happens on save even with this option).
38
39 -nocurdir	Do not prompt with current directory
40
41 -nobackups	If you don't want backup files to be created
42
43 -nodeadjoe	If you don't want DEADJOE files to be created
44
45 -break_hardlinks
46		Delete file before writing, to break hard links
47		(but don't break symbolic links).
48
49 -break_links
50		Delete file before writing, to break hard links
51		and symbolic links.
52
53
54 -lightoff	Turn off highlighting after block copy or move
55
56 -exask		^KX always confirms file name
57
58 -beep		Beep on errors and when cursor goes past extremes
59
60 -nosta		Disable top-most status line
61
62 -keepup	%k and %c status line escape sequences updated frequently
63
64 -pg nnn	No. lines to keep for PgUp/PgDn
65
66 -undo_keep nnn	Number of undo records to keep.  0 for infinite.
67
68 -csmode	^KF after a pervious search does a ^L instead
69
70 -backpath path
71		Directory to store backup files (one space between
72		'backpath' and the 'path', no trailing spaces or comments
73		after the path).
74
75 -floatmouse	Clicking past end of line moves the cursor past the end
76
77 -rtbutton	Use the right mouse button for action, instead of the left
78
79 -nonotice	Disable copyright notice
80
81 -noexmsg	Disable exiting message ("File not changed so no update needed")
82
83 -noxon		Attempt to turn off ^S/^Q processing
84
85 -orphan	Put extra files given on command line in orphaned buffers
86		instead of in windows
87
88 -dopadding	Output pad characters (for when there is no tty handshaking)
89
90 -lines nnn	Set no. screen lines
91
92 -baud nnn	Set baud rate for terminal optimizations
93
94 -columns nnn	Set no. screen columns
95
96 -helpon	Start with help on
97
98 -skiptop nnn	Don't use top nnn lines of the screen
99
100-notite         Don't send terminal initialization and termination strings:
101                prevents restoration of screen on exit.
102
103 -nolinefeeds	Prevent sending linefeeds to preserve screen history in terminal
104                emulator's scroll-back buffer.
105
106 -usetabs       Use tabs to help optimize screen update.
107
108-assume_color	Assume terminal has ANSI color support even if termcap/terminfo entry
109		says that it doesn't.  This only applies if the terminal otherwise
110		looks like an ANSI terminal (support bold and capability starts with
111		ESC [).
112
113-assume_256color
114		Assume terminal has xterm 256 color support (ESC [ 38 ; 5 ; NNN m and
115                ESC [ 48 ; 5 ; NNN m).
116
117-guess_non_utf8	Allow guess of non-UTF-8 file encoding in a UTF-8 locale.
118
119 -guess_utf8	Allow guess of UTF-8 file encoding in non-UTF-8 locale.
120
121-guess_utf16	Allow guess of UTF-16 encoding
122
123-guess_crlf     Automatically detect MS-DOS files and set -crlf appropriately
124
125-guess_indent	Guess indent character (tab or space).
126
127-menu_above	Position menu/list above prompt when enabled.  Otherwise position
128		below prompt.
129
130-transpose	Transpose rows with columns in all menus.
131
132 -menu_explorer	Stay in menu system when a directory is selected (otherwise
133                directory is added to path and menu is closed).
134
135 -menu_jump	Jump into file selection menu when tab is hit (otherwise, menu
136		comes up, but cursor stays in file name prompt).
137
138 -notagsmenu	Disable tags file search menu
139
140 -icase         Search is case insensitive by default.
141
142 -wrap          Search wraps
143
144 -autoswap	Swap markb with markk when necessary
145
146-joe_state     Use ~/.joe_state file
147
148 -mouse		Enable xterm mouse support.  When enabled, left-click will
149		position the cursor and left-click-drag will select blocks
150		For normal xterm cut and paste, hold the shift key down.
151
152 -joexterm	If you are using XTerm version 212 or higher, and if it was
153		configured with --enable-paste64, set this flag: it allows
154		mouse cut & paste to work properly (text selected with the
155		mouse can be pasted into other application, and middle
156		button clicks paste into JOE).
157
158-brpaste	When JOE starts, send command to the terminal emulator that
159		enables "bracketed paste mode" (but only if the terminal
160		seems to have the ANSI command set).  In this mode, text
161		pasted into the window is bracketed with ESC [ 2 0 0 ~ and
162		ESC [ 2 0 1 ~.
163
164-pastehack	If keyboard input comes in as one block assume it's a mouse
165		paste and disable autoindent and wordwrap.
166
167 -square	Rectangular block mode
168
169 -colors scheme
170		Set the default color scheme
171
172-restore	Restore previous cursor position when files are opened
173
174-search_prompting
175		Search prompts with previous search request.
176
177 -regex		Search uses standard regular expression format (otherwise it uses
178		JOE format where all special characters have to be escaped).
179
180 Status line definition strings.  -lmsg defines the left-justified string and
181 -rmsg defines the right-justified string.  The first character of -rmsg is
182 the background fill character.  The following escape sequences can be used
183 in these strings:
184
185  %t  12 hour time
186  %u  24 hour time
187  %T  O for overtype mode, I for insert mode
188  %W  W if wordwrap is enabled
189  %I  A if autoindent is enabled
190  %X  Rectangle mode indicator
191  %n  File name
192  %m  '(Modified)' if file has been changed
193  %*  '*' if file has been changed
194  %R  Read-only indicator
195  %r  Row (line) number
196  %c  Column number
197  %o  Byte offset into file
198  %O  Byte offset into file in hex
199  %a  Ascii value of character under cursor
200  %A  Ascii value of character under cursor in hex
201  %w  Width of character under cursor
202  %p  Percent of file cursor is at
203  %l  No. lines in file
204  %k  Entered prefix keys
205  %S  '*SHELL*' if there is a shell running in window
206  %M  Macro recording message
207  %y  Syntax
208  %e  Encoding
209  %x  Context (first non-indented line going backwards)
210  %dd day
211  %dm month
212  %dY year
213  %Ename%  value of environment variable
214  %Tname%  value of option (ON or OFF for boolean options)
215
216 These formatting escape sequences may also be given:
217
218  \i  Inverse
219  \u  Underline
220  \b  Bold
221  \d  Dim
222  \f  Blink
223  \l  Italic
224
225-lmsg \i%k%T%W%I%X %n %m%y%R %M %x
226-rmsg  %S 列 %4r 行 %3c %t  Ctrl-K H 使用說明
227-smsg ** Line %r Col %c Offset %o(0x%O) %e %a(0x%A) Width %w **
228-zmsg ** Line %r Col %c Offset %o(0x%O) **
229-xmsg \i Joe's Own Editor %v (%b) ** Type \bCtrl-K Q\b to exit or \bCtrl-K H\b for help **\i
230
231 Key sequence hints which are displayed in various prompts.
232-aborthint ^C
233-helphint ^K H
234
235 SECOND SECTION: File name dependant local option settings:
236
237 Each line with '*' in the first column indicates the modes which should be
238 set for files whose name matches the regular expression.  If more than one
239 regular expression matches the file name, then the last matching one is
240 chosen.
241
242 A file contents regular expression may also be specified on a separate line
243 with '+regex'.  If this regular expresssion is given, then both the file name
244 regex and the file contents regex must match for the options to apply.
245
246 Here are the modes which can be set:
247
248	-cpara >#!;*/%
249				Characters which can indent paragraphs.
250
251	-cnotpara .
252				Characters which begin non-paragraph lines.
253
254	-encoding name
255				Set file coding (for example: utf-8, iso-8859-15)
256
257	-syntax name
258				Specify syntax (syntax file called
259				'name.jsf' will be loaded)
260
261	-hex			Hex editor mode
262
263	-highlight		Enable highlighting
264
265	-smarthome		Home key first moves cursor to beginning of line,
266				then if hit again, to first non-blank character.
267
268	-indentfirst		Smart home goes to first non-blank character first,
269				instead of going the beginning of line first.
270
271	-smartbacks		Backspace key deletes 'istep' number of
272				'indentc's if cursor is at first non-space
273				character.
274
275	-tab nnn		Tab width
276
277	-indentc nnn		Indentation character (32 for space, 9 for tab)
278
279	-istep nnn		Number of indentation columns
280
281	-spaces			TAB inserts spaces instead of tabs.
282
283	-purify			Fix indentation if necessary for rindent, lindent and backs
284				(for example if indentation uses a mix of tabs and spaces,
285				and indentc is space, indentation will be converted to all
286				spaces).
287
288	-crlf			File uses CR-LF at ends of lines
289
290	-wordwrap		Wordwrap
291
292	-nobackup		If you don't want backup file to be created
293
294	-autoindent		Auto indent
295
296	-overwrite		Overtype mode
297
298        -picture                Picture mode (right arrow can go past end of lines)
299
300	-lmargin nnn		Left margin
301
302	-rmargin nnn		Right margin
303
304	-flowed			Put one space after intermediate paragraph lines
305				for support of flowed text.
306
307
308	-french			One space after '.', '?' and '!' for wordwrap
309				and paragraph reformat instead of two.  Joe
310				does not change the spacing you give, but
311				sometimes it must put spacing in itself.  This
312				selects how much is inserted.
313
314	-linums			Enable line numbers on each line
315
316	-hiline			Highlight current line
317
318	-rdonly			File is read-only
319
320	-keymap name
321				Keymap to use if not 'main'
322
323	-lmsg			Status line definition strings-
324	-rmsg			see previous section for more info.
325
326	-mfirst macro
327				Macro to execute on first modification
328	-mnew macro
329				Macro to execute when new files are loaded
330	-mold macro
331				Macro to execute when existing files are loaded
332	-msnew macro
333				Macro to execute when new files are saved
334	-msold macro
335				Macro to execute when existing files are saved
336
337	Macros for the above options are in the same format as in the key
338	binding section below- but without the key name strings.
339
340	These define the language syntax for ^G (goto matching delimiter):
341
342	-highlighter_context	Use the highlighter context for ^G
343
344	-single_quoted		Text between '  ' should be ignored (this is
345				not good for regular text since ' is
346				normally used alone as an apostrophe)
347
348	-no_double_quoted	Text between " " should not be ignored (useful
349				for TeX).
350
351	-c_comment		Text between /* */ should be ignored
352
353	-cpp_comment		Text after // should be ignored
354
355	-pound_comment		Text after # should be ignored
356
357	-vhdl_comment		Text after -- should be ignored
358
359	-semi_comment		Text after ; should be ignored
360
361	-text_delimiters begin=end:if=elif=else=endif
362
363				Define word delimiters
364
365 Default local options
366-highlight
367-istep 4
368
369 Perforce macro: use this macro (put in first column) to have joe "p4 edit"
370 a file you're about to change.
371
372 -mfirst if,"rdonly && joe(sys,\"p4 edit \",name,rtn)",then,mode,"o",msg,"executed \"p4 edit ",name,"\"",rtn,endif
373
374 -mfirst if,"rdonly && joe(sys,\"p4 edit \",name,rtn)",then,reload,msg,"executed \"p4 edit ",name,"\"",rtn,endif
375
376 File type table is now in a separate file.  You can copy this file to ~/.joe and customize it.
377
378:include ftyperc
379
380 SECOND and 1/2 SECTION: Option menu layout
381
382	:defmenu name [macro]
383			Defines a menu.
384			The macro here is executed when the user hits backspace.
385
386	macro string comment
387			A menu entry.  Macro is any JOE macro- see "Macros:"
388			below. String is the label to be used for the macro
389			in the menu.  It is in the same format as the -lmsg
390			and -rmsg options above.
391
392			Two whitespace characters in a row begins a comment.
393			Use '% ' for a leading space in the string.
394
395:defmenu root
396mode,"overwrite",rtn	T Overtype %Zoverwrite%
397mode,"hex",rtn	' Hex edit mode
398mode,"autoindent",rtn	I Autoindent %Zautoindent%
399mode,"wordwrap",rtn	W Word wrap %Zwordwrap%
400mode,"tab",rtn	D Tab width %Ztab%
401mode,"lmargin",rtn	L Left margin %Zlmargin%
402mode,"rmargin",rtn	R Right margin %Zrmargin%
403mode,"square",rtn	X Column mode %Zsquare%
404mode,"indentc",rtn	% % Indent char %Zindentc%
405mode,"istep",rtn	% % Indent step %Zistep%
406menu,"indent",rtn	= Indent select
407mode,"highlight",rtn	H Highlighting %Zhighlight%
408mode,"crlf",rtn	Z CR-LF/MS-DOS %Zcrlf%
409mode,"linums",rtn	N Line numbers %Zlinums%
410mode,"beep",rtn	B Beep %Zbeep%
411mode,"rdonly",rtn	O Read only %Zrdonly%
412mode,"syntax",rtn	Y Syntax
413mode,"encoding",rtn	E Encoding
414mode,"asis",rtn	% % Meta chars as-is
415mode,"language",rtn	V Language
416mode,"picture",rtn	P picture %Zpicture%
417mode,"type",rtn		F File type [%Ztype%]
418mode,"title",rtn	C Context %Ztitle%
419menu,"more-options",rtn	  % % More options...
420
421:defmenu more-options menu,"root",rtn
422menu,"^G",rtn	% % ^G options
423menu,"search",rtn	% % search options
424menu,"paragraph",rtn	% % paragraph options
425menu,"file",rtn	% % file options
426menu,"menu",rtn	% % menu options
427menu,"global",rtn	% % global options
428menu,"cursor",rtn	% % cursor options
429menu,"marking",rtn	% % marking options
430menu,"tab",rtn	% % tab/indent options
431
432:defmenu indent menu,"root",rtn
433mode,"istep",rtn,"1",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 1, Indent character = 32",rtn	1 Space
434mode,"istep",rtn,"2",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 2, Indent character = 32",rtn	2 Spaces
435mode,"istep",rtn,"3",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 3, Indent character = 32",rtn	3 Spaces
436mode,"istep",rtn,"4",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 4, Indent character = 32",rtn	4 Spaces
437mode,"istep",rtn,"5",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 5, Indent character = 32",rtn	5 Spaces
438mode,"istep",rtn,"8",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 8, Indent character = 32",rtn	8 Spaces
439mode,"istep",rtn,"10",rtn,mode,"indentc",rtn,"32",rtn,msg,"Indent step = 10, Indent character = 32",rtn	0 Ten
440mode,"istep",rtn,"1",rtn,mode,"indentc",rtn,"9",rtn,msg,"Indent step = 1, Indent character = 9",rtn	T Tab
441
442:defmenu menu menu,"more-options",rtn
443mode,"menu_explorer",rtn	% % Menu explorer %Zmenu_explorer%
444mode,"menu_above",rtn	% % Menu position %Zmenu_above%
445mode,"menu_jump",rtn	% % Jump into menu %Zmenu_jump%
446mode,"transpose",rtn	% % Transpose menus %Ztranspose%
447
448:defmenu ^G menu,"more-options",rtn
449mode,"highlighter_context",rtn	% % ^G uses highlighter context %Zhighlighter_context%
450mode,"single_quoted",rtn	% % ^G ignores '...' %Zsingle_quoted%
451mode,"no_double_quoted",rtn	% % ^G no ignore "..." %Zno_double_quoted%
452mode,"c_comment",rtn	% % ^G ignores /*...*/ %Zc_comment%
453mode,"cpp_comment",rtn	% % ^G ignores //... %Zcpp_comment%
454mode,"pound_comment",rtn	% % ^G ignores #... %Zpound_comment%
455mode,"vhdl_comment",rtn	% % ^G ignores --... %Zvhdl_comment%
456mode,"semi_comment",rtn	% % ^G ignores ;... %Zsemi_comment%
457mode,"tex_comment",rtn % % ^G ignores %%... %Ztex_comment%
458mode,"text_delimiters",rtn % % Text delimiters %Ztext_delimiters%
459
460:defmenu search menu,"more-options",rtn
461mode,"icase",rtn	% % Case insensitivity %Zicase%
462mode,"wrap",rtn	% % Search wraps %Zwrap%
463mode,"search_prompting",rtn	% % Search prompting %Zsearch_prompting%
464mode,"csmode",rtn	% % Continued search %Zcsmode%
465
466:defmenu paragraph menu,"more-options",rtn
467mode,"french",rtn	% % French spacing %Zfrench%
468mode,"flowed",rtn	% % Flowed text %Zflowed%
469mode,"cpara",rtn	% % Paragraph indent chars %Zcpara%
470mode,"cnotpara",rtn	% % Not-paragraph chars %Zcnotpara%
471
472:defmenu file menu,"more-options",rtn
473mode,"restore",rtn	% % Restore cursor %Zrestore%
474mode,"guess_crlf",rtn	% % Auto detect CR-LF %Zguess_crlf%
475mode,"guess_indent",rtn	% % Guess indent %Zguess_indent%
476mode,"guess_non_utf8",rtn	% % Guess non-UTF-8 %Zguess_non_utf8%
477mode,"guess_utf8",rtn	% % Guess UTF-8 %Zguess_utf8%
478mode,"guess_utf16",rtn	% % Guess UTF-16 %Zguess_utf16%
479mode,"force",rtn	% % Force last NL %Zforce%
480mode,"nobackup",rtn	% % No backup %Znobackup%
481
482:defmenu global menu,"more-options",rtn
483mode,"nolocks",rtn	% % Disable locks %Znolocks%
484mode,"nobackups",rtn	% % Disable backups %Znobackups%
485mode,"nodeadjoe",rtn	% % Disable DEADJOE %Znodeadjoe%
486mode,"nomodcheck",rtn	% % Disable mtime check %Znomodcheck%
487mode,"nocurdir",rtn	% % Disable current dir %Znocurdir%
488mode,"exask",rtn	% % Exit ask %Zexask%
489mode,"nosta",rtn	% % Disable status line %Znosta%
490mode,"keepup",rtn	% % Fast status line %Zkeepup%
491mode,"break_hardlinks",rtn	% % Break hard links %Zbreak_hardlinks%
492mode,"break_links",rtn	% % Break links %Zbreak_links%
493mode,"joe_state",rtn	% % Joe_state file %Zjoe_state%
494mode,"undo_keep",rtn	% % No. undo records %Zundo_keep%
495mode,"backpath",rtn	% % Path to backup files %Zbackpath%
496
497:defmenu cursor menu,"more-options",rtn
498mode,"pg",rtn	% % No. PgUp/PgDn lines %Zpg%
499mode,"mid",rtn	C Center on scroll %Zmid%
500mode,"left",rtn	L Columns to scroll left %Zleft%
501mode,"right",rtn R Columns to scroll right %Zright%
502mode,"floatmouse",rtn	% % Click past end %Zfloatmouse%
503mode,"rtbutton",rtn	% % Right button %Zrtbutton%
504
505:defmenu marking menu,"more-options",rtn
506mode,"autoswap",rtn	% % Autoswap mode %Zautoswap%
507mode,"marking",rtn	% % Marking %Zmarking%
508mode,"lightoff",rtn	% % Auto unmask %Zlightoff%
509
510:defmenu tab menu,"more-options",rtn
511mode,"smarthome",rtn	% % Smart home key %Zsmarthome%
512mode,"smartbacks",rtn	% % Smart backspace %Zsmartbacks%
513mode,"indentfirst",rtn	% % To indent first %Zindentfirst%
514mode,"purify",rtn	% % Clean up indents %Zpurify%
515mode,"spaces",rtn	% % No tabs %Zspaces%
516
517 THIRD SECTION: Named help screens:
518
519 Use \i to turn on/off inverse video
520 Use \u to turn on/off underline
521 Use \b to turn on/off bold
522 Use \d to turn on/off dim
523 Use \f to turn on/off flash
524 Use \l to turn on/off italic
525
526 Use \| to insert a spring: all springs in a given line are set to the same
527 width such that the entire line exactly fits in the width of the screen (if
528 it's not an exact multiple so that there are N spaces remaining, the
529 rightmost N springs each get one extra space).  Hint: if you want vertical
530 alignment, each line should have the same number of springs.
531
532 Use the '-help_is_utf8' global option to allow UTF-8 sequences in the help
533 text.  Otherwise, the locale 8-bit character set is assumed.
534
535{Basic
536\i   輔助視窗    \|^KH 關閉輔助視窗   ESC . 開啟更多輔助視窗 (^[.)              \i
537\i \i\|\u游標\u            \|\u跳至\u         \|\u區塊\u     \|\u刪除\u     \|\u雜項\u         \|\u離開\u      \|\i \i
538\i \i\|^B 往左 ^F 往右 \|^U  上一畫面 \|^KB 開頭 \|^D 字元  \|^KJ 重新排列 \|^KX 儲存  \|\i \i
539\i \i\|^P 往上 ^N 往下 \|^V  下一畫面 \|^KK 結尾 \|^Y 整列  \|^KA 置中     \|^C  放棄  \|\i \i
540\i \i\|^Z 前一個字     \|^A  列首     \|^KM 移動 \|^W >單字 \|^T  設定選項 \|^KZ SHELL \|\i \i
541\i \i\|^X 後一個字     \|^E  列尾     \|^KC 複製 \|^O 單字< \|^R  螢幕更新 \|\u檔案\u      \|\i \i
542\i \i\|\u搜尋\u            \|^KU 檔首     \|^KW 檔案 \|^J >列尾 \|\u拼字\u         \|^KE 編輯  \|\i \i
543\i \i\|^KF 尋找字串    \|^KV 檔尾     \|^KY 刪除 \|^_ 復原  \|^[N 單字     \|^KR 插入  \|\i \i
544\i \i\|^L  下一字串    \|^KL 第幾列   \|^K/ 過濾 \|^^ 再做  \|^[L 檔案     \|^KD 存檔  \|\i \i
545}
546
547{Windows
548\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
549\i \i\|^KO 分割視窗為二                       \|F1 - F4 Pop-up shell window         \|\i \i
550\i \i\|^KG 放大游標所在視窗                   \|^KT 縮小游標所在視窗                \|\i \i
551\i \i\|^KN 跳往下一個視窗                     \|^KP 跳往上一個視窗                  \|\i \i
552\i \i\|^[V 切換到下一個緩衝區                 \|^[U 切換到上一個緩衝區              \|\i \i
553\i \i\|^C  消除游標所在視窗                   \|^KI 顯示所有視窗 / 顯示游標所在視窗 \|\i \i
554}
555
556{Advanced
557\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
558\i \i\|\u巨集\u         \|\u雜項\u            \|\u捲軸\u     \|\uSHELL\u        \|\u前往\u          \|\u即時搜尋\u    \|\i \i
559\i \i\|^K[ 0-9 記錄 \|^K 空格狀態     \|^[W 往上 \|^K' 視窗模式 \|^[B 到 ^KB 處 \|^[R 往後    \|\i \i
560\i \i\|^K]     停止 \|^K\\ 重覆命令    \|^[Z 往下 \|^[! 命令模式 \|^[K 到 ^KK 處 \|^[S 往前    \|\i \i
561\i \i\|^K 0-9  執行 \|\u插入\u            \|^K< 往左 \|\u引用\u         \|\u刪除\u          \|\u書籤\u        \|\i \i
562\i \i\|^K?     查詢 \|^] 分割一列     \|^K> 往右 \|^[' Ctrl-    \|^[Y 下拉一列  \|^[ 0-9 跳至 \|\i \i
563\i \i\|^[D     傾印 \|^SPACE 插入空格 \|         \|^\\ Meta-     \|^[O 列首<     \|^[^[   設定 \|\i \i
564}
565
566{Programs
567\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
568\i \i\|\u前往\u               \|\u縮排\u     \|\u編譯\u              \u快捷\u                \|\i \i
569\i \i\|^G  成對搜尋 ( [ { \|^K, 減少 \|^[C 編譯 & 解析   ^G 尋找游標下方單字 \|\i \i
570\i \i\|^K- 前一位置       \|^K. 增加 \|^[G 比對 & 解析   ^[ENTER 完整單字    \|\i \i
571\i \i\|^K= 後一位置       \|\uFILE\u     \|^[= 到下一個錯誤  ^[Y 貼上已刪文字    \|\i \i
572\i \i\|^K; 標籤檔搜尋     \|^K `     \|^[- 到上一個錯誤  ^[^Y 循環已刪文字   \|\i \i
573\i \i\|                   \| revert  \|^[ SP 跳至錯誤                        \|\i \i
574}
575
576{Search
577\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
578\i \i特殊搜尋條件:                                                   \|\i \i
579\i \i    \\^  \\$  位於列首/尾的符合字串          \\.     match any single char      \|\i \i
580\i \i    \\<  \\>  位於字首/尾的符合字串          \\!     match char or expression   \|\i \i
581\i \i    \\(  \\)  grouping                       \\|     match left or right         \|\i \i
582\i \i    \\[a-z]  符合所指定集合中的任一字串                                            \|\i \i
583\i \i    \\{1,3}  match 1 - 3 occurrences        \\?     match 0 or 1 occurrence     \|\i \i
584\i \i    \\+      match 1 or more occurrences    \\*     match 0 or more occurrences \|\i \i
585\i \i特殊取代條件:                                                    \|\i \i
586\i \i    \\&      直接以符合字元取代找到的字串   \\1 - 9 replaced with Nth group   \|\i \i
587\i \i    \\u \\l   convert next to upper/lower    \\U \\L  case convert until \\E     \|\i \i
588}
589
590{Escape sequences
591\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
592\i \iEscape sequences: \\x{10fff}  Unicode code point   \\p{Ll}  Unicode category \|\i \i
593\i \i    \\i / \\I  Identifier start      \\t  tab          \\e  escape               \|\i \i
594\i \i    \\c / \\C  Identifier continue   \\n  newline      \\r  carriage return      \|\i \i
595\i \i    \\d / \\D  Digit / Not a digit   \\b  backspace  \\xFF  hex character        \|\i \i
596\i \i    \\w / \\W  Word / Not a word     \\a  alert      \\377  octal character      \|\i \i
597\i \i    \\s / \\S  Space / Not a space   \\f  formfeed     \\\\  backslash            \|\i \i
598}
599
600{SearchOptions
601\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
602\i \i搜尋選項:                                                              \|\i \i
603\i \i   r 置換        k 限制於可能為矩形的標記區塊中搜尋                     \|\i \i
604\i \i   i 忽略大小寫  b 往後搜尋而非往前搜尋                                 \|\i \i
605\i \i                 a 搜尋跨越所有載入的檔案                               \|\i \i
606\i \i                 e 搜尋跨越所有在比對或編譯錯誤清單中的檔案             \|\i \i
607\i \i   w 此次搜尋回轉到檔案開頭      n 此次搜尋不要回轉到檔案開頭           \|\i \i
608\i \i x / y  Search text is standard format / JOE format regular expression       \|\i \i
609\i \i   nnn 只進行 nnn 次置換動作                                            \|\i \i
610}
611
612{Math
613\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
614\i \i \u指令\u (ESC m 進入數學模式)     \u函數\u                                         \|\i \i
615\i \i     hex 十六進位顯示模式      sin cos tab asin acos atan                   \|\i \i
616\i \i     dec 十進位模式            sinh cosh tanh asinh acosh atanh             \|\i \i
617\i \i     ins 結果輸入檔案          sqrt cbrt exp ln log                         \|\i \i
618\i \i    eval 區塊求值              int floor ceil abs erg ergc                  \|\i \i
619\i \i    0xff 輸入十六進位數字      joe(..macro..) - 執行一個編輯器巨集          \|\i \i
620\i \i    3e-4 十進位浮點數字        \u區塊\u                                         \|\i \i
621\i \i    a=10 指定一個變數          sum cnt  總和、計數                          \|\i \i
622\i \i 2+3:ins 多重指令              avg dev  平均、標準差                        \|\i \i
623\i \i    e pi 常數                  \u運算符號\u                                     \|\i \i
624\i \i     ans 前一個結果            ! ^  * / %  + -  < <= > >= == !=  &&  ||  ? :\|\i \i
625}
626
627{Names
628\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
629\i \i 在輸入檔案名稱的提示視窗中,按下 TAB 鍵可以產生一個您目前所在目錄下的  \|\i \i
630\i \i 所有檔案名字的列表,或是使用上下鍵來使用以前用過的檔案名稱。           \|\i \i
631\i \i 特殊檔案名稱:                                                         \|\i \i
632\i \i      !command                 管線引入一個 shell 底下的命令            \|\i \i
633\i \i      >>filename               附加到另一檔案                           \|\i \i
634\i \i      -                        從標準的 I/O 設備中讀入/寫出             \|\i \i
635\i \i      filename,START,SIZE      從一個檔案/設備中讀入/寫出部份資料       \|\i \i
636\i \i 以十進位(255)、八進位(0377)或十六進位(0xFF)給定檔案開始的位置/檔案大小 \|\i \i
637}
638
639{Joe
640\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,  後一輔助視窗 ^[.     \i
641\i \i 錯誤報告請傳送至: http://sourceforge.net/projects/joe-editor \|\i \i
642\i \i \|\i \i
643\i \i 預設 joerc 檔案位於 @JOERC@/joerc \|\i \i
644\i \i 額外的文件可在 @JOEDOC@ 中找到 \|\i \i
645}
646
647{CharTable
648\i   輔助視窗    \|^KH 關閉輔助視窗    前一輔助視窗 ^[,                        \i
649\i \i\| 十進 \u 0123 4567  8901 2345    0123 4567  8901 2345 \u  十進\|\i \i
650\i \i\|     |                                              |     \|\i \i
651\i \i\|   0 | \u@ABC\u \uDEFG\u  \uHIJK\u \uLMNO\u    \i\u@ABC\u\i \i\uDEFG\u\i  \i\uHIJK\u\i \i\uLMNO\u\i | 128 \|\i \i
652\i \i\|  16 | \uPQRS\u \uTUVW\u  \uXYZ[\u \u\\]^_\u    \i\uPQRS\u\i \i\uTUVW\u\i  \i\uXYZ[\u\i \i\u\\]^_\u\i | 144 \|\i \i
653\i \i\|  32 |  !"# $%&'  ()*+ ,-./     ¡£ ĥƧ  ȩʫ ̭ί | 160 \|\i \i
654\i \i\|  48 | 0123 4567  89:; <=>?    бҳ Եַ  عڻ ܽ޿ | 176 \|\i \i
655\i \i\|  64 | @ABC DEFG  HIJK LMNO    ÀÁÂÃ ÄÅÆÇ  ÈÉÊË ÌÍÎÏ | 192 \|\i \i
656\i \i\|  80 | PQRS TUVW  XYZ[ \\]^_    ÐÑÒÓ ÔÕÖ×  ØÙÚÛ ÜÝÞß | 208 \|\i \i
657\i \i\|  96 | `abc defg  hijk lmno    àáâã äåæç  èéêë ìíîï | 224 \|\i \i
658\i \i\| 112 | pqrs tuvw  xyz{ |}~    ðñòó ôõö÷  øùúû üýþÿ | 240 \|\i \i
659}
660
661 FOURTH SECTION: Key bindings:
662
663 Section names you must provide:
664
665	:main		For editing window
666	:prompt		For prompt lines
667	:query		For single-character query lines
668	:querya		Singe-character query for quote
669	:querysr	Search & Replace single-character query
670	:shell		For shell windows
671	:vtshell	For terminal emulator windows
672
673 Other sections may be given as well for organization purposes or for
674 use with the '-keymap' option.
675
676 Use:
677 :inherit name		To copy the named section into the current one
678 :delete key		To delete a key sequence from the current section
679
680 Keys:
681
682 Use U+12345 for specific unicode character
683 Use ^@ through ^_ and ^? for Ctrl chars
684 Use SP for space
685 Use a TO b to generate a range of characters
686 Use MDOWN, MDRAG, MUP, M2DOWN, M2DRAG, M2UP, M3DOWN, M3DRAG, M3UP for mouse
687 Use MWDOWN, MWUP for wheel mouse motion
688 Use ^# for 0x9B (for Amiga).  But warning: this breaks UTF-8 keyboards.
689
690 You can also use termcap string capability names.  For example:
691
692	.ku		Up
693	.kd		Down
694	.kl		Left
695	.kr		Right
696	.kh		Home
697	.kH		End
698	.kI		Insert
699	.kD		Delete
700	.kP		PgUp
701	.kN		PgDn
702	.k1 - .k9	F1 - F9
703	.k0		F0 or F10
704	.k;		F10
705
706 Macros:
707
708 Simple macros can be made by comma seperating 2 or more command names.  For
709 example:
710
711 eof,bol	^T Z		Goto beginning of last line
712
713 Also quoted matter is typed in literally:
714
715 bol,">",dnarw	.k1		Quote news article line
716
717 Macros may cross lines if they end with ,
718
719 Commands or named macros may be created with :def.  For example, you can
720 use:
721
722 :def foo eof,bol
723
724 To define a command foo which will goto the beginning of the last line.
725
726:windows		Bindings common to all windows
727type		U+0 TO U+10FFFF
728abort		^C		Abort window
729abort		^K Q
730abort		^K ^Q
731abort		^K q
732arg		^K \		Repeat next command
733explode		^K I		Show all windows or show only one window
734explode		^K ^I
735explode		^K i
736help		^K H		Help menu
737help		^K ^H
738help		^K h
739hnext		^[ .		Next help window
740hprev		^[ ,		Previous help window
741math		^[ m		Calculator
742math		^[ M		Calculator
743 math		^[ ^M		Calculator
744msg		^[ h		Display a message
745msg		^[ H		Display a message
746msg		^[ ^H		Display a message
747nextw		^K N		Goto next window
748nextw		^K ^N
749nextw		^K n
750pgdn		.kN		Screen down
751pgdn		^V
752pgdn		^[ [ 6 ~
753 pgdn      ^# S
754pgup		.kP		Screen up
755pgup		^U
756pgup		^[ [ 5 ~
757 pgup      ^# T
758play		^K 0 TO 9	Execute macro
759prevw		^K P		Goto previous window
760prevw		^K ^P
761prevw		^K p
762query		^K ?		Macro query insert
763record		^K [		Record a macro
764retype		^R		Refresh screen
765rtn		^M		Return
766shell		^K Z		Shell escape
767shell		^K ^Z
768shell		^K z
769stop		^K ]		Stop recording
770 Mouse handling
771defmdown	MDOWN		Move the cursor to the mouse location
772defmup		MUP
773defmdrag	MDRAG		Select a region of characters
774defm2down	M2DOWN		Select the word at the mouse location
775defm2up		M2UP
776defm2drag	M2DRAG		Select a region of words
777defm3down	M3DOWN		Select the line at the mouse location
778defm3up		M3UP
779defm3drag	M3DRAG		Select a region of lines
780defmiddleup	MIDDLEUP
781defmiddledown	MIDDLEDOWN	Insert text
782
783xtmouse		^[ [ M		Introduces an xterm mouse event
784extmouse	^[ [ <		Introduces an extended xterm mouse event
785
786 Sample if/then/else macro
787 if,"char==65",then,"it's an A",else,"it's not an a",endif	^[ q
788
789:main			Text editing window
790:inherit windows
791
792 Spell-check macros
793
794 Ispell
795:def ispellfile filt,"cat >ispell.tmp;ispell ispell.tmp </dev/tty >/dev/tty;cat ispell.tmp;/bin/rm ispell.tmp",rtn,retype
796:def ispellword psh,nextword,markk,prevword,markb,filt,"cat >ispell.tmp;ispell ispell.tmp </dev/tty >/dev/tty;tr -d <ispell.tmp '\\012';/bin/rm ispell.tmp",rtn,retype,nextword
797
798 Aspell
799:def aspellfile filt,"SPLTMP=ispell.tmp;cat >$SPLTMP;aspell --lang=",language,".",charset," -x -c $SPLTMP </dev/tty >/dev/tty;cat $SPLTMP;/bin/rm $SPLTMP",rtn,retype
800:def aspellword psh,nextword,markk,prevword,markb,filt,"SPLTMP=ispell.tmp;cat >$SPLTMP;aspell --lang=",language,".",charset," -x -c $SPLTMP </dev/tty >/dev/tty;tr -d <$SPLTMP '\\012';/bin/rm $SPLTMP",rtn,retype,nextword
801
802
803aspellfile	^[ l
804aspellword	^[ n
805
806 Compile
807
808:def compile mwind!,mfit!,querysave,query,scratch,"* Build Log *",rtn,bof,markb,eof," ",markk,blkdel,build
809
810 Grep
811
812:def grep_find mwind!,mfit!,scratch,"* Grep Log *",rtn,bof,markb,eof," ",markk,blkdel,grep
813
814 Man page
815
816:def man scratch,"* Man Page *",rtn,bof,markb,eof," ",markk,blkdel," ",ltarw,run,"man -P cat -S 2:3 "
817
818 Shell windows
819 We load the already existing Startup Log first so that Shell does not inherit the current directory.
820
821:def shell1 scratch_push,"* Startup Log *",rtn,scratch_push,"* Shell 1 *",rtn,vtbknd!,eof
822:def shell2 scratch_push,"* Startup Log *",rtn,scratch_push,"* Shell 2 *",rtn,vtbknd!,eof
823:def shell3 scratch_push,"* Startup Log *",rtn,scratch_push,"* Shell 3 *",rtn,vtbknd!,eof
824:def shell4 scratch_push,"* Startup Log *",rtn,scratch_push,"* Shell 4 *",rtn,vtbknd!,eof
825
826 Macros allowed in shell window commands
827:def shell_clear psh,bof,markb,eof,markk,blkdel
828:def shell_parse parserr
829:def shell_gparse gparse
830:def shell_release release
831:def shell_math maths
832:def shell_typemath txt,math,"ins",rtn,rtn,txt,"\r",rtn
833:def shell_rtn rtn
834:def shell_edit edit
835:def shell_dellin dellin
836:def shell_cd cd
837:def shell_pop popabort
838:def shell_markb markb
839:def shell_markk markk
840
841 Split window version
842 :def shell1 if,"is_shell==0",then,tw1,mfit,endif,scratch,"* Shell 1 *",rtn,vtbknd!,eof
843 :def shell2 if,"is_shell==0",then,tw1,mfit,endif,scratch,"* Shell 2 *",rtn,vtbknd!,eof
844 :def shell3 if,"is_shell==0",then,tw1,mfit,endif,scratch,"* Shell 3 *",rtn,vtbknd!,eof
845 :def shell4 if,"is_shell==0",then,tw1,mfit,endif,scratch,"* Shell 4 *",rtn,vtbknd!,eof
846
847 Here we guess some common key sequences which either do not have termcap
848 sequences or which are frequently wrong.  Note that if the termcap entry is
849 correct, it will override these later on.
850
851paste			^[ ] 5 2 ;		Base64 paste (obsolete)
852brpaste			^[ [ 2 0 0 ~		Bracketed paste
853brpaste_done		^[ [ 2 0 1 ~		Bracketed paste done
854
855insc			^[ [ 2 ~
856insc			^[ [ L			SCO
857
858delch			^[ [ 3 ~
859
860pgup			^[ [ I		SCO
861
862pgdn			^[ [ G		SCO
863
864home			^[ [ 1 ~		Putty, Linux, Cygwin
865home			^[ [ H			Xterm, Konsole, SCO
866home			^[ O H			gnome-terminal
867home			^[ [ 7 ~		RxVT
868 home			^# SP A		Amiga
869
870eol			^[ [ 4 ~		Putty, Linux, Cygwin, ssh
871eol			^[ [ F			Xterm, Konsole, SCO
872eol			^[ O F			gnome-terminal
873eol			^[ [ 8 ~		RxVT
874 eol			^# SP @		Amiga
875
876rtarw,ltarw,begin_marking,rtarw,toggle_marking	^[ [ 1 ; 5 C    Mark right Xterm
877rtarw,ltarw,begin_marking,rtarw,toggle_marking	^[ [ 5 C        Mark right Gnome-terminal
878 (Almost all termcap entries have ^[ O C as an arrow key).
879 rtarw,ltarw,begin_marking,rtarw,toggle_marking	^[ O C		Mark right Putty Ctrl-rtarw
880rtarw,ltarw,begin_marking,rtarw,toggle_marking	^[ O c		Mark right RxVT Ctrl-rtarw
881
882ltarw,rtarw,begin_marking,ltarw,toggle_marking	^[ [ 1 ; 5 D    Mark left
883ltarw,rtarw,begin_marking,ltarw,toggle_marking	^[ [ 5 D        Mark left
884 ltarw,rtarw,begin_marking,ltarw,toggle_marking	^[ O D		Mark left Putty Ctrl-ltarw
885ltarw,rtarw,begin_marking,ltarw,toggle_marking	^[ O d		Mark left RxVT Ctrl-ltarw
886
887uparw,dnarw,begin_marking,uparw,toggle_marking	^[ [ 1 ; 5 A    Mark up
888uparw,dnarw,begin_marking,uparw,toggle_marking	^[ [ 5 A        Mark up
889 uparw,dnarw,begin_marking,uparw,toggle_marking	^[ O A		Mark up Putty Ctrl-uparw
890uparw,dnarw,begin_marking,uparw,toggle_marking	^[ O a		Mark up RxVT Ctrl-uparw
891
892dnarw,uparw,begin_marking,dnarw,toggle_marking	^[ [ 1 ; 5 B    Mark down
893dnarw,uparw,begin_marking,dnarw,toggle_marking	^[ [ 5 B        Mark down
894 dnarw,uparw,begin_marking,dnarw,toggle_marking	^[ O B		Mark down Putty Ctrl-dnarw
895dnarw,uparw,begin_marking,dnarw,toggle_marking	^[ O b		Mark down RxVT Ctrl-dnarw
896
897blkdel,nmark   ^[ [ 3 ; 5 -	Gnome-terminal Ctrl-Del
898blkdel,nmark   ^[ [ 3 ; 5 ~	Xterm Ctrl-Del
899
900yank		^[ [ 2 ; 5 -	Gnome-terminal Ctrl-Ins
901yank		^[ [ 2 ; 5 ~    Xterm Ctrl-Ins
902
903 Extra functions not really part of JOE user interface:
904
905delbol		^[ o		Delete to beginning of line
906delbol		^[ ^O		Delete to beginning of line
907dnslide		^[ z		Scroll down one line
908dnslide		^[ Z		Scroll down one line
909dnslide		^[ ^Z		Scroll down one line
910dnslide,dnslide,dnslide,dnslide		MWDOWN
911compile		^[ c		Compile
912compile		^[ C
913compile		^[ ^C		Compile
914grep_find	^[ g		Grep
915grep_find	^[ G		Grep
916grep_find	^[ ^G		Grep
917execmd		^[ x		Prompt for command to execute
918execmd		^[ X		Prompt for command to execute
919execmd		^[ ^X		Prompt for command to execute
920finish		^[ ^I		Complete word in document
921finish		^[ ^M		Complete word: used to be math
922mwind!,mfit,jump,bol		^[ SP
923isrch		^[ s		Forward incremental search
924isrch		^[ S		Forward incremental search
925isrch		^[ ^S		Forward incremental search
926notmod		^[ ~		Not modified
927mwind,mfit,prevw,nxterr		^[ =		To next error
928parserr		^[ e		Parse errors in current buffer
929parserr		^[ E		Parse errors in current buffer
930parserr		^[ ^E		Parse errors in current buffer
931mwind,mfit,prevw,prverr		^[ -		To previous error
932rsrch		^[ r		Backward incremental search
933rsrch		^[ R		Backward incremental search
934rsrch		^[ ^R		Backward incremental search
935run		^[ !		Run a program in a window
936tomarkb		^[ b		Go to beginning of marked block
937tomarkb		^[ ^B		Go to beginning of marked block
938tomarkk		^[ k		Go to end of marked block
939tomarkk		^[ ^K		Go to end of marked block
940tomarkk		^[ K		Go to end of marked block
941txt		^[ i		Prompt for text and insert it
942txt		^[ I		Prompt for text and insert it
943upslide		^[ w		Scroll up one line
944upslide		^[ ^W		Scroll up one line
945upslide		^[ W		Scroll up one line
946upslide,upslide,upslide,upslide		MWUP
947yank		^[ y		Undelete text
948yankpop		^[ ^Y		Undelete text
949yank		^[ Y		Undelete text
950
951 toggle_marking	^@		Ctrl-space block selection method
952insc		^@		Ctrl-space used to insert a space
953
954 bufed		^[ d		Menu of buffers
955nbuf		^[ v		Next buffer
956nbuf		^[ V		Next buffer
957nbuf		^[ ^V		Next buffer
958pbuf		^[ u		Prev buffer
959pbuf		^[ U		Prev buffer
960pbuf		^[ ^U		Prev buffer
961 query		^[ q		Quoted insert
962 byte		^[ n		Goto byte
963 col		^[ c		Goto column
964 abortbuf	^[ k		Kill current buffer- don't mess with windows
965 ask		^[ a		Ask to save current buffer
966 bop		^[ p		Backwards paragraph
967 bos		^[ x		Bottom of screen
968 copy		^[ ^W		Copy block into yank
969 dupw		^[ \		Split window
970 eop		^[ n		Forwards paragraph
971 format		^[ j		Format paragraph ignore block
972 markl		^[ l		Mark line
973 nmark		^[ @		Turn off ^KB ^KK
974 pop		^[ >		Pop ^KB ^KK
975 psh		^[ <		Push ^KB ^KK
976 swap		^[ x		Swap ^KB and cursor
977 tomarkbk	^[ g		Switch between beginning and end of marked
978 tos		^[ e		Top of screen
979 tw0		^[ 0		Kill current window (orphans buffer)
980 tw1		^[ 1		Kill all other windows (orphans buffers)
981 uarg		^[ u		Universal argument
982 yank		^[ ^Y		Undelete previous text
983 yapp		^[ w		Append next delete to previous yank
984
985 Standard JOE user interface
986
987quote8		^\		Enter Meta chars
988 quote		`		Enter Ctrl chars
989quote		^[ '		Enter Ctrl chars
990quote		^Q
991
992backs		^?		Backspace
993backs		^H
994backw		^O		Backspace word
995bknd		^K '		Shell window
996blkcpy		^K C		Copy marked block
997blkcpy		^K ^C
998blkcpy		^K c
999blkdel		^K Y		Delete marked block
1000blkdel		^K ^Y
1001blkdel		^K y
1002blkmove		^K M		Move marked block
1003blkmove		^K ^M
1004blkmove		^K m
1005blksave		^K W		Save marked block
1006blksave		^K ^W
1007blksave		^K w
1008bof		^K U		Goto beginning of file
1009bof		^K ^U
1010bof		^K u
1011 bol		.kh		Goto beginning of line
1012 bol		^A
1013 bol      ^# SP A
1014home		.kh
1015home		^A
1016center		^K A		Center line
1017center		^K ^A
1018center		^K a
1019crawll		^K <		Pan left
1020crawlr		^K >		Pan right
1021delch		.kD		Delete character
1022delch		^D
1023deleol		^J		Delete to end of line
1024dellin		^Y		Delete entire line
1025delw		^W		Delete word to right
1026dnarw		.kd		Go down
1027dnarw		^N
1028dnarw		^[ O B
1029dnarw		^[ [ B
1030 dnarw		^# B
1031edit		^K E		Edit a file
1032edit		^K ^E
1033edit		^K e
1034eof		^K V		Go to end of file
1035eof		^K ^V
1036eof		^K v
1037eol		.kH		Go to end of line
1038eol		.@7
1039eol		^E
1040exsave		^K X		Save and exit
1041exsave		^K ^X
1042exsave		^K x
1043ffirst		^K F		Find first
1044ffirst		^K ^F
1045ffirst		^K f
1046filt		^K /		Filter block
1047 finish		^K ^M		Complete text under cursor
1048fnext		^L		Find next
1049fmtblk		^K J		Format paragraphs in block
1050fmtblk		^K ^J
1051fmtblk		^K j
1052gomark		^[ 0 TO 9	Goto bookmark
1053groww		^K G		Grow window
1054groww		^K ^G
1055groww		^K g
1056insc		.kI		Insert a space
1057 insc		^@
1058insf		^K R		Insert a file
1059insf		^K ^R
1060insf		^K r
1061lindent		^K ,		Indent to left
1062line		^K L		Goto line no.
1063line		^K ^L
1064line		^K l
1065ltarw		.kl		Go left
1066ltarw		^B
1067ltarw		^[ O D
1068ltarw		^[ [ D
1069 ltarw          ^# D
1070macros		^[ d		Dump keyboard macros
1071macros		^[ ^D
1072markb		^K B		Set beginning of marked block
1073markb		^K ^B
1074markb		^K b
1075markk		^K K		Set end of marked block
1076markk		^K ^K
1077markk		^K k
1078 mode		^T		Options menu
1079menu,"root",rtn	^T
1080nextpos		^K =		Goto next position in position history
1081nextword	^X		Goto next word
1082open		^]		Split line
1083prevpos		^K -		Previous position in history
1084prevword	^Z		Previous word
1085reload		^K `		Revert file
1086redo		^^		Redo changes
1087rindent		^K .		Indent to right
1088rtarw		.kr		Go right
1089rtarw		^F
1090rtarw		^[ O C
1091rtarw		^[ [ C
1092 rtarw          ^# C
1093run		^K !		Run a shell command
1094save		^K D		Save file
1095save		^K S
1096save		^K ^D
1097save		^K ^S
1098save		^K d
1099save		^K s
1100setmark		^[ ^[		Set bookmark
1101shrinkw		^K T		Shrink window
1102shrinkw		^K ^T
1103shrinkw		^K t
1104splitw		^K O		Split window
1105splitw		^K ^O
1106splitw		^K o
1107stat		^K SP		Show status
1108stat		^K ^@		Show status
1109tag		^K ;		Tags file search
1110tomatch		^G		Goto matching parenthasis
1111undo		^_		Undo changes
1112uparw		.ku		Go up
1113 uparw		^# A
1114uparw		^P
1115uparw		^[ O A
1116uparw		^[ [ A
1117shell1		^[ [ 1 1 ~
1118shell1		^[ O P
1119shell1		^[ [ [ A
1120shell1		.k1
1121shell2		^[ [ 1 2 ~
1122shell2		^[ O Q
1123shell2		^[ [ [ B
1124shell2		.k2
1125shell3		^[ [ 1 3 ~
1126shell3		^[ O R
1127shell3		^[ [ [ C
1128shell3		.k3
1129shell4		^[ [ 1 4 ~
1130shell4		^[ O S
1131shell4		^[ [ [ D
1132shell4		.k4
1133
1134:prompt			Prompt windows
1135:inherit main
1136if,"byte>size",then,complete,complete,else,delch,endif	^D
1137complete	^I
1138dnarw,eol	.kd		Go down
1139dnarw,eol	^N
1140dnarw,eol	^[ O B
1141dnarw,eol	^[ [ B
1142 dnarw,eol	^# B
1143uparw,eol	.ku		Go up
1144 uparw,eol	^# A
1145uparw,eol	^P
1146uparw,eol	^[ O A
1147uparw,eol	^[ [ A
1148
1149:menu			Selection menus
1150:inherit windows
1151
1152pgupmenu			^[ [ I
1153
1154pgdnmenu			^[ [ G
1155
1156bolmenu			^[ [ 1 ~		Putty, Linux, Cygwin
1157bolmenu			^[ [ H			Xterm, Konsole
1158bolmenu			^[ O H			gnome-terminal
1159bolmenu			^[ [ 7 ~		RxVT
1160 bolmenu			^# SP A		Amiga
1161
1162eolmenu			^[ [ 4 ~		Putty, Linux, Cygwin, ssh
1163eolmenu			^[ [ F			Xterm, Konsole
1164eolmenu			^[ O F			gnome-terminal
1165eolmenu			^[ [ 8 ~		RxVT
1166 eolmenu			^# SP @		Amiga
1167
1168abort		^[ ^[	Why?
1169backsmenu	^?
1170backsmenu	^H
1171bofmenu		^K U
1172bofmenu		^K ^U
1173bofmenu		^K u
1174bolmenu		.kh
1175bolmenu		^A
1176dnarwmenu	.kd
1177dnarwmenu	^N
1178dnarwmenu	^[ [ B
1179dnarwmenu	^[ O B
1180 dnarwmenu ^# B
1181dnarwmenu	MWDOWN
1182eofmenu		^K V
1183eofmenu		^K ^V
1184eofmenu		^K v
1185eolmenu		.kH
1186eolmenu		^E
1187ltarwmenu	.kl
1188ltarwmenu	^B
1189ltarwmenu	^[ [ D
1190ltarwmenu	^[ O D
1191 ltarwmenu ^# D
1192pgdnmenu	.kN		Screen down
1193pgdnmenu	^V
1194pgdnmenu	^[ [ 6 ~
1195 pgdnmenu  ^# S
1196pgupmenu	.kP		Screen up
1197pgupmenu	^U
1198pgupmenu	^[ [ 5 ~
1199 pgupmenu  ^# T
1200rtarwmenu	.kr
1201rtarwmenu	^F
1202rtarwmenu	^[ [ C
1203 rtarwmenu ^# C
1204rtarwmenu	^[ O C
1205rtn		SP
1206rtn		^I
1207rtn		^K H
1208rtn		^K h
1209rtn		^K ^H
1210tabmenu		^I
1211uparwmenu	.ku
1212uparwmenu	^P
1213uparwmenu	^[ [ A
1214uparwmenu	^[ O A
1215 uparwmenu ^# A
1216uparwmenu	MWUP
1217defm2down	M2DOWN		Hits return key
1218
1219:query			Single-key query window
1220:inherit windows
1221
1222:querya			Single-key query window for quoting
1223type		U+0 TO U+10FFFF
1224
1225:querysr		Search & replace query window
1226type		U+0 TO U+10FFFF
1227
1228:shell			Input to shell windows
1229:inherit main
1230""		^C		Abort
1231""		^D		Eof
1232"\t"		^I		Tab
1233""		^H		Backspace
1234"\r"		^M		Return
1235""		^?		Backspace
1236
1237:vtshell		Input to ANSI shell windows
1238:inherit main
1239""		 [ A
1240""		.ku
1241""		 [ B
1242""		.kd
1243""		 [ C
1244""		.kr
1245""		 [ D
1246""		.kl
1247""		^A		BOL for bash
1248""		^C		Abort
1249""		^D		Eof
1250""		^E		EOL for bash
1251"\t"		^I		Tab
1252""		^H		Backspace
1253"\r"		^M		Return
1254""		^?		Backspace
1255