ChangeLog 289 KB
Newer Older
Bill Wohler's avatar
Bill Wohler committed
1 2 3 4
2003-04-25  Bill Wohler  <wohler@newt.com>

	* mh-e.el (mh-version): Set to 7.3+cvs.

Bill Wohler's avatar
Bill Wohler committed
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
2003-04-24  Bill Wohler  <wohler@newt.com>

	* Released MH-E version 7.3.

	* MH-E-NEWS, README: Updated for release 7.3.

	* mh-e.el (Version, mh-version): Updated for release 7.3.

2003-04-24  Satyaki Das  <satyakid@stanford.edu>

	* mh-xemacs-compat.el (mh-utils): Require mh-utils at compile
	time, since the mh-do-in-xemacs macro is used.

	* mh-inc.el (cl): Require cl at compile time since we are using
	the loop and setf macros.

2003-04-24  Satyaki Das  <satyakid@stanford.edu>

	* mh-unit.el (mh-files): Fix the list of files to check.

2003-04-24  Bill Wohler  <wohler@newt.com>

	* ChangeLog: Appended copyright to end of file.

	* Makefile: Added copyright and license.

	* README: Added copyright.

	* import-emacs: Changed copyright from Newt Software to Bill
	Wohler and use license from mh-e.el, except that this file is
	a part of MH-E, not GNU Emacs.

	* mh-alias.el: Updated copyright so that it doesn't wrap upon
	advice from Richard Stallman who said to use two-digit years when
	they are surrounded by 4-digit years that are in the same century
	and to break up copyrights on multiple lines.
	* mh-comp.el: Ditto.
	* mh-e.el: Ditto.
	* mh-funcs.el: Ditto.
	* mh-identity.el: Ditto.
	* mh-mime.el: Ditto.
	* mh-seq.el: Ditto.
	* mh-utils.el: Ditto.
	* mh-xemacs-compat.el: Ditto.

	* mh-unit.el: New file. Unit tests for MH-E. This version merely
	runs checkdoc and lm-verify which is useful before releasing the
	software. It can and should be expanded to do real unit tests.

2003-04-22  Mark D Baushke  <mdb@gnu.org>

	* mh-alias.el: Update Copyright.
	* mh-comp.el: Ditto.
	* mh-customize.el: Ditto.
	* mh-e.el: Ditto.
	* mh-funcs.el: Ditto.
	* mh-identity.el: Ditto.
	* mh-index.el: Ditto.
	* mh-mime.el: Ditto.
	* mh-pick.el: Ditto.
	* mh-seq.el: Ditto.
	* mh-speed.el: Ditto.
	* mh-utils.el: Ditto.
	* mh-xemacs-compat.el: Ditto.

2003-04-22  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-normalize-folder-name): Make the completion
	code work properly with XEmacs. This change is neeeded since
	split-string behaves differently in XEmacs than it does in GNU
	Emacs.
	(mh-exec-cmd-error): Add a comment, so that we change it later on.

2003-04-18  Steve Youngs  <youngs@xemacs.org>

	* mh-xemacs-icons.el (mh-xemacs-icons): Provide 'mh-xemacs-icons'
	not 'mh-xemacs-toolbar'.

	* mh-xemacs-compat.el (mh-xemacs-toolbar): Remove require, it's
	now called 'mh-xemacs-icons' and it is required from
	'mh-customize'.

	* mh-customize.el: Require 'mh-xemacs-icons' instead of
	'mh-xemacs-toolbar'. 

2003-04-17  Peter S Galbraith  <psg@debian.org>

	* mh-xemacs-icons.el: New file (renamed from mh-xemacs-toolbar.el).
	Holds XEmacs icons.

	* mh-xemacs-toolbar.el: Deleted.

	* Makefile: Incorporate the file renaming.

2003-04-15  Bill Wohler  <wohler@newt.com>

	* mh-comp.el (mh-forward): Pass a list of messages into
	mh-compose-and-send-mail instead of msg-or-seq.
	(mh-annotate-msg): The previous version called
	mh-iterate-on-msg-or-seq in the letter buffer. The new version
	simply adds the ability to operate on message lists. Thanks to
	Satyaki for the fix and suggestion for passing a list from
	mh-forward.

2003-04-14  Bill Wohler  <wohler@newt.com>

	* mh-comp.el (mh-annotate-msg): Updated to handle msg-or-seq for
	mh-forward was passing a msg-or-seq to mh-compose-and-send-mail
	which in turn passed the msg-or-seq to mh-annotate-msg. In
	particular, forwarding a region failed. Note that the msgs
	argument in much of mh-comp.el should really be converted to
	msg-or-seq accordingly. But not now, unless something is broken as
	was the case here. We can revamp after the release.

2003-04-13  Bill Wohler  <wohler@newt.com>

	* mh-funcs.el (mh-kill-folder): Added space after prompt to give
	the (yes or no) bit a little elbow room.

	* mh-xemacs-toolbar.el: Removing a copyright is a no-no.
	Reinstated Steve's copyright.

2003-04-12  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Add
	indentation hooks for the macros.

2003-04-11  Bill Wohler  <wohler@newt.com>

	* mh-alias.el, mh-comp.el, mh-customize.el, mh-funcs.el,
	mh-identity.el, mh-inc.el, mh-index.el, mh-junk.el, mh-utils.el:
	Merged in changes from CVS GNU Emacs. These included the removal
	of trailing whitespace.

	* mh-customize.el: The "anti-entropy" check-in. Moved groups
	around slightly to reflect commentary. Moved defcustoms around
	to preserve alphabetization. Big diff, little content.
	(mh-xemacs-use-toolbar-flag): Doc fix.
	(mh-xemacs-toolbar-position): Fixed typo in docstring.
	(mh-default-folder-list): Updated docstring to reflect new Check
	Recipient tag. Also, set type of Address to regexp.
	(mh-x-mailer-string): Moved to mh-comp.el where it is used.

	* mh-comp.el (mh-x-mailer-string): Moved here from customize.el.
	Not quite sure how it got to mh-customize.el in the first place.

	* mh-e.el (mh-folder-folder-menu): Added Folder -> View New
	Messages menu item.

	* mh-utils.el (mh-show-folder-menu): Ditto.

	* mh-inc.el: Added Change Log comment (lm-verify fix).

	* mh-index.el (mh-index-search): Added documentation about prefix
	argument for users, in addition to documentation for programmers.

	* mh-mime.el (mh-edit-mhn, mh-edit-mhn, mh-mml-to-mime): Docstring
	fixes germaine to the change whereby we now check for MIME
	directives before sending.

	* mh-xemacs-toolbar.el: Fixed copyright. Added Change Log comment
	(lm-verify fix). Added standard MH-E local variables. Removed
	time-stamp stuff.

2003-04-11  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-iterate-on-msg-or-seq): Add a missed comma.

2003-04-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-index-visit-folder): Prompt before reusing
	existing folder buffer.

	* mh-xemacs-toolbar.el (require): Require mh-utils at compile
	time to avoid compilation error when doing "make bootstrap" in
	CVS Emacs.

	* mh-inc.el (mh-inc-spool-list): Declare it so that a compile
	time warning is avoided when doing "make bootstrap" in CVS Emacs.

2003-04-10  Peter S Galbraith  <psg@debian.org>

	* mh-inc.el (mh-inc-spool-generator): Changed to a defun instead
	of a defmacro, applying Satyaki's patch.
	(mh-inc-spool-def-key): same.
	(mh-inc-spool-make): same.

	* mh-utils.el: define-key "I" in mh-show-mode-map for
	mh-inc-spool-map.

	* mh-comp.el (mh-modify-header-field): Remove debug message.

2003-04-10  Peter S Galbraith  <psg@debian.org>

	* mh-inc.el (mh-inc-spool-map-help): Default to nil.
	(mh-inc-spool-map): Make "?" key display message when
	`mh-inc-spool-map-help' is nil (instead of mh-inc-spool-map-help
	containing the message).

	* mh-e.el: require mh-inc.el
	* mh-e.el: define-key "I" in mh-folder-mode-map for mh-inc-spool-map.
	(mh-help-messages): Add help string for "I" key.

2003-04-09  Peter S Galbraith  <psg@debian.org>

	* mh-inc.el: New file. New feature to `inc' mail from various
	spool files into different folders.

	* mh-loaddefs.el: Regenerate for mh-inc's mh-inc-spool-list-set.

	* Makefile (MH-E-IMG): Add highlight icon.
	(MH-E-SRC): Add mh-inc.el file.

	* mh-customize.el (mh-inc-spool-list): New variable for new
	feature to `inc' mail from various spool files into different
	folders.

2003-04-09  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-mail-delivery-buffer): Add a defconst for
	mh-mail-delivery-buffer.

	* mh-comp.el (mh-send-letter): Use mh-mail-delivery-buffer.

	* mh-mime.el (mh-small-image-p): Add mh-funcall-if-exists to
	avoid compiler warning in GNU Emacs.

2003-04-08  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-mime.el (mh-small-image-p): Make the function slightly more
	error-resistant in XEmacs.

	* mh-seq.el (mh-narrow-to-seq, mh-widen): Update tool-bar-map in
	the show buffer if needed. This allows us to display the widen
	button in the show buffer only when the folder is narrowed.

	* mh-customize.el (mh-tool-bar-define): Changed so that a
	separate tool-bar-map is used in show-mode when folder is
	narrowed to a sequence.

2003-04-08  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-iterate-on-msg-or-seq): Reinstate the use of
	make-symbol since using gensym causes compiler warnings in CVS
	Emacs.

2003-04-08  Bill Wohler  <wohler@newt.com>

	* mh-comp.el (mh-forward): Function didn't handle a region of
	messages. Use new function mh-msg-or-seq-to-msg-list to get a list
	of messages in all circumstances. Also, use mh-coalesce-msg-list
	on message list before submitting to forw since this should always
	be done when calling a program to reduce the chance of exceeding
	command-line limits.

	* mh-seq.el (mh-iterate-on-msg-or-seq): Backed out previous
	change. A nil msg-or-seq should mean no messages, and Satyaki is
	going to use gensym instead of make-symbol.
	(mh-msg-or-seq-to-msg-list): New function to convert a msg-or-seq
	to a list of message numbers.

	* mh-e.el (mh-coalesce-msg-list): Touched up the docstring a
	little.

	* mh-funcs.el (mh-print-msg): Can now print regions, message
	lists, sequences and, of course, single messages. This version
	works a little differently from the old version. Instead of
	calling mhl | lpr once on all messages, mhl | lpr is called once
	per message in order to put each message's number in the header.
	Thanks to Satyaki for some code and ideas.

	* mh-seq.el (mh-iterate-on-msg-or-seq): The argument msg-or-seq
	can now be nil which means the current message. Make local symbols
	so that local variables don't step on user's symbols (the msgs
	symbol got me).

2003-04-06  Bill Wohler  <wohler@newt.com>

	* mh-comp.el (mh-forward):  Updated docstrings to indicate that a
	list of messages is acceptable as well.

	* mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg)
	(mh-undo, mh-notate-user-sequences, mh-delete-msg-from-seq): Ditto.

	* mh-funcs.el (mh-copy-msg, mh-print-msg): Ditto.

	* mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Ditto.

	* mh-seq.el (mh-put-msg-in-seq, mh-iterate-on-msg-or-seq)
	(mh-interactive-msg-or-seq): Ditto.

2003-04-06  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Call
	mh-refile-a-msg and mh-delete-a-msg with nil as the message
	number since that is more efficient.

	* mh-seq.el (mh-iterate-on-msg-or-seq): Extended so that it will
	handle lists of messages numbers as well.
	(mh-put-msg-in-seq): Use mh-iterate-on-msg-or-seq to simplify the
	function.

	* mh-funcs.el (mh-copy-msg): Same as above.

	* mh-e.el (mh-refile-msg): Make it more efficient. Using nil in
	mh-refile-a-msg avoids needing to re-search-forward to that
	message.
	(mh-undo): Fix typo in interactive spec.
	(mh-notate-user-sequences): Generalize the function to take a
	msg-or-seq as argument.
	(mh-delete-msg-from-seq): Extend the function so that it is now
	able to subtract messages belonging in one sequence from another.
	(mh-undo): Unify the region and sequence handling. The message
	number branch of the function does extra stuff, so we can't merge
	that in.

2003-04-06  Bill Wohler  <wohler@newt.com>

	* mh-comp.el (mh-forward): Use mh-interactive-msg-or-seq. Inserted
	consistent verbiage in docstring for msg-or-seq.
	(mh-reply): Don't mention default in opening line in all
	docstrings.

	* mh-e.el (mh-delete-msg, mh-refile-msg)
	(mh-undo, mh-delete-msg-from-seq): Use mh-interactive-msg-or-seq.
	Inserted consistent verbiage in docstring for msg-or-seq. In
	mh-delete-msg-from-seq, renamed msg-or-region to msg-or-seq.

	* mh-funcs.el (mh-copy-msg, mh-print-msg): Use
	mh-interactive-msg-or-seq. Inserted consistent verbiage in
	docstring for msg-or-seq.

	* mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Inserted
	consistent verbiage in docstring for msg-or-seq.

	* mh-seq.el (mh-msg-is-in-seq): Don't mention default in opening
	line in all docstrings.
	(mh-put-msg-in-seq): Use mh-interactive-msg-or-seq. Inserted
	consistent verbiage in docstring for msg-or-seq.

	* mh-e.el (mh-delete-msg, mh-delete-msg-no-motion, mh-refile-msg):
	Rewritten to use new mh-interactive-msg-or-seq function and
	mh-iterate-on-msg-or-seq macro. mh-delete-msg-no-motion gained the
	ability to operate on regions.

	* mh-junk.el (mh-junk-blacklist, mh-junk-whitelist): Rewritten to
	use new mh-interactive-msg-or-seq function and
	mh-iterate-on-msg-or-seq macro thereby gaining the ability to
	operate on sequences or regions.

	* mh-seq.el (mh-iterate-on-msg-or-seq): New macro to execute code
	on a message, a region of messages, or a sequence. This macro
	should be in all functions that operate on messages to provide a
	uniform interface.
	(mh-interactive-msg-or-seq): New function used in interactive
	calls to obtain a message number, region, or sequence. This
	function should be in all functions that operate on messages to
	provide a uniform interface.

	* mh-utils.el (with-mh-folder-updating, mh-in-show-buffer): Use
	'defun lisp-indent-hook property instead of 1 to fix indentation
	of these macros.

2003-04-05  Peter S Galbraith  <psg@debian.org>

	* mh-loaddefs.el: Regenerated.
	* mh-funcs.el (mh-ephem-message): autoload.

2003-04-04  Peter S Galbraith  <psg@debian.org>

	* mh-e.el (mh-folder-from-address):  Minor Fix.  Wrong ending of
	`when' block.

