# tcbrc  version 1.4a-1  23 Nov 1998
# -------------------------------------------------------------------------
# All blank lines or strings begin with the character '#' will be ignored.
# Lines begin with one of the following strings are available.  Other lines 
# begin with any character except for '#', Space, Tab, and '\n' will cause 
# an error. 
#
# ARC, FILE, EXEC, GREP, PROGRAM, EDITOR, BUFFER, CODE, SHELL,
# HISTORY, WAIT, SCROLL, LS, KEY, F-?, M-?, P-?, K-?, VGA
# -------------------------------------------------------------------------

ARC
# format : `suffix' `archiver' (option)
#
# The `archiver' of tar(1), lha(1) and unzip(1) will display the
# content of the archive file that has the `suffix'.  In the archive
# window, the `archiver' will display the content of the regular-
# file with the `suffix' as a plain text.

	.tar	tar	tvf
	.TAR	tar	tvf
	.tgz	gzip -dc | tar tvf -
	.taz	gzip -dc | tar tvf -
	.tar.z	gzip -dc | tar tvf -
	.tar.gz	gzip -dc | tar tvf -
	.tar.Z	gzip -dc | tar tvf -
	.TGZ	gzip -dc | tar tvf -
	.TAZ	gzip -dc | tar tvf -
	.tar.bz2	bzip2 -dc | tar tvf -
	.lzh	lha
	.LZH 	lha
	.zip	unzip	-l
	.ZIP	unzip 	-l

FILE
# format : `suffix' `program' (option)
#
# The `program' will display the content of the regular-file with
# the `suffix' as a plain text.

	.gz	gzip	-dc
	.bz2	bzip2	-dc
	.z	gzip	-dc			
	.GZ	gzip	-dc
	.Z	gzip	-dc
	.dvi	dvi2tty

EXEC
# format : `suffix' `program' (option)
#
# The `program' will be launched with argument of file that has `suffix'.

	.html	lynx
	.htm	lynx
	.info	info	-f
	.info.gz info	-f
#	.dvi	xdvi			
#	.dvi	dviout			

GREP
# format : `string'
#
# The `string' that will be used in EGREP or CUT.
# (String contains a space character must be enclosed within parentheses "".)

	^[0-9]*\.				 # FAQ etc.
	"^  [0-9]+\."				 # ^J^C for HELP
	"^  [0-9][0-9]+\."			 # ^J^B for HELP	
	"^[A-Z][A-Z]+"			 # MAN
	"diff \-"				 # diff file
	\/\*[a-z]*\*\/				 # tcb source
	^Question				 # Linux-FAQ
	"^Subject: "				 # Mailing list
	~$					 # backup file
	^					 # ~/.tcb/history 

PROGRAM
# format : `program' (option)
#
# The `program' that will be launched by PROGRAM.

	je
	mule
	mule -nw
	ng
	vi
	less
	dviout
	lynx
	info
	top
	lv
	lv -Ir

EDITOR
# format : `editor'
#
# The `editor' will be launched by EDIT.

	vi

BUFFER
# format : `size'
#
# The maximun `size' of the buffer (a unit is Kbytes) which will be
# allocated for the regular-file or archive.

	4096

CODE
# format : `code0' `code1' ...
#
# If a regular-file that has no above suffixes contains a control
# character under 0x20 excluding the ones set in here, it will be
# assumed as a binary file.  Tcb(1) will execute file(1) and
# display the code and the file-type. (If `code0' is equal to 0,
# this setting will be ignored.)

# ^A(TAGS)  \b  \t  \n  \f  \r  ^N(SO)  ^O(SI)  ^Z(EOF)  ^[(ESC)  ^_(info)
   1         8   9  10  12  13  14      15      26       27       31

SHELL
# format : `shell'
#
# It will specify SHELL as either bash(1) or tcsh(1).  You can't
# execute tcb(1) unless you define this setting when a login-
# `shell'.

	bash
#	tcsh

HISTORY
# format : `line'
#
# It determines the maximum `line' that will be saved to the HISTORY
# list.  When the value of `current-line / total-lines' are equal to 
# this line, the oldest line will be deleted.

	500

WAIT
# format : `wait' 
# 
# Built-in or keyboard macro will be executed at intervals of `wait'
# (a unit is 10 msec).

	1

SCROLL
# format : `flag' 
# 
# The `flag' for switching scroll-mode. (can be switched by ^Oh.)
# When the `flag' set, tcb window will scroll within the range above
# bottom line.

	0

LS
# format : `flag' 
# 
# The `flag' for switching display-mode of file-selector. (can be
# switched by ^Ol.)  When the `flag' set, file-selector window will
# be displayed without extra space-character.  If you want to
# display more faster in the directory contains many files, reset
# the `flag'.

	1

