File: changes.html

package info (click to toggle)
mined 2000.10-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 10,904 kB
  • ctags: 2,258
  • sloc: ansic: 130,722; sh: 1,725; makefile: 260; perl: 169; sed: 152; cpp: 28
file content (2172 lines) | stat: -rw-r--r-- 86,382 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
<script language="JavaScript">top.select ("changes");</script>

<h3>Mined release history and change log</h3>


<h4>Release history with major enhancements / new features</h4>

<dl>

<dd><a href=#2000.10>mined 2000.10</a>
<ul>
	<dt><b>Character encoding, CJK, and input support enhancements:</b>

	<li>Printing feature revamped; now working with all encodings.
	<li>Updated character properties to Unicode 4.0.1.
	<li>Added support for major mapped 8 bit character encodings.
	<li>Added transparent handling of UTF-16 encoded files (with BOM).
	<li>Full support for combining characters in CJK encodings 
	and 8 bit encodings, including optional separated display mode 
	and partial editing (within combined character).

	<li>Added Han character information (description / pronunciation) 
	while browsing text or input method pick lists.
	<li>Enhanced character information conforming to ISO 14755.

	<li>Additional input support for CJK, Vietnamese, Thai, Hebrew.
	<li>Added preinstalled WuBi input method (used by professional 
	typists in mainland China).
	<li>Added radical/stroke lookup input method for CJK characters, 
	especially useful for not CJK speaking users.
	<li>Added two Vietnamese input methods (VIQR and VNI) to 
	preconfigured keyboard mappings, as well as a Vietnamese 
	accent prefixing input support method.
	<li>Added two more ways of supporting input of Vietnamese 
	multiple accented characters.
	<li>Revamped mnemonic input support; completed mnemonic patterns 
	and enhanced documentation.
	<li>Enhanced numeric character input support; conforming to 
	ISO 14755.

	<dt><b>Interactive enhancements:</b>
	<li>Revamped menu control; added subtitles and flag markers 
	(showing active options); enabled menu navigation by item letters 
	or mouse wheel movement.

	<dt><b>Runtime environment enhancements:</b>
	<li>Enhanced interoperability with various terminals; enhanced 
	detection and handling of available menu border styles as well 
	as screen attributes used for scrollbar and special character 
	display for a wide range of terminals.
	<li>Providing runtime support library with X configuration patterns 
	and terminal startup scripts.

	<dt><b>Portability enhancements:</b>
	<li>Revamped makefiles; enhanced portability and compilation 
	on legacy systems.
	<li>Enhanced makefiles to provide more installation options; 
	fixed default target directories for a wider range of target 
	systems.
</ul>

<dd><a href=#2000.9>mined 2000.9</a>
<ul>
	<li>Position stack and return function also work across files 
	(esp. after identifier definition searches using tags file)
	<li>Smart quotes: auto-detection of quotation marks style on 
	file loading
	<li>Interactive Latin-1 / UTF-8 conversion support
	<li>Support for VIM keyboard mapping files
</ul>

<dd><a href=#2000.8>mined 2000.8</a>
<ul>
	<li>Major extension of CJK character set support: GB18030, 
	full EUC-JP, CNS (EUC-TW)
	<li>Vietnamese VISCII character set support
	<li>Auto-detection of UTF-8 / CJK terminal features
	<li>Flexible locale configuration for both text and terminal encoding
	<li>Smart dashes
	<li>Multiple paste buffers (emacs-style)
	<li>emacs command mode
</ul>

<dd><a href=#2000.7>mined 2000.7</a>
<ul>
	<li>Enhanced East Asian input method support; 
	selection menu for multiple character choices ("pick list")
	<li>Support for editing CJK encoded files in UTF-8 terminal
</ul>

<dd><a href=#2000.6>mined 2000.6</a>
<ul>
	<li>Arabic ligature joining support
	<li>New command "return to previous position"
</ul>

<dd><a href=#2000.5>mined 2000.5</a>
<ul>
	<li>Bidirectional terminal support
	<li>Keyboard mapping
	<li>Script highlighting
</ul>

<dd><a href=#2000.4>mined 2000.4</a>
<ul>
	<li>Mouse dragging support
	<li>Clever justification (line-wrapping) with auto-indentation
	<li>Back-TAB (undent)
	<li>Version control system support (checkin/-out)
	<li>Enhanced composed character input support
</ul>

<dd><a href=#2000.3>mined 2000.3</a>
<ul>
	<li>Documentation revision; manual page source changed to HTML
</ul>

<dd><a href=#2000.2>mined 2000.2</a>
<ul>
	<li>Auto-indentation
	<li>Input support for indented parentheses pairs
	<li>HTML syntax highlighting
	<li>Enabled newline in search/replace
	<li>Mouse support for DOS versions
</ul>

<dd><a href=#2000.1>mined 2000.1</a>
<ul>
	<li>Smart quotes
	<li>Context-dependent Unicode case toggle
</ul>

<dd><a href=#2000>mined 2000</a>
<ul>
	<li>Binary transparency, including different line-end handling, 
	    unterminated lines, and NUL characters
	<li>Unicode combined character handling 
	    (combined or separated display)
	<li>Optional Unicode line-end display
	<li>Cross-file identifier definition search (using tags file)
	<li>Right-to-left input support ("poor man's bidi" mode)
	<li>Scrollbar
</ul>

<dd><a href=#98>mined 98</a>
<ul>
	<li>UTF-8 support
	<li>Mouse support
	<li>Pull-down and popup menus
</ul>

<dd><a href=#6>release 6</a>

<dd><a href=#5>release 5</a>

<dd><a href=#3>release 3</a>
<ul>
	<li>Paragraph justification
	<li>16-Bit character set support
</ul>

<dd><a href=#2>release 2</a>
</dl>


<hr>
<h4>Change log</h4>
<pre>

<a name=2000.10>
=============================================================================
Changes from mined 2000.9 -> mined 2000.10 (January 2005)
==========================================

Features:
---------
Added radical/stroke lookup input method for CJK characters.

Added Han character information (Han info option in new Info menu) for 
both text browsing and pick list character selection. This displays 
selectable character pronunciations and descriptions from the Unihan 
database, either on the status line or in a popup menu.

Poor man's bidi mode was tweaked and enabled by default unless the 
terminal is detected (or configured) to be a bidi terminal; this mode 
enhances inserting small pieces of right-to-left (e.g. as quotations) 
into left-to-right text; when switching from right-to-left back to 
left-to-right by entering a left-to-right character, the cursor 
automatically skips to the end (visual end) of the previously entered 
right-to-left text on the line. This priority is justified by the 
assumption that this mode (with visual storing order) is only useful 
for inserting small right-to-left quotations into left-to-right text 
and not for editing right-to-left documents (which should be stored in 
logical order).

Many more enhancements and additions for internationalisation and 
character encoding support:
* Updated character data to Unicode 4.0.1.
* Combining characters in CJK encodings are now supported.
* Multiple mapped 8-bit character encodings are available, including 
  full combining character support.
* UTF-16 is handled transparently.
* For details and further features see below.

Many enhancements and additions for character input support:
* CJK, Vietnamese, Thai, Hebrew.
* Combined character editing in CJK and 8 bit encodings.
* For details and further features see below.

New header line command HOP "-" underlines the line that starts before 
the cursor position.

Added a printing feature that prints the text being edited 
considering the selected text encoding. (It uses a Unicode printing 
script contained in the runtime support library and the uniprint 
program from the yudit package.)
Modified the item in the File menu to print the file (or actually 
the edit buffer), not the paste buffer.

The menu interface was enhanced, see below.


User interface enhancements:
----------------------------
Enhanced menus with subtitles.
Enhanced flag menus with markers that show which options are activated.

Made menu items selectable by typing the first letter of their 
descriptions, cycling through all items beginning with that letter.

Enabled menu item selection by mouse wheel scrolling. Note that your 
mouse driver may be configured to generate multiple (e.g. 3) mouse 
wheel events on one mouse wheel movement (e.g. with Windows).

Rearranged default input method menu according to the order of the 
letters "CJK".

Keyboard mapping selection menus ("pick list") that are too large to 
fit on the screen are now scrollable and pageable (with cursor keys).

Revised navigation in pick lists (keyboard mapping selection menus); 
improved highlighting and function of cursor movement.

New mode for more stylish menu item selection highlighting (-QQ). 
Looks nice on Unicode terminals. Not made the default, however, 
because block characters used for it might not align well with simple 
borders with all fonts.

Displaying line-end entered on prompt line (esp. for searching) using 
highlighted marker representation (like for text display) rather than 
control character representation.

Revised character indications for characters (esp. CJK) that cannot 
be displayed for various reasons; made indications uniform on 
different terminals.


Command interface enhancements:
-------------------------------
^V followed by a function key now generically invokes the same function 
as with control-function key.

Enhanced numeric character input with the option of Unicode value 
input in CJK or mapped 8 bit mode by typing a 'u', 'U', or '+' (in 
addition to an optional '#' or '=' for octal or decimal numeric input).

With numeric character input, the Space key was modified to enable 
"successive multiple character entry" according to ISO 14755; so if 
the numeric code is terminated by a Space key, another numeric 
character can be entered subsequently.

Added Alt-E command to open encoding menu; modified Alt-V command 
to toggle between view only and edit mode (to reuse previous Alt-E).

Added Alt-F10 to open first flag menu (info menu).

Added cedilla accent prefix function to ctrl-F5 (combining this and 
ring above as they are not ambiguous).