2003-04-04  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-mime.el (mh-mml-directive-present-p): The regexp has been
	modified to recognize directives to encrypt/sign messages.

2003-04-03  Mark D. Baushke  <mdb@gnu.org>

	* mh-e.el (mh-folder-from-address): E-mail messages missing the
	To: field, but which have a Cc: field should also be handled.

2003-04-03  Bill Wohler  <wohler@newt.com>

	* mh-e.el (mh-inc-folder): Modified the prompt text to read
	better.

	* mh-comp.el (mh-forward): Deleted local variable `compose'.
	Deleted obsolete setting of mh-{mmh|mml}-compose-insert-flag.
	(mh-letter-menu): Use mh-{mmh|mml}-directive-present-p instead of
	obsolete. mh-{mmh|mml}-compose-insert-flag.
	(mh-letter-mode): Deleted obsolete setting of
	mh-{mmh|mml}-compose-insert-flag.
	(mh-send-letter): This function now automatically runs the
	directive-to-MIME conversion if any directives are detected,
	rather than relying on the unreliable
	mh-{mmh|mml}-compose-insert-flag variables. Updated docstring
	accordingly.

	* mh-identity.el (mh-insert-identity): Use
	mh-{mmh|mml}-directive-present-p instead of obsolete.
	mh-{mmh|mml}-compose-insert-flag.

	* mh-loaddefs.el: Regenerated.

	* mh-mime.el (mh-mhn-compose-type, mh-mhn-compose-external-type)
	(mh-mhn-compose-forw, mh-edit-mhn, mh-mml-to-mime)
	(mh-mml-forward-message, mh-mml-attach-file)
	(mh-mml-secure-message-sign-pgpmime)
	(mh-mml-secure-message-encrypt-pgpmime): Deleted obsolete setting
	of mh-{mmh|mml}-compose-insert-flag.
	(mh-mml-directive-present-p): Checkdoc fix.

	* mh-utils.el (mh-mhn-compose-insert-flag,
	mh-mml-compose-insert-flag): Deleted. Replaced by
	mh-{mhn|mml}-directive-present-p.

2003-04-03  Mark D. Baushke  <mdb@gnu.org>

	* mh-e.el (mh-folder-from-address): Fix minor problem with To:
	address processing.

	* mh-e.el (mh-folder-from-address): Bugfix match ?+ character not
	a "?+" string.

2003-04-03  Peter S Galbraith  <psg@debian.org>

	* mh-e.el (mh-inc-folder): Add second optional argument for the
	folder to inc new mail into instead of mh-inbox.

2003-04-03  Peter S Galbraith  <psg@debian.org>

	* mh-e.el (mh-folder-from-address): The first match found in
	`mh-default-folder-list' is used.

	* mh-customize.el (mh-default-folder-list): Tweak docs

2003-04-03  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-mime.el (mh-mhn-directive-present-p): New function to test if
	a MHN directive is present in the current buffer.
	(mh-mml-directive-present-p): New function to test if a MML
	directive is present in the current buffer.

	* mh-comp.el (mh-letter-mode): Originally this function checked if
	a #forw directive was present and set mh-mhn-compose-insert-flag
	to t. The modification generalizes this test so that one of the
	variables mh-{mml|mhn}-compose-insert-flag will get set if we have
	any sort of MHN or MML directive is already present.

	* mh-seq.el (tool-bar-map): Add a defvar to avoid compiler
	warnings in CVS version of GNU Emacs.

	* mh-utils.el (tool-bar-map): Same as above.

	* mh-e.el (tool-bar-map): same as above.

2003-04-02  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-xemacs-toolbar.el (mh-xemacs-toolbar-toggle-tick-icon):
	Change color to match mh-folder-tick-face.

	* highlight.xpm: Same as above.

