1mined(1) Unicode text editor mined(1)
2
3
4
6 MinEd - powerful text editor with extensive Unicode and CJK support
7
9 mined [ -/+options ] [ +line ] [ +/search ] [ files ... ]
10
11 xmined ...
12 umined ...
13
14 wined ...
15
16 minmacs ...
17 mstar ...
18 mpico ...
19
20 →NEW→ Note: Mined suppresses backup file names from the command line
21 file list if they appear after their base version name as generated by
22 command line auto-completion, in order to prevent their accidental
23 editing; thus after file name "x" the following would be excluded from
24 the file list (where N is a number): "x~", "x;N", "x.~N~", so that,
25 e.g., mined x* edits x and x1 but not x~.
26
28 (Note: if there is no dotted line below, use 8 bit terminal environment
29 for proper display of manual page.)
30 ······················································
31
32 Mined is a text editor with
33
34 Security and safety features
35 · →NEW→ Transparent editing of encrypted files, using fil‐
36 ters configurable by file type
37
38 · Systematic text and file handling safety, avoiding loss
39 of data
40
41 · Backup features, supporting simple or versioned backup
42
43 · Hard link preservation
44
45 · Optional password hiding
46
47 Interactive features
48 · Intuitive user interface
49
50 · Logical and consistent concept of navigating and editing
51 text (without ancient line-end handling limitations or
52 insert/append confusion)
53
54 · Supports various control styles:
55
56 · Editing with command control, function key con‐
57 trol, or menu control
58
59 · Navigation by cursor keys, control keys, mouse or
60 scrollbar
61
62 · Concise and comprehensive menus (driven by keyboard or
63 mouse)
64
65 · HOP key paradigm doubles the number of navigation func‐
66 tions that can be most easily reached and remembered by
67 intuitively amplifying or expanding the associated func‐
68 tion
69
70 · Interactive file chooser and interactive file switcher
71
72 · Proper handling of window size changes in any state of
73 interaction
74
75 Versatile character encoding support
76 · Extensive Unicode support, including double-width and
77 combining characters, script highlighting, various meth‐
78 ods of character input support (mapped keyboard input
79 methods, mnemonic and numeric input), supporting CJK,
80 Vietnamese, Hebrew, Arabic, and other scripts
81
82 · Character information from recent Unicode version
83
84 · Extensive accented character input support, including
85 multiple accent prefix keys
86
87 · Support for Greek (monotonic and polytonic)
88
89 · Support for Cyrillic accented characters
90
91 · Support of bidirectional terminals
92
93 · Support of Arabic ligature joining on all terminals
94
95 · East Asian character set support: handling of major CJK
96 encodings (including GB18030 and JIS encodings with com‐
97 bining characters)
98
99 · Support for a large number of 8 bit encodings (with com‐
100 bining characters for Vietnamese, Thai, Arabic, Hebrew)
101
102 · Support of CJK input methods by enhanced keyboard mapping
103 including multiple choice mappings (handled by a pick
104 list menu); characters in the pick list being sorted by
105 relevance of Unicode ranges
106
107 · Han character information with description and pronuncia‐
108 tion
109
110 · Auto-detection of text character encoding, edits files
111 with mixed character encoding sections (e.g. mailboxes),
112 transparent handling and auto-detection of UTF-16 encoded
113 files
114
115 · Auto-detection of UTF-8 / CJK / 8 bit terminal mode and
116 detailed features (like different Unicode width and com‐
117 bining data versions)
118
119 · Comprehensive and flexible (though standard-conformant)
120 set of mechanisms to specify both text and terminal
121 encodings with useful precedences
122
123 · Flexible combination of any text encoding with any termi‐
124 nal encoding
125
126 · Encoding support tested with: xterm, mlterm, rxvt,
127 cxterm, kterm, hanterm, KDE konsole, gnome-terminal,
128 Linux console, cygwin console, mintty, PuTTY
129
130 Text editing features
131 · Text layout features:
132
133 · Paragraph wrapping, also justifying item lists
134
135 · Auto-indentation and Undent function (smart
136 Backspace)
137
138 · Smart quotes (with quotation marks style selection
139 and auto-detection) and smart dashes
140
141 · →NEW→ Advanced list support (bullet and numbered
142 lists)
143
144 · Search and replacement patterns can have multiple lines
145
146 · Cross-session paste buffer (copy/paste between multiple -
147 even subsequent or remote - invocations of mined)
148
149 · Optional Unicode paste buffer mode with implicit conver‐
150 sion
151
152 · Marker stack for quick return to previous text positions
153
154 · Multiple paste buffers (emacs-style)
155
156 · Optional rectangular copy/paste area
157
158 · Interactive selection highlighting (with mouse or key‐
159 board selection), standard dual-mode Del key behaviour
160
161 · Program editing features, HTML support and syntax high‐
162 lighting, identifier and function definition search, also
163 across files; structure input support
164
165 · Visible indications of special text contents (TAB charac‐
166 ters, different line-end types, character codes that can‐
167 not be displayed in the current mode)
168
169 · Full binary transparent editing with visible indications
170 (illegal UTF-8 or CJK, mixed line end types, NUL charac‐
171 ters, ...)
172
173 · Print function that works in all text encodings
174
175 · Optional emacs command mode
176
177 Small-footprint operation, portability and interworking
178 · Plain text mode (terminal) operation
179
180 · Optimized use of terminal features for a wide range of
181 terminals, including large terminal support (2015x2015)
182 of recent xterm and mintty
183
184 · Instant start-up
185
186 · Runs on many platforms (including legacy systems): Linux,
187 Android, Raspberry Pi, Unix (SunOS, BSD, Mac OS X, QNX,
188 GNU Hurd, HP-UX, IBM AIX, Irix, SCO UnixWare, Ultrix,
189 Tru64), DOS (djgpp), Windows (cygwin, Interix, MSYS),
190 OpenVMS, Haiku
191
192 This manual contains the main topics
193
194 · Command line options
195
196 · Editing text with mined, an overview
197
198 · Keypad layout
199
200 · The HOP function
201
202 · Mouse control and Menus
203
204 · Paste buffers
205
206 · Visual selection and Keypad modes
207
208 · Rectangular copy/paste
209
210 · Text position marker stack
211
212 · Paragraph justification
213
214 · Auto indentation and Structure input support
215
216 · List support (bullet and numbered lists)
217
218 · Search and replace multiple lines
219
220 · Overview: input support features
221
222 · Handling files with mined
223
224 · Tags file support
225
226 · →NEW→ Encrypted files
227
228 · Data safety and security, →NEW→ Backup and recov‐
229 ery files and File locking
230
231 · Line end modes and binary-transparent editing
232
233 · File info: Memory of file position and editing
234 style parameters
235
236 · →NEW→ File chooser and File switcher
237
238 · Version control integration
239
240 · Printing
241
242 · Working with mined
243
244 · Quick Options (Mode indication) flags
245
246 · Structured editing support
247
248 · Password hiding
249
250 · Visible indication of line contents
251 Language support
252
253 · Character handling support
254
255 · Combining characters
256
257 · Character information display
258
259 · Character conversion features
260
261 · Smart quotes
262
263 · Character input support
264
265 · Accented and mnemonic input support
266
267 · Combining character input
268
269 · Special character input shortcuts
270
271 · Character input mnemonics
272
273 · Keyboard Mapping and Input Methods
274
275 · Character encoding support
276
277 · Auto-detected character encodings
278
279 · CJK and mapped 8 bit encoding support
280
281 · Combining characters
282
283 · Unicode support
284
285 · Character input support
286
287 · Encoding conversion support
288
289 · Bidirectional terminal support
290
291 · Joining characters
292
293 · CJK support
294
295 · CJK input method support
296
297 · Han character information display
298
299 · Terminal encoding support Mined Command reference (com‐
300 mand and key function assignments)
301
302 · Generic command modifiers (esp. HOP key)
303
304 · Cursor and screen motion
305
306 · Entering text
307
308 · Input support commands
309
310 · Modifying text
311
312 · Text block and buffer operations
313
314 · Search
315
316 · File operations
317
318 · Menu
319
320 · Miscellaneous
321
322 · MSDOS keyboard functions
323
324 · Emacs mode
325
326 · Windows keyboard mode
327
328 · WordStar mode
329
330 · Configuration of user preferences
331
332 · Environment interworking and configuration hints
333
334 · Mined runtime support library
335
336 · PC versions
337
338 · VMS version
339
340 · Android version
341
342 · Terminal environment
343
344 · Locale configuration
345
346 · PC terminals
347
348 · Terminal setup and configuration
349
350 · Terminal interworking problems
351
352 · Keyboard Mapping / Input Method preselection
353
354 · Smart Quotes style configuration
355
356 · Han info configuration
357
358 · Common paste buffer configuration
359
360 · Keypad configuration
361
362 · Printing configuration
363
364 · Mined configuration
365
366 · Environment variables
367
368 · Author and Acknowledgements
369
370 Interactive help is available with F1.
371
373 Mined can be invoked
374
375 · with or without list of file names
376
377 · reading from a pipe (reading text from standard input)
378
379 · writing into a pipe (writing edited text to standard out‐
380 put)
381
382 · using a script that starts it in a new window
383
384 Examples
385 mined x
386 edits the file x
387
388 mined x y z
389 edits files x, y, and z
390
391 cmd | mined
392 edits the output of program cmd; a file name for saving can be
393 given later
394
395 mined x > y
396 takes the contents of file x and edits it for writing into y
397
398 mined | mail nn
399 edits a text to be mailed
400
401 cmd1 | mined | cmd2
402 modifies text within a pipe between program cmd1 (output) and
403 cmd2 (as input)
404
405 minmacs ...
406 runs mined in emacs-compatible command mode (like mined -e)
407
408 mstar ...
409 runs mined in WordStar-compatible command mode (like mined -W)
410
411 mpico ...
412 runs mined in pico-compatible command mode (alpha)
413
414 xmined ...
415 starts a new terminal window (xterm or rxvt, depending on cur‐
416 rent TERM variable setting) and invokes mined in it
417
418 umined ...
419 starts a new terminal window in UTF-8 mode (xterm or rxvt,
420 depending on font availability and usage capabilities) and
421 invokes mined in it
422
423 wined ...
424 (in cygwin) starts mined in a window (using the mintty terminal,
425 applying Windows look-and-feel)
426
427 wined.bat ...
428 (in Windows) starts mined in a window, using Windows keyboard
429 emulation mode
430
431 Startup options
432 +number
433 Mined positions to the given line number.
434
435 +/expr Mined initially searches for the given search expression. →NEW→
436 The search can be repeated with F9.
437
438 -v Mined starts in view only mode. The text cannot be modified.
439
440 -- Restricted mode (tool mode): no other files can be edited or
441 otherwise affected. (Also triggered if programm name starts
442 with "r", e.g. rmined).
443
444 ++ End of options; subsequent file name can start with "-" or "+".
445
446 +@ Apply extended grooming to file info file; drop entries for
447 files that are not accessible. See File info: Memory of file
448 position and editing style parameters for details.
449
450 File handling
451 +x Make new files executable (Unix). When cloning a file (with
452 Save As or a similar feature), or if permissions are restricted
453 by the environment (umask setting in Unix), executable permis‐
454 sion is set only where also read permission is set.
455
456 +bX Select backup mode, where X is one of:
457
458 · -: no backup files
459
460 · s: simple backup files (F~)
461
462 · e: emacs style numbered backup files (F.~N~)
463
464 · v: VMS style numbered backup files (F;N)
465
466 · n: numbered backup files (whichever style occurs)
467
468 · a: automatic backup files (whichever style occurs)
469 See Backup files for details.
470
471 +zX Preselect file chooser sort options, where X is one of:
472
473 · x: sort by file name extensions
474
475 · d: list directories first
476
477 Line end handling (transparent and transforming)
478 -r Convert MSDOS line ends (CR LF) to Unix line ends (LF) (strip‐
479 ping CR at line ends). Can be combined with -R or +R. Also
480 sets line end type for new files to LF for the djgpp version
481 (which defaults to CR LF).
482
483 +r Convert Unix line ends (LF) to MSDOS line ends (CR LF) (adding
484 CR at line ends). Can be combined with -R or +R. Also sets
485 line end type for new files to CR LF.
486
487 -R Convert Mac line ends (CR) to Unix line ends (LF). Can be com‐
488 bined with -r or +r.
489
490 +R Recognise Mac line ends (CR) and indicate them on display; noth‐
491 ing is transformed with this option. Can be combined with -r or
492 +r.
493
494 +u-u Interpret Unicode line separator and paragraph separator as nor‐
495 mal characters, not line ends (handling them as line ends was
496 previously enabled with -uu and is now on by default).
497
498 Character set and character handling
499 -u (character set)
500 Interprets edited text as UTF-8, disables UTF and CJK auto
501 detection.
502 Synonym of -EU.
503
504 -l (character set)
505 Interprets edited text as Latin-1, disables UTF and CJK auto
506 detection.
507 Synonym of -EL.
508
509 +u-u (character handling)
510 Interpret text as UTF-8, but interpret Unicode line separator
511 and paragraph separator as normal characters, not line ends.
512
513 -c (character handling)
514 Selects separated display mode for combined characters (separat‐
515 ing base character and combining characters). This mode can
516 also be toggled from the Options menu or by clicking on the Com‐
517 bining flag (next to the character encoding flag) in the flags
518 area.
519
520 -b (character handling)
521 Toggle "poor man's bidi" mode: input support for right-to-left
522 scripts, based on Unicode script ranges. (Enabled by default
523 unless the terminal is detected to be in bidi mode; so e.g. in
524 mlterm, poor man's bidi is disabled by default.)
525
526 -EX (character set)
527 Where X is one of B/G/C/J/S/K/H: Selects one of the supported
528 CJK character encodings for text interpretation and disables
529 auto-detection of CJK encodings. For details, see CJK encoding
530 support. For more details on supported encodings, see the Char‐
531 acter encoding flags listing in the Quick Options (Mode indica‐
532 tion) flags section.
533
534 -EX (character set)
535 Where X is one of U/L or another 1-letter character encoding
536 tag: Selects Unicode/UTF-8, Latin-1, or one of the other sup‐
537 ported character encodings for text interpretation. For details
538 on supported encodings, see the Quick Options (Mode indication)
539 flags listing.
540
541 -E=charmap (character set)
542 Where charmap is a character encoding name (as reported by the
543 locale charmap command): Selects the respective character encod‐
544 ing for text interpretation. For details on locale-related
545 character encoding configuration, see Locale configuration.
546
547 -E.suffix (character set)
548 Where suffix is a character encoding suffix ("codeset") as used
549 in locale names: Selects the respective character encoding for
550 text interpretation. For details on locale-related character
551 encoding configuration, see Locale configuration.
552
553 -E:flag (character set)
554 Where flag is a 2-letter indication used by mined to indicate
555 the respective text encoding in the Encoding flag: Selects the
556 respective character encoding for text interpretation. For
557 details on supported encodings and their flags, see the Quick
558 Options (Mode indication) flags listing.
559
560 -Eu (buffer encoding)
561 Enables Unicode buffer mode which always maintains the
562 Copy/Paste buffer in Unicode, thus facilitating conversion
563 between different encodings being edited. For details, see Uni‐
564 code Copy/Paste buffer conversion.
565
566 -E? (character set)
567 Determine the encoding(s) of the text file(s) given as parame‐
568 ters by auto-detection, print out the information and quit.
569
570 -E or -E-
571 →NEW→ Disable text encoding auto-detection and derive it from
572 the locale environment.
573
574 -KX (input method handling)
575 Configure the Space key to perform a certain function in key‐
576 board mapping selection menus ("CJK input method pick lists"),
577 where X is one of:
578 'n' to navigate to the next choice (like cursor-right),
579 'r' to navigate to the next row (like cursor-down),
580 's' to select the current choice (like Enter).
581
582 -K=im-im (input method selection)
583 Select input method and/or standby input method (for quick
584 switching with Alt-k). The syntax is the same as for the
585 optional environment variable MINEDKEYMAP (see below).
586
587 Terminal mode
588 -U (terminal mode)
589 Toggles UTF-8 screen handling assumption, i.e. selects UTF-8
590 screen handling unless UTF-8 keyboard input is already selected
591 (by another -U option or environment setting). In the latter
592 case, -U deselects UTF-8 terminal operation. This option should
593 normally not be used as the mode should be configured in the
594 environment (see Locale configuration).
595
596 +U (terminal mode)
597 Selects UTF-8 screen handling. Note that none of the options -U
598 or +U needs to be used if the environment is correctly config‐
599 ured to indicate UTF-8 as it should (see Unicode handling / Ter‐
600 minal environment).
601 Also, mined performs auto-detection of UTF-8 terminal encoding
602 and UTF-8 terminal features (different width data versions, han‐
603 dling of double-width, combining and joining characters), so
604 even if the environment is not correctly configured, mined
605 should work without this explicit terminal mode parameter.
606
607 +UU (terminal mode)
608 Selects bidirectional terminal support. This mode implies UTF-8
609 and also assumes that Arabic ligature joining (of LAM/ALEF com‐
610 binations) is applied; it will be handled by mined accordingly.
611
612 +UU-U (terminal mode)
613 Selects bidirectional terminal support without Arabic ligature
614 joining (like mintty).
615
616 -cc (terminal mode)
617 Assumes that the terminal does not support combining characters.
618 By default - unless otherwise detected - mined assumes that com‐
619 bining characters work on UTF-8 terminals and do not work in CJK
620 terminals.
621
622 +c (terminal mode)
623 Assumes that the terminal supports combining characters. This
624 is enabled by default for UTF-8 terminals, and disabled by
625 default for CJK terminals, unless otherwise detected.
626
627 +EX (terminal mode)
628 Where X is one of B/G/C/J/X/S/x/K/H: Assumes a CJK encoded ter‐
629 minal in one of the supported CJK character encodings. For
630 details, see CJK encoding support.
631
632 +EX (terminal mode)
633 Where X is one of g/c/j: Assumes a CJK encoded terminal in one
634 of the CJK character encodings like G/C/J and also assumes that
635 the terminal cannot display GB18030 4-byte encodings, CNS 4-byte
636 encodings, EUC-JP 3-byte encodings, respectively.
637
638 +EX (terminal mode)
639 Where X is one of U/L or another 1-letter character encoding
640 tag: Assumes a Unicode/UTF-8 or Latin-1 encoded terminal,
641 respectively, or an 8-bit terminal running one of the other sup‐
642 ported character encodings. For details on supported encodings,
643 see the Quick Options (Mode indication) flags listing. For
644 details on terminal encoding support, see Terminal encoding sup‐
645 port.
646
647 +E=charmap (terminal mode)
648 Where charmap is a character encoding name (as reported by the
649 locale charmap command): Assumes the terminal to have the
650 respective encoding. For details on locale-related character
651 encoding configuration, see Locale configuration.
652
653 +E.suffix (terminal mode)
654 Where suffix is a character encoding suffix ("codeset") as used
655 in locale names: Assumes the terminal to have the respective
656 encoding. For details on locale-related character encoding con‐
657 figuration, see Locale configuration.
658
659 +E:flag (terminal mode)
660 Where flag is a 2-letter indication used by mined to indicate
661 the respective encoding as text encoding in the Encoding flag:
662 Assumes the terminal to have the respective encoding. For
663 details on supported encodings and their flags, see the Quick
664 Options (Mode indication) flags listing.
665
666 +E? (terminal mode)
667 Determine the terminal encoding and further terminal encoding
668 features and properties by auto-detection, print out the infor‐
669 mation and quit.
670
671 -C (character set and terminal mode)
672 (Deprecated.) Turns a subsequent -E option (with a single-let‐
673 ter CJK tag) effectively into a combined -E and +E option. So
674 mined assumes the given CJK encoding for both terminal encoding
675 (unless overridden by UTF-8 terminal auto-detection) and text
676 encoding. Can be used for quick indication of CJK terminals
677 (e.g. cxterm, kterm, hanterm) if locale environment is not prop‐
678 erly set.
679
680 +C (terminal mode)
681 Displays unknown characters on CJK terminal: Assumes a CJK
682 encoded terminal (e.g. cxterm, kterm, hanterm; more specific
683 encoding specification is advisable), and characters encoded in
684 a CJK encoding format are displayed transparently even if they
685 do not map to a valid Unicode character.
686
687 +CC (terminal mode)
688 Displays invalid characters on CJK terminal: Implies +C, but
689 even character codes that do not match the encoding scheme (e.g.
690 wrt. to specified byte ranges) are written transparently to the
691 terminal.
692
693 +CCC (terminal mode)
694 Displays extended characters on CJK terminal: Implies +CC and
695 overrides auto-detection of the terminal capability to display
696 CJK 3-byte / 4-byte codes which would by default suppress their
697 display if the terminal does not support them.
698
699 +D (keyboard assignment)
700 Setup xterm (by sending dynamic configuration codes) to apply
701 two useful keyboard handling modes: Del key on small keypad
702 sends DEL character rather than an escape sequence and can thus
703 be distinguished from the Del key on the big (numeric) keypad.
704 Prepend ESC to character if pressed with the Alt or Meta key in
705 order to enable Alt-commands (e.g. Alt-f to open the file menu,
706 Alt-Shift-H to enter HTML markers etc). (Unfortunately this
707 cannot be done by default as it cannot be undone because the
708 previous state cannot be detected.) (This xterm setting should
709 rather be configured permanently as suggested in the sample file
710 Xdefaults.mined in the Mined runtime support library.)
711
712 +# →NEW→ Assume dark terminal background and adjust some colours
713 accordingly.
714
715 -nc Suppress usage of terminal colour attributes.
716
717 Information display
718 +H →NEW→ Enable syntax highlighting for HTML/XML and server script‐
719 ing.
720
721 -H Disable HTML/XML syntax highlighting.
722
723 +?c Enable character code information display on status line.
724
725 +?X Enable character code information display (implies +?c) with
726 additional information, where X is one of:
727
728 · s: Unicode script
729
730 · n: Unicode character name
731
732 · →NEW→ q: Unicode named sequence
733
734 · d: Unicode character decomposition
735
736 · m: mined input mnemonics available for this character
737 Note: setting any of these options may disable some others as not all
738 combinations are considered useful.
739
740 +?h Enable full Han character information display as a popup. In
741 addition to the character description, a set of pronunciations
742 can be selected with the variable MINEDHANINFO.
743
744 +?x Enable compact Han character information on status line. In
745 addition to the character description, a set of pronunciations
746 can be selected with the variable MINEDHANINFO.
747
748 +?f Enable file and position information display on status line
749 (enabled by default). Note that when editing a file that does
750 not fit completely in memory (e.g. large file on old system),
751 this option may cause considerable swapping. In that case, dis‐
752 able the feature with -?f.
753
754 -?X Deselect the respective +? option.
755
756 Editing behaviour
757 -q →NEW→ Derive quotation marks style from locale information
758 (environment variables LANGUAGE, TEXTLANG, LC_ALL, LC_CTYPE,
759 LANG). See Smart quotes for details. Note: if either LANGUAGE
760 or TEXTLANG is used, -q is assumed implicitly.
761
762 -q=locale
763 →NEW→ Derive quotation marks style from given locale.
764 (-q:locale works too.)
765
766 +q or +q=locale
767 →NEW→ Like -q but exchange primary and secondary style.
768
769 -q:style
770 →NEW→ Set given quotation marks style if available for any lan‐
771 guage, e.g. -q:"«»". (-q=style works too.)
772
773 -w Recognise fewer places as word boundaries for word skip and
774 delete commands.
775
776 -a Append mode: Append to text buffer or external file for
777 copy/delete commands instead of replacing it.
778
779 +j Set justification level 1 (or increment level previously set by
780 environment variable to 1 or 2): Level 1 initially enables auto‐
781 matic word wrap at line end when typing over right margin. Can
782 be changed by clicking on the j/J flag.
783
784 +jj Set justification level 2: Level 2 initially enables automatic
785 word wrap at line end when typing within paragraph; buggy. Can
786 be changed by clicking on the j/J flag.
787
788 -j Set justification level 1 or 2 (other than previously set). Can
789 be changed by clicking on the j/J flag.
790
791 -T When moving vertically over a Tab character, stay left of the
792 Tab column range (on the Tab character). The default depends on
793 the previous position. Also, stay left on a wide character when
794 moving vertically over it.
795
796 +T When moving vertically over a Tab character, stay right of the
797 Tab column range (behind the Tab character). The default
798 depends on the previous position.
799
800 -V Place cursor before pasted region after paste commands. (If
801 this option is enabled already, -V acts like -VV.)
802
803 -VV Like -V, and disable emacs-style paste buffer functions for
804 "delete word" and "delete to end of line" commands (^T, ^K).
805
806 +V Place cursor behind pasted region after paste commands. (If
807 this option is enabled already, +V acts like +VV.)
808
809 +VV Like +V, and enable emacs-style paste buffer functions for
810 "delete word" and "delete to end of line" commands (^T, ^K).
811
812 +[ Initially enable rectangular paste buffer mode. See Rectangular
813 copy/paste.
814
815 -[ Initially disable rectangular paste buffer mode.
816
817 +V:X or -V:X
818 →NEW→ Enable/disable visual selection behaviour, where X is one
819 of
820
821 · k: keep selection when searching
822
823 · c: automatically copy after mouse selection
824
825 Keyboard function mode selection
826 +eX Select emulation mode, especially control key function mapping,
827 where X is one of
828
829 · e: emacs mode
830
831 · s: WordStar mode
832
833 · w: Windows keyboard mode
834
835 · W: Windows behaviour (keyboard mode, CRLF for new files,
836 cmd.exe with ESC !)
837
838 · p: pico mode
839
840 · m: mined default
841
842 -e Select emacs mode. This assigns functions to control keys, M-X
843 commands (ESC commands, using the "meta" key as emacs calls the
844 Alt prefix) and C-X commands as defined by the emacs editor.
845 Also the emacs paste buffer ring and cut/paste behaviour is
846 enabled.
847
848 -W Select WordStar mode. This configures WordStar command key lay‐
849 out and enables many functions of the ^K, ^O, and ^Q menus.
850
851 -kX Select keypad modes, where X is one of
852
853 · m: mined keypad mode.
854
855 · s or S: Shift-select mode: Shifted keypad keys (cursor
856 keys, PgUp/PgDn/Home/End) start or extend text selection
857 (with visual highlighting) and visual selection behaviour
858 is slightly adapted to common usage; in addition, Shift-
859 HOP is mapped to the Copy function. Unshifted keypad
860 keys retain their default mined functions.
861
862 · w: Windows keypad mode; implies -kS (also implied by
863 +ew):
864
865 · c: Home and End keys of small ("editing") keypad invoke
866 Mark/Copy to paste buffer (overriding selected mode for
867 them)
868
869 · C: Home and End keys of big ("numeric") keypad invoke
870 Mark/Copy to paste buffer (overriding selected mode for
871 them)
872
873 +t (Deprecated.) Windows keypad mode, like -kw.
874
875 +tt (Deprecated.) Shift-select mode, like -kS.
876
877 -k (as single-letter option)
878 Switch the Home and End key functions of the two keypads (small
879 keypad, numeric keypad), i.e. exchange the two keypads with
880 respect to these keys. This assigns the more usual functions
881 "goto line beginning", "goto line end" to the Home and End keys
882 of the right keypad. The (assumedly more useful) mined default
883 is to assign the frequently used paste buffer functions (mark,
884 copy) to these keys.
885 In turn, the assigned functions of the Home and End keys of the
886 small keypad ("editing keypad") are exchanged to provide the
887 other function than on the right keypad, respectively - provided
888 the terminal and its configuration support this distinction.
889 Also Alt-Home/End are assigned the respective other functions on
890 each keypad so the most useful keypad functions should always be
891 quite easily available.
892 Regardless of this switching, mined tries to map fixed functions
893 to modified Home and End keys: Ctrl-Home/End for line begin/end
894 movement (both keypads), Shift-Home/End for the paste buffer
895 copy functions (small keypad) - provided the terminal, its mode
896 and configuration support distinction of modified keypad keys.
897 See also the section on Keypad layout for a motivating overview
898 of the mined keypad assignment features and options.
899 About terminal support and configuration, see Keypad configura‐
900 tion for further hints.
901
902 +k Enforce usage of terminal "keypad mode" which switches the
903 numeric keypad to send "application keypad" escape sequences.
904 This is normally not needed. On certain terminals, mined will
905 automatically use this mode (e.g. Linux console), and in termi‐
906 nal emulators it is usually not needed unless you are running a
907 misconfigured X windows system in which case you can enable dis‐
908 tinguished keypad functions by using the NumLock function of the
909 keyboard and switching on this option.
910
911 +Bp →NEW→ Backspace should apply "plain backspacing" rather than
912 "smart backspacing", i.e. no auto-undent and only delete one
913 combining character of a combined character; without this
914 option, use Control-Backspace for the "plain" function; with
915 this option, use Shift-Control-Backspace for the "smart" func‐
916 tion.
917
918 -B (Deprecated.) Enforce the Del control character to delete left,
919 Backspace to move left. Should normally not be used, see "Auto‐
920 matic backspace mode adaptation" below.
921
922 Appearance
923 -QX Select menu border style, where X is one of
924
925 · s: simple border,
926
927 · r: rounded corners,
928
929 · f: fat border,
930
931 · d: double border,
932
933 · a: ASCII border (can be combined with another option -Qs
934 or -Qr),
935
936 · v: VT100 alternate character set graphics border,
937
938 · @: block border (deprecated),
939
940 · 1: (or another digit) add a margin between menu borders
941 and contents (can be combined with any other -Q option),
942
943 · B: →NEW→ full menu background
944
945 · b: →NEW→ transparent menu background
946
947 · p: →NEW→ plain menu borders (no lines)
948
949 · P: →NEW→ very plain: no menu borders
950
951 · Q: stylish selection bar for navigating menu items, see
952 image (can be combined with another option -Qs or -Qr or
953 -Qf or -Qd).
954
955 · q: disable stylish selection bar
956 Mined sets an appropriate default based on its assumptions of the ter‐
957 minal capabilities.
958
959 -O Disable script colour highlighting (for Greek, Cyrillic...).
960
961 +O Enable script colour highlighting (for Greek, Cyrillic...).
962 (Disabled by default in dark terminals.)
963
964 -f Restrict usage of graphic characters: use cell-grained scroll‐
965 bar, simple menu borders, no fancy menu bar for highlighting the
966 selected menu item.
967
968 -ff Further restrict usage of graphic characters: no Unicode box
969 drawing graphic characters for menu borders.
970
971 -fff Further restrict usage of graphic characters: no graphic charac‐
972 ters (including VT100 graphics) for menu borders.
973
974 -F Assume a screen font with limited coverage of special symbols
975 and restrict usage of special marker characters for display of
976 line indications. (This is needed e.g. for KDE konsole or for
977 xterm using TrueType fonts.)
978 Interpretation of the MINEDUTF* environment variables is sup‐
979 pressed.
980
981 -FF Assume a screen font with even more limited coverage of special
982 symbols and restrict usage of special characters for indication
983 of selected menu items. Also, trigger substitution display of a
984 number of special characters in text (like in non-Unicode termi‐
985 nals).
986
987 +F Revert the effect of one -F option (e.g. preconfigured in the
988 environment variable MINEDOPT) or a corresponding assumption of
989 mined about the specific terminal which would limit font usage.
990
991 +FF Fully enable usage of characters for special indications.
992
993 Further mode selection, interface and display behaviour
994 -N Set Tab size to either value of 8, 4, →NEW→ 2. The effective
995 Tab size can be changed while editing with the ESC T command or
996 from the Options menu.
997
998 -+N Set Tab spacing expansion mode to either size or 8, 4, →NEW→ 2.
999 In this mode, a TAB input character will be expanded to an
1000 appropriate number of spaces. To enter a real Tab character,
1001 type Ctrl-V Tab (^V^I). The effective Tab size can be changed
1002 while editing with the ESC T command or from the Options menu.
1003 Tab expansion mode can be changed while editing with the HOP ESC
1004 T command or from the Options menu.
1005
1006 -P Hide passwords; enables hidden display of one word behind the
1007 string "assword" in a line (to accommodate for "password" or
1008 "Password"): hidden characters are indicated by reverse "*"
1009 characters. By default, this mode is activated when editing a
1010 file whose name starts with ".".
1011
1012 +P Unhide passwords; always display them.
1013
1014 +ZZ Virtual bold stropping: displays keywords of Algol-like program‐
1015 ming languages in bold while transparently editing them in all-
1016 capital letters ("upper stropping"), which is started with
1017 entering only one capital letter. Implicitly enabled on file
1018 name suffix .a68 (disable with -ZZ).
1019
1020 +Z_ Underline strop style: use underlined instead of bold for strop‐
1021 ping. To activate virtual underline stropping, use both
1022 options: +ZZZ_.
1023
1024 -LN (N is a number) Define mouse wheel movement to scroll by N lines
1025 (default 3). Ctrl-mouse-wheel always scrolls by 1 line. Shift-
1026 mouse-wheel scrolls by 1 page. Mouse-wheel on the scrollbar
1027 scrolls by half a page.
1028
1029 +M: →NEW→ Enable file tabs header display (above menu line which is
1030 also enabled).
1031
1032 -M: →NEW→ Disable file tabs header display.
1033
1034 -M Suppress display of menu header line (including flags). Pull-
1035 down and pop-up menus can still be opened with keyboard com‐
1036 mands. Mouse control remains enabled.
1037
1038 -MM Suppress display of menu header line (including flags) and dis‐
1039 able quick menu (right-click on text). Pull-down and pop-up
1040 menus can still be opened with keyboard commands, the quick menu
1041 can still be opened with Alt-space or ESC space.
1042
1043 -MM+M Disable quick menu but leave menu header and flags line enabled.
1044
1045 +* Enable enhanced mouse control: Menu items can be navigated with
1046 the mouse without button pressed. Enabled by default for
1047 mintty, xterm, gnome-terminal, cygwin console.
1048
1049 -* Disable enhanced mouse control (if enabled by default or by pre‐
1050 vious option), otherwise disable mouse support altogether.
1051
1052 -** Disable mouse support altogether.
1053
1054 -oN Select scrollbar display mode. N=0 disables the scrollbar (may
1055 speed up editing on slow remote lines), N=1 enables cell-grained
1056 scrollbar display, N=2 (default) enables finer-grained scrollbar
1057 display on a UTF-8 terminal.
1058
1059 -oo Selects old (until 2000.14) left/right click behaviour on
1060 scrollbar.
1061
1062 -o Disables the scrollbar.
1063
1064 +o Enables the scrollbar.
1065
1066 -p Enables distinguished display of line ends and paragraph ends
1067 with different symbols.
1068
1069 -X Disables display of the filename in the window title bar.
1070
1071 -s Stay with cursor in top line after page down or bottom line
1072 after page up instead of center line.
1073
1074 -S Use scrolling for page up/down.
1075
1076 -dN Apply delay between lines of page output to achieve visually
1077 effective display build-up which may help to quickly focus on
1078 the new cursor position (the screen output is displayed starting
1079 from the cursor position, proceeding to the screen edges).
1080 If N lies between '0' and '9', the respective number of
1081 milliseconds is applied between display of two lines. If N='0',
1082 still an output flush is performed. If N='-', no delay at all
1083 is applied though still the order of display output is from cur‐
1084 sor position to edges.
1085 Default: '-'; configuration is currently disabled in the
1086 Unix version as 'usleep' doesn't seem to be very portable.
1087
1088 +p Enables support for proportional display fonts. This does not
1089 really work, however, with e.g. xterm or SunOS shelltool as they
1090 do not reliably position characters after using control
1091 sequences.
1092
1093 All options are also looked for in the environment variable MINEDOPT
1094 (or MINED for compatibility).
1095 On the command line, options containing wildcard characters ("?", "*")
1096 may need to be quoted (if matching files starting with "-" or "+"
1097 exist).
1098
1100 Mined is always in insert mode. Commands are single control characters,
1101 double key commands starting with ESCAPE, and a collection of function
1102 keys (for various types of keyboards and terminals). As a specialty,
1103 note the prefixing 'HOP KEY' which amplifies or expands the effect of
1104 certain commands "just as you would expect"; this provides for more
1105 command flexibility without having to remember too many keys. It is
1106 described in a separate section below.
1107
1108 Keypad layout
1109 Control key layout for basic movement functions is topographic on the
1110 left-hand side of the keyboard (an idea originating from early editors,
1111 when keyboards didn't have cursor keypads). (Although using a cursor
1112 block is more comfortable, a simple set of control key assignments is
1113 useful as a fallback on terminals or remote connections with reduced
1114 functionality.)
1115
1116 The right-hand cursor block of typical keyboards is assigned the most
1117 important movement and paste buffer functions.
1118
1119 Keypad assignment features:
1120
1121 · Mined optimizes keypad usage for most frequently used
1122 functions, especially paste buffer functions in addition
1123 to navigation functions, by making them easily accessible
1124 on the keypad.
1125
1126 · For this purpose, mined distinguished between
1127 Home/End keys on the numeric keypad and on the
1128 small keypad (whenever possible with the terminal)
1129 in order to avoid the waste of resources by the
1130 usually redundant mapping of these two keypad
1131 blocks.
1132
1133 · Note: this means that on the big ("numeric") key‐
1134 pad the mined keypad function assignment for
1135 Home/End deviates from their more usual meanings.
1136 This is deliberately designed to enhance support
1137 of quick copy/paste with these easily reachable
1138 keys, while line movement can also easily be
1139 achieved with HOP cursor-left or HOP cursor-right,
1140 respectively.
1141 This keypad function assignment gives you the best
1142 benefit of keypad usage and is thus considered
1143 much more useful than the "standard assignment".
1144
1145 · The Del and Backarrow keys perform their usual
1146 dual-mode function; if a visual selection is
1147 active, they delete the selection (with a Cut to
1148 the paste buffer), if there is no visual selec‐
1149 tion, they delete the next or previous character,
1150 respectively.
1151
1152 small ("editing") keypad and big ("numeric") keypad:
1153 +-------+-------+-------+ +-------+-------+-------+
1154 | Insert| Home | PgUp | | (7) | (8) | (9) |
1155 | Paste |LineBeg| | | Mark | ↑ | PgUp |
1156 +-------+-------+-------+ +-------+-------+-------+
1157 | Delete| End | PgDn | | (4) | (5) | (6) |
1158 |Del/Cut|LineEnd| | | ← | HOP | → |
1159 +-------+-------+-------+ +-------+-------+-------+
1160 | (1) | (2) | (3) |
1161 | Copy | ↓ | PgDn |
1162 +-------+-------+-------+
1163 | (0) | (.) |
1164 | Paste |Del/Cut|
1165 +-------+-------+-------+
1166
1167
1168 · The centrally placed HOP key is a prefix modifier that
1169 can be used for intuitive modification of navigation
1170 functions and for useful alternatives of paste buffer
1171 functions.
1172
1173 big ("numeric") keypad after HOP:
1174 +-------+-------+-------+
1175 | (7) | (8) | (9) |
1176 |go Mark|Scr top|FileBeg|
1177 +-------+-------+-------+
1178 | (4) | (5) | (6) |
1179 |LineBeg| |LineEnd|
1180 +-------+-------+-------+
1181 | (1) | (2) | (3) |
1182 |Append |Scr bot|FileEnd|
1183 +-------+-------+-------+
1184 | (0) | (.) |
1185 |Cross-paste |+Append|
1186 +-------+-------+-------+
1187
1188
1189 See The HOP function below for alternative keys to trigger it.
1190
1191 · Mined offers additional function mappings for modified
1192 keypad keys, both for providing unambiguous mappings in
1193 any case and to handle the deviation of its benefit-opti‐
1194 mized Home/End keypad mapping from frequent expectations,
1195 and an option to customize Home/End:
1196
1197 · Alt-Home/End are mapped to the Home/End functions
1198 of the other keypad, respectively. So by default,
1199 on the numeric keypad they invoke the line naviga‐
1200 tion functions.
1201
1202 · The -k option exchanges Home/End functions of the
1203 small and numeric keypads with each other, and
1204 switches Alt-Home/End to also invoke the "other"
1205 function, respectively: keypad function assign‐
1206 ments:
1207
1208 · (cf Windows keypad mode below) Ctrl-Del is always
1209 mapped to character deletion, while Shift-Del is
1210 mapped to the paste buffer Cut function, regard‐
1211 less of the visual selection.
1212
1213 · (cf Windows keypad mode below) Ctrl-Home/End are
1214 always mapped to line navigation, while Shift-
1215 Home/End are mapped to the paste buffer functions
1216 Mark/Copy, regardless of the -k option.
1217
1218 · Alt-Del is mapped to the respective "other" func‐
1219 tion, depending on visual selection.
1220
1221 · Note: Keypad function assignments as described
1222 depend on terminal support to distinguish all
1223 involved keys and modifiers which is unfortunately
1224 not always the case.
1225 Terminal support for proper distinction of differ‐
1226 ent keypads and modified keys may be enhanced by
1227 appropriate terminal configuration, see the sec‐
1228 tion on Keypad configuration.
1229 →NEW→ With xterm since 280, all desired distinc‐
1230 tions between different keypads as well as modi‐
1231 fied keypad keys are achieved (by using the modi‐
1232 fyKeyboard resource mode in combination with VT220
1233 Keyboard and Application Keypad modes).
1234
1235 · Two Keypad modes (see below) change the function assign‐
1236 ment of the keypads.
1237
1238 · In Shift-select mode (option -kS), Shift-modified
1239 keypad keys activate or extend a visual text
1240 selection; also Shift-5 (on keypad) performs Copy
1241 to paste buffer.
1242
1243 · In Windows keypad mode (option -kw), additionally
1244 non-shifted keypad keys are changed to perform the
1245 more common functions, at the price of losing the
1246 easy Home/End assignment to invoke Mark/Copy to
1247 paste buffer (which can however be overridden with
1248 options -kc and -kC). See Keypad modes below for
1249 an overview.
1250
1251 The HOP function
1252 This function, triggered by any of the HOP keys, amplifies or expands
1253 functions as listed below. To achieve the combined function, first
1254 press any key that is assigned the HOP function, then any key assigned
1255 the base function from the table below.
1256 Note: To enable using the HOP function also on keyboards that do not
1257 support the keypad "5" or "*" keys (e.g. small notebooks without
1258 numeric keypad), a few alternative HOP keys are provided: Control-Q,
1259 Shift-TAB, the Menu or Windows keys (if running Linux), or (providing a
1260 dual-mode function) the Control-G and ESC keys.
1261
1262 HOP char left
1263 move cursor to beginning of current line
1264
1265 HOP char right
1266 move cursor to end of current line
1267
1268 HOP line up
1269 move cursor to top of screen
1270
1271 HOP line down
1272 move cursor to bottom of screen
1273
1274 HOP scroll up
1275 scroll half a screen up
1276
1277 HOP scroll down
1278 scroll half a screen down
1279
1280 HOP page up
1281 move to beginning of file
1282
1283 HOP page down
1284 move to end of file
1285
1286 HOP word left
1287 move cursor to previous ";" or "."
1288
1289 HOP word right
1290 move cursor to next ";" or "."
1291
1292 HOP delete tail of line/line end
1293 delete whole line
1294
1295 HOP delete whole line
1296 delete tail of line
1297
1298 HOP delete previous character
1299 delete beginning of line
1300
1301 HOP set mark
1302 go to mark
1303
1304 HOP search
1305 search for current identifier
1306
1307 HOP search next
1308 repeat previous (last but one) search
1309
1310 HOP copy/cut
1311 copy or cut, but append to buffer
1312
1313 HOP save buffer
1314 save buffer, but append to file
1315
1316 HOP paste buffer
1317 paste "inter-window buffer", which is the last saved buffer by
1318 any invocation of mined on the same machine by the same user.
1319
1320 HOP edit next file
1321 edit last file
1322
1323 HOP edit previous file
1324 edit first file
1325
1326 HOP exit current file
1327 exit mined
1328
1329 HOP suspend
1330 suspend without writing file
1331
1332 HOP show status line
1333 toggle permanent status line
1334
1335 HOP enter HTML tag
1336 embed copy area in HTML tags
1337
1338 While a pull-down or pop-up menu is open, any HOP key or the Space key
1339 or the middle mouse button toggles the HOP amplifier/expander for a
1340 function subsequently invoked in the menu; the menu redisplays with
1341 function names changed where applicable.
1342
1343 Character-oriented navigation and editing
1344 From the traditional restriction of Unix tools to the line as a unit of
1345 operation, other editors are stuck in a line-oriented movement and
1346 insertion paradigm which implies some weird and counter-intuitive be‐
1347 haviour.
1348 Mined handles the end-of-line position like any ordinary character
1349 during movement and editing operations. Also search and replacement
1350 strings can contain line ends.
1351
1352 Mouse control and menus
1353 All versions of mined (Unix, DOS/Windows) support mouse operation.
1354 Mouse control operates on pull-down and pop-up menus, flags, the
1355 text area, the bottom line, and the scroll bar, in order to provide the
1356 most useful functions and menu-driven command selection at hand.
1357
1358 Summary of mouse functions:
1359
1360 In text area:
1361
1362 · left click moves the text cursor to the mouse
1363 position
1364
1365 · Shift-left click (works in mintty) extends the
1366 selection
1367
1368 · left click-drag-release selects a text area and
1369 (with option auto-copy) copies it to the paste
1370 buffer; →NEW→ using Alt while dragging (moving the
1371 mouse) toggles rectangular selection
1372
1373 · double-click (actually click on current position)
1374 →NEW→ word selection (→NEW→ within timeout)
1375
1376 · middle click display the text status line or, if
1377 permanent file status is enabled, display charac‐
1378 ter information
1379
1380 · right click pops up the quick menu
1381
1382 · mouse wheel scroll scrolls by N lines (default 3,
1383 adjust with option -L) Ctrl-mouse-wheel always
1384 scrolls by 1 line. Shift-mouse-wheel scrolls by 1
1385 page. Note: Mouse-wheel on the scrollbar scrolls
1386 by half a page.
1387
1388 On scroll-bar:
1389
1390 · left click moves one page towards the mouse posi‐
1391 tion (as seen from the current scrollbar position
1392 marker)
1393 or (with option -oo) moves one page down
1394
1395 · middle click moves to text position in file corre‐
1396 sponding to relative mouse position on scrollbar
1397
1398 · left click-drag moves text position in file by
1399 moving relative mouse position on scrollbar
1400
1401 · right click moves one page away from the mouse
1402 position (as seen from the current scrollbar posi‐
1403 tion marker)
1404 or (with option -oo) moves one page up
1405
1406 · mouse wheel scroll scrolls by half a page
1407
1408 On bottom line (status line):
1409
1410 · left click moves one page down
1411
1412 · middle click displays the text status line or, if
1413 permanent file status is enabled, display charac‐
1414 ter information
1415
1416 · right click moves one page up
1417
1418 On pull-down menu header (in left menu area of upper line):
1419
1420 · left or right click or mouse wheel scroll opens
1421 menu
1422
1423 · middle click opens menu with HOP-modified func‐
1424 tions
1425
1426 On flag indication (in right flag area of upper line):
1427
1428 · middle click toggles flag
1429
1430 · left click opens flag menu if menu is open: tog‐
1431 gles flag (effectively allowing double-click to
1432 toggle)
1433
1434 · right click or mouse wheel scroll opens flag menu
1435
1436 On open menu
1437
1438 · mouse wheel scroll navigates in menu
1439
1440 · mouse movement (without holding button) navigates
1441 in menu - enabled by default in mintty, xterm,
1442 gnome-terminal, cygwin console; may be controlled
1443 with -* / +* command line options mouse movement
1444 right/left (well beyond menu border) navigates to
1445 neighbour menu mouse movement right (a few posi‐
1446 tions) on submenu item opens submenu
1447
1448 · left click invokes menu item pointed to with the
1449 mouse
1450
1451 · left or right drag (holding button down after
1452 opening the menu) navigates in menu
1453
1454 · left or right release (after mouse dragging)
1455 invokes selected menu item
1456
1457 · middle click toggles HOP modifier
1458
1459 · Ctrl-mouse-wheel switches to next or previous menu
1460
1461 Configuration hint: To enable mouse operation in a Windows console
1462 window, deactivate "QuickEdit mode" in the properties menu.
1463
1464 Menus
1465 Mined provides three kinds of menus, all can be opened with either
1466 mouse clicks or commands. The menus offer the most important editing
1467 functions (apart from simple movement). Some menus have their items
1468 grouped into sections, some of which have subtitles.
1469 The HOP flag can be toggled while a menu is open with any of the HOP
1470 key, ^G, Space, or the middle mouse button. When a pull-down menu is
1471 opened with the middle mouse button, the HOP variation is initially
1472 triggered, offering the HOP variations of the menu items.
1473 The three menu groups are used as follows:
1474
1475 · A pull-down menu is opened by clicking the mouse on the
1476 menu header (in the left part of the top screen line) or
1477 scrolling the mouse wheel on this header.
1478 Shortcut: Each pull-down menu can also be opened with ESC
1479 or Alt and the small initial letter of the menu header
1480 (Alt-f or ESC f for the file menu etc.).
1481
1482 · A flag menu is opened by clicking the right mouse button
1483 on a flag indication in the flags area (right part of the
1484 top screen line) or scrolling the mouse wheel on it. The
1485 flag menus have optional markers in front of each item
1486 showing which items are currently active.
1487 Shortcut: The Info menu, Input Method (Keyboard Mapping)
1488 menu, Smart Quotes menu, Encoding menu can also be opened
1489 with Alt-F10, Alt-I, Alt-K, Alt-Q, or Alt-E, respectively
1490 (or use an ESC prefix instead of an Alt- modifier respec‐
1491 tively).
1492
1493 · The pop-up menu is placed above the text area and can be
1494 opened with a right-click or Alt-Space (ESC Space).
1495
1496 Menu navigation
1497 When a menu is open, the cursor-left or cursor-right keys cycle through
1498 the pull-down and flag menus. Alt-cursor-left and Alt-cursor-right
1499 navigate quickly between the two sets of menus (pull-down or flag
1500 menus).
1501 When a submenu is open, cursor-left goes back to the parent menu, cur‐
1502 sor-right opens its next menu to the right.
1503
1504 There are three methods to navigate within a menu:
1505
1506 · With the keyboard: open menu as described above, navigate
1507 with cursor keys or by typing the first letter of the
1508 desired menu item (which cycles through all items start‐
1509 ing with that letter, or containing a word starting with
1510 that letter); activate menu item with Enter key.
1511
1512 · With mouse clicks: open menu with click (and release)
1513 mouse button, switch to other menu with another click,
1514 click on item to activate it. The mouse wheel may be used
1515 to navigate menu items.
1516
1517 · With mouse dragging: open menu with mouse button (left or
1518 right), browse menus and items with button held down,
1519 activate selected item with releasing mouse button.
1520 Methods may be mixed, e.g. open a menu with either mouse click or key‐
1521 board, navigate with mouse wheel, then select with Enter.
1522
1523 When selecting a menu item, in most cases the associated function is
1524 carried out and the menu closed afterwards. In some cases, an option
1525 is toggled and the menu stays open (esp. in Info menu: Han info pronun‐
1526 ciation selection, character information "with" attributes selection).
1527
1528 Scrollable menus: In a low-height terminal (e.g. 24 lines), longer
1529 menus (especially the Encoding menu and the Input Method menu) may not
1530 fit on the terminal. All menus are scrollable with cursor keys, includ‐
1531 ing Page Down/Up, Home, End keys.
1532 When the window size is changed, open menus are closed in order to pre‐
1533 vent resizing and repositioning problems; this is planned to be
1534 enhanced in a future version.
1535
1536 Hints
1537 Note: Your mouse driver or Windows system may be configured to
1538 generate multiple (e.g. 3) mouse wheel events on one mouse wheel move‐
1539 ment (e.g. with Windows). An option -L1 could compensate for that scal‐
1540 ing (as mined applies a mouse wheel factor by itself which is 3 by
1541 default).
1542
1543 Layout configuration: See Menu display below for configuration of
1544 menu appearance.
1545
1546 Configuration hint: On Unix, in order to make Alt work as a modi‐
1547 fier, set the xterm resource metaSendsEscape to true and the rxvt
1548 resource meta8 to false as suggested in the example file Xde‐
1549 faults.mined in the Mined runtime support library. (With older ver‐
1550 sions of xterm, setting eightBitInput to false may be required instead;
1551 this xterm option doesn't actually disable 8 bit input as its name
1552 might suggest.) With xterm, this setting can also be enforced dynami‐
1553 cally with the +D option.
1554
1555 Interoperable and multiple paste buffers
1556 System paste buffer / Clipboard
1557 →NEW→ In the Windows/cygwin version, Shift-Ins inserts the Windows
1558 clipboard rather than the mined paste buffer. Copy to paste buffer
1559 always fills paste buffer and the clipboard, too. →NEW→ In this case,
1560 the lineend type is not copied from the clipboard (i.e. typically CRLF)
1561 but adapted to the current line.
1562
1563 Inter-window paste buffer
1564 Mined can perform copy/paste operations within different editing ses‐
1565 sions (parallel or subsequent invocations of mined): The command HOP
1566 Ins (e.g. ^G ^P) will insert the most recent paste buffer copied or cut
1567 in any of the user's mined sessions. This can also work remotely in a
1568 network; to configure this features, see Common paste buffer configura‐
1569 tion.
1570
1571 Multiple paste buffers
1572 Mined provides emacs-style multiple paste buffers that are organised as
1573 a buffer ring. Every buffer cut or copy operation (that places the text
1574 between the marked and the current position to the buffer) creates a
1575 new buffer and stacks it to the list of buffers. If the feature
1576 "deleted word/line appends to buffer" is enabled (+VV) the commands
1577 delete-end-of-line (^K), delete-word (^T) and delete-end-of-sentence
1578 (currently emacs mode only) append to the top buffer (disabled with the
1579 option -VV).
1580 To paste a non-top-most buffer, paste the most recent buffer first as
1581 usual, then use the buffer-ring command (Alt-Ins or Ctrl-F4, or M-y in
1582 emacs mode) to exchange the pasted text with the previous buffer. This
1583 can be repeated, going down the stack of buffers, and at its bottom,
1584 starting over from the top again.
1585
1586 Keypad modes and Visual selection
1587 Mined highlights text selection visually, with both mouse selection and
1588 keyboard selection.
1589
1590 Keypad modes
1591 · In Shift-select mode (enabled with option -kS), Shift-
1592 modified keypad keys start or extend visual text selec‐
1593 tion; otherwise the keypad functions are not modified, so
1594 that e.g. the useful quick Mark/Copy selection with
1595 Home/End keys can still be used.
1596 Note: terminal support to report Shift-modified cursor
1597 keys is required to enable this feature.
1598 The option adjusts some other interactive responses as
1599 well to match common selection practice:
1600
1601 · auto-copy (after click-and-drag) is disabled
1602
1603 · Shift-mouse-left-click extends the selection (if
1604 supported by terminal)
1605
1606 · mouse-right-click does not extend the selection
1607 before opening the menu
1608
1609 · in addition, Shift-HOP is mapped to the Copy func‐
1610 tion
1611 Shift selection keypad functions are as follows:
1612
1613 Shift-Left
1614 select character left
1615
1616 Shift-Right
1617 select character right
1618
1619 Shift-Control-Left
1620 select word left
1621
1622 Shift-Control-Right
1623 select word right
1624
1625 Shift-Up
1626 select line up
1627
1628 Shift-Down
1629 select line down
1630
1631 Shift-Control-Up
1632 select to previous beginning of paragraph
1633
1634 Shift-Control-Down
1635 select to next beginning of paragraph
1636
1637 Shift-Home
1638 select to beginning of line
1639
1640 Shift-End
1641 select to end of line
1642
1643 Shift-Control-Home
1644 select to beginning of text
1645
1646 Shift-Control-End
1647 select to end of text
1648
1649 Shift-PgUp
1650 select to previous page
1651
1652 Shift-PgDn
1653 select to next page
1654
1655 Shift-5 (on keypad)
1656 copy selected text to paste buffer
1657
1658 · In Windows keypad mode (enabled with option -kw, also
1659 implied by Windows emulation option +ew), additionally
1660 non-shifted keypad keys are changed to perform the more
1661 common functions, at the price of losing the easy
1662 Home/End assignment to invoke Mark/Copy to paste buffer
1663 (which can however be overridden with options -kc for the
1664 small ("editing") keypad and -kC for the big ("numeric")
1665 keypad). Also, some Control-modified keys change their
1666 function assignment to match more common usage.
1667 Keypad functions include the Shift selection functions
1668 above and add the following functions:
1669
1670 Home move cursor to previous beginning of line
1671
1672 End move cursor to next end of line
1673
1674 Control-Left
1675 move cursor to previous beginning of word
1676
1677 Control-Right
1678 move cursor to next end of word
1679
1680 Control-Up
1681 move cursor to previous beginning of paragraph
1682
1683 Control-Down
1684 move cursor to next beginning of paragraph
1685
1686 Control-Home
1687 move cursor to beginning of text
1688
1689 Control-End
1690 move cursor to end of text
1691
1692 Control-Backarrow
1693 delete word left
1694
1695 Control-Del
1696 delete word right
1697
1698 HOP Control-Backarrow
1699 delete to beginning of line
1700
1701 HOP Control-Del
1702 delete to end of line
1703
1704 Shift-select mode (-kS) may become the default in a future version.
1705
1706 Visual selection is toggled by the following actions:
1707
1708 · Start visual selection highlighting:
1709
1710 · mouse click (then drag)
1711
1712 · Mark command (Home key, Control-space, or
1713 Mark/Select from quick menu or Edit menu)
1714
1715 · (in Shift-select mode) Shift-cursor keys
1716
1717 · Extend visual selection highlighting:
1718
1719 · mouse drag
1720
1721 · keyboard navigation
1722
1723 · (in Shift-select mode) Shift-cursor keys
1724
1725 · mouse click
1726
1727 · (in Shift-select mode) Shift-mouse-click
1728
1729 · Hide visual selection highlighting:
1730
1731 · modify text
1732
1733 · (unless in Windows keypad mode) Copy (End key or
1734 from quick menu or Edit menu)
1735
1736 · Mark twice (e.g. press Home Home)
1737
1738 · (unless in Windows keypad mode) mouse release
1739 (after drag, with auto-copy option)
1740
1741 · Find (except Find matching parenthesis) (except
1742 with "keep on search" option)
1743
1744 · Goto text position
1745
1746 · Open file
1747
1748 · Re-enable selection highlighting and continue previous
1749 selection:
1750
1751 · "continue Select" from menu
1752
1753 · (in Shift-select mode) Shift-cursor keys
1754
1755 · (in Shift-select mode) Shift-mouse-click
1756 Selection behaviour can be tuned with a few options in the Paste buffer
1757 menu.
1758
1759 Note: The actual behaviour of the paste buffer functions acting on the
1760 text selection (Copy, Cut) are not affected by the visual selection;
1761 they work alike even if the selection is hidden.
1762 The Delete key is the only function that is actually modified by visual
1763 selection, following a dual-mode behaviour consistent with most contem‐
1764 porary text editors: if a non-empty visual selection is active, it
1765 deletes the selected area (Cut to paste buffer), otherwise, it deletes
1766 the next character.
1767
1768 Rectangular copy/paste
1769 Rectangular copy/paste area mode can be toggled on the Paste buffer
1770 flag (see also description of Quick Options (Mode indication) flags),
1771 in the Paste buffer menu, with HOP Mark while already on marked posi‐
1772 tion, or preselected with the option +[.
1773 →NEW→ Rectangular selection can also be toggled temporarily by using
1774 Alt with the left mouse button while moving the mouse for drag-selec‐
1775 tion. Note, however, that a subsequent paste will apply the untoggled
1776 mode.
1777 Note: Rectangular area is a property of the copy/paste function, not of
1778 the paste buffer.
1779 Note: The result of rectangular paste may not be quite as expected in
1780 these cases:
1781
1782 · The paste buffer contains lines of different length.
1783
1784 · The border of the paste area (in either the text or the
1785 paste buffer) contains characters of different width,
1786 like TAB, double-width, or isolated combining characters,
1787 or even incomplete character codes.
1788
1789 Text position markers
1790 A default marker for quick use and additional →NEW→ 16 numbered text
1791 markers are available.
1792 Marker 0 has a special function: 1. it is set when opening a file at
1793 the memorized position, 2. whenever a new current marker is set, the
1794 previous one is pushed to marker 0.
1795 For keyboard commands to set and move to markers, see Text marker navi‐
1796 gation in the Command reference below.
1797
1798 Text position marker stack
1799 In addition to the explicit text markers, mined implicitly maintains a
1800 marker stack to support navigation and orientation when browsing files.
1801 Whenever a command moves the position by a far distance (Go to marker,
1802 Go to line, Go to file beginning/end, Go to next/previous file, Search
1803 functions including Search identifier definition across files, Replace
1804 with confirm), the current position is first pushed to this stack.
1805 Later, in order to return to the previous position, use the command ESC
1806 Enter (Alt-Enter) to move along the positions in the marker stack. The
1807 command HOP ESC Enter (HOP Alt-Enter) moves again forward along the
1808 stack.
1809
1810 Paragraph justification / word wrap
1811 Manual paragraph line/word wrap is invoked with the justify command
1812 (ESC j or ESC J); it justifies the current paragraph (wraps its
1813 lines/words) according to the effective margins and paragraph termina‐
1814 tion mode.
1815 Clever justification: With ESC j, mined automatically determines left
1816 margins depending on the current paragraph and line contents. Heuristic
1817 detection of numbered items will trigger automatic indentation.
1818 Normal justification: With ESC J, mined justifies strictly according to
1819 the margin values currently configured.
1820 See commands listing below "ESC j" for margin setting commands.
1821
1822 Paragraph termination modes: Two different definitions of paragraph end
1823 are available.
1824
1825 · The primary mode is to add a space at the end of each
1826 line when the paragraph continues and to end the line
1827 without space where the paragraph ends. This seems an
1828 intuitive way and as a big advantage over other
1829 approaches, it is transparent with respect to visual for‐
1830 matting, i.e. no text property is required that would
1831 affect visual layout of the text.
1832 Note: Additional visual support of paragraph end detec‐
1833 tion is available with the mined option -p that distin‐
1834 guishes paragraph/line end display.
1835
1836 · The other word-wrap mode is to add an empty (blank-only)
1837 line after each paragraph. Obviously this imposes more
1838 additional requirements on text formatting discipline and
1839 reduces freedom of text layout.
1840 The mode in effect is indicated in the Quick Options (Mode indication)
1841 flags display; see description of Quick Options (Mode indication)
1842 flags.
1843
1844 Auto indentation
1845 By default, mined acts in auto-indent mode: When you enter a newline,
1846 the following line will be filled with the same prefix of space charac‐
1847 ters (Space or Tab) as the current one. This option can be toggled
1848 from the Options menu. A new line without auto indentation can be
1849 entered with the ^O command.
1850
1851 Auto indentation is automatically suppressed if text is entered
1852 very fast (by heuristic detection of input speed) in order to allow
1853 unmodified copy and paste using terminal mouse functions.
1854
1855 →NEW→
1856 Advanced list support (bullet and numbered lists) A new paragraph
1857 (according to the currently selected paragraph end mode, or considering
1858 Unicode paragraph separators) after a bullet or numbered item will
1859 clone the bullet or auto-increment the numbering. The undent function
1860 (smart Backspace) considers list bullets or numberings, removing the
1861 last level.
1862 Note: An item paragraph is considered to start at a bullet or numbering
1863 even if the previous line does not terminate a paragraph.
1864
1865 Structure input commands
1866 A pair of parentheses with matched indentation can be entered by pre‐
1867 fixing a parenthesis character with HOP. For example, HOP "{" would
1868 enter a pair of "{" "}", both auto-indented on their respective new
1869 line. Other pairs are "(" ")", "[" "]", "<" ">".
1870 HOP "/" enters an indented Javadoc comment frame.
1871
1872 Back-Tab (Undent function / reverse indent)
1873 Smart backspacing: A Backarrow key from a position that is only pre‐
1874 ceded by white space on the line and on the line above will revert the
1875 input position to the previous matching indentation level. To avoid
1876 auto-undentation ("Delete single"), use Ctrl-Backarrow or F5 Backarrow
1877 to delete only one character left, or toggle auto-indentation off from
1878 the Options menu.
1879 Note: In xterm, Ctrl-Backarrow only works if configured in your X con‐
1880 figuration, see the example configuration file Xdefaults.mined in the
1881 Mined runtime support library.
1882 Note:→NEW→ Configuration option plain_BS (command line option +Bp)
1883 switches the Backarrow key from smart backspacing to plain backspacing,
1884 i.e. no auto-undent and only delete one combining character of a com‐
1885 bined character. Use Shift-Control-Backarrow to perform smart
1886 backspacing then.
1887
1888 Tab expansion
1889 With one of the options -+8, -+4, -+2, a Tab key input will be expanded
1890 to an appropriate number of Space characters instead of inserting a Tab
1891 character. You can still insert a literal Tab character with Ctrl-V
1892 Tab.
1893
1894 Search and replace multiple lines
1895 Mined has overcome the typical Unix tool limitation of line orientation
1896 in search operations. Search and replacement patterns can contain
1897 embedded newlines. Enter a newline (linefeed character) in the search
1898 string with ^V^J or \n (or \r to match CRLF newlines). (In some cases
1899 there are still display problems; then update the screen with the ESC
1900 "." command.)
1901
1902 Header line underlining
1903 The command HOP "-" (e.g. Ctrl-G -) underlines the header line before
1904 the cursor position with as many "-" characters as needed; it applies
1905 to the current line unless the cursor is at a line beginning in which
1906 case it applies to the previous line.
1907
1908 Automatic backspace mode adaptation
1909 There is much confusion about what character codes are delivered by the
1910 Backarrow and Del keyboard keys in different operating environments and
1911 configurations. For proper operation, the "stty erase CHAR" configura‐
1912 tion should generally be set correctly to reflect the actual code emit‐
1913 ted by the terminal. Mined detects this setting and adjusts its han‐
1914 dling accordingly, so that the "Backarrow" key should normally work as
1915 expected (delete a character left).
1916
1918 Character input
1919 Mined provides several methods to support input of special characters
1920 that may not be easily available on the keyboard.
1921
1922 · Accented and mnemonic input support defines Accent prefix
1923 keys to compose accent combinations with subsequently
1924 entered characters.
1925
1926 · It also provides Character input mnemonics for easily
1927 memorisable input of a wide range of characters, includ‐
1928 ing most composed Unicode characters.
1929
1930 · Input support commands include a quick shortcut for two-
1931 character mnemonics.
1932
1933 · Input support commands also provide for character input
1934 by hexadecimal / octal / decimal character code or Uni‐
1935 code value, including support for subsequent entry of
1936 multiple numeric characters according to ISO 14755.
1937
1938 · Keyboard mapping switching the keyboard to support
1939 another script. This feature also provides CJK input
1940 methods.
1941
1942 Structured input
1943 · HTML tag input (starting/closing or embedding marked
1944 text).
1945
1946 · Auto indentation and Back-Tab.
1947
1948 · Structure input commands: Input of indented matching
1949 parentheses and Javadoc frames.
1950
1951 · Paragraph justification (line/word wrap).
1952
1953 · Header line underlining
1954
1955 Special features
1956 · Smart quotes automatic transformation of entered straight
1957 quote marks into typographic quotation marks (style can
1958 be selected in flags area) or apostrophe, separate
1959 accents as appropriate typographic symbols, as well as
1960 smart dashes and other smart text replacements.
1961
1962 · Right-to-left script input support.
1963
1965 Tags file support / Identifier and file lookup
1966 The ESC t command moves to the definition of an identifier (on which
1967 the cursor should be placed) using the tags file (generated by the
1968 ctags command). HOP ESC t prompts for an identifier. (Also available
1969 from search or popup menu.) If a new file is opened for this purpose,
1970 the current file is saved automatically.
1971 As a special function, if ESC t is typed on an include statement (line
1972 beginning with "#include" or "include"), the included file will be
1973 opened.
1974 Note: Like with a number of positioning commands, ESC t places the cur‐
1975 rent position on the position marker stack before going to the location
1976 of the identifier definition. The command ESC Enter (Alt-Enter) moves
1977 back to that position, also saving the current file if needed first.
1978
1979 →NEW→
1980 Encrypted files Mined edits encrypted files transparently.
1981 For reading or writing an encrypted file, a respective filter is used
1982 as configured in the runtime configuration file $HOME/.minedrc. See the
1983 sample configuration file in the Mined runtime support library for
1984 details. It contains pre-configured entries for using GnuPG (for files
1985 ending with ".gpg" or ".pgp") or openssl (for files ending with
1986 ".ssl").
1987 Mined does not currently provide handling for passwords or passphrases
1988 for file encryption. Therefore, any passwords or passphrases needed for
1989 encrypted file access will either have to be entered on every access,
1990 or password or passphrase files may be used as offered by the respec‐
1991 tive decryption and encryption commands of GnuPG and openssl. See the
1992 sample configuration file for examples.
1993 Note: If manual password input is used with openssl, be careful to
1994 remember the password which is newly assigned every time the file is
1995 written.
1996 Note: When editing an encrypted file, the backup file will be
1997 encrypted, too. Decrypted content is exchanged with the filters using
1998 pipes, so no intermediate decrypted version is stored on the file sys‐
1999 tem. Copy/paste text blocks are not encrypted, though, but they are
2000 readable for the current user only anyway (on any nontrivial file sys‐
2001 tem). The same applies for a recovery file that mined writes in emer‐
2002 gency cases to save the edited text.
2003
2004 Data safety and security
2005 Mined has a robust and defensive concept of handling edited text and
2006 file contents in case of any kind of program or system errors.
2007
2008 Backup files
2009 With command line option(s) +b, mined saves a backup copy of any file
2010 being overwritten (like saving the file being edited, saving to a dif‐
2011 ferent file, copying the paste buffer to a file). It supports three
2012 backup file name conventions and a few combined modes to select among
2013 them:
2014
2015 +b- no backup files
2016
2017 +bs simple backup files: filename~
2018
2019 +be emacs style numbered backup files: filename.~N~ where N are
2020 increasing version numbers
2021
2022 +bv VMS style numbered backup files: filename;N (using the original
2023 notation of the VMS operating system) where N are increasing
2024 version numbers
2025
2026 +bn numbered backup files, either emacs or VMS syntax, whichever
2027 already exists (with a higher version number)
2028
2029 +ba automatic backup files, either numbered if numbered backups
2030 (either style) already exist, or simple
2031
2032 Note: In order to preserve possibly existing hard links to the file
2033 being edited, it is actually copied, not just renamed for the backup
2034 version (like with joe, vim, or emacs with option backup-by-copying).
2035 Note: In mined 2011.19, +ba (automatic simple/numbered backup) is the
2036 default, and +b is a shortcut for +ba. This is subject to change in a
2037 future version, however. Note: To select your preference, use the run‐
2038 time configuration file $HOME/.minedrc, or include the respective
2039 option in the environment variable MINEDOPT, or set the environment
2040 variable VERSION_CONTROL (compatible with usage by emacs and cp), with
2041 the following mapping:
2042
2043 VERSION_CONTROL
2044 $HOME/.minedrc command line option
2045
2046 none or off
2047 backup_mode - +b- - no backups
2048
2049 numbered or t
2050 backup_mode e +be - emacs style numbered backups
2051
2052 existing or nil
2053 backup_mode a +ba - automatic backup mode
2054
2055 simple or never
2056 backup_mode s +bs - simple backups
2057
2058 backup_mode n
2059 +bn - numbered backups (automatic style)
2060
2061 backup_mode v
2062 +bv - VMS style numbered backups
2063
2064 Note: To place backup files in a different directory than the original
2065 file, use the environment variable BACKUP_DIRECTORY or BACKUPDIR. It
2066 can be either an absolute pathname (e.g. $HOME/.backups) or a relative
2067 pathname (e.g. .~) in which case backup files are stored relative to
2068 the respective working directory of mined. Note: On VMS, backup
2069 options are ignored as VMS handles backup files natively.
2070
2071 File locking
2072 Mined checks and maintains interoperable lock files, which are symbolic
2073 links mentioning the user and machine currently editing the file (not
2074 on MSDOS and VMS). If the user tries to modify the text of a file
2075 locked by somebody else, mined informs the user and changes editing
2076 mode to view-only. The lock can be overridden (removed or ignored)
2077 from the File menu.
2078 Mined implements workarounds for network file systems that do not sup‐
2079 port handling lock files or symbolic links properly: cygwin symbolic
2080 links that appear as plain text files on Samba/CIFS mounted file
2081 shares, →NEW→ and lock files that could be created but cannot be
2082 deleted due to weird permission configuration of a network file share.
2083
2084 Edited text / Recovery files
2085 Every care has been taken to prevent loss of the edited text in case of
2086 save errors or accidental quit commands etc; mined always prompts
2087 before discarding any modified text, even when editing without an asso‐
2088 ciated filename (in which case other popular editors ignore loss of
2089 edited text).
2090 There are three cases, however, in which edited text would be lost:
2091
2092 · if the user explicitly discards edited text (e.g. ESQ q
2093 and not answering the "Save?" question with "y")
2094
2095 · if mined is sent an external terminating signal (e.g. on
2096 terminal I/O error); two exceptions are the SIGKILL sig‐
2097 nal (which cannot be caught by a program) and SIGTERM
2098 (see below)
2099
2100 · in the rare case that mined should fail with an internal
2101 signal (e.g. if out of memory)
2102 In these cases, mined can save the edited text in a recovery file
2103 dir/#name# (when editing file dir/name); in the explicit case, this is
2104 only done if the answer to the "Save?" question is "r" (to "recover
2105 later"). If the edited file is later opened, and a recovery file still
2106 exists (which is newer than the file being opened), mined will display
2107 a notice. In the File menu, there is the option to recover the text
2108 from the recovery file. Note: The recovery file is interoperable with
2109 emacs (as are the use cases); however, mined is superior here because
2110 emacs mangles non-ASCII characters in recovery files. Mind, though,
2111 that interoperability with respect to recognising recovery files
2112 depends on consistent configuration of their location; see the direc‐
2113 tory configuration option below. Note: If mined is sent an explicit
2114 SIGTERM signal it tries to terminate normally instead, writing modified
2115 text to the file being edited, including interactive handling if
2116 needed. Note: After catching a signal, mined also tries an emergency
2117 save of the edited text into a "panic file" in one of the directories
2118 $TMPDIR, $TMP, $TEMP, /usr/tmp, or /tmp (whichever variable is defined
2119 first and directory is writable in this order; or similar directories
2120 under VMS or MSDOS). The file contains the edited text, identical to
2121 the recovery file. It is written first, before the recovery file, to
2122 provide a quick save attempt e.g. if the system is crashing and the
2123 file system of the edited file is no longer available. Note: If possi‐
2124 ble, mined also tries to continue normally after panic handling (unless
2125 multiple external signals are nested). Note: To place recovery files
2126 in a different directory than the original file, use the environment
2127 variable AUTO_SAVE_DIRECTORY or AUTOSAVEDIR or BACKUP_DIRECTORY or
2128 BACKUPDIR as described for backup files above.
2129
2130 Overwriting files and →NEW→
2131 Change monitoring If any command is issued to write to a file not pre‐
2132 viously read in (after change of file name or working directory, or
2133 with a Copy to file command), mined prompts for confirmation.
2134 →NEW→ Also, if mined detects that the file being edited has been
2135 changed, it displays a notice and asks for confirmation before saving.
2136 To this aim, mined checks the modification time, →NEW→ file size,
2137 device and inode (in case the file got replaced by rename/move/mount
2138 operations). This is checked if mined is notified of refocussing the
2139 window (if supported by the terminal), and after shell commands (ESC !,
2140 ESC c, ESC z).
2141
2142 File access permissions
2143 When creating a new file, its access permissions are set according to
2144 the default behaviour set in the user environment (umask setting in
2145 Unix). However, when cloning a file (with Save As / Set Name / ESC n /
2146 ESC d), file access permissions of the originally opened file are pre‐
2147 served and cloned.
2148 The +x command line option adds executable permission to newly created
2149 files but only to those users that are also given read permission by
2150 the rules above.
2151
2152 Special file types
2153 Character or block device files
2154 →NEW→ Mined rejects reading from or writing to a device file in order
2155 to prevent being blocked. Exception: /dev/clipboard on cygwin.
2156
2157 FIFO files
2158 Mined can edit a FIFO file (named pipe) like any other file. Before
2159 mined can finish loading from the pipe, another process needs to have
2160 written to it and then close it. Before mined can finish saving to the
2161 pipe, another process needs to have opened it for reading.
2162
2163 Pipe input
2164 When invoked within a pipe, redirecting input, mined loads its text
2165 buffer from standard input. →NEW→ Mined does not manipulate the screen
2166 mode before data is available from the pipe, so to some extent it can
2167 interwork even with screen programs providing its input.
2168
2169 Pipe output
2170 In the "Editing for standard output" mode (i.e. when invoked within a
2171 pipe, redirecting output), only one "file save" operation can be per‐
2172 formed writing to standard output. If more than one such operations
2173 are issued (e.g. using the ESC w / F2 , F3, or suspend command) only
2174 the first one will write the text buffer to standard output; any subse‐
2175 quent one is treated as usual (with empty file name). →NEW→ If mined
2176 exits after writing to a pipe, it does not manipulate the screen mode
2177 after beginning to write, so to some extent it can interwork even with
2178 screen programs taking its output.
2179
2180 Line end modes and binary-transparent editing
2181 Mined is binary transparent. It can handle all types of line ends (Unix
2182 (LF), DOS (CRLF), Mac (CR, with option +R), →NEW→ ISO 8859/EBCDIC Next
2183 Line (NL, not after auto-detection of text encoding), and Unicode sepa‐
2184 rators (LS, PS)) simultaneously in the same editing session. They are
2185 indicated by different visible line end indications. Files without
2186 trailing line end can be edited and created (using the delete character
2187 right function on the last line end). NUL characters are handled as
2188 virtual line ends. Lines too long for internal handling are split
2189 transparently (with a "none" virtual line end).
2190 Character codes that are illegal in the currently selected text
2191 encoding are maintained transparently and are clearly indicated (e.g.
2192 illegal UTF-8 sequences in Unicode text).
2193 Files with mixed encoding (e.g. UTF-8 / 8 bit sections) can be
2194 edited comfortably.
2195 Input: To enter a NUL character, use ^V # 0 or ^V < NUL or Ctrl-
2196 Space > (if the keyboard supports Ctrl-Space).
2197
2198 File info: Memory of file position and editing style parameters
2199 On every file saving command, mined remembers the last text position,
2200 paragraph justification margins (only if automatic paragraph justifica‐
2201 tion is active), selected Smart Quotes style and Input Method (Keyboard
2202 Mapping), and TAB display width. File info memory is relative to the
2203 working directory, using a hidden file info file (.@mined - mined also
2204 handles its DOS short name @MINED~1 where it occurs, to provide some
2205 interoperability with the DOS version of mined); previously used file
2206 marker files (@mined.mar) will be migrated and cleared from duplicate
2207 entries.
2208
2209 Note: File information is stored every time the user invokes a
2210 command to save the file (even if no write is performed because the
2211 text has not been edited). When editing that file again (from the same
2212 working directory), mined will automatically move to that position (and
2213 set text marker 0 to it).
2214
2215 File info grooming
2216 Mined checks and removes duplicate entries (from previous versions) in
2217 the file info file. With option +@, mined also checks whether file
2218 info entries correspond to actual files that exist and are visible to
2219 the user; it will otherwise remove such entries. Mined can be called
2220 with this option alone and will then exit after file info grooming.
2221 Mind, however, that files may be invisible only temporarily (e.g. due
2222 to unmounted file systems, or unplugged USB drives), and will get their
2223 info entries removed then, too.
2224
2225 File chooser
2226 To select a filename for a file operation (e.g. open, save, insert,
2227 write buffer), mined opens an interactive file chooser that presents a
2228 listing of files and directories in the current directory (for the
2229 change directory command, only directories are shown). The list can be
2230 navigated and manipulated in these ways:
2231
2232 · cursor keys (including page down/up, end/begin)
2233
2234 · mouse movement and scroll
2235
2236 · entering a filename prefix which navigates to the first
2237 file matching it
2238
2239 · TAB will usually copy the current filename into the edit‐
2240 ing field (if it was partially matching a file name, it
2241 is thus completed, similar to file completion on the com‐
2242 mand line but case-insensitively)
2243
2244 · TAB on a directory will navigate the file chooser into it
2245
2246 · TAB or HOP while the filename editing field is containing
2247 wildcards interprets the entered file name as a pattern
2248 and switches to a filtered file listing (recognising "*",
2249 "?", "[abc-x]", "[^abc-x]" wildcard expressions, no
2250 escapes)
2251
2252 · Enter on a directory will navigate the file chooser into
2253 it (unless for the ESC d command in which case it is
2254 selected)
2255
2256 · Enter on a selected (or entered) filename will choose the
2257 name
2258 Also, a filename can be typed in directly (being interpreted as a file‐
2259 name prefix interactively). The filename or prefix is displayed in the
2260 title bar of the popup file chooser menu. When entering file or direc‐
2261 tory names, the leading ~ notation to refer to one's home directory is
2262 accepted. Note: The full path name of the currently displayed direc‐
2263 tory is shown as the first entry in the file chooser menu. Note: A few
2264 sorting options are offered in the "Options" - "File sort options..."
2265 submenu. They can also be preselected with the command line option
2266 +zX. See the file chooser options for details. Note: In the file
2267 chooser, filenames are interpreted in Unicode (UTF-8 encoding) while
2268 file name parameters given on the command line are interpreted in the
2269 terminal encoding. This may lead to inconsistent handling of non-ASCII
2270 filenames. Use the ESC ? command to display the file name using native
2271 encoding. Note: On some file systems, retrieving directory information
2272 can be slow. →NEW→ Mined handles this and provides feedback about
2273 delayed operation, retrieves directory information lazy by page being
2274 displayed, and flushes display of the file chooser by line to provide
2275 visual feedback about the file information being retrieved.
2276
2277 →NEW→
2278 File tabs Mined provides virtual file tabs above the header line, list‐
2279 ing file names as opened via command line or file chooser. By clicking
2280 a file name in the file tabs panel, or hold-and-move the mouse over
2281 them, you can change the file being edited. If the current file has
2282 been modified it will be saved first.
2283
2284 File switcher
2285 The File switcher presents a list of active files to select from, com‐
2286 prising files supplied on the command line, and files opened or saved
2287 later. Invoke the File switcher with Alt-# or ESC #, or Alt-F3 or ESC
2288 F3, or from the File menu. The Close file command (from the File menu)
2289 closes the current file and removes its name from the list. The list
2290 can be navigated and manipulated in these ways:
2291
2292 · cursor keys (including page down/up, end/begin)
2293
2294 · mouse movement and scroll
2295
2296 · entering a filename prefix which navigates to the first
2297 file matching it
2298
2299 · Enter on a selected (or entered) filename will choose the
2300 name
2301 To reload the current file and stay (approximately) at the current
2302 position, use ESC Enter (Alt-Enter) after reloading.
2303
2304 Page length
2305 The command ESC P sets the number of lines that mined assumes to be on
2306 a page. So the status line can contain the page number to make finding
2307 the current position in a print-out easy. Also the Goto Line/% command
2308 (^G etc.) accepts a final
2309 'p' or 'P' in which cases it positions to the top of the given page.
2310 This information will be associated and stored with the file name if
2311 file position memory is enabled; see File info: Memory of file position
2312 and editing style parameters above.
2313
2314 Restricted mode (tool mode)
2315 Restricted mode is triggered with
2316 <code>mined -- [ filenames ... ]
2317 or (if installed)
2318 <code>rmined [ filenames ... ]
2319 In restricted mode, only the file opened when mined was started can be
2320 edited, no commands changing file name reference, involving other files
2321 (copy/paste), or escaping to a shell command will be allowed.
2322
2323 Version control integration
2324 From the File menu, checkout and checkin commands are available that
2325 invoke "co" or "ci" scripts, respectively (which must reside in the
2326 user's command search path). This offers a gateway to ClearCase or
2327 other version control systems; mined applies automatic save or screen
2328 update as appropriate.
2329
2330 Printing
2331 From the File menu, a print command is available that prints the text
2332 currently being edited. If the script uprint is installed and config‐
2333 ured properly, printing works in any selected character encoding. See
2334 Printing configuration for further details.
2335
2336 In Windows, mined uses notepad /p for printing.
2337 Note: The font size interactively configured in notepad also affects
2338 the print size; with a fixed-width font, a font size of not more than
2339 10pt gives you at least 80 characters per line; if 72 characters per
2340 line are enough, you can use 11pt font size.
2341
2343 Quick Options (Mode indication) flags
2344 The right side of the top menu bar displays a number of one-letter or
2345 two-letter indications for certain modes; the associated flag menus can
2346 be opened from here with a mouse right-click, or the modes can be tog‐
2347 gled quickly with a middle-click. (Keyboard shortcuts for handling
2348 flags and menus are also available.)
2349
2350 · Information display mode
2351
2352 · "?": this flag menu offers options for perma‐
2353 nent File info, Char info, or Han character infor‐
2354 mation display. For Char info and Han info, fur‐
2355 ther options can be selected to configure the
2356 information shown.
2357 (Note that in extreme situations, permanent File
2358 info display might cause swappping (when editing a
2359 file that does not fit completely in memory, e.g.
2360 large file on old system). In that case, disable
2361 the feature.)
2362
2363 · (In non-Latin-1 text and terminal mode only) Input Method
2364 (Keyboard Mapping)
2365
2366 · "--": no keyboard mapping is active.
2367
2368 · "...": a two-letter input method tag indi‐
2369 cates that an according keyboard mapping is
2370 active, mapping keyboard input to characters of
2371 the selected Unicode script range, or using a more
2372 complex CJK input method involving "pick list"
2373 selection menus. See Keyboard Mapping and Input
2374 Methods below.
2375
2376 · Right mouse button on this indication opens a
2377 menu for selection of the desired keyboard map‐
2378 ping.
2379
2380 · Left mouse button on this indication toggles
2381 between the current and the previous selected key‐
2382 board mapping.
2383
2384 Note: In the open Input method menu,
2385 the last column indicates the source of the input method
2386 with a short tag as follows:
2387
2388 · "U": generated from Unicode data file Uni‐
2389 codeData.txt
2390
2391 · "H": generated from Unihan database Uni‐
2392 han.txt
2393
2394 · "C": transformed from cxterm input table
2395
2396 · "M": transformed from input method of the
2397 m17n project
2398
2399 · "Y": transformed from yudit keyboard mapping
2400 file
2401
2402 · "V": transformed from vim keymap file
2403
2404 · "X": transformed from X keyboard mapping file
2405
2406 · Smart Quotes
2407
2408 · Two quote marks are displayed that act as
2409 automatic "smart quotes": When you type a «"» or
2410 «'» character (straight double or single quote),
2411 it is replaced by an opening or closing typo‐
2412 graphic quote mark (double or single, respec‐
2413 tively), depending on the text context.
2414
2415 · Right mouse button on these indications opens
2416 a menu for selection of the desired quotation
2417 marks style.
2418
2419 · Left mouse button on this indication toggles
2420 between the current and the previous style
2421 selected with the menu.
2422
2423 · Character encoding (used for text interpretation)
2424
2425 · A two-letter character encoding tag indicates
2426 the text encoding currently assumed for display.
2427 Changing the encoding changes the interpretation
2428 of the text which is otherwise handled transpar‐
2429 ently; it does not recode the text.
2430
2431 · Right mouse button on these indications opens
2432 a menu for selection of the desired quotation
2433 marks style.
2434
2435 · Left mouse button on this indication toggles
2436 between the current and the previous selected
2437 encoding.
2438
2439 Note: See
2440 Character encoding support below for a list of encodings
2441 that are auto-detected.
2442
2443 Note: For hints on preselecting preferred
2444 text encoding (as well as terminal encoding) and a note
2445 on adjusting the available encodings and configuring the
2446 Encoding menu, see Locale configuration.
2447
2448 · "U8": Unicode/ISO 10646 character set / UTF-8
2449 encoding
2450
2451 · "16" or "61": Unicode character set / UTF-16
2452 encoding (big-endian or little-endian, respec‐
2453 tively)
2454 In contrast to the other encodings, UTF-16 has no
2455 separate entry in the Character encoding menu as
2456 its internal handling is UTF-8 and cannot be
2457 switched while editing; these two flag values only
2458 indicate that the file being edited was found to
2459 be encoded and will be saved in UTF-16.
2460
2461 · "L1": Western "Latin-1" character set / ISO
2462 8859-1
2463
2464 · "WL": Windows Latin character set / "code‐
2465 page" 1252 (superset of Latin-1)
2466
2467 · "L9": Western "Latin-9" character set (with
2468 Euro sign) / ISO 8859-15
2469
2470 · "Cy": Cyrillic character set / KOI8-RU encod‐
2471 ing (Russian, Ukrainian, Byelorussian)
2472 submenu more NE Eurasian:
2473
2474 · "Ru": Cyrillic / Russian KOI8-R encoding;
2475 used if locale environment indicates this as ter‐
2476 minal encoding, not in menu, use "Cy" instead
2477 which combines KOI8-R and KOI8-U
2478
2479 · "Uk": Cyrillic / Ukrainian KOI8-U encoding;
2480 used if locale environment indicates this as ter‐
2481 minal encoding, not in menu, use "Cy" instead
2482 which combines KOI8-R and KOI8-U
2483
2484 · "I5": Cyrillic / ISO 8859-5 encoding
2485
2486 · "WC": Cyrillic / Windows Cyrillic encoding
2487
2488 · "Tj": Cyrillic / Tadjikistan encoding
2489
2490 · "Kz": Cyrillic / Kazachstan encoding
2491
2492 · "GP": Georgian character set (not Cyrillic) /
2493 Georgian-PS encoding
2494
2495 · "AR": →NEW→ Armenian character set / ARMSCII
2496 encoding
2497 submenu Greek/Semitic:
2498
2499 · "I7": Greek / ISO 8859-7 encoding
2500
2501 · "I6": Arabic / ISO 8859-6 encoding
2502
2503 · "Ar": Arabic / MacArabic encoding (superset
2504 of ISO 8859-6)
2505
2506 · "I8": Hebrew / ISO 8859-8 encoding
2507
2508 · "He": Hebrew / Windows codepage 1255 (super‐
2509 set of ISO 8859-8)
2510 submenu more Latin:
2511
2512 · "MR": Mac-Roman character encoding
2513
2514 · "PC": PC DOS character encoding ("codepage
2515 437")
2516
2517 · "PL": PC Latin character encoding ("codepage
2518 850")
2519
2520 · "LN" where N is 2..8 or "0": Latin-N or
2521 Latin-10 encodings / ISO 8859-2/3/4/9/10/13/14/16
2522 CJK encodings:
2523
2524 · "B5": Traditional Chinese character set /
2525 Big5 encoding with HKSCS extensions, extends CP950
2526
2527 · "GB": Simplified Chinese character set /
2528 GB18030 encoding, extends CP936, includes GBK
2529 encoding, includes GB 2312 / EUC-CN encoding
2530
2531 · "CN": Traditional Chinese character set / CNS
2532 / EUC-TW encoding (including 4-byte code points)
2533
2534 · "JP": Japanese character set / EUC-JP encod‐
2535 ing (including 3-byte code points)
2536
2537 · "JX": →NEW→ Japanese character set / EUC-
2538 JIS-2004 (X 0213) encoding
2539
2540 · "32": →NEW→ Japanese character set / Windows
2541 "Shift_JIS" encoding / CP932 (including single-
2542 byte mappings to Halfwidth Forms)
2543
2544 · "SX": →NEW→ Japanese character set /
2545 Shift_JIS-2004 (X 0213) encoding
2546
2547 · "KR": Korean Unified Hangul character set /
2548 UHC encoding / CP949, includes KS C 5601 / KS X
2549 1001 / EUC-KR encoding
2550
2551 · "Jh": Korean Johab character set and encoding
2552 Further Asian encodings:
2553
2554 · "VI": Vietnamese character set / VISCII
2555 encoding
2556
2557 · "TV": Vietnamese character set / TCVN encod‐
2558 ing
2559
2560 · "WV": →NEW→ Vietnamese character set / CP1258
2561 encoding
2562
2563 · "TI": Thai character set / TIS-620 encoding
2564
2565 · Combining display (available only if the current text
2566 encoding contains combining characters)
2567
2568 · "ç": combined display mode
2569
2570 · "`": separated display mode: combining char‐
2571 acters are separated from their base character and
2572 displayed with coloured background
2573
2574 · HOP key active
2575
2576 · "H": HOP applies to next command
2577
2578 · "h": HOP not active
2579
2580 · Edit mode vs. View only mode
2581
2582 · "E": text is being edited
2583
2584 · "V": text is being viewed (modification
2585 inhibited)
2586
2587 · Note: this is not related to a file being
2588 read-only; if you "edit" and modify the text of a
2589 read-only file, you will have to save to a differ‐
2590 ent file name (or discard)
2591
2592 · Paste buffer (double flag)
2593
2594 · "%": normal copy/paste mode
2595
2596 · "[": rectangular copy/paste mode
2597
2598 · "=": cut/copy replaces (overwrites) paste
2599 buffer
2600
2601 · "+": cut/copy appends to paste buffer
2602
2603 · "%" or "[", "=" or "+": as above, and indi‐
2604 cates Unicode paste buffer mode (in non-Unicode
2605 text encoding)
2606
2607 · Auto-indent mode
2608
2609 · "»": auto-indentation enabled: entering a
2610 newline indents the following line like the cur‐
2611 rent one
2612
2613 · "¦": auto-indentation disabled
2614
2615 · TAB expand mode and TAB width →NEW→
2616
2617 · "N": (where N is 2 or 4 or 8) TAB is inserted
2618 literally, TAB width is as indicated
2619
2620 · "N": (where N is 2 or 4 or 8) TAB is expanded
2621 to spaces, TAB width is as indicated
2622
2623 · Automatic paragraph justification levels
2624
2625 · "j": justification only on request (ESC j
2626 command)
2627
2628 · "j": justification is performed whenever text
2629 is entered beyond the right margin
2630
2631 · "J": justification is performed whenever text
2632 is inserted and the line exceeds the right margin
2633 (slightly buggy)
2634
2635 · Paragraph termination definition effective for justifica‐
2636 tion
2637
2638 · " ": non-blank line end terminates paragraph
2639 (blank space at line end continues paragraph)
2640
2641 · "«": empty line terminates paragraph
2642
2643 Scrollbar
2644 By default, mined displays a scrollbar at the right side. It may be
2645 used for position indication within the text and for relative or abso‐
2646 lute positioning with the three mouse buttons.
2647 In a UTF-8 terminal, mined uses Unicode character cell vertical eighths
2648 characters U+2581..U+2587 for a fine-grained scrollbar display. If your
2649 Unicode font doesn't include those block characters, you may switch to
2650 the cell-grained scrollbar with the -o1 option.
2651
2652 Text position marker stack
2653 On commands that jump away from the current position (HOP Mark, File
2654 Begin/End, Search, Search identifier definition, Search current charac‐
2655 ter, Goto Line/%, Goto Next/Previous File), the current position is
2656 remembered in a position stack. The command ESC Enter goes backward,
2657 HOP ESC Enter forward in this "stack", even if this means switching the
2658 file being edited.
2659
2660 Structured editing support
2661 HTML support: syntax highlighting and tag entry/matching
2662 HTML tag entry: With the ESC H commands, opening and closing HTML tags
2663 can be entered or (with HOP) a marked area can be enclosed into HTML
2664 tags.
2665 Syntax highlighting: HTML tags and comments, →NEW→ attributes and val‐
2666 ues can be highlighted, or dimmed to set them back from the actual text
2667 contents; if mined detects a dark terminal background (works with xterm
2668 and mintty), it adds a highlighting background to improve the contrast.
2669 Other highlighting modes apply to HTML comments and JSP code. This
2670 option is activated if the file name suffix is one of .html, .htm,
2671 .xhtml, .shtml, .mhtml, .sgml, .xml, .xul, .xsd, .xsl, .xslt, .wsdl,
2672 .dtd; it can be toggled from the Options menu. Additional highlighting
2673 of embedded server-side scripting is activated if the file name suffix
2674 is one of .jsp, .php, .asp, .aspx.
2675 HTML/XML syntax highlighting can be enabled with option +H or using
2676 Preference configuration per file-type.
2677 HTML tag matching: With the ESC ( or ESC ) command, mined searches for
2678 the opening / closing HTML tag corresponding to the current one.
2679 Note: While you edit within a line and change its HTML ending status
2680 (by entering or deleting '<' or '>'), the display status of subsequent
2681 lines is not changed. (You may refresh the display with ESC ".")
2682 Configuration hint: The colour used for displaying HTML tags can be
2683 configured with the environment variable MINEDHTML using an ANSI
2684 sequence, e.g. MINEDHTML=34 (the default).
2685
2686 Search structure match
2687 With the ESC ( or ESC ) commands, mined searches for a matching end of
2688 various structures, like opening/closing HTML/XML tags (see above),
2689 matching parentheses or brackets, matching comments (/* */), matching
2690 conditional macros (#if...), mail messages (in a mailbox file), MIME
2691 attachments. See the ESC ( command in the command reference for
2692 details.
2693
2694 Structure input
2695 A structure template with opening and closing ends can be inserted with
2696 the structured input feature. HOP followed by one of { , ( , [ , <
2697 enters a corresponding bracket pair, HOP / enters a Javadoc comment
2698 frame. HOP - enters an underlining line matching the previous line.
2699
2700 Visual structure input is supported by Auto indentation
2701
2702 Password hiding
2703 With the option -P, mined hides one word (separated by white space)
2704 behind the string "assword" in a line (to accommodate for "password" or
2705 "Password") and displays reverse "*" instead. Password hiding can be
2706 disabled with +P.
2707 By default (without any P option), password hiding is activated when
2708 editing a file whose file name starts with "." (Unix "hidden" file con‐
2709 vention).
2710
2711 Virtual bold/underline stropping
2712 With the option +ZZ, mined displays all-capital words in bold lower-
2713 case and supports their input using only a first capital letter, then
2714 small letters to input a word in all-upper-case. This is to support
2715 editing computer programs in Algol-like languages in their typical pub‐
2716 lication look. Use +Z_ for underline stropping, disable with -ZZ.
2717 Enabled by default if the filename ends with ".a68".
2718
2719 Long line splitting
2720 Mined has an internal line length limit (> ca. 1024 characters). When
2721 opening a file, longer lines are split. This is handled transparently
2722 as virtual "none" line ends are used and indicated. When saving the
2723 file, lines will be joined again.
2724
2725 Visible indication of line contents and display
2726 Various options are available to indicate line control characters (Tab
2727 and line-feed) as well as shifted line display (of lines longer than
2728 the screen width). (So you can see how many dummy blank spaces there
2729 are before the line ends or how many superfluous blank spaces precede a
2730 Tab character.)
2731 Environment variables can be used to modify these indications.
2732 See Display layout for details.
2733 Default indications and according configuration variables:
2734
2735 « / ⏎ LF (Unix-type line end)
2736 customize indication with MINEDRET or MINEDUTFRET (may contain
2737 up to 3 characters to configure different appearance behind the
2738 line end)
2739
2740 « / ⏎ CRLF (MSDOS-type two-character line end)
2741 (µ on black and white terminals)
2742 customize indication with MINEDDOSRET or MINEDUTFDOSRET
2743
2744 « / ⏎ CR (Mac-type line end)
2745 (@ on black and white terminals)
2746 customize indication with MINEDMACRET or MINEDUTFMACRET
2747 transparently handled and displayed with +R command line option
2748
2749 º NUL character (pseudo line end)
2750
2751 ¬ "none" line end (virtual line end as used to split input lines
2752 too long for internal handling; will be joined into a single
2753 line when saving the file)
2754
2755 « →NEW→ NL (U+0085, ISO 8859/EBCDIC Next Line)
2756
2757 « / ⏎ LS (U+2028, Unicode line separator)
2758
2759 ¶ PS (U+2029, Unicode paragraph separator)
2760 customize indication with MINEDPARA or MINEDUTFPARA
2761
2762 ¶ end of paragraph (if enabled by -p)
2763 customize indication with MINEDPARA or MINEDUTFPARA
2764
2765 · no-break space (Unicode character U+00A0)
2766
2767 » line extending the end of the screen line
2768 (move cursor right to shift line display)
2769 customize indication with MINEDSHIFT or MINEDUTFSHIFT
2770
2771 « line shifted out left of the screen line
2772 (move cursor left to shift line display back)
2773 customize indication with MINEDSHIFT or MINEDUTFSHIFT
2774
2775 · position spanned by Tab character
2776 customize indication with MINEDTAB or MINEDUTFTAB (may contain
2777 up to 3 characters to configure different appearance within the
2778 Tab span)
2779
2780 Configuration: Display colour of the indications is by default red or a
2781 dimmed foreground colour; this can be changed with the environment
2782 variable MINEDDIM, display colour for Unicode line end indications and
2783 other special (esp. invalid) character indications with <span
2784 class=env>MINEDSPECIAL. Their values should be the numeric part of an
2785 ANSI terminal control sequence, e.g. 31 for red, "33;44" for yellow
2786 text on blue background. MINEDDIM can also be set to an integer per‐
2787 centage value (e.g. MINEDIM="50%") to have mined apply dim colour to
2788 the indications; the colour value is computed from the current fore‐
2789 ground and background colours (if the terminal supports their detec‐
2790 tion).
2791 For more details and recommended settings see the example script file
2792 profile.mined in the Mined runtime support library. Default values are
2793 compiled in and can be overridden by setting the variables to empty
2794 values.
2795
2796 Note: With the -F option, mined limits usage of special characters for
2797 line indication and suppresses the interpretation of the MINEDUTF*
2798 environment variables.
2799
2800 Function key help bars
2801 For quick reference of functions attached to function keys, modified
2802 function keys, and other modified keys (as used for accent prefix func‐
2803 tions), a number of help bars can be displayed in the bottom line.
2804 F1 followed by another F1, optionally modified by a combination of Con‐
2805 trol/Shift/Alt, displays a help line with function attachments to the
2806 respectively modified function keys; F1 followed by Ctrl-1/Alt-1/Alt-
2807 Ctrl-1 or Control with a punctuation key (e.g. Ctrl-,) displays a help
2808 line for the respective accent prefix functions attached. See the F1
2809 help bars command reference for details.
2810
2811 Menu display
2812 Menu borders are displayed using Unicode Box Drawing characters in a
2813 UTF-8 terminal, using VT100-mode graphics characters if they are
2814 detected to be available, or using ASCII graphics otherwise.
2815 Configuration hint: The menu style option -Q is available to configure
2816 your style preference; see also Terminal interworking problems for con‐
2817 figuration hints to deal terminal-related graphics display trouble.
2818 Alternatively, the option -f reduces font assumptions and adjusts usage
2819 of special characters accordingly.
2820 In addition to round or rectangular corners, also fancy item selection
2821 display style can be selected (-Q).
2822 With a non-UTF-8 terminal, if your system's termcap/terminfo database
2823 does not indicate the VT100 graphics capability for the terminal you
2824 use but you know (or want to try if) your terminal has that capability,
2825 use of graphical borders can be enforced with the -Qv command line
2826 option.
2827 Configuration hint: The colour of menu borders can be changed with the
2828 environment variable MINEDBORDER. The marker of selected items in flag
2829 menus can be changed with the environment variable MINEDMENUMARKER.
2830 →NEW→ The apperance of the menu background and borders can be config‐
2831 ured in the runtime configuration file $HOME/.minedrc.
2832
2834 Most of the information in this chapter is redundant. It collects lan‐
2835 guage-specific features described in the other chapters in a more tech‐
2836 nical context, here assorted by languages / scripts for more convenient
2837 quick reference.
2838 Language-specific typographic quotation marks are supported by the
2839 Smart quotes feature. See Quotation Marks Styles on the mined web site
2840 for a listing of locale-specific styles. <!p>
2841
2842 Latin-script languages
2843 Character sets
2844 In addition to Unicode, mined supports Latin-1 (ISO 8859-1), Latin-9
2845 (ISO 8859-15), Mac-Roman, Windows (CP1252) and DOS (CP437, CP850) West‐
2846 ern character sets, as well as further ISO character sets for Central
2847 European (Latin-2, ISO 8859-2), South European (Latin-3, ISO 8859-3),
2848 Turkish (Latin-5, ISO 8859-9), Nordic (Latin-6, ISO 8859-10), Baltic
2849 (Latin-7, ISO 8859-13), Celtic (Latin-8, ISO 8859-14), Romanian
2850 (Latin-10, ISO 8859-16), →NEW→ and EBCDIC (CP1047). To view and edit a
2851 file in one of these encodings, select it from the Encoding menu (sec‐
2852 tion "8 Bit" for Western, or submenu "more Latin"), or use the respec‐
2853 tive command line parameter. See Character encoding flags for details.
2854 Terminal: If your terminal runs any of these encodings, mined can
2855 detect this by proper setting of environment variables (LC_* or LANG,
2856 and TERM). See Terminal environment for details.
2857
2858 Character input support
2859 For input of accented characters, mined provides an extensive set of
2860 accent prefix functions, covering Western accents as well as
2861
2862 · Macron (Latvian, Lithuanian, Polynesian languages)
2863
2864 · Breve (Romanian, Turkish)
2865
2866 · Dot above (Lithuanian, Polish)
2867
2868 · Ogonek (Lithuanian, Polish)
2869
2870 · Caron/Háček (Croatian, Czech, Lithuanian, Latvian, Esto‐
2871 nian, Slovenian, Slovak)
2872
2873 · Stroke (Croatian, Maltese, Polish, Vietnamese)
2874
2875 · and others
2876
2877 For other characters and ligatures, mined provides mnemonic input.
2878 See Character input support for more details.
2879
2880 Language-specific mnemonic conversion support
2881 The generic mnemonic transformation command ESC _ (which transforms a
2882 mnemonic transcription in the text into its accented or ligature char‐
2883 acter) has a few national variants, using keys available on the respec‐
2884 tive keyboards as commands:
2885
2886 · German: ESC ö etc. transforms ae to ä, oe to ö
2887
2888 · French: ESC é etc. transforms ae to æ, oe to oe ligature
2889
2890 · Scandinavian: ESC å etc. transforms ae to æ, oe to ø
2891
2892 · →NEW→ Italian: ESC ì etc. transforms 'e or ´e to è rather
2893 than é etc.
2894
2895 · →NEW→ East European> ESC < accented letter typical on
2896 East European keyboard > (like l with stroke, u with
2897 ring, o with double acute, s with caron, etc) transforms
2898 ,e to e with ogonek (rather than cedilla) etc., and -d to
2899 d with stroke
2900 (See mnemonic character substitution commands in the Command reference
2901 for details.)
2902
2903 Language-specific case conversion
2904 (The following rules apply if the respective language is indicated by
2905 the language tag as extracted from one of the environment variables
2906 →NEW→ LANGUAGE, TEXTLANG, LC_ALL, LC_CTYPE, LANG.)
2907
2908 Lithuanian: (If language tag begins with "lt") Proper case conversion
2909 of accented i with retained i dot.
2910
2911 Turkish, Azeri, Tatar, Bashkir: (If language tag begins with "tr" or
2912 "az" →NEW→ or "crh" or "tt" or "ba") Proper case conversion of i<->I
2913 with dot above / dotless i<->I.
2914
2915 →NEW→ Dutch: (If language tag begins with "nl") Title case conversion
2916 with Shift-F3 supports "IJ" pseudo ligature like in "IJsselmeer". <!p>
2917
2918 Esperanto
2919 Character sets
2920 In addition to Unicode, mined supports the Latin-3 character set (ISO
2921 8859-3), and the DOS codepage CP853 (especially as terminal encoding).
2922 To view and edit a file in Latin-3 encoding, select it from the Encod‐
2923 ing menu (submenu "more Latin"), or use the command line parameter -E3.
2924 To tell mined it runs a CP853 DOS setting, use a LC_CTYPE variable set‐
2925 ting (.CP853) or the option +E=CP853. See Character encoding flags for
2926 details.
2927 Terminal: If your terminal runs this encoding, make sure to indicate
2928 this properly with an environment variable (LC_* / LANG). See Terminal
2929 environment for details.
2930
2931 Input method
2932 Mined supports a built-in input method for Esperanto, using the "x-sys‐
2933 tem", plus "Sm" for the Spesmilo sign. Select it from the Input method
2934 menu.
2935
2936 Accented character input support
2937 Instead of the input method, also the following accent prefix functions
2938 can be used:
2939
2940 Ctrl-F6
2941
2942 Ctrl-^ circumflex
2943
2944 Alt-Shift-F5
2945
2946 Ctrl-( breve
2947
2948 <!p>
2949
2950 Hawai'ian
2951 Accented character and 'okina input support
2952 The following shortcuts and accent prefix functions can be used:
2953
2954 HOP ` (grave accent)
2955 glottal stop / 'okina (U+02BB)
2956
2957 Alt-Ctrl-F6
2958
2959 Ctrl-- (Ctrl-minus)
2960 macron (long vowel)
2961
2962 Note: In smart quotes mode, the grave accent (or backquote) ` alone
2963 enters a glottal stop as well. <!p>
2964
2965 Russian, Ukrainian, other Cyrillic-script languages
2966 Character sets
2967 In addition to Unicode, mined supports ISO Cyrillic (ISO 8859-5), Win‐
2968 dows Cyrillic (CP1251), and KOI8-RU which is a convenient merge of
2969 KOI8-R (Russian) and KOI8-U (Ukrainian) (which are also supported sepa‐
2970 rately but not included in the menu), →NEW→ and DOS Ukrainian (CP1125
2971 and CP1131). To view and edit a file in one of these encodings, select
2972 it from the Encoding menu ("Cyrillic" or submenu "more NE Eurasian"),
2973 or use the respective command line parameter. See Character encoding
2974 flags for details.
2975 Terminal: If your terminal runs any of these encodings, make sure to
2976 indicate this properly with an environment variable (LC_* / LANG). See
2977 Terminal environment for details.
2978
2979 Input method
2980 Mined supports a built-in input method for Cyrillic. Select it from
2981 the Input method menu.
2982
2983 Accented character input support
2984 In combination with a Cyrillic input method or keyboard, mined provides
2985 accent prefix support for Cyrillic accented letters. Accent prefix
2986 functions for Latin letters are reused for Cyrillic accents, see the
2987 following table:
2988
2989 F5
2990
2991 Ctrl-: diaeresis
2992
2993 Alt-Ctrl-F6
2994
2995 Ctrl-- descender / macron
2996
2997 Alt-F5
2998
2999 Ctrl-/ stroke
3000
3001 Ctrl-& hook
3002
3003 Ctrl-- Ctrl-&
3004 middle hook
3005
3006 Alt-Shift-F5
3007
3008 Ctrl-( breve
3009
3010 Ctrl-; tail / tick / upturn
3011
3012 F6
3013
3014 Ctrl-'
3015
3016 Ctrl-´ vertical stroke
3017
3018 Shift-F6
3019
3020 Ctrl-` grave
3021
3022 Shift-F5
3023
3024 Ctrl-~ titlo
3025
3026 acute acute
3027 double acute
3028
3029 grave grave
3030 double grave
3031
3032 See Character input support for more details.
3033
3034 Script highlighting
3035 To distinguish some Cyrillic letters from Latin look-alikes, Cyrillic
3036 is by default displayed with colour highlighting. <!p>
3037
3038 Tadjik
3039 Character sets
3040 In addition to Unicode, mined supports KOI8-T. To view and edit a file
3041 in this Tadjik encoding, select it from the Encoding menu (submenu
3042 "more NE Eurasian"), or use the respective command line parameter
3043 -E:Tj. See Character encoding flags for details.
3044 Terminal: If your terminal runs this encoding, make sure to indicate
3045 this properly with an environment variable (LC_* / LANG). See Terminal
3046 environment for details.
3047
3048 Input method
3049 Mined supports a built-in input method for Cyrillic. Select it from
3050 the Input method menu.
3051
3052 Accented character input support
3053 See above for Cyrillic accented input support.
3054
3055 Script highlighting
3056 Cyrillic is by default displayed with colour highlighting. <!p>
3057
3058 Kazakh
3059 Character sets
3060 In addition to Unicode, mined supports PT154. To view and edit a file
3061 in this Kazakh encoding, select it from the Encoding menu (submenu
3062 "more NE Eurasian"), or use the respective command line parameter
3063 -E:Kz. See Character encoding flags for details.
3064 Terminal: If your terminal runs this encoding, make sure to indicate
3065 this properly with an environment variable (LC_* / LANG). See Terminal
3066 environment for details.
3067
3068 Input method
3069 Mined supports a built-in input method for Kazakh. Select it from the
3070 Input method menu.
3071
3072 Accented character input support
3073 See above for Cyrillic accented input support.
3074
3075 Script highlighting
3076 Cyrillic is by default displayed with colour highlighting. <!p>
3077
3078 Georgian
3079 Character sets
3080 In addition to Unicode, mined supports Georgian-PS. To view and edit a
3081 file in this encoding, select it from the Encoding menu (submenu "more
3082 NE Eurasian"), or use the respective command line parameter -E:GP. See
3083 Character encoding flags for details.
3084 Terminal: If your terminal runs this encoding, make sure to indicate
3085 this properly with an environment variable (LC_* / LANG). See Terminal
3086 environment for details. <!p>
3087
3088 Armenian
3089 Character sets
3090 →NEW→ In addition to Unicode, mined supports ARMSCII. To view and edit
3091 a file in this encoding, select it from the Encoding menu (submenu
3092 "more NE Eurasian", tell me if that's not suitable), or use the respec‐
3093 tive command line parameter -E:AR. See Character encoding flags for
3094 details.
3095 Terminal: If your terminal runs this encoding, make sure to indicate
3096 this properly with an environment variable (LC_* / LANG). See Terminal
3097 environment for details. <!p>
3098
3099 Greek
3100 Character sets
3101 In addition to Unicode, mined supports ISO Greek (ISO 8859-7). To view
3102 and edit a file in this encoding, select it from the Encoding menu
3103 (submenu "Greek/Semitic"), or use the respective command line parameter
3104 -E:I7. See Character encoding flags for details.
3105 Terminal: If your terminal runs this encoding, make sure to indicate
3106 this properly with an environment variable (LC_* / LANG). See Terminal
3107 environment for details.
3108
3109 Input method
3110 Mined supports a built-in input method for Greek. Select it from the
3111 Input method menu.
3112
3113 Accented character input support
3114 In combination with a Greek input method or keyboard, mined provides
3115 accent prefix support for both monotonic Greek and polytonic Greek.
3116 Monotonic Greek uses only one accent, the tonos which looks like acute
3117 and can be entered with the F6 or Ctrl-' prefix function.
3118 Polytonic Greek uses - among many others - the oxia accent which is
3119 nowadays considered identical and looks like the monotonic tonos. How‐
3120 ever, for historic reasons, there are two sets of Greek accented let‐
3121 ters with this accent in Unicode, one with tonos and one with oxia.
3122 While this may be considered a design flaw of Unicode, in fact both
3123 kinds of characters exist and mined provides support for both accents.
3124 The choice of usage is up to the user. Note, e.g. that
3125
3126 F6 < alpha >
3127 enters the Greek letter alpha with tonos
3128
3129 Ctrl-F6 < alpha >
3130 enters the Greek letter alpha with oxia
3131
3132 Likewise, with mnemonic input
3133
3134 ^V ' < alpha > (using the apostrophe key)
3135 enters the Greek letter alpha with tonos
3136
3137 ^V ´ < alpha > (using the acute accent key)
3138
3139 In these examples, < alpha > indicates the Greek letter alpha, which
3140 may e.g. be entered by selecting the Greek input method and typing the
3141 a key.
3142
3143 Accent prefix functions for Latin letters are reused for Greek accents,
3144 see the following table:
3145
3146 F5
3147
3148 Ctrl-:
3149
3150 Ctrl-" dialytika
3151
3152 Shift-F5
3153
3154 Ctrl-~ perispomeni
3155
3156 Ctrl-F5
3157
3158 Ctrl-, iota (ypogegrammeni)
3159
3160 Ctrl-Shift-F5
3161
3162 Ctrl-; prosgegrammeni
3163
3164 Alt-Shift-F5
3165
3166 Ctrl-( vrachy
3167
3168 F6
3169
3170 Ctrl-' (Ctrl-apostrophe) tonos
3171
3172 Ctrl-F6
3173
3174 Ctrl-´ (Ctrl-acute)
3175
3176 Ctrl-^ oxia
3177
3178 Shift-F6
3179
3180 Ctrl-` (Ctrl-grave) varia
3181
3182 Alt-F6
3183
3184 Ctrl-< psili
3185
3186 Alt-Shift-F6
3187
3188 Ctrl-. dasia
3189
3190 Ctrl-Shift-F6
3191 macron
3192
3193 Alt-6 psili and oxia
3194
3195 Ctrl-Alt-6
3196 dasia and oxia
3197
3198 Alt-7 psili and varia
3199
3200 Ctrl-Alt-7
3201 dasia and varia
3202
3203 Alt-8 psili and perispomeni
3204
3205 Ctrl-Alt-8
3206 dasia and perispomeni
3207
3208 For polytonic Greek, 2 or 3 accents can be combined by applying the
3209 respective accent prefix functions in sequence. For convenience, the
3210 most frequent combinations of 2 accents are also available as dedicated
3211 accent prefix keys as listed above. Also, modified Ctrl-/Alt-/Alt-
3212 Ctrl- digit keys are used for polytonic Greek accent prefix functions.
3213 See Character input support for more details.
3214
3215 Script highlighting
3216 To distinguish some Greek letters from Latin look-alikes, Greek is by
3217 default displayed with colour highlighting.
3218
3219 Script-specific case conversion
3220 Case conversion of final sigma is handled properly. <!p>
3221
3222 Amharic
3223 Input method
3224 Mined supports two built-in input methods for Amharic, one is called
3225 "Ethiopic" (source: yudit), the other is called "Amharic" and was gen‐
3226 erated from Unicode character names (preferable according to user feed‐
3227 back). Select your preferred input method from the Input method menu.
3228 <!p>
3229
3230 Arabic
3231 Character sets
3232 In addition to Unicode, mined supports ISO Arabic (ISO 8859-6), MacAra‐
3233 bic and DOS Arabic (CP720). To view and edit a file in one of these
3234 encodings, select it from the Encoding menu (submenu "Greek/Semitic"),
3235 or use the respective command line parameter -E:I6 or -EA. See Charac‐
3236 ter encoding flags for details.
3237 Terminal: If your terminal runs ISO Arabic, make sure to indicate this
3238 properly with an environment variable (LC_* / LANG). See Terminal
3239 environment for details.
3240
3241 Input method
3242 Mined supports a built-in input method for Arabic. Select it from the
3243 Input method menu.
3244
3245 Accented character input support
3246 Not yet implemented. Tell me if you have a proposal or preference for
3247 assignment of accent prefix functions to the keyboard.
3248
3249 Bidi support
3250 Mined has implicit primitive support for visual right-to-left input
3251 which is however not the preferred storage method as complete right-to-
3252 left text should be stored in logical order.
3253 Mined auto-detects and cooperates with a bidi terminal (mlterm) in
3254 which case visual right-to-left input is disabled.
3255 A full context-aware bidi display and editing technique would still
3256 have to be integrated into mined. Tell me if you are interested. <!p>
3257
3258 Hebrew
3259 Character sets
3260 In addition to Unicode, mined supports ISO Hebrew (ISO 8859-8) and Win‐
3261 dows Hebrew (CP1255). To view and edit a file in one of these encod‐
3262 ings, select it from the Encoding menu (submenu "Greek/Semitic"), or
3263 use the respective command line parameter -E:I8 or -EE. See Character
3264 encoding flags for details.
3265 Terminal: If your terminal runs this encoding, make sure to indicate
3266 this properly with an environment variable (LC_* / LANG). See Terminal
3267 environment for details.
3268
3269 Input method
3270 Mined supports a built-in input method for Hebrew. Select it from the
3271 Input method menu.
3272
3273 Accented character input support
3274 Not yet implemented. Tell me if you have a proposal or preference for
3275 assignment of accent prefix functions to the keyboard.
3276
3277 Bidi support
3278 Mined has implicit primitive support for visual right-to-left input
3279 which is however not the preferred storage method as complete right-to-
3280 left text should be stored in logical order.
3281 Mined auto-detects and cooperates with a bidi terminal (mlterm) in
3282 which case visual right-to-left input is disabled.
3283 A full context-aware bidi display and editing technique would still
3284 have to be integrated into mined. Tell me if you are interested.
3285
3286 Smart replacement
3287 As a special case of smart dash input replacement (enabled together
3288 with smart quotes), mined inserts Hebrew Maqaf as a dash in the context
3289 of Hebrew letters. <!p>
3290
3291 Chinese
3292 Character sets
3293 In addition to Unicode, mined supports Big5 with HKSCS extension
3294 (extending CP950), GB18030 (extending CP936, extending GKB, including
3295 EUC-CN), and CNS (EUC-TW) multi-byte character sets. To view and edit
3296 a file in one of these encodings, select it from the Encoding menu
3297 (section "Chinese"), or use the respective command line parameter -EB
3298 or -EG or -EC. See Character encoding flags for details.
3299 Auto-detection: Big5 and GB18030 text encoding are also auto-detected
3300 when opening a file (with a certain success rate). Set the environment
3301 variable MINEDDETECT="BG" to constrain auto-detection to Big5 and
3302 GB18030 encodings. See Mined configuration for details.
3303 Terminal: Mined supports native CJK terminals; make sure to indicate
3304 this properly with an environment variable (LC_* / LANG). See Terminal
3305 encodings support for details on detection and handling of CJK terminal
3306 features.
3307
3308 Input method
3309 Mined provides the following built-in input methods for Chinese:
3310 Pinyin, Cangjie, WuBi, 4Corner, Boshiamy, and special support for a
3311 Radical/Stroke lookup input method. Select the input method of your
3312 preference from the Input method menu.
3313
3314 Han character information display
3315 Mined provides special support for display of Han character information
3316 according to the Unihan database. It comprises semantic information and
3317 Mandarin, Cantonese, Hanyu Pinlu, Hanyu Pinyin, XHC Hanyu pinyin, and
3318 Tang dynasty pronunciation.
3319
3320 Accented character input support
3321 For Latin-based Pinyin transcription of Chinese, the usual accent pre‐
3322 fix functionality is available. <!p>
3323
3324 Japanese
3325 Character sets
3326 In addition to Unicode, mined supports JIS character sets in EUC-JP or
3327 Shift_JIS (CP932) multi-byte encoding →NEW→ and EUC-JIS-2004 (X 0213)
3328 or Shift_JIS-2004 (X 0213) encoding. To view and edit a file in one of
3329 these encodings, select it from the Encoding menu (section "Japanese"),
3330 or use the respective command line parameter -EJ or -ES. See Character
3331 encoding flags for details.
3332 Auto-detection: EUC-JP/-JIS and Shift_JIS text encodings are also auto-
3333 detected when opening a file (with a certain success rate). Set the
3334 environment variable MINEDDETECT="JS" to constrain auto-detection to
3335 EUC-JP and Shift_JIS encodings, →NEW→ or MINEDDETECT="Xx" to constrain
3336 auto-detection to EUC-JIS X 0213 and Shift_JIS X 0213 encodings. See
3337 Mined configuration for details.
3338 Terminal: Mined supports native CJK terminals; make sure to indicate
3339 this properly with an environment variable (LC_* / LANG). See Terminal
3340 encodings support for details on detection and handling of CJK terminal
3341 features.
3342
3343 Input method
3344 Mined provides the following built-in input methods for Japanese: Hira‐
3345 gana, Katakana, TUT roma, and special support for a Radical/Stroke
3346 lookup input method. Select the input method of your preference from
3347 the Input method menu.
3348 Mined does not implement, however, advanced Japanese input methods that
3349 provide semantics-based Hanja input; for these, you will have to set up
3350 or use an external input method with your operating environment, which
3351 is then handled by the terminal which delivers ready-composed charac‐
3352 ters transparently to the application.
3353
3354 Han character information display
3355 Mined provides special support for display of Han character information
3356 according to the Unihan database. It comprises semantic information and
3357 Japanese and Sino-Japanese pronunciation.
3358
3359 Accented character input support
3360 For Latin-based Romaji transcription of Japanese, the usual accent pre‐
3361 fix functionality is available. <!p>
3362
3363 Korean
3364 Character sets
3365 In addition to Unicode, mined supports UHC (CP949, including EUC-KR)
3366 and Johab multi-byte character sets. To view and edit a file in one of
3367 these encodings, select it from the Encoding menu (section "Korean"),
3368 or use the respective command line parameter -EK or -EH. See Character
3369 encoding flags for details.
3370 Auto-detection: UHC text encoding is also auto-detected when opening a
3371 file (with a certain success rate). Set the environment variable
3372 MINEDDETECT="K" to constrain auto-detection to UHC encoding. See Mined
3373 configuration for details.
3374 Terminal: Mined supports native CJK terminals; make sure to indicate
3375 this properly with an environment variable (LC_* / LANG). See Terminal
3376 encodings support for details on detection and handling of CJK terminal
3377 features.
3378
3379 Input method
3380 Mined provides the following built-in input methods for Korean: Hangul,
3381 Hanja, and special support for a Radical/Stroke lookup input method.
3382 Select the input method of your preference from the Input method menu.
3383
3384 Han character information display
3385 Mined provides special support for display of Han character information
3386 according to the Unihan database. It comprises semantic information and
3387 Hangul and Korean pronunciation. <!p>
3388
3389 Vietnamese
3390 Character sets
3391 In addition to Unicode, mined supports VISCII, TCVN and →NEW→ Windows
3392 Vietnamese (CP1258) character sets. To view and edit a file in one of
3393 these encodings, select it from the Encoding menu (section "Viet‐
3394 namese"), or use the respective command line parameter -EV or -EN. See
3395 Character encoding flags for details.
3396 Auto-detection: VISCII text encoding is also auto-detected when opening
3397 a file (with a certain success rate). Set the environment variable
3398 MINEDDETECT="V" to constrain auto-detection to VISCII encoding. See
3399 Mined configuration for details.
3400 Terminal: If your terminal runs this encoding, make sure to indicate
3401 this properly with an environment variable (LC_* / LANG). See Terminal
3402 environment for details.
3403
3404 Input method
3405 Mined provides the following built-in input methods for Vietnamese: VNI
3406 and VIQR. Select the input method of your preference from the Input
3407 method menu.
3408 It may be more convenient, however, to use the extensive accented char‐
3409 acter input support provided by mined together with a normal Latin-
3410 based keyboard (so without a keyboard-mapping input method), see Char‐
3411 acter input support for Vietnamese below.
3412
3413 Character input support
3414 Mined provides input support for multiple accented characters as used
3415 in Vietnamese, as well as convenient accent prefix functions for combi‐
3416 nations of two Vietnamese accents. Modified Ctrl-/Alt-/Alt-Ctrl- digit
3417 keys are used for Vietnamese accent prefix functions. Alternatively,
3418 mnemonic character input can be used. See Accented and mnemonic input
3419 support for details, and see below for some introducing comments.
3420
3421 An accent prefix can either be applied to the plain Latin base letter,
3422 or to a precomposed Vietnamese letter which already has one of the
3423 accents. These are:
3424
3425 U+00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX
3426
3427 U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX
3428
3429 U+00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX
3430
3431 U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX
3432
3433 U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX
3434
3435 U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX
3436
3437 U+0102 LATIN CAPITAL LETTER A WITH BREVE
3438
3439 U+0103 LATIN SMALL LETTER A WITH BREVE
3440
3441 U+01A0 LATIN CAPITAL LETTER O WITH HORN
3442
3443 U+01A1 LATIN SMALL LETTER O WITH HORN
3444
3445 U+01AF LATIN CAPITAL LETTER U WITH HORN
3446
3447 U+01B0 LATIN SMALL LETTER U WITH HORN
3448
3449 Examples: Suppose your keyboard is mapped to have Vietnamese characters
3450 like A with circumflex available. Then:
3451
3452 ^V Â ' (Ctrl-V A-circumflex apostrophe)
3453 enters the composite character U+1EA4 (A with circumflex and
3454 acute)
3455
3456 ^V ~ Ô (Ctrl-V O-circumflex tilde)
3457 enters the composite character U+1ED6 (O with circumflex and
3458 tilde)
3459
3460 Ctrl-6 A
3461 enters U+00C2 (A with circumflex)
3462
3463 Alt-4 A
3464 enters U+1EAA (A with circumflex and tilde)
3465
3466 Ctrl-Alt-3 A
3467 enters U+1EB2 (A with breve and hook above)
3468
3469 Ctrl-Alt-3 O
3470 enters U+1EDE (O with horn and hook above)
3471
3472 Note: Using composite base characters in mined character mnemonics or
3473 accent prefix combinations as just described also works in non-UTF-8
3474 text encoding mode (e.g. in VISCII or TCVN encoding). <!p>
3475
3476 Thai
3477 Character sets
3478 In addition to Unicode, mined supports the TIS-620 character set (with
3479 CP874 extensions). To view and edit a file in this encoding, select it
3480 from the Encoding menu (section "Thai"), or use the respective command
3481 line parameter -ET. See Character encoding flags for details.
3482 Terminal: If your terminal runs this encoding, make sure to indicate
3483 this properly with an environment variable (LC_* / LANG). See Terminal
3484 environment for details.
3485
3486 Input method
3487 Mined provides a built-in Thai input method. Select the input method
3488 from the Input method menu.
3489
3490 Accented character input support
3491 Not yet implemented. Tell me if you have a proposal or preference for
3492 assignment of accent prefix functions to the keyboard.
3493
3495 This chapter describes mined features for character manipulation and
3496 display of characters and character properties. Unicode and CJK spe‐
3497 cific features are described in the respective chapters. Character
3498 input support is described separately in the subsequent chapter.
3499
3500 Script highlighting
3501 It may be desirable to distinguish characters in different script by
3502 displaying their glyphs in different colours. (This especially allows
3503 to distinguish easier between similar glyphs as they occur in
3504 Latin/Greek/Cyrillic scripts.)
3505 Script highlighting is currently pre-configured for Greek and Cyrillic.
3506 It uses the terminal's 256-colour mode if available.
3507 The scripts to highlight and the colour values to use can be configured
3508 at compile-time. See Mined configuration below.
3509
3510 Combining characters
3511 When editing text in Unicode or any encoding that contains combining
3512 characters, mined supports display and editing of combining and com‐
3513 bined characters.
3514
3515 (Note: Terminal support for combining characters is auto-detected;
3516 additional command line options are available in case this fails.)
3517 If mined operates on a terminal that handles combining characters, it
3518 offers two editing modes: combined or separated. They can be toggled
3519 by clicking the Combining display flag in the Quick Options (Mode indi‐
3520 cation) flags area (right part of the top screen line), or by the menu
3521 entry "Options - Combined display"; separated display mode can also be
3522 selected by the command line option -c.
3523
3524 Combined display and editing mode (Combining display flag ç)
3525 Combined characters are displayed as intended (i.e., combined).
3526
3527 · Micro movement into combined characters:
3528
3529 · The cursor can be moved into a combined character with
3530 Ctrl-cursor-left and Ctrl-cursor-right, or ^V cursor-left
3531 and ^V cursor-right.
3532
3533 · You can determine the exact position of the cursor if
3534 permanent character info is switched on (by HOP ESC u or
3535 with HOP "Toggle Char info" in the Options menu).
3536
3537 · Partially editing combined characters:
3538
3539 · If the cursor is on a combined character, delete next
3540 character (e.g. Del on small keypad) will delete the
3541 whole combined character, with all combining accents.
3542
3543 · If the cursor is on a combined character, Ctrl-Del will
3544 delete only the base character, leaving combining accents
3545 which may then be combined with the previous character.
3546
3547 · If the cursor is within a combined character, delete next
3548 character will delete the current combining accent only.
3549
3550 · Smart backspacing: Ctrl-Backarrow or F5 Backarrow
3551 ("Delete single") behind or within a combined character
3552 will only delete the rightmost combining accent (preced‐
3553 ing the cursor position) while Backarrow would delete the
3554 whole combined character.
3555 Note:→NEW→ Configuration option plain_BS (command line
3556 option +Bp) switches the Backarrow key from smart
3557 backspacing to plain backspacing, i.e. no auto-undent and
3558 only delete one combining character of a combined charac‐
3559 ter. Use Shift-Control-Backarrow to perform smart
3560 backspacing then.
3561
3562 · You can also position the cursor as described above and
3563 use copy-and-paste operations.
3564 Note: Ctrl-cursor-left and Ctrl-cursor-right only work if these keys
3565 are configured to emit distinguished escape sequences with Control key
3566 held down. With xterm, this works by default. With rxvt, use the
3567 small keypad cursor keys, or enable Control on the right keypad with
3568 the sample configuration file Xdefaults.mined in the Mined runtime sup‐
3569 port library. With mlterm, enable this with the sample configuration
3570 file mlterm/key in the Mined runtime support library. Ctrl-Backarrow
3571 can also be configured to work with xterm but doesn't appear to work
3572 with rxvt or mlterm, use F5 Backarrow instead.
3573
3574 Separated display and editing mode (Combining display flag `)
3575 Combined characters are separated into base character and com‐
3576 bining character(s) for display and editing. Combining charac‐
3577 ters are indicated with coloured background.
3578
3579 · In separated display mode, all cursor and text modifica‐
3580 tion operations work on the combining parts as displayed.
3581
3582 Input support: For input of Unicode combining characters,
3583 see Combining character input below.
3584
3585 Note: Unicode combining characters (according to the
3586 most recent version of Unicode known to mined) that are not han‐
3587 dled as combining characters by the terminal (which might imple‐
3588 ment an older version of Unicode) are always displayed like in
3589 separated display mode.
3590
3591 Note: Isolated combining characters, i.e. those
3592 appearing at a line beginning or after a TAB character, are
3593 always displayed like in separated display mode.
3594
3595 Character information display
3596 The command ESC u displays character encoding information in the bottom
3597 status line (conforming to ISO 14755); it displays the character code
3598 in the selected encoding (UTF-8 byte sequence in UTF-8 mode) and the
3599 ISO-10646 (Unicode) value of the current character, as well as Unicode
3600 script range and character category, width, and combining information.
3601 The Unicode value is displayed with 4 hexadecimal digits if the charac‐
3602 ter is in the Unicode BMP (Basic Multilingual Plane, 16 bit), with 6
3603 digits if it is a Unicode character outside of the BMP, and 8 digits if
3604 it is an ISO-10646 character outside of the Unicode range. The infor‐
3605 mation displayed also indicates all kinds of encoding irregularities.
3606 For the Unicode data version used for character properties see the
3607 mined change log.
3608
3609 Permanent display of character information is toggled with HOP ESC u or
3610 by selecting "Char info" in the Info menu (or with HOP "Toggle Char
3611 info" in the Options menu).
3612
3613 In the Info menu, attributes that are shown with the character informa‐
3614 tion can be selected: Unicode script name, Unicode character name,
3615 →NEW→ Unicode named sequence, Unicode character decomposition, list of
3616 input mnemonics. Note that Unicode named sequence information only
3617 applies to a small number of named sequences, otherwise normal charac‐
3618 ter information is shown instead; also, it is only shown in combined
3619 display mode, so normal information can be quickly toggled by switching
3620 to separated display mode (middle-click on ç flag).
3621
3622 Character information display can be selected with the +?c command line
3623 parameter (see parameter description for further options). To prese‐
3624 lect continuous character information display, append +?c to the envi‐
3625 ronment variable MINEDOPT or enable option "display_charinfo" in the
3626 runtime configuration file $HOME/.minedrc.
3627
3628 Han character information display
3629 CJK-specific character information (semantic and pronuciation hints) is
3630 described below in section Han character information display.
3631
3632 Character conversion features
3633 Case conversion
3634 The case conversion functions (ESC C, HOP ESC C, F11, HOP F11, Shift-
3635 F3) cover the full Unicode range. They also handle special cases like
3636 Greek final sigma, optionally Turkish "i", case mapping to multiple
3637 characters, and Lithuanian special conditions. Japanese characters are
3638 toggled between Hiragana and Katakana by the same functions.
3639 Shift-F3 cycles casing of a word between all small, title case (begin‐
3640 ning capital), and all capitals. It handles title casing, using Unicode
3641 title case characters for the first character when appropriate. For
3642 Japanese script, it toggles the word between Hiragana and Katakana.
3643 The case mapping is based on the most recent Unicode version compiled
3644 into mined (for the actual version see the mined change log and the
3645 Options menu About command). It is applicable in all text encodings.
3646
3647 Line end type conversion
3648 In the Options menu, a submenu "Lineend type..." offers functions to
3649 convert the line end of the current line to LF or CRLF, or to convert
3650 the line end type of all lines that do not have a special line end to
3651 LF or CRLF.
3652
3653 Numeric conversion
3654 Commands are available to insert characters corresponding to a hexadec‐
3655 imal character code or hexadecimal/octal/decimal Unicode value con‐
3656 tained in the text, to insert a respective value corresponding to the
3657 current character, or to toggle the preceding character and its hexa‐
3658 decimal Unicode value (Alt-x). For details, see the section Code con‐
3659 version in the Command reference.
3660
3661 Numeric entity (HTML/URL) conversion
3662 HTML numeric character entities (e.g. @ or @ for @) or URL
3663 escape notation (e.g. %20 for space, %C3%86 for Æ) can be converted
3664 into unescaped characters. Use one of the Mnemonic character substitu‐
3665 tion commands (ESC _ or national variants) described below.
3666
3667 Mnemonic conversion
3668 A character mnemonic at the cursor position can be replaced with its
3669 associated character. Use one of the Mnemonic character substitution
3670 commands (ESC _ or national variants) described below.
3671
3672 Encoding conversion support
3673 A special feature offers interactive conversion to or from Unicode
3674 character encoding, see Encoding conversion support in chapter Unicode
3675 support below.
3676
3677 Unicode Copy/Paste buffer
3678 The Copy/Paste buffer can be operated in Unicode mode in which case it
3679 converts between text edited in different character encodings. See
3680 Unicode Copy/Paste buffer conversion below.
3681
3682 Smart quotes
3683 In Smart quotes mode, straight (double or single) quote characters «"»
3684 or «'» are automatically substituted with an opening or closing typo‐
3685 graphic quotation mark, depending on the text context, or an apostrophe
3686 where appropriate. Also, an acute accent key enters a typographic
3687 apostrophe. →NEW→ Alt-" or Alt-' enter the respective quotation marks
3688 of the previous or standby style (see below).
3689 Quote marks style selection:
3690
3691 · Select the quotation marks style to be applied from the
3692 Smart Quotes selection menu (open with ESC Q or Alt-Q or
3693 right-click on the smart quotes indication in the flags
3694 area in the top screen line).
3695
3696 · To toggle between the current and the previous smart
3697 quotes style, middle-click or double-click the smart
3698 quotes flag or select "standby" from the menu.
3699
3700 · →NEW→ To select the smart quotes style suitable for the
3701 current locale, select "by locale" from the menu. This is
3702 also achieved with the configuration option smart_quotes
3703 or the command line option -q.
3704 Quotation marks style can be preselected by either of the mechanisms
3705 described below.
3706
3707 The smart quotes left/right selection algorithm considers both the text
3708 context and the state (whether an open quote was inserted before) to
3709 automatically support smart quotes also in CJK text, and to try to dis‐
3710 tinguish an apostrophe from a quote mark. →NEW→ At a line beginning,
3711 always a left (opening) quotation mark is chosen, supporting the habit
3712 in some languages to repeat opening quote marks for each new paragraph
3713 inside a quotation.
3714 French quotation marks spacing is automatically applied (using no-break
3715 space U+00A0) if French style has been selected from the menu or by
3716 locale.
3717 A typographic apostrophe can also be inserted with HOP ' (^G ') or with
3718 HOP ´ (acute accent), regardless of smart quotes mode. In smart quotes
3719 mode, a typographic apostrophe is also inserted on input of ´ (acute
3720 accent).
3721 Straight quotes or accent marks (" ' ` ´) can be inserted with mnemonic
3722 compose pairs (^V ^ " or ^V ^ ' or ^V ^ ` or ^V ^ ´, or ^V"# or ^V'# or
3723 ^V`# or ^V´# respectively).
3724 Smart quotes are applicable in all text encodings provided the desired
3725 quote marks are contained in the selected encoding.
3726
3727 When a file is loaded, mined tries to determine the applicable quota‐
3728 tion marks style in two ways: With file position memory (see File info:
3729 Memory of file position and editing style parameters above), mined also
3730 remembers the last selected smart quotes mode for the file. If that
3731 information is not available, mined auto-detects existing quotation
3732 marks in the file and adjusts its smart quotes mode accordingly. The
3733 option -q overrides this detection.
3734
3735 →NEW→ With command-line option -q alone, quotation marks style is
3736 derived from locale information (environment variables →NEW→ LANGUAGE,
3737 TEXTLANG, LC_ALL, LC_CTYPE, LANG), or from a locale value given with
3738 the option as -q=locale. For some languages, two styles are prede‐
3739 fined, using the primary style as active smart quotes style, and the
3740 secondary or alternate style as standby style, for quick toggling with
3741 a middle mouse click on the Quotes flag (or using the standby entry
3742 from the Quote marks menu). The active quote marks style can also be
3743 derived explicitly from the locale with the Quotes menu option "by
3744 locale".
3745 Option +q exchanges primary and alternate quotation marks style, set‐
3746 ting the alternate style active.
3747 Without an option -q, the primary locale-derived quote marks style is
3748 always set as standby style to be quickly available.
3749 Note: Language-dependent quotations marks styles are determined using
3750 the compile-time configuration file quotes.cfg. See Quotation Marks
3751 Styles on the mined web site for a listing.
3752 Note: Smart quotes style can also be preselected giving the desired
3753 quotation marks directly, either as command line option like -q="«»" or
3754 with the environment variable MINEDQUOTES (see under Environment con‐
3755 figuration hints below); this overrides both auto-detection and the
3756 preference saved with the cursor position.
3757
3758 Smart text replacements: apostrophe, smart dashes, arrows and glottal
3759 stop
3760 If smart quotes are active, some other smart input text replacements
3761 are applied to respective characters being entered. (Replacement of
3762 subsequent character input sequences is suppressed during a repeat com‐
3763 mand entering multiple characters.)
3764
3765 -- if preceded by a Space character: en dash (U+2013)
3766 otherwise: em dash (U+2014)
3767
3768 - or -TAB
3769 →NEW→ if leading a line (only white space before): en dash
3770 (U+2013)
3771
3772 - →NEW→ if embedded in spaces: minus sign (U+2212)
3773
3774 - if an adjacent character is in the Hebrew script range: Hebrew
3775 hyphen mark Maqaf (U+05BE)
3776
3777 <- leftwards arrow (U+2190)
3778
3779 -> rightwards arrow (U+2192)
3780
3781 <> left right arrow (U+2194)
3782
3783 ´ apostrophe (U+2019 right single quotation mark)
3784
3785 ` glottal stop (U+02BB modifier letter turned comma)
3786
3787 Note: →NEW→ Mined smartly avoids inappropriate placement of smart
3788 replacements as well as double spaces by redundant combination of smart
3789 spaces and explicitly entered spaces, so you can seamlessly type either
3790 "bonjour" or " bonjour " to enter « bonjour » with French quotes, or a
3791 -- b to enter an en dash although a space is initially inserted after
3792 it.
3793
3795 Some character input support features support international scripts
3796 (especially with Keyboard Mapping and Input Methods), others mainly
3797 address composite characters. For the latter, it is useful to explain
3798 a few notions:
3799
3800 Combining character:
3801 A character (usually in Unicode) that is defined to combine with
3802 the previous character into a combined character, to be dis‐
3803 played as a single glyph (visual unit).
3804
3805 Combined character:
3806 The glyph combination of a Unicode character (base character)
3807 with one or more Unicode combining characters.
3808
3809 Composed character (or composite character):
3810 A character that has one or more accents composed into it, or is
3811 otherwise composed of components, like the ae ligature, to be
3812 displayed as a single glyph. It can be a single Unicode charac‐
3813 ter or a Unicode combined character consisting of a Unicode base
3814 character and one or two Unicode combining characters.
3815
3816 Accented character (or diacritic character):
3817 A special case of a composite character where a letter is com‐
3818 posed with one or more accents.
3819
3820 Compose key:
3821 A number of system and keyboard vendors have equipped their key‐
3822 boards with a "Compose" or "Combine" key. This key - when con‐
3823 figured and interpreted properly by the operating environment -
3824 produces a composed character which is then provided as input to
3825 the application.
3826
3827 Accented and mnemonic input support
3828 Function keys or character mnemonics can be used to enter accented or
3829 other composite characters. (This is also known as digraph function
3830 with some editors.)
3831 These character composition functions also work on the prompt line.
3832 (Any composite character configured on your keyboard can of course also
3833 be entered directly or using the Compose/Combine key of your keyboard.)
3834
3835 Note that mnemonic input and accent prefix keys can be
3836 combined in flexible ways, e.g.
3837
3838 ^V ' Ctrl-F6 e
3839 or
3840
3841 F6 ^V e ^
3842 which both enter U+1EBF (e with circumflex and acute)
3843
3844 Mnemonic input can be applied recursively to compose a character
3845 for further composition, e.g.
3846
3847 ^V ' ^V a e
3848 enters U+01FD (æ with acute)
3849
3850 Accent prefix keys can use an already precomposed base
3851 character for further composition; if this does not match an
3852 explicitly known mnemonic, the base character is decomposed
3853 first to find a match, e.g.
3854
3855 F6 ü or
3856
3857 F5 ú which both enter U+01D8 (u with diaeresis and acute)
3858
3859 Up to three accent prefix keys can be combined by entering
3860 them in sequence in order to compose characters with multiple
3861 accents, e.g.
3862
3863 F5 F6 u
3864 enters U+01D8 (u with diaeresis and acute)
3865
3866 Ctrl-2 Ctrl-7 a
3867 enters U+1EB1 (a with grave and breve)
3868
3869 Ctrl-- Ctrl-: u
3870 enters U+1E7B (u with macron and diaeresis)
3871
3872 Ctrl-, Ctrl-( e
3873 enters U+1E1D (e with cedilla and breve)
3874
3875 Alt-7 Ctrl-, < alpha >
3876
3877 Alt-F6 Shift-F6 Ctrl-, < alpha >
3878
3879 Ctrl-< Ctrl-` Ctrl-, < alpha >
3880 all enter U+1F82 (alpha with psili and varia and ypogegrammeni)
3881 where < alpha > indicates the Greek letter alpha, which may e.g.
3882 be entered by selecting the Greek input method and typing the
3883 "a" key
3884
3885 Accent prefix keys
3886 General notes on using keys with Control, Shift, Alt modifiers:
3887 Especially for accented character input, mined makes use of key
3888 combinations modified with Control, Shift, Alt, or a combination
3889 of them. Some of these key combinations may be limited by local
3890 environment, especially the window system, or may need extra
3891 configuration to be enabled.
3892
3893 · Hint on input of Alt/Ctrl-modified function keys: These
3894 are often intercepted by window systems for special func‐
3895 tions.
3896
3897 · Alt: Alternatively to using the Alt key, the ESC
3898 key can be used as a prefix to a function key to
3899 achieve the same modified function, e.g. ESC F6
3900 instead of Alt-F6. Note, however, that there is
3901 an ESCAPE delay (default 450 ms) during which the
3902 subsequent function key should be pressed.
3903
3904 · Control: Alternatively to using the Control key,
3905 Ctrl-V can be used as a prefix to a function key
3906 to achieve the same modified function, e.g. Ctrl-V
3907 F6 instead of Ctrl-F6.
3908 Specific advice:
3909
3910 Window system
3911 suppresses
3912 remedy
3913
3914 KDE Ctrl-Fn, Ctrl-Shift-Fn, Alt-Fn
3915 press the "Window key" additionally at the same time,
3916 e.g. Window-Alt-F6 or use ESC or Ctrl-V prefixes, e.g.
3917 ESC F6 (be fast!), Ctrl-V Shift-F5
3918
3919 gnome-wm
3920 Alt-F5
3921 Window-Alt-F5 or ESC F5 (be fast!)
3922
3923 fvwm2 Alt-Fn
3924 ESC Fn (be fast!)
3925
3926 Exceed Alt-Fn, Alt-Shift-Fn
3927 ESC Fn, ESC Shift-Fn (be fast!)
3928 or: configure ("Tools - Configuration... - Keyboard
3929 Input") "Windows Modifier Behavior - Alt Key:" and select
3930 "To X"
3931
3932 · Modified digit keys (e.g. Alt-2) as well as Ctrl-modified
3933 punctuation keys (e.g. Ctrl-;) are used as extended and
3934 intuitive accent prefix keys. To enable them, either use
3935 a recent version of xterm (216) or configure them with
3936 your terminal.
3937 Configuration instructions for older versions of xterm
3938 and for rxvt can be found in the sample file Xde‐
3939 faults.mined in the Mined runtime support library.
3940
3941 · Note: In rxvt, Ctrl-modified and shifted punctuation keys
3942 (if enabled by configuration following the hint above)
3943 interfere with ISO 14755 input mode of rxvt; if the fol‐
3944 lowing key is entered twice, that mode is aborted and the
3945 modified punctuation key becomes effective as an accent
3946 prefix in mined.
3947
3948 · Warning: The Alt-F4 key combination should not accidently
3949 be hit as many window managers use it to kill the termi‐
3950 nal window!
3951
3952 The following table lists the accent prefix keys:
3953
3954 F5 (Sun: R4/-) diaeresis (umlaut) / dialytika
3955
3956 Shift-F5
3957 (Sun: R5/÷) tilde / perispomeni
3958
3959 Ctrl-F5
3960 (Sun: R6/×) ring / cedilla / iota (ypogegrammeni)
3961
3962 Alt-F5 stroke
3963
3964 Ctrl-Shift-F5
3965 ogonek / prosgegrammeni
3966
3967 Alt-Shift-F5
3968 breve / vrachy
3969
3970 F6 (Sun: R3) acute (accent d'aigu) / tonos
3971
3972 Shift-F6
3973 (Sun: R1) grave / varia
3974
3975 Ctrl-F6
3976 (Sun: R2) circumflex / oxia
3977
3978 Alt-F6 caron / psili
3979
3980 Ctrl-Shift-F6
3981 macron / descender
3982
3983 Alt-Shift-F6
3984 dot above / dasia
3985
3986 Ctrl-1 acute
3987
3988 Ctrl-2 grave
3989
3990 Ctrl-3 hook above
3991
3992 Ctrl-4 tilde
3993
3994 Ctrl-5 dot below
3995
3996 Ctrl-6 circumflex
3997
3998 Ctrl-7 breve
3999
4000 Ctrl-8 horn
4001
4002 Ctrl-9 stroke
4003
4004 Ctrl-0 ring / cedilla
4005
4006 Alt-1 circumflex and acute
4007
4008 Alt-2 circumflex and grave
4009
4010 Alt-3 circumflex and hook above
4011
4012 Alt-4 circumflex and tilde
4013
4014 Alt-5 circumflex and dot below
4015
4016 Ctrl-Alt-1
4017 breve/horn and acute (composes following A/a with breve and
4018 acute, or following O/o or U/u with horn and acute)
4019
4020 Ctrl-Alt-2
4021 breve/horn and grave
4022
4023 Ctrl-Alt-3
4024 breve/horn and hook above
4025
4026 Ctrl-Alt-4
4027 breve/horn and tilde
4028
4029 Ctrl-Alt-5
4030 breve/horn and dot below
4031
4032 Alt-6 psili and oxia
4033
4034 Ctrl-Alt-6
4035 dasia and oxia
4036
4037 Alt-7 psili and varia
4038
4039 Ctrl-Alt-7
4040 dasia and varia
4041
4042 Alt-8 psili and perispomeni
4043
4044 Ctrl-Alt-8
4045 dasia and perispomeni
4046
4047 Ctrl-' (Ctrl-apostrophe) acute (d'aigu) / tonos
4048
4049 Ctrl-´ (Ctrl-acute) acute (d'aigu) / oxia
4050
4051 Ctrl-` (Ctrl-grave) grave / varia
4052
4053 Ctrl-^ circumflex / oxia
4054
4055 Ctrl-~ tilde / perispomeni / titlo
4056
4057 Ctrl-: diaeresis (umlaut) / dialytika
4058
4059 Ctrl-" diaeresis (umlaut) / dialytika
4060
4061 Ctrl-, cedilla / ring / iota (ypogegrammeni)
4062
4063 Ctrl-/ stroke
4064
4065 Ctrl-- (Ctrl-minus) macron / descender
4066
4067 Ctrl-< caron / psili
4068
4069 Ctrl-. dot above / dasia (with i or j: dotless)
4070
4071 Ctrl-( breve / vrachy
4072
4073 Ctrl-; ogonek / prosgegrammeni / tail / tick / upturn
4074
4075 Ctrl-) inverted breve
4076
4077 Ctrl-& hook
4078
4079 Ctrl-- Ctrl-&
4080 middle hook
4081
4082 Note: If your keyboard assignment provides its own accent prefix keys
4083 ("dead keys"), pressing the key twice usually delivers the correspond‐
4084 ing spacing character which can then be used for the extended accent
4085 prefix functionality of mined; e.g. hold Control, then press ´ (acute
4086 key) twice, to invoke the acute/oxia prefix function of mined.
4087
4088 Note: For combining multiple accents, in most
4089 cases their order does not matter. As an exception, to combine
4090 dot above and macron, enter prefix keys in this order, as s
4091 macron and dot above will be interpreted as dot below.
4092
4093 dot macron
4094 e.g. Ctrl-. Ctrl-- dot above and macron (on A or O)
4095
4096 macron dot
4097 e.g. Ctrl-- Ctrl-. dot below
4098
4099 Note: For the sake of accepting Ctrl--
4100 intuitively both as an accent prefix for macron as well as an
4101 accent modifier to place an accent below a letter, the macron
4102 accent prefix combined with another accent prefix key is also
4103 interpreted as applying that accent below. As a workaround to
4104 ambiguous cases, it has to be applied twice with diaeris for
4105 diaeresis below (U), and three times for line below.
4106
4107 macron macron diaeresis
4108 e.g. Ctrl-- Ctrl-- Ctrl-: diaeresis below
4109
4110 macron diaeresis
4111 e.g. Ctrl-- Ctrl-: macron and diaeresis
4112
4113 diaeresis macron
4114 e.g. Ctrl-: Ctrl-- diaeresis and macron
4115
4116 macron macron macron
4117 e.g. Ctrl-- Ctrl-- Ctrl-- line below
4118
4119 Note: Some accent prefix keys, when applied twice in
4120 sequence, are mapped to a single accent as follows:
4121
4122 acute acute
4123 e.g. F6 F6 double acute accent
4124
4125 grave grave
4126 e.g. Shift-F6 Shift-F6 double grave accent
4127
4128 macron macron
4129 e.g. Ctrl-- Ctrl-- bar/topbar
4130
4131 cedilla cedilla
4132 e.g. Ctrl-, Ctrl-, psili/comma below
4133
4134 Combining character input
4135 Unicode combining characters can be entered
4136 by applying accent prefix keys to the Tab key. They will be vis‐
4137 ually combined with the previous character by rules of Unicode
4138 (and by terminal implementation). Examples:
4139
4140 Ctrl-, Tab
4141 combining cedilla
4142
4143 F6 F6 Tab
4144 combining double acute accent
4145
4146 Special character input shortcuts
4147 Typographic quotation marks can be entered
4148 by applying accent prefix keys to the space key as follows, or
4149 using certain input mnemonics or shifted combinations (see
4150 below):
4151
4152 (twice) grave space
4153 (double) left quotation mark
4154
4155 (twice) acute space
4156 (double) right quotation mark
4157
4158 acute space
4159 e.g. F6 space or Ctrl-' space also serves for input of typo‐
4160 graphic apostrophe (or HOP ')
4161
4162 (twice) cedilla space
4163 (double) low-9 quotation mark
4164
4165 (twice) dot above space
4166 (double) high-reversed-9 quotation mark
4167
4168 ^V < < or ^V > >
4169 double angle quotation marks « »
4170
4171 ^V < space or ^V > space
4172 single angle quotation marks
4173
4174 " or ' outer or inner quotation mark of selected quote marks style
4175
4176 Alt-" or Alt-'
4177 →NEW→ outer or inner quotation mark of previous/standby quote
4178 marks style
4179
4180 Some characters are specifically mapped to special key
4181 combinations or specific applications of accent prefix keys for
4182 convenience or for Windows compatibility:
4183
4184 Ctrl-Shift-space
4185 no-break space (U+00A0)
4186
4187 Ctrl-@ a/A
4188 å/Å
4189
4190 Ctrl-& a/A
4191 æ/Æ
4192
4193 Ctrl-& o/O
4194 oe/OE ligature
4195
4196 Ctrl-& s
4197 ß
4198
4199 Ctrl-? ¿
4200
4201 Ctrl-! ¡
4202
4203 As with modified keys in general, these shortcuts may depend on proper
4204 terminal configuration according to the sample files in the Mined run‐
4205 time support library.
4206
4207 Line ends
4208 Key combinations are available to enter specific kinds of line ends
4209 (works in xterm and mintty):
4210
4211 Ctrl-Alt-Enter
4212 DOS or Unix line end (if editing Unix or DOS file, respectively)
4213
4214 Ctrl-Shift-Alt-Enter
4215 Mac line end
4216
4217 Ctrl-Enter
4218 Unicode line separator (if editing Unicode text)
4219
4220 Shift-Enter or HOP Enter
4221 Unicode paragraph separator (if editing Unicode text)
4222
4223 →NEW→ Control-Shift-Enter
4224 ISO 8859 Next Line (if editing Unicode or ISO 8859 text)
4225
4226 Also, the line end type of a line can be changed from a submenu
4227 of the Options menu.
4228
4229 Character input mnemonics
4230 The enter-control-code prefix (^V by default, ^Q in emacs keyboard
4231 mode, ^_ in Windows and pico keyboard modes, ^P in WordStar keyboard
4232 mode) can be used for mnemonic character composition. This covers
4233 accented characters and other mnemonics. The available mnemonics
4234 include RFC1345 mnemonics (extended to provide generic accent mnemonics
4235 for Unicode characters), mnemonics known from HTML and TeX, →NEW→ groff
4236 glyphs (roff special characters), and useful supplementary mnemonics.
4237 See Character Mnemos reference on the mined web site for a listing.
4238 Supplementary character mnemonics are consistent with generic RFC1345
4239 mnemonics; scripts covered are Latin, Greek, Cyrillic.
4240
4241 For accent compositions, mnemonic patterns (generic accent mnemonics)
4242 are listed in the following table; the respective letter to place the
4243 accent(s) on is indicated with an "x" below.
4244
4245 For Greek and Cyrillic accented characters, mnemonics combining accents
4246 with Greek or Cyrillic base characters are generated automatically from
4247 the UnicodeData.txt database.
4248 Greek and Cyrillic accent prefix keys reuse those for Latin accents and
4249 are listed in the sections on Greek and Cyrillic script support (see
4250 Language support).
4251
4252 generic mnemonic
4253 accent placed on the base character ("x")
4254
4255 x: or "x
4256 diaeresis (umlaut)
4257
4258 x' or ´x
4259 acute (accent d'aigu)
4260
4261 x! or `x
4262 grave
4263
4264 x> or ^x
4265 circumflex
4266
4267 x? or ~x
4268 tilde
4269
4270 x0 or °x
4271 ring above
4272
4273 x, cedilla
4274
4275 x- macron
4276
4277 x( breve
4278
4279 x. dot above / middle dot
4280
4281 x_ or _x
4282 line below
4283
4284 x/ stroke
4285
4286 x" or x''
4287 double acute
4288
4289 x; ogonek
4290
4291 x< caron
4292
4293 x2 hook above
4294
4295 x9 horn
4296
4297 x-> or >x
4298 circumflex below
4299
4300 x-. or .x
4301 dot below
4302
4303 x--. or .x-
4304 dot below and macron
4305
4306 x.-. or .x.
4307 dot below and dot above
4308
4309 x7 or x.-
4310 dot above and macron
4311
4312 x~- or x?-
4313 tilde and macron
4314
4315 x;- ogonek and macron
4316
4317 x:- diaeresis and macron
4318
4319 x-: macron and diaeresis
4320
4321 x-' macron and acute
4322
4323 x-! macron and grave
4324
4325 -x or x--
4326 topbar
4327
4328 --x or x--
4329 bar
4330
4331 ,x or x-,
4332 comma below / left hook
4333
4334 x# or x!!
4335 double grave
4336
4337 x) inverted breve
4338
4339 x& hook
4340
4341 %x retroflex hook
4342
4343 x,, palatal hook
4344
4345 x~~ middle tilde
4346
4347 x} curl
4348
4349 x-? or ?x
4350 tilde below
4351
4352 x--: or :x
4353 diaeresis below
4354
4355 x-0 or ox
4356 ring below
4357
4358 x-( or (x
4359 breve below
4360
4361 x(-. or .x(
4362 breve and dot below
4363
4364 x>-. or .x>
4365 circumflex and dot below
4366
4367 x9-. or .x9
4368 horn and dot below
4369
4370 x'. acute and dot above
4371
4372 x(' breve and acute
4373
4374 x(! breve and grave
4375
4376 x(2 breve and hook above
4377
4378 x(? breve and tilde
4379
4380 x<. caron and dot above
4381
4382 x,' cedilla and acute
4383
4384 x,( cedilla and breve
4385
4386 x>' circumflex and acute
4387
4388 x>! circumflex and grave
4389
4390 x>2 circumflex and hook above
4391
4392 x>? circumflex and tilde
4393
4394 x:' diaeresis and acute
4395
4396 x:< diaeresis and caron
4397
4398 x:! diaeresis and grave
4399
4400 x9' horn and acute
4401
4402 x9! horn and grave
4403
4404 x92 horn and hook above
4405
4406 x9? horn and tilde
4407
4408 x0' ring above and acute
4409
4410 x/' stroke and acute
4411
4412 x?' tilde and acute
4413
4414 x?: tilde and diaeresis
4415
4416 See also the description of the ^V function below for more input
4417 options.
4418 Two-letter mnemonics can also be entered in reverse order if this is
4419 unambiguous. Detection of reverse order mnemomics (two letters or one
4420 letter and multiple accents) as well as the generic accent mnemonics "
4421 ^ ` ~ ¨ ¯ ´ ¸ ° works with both short mnemonic entry (two-letter
4422 "^Vxy") and full mnemonic entry ("^V xy... ").
4423
4424 Mnemonic character substitution commands (ESC _ and national variants)
4425 replace characters at the cursor position with the respective character
4426 described by them. The following substitute descriptions are detected:
4427
4428 · Two-character mnemonic
4429
4430 · HTML character mnemonic
4431
4432 · HTML numeric character entity
4433
4434 · URL escape notation (bytewise hexadecimal with % pre‐
4435 fixes)
4436
4437 Keyboard Mapping and Input Methods
4438 Mined supports optional keyboard mapping which is especially useful for
4439 Unicode or CJK editing. When a keyboard mapping is selected, input
4440 characters or sequences are transformed to other characters or
4441 sequences, typically of a certain Unicode script range.
4442 Keyboard mappings for Greek, Cyrillic, Hebrew, Arabic, and major CJK
4443 input methods are preconfigured (they have been ordered in the Input
4444 Method menu according to the order of their respective basic ranges in
4445 the Unicode character set, or to the order of the letters of the usual
4446 abbreviation CJKV for East Asian text processing - Chinese, Japanese,
4447 Korean, Vietnamese). The Radical/Stroke input method provides addi‐
4448 tional functionality as a special case.
4449 Mined provides compile-time configuration of additional input methods;
4450 for this aim, further mappings can be generated using the mkkbmap
4451 script (from tables in various formats as used by other editors or sup‐
4452 plied by the m17n multilingualization package) and then compiled into
4453 mined. See Mined configuration below for details.
4454
4455 Keyboard mapping works as follows: You enter a key sequence that is
4456 mapped to a character sequence in the selected keyboard mapping table.
4457 The transformed character sequence is used as input.
4458 As some typical keyboard mappings contain ambigous key sequences where
4459 one may be a prefix of another, a short delay is applied in these cases
4460 to allow recognition of any such sequence to be mapped. After a time‐
4461 out, the shorter sequence already matching will be used; the timeout
4462 can be cut short by typing a Space key, the Space character itself will
4463 then be discarded. (The timeout value is 900 ms by default and can be
4464 configured with the environment variable MAPDELAY.)
4465
4466 Pick lists
4467 Some keyboard mappings, especially for CJK input methods, contain mul‐
4468 tiple choice mappings. In these cases, a selection menu is displayed
4469 that offers a "pick list" to select a character from. A character can
4470 be picked with a mouse click, or by navigation to the desired choice
4471 with the cursor keys (down/up, right/left, page down/up) or the '<'/'>'
4472 keys , or by just selecting the menu row first (cursor-up/down), then
4473 typing a digit 1-9 or 0 to select the numbered character.
4474 The Space key can be configured to either navigate to the next choice,
4475 the next row, or to select the current choice; see option -K. If the
4476 pick list is too large to fit on the screen, the menu will be scrol‐
4477 lable or pageable (using cursor keys).
4478
4479 While navigating through the pick list, the line and the selected item
4480 in the line are highlighted accordingly; if the current item is a CJK
4481 character, also its character information (description and optionally
4482 pronunciations as configured with the Han info option of the '?' infor‐
4483 mation flag menu) is displayed on the status line. If the item is a
4484 word comprising multiple CJK characters, the information for only the
4485 first of them is shown. The available information is derived from the
4486 Unihan database.
4487
4488 Keyboard mapping data are based on Unicode. So in CJK text mode, the
4489 selection menu (the pick list) may contain symbols that are not mapped
4490 to the active CJK text encoding. In a UTF-8 terminal, these will still
4491 be displayed but cannot be inserted. In a CJK terminal, some characters
4492 may not be displayed; an empty entry is shown instead. (In a non-Uni‐
4493 code, when editing text in a different encoding, there may even be
4494 characters that cannot be displayed in the selection menu but can be
4495 inserted.)
4496
4497 Input method selection
4498 An active and a standby input method (keyboard mapping) are maintained.
4499 They can be toggled quickly for text input, also on the prompt line.
4500 The current mapping is indicated as the Input Method flag by its two-
4501 letter script tag in the flags area, showing "--" if no mapping is
4502 active.
4503
4504 The active mapping can be selected in the following ways:
4505
4506 ESC k or Alt-k or Ctrl-Alt-F12 or left click on Input Method flag
4507 toggles between current (active) and previously selected
4508 (standby) input method (keyboard mapping)
4509 (Alt- toggle functions also work on prompt line)
4510
4511 HOP ESC k (or HOP Alt-k)
4512 clears input method, i.e. resets keyboard mapping to none
4513 (unmapped input)
4514
4515 ESC I or Alt-I or ESC K or Alt-K or Ctrl-F12
4516 opens the Input Method (Keyboard Mapping) selection menu
4517 (Alt-I or Alt-K or Ctrl-F12 also work on prompt line)
4518
4519 right click on Input Method flag
4520 opens the Input Method selection menu
4521
4522 HOP ESC K or HOP Alt-K
4523 cycles through available input methods / keyboard mappings
4524
4525 If file position memory is enabled (see File info: Memory of file
4526 position and editing style parameters above), mined also remembers the
4527 last selected input method for the file.
4528
4529 Note: For preselecting the active or standby input method by environ‐
4530 ment configuration, see about usage of the environment variable MINED‐
4531 KEYMAP below.
4532
4533 Note: Keyboard mapping is implicitly suppressed temporarily where it is
4534 not useful: during mnemonic character input, HTML marker input, command
4535 letter entry, help selection, yes/no prompting.
4536
4538 A character encoding for interpretation and handling of text is
4539 selected in one of the following ways:
4540
4541 · Interactively from the Encoding Menu (one of the flag
4542 menus), the encoding interpretation can be changed while
4543 editing; to open it, click with the right mouse button on
4544 the encoding indication in the flags area of the top
4545 line, or type Alt-E. See also Quick Options (Mode indi‐
4546 cation) flags for an overview. To toggle between the
4547 current and the previously selected encoding, click the
4548 Encoding flag with the left mouse button.
4549
4550 · Explicitly with a command line option -E... with a num‐
4551 ber of options to specify the desired text encoding (see
4552 the encoding command line options above).
4553
4554 · By auto-detection (heuristic counting of valid character
4555 codes). Note: The encodings to be taken into account for
4556 auto-detection can be configured with the MINEDDETECT
4557 environment variable. Set it to the desired list of sin‐
4558 gle-letter encoding indications to disable auto-detection
4559 of other encodings. Recognised encoding indications are
4560 mentioned in the list of auto-detected encodings below
4561 (they are the same as used with the -E parameter); UTF-8
4562 auto-detection cannot be disabled this way.
4563
4564 · By either environment variable →NEW→ LANGUAGE or TEXTLANG
4565 (see Locale configuration), which overrides other locale
4566 variable settings for the purpose of text encoding with‐
4567 out affecting them otherwise.
4568
4569 · By checking the locale environment (see Locale configura‐
4570 tion).
4571
4572 Auto-detected character encodings
4573 The following encodings are auto-detected unless overridden with a -E
4574 command line option (or -l or -u); the preceding one-letter tag can be
4575 used for auto-detection configuration with the environment variable
4576 MINEDDETECT:
4577
4578 - UTF-8
4579
4580 - UTF-16 encoding (big or little endian) with or without BOM (byte
4581 order marker)
4582
4583 8 any 8 bit encoding; this is auto-detected in a generic way; the
4584 actual 8 bit encoding assumed corresponds to the terminal encod‐
4585 ing if it is an 8 bit terminal; otherwise, Latin-1 is assumed;
4586 using "8" in the environment variable MINEDDETECT excludes all
4587 CJK encodings from auto-detection (but not UTF-8), and adds all
4588 8 bit encodings that are not included by default
4589
4590 L Latin-1 (ISO 8859-1)
4591
4592 W Windows Western ("ANSI", CP1252)
4593
4594 P PC Latin-1 (CP850)
4595
4596 M MacRoman
4597
4598 - CJK encoding (with unspecified mapping) is pre-auto-detected in
4599 a generic way; usually the actual CJK encoding is determined,
4600 too
4601
4602 G GB18030 (including CP936)
4603
4604 B Big5 (including CP950)
4605
4606 J EUC-JP
4607
4608 X →NEW→ EUC-JIS-2004 / EUC-JIS X 0213
4609
4610 S Shift_JIS / CP932
4611
4612 x →NEW→ Shift_JIS-2004 / Shift_JIS X 0213
4613
4614 K UHC / CP949 (including EUC-KR)
4615
4616 V VISCII
4617
4618 Note: For new files, the text encoding is derived from the locale envi‐
4619 ronment. →NEW→ With command line option -E- or -E auto-detection is
4620 disabled and text encoding is always derived from the locale environ‐
4621 ment.
4622
4623 CJK and mapped 8 bit encoding support
4624 Mined supports major CJK encodings as well as mapped 8 bit encodings
4625 ("character sets"). Mined has built-in support for a large number of 8
4626 bit encodings which appear to be in use or unique for a region. The
4627 Encoding menu has been structured with submenus to provide a concise
4628 menu selection feature.
4629
4630 →NEW→
4631 EBCDIC support Mined supports EBCDIC encoded files (transparently
4632 transforming them for internal handling) in the "bracket" codepage
4633 CP1047 as used by the UNIX System Services (USS) on IBM z/OS. CP1047
4634 is selected with command line option -E=cp1047 or -E.EBCDIC or -E:47.
4635 The character encoding flag indicates EBCDIC with "47".
4636 New files in EBCDIC encoding will by default use Next Line as line sep‐
4637 arators; add option -r to prefer LF.
4638 New lines can be added selecting LF or NL lineend type explicitly with
4639 Ctrl-Enter or Shift-Enter.
4640
4641 Combining characters
4642 In all character encodings handled by mined that contain combining
4643 characters, mined handles them and provides partial editing and an
4644 optional separated display mode as described above in section Combin‐
4645 ing characters. (CJK encodings EUC-JIS-2004, Shift_JIS-2004 and
4646 GB18030, Vietnamese TCVN and Windows Vietnamese (CP1258), Thai TIS-620,
4647 ISO Arabic, Mac Arabic, DOS Arabic, ISO Hebrew, Windows Hebrew). Han‐
4648 dling of combining text characters is properly coordinated with the set
4649 of combining characters supported by the terminal.
4650
4651 For Japanese X 0213 encodings, the character codes that map to two Uni‐
4652 code characters are supported.
4653
4654 Character code related commands
4655 The command ESC u displays character encoding information in the bottom
4656 status line (conforming to ISO 14755); this includes the character
4657 code, the mapped Unicode character value, and optionally script and
4658 character category information, character and named sequence name, com‐
4659 bining and Unicode decomposition information, and mined mnemonic input
4660 information, as configured in the Info menu. For CJK characters, also
4661 Han pronunciation and description information is available. See Char‐
4662 acter information display for details.
4663 With HOP ESC u, permanent display is toggled.
4664
4665 Other commands insert the code of the current character, insert a char‐
4666 acter taking its character code or Unicode value from the text, or tog‐
4667 gle the preceding character and its hexadecimal Unicode value (Alt-x).
4668 For details, see Code conversion in the Command reference.
4669
4670 Terminal environment for CJK encoding support
4671 Mined supports handling of CJK text encoding in any terminal (see Ter‐
4672 minal encoding support below). However, proper display of a wide range
4673 of CJK characters can obviously only work in either a Unicode terminal
4674 (recommended) or in a native CJK terminal that runs the same encoding
4675 as the selected text encoding.
4676
4677 CJK terminals: For terminals that support native CJK encodings (e.g.
4678 cxterm, kterm, hanterm), the terminal encoding assumed by mined can be
4679 specified with a command line option or by proper locale indication in
4680 one of the environment variables LC_ALL, LC_CTYPE or LANG. For avail‐
4681 able encodings, see Quick Options (Mode indication) flags. For usage
4682 of the +E options, see the description of the Terminal encoding options
4683 above. For usage of the locale environment variables, see Locale con‐
4684 figuration.
4685
4686 Note: In native CJK terminals, it is often troublesome to find a work‐
4687 ing encoding configuration and font setup, and the locale environment
4688 is not automatically set by the terminals. A collection of wrapper
4689 scripts is available ( http://towo.net/mined/terminals.tar.gz) to help
4690 with this setup problem and demonstrate the invocation of a number of
4691 different CJK and 8 bit encoded terminal windows, along with selection
4692 of suitable fonts and proper locale environment setting.
4693
4694 Note: Native CJK terminals have a different assumption of the range of
4695 character codes supported in an encoding family, e.g. Big5 / Big5 with
4696 HKSCS, GB2312 / GBK / GB18030, EUC-KR / UHC, EUC-JP without/with 3 byte
4697 codes. For compact handling, mined always assumes the largest superset
4698 of these encoding families. It does, however, have some features to
4699 prevent display garbage in most cases when a terminal supports a
4700 smaller character set: By default, mined does not display the following
4701 CJK character codes in a native CJK terminal, i.e. it displays a sub‐
4702 stitute indication for them (see CJK character display above):
4703
4704 · Unknown characters: CJK characters that have no defined
4705 mapping to a valid Unicode character. Use the +C option
4706 to override this display suppression and enforce trans‐
4707 parent display of unknown characters in a CJK terminal.
4708
4709 · Invalid characters: CJK characters that do not match the
4710 encoding scheme (e.g. wrt. to specified byte ranges) of
4711 the selected encoding. Use the +CC option to override
4712 this display suppression and enforce transparent display
4713 of invalid character codes in a CJK terminal.
4714
4715 · Extended characters: CJK characters encoded with 3 or 4
4716 bytes. Use the +CCC option to override this display sup‐
4717 pression and enforce transparent display of extended
4718 character codes in a CJK terminal.
4719
4720 Regardless of all these features and options, it may not always be pos‐
4721 sible to prevent display garbage, especially if the font used by the
4722 terminal does not cover the needed character range. To avoid these
4723 problems in general, it is recommended to use a Unicode terminal for
4724 editing CJK encoded files.
4725
4726 See also Terminal interworking problems for special hints about certain
4727 terminals.
4728
4729 VT100 special graphics character set display support
4730 →NEW→ Mined can display and edit files containing codes for VT100 line
4731 drawing graphics characters, showing corresponding small letters as
4732 their respective graphic symbol. This option can be toggled from the
4733 Options menu and will be cleared also on an explicit screen redraw com‐
4734 mand (ESC .).
4735
4737 Introduction: handling Unicode encodings
4738 Mined interprets UTF-8 which is a multi-byte character encoding of the
4739 ISO-10646 character set, part of which is also known as Unicode. When
4740 reading a file, it detects UTF-8 encoding automatically (unless over‐
4741 ridden by explicitly selecting a text encoding with a command line
4742 option -u or -l or -E...). It can also edit UTF-16 encoded Unicode
4743 files (UTF-16 can represent the complete 21 bit Unicode subset of
4744 ISO-10646). UTF-16 big or little endian with or without BOM (byte
4745 order mark U+FEFF) is auto-detected or can be selected with a command-
4746 line option (see notes under Locale configuration below).
4747 UTF-16 is maintained transparently, i.e. a UTF-16 encoded file is writ‐
4748 ten back in UTF-16, and if it was beginning with a BOM this is main‐
4749 tained. No explicit UTF-16 entry exists, however, in the Encoding menu
4750 since the text is internally handled in UTF-8. However, the character
4751 encoding flag indicates UTF-16 file encoding with either "16" (big
4752 endian) or "61" (little endian).
4753
4754 UTF-8 internal representation, transparent handling of other text
4755 Mined handles UTF-8 representation internally and also edits and keeps
4756 illegal UTF-8 sequences. This way, if you happen to open a Latin-1 or
4757 CJK or any other encoded file in UTF-8 mode, or switch encoding while
4758 editing, or edit a file with mixed encoding, the text contents can
4759 still be edited and you will not loose any file contents information.
4760
4761 Character encoding indication
4762 The upper-right flags area has a character encoding indication which
4763 shows "U8" if UTF-8 text interpretation is selected. For Latin-1 text
4764 interpretation "L1" is shown, for others see Quick Options (Mode indi‐
4765 cation) flags. You may click on the indication flag to toggle between
4766 the current and the previous selected encoding.
4767
4768 Character information display
4769 The Character information display command ESC u is described above;
4770 character information display can also be preselected by environment
4771 configuration. In UTF-8 mode, information shown includes the UTF-8
4772 encoding byte sequence.
4773
4774 Character input support
4775 With ^V, mined's special character input support is invoked (both while
4776 editing text and entering text on the prompt line, e.g. as a search
4777 expression). With this feature, (in addition to plain control charac‐
4778 ters) a composite character can be entered by its accent combination or
4779 other mnemonic character description; a more-than-two letter character
4780 mnemonics would be embedded in space characters after the ^V. In addi‐
4781 tion, numeric character codes or values can be entered with leading
4782 ^V#, octal/decimal with ^V##/^V#=, Unicode with optional u/U/+. (For
4783 examples, see description of the ^V function below.) With numeric
4784 character input, mined supports successive multiple character entry
4785 according to ISO 14755; if the numeric code is terminated by a Space
4786 key, another numeric character can be entered subsequently; an Enter
4787 key terminates numeric character input.
4788
4789 See also the generic section Character input support above for input
4790 support for accented characters and keyboard mapping.
4791
4792 Encoding conversion support
4793 Two functions support interactive character encoding conversion
4794 (Latin-1 to UTF-8 or UTF-8 to current encoding) to partially fix files
4795 with mixed encoding. In either text encoding mode, the search function
4796 looks for characters encoded in UTF-8 (when not editing in UTF-8 mode)
4797 or not (when editing in UTF-8 mode); the command is HOP ESC ( or Alt-
4798 F11 . Then, convert the character with ESC _ or its national variant
4799 (see mnemonic character substitution commands in the Command refer‐
4800 ence).
4801 For repeated interactive conversion, both functions can be combined
4802 into Alt-Shift-F11 (convert current character, then search next).
4803
4804 Unicode Copy/Paste buffer conversion
4805 For the Copy/Paste buffer, Unicode mode can be selected which maintains
4806 its contents always in Unicode, so that Copy/Paste of text works
4807 between differently encoded files (or sections of a file, if encoding
4808 is switched while editing) with automatic character code conversion.
4809 This mode is only effective while editing with non-Unicode encoded text
4810 interpretation.
4811 Select this mode with the command line option -Eu or in the Paste buf‐
4812 fer menu (righ-click on the Buffer mode flag "=" or "+") and select
4813 "Unicode".
4814 Unicode buffer mode is indicated by cyan background of the Paste buffer
4815 flag (then "=" or "+"), except in Unicode text mode.
4816
4817 Smart quotes and dashes
4818 If smart quotes mode is enabled (see the Quotes style menu under the
4819 Quotes flag left to the Encoding flag and menu), quote mark keys will
4820 enter typographic smart quotes instead. Smart dashes also apply. See
4821 Smart quotes above for more details.
4822
4823 Bidirectional terminal support
4824 A bidirectional terminal (such as mlterm) will probably also apply Ara‐
4825 bic LAM/ALEF ligature joining. Mined auto-detects this feature and
4826 enables bidi terminal handling automatically. Otherwise, bidi terminal
4827 handling can be configured with the option +UU.
4828 In this mode, when displaying a menu, underlying text lines that con‐
4829 tain right-to-left characters are cleared first in order to prevent
4830 display confusion between the terminal's bidi algorithm and the menu
4831 position.
4832 Also, with bidi terminal handling enabled, mined assumes that the ter‐
4833 minal applies Arabic LAM/ALEF ligature joining and properly accounts
4834 for this feature in display position handling.
4835 In separated display mode, the joining part of the ligature is indi‐
4836 cated similar to the handling of combining characters.
4837
4838 Input support for right-to-left scripts ("poor man's bidi" mode)
4839 This support feature for input of right-to-left text pieces is enabled
4840 by default unless the terminal is detected to be in bidi mode itself
4841 (e.g. mlterm).
4842 "Poor man's bidi" mode is suitable to insert small pieces of right-to-
4843 left text (words, phrases) within left-to-right text, it stores right-
4844 to-left text in visual order (see below) and works as follows:
4845 After entering a right-to-left Unicode character, the cursor position
4846 is moved left of it, so subsequent characters will be appended left and
4847 the text shifted right. Characters are stored in visual order while
4848 input support is implicit, based on the characters being typed. Enter‐
4849 ing a left-to-right character will automatically skip behind the previ‐
4850 ously entered right-to-left text on the line and switch to left-to-
4851 right direction; this behaviour optimizes inserting small pieces of
4852 right-to-left text into basically left-to-right text; this priority is
4853 justified by the assumption that this mode (with visual storing order)
4854 is only useful for inserting small right-to-left quotations into left-
4855 to-right text and not for editing right-to-left documents (which should
4856 be stored in logical order).
4857 Newline, Space, Tab, and combining characters attempt to behave well
4858 according to what was entered before; however, intermediate cursor
4859 movement is not considered.
4860 Note: For proper support of right-to-left text editing stored in logi‐
4861 cal order, please use mined in a right-to-left terminal (mintty,
4862 mlterm). Adding a feature for advanced bidi support in all terminals is
4863 being considered.
4864 Note: Poor man's bidi mode also works in non-Unicode text encodings.
4865 Note: Poor man's bidi mode is similar to the "revins" (reverse insert)
4866 option of vim.
4867
4868 Unicode line ends
4869 Mined detects and handles Unicode line separators and paragraph separa‐
4870 tors (unless disabled with +u-u). They are displayed as shown above.
4871 Interpretation of these characters as line ends is disabled if a file
4872 is explicitly opened in non-Unicode encoding (but not if non-Unicode
4873 encoding is just auto-detected).
4874 If editing Unicode text, HOP Enter will insert a Unicode paragraph sep‐
4875 arator, Enter in a line that already has a Unicode line end will insert
4876 a Unicode line separator. Also, the keys Shift-Enter or Ctrl-Enter
4877 insert a paragraph separator or line separator respectively.
4878 Configuration: In order to enable shift and control with the Enter
4879 keys, xterm or rxvt must be configured as shown in the example configu‐
4880 ration file Xdefaults.mined in the Mined runtime support library.
4881
4882 Unicode display
4883 In UTF-8 terminal mode, mined displays all Unicode characters if they
4884 are contained in the font used by the terminal. Fonts usually have a
4885 substitute glyph to indicate characters not contained in the font.
4886 Wide characters (double-width glyphs) are displayed in a double-width
4887 character cell of the terminal. Combining characters are displayed
4888 either combined or separated (see Combining characters below).
4889
4890 Illegal UTF-8 sequences are displayed with highlighted background,
4891 using the following indications. Furthermore, control characters
4892 encoded as a UTF-8 sequence and control characters in the "C1" range
4893 (values 0x80..0x9F) will be displayed similar to normal control charac‐
4894 ters but with coloured highlighting.
4895
4896 8 for an unexpected UTF-8 continuation byte (range 80-BF)
4897
4898 4 for a 0xFE (254) byte
4899
4900 5 for a 0xFF (255) byte
4901
4902 « for a too short UTF-8 sequence if followed by a single-byte
4903 character (00..7F)
4904
4905 » for a too short UTF-8 sequence if followed by a multi-byte char‐
4906 acter (C0..FF)
4907
4908 Illegal or non-Unicode characters are indicated with the following
4909 replacements:
4910
4911 � (or ? or []) a character code ending with FFFE or FFFF (override
4912 substitution for transparent display with +C)
4913
4914 � (or ? or []) a surrogate code point (override substitution for
4915 transparent display with +CC)
4916
4917 � (or ? or []) a code point outside the defined Unicode range
4918 (override substitution for transparent display with +CCC)
4919
4920 Character substitution display
4921 Legal characters (in the effective text encoding) that cannot be dis‐
4922 played in a non-Unicode terminal are indicated with the following
4923 replacements:
4924
4925 ¤ or ¤ (if wide) a non-combining Unicode character that cannot be
4926 displayed
4927
4928 % or % (if wide) (if the terminal cannot display ¤) a non-combining
4929 Unicode character that cannot be displayed
4930
4931 ` (or wide)
4932 a Unicode combining character that cannot be displayed
4933
4934 " or
4935 ' (or wide) a double or single quotation mark character (typo‐
4936 graphic quote mark)
4937
4938 - or ~ or = (or wide) a dash or hyphen character
4939
4940 e, ê, etc a combined or other character that cannot be displayed which
4941 is based on the displayed character by its Unicode decomposition
4942
4943 E the Euro sign € U+20AC
4944
4945 V, X, Z the check mark ✓ U+2713, ballot X ✗ U+2717 , zigzag arrow ↯
4946 U+21AF
4947
4948 ' glottal stop 'okina ʻ U+02BB
4949
4950 0 ..9 ,
4951 A ..Z etc a corresponding fullwidth ASCII character
4952
4953 Configuration: Display colour of special or illegal UTF-8 indications
4954 can be changed with the environment variable MINEDUNI, the value should
4955 be the numeric part of an ANSI terminal control sequence; optionally,
4956 the value can be preceded by a character to be used for Unicode charac‐
4957 ter indication in non-Unicode terminal mode.
4958 (The default configuration value is "¤ 46").
4959
4960 Combining and joining characters
4961 Mined supports handling of combining characters, featuring optional
4962 separate display and partial editing, as described above in section
4963 Combining characters.
4964
4965 Joining characters
4966 If mined assumes that the terminal applies LAM/ALEF ligature joining
4967 (either configured with the +UU right-to-left display option or auto-
4968 detected; correct native support is known of mlterm), the joined char‐
4969 acter width will be handled correctly in cooperation with the terminal.
4970 In all other terminals mined will apply LAM/ALEF joining itself.
4971 Mined supports ligature joining in both combining character display
4972 modes:
4973
4974 · In combined display mode, the screen position is
4975 accounted properly. Also, when deleting a character, a
4976 joined ligature is deleted together with the base charac‐
4977 ter, just like combining characters.
4978
4979 · In separated display mode, the joining part of the liga‐
4980 ture is indicated using the appropriate isolated form,
4981 highlighted with Unicode special indication background
4982 colour (similar to the handling of combining characters).
4983
4984 Search expression limitations
4985 Unicode search ranges can not be very large as all included characters
4986 are listed in an internal buffer which is limited to ca. 1 KB.
4987
4988 UTF-8 preservation and byte-transparent editing
4989 When splitting lines that are too long for internal handling, consis‐
4990 tency of UTF-8 sequences is preserved (they are not split); combining
4991 characters may get split off their base characters, however, they will
4992 join seemlessly as lines are joined again (e.g. when saving the file).
4993 Note that isolated combining characters, e.g. at the beginning of a
4994 line, are always displayed as if in separated display mode.
4995
4996 Terminal environment
4997 Unicode text can be edited in any terminal encoding (UTF-8, 8 bit,
4998 CJK), however, a UTF-8 terminal is preferable. UTF-8 terminal opera‐
4999 tion can be configured in either of these ways:
5000
5001 · Auto-detection: If the terminal emits cursor position
5002 reports, mined can uniquely recognise UTF-8 terminal
5003 encoding and further UTF-8 features (see Terminal encod‐
5004 ing support below).
5005
5006 · Environment: By proper environment variable settings.
5007 For more details, see Locale configuration.
5008 Note: In general, it is advisable to start a terminal
5009 window using a wrapper script that sets a suitable locale
5010 environment at the same time, in order to support all
5011 kinds of applications that are more dependent on proper
5012 environment setting than mined is. The mined installa‐
5013 tion also provides the script uterm for this purpose,
5014 with its own manual page. (In case uterm is not
5015 installed, it is also included in the Mined runtime sup‐
5016 port library.)
5017
5018 · Parameter: +EU selects UTF-8 terminal mode.
5019
5020 See also Terminal interworking
5021 problems for special hints about certain terminals.
5022
5024 Mined provides CJK support features uniformly in Unicode and in major
5025 CJK encodings. For information relating to CJK character encoding see
5026 Character encoding support below.
5027
5028 CJK input method support
5029 Input methods for CJK characters are supported with the keyboard map‐
5030 ping feature. A number of popular input methods for CJK text input are
5031 pre-configured, others can be added at compile-time with the mkkbmap
5032 script.
5033
5034 Radical/Stroke input method
5035 Mined provides a Radical/Stroke input method for CJK characters with
5036 specific functionality in addition to keyboard mapping; it works at
5037 two-levels, selecting a radical first, then a character from a list
5038 sorted by stroke count. If this input method is active, a selection
5039 menu for the 214 CJK radicals is displayed (without prior keyboard
5040 input). The menu displays all variations of each radical. After
5041 selecting a radical from this menu, a second-level menu is displayed,
5042 showing all CJK characters based on the selected radical, sorted by the
5043 number of strokes. Many of these menus will not fit on the screen and
5044 can be scrolled. Pressing Escape here would return to the radical
5045 menu; pressing Escape there would disable the input method. To enter a
5046 non-mapped character (e.g. a line end), you need to disable Radi‐
5047 cal/Stroke input method temporarily; just toggle it back on with Alt-k
5048 (or Esc k) or Ctrl-Alt-F12 and the radical menu will be displayed again
5049 for continued input.
5050 For the Unicode version used as the character data source, see the
5051 Options - About information or the mined change log.
5052
5053 CJK character display
5054 Combining characters (in both JIS X 0213 encodings and GB18030) are
5055 handled and the combined characters are displayed properly in either
5056 combined or separated display mode in a UTF-8 terminal (like for UTF-8
5057 encoded text). The following special CJK character indications apply:
5058
5059 ¤ or ¤ CJK character that cannot be displayed in the terminal
5060
5061 % or % (if the terminal cannot display ¤) CJK character that cannot
5062 be displayed in the terminal
5063
5064 ` or ` CJK combining character that cannot be displayed in the ter‐
5065 minal
5066
5067 ? or ? CJK character code that has no known mapping to Unicode
5068 (to enforce display on CJK terminal use option +C)
5069
5070 # or # invalid CJK character code that is outside of the code range
5071 assigned to the encoding scheme
5072 (to enforce display on CJK terminal use option +CC)
5073
5074 # CJK character in extended code range (esp. 3 and 4 byte codes,
5075 or codes with 0x80...0x9F byte range) that cannot be displayed
5076 on CJK terminal due to terminal capability limitations
5077 (to enforce display on CJK terminal use option +CCC)
5078
5079 < incomplete or otherwise illegal CJK code
5080
5081 Han character information display
5082 When the cursor is on a Han character and either descriptive or pronun‐
5083 ciation information about this character is available in the Unihan
5084 database (from unicode.org), mined can optionally display this informa‐
5085 tion, with a selection of display details which may include semantic
5086 information and various pronunciations.
5087 To enable Han info, select it in the Info menu. To open the Info menu,
5088 type Alt-F10 or right-click the "?" flag. The information can option‐
5089 ally be shown on the status line (where it may be truncated if too
5090 long) or in a pop-up menu next to the character.
5091 Pronunciation information to be displayed can be selected in the Info
5092 menu. While selecting multiple pronunciation options, the menu stays
5093 open.
5094
5095 The same information is always shown while you are browsing an input
5096 method pick list (then on the status line).
5097
5098 Han character information display can be selected with the +?h command
5099 line parameter (or +?x for short display on the status line). To pres‐
5100 elect continuous Han character information display, append this parame‐
5101 ter to the environment variable MINEDOPT.
5102
5103 The information includes the character code (in CJK encoding, both CJK
5104 code and corresponding Unicode value are shown). The amount of
5105 descriptive information (from the Unihan database) to be shown can also
5106 be preconfigured with the environment variable MINEDHANINFO; see Han
5107 info configuration below.
5108 (For the Unicode version used for the Unihan data source, see the
5109 Options - About information or the mined change log.)
5110
5112 Mined supports UTF-8 terminals, CJK terminals, Latin-1 and other 8-bit
5113 encoded terminals.
5114
5115 Terminal feature detection
5116 Mined performs auto-detection of a number of terminal features:
5117
5118 · For UTF-8 terminals, mined performs auto-detection of
5119 terminal features (detection of UTF-8 terminal, different
5120 width data and combining data versions, handling of dou‐
5121 ble-width, combining and joining characters).
5122
5123 · For CJK terminals, mined performs some auto-detection of
5124 specific CJK terminal features (handling of non-EUC code
5125 points, handling of extended code range, GB18030, 3-byte
5126 and 4-byte encodings, detection of kterm JIS encoding,
5127 detection of rxvt emulating CJK encoded terminal, special
5128 CJK width properties, and terminal support of combining
5129 characters).
5130
5131 · For mapped 8-bit terminals, mined performs auto-detection
5132 of terminal support of combining characters.
5133
5134 · For the Unicode version used for width and combining
5135 character properties, see the Options - About information
5136 or the mined change log.
5137
5138 · CJK terminals cannot always be distinguished from 8-bit
5139 terminals by auto-detection. Neither can the encoding of
5140 either CJK or 8-bit terminals be auto-detected. It is
5141 thus advisable to setup proper settings of locale envi‐
5142 ronment variables (LC_ALL, LC_CTYPE, LANG). Alterna‐
5143 tively, the effective terminal encoding can be indicated
5144 to mined with a command line option (+EX). For configu‐
5145 ration details, see Locale configuration below.
5146
5147 Specific terminal properties
5148 For more specific configuration hints (especially for PC-based termi‐
5149 nals), see the Terminal environment configuration hints below.
5150 For interworking issues with specific terminals see also the listing of
5151 Terminal interworking problems.
5152
5153 Mined Command reference (command and key function assignments)
5154 General note on using keys with Control, Shift, Alt modifiers:
5155 Mined makes use of many key combinations modified with Control,
5156 Shift, Alt, or a combination of them, as a resource for invoking
5157 a larger number of specific functions, providing modified func‐
5158 tionality as well as accented character input support. Some of
5159 these key combinations may be limited by local environment,
5160 especially the window system, or may need extra configuration to
5161 be enabled.
5162 Especially modified function keys are often intercepted by win‐
5163 dow systems for special functions.
5164 In general, mined interprets an ESC prefix as an alternative for
5165 an Alt-key combination. For further advice and window system
5166 specific hints on further remedies, as well as configuration
5167 hints, to enable modified key input see the hint box under
5168 Accent prefix keys above.
5169
5170 Generic command modifiers (esp. HOP key)
5171 ^Q or ^G or "5" (on keypad) or Menu (in Linux) or * (on keypad) or
5172 Shift-TAB
5173 HOP key (except ^G followed by a digit).
5174 In order to enable the "5" key to invoke the HOP function, or
5175 assign the HOP function to another key (e.g. on laptops which
5176 lack the numeric keypad), some configuration may be necessary;
5177 see Keypad configuration below.
5178
5179 ESC Prefix for subsequent "letter commands".
5180 Also: Generic prefix for "Alt" modified command (to apply to a
5181 subsequent command for which the terminal does not support the
5182 Alt key).
5183
5184 ^V (Prefix for control character input, but also:)
5185 Generic prefix for "Control" modified command (to apply to a
5186 subsequent command for which the terminal does not support the
5187 Control key).
5188
5189 Ctrl-< punctuation key >
5190 (Set of accent prefix keys to enter composed characters.)
5191
5192 Cursor and screen motion
5193 ^E or cursor-up
5194 Move cursor 1 line up.
5195
5196 ... with HOP:
5197 Go to top of page.
5198
5199 ^X or cursor-down
5200 Move cursor 1 line down.
5201
5202 ... with HOP:
5203 Go to bottom of page.
5204
5205 ^S or cursor-left
5206 Move cursor 1 character left.
5207
5208 ... with HOP or Ctrl-Home
5209 Go to beginning of line.
5210
5211 ^D or cursor-right
5212 Move cursor 1 character right.
5213
5214 ... with HOP or Ctrl-End
5215 Go to end of line.
5216
5217 ^A or Shift-cursor-left (on small keypad)
5218 Move word left (to preceding beginning of a word).
5219
5220 ... with HOP:
5221 Go to beginning of sentence.
5222
5223 ^F or Shift-cursor-right (on small keypad)
5224 Move word right (to beginning of next word).
5225
5226 ... with HOP:
5227 Go to end of sentence.
5228
5229 Ctrl-Shift-cursor-up
5230 Move backward to previous beginning of paragraph.
5231
5232 Ctrl-Shift-cursor-down
5233 Move forward to next beginning of paragraph.
5234
5235 Shift-cursor-up (on small keypad)
5236 Go to top of page.
5237
5238 Shift-cursor-down (on small keypad)
5239 Go to bottom of page.
5240
5241 ^R or PgUp or PrevScreen (VT100)
5242 Scroll backward 1 page (Top line becomes bottom line).
5243
5244 ... with HOP:
5245 Go to beginning of text.
5246
5247 ^C or PgDn or NextScreen (VT100)
5248 Scroll forward 1 page (Bottom line becomes top line).
5249
5250 ... with HOP:
5251 Go to end of text.
5252
5253 Home (on small keypad)
5254 Move to beginning of line. If already there, move to beginning
5255 of previous line. Only if keyboard is configured to emit dif‐
5256 ferent control sequences for the two keypads, see Keypad config‐
5257 uration hints below.
5258
5259 Ctrl-Home (on small keypad)
5260 Move to beginning of line.
5261
5262 End (on small keypad)
5263 Move to end of line. If already there, move to end of next
5264 line. Only if keyboard is configured to emit different control
5265 sequences for the two keypads, see Keypad configuration hints
5266 below.
5267
5268 Ctrl-End (on small keypad)
5269 Move to end of line.
5270
5271 →NEW→ HOP ESC .
5272 Center current position vertically on screen.
5273
5274 Navigation support for combined Unicode characters
5275 Enabling partial editing of base character and combining characters
5276 (accents) in combined display mode.
5277
5278 Ctrl-cursor-right or ^V cursor-right
5279 Micro movement: Move partial character right into Unicode com‐
5280 bined character.
5281
5282 Ctrl-cursor-left or ^V cursor-left
5283 Micro movement: Move partial character left over Unicode combin‐
5284 ing character.
5285
5286 ^W or Ctrl-PgUp or keypad-Minus (if supported by terminal)
5287 Scroll screen backward 1 line.
5288
5289 ... with HOP:
5290 Scroll backward half a screen.
5291
5292 ^Z or Ctrl-PgDn or keypad-Plus (if supported by terminal)
5293 Scroll screen forward 1 line.
5294
5295 ... with HOP:
5296 Scroll forward half a screen.
5297
5298 ^G nn Enteror ESC g nn Enter
5299 Move to a line (prompts for line number). (Terminate command
5300 with Enter or Space.)
5301
5302 ^G nn % or ESC g nn %
5303 Move to position in text determined by percentage.
5304
5305 ^G nn p or ESC g nn p
5306 Move to page in text (set page length with ESC P).
5307
5308 ^G < command > or ESC g < command >
5309 If not immediately followed by a digit, the positioning command
5310 works as an alternative HOP key.
5311
5312 Text marker navigation
5313 ^G N , or ESC g N ,
5314 (N=0..15) Set marker N. (Final "m" or "," may be used.)
5315
5316 ^G N . or ESC g N .
5317 (N=0..15) Go to marker N. (Final "'" or "g" or "." may be used.)
5318
5319 ESC m N
5320 (N=0..9/a..f) Set marker N.
5321
5322 ESC ' N (deprecated)
5323 (N=0..9/a..f) Go to marker N.
5324
5325 HOP Home or ^G ^@ or ^G ^] or HOP ESC ^
5326 Move to the position previously marked by Home/^@/^]/ESC ^
5327
5328 ESC Enter or Alt-Enter (Alt-Return) *
5329 Return backward to the previous position marked in the position
5330 stack.
5331
5332 HOP ESC Enter or HOP Alt-Enter (HOP Alt-Return) *
5333 Return forward to the next position marked in the position
5334 stack. * Note that depending on Window system or terminal, Alt-
5335 Enter may be captured as a function to maximize the window.
5336
5337 left mouse button
5338 Move cursor to position.
5339
5340 Entering text
5341 To enable combinations of Control and Shift with the Enter key, termi‐
5342 nal configuration may be needed (see Unicode line ends).
5343
5344 < printable char >
5345 Insert the character at cursor position.
5346
5347 < Enter > or < LF Linefeed char > or < CR Return char >
5348 Insert a newline at cursor position, clone line end type. Apply
5349 auto-indentation if enabled.
5350
5351 Ctrl-Enter (if editing Unicode text)
5352 Make a new line by inserting a Unicode line separator at cursor
5353 position (unless disabled with +u-u).
5354
5355 Shift-Enter (if editing Unicode text)
5356 Make a new line by inserting a Unicode paragraph separator at
5357 cursor position (unless disabled with +u-u).
5358
5359 →NEW→ Control-Shift-Enter (if editing Unicode or ISO 8859 text) Make a
5360 new line by inserting a Next Line character (U+0085).
5361
5362 Ctrl-Alt-Enter
5363 Make a new line by inserting a DOS or Unix line end at cursor
5364 position (if editing Unix or DOS file, respectively).
5365
5366 Ctrl-Shift-Alt-Enter
5367 Make a new line by inserting a Mac line end at cursor position.
5368
5369 < Tab char >
5370 Insert a Tab character at cursor position. with option -+8 or
5371 -+4 or -+2: Tab expansion; insert as many space characters as
5372 needed to fill line up to the next Tab position.
5373
5374 ^V < Tab char >
5375 Insert a Tab character (even in Tab expansion mode).
5376
5377 HOP {, HOP (, HOP [, HOP <
5378 Enter indented pair of matching parentheses.
5379
5380 HOP / Enter an indented Javadoc comment frame.
5381
5382 HOP ' or HOP ´ (acute accent)
5383 Enter an apostrophe (U+2019). Note: In smart quotes mode, ´
5384 alone also enters an apostrophe.
5385
5386 HOP ` (grave accent)
5387 Enter a glottal stop / 'okina (U+02BB). Note: In smart quotes
5388 mode, ` alone also enters a glottal stop.
5389
5390 HOP - Underline the line that starts before the cursor position.
5391
5392 ^O Make new line at current position. If the current line is ter‐
5393 minated by a Unicode paragraph separator, a line separator is
5394 inserted.
5395 Auto-indentation is not applied.
5396
5397 HOP ^O Split a line in two binary-transparently, i.e. enter a "NONE"
5398 virtual line end.
5399
5400 Accented character input support by accent prefix keys
5401 Mined defines a number of function keys, modified function keys, mod‐
5402 ifed digit keys, and modified punctuation keys for single and multiple
5403 accent composition with a subsequently entered character; for a
5404 detailed listing and description, see Accent prefix function keys
5405 above.
5406 Up to three accent prefix keys can be combined by entering them in
5407 sequence in order to compose characters with multiple accents. These
5408 functions also work on the prompt line (e.g. to enter search expres‐
5409 sions).
5410
5411 F5 < character >
5412 Compose character with diaeresis (umlaut accent), e.g. a » ä
5413
5414 Shift-F5 < character >
5415 Compose character with tilde, e.g. a » ã
5416
5417 Ctrl-F5 < character >
5418 Compose character with ring or with cedilla, e.g. a » å , c » ç
5419
5420 Ctrl-Shift-F5 < character >
5421 Compose character with ogonek.
5422
5423 Alt-Shift-F5 < character >
5424 Compose character with breve.
5425
5426 F6 < character >
5427 Compose character with acute accent (accent d'aigu), e.g. a » á
5428
5429 Shift-F6 < character >
5430 Compose character with grave accent, e.g. a » à
5431
5432 Ctrl-F6 < character >
5433 Compose character with circumflex accent, e.g. a » â
5434
5435 Ctrl-Shift-F6 < character >
5436 Compose character with macron.
5437
5438 Alt-Shift-F6 < character >
5439 Compose character with dot above.
5440
5441 Ctrl-0 ... Ctrl-9
5442 Compose character with accent, esp. for Vietnamese accented
5443 characters.
5444
5445 (Ctrl-)Alt-1 ... (Ctrl-)Alt-5
5446 Compose character with two accents, esp. for Vietnamese double
5447 accented characters.
5448
5449 (Ctrl-)Alt-6 ... (Ctrl-)Alt-8
5450 Compose character with two accents for Greek multiple accented
5451 characters.
5452
5453 Ctrl-< punctuation key >
5454 Compose character with accent (looking similar to the modified
5455 punctuation character, e.g. Ctrl-, composes with cedilla, Ctrl-:
5456 with diaeresis, Ctrl-minus with macron, Ctrl-( with breve,
5457 Ctrl-< with caron, Ctrl-/ with stroke, Ctrl-; with ogonek, etc;
5458 see Accent prefix function keys above for details).
5459
5460 Input support commands
5461 Ctrl-V special input support
5462 These functions also work on the prompt line (e.g. to enter
5463 search expressions).
5464
5465 ^V < control character >
5466 Enter control character.
5467
5468 ^V [ or ^V \ or ^V ]
5469 Enter one of the control characters ^[, ^\, ^].
5470
5471 ^V ^ ^ or ^V _ _
5472 Enter one of the control characters ^^, ^_.
5473
5474 ^V ^ ' or ^V ^ "
5475 →NEW→ or ^V ^ ` or ^V ^ ´ Enter one of the straight quote marks
5476 ' or " or plain accents (needed in smart quotes mode)
5477
5478 ^V < accent > < character >
5479 Compose accented character.
5480
5481 ^V # xxxx < Space or Enter >
5482 Enter character defined by a hexadecimal number being input
5483 (depending on applicable encoding, byte value, Unicode value, or
5484 valid CJK code is required).
5485
5486 ^V # # xxxxxx < Space or Enter >
5487 Like ^V # but using an octal number.
5488
5489 ^V # = xxxxx < Space or Enter >
5490 Like ^V # but using a decimal number.
5491
5492 ^V # u or U or +
5493 (followed by a numeric input as described above, with optional #
5494 or = for octal or decimal input) interprets the input as a
5495 numeric Unicode value which is converted into the current text
5496 encoding.
5497
5498 ^V # ... Space ...
5499 With numeric character input, mined supports successive multiple
5500 character entry according to ISO 14755 if the numeric code is
5501 terminated by a Space key.
5502
5503 ^V < function key >
5504 This is not an input support function but rather the function
5505 key is invoked as if pressed together with the control key.
5506
5507 Mnemonic character input support
5508 Mnemonics recognised include the following:
5509
5510 · RFC 1345 mnemos (except mappings to Unicode private use
5511 areas); in ambiguous cases, the RFC 1345 mnemos must be
5512 entered in long mnemonic input mode, e.g. with "^V pi "
5513 rather than "^Vpi"
5514
5515 · HTML mnemos; in ambiguous cases, the HTML mnemos must be
5516 prepended with a "&"
5517
5518 · TeX mnemos (macros) and substitutes, leaving out any "\"
5519
5520 · →NEW→ groff glyphs (roff special characters), mnemonics
5521 beginning with "("
5522
5523 · Supplementary mnemos as listed on the mined character
5524 mnemos page
5525 Unless there is an ambiguous mapping, all two-letter mnemonics can also
5526 be entered in reverse order.
5527
5528 ^V < Space > < name > < Space or Enter >
5529 Lookup character mnemonic and enter character. RFC 1345 mnemon‐
5530 ics take precedence in ambiguous cases.
5531
5532 ^V < character > < character >
5533 Compose two characters. Non-RFC 1345 mnemonics take precedence
5534 in ambiguous cases.
5535
5536 Note: A number of mnemonics are defined with already precomposed base
5537 characters (especially for Vietnamese input) which can be used for fur‐
5538 ther composition.
5539 ^V can be applied recursively to compose a character for further compo‐
5540 sition.
5541 See examples with æ below for both cases.
5542
5543 Examples:
5544
5545 ^V^A Enter Ctrl-A.
5546
5547 ^V^[ or ^V[
5548 Enter the escape character.
5549
5550 ^V__ Enter Ctrl-_.
5551
5552 ^V'e Enter é (e with accent d'aigu).
5553
5554 ^Vae Enter æ (the ae ligature).
5555
5556 ^V ae' (terminated by Space or Enter)
5557 Enter U+01FD (æ with acute).
5558
5559 ^Væ' Enter U+01FD (æ with acute).
5560
5561 ^V ^Vae' (terminated by Space or Enter)
5562 Enter U+01FD (æ with acute).
5563
5564 ^V'^Vae
5565 Enter U+01FD (æ with acute).
5566
5567 ^VOK or ^Vcm
5568 Enter the check mark ✓ (U+2713)
5569
5570 ^Vzz or ^V zigzag (terminated by Space or Enter)
5571 Enter the downwards zigzag arrow ↯ (U+21AF)
5572
5573 ^V-, Enter ¬ (the negation symbol).
5574
5575 ^V neg (terminated by Space or Enter)
5576 Enter ¬ (the negation symbol).
5577
5578 ^Va* or ^V a* (terminated by Space or Enter)
5579 Enter the Greek small letter alpha.
5580
5581 ^V ae' (terminated by Space or Enter)
5582 Enter the Latin ligature ae with acute accent.
5583
5584 ^V euro (terminated by Space or Enter)
5585 Enter the Euro character.
5586
5587 ^V#20ac (terminated by Space or Enter)
5588 Enter the character with hexadecimal value 20AC (which is the
5589 Euro character in UTF-8 encoding).
5590
5591 ^V#U20ac (terminated by Space or Enter)
5592 Enter the Euro character (which has the hexadecimal Unicode
5593 value 20AC) encoded in the currently selected text encoding.
5594
5595 ^V#+20ac < Space > +20ac < Enter >
5596 Enter two Euro characters in successive multiple character entry
5597 mode (ISO 14755).
5598
5599 Input method (Keyboard mapping) selection
5600 ESC k or Ctrl-Alt-F12 or middle-click on Input Method flag
5601 Toggle between current and previously selected input method (or
5602 initially the configured standby input method). Note: Alt-k or
5603 Ctrl-Alt-F12 also works on prompt line.
5604
5605 HOP ESC k
5606 Clear input method, i.e. resets keyboard mapping to none
5607 (unmapped input).
5608
5609 ESC I or ESC K or Ctrl-F12 or right click on Input Method flag (mapping
5610 indication in flags area)
5611 Open the Input Method selection menu. Note: (Alt-I or Alt-K or
5612 Ctrl-F12 also works on prompt line)
5613
5614 HOP ESC K
5615 Cycle through available keyboard mappings / input methods.
5616
5617 Modifying text
5618 Note on the Home and End keys
5619 Sometimes people expect the "Home" and "End" keys to move the
5620 cursor to the beginning or end of line, respectively. In the
5621 keyboard usage approach of mined, these functions can easily and
5622 quite intuitively be invoked with "HOP left" and "HOP right",
5623 i.e. by pressing the keypad keys "5 4" or "5 6" in sequence. So
5624 there is enough room left for mapping the most frequent paste-
5625 buffer functions to the keypad as described above which is con‐
5626 sidered much more useful. Use Ctrl-Home and Ctrl-End for the
5627 line positioning functions, depending on terminal support and
5628 configuration; or use the -k option if preferred to switch key‐
5629 pad key function assignments for the Home and End keys. See
5630 Keypad layout above for a motivating overview of the mined key‐
5631 pad assignment features and options.
5632
5633 Backarrow or ^H
5634 Dual-mode function:
5635 If a visual selection is active: Cut selected area to paste buf‐
5636 fer.
5637 Otherwise: Delete character left.
5638 Smart backspacing: If there is only blank space before the cur‐
5639 rent position in the current line and the line above and auto-
5640 indentation is enabled, the auto-undent function (Back-Tab) is
5641 performed instead, deleting multiple spaces back to the previous
5642 level of indentation. Note: Mined tries to map this function to
5643 the Backarrow key on the keyboard whether it is assigned to the
5644 Backspace or DEL control characters, by inspecting the setting
5645 of the terminal interface, see Automatic backspace mode adapta‐
5646 tion. Note:→NEW→ Configuration option plain_BS (command line
5647 option +Bp) switches the Backarrow key from smart backspacing to
5648 plain backspacing, i.e. no auto-undent and only delete one com‐
5649 bining character of a combined character. Use Shift-Control-
5650 Backarrow to perform smart backspacing then.
5651
5652 Ctrl-Backarrow (if key properly configured) or F5 Backarrow
5653 "Delete single": Delete only right-most combining accent of com‐
5654 bined character left of cursor position. If not next to a com‐
5655 bined character: delete character left, avoiding auto-undent
5656 function.
5657
5658 →NEW→ Shift-Ctrl-Backarrow (if key properly configured) or Shift-F5
5659 Backarrow
5660 "Delete smart": Smart backspacing function as described above as
5661 default behaviour of the Backarrow key.
5662
5663 Del (on keypad)
5664 Dual-mode function:
5665 If a visual selection is active: Cut selected area to paste buf‐
5666 fer.
5667 Otherwise: Delete next character right, including any combining
5668 characters.
5669
5670 Ctrl-Del (on keypads, if key properly configured)
5671 Delete character right, excluding any combining characters.
5672
5673 Shift-Del (on small keypad, if key properly configured)
5674 Cut selected area to paste buffer.
5675
5676 DEL (ASCII character)
5677 If detected to be attached to the keyboard Backarrow key: Delete
5678 left. (Or delete visual selection, see above.) (Enforce with
5679 option -B.)
5680 Otherwise: Delete right.
5681
5682 HOP Backarrow
5683 Delete beginning of line (left of current position).
5684
5685 ^B Delete character right (next character).
5686
5687 ^T Delete next word.
5688
5689 ^^ (overridden when used as accent prefix, e.g. with newer xterm)
5690 Delete previous word.
5691
5692 ^K Delete tail of line (from current position to line-end); if at
5693 end of line, delete line end (joining lines).
5694
5695 HOP ^K Delete whole line.
5696
5697 Code conversion
5698 ESC X Insert hexadecimal representation of current character code.
5699 (In UTF-8 mode, this is the UTF-8 byte sequence of the character
5700 in hexadecimal notation.)
5701
5702 ... with HOP:
5703 Insert character with hexadecimal code scanned from text at cur‐
5704 rent position.
5705
5706 ESC U Insert (hexadecimal) Unicode value of current character (with
5707 either 4/6/8 hexadecimal digits, depending on the value); in CJK
5708 or mapped 8 bit encoding mode, the value is transformed from the
5709 current text encoding into Unicode.
5710
5711 ... with HOP or Ctrl-Shift-F11
5712 Insert character with hexadecimal Unicode value scanned from
5713 text at current position; in CJK or mapped 8 bit encoding mode,
5714 the value is transformed from Unicode into the current text
5715 encoding.
5716
5717 ESC A Like ESC U but inserting an octal Unicode value.
5718
5719 ... with HOP:
5720 Like HOP ESC U but scanning an octal Unicode value.
5721
5722 ESC D Like ESC U but inserting a decimal Unicode value.
5723
5724 ... with HOP:
5725 Like HOP ESC U but scanning a decimal Unicode value.
5726
5727 Alt-x Toggle the preceding character and its hexadecimal Unicode
5728 value. The command detects a 2 to 6 hex digit character code
5729 with a valid Unicode value, or a non-digit Unicode character,
5730 respectively.
5731
5732 Case conversion
5733 ESC C or F11
5734 Exchange case (low/capital) of character under cursor. Case
5735 mapping is based on Unicode (but applicable in all text encod‐
5736 ings). Special handling is applied for:
5737
5738 · Greek final s
5739
5740 · Turkish "i" if the effective locale value (environment
5741 variables →NEW→ LANGUAGE, TEXTLANG, LC_ALL, LC_CTYPE,
5742 LANG) begins with "tr" or "az" →NEW→ or "crh" or "tt" or
5743 "ba"
5744
5745 · case mappings to multiple characters
5746
5747 · Lithuanian special conditions (locale value begins with
5748 "lt")
5749
5750 · →NEW→ Dutch "IJsselmeer" title casing with Shift-F3 (if
5751 the locale value begins with "nl")
5752
5753 · Japanese characters are toggled between Hiragana and
5754 Katakana.
5755
5756 ... with HOP or Shift-F11
5757 Apply case conversion to word from cursor.
5758
5759 Shift-F3
5760 Cycle casing of a word between all small, title case, and all
5761 capitals (title case means the first letter is either capital or
5762 actually a Unicode title case, the following letters are small).
5763 For Japanese script, it toggles the word between Hiragana and
5764 Katakana.
5765
5766 Mnemonic and special conversion
5767 ESC _ or Ctrl-F11
5768 Mnemonic character substitution replaces the two characters at
5769 the cursor position with a suitable composite character (e.g.
5770 accented character) if possible. With Ctrl-F11, transformations
5771 are the same as with the ^V two-letter character input mnemon‐
5772 ics. With ESC _, language-dependent preferences may take prece‐
5773 dence (see variations below) according to the current locale
5774 environment.
5775 Example: ae → æ
5776
5777 Special conversion features
5778 · If the text at the cursor position contains an HTML char‐
5779 acter tag (starting with "&" and optionally ending with
5780 ";"), it is replaced with the actual character it repre‐
5781 sents.
5782 Example: ¬ → ¬
5783
5784 · If the text at the cursor position contains an HTML
5785 numeric character entity (starting with "&#" and option‐
5786 ally ending with ";"), it is replaced with the respective
5787 character it denotes.
5788 Example: @ → @
5789 @ → @
5790
5791 · If the text at the cursor position contains a URL numeric
5792 escape notation (starting with "%") it is replaced with
5793 the actual character it represents.
5794 Example: %40 → @
5795 %C3%86 → Æ (while in UTF-8 text encoding)
5796
5797 · The command also transforms between Latin-1 and UTF-8
5798 encoded characters if an accordingly encoded character is
5799 found at the current position; the current character
5800 encoding mode is used to determine the target character
5801 set.
5802 Example: æ (Latin-1 encoding) → æ (current UTF-8 encod‐
5803 ing) or
5804 æ (UTF-8 encoding) → æ (current encoding)
5805
5806 As variations of ESC _, there are some commands ESC LETTER using
5807 national letters that occur on respective national keyboards. They
5808 apply basically the same transformations but with some national prefer‐
5809 ences taking precedence:
5810
5811 ESC ä or ESC ö or ESC ü or ESC ß
5812 Similar to ESC _, but with German transformation preferences.
5813 example: ae → ä, oe → ö
5814
5815 ESC é or ESC è or ESC à or ESC ù or ESC ç
5816 Similar to ESC _, but with French transformation preferences.
5817 example: oe → œ (oe ligature U+0153)
5818
5819 ESC æ or ESC å or ESC ø
5820 Similar to ESC _, but with Danish transformation preferences.
5821 example: ae → æ, oe → ø
5822
5823 →NEW→ ESC ì or ESC ò
5824 Similar to ESC _, but with Italian accent preferences (è rather
5825 than é).
5826
5827 →NEW→ ESC < accented letter typical on East European keyboard >
5828 (like l with stroke, u with ring, o with double acute, s with
5829 caron, etc) Similar to ESC _, but with East European accent
5830 preferences: ogonek rather than cedilla, -d becomes d with
5831 stroke
5832
5833 →NEW→ ESC < special key typical on South European keyboard >
5834 (like n with tilde, g with breve, dotless i) Like ESC _.
5835
5836 Encoding conversion
5837 HOP ESC ( or Alt-F11
5838 Search for a character encoded in the "wrong encoding", i.e. a
5839 UTF-8 character in non-UTF-8 text mode, or a Latin-1 character
5840 in UTF-8 text mode.
5841
5842 ESC _ or ESC ö etc.
5843 If invoked on a non-ASCII character, UTF-8 / non-UTF-8 character
5844 encoding conversion is applied: If the character is not encoded
5845 in the current text encoding it is converted into the current
5846 text encoding (from UTF-8 or from Latin-1).
5847
5848 Alt-Shift-F11
5849 Convert Latin-1 / UTF-8, then search for the next "wrong
5850 encoded" character.
5851
5852 Paragraph formatting
5853 ESC j ("Clever Justify") Format paragraph by word-wrapping according
5854 to the currently set right margin value; left margins are
5855 derived from the contents of the paragraph and line. Heuristic
5856 detection of numbered items automatically triggers appropriate
5857 indentation.
5858 End-of-paragraph is a line without trailing blank space.
5859
5860 ... with HOP:
5861 Same, but end-of-paragraph is considered to be a blank line.
5862
5863 ESC J ("Normal Justify") Format paragraph by word-wrapping according
5864 to the currently set left and right margin values.
5865 End-of-paragraph is a line without trailing blank space.
5866
5867 ... with HOP:
5868 Same, but end-of-paragraph is a blank line.
5869
5870 ESC < Set left margin for justification.
5871
5872 ESC ; Set left margin of first line of paragraph only.
5873
5874 ESC : Set left margin of next lines of paragraph only.
5875
5876 ESC > Set right margin for justification.
5877
5878 HTML support
5879 ESC H (every first time)
5880 Enter HTML tag (and remember for subsequent ESC H). (Note that
5881 Alt-Shift-H will do the same thing if your terminal is config‐
5882 ured appropriately - see the example configuration file Xde‐
5883 faults.mined in the Mined runtime support library.) The tag can
5884 be entered with attributes and values; these will not be
5885 repeated in the closing tag (see next entry on ESC H).
5886
5887 ESC H (every second time)
5888 Enter closing HTML tag. Any tag attributes and values entered
5889 with the tag (see previous entry on ESC H) will be left out.
5890
5891 HOP ESC H
5892 Put text between mark and current position in HTML tags. The
5893 "A" tag gets special treatment.
5894
5895 Text block and buffer operations
5896 Note on the Home and End keys
5897 Sometimes people expect the "Home" and "End" keys to move the
5898 cursor to the beginning or end of line, respectively. In the
5899 keyboard usage approach of mined, these functions can easily and
5900 quite intuitively be invoked with "HOP left" and "HOP right",
5901 i.e. by pressing the keypad keys "5 4" or "5 6" in sequence. So
5902 there is enough room left for mapping the most frequent paste-
5903 buffer functions to the keypad as described above which is con‐
5904 sidered much more useful. Use Ctrl-Home and Ctrl-End for the
5905 line positioning functions, depending on terminal support and
5906 configuration; or use the -k option if preferred to switch key‐
5907 pad key function assignments for the Home and End keys. See
5908 Keypad layout above for a motivating overview of the mined key‐
5909 pad assignment features and options.
5910
5911 ^@ (Ctrl-Space)
5912 or Home (on right keypad) or Shift-Home
5913 or ^] or ESC @ or ESC ^
5914 or Stop (sun)or Select (VT100) Set mark (to remember the current
5915 location).
5916
5917 ... with HOP:
5918 Goto mark or: (if on already marked position) Toggle rectangular
5919 selection.
5920
5921 ^Y
5922 or End (on right keypad) or Shift-End
5923 or Copy (sun) or Do (VT100) Copy selected text (between mark and
5924 current position) to paste buffer. If rectangular copy/paste
5925 mode is selected: Copy rectangular area spanned by mark and cur‐
5926 rent position to paste buffer.
5927
5928 ... with HOP:
5929 Append to buffer.
5930
5931 ^U
5932 or Del (with visual selection) or Shift-Del (small keypad)
5933 or Cut (sun) or Remove (VT100) Cut selected text (between mark
5934 and current position) to paste buffer. If rectangular
5935 copy/paste mode is selected: Cut rectangular area spanned by
5936 mark and current position to paste buffer.
5937
5938 ... with HOP:
5939 Append to buffer.
5940
5941 ^P or Ins or Ctrl-Ins
5942 or Paste (sun) or InsertHere (VT100) Paste contents of paste
5943 buffer to current position. If rectangular copy/paste mode is
5944 selected: Paste contents of paste buffer as rectangular area to
5945 current position and corresponding positions of subsequent
5946 lines. With ^P or Ctrl-Ins, the cursor is placed before the
5947 pasted region. With Ins, the cursor is placed behind the pasted
5948 region unless the option -V was used.
5949 In rxvt, with Ins on the left keypad, the cursor is placed
5950 before (left of) the pasted region.
5951
5952 ... with HOP: (e.g. HOP Ins or ^G^P)
5953 Paste from inter-window buffer. Thus you can quickly copy text
5954 from one invocation of mined to another.
5955
5956 →NEW→ Shift-Ins (Windows/cygwin version)
5957 Insert text from Windows clipboard, adapting lineend types.
5958 →NEW→ With Ctrl-Shift-Ins, the cursor is also placed before the
5959 pasted region.
5960
5961 Alt-Ins or Ctrl-F4
5962 Replace text just pasted with preceding paste buffer. This com‐
5963 mand uses a ring of paste buffers (like emacs "yank ring").
5964
5965 ESC b or Shift-F4
5966 Copy contents of paste buffer into a file.
5967
5968 ... with HOP:
5969 Append to file.
5970
5971 ESC i or F4
5972 Insert file at current position.
5973
5974 Print from File menu
5975 Print text being edited (to default printer).
5976
5977 HOP ESC ! or (deprecated) ESC c
5978 Invoke operating system command (prompted for) with paste buffer
5979 as input.
5980
5981 Search
5982 Note on case-insensitive searching
5983 Mined applies case-insensitive search pattern matching where the
5984 search pattern contains small characters, unless when searching
5985 for an identifier (current identifier occurence, HOP F8, or
5986 identifier definition, Alt-t). For a case-sensitive search for a
5987 small letter, use a single-letter range expression like [x] or a
5988 backslash escape like \x (note, however, that \n and \r have
5989 special meaning).
5990
5991 ESC / or Find or F7 or F8 or / (on keypad)
5992 Search forward (prompt for regular expression).
5993
5994 ... with HOP:
5995 Search for current identifier.
5996
5997 ESC \ or Alt-F7 or Alt-F8 or Alt-/ (on keypad)
5998 Search backward (prompt for regular expression).
5999
6000 HOP F8 or Shift-F9
6001 Search for current identifier.
6002
6003 HOP Alt-F8 or Alt-Shift-F9
6004 Search for current identifier backward.
6005
6006 HOP Shift-F8 or ESC t or Alt-t
6007 Search for definition of current identifier (using tags file),
6008 or open file referred to. See ESC t below for further descrip‐
6009 tion.
6010
6011 HOP Ctrl-Shift-F8
6012 Search for identifier definition (prompts for identifier).
6013
6014 HOP Ctrl-F8 or Ctrl-Shift-F9
6015 Search for current character.
6016
6017 ^N or F9
6018 Search for next occurence (using previous search expression and
6019 direction).
6020
6021 ... with HOP:
6022 Repeat last but one search; two alternating search expressions
6023 can be used with this command.
6024
6025 Alt-F9 Search again (for last expression) but in the opposite direc‐
6026 tion.
6027
6028 ESC , or Shift-F8
6029 (Global) Substitute (prompt for search and replacement strings).
6030
6031 ESC r or Ctrl-F8
6032 (Global) Replace with confirmation prompting (first prompt for
6033 strings).
6034
6035 ESC R or Ctrl-Shift-F8
6036 (Line Replace) Substitute on current line (prompt for strings).
6037
6038 ESC ( or ESC ) or ESC { or ESC }
6039 Perform one of the following matching searches, depending on
6040 text: Search for corresponding bracket matching the bracket at
6041 current position in one of the pairs (), [], {}, <>, «».
6042 (Nested matching bracket pairs are skipped.) In an HTML or XML
6043 file, search for matching tag (nesting considered). Search for
6044 matching /* */ comment delimiter. Search for matching #if
6045 #else/#elif #endif structures (nesting considered). On an #else
6046 or #elif directive, the search direction depends on the command
6047 character, i.e. ESC ( searches backward, ESC ) searches forward.
6048 In a mailbox file, on any mail header line, search for next or
6049 previous mail message, depending on the command character, i.e.
6050 ESC ( searches backward, ESC ) searches forward. In a mailbox
6051 file or saved mail message, on a MIME separator, search for next
6052 or previous MIME separator, depending on the command character,
6053 i.e. ESC ( searches backward, ESC ) searches forward.
6054
6055 ESC t or Alt-t or HOP Shift-F8
6056 Search for and move to the location of the definition of identi‐
6057 fier at the current cursor position. This command uses the tags
6058 file that can be generated with the ctags command (Unix). It
6059 opens another file if necessary and automatically saves the cur‐
6060 rent file then.
6061 On an include statement (line beginning with "include" or
6062 "#include"), the command opens the included file.
6063 Like with a number of positioning commands, ESC t places the
6064 current position on the position marker stack before going to
6065 the location of the identifier definition. The command ESC Enter
6066 (Alt-Enter) can move back to that position, even if edited files
6067 were changed with the command.
6068
6069 HOP ESC t or HOP Ctrl-Shift-F8
6070 Similar, but prompts for identifier.
6071
6072 HOP ESC ( or Alt-F11
6073 Search for a character encoded in the "wrong encoding", i.e. a
6074 UTF-8 character in Latin-1 mode, or a Latin-1 character in UTF-8
6075 mode.
6076
6077 Search expressions: Special functions
6078 matches any character
6079
6080 ^ (at begin of pattern) restricts match to the begin of a line
6081
6082 $ (at end of pattern) restricts match to the end of a line
6083
6084 [< character set >]
6085 matches any one of a set of characters; the set may be given by
6086 listing elements, denoting a range < c1 >...< c2 >, or negating
6087 the whole set [^< character set >]
6088
6089 \< character >
6090 matches the character literally (except n or r)
6091
6092 < pattern >*
6093 (a star appended to a plain character of any of the patterns
6094 above) matches a repetition of this pattern (zero or more
6095 times); not applicable to line end patterns
6096
6097 ^V^J (a literal linefeed character, entered with ^V prefix)
6098 searches for any real newline (to be used embedded in the search
6099 pattern, does not match on last line)
6100
6101 \n→NEW→
6102 searches for a Unix newline (LF) (to be used embedded in the
6103 search pattern, does not match on last line)
6104
6105 \r searches for DOS/Windows newline (CRLF) (to be used embedded in
6106 the search pattern, does not match on last line)
6107
6108 \R→NEW→
6109 searches for Mac newline (CR) (to be used embedded in the search
6110 pattern, does not match on last line)
6111
6112 \0→NEW→
6113 searches for NUL character, represented as a pseudo line end
6114
6115 ^V^M searches for CR (carriage return) character embedded in a line
6116
6117 Replacement strings: Special functions
6118 & is replaced by the matched pattern to be replaced
6119
6120 ^V^J or \n
6121 (a linefeed character) embeds a newline (LF character) in the
6122 replacement string
6123
6124 \r (a carriage return character) embeds a CR character in the
6125 replacement string
6126
6127 To change the line end type of a line or all lines, use "Lineend
6128 type..." from the Options menu.
6129
6130 File operations
6131 ESC w or F2
6132 Save (write back) current text to file (only if modified). Save
6133 file information (editing position etc), create file info file
6134 if needed.
6135
6136 ... with HOP:
6137 Save current file position and other editing information in file
6138 info file, so that subsequent editing sessions will start at the
6139 current position and remember formatting parameters.
6140
6141 ESC W or Shift-F2
6142 Save (write back) current text to file (unconditionally). Also
6143 enable memory for file positions in current directory (creates
6144 file info file).
6145
6146 Alt-F2 Save As; save current text to file with different name; file
6147 permissions (access modes) are preserved and cloned.
6148
6149 Ctrl-Shift-F2 or HOP Shift-F2
6150 Save to file, and enable memory for file positions in current
6151 directory (creates file info file).
6152
6153 F3 Edit another file (prompt for save if current text changed).
6154
6155 Ctrl-F3 or ESC v
6156 View another file (prompt for save if current text changed).
6157
6158 ESC V Toggle between edit mode and view only mode.
6159
6160 ESC q Quit the editor (prompt for save if current text changed).
6161
6162 ESC ESC or Ctrl-F2
6163 Exit editing current text (save first if changed), continue with
6164 the next file (from the File switcher list); exit mined if there
6165 is no subsequent file to edit. Note: If a file name occurs on
6166 the command line multiple times (explicitly or by wildcard
6167 expansion), file list navigation is not linear. Note: There is
6168 a small delay after typing ESC ESC. (This is in order to enable
6169 recognition of Alt-function key combinations which are imple‐
6170 mented by some terminals or terminal modes by prefixing ESC to
6171 the function key escape sequence.) This delay can be avoided by
6172 using Ctrl-F2.
6173
6174 ESC + Edit the next file (from the File switcher list) Note: If a file
6175 name occurs on the command line multiple times (explicitly or by
6176 wildcard expansion), file list navigation is not linear.
6177
6178 ... with HOP:
6179 Edit the last file.
6180
6181 ESC - Edit the previous file (from the File switcher list)
6182
6183 ... with HOP:
6184 Edit the first file.
6185
6186 ESC # Ask for index into the list of files and edit that file.
6187
6188 ^G N # or ESC g N #
6189 Edit Nth file. (^G N f also works.)
6190
6191 ESC # #
6192 Reload file currently being edited.
6193
6194 Menu
6195 ESC Space or Alt-Space or Shift-F10
6196 Open Popup menu.
6197
6198 ESC F10 or Alt-F10 or Ctrl-F10
6199 Open first flag menu (Info menu).
6200
6201 ESC f or Alt-f or F10
6202 Open File menu.
6203
6204 ESC < letter > or Alt-< letter >
6205 Open menu.
6206
6207 ESC I or Alt-I or ESC K or Alt-K or Ctrl-F12
6208 Open the Input Method selection menu. (Alt-I/Alt-K/Ctrl-F12
6209 also works on prompt line)
6210
6211 ESC Q or Alt-Q
6212 Open the Smart Quotes selection menu.
6213
6214 ESC E or Alt-E
6215 Open the Encoding selection menu.
6216
6217 Miscellaneous
6218 ESC = < count >
6219 Repeat a command < count > times (prompts for count). Example:
6220 ESC=7< cursor down > moves the cursor 7 lines down. Note: If
6221 the function to be repeated is a character to be inserted and
6222 the input is keyboard mapped to a multi-character sequence, only
6223 the first character of the sequence is inserted repeatedly.
6224
6225 ESC < count >
6226 Repeat a command < count > times (prompts for rest of count);
6227 this short form is only accepted, however, if the repeat count
6228 consists of at least two digits (this is to avoid confusion with
6229 function key escape sequences of certain terminals). Example:
6230 ESC77. enters a line of 77 dots, ESC07x enters "xxxxxxx".
6231
6232 ^V < function key >
6233 Invoke function as if pressed together with the control key.
6234 E.g. ^V < cursor-left > moves left into the parts of a combined
6235 character just like Ctrl-cursor-left would do (the latter may
6236 depend on proper terminal setup).
6237
6238 ^\ Abort current command, e.g. while on prompt line.
6239
6240 ESC ? Show the current status of the file (name, whether modified,
6241 current line, number of lines, characters, and bytes).
6242
6243 ... with HOP:
6244 Toggle permanent display of text status line. Note that when
6245 editing a file that does not fit completely in memory (e.g.
6246 large file on old system), this option may cause considerable
6247 swapping. In that case, do not use the feature.
6248
6249 ESC u Display the character code of the current character in the bot‐
6250 tom status line. (In UTF-8 encoded text mode, both the UTF-8
6251 byte sequence and the Unicode value are displayed; in CJK or
6252 mapped 8 bit encoded text mode, Han or 8 bit character values
6253 and corresponding Unicode values are displayed when applicable.)
6254 In non-Latin-1 encoded text mode, additional Unicode information
6255 is included, indicating the script, character category, width,
6256 combining, and surrogate properties of the character.
6257
6258 ... with HOP:
6259 Toggle permanent character code display.
6260
6261 ESC T Toggle Tab width. Alternates the width interpretation of Tab
6262 characters between 2-4-8.
6263
6264 ... with HOP:
6265 Toggle Tab expansion (input substitution with spaces).
6266
6267 ESC P Set page length (number of lines that mined assumes to be on a
6268 page). (Useful for status display.)
6269
6270 ESC a Toggle append mode (append to text buffer/file instead of over‐
6271 writing).
6272
6273 ESC d Show current directory / change to another one (also change
6274 drive in MSDOS version).
6275 The assumed (relative) file path name as well as file permis‐
6276 sions (access modes) are preserved.
6277
6278 ESC n or Set Name... from File menu
6279 Change the file name associated with the text being edited; the
6280 file is not actually saved yet but only the new file name is
6281 used for saving the next time. The text is detached from the
6282 file previously loaded which is not affected.
6283 All current text editing properties (assumed encoding, smart
6284 quotes style, margins, ...) as well as file permissions (access
6285 modes) are preserved.
6286
6287 ESC . Redraw the screen.
6288
6289 →NEW→ Alt-F12
6290 (In terminals that support an alternate screen view:)
6291 Switch to normal screen (to view command line history and possi‐
6292 bly mouse-copy/paste) until next input.
6293
6294 ESC l Make screen lower (decrease number of screen lines).
6295
6296 ESC L Make screen higher (increase number of screen lines).
6297
6298 ESC % Make screen smaller (decrease screen size).
6299
6300 ESC & Make screen bigger (increase screen size).
6301
6302 Shift-keypad-Minus
6303 Make font smaller. (Works in mintty and natively in xterm.)
6304
6305 Shift-keypad-Plus
6306 Make font bigger. (Works in mintty and natively in xterm.)
6307
6308 ESC z Suspend editor process; first write back file if modified (no
6309 write if HOPped or given empty file name on prompting). Mined
6310 detects (by checking process and group IDs and terminals)
6311 whether it is safe to suspend and rejects it otherwise (e.g. if
6312 it is run embedded within a terminal, without underlying shell,
6313 or from a shell script).
6314
6315 ESC ! Fork off a shell and wait for it to finish.
6316
6317 ... with HOP:
6318 Invoke operating system command (prompted for) with paste buffer
6319 as input.
6320
6321 F1 or Help or Alt-h or ESC h
6322 Interactive help function. Selection of help topics is offered
6323 and prompted; after entering the initial letter, the respective
6324 help section is shown.
6325 If another (modified) F1 key, a modified digit key, or a Ctrl-
6326 modified punctuation key is entered, a corresponding key assign‐
6327 ment help bar is displayed (see F1 F1 etc. below).
6328 The help file mined.hlp is installed with the Mined runtime sup‐
6329 port library. If this is not installed in one of the standard
6330 locations, the environment variable MINEDDIR should be set to
6331 point to the directory so mined can find its help file.
6332
6333 F1 F1 or Shift-F1 or Ctrl-F1 or Alt-F1 or Ctrl-Shift-F1 or Alt-Shift-F1
6334 Display a help bar (in the bottom status line) with short indi‐
6335 cations of the functions assigned to the function keys F2... in
6336 the corresponding modified mode (i.e. with Control, Shift, and
6337 Alt as requested for the help bar).
6338
6339 ... with HOP:
6340 Toggle permanent help bar display.
6341
6342 F1 Ctrl-1 or F1 Alt-1 or F1 Alt-Ctrl-1
6343 Display a help bar (in the bottom status line) with short indi‐
6344 cations of the accent prefix functions assigned to the digit
6345 keys 1..9, 0 in the corresponding modified mode (i.e. with Con‐
6346 trol and Alt as requested for the help bar).
6347
6348 ... with HOP:
6349 Toggle permanent help bar display.
6350
6351 F1 Ctrl-< punctuation key > e.g. F1 Ctrl-,
6352 Display a help bar (in the bottom status line) with short indi‐
6353 cations of the accent prefix functions assigned to the Ctrl-mod‐
6354 ified punctuation keys.
6355
6356 ... with HOP:
6357 Toggle permanent help bar display.
6358
6359 ESC While a command is active and prompting (e.g. for a search
6360 expression), ESC aborts the current command.
6361
6362 ESC Space
6363 Do nothing, so the Space key aborts the ESC command.
6364
6365 MSDOS keyboard functions
6366 Ctrl-Alt-Space
6367 Set mark (to remember the current location).
6368
6369 Alt-TAB (not in Windows)
6370 HOP / Go to.
6371
6372 Ctrl-* (on keypad)
6373 HOP / Go to.
6374
6375 Ctrl-/ (on keypad)
6376 Search forward.
6377
6378 Alt-/ (on keypad)
6379 Search backward.
6380
6381 Screen size change functions
6382 MSDOS screen size changes depend on a table of common VGA video
6383 modes (dosvideo.t).
6384 In the presence of a TSR driver which can change fonts and
6385 screen modes while running a program (e.g. the excellent VGA‐
6386 MAX), the actual change effective may occasionally be unex‐
6387 pected. Mined recognises such changes after the next character
6388 input and adjusts to them.
6389
6390 Alt-- (on keypad)
6391 Change video lines mode to the mode with the next smaller number
6392 of lines but same number of columns. (The number of lines is
6393 first tried to be decreased within the current video mode. If it
6394 is already the lowest, the next video mode is chosen.)
6395
6396 Alt-+ (on keypad)
6397 Change video lines mode to the mode with the next higher number
6398 of lines but same number of columns.
6399
6400 Ctrl-- (on keypad)
6401 Change video mode to the mode with the next smaller total reso‐
6402 lution (lines * columns).
6403
6404 Ctrl-+ (on keypad)
6405 Change video mode to the mode with the next higher total resolu‐
6406 tion.
6407
6408 HOP Ctrl-/Alt- +/- (on keypad)
6409 Several other video mode settings are prompted for (experimen‐
6410 tal).
6411
6412 <!p>
6413
6414 Emacs mode
6415 Mined emulates emacs keyboard layout and some specific functions if
6416 invoked with the option -e or with the command name alias minmacs.
6417 In emacs mode, emacs command key assignments to control keys, ESC (Meta
6418 commands) and ^X (C-X commands) are configured. In addition, the fol‐
6419 lowing emacs-compatible changes apply:
6420
6421 · The mined ESC commands can be reached via M-x. (Function
6422 keys remain unaffected.)
6423
6424 · The Del key (on the small keypad) is configured to delete
6425 the previous character.
6426
6427 · The control key insertion prefix is ^Q.
6428
6429 · The quit character (e.g. for the prompt line) is ^G.
6430
6431 · The emacs multiple buffer ring is fully enabled.
6432
6433 · Paragraph justification mode is set to consider an empty
6434 line as paragraph separation by default.
6435
6436 · Mined ESC commands can be reached via M-x (Alt-X).
6437
6438 · ^\ (Ctrl-\) is interpreted as an additional HOP key.
6439
6440 · Keyboard mapping (input method) can be toggled with Ctrl-
6441 Alt-F12
6442
6443 Command overview:
6444
6445 ^A, ^B, ^E, ^F, ^N, ^P, ^V, M-v, M-b, M-f, M-a, M-e, M-< , M->, ^X[,
6446 ^X]
6447 cursor and screen movement
6448
6449 ^D delete character
6450
6451 ^O insert new line
6452
6453 ^Q insert literal character
6454
6455 ^@ mark position
6456
6457 ^W / M-w
6458 cut / copy to buffer
6459
6460 ^K delete to end of line / delete line end, and append to buffer
6461
6462 M-d / M-k
6463 delete word / delete end of sentence, and append to buffer
6464
6465 ^Y paste buffer
6466
6467 M-y paste previous buffer, replacing text just pasted
6468
6469 M-u transform word upper-case
6470
6471 M-l transform word lower-case
6472
6473 M-c transform word capitalised (initial upper-case)
6474
6475 ^S, ^R search forward / reverse
6476
6477 M-% replace with confirmation
6478
6479 M-. search for identifier definition (using tags file)
6480
6481 ^X^S, ^Xs
6482 save file
6483
6484 ^X^W save file as (using different name)
6485
6486 ^X^F edit other file (prompts for name)
6487
6488 ^X^B edit previous file (among those listed on command line)
6489
6490 ^X^C quit editor, prompt for saving text first
6491
6492 ^Xk discard current edit buffer (after confirmation), open new one
6493
6494 ^Xi insert file
6495
6496 ^X= display file statistics
6497
6498 ^L refresh display
6499
6500 ^U, ^X^[
6501 repeat (not as generic numeric command parameter)
6502
6503 ^H help
6504
6505 ^Z, M-z, ^X^Z
6506 suspend editor
6507
6508 ^\ (mined add-on)
6509 HOP (generic function amplifier / expander)
6510
6511 M-x (Deprecated mined add-on)
6512 invoke mined ESC command
6513
6514 ESC ESC (mined add-on)
6515 invoke mined ESC command
6516
6517 <!p>
6518
6519 Windows keyboard mode
6520 Mined emulates typical Windows control key functions if invoked with
6521 the option +ew; this is enabled automatically when invoking mined via
6522 the wined.bat script or from the Windows explorer context menu of a
6523 text file.
6524 The usual Escape commands and function key assignments of mined also
6525 apply in Windows keyboard mode. Also, ^@ and ^_ are included to provide
6526 the respective functionality.
6527
6528 ^@ mark position
6529
6530 ^C copy selected text area (between marked and current position)
6531
6532 ^F search
6533
6534 ^G goto
6535
6536 ^H replace (with confirm)
6537
6538 ^O open other file
6539
6540 ^P print
6541
6542 ^Q quit
6543
6544 ^S save file
6545
6546 ^V paste
6547
6548 ^W close file
6549
6550 ^X cut selected text area (between mark and current position)
6551
6552 ^_ insert control character
6553
6554 <!p>
6555
6556 WordStar mode
6557 Mined emulates WordStar keyboard layout and some specific functions if
6558 invoked with the option -W or with the command name alias mstar.
6559 The usual Escape commands and function key assignments of mined also
6560 apply in WordStar mode.
6561 In prefixed two-key commands, the control state and case of the second
6562 key does not matter, e.g. ^K^B, ^KB and ^Kb are identical.
6563
6564 ^S, ^D, ^E, ^X, ^A, ^F, ^R, ^C, ^W, ^Z, ^H
6565 cursor and screen movement
6566
6567 ^G delete character
6568
6569 ^T delete word
6570
6571 ^Y delete line
6572
6573 ^Q^Y delete to end of line
6574
6575 ^N insert new line
6576
6577 ^P insert control character
6578
6579 ^Q^W, ^Q^Z
6580 scroll multiple screen lines
6581
6582 ^Q^F find
6583
6584 ^Q^A find and replace (with HOP: with confirm)
6585
6586 ^L repeat last search
6587
6588 ^Q HOP key
6589
6590 ^Q, ^K, ^O
6591 two-key command prefixes
6592
6593 ^Q^Q repeat following command
6594
6595 ^B paragraph justification (word wrap)
6596
6597 ^OL set left margins
6598
6599 ^OG set left margin for first line of paragraph
6600
6601 ^OR set right margin
6602
6603 ^KB set marker
6604
6605 ^QB goto marker
6606
6607 ^Kn (n=0..9) set marker n
6608
6609 ^Qn (n=0..9) goto marker n
6610
6611 ^KK copy between here and marker (not exactly WS function)
6612
6613 ^KC copy (paste) saved text here (not exactly WS function)
6614
6615 ^KY delete between here and marker (not exactly WS function)
6616
6617 ^KV copy (paste) saved text here (not exactly WS function)
6618
6619 ^KW write paste buffer to file
6620
6621 ^KR read (insert) file here
6622
6623 ^KS write (save) edited text to file
6624
6625 ^KD write (save) edited text to file, edit next file
6626
6627 ^KX exit (and save)
6628
6629 ^KQ quit (don't save)
6630
6631 ^KL change current directory
6632
6634 User preferences can be configured in a runtime configuration file
6635 $HOME/.minedrc. (On Windows systems, if the environment variable %HOME%
6636 is not set, %USERPROFILE%\.minedrc will be used.) →NEW→ It is possible
6637 to configure conditional preferences based on file type (filename pat‐
6638 tern) or terminal type.
6639 A documented sample file is included in the Mined runtime support
6640 library as conf_user/minedrc or in the web documentation.
6641 →NEW→ Volatile preferences when editing multiple files:
6642 Note that options relating to editing features (such as tabwidth) will
6643 be re-established on each file opened, while options relating to inter‐
6644 active behaviour or display features (such as file_chooser sorting
6645 options) will remain changed after they are toggled interactively (e.g.
6646 from the Options menu), so the preference selected here is volatile for
6647 them.
6648
6650 A number of configuration options have already been addressed through‐
6651 out the manual page. A few more configuration features are mentioned
6652 here. For more details, examples, and other display settings see the
6653 example script conf_user/profile.mined in the Mined runtime support
6654 library.
6655
6656 Mined runtime support library
6657 The mined distribution provides a collection of runtime support files
6658 (in subdirectory usrshare); if mined is installed into standard loca‐
6659 tions, they are copied to one of the directories /usr/share/mined,
6660 /usr/share/lib/mined, /usr/local/share/mined, /opt/mined/share,
6661 $HOME/opt/mined/share (depending on operating system and installation
6662 options).
6663
6664 Mined runtime support includes:
6665
6666 · Package documentation
6667
6668 package_doc/*
6669 mined package overview, introduction, change log, license
6670
6671 · Web documentation
6672
6673 doc_user/*
6674 copy of the web documentation including the HTML version
6675 of the mined manual page
6676
6677 · Interactive help
6678
6679 help/mined.hlp
6680 help file (for F1 commands)
6681
6682 · Configuration example files
6683
6684 conf_user/minedrc
6685 user preferences configuration sample file; to be copied
6686 to $HOME/.minedrc (on Windows systems, if the environment
6687 variable %HOME% is not used, copy the sample file to
6688 %USERPROFILE%\.minedrc)
6689
6690 conf_user/profile.mined
6691 shell commands to set environment variables for mined,
6692 template for inclusion in $HOME/.profile
6693
6694 conf_user/Xdefaults.mined
6695 xterm configuration entries suitable for mined, template
6696 for inclusion in $HOME/.Xdefaults or $HOME/.Xresources
6697
6698 conf_user/xinitrc.mined
6699 shell commands to activate Xdefaults.mined, template for
6700 inclusion in $HOME/.profile
6701
6702 conf_user/kp5
6703 shell script to assign the X key symbol Menu to the mid‐
6704 dle keypad key ("5") as a remedy to the inability of the
6705 KDE konsole terminal to recognise that key (due to a
6706 deficieny in the QT framework), thus enabling the HOP key
6707 in konsole
6708
6709 conf_user/mlterm/main
6710 mlterm configuration to enable Alt-key detection, for
6711 inclusion in $HOME/.mlterm/main
6712
6713 conf_user/mlterm/key
6714 mlterm configuration for modified (shifted etc) function
6715 keys, for inclusion in $HOME/.mlterm/key
6716
6717 conf_user/konsole/xterm-modified.keytab
6718 KDE konsole keyboard configuration providing a terminal
6719 (called "xterm with key modifiers" in the konsole menu)
6720 with modified (shifted etc) function keys
6721
6722 conf_user/terminator/options
6723 option to be added for the Terminator Java terminal to
6724 enable Alt-letter functions
6725
6726 conf_user/MINED-VMS.COM
6727 commands to define mined commands and set up help for DCL
6728 on VMS
6729
6730 · Scripts to be used at runtime
6731
6732 bin/uprint
6733 script for printing a Unicode file, using either paps or
6734 uniprint for formatting; under Windows, it can also use
6735 notepad /p for printing
6736
6737 · Scripts to start mined
6738
6739 bin/uterm
6740 script to invoke xterm in UTF-8 mode; it should also be
6741 installed into the system binary path and has its own
6742 manual page
6743
6744 bin/mterm
6745 script to invoke mlterm with suitable options (for bidi
6746 support)
6747
6748 bin/umined
6749 script to start mined in a separate xterm window, using
6750 UTF-8 mode with most recent version of Unicode width data
6751 (specifying wide and combining characters) as built-in to
6752 xterm
6753
6754 bin/xmined
6755 script to start mined in a separate xterm window, using
6756 same encoding mode as currently set
6757
6758 bin/wined
6759 (on Windows) cygwin script to start mined in a window
6760 (using the mintty terminal, applying Windows look-and-
6761 feel)
6762
6763 bin/wined.bat
6764 (on Windows) command script to start a mined window in
6765 Windows keyboard emulation mode
6766
6767 · Files to setup a mined installation
6768
6769 setup_install/mined.desktop
6770 KDE desktop entry to start mined in an xterm from a menu
6771 entry, using the uterm script
6772
6773 setup_install/mined.ico
6774 Cygwin/X desktop icon for adding mined to the Cygwin-X
6775 Editors section in the Windows Start menu
6776
6777 · Scripts to configure an environment for mined
6778
6779 setup_install/bin/configure-xterm
6780 sample configuration script to build xterm with recom‐
6781 mended configuration options
6782
6783 setup_install/bin/makeprint
6784 script to search for or retrieve and build the uniprint
6785 program from the yudit package
6786
6787 setup_install/bin/installfonts
6788 script for downloading the Unicode-enhanced X screen
6789 fonts and installing them with your X server
6790
6791 setup_install/bin/bdf18to20
6792 script to transform an 18x18 pixel double-width screen
6793 font into a corresponding 20x20 pixel font matching the
6794 10x20 single-width font (which is much nicer than the
6795 9x18)
6796
6797 setup_install/cyg/*
6798 optional postinstallation (not in use) for cygwin to
6799 install mined with the Windows desktop and the Cygwin/X
6800 menu
6801
6802 setup_install/win/*
6803 installation of the Windows stand-alone version
6804
6805 PC versions
6806 For Windows with a cygwin system (http://cygwin.com/), mined is avail‐
6807 able as a cygwin package.
6808 Two other versions are available for DOS/Windows systems:
6809
6810 · Stand-alone Windows version, compiled with cygwin. It
6811 runs in a Windows console, Windows terminal (e.g.
6812 mintty), or X terminal. It is packaged together with
6813 mintty. Its installation registers its invocation (in
6814 mintty) from the Windows context menu for text files.
6815
6816 · DOS version, compiled with djgpp. It runs on plain DOS
6817 (with some special support of FreeDOS codepage configura‐
6818 tion) or in a Windows console window (DOS command window)
6819 but not in a typical terminal application like mintty or
6820 xterm. It supports long file names in Windows
6821 98/2000/XP/... (not NT4.0).
6822 See the mined web site http://towo.net/mined/ for download.
6823
6824 For hints on PC-specific terminal configuration issues, see PC termi‐
6825 nals below.
6826
6827 VMS version
6828 Mined runs on OpenVMS, with a number of specific adaptations especially
6829 in file handling.
6830
6831 · Options containing capital letters need to be quoted,
6832 e.g. MINED "-Qa" [-]*.com. Mined options can also be
6833 passed in the symbol MINED$OPT.
6834
6835 · Filename wildcard expansion is applied, accepting both
6836 Unix-like and VMS-native subdirectory notations.
6837
6838 · File versions can optionally be specified and are handled
6839 properly; for example, an explicit version opened for
6840 editing can be saved and will be the most recent version
6841 as expected.
6842 Note: To combine wildcards with version specifications,
6843 use VMS-native pathname notation (and do not use a final
6844 ";" without version specification), e.g.: []x*;* to edit
6845 all versions of all files x* [.cmd]x*;1 to edit version 1
6846 of all files cmd/x*
6847
6848 · The file chooser accepts Unix-like or VMS-style directory
6849 notations for navigation. Switching to the current
6850 directory (TAB or Enter) which is the first entry of the
6851 file chooser list, displayed in VMS style, turns the file
6852 list into VMS-style listing of all file versions.
6853 Logical names can be used for direct navigation if a
6854 final ":" is included (like SYS$LOGIN:).
6855
6856 · Note that opening the file chooser may be slow on large
6857 directories.
6858
6859 · If the terminal window is resized while mined is running,
6860 mined will notice and adjust after an explicit refresh
6861 (ESC .). The system, however, is not notified of the
6862 changed window size in this case. Please resize (again)
6863 when back on the command line.
6864
6865 · The capability to accept terminal copy-paste is limited
6866 by the VMS 80 character input buffer (not limited on emu‐
6867 lated VMS, e.g. on "Personal Alpha"). For some remote
6868 terminals (mintty, rxvt), full Unicode data version
6869 detection is disabled to reduce start-up delay.
6870
6871 · The file info memory files are called .$mined instead of
6872 .@mined, recovery files are called $name$ instead of
6873 #name#.
6874
6875 · In the VAX version, CJK character encodings, Han charac‐
6876 ter information, and Unicode character information tables
6877 are not included by default. Alpha and IA64 versions
6878 include all Unicode and character encoding features.
6879
6880 · For hints related to the DECterm window, see below.
6881 See the template script MINED-VMS.COM in the conf_user subdirectory of
6882 the Mined runtime support library or the file README.vms (MINED.README
6883 in the VMS binary package) for installation hints.
6884
6885 Android version
6886 There are a number of deviations from typical Linux systems; mined pro‐
6887 vides workarounds where necessary. Mined runs on Android with these
6888 Apps installed:
6889
6890 · C4droid (needed as container for gcc)
6891
6892 · GCC for C4droid (to compile mined)
6893
6894 · Better Terminal (recommended, for shell and terminal)
6895
6896 · UniversalAndroot (to access gcc from terminal shell) for
6897 Android < 4
6898
6899 Terminal environment
6900 For terminal-specific hints, see Terminal interworking problems below
6901
6902 On Unix, the terminal type is determined from the environment variable
6903 TERM. The termcap/terminfo mechanism is used to derive the actual prop‐
6904 erties of the terminal; for some terminals (cygwin, xterm, rxvt, vt*),
6905 this information is also built-in as a fallback in case terminal infor‐
6906 mation is not available on a system (this is especially useful for the
6907 cygwin stand-alone version).
6908
6909 Recognition of some special terminal features or restrictions is asso‐
6910 ciated with the setting of TERM (xterm, linux, vt100, sun*, cygwin,
6911 rxvt, *ansi*, 9780*, hp*, xterm-hp, superbee*, sb*, microb*, scoansi*,
6912 xterm-sco, cons*, att605-pc, ti_ansi, mgterm). Non-trivial screen fea‐
6913 tures (like scroll reverse, add/delete line, erase multiple characters)
6914 are used if their support is indicated in the termcap/terminfo descrip‐
6915 tion of the terminal unless other information is available (e.g. after
6916 terminal version detection, an older xterm is supposed not to support
6917 erase characters). Since colour support is often not configured within
6918 terminfo but modern terminals do support it, mined always tries to
6919 apply colour attributes (if the terminal at least supports ANSI control
6920 sequences). A number of other "best practice" approaches are taken to
6921 optimize the usage of terminal capabilities, esp. covering different
6922 methods of graphics display support (for menu borders).
6923
6924 For detection of function keys and cursor keys, the escape sequences
6925 being used by terminals are often not known to an operating system
6926 environment because they are poorly and incompletely configured.
6927 Because this does usually not work as expected (see this bug report
6928 just for an example), mined does not rely on the termcap/terminfo con‐
6929 figuration of function key codes alone (which it considers however
6930 since mined 2000.14); rather it always accepts a wide variety of typi‐
6931 cal codes. A few ambiguous codes are resolved according to the TERM
6932 variable.
6933
6934 In an xterm, window headline and icon text are set to the current file‐
6935 name and "(*)" is added if the text has been modified.
6936
6937 Locale configuration
6938 The locale mechanism as implemented on modern systems has a number of
6939 design problems, one being that there is no explicit distinction
6940 between text encoding and terminal encoding although this is obviously
6941 a very different thing and mixed combinations of both may occur and are
6942 actually supported by mined.
6943 For this reason, mined extends the locale environment variable mecha‐
6944 nism with the variable TEXTLANG which is only considered for assumed
6945 text encoding (with precedence over the standard locale variables),
6946 →NEW→ and also considers LANGUAGE with precedence.
6947 →NEW→ If one of these additional locale variables (LANGUAGE or TEXT‐
6948 LANG) is used, mined also implicitly enables smart quotes.
6949 Also mined provides command line parameters to explicit override either
6950 text or terminal encoding (UTF-8 terminal encoding, however, is always
6951 auto-detected if the terminal provides the information).
6952
6953 · For text encoding, mined checks the variables →NEW→ LAN‐
6954 GUAGE, TEXTLANG, LC_ALL, LC_CTYPE, LANG in this order.
6955
6956 · For terminal encoding, mined checks the variables LC_ALL,
6957 LC_CTYPE, LANG in this order.
6958
6959 · Explicit command line parameters are available to specify
6960 either terminal encoding (+E) or text encoding (-E). They
6961 override environment variable settings.
6962
6963 · UTF-8 terminal auto-detection overrides other terminal
6964 encoding settings.
6965
6966 · Text encoding auto-detection overrides environment set‐
6967 tings but not command line settings.
6968
6969 · Assumed text encoding can be switched while editing.
6970
6971 For encoding recognition from locale environment variables, mined
6972 recognises locale specifications typically found in system installa‐
6973 tions, including those which do not include an explicit encoding suf‐
6974 fix. Known character encoding suffixes ("codeset" component of locale
6975 name, starting with ".") are recognised regardless of whether the given
6976 locale is installed or not. Other encodings are recognised by region
6977 suffix (starting with "_") or full locale name or alias.
6978 In addition to hard-coded locale recognition (especially for CJK),
6979 locale values and associated encodings are configured in the compile-
6980 time configuration file locales.cfg which especially lists locale names
6981 that do not have an explicit encoding suffix. You can use these set‐
6982 tings (known locale name or generic locale name suffix) even on legacy
6983 systems without locale support to indicate the terminal environment
6984 properly to mined. For encoding recognition from command-line parame‐
6985 ters, mined provides the following options:
6986
6987 · -EX or +EX with a single-letter encoding tag as listed
6988 with the description of the -E options; further encoding
6989 tags are configured in the compile-time configuration
6990 file charmaps.cfg.
6991
6992 · -E=charmap or +E=charmap with a character encoding name
6993 (as reported by the locale charmap command).
6994
6995 · -E.suffix or +E.suffix with a character encoding suffix
6996 ("codeset" of locale name).
6997
6998 · -E:flag or +E:flag with a 2-letter indication used by
6999 mined to indicate the respective text encoding in the
7000 Encoding flag.
7001
7002 · →NEW→ -E- or -E disables text encoding auto-detection
7003 which is then derived from the locale environment.
7004
7005 In these options, -E specifies
7006 text encoding while +E would specify terminal encoding to be
7007 assumed.
7008
7009 The following table lists encodings and major codepages that are recog‐
7010 nised by a generic locale suffix or country code; in addition (as men‐
7011 tioned above), a large number of locale names without encoding suffix
7012 as found on various systems is known to mined and will cause it to
7013 assume the corresponding terminal encoding.
7014
7015 Unicode: UTF-8
7016 suffixes: .UTF-8 / .utf8
7017
7018 Traditional Chinese (Hongkong): Big5 with HKSCS (includes CP950)
7019 suffixes: .BIG5* / .Big5* / .big5* / _HK / _TW (_TW ambiguous,
7020 following encoding overrides)
7021
7022 Simplified Chinese: GB18030 (includes CP936, GBK and GB2312)
7023 suffixes: .GB* / .gb* / .EUC-CN / .euccn / _CN.EUC / _CN
7024
7025 Traditional Chinese (Taiwan): CNS (EUC-TW)
7026 suffixes: .EUC-TW / .euctw / .eucTW / _TW.EUC
7027
7028 Japanese: EUC-JP
7029 suffixes: .EUC-JP / .eucjp / .eucJP / .ujis / _JP.EUC / _JP /
7030 .euc (.euc ambiguous, more specific string overrides)
7031
7032 Japanese: Shift_JIS / CP932
7033 suffixes: .Shift_JIS / .shiftjis / .sjis / .SJIS
7034
7035 Korean Unified Hangul: UHC / CP949 (includes EUC-KR)
7036 suffixes: .UHC / .EUC-KR / .euckr / .eucKR / _KR.EUC / _KR
7037
7038 Korean: Johab
7039 suffixes: .JOHAB
7040
7041 Vietnamese: VISCII
7042 suffixes: .viscii
7043
7044 Vietnamese: TCVN
7045 suffixes: .tcvn
7046
7047 Thai: TIS-620
7048 suffixes: .tis* / .TIS* / _TH / .iso8859[-]11 / .ISO8859[-]11
7049
7050 Latin-9: ISO 8859-15
7051 suffixes: @euro / .iso8859[-]15 / .ISO8859[-]15
7052
7053 Cyrillic: ISO 8859-5
7054 suffixes: @cyrillic (unless preceded by uz_UZ which indicates
7055 UTF-8)
7056
7057 Latin or other: ISO 8859 encodings
7058 suffixes: .iso8859[-]N / .ISO8859[-]N (with number N)
7059
7060 Russian Cyrillic: KOI8-R
7061 suffixes: .koi8r
7062
7063 Ukrainian Cyrillic: KOI8-U
7064 suffixes: .koi8u
7065
7066 Tadjikistan Cyrillic: KOI8-T
7067 suffixes: .koi8t
7068
7069 Russian, Ukrainian, Byelorussian Cyrillic: KOI8-RU
7070 suffixes: .koi
7071
7072 MacRoman:
7073 suffixes: .roman
7074
7075 Windows Latin: CP1252
7076 suffixes: .cp1252
7077
7078 Windows Cyrillic: CP1251
7079 suffixes: .cp1251
7080
7081 PC Latin: CP850
7082 suffixes: .cp850
7083
7084 Windows Hebrew: CP1255
7085 suffixes: .cp1255
7086
7087 Georgian: Georgian-PS
7088 suffixes: .georgianps
7089
7090 Armenian: ARMSCII
7091 suffixes: .ARMSCII-8
7092
7093 Kazachstan Cyrillic: PT154
7094 suffixes: .pt154
7095
7096 Examples: To indicate that mined is running in a UTF-8 terminal (nor‐
7097 mally auto-detected, included here for demonstration) and should assume
7098 GB18030 text encoding by default, invoke either of:
7099
7100 LC_ALL=whatever.UTF-8 TEXTLANG=zh_CN.gbk mined
7101
7102 LC_CTYPE=whatever.UTF-8 LANGUAGE=chinese mined
7103
7104 LANG=whatever.UTF-8 mined -EG
7105
7106 LC_ALL=en_IN mined -E.gbk
7107
7108 mined +EU -E.EUC-CN
7109
7110 mined +EU -E=GB18030
7111
7112 mined +EU -E:GB
7113
7114 Selecting UTF-16 text mode: To tell mined to interpret a file (or make
7115 a new file) in UTF-16 encoding, use the following command line options
7116 (first two little endian, then big endian):
7117
7118 mined -E:61
7119
7120 mined -E=UTF-16LE
7121
7122 mined -E:16
7123
7124 mined -E=UTF-16BE
7125
7126 mined -E=UTF-16
7127
7128 Selecting ASCII terminal mode: To tell mined to assume that a terminal
7129 cannot display anything but ASCII characters, use the command line
7130 option +E:AS. Mined implicitly assumes this setting if the environment
7131 variable TERM indicates a VT52 terminal.
7132
7133 PC terminals
7134 Character encoding of PC terminals is an even greater mess than on Unix
7135 systems. Mined provides heuristic best-guess assumptions about terminal
7136 encoding, supporting both local invocation as well as remote login from
7137 a PC (e.g. to a Unix machine).
7138
7139 The following assumptions are made based on environment variables or
7140 command-line parameters:
7141
7142 encoding ("codepage")
7143 environment
7144 option
7145 examples
7146
7147 CP850 (PC mapping of Latin-1 character set)
7148 TERM=ansi, ansi-nt, pcansi*, hpansi*, interix* or TERM=cygwin
7149 and CYGWIN contains "codepage:oem" or LC_*/LANG indicates
7150 ".CP850"
7151 +EP
7152
7153 · Windows console (DOS prompt) window
7154
7155 · Windows console mode telnet (even if called from cygwin console,
7156 sets TERM=ansi)
7157
7158 CP437 (IBM PC VGA encoding)
7159 TERM=nansi*, ansi.*, opennt*, *-emx* or LC_*/LANG indicates
7160 ".CP437"
7161 +Ep
7162
7163 · plain DOS
7164
7165 CP1252 (Windows ANSI extension of Latin-1)
7166 TERM=cygwin (unless LC_*/LANG or CYGWIN indicates other encod‐
7167 ing)
7168 +EW
7169
7170 · cygwin 1.5 console or application
7171
7172 · older Windows GUI telnet (sets TERM=ansi)
7173
7174 UTF-8
7175 LC_*/LANG indicates ".UTF-8" or (for cygwin 1.7 beta) TERM=cyg‐
7176 win and CYGWIN contains "codepage:utf8"
7177 +U
7178
7179 · cygwin 1.7 console or application configured for UTF-8 mode
7180
7181 · Note: Windows console in UTF-8 mode provides extended
7182 Unicode font support if you select "Lucida Console" True‐
7183 Type font from its Properties menu.
7184
7185 other codepages
7186 LC_*/LANG indicates codepage, e.g. ".CP1250" or ".CP858"
7187 or triggered by DOS codepage information (djgpp version, see
7188 note)
7189 +E=CP1250 or other codepage, or respective shortcut
7190
7191 · cygwin 1.7 console or application configured for respective
7192 codepage
7193
7194 Note: It is not unlikely that the assumption about the terminal encod‐
7195 ing taken by mined does not match the actual terminal encoding (e.g.
7196 mined cannot determine the encoding based on the ambiguous setting
7197 TERM=ansi). Environment variables that indicate the character encoding
7198 are unfortunately not maintained through telnet or remote login.
7199 Explicitly setting TERM to a suitable value after remote login may help
7200 but may not always work (e.g. pcansi is not a known terminal on SunOS).
7201 Explicitly setting locale variables, e.g. LC_CTYPE, may indicate the
7202 encoding to mined but may cause trouble otherwise; some systems like
7203 SunOS are dogmatic about interpreting locale variables and strictly ask
7204 corresponding locale data to be installed or they will flood you with
7205 bogus error messages. Also not all encodings, esp. PC "codepages", are
7206 known as a "locale charmap" on other systems.
7207 In these cases, you can use the explicit +E option to force mined to
7208 assume a specific terminal encoding; see the option values listed above
7209 for the main DOS encodings.
7210
7211 Note: The encoding emulated by cygwin (as configured, or by default
7212 typically CP1252 for cygwin 1.5, UTF-8 for cygwin 1.7) is not the
7213 encoding natively applied by the Windows console window (by default
7214 typically the DOS codepage CP850). This means that the effective
7215 encoding may be different if you invoke the cygwin-compiled mined ver‐
7216 sion and the djgpp-compiled mined version alternatingly; you may notice
7217 this by a different range of characters that can be displayed when
7218 opening the same file with the two mined versions.
7219 Some Windows Latin characters are poorly displayed by the Windows con‐
7220 sole in default configuration; cygwin 1.7 can display all characters
7221 properly if the Windows console font is configured to "Lucida Console"
7222 rather than "Raster Fonts".
7223 In a cygwin console on a non-cygwin system (after remote login), mined
7224 assumes ASCII as the terminal encoding by default unless properly indi‐
7225 cated by environment variables.
7226
7227 Note: The following DOS codepages are supported; they are mainly pro‐
7228 vided as terminal codepages, they do not appear in the Encoding menu.
7229 However, if you need, you can ask mined to use them as either the
7230 assumed terminal encoding (e.g. +E=CP1250 or +E:WE) or even text encod‐
7231 ing (e.g. -E=CP1250 or -E:WE) using the names or shortcuts from the
7232 list:
7233
7234 CP437
7235 PC
7236 DOS US
7237
7238 CP720
7239 DA
7240 →NEW→ DOS Arabic
7241
7242 CP737
7243 37
7244 DOS Greek
7245
7246 CP775
7247 75
7248 DOS Baltic
7249
7250 CP850
7251 PL
7252 DOS Western European
7253
7254 CP852
7255 52
7256 DOS Central European
7257
7258 CP853
7259 53
7260 South European, Esperanto
7261
7262 CP855
7263 55
7264 DOS Cyrillic
7265
7266 CP857
7267 57
7268 DOS Turkish
7269
7270 CP858
7271 58
7272 DOS Western, CP850 with Euro symbol
7273
7274 CP860
7275 60
7276 DOS Portuguese
7277
7278 CP861
7279 61
7280 DOS Icelandic
7281
7282 CP862
7283 62
7284 DOS Hebrew
7285
7286 CP863
7287 63
7288 DOS French Canadian
7289
7290 CP864E
7291 64
7292 DOS Arabic (CP864E, variant of AR864 (superset of CP864))
7293
7294 CP865
7295 65
7296 DOS Nordic
7297
7298 CP866
7299 66
7300 DOS Russian
7301
7302 CP869
7303 69
7304 DOS Modern Greek
7305
7306 CP874
7307 TI
7308 Windows Thai, superset of ISO-8859-11/TIS-620
7309
7310 CP1125
7311 25
7312 DOS Ukraine
7313
7314 CP1131
7315 31
7316 →NEW→ DOS Byelorussian/Ukrainian
7317
7318 CP1250
7319 WE
7320 Windows Central European
7321
7322 CP1251
7323 WC
7324 Windows Cyrillic
7325
7326 CP1252
7327 WL
7328 Windows Western European
7329
7330 CP1253
7331 WG
7332 Windows Greek
7333
7334 CP1254
7335 WT
7336 Windows Turkish
7337
7338 CP1255
7339 He
7340 Windows Hebrew
7341
7342 CP1256
7343 WA
7344 Windows Arabic
7345
7346 CP1257
7347 WB
7348 Windows Baltic
7349
7350 CP1258
7351 WV
7352 →NEW→ Windows Vietnamese
7353
7354 Note: For the djgpp version of mined, even the font chosen for the Win‐
7355 dows console window may affect the effective display encoding. Config‐
7356 ure "Raster Fonts" (except of size "10 x 20"!), not "Lucida Console" in
7357 order to make sure the effective visual codepage is the same as the one
7358 selected with the respective DOS tools (e.g. chcp) and assumed by
7359 mined.
7360
7361 Note: Mined (djgpp) tries to determine the DOS/Windows codepage using
7362 the DOS API; this can only work if the codepage was properly configured
7363 with DOS means (e.g. with CP858 using CHCP 858 or MODE CON CP
7364 SELECT=858, maybe enabled by DEVICE=...\DISPLAY.SYS CON=(EGA,858) on
7365 old DOS, or MODE CON CP PREP=((codepage list) ...\ega.cpi)); if only
7366 the font is switched to a differently encoded one, there is no way to
7367 detect this - in this case you can still use environment setting or the
7368 +E option as described above to indicate the terminal encoding.
7369
7370 Note: To enable mouse operation in a Windows console window, deactivate
7371 "QuickEdit mode" in the properties menu.
7372
7373 Note: If the DOS screen size is changed by a TSR (e.g. VGAMAX using a
7374 hotkey), mined does not notice this immediately; in that case, mined
7375 adjusts its screen display only after the next key is typed.
7376
7377 Note: Running mined (djgpp) in a dosemu session (DOS emulator on Linux)
7378 works fine, even in an xterm-embedded session although not perfectly in
7379 that case: ^S and ^Q are interpreted for flow control (thus ^S will
7380 hold all output until ^Q is entered), and the mined option -Qa should
7381 be used to tune menu borders right.
7382
7383 Terminal setup and configuration
7384 The Mined runtime support library includes a number of configuration
7385 files providing settings that should be applied to various terminals
7386 for proper operation of several features as described throughout this
7387 manual:
7388
7389 · Xdefaults.mined for major X Windows terminals: xterm,
7390 rxvt, some CJK xterm derivates (cxterm, kterm). The
7391 script xinitrc.mined (and optionally kp5) can be used to
7392 establish the suggested settings.
7393
7394 · konsole/xterm-modified.keytab for KDE konsole keyboard
7395 definitions
7396
7397 · mlterm/key and mlterm/main for mlterm keyboard defini‐
7398 tions
7399
7400 · terminator/options for terminator keyboard definitions
7401
7402 In some terminals, the cursor may not be well visible or not visible at
7403 all if the cursor is on a character with reverse background (control
7404 character, occurs e.g. in xterm) or highlighted background (invalid
7405 character code, occurs e.g. in xterm and rxvt). See the X resource
7406 parameters for "cursorColor" in the example configuration file Xde‐
7407 faults.mined for remedy.
7408
7409 If mouse wheel movement moves more than expected, especially if it can‐
7410 not move by single items in a menu, this is probably a configuration
7411 issue with your mouse driver. You are probably running a Windows-based
7412 X server which is (often by default) configured to generate multiple
7413 mouse wheel events on each actual mouse wheel movement. Often not even
7414 in the Control Panel mouse section, but only in a configuration menu of
7415 mouse-specific setup software (e.g. "Browser Mouse Settings"), config‐
7416 ure the scroll unit to 1.
7417
7418 Terminal interworking problems
7419 With some terminals, problems are known due to missing terminal fea‐
7420 tures or terminal bugs:
7421
7422 any terminal: menu border display
7423
7424 · If the borders of mined menus appear as letters rather than
7425 graphic borders, the terminal can unexpectedly not handle VT100
7426 graphics. Use the option -Qa to switch to ASCII borders, or
7427 -fff to limit font assumptions.
7428 In a UTF-8 terminal, mined uses Unicode Box Drawing characters
7429 by default. If they don't display they are missing in the font
7430 used by the terminal. Use the option -Qv to switch to VT100
7431 graphics or -Qa to switch to ASCII graphics. If borders are vis‐
7432 ible but without corners, use -Qs to switch to simple rectangu‐
7433 lar borders.
7434
7435 any terminal: slow terminal feature auto-detection
7436
7437 · On a slow remote terminal connection, escape sequences from the
7438 terminal (sent for function keys or requested terminal
7439 responses) may get delayed and split up. Mined tries to handle
7440 delayed parts of escape sequences graciously (→NEW→ improved
7441 again); however, this is limited as the explicit ESC key shall
7442 also be recognised.
7443 If messages like "Late screen mode response - ..." (after
7444 startup), "...awaiting slow terminal response" (esp. after
7445 startup), "...awaiting slow key code sequence" or "...absorbing
7446 delayed terminal..." occur, escape sequence detection may be
7447 adjusted by setting the environment variable ESCDELAY to a value
7448 of 2000 or 3000. (Delay during startup may apparently also be
7449 caused by on-demand font loading of rxvt or mlterm, however,
7450 mined applies special handling for this case.)
7451
7452 · If proper terminal detection fails for delay reasons, mined may
7453 especially not be aware of the terminal encoding (and display
7454 line markers as blocks). In this case, exiting and restarting
7455 mined should resolve the issue.
7456
7457 xterm
7458
7459 · To enable proper Alt-letter command input (for opening and navi‐
7460 gating menus), set the xterm resource metaSendsEscape to true
7461 (or with older versions of xterm, set eightBitInput to false) in
7462 your X configuration (usually $HOME/.Xdefaults or $HOME/.Xre‐
7463 sources) as suggested in the example file Xdefaults.mined in the
7464 Mined runtime support library.
7465
7466 · Although it is a waste of keyboard resources to have two indis‐
7467 tinguishable sets of keypad keys, most terminals provide no
7468 means of distinguish them towards the applications, at least not
7469 by default. Especially for a text editor, it is highly desirable
7470 to distinguish them in order to have a rich intuitive function
7471 key mapping at disposition which mined tries to achieve.
7472 One approach to improve mapping of useful key functions would be
7473 actual keyboard remapping (applicable on some terminals); this
7474 is a delicate approach, though, because it may create incompati‐
7475 bilities with other programs that rely strictly on installed
7476 terminfo information. Mined provides remapping recommendations
7477 for shifted keypad keys (with Shift, Control, Alt and combina‐
7478 tions of them) in the configuration sample files Xdefaults.mined
7479 (for xterm), konsole/xterm-modified.keytab (for KDE konsole),
7480 mlterm/key (for mlterm), in the Mined runtime support library.
7481 Due to the compatibility limitations mentioned above, however,
7482 the two Ins keys remain indistinguishable, and the two Del keys
7483 are only distinguishable if the xterm configuration resource
7484 *VT100*deleteIsDEL is set. Also, keypad and function key modifi‐
7485 cation with the Alt is ensured with the xterm resource
7486 *VT100*metaSendsEscape. Both resources are set to true in the
7487 configuration sample file just mentioned.
7488 These two resources can also be set dynamically with xterm.
7489 Mined can be told to do so with the command line option +D.
7490 (Unfortunately this handling cannot be enabled by default as it
7491 cannot be undone because the previous state cannot be detected.)
7492
7493 · Mined determines the xterm version in order to apply certain
7494 workarounds conditionally.
7495
7496 · If you run xterm in VT220 keyboard mode (using xterm option -kt
7497 vt220 or setting the configuration resource *keyboardType:
7498 vt220) you should make sure to also set the environment variable
7499 TERM=vt220 (e.g. using the xterm option -tn vt220 or setting the
7500 configuration resource *termName: vt220) so mined can properly
7501 set up the keypad functions.
7502
7503 · If you run xterm with the resource modifyCursorKeys or modify‐
7504 FunctionKeys set to value 1, mined will recognise the according
7505 keyboard sequences with the environment variable setting
7506 TERM=xterm-sco.
7507
7508 xterm on cygwin
7509
7510 · On cygwin, as on other systems, the script uterm is recommended
7511 to invoke an xterm that is properly configured to run UTF-8, and
7512 also to use a best choice of fonts for optimal Unicode coverage.
7513 See README.cygwin for more detailed advice.
7514
7515 xterm legacy CJK width mode
7516
7517 · Mined auto-detects and supports xterm legacy CJK width compati‐
7518 bility mode (xterm -cjk_width); character width and menu border
7519 layout are properly adjusted, stylish menu borders (-QQ) and
7520 fine-grained scroll bar display are disabled by default. (Note:
7521 In this mode, combining characters could unexpectedly change the
7522 width of a character by being substituted with its wide precom‐
7523 posed form (e.g. 'a' combined with U+0300) - which an applica‐
7524 tion can hardly handle; this bug was fixed in xterm 224 with a
7525 patch contributed by the mined author.)
7526
7527 rxvt
7528
7529 · When starting mined in a fresh rxvt terminal, and maybe even
7530 after starting your X server, some display (font?) initializa‐
7531 tion may take extremely long. If this results in an error mes‐
7532 sage, restart mined to ensure proper terminal properties auto-
7533 detection.
7534
7535 · Rxvt does not distinguish between Shift-F1 and F11 / Shift-F2
7536 and F12 / Ctrl-Shift-F1 and Ctrl-F11 / Ctrl-Shift-F2 and Ctrl-
7537 F12, so that the F1 and F2 keys modified with Shift cannot be
7538 recognised in rxvt by default. They can however be enabled with
7539 the keysym definitions in the file Xdefaults.mined in the Mined
7540 runtime support library.
7541
7542 · In rxvt, the two keypad Del keys (small keypad, numeric keypad)
7543 are automatically distinguished from each other and invoke the
7544 Delete character (small keypad) and Cut (numeric keypad) func‐
7545 tions, respectively (Ctrl-/Shift-/Alt- alternatives are sup‐
7546 ported as described in this manual). This works, however, only
7547 if mined can recognise rxvt; it is generally a bad idea to set
7548 TERM=xterm in rxvt, see also hint below.
7549
7550 · Also in rxvt, the two keypad Ins keys (small keypad left,
7551 numeric keypad right) are distinguished. The left Ins key posi‐
7552 tions the cursor left of the pasted region, the right Ins key
7553 positions it right.
7554
7555 · By setting rxvt in the mode that enables distinction between the
7556 two keypads, it can unfortunately not distinguish the right key‐
7557 pad modified with Ctrl- anymore, so Ctrl-Home/End/Del cannot
7558 work as desired.
7559
7560 · Ctrl-modified punctuation keys can be enabled by following the
7561 configuration samples of the file Xdefaults.mined in the Mined
7562 runtime support library.
7563 Note: Ctrl-modified and shifted punctuation keys interfere with
7564 ISO 14755 input mode of rxvt; if the following key is entered
7565 twice, that mode is aborted and the modified punctuation key
7566 becomes effective as an accent prefix in mined.
7567
7568 · To enable proper Alt-letter command input (for opening and navi‐
7569 gating menus), set the rxvt resource meta8 to false in your X
7570 configuration (usually $HOME/.Xdefaults or $HOME/.Xresources) as
7571 suggested in the example file Xdefaults.mined in the Mined run‐
7572 time support library.
7573
7574 · Later rxvt-unicode provides a CJK terminal emulation. CJK dis‐
7575 play is buggy for characters that rxvt thinks cannot be dis‐
7576 played, especially for GB18030 (LC_CTYPE=zh_CN.gb18030 rxvt) but
7577 also e.g. for EUC-JP (LC_CTYPE=ja_JP.eucjp rxvt); single bytes
7578 are then interpreted instead which amounts to an unpredictable
7579 screen width and cannot be correctly handled. (This applies
7580 mainly to character codes that are not mapped to Unicode but
7581 also to many that are mapped.)
7582 Moreover, CJK width handling is inconsistent for many characters
7583 in rxvt CJK mode (rxvt claims to adhere to the locale mechanism
7584 in this respect but that's not the case here - character widths
7585 are inconsistent with the locale, too).
7586 Remedy: Don't use rxvt in CJK-encoded mode; mined CJK terminal
7587 support is tailored to native CJK terminals (such as cxterm,
7588 kterm, hanterm) where it works fine - if you use a UTF-8-capable
7589 terminal, use it in UTF-8 mode! Mined can edit CJK-encoded files
7590 well in a UTF-8-encoded terminal.
7591
7592 · In rxvt, Unicode characters that are Not Assigned are always
7593 displayed as a single-width replacement character. This is not
7594 consistent with xterm behaviour which would display them as a
7595 double-width replacement if they are located within a double-
7596 width Unicode range (which sounds reasonable). This would cause
7597 display positioning inconsistencies. Mined has a workaround for
7598 some of these cases (assuming that rxvt runs the most recent
7599 Unicode width data version available; or actually the same as
7600 mined assumes - handling of multiple auto-detected terminal Uni‐
7601 code versions does not cover this special case).
7602
7603 · If the X windows servers has duplicate fonts installed under a
7604 common name (e.g. if it comes with a 10x20 non-Unicode font and
7605 you install a 10x20 Unicode font in addition), rxvt seems to use
7606 the wrong (i.e., non-Unicode) version of the font and does not
7607 find special characters like the default marker used in the
7608 flags menus (this was observed since rxvt 7.5, rxvt 5.8 was
7609 finding the proper font). Use the mined option -F to adapt mined
7610 to limited font usage, or fix the X server installation. Or use
7611 the script uterm to start rxvt-unicode. To start rxvt-unicode
7612 from an xterm, use uterm -rx.
7613
7614 · Due to the scrollbar display workaround for hanterm (see above),
7615 the scrollbar position may be shown as blank space instead of
7616 coloured (only in rxvt CJK mode with Korean encoding and if you
7617 explicitly set TERM=xterm which you shouldn't anyway in rxvt).
7618 In this case, coloured scrollbar foreground can be enabled with
7619 the environment variable MINEDSCROLLFG="44;36" or MINED‐
7620 SCROLLFG="38;5;45".
7621
7622 · As a workaround for an xterm bug on cygwin, mined applies termi‐
7623 nal size re-adjustment. This may confuse rxvt (being resized to
7624 an unexpectedly large window) if it pretends to be xterm.
7625 Remedy: in rxvt, make sure that the environment variable
7626 TERM=rxvt (or rxvt-unicode); the according X resource
7627 (Rxvt.termName: rxvt) is also listed in the file Xdefaults.mined
7628 in the Mined runtime support library.
7629
7630 · Mined determines the rxvt version in order to use certain fea‐
7631 tures conditionally.
7632
7633 · CJK-mode rxvt: rxvt has some character width bugs when running
7634 in CJK encoding; e.g. when running rxvt in Big5 terminal encod‐
7635 ing (locale zh_TW), U+FA18 is displayed with wrong screen width
7636 while in older version U+FFED was display with wrong screen
7637 width; when running rxvt in Shift_JIS terminal encoding, a num‐
7638 ber of character width bugs occur. Mined does not implement
7639 workarounds for those; in general UTF-8 terminal encoding is
7640 advisable to be on the safe side.
7641
7642 urxvt
7643
7644 · This is rxvt-unicode as packaged for cygwin. Invoke it with a
7645 proper locale environment variable set to enable UTF-8. See
7646 also README.cygwin for more detailed hints.
7647
7648 mlterm
7649
7650 · Bidirectional display handling of mlterm is based on the final
7651 display, not regarding any context (such as positioning control,
7652 that's why mined implements a workaround for menu display on
7653 mlterm). Since version 3.0.7, mlterm supports logical order
7654 mouse positioning over right-to-left lines.
7655
7656 · For Shift selection, use the small keypad.
7657
7658 · Recent mlterm before version 3.1.3 has a problem with colour
7659 control that may render text unreadable.
7660
7661 · In recent mlterm versions, Control-function keys cannot be used
7662 in mined since they are captured as mlterm hotkeys. Use a Con‐
7663 trol-V prefix as a workaround.
7664
7665 · (Not essential anymore with recent mlterm versions) The Mined
7666 runtime support library includes a configuration file mlterm/key
7667 which defines enhanced escape sequences for function keys and
7668 other modified keys in order to enable the functionality
7669 described in this manual. (It also enables the keypad on systems
7670 lacking its configuration for mlterm.) It is essential to use
7671 this configuration especially for the HOP key (keypad "5") which
7672 is oppressed by mlterm by default, and also for Control-punctua‐
7673 tion accent prefix functions, and some others.
7674
7675 · In old versions of mlterm, mouse wheel scroll navigation in
7676 menus did not work seamlessly due to incorrect escape sequences.
7677
7678 · Do not use mlterm option -n ! It may produce display garbage on
7679 unknown and other characters.
7680
7681 cxterm
7682
7683 · Proper configuration is needed to ensure cxterm uses a non-CJK
7684 font of appropriate size to avoid ragged display: parameter -fn
7685 "-misc-fixed-medium-r-normal--18-*-*-*-*-*-*-*" or X resource
7686 cxterm*font: -misc-fixed-medium-r-normal--18-*-*-*-*-*-*-*.
7687
7688 · EUC-JP half-width characters (8EA1-8EDF) are not properly dis‐
7689 played by cxterm in EUC-JP mode (cxterm -JIS, not available in
7690 "classic" cxterm).
7691
7692 · Due to the scrollbar display workaround for hanterm (see above),
7693 the scrollbar position may be shown as blank space instead of
7694 coloured (only in Korean encoding mode which is probably rarely
7695 used with cxterm anyway). In this case, coloured scrollbar
7696 foreground can be enabled with the environment variable MINED‐
7697 SCROLLFG="44;36" or MINEDSCROLLFG="38;5;45".
7698
7699 · Note: The configuration sample file Xefaults.mined in the Mined
7700 runtime support library includes a section to fix some missing
7701 keypad assignments, especially the HOP key (keypad "5") which is
7702 ignored by cxterm by default, and the Home and End keys of the
7703 numeric keypad.
7704
7705 kterm
7706
7707 · Auto-detection of kterm as a CJK terminal works if the environ‐
7708 ment variable TERM indicates "kterm"; otherwise mined has to be
7709 told that it runs in a CJK terminal and which encoding to use:
7710 For kterm -km sjis, set LC_CTYPE=ja_JP.sjis (or invoke mined
7711 +ES).
7712 For kterm -km euc, set LC_CTYPE=ja_JP.eucjp (or invoke mined
7713 +EJ).
7714
7715 · Note:The configuration sample file Xefaults.mined in the Mined
7716 runtime support library includes a section to fix some missing
7717 keypad assignments, especially the HOP key (keypad "5") which is
7718 ignored by kterm by default, and the Home and End keys of both
7719 keypads.
7720
7721 · Note: Mouse wheel scroll navigation in menus does not work seam‐
7722 lessly in kterm because kterm sends incorrect escape sequences
7723 on mouse wheel scrolling.
7724
7725 · Note: By default (i.e., without explicit -km option or corre‐
7726 sponding *vt100.kanjiMode resource configured), kterm runs in
7727 ISO 2022 mode (yes, it does indeed) which is not supported by
7728 mined.
7729
7730 hanterm
7731
7732 · CJK display is buggy at the line beginning or after a Tab, often
7733 only the second byte of the character code is displayed as an
7734 ASCII character instead of displaying the complete CJK charac‐
7735 ter.
7736
7737 · Character attributes in hanterm used to be all mapped to
7738 reverse, so there was a workaround to enable a visible position
7739 in the scrollbar which is displayed as blank space. The criteria
7740 for this workaround to apply are: CJK terminal (detected or con‐
7741 figured), TERM=xterm, Korean encoding (UHC or Johab) configured
7742 with parameter or locale. Replaced to enable nicer colours in
7743 scrollbar. To reactivate workaround for older hanterm, set envi‐
7744 ronment variable MINEDSCROLLFG="0".
7745
7746 KDE konsole
7747
7748 · Due to the lack of decent Unicode font support in the default
7749 configuration of the KDE konsole terminal, menu appearance
7750 options -QQ and -Qr should not be used; rounded borders are dis‐
7751 abled by default.
7752
7753 · The Mined runtime support library includes a configuration file
7754 konsole/xterm-modified.keytab which defines enhanced escape
7755 sequences for function keys and other modified keys in order to
7756 enable the functionality described in this manual. Unfortu‐
7757 nately, the qt framework used by konsole inhibits the use of
7758 some keys and many key combinations.
7759
7760 · It is especially irritating that konsole disregards the middle
7761 keypad key ("5" in application mode) completely; so the mined
7762 HOP function has to be invoked by alternative means.
7763 As a remedy, the HOP function is also assigned to the "Menu" key
7764 (next to the "Windows" key on PC keyboards) by the configuration
7765 sample file konsole/xterm-modified.keytab; follow the installa‐
7766 tion instruction in that file and select the keyboard type it
7767 defines ("xterm with key modifiers") in konsole, "Settings" -
7768 "Keyboard" menu.
7769 Another remedy is to reassign the middle keypad key to the X key
7770 symbol Menu (using xmodmap); the script kp5 in the Mined runtime
7771 support library does this.
7772
7773 gnome-terminal
7774
7775 · The gnome-terminal uses right mouse click for its own terminal
7776 menu. To open a mined menu, use Ctrl-right-mouse-click.
7777
7778 · The gnome-terminal does not support modified keys (e.g. shifted
7779 keypad keys).
7780
7781 · The gnome-terminal captures a number of Alt-letter key combina‐
7782 tions for its own menu access (which can however also be con‐
7783 trolled with the mouse). To disable this unpleasant capturing,
7784 so e.g. mined can open its own menus with Alt-letter, configure
7785 gnome-terminal as follows:
7786 Open menu "Edit" - "Keyboard Shortcuts..." and check "Disable
7787 all menu access keys". Even then, however, F1 and Ctrl-F1 are
7788 suppressed by this quirky terminal.
7789
7790 · Mined implicitly assumes its -f option (for limited font usage
7791 with respect to graphic characters) when detecting gnome-termi‐
7792 nal.
7793
7794 Mac OS X Terminal and others
7795
7796 · The Mac OS X Terminal app does not support mouse escape
7797 sequences. Preferably, use xterm or iTerm 2.
7798
7799 · In iTerm 2, enable mouse reporting in the settings menu Prefer‐
7800 ences - Profile - Terminal.
7801
7802 · If any Mac terminal (Terminal, xterm, iTerm 2) does not respond
7803 to the ESC key, it is likely to be captured by Speech Recogni‐
7804 tion. Disable Speech Recognition or try Ctrl-ESC.
7805
7806 Linux console
7807
7808 · Mined detects F11, F12, Shift-F1...Shift-F8 properly (handling
7809 the shift of 2 applied by the Linux console to shifted function
7810 key codes compared with other terminals); further modified func‐
7811 tion keys are apparently not supported in the Linux console.
7812
7813 screen
7814
7815 Screen, like luit (see below), is a middle layer between the
7816 actual terminal and the user terminal environment.
7817 Running screen in a cygwin console produces initial garbage
7818 input in mined.
7819 [Applies to older screen before version 4: Unfortunately, screen
7820 does not pass character width handling of its host terminal
7821 transparently to the application but apparently it maintains
7822 cursor position information with reference to the system-
7823 installed locale data. Which, however, does not always reflect
7824 the terminal properties! Yet mined detects the proper width
7825 properties of the host terminal (by using pass-through escape
7826 sequences of "screen") but only if the environment variable is
7827 set to "screen" (the default of "screen").]
7828 Worse, however, screen apparently transforms cursor positioning
7829 commands from the application into relative cursor positioning
7830 towards the host terminal, which results in grossly incorrect
7831 display positionining if e.g. screen runs in a UTF-8 terminal
7832 but assumes an 8 bit terminal. Also, it interprets certain UTF-8
7833 continuation bytes as control characters, so even using a work‐
7834 around it is not possible to fix display for all cases. Mined
7835 applies a workaround to fix text positioning and menu display
7836 problems with screen. Another workaround fixes many cases of
7837 UTF-8 character display but cannot fix all (since screen cap‐
7838 tures the output of the 0x9C byte). It is recommended to invoke
7839 screen only with properly configured locale environment vari‐
7840 ables to match the actual terminal encoding.
7841
7842 mintty ("Cygwin Terminal")
7843
7844 Mintty is a Windows-based (non-X) terminal running with cygwin.
7845 Mined auto-detects mintty and adjusts certain properties and
7846 features accordingly.
7847
7848 · Mined detects font changes that change the CJK ambiguous charac‐
7849 ter width properties of the terminal when notified by mintty if
7850 running in UTF-8 mode.
7851
7852 · For good coverage of Unicode characters, recommended fonts for
7853 use with mintty are DejaVu Sans Mono, Lucida Console, Courier
7854 New, Andale Mono, Everson Mono, SimSun. Discouraged are Lucida
7855 Sans Typewriter, Letter Gothic, Courier, Monaco, and older MS
7856 CJK fonts, at least for their lack of (proper) graphic charac‐
7857 ters (for menu borders). Mined uses the glyph detection feature
7858 of mintty (since 0.9.9) to configure a nice set of useful line
7859 markers and menu graphics.
7860
7861 · If break interruption (Control-\ key) does not work on interna‐
7862 tional keyboards (if AltGr is involved), use the special Con‐
7863 trol-Break keyboard function instead.
7864
7865 · Note: For right-to-left text editing, the bidi feature of mintty
7866 interferes with the scrollbar of mined; you may disable the
7867 scrollbar with -o to reduce visual confusion. (Context-depen‐
7868 dent scrollbar display is planned for a later version.)
7869
7870 · Note: With the command scripts wined or wined.bat, mined is
7871 invoked in a separate Windows terminal session, using mintty if
7872 available.
7873
7874 · Note: On some systems, mouse wheel scrolling does not work in
7875 mintty if the mintty scrollbar is enabled. It can be disabled in
7876 the mintty "Options..." menu, section "Window".
7877
7878 · Note: Mined temporarily disables mintty shortcut keys for Win‐
7879 dows functions (like Alt-function keys, Alt-space, Alt-Enter) in
7880 order to use them itself. To toggle mintty full-screen mode,
7881 open the mintty menu with Shift-right mouse button, item
7882 "Fullscreen".
7883 (With mintty versions before 0.5.1, for proper usage of Unix-
7884 like keyboards functions, the following settings are recom‐
7885 mended: In Options - Keys, disable the Shortcuts "Window com‐
7886 mands" and "Copy and paste". In Options - Text, disable "Show
7887 bold as bright".)
7888
7889 Cygwin console
7890
7891 · The cygwin console terminal emulation does not support Shift-F1,
7892 Shift-F2 (which cannot be distinguished from F11, F12), Shift-
7893 F11, Shift-F12; Control or Alt modified function keys are sup‐
7894 ported beginning cygwin 1.7.2.
7895
7896 · Mined detects UTF-8 mode of cygwin 1.7 console (by LC_*/LANG
7897 setting or for cygwin 1.7 beta by CYGWIN containing "code‐
7898 page:utf8").
7899 Note: After rlogin from this console, UTF-8 indication has to be
7900 ensured explicitly, e.g. by environment setting, or by mined
7901 option +U.
7902
7903 · Note: Cygwin console in UTF-8 mode provides extended Unicode
7904 font support if you select "Lucida Console" or another TrueType
7905 font from its Properties menu.
7906
7907 · If the Windows program chcp.com is used within cygwin, and the
7908 console window is set up to use "Raster Fonts", non-ASCII char‐
7909 acters may be mangled.
7910
7911 · Mouse coordinates are not properly reported with wheel scrolling
7912 in the cygwin console; for that reason, opening a menu with
7913 mouse scrolling does not work.
7914
7915 · See also README.cygwin for more detailed hints on weird details
7916 about the Windows console in different modes.
7917
7918 · See also PC terminals above.
7919
7920 Windows console window (DOS command prompt)
7921
7922 · The Windows console window is normally configured to run in
7923 CP850 encoding or other legacy encodings (depending on localized
7924 Windows configuration), it may also turn out to use CP437. Non-
7925 displayable characters are replaced as usual. The configured
7926 font may also affect the effective display character set.
7927
7928 · However, if running a cygwin application (like the cygwin ver‐
7929 sion of mined) from a Windows console, the cygwin emulated ter‐
7930 minal encoding applies instead, e.g. UTF-8.
7931
7932 · Note: The (djgpp-compiled) DOS version of mined automatically
7933 adjusts to the selected console codepage (e.g. using the chcp
7934 command), it is advisable to set up the console windows to use
7935 "Raster Fonts" if this is used. With the cygwin-compiled ver‐
7936 sion, on the other hand, using a TrueType font is more stable
7937 with respect to character set problems.
7938
7939 · With the djgpp-compiled version apparently there is a Ctrl-C
7940 problem on older Windows versions. Every first Ctrl-C will dis‐
7941 play ^C on the screen at the current position without mined
7942 noticing it, while every second Ctrl-C will be passed to mined.
7943 This problem does not occur on Windows XP. It does occur on
7944 Windows ME in a Windows console window. It does not occur with
7945 the cygwin-compiled version.
7946
7947 · See also PC terminals above.
7948
7949 Windows PowerShell
7950
7951 · →NEW→ Mined detects a Windows PowerShell window and adjusts to
7952 its limitations.
7953
7954 Poderosa
7955
7956 · This Windows terminal emulator can be used for UTF-8 editing.
7957 To ensure proper function, do not use Terminal Type "kterm" or
7958 Encoding "euc-jp" or "shift-jis"
7959
7960 · Mined auto-detection and terminal initialization can cause
7961 Poderosa to display warning popups. To avoid them, Select Tools
7962 - Options... - Terminal; for "Behavior in case of unexpected
7963 chars", disable "Display a message box". If you get a notice
7964 "Failed to decode characters by the current encoding utf-8.",
7965 click "Do not display this message from next time".
7966
7967 · Poderosa does not provide mouse support for applications.
7968
7969 Terminator
7970
7971 · In Edit - Preferences, enable "Use alt key as meta key".
7972
7973 · Terminator does not provide mouse support for applications.
7974
7975 PuTTY
7976
7977 · This Windows terminal emulation for remote login provides vari‐
7978 ous keyboard (esp. keypad and function key) assignment emula‐
7979 tions. In SCO mode, shifted function keys are different from
7980 those of xterm SCO function key emulation; both are supported.
7981
7982 Better Terminal and Terminal Emulator (Android)
7983
7984 · There are lots of deficiencies in screen control; mined adapts
7985 to Better Terminal.
7986
7987 · There are lots of deficiencies in using a real keyboard.
7988
7989 · To use a real keyboard, in the terminal settings, map Control to
7990 Left Alt key.
7991
7992 luit
7993
7994 · The locale support add-on for text terminals luit which applies
7995 encoding transformations (e.g. with LC_ALL=zh_CN.gb18030) often
7996 maps characters incorrectly, including using the wrong cell
7997 width.
7998
7999 DECterm
8000
8001 On a VMS system, a DECterm window should be started with:
8002 CREATE /TERMINAL /DETACH
8003
8004 · Mined cannot disable flow control option (terminal using ^S and
8005 ^Q characters) despite its handling of the TTSYNC and HOSTSYNC
8006 terminal driver options. To make them usable, DECterm needs to
8007 be configured manually: Options menu - Keyboard... - disable
8008 Ctrl-Q, Ctrl-S = Hold; then Options - Save Options.
8009
8010 · On a remote DECterm, numeric keypad and function keys may not
8011 work properly without additional X configuration (xmodmap). Also
8012 the AltGr key does not work, making some characters unreachable
8013 on international keyboards.
8014
8015 · For VT100 graphics characters (used for menu borders), the
8016 DECtech fonts (X fonts with -DEC-DECtech encoding) need to be
8017 installed on the X server. If the Cygwin/X server is used, the
8018 font-bitstream-dpi* packages should be installed to this aim.
8019
8020 dtterm
8021
8022 · With the SCO default font, dtterm does not display non-ASCII
8023 characters and even worse, they corrupt further display. Mined
8024 does not, however, set its screen encoding assumption to ASCII
8025 as dtterm behaves properly with all other fonts (e.g. 10x20,
8026 lucidasanstypewriter, courier).
8027
8028 · Home/End, PgUp/PgDn, and HOP keys need to be used with Shift.
8029
8030 SCO Caldera Linux (konsole and xterm)
8031
8032 · Window size change signals don't seem to be supported.
8033
8034 Haiku Terminal
8035
8036 For a number of deficiencies of the Haiku Terminal application,
8037 it is preferable to use xterm instead. Most notable are display
8038 problems with the VT Gothic font; use DejaVu Sans Mono instead.
8039
8040 · No wide characters and combining characters.
8041
8042 · No Alt-letter escape sequences.
8043
8044 · No modified function and cursor keys.
8045
8046 · Ignorance of middle keypad key.
8047
8048 · Cursor visibility problems (cursor colour vs. reverse mode).
8049
8050 · Wrong Control-space key (sends Control-C).
8051
8052 · No mouse controls for wheel scrolling.
8053
8054 · Unconforming mouse mode handling.
8055
8056 Work-around support to enable 8-bit character set on weird terminals
8057 There exist some exceptionally weird 7 bit terminals that have an
8058 alternative character set containing composed characters which can be
8059 displayed simultaneously with the default character set. For those
8060 there is optional output translation which embeds non-ASCII characters
8061 into the respective code switching sequences. To enable output charac‐
8062 ter transformation, set the environment variable MINEDOUT to contain
8063 the upper half (with respect to an 8 bit character set) of the transla‐
8064 tion table into the terminal's alternate character set. (Character set
8065 switching will be done as specified in the termcap (as/ae) or terminfo
8066 (smacs/rmacs) entry.) An example setting of MINEDOUT is included in
8067 the environment sample file profile.mined in the Mined runtime support
8068 library for Siemens 9780x terminals.
8069
8070 Concerning some especially stupid terminal drivers
8071 There used to be terminal drivers which make use of the soft handshake
8072 mechanism by exchange of ^S and ^Q characters but yet pass them through
8073 to application programs which is quite stupid. If it is necessary to
8074 ignore such hazardous ^S and ^Q keys, the environment variable NoCtrlSQ
8075 or NoControlSQ must be set. Mined will then not disable the tty chan‐
8076 nel soft handshake setting either.
8077
8078 Keyboard mapping / Input method preselection
8079 With the environment variable MINEDKEYMAP the active or standby mapping
8080 or both can be preselected. The value is a two-letter script tag to set
8081 the active mapping, or it is prepended with "-" to set the standby map‐
8082 ping, or a combination.
8083 Example: export MINEDKEYMAP=-gr will set Greek keyboard mapping
8084 standby. export MINEDKEYMAP=py-rs will set Pinyin input method active
8085 and Radical/Stroke input method standby.
8086 The respective tags attached to the keyboard mappings can be looked up
8087 in the Input Method flag menu; the HOP function toggles between display
8088 of the full input method name and its tag.
8089
8090 Smart Quotes style configuration
8091 Smart quotes style can also be preselected with the environment vari‐
8092 able MINEDQUOTES (in addition to command line option -q=..., standard
8093 locale environment variables, or additional locale environment vari‐
8094 ables LANGUAGE or TEXTLANG which also implicitly set smart quotes
8095 mode).
8096 The value of MINEDQUOTES should contain the opening/closing quote pair
8097 (or just the opening quote mark, double or single quotes) and must be
8098 UTF-8 encoded. It can optionally append a space and an inner quotation
8099 mark (as used for nested quotations) for more specific selection. It
8100 can also indicate French spacing as shown in the example.
8101 Examples (for values of -q parameter or MINEDQUOTES variable): » sets
8102 »Danish« quotes style and corresponding single smart quotes. »» sets
8103 »Finnish» quotes style and corresponding single smart quotes. «» ''
8104 (where '' denotes a left double quotation mark U+201C) sets «Spanish»
8105 quotes style with English style inner quotation marks. « » sets «
8106 French » quotes style with embedded spacing.
8107 See Smart Quotes for more options.
8108
8109 Han info configuration
8110 With the environment variable MINEDHANINFO, the information shown for
8111 Han characters can be preselected. If the variable is defined, Han
8112 info mode is enabled. It may contain letters to select description,
8113 pronunciation information, and display mode to be used:
8114
8115 M show Mandarin pronunciation
8116
8117 C show Cantonese pronunciation
8118
8119 J show Japanese pronunciation
8120
8121 S show Sino-Japanese pronunciation
8122
8123 H show Hangul pronunciation
8124
8125 K show Korean pronunciation
8126
8127 V show Vietnamese pronunciation
8128
8129 P show Hanyu Pinlu pronunciation
8130
8131 Y show Hanyu Pinyin pronunciation
8132
8133 X show XHC Hanyu Pinyin pronunciation
8134
8135 T show Tang pronunciation
8136
8137 D show character description
8138
8139 F display full information (in popup-menu form); without F, the
8140 information will be shown on the status line where it is subject
8141 to truncation
8142
8143 Common paste buffer configuration
8144 The paste buffers, used for cut/copy/paste operations, as well as the
8145 inter-window paste buffer, are located in a temporary directory, using
8146 system conventions by default. To maintain the inter-window paste
8147 functionality even remotely, mined uses the environement variables
8148 MINEDTMP and MINEDUSER which, in combination, point to a user-defined
8149 temporary directory and file name pattern to be used for buffer files:
8150
8151 · Set MINEDTMP to refer to a common mounted network direc‐
8152 tory on all machines which means that the value of
8153 $MINEDTMP may have to be different to reflect different
8154 mount points across the network. (On VMS, use
8155 SYS$MINEDTMP).
8156
8157 · Set MINEDUSER to the same name within the network even if
8158 using different user name accounts.
8159 For details, see also the FILES section below.
8160
8161 Keypad configuration
8162 Some X configuration may have to be applied to enable keyboard input
8163 features as used by mined:
8164
8165 · Alt key modifier for quicker entry of "ESC" commands.
8166
8167 · Assignment of the HOP function to the middle keypad key
8168 ("5").
8169
8170 · Assignment of the HOP function to other keys (especially
8171 for convenience on laptops which do not have the numeric
8172 keypad), e.g. the Pause or Scroll Lock key.
8173
8174 · Distinguish "Home" and "End" keys of the two keypads in
8175 order to make use of this redundancy of typical keyboard
8176 layout (which is actually a waste of physical resources,
8177 causing unnecessary wrist strain because it increase the
8178 distance to be moved over for reaching to the mouse).
8179
8180 · Enable control and shift modifiers for keypad and func‐
8181 tion keys.
8182
8183 · Enable control and shift modifiers for digit keys (for
8184 use as accent prefix).
8185
8186 · Enable control modifier for punctuation keys (for use as
8187 accent prefix).
8188 See the example file Xdefaults.mined in the Mined runtime support
8189 library for suggestions.
8190
8191 Printing configuration
8192 Mined uses the script uprint from the Mined runtime support library to
8193 print the current contents of the text being edited in any selected
8194 encoding (unless the environment variable MINEDPRINT is set to direct
8195 mined to use a different print command).
8196 If the support library is not installed in one of its standard loca‐
8197 tions (system-dependent), it should be made available in the usual com‐
8198 mand search path.
8199 The script offers a choice of configured printers to select one (using
8200 either Windows registry or →NEW→ CUPS lpstat).
8201 The script uses either paps or uniprint for actual formatting (print
8202 preprocessing). Under Windows (cygwin/stand-alone/djgpp versions),
8203 mined also considers printing with notepad /p.
8204 paps is available at http://paps.sourceforge.net/ and uses the Pango
8205 layout engine for formatting. uniprint is part of the yudit distribu‐
8206 tion; if you don't have it installed on your system, there is another
8207 script makeprint in the support library which can be used to download
8208 and build the needed uniprint program. The mined print script (uprint)
8209 prefers paps if it is available as it has more capabilities for print‐
8210 ing a wide range of Unicode characters, and it does right-to-left for‐
8211 matting.
8212 The font to be used with uprint can be configured with the environment
8213 variables FONT, FONTPATH, FONTSIZE. It is recommended to put a suffi‐
8214 cient font in the directories of $FONTPATH, e.g. DroidSansMono, Luci‐
8215 daTypewriterRegular, Bitstream Cyberbit.
8216 The preferred printer can be configured as usual with the environment
8217 variable PRINTER. In addition, uprint checks an environment variable
8218 LPR for an alternative for the system printing command (lpr/lp) if that
8219 is needed.
8220 Note: If printing with uprint fails for some reason, mined tries to
8221 print with either the print command configured in the environment vari‐
8222 able LPR as a fallback, or with lp/lpr as a last resort. Working char‐
8223 acter encoding support cannot be expected in this case, however.
8224 See Environment variables to configure Printing for further details.
8225
8226 Display layout
8227 Some of the special indication characters (that substitute non-dis‐
8228 playable contents) and some of the colours used by mined for special
8229 indications and interactive elements may be configured to the user's
8230 preference.
8231 Note: For the configurable character indications, two environment vari‐
8232 ables exist each, to configure an 8 bit value (Latin-1 encoded) and to
8233 configure a Unicode value (UTF-8 encoded). The UTF-8 encoded values
8234 (e.g. MINEDUTFRET) take precedence in a UTF-8 terminal. In an 8 bit
8235 terminal, or if the respective UTF-8 variable is not configured, the
8236 Latin-1 encoded value applies. See the example script profile.mined in
8237 the Mined runtime support library for more details and for a number of
8238 suggestions of suitable values. Mined does not apply any default non-
8239 Latin-1 indications in order to avoid display problems with fonts that
8240 do not support them. Depending on your visual preference, there are a
8241 number of suitable Unicode characters for use as indications especially
8242 in the Unicode ranges of Arrows, Geometric Shapes and Symbols
8243 (U+2190-U+2BFF).
8244 Note: For the Latin-1 encoded configured indication markers (variables
8245 MINEDRET etc, not MINEDUTFRET etc), if the configured character is in
8246 the small letters range (actually
8247 '`'...DEL) the alternate character set is used for display. This
8248 works also in a UTF-8 terminal, provided that the corresponding
8249 UTF-8-encoded indication configuration variable is not set, e.g. MINE‐
8250 DRET=j MINEDUTFRET= (or not defined) would indicate line-ends by dis‐
8251 playing a graphic lower right corner, MINEDTAB='`' MINEDUTFTAB= (or not
8252 defined) would indicate Tab characters with VT100 graphics lozenge
8253 rhombs.
8254 Note: For the UTF-8-encoded configured indication markers (variables
8255 MINEDUTFRET etc), if the marker is a double-width character, a replace‐
8256 ment will be displayed instead.
8257 Note: Mined reduces its assumptions about available graphic and special
8258 characters for display purposes with the options -f or -F. The -F
8259 option also suppresses the interpretation of the MINEDUTF* environment
8260 variables.
8261
8262 Line ends
8263 Line ends are usually marked by a "«" double left angle character.
8264 This visual indication can be changed with the environment variable
8265 MINEDRET (8 bit terminals) or MINEDUTFRET (UTF-8 terminals). The
8266 default or configured marker is used as an indicator at the end of
8267 every text line on screen (so you can see how many blank spaces there
8268 are).
8269 Multi-character markers: If a second character is configured, it is
8270 used to fill the rest of the screen line, a third configured character
8271 would terminate the indication at the end of the screen line. ("··«" is
8272 a nice setting for people who used to work at Siemens terminals.) Pat‐
8273 tern:
8274 <span>MINEDRET=123 # line end displays as 122222223
8275 Suggestion for a nice line end on UTF-8 mode terminals (check if char‐
8276 acter is included in your font, however!):
8277 <span>MINEDUTFRET=⏎ # U+23CE
8278
8279
8280 The indication of DOS line ends (CRLF) and Mac line ends (CR) may be
8281 configured with the variables MINEDDOSRET or MINEDUTFDOSRET, and MINED‐
8282 MACRET or MINEDUTFMACRET, respectively. They are also distinguished by
8283 different colours.
8284
8285 Paragraph ends
8286 With the option -p, mined displays distinct indicators for line ends
8287 and paragraph ends. A paragraph is defined to continue while lines end
8288 with white space (space or Tab character). The default paragraph
8289 marker is "¶" and is also used to indicate a line ending with a Unicode
8290 Paragraph Separator. It can be changed with the environment variable
8291 MINEDPARA or MINEDUTFPARA.
8292
8293 Tab characters
8294 Tab characters are usually indicated by a sequence of '·' (middle dot)
8295 characters. This can be changed with the environment variable MINEDTAB
8296 (8 bit terminal) or MINEDUTFTAB (UTF-8 terminals).
8297 Multi-character markers: If two characters are configured, the second
8298 is used to mark the middle of the Tab span. If three characters are
8299 configured, the first and last are used to mark the beginning and end
8300 of the Tab span. Pattern:
8301 <span>MINEDTAB=123 # Tab displays as 12222223
8302 <span>MINEDTAB=12 # Tab displays as 11112111
8303
8304
8305 Long lines
8306 Lines which are too long for the screen are usually indicated by a '»'
8307 double right angle (guillemot) character. If the current position is
8308 behind the screen margin, the line is shifted out left which is indi‐
8309 cated by a '«' double left angle. These markers can be changed with
8310 the environment variable MINEDSHIFT or MINEDUTFSHIFT. The first charac‐
8311 ter is used to indicate a line continued to the left of the screen, the
8312 second character is used to indicate a line continued to the right of
8313 the screen.
8314
8315 Unicode characters
8316 For a description of special display indications in UTF-8 text editing
8317 mode see "Unicode display" above. The indication and highlighting mode
8318 of a non-displayable Unicode character (typically a UTF-8 character in
8319 a Latin-1 terminal), as well as the highlighting mode (colour) of the
8320 indication of illegal UTF-8 sequences, can be configured with the vari‐
8321 able MINEDUNI.
8322
8323 Display mode of indicators
8324 It is recommended to display these indicator characters in a dim dis‐
8325 play mode to prevent distraction from the text contents. The default is
8326 a red colour which is a moderate dark red in xterm. The display mode
8327 can be used by placing the code part of an ANSI display control
8328 sequence in the environment variable MINEDDIM. E.g., MINEDDIM=31 would
8329 select the default mode, red foreground; in xterm only, MINED‐
8330 DIM="38;5;83;38;5;245" gives a moderate gray in either 88 or 256 color
8331 mode; in rxvt only, MINEDDIM="38;5;83" gives a moderate gray.
8332 MINEDDIM can also be set to an integer percentage value (e.g.
8333 MINEDIM="50%") to have mined apply dim colour to the indications; the
8334 colour value is computed from the current foreground and background
8335 colours (works in xterm, or mintty from version 404). The ANSI colour 7
8336 (white) is temporarily redefined for this purpose and restored when
8337 mined exits.
8338
8339 Display mode of menu borders
8340 The display colour of menu borders and menu headers can be configured
8341 with the environment variable MINEDBORDER. Suitable values are "35"
8342 (magenta), "34" (blue) and "31" (default).
8343
8344 Status line highlighting
8345 Highlighted parts of status line messages (e.g. initial letters for
8346 help selection after F1) can be configured with the environment vari‐
8347 able MINEDEMPH, using foreground ANSI modes. The default is "31"
8348 (effectively red background).
8349
8350 Scrollbar colour
8351 The foreground and background colours of the scrollbar can be config‐
8352 ured with MINEDSCROLLFG and MINEDSCROLLBG, respectively, using ANSI
8353 modes; if only the background is configured, the foreground is the
8354 reverse of it. In general, to support fine-grained scrollbar display in
8355 UTF-8 terminals, the foreground and background colour settings should
8356 be the reverse of each other. The default for the background is
8357 "46;34;48;5;45" if use of 256 colour mode is enabled, or "46;34" if it
8358 is disabled. The default for the foreground is "", meaning that the
8359 reverse background is used, with a workaround for hanterm (see above).
8360
8361 Menu colour and border style
8362 The highlighting background colour of the selected menu item can be
8363 configured with MINEDSEL, using reverse ANSI modes (i.e. using fore‐
8364 ground parameters for the background) and MINEDSELFG for the fore‐
8365 ground, using reverse ANSI modes. The default values are MINED‐
8366 SELFG="43" and MINEDSEL="34", giving yellow on blue. If selected menu
8367 items appear too dark (which mined tries to avoid, depending on the
8368 terminal), try one of the workarounds MINEDSEL="34;1" or MINED‐
8369 SELFG="43;1".
8370 Menu border styles can be selected with the option -Q. For a nice
8371 selection bar that extends from left to right menu border, the setting
8372 -QQ is recommended (this is the default unless the terminal is assumed
8373 not to provide sufficient font configuration for this option; it
8374 depends on certain graphic Unicode characters being included in the
8375 terminal font and can be disabled with -Qq).
8376
8377 Combining character display
8378 The highlighting background colour of combining characters displayed in
8379 separated mode can be configured with MINEDCOMBINING, using ANSI back‐
8380 ground modes. The default value is MINEDCOMBINING=46, to change colour
8381 e.g. to yellow background, use MINEDCOMBINING=43.
8382
8383 Interactive Help access
8384 Mined looks for its help file in a number of typical directories for
8385 installation of the Mined runtime support library. If it is placed in
8386 a non-standard location, the environment variable MINEDDIR should point
8387 to the directory. (Mined also tries to find the help file in the
8388 directory where it was started from; this is especially useful for the
8389 DOS/Windows version.)
8390
8391 Mined compile-time configuration
8392 Script highlighting
8393 The the mined distribution contains a file src/colours.cfg; it contains
8394 entries with the script name (as listed in the Unicode data file
8395 Scripts.txt), blank space, and a colour index into the xterm 256-colour
8396 mode. (To make good use of 256 colour mode, the terminal program should
8397 be compiled with 256 colour support enabled. Configure xterm with con‐
8398 figure --enable-256-color .)
8399 Edit colours.cfg before building mined to adapt coloured script display
8400 to your preferences.
8401
8402 Encodings and Encoding menu
8403 The mined distribution contains a file src/charmaps.cfg which defines
8404 the character encodings that mined knows and how they are presented in
8405 the Encoding menu, together with flags for indication in the Encoding
8406 flag and tags for use with the -E and +E options (and the MINEDDETECT
8407 environment variable).
8408 The configuration file allows the definition of submenus in the Encod‐
8409 ing menu.
8410 Each character encoding entry charmap-name must correspond to an exist‐
8411 ing character mapping file charmaps/charmap-name.map. Additional char‐
8412 acter mappings can be generated with the script mkchrmap.
8413
8414 Encodings recognised by locale names
8415 The mined distribution contains a file src/locales.cfg which maps
8416 locale names to associated character encodings. While this list con‐
8417 tains mainly locale names without explicit encoding suffix, mined also
8418 checks generic locale name suffix values and assumes the corresponding
8419 terminal encoding. Thus the given names or suffixes can be used even
8420 on legacy systems without locale support to indicate the terminal envi‐
8421 ronment and preferred text encoding properly to mined.
8422
8423 Keyboard mapping (Input method)
8424 The mined distribution contains a file src/keymaps.cfg and a script
8425 mkkbmap; go into the src directory and use the script to generate addi‐
8426 tional keyboard mappings: The parameter to the mkkbmap script can be
8427 one of
8428
8429 path.../name.mim
8430 a keyboard mapping file of the m17n-db multilingualiza‐
8431 tion package
8432
8433 path.../name.kmap
8434 a keyboard mapping file of the yudit text editor
8435
8436 path.../name.vim
8437 a keyboard mapping file of the vim text editor
8438
8439 path.../name.cit
8440 an input method mapping file of the cxterm terminal,
8441 binary form; only works if the cxterm binary/text conver‐
8442 sion utility cit2tit is accessible
8443
8444 path.../name.tit
8445 an input method mapping file of the cxterm terminal, text
8446 form; only works if the character set conversion utility
8447 iconv is accessible and works on the mapping file
8448
8449 path.../name.utf
8450 an input method mapping file of the cxterm terminal,
8451 already converted to UTF-8 encoding (e.g. with iconv)
8452
8453 Cangjie [ < HKSCS Changjie table file name > ]
8454 with this tag, a keyboard mapping for the Cangjie input
8455 method will be generated, taking information from the
8456 Unihan database (unicode.org);
8457 with a second parameter, a Big5-encoded table of HKSCS
8458 Changjie input codes will be merged in, the parameter is
8459 either the file name or a + sign which is implicitly
8460 expanded to the relative path name
8461 etc/charmaps/hkscs/hkscs-2004-cj.txt; the HKSCS input
8462 codes file should be taken from http://info.gov.hk/digi‐
8463 tal21/eng/hkscs/
8464
8465 MainlandTelegraph , TaiwanTelegraph
8466 with one of these tags, a keyboard mapping will be gener‐
8467 ated using one of these telegraph codes as an input
8468 method, taking information from the Unihan database (uni‐
8469 code.org)
8470
8471 Cantonese , HanyuPinlu , Mandarin , Tang
8472 with one of these tags, a keyboard mapping will be gener‐
8473 ated using the according Chinese pronunciation as an
8474 input method, taking information from the Unihan database
8475 (unicode.org)
8476
8477 JapaneseKun , JapaneseOn
8478 with one of these tags, a keyboard mapping will be gener‐
8479 ated using Japanese or Sino-Japanese pronunciation as an
8480 input method, taking information from the Unihan database
8481 (unicode.org)
8482
8483 Korean , Vietnamese
8484 with one of these tags, a keyboard mapping will be gener‐
8485 ated using Korean or Vietnamese pronunciation as an input
8486 method, taking information from the Unihan database (uni‐
8487 code.org)
8488
8489 VIQR , VNI , Vtelex
8490 with one of these tags, a keyboard mapping will be gener‐
8491 ated for the respective Vietnamese input methods, taking
8492 character information from the Unicode database (uni‐
8493 code.org)
8494
8495 script tag
8496 for many scripts listed in the UnicodeData.txt database,
8497 character names listed there can build a useful keyboard
8498 mapping; mkkbmap will then generate an according keyboard
8499 mapping file, e.g. for Bopomofo
8500 Each successful generation of a mapping table adds an entry to the con‐
8501 figuration file keymaps.cfg; the entry is however initially disabled as
8502 it usually needs manual adjustment: edit the configuration file; enable
8503 the new entry by removing the leading '#' character, check the first
8504 element which will be the name of the mapping to appear in the Input
8505 Method menu, check the last element of the entry which is a two-letter
8506 shortcut and must be unique for all mappings, then move the entry to
8507 the position where you want it to appear in the menu. You can also
8508 group mappings by adding "-" lines in this configuration file.
8509 For the Unicode data version used for included keyboard mappings, see
8510 the mined change log.
8511 For the keyboard mappings generated from Unihan data, characters are
8512 sorted according to the priorities of their Unicode ranges (assigning
8513 lower priority to "Supplement" and "Extension" and "Compatibility"
8514 ranges). So for some input mnemos, the "pick list" for the Cangjie
8515 input method is displayed more in order of relevance.
8516 For keyboard mappings for CJK encodings, mkkbmap will add appropriate
8517 punctuation mapping entries for Chinese, Japanese, Korean, respec‐
8518 tively, in addition to the entries derived from the respective data
8519 source.
8520
8522 Environment variables for configuration of mined are listed in the
8523 script file profile.mined in the Mined runtime support library together
8524 with explanations and suggested values.
8525 Further variables used by mined in the usual meaning are:
8526
8527 HOME
8528
8529 USER
8530
8531 SHELL
8532
8533 MINEDOPT
8534
8535 LC_ALL, LC_CTYPE, LANG
8536 Locale variables affect assumed terminal encoding, default text
8537 encoding, and language-related features (such as quote style).
8538
8539 LANGUAGE
8540 Affects language-related features. Affects assumed text encoding
8541 only if it has an explicit encoding suffix (like .UTF-8). Does
8542 not affect assumed terminal encoding.
8543
8544 TEXTLANG
8545 Deprecated: like LANGUAGE.
8546
8547 CYGWIN
8548
8549 TMPDIR
8550
8551 TMP
8552
8553 TEMP (MSDOS)
8554
8555 SYS$SCRATCH (VMS)
8556
8557 TERM
8558 Terminal type to be assumed.
8559
8560 ESCDELAY
8561 Delay after an ESCAPE character that mined waits for recognition
8562 of a function key control sequence. Default is 450 ms.
8563
8564 MAPDELAY (non-standard)
8565 Similar delay that mined applies to wait for subsequent input
8566 characters when applying keyboard mapping for an input method.
8567 Default is 900 ms.
8568
8569 LINES, COLUMNS (MSDOS ANSI mode only)
8570 Line / column count of terminal to be assumed.
8571
8572 windir
8573 Used to determine if it runs under MS Windows and set some
8574 defaults (screen output delay) accordingly.
8575
8576 Environment variables to configure Printing
8577 MINEDPRINT
8578 Print command to use instead of uprint; the value must contain
8579 the string '%s' (quoting recommended) to insert the file name.
8580
8581 FONT
8582 Name of a font file, e.g. LucidaBrightRegular or bodoni.ttf for
8583 use with uprint/uniprint (the file must reside in the configured
8584 font path), or name of a font as specified with fontconfig (in
8585 $HOME/.fonts.conf or /etc/fonts/fonts.conf) for use with
8586 uprint/paps.
8587
8588 FONTPATH
8589 Directory search path (separate directory names with ":") for
8590 use with uprint/uniprint which uses Truetype fonts.
8591
8592 FONTSIZE
8593 Font size to be used with uprint (paps or uniprint).
8594
8595 LPR
8596 Print spooling command to be used by uprint (or mined itself if
8597 uprint does not work) instead of the system-specific print
8598 spooling command (e.g. lpr).
8599
8600 PRINTER
8601 Name of printer to spool to.
8602
8604 Unix
8605 $MINEDDIR
8606 directory in which the Mined runtime support library is
8607 installed, including the help file mined.hlp and the printing
8608 script uprint
8609
8610 mined.hlp
8611 help file for interactive hints (F1 commands); mined looks for
8612 the file in $MINEDDIR/help, $0, and a number of other typical
8613 directories where program support files are installed on various
8614 systems
8615
8616 $MINEDTMP
8617 directory for auxiliary files, first attempt Using this variable
8618 and $MINEDUSER (see below), you can establish copy and paste
8619 among machines that share network directories but are normally
8620 configured to use separate (usually local) temporary directo‐
8621 ries.
8622
8623 $TMPDIR
8624 directory for auxiliary files, next attempt
8625
8626 $TMP directory for auxiliary files, next attempt
8627
8628 $TEMP directory for auxiliary files, next attempt
8629
8630 /usr/tmp
8631 directory for auxiliary files, next attempt
8632
8633 /tmp directory for auxiliary files, next attempt
8634
8635 Note: $MINEDUSER
8636 user name assumed instead of $USER for building auxiliary file
8637 names; using this, common copy-and-paste buffers can be used on
8638 a network file system from different machines where the user
8639 possibly has different user names
8640
8641 $HOME/.fonts.conf
8642 fonts configuration file for use with uprint/paps; for descrip‐
8643 tion, see http://fontconfig.org/fontconfig-user.html or man
8644 fonts.conf
8645
8646 minedbuf.< USER >.< PID >.< NN >
8647 temporary file for paste buffer; USER is either $MINEDUSER or
8648 $USER
8649
8650 minedbuf.< USER >
8651 file for inter-window paste buffer; USER is either $MINEDUSER or
8652 $USER; see descriptions of $MINEDTMP and $MINEDUSER above for
8653 how to set up a common inter-window paste buffer in a heteroge‐
8654 neous network
8655
8656 minedrecover.< USER >.< PID >
8657 panic file to rescue text in case of crash or external signal
8658 caught
8659
8660 VMS
8661 SYS$MINEDTMP:$MINED$user_BUF.pid_nn
8662 paste buffer
8663
8664 SYS$MINEDTMP:$MINEDBUF$user
8665 inter-window paste buffer
8666
8667 SYS$SCRATCH:$MINEDRECOVER$user$pid
8668 panic file
8669
8670 SYS$SCRATCH:$MINEDPRINT$user$pid$n.lis
8671 print spool file
8672
8673 MINED$HELP
8674 help file (may be configured as a logical name)
8675
8676 If SYS$MINEDTMP is not available,
8677 SYS$SCRATCH is used instead. If SYS$SCRATCH is not available,
8678 SYS$LOGIN is used instead.
8679
8680 MSDOS / Windows
8681 %MINEDDIR%\help\mined.hlp
8682 help file, first attempt (to find it)
8683
8684 mined.hlp (in mined program directory)
8685 help file, next attempt
8686
8687 %MINEDTMP%\minedbuf.nn
8688 paste buffer
8689
8690 %MINEDTMP%\minedbuf
8691 inter-window paste buffer
8692
8693 %MINEDTMP%\minedbuf.%MINEDUSER%
8694 inter-window paste buffer, as configured to use the same file as
8695 other mined versions in a heterogeneous network; note, however,
8696 that %MINEDUSER% will be shortened to 3 characters in pure DOS
8697
8698 %MINEDTMP%\minedsv_.*
8699 panic file
8700
8701 If %MINEDTMP% is not available,
8702 %TEMP% or %TMP% or \ are used.
8703
8705 In all cases where it is considered sensible, the appropriate message
8706 of a system error occurred is displayed (instead of printing numerical
8707 hieroglyphs or indistinguished commonplace messages as many other UNIX
8708 tools do).
8709
8711 In an extremely narrow terminal window (less than 8 characters), if
8712 lines are shifted out of the display, moving the cursor around may
8713 cause positioning errors and display garbage.
8714
8715 (MSDOS, Windows:) With non-cygwin versions (djgpp), piped editing from
8716 standard input does not work for unknown reason.
8717
8718 (Windows:) Non-cygwin versions (djgpp) do not work in xterm, rxvt, or
8719 mintty.
8720
8722 Long ago, the initial version of mined was written for the Minix educa‐
8723 tional operating system by Michiel Huisjes. It was adapted to Unix by
8724 Achim Müller who added termcap support. Mined was later debugged,
8725 partly rewritten and enhanced and is now maintained by Thomas Wolff.
8726 Please send comments, suggestions, bug reports to mined@towo.net.
8727
8728 Mailing list
8729 Mined is also hosted as a sourceforge project (sf.net/projects/mined)
8730 where a mailing list is available. To subscribe for information about
8731 updates, or discussion, error reports, and feature requests, or to send
8732 a mail, please go to the Mined mailing list page.
8733
8734 Acknowledgements
8735 · Thanks to Nadim Shaikli < shaikli @ yahoo.com > for dis‐
8736 cussion of right-to-left issues and interworking with
8737 mlterm.
8738
8739 · Thanks to Mike Fabian < mfabian @ suse.de > for making
8740 the RPM package included in the SuSE distribution.
8741
8742 · Thanks to Ziying Sherwin < sherwin @ nlm.nih.gov > and R.
8743 P. Channing Rodgers < rodgers @ nlm.nih.gov > for sugges‐
8744 tions and information about CJK input method support and
8745 multiple choice handling (pick lists).
8746
8747 · Thanks to Tobias Ernst < tobias_ernst @ eml.cc > for pro‐
8748 viding a Mac OS X makefile and suggestion and information
8749 to implement Emacs command mode.
8750
8751 · Thanks to 吴咏炜 (Wu Yongwei) < yongwei @ eastday.com >
8752 for suggestions and information about Pinyin input meth‐
8753 ods, for discussion about keyboard mappings for CJK punc‐
8754 tuation, and for further maintaining the Pinyin input
8755 method.
8756
8757 · Thanks to Ramakrishnan Muthukrishnan < rkrish‐
8758 nan @ debian.org > for making the Debian package.
8759
8760 · Thanks to Thierry Thomas < thierry @ FreeBSD.org > for
8761 making the FreeBSD package.
8762
8763 · Thanks to Tobias Nygren < tnn @ NetBSD.org > for making
8764 the NetBSD package.
8765
8766 · Thanks to Jim Breen for suggesting better overview of
8767 input methods and more language-specific advice for non-
8768 techy persons which led to the new chapter on Language
8769 support.
8770
8771mined 2015.25 March 2015 mined(1)