"jupp" resource file for Jupp3.1*nix (c) 1997-2017 Thorsten Glaser Provided that these terms and disclaimer and all copyright notices are retained or reproduced in an accompanying document, permission is granted to deal in this work without restriction, including un- limited rights to use, publicly perform, distribute, sell, modify, merge, give away, or sublicence. This work is provided "AS IS" and WITHOUT WARRANTY of any kind, to the utmost extent permitted by applicable law, neither express nor implied; without malicious intent or gross negligence. In no event may a licensor, author or contributor be held liable for indirect, direct, other damage, loss, or other issues arising in any way out of dealing in the work, even if advised of the possibility of such damage or existence of a defect, except proven that it results out of said person's immediate fault when using the work as intended. -asis -assume_color -baud 9600 -dopadding --force -keepup -mid -nobackups -noxon -notite -pastetite -pg 2 -lmsg \i%k%T%*\b%n\b%R -rmsg R%r<%l C%c\u%o|%O\i\b%a|%A\b\i\u %u -hmsg ^J = Help --crlf -guess_crlf -french -hex -indentc 9 -istep 1 --guess_indent --autoindent -purify -highlight --linums -lmargin 1 -rmargin 73 --smarthome --indentfirst -smartbacks -tab 8 --wordwrap #HOOK#3101 global/default flags === Generic files No '.' in filename? * Assume it's a text file and, except in jupp, we want wordwrap on. -wordwrap Filename with '.' is probably not a text file. *.* === Patterns with multiple wildcards Order is latest match wins, so... */patch-* -highlight -syntax diff *.sh* -syntax sh *.ksh* -syntax sh *.mksh* -syntax sh *.bash* -syntax sh *tmp/mutt-* -wordwrap -syntax mail *tmp/pico.* -wordwrap -syntax mail */mail/* -syntax mail */patches/* -highlight -syntax diff === Assembly *.asm -syntax asm *.S -syntax asm *.s -syntax asm === C, C++, Objective-C *.C -syntax c *.c -syntax c *.cc -syntax c *.cpp -syntax c *.cxx -syntax c *.c++ -syntax c *.h -syntax c *.hh -syntax c *.hpp -syntax c *.h++ -syntax c *.m -syntax c *.nxc --highlight -syntax c === C Shell *.csh -syntax csh *.login -syntax csh *.logout -syntax csh *.tcsh -syntax csh *.tcshrc -syntax csh * +#!\+\[ ]\+\[a-z/]/\+tcsh\> -syntax csh * +#!\+\[ ]\+\[a-z/]/env\+\[ ]\+tcsh\> -syntax csh === Diff *.diff -highlight -syntax diff *.patch -highlight -syntax diff *.rej -highlight -syntax diff *.debdiff -highlight -syntax diff * +---\[ ] -highlight -syntax diff * +***\[ ] -highlight -syntax diff * +Index: \*\n====================================================== -highlight -syntax diff * +Index: \*\ndiff\*\n--- \*\n+++\[ ] -highlight -syntax diff * +\[=?]\*\n--- \*\n+++\[ ] -highlight -syntax diff * +diff\*\n--- \*\n+++\[ ] -highlight -syntax diff * +diff --git\*\nindex\*\n--- \*\n+++\[ ] -highlight -syntax diff === eMail *.eml -syntax mail Not quite eMail but still RFC822 *.mht -syntax mail === FORTRAN *.f -syntax fortran *.for -syntax fortran *.FOR -syntax fortran *.f77 -syntax fortran *.F77 -syntax fortran *.f90 -syntax fortran *.F90 -syntax fortran === GNU autoconf *.ac -syntax conf *.am -syntax conf === HTML *.htm -encoding utf8 -syntax html *.html -encoding utf8 -syntax html === Java *.java -encoding utf8 -syntax java === Joe Syntax File *.jsf -syntax conf === flex *.l -syntax lex === LISP *.lisp -syntax lisp *.lsp -syntax lisp *.el -syntax lisp === M4 *.m4 -syntax m4 === Make *akefile -syntax conf *AKEFILE -syntax conf === Mason *.mas -syntax mason === Pascal *.p -syntax pascal *.pas -syntax pascal === Perl *.pl -syntax perl *.pm -syntax perl * +#!\+\[ ]\+\[a-z/]/perl -syntax perl * +#!\+\[ ]\+\[a-z/]/env\+\[ ]perl -syntax perl === PHP *.php -syntax php === Python *.py -encoding utf8 -syntax python -tab 4 -indentc 32 -istep 4 -spaces * +#!\+\[ ]\+\[a-z/]/python -encoding utf8 -syntax python -tab 4 -indentc 32 -istep 4 -spaces * +#!\+\[ ]\+\[a-z/]/env\+\[ ]python -encoding utf8 -syntax python -tab 4 -indentc 32 -istep 4 -spaces === Bourne, Korn, POSIX Shell *profile -syntax sh * +:\[ \n] -syntax sh * +#!\+\[ ]\+\[a-z/]/\+\[bd]\+ash\> -syntax sh * +#!\+\[ ]\+\[a-z/]/env\+\[ ]\+\[bd]\+ash\> -syntax sh * +#!\+\[ ]\+\[a-z/]/\+\[a-z]ksh\+\[0-9._-]\> -syntax sh * +#!\+\[ ]\+\[a-z/]/env\+\[ ]\+\[a-z]ksh\+\[0-9._-]\> -syntax sh === TCL *.tcl -syntax tcl === TeX *.cls -syntax tex *.sty -syntax tex *.tex -syntax tex === Verilog *.v -syntax verilog -istep 2 *.vh -syntax verilog -istep 2 === VHDL *.vhd -syntax vhdl -istep 2 === XML *.xml -encoding utf8 -syntax xml === yacc *.y -syntax yacc #HOOK#3102 filename matching {Basic \i Help Screen turn off with ^J more help with ESC . (^[.) \i \i \i\u\bCURSOR\b\u \u\bGOTO\b\u \u\bBLOCK\b\u \u\bDELETE\b\u \u\bMISC\b\u \u\bEXIT\b\u \i \i \i \i^S left ^D right ^R prev. screen ^KV move ^G char ^B reformat ^KX save \i \i \i \i^E up ^X down ^C next screen ^KC copy ^Y line ^V overtype ^KQ abort \i \i \i \i^A previous word ^QS beg. of line ^KY kill ^T >word ^QL refresh ^KZ shell \i \i \i \i^F next word ^QD end of line ^K/ pipe ^QY >line ^O options \u\bFILE\b\u \i \i \i \i\u\bSEARCH\b\u ^QR top of file ^KB begin \u\bBUFFER\b\u ^KE new \i \i \i \i^QF find first ^QC end of file ^KK end ^U undo ^KR import \i \i \i \i^L find next ^QO byte offset ^KD reformat ^^ redo ^KW export \i \i } {Windows \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i \i \i^KO Split the window in half ^KE Load file into new window \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 \i \i^K; Run a ctags search ^K- Edit scratch buffer in new window \i \i \i \i Note: some commands (^KE ^K; ^K-) hide the current window; use ^KI/^KN then \i \i \i \i\u\bSpecial help for XON/XOFF aware terminals:\b\u \i \i \i \i You can use \b^[q\b and \b^[s\b instead of \b^Q\b and \b^S\b to initiate a command. \i \i } {Advanced \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i \i \i\u\bMACROS\b\u \u\bMISC\b\u \u\bSCROLL\b\u \u\bSHELL\b\u \u\bGOTO\b\u \u\bI-SEARCH\b\u \i \i \i \i^[( Record ^Q? status ^Q. Right ^K' Window ^QB to ^KB ^[R Backwards \i \i \i \i^[) Stop ^QQ repeat ^Q, Left ^[! Command ^QK to ^KK ^[S Forwards \i \i \i \i^[? Query ^QM Math \u\bCharSEARCH\b\u \u\bQUOTE\b\u \u\bDELETE\b\u \u\bBOOKMARKS\b\u \i \i \i \i^[D Dump ^[H Message ^QH forwrd ` Ctrl- ^[Y yank ^K 0-9 Set \i \i \i \i^[ 0-9 Play ^N Play #0 ^QG backwd ^P Meta- ^[O word< ^Q 0-9 Goto \i \i \i \i \u\bIn math mode,\b\u use 0xCAFE for hex. All ops are floating point internally. \i \i \i \i \u\bPredefined variables:\b\u byte col height line lines top width \i \i } {Programs \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i \i \i\u\bGOTO\b\u \u\bCOMPILING\b\u \u\bSLIDING\b\u \i \i \i \i^Q] matching brace, ^Q[ reverse ^[C compile & parse errors ^W up \i \i \i \i^Q= merge conflict marker ^[E parse errors ^Z down \i \i \i \i^Q- to column number \u\bINDENT\b\u ^KF save, compile & upload to NXT brick \i \i \i \i^QI to line number ^K. more \u\bGOTO AFTER COMPILING\b\u \u\bINSERT MATH\b\u \i \i \i \i^QP previous place ^K, less ^[N previous error ^[# equation \i \i \i \i^K= next place ^KA centre ^[M next error \u\bSPECIAL\b\u ^[= result \i \i \i \i ^K] kill whitespace at EOL ^[- jupp command line \i \i } {Search \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i \i \i\u\bSpecial search sequences:\b\u \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 \i\u\bSpecial replace sequences:\b\u \i \i \i \i \\& replaced with text which matched search string \i \i \i \i \\0 - 9 replaced with text which matched \bN\bth \\*, \\?, \\c, \\+, or \\[..] \i \i \i \i \\\\ replaced with \\ \\n replaced with newline \i \i } {Names \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i \i \i At file name prompts use the cursor up/down keys to access a history of \i \i \i \i recently used files or the tab key to complete them. \bSpecial file names:\b \i \i \i \i !command Pipe in/out of a shell command \i \i \i \i >>filename Append to a file \i \i \i \i - Read/Write to/from standard I/O \i \i \i \i filename,START,SIZE Read/Write a part of a file/device \i \i \i \i Give START/SIZE in decimal (255), octal (0377) or hex (0xFF) \i \i \i \i \u\bPresentation mode:\b\u F6=fullscreen; F7=previous, F8=next win; F9=filter/again \i \i } {Joe \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i \i \i \bJUPP\b is based upon JOE (Joe's Own Editor) 2.8/3.x \d(GPL v1)\d by Joe H. Allen; \i \i \i \i go to \uhttp://sf.net/projects/joe-editor/\u for upstream bug reports. JUPP 2.8 \i \i \i \i for DOS compiled by A. Totlis, packed with LHarc 2.13; JUPP 3.x for UNIX\d(R)\d \i \i \i \i at \uhttp://mirbsd.de/jupp\u and by \bThorsten "\dmirabilos\d" Glaser <\utg@mirbsd.org\u>\b \i \i \i \i @(#) jupprc 2017-08-08; 3.1; autoCR-LF; UTF-8 via locale; per-file encoding \i \i } #HOOK#3103 additional help screens {CharTable \i Help Screen turn off with ^J prev. screen ^[, \uCharacter Map\u \i \i \i Dec Hex \u 0123 4567 89AB CDEF 0123 4567 89AB CDEF \u Hex Dec \i \i \i \i | | \i \i \i \i 0 00 | \u@ABC\u \uDEFG\u \uHIJK\u \uLMNO\u | 80 128 \i \i \i \i 16 10 | \uPQRS\u \uTUVW\u \uXYZ[\u \u\\]^_\u | 90 144 \i \i \i \i 32 20 | !"# $%&' ()*+ ,-./ | A0 160 \i \i \i \i 48 30 | 0123 4567 89:; <=>? | B0 176 \i \i \i \i 64 40 | @ABC DEFG HIJK LMNO | C0 192 \i \i \i \i 80 50 | PQRS TUVW XYZ[ \\]^_ | D0 208 \i \i \i \i 96 60 | `abc defg hijk lmno | E0 224 \i \i \i \i 112 70 | pqrs tuvw xyz{ |}~ | F0 240 \i \i } {Paste \i \i \i \i \u\bPaste Mode\b\u turn off with \b^D\b or \b^[[201~\b \i \i } :windows #HOOK#3104 common keybindings type ^@ TO abort ^K Q abort ^K ^Q abort ^K q arg ^Q Q arg ^Q ^Q arg ^Q q arg ^[ q q explode ^K I explode ^K ^I explode ^K i explode ^[ [ 1 7 ~ help ^J help ^[ [ 1 1 ~ hnext ^[ . hprev ^[ , math ^Q M math ^Q ^M math ^Q m math ^[ q m mathins ^[ # mathres ^[ = msg ^[ H msg ^[ h nextw ^K N nextw ^K ^N nextw ^K n nextw ^[ [ 1 9 ~ play ^[ 0 TO 9 prevw ^K P prevw ^K ^P prevw ^K p prevw ^[ [ 1 8 ~ query ^[ ? quote ` quote8 ^P record ^[ ( retype ^Q L retype ^Q ^L retype ^Q l retype ^[ q l rtn ^M shell ^K Z shell ^K ^Z shell ^K z stop ^[ ) :Paste type ^@ TO rtn ^M msg,"Entered bracketed paste mode",rtn ^[ [ 2 0 0 ~ helpcard,rtn,keymap,"main",rtn,msg,rtn ^[ [ 2 0 1 ~ helpcard,rtn,keymap,"main",rtn ^D :Pastecua type ^@ TO rtn ^M msg,"Entered bracketed paste mode",rtn ^[ [ 2 0 0 ~ helpcard,rtn,keymap,"cua",rtn,msg,rtn ^[ [ 2 0 1 ~ helpcard,rtn,keymap,"cua",rtn ^D :Pasteprompt type ^@ TO nop ^L keymap,"prompt",rtn,msg,rtn,rtn ^M msg,"Entered bracketed paste mode",rtn ^[ [ 2 0 0 ~ keymap,"prompt",rtn,msg,rtn ^[ [ 2 0 1 ~ keymap,"prompt",rtn ^D :main :inherit windows :def freedroidz splitw,prevw,scratch,"nbc-Output",rtn,nextw,save,markk,bol,markb,prevw,prevw,blkcpy,nextw,nextw,rtn,prevw,eol,"'",bol,qrepl,"'",rtn,rtn,"'\\\\''",rtn,"r",backs,backs,backs,bol,"LC_ALL=C; export LC_ALL; fn='",eol,rtn,"p=--posix; sed $p -e q /dev/null 2>&1 || p=; fns=$(echo \"$fn\" | sed $p -e 's[^^][&]g; s\\^\\\\^g'); (case $fn in",rtn,"*.nxc) ;;",rtn,"*) echo '==> Error: filename not *.nxc'; exit ;;",rtn,"esac",rtn,"echo \"Compiling $fn\"",rtn,"nbc -sm- -d \"$fn\" 2>&1; x=$?",rtn,"if test $x = 0; then echo '==> OK'; else echo '==> Error code:' $x; fi",rtn,") | tr '\\n' '' | sed $p -e 's!# *\\([^]*\\)File \"[^\"]*/\\('\"$fns\"'\\)\" ; line \\([0-9]*\\)!\\2:\\3: \\1!g' -e 's!#\\([^]*\\)File \"\\([^\"]*\\)\" ; line \\([0-9]*\\)!\\2:\\3: \\1!g' | tr '' '\\n'",rtn,nmark,filt,"sh",rtn,rtn,"Press ^KQ to close this window!",rtn,parserr :def docompile edit,rtn,filt,query,parserr #HOOK#3105 main keybindings bof,qrepl,"\\[",quote,"i",quote,"k",quote,"l",quote,"m ]\\+\\[",quote,"i",quote,"k",quote,"l",quote,"m ]\\$",rtn,rtn,rtn,"r",eof ^K ] ffirst,"\\^\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[ \\n]",rtn,rtn,ltarw ^Q = begin_marking,uparw,toggle_marking ^[ [ 1 ; 2 A begin_marking,dnarw,toggle_marking ^[ [ 1 ; 2 B begin_marking,rtarw,toggle_marking ^[ [ 1 ; 2 C begin_marking,ltarw,toggle_marking ^[ [ 1 ; 2 D begin_marking,bol,toggle_marking ^[ [ 1 ; 2 H begin_marking,eol,toggle_marking ^[ [ 1 ; 2 F begin_marking,bof,toggle_marking ^[ [ 1 ; 6 H begin_marking,eof,toggle_marking ^[ [ 1 ; 6 F :def pastemain helpcard,"Paste",rtn,keymap,"Paste",rtn pastemain ^[ P pastemain ^[ p pastemain ^[ [ 2 0 0 ~ nop ^[ [ 2 0 1 ~ backs ^? backs ^H backw ^[ o bknd ^K ' bkwdc ^Q G ^@ TO bkwdc ^Q ^G ^@ TO bkwdc ^Q g ^@ TO bkwdc ^[ q g ^@ TO blkcpy ^K C blkcpy ^K ^C blkcpy ^K c blkdel ^K Y blkdel ^K ^Y blkdel ^K y blkmove ^K V blkmove ^K ^V blkmove ^K v blksave ^K W blksave ^K ^W blksave ^K w bof ^Q R bof ^Q ^R bof ^Q r bof ^[ [ 1 ; 5 H bof ^[ q r bol .kh bol ^Q S bol ^Q ^S bol ^Q s bol ^[ [ 1 ~ bol ^[ [ 7 ~ bol ^[ [ H bol ^[ q s bos ^Q X bos ^Q ^X bos ^Q x bos ^[ q x byte ^Q O byte ^Q ^O byte ^Q o byte ^[ q o center ^K A center ^K ^A center ^K a col ^Q - crawll ^Q , crawll ^[ q , crawlr ^Q . crawlr ^[ q . delbol ^Q ^? delbol ^Q ^H delbol ^[ q ^? delbol ^[ q ^H delch .kD delch ^G delch ^[ [ 3 ~ deleol ^Q Y deleol ^Q ^Y deleol ^Q y deleol ^[ q y dellin ^Y delw ^T dnarw .kd dnarw ^X dnarw ^[ O B dnarw ^[ [ B dnslide ^Z edit ^K E edit ^K ^E edit ^K e eof ^Q C eof ^Q ^C eof ^Q c eof ^[ [ 1 ; 5 F eof ^[ q c eol .@7 eol .kH eol ^Q D eol ^Q ^D eol ^Q d eol ^[ [ 4 ~ eol ^[ [ 8 ~ eol ^[ [ F eol ^[ q d execmd ^[ - exsave ^K X exsave ^K ^X exsave ^K x ffirst ^Q F ffirst ^Q ^F ffirst ^Q f ffirst ^[ q f filt ^K / nmark,filt,uparw ^[ [ 2 0 ~ fmtblk ^K D fmtblk ^K ^D fmtblk ^K d fnext .k3 fnext ^L fnext ^[ [ 1 3 ~ format ^B fwrdc ^Q H ^@ TO fwrdc ^Q ^H ^@ TO fwrdc ^Q h ^@ TO fwrdc ^[ q h ^@ TO gomark ^Q 0 TO 9 gomark ^[ q 0 TO 9 groww ^K G groww ^K ^G groww ^K g insf ^K R insf ^K ^R insf ^K r isrch ^[ S isrch ^[ s lindent ^K , line ^Q I line ^Q ^I line ^Q i line ^[ q i ltarw .kl ltarw ^S ltarw ^[ O D ltarw ^[ [ D ltarw ^[ s macros ^[ D macros ^[ d markb ^K B markb ^K ^B markb ^K b markk ^K K markk ^K ^K markk ^K k markl ^K L markl ^K ^L markl ^K l mode ^O mode,"T" .kI mode,"T" ^V nextpos ^K = nextword ^F nextword ^[ [ 1 ; 5 C nmark ^K H nmark ^K ^H nmark ^K h nxterr ^[ M nxterr ^[ m open ^[ b docompile ^[ C docompile ^[ c parserr ^[ E parserr ^[ e freedroidz ^K F freedroidz ^K ^F freedroidz ^K f pgdn .kN pgdn ^C pgdn ^[ [ 6 ~ pgup .kP pgup ^R pgup ^[ [ 5 ~ play,"0" ^N prevpos ^Q P prevpos ^Q ^P prevpos ^Q p prevpos ^[ q p prevword ^A prevword ^[ [ 1 ; 5 D prverr ^[ N prverr ^[ n qrepl ^Q A qrepl ^Q ^A qrepl ^Q a qrepl ^[ q a redo ^^ rindent ^K . rsrch ^[ R rsrch ^[ r rtarw .kr rtarw ^D rtarw ^[ O C rtarw ^[ [ C run ^[ ! save ^K S save ^K ^S save ^K s scratch,"(S) " ^K - setmark ^K 0 TO 9 shrinkw ^K T shrinkw ^K ^T shrinkw ^K t splitw ^K O splitw ^K ^O splitw ^K o stat ^Q ? stat ^[ q ? tag ^K ; tomarkb ^Q B tomarkb ^Q ^B tomarkb ^Q b tomarkb ^[ q b tomarkk ^Q K tomarkk ^Q ^K tomarkk ^Q k tomarkk ^[ q k rvmatch ^Q [ tomatch ^Q ] rvmatch ^Q ^[ tomatch ^Q ^] rvmatch ^[ q [ tomatch ^[ q ] tos ^Q E tos ^Q ^E tos ^Q e tos ^[ q e undo ^U undo ^_ uparw .ku uparw ^E uparw ^[ O A uparw ^[ [ A upslide ^W yankpop ^[ Y yankpop ^[ y :prompt :inherit main :def pasteprompt keymap,"Pasteprompt",rtn,msg,"Entered bracketed paste mode",rtn abort ^C complete ^I nop ^L pasteprompt ^[ P pasteprompt ^[ p pasteprompt ^[ [ 2 0 0 ~ :menu :inherit windows abort ^[ ^[ backsmenu ^? backsmenu ^H bofmenu ^Q R bofmenu ^Q ^R bofmenu ^Q r bofmenu ^[ [ 1 ; 5 H bofmenu ^[ q r bolmenu .kh bolmenu ^Q S bolmenu ^Q ^S bolmenu ^Q s bolmenu ^[ [ 1 ~ bolmenu ^[ [ 7 ~ bolmenu ^[ [ H bolmenu ^[ q s dnarwmenu .kd dnarwmenu ^X dnarwmenu ^[ O B dnarwmenu ^[ [ B eof ^[ [ 1 ; 5 F eofmenu ^Q C eofmenu ^Q ^C eofmenu ^Q c eofmenu ^[ q c eolmenu .@7 eolmenu .kH eolmenu ^Q D eolmenu ^Q ^D eolmenu ^Q d eolmenu ^[ [ 4 ~ eolmenu ^[ [ 8 ~ eolmenu ^[ [ F eolmenu ^[ q d ltarwmenu .kl ltarwmenu ^S ltarwmenu ^[ O D ltarwmenu ^[ [ D ltarwmenu ^[ s rtarwmenu .kr rtarwmenu ^D rtarwmenu ^[ O C rtarwmenu ^[ [ C rtn SP rtn ^I rtn ^J uparwmenu .ku uparwmenu ^E uparwmenu ^[ O A uparwmenu ^[ [ A :query :inherit windows :querya type ^@ TO :querysr type ^@ TO :cua :inherit main #HOOK#3106 extra keybindings in CUA mode :def pastecua helpcard,"Paste",rtn,keymap,"Pastecua",rtn undo ^Z blkdel,nmark ^X copy ^C yank ^V pastecua ^[ P pastecua ^[ p pastecua ^[ [ 2 0 0 ~