2003-04-02  Peter S Galbraith  <psg@debian.org>

	* mh-e.el (mh-folder-from-address): Check `mh-default-folder-list'
	for cases against the recipient instead of the originator.

	* mh-customize.el (mh-default-folder-list): Add extra boolean flag
	to conditionally check the recipient address instead of the
	originator.

2003-04-02  Peter S Galbraith  <psg@debian.org>

	* mh-customize.el (mh-folder-tick-face): Change tick highlight
	face to a background yellow-green, as suggested by Bill.

2003-04-01  Peter S Galbraith  <psg@debian.org>

	* highlight.xpm: New icon for mh-toggle-tick.

	* mh-xemacs-toolbar.el (mh-xemacs-icon-map): Add tool-bar entry
	for mh-toggle-tick.
	(mh-xemacs-toolbar-toggle-tick-icon): New constant.

	* mh-customize.el: Add tool-bar entry for mh-toggle-tick.

2003-03-31  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-utils.el (mh-show-narrow-to-tick, mh-show-limit-map)
	(mh-show-sequence-menu): Add new interactive function
	mh-show-narrow-to-tick callable from the show buffer and arrange
	for a key binding and a menu entry.

	* mh-seq.el (mh-narrow-to-tick): New interactive function that
	narrows to the tick sequence.

	* mh-e.el (mh-folder-sequence-menu, mh-limit-map): Arrange for a
	key binding and a menu entry for mh-narrow-to-tick.

	* mh-comp.el (mh-letter-mode): Enable undo since we could be
	reusing a show buffer where undo is disabled (closes SF #712777).

2003-03-31  Peter S Galbraith  <psg@debian.org>

	* mh-e.el (mh-folder-sequence-menu): Add entry for mh-toggle-tick.

	* mh-utils.el (mh-show-sequence-menu): Add entry for
	mh-show-toggle-tick.

2003-03-28  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-delete-seq): If the tick sequence is killed with
	"S k" then the highlighting wasn't getting removed. The change
	fixes this.

2003-03-27  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-notate-user-sequences): Extend it so that only the
	messages in a part of the folder are notated.
	(mh-delete-msg-from-seq): Extend it so that it will delete all
	messages in the marked region.
	(mh-delete-a-msg-from-seq): New function that deletes a single
	message from a sequence.
	(mh-clear-text-properties): If there is a ticked unseen message
	and the message is removed from the unseen list with "S d" then
	unticking the message doesn't change the highlight. This change
	fixes this.

2003-03-27  Peter S Galbraith  <psg@debian.org>

	* mh-xemacs-toolbar.el (mh-xemacs-toolbar-*-icon): Use original
	24x24 icons, changing background only.

2003-03-27  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-junk.el (mh-spamassassin-identify-spammers): Remove unused
	variable buffer-exists.
	(mh-spamassassin-identify-spammers): Remove unused variable user.

	* mh-customize.el (mh-junk-choose): Tweak it to remove XEmacs
	compiler warning.

2003-03-26  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-thread-print-scan-lines): Handling of a boundary
	condition when messages from the last source folder had been
	removed was incorrect. This caused a folder header to appear
	without any messages listed under it. This change fixes this.
	(mh-thread-forget-message): Remove the entry from the scan line
	table as well. This is needed for proper display of threaded view
	of index folders.

2003-03-26  Bill Wohler  <wohler@newt.com>

	* Makefile, README, import-emacs, mh-alias.el, mh-comp.el,
	mh-customize.el, mh-e.el, mh-funcs.el, mh-identity.el,
	mh-index.el, mh-loaddefs.el, mh-mime.el, mh-pick.el, mh-seq.el,
	mh-speed.el, mh-utils.el, mh-xemacs-compat.el,
	mh-xemacs-toolbar.el: Removed RCS keywords per Emacs conventions
	(closes SF #680731).


2003-03-26  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el: Fix commentary to mention that mairix is supported
	as well.

	* mh-loaddefs.el: Regenerated.

	* mh-utils.el (mh-show-junk-blacklist, mh-show-junk-whitelist):
	Interactive functions callable from the show buffer.
	(mh-show-junk-map): Key bindings in show mode.

	* mh-e.el (mh-junk-map): Key bindings to call spam program.
	(mh-help-messages): Update help text.

	* mh-customize.el (mh-junk): New customization group for spam
	program interface.
	(mh-junk-choice, mh-junk-function-alist, mh-junk-choose):
	Functions and variables that decide which junk program is used.
	(mh-junk-program, mh-junk-mail-folder): User customizable
	variables that control the choice of spam program and the action
	performed on received spam.

	* Makefile (MH-E-SRC): Add mh-junk.el.

2003-03-26  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-utils.el (mh-show-toggle-tick, mh-show-mode-map): New
	interactive function callable from the show buffer and a key
	binding for it.

	* mh-seq.el (mh-delete-seq): Remove highlight from tick sequence.
	(mh-put-msg-in-seq): Disable adding messages to tick sequence.
	(mh-widen): Reset mh-tick-seq-changed-when-narrowed-flag.
	(mh-tick-add-overlay, mh-tick-remove-overlay, mh-notate-tick)
	(mh-toggle-tick): New functions to highlight/unhighlight tick
	sequence and the interactive function that is used to toggle
	tick.

	* mh-e.el (mh-tick-seq-changed-when-narrowed-flag): New variable
	that remembers if we are narrowed to the tick sequence. In that
	case the highlighting isn't shown, since it adds no extra info.
	(mh-folder-mode): Initialize mh-tick-seq-changed-when-narrowed-flag.
	(mh-notate-user-sequences): Notate the tick sequence.
	(mh-internal-seq): Treat mh-tick-seq like an internal sequence.
	(mh-delete-msg-from-seq): Don't allow deletion from tick sequence.
	(mh-folder-mode-map): Add key binding for "'"

	* mh-customize.el (mh-tick-seq, mh-folder-tick-face): New
	customizable variables that contain the name of the tick sequence
	and the face to use to highlight it.

2003-03-25  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-seq.el (mh-thread-print-scan-lines): New function which
	prints out thread tree. It maintains the original folder info if
	the folder was created by index search (closes SF #709672).
	(mh-copy-seq-to-eob, mh-thread-inc, mh-thread-folder): Use
	factored out function mh-thread-print-scan-lines.
	(mh-toggle-threads): Since threading is allowed in index folders
	there can be lines in the folder which aren't valid message scan
	lines. So it is OK for mh-get-msg-num to fail once in a while.

	* mh-index.el (mh-index-update-maps): Make the parsing of messages
	that need to annotated with the X-MHE-Checksum header more robust.
	If the search yielded no results then an error was being produced.
	(mh-index-search): Enable automatic threading of index folders if
	mh-show-threads-flag is non-nil (closes SF #709667).
	(mh-index-next-folder): Relax error checking since index folder
	can be threaded while the source folder info is visible.
	(mh-index-group-by-folder): New function that is used in
	mh-thread-folder to keep source folder info visible during
	threading.

2003-03-25  Bill Wohler  <wohler@newt.com>

	* mh-loaddefs.el: Regenerated.

	* mh-customize.el (mh-index-new-messages-folders): New variable
	that controls which folders "F n (mh-index-new-messages)"
	accesses. Was mh-flists-search-folders.

	* mh-index.el (mh-flists-search-folders): Still used internally,
	but users now use new option mh-index-new-messages-folders.
	Removed documentation since to avoid duplication with
	mh-index-new-messages-folders.
	(mh-flists-recursive-search-flag): Deleted. Use
	mh-recursive-folders-flag instead.
	(mh-flists-execute): Updated docs to specify which global
	variables are used. Use mh-recursive-folders-flag instead of
	mh-flists-recursive-search-flag.
	(mh-index-new-messages): Edited doc, and refer to new option
	mh-index-new-messages-folders. Ditto within code. Don't need to
	prepend + to folder name as flists does that for us. Use

2003-03-24  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-refile-msg): Add optional argument that controls
	whether mh-last-destination-folder is updated or not.

2003-03-22  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-customize.el (mh-tool-bar-define): Fix a problem in the
	XEmacs version which caused the show mode toolbar to have the
	buttons in the reverse order. Also the add-hooks are no longer
	needed since mh-toolbar-init is called in the appropriate modes.

	* mh-comp.el (mh-letter-mode): Call mh-toolbar-init in XEmacs to
	initialize toolbar.

	* mh-utils.el (mh-show-mode): Same as above.

	* mh-e.el (mh-folder-mode): Same as above.

2003-03-21  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-exec-cmd-env-daemon): New function which
	executes a command asynchronously with its own environment.

	* mh-comp.el (mh-redistribute): The function has been modified so
	that /bin/sh isn't used to run send. It has also been refactored
	so that the same code isn't repeated.

2003-03-21  Bill Wohler  <wohler@newt.com>

	* mh-customize.el (mh-invisible-header-fields): Added X-Bogosity
	for bogofilter.

2003-03-21  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-xemacs-toolbar.el: Remove the code since that gets generated
	when mh-tool-bar-define is expanded.
	(mh-xemacs-icon-map): A alist to map GNU Emacs icon names to the
	actual icons to be used in XEmacs. This is used in
	mh-tool-bar-define.

	* mh-customize.el (mh-toolbar): Use this group in XEmacs as well.
	(mh-tool-bar-item-*): All these constants have been removed since
	they aren't needed in the new scheme.
	(mh-tool-bar-reply-3-buttons-flag): This variable has been
	removed.
	(mh-tool-bar-search-function): This is now used in XEmacs as well.
	(mh-tool-bar-folder-set, mh-tool-bar-folder-buttons-set)
	(mh-tool-bar-letter-buttons-set, mh-tool-bar-show-set)
	(mh-tool-bar-letter-set): These functions aren't defined at the
	top level any more.
	(mh-tool-bar-reply-generator): A macro to generate the required
	functions for the three reply buttons.
	(mh-tool-bar-search, mh-tool-bar-customize)
	(mh-tool-bar-folder-help, mh-tool-bar-letter-help)
	(mh-tool-bar-reply-from, mh-show-tool-bar-reply-from)
	(mh-tool-bar-reply-to, mh-show-tool-bar-reply-to)
	(mh-tool-bar-reply-all, mh-show-tool-bar-reply-all): New
	interactive functions that are called when tool bar buttons are
	clicked.
	(mh-xemacs-use-toolbar-flag, mh-xemacs-toolbar-position):
	Additional customizable variables that are present only for
	XEmacs.
	(mh-tool-bar-define): A macro that generates the required code
	for GNU Emacs and XEmacs tool bar.
	(mh-tool-bar-define): Define the MH-E tool bar.

2003-03-17  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-notate-cur): Notate current message only if it
	hasn't been marked for deletion or refiling.

2003-03-15  Bill Wohler  <wohler@newt.com>

	* mh-customize.el (mh-invisible-header-fields): Added
	X-Spam-Checker-Version.
	(mh-auto-fields-list): checkdoc fix.

2003-03-12  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-index-new-messages): If the destination folder
	where the unseen messages are supposed to be copied to was
	already present, but MH-E doesn't have it open, then a new folder
	was being created. The change fixes this.
	(mh-index-update-unseen, mh-flists-recursive-search-flag): Fix
	checkdoc warnings.

	* mh-loaddefs.el: Regenerated.

2003-03-11  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-flists-results-folder): Subfolder under
	+mhe-index where the results of the flists call is put.
	(mh-index-generate-pretty-name): Make sure that normal index
	searching will never use the folder reserved for the flists
	results.
	(mh-index-search): Add an extra parameter that marks all the
	messages in the index folder to the unseen sequence.
	(mh-index-update-unseen): Function to keep unseen sequence of
	index folder synced with the actual folders from where the
	messages were copied. This works only if the unseen messages are
	displayed with mh-show. Killing the unseen sequence in the index
	folder or adding/removing messages to it doesn't change the
	unseen sequence in the source folders yet.
	(mh-flists-search-folders): Variable that decides the folders on
	which flists is run.
	(mh-flists-recursive-search-flag): If non-nil, flists is passed
	the -recurse option.
	(mh-flists-execute): Function which uses /bin/sh to execute
	flists and then print out the list of message files that match.
	(mh-index-new-messages): New interactive function which searches
	for messages in the unseen sequence (closes SF #701756).

	* mh-utils.el (mh-show-folder-map): Add binding for
	mh-index-new-messages.
	(mh-show-msg): Update the unseen sequence in the source folder.

	* mh-e.el (mh-folder-font-lock-unseen): The function assumes that
	the end of buffer is reached when there isn't a valid scan line
	on the current line. This doesn't work in the index folder since
	we have lines containing the folder name and empty lines in
	between the actual scan lines. The modification removes this
	assumption.
	(mh-folder-map): Add key binding for "Fn"

	* mh-seq.el (mh-iterate-on-messages-in-region): If the point is
	not at the beginning of the line, then the first message in the
	region would be missed. The fix avoids this.

	* mh-mime.el (mh-inline-vcard-p): Don't try to inline vcards if
	we don't have the right libraries.

2003-03-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-next-undeleted-msg, mh-previous-undeleted-msg)
	(mh-next-msg): Add optional argument wait-after-complaining-flag.
	If non-nil and there are no undeleted messages after (or before)
	the current one, then pause for a second after printing out the
	message.
	(mh-refile-or-write-again): Modify call to mh-next-msg to use the
	wait-after-complaining-flag.

2003-03-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-refile-or-write-again): If mh-next-msg fails to find
	a message to go to it prints out a diagnostic, which overwrites
	the diagnostic about the folder the message was refiled to. The
	change fixes this.

2003-03-09  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-widen, mh-narrow-to-seq): Update
	mh-narrowed-to-seq before notating sequences. This is a bit
	helpful for mh-tick.el.
	(mh-put-msg-in-seq): Fix a minor bug. No internal sequence should
	be notated -- the original code was doing the right thing only for
	the "unseen" sequence.

	* mh-index.el (mh-index-choose): Add autoload cookie for
	mh-index-choose. This is needed for GNU Emacs 20.5.

	* mh-loaddefs.el: Regenerated.

2003-03-09  Bill Wohler  <wohler@newt.com>

	* mh-mime.el (mh-display-smileys): This function originally had a
	test to see if font-lock-maximum-size was bound, but this was
	recently removed. The test was put in for a reason; if
	font-lock-maximum-size isn't bound, void-variable errors would
	ensue. I put the bound test back in.

2003-03-08  Steve Youngs  <youngs@xemacs.org>

	* mh-mime.el (mh-mime-security-button-map): Use 'mh-push-button'
	in XEmacs as well.

2003-03-07  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-xemacs-toolbar.el: Declare a whole bunch of stuff for GNU
	Emacs, so that we don't get so many compiler warnings. Also
	surround calls to set-specifier and toolbar-make-button-list with
	mh-funcall-if-exists. Maybe GNU Emacs shouldn't try to compile
	this file in the first place.

	* mh-xemacs-compat.el (mh-modeline-glyph): Declare it within
	mh-do-in-xemacs to avoid compiler warning in GNU Emacs.
	(mh-xemacs-push-button): Removed.

	* mh-mime.el (mh-mime-button-map): Use the generalized
	mh-push-button function.
	(mh-push-button): Enhance it so that it works on XEmacs too.

2003-03-08  Steve Youngs  <youngs@xemacs.org>

	* mh-xemacs-compat.el (mh-modeline-logo): New constant holding the
	modeline image.
	(mh-modeline-glyph): Use it.

2003-03-08  Steve Youngs  <youngs@xemacs.org>

	* mh-xemacs-toolbar.el: New file that defines and displays a
	toolbar in XEmacs.

	* mh-xemacs-compat.el (mh-xemacs-toolbar): Require it here.

	* Makefile (MH-E-SRC): Add mh-xemacs-toolbar.el.

	* mh-customize.el (mh-toolbar):
	(mh-tool-bar-letter-buttons):
	(mh-tool-bar-letter-buttons-set):
	(mh-tool-bar-folder-buttons):
	(mh-tool-bar-folder-buttons-set):
	(mh-tool-bar-search-function):
	(mh-tool-bar-reply-3-buttons-flag):
	(mh-tool-bar-item-inc):
	(mh-tool-bar-item-save-mime):
	(mh-tool-bar-item-prev-msg):
	(mh-tool-bar-item-page-msg):
	(mh-tool-bar-item-next-msg):
	(mh-tool-bar-item-delete):
	(mh-tool-bar-item-refile):
	(mh-tool-bar-item-undo):
	(mh-tool-bar-item-perform):
	(mh-tool-bar-item-toggle-show):
	(mh-tool-bar-item-reply-from):
	(mh-tool-bar-item-reply-to):
	(mh-tool-bar-item-reply-all):
	(mh-tool-bar-item-reply):
	(mh-tool-bar-item-alias):
	(mh-tool-bar-item-compose):
	(mh-tool-bar-item-rescan):
	(mh-tool-bar-item-repack):
	(mh-tool-bar-item-search):
	(mh-tool-bar-item-visit):
	(mh-tool-bar-item-prefs):
	(mh-tool-bar-item-help):
	(mh-tool-bar-item-widen):
	(mh-tool-bar-item-send):
	(mh-tool-bar-item-attach):
	(mh-tool-bar-item-spell):
	(mh-tool-bar-item-save):
	(mh-tool-bar-item-undo-op):
	(mh-tool-bar-item-kill):
	(mh-tool-bar-item-copy):
	(mh-tool-bar-item-paste):
	(mh-tool-bar-item-kill-draft):
	(mh-tool-bar-item-comp-prefs):
	The MH-E toolbar for XEmacs is defined differently from the
	GNU/Emacs version, so only define these if we're in GNU/Emacs.
	XEmacs doesn't need to see them and it's always good to cut down
	on pollution.

2003-03-08  Steve Youngs  <youngs@xemacs.org>

	* mh-mime.el (mh-mime-button-map): Bind the 2nd mouse button to
	`mh-xemacs-push-button' in XEmacs.
	(mh-mime-security-button-map): Ditto.

	* mh-xemacs-compat.el: Shush the byte-compiler.
	(mh-xemacs-push-button): New function to make MIME buttons work in
	XEmacs.

2003-03-08  Steve Youngs  <youngs@xemacs.org>

	* mh-mime.el (mh-display-emphasis): Don't test
	`font-lock-maximum-size' to see if it is bound, just test for a
	non-nil value.  This variable can have a nil value which makes it
	bound and dividing nil by 8 throws an error.
	This fixes a bug in MH-E under XEmacs when
	`font-lock-maximum-size' is nil that prevented article emphasis
	and smiley display which in turn was causing the "Flush changes in
	article x y/n" errors.
	(mh-display-smileys): Ditto.

