1 "jupp" resource file for Jupp3.1*nix (c) 1997-2017 Thorsten Glaser
2 Provided that these terms and disclaimer and all copyright notices
3 are retained or reproduced in an accompanying document, permission
4 is granted to deal in this work without restriction, including un-
5 limited rights to use, publicly perform, distribute, sell, modify,
6 merge, give away, or sublicence.
7 This work is provided "AS IS" and WITHOUT WARRANTY of any kind, to
8 the utmost extent permitted by applicable law, neither express nor
9 implied; without malicious intent or gross negligence. In no event
10 may a licensor, author or contributor be held liable for indirect,
11 direct, other damage, loss, or other issues arising in any way out
12 of dealing in the work, even if advised of the possibility of such
13 damage or existence of a defect, except proven that it results out
14 of said person's immediate fault when using the work as intended.
28 -lmsg \i%k%T%*\b%n\b%R
29 -rmsg R%r<%l C%c\u%o|%O\i\b%a|%A\b\i\u %u
50 #HOOK#3101 global/default flags
55 Assume it's a text file and, except in jupp, we want wordwrap on.
58 Filename with '.' is probably not a text file.
61 === Patterns with multiple wildcards
62 Order is latest match wins, so...
104 === C, C++, Objective-C
159 +#!\+\[ ]\+\[a-z/]/\+tcsh\>
163 +#!\+\[ ]\+\[a-z/]/env\+\[ ]\+tcsh\>
194 +Index: \*\n======================================================
199 +Index: \*\ndiff\*\n--- \*\n+++\[ ]
204 +\[=?]\*\n--- \*\n+++\[ ]
209 +diff\*\n--- \*\n+++\[ ]
214 +diff --git\*\nindex\*\n--- \*\n+++\[ ]
222 Not quite eMail but still RFC822
317 +#!\+\[ ]\+\[a-z/]/perl
321 +#!\+\[ ]\+\[a-z/]/env\+\[ ]perl
338 +#!\+\[ ]\+\[a-z/]/python
347 +#!\+\[ ]\+\[a-z/]/env\+\[ ]python
355 === Bourne, Korn, POSIX Shell
364 +#!\+\[ ]\+\[a-z/]/\+\[bd]\+ash\>
368 +#!\+\[ ]\+\[a-z/]/env\+\[ ]\+\[bd]\+ash\>
372 +#!\+\[ ]\+\[a-z/]/\+\[a-z]ksh\+\[0-9._-]\>
376 +#!\+\[ ]\+\[a-z/]/env\+\[ ]\+\[a-z]ksh\+\[0-9._-]\>
416 #HOOK#3102 filename matching
419 \i Help Screen turn off with ^J more help with ESC . (^[.) \i
420 \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
421 \i \i^S left ^D right ^R prev. screen ^KV move ^G char ^B reformat ^KX save \i \i
422 \i \i^E up ^X down ^C next screen ^KC copy ^Y line ^V overtype ^KQ abort \i \i
423 \i \i^A previous word ^QS beg. of line ^KY kill ^T >word ^QL refresh ^KZ shell \i \i
424 \i \i^F next word ^QD end of line ^K/ pipe ^QY >line ^O options \u\bFILE\b\u \i \i
425 \i \i\u\bSEARCH\b\u ^QR top of file ^KB begin \u\bBUFFER\b\u ^KE new \i \i
426 \i \i^QF find first ^QC end of file ^KK end ^U undo ^KR import \i \i
427 \i \i^L find next ^QO byte offset ^KD reformat ^^ redo ^KW export \i \i
431 \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i
432 \i \i^KO Split the window in half ^KE Load file into new window \i \i
433 \i \i^KG Make current window bigger ^KT Make current window smaller \i \i
434 \i \i^KN Go to the window below ^KP Go to the window above \i \i
435 \i \i^KQ Eliminate the current window ^KI Show all windows / Show one window \i \i
436 \i \i^K; Run a ctags search ^K- Edit scratch buffer in new window \i \i
437 \i \i Note: some commands (^KE ^K; ^K-) hide the current window; use ^KI/^KN then \i \i
438 \i \i\u\bSpecial help for XON/XOFF aware terminals:\b\u \i \i
439 \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
443 \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i
444 \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
445 \i \i^[( Record ^Q? status ^Q. Right ^K' Window ^QB to ^KB ^[R Backwards \i \i
446 \i \i^[) Stop ^QQ repeat ^Q, Left ^[! Command ^QK to ^KK ^[S Forwards \i \i
447 \i \i^[? Query ^QM Math \u\bCharSEARCH\b\u \u\bQUOTE\b\u \u\bDELETE\b\u \u\bBOOKMARKS\b\u \i \i
448 \i \i^[D Dump ^[H Message ^QH forwrd ` Ctrl- ^[Y yank ^K 0-9 Set \i \i
449 \i \i^[ 0-9 Play ^N Play #0 ^QG backwd ^P Meta- ^[O word< ^Q 0-9 Goto \i \i
450 \i \i \u\bIn math mode,\b\u use 0xCAFE for hex. All ops are floating point internally. \i \i
451 \i \i \u\bPredefined variables:\b\u byte col height line lines top width \i \i
455 \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i
456 \i \i\u\bGOTO\b\u \u\bCOMPILING\b\u \u\bSLIDING\b\u \i \i
457 \i \i^Q] matching brace, ^Q[ reverse ^[C compile & parse errors ^W up \i \i
458 \i \i^Q= merge conflict marker ^[E parse errors ^Z down \i \i
459 \i \i^Q- to column number \u\bINDENT\b\u ^KF save, compile & upload to NXT brick \i \i
460 \i \i^QI to line number ^K. more \u\bGOTO AFTER COMPILING\b\u \u\bINSERT MATH\b\u \i \i
461 \i \i^QP previous place ^K, less ^[N previous error ^[# equation \i \i
462 \i \i^K= next place ^KA centre ^[M next error \u\bSPECIAL\b\u ^[= result \i \i
463 \i \i ^K] kill whitespace at EOL ^[- jupp command line \i \i
467 \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i
468 \i \i\u\bSpecial search sequences:\b\u \i \i
469 \i \i \\^ \\$ matches beg./end of line \\? match any single char \i \i
470 \i \i \\< \\> matches beg./end of word \\* match 0 or more chars \i \i
471 \i \i \\c matches balanced C expression \\\\ matches a \\ \i \i
472 \i \i \\[..] matches one of a set \\n matches a newline \i \i
473 \i \i \\+ matches 0 or more of the character which follows the \\+ \i \i
474 \i \i\u\bSpecial replace sequences:\b\u \i \i
475 \i \i \\& replaced with text which matched search string \i \i
476 \i \i \\0 - 9 replaced with text which matched \bN\bth \\*, \\?, \\c, \\+, or \\[..] \i \i
477 \i \i \\\\ replaced with \\ \\n replaced with newline \i \i
481 \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i
482 \i \i At file name prompts use the cursor up/down keys to access a history of \i \i
483 \i \i recently used files or the tab key to complete them. \bSpecial file names:\b \i \i
484 \i \i !command Pipe in/out of a shell command \i \i
485 \i \i >>filename Append to a file \i \i
486 \i \i - Read/Write to/from standard I/O \i \i
487 \i \i filename,START,SIZE Read/Write a part of a file/device \i \i
488 \i \i Give START/SIZE in decimal (255), octal (0377) or hex (0xFF) \i \i
489 \i \i \u\bPresentation mode:\b\u F6=fullscreen; F7=previous, F8=next win; F9=filter/again \i \i
493 \i Help Screen turn off with ^J prev. screen ^[, next screen ^[. \i
494 \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
495 \i \i go to \uhttp://sf.net/projects/joe-editor/\u for upstream bug reports. JUPP 2.8 \i \i
496 \i \i for DOS compiled by A. Totlis, packed with LHarc 2.13; JUPP 3.x for UNIX\d(R)\d \i \i
497 \i \i at \uhttp://mirbsd.de/jupp\u and by \bThorsten "\dmirabilos\d" Glaser <\utg@mirbsd.org\u>\b \i \i
498 \i \i @(#) jupprc 2017-08-08; 3.1; autoCR-LF; UTF-8 via locale; per-file encoding \i \i
501 #HOOK#3103 additional help screens
504 \i Help Screen turn off with ^J prev. screen ^[, \uCharacter Map\u \i
505 \i \i Dec Hex \u 0123 4567 89AB CDEF 0123 4567 89AB CDEF \u Hex Dec \i \i
507 \i \i 0 00 | \u@ABC\u \uDEFG\u \uHIJK\u \uLMNO\u
\80\81\82\83 \84\85\86\87 \88\89\8a\8b \8c\8d\8e\8f | 80 128 \i \i
508 \i \i 16 10 | \uPQRS\u \uTUVW\u \uXYZ[\u \u\\]^_\u
\90\91\92\93 \94\95\96\97 \98\99\9a\9b \9c\9d\9e\9f | 90 144 \i \i
509 \i \i 32 20 | !"# $%&' ()*+ ,-./ ¡¢£ ¤¥¦§ ¨©ª« ¬®¯ | A0 160 \i \i
510 \i \i 48 30 | 0123 4567 89:; <=>? °±²³ ´µ¶· ¸¹º» ¼½¾¿ | B0 176 \i \i
511 \i \i 64 40 | @ABC DEFG HIJK LMNO ÀÁÂÃ ÄÅÆÇ ÈÉÊË ÌÍÎÏ | C0 192 \i \i
512 \i \i 80 50 | PQRS TUVW XYZ[ \\]^_ ÐÑÒÓ ÔÕÖ× ØÙÚÛ ÜÝÞß | D0 208 \i \i
513 \i \i 96 60 | `abc defg hijk lmno àáâã äåæç èéêë ìíîï | E0 224 \i \i
514 \i \i 112 70 | pqrs tuvw xyz{ |}~
\7f ðñòó ôõö÷ øùúû üýþÿ | F0 240 \i \i
519 \i \i \u\bPaste Mode\b\u turn off with \b^D\b or \b^[[201~\b \i \i
523 #HOOK#3104 common keybindings
574 msg,"Entered bracketed paste mode",rtn ^[ [ 2 0 0 ~
575 helpcard,rtn,keymap,"main",rtn,msg,rtn ^[ [ 2 0 1 ~
576 helpcard,rtn,keymap,"main",rtn ^D
581 msg,"Entered bracketed paste mode",rtn ^[ [ 2 0 0 ~
582 helpcard,rtn,keymap,"cua",rtn,msg,rtn ^[ [ 2 0 1 ~
583 helpcard,rtn,keymap,"cua",rtn ^D
588 keymap,"prompt",rtn,msg,rtn,rtn ^M
589 msg,"Entered bracketed paste mode",rtn ^[ [ 2 0 0 ~
590 keymap,"prompt",rtn,msg,rtn ^[ [ 2 0 1 ~
591 keymap,"prompt",rtn ^D
595 :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 >/dev/null 2>&1 || p=; fns=$(echo \"$fn\" | sed $p -e 's
\ 1[^^]
\ 1[&]
\ 1g; s
\ 1\\^
\ 1\\\\^
\ 1g'); (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' '
\ 1' | sed $p -e 's!
\ 1# *\\([^
\ 1]*\\)
\ 1File \"[^\"]*/\\('\"$fns\"'\\)\" ; line \\([0-9]*\\)
\ 1!
\ 1\\2:\\3: \\1
\ 1!g' -e 's!
\ 1#\\([^
\ 1]*\\)
\ 1File \"\\([^\"]*\\)\" ; line \\([0-9]*\\)
\ 1!
\ 1\\2:\\3: \\1
\ 1!g' | tr '
\ 1' '\\n'",rtn,nmark,filt,"sh",rtn,rtn,"Press ^KQ to close this window!",rtn,parserr
596 :def docompile edit,rtn,filt,query,parserr
597 #HOOK#3105 main keybindings
598 bof,qrepl,"\\[",quote,"i",quote,"k",quote,"l",quote,"m ]\\+\\[",quote,"i",quote,"k",quote,"l",quote,"m ]\\$",rtn,rtn,rtn,"r",eof ^K ]
599 ffirst,"\\^\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[<>=]\\[ \\n]",rtn,rtn,ltarw ^Q =
600 begin_marking,uparw,toggle_marking ^[ [ 1 ; 2 A
601 begin_marking,dnarw,toggle_marking ^[ [ 1 ; 2 B
602 begin_marking,rtarw,toggle_marking ^[ [ 1 ; 2 C
603 begin_marking,ltarw,toggle_marking ^[ [ 1 ; 2 D
604 begin_marking,bol,toggle_marking ^[ [ 1 ; 2 H
605 begin_marking,eol,toggle_marking ^[ [ 1 ; 2 F
606 begin_marking,bof,toggle_marking ^[ [ 1 ; 6 H
607 begin_marking,eof,toggle_marking ^[ [ 1 ; 6 F
608 :def pastemain helpcard,"Paste",rtn,keymap,"Paste",rtn
611 pastemain ^[ [ 2 0 0 ~
706 nmark,filt,uparw ^[ [ 2 0 ~
754 nextword ^[ [ 1 ; 5 C
780 prevword ^[ [ 1 ; 5 D
840 :def pasteprompt keymap,"Pasteprompt",rtn,msg,"Entered bracketed paste mode",rtn
846 pasteprompt ^[ [ 2 0 0 ~
912 #HOOK#3106 extra keybindings in CUA mode
913 :def pastecua helpcard,"Paste",rtn,keymap,"Pastecua",rtn
920 pastecua ^[ [ 2 0 0 ~