618 lines
16 KiB
Plaintext
618 lines
16 KiB
Plaintext
$Id: bbsjoerc,v 1.1 2002/03/06 22:37:01 mbroek Exp $
|
||
|
||
Initialization file for JOE
|
||
Restricted access Joe
|
||
|
||
JOE looks for this file in:
|
||
1 - .joerc
|
||
2 - $HOME/.joerc
|
||
3 - /usr/local/lib/joerc
|
||
|
||
This file can include other files by placing the following include command
|
||
in the first column:
|
||
|
||
:include filename
|
||
|
||
FIRST SECTION: Default global options (these options can also be specified
|
||
on the command line. Also the NOXON, LINES, COLUMNS, DOPADDING and BAUD
|
||
options can be specified in environment variables):
|
||
|
||
Put each option you want set in the first column:
|
||
|
||
-option Sets the option
|
||
--option Clears the option
|
||
|
||
-mid Cursor is recentered when scrolling is necessary
|
||
|
||
-marking Text between ^KB and cursor is highlighted (use with -lightoff)
|
||
|
||
-asis Characters 128 - 255 shown as-is
|
||
|
||
-force Force final newline when files are saved
|
||
|
||
-nobackups If you don't want backup files to be created
|
||
|
||
-lightoff Turn off highlighting after block copy or move
|
||
|
||
--exask ^KX always confirms file name
|
||
|
||
-beep Beep on errors and when cursor goes past extremes
|
||
|
||
-nosta Disable top-most status line
|
||
|
||
-keepup %k and %c status line escape sequences updated frequently
|
||
|
||
-pg nnn No. lines to keep for PgUp/PgDn
|
||
|
||
-csmode ^KF after a pervious search does a ^L instead
|
||
|
||
-backpath path Directory to store backup files
|
||
|
||
-nonotice Disable copyright notice
|
||
|
||
-noxon Attempt to turn off ^S/^Q processing
|
||
|
||
-orphan Put extra files given on command line in orphaned buffers
|
||
instead of in windows
|
||
|
||
-dopadding Output pad characters (for when there is no tty handshaking)
|
||
|
||
-lines nnn Set no. screen lines
|
||
|
||
-baud nnn Set baud rate for terminal optimizations
|
||
|
||
-columns nnn Set no. screen columns
|
||
|
||
-helpon Start with help on
|
||
|
||
-skiptop 4 Don't use top nnn lines of the screen
|
||
|
||
Status line definition strings. -lmsg defines the left-justified string and
|
||
-rmsg defines the right-justified string. The first character of -rmsg is
|
||
the background fill character. The following escape sequences can be used
|
||
in these strings:
|
||
|
||
%t 12 hour time
|
||
%u 24 hour time
|
||
%T O for overtype mode, I for insert mode
|
||
%W W if wordwrap is enabled
|
||
%I A if autoindent is enabled
|
||
%X Rectangle mode indicator
|
||
%n File name
|
||
%m '(Modified)' if file has been changed
|
||
%* '*' if file has been changed
|
||
%R Read-only indicator
|
||
%r Row (line) number
|
||
%c Column number
|
||
%o Byte offset into file
|
||
%O Byte offset into file in hex
|
||
%a Ascii value of character under cursor
|
||
%A Ascii value of character under cursor in hex
|
||
%p Percent of file cursor is at
|
||
%l No. lines in file
|
||
%k Entered prefix keys
|
||
%S '*SHELL*' if there is a shell running in window
|
||
%M Macro recording message
|
||
|
||
These formatting escape sequences may also be given:
|
||
|
||
\i Inverse
|
||
\u Underline
|
||
\b Bold
|
||
\d Dim
|
||
\f Blink
|
||
|
||
-lmsg \i%k%T%W%I%X %n %m%R %M
|
||
-rmsg %S Row %r Col %c %t Ctrl-K H for help
|
||
|
||
SECOND SECTION: File name dependant local option settings:
|
||
|
||
Each line with '*' in the first column indicates the modes which should be
|
||
set for files which match the regular expression. If more than one regular
|
||
expression matches the file name, then the last matching one is chosen.
|
||
|
||
Here are the modes which can be set:
|
||
|
||
-wordwrap Wordwrap
|
||
|
||
-autoindent Auto indent
|
||
|
||
-overwrite Overtype mode
|
||
|
||
-lmargin nnn Left margin
|
||
|
||
-rmargin nnn Right margin
|
||
|
||
-tab nnn Tab width
|
||
|
||
-indentc nnn Indentation character (32 for space, 9 for tab)
|
||
|
||
-istep nnn Number of indentation columns
|
||
|
||
-french One space after '.', '?' and '!' for wordwrap
|
||
and paragraph reformat instead of two. Joe
|
||
does not change the spacing you give, but
|
||
sometimes it must put spacing in itself. This
|
||
selects how much is inserted.
|
||
|
||
-spaces TAB inserts spaces instead of tabs.
|
||
|
||
-linums Enable line numbers on each line
|
||
|
||
-rdonly File is read-only
|
||
|
||
-keymap name Keymap to use if not 'main'
|
||
|
||
-lmsg Status line definition strings-
|
||
-rmsg see previous section for more info.
|
||
|
||
-mnew macro Macro to execute when new files are loaded
|
||
-mold macro Macro to execute when existing files are loaded
|
||
-msnew macro Macro to execute when new files are saved
|
||
-msold macro Macro to execute when existing files are saved
|
||
|
||
Macros for the above options are in the same format as in the key
|
||
binding section below- but without the key name strings.
|
||
|
||
*
|
||
-wordwrap
|
||
|
||
*.c
|
||
-mnew rtn,"/* This is a C file */",rtn
|
||
-autoindent
|
||
|
||
*.h
|
||
-autoindent
|
||
|
||
*akefile
|
||
*AKEFILE
|
||
*rc
|
||
|
||
*.p
|
||
-autoindent
|
||
|
||
THIRD SECTION: Named help screens:
|
||
|
||
Use \i to turn on/off inverse video
|
||
Use \u to turn on/off underline
|
||
Use \b to turn on/off bold
|
||
Use \d to turn on/off dim
|
||
Use \f to turn on/off flash
|
||
|
||
{Basic
|
||
\i Help Screen turn off with ^KH more help with ESC . (^[.) \i
|
||
\i \i\uCURSOR\u \uGO TO\u \uBLOCK\u \uDELETE\u \uMISC\u \uEXIT\u \i \i
|
||
\i \i^B left ^F right ^U prev. screen ^KB begin ^D char. ^KJ reformat ^KX save \i \i
|
||
\i \i^P up ^N down ^C next screen ^KK end ^Y line ^V Ins/Ovr ^KQ abort \i \i
|
||
\i \i^Z previous word ^A beg. of line ^KM move ^W >word ^R refresh \i \i
|
||
\i \i^X next word ^E end of line ^KC copy ^O word< ^@ ins char \i \i
|
||
\i \i\uSEARCH\u ^KU top of file ^KY delete ^J >line \uSPELL\u \i \i
|
||
\i \i^KF find text ^KV end of file ^_ undo ^[N word \i \i
|
||
\i \i^L find next ^KL to line No. ^^ redo ^[L file \i \i
|
||
}
|
||
|
||
{Windows
|
||
\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i
|
||
\i \i^KO Split the window in half \i \i
|
||
\i \i^KG Make current window bigger ^KT Make current window smaller \i \i
|
||
\i \i^KN Go to the window below ^KP Go to the window above \i \i
|
||
\i \i^KQ Eliminate the current window ^KI Show all windows / Show one window\i \i
|
||
}
|
||
|
||
{Advanced
|
||
\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i
|
||
\i \i\uMACROS\u \uMISC\u \uSCROLL\u \uGOTO\u \uI-SEARCH\u \i \i
|
||
\i \i^K[ 0-9 Record ^K SPACE status ^[W Up ^[B To ^KB ^[R Backwards\i \i
|
||
\i \i^K] Stop ^K\\ Repeat ^[Z Down ^[K To ^KK ^[S Forwards \i \i
|
||
\i \i^K 0-9 Play ^[M Math ^K< Left \uQUOTE\u \uDELETE\u \uBOOKMARKS\u \i \i
|
||
\i \i^K? Query ^KA Center line ^K> Right ` Ctrl- ^[Y yank ^[ 0-9 Goto \i \i
|
||
\i \i^[D Dump ^[H Message ^\\ Meta- ^[O line< ^[^[ Set \i \i
|
||
}
|
||
|
||
{Programs
|
||
\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i
|
||
\i \i\uGOTO\u \uINDENT\u \i \i
|
||
\i \i^G Matching ( [ { ^K, less \i \i
|
||
\i \i^K- Previous place ^K. more \i \i
|
||
\i \i^K= Next place \i \i
|
||
\i \i \i \i
|
||
}
|
||
|
||
{Search
|
||
\i Help Screen turn off with ^KH prev. screen ^[, next screen ^[. \i
|
||
\i \iSpecial search sequences: \i \i
|
||
\i \i \\^ \\$ matches beg./end of line \\? match any single char \i \i
|
||
\i \i \\< \\> matches beg./end of word \\* match 0 or more chars \i \i
|
||
\i \i \\c matches balanced C expression \\\\ matches a \\ \i \i
|
||
\i \i \\[..] matches one of a set \\n matches a newline \i \i
|
||
\i \i \\+ matches 0 or more of the character which follows the \\+ \i \i
|
||
\i \iSpecial replace sequences: \i \i
|
||
\i \i \\& replaced with text which matched search string \i \i
|
||
\i \i \\0 - 9 replaced with text which matched Nth \\*, \\?, \\c, \\+, or \\[..] \i \i
|
||
\i \i \\\\ replaced with \\ \\n replaced with newline \i \i
|
||
}
|
||
|
||
{Joe
|
||
\i Help Screen turn off with ^KH prev. screen ^[, \i
|
||
\i \i Send bug reports to: Joe Allen (jhallen@world.std.com) \i \i
|
||
}
|
||
|
||
FOURTH SECTION: Key bindings:
|
||
|
||
Section names you must provide:
|
||
|
||
:main For editing window
|
||
:prompt For prompt lines
|
||
:query For single-character query lines
|
||
:querya Singe-character query for quote
|
||
:querysr Search & Replace single-character query
|
||
|
||
Other sections may be given as well for organization purposes or for
|
||
use with the '-keymap' option.
|
||
|
||
Use:
|
||
:inherit name To copy the named section into the current one
|
||
:delete key To delete a key sequence from the current section
|
||
|
||
Keys:
|
||
|
||
Use ^@ through ^_ and ^? for Ctrl chars
|
||
Use SP for space
|
||
Use a TO b to generate a range of characters
|
||
|
||
You can also use termcap string capability names. For example:
|
||
|
||
.ku Up
|
||
.kd Down
|
||
.kl Left
|
||
.kr Right
|
||
.kh Home
|
||
.kH End
|
||
.kI Insert
|
||
.kD Delete
|
||
.kP PgUp
|
||
.kN PgDn
|
||
.k1 - .k9 F1 - F9
|
||
.k0 F0 or F10
|
||
.k; F10
|
||
|
||
Macros:
|
||
|
||
Simple macros can be made by comma seperating 2 or more command names. For
|
||
example:
|
||
|
||
bof,bol ^T Z Goto beginning of last line
|
||
|
||
Also quoted matter is typed in literally:
|
||
|
||
bol,">",dnarw .k1 Quote news article line
|
||
|
||
Macros may cross lines if they end with ,
|
||
|
||
:windows Bindings common to all windows
|
||
type U+0 TO U+10FFFF
|
||
abort ^K q Abort window
|
||
abort ^K Q
|
||
abort ^K ^Q
|
||
abort ^K q
|
||
arg ^K \ Repeat next command
|
||
explode ^K I Show all windows or show only one window
|
||
explode ^K ^I
|
||
explode ^K i
|
||
help ^K H Help menu
|
||
help ^K ^H
|
||
help ^K h
|
||
hnext ^[ . Next help window
|
||
hprev ^[ , Previous help window
|
||
math ^[ m Calculator
|
||
math ^[ M Calculator
|
||
math ^[ ^M Calculator
|
||
msg ^[ h Display a message
|
||
msg ^[ H Display a message
|
||
msg ^[ ^H Display a message
|
||
nextw ^K N Goto next window
|
||
nextw ^K ^N
|
||
nextw ^K n
|
||
pgdn .kN Screen down
|
||
pgdn ^C
|
||
pgdn ^[ [ 6 ~
|
||
pgup .kP Screen up
|
||
pgup ^U
|
||
pgup ^[ [ 5 ~
|
||
play ^K 0 TO 9 Execute macro
|
||
prevw ^K P Goto previous window
|
||
prevw ^K ^P
|
||
prevw ^K p
|
||
query ^K ? Macro query insert
|
||
record ^K [ Record a macro
|
||
retype ^R Refresh screen
|
||
rtn ^M Return
|
||
shell ^K Z Shell escape
|
||
shell ^K ^Z
|
||
shell ^K z
|
||
stop ^K ] Stop recording
|
||
|
||
:main Text editing window
|
||
:inherit windows
|
||
|
||
Spell-check macros
|
||
|
||
:def spellfile filt,"cat >ispell.tmp;ispell ispell.tmp </dev/tty >/dev/tty;cat ispell.tmp;/bin/rm ispell.tmp",rtn,retype
|
||
:def spellword 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
|
||
:def toggleinsert mode,"T"
|
||
spellword ^[ n
|
||
spellfile ^[ l
|
||
toggleinsert ^V
|
||
|
||
Extra functions not really part of JOE user interface:
|
||
|
||
delbol ^[ o Delete to beginning of line
|
||
delbol ^[ ^O Delete to beginning of line
|
||
dnslide ^[ z Scroll down one line
|
||
dnslide ^[ Z Scroll down one line
|
||
dnslide ^[ ^Z Scroll down one line
|
||
edit,rtn,filt,
|
||
query,parserr ^[ c Compile
|
||
edit,rtn,filt,
|
||
query,parserr ^[ ^C Compile
|
||
execmd ^[ x Prompt for command to execute
|
||
execmd ^[ X Prompt for command to execute
|
||
execmd ^[ ^X Prompt for command to execute
|
||
isrch ^[ s Forward incremental search
|
||
isrch ^[ S Forward incremental search
|
||
isrch ^[ ^S Forward incremental search
|
||
notmod ^[ ~ Not modified
|
||
nxterr ^[ = To next error
|
||
parserr ^[ e Parse errors in current buffer
|
||
parserr ^[ E Parse errors in current buffer
|
||
parserr ^[ ^E Parse errors in current buffer
|
||
prverr ^[ - To previous error
|
||
rsrch ^[ r Backward incremental search
|
||
rsrch ^[ R Backward incremental search
|
||
rsrch ^[ ^R Backward incremental search
|
||
run ^[ ! Run a program in a window
|
||
tomarkb ^[ b Go to beginning of marked block
|
||
tomarkb ^[ ^B Go to beginning of marked block
|
||
tomarkk ^[ k Go to end of marked block
|
||
tomarkk ^[ ^K Go to end of marked block
|
||
tomarkk ^[ K Go to end of marked block
|
||
txt ^[ i Prompt for text and insert it
|
||
txt ^[ ^I Prompt for text and insert it
|
||
txt ^[ I Prompt for text and insert it
|
||
upslide ^[ w Scroll up one line
|
||
upslide ^[ ^W Scroll up one line
|
||
upslide ^[ W Scroll up one line
|
||
yankpop ^[ y Undelete text
|
||
yankpop ^[ ^Y Undelete text
|
||
yankpop ^[ Y Undelete text
|
||
|
||
bufed ^[ d Menu of buffers
|
||
pbuf ^[ . Next buffer
|
||
nbuf ^[ , Prev buffer
|
||
query ^[ q Quoted insert
|
||
byte ^[ n Goto byte
|
||
col ^[ c Goto column
|
||
abortbuf ^[ k Kill current buffer- don't mess with windows
|
||
ask ^[ a Ask to save current buffer
|
||
bop ^[ p Backwards paragraph
|
||
bos ^[ x Bottom of screen
|
||
copy ^[ ^W Copy block into yank
|
||
dupw ^[ \ Split window
|
||
eop ^[ n Forwards paragraph
|
||
format ^[ j Format paragraph ignore block
|
||
markl ^[ l Mark line
|
||
nmark ^[ @ Turn off ^KB ^KK
|
||
pop ^[ > Pop ^KB ^KK
|
||
psh ^[ < Push ^KB ^KK
|
||
swap ^[ x Swap ^KB and cursor
|
||
tomarkbk ^[ g Switch between beginning and end of marked
|
||
tos ^[ e Top of screen
|
||
tw0 ^[ 0 Kill current window (orphans buffer)
|
||
tw1 ^[ 1 Kill all other windows (orphans buffers)
|
||
uarg ^[ u Universal argument
|
||
yank ^[ ^Y Undelete previous text
|
||
yapp ^[ w Append next delete to previous yank
|
||
|
||
Standard JOE user interface
|
||
|
||
quote8 ^\ Enter Meta chars
|
||
quote ` Enter Ctrl chars
|
||
|
||
backs ^? Backspace
|
||
backs ^H
|
||
backw ^O Backspace word
|
||
bknd ^K ' Shell window
|
||
blkcpy ^K C Copy marked block
|
||
blkcpy ^K ^C
|
||
blkcpy ^K c
|
||
blkdel ^K Y Delete marked block
|
||
blkdel ^K ^Y
|
||
blkdel ^K y
|
||
blkmove ^K M Move marked block
|
||
blkmove ^K ^M
|
||
blkmove ^K m
|
||
blksave ^K W Save marked block
|
||
blksave ^K ^W
|
||
blksave ^K w
|
||
bof ^K U Goto beginning of file
|
||
bof ^K ^U
|
||
bof ^K u
|
||
bol .kh Goto beginning of line
|
||
bol ^A
|
||
center ^K A Center line
|
||
center ^K ^A
|
||
center ^K a
|
||
crawll ^K < Pan left
|
||
crawlr ^K > Pan right
|
||
delch .kD Delete character
|
||
delch ^D
|
||
deleol ^J Delete to end of line
|
||
dellin ^Y Delete entire line
|
||
delw ^W Delete word to right
|
||
dnarw .kd Go down
|
||
dnarw ^N
|
||
dnarw ^[ O B
|
||
dnarw ^[ [ B
|
||
edit ^K E Edit a file
|
||
edit ^K ^E
|
||
edit ^K e
|
||
eof ^K V Go to end of file
|
||
eof ^K ^V
|
||
eof ^K v
|
||
eol .kH Go to end of line
|
||
eol ^E
|
||
exsave ^K X Save and exit
|
||
exsave ^K ^X
|
||
exsave ^K x
|
||
ffirst ^K F Find first
|
||
ffirst ^K ^F
|
||
ffirst ^K f
|
||
filt ^K / Filter block
|
||
fnext ^L Find next
|
||
fmtblk ^K J Format paragraphs in block
|
||
fmtblk ^K ^J
|
||
fmtblk ^K j
|
||
gomark ^[ 0 TO 9 Goto bookmark
|
||
groww ^K G Grow window
|
||
groww ^K ^G
|
||
groww ^K g
|
||
insc .kI Insert a space
|
||
insc ^@
|
||
insf ^K R Insert a file
|
||
insf ^K ^R
|
||
insf ^K r
|
||
lindent ^K , Indent to left
|
||
line ^K L Goto line no.
|
||
line ^K ^L
|
||
line ^K l
|
||
ltarw .kl Go left
|
||
ltarw ^B
|
||
ltarw ^[ O D
|
||
ltarw ^[ [ D
|
||
macros ^[ d Dump keyboard macros
|
||
macros ^[ ^D
|
||
markb ^K B Set beginning of marked block
|
||
markb ^K ^B
|
||
markb ^K b
|
||
markk ^K K Set end of marked block
|
||
markk ^K ^K
|
||
markk ^K k
|
||
mode ^T Options menu
|
||
nextpos ^K = Goto next position in position history
|
||
nextword ^X Goto next word
|
||
open ^] Split line
|
||
prevpos ^K - Previous position in history
|
||
prevword ^Z Previous word
|
||
redo ^^ Redo changes
|
||
rindent ^K . Indent to right
|
||
rtarw .kr Go right
|
||
rtarw ^F
|
||
rtarw ^[ O C
|
||
rtarw ^[ [ C
|
||
ask ^K D Save file- no prompt
|
||
ask ^K S
|
||
ask ^K ^D
|
||
ask ^K ^S
|
||
ask ^K d
|
||
ask ^K s
|
||
save ^K D Save file
|
||
save ^K S
|
||
save ^K ^D
|
||
save ^K ^S
|
||
save ^K d
|
||
save ^K s
|
||
setmark ^[ ^[ Set bookmark
|
||
shrinkw ^K T Shrink window
|
||
shrinkw ^K ^T
|
||
shrinkw ^K t
|
||
splitw ^K O Split window
|
||
splitw ^K ^O
|
||
splitw ^K o
|
||
stat ^K SP Show status
|
||
tag ^K ; Tags file search
|
||
tomatch ^G Goto matching parenthasis
|
||
undo ^_ Undo changes
|
||
uparw .ku Go up
|
||
uparw ^P
|
||
uparw ^[ O A
|
||
uparw ^[ [ A
|
||
|
||
:prompt Prompt windows
|
||
:inherit main
|
||
complete ^I
|
||
|
||
:menu Selection menus
|
||
:inherit windows
|
||
abort ^[ ^[
|
||
backsmenu ^?
|
||
backsmenu ^H
|
||
bofmenu ^K U
|
||
bofmenu ^K ^U
|
||
bofmenu ^K u
|
||
bolmenu .kh
|
||
bolmenu ^A
|
||
dnarwmenu .kd
|
||
dnarwmenu ^N
|
||
dnarwmenu ^[ [ B
|
||
dnarwmenu ^[ O B
|
||
eofmenu ^K V
|
||
eofmenu ^K ^V
|
||
eofmenu ^K v
|
||
eolmenu .kH
|
||
eolmenu ^E
|
||
ltarwmenu .kl
|
||
ltarwmenu ^B
|
||
ltarwmenu ^[ [ D
|
||
ltarwmenu ^[ O D
|
||
rtarwmenu .kr
|
||
rtarwmenu ^F
|
||
rtarwmenu ^[ [ C
|
||
rtarwmenu ^[ O C
|
||
rtn SP
|
||
rtn ^I
|
||
rtn ^K H
|
||
rtn ^K h
|
||
rtn ^K ^H
|
||
uparwmenu .ku
|
||
uparwmenu ^P
|
||
uparwmenu ^[ [ A
|
||
uparwmenu ^[ O A
|
||
|
||
:query Single-key query window
|
||
:inherit windows
|
||
|
||
:querya Single-key query window for quoting
|
||
type U+0 TO U+10FFFF
|
||
|
||
:querysr Search & replace query window
|
||
type U+0 TO U+10FFFF
|
||
|
||
:shell Input to shell windows
|
||
:inherit main
|
||
"" ^C Abort
|
||
"" ^D Eof
|
||
" " ^I Tab
|
||
"" ^H Backspace
|
||
"
|
||
" ^M Return
|
||
"" ^? Backspace
|
||
|
||
:vtshell Input to ANSI shell windows
|
||
:inherit main
|
||
"[A" [ A
|
||
"[A" .ku
|
||
"[B" [ B
|
||
"[B" .kd
|
||
"[C" [ C
|
||
"[C" .kr
|
||
"[D" [ D
|
||
"[D" .kl
|
||
"" ^A BOL for bash
|
||
"" ^C Abort
|
||
"" ^D Eof
|
||
"" ^E EOL for bash
|
||
" " ^I Tab
|
||
"" ^H Backspace
|
||
"
|
||
" ^M Return
|
||
"" ^? Backspace
|
||
|