2003-03-08  Steve Youngs  <youngs@xemacs.org>

	* mh-utils.el (mh-logo-display): Display logo in XEmacs as well.

	* mh-xemacs-compat.el (mh-modeline-glyph): New.  The MH-E modeline
	logo for XEmacs.

2003-03-06  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-allow-root-folder-flag): New global variable
	that decides if "+" is an acceptable folder name.
	(mh-folder-completion-function): Refine the test for existing
	folders to take mh-allow-root-folder-flag into account.
	(mh-folder-completing-read, mh-prompt-for-folder): Use the
	allow-root-folder-flag argument of mh-prompt-for-folder and add a
	similar argument to mh-folder-completing-read.
	(mh-exec-cmd-error): Make the function nicer by using
	process-environment to pass the environment variable assignments.

2003-03-05  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-mime.el (mh-push-button): Preserve point in the show buffer
	if the mouse is used to expand/contract a button.

	* mh-customize.el (mh-x-face-file): Mention X-Image-URL in
	documentation.

	* mh-comp.el (mh-insert-x-face): Modified to allow insertion of
	X-Image-URL header field.

2003-03-04  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-face-display-function): Modified to facilitate
	display of X-Image-URL images.
	(mh-find-path): Initialize X-Image-URL cache directory.
	(mh-x-image-url-cache-canonicalize, mh-x-image-url-fetch-image)
	(mh-x-image-scale-and-display, mh-x-image-url-display)
	(mh-x-image-display): New functions for X-Image-URL image display
	and cache management.

	* mh-customize.el (mh-show-use-xface-flag): Add info about
	requirements for X-Image-URL display.
	(mh-fetch-x-image-url): New customizable variable that controls
	fetching of X-Image-URL.

2003-03-04  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-make-local-hook): New macro which works around
	API changes in add-hook. Version of GNU Emacs before 21.1 and
	XEmacs require a call to make-local-hook and just the LOCAL
	argument of add-hook is not sufficient.
	(mh-show-mode): Make kill-buffer-hook buffer local.

	* mh-e.el (mh-folder-mode): Same as above.

	* mh-comp.el (mh-compose-and-send-mail): Same as above.

2003-03-02  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-mime.el (mh-push-button): Clicking on a MIME button used to
	cause the window with the show buffer to be selected. With this
	change the selected window doesn't change.

2003-03-01  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-speed.el (mh-speed-flists): Avoid a potential race condition.
	When flists is called manually, or when an unseen message is read,
	mh-speed-partial-line was not reinitialized.

	* mh-e.el (mh-visit-folder): If mh-visit-folder is used to visit
	the folder currently being visited (effectively doing a rescan)
	then mh-previous-window-config is erroneously set. The change
	fixes this.

	* mh-customize.el (mh-index-show-hook): Remove unused variable.

2003-02-28  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-scan-folder): Call mh-reset-threads-and-narrowing
	only after the user has replied to question. This avoids premature
	clearing of the folder.
	(mh-rescan-folder, mh-visit-folder): Remove calls to
	mh-reset-threads-and-narrowing since it is now called in
	mh-scan-folder anyway.

	* mh-funcs.el (mh-sort-folder): Same as above.

2003-02-26  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-alias.el (mh-alias-alist): Change initial value to a symbol,
	so that it is different from the empty list, which could also
	mean that there are no aliases.
	(mh-alias-reload-maybe): Change test so that empty alist of
	aliases is properly handled (closes SF #693859).

2003-02-25  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-mime.el (mh-decode-message-header): The message header could
	be encoded, for instance the author's name could contain
	characters not in ASCII. This function will decode such header
	fields.
	(mh-mm-inline-message): Use mh-decode-message-header.

	* mh-utils.el (mh-display-msg): Use mh-decode-message-header.
	(mh-message-number-width): Use mh-scan-prog instead of "scan".

	* mh-loaddefs.el: Regenerated.

2003-02-24  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-truncate-log-buffer): Refine it so that the
	function will do the right thing even if called from a buffer
	other than mh-log-buffer.

2003-02-22  Peter S Galbraith  <psg@debian.org>

	* mh-alias.el (mh-alias-add-alias): Really fix SF #690216.
	This functions needs to strip brackets on standalone addresses as
	well.

2003-02-21  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-xemacs-compat.el (replace-regexp-in-string): Remove the
	definition since it isn't used any more.

2003-02-20  Peter S Galbraith  <psg@debian.org>

	* mh-alias.el (mh-alias-which-file-has-alias): Bug fix.  Needed to
	specify `noerror' on search.

	* mh-alias.el (mh-alias-suggest-alias): Add condition for input
	string being an email address in brackets.  We need to strip out
	the brackets. (closes SF #690216)

2003-02-20  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-pick.el (mh-search-folder): The function was setting the
	global value of the variables mh-current-folder and
	mh-previous-window-config. This can lead to problems in code which
	assumes that these variables are nil when we aren't in a folder
	buffer. So make the variables local before setting them.

2003-02-19  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-mime.el (mh-mime-display): All the MIME display code has been
	wrapped in a condition-case so that if something goes wrong, the
	raw message will be displayed.

	* mh-funcs.el (mh-undo-folder): Comment out call to sit-for that
	seems unnecessary.

	* mh-e.el (mh-scan-folder): Messages marked for deletion or
	refiling weren't getting annotated properly. The change fixes
	this.
	(mh-process-or-undo-commands): Change prompt to reflect what
	really happens in the code.

2003-02-18  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-comp.el (mh-folder-expand-at-point): The function
	mail-abbrev-complete-alias often returns nil. This had the
	unfortunate consequence of always causing an error. The change
	fixes this.

	* mh-alias.el (mh-alias-canonicalize-suggestion): New function
	which obviates the our need replace-regexp-in-string.
	(mh-alias-suggest-alias): Use mh-alias-canonicalize-suggestion to
	eliminate calls to replace-regexp-in-string. This avoids problems
	in Emacs20.

	* mh-utils.el (mh-notate): Handle the case when nil is passed as
	notation gracefully.
	(mh-speed-flists-active-p): New function that returns non-nil if
	flists is being used in the speedbar to update message counts.

	* mh-seq.el (mh-put-msg-in-seq): Fix a bug which made it
	impossible to add messages to the unseen sequence. Also adding
	messages to the unseen sequence will now update the speedbar
	message counts immediately.

	* mh-e.el (mh-get-new-mail, mh-process-commands)
	(mh-undefine-sequence): Update speedbar message counts, if the
	speedbar is active and is displaying message counts.
	(mh-delete-msg-from-seq): In addition to updating message counts,
	unhighlight the message so that interactively removing messages
	from the unseen sequence makes the bold highlight of unseen
	messages in the scan buffer go away.
	(mh-clear-text-properties): New function that removes all text
	properties from the current scan line.

2003-02-15  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-face-display-function): Wrap call of
	insert-image in mh-funcall-if-exists. This avoids a compiler
	warning in Emacs20.

	* mh-speed.el (mh-speed-flists): Weaken test a bit to avoid
	compiler warning in Emacs20.
	(mh-speedbar-change-expand-button-char): Wrap call of
	speedbar-insert-image-button-maybe in mh-funcall-if-exists. This
	function isn't present in the speedbar that ships with Emacs20, so
	calling it there causes an error.

	* mh-seq.el (mh-msg-is-in-seq): Adjust loop call a bit to avoid
	compiler warning in XEmacs. The XEmacs compiler should be improved
	so that such spurious warnings from builtin macros are suppressed.

	* mh-index.el (mh-index-search): Same as above.

	* mh-e.el (tool-bar-mode): The declaration is needed for Emacs20
	too.

	* mh-comp.el (mailabbrev): Try loading it any way. Some day XEmacs
	will get it and then MH-E will just use it.
	(tool-bar-mode, tool-bar-map): These declarations are needed for
	Emacs20 too.
	(mh-mail-abbrev-make-syntax-table, mh-folder-expand-at-point):
	Remove mh-mail-abbrev-make-syntax-table since mh-funcall-if-exists
	can be used instead.

	* mh-alias.el (require): Avoid autoloading functions that may not
	be defined.
	(mh-read-address, mh-alias-letter-expand-alias): Rewrite using
	mh-funcall-if-exists.

2003-02-15  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-speed.el (mh-folder-speedbar-buttons, mh-speed-add-buttons)
	(mh-speed-toggle): Reuse markers instead of creating more of them.
	(mh-speed-flists-folder, mh-speed-flists): Add optional folder
	argument to mh-speed-flists so that message counts are updated
	only for that one folder.
	(mh-speed-parse-flists-output): If no change in counts then avoid
	consing.

	* mh-index.el (mh-index-execute): Rewritten to use a temporary
	buffer that is not left behind.

	* mh-funcs.el (mh-store-buffer): Use mh-log-buffer instead of the
	special purpose *Store Output* buffer.

2003-02-14  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-customize.el (mh-show-xface-face): Make it always be black
	foreground on a white background (the reverse of that can make
	some X-Face images look creepy).

	* mh-utils.el (mh-truncate-log-buffer): Modify the function to
	return the current size of mh-log-buffer. Also we are now a bit
	more careful in adding separators between consecutive messages.
	(mh-exec-cmd): Fix a bug where the the log buffer would be
	displayed even if no error happened in the current command but
	the log buffer had messages from a previous error.

	* mh-mime.el (mh-mime-save-parts): Use mh-log-buffer to show
	error messages.

	* mh-alias.el (mh-alias-local-users): Add a space between parens.

2003-02-14  Steve Youngs  <youngs@xemacs.org>

	* mh-utils.el (mh-face-display-function): Call
	`x-face-xmas-wl-display-x-face' using `mh-funcall-if-exists'.

	* mh-xemacs-compat.el (replace-regexp-in-string): New.

2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-log-buffer-lines): New variable that keeps
	track of the number of lines to keep in mh-log-buffer.
	(mh-truncate-log-buffer): New function that is used to make sure
	that the log buffer doesn't grow to unbounded size.
	(mh-exec-cmd, mh-exec-cmd-daemon, mh-handle-process-error): Use
	mh-truncate-log-buffer instead of erase-buffer to keep some
	number of previous log messages around (closes SF #685476).

2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (tool-bar-mode): Declare it in XEmacs.
	(mh-folder-mode): Use mh-funcall-if-exists to call hl-line-mode.

	* mh-utils.el (mh-funcall-if-exists): New macro that calls a
	function only if it exists.
	(mh-logo-display, mh-defun-show-buffer): Use mh-funcall-if-exists
	to call the functions find-image and deactivate-mark.

	* mh-mime.el (mh-mime-cleanup, mh-small-image-p)
	(mh-mm-display-part): Use mh-funcall-if-exists to call the
	functions image-size and remove-images.

	* mh-comp.el (tool-bar-map, tool-bar-mode): Declare the variables
	in XEmacs.
	(mh-folder-expand-at-point): Use mh-funcall-if-exists to call
	mail-abbrev-complete-alias if it exists.

	* mh-alias.el (mh-read-address): Use mh-funcall-if-exists for
	future extensibility.

2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-logo-display): The function find-image is
	present only in GNU Emacs.
	(mh-defun-show-buffer): The function deactivate-mark is present
	only in GNU Emacs.
	(default-enable-multibyte-characters): Declare it in XEmacs to
	avoid compiler warning.
	(mh-face-display-function): Avoid inserting space if there isn't
	any Face or X-Face header field to display.

	* mh-seq.el (mh-thread-last-ancestor): Move declaration of
	variable before its first use to silence XEmacs warning.

	* mh-mime.el (default-enable-multibyte-characters, dots, type):
	Declare these in XEmacs to remove compiler warnings in XEmacs.
	(mh-mime-cleanup, mh-mm-display-part): Call remove-images only in
	GNU Emacs.
	(mh-small-image-p): Call image-size only in GNU Emacs.

	* mh-index.el (mh-mairix-next-result): Fix a bug where a quote
	was missing.
	(mh-swish++-regexp-builder): Remove the unused binding meta.

	* mh-e.el (mh-folder-size): Pass on an extra value to remove
	XEmacs warning.
	(mh-folder-mode): Surround calls to hl-line-mode and
	tool-bar-mode with mh-do-in-gnu-emacs since these functions
	aren't present in XEmacs.

	* mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
	(mh-tool-bar-folder-set): These functions call tool-bar-*
	functions which are present only in GNU Emacs. So surround them
	with mh-do-in-gnu-emacs.

	* mh-comp.el (mh-letter-mode, mh-folder-expand-at-point): Only
	call these functions in GNU Emacs.
	(mail-abbrevs): Declare it in XEmacs.

	* mh-alias.el (mh-read-address): Call completing-read-multiple
	only in GNU Emacs.
	(mail-abbrevs): Declare it in XEmacs.
	(mh-alias-add-alias-to-file): Remove unused code.

