Added mp_keycodes as a Grutatxt-generated file in makefile.in.
[mp-5.x.git] / doc / mp_actions.txt
blob5a83d8f243b4f3766dd0e2a94de866ae3ceaf304
1 Minimum Profit Action Reference
2 ===============================
4 Minimum Profit _actions_ are editor commands that can be directly
5 bound to the menu or a key.
7 about
8 -----
10 _About..._
12 Shows the "About Minimum Profit" information.
14 build
15 -----
17 _Build project..._ (`f2')
19 Invokes the building of a Make project. If the `Makefile' file exists in the
20 working directory, all targets are extracted from it and shown in a list dialog
21 for the user to select one. The selected one will be called as the only argument
22 for the `make' program and its output read. All output will be catched and shown
23 in a read-only document. Compiler errors and warnings will be highlighted and
24 can be navigated by using the `seek_next' and `seek_prev' actions (keys `f3' and
25 `ctrl-f3'). The `open_under_cursor' action can be used to edit each error or warning.
27 close
28 -----
30 _Close_ (`ctrl-w')
32 Closes the active document. If there are unsaved changes, a confirmation dialog
33 is shown.
35 close_all
36 ---------
38 _Close all_
40 Closes all open documents.
42 complete
43 --------
45 _Complete..._ (`ctrl-u')
47 Takes the (probably partial) word under the cursor and searches for words in
48 the current document that start with it. If more than one is found, a list dialog
49 is shown to make a selection. The word will be replaced with the selected one.
51 complete_symbol
52 ---------------
54 _Symbol completion..._
56 Uses a similar approach than the `complete' action, but using the current _tags_
57 file as the completion list. If no _tags_ file exist in the working directory,
58 the *ctags* program is invoked to build it.
60 For other uses of the _tags_ file, see `find_tag'.
62 copy_mark
63 ---------
65 _Copy block_ (`ctrl-c')
67 Copies the currently selected block to the clipboard.
69 cut_mark
70 --------
72 _Cut block_ (`ctrl-x')
74 Copies the currently selected block to the clipboard and deletes the block.
76 delete
77 ------
79 _Delete character_ (`delete')
81 Delete the character over the cursor.
83 delete_left
84 -----------
86 _Delete character to the left_ (`backspace')
88 Deletes the character to the left of the cursor.
90 delete_line
91 -----------
93 _Delete line_ (`ctrl-y')
95 Deletes the line under the cursor.
97 document_list
98 -------------
100 _Document list_
102 Shows a dialog with the list of currently open documents. The list cursor will
103 be over the active one and the documents with pending modifications will be
104 prefixed with an asterisk. Selecting a different one will make it become the
105 active.
107 encoding
108 --------
110 _Set charset encoding..._
112 Shows a dialog asking for a string describing the charset encoding that will
113 be used when saving or opening new documents. If an empty string is entered,
114 the current locale will be used. the following set of character encodings are
115 always available:
117  * utf8.
118    Aliases are utf-8, UTF8 and UTF-8.
119  * iso8859-1.
120    Aliases are iso-8859-1, ISO-8859-1, ISO8859-1, latin1, latin-1, LATIN1 and LATIN-1.
121  * utf16 (with endianness detection on input and local endianness on output).
122    Aliases are utf-16, UTF16, UTF-16, ucs-2, UCS2, UCS-2.
123  * utf16be (big endian).
124    Aliases are utf-16be, UTF16BE, UTF-16BE, ucs2be, UCS2BE, ucs-2be and UCS-2BE.
125  * utf16le (little endian).
126    Aliases are utf-16le, UTF16LE, UTF-16LE, ucs2le, UCS2LE, ucs-2le and UCS-2LE.
127  * utf32 (with endianness detection on input and local endianness on output).
128    Aliases are utf-32, UTF32, UTF-32, ucs-4, ucs4, UCS-4 and UCS4.
129  * utf32be (big endian).
130    Aliases are utf-32be, UTF32BE, UTF-32BE, ucs4be, UCS4BE, ucs-4be and UCS-4BE.
131  * utf32le (little endian).
132    Aliases are utf-42le, UTF42LE, UTF-42LE, ucs4le, UCS4LE, ucs-4le and UCS-4LE.
134 If the 'iconv' library is available, there can be many more encodings.
136 eval
137 ----
139 _Execute MPSL code..._ (`escape')
141 Shows a dialog asking for a string of MPSL code that will be executed.
143 eval_doc
144 --------
146 _Execute document as MPSL_
148 Executes the active document as MPSL code.
150 exec_command
151 ------------
153 _Run system command..._
155 Shows a dialog asking for a system command to execute. If the command is
156 preceded by the pipe symbol (|), the active document will be fed as the
157 standard input of the command; otherwise, the standard output of the command
158 will be inserted in the cursor position.
160 exit
161 ----
163 _Exit_ (`ctrl-q')
165 Closes all documents and exists Minimum Profit.
167 find_tag
168 --------
170 _Search tag..._ (`ctrl-t')
172 Shows a dialog asking for a tag to search. The _tags_ file will be read from
173 the working directory and the tag searched there; all symbols starting with it
174 will be shown in a list dialog. When selecting a tag from that list, the file
175 containing it will be open and the cursor moved to where the tag is.
176 This is a useful way of finding where a function or variable is defined.
178 If no _tags_ file exist in the working directory, the *ctags* program is
179 invoked to build it.
181 For other uses of the _tags_ file, see `complete_symbol'.
183 goto
184 ----
186 _Go to line..._ (`ctrl-g')
188 Shows a dialog asking for a line number. If accepted, the current document
189 cursor will move to that line (if existent).
191 grep
192 ----
194 _Grep (find inside) files..._
196 Shows a dialog asking for a string to be searched, and an optional spec of
197 files to search the string in. If no spec is given, all files in the working
198 directory are scanned. Matches are shown in a read-only document, and each
199 match can be directly open by using the 'open_under_cursor' action.
201 This is a useful way to find where a function or variable is used.
203 help
204 ----
206 _Help on word over cursor_ (`f1')
208 Picks the word under the cursor and asks the underlying system for help
209 about that term.
211 ignore_last_misspell
212 --------------------
214 _Ignore last misspelled word_
216 Ignores the last misspelled word found by `seek_misspelled' by adding it
217 to a whitelist so it won't be found again.
219 insert_line
220 -----------
222 _Insert line_ (`enter')
224 Inserts a new line. If the cursor is in the middle of a line,
225 it's split in two.
227 insert_space
228 ------------
230 _Insert space_ (`space')
232 Inserts a space, triggering word wrapping, if active.
234 insert_tab
235 ----------
237 _Insert tab_ (`tab')
239 Inserts a tabulator, triggering word wrapping, if active.
241 insert_template
242 ---------------
244 _Insert template..._
246 Shows a list dialog with the names of the templates for the user to
247 select one, that will be inserted in the cursor position.
249 join_paragraph
250 --------------
252 _Join a paragraph in one line_
254 Joins the text from the cursor position to the next empty line as one
255 paragraph.
257 line_options
258 ------------
260 _Line options..._
262 Shows a dialog asking for line configuration options, like word wrapping,
263 end of line string, etc.
265 load_session
266 ------------
268 _Load session_
270 Loads a session, previously saved by `save_session'.
272 mark
273 ----
275 _Mark beginning/end of block_ (`f9')
277 Marks the beginning or the end of the block.
279 mark_vertical
280 -------------
282 _Mark vertical block_ (`ctrl-b')
284 Marks the beginning or the end of a vertical (also known as
285 rectangular) block.
287 menu
288 ----
290 _Menu_ (`ctrl-a')
292 Calls the menu.
294 mouse_drag_mark
295 ---------------
297 _Mark using mouse dragging_ (`mouse-drag')
299 This action is called by the underlying driver when the mouse is used to drag
300 over text. It must not be called nor bound to a key.
302 move_bof
303 --------
305 _Beginning of document_ (`ctrl-home')
307 Moves the cursor to the beginning of the document (first line, first column).
309 move_bol
310 --------
312 _Beginning of line_ (`home')
314 Moves the cursor to the beginning of the current line (first column).
316 move_down
317 ---------
319 _Line down_ (`cursor-down')
321 Moves the cursor to the next line.
323 move_eof
324 --------
326 _End of document_ (`ctrl-end')
328 Moves the cursor to the last line of the document.
330 move_eol
331 --------
333 _End of line_ (`end')
335 Moves the cursor to the end of the current line.
337 move_left
338 ---------
340 _Character left_ (`cursor-left')
342 Moves the cursor one character to the left. If it's in the beginning of
343 a line, moves to the last character of the previous line.
345 move_mouse_wheel_down
346 ---------------------
348 _Mouse wheel down_ (`mouse-wheel-down')
350 Moves the cursor four lines down.
352 move_mouse_wheel_up
353 -------------------
355 _Mouse wheel up_ (`mouse-wheel-up')
357 Moves the cursor four lines up.
359 move_pgdn
360 ---------
362 _Page down_ (`page-down')
364 Moves the cursor a page down.
366 move_pgup
367 ---------
369 _Page up_ (`page-up')
371 Moves the cursor a page up.
373 move_right
374 ----------
376 _Character right_ (`cursor-right')
378 Moves the cursor one character to the right. If it's over the end of
379 the line, moves to the first character of the next line.
381 move_to_mouse_position
382 ----------------------
384 _Move cursor to mouse click_ (`mouse_left_button', `mouse_right_button', `mouse-middle-button')
386 Moves the cursor to where the mouse is. This action is called by the
387 underlying system and must not be directly called nor bound to a key.
389 move_up
390 -------
392 _Line up_ (`cursor-up')
394 Moves the cursor to the previous line.
396 move_word_left
397 --------------
399 _Word left_ (`ctrl-cursor-left')
401 Moves the cursor to the beginning of the previous word.
403 move_word_right
404 ---------------
406 _Word right_ (`ctrl-cursor-right')
408 Moves the cursor to the beginning of the next word.
413 _New_
415 Creates a new unnamed document.
417 next
418 ----
420 _Next_ (`ctrl-n')
422 Select the next document as the active one. The list of documents
423 is circular; if the active one is the last, the first one is selected.
425 open
426 ----
428 _Open..._ (`ctrl-o')
430 Shows a dialog to open a file. Its behaviour and look are system-dependent.
432 If the document to be opened is password-protected, a dialog asking for the
433 password will also appear.
435 open_config_file
436 ----------------
438 _Edit configuration file_
440 Opens the user configuration file for editing. It doesn't have to exist.
442 open_templates_file
443 -------------------
445 _Edit templates file_
447 Opens the templates file for edition. Templates defined here can be later
448 inserted by calling `insert_template'. See the `mp_templates.sample' file
449 included in the documentation for an example of the accepted format.
451 open_under_cursor
452 -----------------
454 _Open file under cursor_ (`ctrl-enter')
456 Picks the word in the current document under the cursor, accepts it as
457 a document name and tries to open it. If it's in the format string:number,
458 is accepted as a file name and a line number.
460 paste_mark
461 ----------
463 _Paste block_ (`ctrl-v')
465 Pastes the text in the clipboard into the cursor position.
467 play_macro
468 ----------
470 _Play macro_ (`f7')
472 Replays all keystrokes recorded during the previous _learning mode_,
473 activated by a call to `record_macro'.
475 prev
476 ----
478 _Previous_
480 Select the previous document as the active one. The list of documents
481 is circular; if the active one is the first, the last one is selected.
483 record_macro
484 ------------
486 _Record macro_ (`f10')
488 Toggles _learning mode_. When active, all keystrokes are recorded to
489 further execute them by a call to `play_macro'.
491 redo
492 ----
494 _Redo_
496 Redoes the previously undone operation, if any.
498 repeated_words_options
499 ----------------------
501 _Repeated words options..._
503 Sets the options for the `seek_repeated_word' action.
505 replace
506 -------
508 _Replace..._ (`ctrl-r')
510 Shows the search and replace dialog box.
512 revert
513 ------
515 _Revert_
517 Reverts the active document to the state on disk.
519 save
520 ----
522 _Save..._ (`ctrl-s')
524 Saves the active document. If it's unnamed, `save_as' is called instead.
526 save_as
527 -------
529 _Save as..._
531 Shows a dialog asking for a file name to save the current document as.
532 Its behaviour and look are system-dependent.
534 save_session
535 ------------
537 _Save session_
539 Saves all documents and its positions as a session to be later loaded
540 by `load_session'.
542 section_list
543 ------------
545 _Section list..._ (`ctrl-d')
547 Shows a list with the sections found in the current document. Selecting
548 one of them moves the cursor there.
550 seek
551 ----
553 _Search text..._ (`ctrl-f')
555 Shows the search text dialog.
557 seek_misspelled
558 ---------------
560 _Search misspelled word_ (`f5')
562 Searches for the next misspelled word in the current document. If one
563 is found, the cursor is moved there. If it's a false positive, the
564 `ignore_last_misspell' action can be called to add the recently found
565 word to a whitelist so it won't be found again.
567 seek_next
568 ---------
570 _Search next_ (`f3')
572 Searches the next occurrence of the string entered by the `seek' action.
574 seek_next_char
575 --------------
577 _Move to next instance of current char_ (`ctrl-page-down')
579 Searches for the next occurrence of the char under the cursor. This is
580 useful, for instance, to jump to the next paren or brace.
582 seek_prev
583 ---------
585 _Search previous_ (`ctrl-f3')
587 Same as `seek_next', but searching backwards.
589 seek_prev_char
590 --------------
592 _Move to previous instance of current char_ (`ctrl-page-up')
594 Searches for the previous occurrence of the char under the cursor. This is
595 useful, for instance, to jump to the previous paren or brace.
597 seek_repeated_word
598 ------------------
600 _Search repeated word_ (`f6')
602 Searches for repeated words. Controlled by the configuration directives
603 `mp.config.rw_num_chars' and `mp.config.rw_max_dist'. A searching is done
604 from the cursor position trying to find two words nearer from each
605 other up to a maximum of the specified distance and that start or
606 end with the same letters. If a pair is found, the words are
607 highlighted as spelling errors and the cursor moved over the first
608 one. Otherwise, a message marking the end is shown and nothing is done.
610 set_password
611 ------------
613 _Password protect..._
615 Shows a dialog asking (twice) for a password to protect the active document with
616 when it's saved. From that moment on, each time the document is tried to open
617 the password will be asked for.
619 Minimum Profit encrypts documents using a variant of the ARCFOUR algorithm.
621 sync
622 ----
624 _Save modified texts_
626 Saves all texts with pending modifications.
628 tab_options
629 -----------
631 _Tab options..._
633 Shows a dialog asking for tabulator configuration options, like tab size,
634 convert to spaces, etc.
636 toggle_spellcheck
637 -----------------
639 _Toggle spellchecking_
641 toggles spellchecking. When active, misspelled words will be shown underlined.
643 undo
644 ----
646 _Undo_ (`ctrl-z')
648 Undoes the last operation.
650 unmark
651 ------
653 _Unmark block_ (`f8')
655 Unmarks the selected block.
657 word_count
658 ----------
660 _Count words_
662 Counts the number of words and lines in the active document.
664 word_wrap_paragraph
665 -------------------
667 _Word-wrap a paragraph_ (`f4')
669 Rebuilds the text from the cursor position to the following empty
670 line using the wordwrapping setup. Wordwrapping must be set (see
671 `line_options').
673 zoom_in
674 -------
676 _Bigger font_ (`f12')
678 Selects a bigger font (only for GUIs).
680 zoom_out
681 --------
683 _Smaller font_ (`f11')
685 Selects a smaller font (only for GUIs).
688 ----
689 Angel Ortega <angel@triptico.com>