KEY
# Customizing keys described in the KEY mode.
#
# (1) ... Key No.(K-0 ... K-78) will be set to (6).
# (2) ... Any keys except for ESC can be set up to 2-stroke.
# (3) ... Though up to 2-stroke, only `F-?' or ESC can be used as the
#	  first key.  (Since K-54 and K-65 are also the first key,
#	  setting except for `F-?' and ESC can't be used.)
# (4) ... The string enclosed in "" will be used in KEY-mode.
# (5) ... The mode whose setting of `F-?' isn't one of the following keys
#	  can't be executed from the command-line such as the SHELL-prompt.
#	  (Following keys aren't used for the keys of `Command-line' 
#	  described in the HELP-mode.)
#
#         	C-j, C-o, C-t, C-x
#
# (6) ... Built-in macro definition (M-0 ... M-19).  Enclose in "" the 
#	  string which you want to use in `Command-line'.  The keys of (7) 
#	  will execute the definition.
# (7) ... Keys will execute the definition of (6).
# (8) ... Mark for the content of Setting.
# (9) ... Setting can be used in `pager' also.
#
# Notations :
#	  C-x ... Ctrl+'x'
#	  \cX ... Ctrl+'x'
# 	  ESC ... C-[
# 	  SPC ... Space

# <-- (2) -->             
F-?	<-- (8)
	C-x	# ^X							F-0
	C-j	# ^J							F-1
	C-x C-k # ^X^K							F-2
	C-o     # ^O							F-3
		#							F-4
		#							F-5
		#							F-6
		#							F-7
		#							F-8
		#							F-9

#  <-- (3) -->  <-- (4) -->                 		           <-- (1) -->
K-?	<-- (8)
	C-t	"TCB"	# ^T						K-0
  	F-1 C-h	"HELP"	# ^J^H						K-1
	C-g	"Return to previous mode"	# ^G			K-2
 	SPC	"Move window one page down"	# Space			K-3
	b	"Move window one page up"	# b			K-4
 	C-f	"Move window one page down"	# ^F			K-5
	C-b	"Move window one page up"	# ^B			K-6
	j	"Move window one line down"	# j			K-7
	k	"Move window one line up"	# k			K-8
	C-n	"Move cursor one line down"	# ^N			K-9
	C-p	"Move cursor one line up"	# ^P			K-10
	ESC <	"Move to beginning of buffer"	# ^[<			K-11
	ESC >	"Move to end of buffer"	# ^[>				K-12
	C-s	"FGREP   : Input string"	# ^S			K-13
	F-1 C-s	"EGREP   : Select string"	# ^J^S			K-14
	F-1 c	"CUT     : Input string (buffer)"	# ^Jc 		K-15
	F-1 C-c	"CUT     : Select string (buffer)"	# ^J^C		K-16
	F-1 b	"CUT     : Input string (regular file)"	# ^Jb		K-17
	F-1 C-b	"CUT     : Select string (regular file)"	# ^J^B	K-18
	F-1 d	"DU      : Execute `du'"	# ^Jd			K-19
	F-1 C-d	"DU      : Redisplay window"	# ^J^D			K-20
	F-1 l	"LOCATE  : Execute `locate'"	# ^Jl			K-21
	F-1 C-l	"LOCATE  : Redisplay window"	# ^J^L			K-22
	F-1 p	"PROGRAM : Input program name"	# ^Jp			K-23
	F-1 C-p	"PROGRAM : Select program name"	# ^J^P			K-24
	F-1 m	"MAN     : Input manual page"	# ^Jm			K-25
	F-1 C-m	"MAN     : Select manual page"	# ^J^M			K-26
	F-0 f	"FILE    : Input file name"	# ^Xf			K-27
	F-0 C-f	"FILE    : Select file name"	# ^X^F			K-28
	F-0 d	"DIR     : Input directory name"	# ^Xd		K-29
	F-0 C-d	"DIR     : Select directory name"	# ^X^D		K-30
	C-r	"HISTORY : History"	# ^R				K-31
	F-1 C-r	"COMMAND : Select program executed at SHELL"	# ^J^R	K-32
	F-2 c	"CP      : Copy file with SHELL window"	# ^X^Kc		K-33
	F-0 c	"CP      : Without SHELL window"	# ^Xc		K-34
	F-2 m	"MV      : Move file with SHELL window"	# ^X^Km		K-35
	F-0 m	"MV      : Without SHELL window"	# ^Xm		K-36
	F-2 r	"RM      : Delete file with SHELL window"	# ^X^Kr K-37
	F-0 r	"RM      : Without SHELL window"	# ^Xr		K-38
	F-2 a	"ARC     : Expand archive"	# ^X^Ka			K-39
	ESC s	"SHELL   : Move to SHELL"	# ^[s			K-40
	F-0 s	"SHELL   : Restart SHELL"	# ^Xs			K-41
	F-1 .	"SHELL   : Change current directory"	# ^J.		K-42
	F-1 ,	"SHELL   : Execute `ls -l'"	# ^J,			K-43
	F-1 w	"SHELL   : Display access-name"	# ^Jw			K-44
	F-1 C-w	"SHELL   : Display content of buffer"	# ^J^W		K-45
	C-i	"LIST    : Complete file name"	# ^I			K-46
	F-1 e	"EDIT    : Edit regular-file"	# ^Je			K-47
	F-2 e	"ERROR   : Standard error"	# ^X^Ke			K-48
	F-2 l	"LOG     : SHELL output"	# ^X^Kl			K-49
	F-0 C-c	"EXIT    : Exit tcb"	# ^X^C				K-50
	q	"Exit tcb (pager)"	# q				K-51
	F-1 C-k	"Move to file-selector"	# ^J^K				K-52
	F-3 C-k	"Move to parent directory"	# ^O^K			K-53
	F-1	"Move to the N-th directory"	# ^JN			K-54
	F-1 F-1	"Move to previous regular file"	# ^J^J			K-55
	C-m	"Read content of file to buffer"	# ^M		K-56
	F-3 C-m	"Read per line"	# ^O^M					K-57
	ESC C-m	"Read as is"	# ^[^M					K-58
	F-0 C-w	"Save buffer to ~/.tcb/w.tcb"	# ^X^W			K-59
	F-0 C-m	"Input destination (CP, MV, RM, ARC)"	# ^X^M		K-60
	F-0 C-y	"Mark all (CP, MV, RM, ARC)"	# ^X^Y			K-61
	F-0 C-n	"Clear all (CP, MV, RM, ARC)"	# ^X^N			K-62
	C-SPC	"Set mark"	# ^SPC					K-63
	F-0 F-0	"Get mark"	# ^X^X	 				K-64
	ESC	"Move to the N..th line"	# ^[N..			K-65
	C-l	"Redisplay current window"	# ^L			K-66
	F-3 h	"Switch scroll mode"	# ^Oh				K-67
	F-3 l	"Switch format of `ls' output"	# ^Ol			K-68
	F-3 a	"Switch ascii mode"	# ^Oa				K-69
	F-0 (	"Begin macro definition"	# ^X(			K-70
	F-0 )	"End macro definition"	# ^X)				K-71
	F-0 e	"Execute macro definition"	# ^Xe			K-72