2003-02-14  Ville Skyttä  <scop@xemacs.org>

	* mh-comp.el: Add autoloaded auto-mode-alist association.

2003-02-13  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-face-display-function): Make the XEmacs part a
	little simpler.

2003-02-14  Steve Youngs  <youngs@xemacs.org>

	* mh-customize.el (mh-show-xface-face): XEmacs doesn't have the
	':inherit' keyword for defface, rewrite with sane defaults.

	* mh-utils.el (mh-face-display-function): Fix bug that was
	corrupting xface images when displayed with XEmacs' internal
	xface image support.  Also make XEmacs honour 'mh-show-xface-face'
	when using internal xface image support.

2003-02-12  Peter S Galbraith  <psg@debian.org>

	* mh-comp.el (mh-modify-header-field): New function. To header
	FIELD add VALUE.  If OVERWRITE-FLAG is non-nil then the old value,
	if present, is discarded.  This is more flexible than before.
	(mh-insert-auto-fields): Use it.  This and the new function are a
	courtesy of Satyaki.  Thanks!

	* mh-customize.el (mh-auto-fields-list): Doc tweaks suggested by
	Bill.

2003-02-12  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-comp.el (mh-folder-expand-at-point): Tweak the error
	message. Completion in the Fcc header field is only supported in
	GNU Emacs 21.

2003-02-12  Peter S Galbraith  <psg@debian.org>

	* mh-customize.el (mh-auto-fields-list): Reorder after
	`mh-identity-list' since it needs it to be defined.  Move to
	mh-identity customization group.

2003-02-11  Peter S Galbraith  <psg@debian.org>

	* mh-customize.el (mh-insert-mail-followup-to-flag): Removed.
	Obsolete.
	(mh-insert-mail-followup-to-list): Removed.  Obsolete.  Use
	`mh-auto-fields-list' instead, which is a more general solution.
	(mh-auto-fields-list): New defcustom.  Alist of addresses for
	which header lines are automatically inserted.  Replaces
	`mh-insert-mail-followup-to-list'.

	* mh-comp.el (mh-insert-mail-followup-to): Removed.  Obsolete.
	(mh-insert-auto-fields): New function. Insert custom fields if To
	or Cc match `mh-auto-fields-list', replacing
	mh-insert-mail-followup-to with a more general solution.
	(mh-compose-and-send-mail): Call mh-insert-auto-fields instead of
	mh-insert-mail-followup-to.  Also don't call mh-insert-identity to
	insert default setting if mh-insert-auto-fields inserted an
	identity.

2003-02-11  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-show-xface-function): Try to load the external
	x-face library only if XEmacs doesn't have xface support.
	(mh-face-display-function): Renamed. Also handle various
	permutations of x-face and xface support in XEmacs better.

	* mh-customize.el (mh-show-use-xface-flag): Any emacs whose
	major version is greater than or equal to 21 supports display of
	X-Face and Face header fields.

2003-02-11  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-do-in-gnu-emacs, mh-do-in-xemacs): Macros that
	execute code only in GNU Emacs and XEmacs respectively.
	(mh-emacs21-face-display-function): Refactor to make it slightly
	nicer. Get rid of compiler warnings in GNU Emacs by using the
	above macros. Also check for presence of xface feature (in XEmacs
	specific code) before trying to display X-Face header field image.

2003-02-11  Steve Youngs  <youngs@xemacs.org>

	* mh-customize.el (mh-show-use-xface-flag): If using XEmacs and
	can't find the external x-face pkg still enable X-Face images if
	feature 'xface is present.
	Update the doc string.

	* mh-utils.el (mh-emacs21-face-display-function): Make it work in
	XEmacs.
	(mh-show-xface-function): If using XEmacs without xface support,
	use x-face.el pkg.  If using XEmacs with xface support, or Emacs
	21, use mh-emacs21-face-display-function.

2003-02-11  Mark D. Baushke  <mdb@gnu.org>

	* mh-customize.el (mh-invisible-header-fields): Add
	"X-Notes-Item:" which is generated by Lotus Notes Domino. See
	URL<http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf
	/f4b82fbb75e942a6852566ac0037f284/5eda03c647f879c285256c1d00396051
	?OpenDocument&Highlight=0,x-notes-item> for details on how Domino
	users may disable (restore the default) generation of these headers.

2003-02-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-comp.el (mh-folder-expand-at-point): Add function doc string
	and produce a nicer error message for Emacs versions that lack
	mail-abbrev-complete-alias.

	* mh-utils.el (mh-handle-process-error): Check doc fix.

	* mh-e.el (mh-folder-from-address): Same as above.

2003-02-10  Peter S Galbraith  <psg@debian.org>

	* mh-comp.el: require mailabbrev, except in XEmacs.
	(mh-mail-abbrev-make-syntax-table): New defmacro to call
	mail-abbrev-make-syntax-table introduced in Emacs21.
	(mh-folder-expand-at-point): Handle nested folders.
	All of the above was written by Satyaki.  I just applied the patch
	and tested.

2003-02-09  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-comp.el: Fixes to keep the byte compiler happy.

	* mh-customize.el (mh-invisible-header-fields): Modified to
	remove space after ":" in header field names.

2003-02-09  Peter S Galbraith  <psg@mixed.dyndns.org>

	* mh-comp.el (mh-letter-complete): Add completion for fcc lines.
	(mh-folder-expand-at-point): Do completion at point for folder
	name.  Like `mh-alias-letter-expand-alias' for aliases, it doesn't
	work on XEmacs because it relies on `mail-abbrev-complete-alias'
	to do completion.  Maybe Steve could update XEmacs' mailabbrev.el?

2003-02-09  Peter S Galbraith  <psg@debian.org>

	* mh-customize.el (mh-invisible-header-fields): Remove trailing
	space in "X-Face: " and "Face: " entries since those line often
	break there.

2003-02-08  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-emacs21-face-display-function): Use
	mh-show-xface-face to colorize X-Face image.

	* mh-customize.el (mh-invisible-header-fields): Add extra headers
	to ignore.
	(mh-show-xface-face): Allow customization of the X-Face colors.

2003-02-07  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-uncompface-executable, mh-uncompface): Remember
	the path of the uncompface executable so that we don't need to
	search for it every time.
	(mh-emacs21-face-display-function): If more than one X-Face (or
	Face) header field was present then the fields would get
	concatenated, leading to garbled output. The change only displays
	the first image.

	* mh-customize.el (mh-x-face-file): Change documentation since it
	can now be used to insert a Face header field.

	* mh-comp.el (mh-insert-x-face): Generalized to allow insertion
	of Face header field.

2003-02-06  Bill Wohler  <wohler@newt.com>

	* mh-utils.el (mh-emacs21-face-display-function): Updated
	docstring. It is a common mistake to refer to a header field as a
	header. The term header refers to the entire header while the term
	header field refers to a single field.

	* mh-customize.el (mh-show-use-xface-flag): Ditto.

2003-02-06  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-show-xface-function): Modified to use
	mh-emacs21-face-display-function if we are running GNU Emacs 21.
	(mh-face-to-png): New function to convert a Face header to a png
	image.
	(mh-uncompface): New function which converts an X-Face header to
	a pbm image.
	(mh-icontopbm): New function that does the job of icontopbm.
	(mh-emacs21-face-display-function): New function that displays
	Face/X-Face image in GNU Emacs 21.
	(mh-show-xface): Modified to test if we are running in X.
	Otherwise face display is suppressed.

	* mh-customize.el (mh-show-use-xface-flag): Tweak it, now that
	MH-E supports face display natively on Emacs 21. Also remove the
	check for window-system since it doesn't belong in a customizable
	variable.