Added Help to eXtra menu.

Additional command ESC @ to set marker (in addition to control-@ / 
control-Space, ESC ^, control-], or the Home or Select key, for the 
sake of keyboard configurations that cannot easily enter those - 
control-Space may not be configured, ^ may be an accent prefix "dead key", 
control-] may be caught by telnet, Home may be cumbersome on Laptops).

The "search corresponding bracket" commands ESC ( etc. were extended: 
In case you are editing a mailbox file, these commands also work for 
MIME separators or mail headers; in this case, the search direction 
depends on the command character, e.g. ESC ( searches backward, ESC ) 
searches forward.

Added command Alt-F9 to repeat the previous search but in the opposite 
direction. Added command Alt-Shift-F9 to search for current identifier 
backward.


Mnemonic input support enhancements:
------------------------------------
Completed mnemonic patterns (generic accent mnemonics) for Latin-based 
characters, supplemented more intuitive patterns for "accents below".
Completed documentation of these mnemonic patterns and enhanced the 
overview in the manual and on the "Character Mnemos" web page.

Revised additional character composition mnemonics; made additions 
consistent with generic RFC1345 mnemonics, removed redundant mnemonics, 
added missing Latin characters (esp. with multiple accents).

Tweaked mnemonic character input handling to allow input of ambiguous 
mnemonics in long mnemonic input mode (e.g. "^V pi " in contrast to 
"^Vpi", where the long form prefers the RFC 1345 mnemonic).
The ugly previous solution to prepend an additional "1" for ambiguous 
RFC 1345 mnemonics was replaced by this new mechanism.

Enabled mnemonic character input support (^V Space mnemo Return) 
for non-UTF-8 encodings.


Input method support enhancements:
----------------------------------
Added two input methods to the default set of preinstalled input methods:
WuBi (after having read it's perhaps the fastest input method used by 
professional typists in mainland China) and 4 Corner.

Added generation feature for further keyboard mapping tables 
(used as input methods) for further mappings from Unihan data 
in addition to Cangjie: MainlandTelegraph and TaiwanTelegraph codes, 
pronuncations for Cantonese, HanyuPinlu, Mandarin, Tang, 
JapaneseKun, JapaneseOn, Korean, Vietnamese.
(Not included in distribution as these seem of questionable value, 
entries included in keymaps.cfg but disabled.)

Added generation feature for further keyboard mapping tables 
used for Vietnamese input methods: VIQR , VNI , Vtelex.
Include VIQR and VNI in the default configuration.

The keyboard mapping generation script mkkbmap inserts additional 
punctuation automatically.

With the environment variable MINEDKEYMAP, both active and standby 
keyboard mappings can be preselected, e.g. MINEDKEYMAP=py-rs.

Option +K enables keyboard mappings (input methods) even in 8-bit 
terminal or when editing a Latin-1 file - although the characters thus 
entered will mostly only be displayed by substitute indications, as 
most characters anyway when editing UTF-8, CJK encoded, or mapped 
8 bit encoding files in an 8-bit terminal.

Keyboard mapping generation from Unihan data (with mkkbmap using mkkmuhan) 
sorts characters in entries according to the priorities of their 
Unicode ranges (assigning lower priority to "Supplement" and 
"Extension" and "Compatibility" ranges).
This especially affects the Cangjie input method in a few character 
selections. So the "pick lists" are now displayed more in order 
of relevance.


Further input support enhancements:
-----------------------------------
Added Vietnamese accent prefixing method found on the web, using 
control/alt-digit combinations as prefixes. This is only enabled 
when additional key translations for xterm are configured with 
the X resources. (Added to Xdefaults.mined sample file.)

Added character composition mnemonics (using generic accent prefixes) 
for Vietnamese double-composed characters, i.e. placing a second accent 
on Vietnamese base characters that already have a single composition, 
e.g. if you have mapped your keyboard to have A with circumflex 
available, you can enter "^V'" (Control-V A-circumflex apostrophe) to 
produce the combined character U+1EA4 (A with circumflex and acute).

Added a Thai input method.

Added control-backspace function that removes combining accents from 
combined characters and also does not unindent on leading blanks.
This is only enabled when an additional key translation for xterm is 
configured with the X resources. (Added to Xdefaults.mined sample file.)

Added Hebrew quote style (using Gershayim U+05F4 for quotation 
and Geresh U+05F3 for apostrophe), and added Hebrew Maqaf (U+05BE) 
as a smart dash replacement for "-" if there is an adjacent Hebrew 
character.


Character encoding support enhancements:
----------------------------------------
Updated character data to Unicode 4.0.1:
case conversion, character-to-script mapping, screen width (continuing 
to work with older width data versions by terminal auto-detection).
Updated keyboard mapping table for Cangjie input method accordingly.

Combining characters in CJK encodings are now supported 
(both JIS encodings and GB18030), in either UTF-8 or CJK terminal mode.

Added further 8-bit character encodings, including full combining 
character support.

Maintaining UTF-16 transparently, i.e. a UTF-16 encoded file is 
written back in UTF-16 again (with BOM) (was previously converted 
to UTF-8). No explicit menu/command line options are currently 
available for UTF-16 as internal handling is in UTF-8.

Made handling of Unicode LS and PS line ends (previous option -uu) 
the default. New option +u-u disables them.

The character information command (ESC u) or mode (HOP ESC u) was 
enhanced to conform to ISO 14755; in UTF-8 mode, CJK mode, and 
mapped 8 bit encoding mode, Unicode character information is displayed 
additionally: script name, character category, and Unicode value.

The Han character information mode always shows the character code, 
and in CJK encoding mode additionally the Unicode value, independently 
of availability of Unihan character descriptive information for the 
current character.

Added options +C, +CC, +CCC for fine-tuning of display of unknown 
CJK character codes on CJK terminals.

Added option -CC to assume CJK terminal and override UTF terminal 
auto-detection.

Revised (fixed/tweaked) character value transformation commands 
[HOP] ESC X/U/D/A to perform a more useful and consistent set of 
functions; HOP ESC X now also scans a UTF-8 sequence; [HOP] ESC U 
now transforms values between current text encoding and Unicode; 
[HOP] ESC D/A now acts like [HOP] ESC U but using decimal/octal.


Interoperability enhancements:
------------------------------
Improved UTF-8 and CJK terminal feature auto-detection for speed-up on 
slow terminal connections.

Assuming terminal to run PC character set (codepage 437) if 
environment variable TERM begins with "pcansi", "nansi", "ansi.", 
or contains "-emx", to support remote login from DOS box to Unix.

Enabled optional PC character set operation when running cygwin version 
in DOS box (when using CYGWIN=codepage:oem in a DOS box).

Added handling for rxvt-specific cursor and function key escape sequences.

Revised handling of screen attributes for better and extended support 
of legacy terminals, relying more on termcap and checking if 
direct use of ANSI controls as a fallback is appropriate (usage 
of hard-coded ANSI controls cannot be just avoided because for many 
colour terminals, colour handling is usually not configured with 
termcap/terminfo but of course users want the xterm colour feature to 
be made use of).

Enabled semi-stand-alone operation of cygwin version (with only 
cygwin1.dll needed to be available, but without installed cygwin 
system, especially without termcap information accessible) by assuming 
hard-coded terminal properties for the "cygwin" terminal if it is 
unknown by the system.

Enabled menu border option -Qa for DOS version for use with embedded 
dosemu (esp. running in an xterm where it does not emulate DOS block 
graphics characters).

Enabled menu border option -Qa for curses version, and enabled use 
of Unicode menu borders for curses version.

Tweaked terminal block graphics capability detection, enabling block 
graphics (rather than ASCII graphics) on more terminals (e.g. cygwin).
Also using termcap "ac" / terminfo "acsc" capability now to support 
proper block graphics on more terminals (e.g. mac, ibm3151).

Abolished use of the MINEDTERM variable. Now determining all 
terminal-specific properties and restrictions from TERM.

Added make target "minced" to build a curses version; it uses 
the ncursesw library which supports UTF-8. Using curses is discouraged, 
however; see the comments in doc/compilation.


Building and installation enhancements:
---------------------------------------
Added installation of runtime support library (online help, templates 
for inclusion of environment settings and X resources, scripts to 
configure and invoke xterm in a suitable way, printing script, script 
that helps building a printing environment).

Added make targets "localinstall", "optinstall", and "homeinstall" so 
the user can choose explicitly to install in /opt or $HOME/opt, or in 
either /usr or /usr/local with corresponding different subdirectories 
as used by various systems.

Revised makefiles to improve building on legacy systems.
For dynamic make targets / dependencies, introduced dynamic makefile 
generation with non-GNU make. (Maintaining two versions and keeping 
$(shell ) feature with GNU make for less confusing user feedback.)

Revised directory names used in makefiles for installation of 
mined manual and help files as used by various systems in the 
/usr or /usr/local hierarchies.


Further enhancements:
---------------------
Added push marker stack before searching for current character (HOP ctrl-F8).

Improved documentation how to set up a common inter-window paste 
buffer in a heterogeneous network using the environment variables 
$MINEDTMP and $MINEDUSER. Enabled using the same buffer for 
DOS version (djgpp).

Added environment variables ESCDELAY and MAPDELAY to tune the waiting 
time applied for recognising function keys or input method sequences to 
be mapped, respectively.
ESCDELAY also affects the time the terminal has to respond to a 
cursor position report request (used for terminal capability detection).

Added push to marker stack before replace with confirm (ESC r) starts.

Added command line option ++ to terminate options (to support 
filenames that start with "-" or "+").

Revised checking and reporting attempts to enter, compose or transform 
character codes or mnemonics that are illegal or not valid in the 
current encoding; e.g. added "Invalid character" feedback when trying 
to insert a character that does not exist in the current encoding.

Added "o" to the set of numbering items taken into account with 
clever paragraph rewrapping.

Special handling of Turkish "i" for case toggling is now triggered 
by environment variables LANG or LC_ALL or LC_CTYPE beginning with "tr" 
(rather than the special variable MINEDTURKISH).


Bug fixes:
----------
Fixed cursor remaining invisible after using a menu in cygwin version.

Fixed makefile to enable compilation with djgpp again.
This also fixes a compilation problem with some SunOS configurations.

Fixed mnemonic character input handling to enable input of ambiguous 
HTML mnemonics starting them with "&" (e.g. "^V &not ", broken since 
mined 2000.8).

Changed separated display mode indication flag from acute to grave to 
avoid interference with ambiguous width property (xterm option 
-cjk_width). Also its background colour was changed from reverse to 
cyan to be consistent with the combining character display itself.

Disabling fine-grained scrollbar if -cjk_width terminal mode is 
detected to avoid interference with ambiguous width property.

Constrained usage of "mouse hilite tracking" mode to xterm; 
on some other terminals (esp. cygwin, rxvt) this could interfere with 
a scroll down control sequence and would incorrectly scroll down the 
screen on left mouse clicks (since mined 2000.4).

Tweaked mkchrtab script (compiling character set mapping tables) to 
work for cygwin in some cases that used to expose weird compiler errors.

Fixed positioning problem after suppressing second quote mark in 
flags area if first quote mark is a double-width character (used 
to output a NUL character then which produces a space on some terminals, 
e.g. cygwin DOS box - this is now being suppressed).

Considered to constrain usage of 256 colour mode to "xterm" to avoid 
screen garbage if the mode is not compiled in to rxvt and other 
terminals.
This applies to scrollbar colours (unless explicitly configured with 
environment variables) and to Unicode script highlighting (by 
lowest-distance mapping of colours to the 8 basic colours).
(But as screen garbage with buggy rxvt occurs only in some 
configuration modes, 256 colour usage was left enabled there.)

Fixed GB18030 auto-detection and width handling.

Fixed EUC-JP half-width character width handling in CJK terminal 
(rxvt in EUC-JP mode). Note that these characters are not displayed 
properly by cxterm in EUC-JP mode.

Fixed overriding of explicitly selected CJK encoding (e.g. -EG) by 
VISCII auto-detection (since 2000.9).

Avoid using vt100 graphics for menu borders in rxvt and cygwin xterm which 
do not seem to support them (option -Qv is available to enforce them).

CJK character codes that do not map to Unicode are now displayed 
with the indication '?' with cyan background to avoid screen garbage by 
invalid character codes, unless overridden by the +C option for 
transparent display of CJK encoded characters.

Fixed buffer size limitation for search expression ranges not to 
corrupt buffer.

Fixed interrupted highlighting in selected line of quote style menu in 
8 bit terminals after non-8-bit quote mark replacement indication.

Fixed error messages on character input support (e.g. mnemonic) to 
be consistent with respect to "Unknown character mnemonic" versus 
"Invalid character".

Enabled input of NUL character with ^V NUL (^V control-Space).

Fixed fine scrollbar display which used to mix up top and bottom part 
of marker in some cases.

Fixed fine scrollbar display which used to leave gaps in some cases of 
adding lines.

Fixed resolving ambiguous function key control codes with certain 
specific terminals.

Fixed margin interpretation when setting left or right line margins to 
current position with Enter in a shifted line - using real line column 
now instead of screen column.

Fixed missing refresh of menu header line after cancelling a keyboard 
mapping pick list by clicking on the encoding or combined display flag.

Fixed incorrect assumption of combining screen if locale was incorrectly 
configured to indicate UTF-8 in a non-UTF-8 terminal.

Fixed reverse highlighting problem on some terminals with mnemonic 
character input on prompt line.

Enabled scrollbar display in djgpp version.

Fixed function key detection for DOS versions compiled with curses 
which was broken since 2000.7.

Disabling pipe input/output detection in DOS version when DOSBox is 
detected (by looking at %COMSPEC%).

Fixed display bug after inserting TAB in CJK-encoded text.

Fixed inappropriate "conversion" of line-end into U+3000 with 
diacritic transformation command (ESC _) (since 2000.8).

Work-around to accept delayed cursor position reports instead of 
giving an error message. This affects slow remote connections and 
the cygwin terminal if configured with CYGWIN=tty (in which case the 
cursor report comes only after the first keyboard input which is a 
cygwin bug).

Fixed generation of script colouring table from colours.cfg which 
could have failed with small-letter script names depending on locale 
environment (since mined 2000.10 alpha as script names were all-caps 
before).

Fixed ^V__ which didn't input ^_ as documented (since mined 2000.4).

Tweaked scrollbar attribute handling so that useful scrollbar display 
is enabled in hanterm. This needed a work-around so that the scrollbar 
position is now indicated by blank space in a CJK terminal using 
Korean encoding (UHC or Johab) if TERM=xterm. If you use another 
terminal in this configuration (e.g. cxterm or rxvt with TERM=xterm) 
set the environment variable MINEDSCROLLFG="44;36" or ="38;5;45" 
to reenable coloured display of the scrollbar position.

Fixed display bug when an incomplete UTF-8 sequence was followed by 
a TAB character.

Fixed non-ASCII command characters to work regardless of active 
encoding.

Fixed missing indication for no-break space (U+A0) in UTF-8 mode 
with djgpp-compiled version (was inconsistently shown as blank).

Fixed one buggy entry in VISCII character mapping.

Added ASCII remapping entries in Shift-JIS and Johab character mappings, 
and handling them for display and input.

Tweaked encoding toggle function (when clicking on the character 
encoding flag in the flags area) to properly toggle between the 
current and the previous text encoding.

Fixed xterm work-around of tweaking window title string (showing the 
filename) for non-ASCII characters in UTF-8 screen mode.

Fixed Turkish case conversion special handling which was broken since 
2000.4; added further special handling for Turkish and for Lithuanian 
COMBINING DOT ABOVE.


<a name=2000.9>
=============================================================================
Changes from mined 2000.8 -> mined 2000.9 (March 2004)
=========================================

Enhancements in character encoding handling and input support:
--------------------------------------------------------------
Used more compact representation for character set tables and 
keyboard mapping (input method) tables, reducing size of binary by > 700K.

For Japanese encoded text on a UTF-8 terminal, the JIS encodings that 
map to two Unicode characters are supported.

Keyboard mapping / input methods: Configurable function of space key 
in multiple choice selection menu (option -K).

Keyboard mapping / input methods: added support for VIM keyboard mapping 
files.

Tuned CJK encoding auto-detection.
Tuned CJK vs. ISO 8-bit auto-detection.

Added VISCII auto-detection.

Added Shift-JIS auto-detection.

CJK encodings may be selected (or disabled) to be taken into account 
for auto-detection by configuring the environment variable MINEDDETECT.

Added option -l for more intuitive selection of Latin-1 text encoding 
(and disabling of auto-detection) rather than with +u.

Tuned terminal mode auto-detection to reduce flickering delay on 8-bit 
xterm (using fewer test strings) and improve stable fallback if 
auto-detection fails partially on slow terminal connections.

The keyboard mapping menu can be grouped with separators, specified 
in the keymaps.cfg file.


Features:
---------
Smart quotes: auto-detection of quotation marks style on file loading.

Keyboard mapping / input methods: added support for VIM keyboard mapping 
files.

New functions for interactive character encoding conversion 
(Latin-1 / UTF-8) to partially fix files with mixed encoding:
A search function finds UTF-8 characters in Latin-1 mode, and vice versa.
The character can then be converted into the current encoding.
The search function is invoked with HOP search corresponding - 
e.g. HOP ESC ( - or Alt-F11 .
The conversion is invoked with the diacritic transformation function, 
e.g. ESC _ or ESC  , which was extended for this purpose.
For repeated interactive conversion, both functions can be combined 
with Alt-Shift-F11 (convert current character, then search next).


Enhancements in user interaction:
---------------------------------
Implemented a finer-grained scrollbar in a UTF-8 terminal, using 
Unicode character cell vertical eighth blocks U+2581..U+2587.
(Can be disabled with -o1 if font does not contain those characters.)

Implemented lazy scrollbar update for speed-up on slower 
terminal lines (e.g. remote access). (Can be disabled with -o8.)

Verified correct recognition and function of mouse wheel movement. 
Scrolling by multiple lines (option -LN, default N=3), or by 1 line 
with control, or by 1 page with shift.

Added "paste previous" function (emacs style buffer ring) to Edit menu.

Added backspace capability to decimal number input function (e.g. to 
enter a line number or margin column).

Tuned position of popup menu not to appear far right of the line contents; 
if clicked there, the menu is placed on the the line end 
(which is the new cursor position in this case).

The diacritic transformation command (ESC _) derives language-specific 
preferences (such as can be explicitly applied by using the command 
variations ESC  etc) from the locale environment.

Added a sample xterm key translation to Xdefaults.mined to assign 
the HOP function to the Scroll Lock and Pause keys in order to 
provide the HOP function easily on Laptops/Notebooks.

Making cursor invisible while menu is open.

Revised menu names for CJK encodings for better recognition.


Further enhancements:
---------------------
Position stack and return function also work across files 
(esp. after identifier definition searches using tags file).

Added /usr/share/info as a search path location for the online help file 
to meet cygwin conventions, adapted makefile.cygwin installation dirs.

When editing multiple files, switching to another one resets the 
view only flag to its invocation state (option -v).

Tuned various file loading functions (including character encoding 
auto-detection) to speed up startup with large files.


Bug fixes:
----------
Fixed declaration of getenv which caused failure on 64 bit systems.

Added quotes to egrep parameter in global makefile, needed with some 
shells (would cause make to fail on SunOS).

Fixed display of non-break space (0xA0) in Latin-1 text and terminal 
mode on prompt line.

Fixed missing tolerance against multiple blanks separating choices 
in keyboard mapping files.

Fixed encoding handling problem after toggling from VISCII to UTF-8 
(by clicking on encoding flag).

Fixed width assumption when inserting certain characters (e.g. Euro sign) 
in GB18030 mode which led to wrong cursor position.

Fixed a problem with moving between flag menus.

Fixed a missing screen update problem after replacements with 
embedded newlines.

Fixed a wrong screen update problem (missing lines near end-of-file 
on screen) after replacements with embedded newlines.

Fixed corrupted paste buffer after tags file search (for identifier 
definition, ESC t) that spoiled a subsequent paste operation with 
inserted garbage.

Added auto-detection of terminal capabilities for plane 2 double-width 
and plane 1 / plane 14 combining characters, avoiding display confusion.

Fixed cursor positioning problem when mouse was clicked during prompt 
line input after menu invocation.

Fixed cursor positioning bug (since version 2000.8) after character 
insertion on the first screen column in a shifted line (an overlong 
line shifted for display).

Fixed paragraph justification (line wrap) to use TAB for indentation 
on subsequent lines (instead of blanks) if a numbered paragraph starts 
with a TAB after the numbering (as it used to do with unnumbered 
paragraphs).

Restricted mode (--) prevents ESC E (switch from view only to edit mode) 
and ESC W (save unconditionally).

Re-included Turbo-C 2 project file which had been overwritten by 
Turbo-C 3 project file. (Turbo-C is not really recommended anymore 
but as it still compiles, I'm keeping it available.)

Adapted format of online help files to avoid multiple backspace 
characters for bold formatting which does not work with newer 
versions of less.

If the editing buffer cannot be filled (out of memory), the associated 
file name is cleared to assure that the file is not accidentally 
overwritten with its truncated buffer version. (This was already 
unlikely because the editing mode was set to View only, but it could 
still be saved with an enforced Save command like Shift-F2 or ESC W.)

Not displaying the number of characters anymore after loading a file 
with CJK encoding and without predetermined encoding (e.g. loading with 
-C only, or just by auto-detection) because the number used to be wrong.
The correct character count can be displayed at any time with the ESC ? 
command. Character count after loading is still displayed for Latin-1 
or UTF-8 encoding, or if CJK encoding was explicitly specified (e.g. -EG).

Fixed bugs in ESC t command (to find declaration of current identifier) 
if tags file search expression contained special characters (tab, \, *).

Fixed top of marker stack not being recognised as such after marker 
push operations.


<a name=2000.8>
=============================================================================
Changes from mined 2000.7 -> mined 2000.8 (August 2003)
=========================================

Features:
---------
Major extension of CJK character set support: GB18030 
(Unicode-compatible 4-byte extension of GBK), 
extended EUC-JP (including 3-byte encodings), 
and CNS (EUC-TW with 4-byte encodings).

Added support for mapped single-byte character encodings, 
enabled Vietnamese VISCII character set (option -EV).

Auto-detection of terminal features (UTF-8, different width data 
versions, handling of double-width, combining and joining characters; 
CJK, handling of non-EUC code points, GB18030, 3-byte and 4-byte encodings).

Flexible locale configuration for both text and terminal encoding:
Mined accepts both explicit encoding suffixes (starting with ".") or, 
if none are specified, also some region suffixes (starting with "_").
See manual page, section "Locale configuration".

Smart dashes: If smart quotes are active, also an input sequence 
of "--" is replaced with an en dash (if preceded by a blank) or 
an em dash.

New emacs mode: functions are assigned to control keys and Meta-keys 
(ESC commands) as defined by the emacs editor. Also the emacs paste 
buffer ring and cut/paste behaviour was implemented.
This mode is in beta state and detailed documentation (esp. command 
listing) is not available yet.
The mined ESC commands can be reached via Meta-x.
Function keys remain unaffected.
See also option +V.

The multiple buffers ring is also available in non-emacs mode.


Enhancements in special display of character encoding:
------------------------------------------------------
Enabled display of Unicode FULLWIDTH forms in Latin-1 terminal.

Enabled substitute display of CJK encodings in Latin-1 terminal, 
with clear display of FULLWIDTH ASCII.

Enabled substitute display of Euro sign in Latin-1 terminal.

Alternative options -Eg / -Ej / -Ec to set -EG / -EJ / -EC but 
if running in a CJK terminal this tells mined to assume that the 
terminal cannot display GB18030 4-byte encodings, CNS 4-byte 
encodings, EUC-JP 3-byte encodings, respectively.

Revision and improvement of CJK display indications:
  (cyan background) (8-bit terminal): CJK cannot be displayed here
@  (cyan background) (CJK terminal): CJK code cannot be displayed on terminal
# (cyan background): invalid CJK code (not assigned in selected encoding)
# (cyan): illegal (esp. incomplete) CJK code

The character encoding indication in the flags area was extended to 
two letters.


Enhancements in character input support:
----------------------------------------
Tweaked handling of character selection menu ("pick list" for 
multiple choice mappings) so that a blank key moves on to the next 
alternative. Also the cursor-right/left keys move within a selection 
line now.

Added input method TUT.roma for Japanese.
Revised Hiragana and Katakana input method tables.

CJK input method tables were extended with punctuation mappings.

Extended low/capital letter toggle function (F11) to toggle 
between Hiragana and Katakana.

Enhanced smart quotes heuristics to support smart quotes in CJK text.

Revised input mnemonics for Unicode accented characters; removed 
redundant mnemonics.

Additional input mnemonics :(, :), ): for smileys (Unicode mode).

Diacritic transformation function enhanced with language-specific 
preference transformations:
control-F11 and ESC _ apply the default transformations 
which are the same as available for two-letter mnemonic input (e.g. ^Vae).
With Escape commands with diacritic letters that occur on respective 
national keyboards, the according preference transformations take 
precedence:
ESC , ESC , ESC , ESC : ae->, oe->
ESC , ESC , ESC , ESC , ESC : oe->oe ligature (Unicode mode, U+0153)
ESC , ESC , ESC : ae->, oe->
ESC _, control-F11: ae->, oe->oe ligature (Unicode mode, U+0153)


Enhancements in command input:
------------------------------
Made Delete/Remove keys on keypads configurable to either Cut or 
Delete character right. The option -k now switches all Home/End 
and Del keys to the more usual behaviour, although I still think 
it's a waste of keypad space to have these functions on two 
keypads; I think the mined approach to leave the standard behaviour 
on the "small keypad" and assign buffer functions to the right-most 
keypad is more useful.
If the keyboard emits specific control and shift sequences, 
control-Del is always "Delete character right" and shift-Del is 
always "Cut to buffer" in either key assignment mode.
Also control-Home and control-End always moves to the beginning or 
end of the current line, while shift-Home and shift-End always 
invoke the buffer functions (mark and copy).

Revision of function key assignment.
F12 is no longer attached to the diacritic transformation function 
(assignment had been inadvertently overridden for some releases already), 
as on some (many?) terminals F12 cannot be distinguished from shift-F2.
New function assignments:
F12	enable memory for file positions in current directory
F11	(unchanged) low/capital letter toggle
shift-F11	low/capital toggle for whole word from cursor (like HOP F11)
control-F11	diacritic transformation, e.g. ae->
ctrl-shift-F11	(like HOP ESC U) transform Unicode value into character
shift-F2	write file even if unmodified
control-F2	save file as (prompt for new name, then save)
shift-F4	write paste buffer to file
alt-Insert	replace text just pasted with preceding paste buffer
control-F4	replace text just pasted with preceding paste buffer
shift-Home	mark position
shift-End	copy to buffer
control-Home	go to line beginning
control-End	go to line end
Home		(default) mark position
End		(default) copy to buffer
Home		(with -k option) go to line beginning
End		(with -k option) go to line end
Home/End	(on small left keypad) reverse function of right Home/End
HOP shift-F8	search for definition of current identifier (using tags file)
HOP control-shift-F8 search for identifier definition (prompts)
HOP control-F8	search for current character (new function)
VT100: Find	search
VT100: Select	mark position
VT100: Do	copy to buffer
control-Up	(new, see below) move to previous paragraph beginning
control-Down	(new, see below) move to next paragraph beginning
control-Ins	copy to buffer
control-@ (control-space) mark position

New commands to move to previous/next paragraph boundary:
control-Up, control-Down (hold control key and press cursor up or down).

The current text position is pushed on the position stack also with 
the Goto Line/% command (^G).


Enhancements in terminal operation:
-----------------------------------
Tweaked screen attribute handling to improve behaviour of certain 
terminals that do not match their termcap entry (esp. cxterm).

Tweaked screen handling for menu borders to provide workarounds 
for various weird terminal behaviours (esp. mlterm and linux console).

Moved some ambiguous function key escape sequences into a special 
table that is (automatically) only selected if a vt100 terminal 
is set up (by the TERM variable). Added assignments for shifted 
function keys of certain terminal emulators.


Further Enhancements:
---------------------
When a menu is open, the cursor-left or cursor-right keys cycle 
through the pull-down and flag menus.

Added smart quotes style for Japanese corner brackets.

Smart quotes style can also be preselected with the environment 
variable MINEDQUOTES which should then contain the opening/closing 
quote pair or just the opening quote mark.

Renamed X resource configuration plug-in .Xdefaults.mined to 
Xdefaults.mined for better handling and to comply with other 
packages' usage.

Enhanced the script to generate man pages from HTML to handle tables.
Fixed manual page generation to filter out empty lines which spoiled 
the layout.

Manual:
* Added discussion of the disputed keypad function assignment into Key 
  layout section.
* Moved HOP section right behind the Key layout section.


Options:
--------
New option -* to disable mouse support (requested by an emacs mode 
user who prefers to use the xterm copy/paste mouse function).

Option +V to enable emacs-style paste buffer functions for "delete 
word" and "delete to end of line" commands (^T, ^K), and place the 
cursor behind the pasted region after buffer insertion.
(May become the default in a future version, disabled by -V.)

New option -QX to select the style of menu borders where X is one of
	s: simple border, 
	r: rounded corners, 
	f: fat border, 
	d: double border, 
	a: ASCII border (can be combined with another option -Qs or -Qr), 
	v: VT100 alternate character set graphics border, 
	@: reverse blank border.
Mined sets an appropriate default based on its assumptions of the 
terminal capabilities.

Latin-1 or UTF-8 character encoding can now also be selected with 
the -E option: -EL, -EU.


Bug fixes in CJK handling:
--------------------------
Removed length restriction on keyboard mapping multiple choice 
menu, thus enabling Pinyin input method to work.

Fixed mnemonic character input problem in CJK mode.

Fixed handling of unmapped Unicode characters in CJK terminal mode 
in input method selection menu, avoiding ragged menu borders 
(but leaving empty entries for menu consistency between encodings).


Bug fixes with paragraph justification:
---------------------------------------
Fixed paragraph justification on lines with two successive blanks 
(as used after a sentence by some people) which could actually wrap 
lines between the blanks (and leave leading blank on the next line) 
if the right margin happened to be at that point.

Fixed clever paragraph justification on lines without blanks which 
used to change the right margin.

Fixed a display handling bug that could lead to wrong display after 
invoking paragraph justification from the menu.


Bug fixes with screen display:
------------------------------
Fixed interference of Unicode line end display (-uu) with 
paragraph end display (-p).

Fixed menu width handling (esp. when HOP was entered in an open 
flags or popup menu near the right screen border) which could wrap the 
menu display around the screen.


Further bug fixes:
------------------
Fixed missing resp. overridden recognition of Alt-Enter in some 
situations (used for jumping in the cursor position stack).

Fixed handling of keyboard mapping selection menu in right-to-left 
terminal (e.g. mlterm) near the end of text which could crash mined.

Tweaked ESC D and ESC A commands to insert decimal resp. octal value 
of whole character, not of separate encoding bytes. Behaviour is now 
as it was already documented.

Fixed HOP ESC U command which (by the HOP prefix) inserted a pair 
of parentheses if invoked on the code of an open parenthesis.

Fixed inadvertent setting of restricted mode on "-" options prefix 
(since version 2000.7).

A function key entered on the prompt line does no longer abort 
prompting but just beeps.

Fixed explicit cursor marking in proportional terminal mode in 
CJK text mode.


<a name=2000.7>
=============================================================================
Changes from mined 2000.6 -> mined 2000.7 (May 2003)
=========================================

Features:
---------
Enhanced support for character input methods, especially for 
East Asian (CJK) character ranges; selection menu for keyboard 
mapping choices ("pick list").
Pre-compile-time configuration of additional mappings is provided, 
usual mapping tables of other editors can be used as source.

Support for editing files in different CJK encodings, also in a 
UTF-8 terminal. The apparently major encodings in use are supported:
Big5 (with HKSCS), GBK (> GB2312, EUC-CN), UHC (> EUC-KR), EUC-JP.
These are tried to auto-detect by heuristic counting of character codes.
An option to select the encoding (-EX) or auto-detection are also provided.
Two more encodings supported but not auto-detected are Japanese 
Shift-JIS encoding (including single-byte mappings to Halfwidth Forms) 
and Korean Johab character set and encoding.


Enhancements:
-------------
Added flag menus to all flags (except HOP indication) for more 
intuitive usage.

Enabled repeat function with keyboard mapped characters.

Enabled hex entry of CJK double-byte characters on prompt line in 
CJK mode (-C).

Enabled decimal (in addition to hexadecimal or octal) coded character 
input.

Tweaked script to generate keyboard mapping table from yudit keyboard 
mapping file: strip final blank if contained in all entries, skip 
intermediate dummy blank.

Enhanced UTF-8 auto-detection so that longer UTF-8 sequences are 
not ignored.

Flag indication for combined/separated display mode (of Unicode 
combined characters) was tweaked to make it more intuitive.

Added "+", "-" and various Unicode bullet characters as numbering 
items for clever justification (triggering indentation).

Activated colour usage for line markers and scrollbar in CJK terminals 
(newer versions of hanterm apparently support colour).

In CJK terminals, mapping line markers from Unicode values according 
to effective encoding table, so hopefully matching the right 
CJK character for marker display.

Revised CJK special character input support, fixed illegal character 
handling problems with coded CJK input (also on prompt line).

Revised handling of incomplete CJK half character codes. Don't pad 
them with blank on loading the file anymore.

Revised character counting while loading the file to work with CJK 
and auto detection.

Option +G to enforce using block graphics characters for menu borders 
is now accepted in CJK terminals as newer versions support them.

Makefile for Mac OS X (provided by Tobias Ernst).


Bug fixes:
----------
Fixed a bug that would display control characters (e.g. ^X) entered 
directly on the prompt line in UTF-8 mode as letter X with coloured 
background instead of ^X.

Revised character input thoroughly; fixed deficiencies (since 2000.6 
even crashes, shame on me) if the repeat function was provided with a 
non-ASCII character.

Fixed handling of invalid hex CJK double-byte character insertion.

Fixed undefined insertion of arbitrary character if character insertion 
from character code in text (HOP ESC U/D/O) didn't recognize a number.

Fixed insertion of partial character bytes when an open menu was 
cancelled by typing a Unicode character.

Fixed failed recognition of bullet character (0xB7) in non-Unicode mode 
as a numbering item for clever justification (triggering indentation).

Removed those RFC 1345 input mnemonics mapping to private use code points; 
fixed some of them to map to valid code points.

Removed -D option; this feature (which did not work in UTF-8 mode anyway) 
may now be achieved with a keyboard mapping if desired.

Fixed erroneous special handling of 0xA0 (as no-break space) in CJK mode.


<a name=2000.6>
=============================================================================
Changes from mined 2000.5 -> mined 2000.6 (Feb 2003)
=========================================

Features:
---------
Arabic ligature joining support:
If the terminal supports right-to-left display (e.g. mlterm)
mined assumes that the terminal also applies automatic joining of 
Arabic ligatures (LAM/ALEF combinations).
Mined supports ligature joining by accounting for the screen position 
accordingly, and by indicating the joining part of the ligature in 
separated display mode similarly to the handling of combining characters.
This terminal handling mode is configured with the option +UU.

New command ESC Return (Alt-Return) to "return to previous position".
On commands that jump away from the current position (HOP Mark, 
File Begin/End, Search, Search Idf definition), the current position 
is remembered in a position stack. The new command ESC Return goes 
backward, HOP ESC Return forward in this "stack".

Added recognition of mouse wheel control sequences and attached 
according behaviour - untested as I don't have a mouse wheel.


Enhancements:
-------------
New key interpretations for shift-Return (shift-Enter) and 
control-Return (control-Enter) to insert Unicode paragraph separators 
and line separators respectively if Unicode line-end handling is enabled.

Improved prompting for hex/octal character input, made more intuitive.

Improved coded character entry on prompt line: added visual feedback, 
added octal option, enabled for non-UTF-8 mode.

Improved mnemonic character entry on prompt line: added visual feedback.

Implicit suppressing of keyboard mapping during mnemonic character input.

Enabled mouse release and movement support in DOS version (DJGCC).

On opening a file, the current position marker is no longer initially 
set to the opening position (as some users got confused with the 
Cut/Paste function); to return to the position e.g. after searching, 
use the new command ESC Return instead of HOP Mark.


Options:
--------
The option -c selects separate display mode on UTF-8 terminals. The 
mode can also be toggled from the eXtra menu or on the C/c flag 
next to the U/L character encoding flag.
The previous option to assume that the UTF-8 terminal that does not 
support combining characters was changed to -cc.

Bidi terminal mode is selected explicitly with +UU instead of 
implicitly (by disabling the scrollbar with -o).

Additional option -8 to set TAB size to 8 (to override TAB size 
being set to 4 by MINED environment variable).

Changed option -J (to set justification level 2 initially) to +jj.

Added option +U to configure UTF-8 terminal operation. This is 
in order to allow defined setting in addition to -U which toggles 
the pre-configured assumption and might turn out to produce the 
wrong assumption.
Changed -U to also set combining mode when assuming UTF-8 mode.
Note, however, that none of these options needs to be used if the 
environment is correctly configured to indicate UTF-8 as it should 
(LC_ALL, LC_CTYPE, or LANG ending on ".UTF-8" or ".utf8").

Added option +UU to configure bidi terminal operation. This mode 
implies UTF-8 and also assumes that Arabic ligature joining 
(of LAM/ALEF combinations) is applied.


Bug fixes:
----------
Display problems in separated display mode (for Unicode combined 
characters) on the status line were fixed, including Arabic joining 
ligatures.

When deleting the last accent in a Unicode combined character (after 
moving the cursor position into the character), the display was not 
updated; this was fixed.

Fixed documentation of some vt100 keypad key assignments (original 
assignments were mangled by Linux console keypad assignments).

Fixed F5/control-F5/shift-F5 and according F6 accent composition 
prefixes and adapted documentation.

Mentioned shift-F2, shift/control/control-shift-F8, shift-F9, shift-F10 
in documentation.

Fixed ^O new line insertion: if the line is terminated with a Unicode 
paragraph separator, a line separator is used for the new line end.

Fixed and adapted behaviour of HOP Return to insert Unicode paragraph 
separator.

Revised character set handling for PC versions; revised accented 
character composition;
accented character display and composition (from 8-bit character range) 
now working in PC versions for either PC or UTF-8 character encoding.

Fixed status line update problem after operations on parts of combined 
characters (e.g. movement onto the combining accent with ^V cursor-right).

Fixed character composition from text [ ESC_ ] to consider characters, 
not bytes.

Search corresponding bracket [ ESC( ] now also works with UTF-8 
multi-byte characters.

Fixed identifier search [ HOP F8 ] to work with UTF-8 characters 
inside identifier.

Included sources for online help in the distribution archive as 
needed for "make install".

Fixed a crash problem with window resize, then display being redrawed, 
then resize again and output being interrupted. Occurred under rare 
and unclear conditions; now ignored.

Fixed makefile.bsd for NetBSD.

Added top level makefile, selecting OS-specific makefile automatically.


<a name=2000.5>
=============================================================================
Changes from mined 2000.4 -> mined 2000.5 (Dec 2002)
=========================================

Feature: Keyboard mapping
-------------------------
Keyboard mapping for various scripts is available in UTF-8 mode 
(both edited text and terminal must run UTF-8).
This maps keyboard input characters or short character sequences to 
characters (or short sequences) in a different script.
In this release, mappings for Greek, Cyrillic, Arabic, and Hebrew have 
been integrated.
An active and a standby keyboard mapping are maintained. They can be 
toggled quickly for text input with ESC k (or Alt-k), also on the prompt 
line (e.g. for searching).
Command overview:
  ESC k toggles between active and standby keyboard mapping
	also on prompt line
  HOP ESC k resets keyboard mapping to none (unmapped input)
  ESC K opens the keyboard mapping menu
	also on prompt line
  HOP ESC K cycles through available keyboard mappings

Note: As some typical keyboard mappings contain ambigous key sequences 
where one may be a prefix of another, a short delay is applied in 
these cases to allow recognition of any such sequence to be mapped.

The current mapping is indicated by its two-letter script tag in the 
flags area (top screen line), clicking on it cycles through the 
available mappings (like HOP ESC K), clicking with the right button 
opens the Keyboard Mapping menu (like ESC K).

With the environment variable MINEDKEYMAP the active or standby 
mapping can be preselected. The value is a two-letter script tag to 
set the active mapping, or it is prepended with "-" to set the 
standby mapping.
Example: export MINEDKEYMAP=-gr will set Greek keyboard mapping standby.
Known script tags are:
  ar -> Arabic
  gr -> Greek
  el -> Greek
  he -> Hebrew
  cy -> Cyrillic
  ru -> Cyrillic


Options and further features
----------------------------
Bidirectional terminal support:
To run mined on a bidirectional terminal (such as mlterm), disable the 
scrollbar with the option -o.
In this mode, when displaying a menu, underlying text lines that 
contain right-to-left characters are cleared first in order to prevent 
display confusion between the terminal's bidi algorithm and the menu 
position.

Mined's "poor man's bidirectional support" (which automatically places 
right-to-left characters to the left of the previous character) was 
disabled by default in order to support mined's operation with 
bidirectional terminals.

Script colouring:
For better recognition of letters that belong to a certain script 
(where similar looking letters may belong to other scripts), 
text display uses colours to distinguish letters of various scripts.
This is preconfigured for Greek and Cyrillic (which share some letter 
forms with Latin).
Compile-time configuration of further script colouring is available 
with the file colours.cfg; it contains entries with the script name 
(as listed in the Unicode data file Scripts.txt), white space, and 
a colour index into the xterm 256-colour mode.

Two "flag menus" were introduced:
* one for the Keyboard Mapping (as described above),
* the other for Smart Quotes selection; it's popped up with the right 
  mouse button on the smart quotes indication in the flags area;
  additional commands:
  ESC Q or Alt-Q: also pops up the Smart Quotes menu
  HOP ESC Q: cycles through available Smart Quotes

When a pull-down menu is opened with the middle mouse button, the 
HOP version of its items is preselected (can be toggled with middle 
mouse button as before).

-X disables display of the filename in the window title bar.

Changed default of -G option (enabling display of control characters 
as block graphics) to be disabled.

Flag indications were slightly tweaked in order to make them more 
intuitive.


Bug fixes:
----------
Fixed a rare bug with ESC u on illegal UTF-8 characters.

Clever justification now also considers the bullet sign as a 
numbering (list item) character.

Back-TAB was tweaked not to apply directly below non-space text of the 
previous line.

Fixed some bugs and inconsistent results with shortcuts for 
composed character input.
Added composed character sequences for single-accented extended 
Latin characters.
Extended diacritic transformation function (ESC _) to all 
two-letter composed characters as configured for input support.


<a name=2000.4>
=============================================================================
Changes from mined 2000.3 -> mined 2000.4 (Sep 2002)
=========================================

Interface:
----------
Made use of advanced xterm mouse tracking modes.
* Text select and copy with highlighting by mouse dragging.
* Menu item browsing by mouse dragging.
  If the mouse button is kept down, items are automatically selected 
  as the mouse is dragged over them.
  An item is selected by either clicking the left button or 
  releasing the left or right button.
  It is also still possible to open and change menus with click-release, 
  then select an item with another click (less finger-strain).

A "non-break space" (character value A0 hex) is now displayed by a 
tiny middle dot (as used for TAB indication) in cyan colour.

Syntax highlighting
* Also toggled for .sgml files (as well as for .html/.htm, .xml, .jsp).
* Extended to JSP and HTML comments.

In order to avoid command confusion on slow remote connections where 
escape sequences might come in deferred, the following commands were 
changed:
* Disabled ESC N cmd which repeated the command N times when N 
  has only 1 digit (in that case the command might have been a 
  function key escape sequence).
  Use ESC = N cmd instead, or use 2 or more digit repeat counts, 
  e.g. ESC 77- (to enter 77 '-' characters) or ESC 07x (to enter 'xxxxxxx').
* Changed ESC O which inserted the octal value of the current character.
  Use ESC A instead.

When inserting an HTML marker on the prompt line (commands ESC H, 
HOP ESC H) HTML tag attributes can be included; they are only inserted 
for the starting marker, not for the closing marker.

The TAB width can be toggled between 8 and 4 while mined is running 
(command ESC T).

Function keys of some terminals (esp. HP and Siemens) are ambiguous; 
the preferred key set to be detected can now be configured 
(environment variable MINEDTERM= xterm / hp / siemens).

The ESC u command displays additional Unicode script information.

The parentheses matching commands ESC ), ESC (, etc, now also match 
HTML tags.

The character compose and input support function was revised. 
Accent prefix functions were extended to support Unicode. 
Additional mnemos were enabled, including TeX and HTML mnemos.


Features:
---------
Clever justification (auto-indentation):
With the justification command ESC j, clever auto-indentation is applied.
It uses heuristic detection of numbered items and program source comments.
(The old justification function that only considers configured margins 
is available by ESC J.)

A Back Tab function was added. A Backspace from a position that is 
only preceded by white space on the line will revert the input position 
to the previous matching indentation level.

In both justification modes, automatic suppression of auto-indent 
applies by heuristic detection of the speed at which characters 
are entered. This is to allow unmodified pasting of text (using 
e.g. xterm mouse copy/paste).

Checkout and checkin functions for version management systems added 
(to File menu, command scripts "co" and "ci" must exist in path).

Introduced generic handling of shift state indication for function key 
escape sequences (control/shift/alt and combinations).
No more "Unknown command" errors on unregistered function key variants.
By default they invoke the same function as the unshifted key.

The location of mined buffers can be configured with an additional 
environment variable MINEDTMP ([SYS$]MINEDTMP on VMS). This supports 
copy and paste operations among different machines.


Bug fixes:
----------
Revised case conversion and other Unicode character property handling.
Updated tables for wide and combining characters to new Unicode data.

Fixed some display bugs:
- Current line was cleared after prompt was aborted with mouse button.
- Search/replace including linefeeds could mess up the screen.
- Screen line could mess up on an incomplete UTF-8 sequence at the end 
  of a line in UTF-8 text and screen mode.

Fixed a bug with automatic line-wrap after entering space.

Fixed some terminal size detection problems after rlogin from DOS.

Under weird circumstances, the first empty line in a file not edited as 
the first one could produce display and buffer garbage on SunOS.

Fixed some search pattern match bugs:
- with empty lines
- with replace and ^, starting in middle of a line (started replacement 
  at that position, not at start of next line)
- with ^, searching backwards (did not find in current line)

Removed restriction of regular expressions with Unicode characters:
search patterns * etc (UTF-8: ä*, €* etc) do work now.


Manual hints and clarifications:
--------------------------------
A search pattern [pat]* matches a (zero or more times) repetition of 
this pattern. In a final position within the search expression, 
however, it matches one or more times this pattern.

Hex input code ^V # xxxx [space or RET]:
Works on the prompt line only in Unicode mode, exactly 4 hex digits 
are accepted but are not echoed on the screen.

Improved description of special character input support in the manual.
Added overview chapter on input support.


<a name=2000.3>
=============================================================================
Changes from mined 2000.2 -> mined 2000.3 (May 2001)
=========================================

Documentation:
--------------
The manual page was updated and thoroughly revised.
Its primary source was transformed into HTML, roff/man format being 
generated.

The mined web pages were updated and revised.

The file "doc/compilation" (with compilation hints) was updated.


Features:
---------
HOP '/' enters an indented Javadoc comment frame.


Interface:
----------
Options can be concatenated on the command line.
(mined -uu instead of mined -u -u enables Unicode line separators.)

Right-to-left script input support is now enabled by default.
The option -b toggles it.

Option -G disables (actually toggles) the display of certain control 
characters as block graphics characters (enabled by default).

Option +G enforces use of block graphics for display of menu borders.
May be used if the "alternative character set" capability is not 
configured in your system but your terminal does have the capability.

Set output delay (-d0..-d9) to none (-d-) by default in all versions.

The help command was unified on Unix and DOS versions. Not completely, 
however, as calling a sub-programm ("less") through the "system" call 
doesn't seem to work on DOS (it crashes or blocks terminal input 
afterwards, even with cygwin). See also next comment.

A second help viewing mode is now avaible (HOP HELP, e.g. HOP F1). It 
displays help information within mined itself, restoring the previous 
editing state afterwards.
This is the default on MSDOS for the reason mentioned before.


Bug fixes:
----------
Fixed a screen-related pointer confusion after replacement with multiple 
lines (embedded newline) which could result in a display bug and page down 
could be blocked.

(Very minor) Just deleting the trailing line-end of a file is also 
considered a modification (a file only modified this way would 
previously not have been saved automatically).

(Minor) With UTF-8 auto-detection involved, the character count after 
reading the file could be wrong (ESC ? would have been correct).

(Minor) The pop-up menu, when modified with HOP and thus becoming smaller, 
used to leave the frame of its previous width on the screen.

(Embarassing) Although I was proud of "perfect responsiveness to 
window size changes" I had just forgotten to implement that for 
the case of a menu being open.

On DOS, editing a file with Unix line-ends, the function "append to buffer" 
used to append the lines with MSDOS line-ends.


<a name=2000.2>
=============================================================================
Changes from mined 2000.1 -> mined 2000.2
=========================================

Features:
---------
Auto indentation when entering a new line.
Insert a new line without auto indentation with the ^O command.
Auto indent mode may be toggled from the Extra menu.

Entering auto-indented pairs of parentheses:
With the HOP prefix, the characters "(", "[", "{", "<" enter 
an auto-indented pair of "{" ... "}" etc.

Search and replace patterns can use an embedded newline. Enter 
with ^V ^J. In some cases there are still display problems. 
Then update the screen with the ESC "." command.


Interface:
----------
HTML files (ending on .html, .htm, .xml, .jsp) trigger a display mode 
which distinguishes HTML tags by coloured display.
The mode can be toggled from the Extra menu.
	While you edit within a line and change its HTML ending status 
	(by entering or deleting '<' or '>'), the display status of 
	subsequent lines is not changed. (You may refresh the display 
	with ESC ".")

Special markers (on cyan background) for illegal UTF-8 sequences are 
applied in UTF-8 terminal mode as well (instead of the Unicode 
replacement character).

The online help file format and help invocation were changed.

Online help contents was enhanced.


Bug fixes:
----------
For relevant file close operations, the return code of close() is now 
checked. Usually, write errors are already noted by write() calls but 
for a few rare cases, this check is appropriate.

Some display bugs (especially with UTF-8) were fixed.

Graphic display for menu borders on the Linux console was fixed (funny 
it uses the DOS character set as an "alternative character set").


Porting:
--------
Flexible selection of DOS versions available, all with mouse support.
(djgpp, cygwin, EMX, Turbo-C).


<a name=2000.1>
=============================================================================
Changes from mined 2000 -> mined 2000.1
=======================================

Features:
---------
Configurable automatic smart quotes (" character on input replaced 
by typographic quote marks depending on style setting, in UTF-8 text mode).

Completed combined character support, removed some bugs.

Unicode case toggle handles context-dependent mappings (Greek sigma).


Interface:
----------
Mined looks for its online help file at certain typical locations so 
it may find it even if MINEDHELPFILE is not configured.


License:
--------
For distribution purposes, the GNU license was imposed, but commented in 
README.


<a name=2000>
=============================================================================
Changes from mined 98 -> mined 2000
===================================

Features:
---------
Scrollbar display
May be used for relative or absolute positioning with the three mouse 
buttons.

Flexible and simultaneous handling of different line ends
Unix and MSDOS line ends can be handled in the same editing session and 
are indicated by different coloured line-end symbols. Files without 
trailing line-end can be edited and created.

Transparent long line handling
Overly long lines are now read in transparently. They are attached a "NONE" 
line-end type so they will be written out exactly as they came in.
Splitting within UTF-8 sequences is avoided; splitting of combined 
characters is not avoided, however, they will join seemlessly as lines 
are joined again. (Combining characters at the beginning of a line are 
not displayed in combined display mode.)

Special line-end handling details and binary transparency
With the above two modifications, a couple of line end handling features 
were introduced and binary transparency was achieved.
* Input of NUL characters from file is accepted and is presented as a 
  special "NUL" line-end type. Explicitly entering a NUL character 
  works, too (either literally or with ^V # 0). Thus mined achieves 
  binary transparency through an editing cycle now.
* The ^O command in a line with "NUL" or "NONE" line-end will 
  reproduce this line-end type in contrast to entering a new-line 
  which will always produce a real line-end.
* In order to split a line in two, separated with "NONE" line-end, use 
  HOP ^O (e.g. ^G^O).

Mac line-end handling
Mac line ends (CR only) can be transparently read and handled with the 
command line option +R (while -R would transform them into Unix line ends).

Tags file support
Moving to the definition of an identifier using the tags file 
(generated by the ctags command) was added. If a new file is opened 
for this purpose, the current file is saved automatically.
* Command: ESC t when cursor is on identifier (with HOP, it prompts for 
  the identifier), or from Search or Popup menu.

Search and replace enhancements
Finally, typical Unix tool limitations of line orientation is being 
removed. Mined can search for expressions with embedded new-lines 
(enter with ^V ^J or \n). - Not yet fully implemented! -

Additional HTML tag input support
The command ESC H (not ESC h!) now inserts an HTML tag which is 
entered in dialog. Another ESC H inserts the corresponding closing tag.
* So, continuous entering of HTML contents was made easier.
* The previous function to embed the text between marked position and 
  current position in an HTML tag is available with an additional HOP, 
  e.g. ^G ESC H.

File handling consistency improved
The command ESC # to edit the nth file from the command line was 
extended with ESC # # which just reloads the current file.

Remembering editing information between sessions
In addition to the current position, also the paragraph justification 
margins (wrap-around margins) are remembered until the next 
invocation, but only if justification mode is switched on.

Tab size can be adjusted to 4 (instead of 8) with the command line 
option -4.

Keypad assignment to the "Home" and "End" keys can be changed with the 
option -k. Normally, these keys perform the "Mark" and "Yank"("Copy") 
functions. Some people strongly expect these keys to go to the 
beginning or end of line although that really is a waste of key 
assignment as these functions are easily performed with HOP left/right -
anyway, the option -k exchanges the assignment. The other functions 
are accessible with shift-Home/shift-End (if the keys emit different 
sequences, see X configuration hints).


Unicode handling features:
--------------------------
Combined character display
Handling of Unicode combined character display is enabled by default 
with UTF-8 terminal operation. (May be disabled by environment 
variable utf8_no_combining_screen, or command line option -c.)
* There are two editing modes for combined characters: combined and 
  separated. Switch modes by clicking on the "c/C" indicator next to 
  the UTF-8 "L/U" indicator in the flags area of the top line, or in 
  the eXtra menu.
* In combined display mode, the following special functions are available:
  The cursor can be moved into a combined character with 
  ctrl-left-arrow or ctrl-right-arrow, provided these cursor keys are 
  configured to emit distinguished escape sequences with control-key 
  held. ^V-left-arrow and ^V-right-arrow also work. You can determine 
  the exact position of the cursor if permanent character info is 
  switched on (by HOP ESC u or with HOP in the eXtra menu).
* Partially editing combined characters:
  * If the cursor is on a combined character, delete next character 
    will delete the whole combined character, with all combining accents.
  * If the cursor is within a combined character, delete next 
    character will delete the current combining accent only.
  * In separated display mode, all cursor and text modification 
    operations work on the combining parts as displayed.

Search expressions
The restriction that search ranges could not be used for non-ASCII 
characters in UTF mode was removed.
* Search ranges can, however, not be very large as all included 
  characters are listed in an internal buffer which is limited to ca. 
  1 KB.

Case toggle
The character or word case switch function (e.g. in the eXtra menu, or 
F11) works also with all Unicode characters.

Unicode line ends
Line separator and paragraph separator are optionally detected and handled.
* Activate this mode by two -u options ("-u -u" on command line or 
  "uu" in MINED environment variable).
* Inserting a new line on a line with Unicode lineend will insert a 
  line separator unless the hop flag is active in which case a 
  paragraph separator will be used.

Basic input support for right-to-left scripts
After entering a right-to-left character, the cursor position is moved 
left of it, so subsequent characters will be appended left and the 
text shifted right. Characters are stored in visual order while input 
support is implicit, based on the characters being typed. Entering 
left-to-right characters will obviously automatically switch 
direction; to continue with right-to-left, the cursor must be moved 
manually (e.g. to the line beginning).
* Newline, Space, TAB, and combining characters attempt to behave well 
  according to what was entered before; however, intermediate cursor 
  movement is not considered.
* Activate right-to-left support with the command line option -b.
* This mode is not meant to work with the latest right-to-left xterm 
  patch - it would rather interfere with it. The mined right-to-left 
  mode is just intended to provide a simple mechanism to quickly enter 
  visually correct right-to-left text in a conventional environment.
* Orientation of text alignment remains on the left side in this mode. 
  Suggestions for improvement in order to make it useful for 
  right-to-left or bidirectional writing are welcome.


Interface:
----------
Menu display
Uses block graphics characters if determined to be available.

Menu layout
The pulldown and popup menus are in variable width now (depending on 
contents).

HOP toggle in menus
While a menu is open, any of the HOP key, ^G, Blank, or the middle 
mouse button toggles the HOP amplifier and the menu redisplays with 
function names changed where applicable.

Mouse usage
Was enabled with curses operation (useful for EMX, see below).

Keyboard availability of menus
Menus are available from the keyboard; Alt-letter (or ESC-letter) 
pulls down a menu starting with that letter, Alt-TAB pulls down the 
file menu, Alt-blank pops up the quick menu.
(In order to make Alt work as a modifier, set the xterm resource 
metaSendsEscape to true as suggested in the example file .Xdefaults.mined.)

Line begin/end keys, hop key assignment
In order to get rid of the waste of keyboard assignments which is imposed 
by terminal emulation emitting the same escape sequences for keys of 
the two keypad areas, some X resource definitions were included 
in the file .Xdefaults.mined as a recommendation (section 
XTerm*VT100.Translations). Also the hop key may have to be made available 
explicitly with some X setups (also included in that file).

Keyboard reassignments
In order to make room for the Alt-keys to address menus, some 
commands had to be reassigned:
substitute:	ESC , (was: ESC s)
set marker n:	ESC m (was: ESC ,)
screen smaller:	ESC % (was: ESC m)
screen bigger:	ESC & (was: ESC M)
case toggle:	ESC C (was: ESC f)
edit other file: use F3, or "Open" from the File menu (was: ESC e)
print buffer:	use "print buffer" from the File menu (was: ESC p)


Operation in system environment:
--------------------------------
Window resize propagated to parent shell
If the window is resized, the SIGWINCH signal is propagated to the parent 
process so that e.g. the shell also knows about the changed size.


Porting:
--------
Windows ports
Adaptations to enable compilation in Cygwin and EMX environments.
Works in EMX with ncurses and mouse enabled.

Windows port with mouse / DOS port?
A lot of changes to the curses adaptation enabled seemless operation 
in the EMX environment under Windows.
Unfortunately, EMX does not keep its promise to generate dual-mode 
Windows and DOS executables. Can anyone help?


Bug fixes:
----------
Searching
Fixed a few pattern matching bugs (some had slipped in while 
introducing UTF-8).

Search/Replace
Fixed start of replacing to current position (instead of line beginning).

Search/Replace
Fixed a display bug when replacing was aborted with "line too long" 
outside the current screen.

Word-wrap
Paragraph justification moved to the wrong position if triggered by a 
space entered at the end of line.

Chinese mode display
In 8/16 bit character set mode, some situations (illegal 16-bit codes) 
of display garbage were fixed.

Various minor bugs


<a name=98>
=============================================================================
Changes from mined release 6 (1995) -> mined 98
===============================================

UTF-8 Unicode support:
----------------------
Works with UTF-8 text mode terminals or windows like xterm.
Auto-detection of Latin-1, UTF-8 or UTF-16 input encoding.
Commands and input support for display and handling of code values.
Transparent handling of illegal UTF-8 sequences.
Can edit UTF-8 text in non-UTF terminals and vice versa.

User interface:
---------------
Mouse control on xterm.
Pull-down menus and pop-up menu.

...


<a name=6>
=============================================================================
Changes from release 5 -> mined release 6 (1995)
================================================

-	Additional word-wrap version:
	In order to remain a pure text editor (without placing text 
	processing control codes into the text), mined uses trailing 
	blanks as indicators that a paragraph continues. However, 
	sometimes text should be formatted that does not follow this 
	convention. So there is another adjustment option now which 
	terminates formatting a paragraph at the next empty (or blank-
	only) line.
-	Optionally remembering the position where you last left a 
	modified file. Automatic re-positioning in next edit session.
-	Help can now be viewed with mined itself (HOP ESC h).
-	Increased portability: Mined now compiles on more platforms 
	without changes (HP-UX, AIX, recent SINIX versions).


<a name=5>
=============================================================================
Changes from release 4 -> mined release 5
=========================================

-	The command ESC H to insert HTML commands.
-	Separate left margins for first and next lines of paragraph.
-	Startup search expression on command line.
-	Wild cards in file names on MSDOS.
-	Can switch between edit and view only modes.
-	MSDOS version: Beep modified to use the BIOS beep which is 
	redirected by some "beep enhancement" drivers (newbeep / 
	nusound) instead of the DOS beep which for some peculiar 
	reason they don't change.
-	Compiles on SunOS5.
-	Sets window headline and icon text to current filename in 
	xterm or sun-cmd window.
-	Parameter -x to make a new file executable (Unix) in order to 
	create a shell script.
-	Leading "~" notation for referring to home directory accepted 
	in all filenames.


<a name=3>
=============================================================================
Changes from release 2 (August 1992) -> release 3 (August 1993)
===============================================================

Main new features:
-	Paragraph reformatting with left and right margin settings.
-	Optional WordStar-compatible keyboard layout.
-	Optional support of 16-Bit character sets.
	(Works well with the Chinese xterm, cxterm.)

Some more new or enhanced features:
-	Screen display was modified to build from the new cursor position 
	(after a search often in the center of the screen) up and down to 
	the upper and lower borders of the screen. This appears to more 
	naturally suggest to the users where they are.
-	Support for proportional screen fonts was added.
-	The MSDOS function key sequences were activated in the Unix version 
	as well to enable using Unix mined remotely from a PC keyboard.
	PC terminal support includes video mode changing as far as it 
	can be performed by escape sequences to the ANSI driver.
-	Mostly unified option environment into one variable, MINED.
-	Options for conversion between different line end types.
-	Extended the enter-control-code prefix (^V) to compose characters 
	if the first following key resembles an accent mark ("'`^~).
-	A search for identifier at current position function was introduced.
-	A repeat previous search (one before the last search) function was 
	introduced.

Improvements in the MSDOS version:
-	Improved memory management (problem: the 640 KB memory restriction 
	being effective if compiled with Turbo-C).
-	MSDOS mined now detects screen size changes on each keystroke, so 
	it reacts almost immediately, e.g., on font changes performed by 
	the VGAMAX font substitution TSR.
-	Several MSDOS screen mode switching functions were integrated to 
	enable explicit mode change with a command.

Bugs removed:
-	Display garbage in very small windows (less than 28 columns).
		There may still occur display garbage if the window is 
		narrower than the tab size (8 displayable characters).
-	Display garbage in very long lines.
-	Display and position bug related with tab characters and long lines.
-	Display garbage after substitution that made a line shorter so it 
		gets completely shifted out of the left display border.
-	Incorrect display after aborted substitution.
-	Aborted substitution although there was enough room on the line.
-	If the environment variable NoCtrlSQ or NoControlSQ is set, also 
	the tty channel soft handshake setting will not be disabled in case 
	this would affect remote connection behaviour. I had discovered that 
	characters were actually lost on a remote (internet) login connection.

Keyboard assignment mofications:
-	Line replace function assigned to ESC R.
-	Double assigned some functions in support of optional WordStar mode.
-	Option to adapt Backspace and Delete keys to other convention.


<a name=2>
=============================================================================
Changes from release 1 (July 1992) -> release 2 (August 1992)
=============================================================

Minor changes of behaviour
-	Control characters can now be searched for.

Source improvements
-	Improved portability according to mail feedback.
-	Compiles without warnings with gcc -ansi -pedantic and 
	various other checks.

MSDOS version
-	Compatibility with different ANSI drivers was improved.
	Runs well with the very capable NNANSI (Tom Almy) or the 
	small and simple well-working ANSI.COM (Michael J. Mefford).
-	Workaround for problem with Turbo-C libraries that inhibited 
	mined from working in arbitrary size screens ("extended text modes" 
	like 132x44 etc).
-	The change working directory command now works with respect to 
	different drives, including change of drive only.
-	Shell escape now available on MSDOS.
-	A display bug on the prompt line of the search/replace commands 
	was removed (The initial prompt vanished after the first input).
-	Options can be given starting with / in addition to - .


=============================================================================
</html>