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.
12 Shows the "About Minimum Profit" information.
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.
32 Closes the active document. If there are unsaved changes, a confirmation dialog
40 Closes all open documents.
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.
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'.
65 _Copy block_ (`ctrl-c')
67 Copies the currently selected block to the clipboard.
72 _Cut block_ (`ctrl-x')
74 Copies the currently selected block to the clipboard and deletes the block.
79 _Delete character_ (`delete')
81 Delete the character over the cursor.
86 _Delete character to the left_ (`backspace')
88 Deletes the character to the left of the cursor.
93 _Delete line_ (`ctrl-y')
95 Deletes the line under the cursor.
102 Deletes the currently selected block.
109 Shows a dialog with the list of currently open documents. The list cursor will
110 be over the active one and the documents with pending modifications will be
111 prefixed with an asterisk. Selecting a different one will make it become the
117 _Set charset encoding..._
119 Shows a dialog asking for a string describing the charset encoding that will
120 be used when saving or opening new documents. If an empty string is entered,
121 the current locale will be used. the following set of character encodings are
125 Aliases are utf-8, UTF8 and UTF-8.
127 Aliases are iso-8859-1, ISO-8859-1, ISO8859-1, latin1, latin-1, LATIN1 and LATIN-1.
128 * utf16 (with endianness detection on input and local endianness on output).
129 Aliases are utf-16, UTF16, UTF-16, ucs-2, UCS2, UCS-2.
130 * utf16be (big endian).
131 Aliases are utf-16be, UTF16BE, UTF-16BE, ucs2be, UCS2BE, ucs-2be and UCS-2BE.
132 * utf16le (little endian).
133 Aliases are utf-16le, UTF16LE, UTF-16LE, ucs2le, UCS2LE, ucs-2le and UCS-2LE.
134 * utf32 (with endianness detection on input and local endianness on output).
135 Aliases are utf-32, UTF32, UTF-32, ucs-4, ucs4, UCS-4 and UCS4.
136 * utf32be (big endian).
137 Aliases are utf-32be, UTF32BE, UTF-32BE, ucs4be, UCS4BE, ucs-4be and UCS-4BE.
138 * utf32le (little endian).
139 Aliases are utf-42le, UTF42LE, UTF-42LE, ucs4le, UCS4LE, ucs-4le and UCS-4LE.
141 If the 'iconv' library is available, there can be many more encodings.
146 _Execute MPSL code..._ (`escape')
148 Shows a dialog asking for a string of MPSL code that will be executed.
153 _Execute document as MPSL_
155 Executes the active document as MPSL code.
160 _Run system command..._
162 Shows a dialog asking for a system command to execute. If the command is
163 preceded by the pipe symbol (|), the active document will be fed as the
164 standard input of the command; otherwise, the standard output of the command
165 will be inserted in the cursor position.
172 Closes all documents and exists Minimum Profit.
177 _Search tag..._ (`ctrl-t')
179 Shows a dialog asking for a tag to search. The _tags_ file will be read from
180 the working directory and the tag searched there; all symbols starting with it
181 will be shown in a list dialog. When selecting a tag from that list, the file
182 containing it will be open and the cursor moved to where the tag is.
183 This is a useful way of finding where a function or variable is defined.
185 If no _tags_ file exist in the working directory, the *ctags* program is
188 For other uses of the _tags_ file, see `complete_symbol'.
193 _Go to line..._ (`ctrl-g')
195 Shows a dialog asking for a line number. If accepted, the current document
196 cursor will move to that line (if existent).
201 _Grep (find inside) files..._
203 Shows a dialog asking for a string to be searched, and an optional spec of
204 files to search the string in. If no spec is given, all files in the working
205 directory are scanned. Matches are shown in a read-only document, and each
206 match can be directly open by using the 'open_under_cursor' action.
208 This is a useful way to find where a function or variable is used.
213 _Help on word over cursor_ (`f1')
215 Picks the word under the cursor and asks the underlying system for help
221 _Hexadecimal viewer..._
223 Shows a dialog to open a read-only, hexadecimal view of a file.
228 _Ignore last misspelled word_
230 Ignores the last misspelled word found by `seek_misspelled' by adding it
231 to a whitelist so it won't be found again.
236 _Insert line_ (`enter')
238 Inserts a new line. If the cursor is in the middle of a line,
244 _Insert space_ (`space')
246 Inserts a space, triggering word wrapping, if active.
253 Inserts a tabulator, triggering word wrapping, if active.
260 Shows a list dialog with the names of the templates for the user to
261 select one, that will be inserted in the cursor position.
266 _Join a paragraph in one line_
268 Joins the text from the cursor position to the next empty line as one
276 Shows a dialog asking for line configuration options, like word wrapping,
277 end of line string, etc.
284 Loads a session, previously saved by `save_session'.
289 _Mark beginning/end of block_ (`f9')
291 Marks the beginning or the end of the block.
296 _Mark vertical block_ (`ctrl-b')
298 Marks the beginning or the end of a vertical (also known as
311 _Mark using mouse dragging_ (`mouse-drag')
313 This action is called by the underlying driver when the mouse is used to drag
314 over text. It must not be called nor bound to a key.
319 _Beginning of document_ (`ctrl-home')
321 Moves the cursor to the beginning of the document (first line, first column).
326 _Beginning of line_ (`home')
328 Moves the cursor to the beginning of the current line (first column).
333 _Line down_ (`cursor-down')
335 Moves the cursor to the next line.
340 _End of document_ (`ctrl-end')
342 Moves the cursor to the last line of the document.
347 _End of line_ (`end')
349 Moves the cursor to the end of the current line.
354 _Character left_ (`cursor-left')
356 Moves the cursor one character to the left. If it's in the beginning of
357 a line, moves to the last character of the previous line.
359 move_mouse_wheel_down
360 ---------------------
362 _Mouse wheel down_ (`mouse-wheel-down')
364 Moves the cursor four lines down.
369 _Mouse wheel up_ (`mouse-wheel-up')
371 Moves the cursor four lines up.
376 _Page down_ (`page-down')
378 Moves the cursor a page down.
383 _Page up_ (`page-up')
385 Moves the cursor a page up.
390 _Character right_ (`cursor-right')
392 Moves the cursor one character to the right. If it's over the end of
393 the line, moves to the first character of the next line.
395 move_to_mouse_position
396 ----------------------
398 _Move cursor to mouse click_ (`mouse_left_button', `mouse_right_button', `mouse-middle-button')
400 Moves the cursor to where the mouse is. This action is called by the
401 underlying system and must not be directly called nor bound to a key.
406 _Line up_ (`cursor-up')
408 Moves the cursor to the previous line.
413 _Word left_ (`ctrl-cursor-left')
415 Moves the cursor to the beginning of the previous word.
420 _Word right_ (`ctrl-cursor-right')
422 Moves the cursor to the beginning of the next word.
429 Creates a new unnamed document.
436 Select the next document as the active one. The list of documents
437 is circular; if the active one is the last, the first one is selected.
444 Shows a dialog to open a file. Its behaviour and look are system-dependent.
446 If the document to be opened is password-protected, a dialog asking for the
447 password will also appear.
452 _Edit configuration file_
454 Opens the user configuration file for editing. It doesn't have to exist.
459 _Open dropped files_ (`dropped-files')
461 Opens all files dropped by the user from an external file manager.
466 _Edit templates file_
468 Opens the templates file for edition. Templates defined here can be later
469 inserted by calling `insert_template'. See the `mp_templates.sample' file
470 included in the documentation for an example of the accepted format.
475 _Open file under cursor_ (`ctrl-enter')
477 Picks the word in the current document under the cursor, accepts it as
478 a document name and tries to open it. If it's in the format string:number,
479 is accepted as a file name and a line number.
484 _Paste block_ (`ctrl-v')
486 Pastes the text in the clipboard into the cursor position.
493 Replays all keystrokes recorded during the previous _learning mode_,
494 activated by a call to `record_macro'.
501 Select the previous document as the active one. The list of documents
502 is circular; if the active one is the first, the last one is selected.
507 _Record macro_ (`f10')
509 Toggles _learning mode_. When active, all keystrokes are recorded to
510 further execute them by a call to `play_macro'.
517 Redoes the previously undone operation, if any.
519 repeated_words_options
520 ----------------------
522 _Repeated words options..._
524 Sets the options for the `seek_repeated_word' action.
529 _Replace..._ (`ctrl-r')
531 Shows the search and replace dialog box.
538 Reverts the active document to the state on disk.
545 Saves the active document. If it's unnamed, `save_as' is called instead.
552 Shows a dialog asking for a file name to save the current document as.
553 Its behaviour and look are system-dependent.
560 Saves all documents and its positions as a session to be later loaded
566 _Section list..._ (`ctrl-d')
568 Shows a list with the sections found in the current document. Selecting
569 one of them moves the cursor there.
574 _Search text..._ (`ctrl-f')
576 Shows the search text dialog.
581 _Search misspelled word_ (`f5')
583 Searches for the next misspelled word in the current document. If one
584 is found, the cursor is moved there. If it's a false positive, the
585 `ignore_last_misspell' action can be called to add the recently found
586 word to a whitelist so it won't be found again.
593 Searches the next occurrence of the string entered by the `seek' action.
598 _Move to next instance of current char_ (`ctrl-page-down')
600 Searches for the next occurrence of the char under the cursor. This is
601 useful, for instance, to jump to the next paren or brace.
606 _Search previous_ (`ctrl-f3')
608 Same as `seek_next', but searching backwards.
613 _Move to previous instance of current char_ (`ctrl-page-up')
615 Searches for the previous occurrence of the char under the cursor. This is
616 useful, for instance, to jump to the previous paren or brace.
621 _Search repeated word_ (`f6')
623 Searches for repeated words. Controlled by the configuration directives
624 `mp.config.rw_num_chars' and `mp.config.rw_max_dist'. A searching is done
625 from the cursor position trying to find two words nearer from each
626 other up to a maximum of the specified distance and that start or
627 end with the same letters. If a pair is found, the words are
628 highlighted as spelling errors and the cursor moved over the first
629 one. Otherwise, a message marking the end is shown and nothing is done.
634 _Password protect..._
636 Shows a dialog asking (twice) for a password to protect the active document with
637 when it's saved. From that moment on, each time the document is tried to open
638 the password will be asked for.
640 Minimum Profit encrypts documents using a variant of the ARCFOUR algorithm.
645 _Save modified texts_
647 Saves all texts with pending modifications.
654 Shows a dialog asking for tabulator configuration options, like tab size,
655 convert to spaces, etc.
660 _Toggle spellchecking_
662 toggles spellchecking. When active, misspelled words will be shown underlined.
669 Undoes the last operation.
674 _Unmark block_ (`f8')
676 Unmarks the selected block.
683 Counts the number of words and lines in the active document.
688 _Word-wrap a paragraph_ (`f4')
690 Rebuilds the text from the cursor position to the following empty
691 line using the wordwrapping setup. Wordwrapping must be set (see
697 _Bigger font_ (`f12')
699 Selects a bigger font (only for GUIs).
704 _Smaller font_ (`f11')
706 Selects a smaller font (only for GUIs).
710 Angel Ortega <angel@triptico.com>