2003-02-06  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (sendmail): Require it so that XEmacs can find
	rfc822-goto-eoh.
	(mh-mail-header-end): A substitute for mail-header-end that
	doesn't widen the buffer. This is essential to avoid problems when
	dealing with nested messages.
	(mh-in-header-p, mh-letter-header-font-lock)
	(mh-header-field-font-lock, mh-show-font-lock-fontify-region)
	(mh-show-unquote-From): Use mh-mail-header-end instead of
	mail-header-end.

	* mh-mime.el (mh-decode-message-body): same as above (closes SF
	#681518).

	* mh-comp.el (mh-yank-cur-msg): same as above.

2003-02-05  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-display-msg): Call mh-show-mode before invisible
	headers are cleaned. This means that any surviving X-Face header
	can be removed unconditionally in mh-clean-msg-header.
	(mh-clean-msg-header): Since the function is now called with a
	read-only buffer, make the buffer temporarily writable.

	* mh-mime.el (mh-mm-inline-message): Do X-Face display before
	invisible headers are removed.

	* mh-customize.el (mh-invisible-headers): Simplified since the
	X-Face header isn't treated specially any more.
	(mh-invisible-header-fields): Add Face: and X-Face: to list of
	invisible headers.

	* mh-mime.el (mh-mime-display): If body is empty the headers would
	be treated like the body. The change fixes this (closes SF #681162).
	(mh-mime-display): This change really fixes the above problem.

2003-02-04  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-current-folder-name): Global variable that
	keeps track of current folder.
	(mh-normalize-folder-name): Substitute @ with
	mh-current-folder-name (closes SF #666774).
	(mh-prompt-for-folder): Bind mh-current-folder-name. Also
	invalidate cache if we are visiting a folder that wasn't found in
	the sub-folder cache. This is an indication that folders may have
	been created outside of MH-E and so the cache may be stale.

2003-02-03  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-decode-content-transfer-encoded-message): Removed.
	(mh-display-msg): Remove the use of the above function.
	(mh-normalize-folder-name): Leading "/" characters were being
	lost. The change fixes this (closes SF #676890).

	* mh-mime.el (mh-decode-message-body): New function, factored out
	from mh-mime-display and enhanced, to decode message based on
	charset and content-transfer-encoding. This eliminates the need
	for the external mimencode (closes SF #674857).
	(mh-mime-display): Use mh-decode-message-body.

	* mh-e.el (mh-header-display): Don't need the binding since the
	variable isn't present any more.
	(mh-inc-folder): Avoid calling mh-show if point is not on a valid
	scan line (closes SF #678115).

	* mh-customize.el
	(mh-decode-content-transfer-encoded-message-flag): Removed.

2003-02-03  Bill Wohler  <wohler@newt.com>

	* import-emacs: MH-E now has its own directory in Emacs.

	* mh-e.el: (mh-version): Set to 7.2+cvs.

Bill Wohler's avatar
Bill Wohler committed
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
2003-02-03  Bill Wohler  <wohler@newt.com>

	* Released MH-E version 7.2.

	* MH-E-NEWS, README: Updated for release 7.2.

	* mh-e.el (Version, mh-version): Updated for release 7.2.

2003-02-03  Bill Wohler  <wohler@newt.com>

	* Makefile (dist): mkdir needs to happen *before* files are
	copied.

	* MH-E-NEWS: Fixed some awkward verbiage.

2003-02-02  Bill Wohler  <wohler@newt.com>

	* mh-customize.el (mh-invisible-headers): Surround regexp-opt
	expression in parens to avoid problems viewing certain messages.

2003-01-30  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-speed.el (mh-speed-flists): Search for flists in mh-progs.
	The original was inadvertently searching for flists in the user's
	path.

2003-01-27  Bill Wohler  <wohler@newt.com>

	* mh-customize.el (mh-default-folder-must-exist-flag): Changed
	default to t according to the principle of least surprise.

2003-01-26  Bill Wohler  <wohler@newt.com>

	* mh-utils.el: Checkdoc fixes.

	* mh-pick.el (mh-do-search, mh-search-folder): Checkdoc fixes.

	* mh-loaddefs.el: Regenerated (lm-verify fixes).

1602
	* mh-index.el (mh-mairix-next-result): Checkdoc fixes.
Bill Wohler's avatar
Bill Wohler committed
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

	* mh-alias.el: lm-verify fix.

	* Makefile (MH-E-SRC): Added ChangeLog, now that Emacs has a
	lisp/mh-e directory.
	(MH-E-ETC-ETC): Removed ChangeLog.
	(dist): Moved creation of mail directory next to copy of files
	into mail directory.
	(install-emacs): Copy $(MH-E-SRC) into new directory
	$(EMACS_HOME/lisp/mh-e.
	(MH-E-SRC): Moved ChangeLog into new variable MH-E-OTHERS and
	include MH-E-LOADDEFS there too.
	(mh-loaddefs.el): Added lines so that lm-verify passes.
	(dist, install-emacs): Use MH-E-OTHERS instead of MH-E-LOADDEFS.

2003-01-26  Jeffrey C Honig  <jch@honig.net>

	* mh-comp.el (mh-tidy-draft-buffer, mh-compose-and-send-mail):
	Rename mh-kill-draft-hook to mh-tidy-draft-buffer.

2003-01-25  Jeffrey C Honig  <jch@honig.net>

	* mh-utils.el (mh-exec-cmd, mh-exec-cmd-daemon)
	(mh-process-daemon): Use mh-log-buffer for the output of commands
	from mh-exec-cmd.

	* mh-utils.el (mh-temp-folders-buffer): Sequences and folders
	loose the -temp from their buffer names as they are interesting to
	the user.

	* mh-seq.el (mh-list-sequences): New name, mh-sequences-buffer as
	it is intended to be interesting to the user.

	* mh-funcs.el (mh-list-folders): New name, mh-folders-buffer as it
	is intended to be interesting to the user.

	* mh-comp.el (mh-check-whom, mh-compose-and-send-mail): Use
	mh-recipients-buffer constant.  Add a kill buffer hook to delete
	the recipients buffer when a draft buffer is killed.

2003-01-25  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-customize.el (mh-customize): New interactive argument
	deletes other windows.
	(mh-tool-bar-show-set, mh-tool-bar-letter-set)
	(mh-tool-bar-folder-set): Modified so that clicking the customize
	and help buttons deletes the other windows in the frame.

	* mh-mime.el (mh-mm-inline-message): Remove unused code.

	* mh-seq.el (mh-notate-deleted-and-refiled): Fix a small bug where
	the wrong notation was being used.
	(mh-toggle-threads): The function had a bug if you did the
	following starting from an unthreaded wide folder:
	  (1) Create a sequence with S p
	  (2) Narrow to new sequence with S n
	  (3) Thread narrowed folder with T t
	  (4) Kill sequence with S k
	  (5) Unthread narrowed folder with T t
	At this point we would have an empty folder. The change fixes
	this.
	(mh-toggle-threads): Fix documentation.

	* mh-customize.el (mh-invisible-header-fields): Add
	X-MHE-Checksum to invisible headers.

	* mh-comp.el (mh-insert-x-mailer): Slightly more informative
	X-Mailer header.

2003-01-24  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-header-display): Modified so that quoted-printable
	or base64 encoded messages are left untouched.

	* mh-utils.el (mh-decode-content-transfer-encoded-message): Munge
	the Content-Transfer-Encoding header so that the MIME decoding
	routines of Gnus doesn't get confused.
	(mh-display-msg): Use insert-file-contents-literally so that
	display will work for non-ascii.

	* mh-mime.el (mh-mime-display): Use charset info to decode
	message file (closes SF #655123).

2003-01-24  Bill Wohler  <wohler@newt.com>

	* mh-alias.el (mh-alias-add-alias-to-file): Removed period from
	error message and added parens around error function.

2003-01-24  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-customize.el (mh-decode-quoted-printable-flag): Removed.
	(mh-decode-content-transfer-encoded-message-flag): This replaces
	mh-decode-quoted-printable-flag.

	* mh-utils.el (mh-decode-content-transfer-encoded-message): New
	function which handles messages that are encoded as base64 or
	quoted-printable (closes SF #674190).
	(mh-decode-quoted-printable): Removed.
	(mh-display-msg): Use mh-decode-content-transfer-encoded-message
	instead of mh-decode-quoted-printable.

2003-01-23  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-thread-generate-scan-lines): Fix a little bug
	that would occasionally cause angles ('<' and '>') to appear at
	root level.

2003-01-21  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-notate-cur): Enable overlay arrow display in text
	mode too.

	* mh-e.el (mh-folder-mode): Initialize overlay-arrow-string so
	that a '>' is displayed in text mode.

2003-01-20  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-scan-msg-overflow-regexp): Change the variable
	so that a space is always maintained in the beginning of the scan
	line.

	* mh-seq.el (mh-notate-seq, mh-notate-cur): Make the functions
	faster by cutting down on the use of mh-goto-msg.
	(mh-toggle-threads): Add call to mh-notate-cur, since inserting
	the folder names in a search results folder screws up the
	location of the overlay arrow.

	* mh-index.el (mh-index-delete-folder-headers): Position the
	point on a message line if possible.

	* mh-funcs.el (mh-copy-msg): Use the mh-iterate macro to make the
	function faster.

	* mh-e.el (mh-scan-folder): Reuse mh-notate-deleted-and-refiled.

	* mh-loaddefs.el: Regenerated.

	* mh-utils.el (mh-add-msgs-to-seq): Add a new parameter that
	suppresses the annotation of the sequence since it is
	inefficient.

	* mh-seq.el (mh-delete-seq): Speed up the part of the function
	that removes the sequence notation.
	(mh-put-msg-in-seq, mh-notate-deleted-and-refiled): Use
	mh-iterate-on-messages-in-region to make the function fasters when
	operating on regions. The key idea is to loop over the folder
	buffer exactly once and do all annotations. The existing algo
	would walk over the buffer multiple times thereby slowing things
	down.
	(mh-iterate-on-messages-in-region): Added an extra parameter which
	is bound to the message index as the loop is executed.
	(mh-region-to-msg-list, mh-thread-delete, mh-thread-refile): Use
	the new mh-iterate-on-messages-in-region macro.

	* mh-e.el (mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Same
	as above.
	(mh-notate-user-sequences): Change algorithm to make notating of
	user sequences fast.

2003-01-19  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-logo.xpm: New image file that contains the MH-E logo.
	Change foreground color to the blue in the MH-E logo.

	* Makefile (MH-E-IMG): Add mh-logo.xpm to list of image files.

	* mh-utils.el (mh-show-buffer-mode-line-buffer-id): Adjust it to
	keep space in the beginning for the logo.
	(mh-logo-cache): New variable that caches the logo image file
	location.
	(mh-logo-display): Display the MH-E logo on the mode line.
	(mh-display-msg): Display logo in mh-show-mode.

	* mh-e.el (mh-make-folder-mode-line): Display logo in
	mh-folder-mode.

	* mh-comp.el (mh-compose-and-send-mail): Display logo in
	mh-letter-mode.

	* mh-loaddefs.el: Regenerated.

	* mh-seq.el (mh-iterate-on-messages-in-region): New macro to
	iterate on all messages in a region.
	(mh-region-to-msg-list): Simplified since it uses
	mh-iterate-on-messages-in-region now.

	* mh-e.el (mh-delete-msg, mh-refile-msg): Change interactive spec
	to pass the region that is to be deleted when appropriate.
	(mh-delete-msg-no-motion, mh-refile-msg, mh-undo): Operate on
	regions directly without creating the list of messages to be
	deleted/refiled.
	(mh-delete-a-msg, mh-refile-a-msg, mh-undo-msg): The msg
	parameter in these functions can now be nil. If so, the current
	message is deleted, refiled or undone respectively. Avoids the
	use of mh-goto-msg in this case and speeds up operations on
	regions quite a bit.

2003-01-19  Peter S Galbraith  <psg@debian.org>

	* mh-alias.el (mh-read-address): Bug Fix. In XEmacs and Emacs20,
	it would always prompt using "To: " instead of using the command
	argument (closes SF #670913).

2003-01-19  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-folder-completion-function): If there is a
	+foo/bar folder and the user types foo//bar then the completion
	function would say a match happened without showing the
	normalized folder name. This change fixes that.

2003-01-18  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-rmail): Modified so that new and unseen messages
	are shown (closes SF #667542).

2003-01-17  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-index-generate-pretty-name): Generate nicer
	names. In particular all '-' characters are removed.

2003-01-16  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-customize.el (mh-index-program): Documentation fix.

	* mh-loaddefs.el: Regenerated.

	* mh-customize.el (mh-index-program): Add choices for mairix and
	pick.

	* mh-index.el (mh-indexer-choices): Add search interfaces for
	mairix and pick.
	(mh-index-search): Add links for mairix and pick.
	(mh-index-pick-folder, mh-pick-binary): Variables needed to
	implement pick support.
	(mh-pick-execute-search, mh-pick-next-result): New functions to
	implement pick support.
	(mh-mairix-binary, mh-mairix-directory, mh-mairix-folder): New
	variables for mairix support.
	(mh-mairix-execute-search, mh-mairix-next-result)
	(mh-mairix-regexp-builder, mh-mairix-convert-to-sop*): New
	functions for mairix.

	* mh-funcs.el (mh-kill-folder): Move message to the end.

	* mh-e.el (mh-folder-mode): Make overlay-arrow-position and
	overlay-arrow-string local variables so that the arrow will
	remain even if some other folder is visited.
	(mh-remove-cur-notation, mh-remove-all-notation): The test isn't
	required any more since overlay-arrow-position is local.
	(mh-goto-cur-msg): Remove overlay arrow if current message
	doesn't exist.

	* mh-seq.el (mh-notate-cur): Don't need to set
	overlay-arrow-string any more since it is local and has been set
	at initialization.

2003-01-15  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-speed.el (mh-speed-current-folder): Keep track of current
	folder when flists is called.
	(mh-speed-flists, mh-speed-parse-flists-output): Try to avoid
	ambiguity when folders are present with + at the end of the name.
	Unfortunately it can't always be avoided.

	* mh-e.el (mh-folder-size): Remove the unnecessary error check.
	(mh-parse-flist-output-line): Add extra argument which
	occasionally avoid problems with folder names that end with '+'.

	* mh-utils.el (mh-sub-folders-actual): Fix the folder name
	parsing so that it doesn't get confused by trailing '+' chars in
	the folder name.

2003-01-14  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-normalize-folder-name): Enhanced so that it can
	now handle ".." and "." correctly during folder name completion.
	(mh-normalize-folder-name): Avoid error in boundary condition
	where the folder string is empty.

2003-01-14  Mark D. Baushke  <mdb@gnu.org>

	* mh-e.el (mh-visit-folder): Pass `current-prefix-arg' to
	the `mh-read-msg-range' function as the optional
	always-prompt-flag.

2003-01-14  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-normalize-folder-name): New function that
	normalizes folder names.
	(mh-sub-folders): Use mh-normalize-folder-name. Also the function
	has been modified so that a trailing slash is only added if the
	folder potentially has subfolders.
	(mh-sub-folders-actual): Simplified since the folder has already
	been normalized in mh-sub-folders.
	(mh-remove-from-sub-folders-cache): Modified so that the cached
	results of two of the folders ancestors are invalidated.
	(mh-folder-completion-map): Ugly hack to make the error go away
	when minibuffer-complete-word is called.
	(mh-folder-completion-function): The completion function will now
	be more selective in adding '/' at the end of completed folder
	names.
	(mh-folder-completing-read): The folder name is normalized before
	return. The minibuffer-local-completion-map is shadowed to avoid
	error with SPC (bound to minibuffer-complete-word). We really
	need a better solution.

2003-01-13  Bill Wohler  <wohler@newt.com>

	* mh-seq.el: Edited comment and docstring text to conform with RFC
	2822 terminology. Message-ID is the header field. It contains a
	message identifier.

2003-01-13  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-sub-folders): Add an argument that returns
	sub-folders with a / character appended at the end.
	(mh-folder-completion-function): Modify the function so that one
	tab is now sufficient to complete the folder name and add a
	trailing /.
	(mh-folder-completing-read): Remove the trailing / that the
	completion function now adds to the folder name. Also multiple /
	characters in the folder input are removed. So if the user inputs
	+foo///bar//baz///// then that will be converted to +foo/bar/baz.
	This will improve the performance of caching.

	* mh-seq.el (mh-notate-cur): Check that a valid current message
	exists before trying to notate (closes SF #667331).
	(mh-message-id-regexp): New variable to store regexp to recognize
	message-ids.
	(mh-thread-generate): Use mh-message-id-regexp to filter out non
	message-id's from the References: header.

2003-01-12  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-notate-cur): Disable overlay-arrow display if we
	aren't on a graphic display.

