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 ¬ ", 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>
|