diff options
| author | Karoly Lorentey | 2004-10-19 17:00:02 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2004-10-19 17:00:02 +0000 |
| commit | 90b404757b24ea0c88d6ec3ed9c1ccce07bbd19f (patch) | |
| tree | b5cb05f7c5d0c27537362072badf76355d363319 | |
| parent | ec16044407f468aacda9eb031fb7267d5ee0f899 (diff) | |
| parent | d4c2c0eff81e7540cbb0a32ef10017285f68e1aa (diff) | |
| download | emacs-90b404757b24ea0c88d6ec3ed9c1ccce07bbd19f.tar.gz emacs-90b404757b24ea0c88d6ec3ed9c1ccce07bbd19f.zip | |
Merged in changes from CVS trunk.
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-616
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-617
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-618
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-619
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-620
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-621
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-622
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-623
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-624
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-625
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-51
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-52
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-53
Merge from emacs--cvs-trunk--0
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-261
70 files changed, 1183 insertions, 1832 deletions
diff --git a/etc/MAILINGLISTS b/etc/MAILINGLISTS index 7c5558eabf6..743c82d64bb 100644 --- a/etc/MAILINGLISTS +++ b/etc/MAILINGLISTS | |||
| @@ -5,22 +5,27 @@ | |||
| 5 | 5 | ||
| 6 | * Mailing list archives | 6 | * Mailing list archives |
| 7 | 7 | ||
| 8 | The GNU mailing lists are archived at | 8 | The GNU mailing lists are archived at http://lists.gnu.org. |
| 9 | ftp://ftp-mailing-list-archives.gnu.org/ | 9 | |
| 10 | 10 | * Some GNU mailing lists are also distributed as USENET news groups | |
| 11 | * GNU mailing lists are also distributed as USENET news groups | 11 | |
| 12 | 12 | Certain GNU mailing lists are gated both ways with the gnu.all | |
| 13 | The mailing lists are gated both ways with the gnu.all newsgroups at | 13 | newsgroups at uunet. You can tell which they are, because the names |
| 14 | uunet. The one-to-one correspondence is indicated below. If | 14 | correspond. For instance, bug-gnu-emacs corresponds to gnu.emacs.bug; |
| 15 | you don't know if your site is on USENET, ask your system administrator. | 15 | info-gnu-emacs, to gnu.emacs.announce; help-gnu-emacs, to |
| 16 | If you are a USENET site and don't get the gnu.all newsgroups, please | 16 | gnu.emacs.help; gnu-emacs-sources, to gnu.emacs.sources. Replacing |
| 17 | ask your USENET administrator to get them. If he has your feeds ask | 17 | `emacs' with some other program in those four examples shows you |
| 18 | their feeds, you should win. And everyone else wins: newsgroups make | 18 | the whole pattern. |
| 19 | better use of the limited bandwidth of the computer networks and your | 19 | |
| 20 | home machine than mailing list traffic; and staying off the mailing | 20 | If you don't know if your site is on USENET, ask your system |
| 21 | lists make better use of the people who maintain the lists and the | 21 | administrator. If you are a USENET site and don't get the gnu.all |
| 22 | machines that the GNU people working with rms use (i.e. we have more | 22 | newsgroups, please ask your USENET administrator to get them. If he has |
| 23 | time to produce code!!). Thanx. | 23 | your feeds ask their feeds, you should win. And everyone else wins: |
| 24 | newsgroups make better use of the limited bandwidth of the computer | ||
| 25 | networks and your home machine than mailing list traffic; and staying | ||
| 26 | off the mailing lists make better use of the people who maintain the | ||
| 27 | lists and the machines that the GNU people working with rms use (i.e. we | ||
| 28 | have more time to produce code!!). Thanx. | ||
| 24 | 29 | ||
| 25 | * Getting the mailing lists directly | 30 | * Getting the mailing lists directly |
| 26 | 31 | ||
| @@ -35,22 +40,14 @@ transport the mail from us to you. | |||
| 35 | Send requests to be added or removed, to help-gnu-emacs-request (or | 40 | Send requests to be added or removed, to help-gnu-emacs-request (or |
| 36 | info-gnu-request, bug-gdb-request, etc.), NOT to info-gnu-emacs (or | 41 | info-gnu-request, bug-gdb-request, etc.), NOT to info-gnu-emacs (or |
| 37 | info-gnu, etc.). Most <LIST_NAME>-request addresses are now handled | 42 | info-gnu, etc.). Most <LIST_NAME>-request addresses are now handled |
| 38 | automagically by the SmartList program. | 43 | automagically by GNU Mailman. |
| 39 | 44 | ||
| 40 | If you need to report problems to a human, send mail to gnu@gnu.org | 45 | If you need to report problems to a human, send mail to gnu@gnu.org |
| 41 | explaining the problem. | 46 | explaining the problem. |
| 42 | 47 | ||
| 43 | Many of the GNU mailing lists are very large and are received by many | 48 | Many of the GNU mailing lists are very large and are received by many |
| 44 | people. Please don't send them anything that is not seriously important | 49 | people. Most are unmoderated, so please don't send them anything that |
| 45 | to all their readers. All GNU mailing lists are unmoderated mail | 50 | is not seriously important to all their readers. |
| 46 | reflectors, except info-gnu, info-gnu-emacs, info-gcc, info-g++, | ||
| 47 | info-gnu-fortran. | ||
| 48 | |||
| 49 | All addresses below are in internet format. Consult the mail guru for | ||
| 50 | your computer to figure out address syntaxes from other networks. From | ||
| 51 | UUCP machines: | ||
| 52 | ..!ucbvax!gnu.org!ADDRESS | ||
| 53 | ..!uunet!gnu.org!ADDRESS | ||
| 54 | 51 | ||
| 55 | If a message you mail to a list is returned from a MAILER-DAEMON (often | 52 | If a message you mail to a list is returned from a MAILER-DAEMON (often |
| 56 | with the line: | 53 | with the line: |
| @@ -80,11 +77,10 @@ available to only those people who want it (e.g. mailing it to people | |||
| 80 | who ask, or putting it up for FTP). In the case of gnu.emacs.sources, | 77 | who ask, or putting it up for FTP). In the case of gnu.emacs.sources, |
| 81 | somewhat larger postings (up to 10 parts of no more than 25,000 | 78 | somewhat larger postings (up to 10 parts of no more than 25,000 |
| 82 | characters each) are acceptable (assuming they are likely to be of | 79 | characters each) are acceptable (assuming they are likely to be of |
| 83 | interest to a reasonable number of people); if it is larger than that | 80 | interest to a reasonable number of people); if it is larger than that, |
| 84 | have it added to archive.cis.ohio-state.edu (the GNU Emacs Lisp ftp and | 81 | put it in a web page and announce its URL. Good bug reports are short. |
| 85 | uucp archive) and announce its location there. Good bug reports are | 82 | See section '* General Information about bug-* lists and ...' for |
| 86 | short. See section '* General Information about bug-* lists and ...' | 83 | further details. |
| 87 | for further details. | ||
| 88 | 84 | ||
| 89 | Most of the time, when you reply to a message sent to a list, the reply | 85 | Most of the time, when you reply to a message sent to a list, the reply |
| 90 | should not go to the list. But most mail reading programs supply, by | 86 | should not go to the list. But most mail reading programs supply, by |
| @@ -170,8 +166,7 @@ overworked; they don't have time to help individuals and still fix the | |||
| 170 | bugs and make the improvements that everyone wants. If you want help | 166 | bugs and make the improvements that everyone wants. If you want help |
| 171 | for yourself in particular, you may have to hire someone. The GNU | 167 | for yourself in particular, you may have to hire someone. The GNU |
| 172 | project maintains a list of people providing such services. It is | 168 | project maintains a list of people providing such services. It is |
| 173 | distributed with GNU Emacs in file etc/SERVICE, and can be requested | 169 | found in <URL:http://www.gnu.org/prep/SERVICE>. |
| 174 | from gnu@gnu.org. | ||
| 175 | 170 | ||
| 176 | Anything addressed to the implementors and maintainers of a GNU program | 171 | Anything addressed to the implementors and maintainers of a GNU program |
| 177 | via a bug-* list, should NOT be sent to the corresponding info-* or | 172 | via a bug-* list, should NOT be sent to the corresponding info-* or |
| @@ -197,27 +192,23 @@ And please DON'T post your GNU bug reports to comp.* or other gnu.* | |||
| 197 | newsgroups, they never make it to the GNU maintainers at all. Please | 192 | newsgroups, they never make it to the GNU maintainers at all. Please |
| 198 | mail them to bug-*@gnu.org instead! | 193 | mail them to bug-*@gnu.org instead! |
| 199 | 194 | ||
| 200 | See section '* General Information about all lists'. | 195 | * Some special lists that don't fit the usual patterns of help-, bug- and info- |
| 196 | |||
| 197 | ** info-gnu-request@gnu.org to subscribe to info-gnu | ||
| 201 | 198 | ||
| 202 | * info-gnu-request@gnu.org to subscribe to info-gnu | 199 | gnUSENET newsgroup: gnu.announce |
| 203 | ** gnUSENET newsgroup: gnu.announce | 200 | Send announcements to: info-gnu@gnu.org |
| 204 | ** Send announcements to: info-gnu@gnu.org | ||
| 205 | 201 | ||
| 206 | This list distributes progress reports on the GNU Project. It is also | 202 | This list distributes progress reports on the GNU Project. It is also |
| 207 | used by the GNU Project to ask people for various kinds of help. It is | 203 | used by the GNU Project to ask people for various kinds of help. It is |
| 208 | NOT for general discussion. | 204 | moderated and NOT for general discussion. |
| 209 | 205 | ||
| 210 | The list is filtered to remove items meant for info-gnu-request, that | 206 | ** gnu-misc-discuss-request@gnu.org to subscribe to gnu-misc-discuss |
| 211 | can be answered by the moderator without bothering the list, or should | ||
| 212 | have been sent to another list. | ||
| 213 | 207 | ||
| 214 | See section '* General Information about info-* lists'. | 208 | gnUSENET newsgroup: gnu.misc.discuss |
| 209 | Send contributions to: gnu-misc-discuss@gnu.org | ||
| 215 | 210 | ||
| 216 | * gnu-misc-discuss-request@gnu.org to subscribe to gnu-misc-discuss | 211 | This list is for serious discussion of free software, the GNU Project, |
| 217 | ** gnUSENET newsgroup: gnu.misc.discuss | ||
| 218 | ** Send contributions to: gnu-misc-discuss@gnu.org | ||
| 219 | |||
| 220 | This list is for serious discussion of freed software, the GNU Project, | ||
| 221 | the GNU Manifesto, and their implications. It's THE place for | 212 | the GNU Manifesto, and their implications. It's THE place for |
| 222 | discussion that is not appropriate in the other GNU mailing lists and | 213 | discussion that is not appropriate in the other GNU mailing lists and |
| 223 | gnUSENET newsgroups. | 214 | gnUSENET newsgroups. |
| @@ -229,9 +220,11 @@ Good READING and writing are expected. Before posting, wait a while, | |||
| 229 | cool off, and think. | 220 | cool off, and think. |
| 230 | 221 | ||
| 231 | Don't use this group for complaints and bug reports about GNU software! | 222 | Don't use this group for complaints and bug reports about GNU software! |
| 232 | The maintainers don't read this group; they won't see your complaint. | 223 | The maintainers of the package you are using probably don't read this |
| 233 | Use the appropriate bug-reporting mailing list instead, so that people | 224 | group; they won't see your complaint. Use the appropriate bug-reporting |
| 234 | who can do something about the problem will see it. | 225 | mailing list instead, so that people who can do something about the |
| 226 | problem will see it. Likewise, use the help- list for technical | ||
| 227 | questions. | ||
| 235 | 228 | ||
| 236 | Don't trust pronouncements made on gnu-misc-discuss about what GNU is, | 229 | Don't trust pronouncements made on gnu-misc-discuss about what GNU is, |
| 237 | what FSF position is, what the GNU General Public License is, etc., | 230 | what FSF position is, what the GNU General Public License is, etc., |
| @@ -244,47 +237,13 @@ empty at your site, wait (the articles are posted monthly), your posting | |||
| 244 | isn't that urgent! Readers on the Internet can anonymous FTP these | 237 | isn't that urgent! Readers on the Internet can anonymous FTP these |
| 245 | articles from host ftp.uu.net under directory ?? | 238 | articles from host ftp.uu.net under directory ?? |
| 246 | 239 | ||
| 247 | Someone from the Free Software Foundation will attempt to follow this | ||
| 248 | group as time and volume permits. | ||
| 249 | |||
| 250 | Remember, "GNUs Not Unix" and "gnUSENET is Not USENET". We have | 240 | Remember, "GNUs Not Unix" and "gnUSENET is Not USENET". We have |
| 251 | higher standards! | 241 | higher standards! |
| 252 | 242 | ||
| 253 | Note that sending technical questions about specific GNU software to | 243 | ** guile-sources-request@gnu.org to subscribe to guile-sources |
| 254 | gnu-misc-discuss is likely to be less useful than sending them to the | ||
| 255 | appropriate mailing list or gnUSENET newsgroup, since more technical | ||
| 256 | people read those. | ||
| 257 | |||
| 258 | * bug-gnu-sql-request@gnu.org to subscribe to bug-gnu-sql | ||
| 259 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 260 | ** GNU-SQL BUG reports to: bug-gnu-sql@gnu.org | ||
| 261 | |||
| 262 | This list distributes, to the active maintainers of GNU's SQL (GNU's SQL | ||
| 263 | full scale database server), bug reports and fixes for, and suggestions | ||
| 264 | for improvements to GNU's SQL. User discussion of GNU's SQL also occurs | ||
| 265 | here. | ||
| 266 | |||
| 267 | There are no other GNU mailing lists or gnUSENET newsgroups for GNU's SQL. | ||
| 268 | |||
| 269 | See section '* General Information about bug-* lists and reporting | ||
| 270 | program bugs'. | ||
| 271 | |||
| 272 | * bug-guile-request@gnu.org to subscribe to bug-guile | ||
| 273 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 274 | ** GUILE BUG reports to: bug-guile@gnu.org | ||
| 275 | |||
| 276 | This list distributes, to the active maintainers of GUILE (GNU's | ||
| 277 | Ubiquitous Extension Language), bug reports and fixes for, and suggestions for | ||
| 278 | improvements to GUILE. User discussion of GUILE also occurs here. | ||
| 279 | |||
| 280 | There are no other GNU mailing lists or gnUSENET newsgroups for GUILE . | ||
| 281 | 244 | ||
| 282 | See section '* General Information about bug-* lists and reporting | 245 | gnUSENET newsgroup: NONE PLANNED |
| 283 | program bugs'. | 246 | Guile source code to: guile-sources@gnu.org |
| 284 | |||
| 285 | * guile-sources-request@gnu.org to subscribe to guile-sources | ||
| 286 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 287 | ** Guile source code to: guile-sources@gnu.org | ||
| 288 | 247 | ||
| 289 | This list will be for the posting, by their authors, of GUILE, Scheme, | 248 | This list will be for the posting, by their authors, of GUILE, Scheme, |
| 290 | and C sources and patches that improve Guile. Its contents will be | 249 | and C sources and patches that improve Guile. Its contents will be |
| @@ -315,143 +274,10 @@ If the requested source is very long (>10k bytes) send mail offering to | |||
| 315 | send it. This prevents the requester from getting many redundant copies | 274 | send it. This prevents the requester from getting many redundant copies |
| 316 | and saves network bandwidth. | 275 | and saves network bandwidth. |
| 317 | 276 | ||
| 318 | * bug-gnustep-request@gnu.org to subscribe to bug-gnustep | 277 | ** gnu-emacs-sources-request@gnu.org to subscribe to gnu-emacs-sources |
| 319 | ** gnUSENET newsgroup: gnu.gnustep.bug | ||
| 320 | ** Gnustep bug reports to: bug-gnustep@gnu.org | ||
| 321 | ** FAQ-URL: none known | ||
| 322 | ** FAQ-Archive-name: none known | ||
| 323 | ** FAQ-Posting-frequency: none known | ||
| 324 | |||
| 325 | This list distributes bug reports for, fixes for bugs in, and | ||
| 326 | suggestions for improvements in GNUstep to its active developers. | ||
| 327 | |||
| 328 | Subscribers to bug-gnustep get all info-gnustep messages. | ||
| 329 | |||
| 330 | See section '* General Information about bug-* lists and reporting | ||
| 331 | program bugs'. | ||
| 332 | |||
| 333 | * help-gnustep-request@gnu.org to subscribe to help-gnustep | ||
| 334 | ** gnUSENET newsgroup: gnu.gnustep.help | ||
| 335 | ** Send contributions to: help-gnustep@gnu.org | ||
| 336 | ** FAQ-URL: none known | ||
| 337 | ** FAQ-Archive-name: none known | ||
| 338 | ** FAQ-Posting-frequency: none known | ||
| 339 | |||
| 340 | This list is the place for users and installers of the GNUstep to ask | ||
| 341 | for help. Please send bug reports to bug-gnustep@gnu.org | ||
| 342 | instead of posting them here. | ||
| 343 | |||
| 344 | See section '* General Information about help-* lists'. | ||
| 345 | |||
| 346 | * discuss-gnustep-request@gnu.org to subscribe to discuss-gnustep | ||
| 347 | ** gnUSENET newsgroup: gnu.gnustep.discuss | ||
| 348 | ** Send contributions to: discuss-gnustep@gnu.org | ||
| 349 | ** FAQ-URL: none known | ||
| 350 | ** FAQ-Archive-name: none known | ||
| 351 | ** FAQ-Posting-frequency: none known | ||
| 352 | |||
| 353 | This list is the place for GNUstep users and developers to discuss | ||
| 354 | GNUstep. Please send bug reports to bug-gnustep@gnu.org | ||
| 355 | instead of posting them here. | ||
| 356 | |||
| 357 | See section '* General Information about discuss-* lists'. | ||
| 358 | |||
| 359 | * info-gnustep-request@gnu.org to subscribe to info-gnustep | ||
| 360 | ** gnUSENET newsgroup: gnu.gnustep.announce | ||
| 361 | ** Send announcements to: info-gnustep@gnu.org | ||
| 362 | ** FAQ-URL: none known | ||
| 363 | ** FAQ-Archive-name: none known | ||
| 364 | ** FAQ-Posting-frequency: none known | ||
| 365 | |||
| 366 | This list distributes announcements and progress reports on GNUstep. | ||
| 367 | It is NOT for general discussion; please use discuss-gnustep for that. | ||
| 368 | |||
| 369 | The list is filtered to remove items meant for info-gnustep-request, that | ||
| 370 | can be answered by the moderator without bothering the list, or should | ||
| 371 | have been sent to another list. | ||
| 372 | |||
| 373 | Do not report GNUstep bugs to info-gnustep, help-gnustep, or | ||
| 374 | discuss-gnustep, mail them to bug-gnustep@gnu.org instead. | ||
| 375 | |||
| 376 | See section '* General Information about info-* lists'. | ||
| 377 | |||
| 378 | * bug-hurd-request@gnu.org to subscribe to bug-hurd | ||
| 379 | ** gnUSENET newsgroup: NONE | ||
| 380 | ** Hurd bug reports to: bug-hurd@gnu.org | ||
| 381 | |||
| 382 | This list distributes bug reports for, fixes for bugs in, and | ||
| 383 | suggestions for improvements in the GNU Hurd to its active developers. | ||
| 384 | |||
| 385 | No info-gnu-hurd list is planned. Announcements about the GNU Hurd will | ||
| 386 | be made to the list info-gnu@gnu.org (see above). | ||
| 387 | |||
| 388 | See section '* General Information about bug-* lists and reporting | ||
| 389 | program bugs'. | ||
| 390 | |||
| 391 | * help-hurd-request@gnu.org to subscribe to help-hurd | ||
| 392 | ** gnUSENET newsgroup: NONE | ||
| 393 | ** Send contributions to: help-hurd@gnu.org | ||
| 394 | |||
| 395 | This list is the place for users and installers of the GNU Hurd to ask | ||
| 396 | for help. | ||
| 397 | |||
| 398 | No info-gnu-hurd list is planned. Announcements about the GNU Hurd will | ||
| 399 | be made to the list info-gnu@gnu.org (see above). | ||
| 400 | |||
| 401 | See section '* General Information about help-* lists'. | ||
| 402 | |||
| 403 | * hurd-ann-request@gnu.org IS NOW DEFUNCT | ||
| 404 | ** gnUSENET newsgroup: NEVER EXISTED | ||
| 405 | ** DEAD address: hurd-ann@gnu.org | ||
| 406 | |||
| 407 | This list is dead. Announcements about the GNU Hurd will be made to the | ||
| 408 | list info-gnu@gnu.org (see above). | ||
| 409 | |||
| 410 | * discuss-gnu-electric-request@gnu.org to subscribe to discuss-gnu-electric | ||
| 411 | ** gnUSENET newsgroup: NONE | ||
| 412 | ** Send contributions to: discuss-gnu-electric@gnu.org | ||
| 413 | |||
| 414 | This list is the place for user discussion of Gnu Electric, a | ||
| 415 | sophisticated electrical CAD system that can handle many forms of | ||
| 416 | circuit design. Please send bug reports to bug-gnu-electric@gnu.org | ||
| 417 | (see next entry). | ||
| 418 | |||
| 419 | * bug-gnu-electric-request@gnu.org to subscribe to bug-gnu-electric | ||
| 420 | ** gnUSENET newsgroup: NONE | ||
| 421 | ** Gnu Electric bug reports to: bug-gnu-electric@gnu.org | ||
| 422 | |||
| 423 | This list distributes, to the active maintainers of GNU Electric, bug | ||
| 424 | reports and fixes for, and suggestions for improvements in GNU Electric, | ||
| 425 | a sophisticated electrical CAD system that can handle many forms of | ||
| 426 | circuit design. | ||
| 427 | |||
| 428 | No info-gnu-electric list exists; announcements of new releases are | ||
| 429 | made to info-gnu@gnu.org (see above). | ||
| 430 | |||
| 431 | See section '* General Information about bug-* lists and reporting | ||
| 432 | program bugs'. | ||
| 433 | |||
| 434 | * bug-gnu-emacs-request@gnu.org to subscribe to bug-gnu-emacs | ||
| 435 | ** gnUSENET newsgroup: gnu.emacs.bug | ||
| 436 | ** Gnu Emacs bug reports to: bug-gnu-emacs@gnu.org | ||
| 437 | |||
| 438 | This list distributes, to the active maintainers of GNU Emacs, bug | ||
| 439 | reports and fixes for, and suggestions for improvements in GNU Emacs. | ||
| 440 | 278 | ||
| 441 | Send bugs in the GNU Emacs Lisp reference manual to: | 279 | gnUSENET newsgroup: gnu.emacs.sources |
| 442 | lisp-manual-bugs@gnu.org | 280 | GNU Emacs source code to: gnu-emacs-sources@gnu.org |
| 443 | |||
| 444 | lisp-manual-bugs is neither a mailing list nor a gnUSENET newsgroup. | ||
| 445 | It's just a bug-reporting address. | ||
| 446 | |||
| 447 | Subscribers to bug-gnu-emacs get all info-gnu-emacs messages. | ||
| 448 | |||
| 449 | See section '* General Information about bug-* lists and reporting | ||
| 450 | program bugs'. | ||
| 451 | |||
| 452 | * gnu-emacs-sources-request@gnu.org to subscribe to gnu-emacs-sources | ||
| 453 | ** gnUSENET newsgroup: gnu.emacs.sources | ||
| 454 | ** Gnu Emacs source code to: gnu-emacs-sources@gnu.org | ||
| 455 | 281 | ||
| 456 | This list/newsgroup will be for the posting, by their authors, of Emacs | 282 | This list/newsgroup will be for the posting, by their authors, of Emacs |
| 457 | Lisp and C sources and patches that improve GNU Emacs. Its contents | 283 | Lisp and C sources and patches that improve GNU Emacs. Its contents |
| @@ -485,1039 +311,6 @@ If the requested source is very long (>10k bytes) send mail offering to | |||
| 485 | send it. This prevents the requester from getting many redundant copies | 311 | send it. This prevents the requester from getting many redundant copies |
| 486 | and saves network bandwidth. | 312 | and saves network bandwidth. |
| 487 | 313 | ||
| 488 | * help-gnu-emacs-request@gnu.org to subscribe to help-gnu-emacs | ||
| 489 | ** gnUSENET newsgroup: gnu.emacs.help (and one-way into comp.emacs) | ||
| 490 | ** Send contributions to: help-gnu-emacs@gnu.org | ||
| 491 | |||
| 492 | This list is the place for users and installers of GNU Emacs to ask for | ||
| 493 | help. Please send bug reports to bug-gnu-emacs instead of posting them | ||
| 494 | here. | ||
| 495 | |||
| 496 | Since help-gnu-emacs is a very large list, send it only those items that | ||
| 497 | are seriously important to many people. | ||
| 498 | |||
| 499 | If source or patches that were previously posted or a simple fix is | ||
| 500 | requested in help-gnu-emacs, please mail it to the requester. Do NOT | ||
| 501 | repost it. If you also want something that is requested, send mail to | ||
| 502 | the requester asking him to forward it to you. This kind of traffic is | ||
| 503 | best handled by e-mail, not a broadcast medium that reaches millions of | ||
| 504 | sites. | ||
| 505 | |||
| 506 | This list is also gated one way to USENET's newsgroup comp.emacs (once | ||
| 507 | known as net.emacs). This one-way gating is done for users whose sites | ||
| 508 | get comp.emacs, but not gnu.emacs.help. Users at non-USENET sites may | ||
| 509 | receive all articles from comp.emacs by making their request to: | ||
| 510 | unix-emacs-request@bbn.com | ||
| 511 | |||
| 512 | If Emacs crashes, or if you build Emacs following the standard procedure | ||
| 513 | on a system which Emacs is supposed to work on (see etc/MACHINES) and it | ||
| 514 | does not work at all, or if an editing command does not behave as it is | ||
| 515 | documented to behave, this is a bug. Don't send bug reports to | ||
| 516 | help-gnu-emacs (gnu.emacs.help) or post them to comp.emacs; mail them to | ||
| 517 | bug-gnu-emacs@gnu.org instead. | ||
| 518 | |||
| 519 | See section '* General Information about help-* lists'. | ||
| 520 | |||
| 521 | * info-gnu-emacs-request@gnu.org to subscribe to info-gnu-emacs | ||
| 522 | ** gnUSENET newsgroup: gnu.emacs.announce (and one-way into comp.emacs) | ||
| 523 | ** Send announcements to: info-gnu-emacs@gnu.org | ||
| 524 | |||
| 525 | This list distributes announcements and progress reports on GNU Emacs. | ||
| 526 | It is NOT for general discussion; please use help-gnu-emacs for that. | ||
| 527 | |||
| 528 | The list is filtered to remove items meant for info-gnu-emacs-request, | ||
| 529 | that can be answered by the moderator without bothering the list, or | ||
| 530 | should have been sent to another list. | ||
| 531 | |||
| 532 | info-gnu-emacs is also gated one way to USENET's newsgroup comp.emacs | ||
| 533 | (once known as net.emacs). This one-way gating is done for users whose | ||
| 534 | sites get comp.emacs, but not gnu.emacs.announce. Users at non-USENET | ||
| 535 | sites may receive all articles from comp.emacs by making their request | ||
| 536 | to: unix-emacs-request@bbn.com | ||
| 537 | |||
| 538 | Do not report GNU Emacs bugs to info-gnu-emacs or comp.emacs, instead | ||
| 539 | mail them to bug-gnu-emacs@gnu.org. | ||
| 540 | |||
| 541 | See section '* General Information about info-* lists'. | ||
| 542 | |||
| 543 | * vms-gnu-emacs-request@gnu.org to subscribe | ||
| 544 | ** gnUSENET newsgroup: gnu.emacs.vms | ||
| 545 | ** Send contributions to: vms-gnu-emacs@gnu.org | ||
| 546 | |||
| 547 | This list was a working group who did the initial port of GNU Emacs to | ||
| 548 | the VMS operating system. It still discusses problems and solutions to | ||
| 549 | the VMS port and the distribution of it. | ||
| 550 | |||
| 551 | * bug-bash-request@gnu.org to subscribe to bug-bash | ||
| 552 | ** gnUSENET newsgroup: gnu.bash.bug | ||
| 553 | ** BASH bug reports to: bug-bash@gnu.org | ||
| 554 | |||
| 555 | This list distributes, to the active maintainers of BASH (the Bourne | ||
| 556 | Again SHell), bug reports and fixes for, and suggestions for | ||
| 557 | improvements in BASH. User discussion of BASH also occurs here. | ||
| 558 | |||
| 559 | Always report the version number of the operating system, hardware, and | ||
| 560 | bash (flag -version on startup or check the variable $BASH_VERSION in a | ||
| 561 | running bash). | ||
| 562 | |||
| 563 | There are no other GNU mailing lists or gnUSENET newsgroups for BASH. | ||
| 564 | |||
| 565 | See section '* General Information about bug-* lists and reporting | ||
| 566 | program bugs'. | ||
| 567 | |||
| 568 | * bug-gdb-request@gnu.org to subscribe to bug-gdb | ||
| 569 | ** gnUSENET newsgroup: gnu.gdb.bug | ||
| 570 | ** GDB bug reports to: bug-gdb@gnu.org | ||
| 571 | |||
| 572 | This list distributes, to the active maintainers of GDB (Gnu's | ||
| 573 | DeBugger), bug reports and fixes for, and suggestions for improvements | ||
| 574 | in GDB. This list is also for user discussion. | ||
| 575 | |||
| 576 | There are no other GNU mailing lists or gnUSENET newsgroups for GDB. | ||
| 577 | |||
| 578 | See section '* General Information about bug-* lists and reporting | ||
| 579 | program bugs'. | ||
| 580 | |||
| 581 | * bug-ncurses-request@gnu.org to subscribe to bug-ncurses | ||
| 582 | ** gnUSENET newsgroup: none | ||
| 583 | ** NCURSES bug reports to: bug-ncurses@gnu.org | ||
| 584 | |||
| 585 | This list distributes, to the active maintainers of ncurses | ||
| 586 | (a free implementation of the Unix curses API) bug reports and fixes | ||
| 587 | for, and suggestions for improvements in ncurses. Users can also | ||
| 588 | subscribe to this list. | ||
| 589 | |||
| 590 | See section '* General Information about bug-* lists and reporting | ||
| 591 | program bugs'. | ||
| 592 | |||
| 593 | * help-ncurses-request@gnu.org to subscribe to help-ncurses | ||
| 594 | ** gnUSENET newsgroup: none | ||
| 595 | ** posts go to: help-ncurses@gnu.org | ||
| 596 | |||
| 597 | This list is the place for users and installers of ncurses to ask for | ||
| 598 | help. Please send bug reports to bug-ncurses instead of posting them | ||
| 599 | here. | ||
| 600 | |||
| 601 | See section '* General Information about help-* lists' | ||
| 602 | |||
| 603 | * bug-gnats-request@gnu.org to subscribe to bug-gnats | ||
| 604 | ** gnUSENET newsgroup: None | ||
| 605 | ** GNATS bug reports to: bug-gnats@gnu.org | ||
| 606 | |||
| 607 | This list distributes, to the active maintainers of GNATS (GNats: A | ||
| 608 | Tracking System), bug reports and fixes for, and suggestions for improvements | ||
| 609 | in GNATS. This list is also for user discussion. | ||
| 610 | |||
| 611 | There are no other GNU mailing lists or gnUSENET newsgroups for GNATS. | ||
| 612 | |||
| 613 | See section '* General Information about bug-* lists and reporting | ||
| 614 | program bugs'. | ||
| 615 | |||
| 616 | * bug-octave-request@bevo.che.utexas.edu to subscribe to bug-octave | ||
| 617 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 618 | ** Octave bug reports to: bug-octave@bevo.che.utexas.edu | ||
| 619 | |||
| 620 | This list distributes, to the active maintainers of Octave (a system | ||
| 621 | for numerical computations), bug reports and fixes for, and | ||
| 622 | suggestions for improvements to Octave. | ||
| 623 | |||
| 624 | The help-octave mailing list is for user discussion of Octave. | ||
| 625 | |||
| 626 | See section '* General Information about bug-* lists and reporting | ||
| 627 | program bugs'. | ||
| 628 | |||
| 629 | |||
| 630 | * help-octave-request@bevo.che.utexas.edu to subscribe to help-octave | ||
| 631 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 632 | ** Send contributions to: help-octave@bevo.che.utexas.edu | ||
| 633 | |||
| 634 | This list is the place for users and installers of Octave to ask for | ||
| 635 | help. Please send bug reports to bug-octave instead of posting them | ||
| 636 | here. | ||
| 637 | |||
| 638 | If Octave crashes, or if you build Octave following the standard | ||
| 639 | procedure on a system on which Octave is supposed to work on and it | ||
| 640 | does not work at all, or if a command does not behave as it is | ||
| 641 | documented to behave, this is a bug. Don't send bug reports to | ||
| 642 | help-octave; mail them to bug-octave@che.utexas.edu instead. | ||
| 643 | |||
| 644 | See section '* General Information about help-* lists'. | ||
| 645 | |||
| 646 | * bug-bison-request@gnu.org to subscribe to bug-bison | ||
| 647 | ** gnUSENET newsgroup: NONE | ||
| 648 | ** Bison bug reports to: bug-bison@gnu.org | ||
| 649 | |||
| 650 | This list distributes, to the active maintainers of Bison | ||
| 651 | bug reports and fixes for, and suggestions for improvements | ||
| 652 | in Bison. User discussion of Bison bugs occurs here. | ||
| 653 | |||
| 654 | See section '* General Information about bug-* lists and reporting | ||
| 655 | program bugs'. | ||
| 656 | |||
| 657 | * help-bison-request@gnu.org to subscribe to help-bison | ||
| 658 | ** gnUSENET newsgroup: NONE | ||
| 659 | ** Send contributions to: help-bison@gnu.org | ||
| 660 | |||
| 661 | This list is the place for users and installers of Bison | ||
| 662 | to ask for help. Please send bug reports to bug-bison instead | ||
| 663 | of posting them here. | ||
| 664 | |||
| 665 | See section '* General Information about help-* lists'. | ||
| 666 | |||
| 667 | * bug-make-request@gnu.org to subscribe to bug-make | ||
| 668 | ** gnUSENET newsgroup: NONE | ||
| 669 | ** Make bug reports to: bug-make@gnu.org | ||
| 670 | |||
| 671 | This list distributes, to the active maintainers of GNU make | ||
| 672 | bug reports and fixes for, and suggestions for improvements | ||
| 673 | in GNU make. User discussion of GNU make bugs occurs here. | ||
| 674 | |||
| 675 | See section '* General Information about bug-* lists and reporting | ||
| 676 | program bugs'. | ||
| 677 | |||
| 678 | * help-make-request@gnu.org to subscribe to help-make | ||
| 679 | ** gnUSENET newsgroup: NONE | ||
| 680 | ** Send contributions to: help-make@gnu.org | ||
| 681 | |||
| 682 | This list is the place for users and installers of GNU make | ||
| 683 | to ask for help. Please send bug reports to bug-make instead | ||
| 684 | of posting them here. | ||
| 685 | |||
| 686 | See section '* General Information about help-* lists'. | ||
| 687 | |||
| 688 | * help-flex-request@gnu.org to subscribe to help-flex | ||
| 689 | ** gnUSENET newsgroup: NONE | ||
| 690 | ** Send contributions to: help-flex@gnu.org | ||
| 691 | |||
| 692 | This list is the place for users and installers of Flex | ||
| 693 | to ask for help. Please send bug reports to bug-gnu-utils instead | ||
| 694 | of posting them here. | ||
| 695 | |||
| 696 | See section '* General Information about help-* lists'. | ||
| 697 | |||
| 698 | * bug-rcs-request@gnu.org to subscribe to bug-rcs | ||
| 699 | ** gnUSENET newsgroup: NONE | ||
| 700 | ** RCS bug reports to: bug-rcs@gnu.org | ||
| 701 | |||
| 702 | This list distributes, to the active maintainers of RCS | ||
| 703 | bug reports and fixes for, and suggestions for improvements | ||
| 704 | in RCS. User discussion of RCS bugs occurs here. | ||
| 705 | |||
| 706 | See section '* General Information about bug-* lists and reporting | ||
| 707 | program bugs'. | ||
| 708 | |||
| 709 | * help-rcs-request@gnu.org to subscribe to help-rcs | ||
| 710 | ** gnUSENET newsgroup: NONE | ||
| 711 | ** Send contributions to: help-rcs@gnu.org | ||
| 712 | |||
| 713 | This list is the place for users and installers of RCS | ||
| 714 | to ask for help. Please send bug reports to bug-rcs instead | ||
| 715 | of posting them here. | ||
| 716 | |||
| 717 | See section '* General Information about help-* lists'. | ||
| 718 | |||
| 719 | * bug-gcc-request@gnu.org to subscribe to bug-gcc | ||
| 720 | ** gnUSENET newsgroup: gnu.gcc.bug | ||
| 721 | ** GCC bug reports to: bug-gcc@gnu.org | ||
| 722 | |||
| 723 | This list distributes bug reports for, fixes for bugs in, and | ||
| 724 | suggestions for improvements in the GNU C Compiler to its active | ||
| 725 | developers. | ||
| 726 | |||
| 727 | Please don't send in a patch without a test case to illustrate the | ||
| 728 | problem the patch is supposed to fix. Sometimes the patches aren't | ||
| 729 | correct or aren't the best way to do the job, and without a test case | ||
| 730 | there is no way to debug an alternate fix. | ||
| 731 | |||
| 732 | The most convenient form of test case is a piece of cpp output that can | ||
| 733 | be passed directly to cc1. Preferably written in C, not C++ or | ||
| 734 | Objective C. | ||
| 735 | |||
| 736 | Subscribers to bug-gcc get all info-gcc messages. | ||
| 737 | |||
| 738 | See section '* General Information about bug-* lists and reporting | ||
| 739 | program bugs'. | ||
| 740 | |||
| 741 | * help-gcc-request@gnu.org to subscribe to help-gcc | ||
| 742 | ** gnUSENET newsgroup: gnu.gcc.help | ||
| 743 | ** Send contributions to: help-gcc@gnu.org | ||
| 744 | |||
| 745 | This list is the place for users and installers of the GNU C Compiler to | ||
| 746 | ask for help. | ||
| 747 | |||
| 748 | If gcc crashes, or if you build gcc following the standard procedure on | ||
| 749 | a system which gcc is supposed to work on (see config.sub) and it does | ||
| 750 | not work at all, or if an command line option does not behave as it is | ||
| 751 | documented to behave, this is a bug. Don't send bug reports to help-gcc | ||
| 752 | (gnu.gcc.help); mail them to bug-gcc@gnu.org instead. | ||
| 753 | |||
| 754 | See section '* General Information about help-* lists'. | ||
| 755 | |||
| 756 | * info-gcc-request@gnu.org to subscribe to info-gcc | ||
| 757 | ** gnUSENET newsgroup: gnu.gcc.announce | ||
| 758 | ** Send announcements to: info-gcc@gnu.org | ||
| 759 | |||
| 760 | This list distributes announcements and progress reports on the GNU C | ||
| 761 | Compiler. It is NOT for general discussion; please use help-gcc for | ||
| 762 | that. | ||
| 763 | |||
| 764 | The list is filtered to remove items meant for info-gcc-request, that | ||
| 765 | can be answered by the moderator without bothering the list, or should | ||
| 766 | have been sent to another list. | ||
| 767 | |||
| 768 | See section '* General Information about info-* lists'. | ||
| 769 | |||
| 770 | * bug-gnu960-request@ichips.intel.com to subscribe to bug-gnu960 | ||
| 771 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 772 | ** Intel 960 Port bug reports to: bug-gnu960@ichips.intel.com | ||
| 773 | |||
| 774 | This list distributes bug reports for, fixes for bugs in, and | ||
| 775 | suggestions for improvements in Intel's port of GNU software to the | ||
| 776 | Intel 960 microprocessor. | ||
| 777 | |||
| 778 | You can also fax to: GNU/960 - 1-503-696-4930. | ||
| 779 | |||
| 780 | There are no other GNU mailing lists or gnUSENET newsgroups for Intel's | ||
| 781 | port of GNU software to the Intel 960 microprocessor. | ||
| 782 | |||
| 783 | See section '* General Information about bug-* lists and reporting | ||
| 784 | program bugs'. | ||
| 785 | |||
| 786 | * bug-glibc-request@gnu.org to subscribe to bug-glibc | ||
| 787 | ** gnUSENET newsgroup: gnu.glibc.bug | ||
| 788 | ** GNU C Library bug reports to: bug-glibc@gnu.org | ||
| 789 | |||
| 790 | This list distributes, to the active maintainers of glibc (GNU's C | ||
| 791 | library), bug reports and fixes for, and suggestions for improvements in | ||
| 792 | glibc. User discussion of glibc also occurs here. | ||
| 793 | |||
| 794 | Announcements of new releases of glibc are made on both info-gcc and | ||
| 795 | bug-glibc. | ||
| 796 | |||
| 797 | There are no other GNU mailing lists or gnUSENET newsgroups for the GNU | ||
| 798 | C Library. | ||
| 799 | |||
| 800 | See section '* General Information about bug-* lists and reporting | ||
| 801 | program bugs'. | ||
| 802 | |||
| 803 | * bug-g++-request@gnu.org to subscribe to bug-g++ | ||
| 804 | ** gnUSENET newsgroup: gnu.g++.bug | ||
| 805 | ** G++ bug reports to: bug-g++@gnu.org | ||
| 806 | |||
| 807 | This list distributes bug reports for, fixes for bugs in, and | ||
| 808 | suggestions for improvements in the GNU C++ Compiler to its active | ||
| 809 | developers. | ||
| 810 | |||
| 811 | G++ uses the GNU C-Compiler back end. Active developers may wish to | ||
| 812 | subscribe to bug-gcc@gnu.org as well. | ||
| 813 | |||
| 814 | Subscribers to bug-g++ get all info-g++ messages. | ||
| 815 | |||
| 816 | See section '* General Information about bug-* lists and reporting | ||
| 817 | program bugs'. | ||
| 818 | |||
| 819 | * help-g++-request@gnu.org to subscribe to help-g++ | ||
| 820 | ** gnUSENET newsgroup: gnu.g++.help (and one-way into comp.lang.c++) | ||
| 821 | ** Send contributions to: help-g++@gnu.org | ||
| 822 | |||
| 823 | This list is the place for users and installers of the GNU C++ Compiler | ||
| 824 | to ask for help. Please send bug reports to bug-g++@gnu.org | ||
| 825 | instead of posting them here. | ||
| 826 | |||
| 827 | help-g++ is also gated one way to USENET's newsgroup comp.lang.c++. | ||
| 828 | This one-way gating is done for users whose sites get comp.lang.c++, but | ||
| 829 | not gnu.g++.help. | ||
| 830 | |||
| 831 | See section '* General Information about help-* lists'. | ||
| 832 | |||
| 833 | * info-g++-request@gnu.org to subscribe to info-g++ | ||
| 834 | ** gnUSENET newsgroup: gnu.g++.announce (and one-way into comp.lang.c++) | ||
| 835 | ** Send announcements to: info-g++@gnu.org | ||
| 836 | |||
| 837 | This list distributes announcements and progress reports on the GNU C++ | ||
| 838 | Compiler. It is NOT for general discussion; please use help-g++ for | ||
| 839 | that. | ||
| 840 | |||
| 841 | The list is filtered to remove items meant for info-g++-request, that | ||
| 842 | can be answered by the moderator without bothering the list, or should | ||
| 843 | have been sent to another list. | ||
| 844 | |||
| 845 | It is also gated one way to USENET's newsgroup comp.lang.c++. This | ||
| 846 | one-way gating is done for users whose sites get comp.lang.c++, but not | ||
| 847 | gnu.g++.announce. | ||
| 848 | |||
| 849 | Do not report g++ bugs to info-g++ or comp.lang.c++, mail them to | ||
| 850 | bug-g++@gnu.org instead. | ||
| 851 | |||
| 852 | See section '* General Information about info-* lists'. | ||
| 853 | |||
| 854 | * bug-lib-g++-request@gnu.org to subscribe to bug-lib-g++ | ||
| 855 | ** gnUSENET newsgroup: gnu.g++.lib.bug | ||
| 856 | ** lib-g++ bug reports to: bug-lib-g++@gnu.org | ||
| 857 | |||
| 858 | This list distributes, to the active maintainers of libg++ (GNU's | ||
| 859 | library for C++), bug reports and fixes for, and suggestions for | ||
| 860 | improvements in lib-g++. User discussion of libg++ also occurs here. | ||
| 861 | |||
| 862 | Announcements of new releases of libg++ are made on both info-g++ and | ||
| 863 | bug-lib-g++. | ||
| 864 | |||
| 865 | There are no other GNU mailing lists or gnUSENET newsgroups for GNU's | ||
| 866 | G++ Library. | ||
| 867 | |||
| 868 | See section '* General Information about bug-* lists and reporting | ||
| 869 | program bugs'. | ||
| 870 | |||
| 871 | * info-gnu-fortran-request@gnu.org to subscribe to info-gnu-fortran | ||
| 872 | ** gnUSENET newsgroup: NONE YET | ||
| 873 | ** Send announcements to: info-gnu-fortran@gnu.org | ||
| 874 | |||
| 875 | This list is for progress reports and release notices for G77/GNU | ||
| 876 | Fortran. | ||
| 877 | |||
| 878 | The list is filtered to remove items meant for info-gnu-fortran-request, | ||
| 879 | that can be answered by the moderator without bothering the list, or that | ||
| 880 | should have been sent to another list. | ||
| 881 | |||
| 882 | People on the Internet can get a current status report by fingering the | ||
| 883 | address fortran@gnu.org or by looking at the GNU Fortran web pages at | ||
| 884 | http://www.gnu.org/software/fortran/fortran.html. | ||
| 885 | |||
| 886 | Users looking for help should ask the help-gnu-fortran@gnu.org list. | ||
| 887 | Bug reports should go to bug-gnu-fortran@gnu.org. | ||
| 888 | |||
| 889 | See section '* General Information about info-* lists'. | ||
| 890 | |||
| 891 | * help-gnu-fortran-request@gnu.org to subscribe to help-gnu-fortran | ||
| 892 | ** gnUSENET newsgroup: NONE YET | ||
| 893 | ** Send messages to: help-gnu-fortran@gnu.org | ||
| 894 | |||
| 895 | This list is for user requests for help and discussion about GNU | ||
| 896 | Fortran (G77). Bug reports should go to bug-gnu-fortran@gnu.org. | ||
| 897 | |||
| 898 | See section '* General Information about help-* lists'. | ||
| 899 | |||
| 900 | * bug-gnu-fortran@@gnu.org to subscribe to bug-gnu-fortran | ||
| 901 | ** gnUSENET newsgroup: NONE YET | ||
| 902 | ** Send messages to: help-gnu-fortran@gnu.org | ||
| 903 | |||
| 904 | This list is for bug-reports and patches for GNU Fortran | ||
| 905 | (G77). Requests for help should go to help-gnu-fortran@gnu.org. | ||
| 906 | |||
| 907 | See section '* General Information about bug-* lists and reporting | ||
| 908 | program bugs'. | ||
| 909 | |||
| 910 | * bug-oleo-request@gnu.org to subscribe to bug-oleo | ||
| 911 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 912 | ** Oleo bug reports to: bug-oleo@gnu.org | ||
| 913 | |||
| 914 | This list distributes, to the active maintainers of Oleo (the GNU | ||
| 915 | spreadsheet), bug reports and fixes for, and suggestions for | ||
| 916 | improvements to Oleo. User discussion of Oleo also occurs here. | ||
| 917 | |||
| 918 | There are no other GNU mailing lists or gnUSENET newsgroups for Oleo. | ||
| 919 | |||
| 920 | See section '* General Information about bug-* lists and reporting | ||
| 921 | program bugs'. | ||
| 922 | |||
| 923 | * bug-gmp-request@gnu.org to subscribe to bug-gmp | ||
| 924 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 925 | ** gmp bug reports to: bug-gmp@gnu.org | ||
| 926 | |||
| 927 | This list distributes, to the active maintainers of gmp (the GNU | ||
| 928 | Multiple Precision Library), bug reports and fixes for, and suggestions | ||
| 929 | for improvements to gmp. User discussion of gmp also occurs here. | ||
| 930 | |||
| 931 | There are no other GNU mailing lists or gnUSENET newsgroups for gmp . | ||
| 932 | |||
| 933 | See section '* General Information about bug-* lists and reporting | ||
| 934 | program bugs'. | ||
| 935 | |||
| 936 | * bug-panorama-request@gnu.org to subscribe to bug-panorama | ||
| 937 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 938 | ** panorama bug reports to: bug-panorama@gnu.org | ||
| 939 | |||
| 940 | This list is a place for users of Panorama to send bug reports, fixes | ||
| 941 | for them, and suggestions for improvements. | ||
| 942 | |||
| 943 | See section '* General Information about bug-* lists and reporting | ||
| 944 | program bugs'. | ||
| 945 | |||
| 946 | * help-panorama-request@gnu.org to subscribe to help-panorama | ||
| 947 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 948 | ** articles to: help-panorama@gnu.org | ||
| 949 | |||
| 950 | This list is the place for users and installers of Panorama to ask for | ||
| 951 | help. Please send bug reports to bug-panorama instead of posting them | ||
| 952 | here. | ||
| 953 | |||
| 954 | * devel-panorama-request@gnu.org to subscribe to devel-panorama | ||
| 955 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 956 | ** articles to: devel-panorama@gnu.org | ||
| 957 | |||
| 958 | This list is a place for discussion among active developers of Panorama | ||
| 959 | API or any of its plugins. | ||
| 960 | |||
| 961 | * bug-mana-request@gnu.org to subscribe to bug-mana | ||
| 962 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 963 | ** mana bug reports to: bug-mana@gnu.org | ||
| 964 | |||
| 965 | This list distributes, to the active maintainers of mana (the GNU | ||
| 966 | stand-alone mail reader), bug reports and fixes for, and suggestions | ||
| 967 | for improvements to mana. User discussion of mana also occurs here. | ||
| 968 | |||
| 969 | There are no other GNU mailing lists or gnUSENET newsgroups for mana. | ||
| 970 | |||
| 971 | See section '* General Information about bug-* lists and reporting | ||
| 972 | program bugs'. | ||
| 973 | |||
| 974 | * bug-zebra-request@gnu.org to subscribe to bug-zebra | ||
| 975 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 976 | ** zebra bug reports to: bug-zebra@gnu.org | ||
| 977 | |||
| 978 | This list distributes, to the active maintainers of zebra (a GPLed | ||
| 979 | program to manage TCP/IP based routing protocols), bug reports, bug fixes, | ||
| 980 | and suggestions for improvements to zebra. User discussion of zebra | ||
| 981 | also occurs here. | ||
| 982 | |||
| 983 | There are no other GNU mailing lists or gnUSENET newsgroups for zebra. | ||
| 984 | |||
| 985 | See section '* General Information about bug-* lists and reporting | ||
| 986 | program bugs'. | ||
| 987 | |||
| 988 | * bug-cfengine-request@gnu.org to subscribe to bug-cfengine | ||
| 989 | ** gnUSENET newsgroup: gnu.cfengine.bug | ||
| 990 | ** cfengine bug reports to: bug-cfengine@gnu.org | ||
| 991 | |||
| 992 | This list distributes, to the active maintainers of cfengine (configure | ||
| 993 | BSD and System-5-like operating systems attached to a TCP/IP network), | ||
| 994 | bug reports and fixes for, and suggestions for improvements to cfengine. | ||
| 995 | User discussion of cfengine also occurs here. | ||
| 996 | |||
| 997 | See section '* General Information about bug-* lists and reporting | ||
| 998 | program bugs'. | ||
| 999 | |||
| 1000 | * help-cfengine-request@gnu.org to subscribe to help-cfengine | ||
| 1001 | ** gnUSENET newsgroup: gnu.cfengine.help | ||
| 1002 | ** Send contributions to: help-cfengine@gnu.org | ||
| 1003 | |||
| 1004 | This list is the place for users and installers of cfengine to ask for | ||
| 1005 | help. Please send bug reports to bug-cfengine instead of posting them | ||
| 1006 | here. | ||
| 1007 | |||
| 1008 | This list is also used for announcements about cfengine and related | ||
| 1009 | programs, and small but important patches. Announcements of cfengine | ||
| 1010 | releases are also made to info-gnu@gnu.org (see above) | ||
| 1011 | |||
| 1012 | Since help-cfengine is a large list, send it only those items that | ||
| 1013 | are seriously important to many people. | ||
| 1014 | |||
| 1015 | If source or patches that were previously posted or a simple fix is | ||
| 1016 | requested in help-cfengine, please mail it to the requester. Do NOT | ||
| 1017 | repost it. If you also want something that is requested, send mail to | ||
| 1018 | the requester asking him to forward it to you. This kind of traffic is | ||
| 1019 | best handled by e-mail, not a broadcast medium that reaches millions of | ||
| 1020 | sites. | ||
| 1021 | |||
| 1022 | See section '* General Information about help-* lists'. | ||
| 1023 | Also see section '* General Information about info-* lists'. | ||
| 1024 | |||
| 1025 | * bug-gnu-smalltalk-request@gnu.org to subscribe to bug-gnu-smalltalk | ||
| 1026 | ** gnUSENET newsgroup: gnu.smalltalk.bug | ||
| 1027 | ** GNU Smalltalk bug reports to: bug-gnu-smalltalk@gnu.org | ||
| 1028 | |||
| 1029 | GNU Smalltalk is the GNU project implementation of the Smalltalk language. | ||
| 1030 | |||
| 1031 | This list distributes, to the active maintainers of GNU Smalltalk, bug | ||
| 1032 | reports and fixes for, and suggestions for improvements to GNU | ||
| 1033 | Smalltalk. User discussion of GNU Smalltalk also occurs here. | ||
| 1034 | |||
| 1035 | For now, new releases of GNU Smalltalk will also be announced on this list. | ||
| 1036 | |||
| 1037 | There are no other GNU mailing lists or gnUSENET newsgroups for GNU | ||
| 1038 | Smalltalk. | ||
| 1039 | |||
| 1040 | See section '* General Information about bug-* lists and reporting | ||
| 1041 | program bugs'. | ||
| 1042 | |||
| 1043 | * st-next-request@laplace.eng.sun.com to subscribe to st-next | ||
| 1044 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1045 | ** Send contributions to: st-next@laplace.eng.sun.com | ||
| 1046 | |||
| 1047 | For people interested in working on GNU Smalltalk on the NeXT. | ||
| 1048 | |||
| 1049 | * bug-groff-request@gnu.org to subscribe to bug-groff | ||
| 1050 | ** gnUSENET newsgroup: gnu.groff.bug | ||
| 1051 | ** GNU groff bug reports to: bug-groff@gnu.org | ||
| 1052 | |||
| 1053 | groff is the GNU project implementation, in C++, of the traditional Unix | ||
| 1054 | document formatting tools. | ||
| 1055 | |||
| 1056 | This list distributes, to the active maintainers of groff, bug reports | ||
| 1057 | and fixes for, and suggestions for improvements to groff (and it | ||
| 1058 | component programs). User discussion of groff also occurs here. | ||
| 1059 | |||
| 1060 | For now, new releases of groff will also be announced on this list. | ||
| 1061 | |||
| 1062 | There are no other GNU mailing lists or gnUSENET newsgroups for groff. | ||
| 1063 | |||
| 1064 | See section '* General Information about bug-* lists and reporting | ||
| 1065 | program bugs'. | ||
| 1066 | |||
| 1067 | * bug-ghostscript-request@gnu.org to subscribe to bug-ghostscript | ||
| 1068 | ** gnUSENET newsgroup: gnu.ghostscript.bug | ||
| 1069 | ** Ghostscript bug reports to: bug-ghostscript@gnu.org | ||
| 1070 | |||
| 1071 | Ghostscript is the GNU project implementation of a language and graphics | ||
| 1072 | library with a remarkable similarity to PostScript. | ||
| 1073 | |||
| 1074 | This list distributes, to the active maintainers of Ghostscript, bug | ||
| 1075 | reports and fixes for, and suggestions for improvements in Ghostscript. | ||
| 1076 | |||
| 1077 | For now, new releases of Ghostscript will also be announced on this list. | ||
| 1078 | |||
| 1079 | There are no other GNU mailing lists or gnUSENET newsgroups for | ||
| 1080 | Ghostscript. | ||
| 1081 | |||
| 1082 | See section '* General Information about bug-* lists and reporting | ||
| 1083 | program bugs'. | ||
| 1084 | |||
| 1085 | * bug-gnu-utils-request@gnu.org to subscribe to bug-gnu-utils | ||
| 1086 | ** gnUSENET newsgroup: gnu.utils.bug | ||
| 1087 | ** GNU Utilities bug reports to: bug-gnu-utils@gnu.org | ||
| 1088 | |||
| 1089 | This list distributes, to the active maintainers of these programs, bug | ||
| 1090 | reports and fixes for, and suggestions for improvements in GNU programs | ||
| 1091 | not covered by other bug-* mailing lists/gnu.*.bug newsgroups. | ||
| 1092 | |||
| 1093 | See section '* General Information about bug-* lists and reporting | ||
| 1094 | program bugs'. | ||
| 1095 | |||
| 1096 | * help-gnu-utils-request@gnu.org to subscribe to help-gnu-utils | ||
| 1097 | ** gnUSENET newsgroup: gnu.utils.help | ||
| 1098 | ** Send contributions to: help-gnu-utils@gnu.org | ||
| 1099 | |||
| 1100 | This list is the place for users and installers of GNU programs not | ||
| 1101 | covered by other GNU mailing lists/gnu.* newsgroups to ask for help. | ||
| 1102 | |||
| 1103 | Don't send bug reports to help-gnu-utils (gnu.utils.help); mail them to | ||
| 1104 | bug-gnu-utils@gnu.org instead. | ||
| 1105 | |||
| 1106 | See section '* General Information about help-* lists'. | ||
| 1107 | |||
| 1108 | * info-gnu-utils-request@gnu.org IS NOW DEFUNCT | ||
| 1109 | ** a gnUSENET newsgroup bever existed | ||
| 1110 | ** DEAD address: info-gnu-utils@gnu.org | ||
| 1111 | |||
| 1112 | This list is dead. Announcements about GNU Utilities will be made to the | ||
| 1113 | list info-gnu@gnu.org (see above). | ||
| 1114 | |||
| 1115 | * info-cvs-request@gnu.org to subscribe to info-cvs. | ||
| 1116 | ** USENET newsgroup: (none) | ||
| 1117 | ** CVS discussions/questions to: info-cvs@gnu.org | ||
| 1118 | |||
| 1119 | This list is for discussion and dissemination of information about | ||
| 1120 | CVS. Please check the FAQ before posting questions, however. | ||
| 1121 | |||
| 1122 | * bug-cvs-request@gnu.org to subscribe to bug-cvs. | ||
| 1123 | ** USENET newsgroup: (none) | ||
| 1124 | ** CVS bug reports to: bug-cvs@gnu.org | ||
| 1125 | |||
| 1126 | This list distributes bug reports, fixes, and suggestions for | ||
| 1127 | improvements to the maintainers of CVS. | ||
| 1128 | |||
| 1129 | * bug-dr-geo-request@gnu.org to subscribe to bug-dr-geo | ||
| 1130 | ** gnUSENET newsgroup: NONE | ||
| 1131 | ** Dr. Geo bug reports to: bug-dr-geo@gnu.org | ||
| 1132 | |||
| 1133 | This list distributes bug reports for, fixes for bugs in, and | ||
| 1134 | suggestions for improvements in Dr. Geo to its active developers. | ||
| 1135 | |||
| 1136 | See section '* General Information about bug-* lists and reporting | ||
| 1137 | program bugs'. | ||
| 1138 | |||
| 1139 | * bug-fortran-mode-request@erl.mit.edu to subscribe to bug-fortran-mode | ||
| 1140 | ** USENET newsgroup: (none) | ||
| 1141 | ** Fortran mode bug reports to: bug-fortran-mode@erl.mit.edu | ||
| 1142 | |||
| 1143 | This list collects bug reports, fixes for bugs, and suggestions for | ||
| 1144 | improvements in GNU Emacs's Fortran mode (a major mode to support | ||
| 1145 | editing Fortran source code). | ||
| 1146 | |||
| 1147 | It is the place to report Fortran mode bugs by all users of Fortran | ||
| 1148 | mode. | ||
| 1149 | |||
| 1150 | Always report the version number Fortran mode reports on startup as well | ||
| 1151 | as the version of Emacs. | ||
| 1152 | |||
| 1153 | There is no info-fortran-mode list. There are no USENET gateways to | ||
| 1154 | bug-fortran-mode at this time. | ||
| 1155 | |||
| 1156 | * info-gnus-request@flab.fujitsu.co.jp to subscribe | ||
| 1157 | ** gnUSENET newsgroup: NONE YET | ||
| 1158 | ** Send contributions to: info-gnus@flab.fujitsu.co.jp | ||
| 1159 | |||
| 1160 | The list is intended to exchange useful information about GNUS, such as | ||
| 1161 | bug reports, useful hooks, and extensions of GNUS. GNUS is an NNTP-base | ||
| 1162 | network news reader for GNU Emacs (which also works with a news spool). | ||
| 1163 | English and Japanese are the official languages of the list. GNUS is | ||
| 1164 | quite different than gnews. | ||
| 1165 | |||
| 1166 | * info-gnus-english-request@gnu.org to subscribe | ||
| 1167 | ** gnUSENET newsgroup: gnu.emacs.gnus | ||
| 1168 | ** Send contributions to: info-gnus-english@gnu.org | ||
| 1169 | |||
| 1170 | The list has the same charter as info-gnus. The difference is that | ||
| 1171 | English is the only official language of the list. | ||
| 1172 | |||
| 1173 | info-gnus-english/gnu.emacs.gnus is forward to info-gnus, but NOT | ||
| 1174 | vice-versa. | ||
| 1175 | |||
| 1176 | * info-gnews-request@ics.uci.edu to subscribe to info-gnews | ||
| 1177 | ** gnUSENET newsgroup: gnu.emacs.gnews | ||
| 1178 | ** Send contributions to: info-gnews@ics.uci.edu | ||
| 1179 | |||
| 1180 | This newsgroup is intended to exchange useful information about gnews, | ||
| 1181 | such as bug reports, useful hooks, and extensions of gnews. gnews is an | ||
| 1182 | NNTP-base network news reader for GNU Emacs (which also works a news | ||
| 1183 | spool). It is quite different than GNUS. | ||
| 1184 | |||
| 1185 | * gnu-emacs-ada-request@grebyn.com to subscribe to gnu-emacs-ada | ||
| 1186 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1187 | ** Gnu Emacs Ada support bug reports to: gnu-emacs-ada@grebyn.com | ||
| 1188 | |||
| 1189 | This list distributes bug reports for, fixes for bugs in, and | ||
| 1190 | suggestions for improvements in GNU Emacs' editing support of the Ada | ||
| 1191 | programming language. | ||
| 1192 | |||
| 1193 | There are no other GNU mailing lists or gnUSENET newsgroups for GNU | ||
| 1194 | Emacs' editing support of Ada. | ||
| 1195 | |||
| 1196 | See section '* General Information about bug-* lists and reporting | ||
| 1197 | program bugs'. | ||
| 1198 | |||
| 1199 | * bug-vm-request@uunet.uu.net to subscribe to bug-vm | ||
| 1200 | ** gnUSENET newsgroup: gnu.emacs.vm.bug | ||
| 1201 | ** VM mail reader bug reports to: bug-vm@uunet.uu.net | ||
| 1202 | |||
| 1203 | This list discusses bugs in View Mail mode for GNU Emacs, with an | ||
| 1204 | emphasis on beta and prerelease versions. | ||
| 1205 | |||
| 1206 | Always report the version number of VM you are using, as well as the | ||
| 1207 | version of Emacs you're running. If you believe it is significant, | ||
| 1208 | report the operating system used and the hardware. | ||
| 1209 | |||
| 1210 | Subscribers to bug-vm get all info-vm messages. | ||
| 1211 | |||
| 1212 | * info-vm-request@uunet.uu.net to subscribe to info-vm | ||
| 1213 | ** gnUSENET newsgroup: gnu.emacs.vm.info | ||
| 1214 | ** Send contributions to: info-vm@uunet.uu.net | ||
| 1215 | |||
| 1216 | This list discusses the View Mail mode for GNU Emacs, an alternative to | ||
| 1217 | rmail mode. | ||
| 1218 | |||
| 1219 | * supercite-request@warsaw.nlm.nih.gov to subscribe to supercite | ||
| 1220 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1221 | ** Send articles to: supercite@warsaw.nlm.nih.gov | ||
| 1222 | *** UUCP: ..!uunet!warsaw.nlm.nih.gov!supercite-request | ||
| 1223 | |||
| 1224 | The supercite mailing list covers issues related to the advanced | ||
| 1225 | mail/news citation package called Supercite for GNU Emacs. | ||
| 1226 | |||
| 1227 | * auc-tex-request@sunsite.dk to subscribe | ||
| 1228 | ** USENET newsgroup: NONE YET | ||
| 1229 | ** Send contributions to: auc-tex@sunsite.dk | ||
| 1230 | |||
| 1231 | The list is intended to exchange information about AUCTeX, such as | ||
| 1232 | bug reports, request for help, and information on current | ||
| 1233 | developments. AUCTeX is a much enhanced TeX/LaTeX/ConTeXt/Texinfo mode | ||
| 1234 | for GNU Emacs. | ||
| 1235 | |||
| 1236 | The list is unmoderated. | ||
| 1237 | |||
| 1238 | * bug-gnu-chess-request@gnu.org to subscribe to bug-gnu-chess | ||
| 1239 | ** gnUSENET newsgroup: gnu.chess.bug | ||
| 1240 | ** GNU Chess bug reports to: bug-gnu-chess@gnu.org | ||
| 1241 | |||
| 1242 | This list directly accesses the GNU Chess developer's group. If you | ||
| 1243 | have a *BUG* to report about the program, which can also include a | ||
| 1244 | feature enhancement request, please send it to this list. | ||
| 1245 | |||
| 1246 | Subscribers to bug-gnu-chess get all info-gnu-chess messages. | ||
| 1247 | |||
| 1248 | See section '* General Information about bug-* lists and reporting | ||
| 1249 | program bugs'. | ||
| 1250 | |||
| 1251 | * help-gnu-chess-request@gnu.org IS NOW DEFUNCT | ||
| 1252 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1253 | ** DEAD address: help-gnu-chess@gnu.org | ||
| 1254 | |||
| 1255 | This list is dead. Use info-gnu-chess@gnu.org/gnu.chess instead. | ||
| 1256 | |||
| 1257 | * info-gnu-chess-request@gnu.org to subscribe to info-gnu-chess | ||
| 1258 | ** gnUSENET newsgroup: gnu.chess | ||
| 1259 | ** Send contributions to: info-gnu-chess@gnu.org | ||
| 1260 | ** FAQ-URL: http://www.tim-mann.org/chess.html | ||
| 1261 | ** FAQ-Archive-name: games/chess/gnu-faq | ||
| 1262 | ** FAQ-Posting-frequency: monthly | ||
| 1263 | |||
| 1264 | This list is the place for users and installers of GNU Chess to ask for | ||
| 1265 | help. This list is also used for games played by people or other | ||
| 1266 | entities against the program, and other generalized non-bug, | ||
| 1267 | non-enhancement data. Please send bug reports to bug-gnu-chess instead | ||
| 1268 | of posting them here. | ||
| 1269 | |||
| 1270 | This list is also used for announcements about GNU Chess and related | ||
| 1271 | programs, and small but important patches. Announcements of GNU Chess | ||
| 1272 | releases are also made to info-gnu@gnu.org (see above) | ||
| 1273 | |||
| 1274 | Since info-gnu-chess is a large list, send it only those items that | ||
| 1275 | are seriously important to many people. | ||
| 1276 | |||
| 1277 | If source or patches that were previously posted or a simple fix is | ||
| 1278 | requested in info-gnu-chess, please mail it to the requester. Do NOT | ||
| 1279 | repost it. If you also want something that is requested, send mail to | ||
| 1280 | the requester asking him to forward it to you. This kind of traffic is | ||
| 1281 | best handled by e-mail, not a broadcast medium that reaches millions of | ||
| 1282 | sites. | ||
| 1283 | |||
| 1284 | See section '* General Information about help-* lists'. | ||
| 1285 | Also see section '* General Information about info-* lists'. | ||
| 1286 | |||
| 1287 | * bug-gnu-shogi-request@gnu.org to subscribe to bug-gnu-shogi | ||
| 1288 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1289 | ** GNU Shogi bug reports to: bug-gnu-shogi@gnu.org | ||
| 1290 | |||
| 1291 | This list directly accesses the GNU Shogi developer's group. If you | ||
| 1292 | have a *BUG* to report about the program, which can also include a | ||
| 1293 | feature enhancement request, please send it to this list. | ||
| 1294 | |||
| 1295 | Subscribers to bug-gnu-shogi get all info-gnu-shogi messages. | ||
| 1296 | |||
| 1297 | See section '* General Information about bug-* lists and reporting | ||
| 1298 | program bugs'. | ||
| 1299 | |||
| 1300 | Shogi is a game something like chess. There are several different types | ||
| 1301 | of pieces, a board that is 9 by 9 squares, and the modification that a | ||
| 1302 | captured piece can be reintroduced on the board by the capturing player | ||
| 1303 | (and used). Due to this last difference from Western chess, a Shogi | ||
| 1304 | game never simplifies. | ||
| 1305 | |||
| 1306 | * bug-mcsim-request@gnu.org to subscribe to bug-mcsim | ||
| 1307 | ** gnUSENET newsgroup: None at present. | ||
| 1308 | ** MCSim bug reports to: bug-mcsim@gnu.org | ||
| 1309 | |||
| 1310 | This list is used for bug reports concerning MCSim, a general- | ||
| 1311 | purpose modeling and simulation program. It is also for user | ||
| 1312 | discussion of bug fixes and patches. | ||
| 1313 | |||
| 1314 | This list is unmoderated. | ||
| 1315 | |||
| 1316 | See section '* General Information about bug-* lists and reporting | ||
| 1317 | program bugs'. | ||
| 1318 | |||
| 1319 | * help-mcsim-request@gnu.org to subscribe to help-mcsim | ||
| 1320 | ** gnUSENET newsgroup: None at present. | ||
| 1321 | ** Send contributions to: help-mcsim@gnu.org | ||
| 1322 | |||
| 1323 | This list is the place for users and installers of MCSim to ask for | ||
| 1324 | help. Please send bug reports to bug-mcsim instead of posting them | ||
| 1325 | here. | ||
| 1326 | |||
| 1327 | This list is also used for announcements about MCSim and related | ||
| 1328 | programs, and small but important patches. Announcements of MCSim | ||
| 1329 | releases are also made to info-gnu@gnu.org (see above) | ||
| 1330 | |||
| 1331 | * bug-m4-request@gnu.org to subscribe to bug-m4 | ||
| 1332 | ** gnUSENET newsgroup: None at present. | ||
| 1333 | ** Send contributions to: bug-m4@gnu.org | ||
| 1334 | |||
| 1335 | This list is used for bug reports concerning m4, the GNU implementation | ||
| 1336 | of the traditional Unix macro processor. It is also for user | ||
| 1337 | discussion of bug fixes and patches. | ||
| 1338 | |||
| 1339 | This list is unmoderated. | ||
| 1340 | |||
| 1341 | * gpc-request@gnu.de to subscribe to gpc | ||
| 1342 | ** gnUSENET newsgroup: None at present. | ||
| 1343 | ** Send contributions to: gpc@gnu.de | ||
| 1344 | |||
| 1345 | This list is the user mailing list for GNU Pascal. | ||
| 1346 | *NOTE* This list was formerly at gpc@hut.fi, and moved as of 1999-05-13. | ||
| 1347 | Announcements will now be sent to an announcements list (see next entry) | ||
| 1348 | as well as to this list and info-gnu@gnu.org. | ||
| 1349 | |||
| 1350 | * gpc-announce-request@gnu.de to subscribe to gpc-announce | ||
| 1351 | ** gnUSENET newsgroup: None at present. | ||
| 1352 | ** Send contributions to: gpc-announce@gnu.de | ||
| 1353 | |||
| 1354 | This list will have announcements to interest to users of GNU Pascal, | ||
| 1355 | including new releases. | ||
| 1356 | |||
| 1357 | * autoconf-request@gnu.org to subscribe to automake | ||
| 1358 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1359 | ** Send contributions to: autoconf@gnu.org | ||
| 1360 | |||
| 1361 | The list can be used to discuss the autoconf build system and related | ||
| 1362 | tools (eg config.guess). The discussion can range from simple "how-to" | ||
| 1363 | questions up to patches and future directions for this tool. | ||
| 1364 | |||
| 1365 | * automake-request@gnu.org to subscribe to automake | ||
| 1366 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1367 | ** Send contributions to: automake@gnu.org | ||
| 1368 | |||
| 1369 | The list can be used to discuss automake and related tools (eg libtool). | ||
| 1370 | The discussion can range from simple "how-to" questions up to patches | ||
| 1371 | and configuration philosophy. | ||
| 1372 | |||
| 1373 | * libtool-request@gnu.org to subscribe to libtool | ||
| 1374 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1375 | ** Send contributions to: libtool@gnu.org | ||
| 1376 | |||
| 1377 | The list can be used to discuss development and porting of libtool, and | ||
| 1378 | anything else that the libtool developers might find interesting (excepting | ||
| 1379 | bug-reports which have a list of their own). | ||
| 1380 | |||
| 1381 | This list is unmoderated. | ||
| 1382 | |||
| 1383 | * bug-libtool-request@gnu.org to subscribe to bug-libtool | ||
| 1384 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1385 | ** Send contributions to: bug-libtool@gnu.org | ||
| 1386 | |||
| 1387 | The list can be used to submit and to discuss bugs in libtool. The | ||
| 1388 | discussion can range from bug reports and patches themselves to discourse | ||
| 1389 | related to specific bugs and patches. | ||
| 1390 | |||
| 1391 | This list is unmoderated. | ||
| 1392 | |||
| 1393 | * libtool-commit-request@gnu.org to subscribe to libtool | ||
| 1394 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1395 | ** Send contributions to: libtool-commit@gnu.org | ||
| 1396 | |||
| 1397 | The list distributes automatic reports of cvs commits to the libtool | ||
| 1398 | development sources to the list subscribers. Probably, any discussion | ||
| 1399 | related to these automatic submissions should go to the libtool list which | ||
| 1400 | has more subscribers who will see the submission. | ||
| 1401 | |||
| 1402 | This list is unmoderated. | ||
| 1403 | |||
| 1404 | * bug-a2ps-request@gnu.org to subscribe to bug-a2ps | ||
| 1405 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1406 | ** Send contributions to: bug-a2ps@gnu.org | ||
| 1407 | |||
| 1408 | This list is used for bug reports concerning GNU a2ps, an Any to | ||
| 1409 | PostScript filter. People willing to help (debugging, or helping users) | ||
| 1410 | may subscribe to this list. | ||
| 1411 | |||
| 1412 | This list is unmoderated. | ||
| 1413 | |||
| 1414 | * a2ps-request@gnu.org to subscribe to a2ps | ||
| 1415 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1416 | ** Send contributions to: a2ps@gnu.org | ||
| 1417 | |||
| 1418 | On this list are sent announcements about GNU a2ps --included betas--, | ||
| 1419 | discussions on the interface, implementations etc. It is by no means a | ||
| 1420 | bug reporting address, and its volume should be kept moderate. To this | ||
| 1421 | end, and to avoid `accidents' (bug reports and spam), this list is not | ||
| 1422 | moderated but members only can post. | ||
| 1423 | |||
| 1424 | * wget-subscribe@sunsite.auc.dk to subscribe to wget@sunsite.auc.dk | ||
| 1425 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1426 | ** Send contributions to: wget@sunsite.auc.dk | ||
| 1427 | |||
| 1428 | This list is for user discussion of wget. This list is not moderated. | ||
| 1429 | |||
| 1430 | * help-gnu-shogi-request@gnu.org IS NOW DEFUNCT | ||
| 1431 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1432 | ** DEAD address: help-gnu-shogi@gnu.org | ||
| 1433 | |||
| 1434 | This list is dead. | ||
| 1435 | |||
| 1436 | * info-gnu-shogi-request@gnu.org to subscribe to info-gnu-shogi | ||
| 1437 | ** gnUSENET newsgroup: NONE PLANNED | ||
| 1438 | ** Send contributions to: info-gnu-shogi@gnu.org | ||
| 1439 | |||
| 1440 | This list is the place for users and installers of GNU Shogi to ask for | ||
| 1441 | help. This list is also used for games played by people or other | ||
| 1442 | entities against the program, and other generalized non-bug, | ||
| 1443 | non-enhancement data. Please send bug reports to bug-gnu-shogi instead | ||
| 1444 | of posting them here. | ||
| 1445 | |||
| 1446 | This list is also used for announcements about GNU Shogi and related | ||
| 1447 | programs, and small but important patches. Announcements of GNU Shogi | ||
| 1448 | releases are also made to info-gnu@gnu.org (see above) | ||
| 1449 | |||
| 1450 | Since info-gnu-shogi is a large list, send it only those items that | ||
| 1451 | are seriously important to many people. | ||
| 1452 | |||
| 1453 | If source or patches that were previously posted or a simple fix is | ||
| 1454 | requested in info-gnu-shogi, please mail it to the requester. Do NOT | ||
| 1455 | repost it. If you also want something that is requested, send mail to | ||
| 1456 | the requester asking him to forward it to you. This kind of traffic is | ||
| 1457 | best handled by e-mail, not a broadcast medium that reaches millions of | ||
| 1458 | sites. | ||
| 1459 | |||
| 1460 | See section '* General Information about help-* lists'. | ||
| 1461 | Also see section '* General Information about info-* lists'. | ||
| 1462 | |||
| 1463 | * bug-texinfo-request@gnu.org to subscribe to bug-texinfo | ||
| 1464 | ** gnUSENET newsgroup: NONE | ||
| 1465 | ** GNU Texinfo bug reports to: bug-texinfo@gnu.org | ||
| 1466 | |||
| 1467 | This list distributes, to the active maintainers of these programs, bug | ||
| 1468 | reports and fixes for, and suggestions for improvements in GNU Texinfo, | ||
| 1469 | both the programs and the language. | ||
| 1470 | |||
| 1471 | See section '* General Information about bug-* lists and reporting | ||
| 1472 | program bugs'. | ||
| 1473 | |||
| 1474 | * help-texinfo-request@gnu.org to subscribe to help-texinfo | ||
| 1475 | ** gnUSENET newsgroup: NONE | ||
| 1476 | ** Send contributions to: help-texinfo@gnu.org | ||
| 1477 | |||
| 1478 | This list is the place for authors, users and installers of GNU Texinfo | ||
| 1479 | to ask for help. | ||
| 1480 | |||
| 1481 | Don't send bug reports to help-texinfo; mail them to | ||
| 1482 | bug-texinfo@gnu.org instead. | ||
| 1483 | |||
| 1484 | See section '* General Information about help-* lists'. | ||
| 1485 | |||
| 1486 | * gnu-manual-request@a.cs.uiuc.edu IS NOW DEFUNCT | ||
| 1487 | ** DEAD: Gnusenet newsgroup: gnu.emacs.lisp.manual | ||
| 1488 | ** DEAD address: gnu-manual@a.cs.uiuc.edu | ||
| 1489 | *** DEAD UUCP address: ..!uunet!uiucdcs!gnu-manual-request | ||
| 1490 | |||
| 1491 | This list and newsgroup is dead. It was a working group whose | ||
| 1492 | volunteers wrote, proofread and commented on the developing GNU Emacs | ||
| 1493 | Lisp programmers manual. | ||
| 1494 | |||
| 1495 | Send bugs in the GNU Emacs Lisp reference manual to: | ||
| 1496 | lisp-manual-bugs@gnu.org | ||
| 1497 | |||
| 1498 | lisp-manual-bugs is neither a mailing list nor a gnUSENET newsgroup. | ||
| 1499 | It's just a bug-reporting address. | ||
| 1500 | |||
| 1501 | * no mailing list request | ||
| 1502 | ** gnUSENET newsgroup: gnu.gnusenet.config | ||
| 1503 | ** no mailing list | ||
| 1504 | |||
| 1505 | This newsgroup has nothing to do with GNU software, especially its | ||
| 1506 | configuration. It exists to distribute information about the | ||
| 1507 | administration and configuration of gnUSENET: the gnu.all alternative | ||
| 1508 | USENET hierarchy that carry the GNU mailing lists. | ||
| 1509 | |||
| 1510 | Administrators of gnUSENET hosts receiving the gnu.all newsgroups are | ||
| 1511 | welcome to ask questions here or via e-mail of gnu@gnu.org. | ||
| 1512 | |||
| 1513 | * no mailing list request | ||
| 1514 | ** gnUSENET newsgroup: gnu.gnusenet.test | ||
| 1515 | ** no mailing list | ||
| 1516 | |||
| 1517 | This newsgroup has nothing to do with GNU software, especially its | ||
| 1518 | testing. It exists to allow test messages to be made in gnUSENET: the | ||
| 1519 | gnu.all alternative USENET hierarchy that carry the GNU mailing lists. | ||
| 1520 | |||
| 1521 | Local variables: | 314 | Local variables: |
| 1522 | mode: outline | 315 | mode: outline |
| 1523 | fill-column: 72 | 316 | fill-column: 72 |
diff --git a/etc/refcard.tex b/etc/refcard.tex index b48dfb69589..c44d43a22a6 100644 --- a/etc/refcard.tex +++ b/etc/refcard.tex | |||
| @@ -1,12 +1,19 @@ | |||
| 1 | % Reference Card for GNU Emacs version 21 on Unix systems | 1 | % Reference Card for GNU Emacs version 21 on Unix systems |
| 2 | %**start of header | 2 | %**start of header |
| 3 | \newcount\columnsperpage | 3 | \newcount\columnsperpage |
| 4 | \newcount\letterpaper | ||
| 4 | 5 | ||
| 5 | % This file can be printed with 1, 2, or 3 columns per page (see below). | 6 | % This file can be printed with 1, 2, or 3 columns per page (see below). |
| 6 | % Specify how many you want here. Nothing else needs to be changed. | 7 | % Specify how many you want here. |
| 7 | 8 | ||
| 8 | \columnsperpage=1 | 9 | \columnsperpage=3 |
| 9 | 10 | ||
| 11 | % Set letterpapaer to 0 for A4 paper, 1 for letter (US) paper. Useful | ||
| 12 | % only when columnsperpage is 2 or 3. | ||
| 13 | |||
| 14 | \letterpaper=1 | ||
| 15 | |||
| 16 | % Nothing else needs to be changed below this line. | ||
| 10 | % Copyright (c) 1987, 1993, 1996, 1997 Free Software Foundation, Inc. | 17 | % Copyright (c) 1987, 1993, 1996, 1997 Free Software Foundation, Inc. |
| 11 | 18 | ||
| 12 | % This file is part of GNU Emacs. | 19 | % This file is part of GNU Emacs. |
| @@ -42,6 +49,10 @@ | |||
| 42 | % For this you need a dvi device driver that can print sideways. | 49 | % For this you need a dvi device driver that can print sideways. |
| 43 | % Which mode to use is controlled by setting \columnsperpage above. | 50 | % Which mode to use is controlled by setting \columnsperpage above. |
| 44 | % | 51 | % |
| 52 | % To compile and print this document: | ||
| 53 | % tex refcard.tex | ||
| 54 | % dvips -t landscape refcard.dvi | ||
| 55 | % | ||
| 45 | % Author: | 56 | % Author: |
| 46 | % Stephen Gildea | 57 | % Stephen Gildea |
| 47 | % Internet: gildea@stop.mail-abuse.org | 58 | % Internet: gildea@stop.mail-abuse.org |
| @@ -103,7 +114,11 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |||
| 103 | \def\makefootline{\baselineskip10pt\hsize6.5in\line{\the\footline}} | 114 | \def\makefootline{\baselineskip10pt\hsize6.5in\line{\the\footline}} |
| 104 | \else %2 or 3 columns uses prereduced size | 115 | \else %2 or 3 columns uses prereduced size |
| 105 | \hsize 3.2in | 116 | \hsize 3.2in |
| 106 | \vsize 7.95in | 117 | \if 1\the\letterpaper |
| 118 | \vsize 7.95in | ||
| 119 | \else | ||
| 120 | \vsize 7.65in | ||
| 121 | \fi | ||
| 107 | \hoffset -.75in | 122 | \hoffset -.75in |
| 108 | \voffset -.745in | 123 | \voffset -.745in |
| 109 | \font\titlefont=cmbx10 \scaledmag2 | 124 | \font\titlefont=cmbx10 \scaledmag2 |
| @@ -123,7 +138,11 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |||
| 123 | \def\bf{\eightbf} | 138 | \def\bf{\eightbf} |
| 124 | \def\it{\eightit} | 139 | \def\it{\eightit} |
| 125 | \def\tt{\eighttt} | 140 | \def\tt{\eighttt} |
| 126 | \normalbaselineskip=.8\normalbaselineskip | 141 | \if 1\the\letterpaper |
| 142 | \normalbaselineskip=.8\normalbaselineskip | ||
| 143 | \else | ||
| 144 | \normalbaselineskip=.7\normalbaselineskip | ||
| 145 | \fi | ||
| 127 | \normallineskip=.8\normallineskip | 146 | \normallineskip=.8\normallineskip |
| 128 | \normallineskiplimit=.8\normallineskiplimit | 147 | \normallineskiplimit=.8\normallineskiplimit |
| 129 | \normalbaselines\rm %make definitions take effect | 148 | \normalbaselines\rm %make definitions take effect |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 41606eb7e93..eaa71c4abad 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,10 +1,164 @@ | |||
| 1 | 2004-10-18 David Ponce <david@dponce.com> | ||
| 2 | |||
| 3 | * mouse.el (mouse-drag-move-window-top): New function. | ||
| 4 | (mouse-drag-mode-line-1): Use it. | ||
| 5 | |||
| 6 | 2004-10-18 Thien-Thi Nguyen <ttn@gnu.org> | ||
| 7 | |||
| 8 | * info.el (Info-fontify-node): For multiline refs, | ||
| 9 | arrange to unfontify newline and surrounding whitespace. | ||
| 10 | |||
| 11 | 2004-10-17 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 12 | |||
| 13 | * vc-arch.el (vc-arch-workfile-version): Don't burp if the patch-log | ||
| 14 | directory is missing. | ||
| 15 | |||
| 16 | 2004-10-17 John Paul Wallington <jpw@gnu.org> | ||
| 17 | |||
| 18 | * ibuffer.el (ibuffer-default-display-maybe-show-predicates): | ||
| 19 | New customizable variable; whether to display buffers that match | ||
| 20 | `ibuffer-maybe-show-predicates' by default. | ||
| 21 | (ibuffer-maybe-show-predicates): Mention it in docstring. | ||
| 22 | (ibuffer-display-maybe-show-predicates): New variable. | ||
| 23 | (ibuffer-update): Prefix arg now toggles whether buffers that | ||
| 24 | match `ibuffer-maybe-show-predicates' should be displayed. | ||
| 25 | (ibuffer-mode): Set `ibuffer-display-maybe-show-predicates' | ||
| 26 | locally to heed `ibuffer-default-display-maybe-show-predicates'. | ||
| 27 | (ibuffer-redisplay-engine): Rename optional second arg to `ignore'. | ||
| 28 | |||
| 29 | 2004-10-17 Michael Albinus <michael.albinus@gmx.de> | ||
| 30 | |||
| 31 | * net/tramp.el: Redo sync with Tramp 2.0.45. Last commit did not | ||
| 32 | work correctly. | ||
| 33 | |||
| 34 | 2004-10-17 Daniel Pfeiffer <occitan@esperanto.org> | ||
| 35 | |||
| 36 | * buff-menu.el (Buffer-menu-revert-function): Emulate save-excursion. | ||
| 37 | (Buffer-menu-beginning): New helper function. | ||
| 38 | (Buffer-menu-execute): Use it. | ||
| 39 | (Buffer-menu-select): Use it. | ||
| 40 | (Buffer-menu-sort): Use it and also keep markers. | ||
| 41 | |||
| 42 | 2004-10-17 Richard M. Stallman <rms@gnu.org> | ||
| 43 | |||
| 44 | * paths.el (news-directory): Rename from news-path. Old name alias. | ||
| 45 | (rmail-spool-directory): Use defvar. | ||
| 46 | (sendmail-program): Use defcustom. | ||
| 47 | (remote-shell-program): Use defcustom. | ||
| 48 | (term-file-prefix): Use defvar. | ||
| 49 | (abbrev-file-name): Use defvar. | ||
| 50 | |||
| 51 | * term.el: Add maintainer. | ||
| 52 | |||
| 53 | * subr.el (with-local-quit): Return nil if there's a quit. | ||
| 54 | (read-passwd): Use with-local-quit. Doc fix. | ||
| 55 | |||
| 56 | * strokes.el (strokes-list-strokes): Don't try to delete char at eob. | ||
| 57 | (strokes-unload-hook): Set as a variable with add-hook. | ||
| 58 | |||
| 59 | * startup.el (fancy-splash-tail, normal-splash-screen): | ||
| 60 | Update copyright year. | ||
| 61 | |||
| 62 | * shadowfile.el (shadowfile-unload-hook): Set as variable w/ add-hook. | ||
| 63 | |||
| 64 | * server.el (server-unload-hook): Set as a variable with add-hook. | ||
| 65 | |||
| 66 | * help-at-pt.el (help-at-pt-unload-hook): Use add-hook; no defvar. | ||
| 67 | |||
| 68 | * frame.el (special-display-popup-frame): | ||
| 69 | Make the buffer current as its frame is created. | ||
| 70 | |||
| 71 | * delsel.el (delsel-unload-hook): Set as a variable. | ||
| 72 | |||
| 73 | * comint.el (comint-output-filter-functions): | ||
| 74 | Add comint-watch-for-password-prompt. | ||
| 75 | (comint-read-noecho): Function deleted. | ||
| 76 | (send-invisible): Use read-passwd. | ||
| 77 | |||
| 78 | * fringe.el (fringe-mode-initialize): New function. | ||
| 79 | (fringe-mode): Use fringe-mode-initialize as :initialize. | ||
| 80 | |||
| 81 | 2004-10-17 Kim F. Storm <storm@cua.dk> | ||
| 82 | |||
| 83 | * language/indian.el (indian-script-language-alist): Swap value and doc. | ||
| 84 | (indian-font-char-index-table): Doc fix. | ||
| 85 | |||
| 86 | 2004-10-16 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 87 | |||
| 88 | * vc-hooks.el (vc-find-file-hook): Call vc-backend with absolute name. | ||
| 89 | |||
| 90 | 2004-10-16 Juri Linkov <juri@jurta.org> | ||
| 91 | |||
| 92 | * progmodes/compile.el (compilation-start): Move let-binding of | ||
| 93 | `process-environment' into `with-current-buffer' body. | ||
| 94 | Reported by Matt Hodges <MPHodges@member.fsf.org>. | ||
| 95 | |||
| 96 | 2004-10-16 Richard M. Stallman <rms@gnu.org> | ||
| 97 | |||
| 98 | * pcvs-util.el (cvs-bury-buffer): | ||
| 99 | Don't call get-buffer-window for effect. | ||
| 100 | |||
| 101 | * outline.el (hide-other): Call outline-up-heading with INVISIBLE-OK=t. | ||
| 102 | |||
| 103 | * newcomment.el (comment-auto-fill-only-comments): Add autoload. | ||
| 104 | |||
| 105 | * msb.el (msb-unload-hook): Set the variable. | ||
| 106 | |||
| 107 | * mouse.el (mouse-yank-at-click, mouse-yank-secondary): | ||
| 108 | Use * to err if buffer is readonly. | ||
| 109 | |||
| 110 | * subr.el (looking-back): Return only t or nil. | ||
| 111 | |||
| 112 | * whitespace.el (whitespace-unload-hook): Set the variable. | ||
| 113 | |||
| 114 | * view.el (view-mode-enable): Set view-page-size and | ||
| 115 | view-half-page-size to nil. | ||
| 116 | (view-set-half-page-size-default): view-half-page-size = nil | ||
| 117 | means the default. | ||
| 118 | (View-scroll-page-forward): Use view-page-size-default. | ||
| 119 | (View-scroll-page-backward): Likewise. | ||
| 120 | (view-page-size, view-half-page-size): Doc fixes. | ||
| 121 | |||
| 122 | * emacs-lisp/elp.el (elp-unload-hook): Set the variable. | ||
| 123 | |||
| 124 | * emacs-lisp/cl.el (cl-unload-hook): Don't defvar it, just set it. | ||
| 125 | |||
| 126 | * emacs-lisp/bytecomp.el (byte-compile-eval): Don't process | ||
| 127 | "cl" like other files. Instead, call byte-compile-find-cl-functions. | ||
| 128 | (byte-compile-log-1): Bind inhibit-read-only. | ||
| 129 | (byte-compile-warning-prefix, byte-compile-log-file): Likewise. | ||
| 130 | (byte-compile-log-warning): Likewise. | ||
| 131 | (byte-compile-file-form-require): Detect "cl" from the arg value. | ||
| 132 | |||
| 133 | * progmodes/compile.el (compilation-start): Assume compilation-mode | ||
| 134 | will make the buffer read-only. | ||
| 135 | (compilation-mode): Take arg name-of-mode. | ||
| 136 | (compilation-setup): Make buffer read-only. | ||
| 137 | (compilation-handle-exit): Bind inhibit-read-only. | ||
| 138 | |||
| 139 | * textmodes/ispell.el (ispell-command-loop): Use with-no-warnings. | ||
| 140 | (ispell-message): Likewise. | ||
| 141 | (ispell-show-choices): Don't call get-buffer-window uselessly. | ||
| 142 | (ispell-init-process): Use set-process-query-on-exit-flag. | ||
| 143 | |||
| 144 | 2004-10-16 Kim F. Storm <storm@cua.dk> | ||
| 145 | |||
| 146 | * fringe.el (fringe-bitmaps): Only initialize when defined. | ||
| 147 | |||
| 148 | * pcvs.el (cvs-mode-view-file, cvs-mode-view-file-other-window): Add. | ||
| 149 | (cvs-mode-find-file): Add optional `view' arg to enter view mode. | ||
| 150 | |||
| 151 | * pcvs-defs.el (cvs-mode-map): Bind v to cvs-mode-view-file. | ||
| 152 | |||
| 153 | 2004-10-15 Simon Josefsson <jas@extundo.com> | ||
| 154 | |||
| 155 | * net/password.el: Add. | ||
| 156 | |||
| 1 | 2004-10-13 Daniel Pfeiffer <occitan@esperanto.org> | 157 | 2004-10-13 Daniel Pfeiffer <occitan@esperanto.org> |
| 2 | 158 | ||
| 3 | * button.el (button-activate): Allow a marker to display as an | 159 | * button.el (button-activate): Allow a marker to display as an action. |
| 4 | action. | ||
| 5 | 160 | ||
| 6 | * help-fns.el (describe-variable): Use it to make "below" a | 161 | * help-fns.el (describe-variable): Use it to make "below" a hyperlink. |
| 7 | hyperlink. | ||
| 8 | 162 | ||
| 9 | * help.el (describe-mode): Use it to make minor mode list into | 163 | * help.el (describe-mode): Use it to make minor mode list into |
| 10 | hyperlinks. | 164 | hyperlinks. |
| @@ -25,6 +179,15 @@ | |||
| 25 | (event-modifiers): Use push. | 179 | (event-modifiers): Use push. |
| 26 | (mouse-movement-p, with-temp-buffer): Simplify. | 180 | (mouse-movement-p, with-temp-buffer): Simplify. |
| 27 | 181 | ||
| 182 | 2004-10-12 Richard M. Stallman <rms@gnu.org> | ||
| 183 | |||
| 184 | * info-look.el (info-lookup-file): Add info-file property. | ||
| 185 | (info-lookup-symbol): Likewise. | ||
| 186 | |||
| 187 | * info.el (info-xref): Add underlining. | ||
| 188 | (info): Add info-file property. | ||
| 189 | (Info-find-emacs-command-nodes): Specify case-sensitive search. | ||
| 190 | |||
| 28 | 2004-10-12 Michael Albinus <michael.albinus@gmx.de> | 191 | 2004-10-12 Michael Albinus <michael.albinus@gmx.de> |
| 29 | 192 | ||
| 30 | Sync with Tramp 2.0.45. | 193 | Sync with Tramp 2.0.45. |
| @@ -201,7 +364,7 @@ | |||
| 201 | 2004-10-05 Juri Linkov <juri@jurta.org> | 364 | 2004-10-05 Juri Linkov <juri@jurta.org> |
| 202 | 365 | ||
| 203 | * isearch.el (isearch-done): Set mark after running hook. | 366 | * isearch.el (isearch-done): Set mark after running hook. |
| 204 | Suggested by Drew Adams <drew.adams@oracle.com>. | 367 | Reported by Drew Adams <drew.adams@oracle.com>. |
| 205 | 368 | ||
| 206 | * info.el (Info-history, Info-toc): Fix Info headers. | 369 | * info.el (Info-history, Info-toc): Fix Info headers. |
| 207 | (Info-toc): Narrow buffer before Info-fontify-node. | 370 | (Info-toc): Narrow buffer before Info-fontify-node. |
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 33a8c3ec3f5..da21f5336d8 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el | |||
| @@ -197,9 +197,15 @@ Letters do not insert themselves; instead, they are commands. | |||
| 197 | 197 | ||
| 198 | (defun Buffer-menu-revert-function (ignore1 ignore2) | 198 | (defun Buffer-menu-revert-function (ignore1 ignore2) |
| 199 | ;; We can not use save-excursion here. The buffer gets erased. | 199 | ;; We can not use save-excursion here. The buffer gets erased. |
| 200 | (let ((old-point (point))) | 200 | (let ((ocol (current-column)) |
| 201 | (oline (progn (move-to-column 4) | ||
| 202 | (get-text-property (point) 'buffer))) | ||
| 203 | (prop (point-min))) | ||
| 201 | (list-buffers-noselect Buffer-menu-files-only) | 204 | (list-buffers-noselect Buffer-menu-files-only) |
| 202 | (goto-char old-point))) | 205 | (while (setq prop (next-single-property-change prop 'buffer)) |
| 206 | (when (eq (get-text-property prop 'buffer) oline) | ||
| 207 | (goto-char prop) | ||
| 208 | (move-to-column ocol))))) | ||
| 203 | 209 | ||
| 204 | (defun Buffer-menu-toggle-files-only (arg) | 210 | (defun Buffer-menu-toggle-files-only (arg) |
| 205 | "Toggle whether the current buffer-menu displays only file buffers. | 211 | "Toggle whether the current buffer-menu displays only file buffers. |
| @@ -354,13 +360,16 @@ and then move up one line. Prefix arg means move that many lines." | |||
| 354 | (delete-char 1) | 360 | (delete-char 1) |
| 355 | (insert (if arg ?* ? )))))) | 361 | (insert (if arg ?* ? )))))) |
| 356 | 362 | ||
| 363 | (defun Buffer-menu-beginning () | ||
| 364 | (goto-char (point-min)) | ||
| 365 | (unless Buffer-menu-use-header-line | ||
| 366 | (forward-line))) | ||
| 367 | |||
| 357 | (defun Buffer-menu-execute () | 368 | (defun Buffer-menu-execute () |
| 358 | "Save and/or delete buffers marked with \\<Buffer-menu-mode-map>\\[Buffer-menu-save] or \\<Buffer-menu-mode-map>\\[Buffer-menu-delete] commands." | 369 | "Save and/or delete buffers marked with \\<Buffer-menu-mode-map>\\[Buffer-menu-save] or \\<Buffer-menu-mode-map>\\[Buffer-menu-delete] commands." |
| 359 | (interactive) | 370 | (interactive) |
| 360 | (save-excursion | 371 | (save-excursion |
| 361 | (goto-char (point-min)) | 372 | (Buffer-menu-beginning) |
| 362 | (unless Buffer-menu-use-header-line | ||
| 363 | (forward-line 1)) | ||
| 364 | (while (re-search-forward "^..S" nil t) | 373 | (while (re-search-forward "^..S" nil t) |
| 365 | (let ((modp nil)) | 374 | (let ((modp nil)) |
| 366 | (save-excursion | 375 | (save-excursion |
| @@ -371,9 +380,7 @@ and then move up one line. Prefix arg means move that many lines." | |||
| 371 | (delete-char -1) | 380 | (delete-char -1) |
| 372 | (insert (if modp ?* ? )))))) | 381 | (insert (if modp ?* ? )))))) |
| 373 | (save-excursion | 382 | (save-excursion |
| 374 | (goto-char (point-min)) | 383 | (Buffer-menu-beginning) |
| 375 | (unless Buffer-menu-use-header-line | ||
| 376 | (forward-line 1)) | ||
| 377 | (let ((buff-menu-buffer (current-buffer)) | 384 | (let ((buff-menu-buffer (current-buffer)) |
| 378 | (buffer-read-only nil)) | 385 | (buffer-read-only nil)) |
| 379 | (while (re-search-forward "^D" nil t) | 386 | (while (re-search-forward "^D" nil t) |
| @@ -399,9 +406,7 @@ in the selected frame." | |||
| 399 | (menu (current-buffer)) | 406 | (menu (current-buffer)) |
| 400 | (others ()) | 407 | (others ()) |
| 401 | tem) | 408 | tem) |
| 402 | (goto-char (point-min)) | 409 | (Buffer-menu-beginning) |
| 403 | (unless Buffer-menu-use-header-line | ||
| 404 | (forward-line 1)) | ||
| 405 | (while (re-search-forward "^>" nil t) | 410 | (while (re-search-forward "^>" nil t) |
| 406 | (setq tem (Buffer-menu-buffer t)) | 411 | (setq tem (Buffer-menu-buffer t)) |
| 407 | (let ((buffer-read-only nil)) | 412 | (let ((buffer-read-only nil)) |
| @@ -581,7 +586,35 @@ For more information, see the function `buffer-menu'." | |||
| 581 | (if (< column 2) (setq column 2)) | 586 | (if (< column 2) (setq column 2)) |
| 582 | (if (> column 5) (setq column 5))) | 587 | (if (> column 5) (setq column 5))) |
| 583 | (setq Buffer-menu-sort-column column) | 588 | (setq Buffer-menu-sort-column column) |
| 584 | (Buffer-menu-revert)) | 589 | (let (buffer-read-only l buf m1 m2) |
| 590 | (save-excursion | ||
| 591 | (Buffer-menu-beginning) | ||
| 592 | (while (not (eobp)) | ||
| 593 | (when (buffer-live-p (setq buf (get-text-property (+ (point) 4) 'buffer))) | ||
| 594 | (setq m1 (char-after) | ||
| 595 | m1 (if (memq m1 '(?> ?D)) m1) | ||
| 596 | m2 (char-after (+ (point) 2)) | ||
| 597 | m2 (if (eq m2 ?S) m2)) | ||
| 598 | (if (or m1 m2) | ||
| 599 | (push (list buf m1 m2) l))) | ||
| 600 | (forward-line))) | ||
| 601 | (Buffer-menu-revert) | ||
| 602 | (setq buffer-read-only) | ||
| 603 | (save-excursion | ||
| 604 | (Buffer-menu-beginning) | ||
| 605 | (while (not (eobp)) | ||
| 606 | (when (setq buf (assq (get-text-property (+ (point) 4) 'buffer) l)) | ||
| 607 | (setq m1 (cadr buf) | ||
| 608 | m2 (cadr (cdr buf))) | ||
| 609 | (when m1 | ||
| 610 | (delete-char 1) | ||
| 611 | (insert m1) | ||
| 612 | (backward-char 1)) | ||
| 613 | (when m2 | ||
| 614 | (forward-char 2) | ||
| 615 | (delete-char 1) | ||
| 616 | (insert m2))) | ||
| 617 | (forward-line))))) | ||
| 585 | 618 | ||
| 586 | (defun Buffer-menu-make-sort-button (name column) | 619 | (defun Buffer-menu-make-sort-button (name column) |
| 587 | (if (equal column Buffer-menu-sort-column) (setq column nil)) | 620 | (if (equal column Buffer-menu-sort-column) (setq column nil)) |
| @@ -592,7 +625,9 @@ For more information, see the function `buffer-menu'." | |||
| 592 | 'mouse-face 'highlight | 625 | 'mouse-face 'highlight |
| 593 | 'keymap (let ((map (make-sparse-keymap))) | 626 | 'keymap (let ((map (make-sparse-keymap))) |
| 594 | (define-key map [header-line mouse-2] | 627 | (define-key map [header-line mouse-2] |
| 595 | `(lambda () (interactive) | 628 | `(lambda (e) |
| 629 | (interactive "e") | ||
| 630 | (if e (set-buffer (window-buffer (posn-window (event-end e))))) | ||
| 596 | (Buffer-menu-sort ,column))) | 631 | (Buffer-menu-sort ,column))) |
| 597 | map))) | 632 | map))) |
| 598 | 633 | ||
diff --git a/lisp/calc/calc-help.el b/lisp/calc/calc-help.el index c24a13b91d7..c48ac23e8e5 100644 --- a/lisp/calc/calc-help.el +++ b/lisp/calc/calc-help.el | |||
| @@ -112,34 +112,27 @@ C-w Describe how there is no warranty for Calc." | |||
| 112 | (describe-bindings) | 112 | (describe-bindings) |
| 113 | (save-excursion | 113 | (save-excursion |
| 114 | (set-buffer "*Help*") | 114 | (set-buffer "*Help*") |
| 115 | (goto-char (point-min)) | 115 | (let ((buffer-read-only nil)) |
| 116 | (if (search-forward "Global bindings:" nil t) | 116 | (goto-char (point-min)) |
| 117 | (delete-region (match-beginning 0) (point-max))) | 117 | (when (search-forward "Major Mode Bindings:" nil t) |
| 118 | (goto-char (point-min)) | 118 | (delete-region (point-min) (point)) |
| 119 | (while (re-search-forward "\n[a-z] ESC" nil t) | 119 | (insert "Calc Mode Bindings:")) |
| 120 | (end-of-line) | 120 | (when (search-forward "Global bindings:" nil t) |
| 121 | (delete-region (match-beginning 0) (point))) | 121 | (forward-line -1) |
| 122 | (goto-char (point-min)) | 122 | (delete-region (point) (point-max))) |
| 123 | (while (re-search-forward "\nESC m" nil t) | 123 | (goto-char (point-min)) |
| 124 | (end-of-line) | 124 | (while |
| 125 | (delete-region (match-beginning 0) (point))) | 125 | (re-search-forward |
| 126 | (goto-char (point-min)) | 126 | "\n[a-z] [0-9]\\( .*\n\\)\\([a-z] [0-9]\\1\\)*[a-z] \\([0-9]\\)\\1" |
| 127 | (while (search-forward "\n\n\n" nil t) | 127 | nil t) |
| 128 | (backward-delete-char 1) | 128 | (let ((dig1 (char-after (1- (match-beginning 1)))) |
| 129 | (backward-char 2)) | 129 | (dig2 (char-after (match-beginning 3)))) |
| 130 | (goto-char (point-min)) | 130 | (delete-region (match-end 1) (match-end 0)) |
| 131 | (while | 131 | (goto-char (match-beginning 1)) |
| 132 | (re-search-forward | 132 | (delete-backward-char 1) |
| 133 | "\n[a-z] [0-9]\\(\t\t.*\n\\)\\([a-z] [0-9]\\1\\)*[a-z] \\([0-9]\\)\\1" | 133 | (delete-char 5) |
| 134 | nil t) | 134 | (insert (format "%c .. %c" (min dig1 dig2) (max dig1 dig2))))) |
| 135 | (let ((dig1 (char-after (1- (match-beginning 1)))) | 135 | (goto-char (point-min))))) |
| 136 | (dig2 (char-after (match-beginning 3)))) | ||
| 137 | (delete-region (match-end 1) (match-end 0)) | ||
| 138 | (goto-char (match-beginning 1)) | ||
| 139 | (delete-backward-char 1) | ||
| 140 | (delete-char 1) | ||
| 141 | (insert (format "%c .. %c" (min dig1 dig2) (max dig1 dig2))))) | ||
| 142 | (goto-char (point-min)))) | ||
| 143 | 136 | ||
| 144 | (defun calc-describe-key-briefly (key) | 137 | (defun calc-describe-key-briefly (key) |
| 145 | (interactive "kDescribe key briefly: ") | 138 | (interactive "kDescribe key briefly: ") |
diff --git a/lisp/comint.el b/lisp/comint.el index 8b2c779ecd3..cfbd618c896 100644 --- a/lisp/comint.el +++ b/lisp/comint.el | |||
| @@ -372,7 +372,7 @@ history list. Default is to save anything that isn't all whitespace.") | |||
| 372 | "Special hook run before input is sent to the process. | 372 | "Special hook run before input is sent to the process. |
| 373 | These functions get one argument, a string containing the text to send.") | 373 | These functions get one argument, a string containing the text to send.") |
| 374 | 374 | ||
| 375 | (defvar comint-output-filter-functions '(comint-postoutput-scroll-to-bottom) | 375 | (defvar comint-output-filter-functions '(comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt) |
| 376 | "Functions to call after output is inserted into the buffer. | 376 | "Functions to call after output is inserted into the buffer. |
| 377 | One possible function is `comint-postoutput-scroll-to-bottom'. | 377 | One possible function is `comint-postoutput-scroll-to-bottom'. |
| 378 | These functions get one argument, a string containing the text as originally | 378 | These functions get one argument, a string containing the text as originally |
| @@ -1901,65 +1901,7 @@ prompt skip is done by skipping text matching the regular expression | |||
| 1901 | 1901 | ||
| 1902 | ;; These three functions are for entering text you don't want echoed or | 1902 | ;; These three functions are for entering text you don't want echoed or |
| 1903 | ;; saved -- typically passwords to ftp, telnet, or somesuch. | 1903 | ;; saved -- typically passwords to ftp, telnet, or somesuch. |
| 1904 | ;; Just enter m-x send-invisible and type in your line, or add | 1904 | ;; Just enter m-x send-invisible and type in your line. |
| 1905 | ;; `comint-watch-for-password-prompt' to `comint-output-filter-functions'. | ||
| 1906 | |||
| 1907 | (defun comint-read-noecho (prompt &optional stars) | ||
| 1908 | "Read a single line of text from user without echoing, and return it. | ||
| 1909 | Prompt with argument PROMPT, a string. Optional argument STARS causes | ||
| 1910 | input to be echoed with '*' characters on the prompt line. Input ends with | ||
| 1911 | RET, LFD, or ESC. DEL or C-h rubs out. C-u kills line. C-g aborts (if | ||
| 1912 | `inhibit-quit' is set because e.g. this function was called from a process | ||
| 1913 | filter and C-g is pressed, this function returns nil rather than a string). | ||
| 1914 | |||
| 1915 | Note that the keystrokes comprising the text can still be recovered | ||
| 1916 | \(temporarily) with \\[view-lossage]. Some people find this worrisome (see, | ||
| 1917 | however, `clear-this-command-keys'). | ||
| 1918 | Once the caller uses the password, it can erase the password | ||
| 1919 | by doing (clear-string STRING)." | ||
| 1920 | (let ((ans "") | ||
| 1921 | (newans nil) | ||
| 1922 | (c 0) | ||
| 1923 | (echo-keystrokes 0) | ||
| 1924 | (cursor-in-echo-area t) | ||
| 1925 | (message-log-max nil) | ||
| 1926 | (done nil)) | ||
| 1927 | (while (not done) | ||
| 1928 | (if stars | ||
| 1929 | (message "%s%s" prompt (make-string (length ans) ?*)) | ||
| 1930 | (message "%s" prompt)) | ||
| 1931 | ;; Use this instead of `read-char' to avoid "Non-character input-event". | ||
| 1932 | (setq c (read-char-exclusive)) | ||
| 1933 | (cond ((= c ?\C-g) | ||
| 1934 | ;; This function may get called from a process filter, where | ||
| 1935 | ;; inhibit-quit is set. In later versions of emacs read-char | ||
| 1936 | ;; may clear quit-flag itself and return C-g. That would make | ||
| 1937 | ;; it impossible to quit this loop in a simple way, so | ||
| 1938 | ;; re-enable it here (for backward-compatibility the check for | ||
| 1939 | ;; quit-flag below would still be necessary, so this seems | ||
| 1940 | ;; like the simplest way to do things). | ||
| 1941 | (setq quit-flag t | ||
| 1942 | done t)) | ||
| 1943 | ((or (= c ?\r) (= c ?\n) (= c ?\e)) | ||
| 1944 | (setq done t)) | ||
| 1945 | ((= c ?\C-u) | ||
| 1946 | (clear-string ans) | ||
| 1947 | (setq ans "")) | ||
| 1948 | ((and (/= c ?\b) (/= c ?\177)) | ||
| 1949 | (setq newans (concat ans (char-to-string c))) | ||
| 1950 | (clear-string ans) | ||
| 1951 | (setq ans newans)) | ||
| 1952 | ((> (length ans) 0) | ||
| 1953 | (aset ans (1- (length ans)) 0) | ||
| 1954 | (setq ans (substring ans 0 -1))))) | ||
| 1955 | (if quit-flag | ||
| 1956 | ;; Emulate a true quit, except that we have to return a value. | ||
| 1957 | (prog1 | ||
| 1958 | (setq quit-flag nil) | ||
| 1959 | (message "Quit") | ||
| 1960 | (beep t)) | ||
| 1961 | (message "") | ||
| 1962 | ans))) | ||
| 1963 | 1905 | ||
| 1964 | (defun send-invisible (&optional prompt) | 1906 | (defun send-invisible (&optional prompt) |
| 1965 | "Read a string without echoing. | 1907 | "Read a string without echoing. |
| @@ -1970,7 +1912,7 @@ Security bug: your string can still be temporarily recovered with | |||
| 1970 | (interactive "P") ; Defeat snooping via C-x ESC ESC | 1912 | (interactive "P") ; Defeat snooping via C-x ESC ESC |
| 1971 | (let ((proc (get-buffer-process (current-buffer)))) | 1913 | (let ((proc (get-buffer-process (current-buffer)))) |
| 1972 | (if proc | 1914 | (if proc |
| 1973 | (let ((str (comint-read-noecho (or prompt "Non-echoed text: ") t))) | 1915 | (let ((str (read-passwd (or prompt "Non-echoed text: ")))) |
| 1974 | (if (stringp str) | 1916 | (if (stringp str) |
| 1975 | (progn | 1917 | (progn |
| 1976 | (comint-snapshot-last-prompt) | 1918 | (comint-snapshot-last-prompt) |
diff --git a/lisp/delsel.el b/lisp/delsel.el index d8e034a5f9f..962fa156a07 100644 --- a/lisp/delsel.el +++ b/lisp/delsel.el | |||
| @@ -147,6 +147,8 @@ then it takes a second \\[keyboard-quit] to abort the minibuffer." | |||
| 147 | (define-key minibuffer-local-must-match-map "\C-g" 'abort-recursive-edit) | 147 | (define-key minibuffer-local-must-match-map "\C-g" 'abort-recursive-edit) |
| 148 | (define-key minibuffer-local-isearch-map "\C-g" 'abort-recursive-edit)) | 148 | (define-key minibuffer-local-isearch-map "\C-g" 'abort-recursive-edit)) |
| 149 | 149 | ||
| 150 | (add-hook 'delsel-unload-hook 'delsel-unload-hook) | ||
| 151 | |||
| 150 | (provide 'delsel) | 152 | (provide 'delsel) |
| 151 | 153 | ||
| 152 | ;;; arch-tag: 1e388890-1b50-4ed0-9347-763b1343b6ed | 154 | ;;; arch-tag: 1e388890-1b50-4ed0-9347-763b1343b6ed |
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 2b0a8e698a6..118352937bd 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el | |||
| @@ -792,7 +792,8 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'." | |||
| 792 | (let ((xs (pop hist-new)) | 792 | (let ((xs (pop hist-new)) |
| 793 | old-autoloads) | 793 | old-autoloads) |
| 794 | ;; Make sure the file was not already loaded before. | 794 | ;; Make sure the file was not already loaded before. |
| 795 | (unless (assoc (car xs) hist-orig) | 795 | (unless (or (assoc (car xs) hist-orig) |
| 796 | (equal (car xs) "cl")) | ||
| 796 | (dolist (s xs) | 797 | (dolist (s xs) |
| 797 | (cond | 798 | (cond |
| 798 | ((symbolp s) | 799 | ((symbolp s) |
| @@ -809,7 +810,18 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'." | |||
| 809 | (when (and (symbolp s) (not (memq s old-autoloads))) | 810 | (when (and (symbolp s) (not (memq s old-autoloads))) |
| 810 | (push s byte-compile-noruntime-functions)) | 811 | (push s byte-compile-noruntime-functions)) |
| 811 | (when (and (consp s) (eq t (car s))) | 812 | (when (and (consp s) (eq t (car s))) |
| 812 | (push (cdr s) old-autoloads)))))))))) | 813 | (push (cdr s) old-autoloads))))))) |
| 814 | (when (memq 'cl-functions byte-compile-warnings) | ||
| 815 | (let ((hist-new load-history) | ||
| 816 | (hist-nil-new current-load-list)) | ||
| 817 | ;; Go through load-history, look for newly loaded files | ||
| 818 | ;; and mark all the functions defined therein. | ||
| 819 | (while (and hist-new (not (eq hist-new hist-orig))) | ||
| 820 | (let ((xs (pop hist-new)) | ||
| 821 | old-autoloads) | ||
| 822 | ;; Make sure the file was not already loaded before. | ||
| 823 | (when (and (equal (car xs) "cl") (not (assoc (car xs) hist-orig))) | ||
| 824 | (byte-compile-find-cl-functions))))))))) | ||
| 813 | 825 | ||
| 814 | (defun byte-compile-eval-before-compile (form) | 826 | (defun byte-compile-eval-before-compile (form) |
| 815 | "Evaluate FORM for `eval-and-compile'." | 827 | "Evaluate FORM for `eval-and-compile'." |
| @@ -848,12 +860,13 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'." | |||
| 848 | ;; Log something that isn't a warning. | 860 | ;; Log something that isn't a warning. |
| 849 | (defun byte-compile-log-1 (string) | 861 | (defun byte-compile-log-1 (string) |
| 850 | (with-current-buffer "*Compile-Log*" | 862 | (with-current-buffer "*Compile-Log*" |
| 851 | (goto-char (point-max)) | 863 | (let ((inhibit-read-only t)) |
| 852 | (byte-compile-warning-prefix nil nil) | 864 | (goto-char (point-max)) |
| 853 | (cond (noninteractive | 865 | (byte-compile-warning-prefix nil nil) |
| 854 | (message " %s" string)) | 866 | (cond (noninteractive |
| 855 | (t | 867 | (message " %s" string)) |
| 856 | (insert (format "%s\n" string)))))) | 868 | (t |
| 869 | (insert (format "%s\n" string))))))) | ||
| 857 | 870 | ||
| 858 | (defvar byte-compile-read-position nil | 871 | (defvar byte-compile-read-position nil |
| 859 | "Character position we began the last `read' from.") | 872 | "Character position we began the last `read' from.") |
| @@ -904,7 +917,8 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'." | |||
| 904 | ;; This is used as warning-prefix for the compiler. | 917 | ;; This is used as warning-prefix for the compiler. |
| 905 | ;; It is always called with the warnings buffer current. | 918 | ;; It is always called with the warnings buffer current. |
| 906 | (defun byte-compile-warning-prefix (level entry) | 919 | (defun byte-compile-warning-prefix (level entry) |
| 907 | (let* ((dir default-directory) | 920 | (let* ((inhibit-read-only t) |
| 921 | (dir default-directory) | ||
| 908 | (file (cond ((stringp byte-compile-current-file) | 922 | (file (cond ((stringp byte-compile-current-file) |
| 909 | (format "%s:" (file-relative-name byte-compile-current-file dir))) | 923 | (format "%s:" (file-relative-name byte-compile-current-file dir))) |
| 910 | ((bufferp byte-compile-current-file) | 924 | ((bufferp byte-compile-current-file) |
| @@ -950,7 +964,8 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'." | |||
| 950 | (save-excursion | 964 | (save-excursion |
| 951 | (set-buffer (get-buffer-create "*Compile-Log*")) | 965 | (set-buffer (get-buffer-create "*Compile-Log*")) |
| 952 | (goto-char (point-max)) | 966 | (goto-char (point-max)) |
| 953 | (let* ((dir (and byte-compile-current-file | 967 | (let* ((inhibit-read-only t) |
| 968 | (dir (and byte-compile-current-file | ||
| 954 | (file-name-directory byte-compile-current-file))) | 969 | (file-name-directory byte-compile-current-file))) |
| 955 | (was-same (equal default-directory dir)) | 970 | (was-same (equal default-directory dir)) |
| 956 | pt) | 971 | pt) |
| @@ -984,7 +999,8 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'." | |||
| 984 | (defun byte-compile-log-warning (string &optional fill level) | 999 | (defun byte-compile-log-warning (string &optional fill level) |
| 985 | (let ((warning-prefix-function 'byte-compile-warning-prefix) | 1000 | (let ((warning-prefix-function 'byte-compile-warning-prefix) |
| 986 | (warning-type-format "") | 1001 | (warning-type-format "") |
| 987 | (warning-fill-prefix (if fill " "))) | 1002 | (warning-fill-prefix (if fill " ")) |
| 1003 | (inhibit-read-only t)) | ||
| 988 | (display-warning 'bytecomp string level "*Compile-Log*"))) | 1004 | (display-warning 'bytecomp string level "*Compile-Log*"))) |
| 989 | 1005 | ||
| 990 | (defun byte-compile-warn (format &rest args) | 1006 | (defun byte-compile-warn (format &rest args) |
| @@ -2140,17 +2156,15 @@ list that represents a doc string reference. | |||
| 2140 | (setq tail (cdr tail)))) | 2156 | (setq tail (cdr tail)))) |
| 2141 | form) | 2157 | form) |
| 2142 | 2158 | ||
| 2143 | (put 'require 'byte-hunk-handler 'byte-compile-file-form-eval-boundary) | 2159 | (put 'require 'byte-hunk-handler 'byte-compile-file-form-require) |
| 2144 | (defun byte-compile-file-form-eval-boundary (form) | 2160 | (defun byte-compile-file-form-require (form) |
| 2145 | (let ((old-load-list current-load-list)) | 2161 | (let ((old-load-list current-load-list) |
| 2146 | (eval form) | 2162 | (args (mapcar 'eval (cdr form)))) |
| 2147 | ;; (require 'cl) turns off warnings for cl functions. | 2163 | (apply 'require args) |
| 2148 | (let ((tem current-load-list)) | 2164 | ;; Detech (require 'cl) in a way that works even if cl is already loaded. |
| 2149 | (while (not (eq tem old-load-list)) | 2165 | (if (member (car args) '("cl" cl)) |
| 2150 | (when (equal (car tem) '(require . cl)) | 2166 | (setq byte-compile-warnings |
| 2151 | (setq byte-compile-warnings | 2167 | (remq 'cl-functions byte-compile-warnings)))) |
| 2152 | (remq 'cl-functions byte-compile-warnings))) | ||
| 2153 | (setq tem (cdr tem))))) | ||
| 2154 | (byte-compile-keep-pending form 'byte-compile-normal-call)) | 2168 | (byte-compile-keep-pending form 'byte-compile-normal-call)) |
| 2155 | 2169 | ||
| 2156 | (put 'progn 'byte-hunk-handler 'byte-compile-file-form-progn) | 2170 | (put 'progn 'byte-hunk-handler 'byte-compile-file-form-progn) |
diff --git a/lisp/emacs-lisp/cl.el b/lisp/emacs-lisp/cl.el index b098a467f9f..2f6c799f528 100644 --- a/lisp/emacs-lisp/cl.el +++ b/lisp/emacs-lisp/cl.el | |||
| @@ -108,8 +108,7 @@ printer proceeds to the next function on the list. | |||
| 108 | This variable is not used at present, but it is defined in hopes that | 108 | This variable is not used at present, but it is defined in hopes that |
| 109 | a future Emacs interpreter will be able to use it.") | 109 | a future Emacs interpreter will be able to use it.") |
| 110 | 110 | ||
| 111 | (defvar cl-unload-hook '(cl-cannot-unload) | 111 | (add-hook 'cl-unload-hook 'cl-cannot-unload) |
| 112 | "Prevent unloading the feature `cl', since it does not work.") | ||
| 113 | (defun cl-cannot-unload () | 112 | (defun cl-cannot-unload () |
| 114 | (error "Cannot unload the feature `cl'")) | 113 | (error "Cannot unload the feature `cl'")) |
| 115 | 114 | ||
diff --git a/lisp/emacs-lisp/elp.el b/lisp/emacs-lisp/elp.el index f8d41f200d2..17991067fab 100644 --- a/lisp/emacs-lisp/elp.el +++ b/lisp/emacs-lisp/elp.el | |||
| @@ -626,6 +626,7 @@ displayed." | |||
| 626 | 626 | ||
| 627 | (defun elp-unload-hook () | 627 | (defun elp-unload-hook () |
| 628 | (elp-restore-all)) | 628 | (elp-restore-all)) |
| 629 | (add-hook 'elp-unload-hook 'elp-unload-hook) | ||
| 629 | 630 | ||
| 630 | (provide 'elp) | 631 | (provide 'elp) |
| 631 | 632 | ||
diff --git a/lisp/frame.el b/lisp/frame.el index 12cc904d47d..3658cfc1879 100644 --- a/lisp/frame.el +++ b/lisp/frame.el | |||
| @@ -153,7 +153,9 @@ Pass it BUFFER as first arg, and (cdr ARGS) gives the rest of the args." | |||
| 153 | ;; (set-window-dedicated-p window t) | 153 | ;; (set-window-dedicated-p window t) |
| 154 | window)) | 154 | window)) |
| 155 | ;; If no window yet, make one in a new frame. | 155 | ;; If no window yet, make one in a new frame. |
| 156 | (let ((frame (make-frame (append args special-display-frame-alist)))) | 156 | (let ((frame |
| 157 | (with-current-buffer buffer | ||
| 158 | (make-frame (append args special-display-frame-alist))))) | ||
| 157 | (set-window-buffer (frame-selected-window frame) buffer) | 159 | (set-window-buffer (frame-selected-window frame) buffer) |
| 158 | (set-window-dedicated-p (frame-selected-window frame) t) | 160 | (set-window-dedicated-p (frame-selected-window frame) t) |
| 159 | (frame-selected-window frame)))))) | 161 | (frame-selected-window frame)))))) |
diff --git a/lisp/fringe.el b/lisp/fringe.el index 07c93d39f40..f9ddd87931f 100644 --- a/lisp/fringe.el +++ b/lisp/fringe.el | |||
| @@ -43,7 +43,8 @@ | |||
| 43 | 43 | ||
| 44 | (defvar fringe-bitmaps) | 44 | (defvar fringe-bitmaps) |
| 45 | 45 | ||
| 46 | (unless (get 'left-truncation 'fringe) | 46 | (unless (or (not (boundp 'fringe-bitmaps)) |
| 47 | (get 'left-truncation 'fringe)) | ||
| 47 | (let ((bitmaps '(left-truncation right-truncation | 48 | (let ((bitmaps '(left-truncation right-truncation |
| 48 | up-arrow down-arrow | 49 | up-arrow down-arrow |
| 49 | continued-line continuation-line | 50 | continued-line continuation-line |
| @@ -112,6 +113,25 @@ See `fringe-mode' for possible values and their effect." | |||
| 112 | fringe-mode)))) | 113 | fringe-mode)))) |
| 113 | (setq frames (cdr frames))))) | 114 | (setq frames (cdr frames))))) |
| 114 | 115 | ||
| 116 | ;; For initialization of fringe-mode, take account of changes | ||
| 117 | ;; made explicitly to default-frame-alist. | ||
| 118 | (defun fringe-mode-initialize (symbol value) | ||
| 119 | (let* ((left-pair (assq 'left-fringe default-frame-alist)) | ||
| 120 | (right-pair (assq 'right-fringe default-frame-alist)) | ||
| 121 | (left (cdr left-pair)) | ||
| 122 | (right (cdr right-pair))) | ||
| 123 | (if (or left-pair right-pair) | ||
| 124 | ;; If there's something in default-frame-alist for fringes, | ||
| 125 | ;; don't change it, but reflect that into the value of fringe-mode. | ||
| 126 | (progn | ||
| 127 | (setq fringe-mode (cons left right)) | ||
| 128 | (if (equal fringe-mode '(nil . nil)) | ||
| 129 | (setq fringe-mode nil)) | ||
| 130 | (if (equal fringe-mode '(0 . 0)) | ||
| 131 | (setq fringe-mode 0))) | ||
| 132 | ;; Otherwise impose the user-specified value of fringe-mode. | ||
| 133 | (custom-initialize-reset symbol value)))) | ||
| 134 | |||
| 115 | ;;;###autoload | 135 | ;;;###autoload |
| 116 | (defcustom fringe-mode nil | 136 | (defcustom fringe-mode nil |
| 117 | "*Specify appearance of fringes on all frames. | 137 | "*Specify appearance of fringes on all frames. |
| @@ -138,6 +158,7 @@ you can use the interactive function `toggle-fringe'" | |||
| 138 | (integer :tag "Right width"))) | 158 | (integer :tag "Right width"))) |
| 139 | :group 'frames | 159 | :group 'frames |
| 140 | :require 'fringe | 160 | :require 'fringe |
| 161 | :initialize 'fringe-mode-initialize | ||
| 141 | :set 'set-fringe-mode-1) | 162 | :set 'set-fringe-mode-1) |
| 142 | 163 | ||
| 143 | (defun fringe-query-style (&optional all-frames) | 164 | (defun fringe-query-style (&optional all-frames) |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 292d36ce9e1..70f43183e28 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,33 @@ | |||
| 1 | 2004-10-17 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * gnus-registry.el (gnus-registry-unload-hook): | ||
| 4 | Set as a variable with add-hook. | ||
| 5 | |||
| 6 | * nnspool.el (nnspool-spool-directory): Use news-directory instead | ||
| 7 | of news-path. | ||
| 8 | |||
| 9 | * spam-stat.el (spam-stat-unload-hook): Set as a variable w/ add-hook. | ||
| 10 | |||
| 11 | * spam.el: Delete duplicate `provide'. | ||
| 12 | (spam-unload-hook): Set as a variable with add-hook. | ||
| 13 | |||
| 14 | 2004-10-15 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 15 | |||
| 16 | * pop3.el (pop3-leave-mail-on-server): Describe possible problems | ||
| 17 | in the doc string. | ||
| 18 | |||
| 19 | * message.el (message-ignored-news-headers) | ||
| 20 | (message-ignored-supersedes-headers) | ||
| 21 | (message-ignored-resent-headers) | ||
| 22 | (message-forward-ignored-headers): Improve custom type. | ||
| 23 | |||
| 24 | 2004-10-15 Simon Josefsson <jas@extundo.com> | ||
| 25 | |||
| 26 | * pop3.el (top-level): Don't require nnheader. | ||
| 27 | (pop3-read-timeout): Add. | ||
| 28 | (pop3-accept-process-output): Add. | ||
| 29 | (pop3-read-response, pop3-retr): Use it. | ||
| 30 | |||
| 1 | 2004-10-13 Katsumi Yamaoka <yamaoka@jpl.org> | 31 | 2004-10-13 Katsumi Yamaoka <yamaoka@jpl.org> |
| 2 | 32 | ||
| 3 | * message.el (message-tokenize-header): Fix 2004-09-06 change | 33 | * message.el (message-tokenize-header): Fix 2004-09-06 change |
| @@ -9,6 +39,10 @@ | |||
| 9 | (tls-certificate-information): New function, based on | 39 | (tls-certificate-information): New function, based on |
| 10 | ssl-certificate-information. | 40 | ssl-certificate-information. |
| 11 | 41 | ||
| 42 | 2004-10-11 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 43 | |||
| 44 | * message.el (message-bury): Use `window-dedicated-p'. | ||
| 45 | |||
| 12 | 2004-10-10 Reiner Steib <Reiner.Steib@gmx.de> | 46 | 2004-10-10 Reiner Steib <Reiner.Steib@gmx.de> |
| 13 | 47 | ||
| 14 | * gnus-sum.el: Mention that multibyte characters don't work as marks. | 48 | * gnus-sum.el: Mention that multibyte characters don't work as marks. |
diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el index 33238ef4552..841f0057566 100644 --- a/lisp/gnus/gnus-registry.el +++ b/lisp/gnus/gnus-registry.el | |||
| @@ -693,6 +693,8 @@ Returns the first place where the trail finds a group name." | |||
| 693 | 693 | ||
| 694 | (remove-hook 'gnus-summary-prepare-hook 'gnus-registry-register-message-ids)) | 694 | (remove-hook 'gnus-summary-prepare-hook 'gnus-registry-register-message-ids)) |
| 695 | 695 | ||
| 696 | (add-hook 'gnus-registry-unload-hook 'gnus-registry-unload-hook) | ||
| 697 | |||
| 696 | (when gnus-registry-install | 698 | (when gnus-registry-install |
| 697 | (gnus-registry-install-hooks) | 699 | (gnus-registry-install-hooks) |
| 698 | (gnus-registry-read)) | 700 | (gnus-registry-read)) |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index c9d05d1a0fe..9e61e007a3e 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -255,7 +255,12 @@ included. Organization and User-Agent are optional." | |||
| 255 | :group 'message-news | 255 | :group 'message-news |
| 256 | :group 'message-headers | 256 | :group 'message-headers |
| 257 | :link '(custom-manual "(message)Message Headers") | 257 | :link '(custom-manual "(message)Message Headers") |
| 258 | :type 'regexp) | 258 | :type '(repeat :value-to-internal (lambda (widget value) |
| 259 | (custom-split-regexp-maybe value)) | ||
| 260 | :match (lambda (widget value) | ||
| 261 | (or (stringp value) | ||
| 262 | (widget-editable-list-match widget value))) | ||
| 263 | regexp)) | ||
| 259 | 264 | ||
| 260 | (defcustom message-ignored-mail-headers | 265 | (defcustom message-ignored-mail-headers |
| 261 | "^[GF]cc:\\|^Resent-Fcc:\\|^Xref:\\|^X-Draft-From:\\|^X-Gnus-Agent-Meta-Information:" | 266 | "^[GF]cc:\\|^Resent-Fcc:\\|^Xref:\\|^X-Draft-From:\\|^X-Gnus-Agent-Meta-Information:" |
| @@ -271,7 +276,12 @@ It's best to delete old Path and Date headers before posting to avoid | |||
| 271 | any confusion." | 276 | any confusion." |
| 272 | :group 'message-interface | 277 | :group 'message-interface |
| 273 | :link '(custom-manual "(message)Superseding") | 278 | :link '(custom-manual "(message)Superseding") |
| 274 | :type 'regexp) | 279 | :type '(repeat :value-to-internal (lambda (widget value) |
| 280 | (custom-split-regexp-maybe value)) | ||
| 281 | :match (lambda (widget value) | ||
| 282 | (or (stringp value) | ||
| 283 | (widget-editable-list-match widget value))) | ||
| 284 | regexp)) | ||
| 275 | 285 | ||
| 276 | (defcustom message-subject-re-regexp | 286 | (defcustom message-subject-re-regexp |
| 277 | "^[ \t]*\\([Rr][Ee]\\(\\[[0-9]*\\]\\)*:[ \t]*\\)*[ \t]*" | 287 | "^[ \t]*\\([Rr][Ee]\\(\\[[0-9]*\\]\\)*:[ \t]*\\)*[ \t]*" |
| @@ -534,13 +544,22 @@ Done before generating the new subject of a forward." | |||
| 534 | "*All headers that match this regexp will be deleted when resending a message." | 544 | "*All headers that match this regexp will be deleted when resending a message." |
| 535 | :group 'message-interface | 545 | :group 'message-interface |
| 536 | :link '(custom-manual "(message)Resending") | 546 | :link '(custom-manual "(message)Resending") |
| 537 | :type 'regexp) | 547 | :type '(repeat :value-to-internal (lambda (widget value) |
| 548 | (custom-split-regexp-maybe value)) | ||
| 549 | :match (lambda (widget value) | ||
| 550 | (or (stringp value) | ||
| 551 | (widget-editable-list-match widget value))) | ||
| 552 | regexp)) | ||
| 538 | 553 | ||
| 539 | (defcustom message-forward-ignored-headers "^Content-Transfer-Encoding:\\|^X-Gnus" | 554 | (defcustom message-forward-ignored-headers "^Content-Transfer-Encoding:\\|^X-Gnus" |
| 540 | "*All headers that match this regexp will be deleted when forwarding a message." | 555 | "*All headers that match this regexp will be deleted when forwarding a message." |
| 541 | :version "21.1" | 556 | :version "21.1" |
| 542 | :group 'message-forwarding | 557 | :group 'message-forwarding |
| 543 | :type '(choice (const :tag "None" nil) | 558 | :type '(repeat :value-to-internal (lambda (widget value) |
| 559 | (custom-split-regexp-maybe value)) | ||
| 560 | :match (lambda (widget value) | ||
| 561 | (or (stringp value) | ||
| 562 | (widget-editable-list-match widget value))) | ||
| 544 | regexp)) | 563 | regexp)) |
| 545 | 564 | ||
| 546 | (defcustom message-ignored-cited-headers "." | 565 | (defcustom message-ignored-cited-headers "." |
diff --git a/lisp/gnus/nnspool.el b/lisp/gnus/nnspool.el index eaf5159be8f..9a08cdfe71c 100644 --- a/lisp/gnus/nnspool.el +++ b/lisp/gnus/nnspool.el | |||
| @@ -44,7 +44,7 @@ This is most commonly `inews' or `injnews'.") | |||
| 44 | "Switches for nnspool-request-post to pass to `inews' for posting news. | 44 | "Switches for nnspool-request-post to pass to `inews' for posting news. |
| 45 | If you are using Cnews, you probably should set this variable to nil.") | 45 | If you are using Cnews, you probably should set this variable to nil.") |
| 46 | 46 | ||
| 47 | (defvoo nnspool-spool-directory (file-name-as-directory news-path) | 47 | (defvoo nnspool-spool-directory (file-name-as-directory news-directory) |
| 48 | "Local news spool directory.") | 48 | "Local news spool directory.") |
| 49 | 49 | ||
| 50 | (defvoo nnspool-nov-directory (concat nnspool-spool-directory "over.view/") | 50 | (defvoo nnspool-nov-directory (concat nnspool-spool-directory "over.view/") |
diff --git a/lisp/gnus/pop3.el b/lisp/gnus/pop3.el index e288f6cace2..db8753057d6 100644 --- a/lisp/gnus/pop3.el +++ b/lisp/gnus/pop3.el | |||
| @@ -83,7 +83,14 @@ values are 'apop." | |||
| 83 | :group 'pop3) | 83 | :group 'pop3) |
| 84 | 84 | ||
| 85 | (defcustom pop3-leave-mail-on-server nil | 85 | (defcustom pop3-leave-mail-on-server nil |
| 86 | "*Non-nil if the mail is to be left on the POP server after fetching." | 86 | "*Non-nil if the mail is to be left on the POP server after fetching. |
| 87 | |||
| 88 | If the `pop3-leave-mail-on-server' is non-`nil' the mail is to be | ||
| 89 | left on the POP server after fetching. Note that POP servers | ||
| 90 | maintain no state information between sessions, so what the | ||
| 91 | client believes is there and what is actually there may not match | ||
| 92 | up. If they do not, then the whole thing can fall apart and | ||
| 93 | leave you with a corrupt mailbox." | ||
| 87 | :version "21.4" ;; Oort Gnus | 94 | :version "21.4" ;; Oort Gnus |
| 88 | :type 'boolean | 95 | :type 'boolean |
| 89 | :group 'pop3) | 96 | :group 'pop3) |
| @@ -95,6 +102,32 @@ Used for APOP authentication.") | |||
| 95 | (defvar pop3-read-point nil) | 102 | (defvar pop3-read-point nil) |
| 96 | (defvar pop3-debug nil) | 103 | (defvar pop3-debug nil) |
| 97 | 104 | ||
| 105 | ;; Borrowed from nnheader-accept-process-output in nnheader.el. | ||
| 106 | (defvar pop3-read-timeout | ||
| 107 | (if (string-match "windows-nt\\|os/2\\|emx\\|cygwin" | ||
| 108 | (symbol-name system-type)) | ||
| 109 | ;; http://thread.gmane.org/v9655t3pjo.fsf@marauder.physik.uni-ulm.de | ||
| 110 | ;; | ||
| 111 | ;; IIRC, values lower than 1.0 didn't/don't work on Windows/DOS. | ||
| 112 | ;; | ||
| 113 | ;; There should probably be a runtime test to determine the timing | ||
| 114 | ;; resolution, or a primitive to report it. I don't know off-hand | ||
| 115 | ;; what's possible. Perhaps better, maybe the Windows/DOS primitive | ||
| 116 | ;; could round up non-zero timeouts to a minimum of 1.0? | ||
| 117 | 1.0 | ||
| 118 | 0.1) | ||
| 119 | "How long pop3 should wait between checking for the end of output. | ||
| 120 | Shorter values mean quicker response, but are more CPU intensive.") | ||
| 121 | |||
| 122 | ;; Borrowed from nnheader-accept-process-output in nnheader.el. | ||
| 123 | (defun pop3-accept-process-output (process) | ||
| 124 | (accept-process-output | ||
| 125 | process | ||
| 126 | (truncate pop3-read-timeout) | ||
| 127 | (truncate (* (- pop3-read-timeout | ||
| 128 | (truncate pop3-read-timeout)) | ||
| 129 | 1000)))) | ||
| 130 | |||
| 98 | (defun pop3-movemail (&optional crashbox) | 131 | (defun pop3-movemail (&optional crashbox) |
| 99 | "Transfer contents of a maildrop to the specified CRASHBOX." | 132 | "Transfer contents of a maildrop to the specified CRASHBOX." |
| 100 | (or crashbox (setq crashbox (expand-file-name "~/.crashbox"))) | 133 | (or crashbox (setq crashbox (expand-file-name "~/.crashbox"))) |
| @@ -207,7 +240,7 @@ Return the response string if optional second argument is non-nil." | |||
| 207 | (goto-char pop3-read-point) | 240 | (goto-char pop3-read-point) |
| 208 | (while (and (memq (process-status process) '(open run)) | 241 | (while (and (memq (process-status process) '(open run)) |
| 209 | (not (search-forward "\r\n" nil t))) | 242 | (not (search-forward "\r\n" nil t))) |
| 210 | (nnheader-accept-process-output process) | 243 | (pop3-accept-process-output process) |
| 211 | (goto-char pop3-read-point)) | 244 | (goto-char pop3-read-point)) |
| 212 | (setq match-end (point)) | 245 | (setq match-end (point)) |
| 213 | (goto-char pop3-read-point) | 246 | (goto-char pop3-read-point) |
| @@ -381,8 +414,7 @@ This function currently does nothing.") | |||
| 381 | (save-excursion | 414 | (save-excursion |
| 382 | (set-buffer (process-buffer process)) | 415 | (set-buffer (process-buffer process)) |
| 383 | (while (not (re-search-forward "^\\.\r\n" nil t)) | 416 | (while (not (re-search-forward "^\\.\r\n" nil t)) |
| 384 | ;; Fixme: Shouldn't depend on nnheader. | 417 | (pop3-accept-process-output process) |
| 385 | (nnheader-accept-process-output process) | ||
| 386 | (goto-char start)) | 418 | (goto-char start)) |
| 387 | (setq pop3-read-point (point-marker)) | 419 | (setq pop3-read-point (point-marker)) |
| 388 | ;; this code does not seem to work for some POP servers... | 420 | ;; this code does not seem to work for some POP servers... |
diff --git a/lisp/gnus/spam-stat.el b/lisp/gnus/spam-stat.el index 9e20a51b127..f197d165cdd 100644 --- a/lisp/gnus/spam-stat.el +++ b/lisp/gnus/spam-stat.el | |||
| @@ -594,6 +594,8 @@ COUNT defaults to 5" | |||
| 594 | (remove-hook 'gnus-select-article-hook | 594 | (remove-hook 'gnus-select-article-hook |
| 595 | 'spam-stat-store-gnus-article-buffer)) | 595 | 'spam-stat-store-gnus-article-buffer)) |
| 596 | 596 | ||
| 597 | (add-hook 'spam-stat-unload-hook 'spam-stat-unload-hook) | ||
| 598 | |||
| 597 | (provide 'spam-stat) | 599 | (provide 'spam-stat) |
| 598 | 600 | ||
| 599 | ;;; arch-tag: ff1d2200-8ddb-42fb-bb7b-1b5e20448554 | 601 | ;;; arch-tag: ff1d2200-8ddb-42fb-bb7b-1b5e20448554 |
diff --git a/lisp/gnus/spam.el b/lisp/gnus/spam.el index 85534f3828c..2b5f7be936b 100644 --- a/lisp/gnus/spam.el +++ b/lisp/gnus/spam.el | |||
| @@ -1814,14 +1814,12 @@ REMOVE not nil, remove the ADDRESSES." | |||
| 1814 | (remove-hook 'gnus-get-new-news-hook 'spam-setup-widening) | 1814 | (remove-hook 'gnus-get-new-news-hook 'spam-setup-widening) |
| 1815 | (remove-hook 'gnus-summary-prepare-hook 'spam-find-spam)) | 1815 | (remove-hook 'gnus-summary-prepare-hook 'spam-find-spam)) |
| 1816 | 1816 | ||
| 1817 | (add-hook 'spam-unload-hook 'spam-unload-hook) | ||
| 1818 | |||
| 1817 | (when spam-install-hooks | 1819 | (when spam-install-hooks |
| 1818 | (spam-initialize)) | 1820 | (spam-initialize)) |
| 1819 | 1821 | ||
| 1820 | (provide 'spam) | 1822 | (provide 'spam) |
| 1821 | 1823 | ||
| 1822 | ;;; spam.el ends here. | ||
| 1823 | |||
| 1824 | (provide 'spam) | ||
| 1825 | |||
| 1826 | ;;; arch-tag: 07e6e0ca-ab0a-4412-b445-1f6c72a4f27f | 1824 | ;;; arch-tag: 07e6e0ca-ab0a-4412-b445-1f6c72a4f27f |
| 1827 | ;;; spam.el ends here | 1825 | ;;; spam.el ends here |
diff --git a/lisp/help-at-pt.el b/lisp/help-at-pt.el index ad1f2b3a96a..d6ac6ec3fdc 100644 --- a/lisp/help-at-pt.el +++ b/lisp/help-at-pt.el | |||
| @@ -348,8 +348,7 @@ different regions. With numeric argument ARG, behaves like | |||
| 348 | (interactive "p") | 348 | (interactive "p") |
| 349 | (scan-buf-move-to-region 'help-echo (- arg) 'scan-buf-move-hook)) | 349 | (scan-buf-move-to-region 'help-echo (- arg) 'scan-buf-move-hook)) |
| 350 | 350 | ||
| 351 | (defvar help-at-pt-unload-hook '(help-at-pt-cancel-timer) | 351 | (add-hook 'help-at-pt-unload-hook 'help-at-pt-cancel-timer) |
| 352 | "Normal hook run when `help-at-pt' is unloaded.") | ||
| 353 | 352 | ||
| 354 | (provide 'help-at-pt) | 353 | (provide 'help-at-pt) |
| 355 | 354 | ||
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el index f013f8e3c72..12f29bdac63 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el | |||
| @@ -213,12 +213,20 @@ If a regexp, then it will be matched against the buffer's name. | |||
| 213 | If a function, it will be called with the buffer as an argument, and | 213 | If a function, it will be called with the buffer as an argument, and |
| 214 | should return non-nil if this buffer should be shown. | 214 | should return non-nil if this buffer should be shown. |
| 215 | 215 | ||
| 216 | Viewing of buffers hidden because of these predicates is enabled by | 216 | Viewing of buffers hidden because of these predicates may be customized |
| 217 | giving a non-nil prefix argument to `ibuffer-update'. Note that this | 217 | via `ibuffer-default-display-maybe-show-predicates' and is toggled by |
| 218 | specialized filtering occurs before real filtering." | 218 | giving a non-nil prefix argument to `ibuffer-update'. |
| 219 | Note that this specialized filtering occurs before real filtering." | ||
| 219 | :type '(repeat (choice regexp function)) | 220 | :type '(repeat (choice regexp function)) |
| 220 | :group 'ibuffer) | 221 | :group 'ibuffer) |
| 221 | 222 | ||
| 223 | (defcustom ibuffer-default-display-maybe-show-predicates nil | ||
| 224 | "Non-nil means show buffers that match `ibuffer-maybe-show-predicates'." | ||
| 225 | :type 'boolean | ||
| 226 | :group 'ibuffer) | ||
| 227 | |||
| 228 | (defvar ibuffer-display-maybe-show-predicates nil) | ||
| 229 | |||
| 222 | (defvar ibuffer-current-format nil) | 230 | (defvar ibuffer-current-format nil) |
| 223 | 231 | ||
| 224 | (defcustom ibuffer-movement-cycle t | 232 | (defcustom ibuffer-movement-cycle t |
| @@ -2069,11 +2077,15 @@ If optional arg SILENT is non-nil, do not display progress messages." | |||
| 2069 | 2077 | ||
| 2070 | (defun ibuffer-update (arg &optional silent) | 2078 | (defun ibuffer-update (arg &optional silent) |
| 2071 | "Regenerate the list of all buffers. | 2079 | "Regenerate the list of all buffers. |
| 2072 | Display buffers whose name matches one of `ibuffer-maybe-show-predicates' | 2080 | |
| 2073 | iff arg ARG is non-nil. | 2081 | Prefix arg non-nil means to toggle whether buffers that match |
| 2082 | `ibuffer-maybe-show-predicates' should be displayed. | ||
| 2074 | 2083 | ||
| 2075 | If optional arg SILENT is non-nil, do not display progress messages." | 2084 | If optional arg SILENT is non-nil, do not display progress messages." |
| 2076 | (interactive "P") | 2085 | (interactive "P") |
| 2086 | (if arg | ||
| 2087 | (setq ibuffer-display-maybe-show-predicates | ||
| 2088 | (not ibuffer-display-maybe-show-predicates))) | ||
| 2077 | (ibuffer-forward-line 0) | 2089 | (ibuffer-forward-line 0) |
| 2078 | (let* ((bufs (buffer-list)) | 2090 | (let* ((bufs (buffer-list)) |
| 2079 | (blist (ibuffer-filter-buffers | 2091 | (blist (ibuffer-filter-buffers |
| @@ -2086,7 +2098,7 @@ If optional arg SILENT is non-nil, do not display progress messages." | |||
| 2086 | (caddr bufs) | 2098 | (caddr bufs) |
| 2087 | (cadr bufs)) | 2099 | (cadr bufs)) |
| 2088 | (ibuffer-current-buffers-with-marks bufs) | 2100 | (ibuffer-current-buffers-with-marks bufs) |
| 2089 | arg))) | 2101 | ibuffer-display-maybe-show-predicates))) |
| 2090 | (when (null blist) | 2102 | (when (null blist) |
| 2091 | (if (and (featurep 'ibuf-ext) | 2103 | (if (and (featurep 'ibuf-ext) |
| 2092 | ibuffer-filtering-qualifiers) | 2104 | ibuffer-filtering-qualifiers) |
| @@ -2148,7 +2160,7 @@ If optional arg SILENT is non-nil, do not display progress messages." | |||
| 2148 | 'ibuffer-filter-group | 2160 | 'ibuffer-filter-group |
| 2149 | name))) | 2161 | name))) |
| 2150 | 2162 | ||
| 2151 | (defun ibuffer-redisplay-engine (bmarklist &optional all) | 2163 | (defun ibuffer-redisplay-engine (bmarklist &optional ignore) |
| 2152 | (assert (eq major-mode 'ibuffer-mode)) | 2164 | (assert (eq major-mode 'ibuffer-mode)) |
| 2153 | (let* ((--ibuffer-insert-buffers-and-marks-format | 2165 | (let* ((--ibuffer-insert-buffers-and-marks-format |
| 2154 | (ibuffer-current-format)) | 2166 | (ibuffer-current-format)) |
| @@ -2475,6 +2487,8 @@ will be inserted before the group at point." | |||
| 2475 | ibuffer-default-sorting-reversep) | 2487 | ibuffer-default-sorting-reversep) |
| 2476 | (set (make-local-variable 'ibuffer-shrink-to-minimum-size) | 2488 | (set (make-local-variable 'ibuffer-shrink-to-minimum-size) |
| 2477 | ibuffer-default-shrink-to-minimum-size) | 2489 | ibuffer-default-shrink-to-minimum-size) |
| 2490 | (set (make-local-variable 'ibuffer-display-maybe-show-predicates) | ||
| 2491 | ibuffer-default-display-maybe-show-predicates) | ||
| 2478 | (set (make-local-variable 'ibuffer-filtering-qualifiers) nil) | 2492 | (set (make-local-variable 'ibuffer-filtering-qualifiers) nil) |
| 2479 | (set (make-local-variable 'ibuffer-filter-groups) nil) | 2493 | (set (make-local-variable 'ibuffer-filter-groups) nil) |
| 2480 | (set (make-local-variable 'ibuffer-filter-group-kill-ring) nil) | 2494 | (set (make-local-variable 'ibuffer-filter-group-kill-ring) nil) |
diff --git a/lisp/info.el b/lisp/info.el index 386f5b612ec..17905c6d738 100644 --- a/lisp/info.el +++ b/lisp/info.el | |||
| @@ -3445,7 +3445,8 @@ Preserve text properties." | |||
| 3445 | (fontify-visited-p ; visited nodes need to be re-fontified | 3445 | (fontify-visited-p ; visited nodes need to be re-fontified |
| 3446 | (and Info-fontify-visited-nodes | 3446 | (and Info-fontify-visited-nodes |
| 3447 | ;; Don't take time to refontify visited nodes in huge nodes | 3447 | ;; Don't take time to refontify visited nodes in huge nodes |
| 3448 | (< (- (point-max) (point-min)) Info-fontify-maximum-menu-size)))) | 3448 | (< (- (point-max) (point-min)) Info-fontify-maximum-menu-size))) |
| 3449 | rbeg rend) | ||
| 3449 | 3450 | ||
| 3450 | ;; Fontify header line | 3451 | ;; Fontify header line |
| 3451 | (goto-char (point-min)) | 3452 | (goto-char (point-min)) |
| @@ -3570,39 +3571,48 @@ Preserve text properties." | |||
| 3570 | "mouse-2: go to this node") | 3571 | "mouse-2: go to this node") |
| 3571 | 'mouse-face 'highlight))) | 3572 | 'mouse-face 'highlight))) |
| 3572 | (when (or not-fontified-p fontify-visited-p) | 3573 | (when (or not-fontified-p fontify-visited-p) |
| 3573 | (add-text-properties | 3574 | (setq rbeg (match-beginning 2) |
| 3574 | (match-beginning 2) (match-end 2) | 3575 | rend (match-end 2)) |
| 3575 | (list | 3576 | (put-text-property |
| 3576 | 'font-lock-face | 3577 | rbeg rend |
| 3577 | ;; Display visited nodes in a different face | 3578 | 'font-lock-face |
| 3578 | (if (and Info-fontify-visited-nodes | 3579 | ;; Display visited nodes in a different face |
| 3579 | (save-match-data | 3580 | (if (and Info-fontify-visited-nodes |
| 3580 | (let* ((node (replace-regexp-in-string | 3581 | (save-match-data |
| 3581 | "^[ \t]+" "" | 3582 | (let* ((node (replace-regexp-in-string |
| 3582 | (replace-regexp-in-string | 3583 | "^[ \t]+" "" |
| 3583 | "[ \t\n]+" " " | 3584 | (replace-regexp-in-string |
| 3584 | (or (match-string 5) | 3585 | "[ \t\n]+" " " |
| 3585 | (and (not (equal (match-string 4) "")) | 3586 | (or (match-string 5) |
| 3586 | (match-string 4)) | 3587 | (and (not (equal (match-string 4) "")) |
| 3587 | (match-string 2))))) | 3588 | (match-string 4)) |
| 3588 | (file (file-name-nondirectory | 3589 | (match-string 2))))) |
| 3589 | Info-current-file)) | 3590 | (file (file-name-nondirectory |
| 3590 | (hl Info-history-list) | 3591 | Info-current-file)) |
| 3591 | res) | 3592 | (hl Info-history-list) |
| 3592 | (if (string-match "(\\([^)]+\\))\\([^)]*\\)" node) | 3593 | res) |
| 3593 | (setq file (file-name-nondirectory | 3594 | (if (string-match "(\\([^)]+\\))\\([^)]*\\)" node) |
| 3594 | (match-string 1 node)) | 3595 | (setq file (file-name-nondirectory |
| 3595 | node (if (equal (match-string 2 node) "") | 3596 | (match-string 1 node)) |
| 3596 | "Top" | 3597 | node (if (equal (match-string 2 node) "") |
| 3597 | (match-string 2 node)))) | 3598 | "Top" |
| 3598 | (while hl | 3599 | (match-string 2 node)))) |
| 3599 | (if (and (string-equal node (nth 1 (car hl))) | 3600 | (while hl |
| 3600 | (string-equal file | 3601 | (if (and (string-equal node (nth 1 (car hl))) |
| 3601 | (file-name-nondirectory | 3602 | (string-equal file |
| 3602 | (nth 0 (car hl))))) | 3603 | (file-name-nondirectory |
| 3603 | (setq res (car hl) hl nil) | 3604 | (nth 0 (car hl))))) |
| 3604 | (setq hl (cdr hl)))) | 3605 | (setq res (car hl) hl nil) |
| 3605 | res))) 'info-xref-visited 'info-xref)))) | 3606 | (setq hl (cdr hl)))) |
| 3607 | res))) 'info-xref-visited 'info-xref)) | ||
| 3608 | ;; For multiline ref, unfontify newline and surrounding whitespace | ||
| 3609 | (save-excursion | ||
| 3610 | (goto-char rbeg) | ||
| 3611 | (save-match-data | ||
| 3612 | (while (re-search-forward "\\s-*\n\\s-*" rend t nil) | ||
| 3613 | (remove-text-properties (match-beginning 0) | ||
| 3614 | (match-end 0) | ||
| 3615 | '(font-lock-face t)))))) | ||
| 3606 | (when not-fontified-p | 3616 | (when not-fontified-p |
| 3607 | (when (memq Info-hide-note-references '(t hide)) | 3617 | (when (memq Info-hide-note-references '(t hide)) |
| 3608 | (add-text-properties (match-beginning 3) (match-end 3) | 3618 | (add-text-properties (match-beginning 3) (match-end 3) |
diff --git a/lisp/language/indian.el b/lisp/language/indian.el index 9c6184364bd..4b9e08045db 100644 --- a/lisp/language/indian.el +++ b/lisp/language/indian.el | |||
| @@ -50,6 +50,15 @@ | |||
| 50 | Currently supported foundries are `cdac' and `akruti'.") | 50 | Currently supported foundries are `cdac' and `akruti'.") |
| 51 | 51 | ||
| 52 | (defvar indian-script-language-alist | 52 | (defvar indian-script-language-alist |
| 53 | '((devanagari (hindi sanskrit) nil) | ||
| 54 | (bengali (bengali assamese) nil) | ||
| 55 | (gurmukhi (punjabi) nil) | ||
| 56 | (gujarati (gujarati) nil) | ||
| 57 | (oriya (oriya) nil) | ||
| 58 | (tamil (tamil) nil) | ||
| 59 | (telugu (telugu) nil) | ||
| 60 | (kannada (kannada) nil) | ||
| 61 | (malayalam (malayalam) nil)) | ||
| 53 | "Alist of Indian scripts vs the corresponding language list and font foundry. | 62 | "Alist of Indian scripts vs the corresponding language list and font foundry. |
| 54 | Each element has this form: | 63 | Each element has this form: |
| 55 | 64 | ||
| @@ -62,16 +71,7 @@ The list is in the priority order. | |||
| 62 | 71 | ||
| 63 | FONT-FOUNDRY is a font foundry representing a group of Indian | 72 | FONT-FOUNDRY is a font foundry representing a group of Indian |
| 64 | fonts. If the value is nil, the value of `indian-font-foundry' | 73 | fonts. If the value is nil, the value of `indian-font-foundry' |
| 65 | is used." | 74 | is used.") |
| 66 | '((devanagari (hindi sanskrit) nil) | ||
| 67 | (bengali (bengali assamese) nil) | ||
| 68 | (gurmukhi (punjabi) nil) | ||
| 69 | (gujarati (gujarati) nil) | ||
| 70 | (oriya (oriya) nil) | ||
| 71 | (tamil (tamil) nil) | ||
| 72 | (telugu (telugu) nil) | ||
| 73 | (kannada (kannada) nil) | ||
| 74 | (malayalam (malayalam) nil))) | ||
| 75 | 75 | ||
| 76 | (defconst indian-font-char-index-table | 76 | (defconst indian-font-char-index-table |
| 77 | '( ; for which language(s) | 77 | '( ; for which language(s) |
| @@ -99,14 +99,14 @@ is used." | |||
| 99 | (#x1200 . akruti:knd) ; kannada | 99 | (#x1200 . akruti:knd) ; kannada |
| 100 | (#x1300 . akruti:mal) ; malayalam | 100 | (#x1300 . akruti:mal) ; malayalam |
| 101 | ) | 101 | ) |
| 102 | "Aliat of indices of `indian-glyph' character vs Indian font identifiers. | 102 | "Alist of indices of `indian-glyph' character vs Indian font identifiers. |
| 103 | Each element has this form: (INDEX . FONT-IDENTIFIER) | 103 | Each element has this form: (INDEX . FONT-IDENTIFIER) |
| 104 | 104 | ||
| 105 | INDEX is an index number of the first character in the charset | 105 | INDEX is an index number of the first character in the charset |
| 106 | `indian-glyph' assigned for glyphs in the font specified by | 106 | `indian-glyph' assigned for glyphs in the font specified by |
| 107 | FONT-IDENTIFIER. Currently FONT-IDENTIFIERs are defined for CDAC | 107 | FONT-IDENTIFIER. Currently FONT-IDENTIFIERs are defined for CDAC |
| 108 | and AKRUTI font groups.") | 108 | and AKRUTI font groups.") |
| 109 | 109 | ||
| 110 | (defun indian-font-char (index font-identifier) | 110 | (defun indian-font-char (index font-identifier) |
| 111 | "Return character of charset `indian-glyph' made from glyph index INDEX. | 111 | "Return character of charset `indian-glyph' made from glyph index INDEX. |
| 112 | FONT-IDENTIFIER is an identifier of an Indian font listed in the | 112 | FONT-IDENTIFIER is an identifier of an Indian font listed in the |
| @@ -127,7 +127,7 @@ font INDEX is for." | |||
| 127 | (defun indian-font-char-range (font-identifier) | 127 | (defun indian-font-char-range (font-identifier) |
| 128 | (cons (indian-font-char 0 font-identifier) | 128 | (cons (indian-font-char 0 font-identifier) |
| 129 | (indian-font-char 255 font-identifier))) | 129 | (indian-font-char 255 font-identifier))) |
| 130 | 130 | ||
| 131 | (defvar indian-script-table | 131 | (defvar indian-script-table |
| 132 | '[ | 132 | '[ |
| 133 | devanagari | 133 | devanagari |
diff --git a/lisp/mouse.el b/lisp/mouse.el index b73967b99dc..abf62a97836 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el | |||
| @@ -338,6 +338,17 @@ shrink the window or windows above it to make room." | |||
| 338 | (select-window window) | 338 | (select-window window) |
| 339 | (enlarge-window growth nil (> growth 0)))) | 339 | (enlarge-window growth nil (> growth 0)))) |
| 340 | 340 | ||
| 341 | (defsubst mouse-drag-move-window-top (window growth) | ||
| 342 | "Move the top of WINDOW up or down by GROWTH lines. | ||
| 343 | Move it down if GROWTH is positive, or up if GROWTH is negative. | ||
| 344 | If this would make WINDOW too short, shrink the window or windows | ||
| 345 | above it to make room." | ||
| 346 | ;; Moving the top of WINDOW is actually moving the bottom of the | ||
| 347 | ;; window above. | ||
| 348 | (let ((window-above (mouse-drag-window-above window))) | ||
| 349 | (and window-above | ||
| 350 | (mouse-drag-move-window-bottom window-above (- growth))))) | ||
| 351 | |||
| 341 | (defun mouse-drag-mode-line-1 (start-event mode-line-p) | 352 | (defun mouse-drag-mode-line-1 (start-event mode-line-p) |
| 342 | "Change the height of a window by dragging on the mode or header line. | 353 | "Change the height of a window by dragging on the mode or header line. |
| 343 | START-EVENT is the starting mouse-event of the drag action. | 354 | START-EVENT is the starting mouse-event of the drag action. |
| @@ -444,7 +455,9 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line." | |||
| 444 | (select-window start-event-window)) | 455 | (select-window start-event-window)) |
| 445 | ;; no. grow/shrink the selected window | 456 | ;; no. grow/shrink the selected window |
| 446 | ;(message "growth = %d" growth) | 457 | ;(message "growth = %d" growth) |
| 447 | (mouse-drag-move-window-bottom start-event-window growth)) | 458 | (if mode-line-p |
| 459 | (mouse-drag-move-window-bottom start-event-window growth) | ||
| 460 | (mouse-drag-move-window-top start-event-window growth))) | ||
| 448 | 461 | ||
| 449 | ;; if this window's growth caused another | 462 | ;; if this window's growth caused another |
| 450 | ;; window to be deleted because it was too | 463 | ;; window to be deleted because it was too |
| @@ -1097,7 +1110,7 @@ and set mark at the beginning. | |||
| 1097 | Prefix arguments are interpreted as with \\[yank]. | 1110 | Prefix arguments are interpreted as with \\[yank]. |
| 1098 | If `mouse-yank-at-point' is non-nil, insert at point | 1111 | If `mouse-yank-at-point' is non-nil, insert at point |
| 1099 | regardless of where you click." | 1112 | regardless of where you click." |
| 1100 | (interactive "e\nP") | 1113 | (interactive "*e\nP") |
| 1101 | ;; Give temporary modes such as isearch a chance to turn off. | 1114 | ;; Give temporary modes such as isearch a chance to turn off. |
| 1102 | (run-hooks 'mouse-leave-buffer-hook) | 1115 | (run-hooks 'mouse-leave-buffer-hook) |
| 1103 | (or mouse-yank-at-point (mouse-set-point click)) | 1116 | (or mouse-yank-at-point (mouse-set-point click)) |
| @@ -1399,7 +1412,7 @@ The function returns a non-nil value if it creates a secondary selection." | |||
| 1399 | Move point to the end of the inserted text. | 1412 | Move point to the end of the inserted text. |
| 1400 | If `mouse-yank-at-point' is non-nil, insert at point | 1413 | If `mouse-yank-at-point' is non-nil, insert at point |
| 1401 | regardless of where you click." | 1414 | regardless of where you click." |
| 1402 | (interactive "e") | 1415 | (interactive "*e") |
| 1403 | ;; Give temporary modes such as isearch a chance to turn off. | 1416 | ;; Give temporary modes such as isearch a chance to turn off. |
| 1404 | (run-hooks 'mouse-leave-buffer-hook) | 1417 | (run-hooks 'mouse-leave-buffer-hook) |
| 1405 | (or mouse-yank-at-point (mouse-set-point click)) | 1418 | (or mouse-yank-at-point (mouse-set-point click)) |
diff --git a/lisp/msb.el b/lisp/msb.el index e352150a57d..2ab7fe5491d 100644 --- a/lisp/msb.el +++ b/lisp/msb.el | |||
| @@ -1153,6 +1153,7 @@ different buffer menu using the function `msb'." | |||
| 1153 | 1153 | ||
| 1154 | (defun msb-unload-hook () | 1154 | (defun msb-unload-hook () |
| 1155 | (msb-mode 0)) | 1155 | (msb-mode 0)) |
| 1156 | (add-hook 'msb-unload-hook 'msb-unload-hook) | ||
| 1156 | 1157 | ||
| 1157 | (provide 'msb) | 1158 | (provide 'msb) |
| 1158 | (eval-after-load "msb" '(run-hooks 'msb-after-load-hook 'msb-after-load-hooks)) | 1159 | (eval-after-load "msb" '(run-hooks 'msb-after-load-hook 'msb-after-load-hooks)) |
diff --git a/lisp/net/password.el b/lisp/net/password.el new file mode 100644 index 00000000000..e8be612ecca --- /dev/null +++ b/lisp/net/password.el | |||
| @@ -0,0 +1,128 @@ | |||
| 1 | ;;; password.el --- Read passwords from user, possibly using a password cache. | ||
| 2 | |||
| 3 | ;; Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | ;; Author: Simon Josefsson <simon@josefsson.org> | ||
| 6 | ;; Created: 2003-12-21 | ||
| 7 | ;; Keywords: password cache passphrase key | ||
| 8 | |||
| 9 | ;; This file is part of GNU Emacs. | ||
| 10 | |||
| 11 | ;; GNU Emacs is free software; you can redistribute it and/or modify | ||
| 12 | ;; it under the terms of the GNU General Public License as published by | ||
| 13 | ;; the Free Software Foundation; either version 2, or (at your option) | ||
| 14 | ;; any later version. | ||
| 15 | |||
| 16 | ;; GNU Emacs is distributed in the hope that it will be useful, | ||
| 17 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 18 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 19 | ;; GNU General Public License for more details. | ||
| 20 | |||
| 21 | ;; You should have received a copy of the GNU General Public License | ||
| 22 | ;; along with GNU Emacs; see the file COPYING. If not, write to the | ||
| 23 | ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | ||
| 24 | ;; Boston, MA 02111-1307, USA. | ||
| 25 | |||
| 26 | ;;; Commentary: | ||
| 27 | |||
| 28 | ;; Greatly influenced by pgg.el written by Daiki Ueno, with timer | ||
| 29 | ;; fixes for XEmacs by Katsumi Yamaoka. In fact, this is mostly just | ||
| 30 | ;; a rip-off. | ||
| 31 | ;; | ||
| 32 | ;; (password-read "Password? " "test") | ||
| 33 | ;; ;; Minibuffer prompt for password. | ||
| 34 | ;; => "foo" | ||
| 35 | ;; | ||
| 36 | ;; (password-cache-add "test" "foo") | ||
| 37 | ;; => nil | ||
| 38 | |||
| 39 | ;; Note the previous two can be replaced with: | ||
| 40 | ;; (password-read-and-add "Password? " "test") | ||
| 41 | ;; ;; Minibuffer prompt for password. | ||
| 42 | ;; => "foo" | ||
| 43 | ;; ;; "foo" is now cached with key "test" | ||
| 44 | |||
| 45 | |||
| 46 | ;; (password-read "Password? " "test") | ||
| 47 | ;; ;; No minibuffer prompt | ||
| 48 | ;; => "foo" | ||
| 49 | ;; | ||
| 50 | ;; (password-read "Password? " "test") | ||
| 51 | ;; ;; No minibuffer prompt | ||
| 52 | ;; => "foo" | ||
| 53 | ;; | ||
| 54 | ;; ;; Wait `password-cache-expiry' seconds. | ||
| 55 | ;; | ||
| 56 | ;; (password-read "Password? " "test") | ||
| 57 | ;; ;; Minibuffer prompt for password is back. | ||
| 58 | ;; => "foo" | ||
| 59 | |||
| 60 | ;;; Code: | ||
| 61 | |||
| 62 | (when (featurep 'xemacs) | ||
| 63 | (require 'run-at-time)) | ||
| 64 | |||
| 65 | (eval-when-compile | ||
| 66 | (require 'cl)) | ||
| 67 | |||
| 68 | (defcustom password-cache t | ||
| 69 | "Whether to cache passwords." | ||
| 70 | :group 'password | ||
| 71 | :type 'boolean) | ||
| 72 | |||
| 73 | (defcustom password-cache-expiry 16 | ||
| 74 | "How many seconds passwords are cached, or nil to disable expiring. | ||
| 75 | Whether passwords are cached at all is controlled by `password-cache'." | ||
| 76 | :group 'password | ||
| 77 | :type '(choice (const :tag "Never" nil) | ||
| 78 | (integer :tag "Seconds"))) | ||
| 79 | |||
| 80 | (defvar password-data (make-vector 7 0)) | ||
| 81 | |||
| 82 | (defun password-read (prompt &optional key) | ||
| 83 | "Read password, for use with KEY, from user, or from cache if wanted. | ||
| 84 | KEY indicate the purpose of the password, so the cache can | ||
| 85 | separate passwords. The cache is not used if KEY is nil. It is | ||
| 86 | typically a string. | ||
| 87 | The variable `password-cache' control whether the cache is used." | ||
| 88 | (or (and password-cache | ||
| 89 | key | ||
| 90 | (symbol-value (intern-soft key password-data))) | ||
| 91 | (read-passwd prompt))) | ||
| 92 | |||
| 93 | (defun password-read-and-add (prompt &optional key) | ||
| 94 | "Read password, for use with KEY, from user, or from cache if wanted. | ||
| 95 | Then store the password in the cache. Uses `password-read' and | ||
| 96 | `password-cache-add'." | ||
| 97 | (let ((password (password-read prompt key))) | ||
| 98 | (when (and password key) | ||
| 99 | (password-cache-add key password)) | ||
| 100 | password)) | ||
| 101 | |||
| 102 | (defun password-cache-remove (key) | ||
| 103 | "Remove password indexed by KEY from password cache. | ||
| 104 | This is typically run be a timer setup from `password-cache-add', | ||
| 105 | but can be invoked at any time to forcefully remove passwords | ||
| 106 | from the cache. This may be useful when it has been detected | ||
| 107 | that a password is invalid, so that `password-read' query the | ||
| 108 | user again." | ||
| 109 | (let ((password (symbol-value (intern-soft key password-data)))) | ||
| 110 | (when password | ||
| 111 | (fillarray password ?_) | ||
| 112 | (unintern key password-data)))) | ||
| 113 | |||
| 114 | (defun password-cache-add (key password) | ||
| 115 | "Add password to cache. | ||
| 116 | The password is removed by a timer after `password-cache-expiry' | ||
| 117 | seconds." | ||
| 118 | (set (intern key password-data) password) | ||
| 119 | (when password-cache-expiry | ||
| 120 | (run-at-time password-cache-expiry nil | ||
| 121 | #'password-cache-remove | ||
| 122 | key)) | ||
| 123 | nil) | ||
| 124 | |||
| 125 | (provide 'password) | ||
| 126 | |||
| 127 | ;;; arch-tag: ab160494-16c8-4c68-a4a1-73eebf6686e5 | ||
| 128 | ;;; password.el ends here | ||
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index a30280dbd4f..582ae8ee207 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -2337,45 +2337,46 @@ If it doesn't exist, generate a new one." | |||
| 2337 | ;; This function makes the same assumption as | 2337 | ;; This function makes the same assumption as |
| 2338 | ;; `tramp-handle-set-visited-file-modtime'. | 2338 | ;; `tramp-handle-set-visited-file-modtime'. |
| 2339 | (defun tramp-handle-verify-visited-file-modtime (buf) | 2339 | (defun tramp-handle-verify-visited-file-modtime (buf) |
| 2340 | "Like `verify-visited-file-modtime' for tramp files. | 2340 | "Like `verify-visited-file-modtime' for tramp files." |
| 2341 | At the time `verify-visited-file-modtime' calls this function, we | ||
| 2342 | already know that the buffer is visiting a file and that | ||
| 2343 | `visited-file-modtime' does not return 0. Do not call this | ||
| 2344 | function directly, unless those two cases are already taken care | ||
| 2345 | of." | ||
| 2346 | (with-current-buffer buf | 2341 | (with-current-buffer buf |
| 2347 | (let ((f (buffer-file-name))) | 2342 | ;; There is no file visiting the buffer, or the buffer has no |
| 2348 | (with-parsed-tramp-file-name f nil | 2343 | ;; recorded last modification time. |
| 2349 | (let* ((attr (file-attributes f)) | 2344 | (if (or (not (buffer-file-name)) |
| 2350 | (modtime (nth 5 attr))) | 2345 | (eq (visited-file-modtime) 0)) |
| 2351 | (cond ((and attr (not (equal modtime '(0 0)))) | 2346 | t |
| 2352 | ;; Why does `file-attributes' return a list (HIGH | 2347 | (let ((f (buffer-file-name))) |
| 2353 | ;; LOW), but `visited-file-modtime' returns a cons | 2348 | (with-parsed-tramp-file-name f nil |
| 2354 | ;; (HIGH . LOW)? | 2349 | (let* ((attr (file-attributes f)) |
| 2355 | (let ((mt (visited-file-modtime))) | 2350 | (modtime (nth 5 attr)) |
| 2356 | (< (abs (tramp-time-diff | 2351 | (mt (visited-file-modtime))) |
| 2357 | modtime | 2352 | |
| 2358 | ;; For compatibility, deal with both the old | 2353 | (cond |
| 2359 | ;; (HIGH . LOW) and the new (HIGH LOW) | 2354 | ;; file exists, and has a known modtime. |
| 2360 | ;; return values of `visited-file-modtime'. | 2355 | ((and attr (not (equal modtime '(0 0)))) |
| 2361 | (if (atom (cdr mt)) | 2356 | (< (abs (tramp-time-diff |
| 2362 | (list (car mt) (cdr mt)) | 2357 | modtime |
| 2363 | mt))) | 2358 | ;; For compatibility, deal with both the old |
| 2364 | 2))) | 2359 | ;; (HIGH . LOW) and the new (HIGH LOW) |
| 2365 | (attr | 2360 | ;; return values of `visited-file-modtime'. |
| 2366 | (save-excursion | 2361 | (if (atom (cdr mt)) |
| 2367 | (tramp-send-command | 2362 | (list (car mt) (cdr mt)) |
| 2368 | multi-method method user host | 2363 | mt))) |
| 2369 | (format "%s -ild %s" | 2364 | 2)) |
| 2370 | (tramp-get-ls-command multi-method method | 2365 | ;; modtime has the don't know value. |
| 2371 | user host) | 2366 | (attr |
| 2372 | (tramp-shell-quote-argument localname))) | 2367 | (save-excursion |
| 2373 | (tramp-wait-for-output) | 2368 | (tramp-send-command |
| 2374 | (setq attr (buffer-substring | 2369 | multi-method method user host |
| 2375 | (point) (progn (end-of-line) (point))))) | 2370 | (format "%s -ild %s" |
| 2376 | (equal tramp-buffer-file-attributes attr)) | 2371 | (tramp-get-ls-command multi-method method user host) |
| 2377 | ;; If file does not exist, say it is not modified. | 2372 | (tramp-shell-quote-argument localname))) |
| 2378 | (t nil))))))) | 2373 | (tramp-wait-for-output) |
| 2374 | (setq attr (buffer-substring | ||
| 2375 | (point) (progn (end-of-line) (point))))) | ||
| 2376 | (equal tramp-buffer-file-attributes attr)) | ||
| 2377 | ;; If file does not exist, say it is not modified | ||
| 2378 | ;; if and only if that agrees with the buffer's record. | ||
| 2379 | (t (equal mt '(-1 65535)))))))))) | ||
| 2379 | 2380 | ||
| 2380 | (defadvice clear-visited-file-modtime (after tramp activate) | 2381 | (defadvice clear-visited-file-modtime (after tramp activate) |
| 2381 | "Set `tramp-buffer-file-attributes' back to nil. | 2382 | "Set `tramp-buffer-file-attributes' back to nil. |
diff --git a/lisp/newcomment.el b/lisp/newcomment.el index 5711e7903ad..5a7b7666e89 100644 --- a/lisp/newcomment.el +++ b/lisp/newcomment.el | |||
| @@ -1087,6 +1087,7 @@ Else, call `comment-indent'." | |||
| 1087 | (insert (comment-padleft comment-end add))) | 1087 | (insert (comment-padleft comment-end add))) |
| 1088 | (indent-according-to-mode)))))) | 1088 | (indent-according-to-mode)))))) |
| 1089 | 1089 | ||
| 1090 | ;;;###autoload | ||
| 1090 | (defcustom comment-auto-fill-only-comments nil | 1091 | (defcustom comment-auto-fill-only-comments nil |
| 1091 | "Non-nil means to only auto-fill inside comments. | 1092 | "Non-nil means to only auto-fill inside comments. |
| 1092 | This has no effect in modes that do not define a comment syntax." | 1093 | This has no effect in modes that do not define a comment syntax." |
diff --git a/lisp/outline.el b/lisp/outline.el index 0f7d3b627b0..2d2663b12f2 100644 --- a/lisp/outline.el +++ b/lisp/outline.el | |||
| @@ -808,7 +808,7 @@ Show the heading too, if it is currently invisible." | |||
| 808 | (save-excursion | 808 | (save-excursion |
| 809 | (outline-back-to-heading t) | 809 | (outline-back-to-heading t) |
| 810 | (show-entry) | 810 | (show-entry) |
| 811 | (while (condition-case nil (progn (outline-up-heading 1) (not (bobp))) | 811 | (while (condition-case nil (progn (outline-up-heading 1 t) (not (bobp))) |
| 812 | (error nil)) | 812 | (error nil)) |
| 813 | (outline-flag-region (1- (point)) | 813 | (outline-flag-region (1- (point)) |
| 814 | (save-excursion (forward-line 1) (point)) | 814 | (save-excursion (forward-line 1) (point)) |
diff --git a/lisp/paths.el b/lisp/paths.el index 925dbb06e97..5611246ac8b 100644 --- a/lisp/paths.el +++ b/lisp/paths.el | |||
| @@ -101,11 +101,12 @@ This variable `Info-default-directory-list' is used as the default | |||
| 101 | for initializing `Info-directory-list' when Info is started, unless | 101 | for initializing `Info-directory-list' when Info is started, unless |
| 102 | the environment variable INFOPATH is set.") | 102 | the environment variable INFOPATH is set.") |
| 103 | 103 | ||
| 104 | (defvar news-path | 104 | (defvar news-directory |
| 105 | (if (file-exists-p "/usr/spool/news/") | 105 | (if (file-exists-p "/usr/spool/news/") |
| 106 | "/usr/spool/news/" | 106 | "/usr/spool/news/" |
| 107 | "/var/spool/news/") | 107 | "/var/spool/news/") |
| 108 | "The root directory below which all news files are stored.") | 108 | "The root directory below which all news files are stored.") |
| 109 | (defalias 'news-path 'news-directory) | ||
| 109 | 110 | ||
| 110 | (defvar news-inews-program | 111 | (defvar news-inews-program |
| 111 | (cond ((file-exists-p "/usr/bin/inews") "/usr/bin/inews") | 112 | (cond ((file-exists-p "/usr/bin/inews") "/usr/bin/inews") |
| @@ -136,7 +137,7 @@ The `ORGANIZATION' environment variable is used instead if defined.") | |||
| 136 | :group 'rmail | 137 | :group 'rmail |
| 137 | :version "21.1") | 138 | :version "21.1") |
| 138 | 139 | ||
| 139 | (defconst rmail-spool-directory | 140 | (defvar rmail-spool-directory |
| 140 | (cond ((string-match "^[^-]+-[^-]+-sco3.2v4" system-configuration) | 141 | (cond ((string-match "^[^-]+-[^-]+-sco3.2v4" system-configuration) |
| 141 | "/usr/spool/mail/") | 142 | "/usr/spool/mail/") |
| 142 | ;; On The Bull DPX/2 /usr/spool/mail is used although | 143 | ;; On The Bull DPX/2 /usr/spool/mail is used although |
| @@ -157,15 +158,17 @@ The `ORGANIZATION' environment variable is used instead if defined.") | |||
| 157 | "Name of directory used by system mailer for delivering new mail. | 158 | "Name of directory used by system mailer for delivering new mail. |
| 158 | Its name should end with a slash.") | 159 | Its name should end with a slash.") |
| 159 | 160 | ||
| 160 | (defconst sendmail-program | 161 | (defcustom sendmail-program |
| 161 | (cond | 162 | (cond |
| 162 | ((file-exists-p "/usr/sbin/sendmail") "/usr/sbin/sendmail") | 163 | ((file-exists-p "/usr/sbin/sendmail") "/usr/sbin/sendmail") |
| 163 | ((file-exists-p "/usr/lib/sendmail") "/usr/lib/sendmail") | 164 | ((file-exists-p "/usr/lib/sendmail") "/usr/lib/sendmail") |
| 164 | ((file-exists-p "/usr/ucblib/sendmail") "/usr/ucblib/sendmail") | 165 | ((file-exists-p "/usr/ucblib/sendmail") "/usr/ucblib/sendmail") |
| 165 | (t "fakemail")) ;In ../etc, to interface to /bin/mail. | 166 | (t "fakemail")) ;In ../etc, to interface to /bin/mail. |
| 166 | "Program used to send messages.") | 167 | "Program used to send messages." |
| 168 | :group 'mail | ||
| 169 | :type 'file) | ||
| 167 | 170 | ||
| 168 | (defconst remote-shell-program | 171 | (defcustom remote-shell-program |
| 169 | (cond | 172 | (cond |
| 170 | ;; Some systems use rsh for the remote shell; others use that name for the | 173 | ;; Some systems use rsh for the remote shell; others use that name for the |
| 171 | ;; restricted shell and use remsh for the remote shell. Let's try to guess | 174 | ;; restricted shell and use remsh for the remote shell. Let's try to guess |
| @@ -186,14 +189,16 @@ Its name should end with a slash.") | |||
| 186 | ((file-exists-p "/bin/rsh") "/bin/rsh") | 189 | ((file-exists-p "/bin/rsh") "/bin/rsh") |
| 187 | ((file-exists-p "/usr/bin/rsh") "/usr/bin/rsh") | 190 | ((file-exists-p "/usr/bin/rsh") "/usr/bin/rsh") |
| 188 | (t "rsh")) | 191 | (t "rsh")) |
| 189 | "File name for remote-shell program (often rsh or remsh).") | 192 | "File name for remote-shell program (often rsh or remsh)." |
| 193 | :group 'environment | ||
| 194 | :type 'file) | ||
| 190 | 195 | ||
| 191 | (defconst term-file-prefix (if (eq system-type 'vax-vms) "[.term]" "term/") "\ | 196 | (defvar term-file-prefix (if (eq system-type 'vax-vms) "[.term]" "term/") "\ |
| 192 | If non-nil, Emacs startup does (load (concat term-file-prefix (getenv \"TERM\"))) | 197 | If non-nil, Emacs startup does (load (concat term-file-prefix (getenv \"TERM\"))) |
| 193 | You may set this variable to nil in your `.emacs' file if you do not wish | 198 | You may set this variable to nil in your `.emacs' file if you do not wish |
| 194 | the terminal-initialization file to be loaded.") | 199 | the terminal-initialization file to be loaded.") |
| 195 | 200 | ||
| 196 | (defconst abbrev-file-name | 201 | (defvar abbrev-file-name |
| 197 | (if (eq system-type 'vax-vms) | 202 | (if (eq system-type 'vax-vms) |
| 198 | "~/abbrev.def" | 203 | "~/abbrev.def" |
| 199 | (convert-standard-filename "~/.abbrev_defs")) | 204 | (convert-standard-filename "~/.abbrev_defs")) |
diff --git a/lisp/pcvs-defs.el b/lisp/pcvs-defs.el index cd379afab77..6bdd6bb6dd8 100644 --- a/lisp/pcvs-defs.el +++ b/lisp/pcvs-defs.el | |||
| @@ -374,7 +374,7 @@ This variable is buffer local and only used in the *cvs* buffer.") | |||
| 374 | ("r" . cvs-mode-remove) | 374 | ("r" . cvs-mode-remove) |
| 375 | ("s" . cvs-mode-status) | 375 | ("s" . cvs-mode-status) |
| 376 | ("t" . cvs-mode-tag) | 376 | ("t" . cvs-mode-tag) |
| 377 | ;;("v" . cvs-mode-diff-vendor) | 377 | ("v" . cvs-mode-view-file) |
| 378 | ("x" . cvs-mode-remove-handled) | 378 | ("x" . cvs-mode-remove-handled) |
| 379 | ;; cvstree bindings | 379 | ;; cvstree bindings |
| 380 | ("+" . cvs-mode-tree) | 380 | ("+" . cvs-mode-tree) |
diff --git a/lisp/pcvs-util.el b/lisp/pcvs-util.el index 5d9d0d215af..a4eda95e23e 100644 --- a/lisp/pcvs-util.el +++ b/lisp/pcvs-util.el | |||
| @@ -104,11 +104,12 @@ BUF is assumed to be a temporary buffer used from the buffer MAINBUF." | |||
| 104 | (condition-case () | 104 | (condition-case () |
| 105 | (delete-window win) | 105 | (delete-window win) |
| 106 | (error (iconify-frame (window-frame win)))) | 106 | (error (iconify-frame (window-frame win)))) |
| 107 | (if (and mainbuf (get-buffer-window mainbuf)) | 107 | ;;; (if (and mainbuf (get-buffer-window mainbuf)) |
| 108 | ;; FIXME: if the buffer popped into a pre-existing window, | 108 | ;;; ;; FIXME: if the buffer popped into a pre-existing window, |
| 109 | ;; we don't want to delete that window. | 109 | ;;; ;; we don't want to delete that window. |
| 110 | t ;;(delete-window win) | 110 | ;;; t ;;(delete-window win) |
| 111 | )))) | 111 | ;;; ) |
| 112 | ))) | ||
| 112 | (with-current-buffer buf | 113 | (with-current-buffer buf |
| 113 | (bury-buffer (unless (and (eq buf (window-buffer (selected-window))) | 114 | (bury-buffer (unless (and (eq buf (window-buffer (selected-window))) |
| 114 | (not (window-dedicated-p (selected-window)))) | 115 | (not (window-dedicated-p (selected-window)))) |
diff --git a/lisp/pcvs.el b/lisp/pcvs.el index 120acbbc2bc..0a666927c52 100644 --- a/lisp/pcvs.el +++ b/lisp/pcvs.el | |||
| @@ -1925,6 +1925,18 @@ to hear about anymore." | |||
| 1925 | (cvs-mode-find-file e 'dont-select)) | 1925 | (cvs-mode-find-file e 'dont-select)) |
| 1926 | 1926 | ||
| 1927 | 1927 | ||
| 1928 | (defun cvs-mode-view-file (e) | ||
| 1929 | "View the file." | ||
| 1930 | (interactive (list last-input-event)) | ||
| 1931 | (cvs-mode-find-file e nil t)) | ||
| 1932 | |||
| 1933 | |||
| 1934 | (defun cvs-mode-view-file-other-window (e) | ||
| 1935 | "View the file." | ||
| 1936 | (interactive (list last-input-event)) | ||
| 1937 | (cvs-mode-find-file e t t)) | ||
| 1938 | |||
| 1939 | |||
| 1928 | (defun cvs-find-modif (fi) | 1940 | (defun cvs-find-modif (fi) |
| 1929 | (with-temp-buffer | 1941 | (with-temp-buffer |
| 1930 | (call-process cvs-program nil (current-buffer) nil | 1942 | (call-process cvs-program nil (current-buffer) nil |
| @@ -1935,7 +1947,7 @@ to hear about anymore." | |||
| 1935 | 1))) | 1947 | 1))) |
| 1936 | 1948 | ||
| 1937 | 1949 | ||
| 1938 | (defun cvs-mode-find-file (e &optional other) | 1950 | (defun cvs-mode-find-file (e &optional other view) |
| 1939 | "Select a buffer containing the file. | 1951 | "Select a buffer containing the file. |
| 1940 | With a prefix, opens the buffer in an OTHER window." | 1952 | With a prefix, opens the buffer in an OTHER window." |
| 1941 | (interactive (list last-input-event current-prefix-arg)) | 1953 | (interactive (list last-input-event current-prefix-arg)) |
| @@ -1963,8 +1975,10 @@ With a prefix, opens the buffer in an OTHER window." | |||
| 1963 | (let ((buf (if rev (cvs-retrieve-revision fi rev) | 1975 | (let ((buf (if rev (cvs-retrieve-revision fi rev) |
| 1964 | (find-file-noselect (cvs-fileinfo->full-path fi))))) | 1976 | (find-file-noselect (cvs-fileinfo->full-path fi))))) |
| 1965 | (funcall (cond ((eq other 'dont-select) 'display-buffer) | 1977 | (funcall (cond ((eq other 'dont-select) 'display-buffer) |
| 1966 | (other 'switch-to-buffer-other-window) | 1978 | (other |
| 1967 | (t 'switch-to-buffer)) | 1979 | (if view 'view-buffer-other-window |
| 1980 | 'switch-to-buffer-other-window)) | ||
| 1981 | (t (if view 'view-buffer 'switch-to-buffer))) | ||
| 1968 | buf) | 1982 | buf) |
| 1969 | (when (and cvs-find-file-and-jump (cvs-applicable-p fi 'diff-base)) | 1983 | (when (and cvs-find-file-and-jump (cvs-applicable-p fi 'diff-base)) |
| 1970 | (goto-line (cvs-find-modif fi))) | 1984 | (goto-line (cvs-find-modif fi))) |
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 2f910608d5c..d90fe77fe28 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el | |||
| @@ -866,20 +866,6 @@ Returns the compilation buffer created." | |||
| 866 | (if (eq mode t) | 866 | (if (eq mode t) |
| 867 | (prog1 "compilation" (require 'comint)) | 867 | (prog1 "compilation" (require 'comint)) |
| 868 | (replace-regexp-in-string "-mode$" "" (symbol-name mode)))) | 868 | (replace-regexp-in-string "-mode$" "" (symbol-name mode)))) |
| 869 | (process-environment | ||
| 870 | (append | ||
| 871 | compilation-environment | ||
| 872 | (if (if (boundp 'system-uses-terminfo) ; `if' for compiler warning | ||
| 873 | system-uses-terminfo) | ||
| 874 | (list "TERM=dumb" "TERMCAP=" | ||
| 875 | (format "COLUMNS=%d" (window-width))) | ||
| 876 | (list "TERM=emacs" | ||
| 877 | (format "TERMCAP=emacs:co#%d:tc=unknown:" | ||
| 878 | (window-width)))) | ||
| 879 | ;; Set the EMACS variable, but | ||
| 880 | ;; don't override users' setting of $EMACS. | ||
| 881 | (unless (getenv "EMACS") '("EMACS=t")) | ||
| 882 | (copy-sequence process-environment))) | ||
| 883 | cd-path ; in case process-environment contains CDPATH | 869 | cd-path ; in case process-environment contains CDPATH |
| 884 | (thisdir (if (string-match "^\\s *cd\\s +\\(.+?\\)\\s *[;&\n]" command) | 870 | (thisdir (if (string-match "^\\s *cd\\s +\\(.+?\\)\\s *[;&\n]" command) |
| 885 | (substitute-in-file-name (match-string 1 command)) | 871 | (substitute-in-file-name (match-string 1 command)) |
| @@ -903,18 +889,18 @@ Returns the compilation buffer created." | |||
| 903 | (error nil)) | 889 | (error nil)) |
| 904 | (error "Cannot have two processes in `%s' at once" | 890 | (error "Cannot have two processes in `%s' at once" |
| 905 | (buffer-name))))) | 891 | (buffer-name))))) |
| 906 | ;; Clear out the compilation buffer and make it writable. | ||
| 907 | ;; Change its default-directory to the directory where the compilation | ||
| 908 | ;; will happen, and insert a `default-directory' to indicate this. | ||
| 909 | (setq buffer-read-only nil) | ||
| 910 | (buffer-disable-undo (current-buffer)) | 892 | (buffer-disable-undo (current-buffer)) |
| 911 | (erase-buffer) | 893 | ;; Make compilation buffer read-only. The filter can still write it. |
| 912 | (buffer-enable-undo (current-buffer)) | 894 | ;; Clear out the compilation buffer. |
| 913 | (cd thisdir) | 895 | (let ((inhibit-read-only t)) |
| 914 | ;; output a mode setter, for saving and later reloading this buffer | 896 | (erase-buffer) |
| 915 | (insert "-*- mode: " name-of-mode | 897 | ;; Change its default-directory to the directory where the compilation |
| 916 | "; default-directory: " (prin1-to-string default-directory) | 898 | ;; will happen, and insert a `cd' command to indicate this. |
| 917 | " -*-\n" command "\n") | 899 | (setq default-directory thisdir) |
| 900 | ;; output a mode setter, for saving and later reloading this buffer | ||
| 901 | (insert "-*- mode: " name-of-mode | ||
| 902 | "; default-directory: " (prin1-to-string default-directory) | ||
| 903 | " -*-\n" command "\n")) | ||
| 918 | (set-buffer-modified-p nil)) | 904 | (set-buffer-modified-p nil)) |
| 919 | ;; If we're already in the compilation buffer, go to the end | 905 | ;; If we're already in the compilation buffer, go to the end |
| 920 | ;; of the buffer, so point will track the compilation output. | 906 | ;; of the buffer, so point will track the compilation output. |
| @@ -923,70 +909,83 @@ Returns the compilation buffer created." | |||
| 923 | ;; Pop up the compilation buffer. | 909 | ;; Pop up the compilation buffer. |
| 924 | (setq outwin (display-buffer outbuf nil t)) | 910 | (setq outwin (display-buffer outbuf nil t)) |
| 925 | (with-current-buffer outbuf | 911 | (with-current-buffer outbuf |
| 926 | (if (not (eq mode t)) | 912 | (let ((process-environment |
| 927 | (funcall mode) | 913 | (append |
| 928 | (with-no-warnings (comint-mode)) | 914 | compilation-environment |
| 929 | (compilation-shell-minor-mode)) | 915 | (if (if (boundp 'system-uses-terminfo) ; `if' for compiler warning |
| 930 | ;; In what way is it non-ergonomic ? -stef | 916 | system-uses-terminfo) |
| 931 | ;; (toggle-read-only 1) ;;; Non-ergonomic. | 917 | (list "TERM=dumb" "TERMCAP=" |
| 932 | (if highlight-regexp | 918 | (format "COLUMNS=%d" (window-width))) |
| 933 | (set (make-local-variable 'compilation-highlight-regexp) | 919 | (list "TERM=emacs" |
| 934 | highlight-regexp)) | 920 | (format "TERMCAP=emacs:co#%d:tc=unknown:" |
| 935 | (set (make-local-variable 'compilation-arguments) | 921 | (window-width)))) |
| 936 | (list command mode name-function highlight-regexp)) | 922 | ;; Set the EMACS variable, but |
| 937 | (set (make-local-variable 'revert-buffer-function) | 923 | ;; don't override users' setting of $EMACS. |
| 938 | 'compilation-revert-buffer) | 924 | (unless (getenv "EMACS") '("EMACS=t")) |
| 939 | (set-window-start outwin (point-min)) | 925 | (copy-sequence process-environment)))) |
| 940 | (or (eq outwin (selected-window)) | 926 | (if (not (eq mode t)) |
| 941 | (set-window-point outwin (if compilation-scroll-output | 927 | (funcall mode) |
| 942 | (point) | 928 | (setq buffer-read-only nil) |
| 943 | (point-min)))) | 929 | (with-no-warnings (comint-mode)) |
| 944 | ;; The setup function is called before compilation-set-window-height | 930 | (compilation-shell-minor-mode)) |
| 945 | ;; so it can set the compilation-window-height buffer locally. | 931 | (if highlight-regexp |
| 946 | (if compilation-process-setup-function | 932 | (set (make-local-variable 'compilation-highlight-regexp) |
| 947 | (funcall compilation-process-setup-function)) | 933 | highlight-regexp)) |
| 948 | (compilation-set-window-height outwin) | 934 | (set (make-local-variable 'compilation-arguments) |
| 949 | ;; Start the compilation. | 935 | (list command mode name-function highlight-regexp)) |
| 950 | (if (fboundp 'start-process) | 936 | (set (make-local-variable 'revert-buffer-function) |
| 951 | (let ((proc (if (eq mode t) | 937 | 'compilation-revert-buffer) |
| 952 | (get-buffer-process | 938 | (set-window-start outwin (point-min)) |
| 953 | (with-no-warnings | 939 | (or (eq outwin (selected-window)) |
| 954 | (comint-exec outbuf (downcase mode-name) | 940 | (set-window-point outwin (if compilation-scroll-output |
| 955 | shell-file-name nil `("-c" ,command)))) | 941 | (point) |
| 956 | (start-process-shell-command (downcase mode-name) | 942 | (point-min)))) |
| 957 | outbuf command)))) | 943 | ;; The setup function is called before compilation-set-window-height |
| 958 | ;; Make the buffer's mode line show process state. | 944 | ;; so it can set the compilation-window-height buffer locally. |
| 959 | (setq mode-line-process '(":%s")) | 945 | (if compilation-process-setup-function |
| 960 | (set-process-sentinel proc 'compilation-sentinel) | 946 | (funcall compilation-process-setup-function)) |
| 961 | (set-process-filter proc 'compilation-filter) | 947 | (compilation-set-window-height outwin) |
| 962 | (set-marker (process-mark proc) (point) outbuf) | 948 | ;; Start the compilation. |
| 963 | (setq compilation-in-progress | 949 | (if (fboundp 'start-process) |
| 964 | (cons proc compilation-in-progress))) | 950 | (let ((proc (if (eq mode t) |
| 965 | ;; No asynchronous processes available. | 951 | (get-buffer-process |
| 966 | (message "Executing `%s'..." command) | 952 | (with-no-warnings |
| 967 | ;; Fake modeline display as if `start-process' were run. | 953 | (comint-exec outbuf (downcase mode-name) |
| 968 | (setq mode-line-process ":run") | 954 | shell-file-name nil `("-c" ,command)))) |
| 969 | (force-mode-line-update) | 955 | (start-process-shell-command (downcase mode-name) |
| 970 | (sit-for 0) ; Force redisplay | 956 | outbuf command)))) |
| 971 | (let ((status (call-process shell-file-name nil outbuf nil "-c" | 957 | ;; Make the buffer's mode line show process state. |
| 972 | command))) | 958 | (setq mode-line-process '(":%s")) |
| 973 | (cond ((numberp status) | 959 | (set-process-sentinel proc 'compilation-sentinel) |
| 974 | (compilation-handle-exit 'exit status | 960 | (set-process-filter proc 'compilation-filter) |
| 975 | (if (zerop status) | 961 | (set-marker (process-mark proc) (point) outbuf) |
| 976 | "finished\n" | 962 | (setq compilation-in-progress |
| 977 | (format "\ | 963 | (cons proc compilation-in-progress))) |
| 964 | ;; No asynchronous processes available. | ||
| 965 | (message "Executing `%s'..." command) | ||
| 966 | ;; Fake modeline display as if `start-process' were run. | ||
| 967 | (setq mode-line-process ":run") | ||
| 968 | (force-mode-line-update) | ||
| 969 | (sit-for 0) ; Force redisplay | ||
| 970 | (let ((status (call-process shell-file-name nil outbuf nil "-c" | ||
| 971 | command))) | ||
| 972 | (cond ((numberp status) | ||
| 973 | (compilation-handle-exit 'exit status | ||
| 974 | (if (zerop status) | ||
| 975 | "finished\n" | ||
| 976 | (format "\ | ||
| 978 | exited abnormally with code %d\n" | 977 | exited abnormally with code %d\n" |
| 979 | status)))) | 978 | status)))) |
| 980 | ((stringp status) | 979 | ((stringp status) |
| 981 | (compilation-handle-exit 'signal status | 980 | (compilation-handle-exit 'signal status |
| 982 | (concat status "\n"))) | 981 | (concat status "\n"))) |
| 983 | (t | 982 | (t |
| 984 | (compilation-handle-exit 'bizarre status status)))) | 983 | (compilation-handle-exit 'bizarre status status)))) |
| 985 | ;; Without async subprocesses, the buffer is not yet | 984 | ;; Without async subprocesses, the buffer is not yet |
| 986 | ;; fontified, so fontify it now. | 985 | ;; fontified, so fontify it now. |
| 987 | (let ((font-lock-verbose nil)) ; shut up font-lock messages | 986 | (let ((font-lock-verbose nil)) ; shut up font-lock messages |
| 988 | (font-lock-fontify-buffer)) | 987 | (font-lock-fontify-buffer)) |
| 989 | (message "Executing `%s'...done" command))) | 988 | (message "Executing `%s'...done" command)))) |
| 990 | (if (buffer-local-value 'compilation-scroll-output outbuf) | 989 | (if (buffer-local-value 'compilation-scroll-output outbuf) |
| 991 | (save-selected-window | 990 | (save-selected-window |
| 992 | (select-window outwin) | 991 | (select-window outwin) |
| @@ -1108,7 +1107,7 @@ from a different message." | |||
| 1108 | :version "21.4") | 1107 | :version "21.4") |
| 1109 | 1108 | ||
| 1110 | ;;;###autoload | 1109 | ;;;###autoload |
| 1111 | (defun compilation-mode () | 1110 | (defun compilation-mode (&optional name-of-mode) |
| 1112 | "Major mode for compilation log buffers. | 1111 | "Major mode for compilation log buffers. |
| 1113 | \\<compilation-mode-map>To visit the source for a line-numbered error, | 1112 | \\<compilation-mode-map>To visit the source for a line-numbered error, |
| 1114 | move point to the error message line and type \\[compile-goto-error]. | 1113 | move point to the error message line and type \\[compile-goto-error]. |
| @@ -1121,7 +1120,7 @@ Runs `compilation-mode-hook' with `run-hooks' (which see). | |||
| 1121 | (kill-all-local-variables) | 1120 | (kill-all-local-variables) |
| 1122 | (use-local-map compilation-mode-map) | 1121 | (use-local-map compilation-mode-map) |
| 1123 | (setq major-mode 'compilation-mode | 1122 | (setq major-mode 'compilation-mode |
| 1124 | mode-name "Compilation") | 1123 | mode-name (or name-of-mode "Compilation")) |
| 1125 | (set (make-local-variable 'page-delimiter) | 1124 | (set (make-local-variable 'page-delimiter) |
| 1126 | compilation-page-delimiter) | 1125 | compilation-page-delimiter) |
| 1127 | (compilation-setup) | 1126 | (compilation-setup) |
| @@ -1187,6 +1186,7 @@ If nil, use the beginning of buffer.") | |||
| 1187 | "Prepare the buffer for the compilation parsing commands to work. | 1186 | "Prepare the buffer for the compilation parsing commands to work. |
| 1188 | Optional argument MINOR indicates this is called from | 1187 | Optional argument MINOR indicates this is called from |
| 1189 | `compilation-minor-mode'." | 1188 | `compilation-minor-mode'." |
| 1189 | (setq buffer-read-only t) | ||
| 1190 | (make-local-variable 'compilation-current-error) | 1190 | (make-local-variable 'compilation-current-error) |
| 1191 | (make-local-variable 'compilation-messages-start) | 1191 | (make-local-variable 'compilation-messages-start) |
| 1192 | (make-local-variable 'compilation-error-screen-columns) | 1192 | (make-local-variable 'compilation-error-screen-columns) |
| @@ -1248,7 +1248,7 @@ Turning the mode on runs the normal hook `compilation-minor-mode-hook'." | |||
| 1248 | 1248 | ||
| 1249 | (defun compilation-handle-exit (process-status exit-status msg) | 1249 | (defun compilation-handle-exit (process-status exit-status msg) |
| 1250 | "Write MSG in the current buffer and hack its mode-line-process." | 1250 | "Write MSG in the current buffer and hack its mode-line-process." |
| 1251 | (let ((buffer-read-only nil) | 1251 | (let ((inhibit-read-only t) |
| 1252 | (status (if compilation-exit-message-function | 1252 | (status (if compilation-exit-message-function |
| 1253 | (funcall compilation-exit-message-function | 1253 | (funcall compilation-exit-message-function |
| 1254 | process-status exit-status msg) | 1254 | process-status exit-status msg) |
diff --git a/lisp/server.el b/lisp/server.el index 161c1f2b5d9..baf07a87186 100644 --- a/lisp/server.el +++ b/lisp/server.el | |||
| @@ -946,6 +946,8 @@ With prefix arg, silently save all file-visiting buffers, then kill." | |||
| 946 | (remove-hook 'kill-buffer-query-functions 'server-kill-buffer-query-function) | 946 | (remove-hook 'kill-buffer-query-functions 'server-kill-buffer-query-function) |
| 947 | (remove-hook 'kill-emacs-query-functions 'server-kill-emacs-query-function) | 947 | (remove-hook 'kill-emacs-query-functions 'server-kill-emacs-query-function) |
| 948 | (remove-hook 'kill-buffer-hook 'server-kill-buffer)) | 948 | (remove-hook 'kill-buffer-hook 'server-kill-buffer)) |
| 949 | |||
| 950 | (add-hook 'server-unload-hook 'server-unload-hook) | ||
| 949 | 951 | ||
| 950 | (provide 'server) | 952 | (provide 'server) |
| 951 | 953 | ||
diff --git a/lisp/shadowfile.el b/lisp/shadowfile.el index b3427ac59e5..f047223cbae 100644 --- a/lisp/shadowfile.el +++ b/lisp/shadowfile.el | |||
| @@ -837,6 +837,8 @@ look for files that have been changed and need to be copied to other systems." | |||
| 837 | (symbol-function 'shadow-orig-save-buffers-kill-emacs))) | 837 | (symbol-function 'shadow-orig-save-buffers-kill-emacs))) |
| 838 | (remove-hook 'write-file-hooks 'shadow-add-to-todo)) | 838 | (remove-hook 'write-file-hooks 'shadow-add-to-todo)) |
| 839 | 839 | ||
| 840 | (add-hook 'shadowfile-unload-hook 'shadowfile-unload-hook) | ||
| 841 | |||
| 840 | (provide 'shadowfile) | 842 | (provide 'shadowfile) |
| 841 | 843 | ||
| 842 | ;;; arch-tag: e2f4cdd7-2bab-4def-9130-9e69b412b79e | 844 | ;;; arch-tag: e2f4cdd7-2bab-4def-9130-9e69b412b79e |
diff --git a/lisp/startup.el b/lisp/startup.el index 1cee4e9d013..3fab203cf59 100644 --- a/lisp/startup.el +++ b/lisp/startup.el | |||
| @@ -1159,7 +1159,7 @@ where FACE is a valid face specification, as it can be used with | |||
| 1159 | (emacs-version) | 1159 | (emacs-version) |
| 1160 | "\n" | 1160 | "\n" |
| 1161 | :face '(variable-pitch :height 0.5) | 1161 | :face '(variable-pitch :height 0.5) |
| 1162 | "Copyright (C) 2002 Free Software Foundation, Inc.") | 1162 | "Copyright (C) 2004 Free Software Foundation, Inc.") |
| 1163 | (and auto-save-list-file-prefix | 1163 | (and auto-save-list-file-prefix |
| 1164 | ;; Don't signal an error if the | 1164 | ;; Don't signal an error if the |
| 1165 | ;; directory for auto-save-list files | 1165 | ;; directory for auto-save-list files |
| @@ -1325,7 +1325,7 @@ More Manuals / Ordering Manuals How to order printed manuals from the FSF. | |||
| 1325 | ") | 1325 | ") |
| 1326 | (insert "\n\n" (emacs-version) | 1326 | (insert "\n\n" (emacs-version) |
| 1327 | " | 1327 | " |
| 1328 | Copyright (C) 2002 Free Software Foundation, Inc.")) | 1328 | Copyright (C) 2004 Free Software Foundation, Inc.")) |
| 1329 | 1329 | ||
| 1330 | ;; No mouse menus, so give help using kbd commands. | 1330 | ;; No mouse menus, so give help using kbd commands. |
| 1331 | 1331 | ||
| @@ -1373,7 +1373,7 @@ If you have no Meta key, you may instead type ESC followed by the character.)") | |||
| 1373 | 1373 | ||
| 1374 | (insert "\n\n" (emacs-version) | 1374 | (insert "\n\n" (emacs-version) |
| 1375 | " | 1375 | " |
| 1376 | Copyright (C) 2002 Free Software Foundation, Inc.") | 1376 | Copyright (C) 2004 Free Software Foundation, Inc.") |
| 1377 | 1377 | ||
| 1378 | (if (and (eq (key-binding "\C-h\C-c") 'describe-copying) | 1378 | (if (and (eq (key-binding "\C-h\C-c") 'describe-copying) |
| 1379 | (eq (key-binding "\C-h\C-d") 'describe-distribution) | 1379 | (eq (key-binding "\C-h\C-d") 'describe-distribution) |
diff --git a/lisp/strokes.el b/lisp/strokes.el index cd3e82c4d3c..57f1e3355b2 100644 --- a/lisp/strokes.el +++ b/lisp/strokes.el | |||
| @@ -1354,7 +1354,8 @@ If STROKES-MAP is not given, `strokes-global-map' will be used instead." | |||
| 1354 | :color-symbols | 1354 | :color-symbols |
| 1355 | `(("foreground" | 1355 | `(("foreground" |
| 1356 | . ,(frame-parameter nil 'foreground-color)))))) | 1356 | . ,(frame-parameter nil 'foreground-color)))))) |
| 1357 | finally do (kill-region (1+ (point)) (point-max))) | 1357 | finally do (unless (eobp) |
| 1358 | (kill-region (1+ (point)) (point-max)))) | ||
| 1358 | (view-buffer "*Strokes List*" nil) | 1359 | (view-buffer "*Strokes List*" nil) |
| 1359 | (set (make-local-variable 'view-mode-map) | 1360 | (set (make-local-variable 'view-mode-map) |
| 1360 | (let ((map (copy-keymap view-mode-map))) | 1361 | (let ((map (copy-keymap view-mode-map))) |
| @@ -1745,6 +1746,8 @@ Store XPM in buffer BUFNAME if supplied \(default is ` *strokes-xpm*'\)" | |||
| 1745 | (strokes-mode -1) | 1746 | (strokes-mode -1) |
| 1746 | (remove-hook 'kill-emacs-query-functions 'strokes-prompt-user-save-strokes)) | 1747 | (remove-hook 'kill-emacs-query-functions 'strokes-prompt-user-save-strokes)) |
| 1747 | 1748 | ||
| 1749 | (add-hooks 'strokes-unload-hook 'strokes-unload-hook) | ||
| 1750 | |||
| 1748 | (run-hooks 'strokes-load-hook) | 1751 | (run-hooks 'strokes-load-hook) |
| 1749 | (provide 'strokes) | 1752 | (provide 'strokes) |
| 1750 | 1753 | ||
diff --git a/lisp/subr.el b/lisp/subr.el index 6860dd57984..a06b136b642 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -1212,51 +1212,59 @@ any other non-digit terminates the character code and is then used as input.")) | |||
| 1212 | code)) | 1212 | code)) |
| 1213 | 1213 | ||
| 1214 | (defun read-passwd (prompt &optional confirm default) | 1214 | (defun read-passwd (prompt &optional confirm default) |
| 1215 | "Read a password, prompting with PROMPT. Echo `.' for each character typed. | 1215 | "Read a password, prompting with PROMPT, and return it. |
| 1216 | End with RET, LFD, or ESC. DEL or C-h rubs out. C-u kills line. | 1216 | If optional CONFIRM is non-nil, read the password twice to make sure. |
| 1217 | If optional CONFIRM is non-nil, read password twice to make sure. | 1217 | Optional DEFAULT is a default password to use instead of empty input. |
| 1218 | Optional DEFAULT is a default password to use instead of empty input." | 1218 | |
| 1219 | (if confirm | 1219 | This function echoes `.' for each character that the user types. |
| 1220 | (let (success) | 1220 | The user ends with RET, LFD, or ESC. DEL or C-h rubs out. C-u kills line. |
| 1221 | (while (not success) | 1221 | C-g quits; if `inhibit-quit' was non-nil around this function, |
| 1222 | (let ((first (read-passwd prompt nil default)) | 1222 | then it returns nil if the user types C-g. |
| 1223 | (second (read-passwd "Confirm password: " nil default))) | 1223 | |
| 1224 | (if (equal first second) | 1224 | Once the caller uses the password, it can erase the password |
| 1225 | (progn | 1225 | by doing (clear-string STRING)." |
| 1226 | (and (arrayp second) (clear-string second)) | 1226 | (with-local-quit |
| 1227 | (setq success first)) | 1227 | (if confirm |
| 1228 | (and (arrayp first) (clear-string first)) | 1228 | (let (success) |
| 1229 | (and (arrayp second) (clear-string second)) | 1229 | (while (not success) |
| 1230 | (message "Password not repeated accurately; please start over") | 1230 | (let ((first (read-passwd prompt nil default)) |
| 1231 | (sit-for 1)))) | 1231 | (second (read-passwd "Confirm password: " nil default))) |
| 1232 | success) | 1232 | (if (equal first second) |
| 1233 | (let ((pass nil) | 1233 | (progn |
| 1234 | (c 0) | 1234 | (and (arrayp second) (clear-string second)) |
| 1235 | (echo-keystrokes 0) | 1235 | (setq success first)) |
| 1236 | (cursor-in-echo-area t)) | 1236 | (and (arrayp first) (clear-string first)) |
| 1237 | (while (progn (message "%s%s" | 1237 | (and (arrayp second) (clear-string second)) |
| 1238 | prompt | 1238 | (message "Password not repeated accurately; please start over") |
| 1239 | (make-string (length pass) ?.)) | 1239 | (sit-for 1)))) |
| 1240 | (setq c (read-char-exclusive nil t)) | 1240 | success) |
| 1241 | (and (/= c ?\r) (/= c ?\n) (/= c ?\e))) | 1241 | (let ((pass nil) |
| 1242 | (clear-this-command-keys) | 1242 | (c 0) |
| 1243 | (if (= c ?\C-u) | 1243 | (echo-keystrokes 0) |
| 1244 | (progn | 1244 | (cursor-in-echo-area t)) |
| 1245 | (and (arrayp pass) (clear-string pass)) | 1245 | (while (progn (message "%s%s" |
| 1246 | (setq pass "")) | 1246 | prompt |
| 1247 | (if (and (/= c ?\b) (/= c ?\177)) | 1247 | (make-string (length pass) ?.)) |
| 1248 | (let* ((new-char (char-to-string c)) | 1248 | (setq c (read-char-exclusive nil t)) |
| 1249 | (new-pass (concat pass new-char))) | 1249 | (and (/= c ?\r) (/= c ?\n) (/= c ?\e))) |
| 1250 | (clear-this-command-keys) | ||
| 1251 | (if (= c ?\C-u) | ||
| 1252 | (progn | ||
| 1250 | (and (arrayp pass) (clear-string pass)) | 1253 | (and (arrayp pass) (clear-string pass)) |
| 1251 | (clear-string new-char) | 1254 | (setq pass "")) |
| 1252 | (setq c ?\0) | 1255 | (if (and (/= c ?\b) (/= c ?\177)) |
| 1253 | (setq pass new-pass)) | 1256 | (let* ((new-char (char-to-string c)) |
| 1254 | (if (> (length pass) 0) | 1257 | (new-pass (concat pass new-char))) |
| 1255 | (let ((new-pass (substring pass 0 -1))) | ||
| 1256 | (and (arrayp pass) (clear-string pass)) | 1258 | (and (arrayp pass) (clear-string pass)) |
| 1257 | (setq pass new-pass)))))) | 1259 | (clear-string new-char) |
| 1258 | (message nil) | 1260 | (setq c ?\0) |
| 1259 | (or pass default "")))) | 1261 | (setq pass new-pass)) |
| 1262 | (if (> (length pass) 0) | ||
| 1263 | (let ((new-pass (substring pass 0 -1))) | ||
| 1264 | (and (arrayp pass) (clear-string pass)) | ||
| 1265 | (setq pass new-pass)))))) | ||
| 1266 | (message nil) | ||
| 1267 | (or pass default ""))))) | ||
| 1260 | 1268 | ||
| 1261 | ;; This should be used by `call-interactively' for `n' specs. | 1269 | ;; This should be used by `call-interactively' for `n' specs. |
| 1262 | (defun read-number (prompt &optional default) | 1270 | (defun read-number (prompt &optional default) |
| @@ -1834,14 +1842,14 @@ See also `with-temp-file' and `with-output-to-string'." | |||
| 1834 | 1842 | ||
| 1835 | (defmacro with-local-quit (&rest body) | 1843 | (defmacro with-local-quit (&rest body) |
| 1836 | "Execute BODY, allowing quits to terminate BODY but not escape further. | 1844 | "Execute BODY, allowing quits to terminate BODY but not escape further. |
| 1837 | When a quit terminates BODY, `with-local-quit' requests another quit when | 1845 | When a quit terminates BODY, `with-local-quit' returns nil but |
| 1838 | it finishes. That quit will be processed in turn, the next time quitting | 1846 | requests another quit. That quit will be processed, the next time quitting |
| 1839 | is again allowed." | 1847 | is allowed once again." |
| 1840 | (declare (debug t) (indent 0)) | 1848 | (declare (debug t) (indent 0)) |
| 1841 | `(condition-case nil | 1849 | `(condition-case nil |
| 1842 | (let ((inhibit-quit nil)) | 1850 | (let ((inhibit-quit nil)) |
| 1843 | ,@body) | 1851 | ,@body) |
| 1844 | (quit (setq quit-flag t)))) | 1852 | (quit (setq quit-flag t) nil))) |
| 1845 | 1853 | ||
| 1846 | (defmacro combine-after-change-calls (&rest body) | 1854 | (defmacro combine-after-change-calls (&rest body) |
| 1847 | "Execute BODY, but don't call the after-change functions till the end. | 1855 | "Execute BODY, but don't call the after-change functions till the end. |
| @@ -2035,11 +2043,12 @@ STRING should be given if the last search was by `string-match' on STRING." | |||
| 2035 | 2043 | ||
| 2036 | (defun looking-back (regexp &optional limit) | 2044 | (defun looking-back (regexp &optional limit) |
| 2037 | "Return non-nil if text before point matches regular expression REGEXP. | 2045 | "Return non-nil if text before point matches regular expression REGEXP. |
| 2038 | Like `looking-at' except backwards and slower. | 2046 | Like `looking-at' except matches before point, and is slower. |
| 2039 | LIMIT if non-nil speeds up the search by specifying how far back the | 2047 | LIMIT if non-nil speeds up the search by specifying how far back the |
| 2040 | match can start." | 2048 | match can start." |
| 2041 | (save-excursion | 2049 | (not (null |
| 2042 | (re-search-backward (concat "\\(?:" regexp "\\)\\=") limit t))) | 2050 | (save-excursion |
| 2051 | (re-search-backward (concat "\\(?:" regexp "\\)\\=") limit t))))) | ||
| 2043 | 2052 | ||
| 2044 | (defconst split-string-default-separators "[ \f\t\n\r\v]+" | 2053 | (defconst split-string-default-separators "[ \f\t\n\r\v]+" |
| 2045 | "The default value of separators for `split-string'. | 2054 | "The default value of separators for `split-string'. |
diff --git a/lisp/term.el b/lisp/term.el index 7b0fd1aaf73..bc816e476e1 100644 --- a/lisp/term.el +++ b/lisp/term.el | |||
| @@ -2,7 +2,8 @@ | |||
| 2 | 2 | ||
| 3 | ;;; Copyright (C) 1988, 1990, 1992, 1994, 1995, 2004 Free Software Foundation, Inc. | 3 | ;;; Copyright (C) 1988, 1990, 1992, 1994, 1995, 2004 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Per Bothner <bothner@cygnus.com> | 5 | ;; Author: Per Bothner <per@bothner.com> |
| 6 | ;; Maintainer: Dan Nicolaescu <dann@ics.uci.edu>, Per Bothner <per@bothner.com> | ||
| 6 | ;; Based on comint mode written by: Olin Shivers <shivers@cs.cmu.edu> | 7 | ;; Based on comint mode written by: Olin Shivers <shivers@cs.cmu.edu> |
| 7 | ;; Keywords: processes | 8 | ;; Keywords: processes |
| 8 | 9 | ||
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el index b98c9fc183d..f0547d6d596 100644 --- a/lisp/textmodes/ispell.el +++ b/lisp/textmodes/ispell.el | |||
| @@ -1618,10 +1618,11 @@ Global `ispell-quit' set to start location to continue spell session." | |||
| 1618 | (set-buffer (get-buffer-create ispell-choices-buffer)) | 1618 | (set-buffer (get-buffer-create ispell-choices-buffer)) |
| 1619 | (setq mode-line-format (concat "-- %b -- word: " word)) | 1619 | (setq mode-line-format (concat "-- %b -- word: " word)) |
| 1620 | ;; XEmacs: no need for horizontal scrollbar in choices window | 1620 | ;; XEmacs: no need for horizontal scrollbar in choices window |
| 1621 | (and (fboundp 'set-specifier) | 1621 | (with-no-warnings |
| 1622 | (boundp 'horizontal-scrollbar-visible-p) | 1622 | (and (fboundp 'set-specifier) |
| 1623 | (set-specifier horizontal-scrollbar-visible-p nil | 1623 | (boundp 'horizontal-scrollbar-visible-p) |
| 1624 | (cons (current-buffer) nil))) | 1624 | (set-specifier horizontal-scrollbar-visible-p nil |
| 1625 | (cons (current-buffer) nil)))) | ||
| 1625 | (erase-buffer) | 1626 | (erase-buffer) |
| 1626 | (if guess | 1627 | (if guess |
| 1627 | (progn | 1628 | (progn |
| @@ -1871,7 +1872,7 @@ Global `ispell-quit' set to start location to continue spell session." | |||
| 1871 | (if (and ispell-use-framepop-p (fboundp 'framepop-display-buffer)) | 1872 | (if (and ispell-use-framepop-p (fboundp 'framepop-display-buffer)) |
| 1872 | (progn | 1873 | (progn |
| 1873 | (framepop-display-buffer (get-buffer ispell-choices-buffer)) | 1874 | (framepop-display-buffer (get-buffer ispell-choices-buffer)) |
| 1874 | (get-buffer-window ispell-choices-buffer t) | 1875 | ;;; (get-buffer-window ispell-choices-buffer t) |
| 1875 | (select-window (previous-window))) ; *Choices* window | 1876 | (select-window (previous-window))) ; *Choices* window |
| 1876 | ;; standard selection by splitting a small buffer out of this window. | 1877 | ;; standard selection by splitting a small buffer out of this window. |
| 1877 | (let ((choices-window (get-buffer-window ispell-choices-buffer))) | 1878 | (let ((choices-window (get-buffer-window ispell-choices-buffer))) |
| @@ -2355,7 +2356,7 @@ Keeps argument list for future ispell invocations for no async support." | |||
| 2355 | (if extended-char-mode ; ~ extended character mode | 2356 | (if extended-char-mode ; ~ extended character mode |
| 2356 | (ispell-send-string (concat extended-char-mode "\n")))) | 2357 | (ispell-send-string (concat extended-char-mode "\n")))) |
| 2357 | (if ispell-async-processp | 2358 | (if ispell-async-processp |
| 2358 | (process-kill-without-query ispell-process)))) | 2359 | (set-process-query-on-exit-flag ispell-process nil)))) |
| 2359 | 2360 | ||
| 2360 | ;;;###autoload | 2361 | ;;;###autoload |
| 2361 | (defun ispell-kill-ispell (&optional no-error) | 2362 | (defun ispell-kill-ispell (&optional no-error) |
| @@ -3286,19 +3287,23 @@ You can bind this to the key C-c i in GNUS or mail by adding to | |||
| 3286 | (cond | 3287 | (cond |
| 3287 | ((functionp 'sc-cite-regexp) ; sc 3.0 | 3288 | ((functionp 'sc-cite-regexp) ; sc 3.0 |
| 3288 | (concat "\\(" (sc-cite-regexp) "\\)" "\\|" | 3289 | (concat "\\(" (sc-cite-regexp) "\\)" "\\|" |
| 3289 | (ispell-non-empty-string sc-reference-tag-string))) | 3290 | (with-no-warnings |
| 3291 | (ispell-non-empty-string sc-reference-tag-string)))) | ||
| 3290 | ((boundp 'sc-cite-regexp) ; sc 2.3 | 3292 | ((boundp 'sc-cite-regexp) ; sc 2.3 |
| 3291 | (concat "\\(" sc-cite-regexp "\\)" "\\|" | 3293 | (concat "\\(" sc-cite-regexp "\\)" "\\|" |
| 3292 | (ispell-non-empty-string sc-reference-tag-string))) | 3294 | (with-no-warnings |
| 3295 | (ispell-non-empty-string sc-reference-tag-string)))) | ||
| 3293 | ((or (equal major-mode 'news-reply-mode) ;GNUS 4 & below | 3296 | ((or (equal major-mode 'news-reply-mode) ;GNUS 4 & below |
| 3294 | (equal major-mode 'message-mode)) ;GNUS 5 | 3297 | (equal major-mode 'message-mode)) ;GNUS 5 |
| 3295 | (concat "In article <" "\\|" | 3298 | (concat "In article <" "\\|" |
| 3296 | "[^,;&+=\n]+ <[^,;&+=]+> writes:" "\\|" | 3299 | "[^,;&+=\n]+ <[^,;&+=]+> writes:" "\\|" |
| 3297 | message-cite-prefix-regexp "\\|" | 3300 | (with-no-warnings message-cite-prefix-regexp) |
| 3301 | "\\|" | ||
| 3298 | default-prefix)) | 3302 | default-prefix)) |
| 3299 | ((equal major-mode 'mh-letter-mode) ; mh mail message | 3303 | ((equal major-mode 'mh-letter-mode) ; mh mail message |
| 3300 | (concat "[^,;&+=\n]+ writes:" "\\|" | 3304 | (concat "[^,;&+=\n]+ writes:" "\\|" |
| 3301 | (ispell-non-empty-string mh-ins-buf-prefix))) | 3305 | (with-no-warnings |
| 3306 | (ispell-non-empty-string mh-ins-buf-prefix)))) | ||
| 3302 | ((not internal-messagep) ; Assume nn sent us this message. | 3307 | ((not internal-messagep) ; Assume nn sent us this message. |
| 3303 | (concat "In [a-zA-Z.]+ you write:" "\\|" | 3308 | (concat "In [a-zA-Z.]+ you write:" "\\|" |
| 3304 | "In <[^,;&+=]+> [^,;&+=]+ writes:" "\\|" | 3309 | "In <[^,;&+=]+> [^,;&+=]+ writes:" "\\|" |
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog index 91a6c869a21..87f818cd70d 100644 --- a/lisp/url/ChangeLog +++ b/lisp/url/ChangeLog | |||
| @@ -1,3 +1,25 @@ | |||
| 1 | 2004-10-16 Richard M. Stallman <rms@gnu.org> | ||
| 2 | |||
| 3 | * url.el (url-do-setup): Don't set url-passwd-entry-func. | ||
| 4 | |||
| 5 | * url-vars.el (url-passwd-entry-func): Var deleted. | ||
| 6 | (mm-mime-mule-charset-alist): Remove compatibility code for old Gnus. | ||
| 7 | (url-weekday-alist): Renamed from weekday-alist. | ||
| 8 | (url-monthabbrev-alist): Renamed from monthabbrev-alist. | ||
| 9 | (url-vars-unload-hook): Initialize hook var to hold the function. | ||
| 10 | |||
| 11 | * url-util.el (url-get-normalized-date): Use | ||
| 12 | url-weekday-alist and url-monthabbrev-alist. | ||
| 13 | |||
| 14 | * url-misc.el: Load cl at compile time. | ||
| 15 | |||
| 16 | * url-mailto.el: Don't load cl. | ||
| 17 | (url-mailto): Fix call to `push'. | ||
| 18 | |||
| 19 | * url-gw.el (url-open-telnet): Use read-passwd. | ||
| 20 | |||
| 21 | * url-auth.el (url-basic-auth, url-digest-auth): Use read-passwd. | ||
| 22 | |||
| 1 | 2004-10-12 Simon Josefsson <jas@extundo.com> | 23 | 2004-10-12 Simon Josefsson <jas@extundo.com> |
| 2 | 24 | ||
| 3 | * url-vars.el (url-gateway-method): Add new method `tls'. | 25 | * url-vars.el (url-gateway-method): Add new method `tls'. |
diff --git a/lisp/url/url-auth.el b/lisp/url/url-auth.el index 39bb730bebc..e92fdd1542c 100644 --- a/lisp/url/url-auth.el +++ b/lisp/url/url-auth.el | |||
| @@ -78,7 +78,7 @@ instead of the pathname inheritance method." | |||
| 78 | ((and prompt (not byserv)) | 78 | ((and prompt (not byserv)) |
| 79 | (setq user (read-string (url-auth-user-prompt url realm) | 79 | (setq user (read-string (url-auth-user-prompt url realm) |
| 80 | (user-real-login-name)) | 80 | (user-real-login-name)) |
| 81 | pass (funcall url-passwd-entry-func "Password: ")) | 81 | pass (read-passwd "Password: ")) |
| 82 | (set url-basic-auth-storage | 82 | (set url-basic-auth-storage |
| 83 | (cons (list server | 83 | (cons (list server |
| 84 | (cons path | 84 | (cons path |
| @@ -102,7 +102,7 @@ instead of the pathname inheritance method." | |||
| 102 | (progn | 102 | (progn |
| 103 | (setq user (read-string (url-auth-user-prompt url realm) | 103 | (setq user (read-string (url-auth-user-prompt url realm) |
| 104 | (user-real-login-name)) | 104 | (user-real-login-name)) |
| 105 | pass (funcall url-passwd-entry-func "Password: ") | 105 | pass (read-passwd "Password: ") |
| 106 | retval (base64-encode-string (format "%s:%s" user pass)) | 106 | retval (base64-encode-string (format "%s:%s" user pass)) |
| 107 | byserv (assoc server (symbol-value url-basic-auth-storage))) | 107 | byserv (assoc server (symbol-value url-basic-auth-storage))) |
| 108 | (setcdr byserv | 108 | (setcdr byserv |
| @@ -160,7 +160,7 @@ instead of hostname:portnum." | |||
| 160 | ((and prompt (not byserv)) | 160 | ((and prompt (not byserv)) |
| 161 | (setq user (read-string (url-auth-user-prompt url realm) | 161 | (setq user (read-string (url-auth-user-prompt url realm) |
| 162 | (user-real-login-name)) | 162 | (user-real-login-name)) |
| 163 | pass (funcall url-passwd-entry-func "Password: ") | 163 | pass (read-passwd "Password: ") |
| 164 | url-digest-auth-storage | 164 | url-digest-auth-storage |
| 165 | (cons (list server | 165 | (cons (list server |
| 166 | (cons path | 166 | (cons path |
| @@ -187,7 +187,7 @@ instead of hostname:portnum." | |||
| 187 | (progn | 187 | (progn |
| 188 | (setq user (read-string (url-auth-user-prompt url realm) | 188 | (setq user (read-string (url-auth-user-prompt url realm) |
| 189 | (user-real-login-name)) | 189 | (user-real-login-name)) |
| 190 | pass (funcall url-passwd-entry-func "Password: ") | 190 | pass (read-passwd "Password: ") |
| 191 | retval (setq retval | 191 | retval (setq retval |
| 192 | (cons user | 192 | (cons user |
| 193 | (url-digest-auth-create-key | 193 | (url-digest-auth-create-key |
diff --git a/lisp/url/url-gw.el b/lisp/url/url-gw.el index 608827d7cee..933dd161004 100644 --- a/lisp/url/url-gw.el +++ b/lisp/url/url-gw.el | |||
| @@ -186,7 +186,7 @@ linked Emacs under SunOS 4.x" | |||
| 186 | proc (concat | 186 | proc (concat |
| 187 | (or url-gateway-telnet-password | 187 | (or url-gateway-telnet-password |
| 188 | (setq url-gateway-telnet-password | 188 | (setq url-gateway-telnet-password |
| 189 | (funcall url-passwd-entry-func "Password: "))) | 189 | (read-passwd "Password: "))) |
| 190 | "\n")) | 190 | "\n")) |
| 191 | (erase-buffer) | 191 | (erase-buffer) |
| 192 | (url-wait-for-string url-gateway-prompt-pattern proc) | 192 | (url-wait-for-string url-gateway-prompt-pattern proc) |
diff --git a/lisp/url/url-mailto.el b/lisp/url/url-mailto.el index bcb6bad4179..f5192bcb03f 100644 --- a/lisp/url/url-mailto.el +++ b/lisp/url/url-mailto.el | |||
| @@ -25,7 +25,6 @@ | |||
| 25 | 25 | ||
| 26 | ;;; Code: | 26 | ;;; Code: |
| 27 | 27 | ||
| 28 | (eval-when-compile (require 'cl)) | ||
| 29 | (require 'url-vars) | 28 | (require 'url-vars) |
| 30 | (require 'url-parse) | 29 | (require 'url-parse) |
| 31 | (require 'url-util) | 30 | (require 'url-util) |
| @@ -85,7 +84,7 @@ | |||
| 85 | (setq args (cons (list "x-url-from" source-url) args))) | 84 | (setq args (cons (list "x-url-from" source-url) args))) |
| 86 | 85 | ||
| 87 | (if (assoc "to" args) | 86 | (if (assoc "to" args) |
| 88 | (push to (cdr (assoc "to" args))) | 87 | (push (cdr (assoc "to" args)) to) |
| 89 | (setq args (cons (list "to" to) args))) | 88 | (setq args (cons (list "to" to) args))) |
| 90 | (setq subject (cdr-safe (assoc "subject" args))) | 89 | (setq subject (cdr-safe (assoc "subject" args))) |
| 91 | (if (fboundp url-mail-command) (funcall url-mail-command) (mail)) | 90 | (if (fboundp url-mail-command) (funcall url-mail-command) (mail)) |
diff --git a/lisp/url/url-misc.el b/lisp/url/url-misc.el index ff2f1282137..ff18ef9b863 100644 --- a/lisp/url/url-misc.el +++ b/lisp/url/url-misc.el | |||
| @@ -22,6 +22,7 @@ | |||
| 22 | ;;; Boston, MA 02111-1307, USA. | 22 | ;;; Boston, MA 02111-1307, USA. |
| 23 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 23 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| 24 | 24 | ||
| 25 | (eval-when-compile (require 'cl)) | ||
| 25 | (require 'url-vars) | 26 | (require 'url-vars) |
| 26 | (require 'url-parse) | 27 | (require 'url-parse) |
| 27 | (autoload 'Info-goto-node "info" "" t) | 28 | (autoload 'Info-goto-node "info" "" t) |
diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el index 5d1f73e0d5d..1d0bfcf0c48 100644 --- a/lisp/url/url-util.el +++ b/lisp/url/url-util.el | |||
| @@ -192,13 +192,13 @@ Will not do anything if `url-show-status' is nil." | |||
| 192 | (nth 1 (current-time-zone)) | 192 | (nth 1 (current-time-zone)) |
| 193 | "GMT")) | 193 | "GMT")) |
| 194 | (parsed (timezone-parse-date gmt)) | 194 | (parsed (timezone-parse-date gmt)) |
| 195 | (day (cdr-safe (assoc (substring raw 0 3) weekday-alist))) | 195 | (day (cdr-safe (assoc (substring raw 0 3) url-weekday-alist))) |
| 196 | (year nil) | 196 | (year nil) |
| 197 | (month (car | 197 | (month (car |
| 198 | (rassoc | 198 | (rassoc |
| 199 | (string-to-int (aref parsed 1)) monthabbrev-alist))) | 199 | (string-to-int (aref parsed 1)) url-monthabbrev-alist))) |
| 200 | ) | 200 | ) |
| 201 | (setq day (or (car-safe (rassoc day weekday-alist)) | 201 | (setq day (or (car-safe (rassoc day url-weekday-alist)) |
| 202 | (substring raw 0 3)) | 202 | (substring raw 0 3)) |
| 203 | year (aref parsed 0)) | 203 | year (aref parsed 0)) |
| 204 | ;; This is needed for plexus servers, or the server will hang trying to | 204 | ;; This is needed for plexus servers, or the server will hang trying to |
diff --git a/lisp/url/url-vars.el b/lisp/url/url-vars.el index a33d8ba43e3..97a9b8dc252 100644 --- a/lisp/url/url-vars.el +++ b/lisp/url/url-vars.el | |||
| @@ -191,19 +191,6 @@ from the ACCESS_proxy environment variables." | |||
| 191 | (string :tag "Proxy"))) | 191 | (string :tag "Proxy"))) |
| 192 | :group 'url) | 192 | :group 'url) |
| 193 | 193 | ||
| 194 | (defcustom url-passwd-entry-func nil | ||
| 195 | "*Symbol indicating which function to call to read in a password. | ||
| 196 | It will be set up depending on whether you are running EFS or ange-ftp | ||
| 197 | at startup if it is nil. This function should accept the prompt | ||
| 198 | string as its first argument, and the default value as its second | ||
| 199 | argument." | ||
| 200 | :type '(choice (const :tag "Guess" :value nil) | ||
| 201 | (const :tag "Use Ange-FTP" :value ange-ftp-read-passwd) | ||
| 202 | (const :tag "Use EFS" :value efs-read-passwd) | ||
| 203 | (const :tag "Use Password Package" :value read-passwd) | ||
| 204 | (function :tag "Other")) | ||
| 205 | :group 'url-hairy) | ||
| 206 | |||
| 207 | (defcustom url-standalone-mode nil | 194 | (defcustom url-standalone-mode nil |
| 208 | "*Rely solely on the cache?" | 195 | "*Rely solely on the cache?" |
| 209 | :type 'boolean | 196 | :type 'boolean |
| @@ -240,24 +227,6 @@ Should be an assoc list of headers/contents.") | |||
| 240 | (defvar url-mime-encoding-string nil | 227 | (defvar url-mime-encoding-string nil |
| 241 | "*String to send in the Accept-encoding: field in HTTP requests.") | 228 | "*String to send in the Accept-encoding: field in HTTP requests.") |
| 242 | 229 | ||
| 243 | ;; `mm-mime-mule-charset-alist' in Gnus 5.8/9 contains elements whose | ||
| 244 | ;; cars aren't valid MIME charsets/coding systems, at least in Emacs. | ||
| 245 | ;; This gets it correct by construction in Emacs. Fixme: DTRT for | ||
| 246 | ;; XEmacs -- its `coding-system-list' doesn't have the BASE-ONLY arg. | ||
| 247 | (when (and (not (featurep 'xemacs)) | ||
| 248 | (fboundp 'coding-system-list)) | ||
| 249 | (setq mm-mime-mule-charset-alist | ||
| 250 | (apply | ||
| 251 | 'nconc | ||
| 252 | (mapcar | ||
| 253 | (lambda (cs) | ||
| 254 | (when (and (coding-system-get cs 'mime-charset) | ||
| 255 | (not (eq t (coding-system-get cs 'safe-charsets)))) | ||
| 256 | (list (cons (coding-system-get cs 'mime-charset) | ||
| 257 | (delq 'ascii | ||
| 258 | (coding-system-get cs 'safe-charsets)))))) | ||
| 259 | (coding-system-list 'base-only))))) | ||
| 260 | |||
| 261 | ;; Perhaps the first few should actually be given decreasing `q's and | 230 | ;; Perhaps the first few should actually be given decreasing `q's and |
| 262 | ;; the list should be trimmed significantly. | 231 | ;; the list should be trimmed significantly. |
| 263 | ;; Fixme: do something sane if we don't have `sort-coding-systems' | 232 | ;; Fixme: do something sane if we don't have `sort-coding-systems' |
| @@ -381,14 +350,14 @@ Currently supported methods: | |||
| 381 | 350 | ||
| 382 | (defvar url-setup-done nil "Has setup configuration been done?") | 351 | (defvar url-setup-done nil "Has setup configuration been done?") |
| 383 | 352 | ||
| 384 | (defconst weekday-alist | 353 | (defconst url-weekday-alist |
| 385 | '(("Sunday" . 0) ("Monday" . 1) ("Tuesday" . 2) ("Wednesday" . 3) | 354 | '(("Sunday" . 0) ("Monday" . 1) ("Tuesday" . 2) ("Wednesday" . 3) |
| 386 | ("Thursday" . 4) ("Friday" . 5) ("Saturday" . 6) | 355 | ("Thursday" . 4) ("Friday" . 5) ("Saturday" . 6) |
| 387 | ("Tues" . 2) ("Thurs" . 4) | 356 | ("Tues" . 2) ("Thurs" . 4) |
| 388 | ("Sun" . 0) ("Mon" . 1) ("Tue" . 2) ("Wed" . 3) | 357 | ("Sun" . 0) ("Mon" . 1) ("Tue" . 2) ("Wed" . 3) |
| 389 | ("Thu" . 4) ("Fri" . 5) ("Sat" . 6))) | 358 | ("Thu" . 4) ("Fri" . 5) ("Sat" . 6))) |
| 390 | 359 | ||
| 391 | (defconst monthabbrev-alist | 360 | (defconst url-monthabbrev-alist |
| 392 | '(("Jan" . 1) ("Feb" . 2) ("Mar" . 3) ("Apr" . 4) ("May" . 5) ("Jun" . 6) | 361 | '(("Jan" . 1) ("Feb" . 2) ("Mar" . 3) ("Apr" . 4) ("May" . 5) ("Jun" . 6) |
| 393 | ("Jul" . 7) ("Aug" . 8) ("Sep" . 9) ("Oct" . 10) ("Nov" . 11) | 362 | ("Jul" . 7) ("Aug" . 8) ("Sep" . 9) ("Oct" . 10) ("Nov" . 11) |
| 394 | ("Dec" . 12))) | 363 | ("Dec" . 12))) |
| @@ -425,6 +394,8 @@ This should be set, e.g. by mail user agents rendering HTML to avoid | |||
| 425 | (defun url-vars-unload-hook () | 394 | (defun url-vars-unload-hook () |
| 426 | (remove-hook 'set-language-environment-hook 'url-set-mime-charset-string)) | 395 | (remove-hook 'set-language-environment-hook 'url-set-mime-charset-string)) |
| 427 | 396 | ||
| 397 | (add-hook 'url-vars-unload-hook 'url-vars-unload-hook) | ||
| 398 | |||
| 428 | (provide 'url-vars) | 399 | (provide 'url-vars) |
| 429 | 400 | ||
| 430 | ;;; arch-tag: 29205e5f-c5ce-433c-8d5d-38cbaed64b49 | 401 | ;;; arch-tag: 29205e5f-c5ce-433c-8d5d-38cbaed64b49 |
diff --git a/lisp/url/url.el b/lisp/url/url.el index f7b1b717681..75ddfdc3a2f 100644 --- a/lisp/url/url.el +++ b/lisp/url/url.el | |||
| @@ -113,26 +113,6 @@ Emacs." | |||
| 113 | noproxy "") "\\)")) | 113 | noproxy "") "\\)")) |
| 114 | url-proxy-services)))) | 114 | url-proxy-services)))) |
| 115 | 115 | ||
| 116 | ;; Set the password entry funtion based on user defaults or guess | ||
| 117 | ;; based on which remote-file-access package they are using. | ||
| 118 | (cond | ||
| 119 | (url-passwd-entry-func nil) ; Already been set | ||
| 120 | ((fboundp 'read-passwd) ; Use secure password if available | ||
| 121 | (setq url-passwd-entry-func 'read-passwd)) | ||
| 122 | ((or (featurep 'efs) ; Using EFS | ||
| 123 | (featurep 'efs-auto)) ; or autoloading efs | ||
| 124 | (if (not (fboundp 'read-passwd)) | ||
| 125 | (autoload 'read-passwd "passwd" "Read in a password" nil)) | ||
| 126 | (setq url-passwd-entry-func 'read-passwd)) | ||
| 127 | ((or (featurep 'ange-ftp) ; Using ange-ftp | ||
| 128 | (and (boundp 'file-name-handler-alist) | ||
| 129 | (not (featurep 'xemacs)))) ; ?? | ||
| 130 | (setq url-passwd-entry-func 'ange-ftp-read-passwd)) | ||
| 131 | (t | ||
| 132 | (url-warn | ||
| 133 | 'security | ||
| 134 | "(url-setup): Can't determine how to read passwords, winging it."))) | ||
| 135 | |||
| 136 | (url-setup-privacy-info) | 116 | (url-setup-privacy-info) |
| 137 | (run-hooks 'url-load-hook) | 117 | (run-hooks 'url-load-hook) |
| 138 | (setq url-setup-done t))) | 118 | (setq url-setup-done t))) |
diff --git a/lisp/vc-arch.el b/lisp/vc-arch.el index e32fc474d94..70dbdcc85f2 100644 --- a/lisp/vc-arch.el +++ b/lisp/vc-arch.el | |||
| @@ -283,8 +283,8 @@ Return non-nil if FILE is unchanged." | |||
| 283 | (setq logdir (expand-file-name version logdir)) | 283 | (setq logdir (expand-file-name version logdir)) |
| 284 | (setq logdir (expand-file-name archive logdir)) | 284 | (setq logdir (expand-file-name archive logdir)) |
| 285 | (setq logdir (expand-file-name "patch-log" logdir)) | 285 | (setq logdir (expand-file-name "patch-log" logdir)) |
| 286 | ;; Revision names go: base-0, patch-N, version-0, versionfix-N. | 286 | (dolist (file (if (file-directory-p logdir) (directory-files logdir))) |
| 287 | (dolist (file (directory-files logdir)) | 287 | ;; Revision names go: base-0, patch-N, version-0, versionfix-M. |
| 288 | (when (and (eq (aref file 0) ?v) (not sealed)) | 288 | (when (and (eq (aref file 0) ?v) (not sealed)) |
| 289 | (setq sealed t rev-nb 0)) | 289 | (setq sealed t rev-nb 0)) |
| 290 | (if (and (string-match "-\\([0-9]+\\)\\'" file) | 290 | (if (and (string-match "-\\([0-9]+\\)\\'" file) |
diff --git a/lisp/vc-hooks.el b/lisp/vc-hooks.el index fef1431fe7d..22ff9edd428 100644 --- a/lisp/vc-hooks.el +++ b/lisp/vc-hooks.el | |||
| @@ -754,8 +754,8 @@ current, and kill the buffer that visits the link." | |||
| 754 | (set (make-local-variable 'backup-inhibited) t)) | 754 | (set (make-local-variable 'backup-inhibited) t)) |
| 755 | ;; Let the backend setup any buffer-local things he needs. | 755 | ;; Let the backend setup any buffer-local things he needs. |
| 756 | (vc-call-backend (vc-backend buffer-file-name) 'find-file-hook)) | 756 | (vc-call-backend (vc-backend buffer-file-name) 'find-file-hook)) |
| 757 | ((let* ((link (file-symlink-p buffer-file-name)) | 757 | ((let ((link-type (and (file-symlink-p buffer-file-name) |
| 758 | (link-type (and link (vc-backend (file-chase-links link))))) | 758 | (vc-backend (file-chase-links buffer-file-name))))) |
| 759 | (cond ((not link-type) nil) ;Nothing to do. | 759 | (cond ((not link-type) nil) ;Nothing to do. |
| 760 | ((eq vc-follow-symlinks nil) | 760 | ((eq vc-follow-symlinks nil) |
| 761 | (message | 761 | (message |
diff --git a/lisp/view.el b/lisp/view.el index b17cd52ae35..e184d68b117 100644 --- a/lisp/view.el +++ b/lisp/view.el | |||
| @@ -117,12 +117,12 @@ functions that enable or disable view mode.") | |||
| 117 | 117 | ||
| 118 | (defvar view-page-size nil | 118 | (defvar view-page-size nil |
| 119 | "Default number of lines to scroll by View page commands. | 119 | "Default number of lines to scroll by View page commands. |
| 120 | If nil then the local value of this is initially set to window size.") | 120 | If nil that means use the window size.") |
| 121 | (make-variable-buffer-local 'view-page-size) | 121 | (make-variable-buffer-local 'view-page-size) |
| 122 | 122 | ||
| 123 | (defvar view-half-page-size nil | 123 | (defvar view-half-page-size nil |
| 124 | "Default number of lines to scroll by View half page commands. | 124 | "Default number of lines to scroll by View half page commands. |
| 125 | If nil then the local value of this is initially set to half window size.") | 125 | If nil that means use half the window size.") |
| 126 | (make-variable-buffer-local 'view-half-page-size) | 126 | (make-variable-buffer-local 'view-half-page-size) |
| 127 | 127 | ||
| 128 | (defvar view-last-regexp nil) | 128 | (defvar view-last-regexp nil) |
| @@ -453,8 +453,8 @@ Entry to view-mode runs the normal hook `view-mode-hook'." | |||
| 453 | ;; This is to guarantee that the buffer-read-only variable is restored. | 453 | ;; This is to guarantee that the buffer-read-only variable is restored. |
| 454 | (add-hook 'change-major-mode-hook 'view-mode-disable nil t) | 454 | (add-hook 'change-major-mode-hook 'view-mode-disable nil t) |
| 455 | (setq view-mode t | 455 | (setq view-mode t |
| 456 | view-page-size (view-page-size-default view-page-size) | 456 | view-page-size nil |
| 457 | view-half-page-size (or view-half-page-size (/ (view-window-size) 2)) | 457 | view-half-page-size nil |
| 458 | view-old-buffer-read-only buffer-read-only | 458 | view-old-buffer-read-only buffer-read-only |
| 459 | buffer-read-only t | 459 | buffer-read-only t |
| 460 | view-old-Helper-return-blurb (and (boundp 'Helper-return-blurb) | 460 | view-old-Helper-return-blurb (and (boundp 'Helper-return-blurb) |
| @@ -675,7 +675,8 @@ previous state and go to previous buffer or window." | |||
| 675 | 675 | ||
| 676 | (defun view-set-half-page-size-default (lines) | 676 | (defun view-set-half-page-size-default (lines) |
| 677 | ;; Get and maybe set half page size. | 677 | ;; Get and maybe set half page size. |
| 678 | (if (not lines) view-half-page-size | 678 | (if (not lines) (or view-half-page-size |
| 679 | (/ (view-window-size) 2)) | ||
| 679 | (setq view-half-page-size | 680 | (setq view-half-page-size |
| 680 | (if (zerop (setq lines (prefix-numeric-value lines))) | 681 | (if (zerop (setq lines (prefix-numeric-value lines))) |
| 681 | (/ (view-window-size) 2) | 682 | (/ (view-window-size) 2) |
| @@ -803,13 +804,13 @@ Exit if end of text is visible and `view-scroll-auto-exit' is non-nil. | |||
| 803 | \\[View-scroll-page-backward-set-page-size]. | 804 | \\[View-scroll-page-backward-set-page-size]. |
| 804 | If LINES is more than a window-full, only the last window-full is shown." | 805 | If LINES is more than a window-full, only the last window-full is shown." |
| 805 | (interactive "P") | 806 | (interactive "P") |
| 806 | (view-scroll-lines lines nil view-page-size nil)) | 807 | (view-scroll-lines lines nil (view-page-size-default view-page-size) nil)) |
| 807 | 808 | ||
| 808 | (defun View-scroll-page-backward (&optional lines) | 809 | (defun View-scroll-page-backward (&optional lines) |
| 809 | "Scroll \"page size\" or prefix LINES lines backward in View mode. | 810 | "Scroll \"page size\" or prefix LINES lines backward in View mode. |
| 810 | See also `View-scroll-page-forward'." | 811 | See also `View-scroll-page-forward'." |
| 811 | (interactive "P") | 812 | (interactive "P") |
| 812 | (view-scroll-lines lines t view-page-size nil)) | 813 | (view-scroll-lines lines t (view-page-size-default view-page-size) nil)) |
| 813 | 814 | ||
| 814 | (defun View-scroll-page-forward-set-page-size (&optional lines) | 815 | (defun View-scroll-page-forward-set-page-size (&optional lines) |
| 815 | "Scroll forward LINES lines in View mode, setting the \"page size\". | 816 | "Scroll forward LINES lines in View mode, setting the \"page size\". |
diff --git a/lisp/whitespace.el b/lisp/whitespace.el index 40a234f02d6..323c75ed6de 100644 --- a/lisp/whitespace.el +++ b/lisp/whitespace.el | |||
| @@ -859,6 +859,8 @@ This is meant to be added buffer-locally to `write-file-functions'." | |||
| 859 | (remove-hook 'write-file-functions 'whitespace-write-file-hook t) | 859 | (remove-hook 'write-file-functions 'whitespace-write-file-hook t) |
| 860 | (remove-hook 'kill-buffer-hook 'whitespace-buffer)) | 860 | (remove-hook 'kill-buffer-hook 'whitespace-buffer)) |
| 861 | 861 | ||
| 862 | (add-hook 'whitespace-unload-hook 'whitespace-unload-hook) | ||
| 863 | |||
| 862 | (provide 'whitespace) | 864 | (provide 'whitespace) |
| 863 | 865 | ||
| 864 | ;;; arch-tag: 4ff44e87-b63c-402d-95a6-15e51e58bd0c | 866 | ;;; arch-tag: 4ff44e87-b63c-402d-95a6-15e51e58bd0c |
diff --git a/man/ChangeLog b/man/ChangeLog index 8aec01712ef..248c4adba41 100644 --- a/man/ChangeLog +++ b/man/ChangeLog | |||
| @@ -1,3 +1,21 @@ | |||
| 1 | 2004-10-18 Luc Teirlinck <teirllm@auburn.edu> | ||
| 2 | |||
| 3 | * calc.texi (Reporting Bugs): Double up `@'. | ||
| 4 | |||
| 5 | 2004-10-15 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 6 | |||
| 7 | * gnus.texi (New Features): Add 5.11. | ||
| 8 | |||
| 9 | * message.texi (Resending): Remove wrong default value. | ||
| 10 | |||
| 11 | * gnus.texi (Mail Source Specifiers): Describe possible problems | ||
| 12 | of `pop3-leave-mail-on-server'. Add `pop3-movemail' and | ||
| 13 | `pop3-leave-mail-on-server' to the index. | ||
| 14 | |||
| 15 | 2004-10-15 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 16 | |||
| 17 | * message.texi (Canceling News): Add how to set a password. | ||
| 18 | |||
| 1 | 2004-10-12 Reiner Steib <Reiner.Steib@gmx.de> | 19 | 2004-10-12 Reiner Steib <Reiner.Steib@gmx.de> |
| 2 | 20 | ||
| 3 | * gnus-faq.texi ([5.9]): Improve code for reply-in-news. | 21 | * gnus-faq.texi ([5.9]): Improve code for reply-in-news. |
diff --git a/man/calc.texi b/man/calc.texi index a77ba4eb266..ad0d40bad71 100644 --- a/man/calc.texi +++ b/man/calc.texi | |||
| @@ -34286,11 +34286,10 @@ press @kbd{M-# t} to begin. | |||
| 34286 | @appendix Reporting Bugs | 34286 | @appendix Reporting Bugs |
| 34287 | 34287 | ||
| 34288 | @noindent | 34288 | @noindent |
| 34289 | If you find a bug in Calc, send e-mail to Colin Walters, | 34289 | If you find a bug in Calc, send e-mail to Jay Belanger, |
| 34290 | 34290 | ||
| 34291 | @example | 34291 | @example |
| 34292 | walters@@debian.org @r{or} | 34292 | belanger@@truman.edu |
| 34293 | walters@@verbum.org | ||
| 34294 | @end example | 34293 | @end example |
| 34295 | 34294 | ||
| 34296 | @noindent | 34295 | @noindent |
diff --git a/man/gnus.texi b/man/gnus.texi index a62e9bcf149..ca9045bf5b9 100644 --- a/man/gnus.texi +++ b/man/gnus.texi | |||
| @@ -885,7 +885,7 @@ New Features | |||
| 885 | * Red Gnus:: Third time best---Gnus 5.4/5.5. | 885 | * Red Gnus:: Third time best---Gnus 5.4/5.5. |
| 886 | * Quassia Gnus:: Two times two is four, or Gnus 5.6/5.7. | 886 | * Quassia Gnus:: Two times two is four, or Gnus 5.6/5.7. |
| 887 | * Pterodactyl Gnus:: Pentad also starts with P, AKA Gnus 5.8/5.9. | 887 | * Pterodactyl Gnus:: Pentad also starts with P, AKA Gnus 5.8/5.9. |
| 888 | * Oort Gnus:: It's big. It's far out. Gnus 5.10. | 888 | * Oort Gnus:: It's big. It's far out. Gnus 5.10/5.11. |
| 889 | 889 | ||
| 890 | Customization | 890 | Customization |
| 891 | 891 | ||
| @@ -13538,10 +13538,16 @@ and says what authentication scheme to use. The default is | |||
| 13538 | 13538 | ||
| 13539 | @end table | 13539 | @end table |
| 13540 | 13540 | ||
| 13541 | @vindex pop3-movemail | ||
| 13542 | @vindex pop3-leave-mail-on-server | ||
| 13541 | If the @code{:program} and @code{:function} keywords aren't specified, | 13543 | If the @code{:program} and @code{:function} keywords aren't specified, |
| 13542 | @code{pop3-movemail} will be used. If the | 13544 | @code{pop3-movemail} will be used. If the |
| 13543 | @code{pop3-leave-mail-on-server} is non-@code{nil} the mail is to be | 13545 | @code{pop3-leave-mail-on-server} is non-@code{nil} the mail is to be |
| 13544 | left on the POP server after fetching. | 13546 | left on the @acronym{POP} server after fetching when using |
| 13547 | @code{pop3-movemail}. Note that POP servers maintain no state | ||
| 13548 | information between sessions, so what the client believes is there and | ||
| 13549 | what is actually there may not match up. If they do not, then the whole | ||
| 13550 | thing can fall apart and leave you with a corrupt mailbox. | ||
| 13545 | 13551 | ||
| 13546 | Here are some examples. Fetch from the default @acronym{POP} server, | 13552 | Here are some examples. Fetch from the default @acronym{POP} server, |
| 13547 | using the default user name, and default fetcher: | 13553 | using the default user name, and default fetcher: |
| @@ -25050,7 +25056,7 @@ actually are people who are using Gnus. Who'd'a thunk it! | |||
| 25050 | * Red Gnus:: Third time best---Gnus 5.4/5.5. | 25056 | * Red Gnus:: Third time best---Gnus 5.4/5.5. |
| 25051 | * Quassia Gnus:: Two times two is four, or Gnus 5.6/5.7. | 25057 | * Quassia Gnus:: Two times two is four, or Gnus 5.6/5.7. |
| 25052 | * Pterodactyl Gnus:: Pentad also starts with P, AKA Gnus 5.8/5.9. | 25058 | * Pterodactyl Gnus:: Pentad also starts with P, AKA Gnus 5.8/5.9. |
| 25053 | * Oort Gnus:: It's big. It's far out. Gnus 5.10. | 25059 | * Oort Gnus:: It's big. It's far out. Gnus 5.10/5.11. |
| 25054 | @end menu | 25060 | @end menu |
| 25055 | 25061 | ||
| 25056 | These lists are, of course, just @emph{short} overviews of the | 25062 | These lists are, of course, just @emph{short} overviews of the |
diff --git a/man/message.texi b/man/message.texi index 6a52698ddb5..25f1d12d33b 100644 --- a/man/message.texi +++ b/man/message.texi | |||
| @@ -224,7 +224,13 @@ only you can cancel your own messages, which is nice. The downside | |||
| 224 | is that if you lose your @file{.emacs} file (which is where Gnus | 224 | is that if you lose your @file{.emacs} file (which is where Gnus |
| 225 | stores the secret cancel lock password (which is generated | 225 | stores the secret cancel lock password (which is generated |
| 226 | automatically the first time you use this feature)), you won't be | 226 | automatically the first time you use this feature)), you won't be |
| 227 | able to cancel your message. | 227 | able to cancel your message. If you yourself want to manage a password, |
| 228 | you can put something like the following in your @file{~/.gnus.el} file: | ||
| 229 | |||
| 230 | @lisp | ||
| 231 | (setq canlock-password "Salam Shalom" | ||
| 232 | canlock-password-for-verify canlock-password) | ||
| 233 | @end lisp | ||
| 228 | 234 | ||
| 229 | Whether to insert the header or not is controlled by the | 235 | Whether to insert the header or not is controlled by the |
| 230 | @code{message-insert-canlock} variable. | 236 | @code{message-insert-canlock} variable. |
| @@ -309,8 +315,7 @@ and resend the message in the current buffer to that address. | |||
| 309 | 315 | ||
| 310 | @vindex message-ignored-resent-headers | 316 | @vindex message-ignored-resent-headers |
| 311 | Headers that match the @code{message-ignored-resent-headers} regexp will | 317 | Headers that match the @code{message-ignored-resent-headers} regexp will |
| 312 | be removed before sending the message. The default is | 318 | be removed before sending the message. |
| 313 | @samp{^Return-receipt}. | ||
| 314 | 319 | ||
| 315 | 320 | ||
| 316 | @node Bouncing | 321 | @node Bouncing |
diff --git a/nt/INSTALL b/nt/INSTALL index 646054e07f4..09de93bca01 100644 --- a/nt/INSTALL +++ b/nt/INSTALL | |||
| @@ -16,6 +16,9 @@ | |||
| 16 | fixing first. The easiest way to do this and avoid future conflicts | 16 | fixing first. The easiest way to do this and avoid future conflicts |
| 17 | is to run the following command in this (emacs/nt) directory: | 17 | is to run the following command in this (emacs/nt) directory: |
| 18 | cvs update -kb | 18 | cvs update -kb |
| 19 | In addition to this file, you should also read INSTALL.CVS in the | ||
| 20 | parent directory, and make sure that you have a version of "touch.exe" | ||
| 21 | in your path, and that it will create files that do not yet exist. | ||
| 19 | 22 | ||
| 20 | To compile Emacs, you will need either Microsoft Visual C++ 2.0 or | 23 | To compile Emacs, you will need either Microsoft Visual C++ 2.0 or |
| 21 | later and nmake, or a Windows port of GCC 2.95 or later with Mingw | 24 | later and nmake, or a Windows port of GCC 2.95 or later with Mingw |
| @@ -31,10 +34,14 @@ | |||
| 31 | like this, we recommend the use of the supported compilers mentioned | 34 | like this, we recommend the use of the supported compilers mentioned |
| 32 | in the previous paragraph. | 35 | in the previous paragraph. |
| 33 | 36 | ||
| 37 | You will also need a copy of the Posix cp, rm and mv programs. These | ||
| 38 | and other useful Posix utilities can be obtained from the Mingw or | ||
| 39 | Cygwin projects. | ||
| 40 | |||
| 34 | If you build Emacs on Windows 9X or ME, not on Windows 2K/XP or | 41 | If you build Emacs on Windows 9X or ME, not on Windows 2K/XP or |
| 35 | Windows NT, we suggest to install the Cygwin port of Bash. | 42 | Windows NT, we suggest to install the Cygwin port of Bash. |
| 36 | 43 | ||
| 37 | Please see http://www.mingw.org for pointers to GCC/Mingw binaries. | 44 | Please see http://www.mingw.org for pointers to GCC/Mingw and binaries. |
| 38 | 45 | ||
| 39 | For reference, here is a list of which builds of GNU make are known | 46 | For reference, here is a list of which builds of GNU make are known |
| 40 | to work or not, and whether they work in the presence and/or absence | 47 | to work or not, and whether they work in the presence and/or absence |
diff --git a/src/ChangeLog b/src/ChangeLog index 9fedb52f42c..7b22f043009 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,7 +1,58 @@ | |||
| 1 | 2004-10-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to | ||
| 4 | gdk_window_clear and move gdk_window_process_all_updates after | ||
| 5 | clear so events are sent to the X server in correct order. | ||
| 6 | |||
| 7 | 2004-10-18 Kenichi Handa <handa@m17n.org> | ||
| 8 | |||
| 9 | * fontset.c (fs_load_font): Use fast_string_match_ignore_case for | ||
| 10 | comparing font names. | ||
| 11 | (fs_query_fontset): Use fast_string_match for comparing fontset | ||
| 12 | names. | ||
| 13 | (list_fontsets): Likewise. | ||
| 14 | |||
| 15 | * search.c (fast_string_match_ignore_case): New function. | ||
| 16 | |||
| 17 | * lisp.h (fast_string_match_ignore_case): Extern it. | ||
| 18 | |||
| 19 | 2004-10-17 Kim F. Storm <storm@cua.dk> | ||
| 20 | |||
| 21 | * xdisp.c (overlay_arrow_at_row): Return overlay string rather | ||
| 22 | than bitmap if there is not left fringe. | ||
| 23 | (get_overlay_arrow_glyph_row): Also used on windows system. | ||
| 24 | (display_line): Display overlay string if no left fringe. | ||
| 25 | |||
| 26 | 2004-10-16 Jason Rumney <jasonr@gnu.org> | ||
| 27 | |||
| 28 | * w32fns.c (w32_font_match): Encode font name being matched. | ||
| 29 | |||
| 30 | 2004-10-16 Richard M. Stallman <rms@gnu.org> | ||
| 31 | |||
| 32 | * window.c (Fspecial_display_p): Doc fix. | ||
| 33 | |||
| 34 | 2004-10-15 Stefan <monnier@iro.umontreal.ca> | ||
| 35 | |||
| 36 | * doc.c (Fsubstitute_command_keys): Fix remap-handling. | ||
| 37 | Don't ignore menus, because where-is-internal already does it for us. | ||
| 38 | |||
| 39 | 2004-10-15 Kim F. Storm <storm@cua.dk> | ||
| 40 | |||
| 41 | * xdisp.c (redisplay_window): Only update fringes and vertical | ||
| 42 | border on window frames. | ||
| 43 | |||
| 44 | 2004-10-14 Andreas Schwab <schwab@suse.de> | ||
| 45 | |||
| 46 | * m/ia64.h (DATA_SEG_BITS): Don't define. | ||
| 47 | |||
| 1 | 2004-10-14 Kim F. Storm <storm@cua.dk> | 48 | 2004-10-14 Kim F. Storm <storm@cua.dk> |
| 2 | 49 | ||
| 3 | * xterm.h: Include Xutil.h after keysym.h to work around bug | 50 | * xterm.h: Include Xutil.h after keysym.h to work around bug |
| 4 | (incorrectly recognising AltGr key) in some X versions. | 51 | in some X versions. |
| 52 | |||
| 53 | 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 54 | |||
| 55 | * fns.c (map_char_table): Add missing gcpros. | ||
| 5 | 56 | ||
| 6 | 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca> | 57 | 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca> |
| 7 | 58 | ||
| @@ -774,28 +774,18 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int | |||
| 774 | 774 | ||
| 775 | /* Save STRP in IDX. */ | 775 | /* Save STRP in IDX. */ |
| 776 | idx = strp - SDATA (string); | 776 | idx = strp - SDATA (string); |
| 777 | tem = Fintern (make_string (start, length_byte), Qnil); | 777 | name = Fintern (make_string (start, length_byte), Qnil); |
| 778 | 778 | ||
| 779 | /* Ignore remappings unless there are no ordinary bindings. */ | 779 | /* Ignore remappings unless there are no ordinary bindings. */ |
| 780 | tem = Fwhere_is_internal (tem, keymap, Qt, Qnil, Qt); | 780 | tem = Fwhere_is_internal (name, keymap, Qt, Qnil, Qt); |
| 781 | if (NILP (tem)) | 781 | if (NILP (tem)) |
| 782 | tem = Fwhere_is_internal (tem, keymap, Qt, Qnil, Qnil); | 782 | tem = Fwhere_is_internal (name, keymap, Qt, Qnil, Qnil); |
| 783 | 783 | ||
| 784 | /* Note the Fwhere_is_internal can GC, so we have to take | 784 | /* Note the Fwhere_is_internal can GC, so we have to take |
| 785 | relocation of string contents into account. */ | 785 | relocation of string contents into account. */ |
| 786 | strp = SDATA (string) + idx; | 786 | strp = SDATA (string) + idx; |
| 787 | start = SDATA (string) + start_idx; | 787 | start = SDATA (string) + start_idx; |
| 788 | 788 | ||
| 789 | /* Disregard menu bar bindings; it is positively annoying to | ||
| 790 | mention them when there's no menu bar, and it isn't terribly | ||
| 791 | useful even when there is a menu bar. */ | ||
| 792 | if (!NILP (tem)) | ||
| 793 | { | ||
| 794 | firstkey = Faref (tem, make_number (0)); | ||
| 795 | if (EQ (firstkey, Qmenu_bar)) | ||
| 796 | tem = Qnil; | ||
| 797 | } | ||
| 798 | |||
| 799 | if (NILP (tem)) /* but not on any keys */ | 789 | if (NILP (tem)) /* but not on any keys */ |
| 800 | { | 790 | { |
| 801 | int offset = bufp - buf; | 791 | int offset = bufp - buf; |
diff --git a/src/fontset.c b/src/fontset.c index e99cc0ff6a3..7fbaee3c216 100644 --- a/src/fontset.c +++ b/src/fontset.c | |||
| @@ -655,7 +655,7 @@ fs_load_font (f, c, fontname, id, face) | |||
| 655 | struct face *face; | 655 | struct face *face; |
| 656 | { | 656 | { |
| 657 | Lisp_Object fontset; | 657 | Lisp_Object fontset; |
| 658 | Lisp_Object list, elt; | 658 | Lisp_Object list, elt, fullname; |
| 659 | int size = 0; | 659 | int size = 0; |
| 660 | struct font_info *fontp; | 660 | struct font_info *fontp; |
| 661 | int charset = CHAR_CHARSET (c); | 661 | int charset = CHAR_CHARSET (c); |
| @@ -701,10 +701,11 @@ fs_load_font (f, c, fontname, id, face) | |||
| 701 | font_info structure that are not set by (*load_font_func). */ | 701 | font_info structure that are not set by (*load_font_func). */ |
| 702 | fontp->charset = charset; | 702 | fontp->charset = charset; |
| 703 | 703 | ||
| 704 | fullname = build_string (fontp->full_name); | ||
| 704 | fontp->vertical_centering | 705 | fontp->vertical_centering |
| 705 | = (STRINGP (Vvertical_centering_font_regexp) | 706 | = (STRINGP (Vvertical_centering_font_regexp) |
| 706 | && (fast_c_string_match_ignore_case | 707 | && (fast_string_match_ignore_case |
| 707 | (Vvertical_centering_font_regexp, fontp->full_name) >= 0)); | 708 | (Vvertical_centering_font_regexp, fullname) >= 0)); |
| 708 | 709 | ||
| 709 | if (fontp->encoding[1] != FONT_ENCODING_NOT_DECIDED) | 710 | if (fontp->encoding[1] != FONT_ENCODING_NOT_DECIDED) |
| 710 | { | 711 | { |
| @@ -721,7 +722,6 @@ fs_load_font (f, c, fontname, id, face) | |||
| 721 | /* The font itself doesn't have information about encoding. */ | 722 | /* The font itself doesn't have information about encoding. */ |
| 722 | int i; | 723 | int i; |
| 723 | 724 | ||
| 724 | fontname = fontp->full_name; | ||
| 725 | /* By default, encoding of ASCII chars is 0 (i.e. 0x00..0x7F), | 725 | /* By default, encoding of ASCII chars is 0 (i.e. 0x00..0x7F), |
| 726 | others is 1 (i.e. 0x80..0xFF). */ | 726 | others is 1 (i.e. 0x80..0xFF). */ |
| 727 | fontp->encoding[0] = 0; | 727 | fontp->encoding[0] = 0; |
| @@ -733,8 +733,7 @@ fs_load_font (f, c, fontname, id, face) | |||
| 733 | elt = XCAR (list); | 733 | elt = XCAR (list); |
| 734 | if (CONSP (elt) | 734 | if (CONSP (elt) |
| 735 | && STRINGP (XCAR (elt)) && CONSP (XCDR (elt)) | 735 | && STRINGP (XCAR (elt)) && CONSP (XCDR (elt)) |
| 736 | && (fast_c_string_match_ignore_case (XCAR (elt), fontname) | 736 | && (fast_string_match_ignore_case (XCAR (elt), fullname) >= 0)) |
| 737 | >= 0)) | ||
| 738 | { | 737 | { |
| 739 | Lisp_Object tmp; | 738 | Lisp_Object tmp; |
| 740 | 739 | ||
| @@ -848,18 +847,17 @@ fs_query_fontset (name, regexpp) | |||
| 848 | 847 | ||
| 849 | for (i = 0; i < ASIZE (Vfontset_table); i++) | 848 | for (i = 0; i < ASIZE (Vfontset_table); i++) |
| 850 | { | 849 | { |
| 851 | Lisp_Object fontset; | 850 | Lisp_Object fontset, this_name; |
| 852 | const unsigned char *this_name; | ||
| 853 | 851 | ||
| 854 | fontset = FONTSET_FROM_ID (i); | 852 | fontset = FONTSET_FROM_ID (i); |
| 855 | if (NILP (fontset) | 853 | if (NILP (fontset) |
| 856 | || !BASE_FONTSET_P (fontset)) | 854 | || !BASE_FONTSET_P (fontset)) |
| 857 | continue; | 855 | continue; |
| 858 | 856 | ||
| 859 | this_name = SDATA (FONTSET_NAME (fontset)); | 857 | this_name = FONTSET_NAME (fontset); |
| 860 | if (regexpp | 858 | if (regexpp |
| 861 | ? fast_c_string_match_ignore_case (name, this_name) >= 0 | 859 | ? fast_string_match (name, this_name) >= 0 |
| 862 | : !strcmp (SDATA (name), this_name)) | 860 | : !strcmp (SDATA (name), SDATA (this_name))) |
| 863 | return i; | 861 | return i; |
| 864 | } | 862 | } |
| 865 | return -1; | 863 | return -1; |
| @@ -913,19 +911,18 @@ list_fontsets (f, pattern, size) | |||
| 913 | 911 | ||
| 914 | for (id = 0; id < ASIZE (Vfontset_table); id++) | 912 | for (id = 0; id < ASIZE (Vfontset_table); id++) |
| 915 | { | 913 | { |
| 916 | Lisp_Object fontset; | 914 | Lisp_Object fontset, name; |
| 917 | const unsigned char *name; | ||
| 918 | 915 | ||
| 919 | fontset = FONTSET_FROM_ID (id); | 916 | fontset = FONTSET_FROM_ID (id); |
| 920 | if (NILP (fontset) | 917 | if (NILP (fontset) |
| 921 | || !BASE_FONTSET_P (fontset) | 918 | || !BASE_FONTSET_P (fontset) |
| 922 | || !EQ (frame, FONTSET_FRAME (fontset))) | 919 | || !EQ (frame, FONTSET_FRAME (fontset))) |
| 923 | continue; | 920 | continue; |
| 924 | name = SDATA (FONTSET_NAME (fontset)); | 921 | name = FONTSET_NAME (fontset); |
| 925 | 922 | ||
| 926 | if (!NILP (regexp) | 923 | if (!NILP (regexp) |
| 927 | ? (fast_c_string_match_ignore_case (regexp, name) < 0) | 924 | ? (fast_string_match (regexp, name) < 0) |
| 928 | : strcmp (SDATA (pattern), name)) | 925 | : strcmp (SDATA (pattern), SDATA (name))) |
| 929 | continue; | 926 | continue; |
| 930 | 927 | ||
| 931 | if (size) | 928 | if (size) |
diff --git a/src/gtkutil.c b/src/gtkutil.c index fabdae74dc6..4d166a4d01e 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c | |||
| @@ -2888,9 +2888,6 @@ xg_update_scrollbar_pos (f, scrollbar_id, top, left, width, height, | |||
| 2888 | gtk_fixed_move (GTK_FIXED (wfixed), wscroll, left, top); | 2888 | gtk_fixed_move (GTK_FIXED (wfixed), wscroll, left, top); |
| 2889 | gtk_widget_set_size_request (wscroll, width, height); | 2889 | gtk_widget_set_size_request (wscroll, width, height); |
| 2890 | 2890 | ||
| 2891 | /* Must force out update so changed scroll bars gets redrawn. */ | ||
| 2892 | gdk_window_process_all_updates (); | ||
| 2893 | |||
| 2894 | /* Scroll bars in GTK has a fixed width, so if we say width 16, it | 2891 | /* Scroll bars in GTK has a fixed width, so if we say width 16, it |
| 2895 | will only be its fixed width (14 is default) anyway, the rest is | 2892 | will only be its fixed width (14 is default) anyway, the rest is |
| 2896 | blank. We are drawing the mode line across scroll bars when | 2893 | blank. We are drawing the mode line across scroll bars when |
| @@ -2917,9 +2914,11 @@ xg_update_scrollbar_pos (f, scrollbar_id, top, left, width, height, | |||
| 2917 | scroll bar so that there is some space (typically 1 pixel) between | 2914 | scroll bar so that there is some space (typically 1 pixel) between |
| 2918 | the scroll bar and the edge of the window and between the scroll | 2915 | the scroll bar and the edge of the window and between the scroll |
| 2919 | bar and the fringe. */ | 2916 | bar and the fringe. */ |
| 2917 | gdk_window_clear (wscroll->window); | ||
| 2920 | 2918 | ||
| 2921 | XClearWindow (FRAME_X_DISPLAY (f), GTK_WIDGET_TO_X_WIN (wscroll)); | 2919 | /* Must force out update so changed scroll bars gets redrawn. */ |
| 2922 | 2920 | gdk_window_process_all_updates (); | |
| 2921 | |||
| 2923 | SET_FRAME_GARBAGED (f); | 2922 | SET_FRAME_GARBAGED (f); |
| 2924 | cancel_mouse_face (f); | 2923 | cancel_mouse_face (f); |
| 2925 | } | 2924 | } |
diff --git a/src/lisp.h b/src/lisp.h index 133c5c07c56..ce0fdf96e43 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -2792,6 +2792,7 @@ EXFUN (Fmatch_end, 1); | |||
| 2792 | EXFUN (Flooking_at, 1); | 2792 | EXFUN (Flooking_at, 1); |
| 2793 | extern int fast_string_match P_ ((Lisp_Object, Lisp_Object)); | 2793 | extern int fast_string_match P_ ((Lisp_Object, Lisp_Object)); |
| 2794 | extern int fast_c_string_match_ignore_case P_ ((Lisp_Object, const char *)); | 2794 | extern int fast_c_string_match_ignore_case P_ ((Lisp_Object, const char *)); |
| 2795 | extern int fast_string_match_ignore_case P_ ((Lisp_Object, Lisp_Object)); | ||
| 2795 | extern int scan_buffer P_ ((int, int, int, int, int *, int)); | 2796 | extern int scan_buffer P_ ((int, int, int, int, int *, int)); |
| 2796 | extern int scan_newline P_ ((int, int, int, int, int, int)); | 2797 | extern int scan_newline P_ ((int, int, int, int, int, int)); |
| 2797 | extern int find_next_newline P_ ((int, int)); | 2798 | extern int find_next_newline P_ ((int, int)); |
diff --git a/src/m/ia64.h b/src/m/ia64.h index 7114382d513..947bb9d4562 100644 --- a/src/m/ia64.h +++ b/src/m/ia64.h | |||
| @@ -133,8 +133,6 @@ extern void r_alloc_free (); | |||
| 133 | 133 | ||
| 134 | #endif /* not NOT_C_CODE */ | 134 | #endif /* not NOT_C_CODE */ |
| 135 | 135 | ||
| 136 | #define DATA_SEG_BITS 0x6000000000000000 | ||
| 137 | |||
| 138 | #define HAVE_TEXT_START | 136 | #define HAVE_TEXT_START |
| 139 | 137 | ||
| 140 | /* arch-tag: 9b8e9fb2-2e49-4c22-b68f-11a488e77c66 | 138 | /* arch-tag: 9b8e9fb2-2e49-4c22-b68f-11a488e77c66 |
diff --git a/src/search.c b/src/search.c index 0375f353dd2..f7bee1b8683 100644 --- a/src/search.c +++ b/src/search.c | |||
| @@ -493,6 +493,27 @@ fast_c_string_match_ignore_case (regexp, string) | |||
| 493 | immediate_quit = 0; | 493 | immediate_quit = 0; |
| 494 | return val; | 494 | return val; |
| 495 | } | 495 | } |
| 496 | |||
| 497 | /* Like fast_string_match but ignore case. */ | ||
| 498 | |||
| 499 | int | ||
| 500 | fast_string_match_ignore_case (regexp, string) | ||
| 501 | Lisp_Object regexp, string; | ||
| 502 | { | ||
| 503 | int val; | ||
| 504 | struct re_pattern_buffer *bufp; | ||
| 505 | |||
| 506 | bufp = compile_pattern (regexp, 0, Vascii_downcase_table, | ||
| 507 | 0, STRING_MULTIBYTE (string)); | ||
| 508 | immediate_quit = 1; | ||
| 509 | re_match_object = string; | ||
| 510 | |||
| 511 | val = re_search (bufp, (char *) SDATA (string), | ||
| 512 | SBYTES (string), 0, | ||
| 513 | SBYTES (string), 0); | ||
| 514 | immediate_quit = 0; | ||
| 515 | return val; | ||
| 516 | } | ||
| 496 | 517 | ||
| 497 | /* The newline cache: remembering which sections of text have no newlines. */ | 518 | /* The newline cache: remembering which sections of text have no newlines. */ |
| 498 | 519 | ||
diff --git a/src/w32fns.c b/src/w32fns.c index 5cfc4adb0af..1e52155ab3b 100644 --- a/src/w32fns.c +++ b/src/w32fns.c | |||
| @@ -5370,7 +5370,7 @@ x_to_w32_font (lpxstr, lplogfont) | |||
| 5370 | setup_coding_system | 5370 | setup_coding_system |
| 5371 | (Fcheck_coding_system (Vlocale_coding_system), &coding); | 5371 | (Fcheck_coding_system (Vlocale_coding_system), &coding); |
| 5372 | coding.src_multibyte = 1; | 5372 | coding.src_multibyte = 1; |
| 5373 | coding.dst_multibyte = 1; | 5373 | coding.dst_multibyte = 0; |
| 5374 | /* Need to set COMPOSITION_DISABLED, otherwise Emacs crashes in | 5374 | /* Need to set COMPOSITION_DISABLED, otherwise Emacs crashes in |
| 5375 | encode_coding_iso2022 trying to dereference a null pointer. */ | 5375 | encode_coding_iso2022 trying to dereference a null pointer. */ |
| 5376 | coding.composing = COMPOSITION_DISABLED; | 5376 | coding.composing = COMPOSITION_DISABLED; |
| @@ -5607,12 +5607,14 @@ w32_font_match (fontname, pattern) | |||
| 5607 | char * fontname; | 5607 | char * fontname; |
| 5608 | char * pattern; | 5608 | char * pattern; |
| 5609 | { | 5609 | { |
| 5610 | char *regex = alloca (strlen (pattern) * 2 + 3); | 5610 | char *font_name_copy; |
| 5611 | char *font_name_copy = alloca (strlen (fontname) + 1); | ||
| 5612 | char *ptr; | 5611 | char *ptr; |
| 5612 | Lisp_Object encoded_font_name; | ||
| 5613 | char *regex = alloca (strlen (pattern) * 2 + 3); | ||
| 5613 | 5614 | ||
| 5614 | /* Copy fontname so we can modify it during comparison. */ | 5615 | /* Convert fontname to unibyte for match. */ |
| 5615 | strcpy (font_name_copy, fontname); | 5616 | encoded_font_name = string_make_unibyte (build_string (fontname)); |
| 5617 | font_name_copy = SDATA (encoded_font_name); | ||
| 5616 | 5618 | ||
| 5617 | ptr = regex; | 5619 | ptr = regex; |
| 5618 | *ptr++ = '^'; | 5620 | *ptr++ = '^'; |
diff --git a/src/w32term.c b/src/w32term.c index 3d50e93b761..9238b7959d5 100644 --- a/src/w32term.c +++ b/src/w32term.c | |||
| @@ -1209,7 +1209,6 @@ w32_text_out (s, x, y,chars,nchars) | |||
| 1209 | } | 1209 | } |
| 1210 | 1210 | ||
| 1211 | 1211 | ||
| 1212 | |||
| 1213 | static void x_set_glyph_string_clipping P_ ((struct glyph_string *)); | 1212 | static void x_set_glyph_string_clipping P_ ((struct glyph_string *)); |
| 1214 | static void x_set_glyph_string_gc P_ ((struct glyph_string *)); | 1213 | static void x_set_glyph_string_gc P_ ((struct glyph_string *)); |
| 1215 | static void x_draw_glyph_string_background P_ ((struct glyph_string *, | 1214 | static void x_draw_glyph_string_background P_ ((struct glyph_string *, |
| @@ -2061,7 +2060,6 @@ x_draw_image_foreground (s) | |||
| 2061 | } | 2060 | } |
| 2062 | 2061 | ||
| 2063 | 2062 | ||
| 2064 | |||
| 2065 | /* Draw a relief around the image glyph string S. */ | 2063 | /* Draw a relief around the image glyph string S. */ |
| 2066 | 2064 | ||
| 2067 | static void | 2065 | static void |
| @@ -2812,14 +2810,6 @@ x_new_focus_frame (dpyinfo, frame) | |||
| 2812 | if (old_focus && old_focus->auto_lower) | 2810 | if (old_focus && old_focus->auto_lower) |
| 2813 | x_lower_frame (old_focus); | 2811 | x_lower_frame (old_focus); |
| 2814 | 2812 | ||
| 2815 | |||
| 2816 | |||
| 2817 | |||
| 2818 | |||
| 2819 | |||
| 2820 | |||
| 2821 | |||
| 2822 | |||
| 2823 | if (dpyinfo->w32_focus_frame && dpyinfo->w32_focus_frame->auto_raise) | 2813 | if (dpyinfo->w32_focus_frame && dpyinfo->w32_focus_frame->auto_raise) |
| 2824 | pending_autoraise_frame = dpyinfo->w32_focus_frame; | 2814 | pending_autoraise_frame = dpyinfo->w32_focus_frame; |
| 2825 | else | 2815 | else |
| @@ -4688,7 +4678,6 @@ w32_read_socket (sd, expected, hold_quit) | |||
| 4688 | if (f) | 4678 | if (f) |
| 4689 | x_new_focus_frame (dpyinfo, f); | 4679 | x_new_focus_frame (dpyinfo, f); |
| 4690 | 4680 | ||
| 4691 | |||
| 4692 | dpyinfo->grabbed = 0; | 4681 | dpyinfo->grabbed = 0; |
| 4693 | check_visibility = 1; | 4682 | check_visibility = 1; |
| 4694 | break; | 4683 | break; |
| @@ -4906,7 +4895,6 @@ w32_read_socket (sd, expected, hold_quit) | |||
| 4906 | } | 4895 | } |
| 4907 | 4896 | ||
| 4908 | 4897 | ||
| 4909 | |||
| 4910 | 4898 | ||
| 4911 | /*********************************************************************** | 4899 | /*********************************************************************** |
| 4912 | Text Cursor | 4900 | Text Cursor |
diff --git a/src/window.c b/src/window.c index 22ca145b206..6b244ca5353 100644 --- a/src/window.c +++ b/src/window.c | |||
| @@ -3216,10 +3216,13 @@ display_buffer_1 (window) | |||
| 3216 | } | 3216 | } |
| 3217 | 3217 | ||
| 3218 | DEFUN ("special-display-p", Fspecial_display_p, Sspecial_display_p, 1, 1, 0, | 3218 | DEFUN ("special-display-p", Fspecial_display_p, Sspecial_display_p, 1, 1, 0, |
| 3219 | doc: /* Returns non-nil if a buffer named BUFFER-NAME would be created specially. | 3219 | doc: /* Returns non-nil if a buffer named BUFFER-NAME gets a special frame. |
| 3220 | The value is actually t if the frame should be called with default frame | 3220 | If the value is t, a frame would be created for that buffer |
| 3221 | parameters, and a list of frame parameters if they were specified. | 3221 | using the default frame parameters. If the value is a list, |
| 3222 | See `special-display-buffer-names', and `special-display-regexps'. */) | 3222 | it is a list of frame parameters that would be used |
| 3223 | to make a frame for that buffer. | ||
| 3224 | The variables `special-display-buffer-names' | ||
| 3225 | and `special-display-regexps' control this. */) | ||
| 3223 | (buffer_name) | 3226 | (buffer_name) |
| 3224 | Lisp_Object buffer_name; | 3227 | Lisp_Object buffer_name; |
| 3225 | { | 3228 | { |
diff --git a/src/xdisp.c b/src/xdisp.c index 434128ea487..81a535f6b0e 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -9521,11 +9521,13 @@ update_overlay_arrows (up_to_date) | |||
| 9521 | } | 9521 | } |
| 9522 | 9522 | ||
| 9523 | 9523 | ||
| 9524 | /* Return overlay arrow string at row, or nil. */ | 9524 | /* Return overlay arrow string to display at row. |
| 9525 | Return t if display as bitmap in left fringe. | ||
| 9526 | Return nil if no overlay arrow. */ | ||
| 9525 | 9527 | ||
| 9526 | static Lisp_Object | 9528 | static Lisp_Object |
| 9527 | overlay_arrow_at_row (f, row, pbitmap) | 9529 | overlay_arrow_at_row (it, row, pbitmap) |
| 9528 | struct frame *f; | 9530 | struct it *it; |
| 9529 | struct glyph_row *row; | 9531 | struct glyph_row *row; |
| 9530 | int *pbitmap; | 9532 | int *pbitmap; |
| 9531 | { | 9533 | { |
| @@ -9548,9 +9550,10 @@ overlay_arrow_at_row (f, row, pbitmap) | |||
| 9548 | && (MATRIX_ROW_START_CHARPOS (row) == marker_position (val))) | 9550 | && (MATRIX_ROW_START_CHARPOS (row) == marker_position (val))) |
| 9549 | { | 9551 | { |
| 9550 | val = overlay_arrow_string_or_property (var, pbitmap); | 9552 | val = overlay_arrow_string_or_property (var, pbitmap); |
| 9551 | if (FRAME_WINDOW_P (f)) | 9553 | if (FRAME_WINDOW_P (it->f) |
| 9554 | && WINDOW_LEFT_FRINGE_WIDTH (it->w) > 0) | ||
| 9552 | return Qt; | 9555 | return Qt; |
| 9553 | else if (STRINGP (val)) | 9556 | if (STRINGP (val)) |
| 9554 | return val; | 9557 | return val; |
| 9555 | break; | 9558 | break; |
| 9556 | } | 9559 | } |
| @@ -14077,8 +14080,8 @@ usage: (trace-to-stderr STRING &rest OBJECTS) */) | |||
| 14077 | Building Desired Matrix Rows | 14080 | Building Desired Matrix Rows |
| 14078 | ***********************************************************************/ | 14081 | ***********************************************************************/ |
| 14079 | 14082 | ||
| 14080 | /* Return a temporary glyph row holding the glyphs of an overlay | 14083 | /* Return a temporary glyph row holding the glyphs of an overlay arrow. |
| 14081 | arrow. Only used for non-window-redisplay windows. */ | 14084 | Used for non-window-redisplay windows, and for windows w/o left fringe. */ |
| 14082 | 14085 | ||
| 14083 | static struct glyph_row * | 14086 | static struct glyph_row * |
| 14084 | get_overlay_arrow_glyph_row (w, overlay_arrow_string) | 14087 | get_overlay_arrow_glyph_row (w, overlay_arrow_string) |
| @@ -14957,11 +14960,11 @@ display_line (it) | |||
| 14957 | better to let it be displayed like cursors under X. */ | 14960 | better to let it be displayed like cursors under X. */ |
| 14958 | if (! overlay_arrow_seen | 14961 | if (! overlay_arrow_seen |
| 14959 | && (overlay_arrow_string | 14962 | && (overlay_arrow_string |
| 14960 | = overlay_arrow_at_row (it->f, row, &overlay_arrow_bitmap), | 14963 | = overlay_arrow_at_row (it, row, &overlay_arrow_bitmap), |
| 14961 | !NILP (overlay_arrow_string))) | 14964 | !NILP (overlay_arrow_string))) |
| 14962 | { | 14965 | { |
| 14963 | /* Overlay arrow in window redisplay is a fringe bitmap. */ | 14966 | /* Overlay arrow in window redisplay is a fringe bitmap. */ |
| 14964 | if (!FRAME_WINDOW_P (it->f)) | 14967 | if (STRINGP (overlay_arrow_string)) |
| 14965 | { | 14968 | { |
| 14966 | struct glyph_row *arrow_row | 14969 | struct glyph_row *arrow_row |
| 14967 | = get_overlay_arrow_glyph_row (it->w, overlay_arrow_string); | 14970 | = get_overlay_arrow_glyph_row (it->w, overlay_arrow_string); |
| @@ -14986,10 +14989,12 @@ display_line (it) | |||
| 14986 | row->used[TEXT_AREA] = p2 - row->glyphs[TEXT_AREA]; | 14989 | row->used[TEXT_AREA] = p2 - row->glyphs[TEXT_AREA]; |
| 14987 | } | 14990 | } |
| 14988 | } | 14991 | } |
| 14989 | 14992 | else | |
| 14993 | { | ||
| 14994 | it->w->overlay_arrow_bitmap = overlay_arrow_bitmap; | ||
| 14995 | row->overlay_arrow_p = 1; | ||
| 14996 | } | ||
| 14990 | overlay_arrow_seen = 1; | 14997 | overlay_arrow_seen = 1; |
| 14991 | it->w->overlay_arrow_bitmap = overlay_arrow_bitmap; | ||
| 14992 | row->overlay_arrow_p = 1; | ||
| 14993 | } | 14998 | } |
| 14994 | 14999 | ||
| 14995 | /* Compute pixel dimensions of this line. */ | 15000 | /* Compute pixel dimensions of this line. */ |
diff --git a/src/xterm.h b/src/xterm.h index 53f0081b215..bb1fe9ddc4c 100644 --- a/src/xterm.h +++ b/src/xterm.h | |||
| @@ -21,8 +21,13 @@ Boston, MA 02111-1307, USA. */ | |||
| 21 | 21 | ||
| 22 | #include <X11/Xlib.h> | 22 | #include <X11/Xlib.h> |
| 23 | #include <X11/cursorfont.h> | 23 | #include <X11/cursorfont.h> |
| 24 | |||
| 25 | /* Include Xutil.h after keysym.h to work around a bug that prevents | ||
| 26 | correct recognition of AltGr key in some X versions. */ | ||
| 27 | |||
| 24 | #include <X11/keysym.h> | 28 | #include <X11/keysym.h> |
| 25 | #include <X11/Xutil.h> | 29 | #include <X11/Xutil.h> |
| 30 | |||
| 26 | #include <X11/Xatom.h> | 31 | #include <X11/Xatom.h> |
| 27 | #include <X11/Xresource.h> | 32 | #include <X11/Xresource.h> |
| 28 | 33 | ||