2003-01-11  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-notate-cur): New function to notate the current
	message. The marker in the fringe is updated too.
	(mh-narrow-to-seq, mh-widen, mh-thread-inc, mh-thread-folder): Use
	the specialized function mh-notate-cur instead of mh-notate-seq.

	* mh-e.el (mh-arrow-marker): New buffer local variable to store
	the position where the marker in the fringe is going to be
	displayed (closes SF #664824).
	(mh-folder-mode): Create a marker for the fringe.
	(mh-update-sequences, mh-get-new-mail, mh-goto-cur-msg): Call the
	specialized function mh-notate-cur instead of mh-notate-seq or
	mh-notate.
	(mh-remove-cur-notation, mh-remove-all-notation): Reset the
	overlay-arrow-position if needed.

	* mh-loaddefs.el: Regenerated.

2003-01-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-remove-from-sub-folders-cache): Modified so that
	creating nested folders doesn't produce inconsistent results.
	(mh-prompt-for-folder): Remove call of mh-folder-list-change-hook.

	* mh-funcs.el (mh-kill-folder): Don't ask for confirmation if
	called on a folder holding index search results. Also the now
	removed mh-folder-list-change-hook is called no more.

1969
	* mh-customize.el (mh-auto-folder-collect-flag)
Bill Wohler's avatar
Bill Wohler committed
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
	(mh-folder-list-change-hook): Removed.

	* mh-loaddefs.el: Regenerated.