#	<-- (6) -->
M-?	<-- (8)
P-?	<-- (9)
	K-2 K-10 K-56			# (;) ^G ^P ^M			M-0
P-?
	K-2 K-9 K-56			# (:) ^G ^N ^M			M-1
	K-2 K-2 K-10 K-56 K-56		# (+) ^G ^G ^P ^M ^M		M-2
	K-2 K-2 K-9 K-56 K-56		# (*) ^G ^G ^N ^M ^M		M-3
	K-56 K-10			# (,) ^M ^P			M-4
	K-56 K-9			# (.) ^M ^N			M-5
	K-56 K-2 K-10 K-56		# (<) ^M ^G ^N ^M		M-6
	K-56 K-2 K-9 K-56		# (>) ^M ^G ^N ^M		M-7
	K-27 "~/.tcb/tcbrc\cM" \
	K-14 "\cU^[A-Z]+\cM"		# (ESC t) ^Xf "..." ^J^S "..."	M-8
					# 				M-9
					# 				M-10
					# 				M-11
					# 				M-12
					# 				M-13
					# 				M-14
					# 				M-15
					# 				M-16
					# 				M-17
					# 				M-18
					# 				M-19

# <-- (7) -->
K-?
	;	"Move to previous line"			# (M-0)		K-80
	:	"Move to next line"			# (M-1)		K-81
	+	"Move to upper specific line"		# (M-2)		K-82
	*	"Move to lower specific line"		# (M-3)		K-83
	,	"Mark and move cursor one line up"	# (M-4)		K-84
	.	"Mark and move cursor one line down"	# (M-5)		K-85
	<	"Mark and Move to upper specific line"	# (M-6)		K-86
	>	"Mark and Move to lower specific line"	# (M-7)		K-87
	ESC t	"Search setting name in `~/.tcb/tcbrc'"	# (M-8)		K-88
							# (M-9)		K-89
							# (M-10)	K-90
							# (M-11)	K-91
							# (M-12)	K-92
							# (M-13)	K-93
							# (M-14)	K-94
							# (M-15)	K-95
							# (M-16)	K-96
							# (M-17)	K-97
							# (M-18)	K-98
							# (M-19)	K-99

