@ref-lib fun/tags-mac.r file-reference @ref-lib fun/autolang.r known-endings @ref-lib modeori-fun/autoterm.r list @ref-lib fun/sokoban.r sokoban-call-ref @ref-lib fun/global-ref regexp-reference cmd-reference @ref-see-also See also in %s. @{{{ @ref-header ModeOri-Reference-Card @ref-title ModeOri Reference-Card @ref-author W. Stumvoll This is the reference-file for `ModeOri', a binding for the folding-editor Origami. @}}} @{{{ ModeOri-Reference-Card This document is generated automatically, following the actual configuration of ModeOri. Therefor some chapters might be skipped, to use the same chapter numbers in all configurations of ModeOri. @{{{ Global Informations @{{{ ModeOri Usage In addition to standard Origami-features, ModeOri supports several new modes, for example: @{{{ Edit-Mode and Move-Mode You can switch from editing-environment (Edit-Mode, marked with `Edit' or `E' in the statusline) to Move-Mode (marked with `Move' or `M'), which is used to define regions of text. The normal editing-functions (like `delete-line') work on a regions instead of the current line in this mode and return to editing afterwards. @}}} @{{{ @short Buffer-Handling-Mode Control the screen layout of multiple buffers. @}}} @if-using ( L-EXT ) @{{{ Extended-Mode In Edit-Mode you can choose an Extended-Mode (marked with `Ext' or `X') in the statusline). This mode changes the meaning of {,(,[,;,",' and space. Instead of the normal text-character, complexer structures are put into the text, depending on the current folding-language. @}}} @fi @{{{ Line-Movement-Mode Line-movements (`previous-line' and `next-line') are handled in two different ways, depending on set or unset mode `filebased-cursor-motion': @ref-start-tbl Mode 12 Mark 4 Effect 24 screen-based @@ % @@ closed folds file-based @@ @@ opens closed folds @ref-end-tbl @}}} @{{{ Wrap Around Mode wrap is marked with `Wrap' or `W' in the statusline. If this mode is active, typing a space at the end of a long line automagically opens a new line. Break length is given by fill-paragraph width. @}}} @ref-see-also C-> %s. @{{{ @autolang-ref auto-language switching @}}} @ref-see-also See also in %s. @if-using ( SHELL-MODE ) @{{{ ModeOri and its mini-shell If command line option -Oshell is active, ModeOri will start as a mini-shell. This can be used to copy/move/remove files, walk through directory trees. @}}} @fi @{{{ Environment and Command Line Options Many features of ModeOri can be controlled using command line options: @{{{ @cmd-opt Origami Command Line Options @}}} @{{{ ModeOri Command Line Options You can use the following names, to switch on[off] the corresponding mode using `-Oname': @ref-start-tbl Option 16 Function 50 @if-using ( SHELL-MODE ) noshell @@ start as editor shell @@ start menu driven mini-shell xshell @@ start menu driven mini-shell in expert mode @fi [no]stat @@ statusline [no]ext @@ extended mode [no]bs @@ buffer-save [no]pos @@ display position [no]ld @@ long diredit display [no]high @@ highlighting [no]center @@ center cursor line [no|x]magic @@ regular expression mode [no]ai @@ auto-indent [no]full @@ full-shift [no]al @@ auto-language setting [no]time @@ time display default @@ set all modes to their defaults. slow @@ like default, but disable: @@ position display @@ high-lighting @@ full-shift @@ regular-expression search @@ long diredit display @ref-end-tbl However, command line options are handled left to right. The option -Onooverstrike calls the function no-overstrike, when the first file is read. This can be used to use ModeOri as pager for roff output. The following options pass strings to ModeOri: @ref-start-tbl Option 16 Function 50 tags=file @@ use `file', not default path list for tags. gotags=tag @@ use `tag' to move to the tagged position @@ `tag' may be a prefix of a tag. make=cmd @@ use `cmd' instead of the default command spell=cmd @@ use `cmd' instead of the default command @if-using ( SHELL-MODE ) mail=cmd @@ use `cmd' instead of the default command nn=cmd @@ use `cmd' instead of the default command @fi @ref-end-tbl The following mark sets are predefined for Origami Option `-m': @ref-start-tbl Name 8 Open 5 Line 5 Close 5 File 5 pascal @@ <<< @@ ... @@ >>> @@ ::: script @@ ##@ @@ ... @@ ##$ @@ ##: @ref-end-tbl @}}} Some of the commands need a correct initialized environment. The needed resources are: @if-using ( W-GET-X-SEL ) @{{{ selection @ref-start-item environment-variable: GETSELECTION Calling $GETSELECTION must write the selection of your window-system to the standard-output. @ref-end-item @}}} @fi @ref-see-also C-> %s. @{{{ @tags-mac-ref Tags file @}}} @ref-see-also See also in %s. @{{{ library path @ref-start-item environement-variable ORIGAMILIBPATH This variable contains a `:' separated list of directories, used by `enter-fold' in extended mode for include-lines. @ref-end-item @}}} @{{{ make command @ref-start-item environment-variable: MAKE_CMD You have to set this environment-variable to your favourite make-command, to use the `call-make' function (default is `make'). @if-using ( SHELL-MODE ) This command is also used by the Make item in the ModeOriShell. @fi @{{{ using -O @}}} @ref-end-item @}}} @{{{ spell command @ref-start-item environment-variable: SPELL_CMD You have to set this environment-variable to your favourite spell-checking-command, to use the `spell' function (default is `spell'). @{{{ using -O @}}} @ref-end-item @}}} @{{{ mail command @ref-start-item environment-variable: MAIL_CMD You have to set this environment-variable to your favourite mail processing command, to use the Postbox item in the ModeOriShell. @{{{ using -O @}}} @ref-end-item @}}} @if-using ( SHELL-MODE ) @{{{ @shell-mode nn command @ref-start-item environment-variable: NN_CMD You have to set this environment-variable to your favourite news reader, to use the News item in the ModeOriShell. @{{{ using -O @}}} @ref-end-item @}}} @{{{ @shell-mode edit command @ref-start-item environment-variable: EDIT_CMD Set this variable to your favourite editor, if you do not want to use ModeOri. @ref-end-item @}}} @fi @}}} @}}} @{{{ Keyboard and Key Usage @{{{ how to reach commands @{{{ escape key followed by 2 character code The letters are a short-representations of the command, eg: @ref-start-tbl Keysequence 12 Function 32 esc a t @@ toggle-attach-file-to-fold esc + v @@ add view-mode esc - v @@ delete view-mode @ref-end-tbl @}}} @{{{ cursor keypad Normal cursor movement is supported. The right keypad can be used as a function keypad. Key R13 is used as a `Meta' key. Keys, which are used with a leading R13 are represented by `R13/Meta-'. For example: @ref-start-tbl Keysequence 12 Representation 14 Function 16 R8 @@ R8 @@ previous-line R13 R8 @@ R13/Meta-R8 @@ mtool-top R13 g @@ R13/Meta-g @@ goto-line @ref-end-tbl @{{{ general layout of the keypad @ref-start-tbl Key/f/meta-f 19 Key/f/meta-f 19 Key/f/meta-f 19 R1 @@ R2 @@ R3 beginning-of-fold @@ kill-line @@ end-of-fold previous-page @@ move-line @@ next-page R4 @@ R5 @@ R6 open-fold @@ copy-to-kill-buf @@ close-fold enter-fold @@ double-line @@ exit-fold R7 @@ R8 @@ R9 beginning-of-line @@ previous-line @@ end-of-line undo-delete-line @@ mtool-top @@ delete-line R10 @@ R11 @@ R12 backward-character @@ ins-folded-kill-b @@ forward-character backward-word @@ toggle-file-fold @@ forward-word R13 @@ R14 @@ R15 (*) @@ next-line @@ create-fold center-and-redraw @@ mtool-bot @@ unfold-fold @ref-end-tbl The first command is activated by pressing the corresponding key. The second command is activated, by pressing R13, followed by the corresponding key. Because of this (*) does not call any command! The meaning of the above mentioned commands is explained in the following chapters! The above given bindings is for normal editing. In some modes, other or no commands are bound to the keys. @{{{ keysequences used for ORIGAMITERM="sun" Redefining the terminal definition in your environement (for example xterm translation tables) enable the usage of ORITERM="sun" for other terminals. Modeori expects the following keysequences, if ORIGAMITERM is set to "sun": @ref-start-tbl Keyname 9 Sequence 16 @@ Keyname 9 Sequence 16 backspace @@ C-H @@ f1 @@ C-[ [ 2 2 4 z delete @@ C-? @@ f2 @@ C-[ [ 2 2 5 z tab @@ C-I @@ f3 @@ C-[ [ 2 2 6 z down @@ C-[ [ B @@ f4 @@ C-[ [ 2 2 7 z left @@ C-[ [ D @@ f5 @@ C-[ [ 2 2 8 z right @@ C-[ [ C @@ f6 @@ C-[ [ 2 2 9 z up @@ C-[ [ A @@ f7 @@ C-[ [ 2 3 0 z R1 @@ C-[ [ 2 0 8 z @@ f8 @@ C-[ [ 2 3 1 z R2 @@ C-[ [ 2 0 9 z @@ f9 @@ C-[ [ 2 3 2 z R3 @@ C-[ [ 2 1 0 z @@ f10 @@ C-[ [ 2 3 3 z R4 @@ C-[ [ 2 1 1 z @@ L1 @@ C-[ [ 1 9 2 R5 @@ C-[ [ 2 1 2 z @@ L2 @@ C-[ [ 1 9 3 R6 @@ C-[ [ 2 1 3 z @@ L3 @@ C-[ [ 1 9 4 R7 @@ C-[ [ 2 1 4 z @@ L4 @@ C-[ [ 1 9 5 R8 @@ C-[ [ 2 1 5 z @@ L5 @@ C-[ [ 1 9 6 R9 @@ C-[ [ 2 1 6 z @@ L6 @@ C-[ [ 1 9 7 R10 @@ C-[ [ 2 1 7 z @@ L7 @@ C-[ [ 1 9 8 R11 @@ C-[ [ 2 1 8 z @@ L8 @@ C-[ [ 1 9 9 R12 @@ C-[ [ 2 1 9 z @@ L9 @@ C-[ [ 2 0 0 R13 @@ C-[ [ 2 2 0 z @@ L10 @@ C-[ [ 2 0 1 @@ C-[ [ 2 z @@ help @@ C-[ [ 1 9 6 R14 @@ C-[ [ 2 2 1 z R15 @@ C-[ [ 2 2 2 z @ref-end-tbl The second sequence for R13 is the one, sent by the Insert key, which some sun keyborads have below the R-keys. @}}} @}}} @if-using ( AMIGA amiga ) @{{{ Using a Amiga Mapping of the keypad to R?? keys: @ref-start-tbl Col.1 5 Col.2 5 Col.3 5 Col.4 5 R4 @@ R5 @@ R6 @@ R1 R7 @@ R8 @@ R9 @@ R2 R10 @@ R11 @@ R12 @@ R3 R13 @@ R14 @@ R15 @@ Enter R13 @@ @@ tab @@ Enter @ref-end-tbl Instead of pressing R13 followed by a key, you can also use the one of the amiga-keys together with the following key. Sorry, but amiga-[left/right] and cursor keys cannot be used! @}}} @fi @if-using ( linux ) @{{{ Using a linux console If using ModeOri on a standard linux console, the following mapping of the keypad is used: @ref-start-tbl - 9 - 9 - 9 @@ Col.1 5 Col.2 6 Col.3 6 Col.4 6 ins.-char @@ home @@ prev-page @@ NumL. @@ R1 @@ R2 @@ R3 delete @@ home-down @@ next-page @@ R4 @@ R5 @@ R6 @@ unused - @@ - @@ - @@ R7 @@ R8 @@ R9 @@ R15 - @@ up @@ - @@ R10 @@ R11 @@ R12 @@ R15 left @@ down @@ right @@ R13 @@ R13 @@ R14 @@ R15 @ref-end-tbl @}}} @fi @}}} @{{{ function keys The function-keys f1..f10 are used for some commands as a replacement for the SUN-like usage of the cursorblock. All function-keys can be simulated by typing: @ref-start-tbl Keysequence 12 Simulation 32 fx @@ esc f x, x=1..9 f10 @@ esc f 0 @ref-end-tbl This is usefull, if your terminal does not support function keys. @}}} @{{{ control sequences Some wordstar oriented sequences for control and movement are also supported. Other commands can be reached by pressing C-Q and a following single character; these keys are similar to those, used by R13/Meta! @}}} @if-using (MOUSY) @{{{ mouse If ModeOri supports the mouse (xterm,...), the mouse-buttons are used as follows: @ref-start-tbl Button 6 Function 32 1 @@ move to point and open the fold (if any) 2 @@ move to point and close fold 3 @@ move to point and show fold informations @ref-end-tbl @}}} @fi @if-using ( AMIGA amiga ) @{{{ amiga menu If you are using ModeOri on a Amiga, the following 3 Menus are defined: @ref-start-tbl ? 14 File 14 Parameter 14 Bindings @@ Save @@ Language Help @@ Unchange @@ Fold Marks Info @@ Read @@ DirEdit Filter ModeOri menu @@ Insert @@ Commands @@ Exit ModeOri @@ @ref-end-tbl @}}} @fi @}}} @ref-see-also @{{{ which keyboards can be used @}}} @ref-see-also See also in %s. @}}} @{{{ Used Command Description The format for this reference card is: @{{{ command @ref-start-item keysequence(s) short comment to the command @ref-end-item @}}} The command name can be reached by pressing one of the keysequences. Except of the first mentioned sequence, all following sequences may be invalid, depending on the terminal, you are using (value for $TERM / $ORIGAMITERM). Different keysequences are limited by `|'. describe-bindings shows all currently available bindings. @}}} @{{{ Buffers You can edit multiple files with ModeOri. Each file is displayed in a region on the screen. Each of this windows/buffers contains a complete editor session. The histories for prompts and the following buffers are shared over these file buffers. There are three text buffers, which can be used for editing: @ref-start-tbl Buffer 6 Usage 32 kill @@ collect lines, insert all as a new fold move @@ can take one line, to move it to another place delete @@ store the last deleted lines for undo @ref-end-tbl The contents of this buffers will not be saved when leaving ModeOri (unless mode buffer-save is active) but will stay on filechanges (`read-file', `enter-filed-fold', .. ). You can use some macros, to write the contents of move-, kill- and delete-buffer to file `~/.origamibuf' (or read it from this file). You can use up to 10 position registers (named 0..9). @}}} @{{{ @regexp Origami Regular Expressions @}}} @}}} @{{{ abort @ref-start-item C-C Pressing C-C will abort most commands in a save way and brings you back to Edit-Mode. @ref-end-item @}}} @{{{ Edit-Mode This mode is marked with `Edit' or `E' in the statusline. It is the standard-mode for editing and activated at startuptime. @{{{ Moving Around @{{{ backward/upward @{{{ backward-character @ref-start-item esc l e | C-S | R10 | left Move the cursor one character to the left on current line. Do not go to previous line when reaching the beginning of the line. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ backward-word @ref-start-item esc l w | C-Q C-S | R13/Meta-R10 Move one word to the left and skip lines, if needed. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ beginning-of-line @ref-start-item esc s l | C-A | R7 | begin Move to first non-space character on line. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ previous-line @ref-start-item esc u p | C-E | R8 | up Go to the previous line on the screen. If file-based mode is active, folds will be opened to reach the previous line in the file. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ previous-page @ref-start-item esc p u | R13/Meta-R1 | prev_page Move one screen up. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ mtool-top @ref-start-item esc s f | C-Q C-E | R13/Meta-R8 Move to the start-fold-comment of the currently opened fold. Do not open or close any folds. If the cursor is on the beginning of a fold, it's moved to the beginning of the surrounding fold. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ beginning-of-fold @ref-start-item esc s F | R1 | home Go to begin-fold-comment of currently entered fold. Do not open or close any folds. If the cursor is on the end of a fold, it's moved to the end of the surrounding fold. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ forward/downward @{{{ forward-character @ref-start-item esc r i | C-D | R12 | right Move one character to the right and do not go to the next line at end of line. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ forward-word @ref-start-item esc r w | C-Q C-D | R13/Meta-R12 Move one word to the right and skip lines, if needed. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ end-of-line @ref-start-item esc e l | C-F | R9 | end Move to last character on line. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ next-line @ref-start-item esc d n | C-X | R14 | down Go to the next line on the screen. If file-based mode is active, folds will be opened to reach the next line in the file. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ next-page @ref-start-item esc p d | R13/Meta-R3 | next_page Move on screen down. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ mtool-bot @ref-start-item esc b o | C-Q C-X | R13/Meta-R14 Go to the bottom of the currently opened fold. Do not open or close any folds. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ end-of-fold @ref-start-item esc b O | R3 | home-down Go to end-fold-comment of the currently entered fold. Do not open or close any folds. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ goto-line @ref-start-item esc g o | C-Q g | R13/Meta-g | f2 g ModeOri prompts for a line-number and goes to it. All folds are closed, except the ones needed to reach the line. @ref-end-item @}}} @{{{ searching @{{{ goto-matching-brace @ref-start-item C-B | esc m b ModeOri tries to find the match for the following brace types (Skip1 -> Skip2 [ -> Skip3 ] -> Skip1 .. ): @ref-start-tbl Language 8 Skip1 10 Skip2 10 Skip3 10 all @@ ( @@ ) all @@ [ @@ ] all @@ { @@ } all @@ #ifdef @@ #else @@ #endif all @@ #if @@ #else @@ #endif OCL @@ @if-using @@ @fi @ref-end-tbl @ref-end-item @}}} @{{{ search-forward @ref-start-item esc f i ModeOri prompts for a pattern and moves to next occurance. Mark 0 is set to the search start position. @ref-end-item @}}} @{{{ incremental-search-forward @ref-start-item esc i s | C-Q f | R13/Meta-f | L9 | find | f2 f Start the incremental-search-function. ModeOri prompts for characters and moves to the next matching position. The following actions are supported: @ref-start-item backward-character/forward-character look for last/next occurance. If this is the first input after starting incremental-search-forward, the last given pattern is used. @ref-end-item @ref-start-item previous-line/next-line look for a new search pattern in search history. @ref-end-item @ref-start-item delete-previous-character remove the last character from the pattern and go to the position, this character was added to the pattern. @ref-end-item @ref-start-item any text character add it to the pattern and look for next/previous occurance. @ref-end-item Mark 0 is set to the search start position. @ref-end-item @}}} @{{{ tags ModeOri can handle the standard tags format, used by vi: @{{{ find-or-enter-and-go-tags-buffer @ref-start-item esc t a | C-Q t | R13/Meta-t Use the word under the cursor (starting with a letter, containing letters, digits and `_'), and open a buffer with the tagged file. If this file is already edited, go to this buffer. If the given tag is not valid, or if ModeOri can not find a corresponding position, ModeOri prompts for a tag and searches again. `filename-completion' can be used to omit the end of a tag name. @{{{ @tags-mac-ref Tags file @}}} @ref-end-item @}}} @{{{ quit-unchanged-to-other-buffer @ref-start-item esc q t If the current buffer contains an unchanged file, edited also in an other buffer, quit this buffer and go to same position in other buffer! @ref-end-item @}}} @{{{ search-next-incorrect-tag-entry @ref-start-item esc f T Search for the next line, containing a line, which cannot be handled as a tags-line by the used tags-library. @{{{ @tags-mac-ref Tags file @}}} @ref-end-item @}}} @}}} @}}} @{{{ marks @{{{ set-mark-x @ref-start-item esc s x (x=0,1,..,9) Store the current file and current line as position for mark x. @ref-end-item @}}} @{{{ go-mark-x @ref-start-item esc g x (x=0,1,..,9) Goto mark x. If the mark is in another file and the current file is changed, save the current file. @ref-end-item @}}} @{{{ push-mark-x @ref-start-item esc g x (x=0,1,..,9) Combines enter-fold and go-mark-x. @ref-end-item @}}} @{{{ swap-mark-x @ref-start-item esc w x (x=0,1,..,9) Change current position and mark x. @ref-end-item @}}} @{{{ go-last-mark @ref-start-item esc g m Go to the mark, used in the last go-mark-x command. If the mark is in another file and the current file is changed, save the current file. @ref-end-item @}}} @}}} @}}} @{{{ Editing @{{{ newline-and-indent @ref-start-item return Opens the current line at cursor-position. If mode auto-indent is active, the new line gets same indentation as the old. @{{{ using -O @}}} @ref-end-item @}}} @{{{ Deleting @{{{ delete-previous-character @ref-start-item esc b s | backspace Delete the character left from the cursor. Maybe join the current line and the previous line. If this is used in front of a open-fold-line, the complete fold will be moved one character to the left. @ref-end-item @}}} @{{{ append-to-previous-line @ref-start-item esc j o | esc backspace Join the current and the previous line. @ref-end-item @}}} @{{{ delete-character @ref-start-item esc d c | C-G | delete Delete the character under the cursor. Maybe join the current and the next line. If this is used in front of a open-fold-line, the complete fold will be moved one character to the left. @ref-end-item @}}} @{{{ delspaces @ref-start-item esc d s | esc delete | clreol Delete all spaces from cursorposition to next non-space or end-of-line. @ref-end-item @}}} @{{{ delete-to-end-of-line @ref-start-item esc d e | C-Y Delete all characters on the current line from cursor-position to end. The deleted part is appended to the delete-buffer. If the cursor is in front of a closed fold, the complete fold is deleted. @{{{ Buffers @}}} @ref-end-item @}}} @{{{ undo-delete-character @ref-start-item esc u c Put the last deleted character at cursor-position in the text. @ref-end-item @}}} @{{{ delete-line @ref-start-item esc d l | C-L | R13/Meta-R9 | delline Delete the current line. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ undo-delete-line @ref-start-item esc u l | C-Q C-L | R13/Meta-R7 | L4 Put the last deleted line at cursor position into the text. This can only be done for once for each line! @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ quote-character @ref-start-item C-V The next character from input will be used directly. If you have bound it to a function, this binding will be ignored. @ref-end-item @}}} @{{{ transpose-character @ref-start-item C-T Transpose the current and the character left from the cursor. Move one step to the right. @ref-end-item @}}} @{{{ query-replace-string @ref-start-item esc r p | C-Q r | R13/Meta-r | replace | f2 r Prompt for search and replace pattern and replace them (ask for permission). Mark 0 is set to the search start position. @ref-end-item @}}} @{{{ double-line @ref-start-item esc c o | C-O | R13/Meta-R5 | copy A copy of the current line will be put into the text. Folds can also be copied. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ Edit Buffers @{{{ move-line @ref-start-item esc m o | C-Q C-O | R13/Meta-R2 | move If the move-buffer is empty, move current line into the move-buffer. Otherwise the move-buffer is moved into the text. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ kill-line @ref-start-item esc p i | C-K | R2 | L10 Kills the current line and appends it to the kill-buffer. For historical reasons the TDS/Multitool-name `PICK'-buffer is used for the escape-keysequence. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ copy-to-kill-buffer @ref-start-item esc c p | C-Q C-K | R5 | L6 Puts a copy of the current line at the end of the kill-buffer. For historical reasons the TDS/Multitool-name `COPY-PICK'-buffer is used for the escape-keysequence. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ insert-folded-kill-buffer @ref-start-item esc p p | C-P | R11 | L8 If the kill-buffer isn't empty, ModeOri inserts a new fold containing all killed lines into the text. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ Complex Editing Commands @{{{ wrap-word @ref-start-item space Add a space at current position. Using this in front of a open-fold-line moves the complete fold one space to the right. If wrap-mode is active and the cursor is at the end of a long line, it will be broken. @ref-end-item @}}} @{{{ change character cases @ref-start-item toggle-case-word: esc t w | C-Q ! | R13/Meta-! Toggles the case of all characters of the current word and moves behind it. If the cursor is not on a word, the cursor is moved to the next word first. @ref-end-item @ref-start-item uppercase-word: esc u w | C-Q u | R13/Meta-u Change all characters of the current word to uppercase and moves the cursor behind it. If the cursor is not on a word, the cursor is moved to the next word first. @ref-end-item @ref-start-item capitalize-word: esc c w | C-Q c | R13/Meta-c Capitalizes the current word to uppercase and moves the cursor behind it. If the cursor is not on a word, the cursor is moved to the next word first. @ref-end-item @ref-start-item lowercase-word: esc v w | C-Q v | R13/Meta-v Change all characters of the current word to lowercase and moves the cursor behind it. If the cursor is not on a word, the cursor is moved to the next word first. For historical reasons, this function does not use the binding `esc l w',`C-Q l' or `R13/Meta-l', because these sequences are already in use. @ref-end-item @}}} @{{{ spell-buffer @ref-start-item esc s p Show a buffer containing all misspelled words. @{{{ spell command @}}} If view-mode is not active, an interactive search and replace will be started. In this case, the buffer will be removed when leaving the search and replace loop. The currently handled word is marked with a `+' in the spell error buffer. During the search and replace, the following menu appears. There is no marked active item, because the cursor is used to mark the current position in the text (menu items are selected by typing their first character, for example `o' or `O' for Ok). @ref-start-item Ok Next Replace Edit Mark Quit @{{{ @spelling Ok Ignore all occurances of the current word. Start handling the next misspelled word or return to editing environment. @}}} @{{{ @spelling Next Ignore this occurance of the misspelled word. @}}} @{{{ @spelling Replace Specify a new correction, replace this occurance and move to the next one. @}}} @{{{ @spelling Edit Suspend the spell checking and return to editing. Using `spell-buffer' will continue the spell-check. Changing the buffer or changing the buffer containing the list of spell-errors makes it impossible, to continue the spell checking! In this case, a new spell check will be started! During spell-edit, `SpellPause' will be displayed in the status- line. @}}} @{{{ @spelling Mark The handled word will not be removed from the spell error list and the buffer containing the spell errors will not be removed, at the end of the spell checking. A marked word uses a `*' instead of a `+' to indicate the currently handled word. @}}} @{{{ @spelling Quit Exit spell-buffer and return to editing environment. @}}} @ref-end-item If you specified a correction with Replace, the menu will be extended: @ref-start-item Ok Next Replace Substitute(correction) All Edit Mark Quit @{{{ @spelling Substitute Replace the misspelled word using the last correction and move to its next occurance. This command can only be used, if you have specified a correction for the misspelled word. @}}} @{{{ @spelling All Replace all occurances. This command can only be used, if you have specified a correction for the misspelled word. @}}} @ref-end-item @ref-end-item @}}} @if-using ( L-EXT ) @{{{ language-struct @ref-start-item esc l s | C-U Generates some control structures in language OCL/C/Pascal. Available commands are shown in a menu. Not all languages support all entries! @ref-end-item @}}} @fi @if-using ( L-EXT ) @{{{ Extended Mode The following inputs will generate more than themselves, if used in extended mode: @{{{ ( in languages C OCL Pascal Occam Inmos TeX, the string `()' is generated and the cursor is moved to the `)' (`[' analogue) @}}} @{{{ { in language C,OCL,Occam or Pascal, a block is put at the right position: @ref-start-item Occam: @ref-start-picture SEQ foo1 SEQ foo2 @ref-end-picture @ref-end-item @ref-start-item C @ref-start-picture @if-using not(MY-C-CB) main (...) { char foo; if (argc) { foo='m'; } } @fi @if-using (MY-C-CB) using your indentation @fi @ref-end-picture @ref-end-item @ref-start-item Pascal: @ref-start-picture @if-using not(MY-P-CB) procedure main(int argc); begin if (argc>0) then begin foo:='m'; end; end; @fi @if-using (MY-P-CB) using your indentation @fi @ref-end-picture @ref-end-item @ref-start-item OCL: @ref-start-picture ( deffun test ( if x ( ... ) fi ) ) @ref-end-picture @ref-end-item @}}} @{{{ " in language C Pascal Occam Inmos, the string `""' is generated and the cursor is moved to the second `"' (`'' analogue). @}}} @{{{ ; In languages C and Pascal, the statement-delimiter `;' is generated at end-of-line (if needed). The cursor is moved to the next line. In language OCL move the cursor to the next command place, maybe create a new line. @}}} Language OCL is: language User, start comment starts with `;OCL'! @}}} @fi @{{{ tag-completion @ref-start-item esc t c | esc tab Try to complete the word left from the cursor to a full tag name. @{{{ @tags-mac-ref Tags file @}}} @ref-end-item @}}} @{{{ filename-completion @ref-start-item esc f c | tab Complete the string left to the cursor to a valid filename. @if-using ( L-EXT ) If Extended-Mode is active, the word will be completed as tag, if no filename completion can be done. @{{{ tag-completion @}}} @fi @ref-end-item @}}} @}}} @}}} @{{{ Folding @{{{ Fold Moving @{{{ enter-fold @ref-start-item esc e n | C-Q C-W | R13/Meta-R4 | f2 f3 Enter the fold under the cursor. If there is a normal textline, ModeOri tries to open the file, named like the current word (starting at cursorposition, ending at single-quote, double-quote or space). Entering filed folds adds the file to the list of edited files. If extended mode is active, ModeOri tries to read the following include directives. The standard action will be activated, if no include can be found. @ref-start-tbl Language 9 Include 48 all @@ #include "name" all @@ #include OCL @@ @lib name OCL @@ @include name Roff @@ .so @ref-end-tbl If the file cannot be found in the current-working directory or the directory of the current file, the first not empty file in one of the directories in ORIGAMILIBPATH (left-to-right, default is `/usr/include:fun') is used. @{{{ library path @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ open-fold @ref-start-item esc o p | C-W | R4 | open | f3 Open the closed fold under the cursor. Filed folds cannot be opened. Using the function twice on the same fold will enter it. @{{{ enter-fold @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ exit fold @ref-start-item esc e x | C-Q C-R | R13/Meta-R6 | f2 f4 Exit the currently entered fold, saving the file, if exiting a changed file fold. Exiting the toplevel fold will show you the list of edited files. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ close-fold @ref-start-item esc c l | C-R | R6 | close | f4 Close the opened fold the cursor is in. Using this function twice without surrounding opened fold will exit a fold. @{{{ exit-fold @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ Fold Editing @{{{ auto-header @ref-start-item esc a h The fold-comment is set to the text of the first line in the fold. @ref-end-item @}}} @{{{ create-fold @ref-start-item esc c r | C-\ | R15 First use enters Move-Mode. Second use in Move-Mode folds the selected region. Using create-fold twice on the same position creates an empty fold. If Raw-mode is active, the original Origami `create-fold' is used. In this case the first use shows a new fold-open line and the second use folds the text from this line to current line. The indentation of the fold will be defined by the cursor position at the first `create-fold' call. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ toggle-file-fold @ref-start-item esc f f | R13/Meta-R11 If the current line is a filed-fold, the file is included, so that the fold is a normal text-fold. Otherwise ModeOri creates a file (filename is the fold-comment) containing the contents of the fold. The current line is replaced by a filed-fold for this file. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ toggle-attach-file-to-fold @ref-start-item esc a t If the cursor stands on an empty and closed fold, ModeOri tries to link a file to this fold. On success you have a filed-fold, named like the fold-comment. Using this function on a filed fold will detach the file from the fold. @ref-end-item @}}} @{{{ unfold-fold @ref-start-item esc r e | R13/Meta-R15 Remove a fold, not its contents. The (opened or closed) fold under the cursor is used. If the cursor is on a filed fold, this is unfiled using toggle-file-fold first, the filename is stored in the file history. @{{{ toggle-file-fold @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ set-language @ref-start-item esc l a | C-Q l | R13/Meta-l | f2 l Change the patterns to hide fold-comments. ModeOri displays a menu of known patterns. If the extended mode is active, this will also change the behaviour of the language-dependent commands. @ref-start-item None Occam Pascal C Lisp Roff TeX Script User Inmos @{{{ @lang-types None Occam Pascal C Lisp Roff TeX Script These are predefined comments, using the normal text format: @ref-start-tbl Language 8 Comment-Start 13 Comment-End 13 None @@ @@ Occam @@ -- @@ Pascal @@ (* @@ *) C @@ /* @@ */ Lisp @@ ; @@ Roff @@ .\" @@ TeX @@ % @@ Script @@ # @@ @ref-end-tbl @}}} @{{{ @lang-types User Prompts for comment start and end strings. @}}} @{{{ @lang-types Inmos Use the binary file format of TDS (the Transputer Development System). @}}} @ref-end-item @{{{ Select an Menu Item You can choose an item by: @ref-start-item cursor-motion move left/right and return @ref-end-item @ref-start-item code typing the first letter of the item @ref-end-item @ref-start-item mouse click on th menu entry @ref-end-item @}}} @ref-end-item @}}} @{{{ fold-mark-menu @ref-start-item esc f m Change the current marks for folds to other strings. You can use the standard strings (Default `{{{:::...}}}', Pascal `<<<:::...>>>', and Script `##@##:...##$') or enter a new coding. @{{{ using default command line options @}}} @ref-end-item @}}} @}}} @{{{ Files @{{{ insert-file @ref-start-item esc i n | C-Q i | R13/Meta-i | f2 i | f8 Prompts for a file, which should be included at current cursorposition. @ref-end-item @}}} @{{{ insert-tags-file @ref-start-item esc i T Like insert-file, uses the current tags file. @{{{ @tags-mac-ref Tags file @}}} @ref-end-item @}}} @{{{ buffers @{{{ open-buffer @ref-start-item esc o b Split the current window and ask for the new file, to be edited in the new window. The new file will be added to the list of edited files. @ref-end-item @}}} @{{{ open-list-buffer @ref-start-item esc o B Like `open-buffer', but asks for the file number in the list of edited files. @{{{ open-buffer @}}} @ref-end-item @}}} @{{{ open-adjacent-buffer @ref-start-item esc a b Like `open-buffer', but the buffers are adjacent. @{{{ open-buffer @}}} @ref-end-item @}}} @{{{ open-list-adjacent-buffer @ref-start-item esc a B Like `open-list-buffer', but the buffers are adjacent. @{{{ open-list-buffer @}}} @ref-end-item @}}} @{{{ previous-buffer @ref-start-item esc n b Skip to previous buffer. @ref-end-item @}}} @{{{ next-buffer @ref-start-item esc n b Skip to next buffer. @ref-end-item @}}} @{{{ list-buffers @ref-start-item esc l b Display a screen sized window, containing a list of all active buffers and offer a menu, for selecting the next buffer to edit. @ref-end-item @}}} @{{{ Special Buffers @{{{ open-buffer-tags-file @ref-start-item esc o T Like `open-buffer', but uses the current tags-file. @{{{ open-buffer @}}} @{{{ tags-file @}}} @ref-end-item @}}} @{{{ open-adjacent-buffer-tags-file @ref-start-item esc a T Like `open-buffer-tags-file', but the buffers are adjacent. @{{{ open-buffer-tags-file @}}} @{{{ tags-file @}}} @ref-end-item @}}} @{{{ open-error-buffer @ref-start-item esc o e Show the message history. Offers a menu for controlling the display. @ref-end-item @}}} @}}} @}}} @{{{ unchange-and-reread-file @ref-start-item esc r r Cancel all changes and read the file again. @ref-end-item @}}} @{{{ save-file @ref-start-item esc s a | C-Q s | R13/Meta-s | f2 s | f6 Saves the current file. If buffer-save mode is active, kill-, delete- and move-buffer are stored. @{{{ Buffers @}}} @ref-end-item @}}} @{{{ write-file @ref-start-item esc w f | C-Q w | R13/Meta-w | f2 w Prompts for a filename and write the current text to this files. If not using folding-language TDS, ModeOri prompts, whether fold marks should be written or not. @ref-end-item @}}} @{{{ change current file @{{{ read-file @ref-start-item esc o f | C-Q o | R13/Meta-o | f2 o | f7 Prompts for the next file to be edited. If the current one was changed, ModeOri prompts for permission to change the file. The new file will be added to the list of edited files. @ref-end-item @}}} @{{{ read-list-file @ref-start-item esc r F Prompt for a number and open the file number in the list of edited files. @ref-end-item @}}} @{{{ change-buffername @ref-start-item esc c b | f9 Prompts for a new name for the file in the currently edited buffer. Does not save the file under the new name and does not remove the old file autmomaticlly! @ref-end-item @}}} @{{{ previous-file @ref-start-item esc p f Switch to previous file, given on command line or in the list of edited files. @ref-end-item @}}} @{{{ next-file @ref-start-item esc n f Switch to the next file given on command line or in the list of edited files. @ref-end-item @}}} @{{{ enter-list-file @ref-start-item esc p l Prompt for a number and enters the file number in the list of edited files (like `enter-fold'). @ref-end-item @}}} @}}} @{{{ set-file-unchanged @ref-start-item esc - c The status of the current file will be unchanged, even if you have made changes! This is NO undo-all-edits! @ref-end-item @}}} @}}} @{{{ Helps and Exits @{{{ center-and-redraw-display @ref-start-item esc r f | C-Q C-Q | R13/Meta-R13 | refresh | f2 f2 Refresh the screen and show the current line in the middle of your display. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ describe-fold @ref-start-item esc f ? Show the following information: @ref-start-item Line Column Character Entered-folds Entered-Spaces If the cursor stands on a foldline, additional information about foldtype/-contents (in TDS-coding) is given. @ref-end-item @ref-end-item @}}} @{{{ describe-bindings @ref-start-item esc h b | C-Q ? | R13/Meta-? | help Show all known functions and their key sequences. @{{{ @hcmd help-menu The display is controlled by the following menu: @ref-start-item space(next-page) newline(next-line) Back Quit Filter Search Kill @{{{ space(next-page) Show next screen of information @}}} @{{{ newline(next-line) Scroll up one line. @}}} @{{{ Back Show previous screen of information @}}} @{{{ Quit End the display and return to editing. @}}} @{{{ Filter Prompts for a string. From now on, only lines matching this string are displayed. This filtering ignores the state of the regular expression mode. @}}} @{{{ Search Skip to the next line, matching the given search string. @}}} @{{{ Kill Copy the actual information to the kill-buffer and return to editing. @{{{ Buffers @}}} @}}} @ref-end-item @}}} @ref-end-item @}}} @if-using not( NO-HELP-BROWSER ) @{{{ info @ref-start-item esc i f Start the interactive ModeOri information display. The reference card is generated automagically, using the same data. The used menu contains: @ref-start-item Quit Back space(Next) Back Kill 1 2 .. @{{{ @info-ref Quit Leave the reference browser. @}}} @{{{ @info-ref Up Return to previously viewed reference page. @}}} @{{{ @info-ref space(Next) Move one page down. @}}} @{{{ @info-ref Back Move one page up. @}}} @{{{ @info-ref Kill Copy the current page to the kill-buffer. @{{{ Buffers @}}} @}}} @{{{ @info-ref 1 2 .. Enter the selected reference page. These menu entries only exist, if there are corresponding reference pages! @}}} @ref-end-item @{{{ Select an Menu Item @}}} @ref-end-item @}}} @fi @{{{ help @ref-start-item esc h e | C-Q h | R13/Meta-h | f2 h Show the help file. There is no default file for it. You can put anything you want into this textfile. @{{{ @hcmd help-menu @}}} @if-using not( NO-HELP-BROWSER ) In verbose-mode, a missing help file will be replaced by the interactive ModeOri information display, or if language C is active, the C-Operator precedence will be displayed. If verbose-mode is not active, a missing help file will be replaced by the list of used paths. In this case, you can enter the interactive ModeOri information display by pressing `I'! @{{{ info @}}} @fi @ref-end-item @}}} @{{{ exit-buffer @ref-start-item esc q u | C-Q q | R13/Meta-q | exit | f2 q | f10 This functions leaves the current buffer. If the current file was changed, ModeOri prompts for permission to leave. If the current buffer is the only one, the command leaves ModeOri. If buffer-save mode is active, kill-, delete- and move-buffer are stored to file. @if-using ( SHELL-MODE ) @{{{ @exit-buffer Restrictions in shell mode Exiting the last buffer will restart the shell mode, if command line options -Oshell or -Oxshell are active. @{{{ using -O @}}} @}}} @fi @ref-end-item @}}} @{{{ save-and-exit-buffer @ref-start-item esc s e | C-K C-D Leave the current buffer, and save the file, if it's changed. If the current buffer is the last one, this Command leaves ModeOri. If buffer-save mode is active, kill-, delete and move-buffer are stored to file. @if-using ( SHELL-MODE ) @{{{ @exit-buffer Restrictions in shell mode @}}} @fi @ref-end-item @}}} @{{{ exit-origami @ref-start-item esc q a Repeat exit-buffer, while the current buffer is unchanged. @if-using ( SHELL-MODE ) @{{{ @exit-origami Restrictions in shell mode This command is disabled, if command line options -Oshell or -Oxshell are active. @{{{ using -O @}}} @}}} @fi @{{{ exit-buffer @}}} @ref-end-item @}}} @}}} @{{{ Macros @{{{ define-macro @ref-start-item esc d m | C-Q d | R13/Meta-d Start or stop the storing of keyboard inputs in keyboard macro. @ref-end-item @}}} @{{{ execute-macro @ref-start-item esc c m | C-Q m | R13/Meta-m Call keyboard macro. @ref-end-item @}}} @{{{ user-macro-x,x=0..9 @ref-start-item esc m x (x=0,1,..,9) Call the user macro x. @ref-end-item @}}} @{{{ def-user-macro @ref-start-item esc d u Prompt for a user macro and save the keyboard macro to it. @ref-end-item @}}} @}}} @{{{ Advanced Commands @{{{ Shell @{{{ shell @ref-start-item esc s h ModeOri will start a shell for you. Exiting the shell will start ModeOri again. @ref-end-item @}}} @{{{ shell-command @ref-start-item esc s c ModeOri prompts for a shell command. This command will be executed. @ref-end-item @}}} @{{{ suspend-origami @ref-start-item esc s u | C-Z | suspend ModeOri stops and you are back in your shell. @{{{ using default command line options @}}} @ref-end-item @}}} @{{{ filter-line @ref-start-item esc f l Filter the contents of the current textline or fold through the given filter. @ref-end-item @}}} @{{{ filter-buffer @ref-start-item esc f b ModeOri prompts for a filter and pipes the current text through it. Files in language Inmos cannot be filtered. @ref-end-item @}}} @{{{ pipe-from-command @ref-start-item esc < p Prompt for a command and add the output of this command to the text. @ref-end-item @}}} @{{{ pipe-to-command @ref-start-item esc > p Prompt for a command and run it with current text as input. @ref-end-item @}}} @{{{ call-make @ref-start-item esc m a | f5 Call make. This will be done in the directory of the currently edited file. @{{{ make command @}}} @ref-end-item @}}} @{{{ call-postbox @ref-start-item esc p o Call your mail handling utility. This will be done in the directory of the currently edited file. @{{{ mail command @}}} @ref-end-item @}}} @}}} @{{{ get-buffers-from-file @ref-start-item esc < b Get kill-, move- and delete-buffer from file `~/.origamibuff'. @ref-end-item @}}} @{{{ dump-buffers-to-file @ref-start-item esc > b Save kill-, move- and delete-buffer to file `~/.origamibuff'. @ref-end-item @}}} @if-using ( W-GET-X-SEL ) @{{{ get-selection @ref-start-item esc g s Paste the selection of your window environment before current line into the text. @{{{ selection @}}} @ref-end-item @}}} @fi @{{{ fill-paragraph @ref-start-item esc s space fill-paragraph beautifies normal text. It splitts long lines. It can fill the lines, to have all the same length. The functions `set-fill-column' and `set-fill-mode' control, how this wil be done. Filling can be done in two modes: @ref-start-item Shrink reduce the size of the lines to minimum @ref-end-item @ref-start-item Block fill lines with spaces, to match the right margin @ref-end-item The filling modifies all lines, up to the first line @ref-start-item using another indentation @ref-end-item @ref-start-item or non text line @ref-end-item @ref-start-item or starting with begin-fold-comment string @ref-end-item @ref-start-item or starting with `.', if shrink and language Roff are active @ref-end-item @ref-start-item or starting with `\', if shrink and language TeX are active @ref-end-item @ref-end-item @{{{ set-fill-mode @ref-start-item esc s m Offer a menu, for selecting Shrink or Block and defining the right margin for filling. @ref-end-item @}}} @{{{ set-fill-column @ref-start-item esc s . Set the right fill margin @ref-start-item to set-argument value, if used @ref-end-item @ref-start-item or to cursor position, if behind column 20 @ref-end-item @ref-start-item or prompt fot the new value @ref-end-item @ref-end-item @}}} @}}} @{{{ set-argument-x @ref-start-item esc x | R13/Meta-x (x=0..9) All number inputs will be appended to x and the following command will be repeated according to x. @ref-end-item @}}} @{{{ no-overstrike @ref-start-item esc n o Remove all overstrikes in the text. These are backspace-characters, which are used in roff/man, to print bold or underlined characters. @ref-end-item @}}} @}}} @{{{ Modes @{{{ switch-to-move-mode @ref-start-item esc esc Switches to Move-Mode and uses current position as start-mark. @{{{ Edit-Mode and Move-Mode @}}} @ref-end-item @}}} @{{{ switch-on-buffer-handling @ref-start-item esc b u | C-Q b | R13/Meta-b Switch to Buffer-Handling-Mode. @{{{ Buffers @}}} @ref-end-item @}}} @{{{ set-display-mode @ref-start-item esc + d Show a menu for selecting the character display mode: @ref-start-item Quit Octal Decimal Hex Mark Invers Number Tab(n) Plain 8-Bit All @{{{ @set-dsp Quit Leave the menu @}}} @{{{ @set-dsp Octal Numbered character display uses octal format `\xxx'. @}}} @{{{ @set-dsp Decimal Numbered character display uses decimal format `\dxxx'. @}}} @{{{ @set-dsp Hex Numbered character display uses hexadecimal format `\xx'. @}}} @{{{ @set-dsp Mark Show control characters with `^' followed by the code (C-A -> ^A). @}}} @{{{ @set-dsp Invers Show control characters as inverse code (C-A -> invers A). @}}} @{{{ @set-dsp Number Show control characters numbered (C-A -> \01 in hexadecimal mode). @}}} @{{{ @set-dsp Tab(n) - n is the active size Prompts for the width of a tab. Negative values and the value 0 will show the tab as a normal control character. @}}} @{{{ @set-dsp Plain Show normal characters by themselves. If the terminal supports this, characters with set highbit will also be displayed by themselves. @}}} @{{{ @set-dsp 8-Bit Show characters with set highbit numbered. @}}} @{{{ @set-dsp All Show all characters numbered. @}}} @ref-end-item @{{{ Select an Menu Item @}}} @ref-end-item @}}} @{{{ mode-extended This mode is controlled by the functions: @ref-start-item set-mode-raw esc + r @ref-end-item @ref-start-item add-mode-extended esc + x | esc - r @ref-end-item @ref-start-item delete-mode-extended esc - x @ref-end-item Enables or disables the extended mode. If mode raw (marked with `Raw' or `R') is activated, `create-fold' does not switch to Move-Mode! `add-mode-extended' and `delete-mode-extended' switch off mode raw. @if-using not( L-EXT ) There is no difference between add-mode-extended and delete-mode-extended, because this version of ModeOri does not support the extended mode! @fi @if-using ( L-EXT ) @{{{ Extended-Mode @}}} @fi @{{{ using -O @}}} @{{{ create-fold @}}} @}}} @{{{ mode-autosave @ref-start-item esc + a Prompt for a autosave time (in minutes). When active, `AutoSave' or `S' are displayed in the statusline. @{{{ using default command line options @}}} @ref-end-item @ref-start-item esc - a Disable automatic file saving. @{{{ using default command line options @}}} @ref-end-item @}}} @{{{ mode-[basic|extended]-regular-expression @ref-start-item add-mode-basic-regular-expression esc + m @ref-end-item @ref-start-item add-mode-extended-regular-expression esc + M @ref-end-item @ref-start-item delete-mode-regular-expression esc - m | esc - M @ref-end-item `query-replace', `search-forward' and `incremental-search-forward' read the search- and replace-pattern as regular expressions. You choose between extended regular expressions (like egrep) or basic regular expressions (like vi). Marks in the statusline are `Magic' or `Ma' for basic and `XMagic' or`XM' for extended regular expression mode. @{{{ using -O @}}} @{{{ origami regular expressions @}}} @}}} @{{{ easy modes All other modes are controlled by typing: @ref-start-item on: esc + code @ref-end-item @ref-start-item off: esc - code @ref-end-item @ref-start-item toggle: esc ! code (only possible for modes, marked with (!) ) @ref-end-item @ref-start-tbl Code 4 Name 12 Tag 10 Mode 35 b @@ buffer-save @@ BuSa @@ kill/move/delete: @@ @@ @@ save on file-save @@ @@ @@ read on startup c @@ center @@ @@ Center current line e @@ echo @@ @@ Show keysequences f @@ full-shift @@ @@ Shift whole screen h @@ hash-shift @@ @@ Shift leading `#' to @@ @@ @@ line start on write @@ @@ @@ first nonspace on read H @@ highlight @@ @@ Highlight in Move-Mode i @@ auto-indent @@ > @@ newline use old indent l @@ autolanguage @@ AutoLang @@ Automatic language set L(!) @@ diredit-long @@ @@ diredit: show filetypes.. o(!) @@ overwrite @@ Over @@ Replace chars, no insert p(*) @@ parse @@ NoParse @@ Parse folds on file read P(!) @@ position @@ @@ Show line/column s @@ statusline @@ @@ Show statusline @if-using ( SHELL-MODE ) S(-) @@ shell @@ @@ like -Oshell or -Oxshell @fi t @@ time @@ @@ Show actual time v @@ view @@ View @@ Disable file-changes V @@ verbose @@ @@ Additional error messages w @@ wrap @@ Wrap @@ Automatic wrap around % @@ file-based @@ % @@ up/down open/close folds @ref-end-tbl @ref-start-item (*) The tag is displayed, while the mode is not active. @ref-end-item @ref-start-item (!) The mode can be toggled. @ref-end-item @if-using ( SHELL-MODE ) @ref-start-item (+) The mode can only be switched on. @ref-end-item @fi @{{{ using default command line options @}}} @{{{ using -O @}}} @{{{ wrap around @}}} @{{{ Line-Movement-Mode @}}} @{{{ @autolang-ref auto-language switching @}}} @}}} @}}} @{{{ main-menu @ref-start-item esc m m | f1 Show a menu under the statusline. Pressing f1 twice will display the binding-list. The menu offers the following functions and sub menus: @ref-start-item Ok Bindings Info Help File MoveMode Para ToggleModes Window Exit @{{{ @main-menu Ok Leave the menu. @}}} @{{{ @main-menu Bindings Display currently available keybindings. @{{{ describe-bindings @}}} @}}} @{{{ @main-menu Info @if-using ( NO-HELP-BROWSER ) This version does not support the interactive ModeOri information display. info calls help. @fi @if-using not( NO-HELP-BROWSER ) Start interactive ModeOri information display @{{{ info @}}} @fi @}}} @{{{ @main-menu Help Display your helpfile. @{{{ help @}}} @}}} @{{{ @main-menu File Show a menu for file handling. You can choose: @ref-start-item Ok Save Unchange Read Insert List-of-edited-files @ref-see-also C-> %s. @{{{ @main-menu Ok @}}} @ref-see-also See also in %s. @{{{ @main-menu-file Save Save the current file. @{{{ save-file @}}} @}}} @{{{ @main-menu-file Unchange Set the status of the current file to unchanged. @{{{ set-file-unchanged @}}} @}}} @{{{ @main-menu-file Read Prompts for a filename and changes the currently edited file. @{{{ read-file @}}} @}}} @{{{ @main-menu-file Insert Prompts for a filename to be inserted at the current position. @{{{ insert-file @}}} @}}} @{{{ @main-menu-file List-of-edited-files Changes the current file to the list of edited files. @}}} @ref-end-item @}}} @{{{ @main-menu MoveMode Enter Move-Mode. @{{{ switch-to-move-mode @}}} @}}} @{{{ @main-menu Para Show a menu for switching some parameters. Display `SetParameter' in the status line. You can choose: @ref-start-item Ok FileParameter DirEdit CommandParameter set-display-mode @ref-see-also C-> %s. @{{{ @main-menu Ok @}}} @ref-see-also See also in %s. @{{{ @main-menu-para FileParameter Show a menu for changing some parameters of the current file. You can choose: @ref-start-item Ok Language Fold-marks @{{{ @main-menu-f-para Ok Leave the menu. @}}} @{{{ @main-menu-f-para Language Change the current fold language. @{{{ set-language @}}} @}}} @{{{ @main-menu-f-para Fold-marks Change the current fold mark strings. @{{{ fold-mark-menu @}}} @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu-para Diredit Display the following menu for changing the directory filters: @ref-start-item Ok ToggleLong Match(e1) NoMatch(e2) @{{{ @main-menu-d-para Ok Leave the menu. @}}} @{{{ @main-menu-d-para ToggleLong Toggle the long display mode for directory editing. @{{{ easy modes @}}} @}}} @{{{ @main-menu-d-para Match Change the regular expression, which is used to specify allowed diredit files (e1 is the active expression). @{{{ using default command line options @}}} @{{{ spaces in old menu item values If the old value for the menu item contains spaces, ModeOri displays them as _ in the brackets. @}}} @}}} @{{{ @main-menu-d-para NoMatch Change the regular expression, which is used to specify the not allowed diredit files (e2 is the active expression). @{{{ using default command line options @}}} @{{{ spaces in old menu item values @}}} @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu-para CommandParameter Display a menu for changing some ModeOri function parameters: @ref-start-item Ok Spell(s) Make(m) Postbox(p) TagsFile(f) @{{{ @main-menu-c-para Ok Leave the menu. @}}} @{{{ @main-menu-c-para Spell(s) Change the spell checker command (s is the active one). @{{{ using -O @}}} @{{{ spaces in old menu item values @}}} @}}} @{{{ @main-menu-c-para Make(m) Change the make command (m is the active one). @{{{ using -O @}}} @{{{ spaces in old menu item values @}}} @}}} @{{{ @main-menu-c-para Postbox(p) Change the mail handling command (p is the active one). @{{{ using -O @}}} @{{{ spaces in old menu item values @}}} @}}} @{{{ @main-menu-f-para TagsFile(f) Change the current tags file (f is the active one - default is displayed, if the default file list is used). @{{{ using -O @}}} @{{{ @tags-mac-ref Tags file @}}} @{{{ spaces in old menu item values @}}} @}}} @ref-end-item @if-using ( SHELL-MODE ) This version of ModeOri supports the additional menu entires: @ref-start-item Nn(n) EnableShell @{{{ @main-menu-c-para Nn(n) Change the news reader command (n is the active one). @{{{ using -O @}}} @{{{ spaces in old menu item values @}}} @}}} @{{{ @main-menu-c-para EnableShell Switch on the ModeOriShell after exiting the last buffer. @{{{ add-mode-shell @}}} @}}} @ref-end-item @fi @{{{ Select an Menu Item @}}} @}}} @{{{ set-display-mode @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu ToggleModes Show a menu for switching modes. Display ToggleModes in the status line. You can choose: @ref-start-item Ok View Extend Autosave Write-over Position @ref-see-also C-> %s. @{{{ @main-menu Ok @}}} @ref-see-also See also in %s. @{{{ @main-menu-mode View Toggle the view mode. @{{{ easy modes @}}} @}}} @{{{ @main-menu-mode Extend Toggle the extended mode. @{{{ mode-extended @}}} @}}} @{{{ @main-menu-mode Autosave Toggle auto-save mode. @{{{ mode-autosave @}}} @}}} @{{{ @main-menu-mode Write-over Toggle overwrite mode. @{{{ easy modes @}}} @}}} @{{{ @main-menu-mode Position Toggle the position display in the statusline. @{{{ easy modes @}}} @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu Window Activate the buffer handling menu. Displays `BufferCmd' in the statusline. You can choose: @ref-start-item Ok-BUFFERNUMBER Size Change New Quit @{{{ @main-menu-window Ok-BUFFERNUMBER Leave the menu. @}}} @{{{ @main-menu-window Size Show a menu for changing the size of the current buffer window. displays `BufferSize' in the statusline. You can choose: @ref-start-item Ok-BUFFERNUMBER[LINESxCOLUMNS] Grow Shrink Widen Narrow @{{{ @main-menu-window-size Ok-BUFFERNUMBER[LINESxCOLUMNS] Return to buffer handling menu. @}}} @{{{ @main-menu-window-size Grow Increases the height of the window. Stay in the size menu. @}}} @{{{ @main-menu-window-size Shrink Decrease the height of the window. Stay in the size menu. @}}} @{{{ @main-menu-window-size Widen Increase the width of the window. Stay in the size menu. @}}} @{{{ @main-menu-window-size Narrow Decrease the width of the window. Stay in the size menu. @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu-window Change Show a menu for changing the active buffer. Displays `BufferChg' in the statusline. You can choose: @ref-start-item Ok-BUFFERNUMBER Up Down Left Right Previous Next Select @{{{ @main-menu-window-sub Ok-BUFFERNUMBER Return to buffer handling menu. @}}} @{{{ @main-menu-window-change Up Change to the buffer above the active one. Stay in buffer change menu. @}}} @{{{ @main-menu-window-change Down Change to the buffer under the active one. Stay in buffer change menu. @}}} @{{{ @main-menu-window-change Left Change to the buffer to the left of the active one. Stay in buffer change menu. @}}} @{{{ @main-menu-window-change Right Change to the buffer to the right of the active one. Stay in buffer change menu. @}}} @{{{ @main-menu-window-change Previous Switch to the buffer with id n-1, n is the id of the current buffer. Stay in the buffer change menu. @}}} @{{{ @main-menu-window-change Next Switch to the buffer with id n+1, n is the id of the current buffer. Stay in the buffer change menu. @}}} @{{{ @main-menu-window-change Select Show a list of all buffers for selecting the next buffer. Returns to buffer handling menu afterwards. @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu-window New Show a menu for creating new buffers. Displays `BufferNew' in the statusline. You can choose: @ref-start-item Ok-BUFFERNUMBER Buffer Adjacent-buffer @ref-see-also C-> %s. @{{{ @main-menu-window-sub Ok-BUFFERNUMBER @}}} @ref-see-also See also in %s. @{{{ @main-menu-window-new Buffer Prompt for a filename and open a new buffer. @{{{ open-buffer @}}} @}}} @{{{ @main-menu-window-new Adjacent-buffer Prompt for a filename and open a new buffer. @{{{ open-adjacent-buffer @}}} @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu-window Quit If there are more than 1 buffer, leave the active one and stay in buffer handling menu. Otherwise return to Edit-Mode. @{{{ exit-buffer @}}} @}}} @ref-end-item @{{{ Select an Menu Item @}}} @}}} @{{{ @main-menu Exit Prompt for permission and ends the editing session if permitted. @{{{ @exit-origami Restrictions in shell mode @}}} @}}} @ref-end-item @{{{ Select an Menu Item @}}} @ref-end-item @}}} @}}} @{{{ Move-Mode The following commands can be used in Move-Mode. Moving around is like in Edit-Mode. The edit-functions use the marked region instead of the current line. The region is set by: @ref-start-item * the entry-point to Move-Mode @ref-end-item @ref-start-item * the position, where the command is called @ref-end-item You can return to Edit-Mode by pressing the abort-key or a region-command. The bindings are very close to the bindings in Edit-Mode, though they are much more powerfull. @{{{ @move Moving Around @{{{ @move backward/upward @ref-see-also C-> %s. @{{{ backward-character @}}} @{{{ backward-word @}}} @{{{ beginning-of-line @}}} @{{{ previous-line @}}} @{{{ previous-page @}}} @{{{ mtool-top @}}} @{{{ beginning-of-fold @}}} @ref-see-also See also in %s. @}}} @{{{ @move forward/downward @ref-see-also C-> %s. @{{{ forward-character @}}} @{{{ forward-word @}}} @{{{ end-of-line @}}} @{{{ next-line @}}} @{{{ next-page @}}} @{{{ mtool-bot @}}} @{{{ end-of-fold @}}} @ref-see-also See also in %s. @}}} @{{{ @move go-local-line @ref-start-item esc g o | C-Q g | R13/Meta-g | f2 g Same as go-line in Edit-Mode, except that it opens only folds and does not close any folds. @ref-end-item @}}} @{{{ @move searching @ref-see-also C-> %s. @{{{ goto-matching-brace @}}} @{{{ search-forward @}}} @{{{ search-reverse @}}} @{{{ incremental-search-forward @}}} @ref-see-also See also in %s. @}}} @{{{ @move marks @ref-see-also C-> %s. @{{{ set-mark-x @}}} @ref-see-also See also in %s. @{{{ @move go-mark-x @ref-start-item esc g x (x=0,1,..,9) Goto mark x. The command fails, if the mark is in another file. @ref-end-item @}}} @{{{ @move swap-mark-x @ref-start-item esc w x (x=0,1,..,9) Like in Edit-Mode, but cannot change files. @ref-end-item @}}} @{{{ @move go-last-mark @ref-start-item esc g m Go to the mark, used in the last go-mark-x command. The command fails, if the mark is in another file. @ref-end-item @}}} @{{{ @move go-start-mark @ref-start-item esc esc | R13/Meta-R13 | f2 Move the cursor back to the start of the region. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move set-start-mark @ref-start-item . The current position is used as beginning of the region. @ref-end-item @}}} @}}} @{{{ @move change-position @ref-start-item - The current position becomes start of the region and the cursor is moved to the old start-position. @ref-end-item @}}} @}}} @{{{ @move Editing @{{{ @move delete-mark-region @ref-start-item esc d l | C-L | R13/Meta-R9 | delline The marked region will be deleted from the text. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move undo-delete-line-unfolded-at @ref-start-item esc u l | C-Q C-L | R13/Meta-R7 | L4 Try to undelete a line at cursor position inside a line. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move copy-mark-region @ref-start-item esc c o | C-O | R13/Meta-R2 | copy The marked region will be copied in the text. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move Edit Buffers @{{{ @move kill-mark-region @ref-start-item esc p i | C-K | R2 | L10 The region is moved to the end of the kill-buffer. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move copy-kill-mark-region @ref-start-item esc c p | C-Q C-K | R5 | L6 The region will be copied to the end of the kill-buffer. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move unkill-unfolded-at @ref-start-item esc p p | C-P | R11 | L8 If needed, split the current line and insert the contents of the kill-buffer into the text. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @move move-mark-region @ref-start-item esc m o | C-Q C-O | R13/Meta-R2 | move If the move-buffer is empty, fold the marked region and move the new fold into the move-buffer. Otherwise the move-buffer is moved into the text at current position. @{{{ Buffers @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ @move shift-?-region The following commands change the indentation of all selected lines. The commands do not return to Edit-Mode, but stay in a loop,where only the shift-???-region commands and switch-to-edit-mode (press i or return) are valid commands. Mouse-clicks inside the current window call shift-to-region with the corresponding x position. Clicking on the message-line returns to Edit-Mode. @ref-start-item shift-in-region: space Increment indentation level by 1. @ref-end-item @ref-start-item shift-out-region: esc b s | esc d c | backspace Decrement indentation level by 1. @ref-end-item @ref-start-item shift-x-region: + Prompts for the number of additional spaces (negativ values decrease the indentation level. @ref-end-item @ref-start-item shift-to-region: t Prompt for the indentation level. @ref-end-item @}}} @{{{ @move character cases @ref-start-item toggle-case-mark-region: ! Toggle the case of all characters in the selected region. @ref-end-item @ref-start-item uppercase-mark-region: u Make all letters in the selected region uppercase. @ref-end-item @ref-start-item lowercase-mark-region: v Make all letters in the selected region lowercase. @ref-end-item @}}} @}}} @{{{ @move Folding @ref-see-also C-> %s. @{{{ open-fold @}}} @{{{ close-fold @}}} @ref-see-also See also in %s. @{{{ @move fold-mark-region @ref-start-item f | esc c r | C-\ | R15 The region will be folded. If needed, the start- and endline are broken. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ @move Helps and Exits @ref-see-also C-> %s. @{{{ describe-fold @}}} @{{{ help @}}} @{{{ describe-bindings @}}} @ref-see-also See also in %s. @}}} @{{{ set-argument-y @ref-start-item esc y | R13/Meta-y (y=0..9) All number inputs will be appended to y and the following command will be repeated according to y. @ref-end-item @}}} @{{{ move-menu @ref-start-item esc m m | f1 Pressing f1 twice will display the binding-list. Offers the menu: @ref-start-item Ok Bindings Help Fold Indent Edit @{{{ Ok Leave the menu without any action. @}}} @{{{ Bindings Show the list of bound keys. @{{{ describe-bindings @}}} @}}} @{{{ Help Show the help file. @{{{ help @}}} @}}} @{{{ Fold Fold the selected region and return to Edit-Mode. @{{{ @move fold-mark-region @}}} @}}} @{{{ Indent Start indenting the selected region. Selecting this item will not change the text, but you can use the mouse to determine the new position of the block. Keyboard controlled indenting is also allowed. Clicking on the status- or message-line will leave the indenting mode. @{{{ @move shift-?-region @}}} @}}} @{{{ Edit Return to Edit-Mode. @}}} @ref-end-item @{{{ Select an Menu Item @}}} @ref-end-item @}}} @}}} @{{{ Buffer-Handling-Mode This mode is marked with `BufferCmd' in the statusline. It is used to control multiple buffers during a editor session. Available commands are: @{{{ buffer-menu @ref-start-item m Call the window handling menu and return to Edit-Mode, after leaving it. @{{{ @main-menu Window @}}} @ref-end-item @}}} @{{{ switch-off-buffer-handling @ref-start-item return Return to Edit-Mode. @ref-end-item @}}} @{{{ open new buffers @{{{ @buff open-buffer @ref-start-item o Like in Edit-Mode. @ref-end-item @}}} @{{{ @buff open-list-buffer @ref-start-item O Like in Edit-Mode. @ref-end-item @}}} @{{{ @buff open-adjacent-buffer @ref-start-item a Like in Edit-Mode. @ref-end-item @}}} @{{{ @buff open-list-adjacent-buffer @ref-start-item A Like in Edit-Mode. @ref-end-item @}}} @}}} @{{{ change current buffer @{{{ @buff next-buffer @ref-start-item n Like in Edit-Mode. @ref-end-item @}}} @{{{ @buff previous-buffer @ref-start-item p Like in Edit-Mode. @ref-end-item @}}} @{{{ go-buffer @ref-start-item g Prompt for a buffer number and switch to it. If set-argument was used, the prompt will be omitted and the argument will be used! @ref-end-item @}}} @{{{ right-buffer @ref-start-item D | R12 | right Go to buffer right from cursor position. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ left-buffer @ref-start-item S | R10 | left Go to buffer left from cursor position. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ up-buffer @ref-start-item E | R8 | up Go to buffer above cursor position. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ down-buffer @ref-start-item X | R14 | down Go to buffer under cursor position. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ change layout @{{{ full-size-buffer @ref-start-item f Make buffer as big as possible. @ref-end-item @}}} The following commands, can be repeated by typing the number of repeats before typing the command. @{{{ widen-buffer @ref-start-item d | R12 | right Increment the width off current window by 1. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ narrow-buffer @ref-start-item s | R10 | left Decrement the width of the current window by 1. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ grow-buffer @ref-start-item e | R8 | up Increase the height of the current window by 1. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ shrink-buffer @ref-start-item x | R14 | down Decrement the height of the current window by 1. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ @buff exit-buffer @ref-start-item q | exit | f10 Like in Edit-Mode, but returns to Edit-Mode, if only one buffer is left! @ref-end-item @}}} @{{{ @buff describe-bindings @ref-start-item ? like in Edit-Mode, but show commands for Buffer-Handling-Mode. @ref-end-item @}}} @{{{ @buff help @ref-start-item h like in Edit-Mode. @ref-end-item @}}} @{{{ @buff center-and-redraw-display @ref-start-item r | R13/Meta-R13 | refresh | f2 f2 Center and redraw screen. @{{{ general layout of the keypad @}}} @ref-end-item @}}} Mouse clicks switch to the given window. Clicks on message-line activate the buffer handling menu. @}}} @if-using ( SHELL-MODE ) @{{{ @shell-mode Shell Mode ModeOri starts in shell mode, if Option -Oshell is active. If the given file argument is a regular file, ModeOri activates automatically the command edit for the given file. The mode displays a special window below the text, which is used to display some of the most important available commands. The text window is used to display the files in the active directory. Selected files/directories are marked with *. You can choose: @{{{ @shell-mode Moving Around @{{{ @shell-mode previous-line @ref-start-item esc u p | C-E | R8 | up Go to the previous line on the screen. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode previous-page @ref-start-item esc p u | esc l e | C-S | R13/Meta-R1 | R10 | prev_page | left Move one screen up. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ mtool-top @}}} @{{{ @shell-mode next-line @ref-start-item esc d n | C-X | R14 | down Go to the next line on the screen. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode next-page @ref-start-item esc p d | esc r i | C-D | R13/Meta-R3 | R12 | next_page | right Move one page down. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ mtool-bot @}}} @}}} @{{{ @shell-mode Folding @{{{ @shell-mode open-fold @ref-start-item esc o p | C-W | R4 | f3 Open the closed fold under the cursor. Can be used to show the dot files. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode close-fold @ref-start-item esc c l | C-R | R6 | f4 Close the currently opened fold. Can be used to hide the dot files. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ @shell-mode Helps and Exits @{{{ describe-bindings @}}} @if-using not( NO-HELP-BROWSER ) @{{{ @shell-mode info @ref-start-item esc i f | esc h e | i | C-Q h | R13/Meta-h | f1 | f2 h Like in Edit-Mode, start the interactive ModeOri information display. @{{{ info @}}} @ref-end-item @}}} @fi @{{{ @shell-mode quit-shell @ref-start-item q | Q | esc q u | C-Q | R13/Meta-q | f10 | exit Leave ModeOriShell. @ref-end-item @}}} @}}} @{{{ @shell-mode Selections @{{{ @shell-mode action-select @ref-start-item return | esc e n | C-Q C-W | R13/Meta-R4 | f2 f3 Open the closed fold under the cursor. Can be used to show the dot files. Depending on the cursor position, the following actions are started: @ref-start-itemclosed fold open fold and move down one line @ref-end-item @ref-start-item directory change the directory @ref-end-item @ref-start-item file switch to editing for this file @ref-end-item @{{{ @shell-mode edit command @}}} @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode change-directory @ref-start-item d | D | f9 Change the displayed directory. If no selection is made, ModeOriShell prompts for a directory, otherwise the first of the selected files is used. @ref-end-item @}}} @{{{ @shell-mode edit @ref-start-item e | E Switch to editing for the first of the selected files. ModeOriShell prompts for a filename, if no selections are made and uses /dev/null on empty input. @{{{ @shell-mode edit command @}}} @ref-end-item @}}} @{{{ @shell-mode toggle-select @ref-start-item s | S | space Change the selection status of the file under the cursor and moves the cursor one line down. @ref-end-item @}}} @{{{ @shell-mode browser @ref-start-item b | B Start the information browser for the first of the selected files. If no selections are done, use ~/.oriinfo instead. The number of entered nodes is shown in the statusline (Sublevel:no). @{{{ @shell-mode-browser Moving Around @{{{ @shell-mode-browser previous-line @ref-start-item esc u p | C-E | R8 | up Go to the previous line on the screen. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode-browser previous-page @ref-start-item esc p u | esc l e | C-S | R10 | R13/Meta-R1 | prev_page | left Move one screen up. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode-browser next-line @ref-start-item esc d n | C-X | R14 | down Go to the next line on the screen. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode-browser next-page @ref-start-item esc p d | esc r i | space | C-D | R12 | R13/Meta-R3 | next_page | right Move one screen down. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ @shell-mode-browser Folding @{{{ @shell-mode-browser info-enter @ref-start-item return | esc o p | C-W | R4 | f3 Enter the node on the current line. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode-browser info-exit @ref-start-item esc o p | esc b s | esc d c | C-G | C-R | backspace | delete | R4 | f3 Leave the current node. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @}}} @{{{ @shell-mode-browser center-and-redraw-display @ref-start-item esc r f | C-Q C-Q | R13/Meta-R13 | refresh | left Redraw screen. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode-browser Helps @{{{ describe-bindings @}}} @if-using not( NO-HELP-BROWSER ) @{{{ @shell-mode info @}}} @fi @}}} @{{{ @shell-mode-browser quit-browser @ref-start-item q | Q | esc q u | C-Q | R13/Meta-q | f10 | exit Leave ModeOriShell browser and return to ModeOriShell. @ref-end-item @}}} @ref-end-item @}}} @{{{ @shell-mode file-menu @ref-start-item f | F Show a menu for file handling. Available functions are: @{{{ @shell-mode Moving Around @}}} @{{{ @shell-mode Folding @}}} @{{{ @shell-mode toggle-select @}}} @{{{ @shell-mode-file Helps @{{{ describe-bindings @}}} @if-using not( NO-HELP-BROWSER ) @{{{ @shell-mode info @}}} @fi @}}} @{{{ @shell-mode-browser center-and-redraw-display @}}} @{{{ @shell-mode-file copy-file @ref-start-item c | C Prompt for a destination file/directory and copies all selected files to this. If there are no selections, ModeOriShell prompts for a source file first. Directories cannot be copied. @{{{ ~ expansion A leading ~ will be handled: @ref-start-item ~/file is replaced by $HOME/file @ref-end-item @ref-start-item ~user/file is not changed, it depends on your shell, if this will be expanded! @ref-end-item @}}} @ref-end-item @}}} @{{{ @shell-mode-file move-file @ref-start-item m | M Prompt for a destination file/directory and moves all selected files to this. If there are no selections, ModeOriShell prompts for a source file first. @{{{ ~ expansion @}}} @ref-end-item @}}} @{{{ @shell-mode-file remove-file @ref-start-item r | R Removes all selected files, prompting for permission for each file. If there are no selections, ModeOriShell prompts for a filename. Directories can not be removed. @{{{ ~ expansion @}}} @ref-end-item @}}} @{{{ @shell-mode quit-file-menu @ref-start-item q | Q | esc q u | C-Q | R13/Meta-q | f10 | exit Leave ModeOriShell file handling and return to ModeOriShell. @ref-end-item @}}} @ref-end-item @}}} @{{{ @shell-mode make @ref-start-item m | M Call make in the currently handled directory. @{{{ make command @}}} @ref-end-item @}}} @{{{ @shell-mode mail @ref-start-item p | P Call your mail command in the currently handled directory. @{{{ mail command @}}} @ref-end-item @}}} @{{{ @shell-mode nn @ref-start-item n | N Call your news reader in the currently handled directory. @{{{ @shell-mode nn command @}}} @ref-end-item @}}} @{{{ @shell-mode change-commands @ref-start-item esc m m Call the command menu from main menu. @{{{ @main-menu-para CommandParameter @}}} @ref-end-item @}}} @}}} @{{{ @shell-mode refresh-directory @ref-start-item esc r f | C-Q C-Q | R13/Meta-R13 | f7 | f8 | refresh | left Redraw screen and read directory data again. @{{{ general layout of the keypad @}}} @ref-end-item @}}} @{{{ @shell-mode toggle-expert-mode @ref-start-item x Switch on/off the display of the help window below the directory view. Modes are displayed in the statusline, if the window is switched off. @{{{ using -O @}}} @ref-end-item @}}} @}}} @fi @if-using ( GAMES ) @{{{ Funny functions @{{{ Towers of Hanoi @{{{ tower-display @ref-start-item esc t o 1 Play the game at the bottom of the current buffer. Use set-argument, to get another height than the default 5. @ref-end-item @}}} @{{{ towers-of-hanoi @ref-start-item esc t o 2 Play the game with the string of the current line. This may not contain spaces or tabs! @ref-end-item @}}} @}}} @{{{ Sokoban @ref-start-item esc s o Play the game! @{{{ @sokoban-ref sokoban @}}} In addition to the default vi based control, normal cursor movement is also supported! Use describe bindings for detailed information. @ref-end-item @}}} @}}} @fi @if-using ( SUNEDT linuxEDT ) @{{{ EDT Special keypad usage @if-using ( SUNEDT ) If the environement variable ORIGAMITERM is set to SUNEDT, the sun keypad keys R1,.. are used and named in a different way. @fi @if-using ( linuxEDT ) If the environement variable ORIGAMITERM is set to con80x25EDT, the keypad keys are used and named in a different way. @fi @{{{ @EDT keypad mapping @ref-start-tbl R-Key 5 EDT-Key 8 @@ R-Key 5 EDT-Key 8 R1 @@ DelLine @@ R9 @@ Append R2 @@ DelWord @@ R10 @@ Advance R3 @@ DelChar @@ R11 @@ Backup R4 @@ Gold @@ R12 @@ Cut R5 @@ Help @@ R13 @@ Word R6 @@ Find @@ R14 @@ EOL R7 @@ Page @@ R15 @@ Char R8 @@ Section @ref-end-tbl The additional keys on the sun keyboard `Ins' and `.' (sending `esc [ 2 2 3 z') are used as SOL and Select. @{{{ cursor keypad @}}} @}}} @{{{ @EDT Edit-Mode @{{{ @EDT Moving Around @{{{ @EDT backward/upward @{{{ @EDT set-direction-backward @ref-start-item Backup Switch current move direction to backward. This is marked with <- in the statusline. @ref-end-item @}}} @{{{ @EDT page-begin @ref-start-item Page Move the cursor to the top of the current window. @ref-end-item @}}} @{{{ @EDT beginning-of-line @ref-start-item SOL @{{{ beginning-of-line @}}} @ref-end-item @}}} @{{{ @EDT beginning-of-fold @ref-start-item Gold t o p | Gold Backup @{{{ beginning-of-fold @}}} @ref-end-item @}}} @}}} @{{{ @EDT forward/downward @{{{ @EDT set-direction-forward @ref-start-item Advance Switch current move direction to forward. @ref-end-item @}}} @{{{ @EDT end-of-line @ref-start-item EOL @{{{ end-of-line @}}} @ref-end-item @}}} @{{{ @EDT end-of-fold @ref-start-item Gold b o t t o m | Gold Advance @{{{ end-of-fold @}}} @ref-end-item @}}} @}}} @{{{ @EDT direction @{{{ @EDT section-move @ref-start-item Section Move the cursor 16 lines in current direction. @ref-end-item @}}} @{{{ @EDT word-move @ref-start-item Word Move one word in current direction. @ref-end-item @}}} @{{{ @EDT char-move @ref-start-item Word Move one character in current direction. @ref-end-item @}}} @}}} @{{{ @EDT searching @{{{ @EDT find-next-direction @ref-start-item Find Search for the last searched pattern in current direction. @ref-end-item @}}} @{{{ @EDT find-direction @ref-start-item Gold Find Prompt for a pattern and search in current direction. @ref-end-item @}}} @}}} @{{{ @EDT goto-line @ref-start-item Gold Page space @{{{ goto-line @}}} @ref-end-item @}}} @}}} @{{{ @EDT Editing @{{{ @EDT Deleting @{{{ @EDT delete-line @ref-start-item DelLine @{{{ delete-line @}}} @ref-end-item @}}} @{{{ @EDT undelete-line @ref-start-item GoldDelLine Put the last deleted line back to the text. This function is not the same as undo-delete-line, because the line stays in the delete-buffer! @ref-end-item @}}} @{{{ @EDT delete-to-end-of-line @ref-start-item Gold EOL @{{{ delete-to-end-of-line @}}} @ref-end-item @}}} @{{{ @EDT delete-to-beginning-of-line @ref-start-item Gold SOL Remove all characters left from the cursor. @ref-end-item @}}} @}}} @{{{ insert-number-char @ref-start-item Gold Char Prompt for a number and insert the corresponding character. @ref-end-item @}}} @{{{ toggle-case-char @ref-start-item Gold Word Toggle the case of the character under the cursor and move to the right. @ref-end-item @}}} @}}} @{{{ @EDT Folding @{{{ @EDT enter-fold @ref-start-item DelChar @{{{ enter-fold @}}} @ref-end-item @}}} @{{{ @EDT open-fold @ref-start-item DelWord @{{{ open-fold @}}} @ref-end-item @}}} @{{{ @EDT exit-fold @ref-start-item Gold DelChar @{{{ exit-fold @}}} @ref-end-item @}}} @{{{ @EDT close-fold @ref-start-item Gold DelWord @{{{ close-fold @}}} @ref-end-item @}}} @{{{ @EDT create-fold @ref-start-item Select @{{{ create-fold @}}} @ref-end-item @}}} @{{{ @EDT unfold-fold @ref-start-item Gold Select @{{{ unfold-fold @}}} @ref-end-item @}}} @}}} @{{{ @EDT Line Handling @{{{ @EDT kill-line @ref-start-item Append @{{{ kill-line @}}} @ref-end-item @}}} @{{{ @EDT clear-kill-and-cut-line @ref-start-item Cut Clear the kill buffer and copy the current line to the kill-buffer. @ref-end-item @}}} @{{{ @EDT paste-and-rekill-line @ref-start-item Gold Cut Copy the contents of the kill buffer folded to the text. @ref-end-item @}}} @{{{ @EDT replace-line-by-kill @ref-start-item Gold Append Replace the current line by a copy of the kill buffer. @ref-end-item @}}} @}}} @{{{ @EDT save-file @ref-start-item Gold Page s a v e @{{{ save-file @}}} @ref-end-item @}}} @{{{ @EDT Helps @{{{ @EDT center-and-redraw-display @ref-start-item Gold Gold @{{{ center-and-redraw-display @}}} @ref-end-item @}}} @{{{ @EDT describe-bindings @ref-start-item Gold Help @{{{ describe-bindings @}}} @ref-end-item @}}} @{{{ @EDT info @ref-start-item Help @{{{ info @}}} @ref-end-item @}}} @}}} @{{{ @EDT Exits @{{{ @EDT quit-buffer @ref-start-item Gold Page q u i t Ignore changes and quit the current buffer. @ref-end-item @}}} @{{{ @EDT exit-buffer @ref-start-item Gold Page e x i t Save the current file and quit the current buffer. @ref-end-item @}}} @}}} @{{{ @EDT shell @ref-start-item Gold x @{{{ shell @}}} @ref-end-item @}}} @{{{ @EDT fill-paragraph @ref-start-item Gold Section @{{{ fill-paragraph @}}} @ref-end-item @}}} @{{{ @EDT toggle-mode-overwrite @ref-start-item Gold Page i n s e r t Switch on/off mode overwrite. @{{{ easy modes @}}} @ref-end-item @}}} @}}} @{{{ @EDT Move-Mode @{{{ @EDT Moving Around @}}} @{{{ @EDT-M Folding @{{{ @EDT open-fold @}}} @{{{ @EDT close-fold @}}} @{{{ @EDT fold-mark-region @ref-start-item Select @{{{ @move fold-mark-region @}}} @ref-end-item @}}} @}}} @{{{ @EDT-M Editing @{{{ @EDT delete-mark-region @ref-start-item DelLine @{{{ @move delete-mark-region @}}} @ref-end-item @}}} @{{{ @EDT undo-delete-line-unfolded-at-position @ref-start-item Gold DelLine Copy kill buffer to current position. @ref-end-item @}}} @{{{ @EDT-M toggle-case-region @ref-start-item Gold Word @{{{ @move toggle-case-mark-region @}}} @ref-end-item @}}} @}}} @{{{ @EDT-M Line Handling @{{{ @EDT-M kill-mark-region @ref-start-item Append @{{{ @move kill-mark-region @}}} @ref-end-item @}}} @{{{ @EDT-M replace-region-by-kill @ref-start-item Gold Append Replace the selected by region by a copy of the kill buffer. @ref-end-item @}}} @{{{ @EDT-M clear-kill-and-cut-region @ref-start-item Cut Clear the kill buffer and copy the selected region to it. @ref-end-item @}}} @{{{ @EDT paste-and-rekill-region @ref-start-item Gold Cut Insert a copy of the kill buffer at current cursor position. @ref-end-item @}}} @}}} @{{{ @EDT describe-bindings @}}} @}}} @}}} @fi @}}} @{{{ C-Operators @ref-start-tbl Operator 34 Precedence 13 () [] -> . @@ left to right ! ~ ++ -- + - * & (type) sizeof @@ right to left * / % @@ left to right + - @@ left to right << >> @@ left to right < <= > >= @@ left to right == != @@ left to right & @@ left to right ^ @@ left to right | @@ left to right && @@ left to right || @@ left to right ?: @@ right to left = += -= *= /= %= &= ^= |= <<= >>= @@ right to left , @@ left to right @ref-end-tbl Unary +, -, and * have higher precedence than the binary forms. @{{{ ModeOri-Reference-Card @}}} @}}}