2003-01-10  Bill Wohler  <wohler@newt.com>

	* mh-customize.el (mh-default-folder-must-exist-flag): New
	variable to suppress suggested folder if the folder doesn't
	already exist (closes SF #657096).
	(mh-default-folder-list): New variable that
	holds mapping between an address and the desired folder for
	filing (closes SF #657096).
	(mh-default-folder-prefix, mh-default-folder-must-exist-flag): In
	docstring, refer to documentation for mh-prompt-for-refile-folder
	and mh-folder-from-address.
	(mh-highlight-citation-p, mh-compose-insertion,
	(mh-insert-mail-followup-to-list, mh-index-program,
	(mh-identity-default): Fixed case of tags.

	* mh-e.el (mh-folder-from-address): Use new variable
	mh-default-folder-must-exist-flag to return nil if this variable
	is t and the folder doesn't already exist. In addition, can now
	look up a default folder in the new variable
	mh-default-folder-list (closes SF #657096).
	(mh-prompt-for-refile-folder): In docstring, refer to
	documentation in mh-folder-from-address.

	* mh-index.el (mh-swish-execute-search): Changed \..* to \\..* in
	the FileRules filename in the sample config file. Otherwise, the
	users don't see the backslash at all, and no files are indexed!
	(closes SF #665888).

2003-01-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-thread-folder): Get headers for exactly the
	messages that are present. If only messages 1-10 and 3800-3900
	are being shown then we will now scan exactly those messages and
	not the full range from 1-3900 as was being done earlier.
	(mh-toggle-threads): When converting from threaded to normal view
	only the messages present in the buffer are scanned. Earlier all
	messages from the minimum to the maximum would be scanned (closes
	SF #626117).

	* mh-pick.el (mh-search-folder): Fix typo.
	(mh-pick-do-search): Fix bug from cut and paste. Also set window
	config properly.

	* mh-utils.el (mh-prompt-for-folder): Add new argument to allow
	it to accept + as a folder name. This allows the user to search
	all folders when "Fs" is used.

	* mh-pick.el (mh-search-folder): Fix interactive spec of function.
	(mh-pick-do-search): Rewritten to call pick in one go. This will
	make adding pick as a default index search program easier. Also
	pick now accepts the same query syntax as the index search
	programs (closes SF #664816).
	(mh-next-pick-field): Removed.
	(mh-pick-parse-search-buffer): New function to parse the search
	buffer.
	(mh-pick-construct-regexp, mh-pick-regexp-builder): New function
	to produce a pick query from the parsed representation.

	* mh-index.el (mh-index-do-search): Refactor the search pattern
	parser into a new function and use that instead.

	* mh-loaddefs.el: Regenerated.

2003-01-10  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-loaddefs.el: Regenerated.

	* mh-utils.el (mh-remove-from-sub-folders-cache)
	(mh-prompt-for-folder): Replace mh-update-sub-folders-cache with
	mh-remove-from-sub-folders-cache.
	(mh-exec-cmd-daemon): Mention set-process-filter in documentation.

	* mh-pick.el (mh-searching-function): New buffer local variable
	that keeps track of the default searching function to be used.
	(mh-pick-mode): Make mh-searching-function buffer local.
	(mh-search-folder): Set mh-searching-function to use pick.
2050
	(mh-search-folder, mh-pick-menu, mh-pick-mode-help-messages)
Bill Wohler's avatar
Bill Wohler committed
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
	(mh-pick-mode, mh-do-pick-search, mh-pick-do-search): Rename
	mh-do-pick-search to mh-pick-do-search. But keep
	mh-do-pick-search as a deprecated function.
	(mh-do-search): New interactive function that performs the
	default search.
	(mh-pick-mode-map): Update keymap.

	* mh-index.el (mh-index-search): Set mh-searching-function to do
	index search.
	(mh-index-new-folder): Replace mh-update-sub-folders-cache with
	mh-remover-from-sub-folders-cache.

	* mh-funcs.el (mh-kill-folder): Same as above.

	* mh-index.el (mh-index-evaluate, mh-swish++-regexp-builder):
	Checkdoc fixes.

	* mh-customize.el: Fixes to make byte compiler in CVS Emacs
	perfectly happy.

2003-01-09  Bill Wohler  <wohler@newt.com>

	* mh-e.el (mh-folder-from-address): New function that proposes the
	name of a folder with an alias for the address in the current message.
	(mh-prompt-for-refile-folder): Use it (closes SF #657096).
2076

Bill Wohler's avatar
Bill Wohler committed
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
	* mh-customize.el (mh-default-folder-prefix): New variable used by
	mh-folder-from-address.
	(mh-invisible-header-fields): Edited docstring.

	* mh-alias.el (mh-alias-address-to-alias): Added ;;;###mh-autoload
	cookie (used by mh-folder-from-address in mh-e.el). Edited text in
	comment.

	* mh-utils.el: Provided naming conventions for buffer and buffer
	variable names.
	(mh-temp-folders-buffer): Renamed buffer to " *mh-folders*".
	(mh-temp-sequences-buffer): Renamed buffer to " *mh-sequences*".
	(mh-info-buffer): Renamed from mh-temp-info-buffer.
	(mh-log-buffer): New buffer variable to hold name of "*MH-E Log*"
	buffer which is expected to be used for the output of MH commands.
	Perhaps we always create this buffer at initialization and append
	to it rather than erase it each time?

	* mh-e.el (mh-quit): Loop over all buffers and delete MH-E
	temporary and working buffers. As long as the buffer naming
	conventions are followed, new buffers will be automatically
	killed.
	(mh-version): Renamed mh-temp-info-buffer to mh-info-buffer.

	* mh-comp.el (mh-insert-x-mailer): Renamed mh-temp-info-buffer to
	mh-info-buffer.
2103

Bill Wohler's avatar
Bill Wohler committed
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
2003-01-09  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-folder-size): If the user doesn't have a
	Unseen-Sequence definition in .mh_profile then an error was
	produced. This change fixes that.

	* mh-seq.el (mh-thread-generate): Replace the *mh-thread* buffer
	with a temporary buffer which is cleaned up when the function
	exits.

	* mh-e.el (mh-prompt-for-refile-folder): New function which
	refactors out the intelligent folder guessing code from
	mh-refile-msg.
	(mh-refile-msg): Use mh-prompt-for-refile-folder.

	* mh-seq.el (mh-thread-refile): Use mh-prompt-for-refile-folder to
	do the same intelligent destination folder guessing as
	mh-refile-msg (closes SF #664829).

	* mh-utils.el (mh-folder-list, mh-make-folder-list-process)
	(mh-folder-list-temp, mh-folder-list-partial-line)
	(mh-set-folder-list): Removed.
	(mh-sub-folders-cache, mh-sub-folders, mh-sub-folders-actual):
	Moved over from mh-speed.el to implement hierarchical completion.
	(mh-update-sub-folders-cache): Utility function called when
	new folders are created or folders are removed.
	(mh-folder-completion-function): New function is the folder name
	completion function used in completing-read.
	(mh-folder-completing-read): A thin wrapper function that is used
	instead of completing-read directly. In the future we might want
	to allow the user a customizable variable which will turn off
	folders based completion.
	(mh-prompt-for-folder): Use mh-folder-completing-read to read in
	the folder name with hierachical completion (closes SF #664821).

	* mh-speed.el (mh-speed-folders, mh-speed-folders-cache)
	(mh-speed-folders-actual): Moved to mh-utils.el as mh-sub-folders,
	mh-sub-folders-cache and mh-sub-folders-actual respectively.
2142
	(mh-speed-invalidate-map, mh-speed-invalidate-map)
Bill Wohler's avatar
Bill Wohler committed
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 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192
	(mh-speed-add-folder): Use the new names.

	* mh-funcs.el (mh-kill-folder): Remove code that used to update
	mh-folder-list which is no longer present. Instead
	mh-update-sub-folders-cache is called.

	* mh-index.el (mh-index-new-folder): Same as above.

2003-01-08  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-exec-cmd-daemon): An argument was added which
	controls what is done with the process output.

	* mh-funcs.el (mh-kill-folder): Use mh-previous-window-config to
	restore window configuration. Also the call to mh-exec-cmd-daemon
	only displays output if an error happened (closes SF #664828).
	(mh-rmf-daemon): Check rmf output and display it only if
	something went wrong.
	(mh-print-msg): Pass in nil argument to mh-exec-cmd-daemon.

	* mh-comp.el (mh-redistribute, mh-send-letter): Pass in nil
	argument to mh-exec-cmd-daemon so that the functions will behave
	as before.

	* mh-pick.el (mh-search-folder): The current window config is
	stored.
	(mh-make-pick-template): Make the message headers read-only.
	(mh-pick-mode-help-messages): Update help message.
	(mh-do-pick-search): Fix problem when buffer isn't showing any
	messages.
	(mh-next-pick-field): Use buffer-substring-no-properties is
	better.
	(mh-pick-mode-map): Add key bindings (partially addresses
	SF #664816)

	* mh-index.el (mh-indexer-choices): Add a new field for each
	index program choice. If it is non-nil then it is the name of a
	function that given a lisp expression to search for generates a
	pattern that is acceptable to the search program.
	(mh-index-regexp-builder): New variable that stores the function
	to be used to convert from the lisp expression syntax to
	something that the search program understands.
	(mh-index-generate-pretty-name): Generalized so that it can take
	a list of strings as input.
	(mh-index-search): Modified so that if the configured program has
	a corresponding regexp-builder then a search buffer like pick
	search is produced. Otherwise the previous behavior is maintained.
	(mh-index-do-search): New interactive function that takes the
	contents of the search buffer, generates an appropriate query and
	produces the search results buffer by calling mh-index-search.
2193
	(mh-replace-string, mh-index-parse-search-regexp)
Bill Wohler's avatar
Bill Wohler committed
2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208
	(mh-index-add-implicit-ops, mh-index-evaluate): New functions
	which parses the infix search expression that the user enters. A
	parse tree from which queries for different search programs can
	be produced is produced.
	(mh-swish++-regexp-builder, mh-swish++-print-regexp): Takes the
	internal form of the query and produces input suitable for
	swish++.

	* mh-loaddefs.el: Regenerated.

2003-01-08  Bill Wohler  <wohler@newt.com>

	* Makefile (emacs-logs): New target for viewing CVS Emacs logs.
	Useful to see if an Emacs developer has changed MH-E.

2209
	* MH-E-NEWS: Fixed case of MH-E in the "Changes" title.
Bill Wohler's avatar
Bill Wohler committed
2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251

	* mh-utils.el (mh-temp-info-buffer): New variable to hold name of
	buffer that contains version info.

	* mh-e.el (mh-version): Use mh-temp-info-buffer instead of
	mh-temp-buffer since version information was getting clobbered by
	the aliasing code before it could be seen (closes SF #664467).
	(mh-quit): Delete mh-temp-info-buffer.

	* mh-comp.el (mh-insert-x-mailer): Use mh-temp-info-buffer to find
	version info instead of mh-temp-buffer. You kind of need this
	patch to send mail.

2003-01-07  Bill Wohler  <wohler@newt.com>

	* mh-e.el (Version, mh-version): Set to 7.1+cvs.

2003-01-07  Bill Wohler  <wohler@newt.com>

	* Released MH-E version 7.1.

	* MH-E-NEWS, README: Updated for release 7.1.

	* mh-e.el (Version, mh-version): Updated for release 7.1.

2003-01-07  Bill Wohler  <wohler@newt.com>

	* mh-customize.el (mh-auto-folder-collect-flag,
	mh-alias-system-aliases, mh-alias-insert-file): Edited docstrings.

	* Makefile (MH-E-IMG): Added alias.pbm and alias.xpm.

	* mh-alias.el (mh-alias-insert-file, mh-alias-add-alias): Fixed
	checkdoc warnings.

2003-01-07  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-search-from-end): New function that is used to
	replace our usage of the CL function search.
	(font-lock): The library is loaded to avoid compilation warning
	in CVS Emacs.

2252
	* mh-speed.el (mh-speed-goto-folder, mh-speed-add-folder)
Bill Wohler's avatar
Bill Wohler committed
2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319
	(mh-speed-extract-folder-name, mh-speed-invalidate-map): Use
	mh-search-from-end instead of search.

	* mh-seq.el (mh-thread-remove-parent-link): Use loop instead of
	remove*.
	(mh-thread-process-in-reply-to): Use mh-search-from-end instead
	of search.

	* mh-index.el (mh-md5-parser): Fix name of function.
	(mh-index-update-single-msg, mh-index-update-maps): Avoid using
	destructuring-bind since Emacs-20.7 can't handle this particular
	usage.
	(mh-namazu-next-result): Use mh-search-from-end instead of
	search.

	* mh-e.el (recursive-load-depth-limit): Add a defvar since CVS
	emacs which doesn't have the variable defined causes a compiler
	warning.
	(mh-refile-a-msg): Rewritten to avoid using pushnew.
	(mh-undo-msg): Use loop instead of remove-if.

	* mh-comp.el (mh-show-buffer-message-number): Use
	mh-search-from-end instead of search.

2003-01-01  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-visit-folder): Modified so that if RANGE is nil then
	all messages are displayed. Documentation modified so that this is
	explicitly stated.
	(mh-visit-folder): Really fix it this time.

2003-01-01  Mark D Baushke  <mdb@gnu.org>

	* mh-alias.el (mh-alias-from-has-no-alias-p): Needs the
	mh-autoload comment or mh-customize may have problems finding the
	function.

	* mh-loaddefs.el: Regenerated.

2002-12-28  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-namazu-execute-search): Fix bug in documentation.

2002-12-28  Bill Wohler  <wohler@newt.com>

	* mh-comp.el (mh-letter-mode): Mention mh-compose-insertion
	variable in docstring, explain how to expand directives, and
	don't mention mh-mhn-compose-insertion which isn't used directly
	any more.
	(mh-send-letter): Mention that X-Mailer and X-Face are inserted
	automatically so that a user isn't tempted to do so himself in
	mh-before-send-letter-hook.
	(mh-insert-letter): Use "variable" prefix for mh-invisible-headers
	now that we have both a function and a variable. Clarified
	language a bit.

2002-12-26  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-utils.el (mh-show-xface-function): Only load x-face-e21 if
	the emacs is not XEmacs.

	* mh-index.el (mh-index-new-folder): The folder created should
	always be added to mh-folder-list. Otherwise folder name
	completion doesn't find the new folder created.

2002-12-24  Satyaki Das  <satyaki@theforce.stanford.edu>

2320 2321
	* mh-customize.el (mh-clean-message-header-flag)
	(mh-visible-headers, mh-invisible-headers)
Bill Wohler's avatar
Bill Wohler committed
2322 2323 2324 2325 2326 2327 2328
	(mh-invisible-header-fields-set): Reworded to satisfy checkdoc.

	* mh-loaddefs.el: Regenerated.

	* mh-e.el (mh-inc-folder, mh-visit-folder, mh-read-msg-range):
	Handle nil value of mh-large-folder properly.

2329 2330
	* mh-customize.el (mh-tool-bar-show-set, mh-tool-bar-letter-set)
	(mh-tool-bar-folder-set, mh-tool-bar-folder-buttons)
Bill Wohler's avatar
Bill Wohler committed
2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452
	(mh-invisible-headers, mh-invisible-header-fields-set): Checkdoc
	fixes.
	(mh-large-folder): Updated to allow for infinity. If
	mh-large-folder is nil then all folders are deemed small.

2002-12-23  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-e.el (mh-inc-folder, mh-visit-folder): Emit a message if
	threading was suppressed because the number of messages exceed
	mh-large-folder.

2002-12-23  Peter S Galbraith  <psg@debian.org>

	* mh-utils.el (mh-invisible-headers): Deleted.  Moved to
	mh-customize.el

	* mh-customize.el (mh-invisible-header-fields): New
	defcustom. Simple user interface to change mh-invisible-headers.
	(mh-invisible-header-fields-set): New function called when
	mh-invisible-header-fields is set.
	(mh-invisible-headers): New function.  Does the actual work of
	building the variable mh-invisible-headers from
	mh-invisible-header-fields.
	(mh-invisible-headers): defvar moved from mh-utils.el

2002-12-22  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-speed.el (mh-speed-folder-size): Removed. Something very
	similar appears as mh-folder-size.
	(mh-speed-view): Simplified since the range selection logic has
	been moved to mh-read-msg-range.
	(mh-speed-parse-flists-output-line): Moved to mh-e.el as
	mh-parse-flist-output-line.

	* mh-funcs.el (mh-pack-folder): Use the new mh-read-msg-range.

	* mh-e.el (mh-rescan-folder): Use the new mh-read-msg-range.
	(mh-parse-flist-output-line): Moved from mh-speed.el where this
	function was called mh-speed-parse-flists-output-line.
	(mh-folder-size): Renamed from mh-speed-folder-size. The function
	has been made more general and can be called from any buffer and
	not just the speedbar buffer.
	(mh-visit-folder): Use the new mh-read-msg-range (addresses SF
	#655891).
	(mh-read-msg-range): Rewritten.

2002-12-21  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-seq.el (mh-delete-subject-or-thread): New interactive
	function that intelligently deletes messages based on threading,
	if the folder is threaded, or on subject if folder isn't threaded.

	* mh-utils.el (mh-show-delete-subject-or-thread): New interactive
	function, callable from the show buffer, to intelligently delete
	messages based on threading info or subject.
	(mh-show-mode-map): Change binding of "k" to call
	mh-show-delete-subject-or-thread.

	* mh-e.el (mh-folder-mode-map): Change binding of "k" to call
	mh-delete-subject-or-thread.

	* mh-comp.el (mh-letter-mode-map): Add key binding for
	mh-insert-identity.

	* mh-loaddefs.el: Regenerated.

2002-12-21  Peter S Galbraith  <psg@debian.org>

	* mh-customize.el (mh-tool-bar-letter-set): Bug fix.  The
	`tool-bar-add-item-from-menu' items were broken.  I can't use my
	constants there.

2002-12-21  Peter S Galbraith  <psg@debian.org>

	* mh-alias.el (mh-alias-insert-file): Bug fix.  I never checked
	that an AliasFile entry existed in .mh_profile.

2002-12-21  Peter S Galbraith  <psg@debian.org>

	* mh-customize.el (mh-alias-insertion-location): New defustom.
	Specifies where new aliases are entered in alias files.

	* mh-alias.el (mh-alias-add-alias-to-file): Use it.

2002-12-21  Peter S Galbraith  <psg@debian.org>

	* mh-alias.el (mh-alias-add-alias-to-file): If ALIAS matches
	exactly, prompt to [i]nsert before old value or [a]ppend after it.
	(mh-alias-insert-file): Make sure we don't edit the passwd file.
	Add optional argument for alias; If ALIAS is specified and it
	already exists, try to return the file that contains it.
	(mh-alias-which-file-has-alias): New function. Return the name of
	writable file which defines ALIAS from list FILE-LIST.
	(mh-alias-add-alias): Remove prompts for case of alias already
	defined; done in mh-alias-add-alias-to-file.

2002-12-21  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-speed.el (mh-speed-folders-actual): Fix bug in parsing of
	folder names that have spaces in them. The original function would
	truncate the folder name at the first space.
	(mh-speed-flists): Add -sequence option to flists. This guards
	against the user specifying something other than the unseen
	sequence in his .mh_profile.
	(mh-speed-parse-flists-output-line): New function that parses a
	single line in the output of flists to find the folder name and
	the counts of unseesn and total messages.
	(mh-speed-parse-flists-output): Fix parsing bug which truncates
	the folder names at the first space.

	* mh-index.el (mh-index-generate-pretty-name): New function which
	generates a nicer name for the search results. It trims white
	space at the beginning and end and replaces white space with
	underscores within the search regexp.
	(mh-index-search): Use mh-index-generate-pretty-name.

	* mh-loaddefs.el: Regenerated.

2002-12-20  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-index-new-folder): Add new folder to
	mh-folder-list to enable name completion.
2453
	(mh-glimpse-execute-search, mh-swish-execute-search)
Bill Wohler's avatar
Bill Wohler committed
2454 2455 2456 2457 2458 2459 2460
	(mh-swish++-execute-search): Fix documentation.

	* mh-seq.el (mh-thread-generate): Fixed a stupid bug where the wrong
	folder could get 'scan'ed when generating the threaded view.

	* mh-index.el (mh-index-search): If optional prefix arg is given
	then the search in the current index buffer is redone.
2461
	(mh-glimpse-execute-search, mh-swish-execute-search)
Bill Wohler's avatar
Bill Wohler committed
2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473
	(mh-namazu-execute-search): Documentation fixes.

	* mh-e.el (mh-index-previous-search): New buffer local variable
	stores parameters of search that created the buffer.
	(mh-folder-mode): Make mh-index-previous-search buffer local.
	(mh-visit-folder): Tweak the function so that only a single window
	with the folder buffer is shown if mh-showing-mode is nil.

	* mh-loaddefs.el: Regenerated.

2002-12-19  Peter S Galbraith  <psg@debian.org>

2474
	* mh-alias.el (mh-alias-add-alias): Bug fix.
Bill Wohler's avatar
Bill Wohler committed
2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531

2002-12-19  Peter S Galbraith  <psg@debian.org>

	* mh-alias.el (mh-alias-add-alias): New interactive command. Add
	ALIAS for ADDRESS in personal alias file.
	(mh-alias-grab-from-field): New interactive command. Add ALIAS for
	ADDRESS in personal alias file.
	(mh-alias-add-address-under-point): New interactive
	command. Insert an alias for email address under point.
	(mh-alias-suggest-alias): New function. Suggest an alias for STRING.
	(mh-alias-insert-file): New function. Return the alias file to
	write a new entry in.
	(mh-alias-address-to-alias): New function. Return the ADDRESS
	alias if defined, or nil."
	(mh-alias-from-has-no-alias-p): New function. Return t is From has
	no current alias set.  Used as tool-bar button enable function.
	(mh-alias-add-alias-to-file): New function. Add ALIAS for ADDRESS
	in alias FILE without alias check or prompts.

	* alias.xpm, alias.pbm: New tool-bar icon for
	mh-alias-grab-from-field.

	* mh-e.el (mh-folder-line-matches-show-buffer-p): New function.
	Return t if the message under point in folder-mode is in the show
	buffer.

	* mh-utils.el (mh-goto-address-find-address-at-point): New
	function copied from goto-addr.el, which we don't want to
	force-load on users.  Find e-mail address around or before point.
	(mh-address-mail-regexp): New defvar.  A regular expression
	probably matching an e-mail address.

	* mh-customize.el (mh-alias-insert-file): New defcustom.
	Filename to use to store new MH-E aliases.
	(mh-tool-bar-folder-buttons): Enable mh-tool-bar-item-alias icon.

	* mh-comp.el (mh-extract-from-header-value): New function.
	Extract From: string from header.

2002-12-19  Satyaki Das  <satyaki@theforce.stanford.edu>

	* mh-index.el (mh-index-update-single-msg): New defvar controls
	max number of command line args.
	(mh-index-execute): New function which is to be used
	instead of xargs so that we don't give the shell too many command
	line args.
	(mh-index-update-maps): Use mh-index-execute instead of xargs.
	(mh-index-search): Remove unused code. Also the first message in
	folder buffer is made current.

2002-12-18  Peter S Galbraith  <psg@debian.org>

	* mh-loaddefs.el: Regenerated.

	* mh-comp.el (mh-letter-tool-bar-map): Moved to mh-customize.el

	* mh-e.el (mh-folder-tool-bar-map): Moved to mh-customize.el
Juanma Barranquero's avatar