From: Miles Bader Date: Sat, 5 Apr 2008 23:01:26 +0000 (+0000) Subject: Merge from emacs--rel--22 X-Git-Url: https://git.hcoop.net/bpt/emacs.git/commitdiff_plain/5bc6ddff00c50acf546530ef0e08a27140614d27 Merge from emacs--rel--22 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1107 --- 5bc6ddff00c50acf546530ef0e08a27140614d27 diff --cc doc/emacs/ChangeLog index a94c43e1af,0000000000..1a3bb605ef mode 100644,000000..100644 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog @@@ -1,5246 -1,0 +1,5255 @@@ +2008-04-05 Glenn Morris + + * custom.texi (Init File): Byte-compiling .emacs is bad. + +2008-04-04 Stefan Monnier + + * mini.texi (Minibuffer Edit) : Adjust default. + +2008-03-29 Glenn Morris + + * calendar.texi: Update for `calendar-date-style' replacing + `european-calendar'. + ++2008-03-28 Jason Rumney ++ ++ * display.texi (Display Custom): Mention overlay-margin in text. ++ ++2008-03-12 Reiner Steib ++ ++ * custom.texi, dired.texi, mini.texi, mule.texi: Add `referenced in the ++ tutorial' comments. ++ +2008-03-28 Chong Yidong + + * mark.texi (Mark): Rearrange nodes. + (Persistent Mark): Rename from Transient Mark. + (Mark, Setting Mark, Marking Objects, Persistent Mark, Mark Ring): + Describe Transient Mark mode as the default. + + * basic.texi (Basic Undo): Don't mention setting the mark, which isn't + the default behavior with Transient Mark mode off. + (Position Info): Fix typo. + + * display.texi (Standard Faces): Reference the Mark node. Remove + discussion of the region face, which is discussed there. + + * emacs.texi (Top): Update node listings. + + * files.texi (Diff Mode, Misc File Ops): Describe Transient Mark mode + as the default. + + * fixit.texi (Undo): Standardize choice of undo key sequence. + (Undo, Spelling): Describe Transient Mark mode as the default. + + * frames.texi (Mouse Commands): Treat Transient Mark mode as the + default. + + * glossary.texi (Glossary): Treat Transient Mark mode as the default. + + * killing.texi (Kill Ring, Accumulating Text): Assume Transient Mark + mode is the default, and note that the mark is not activated when set. + + * programs.texi (Moving by Defuns, Expressions, Comment Commands): + Describe Transient Mark mode as the default. + + * search.texi (Basic Isearch): Reference the Mark Ring node. + (Replace, Unconditional Replace, Other Repeating Search): + Describe Transient Mark mode as the default. + + * text.texi (Words, Pages, Fill Commands, HTML Mode): Describe + Transient Mark mode as the default. + (Paragraphs): Describe how M-h behaves when region is active. + + * trouble.texi (Quitting): Clarify effects of C-g. + +2008-03-13 Glenn Morris + + * emacs.texi (EMACSVER): Set to 23.0.60. + +2008-03-05 Glenn Morris + + * dired.texi (Hiding Subdirectories): Fix previous change. + +2008-03-05 Drew Adams + + * dired.texi (Hiding Subdirectories): Document `dired-hide-subdir'. + +2008-02-28 Kim F. Storm + + * help.texi (Help Files): Move describe-gnu-project to C-h g. + Move describe-distribution to C-h C-o. + Move view-emacs-problems to C-h C-p. + Add view-emacs-debugging on C-h C-d. + Add view-external-packages on C-h C-e. + Add view-order-manuals on C-h C-m. + +2008-02-17 Ulrich Mueller + + * msdog-xtra.texi (MS-DOS): Docstring fix. + +2008-02-09 Eli Zaretskii + + * msdog.texi (Windows Fonts): Use a @table for describing font + properties. + +2008-02-07 Jason Rumney + + * msdog.texi (Windows Files): w32-get-true-file-attributes default + value has changed. + (Windows HOME): Clarify what is meant by "if that fails as well". + (Windows Fonts): New section. + +2008-02-07 D. E. Evans (tiny change) + + * basic.texi (Basic Undo): Remove duplicate "you can". + +2008-02-02 Eli Zaretskii + + * maintaining.texi (Tags): Fix last change. + +2008-02-02 Michael Albinus + + * tramp.texi: Use new FSF's Back-Cover Text. + +2008-01-31 Nick Roberts + + * trouble.texi (Checklist): Direct users to emacs-devel@gnu.org. + +2008-01-26 Richard Stallman + + * maintaining.texi (Tags): Delete redundant index entry. + +2008-01-26 Eli Zaretskii + + * programs.texi (Imenu): Move "@cindex tags" from here... + * maintaining.texi (Tags): ...to here. + +2008-01-23 Kevin Ryde + + * custom.texi (Mouse Buttons): Update elisp xref to "Click Events" on + click count. + +2008-01-21 Juanma Barranquero + + * entering.texi (Exiting): Fix typo. + Reported by D. E. Evans . + +2007-12-31 Martin Rudalics + + * glossary.texi (Glossary): Fix typo. + +2007-12-27 Richard Stallman + + * text.texi (Formatted Text): Improve menu tag. + (Editing Format Info): In Info, add duplicate menu of nodes + about the submenus. + (Format Faces): Say where Faces menu is found. Mention Other. + (Format Colors): Say where these submenus are found. + (Format Indentation, Format Justification): Likewise. + (Format Properties): Likewise. + +2007-12-22 Richard Stallman + + * search.texi (Query Replace): Make exp of query-replace more + self-contained, and clarify. + + * cc-mode.texi (Getting Started): Change @ref to @pxref. + +2007-12-15 Richard Stallman + + * files.texi (Auto Save): Clarify definition of auto-saving. + +2007-11-26 Richard Stallman + + * help.texi (Help Echo): Cleanups. + +2007-11-23 Thien-Thi Nguyen + + * files.texi (Why Version Control?): Fix typo. + (VCS Concepts): Fix typos; small tense fix. + (Selecting a Fileset): Fix typos; small rewording. + (Log Buffer): Likewise. + (Old Revisions): Likewise. + +2007-11-17 Eli Zaretskii + + * mule.texi (Communication Coding): Fix wording of last change. + +2007-11-16 Werner Lemberg + + * custom.texi (Specifying File Variables): + * major.texi (Choosing Modes): Mention '\" in man pages. + +2007-11-16 Kenichi Handa + + * mule.texi (Communication Coding): Document x-select-request-type. + + * frames.texi (Cut/Paste Other App): Mention x-select-request-type. + +2007-11-15 Francesco Potortì + + * maintaining.texi (TEXTAGS): Note that you can use "-" for stdout with + --output=file. + +2007-11-13 Martin Rudalics + + * help.texi (Help Summary, Apropos, Misc Help): Fix typos. + (Help Echo): Avoid mentioning the term "region" here and + consistently use the term "active text". + +2007-11-11 Glenn Morris + + * calendar.texi (Special Diary Entries): Fix Thanksgiving example. + +2007-11-10 Paul Pogonyshev + + * search.texi (Query Replace): Mention + `query-replace-show-replacement'. + +2007-11-09 Nick Roberts + + * building.texi (Watch Expressions): Remove obscure sentence. + +2007-11-06 Kenichi Handa + + * mule.texi (Select Input Method): Describe how to activate an input + method in the text mode. + +2007-11-01 Dan Nicolaescu + + * cmdargs.texi (Misc Variables): Remove Sun windows info. + +2007-10-30 Nick Roberts + + * building.texi (Watch Expressions): Describe gdb-delete-out-of-scope. + +2007-10-30 Glenn Morris + + * misc.texi (Directory Tracking): Explain a bit more about + dirtrack-mode. + +2007-10-25 Glenn Morris + + * fortran-xtra.texi (Fortran): F90 mode handles F2003. + +2007-10-24 Richard Stallman + + * misc.texi (Interactive Shell): Cleanup last change. + +2007-10-22 Juri Linkov + + * mini.texi (Minibuffer History): Add text about a list of minibuffer + default values. + +2007-10-20 Eric S. Raymond + + * files.texi: Disambiguate two slightly different uses of the term + 'filesets'. + +2007-10-18 Martin Rudalics + + * trouble.texi (Quitting): Fix typo. + +2007-10-18 Glenn Morris + + * frames.texi (Mode Line Mouse): Mention minor mode names. + +2007-10-17 Juri Linkov + + * text.texi (Fill Commands): Undocument fill-paragraph-or-region. + fill-paragraph operates on the active region in Transient Mark mode. + (Fill Prefix, Format Indentation): Replace fill-paragraph-or-region + with fill-paragraph. + + * basic.texi (Arguments): Replace fill-paragraph-or-region with + fill-paragraph. + + * fixit.texi (Spelling): ispell-word operates on the active region + in Transient Mark mode. + +2007-10-17 Aaron S. Hawley + + * building.texi (Source Buffers): + * custom.texi (Init Non-ASCII): + * glossary.texi (Glossary): Use "key binding" consistently. + +2007-10-17 Juanma Barranquero + + * calendar.texi (Diary): Fix directive. + +2007-10-16 Richard Stallman + + * calendar.texi (Diary): Clarify text about diary file example. + +2007-10-13 Eric S. Raymond + + * files.texi: Capitalize node names according to convention. + +2007-10-13 Glenn Morris + + * misc.texi (Interactive Shell): Correct INSIDE_EMACS reference. + +2007-10-11 Eric S. Raymond + + * emacs.texi: + * files.texi (Version Systems): Minor fixes to version-control material + suggested by RMS and Robert J. Chassell. + +2007-10-10 Eric S. Raymond + + * files.texi (Version Systems): + * vc-xtra.texi: + * vc1-xtra.texi: + * vc2-xtra.texi: Merge in changes for new VC with fileset-oriented + operations. Change of terminology from `version' to `revision'. + Revise text for adequate description of VCSes with monotonic IDs. + * emacs.texi: Change of terminology from `version' to `revision'. + +2007-10-09 Eric S. Raymond + + * files.texi (Version Systems): Describe newer VCses. + Reorder the descriptions to be chronological. + +2007-10-09 Richard Stallman + + * display.texi (Cursor Display): Correct how cursor appears + in nonselected windows. + +2007-10-04 Nick Roberts + + * building.texi (GDB Graphical Interface): Remove references to gdba + and mention gud-gdb. + +2007-08-31 Eli Zaretskii + + * rmail.texi (Rmail Sorting): Improve indexing. + +2007-10-06 Juri Linkov + + * text.texi (Fill Commands): Document fill-paragraph-or-region. + (Fill Prefix, Format Indentation): Replace fill-paragraph with + fill-paragraph-or-region. + + * basic.texi (Arguments): Replace fill-paragraph with + fill-paragraph-or-region. + +2007-10-06 Eric S. Raymond + + * files.texi: Update the section on version control for 2007 + conditions. None of these changes are new-VC-specific; that + will come later. + +2007-09-15 Glenn Morris + + * calendar.texi (Holidays): Change all instances of `holiday-list' back + to `list-holidays'. + +2007-09-14 Glenn Morris + + * calendar.texi: Update all instances of mark-calendar-holidays, + list-calendar-holidays, list-holidays with the new names. + +2007-09-06 Glenn Morris + + * Move manual sources from man/ to subdirectories of doc/. + Split into the Emacs manual in emacs/, and other manuals in misc/. + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Reduce to just the Emacs + manual. + (infodir): New variable. + (info): Use $infodir. + (emacsman): Delete target, not needed any more. + Move all targets that are not the Emacs manual to misc/Makefile.in. + (mostlyclean): Remove `gnustmp'. + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS): Reduce to just the Emacs + manual. + (MULTI_INSTALL_INFO, ENVADD, infodir): Go up one more level. + (emacsman): Delete target, not needed any more. + (clean): Remove all info files but Emacs manual. + Move all targets that are not the Emacs manual to misc/Makefile.in. + * emacs-xtra.texi, emacs.texi (setfilename): Go up one more level. + + * Makefile.in (INFOSOURCES): Delete. + (.SUFFIXES): Use $(TEXI2DVI) rather than texi2dvi. + (mostlyclean): Add *.op, *.ops. Move *.aux *.cps *.fns *.kys *.pgs + *.vrs *.toc here... + (maintainer-clean): ...from here. + +2007-09-05 Glenn Morris + + * custom.texi (Safe File Variables): Clarify `!' and risky variables. + +2007-08-29 Glenn Morris + + * emacs.texi (EMACSVER): Increase to 23.0.50. + +2007-08-27 Richard Stallman + + * emacs.texi (Top): Clarify menu item for Glossary. + + * display.texi (Faces): Change secn title. + Clarify not all fonts come from Font Lock. + +2007-08-17 Eli Zaretskii + + * basic.texi (Position Info): Add index entry for face at point. + Mention that character faces are also displayed by "C-u C-x =". + +2007-08-08 Glenn Morris + + * glossary.texi (Glossary): Deprecate `iff'. + +2007-08-07 Chong Yidong + + * files.texi (File Conveniences): Document point motion keys in Image + mode. + +2007-07-27 Glenn Morris + + * emacs.texi (Copying): Include license text from gpl.texi, rather than + in-line. + + * gpl.texi: New file with text of GPL. + * Makefile.in (EMACSSOURCES): Add gpl.texi. + +2007-07-26 Dan Nicolaescu + + * vc2-xtra.texi (Customizing VC): Add GIT and HG. + + * dired.texi (Wdired): Mention C-x C-q key binding. + +2007-07-28 Nick Roberts + + * building.texi (GDB Graphical Interface): Qualify use of "M-x gdba". + +2007-07-25 Glenn Morris + + * emacs.texi (Copying): Replace license with GPLv3. + + * Relicense all FSF files to GPLv3 or later. + +2007-07-24 Glenn Morris + + * calendar.texi (Writing Calendar Files): cal-tex-diary etc only work + for some calendars. + +2007-07-23 Nick Roberts + + * screen.texi (Mode Line): Describe new mode-line flag that shows if + default-directory for the current buffer is on a remote machine. + +2007-07-21 Eli Zaretskii + + * vc2-xtra.texi (Customizing VC) : Update the + default value. + +2007-07-21 Richard Stallman + + * files.texi (Why Version Control?): Improve previous change. + +2007-07-18 Eric S. Raymond + + * files.texi (Why Version Control?): New node. + +2007-07-12 Nick Roberts + + * building.texi (Starting GUD): Add xref to this anchor. + +2007-06-24 Karl Berry + + * emacs.texi: New Back-Cover Text. + +2007-06-07 Alan Mackenzie + + * display.texi (Optional Mode Line): Document the new form of + line+column numbers, "(561,2)". + +2007-06-06 Juanma Barranquero + + * maintaining.texi (Create Tags Table): Fix typos. + +2007-06-02 Chong Yidong + + * Version 22.1 released. + +2007-05-07 Karl Berry + + * emacs.texi (EMACSVER): Back to 22. + +2007-05-06 Richard Stallman + + * maintaining.texi (Create Tags Table): Clean up previous change. + +2007-05-05 Francesco Potortì + + * maintaining.texi (Create Tags Table): Add text about the dangers of + making symbolic links to tags files. + +2007-05-04 Karl Berry + + * emacs.texi (EMACSVER) [smallbook]: 22.1 for printed version, not 22. + +2007-05-03 Karl Berry + + * emacs.texi (EMACSVER) [smallbook]: 22 for printed version. + + * .cvsignore (*.pdf): New entry. + + * emacs.texi (\urlcolor, \linkcolor) [smallbook]: \let to \Black + for printing. + +2007-05-01 Richard Stallman + + * cmdargs.texi (Initial Options): Under --batch, mention --eval. + +2007-04-28 Glenn Morris + + * ack.texi (Acknowledgments): + * anti.texi (Antinews): + * programs.texi (Program Modes): Restore mention of python.el pending + consideration of legal status. + +2007-04-28 Richard Stallman + + * files.texi (File Names): Fixes to ~ description on MS systems. + +2007-04-26 Glenn Morris + + * emacs.texi (EMACSVER): Increase to 22.1.50. + +2007-04-25 Karl Berry + + * emacs.texi: Improve line breaks on copyright page, + similar layout to lispref, 8.5x11 by default. + + * dired.texi (Image-Dired): Improve line break, fix typo. + +2007-04-24 Chong Yidong + + * programs.texi (Program Modes): + * anti.texi (Antinews): + * ack.texi (Acknowledgments): python.el removed. + +2007-04-23 Chong Yidong + + * display.texi (Highlight Interactively): Correct description of + hi-lock-file-patterns-policy. + + * files.texi (File Archives): Mention self-extracting executables. + +2007-04-23 Eli Zaretskii + + * search.texi (Unconditional Replace, Query Replace): Add xref to + "Replacement and Case". + +2007-04-22 Chong Yidong + + * dired.texi (Image-Dired): Move from Thumbnails node. + * misc.texi (Thumbnails): Node deleted. + * emacs.texi (Top): Update node listing. + + * files.texi (File Conveniences): + * ack.texi (Acknowledgments): Rename "tumme" to "image-dired". + +2007-04-21 Richard Stallman + + * display.texi (Highlight Interactively): Correct previous change. + Clarify doc of hi-lock-find-patterns, and move new features into it. + +2007-04-20 David Koppelman + + * display.texi (Highlight Interactively): Document + hi-lock-file-patterns-policy. + +2007-04-20 Martin Rudalics + + * display.texi (Scrolling): Fix typo. + +2007-04-15 Chong Yidong + + * doclicense.texi: Remove node heading, so that it can be included by + other files. + + * emacs.texi: Insert node heading for GFDL. + +2007-04-14 Eli Zaretskii + + * cmdargs.texi (Colors): Qualify "color of window" index entry by + "command line". + + * display.texi (Faces): Refer to "Creating Frames" for face + and other frame customizations in .emacs. + + * frames.texi (Creating Frames): Mention that face customizations can + be put in .emacs. Add index entries. + +2007-04-12 Richard Stallman + + * glossary.texi (Glossary): Explain `iff'. + +2007-04-11 Karl Berry + + * gnu.texi (Top), + * macos.texi (Mac Font Specs), + * anti.texi (Antinews), + * xresources.texi (Resources), + * misc.texi (Emulation), + * calendar.texi (Daylight Saving), + * dired.texi (Dired and Find), + * rmail.texi (Remote Mailboxes), + * sending.texi (Mail Headers), + * programs.texi (Which Function), + * files.texi (Recover), + * buffers.texi (Uniquify), + * frames.texi (Wheeled Mice), + * killing.texi (Rectangles): Wording to improve breaks in + 8.5x11 format. + * mule.texi (Language Environments): \hbadness=10000 since there's + no way to reword. + * emacs.texi (smallbook): New @set to more easily switch between + smallbook and 8.5x11. + +2007-04-11 Richard Stallman + + * files.texi (File Conveniences): Add xref to Tumme. + Delete text about Thumbnail mode. + +2007-04-09 Alan Mackenzie + + * cmdargs.texi (Initial Options): Call "inhibit-splash-screen" by its + new name. Insert concept index entries. + +2007-04-08 Chong Yidong + + * display.texi (Standard Faces): Document prefix arg for + list-faces-display. + + * rmail.texi (Rmail Scrolling): Document rmail-end-of-message. + +2007-04-07 Chong Yidong + + * killing.texi (Deletion): Rewrite description of M-\ prefix argument. + + * files.texi (Misc File Ops): Rewrite description of + insert-file-literally. + +2007-03-31 Eli Zaretskii + + * misc.texi (Printing): Postscript -> PostScript. + + * ack.texi (Acknowledgments): Postscript -> PostScript. + + * custom.texi (Init File, Init Non-ASCII): Fix last change. + + * emacs.texi (Top): Fix the menu due to the change in custom.texi + below. + +2007-03-30 Chong Yidong + + * custom.texi (Non-ASCII Rebinding): Node deleted. Material moved to + Init Non-ASCII. + (Init Rebinding, Init Syntax): Link to Init Non-ASCII instead. + (Init Non-ASCII): New node. + +2007-03-28 YAMAMOTO Mitsuharu + + * macos.texi (Mac Font Specs): Mention AppleAntiAliasingThreshold. + +2007-03-12 Glenn Morris + + * calendar.texi, emacs.texi (Daylight Saving): Rename node from + "Daylight Savings". + + * calendar.texi: Replace "daylight savings" with "daylight + saving" in text throughout. + +2007-03-04 Richard Stallman + + * custom.texi (Safe File Variables): Minor correction. + +2007-02-28 Thien-Thi Nguyen + + * rmail.texi (Movemail): Add internal ref. + Don't indent the intro for the PROTO table. + Format PROTO table items with @code. + +2007-02-26 Nick Roberts + + * building.texi: Remove references to bashdb. + +2007-02-19 Juanma Barranquero + + * mule.texi (Language Environments): Update list of supported language + environments. + +2007-02-14 Kim F. Storm + + * building.texi (Grep Searching): Fix lgrep doc. + +2007-02-12 Chong Yidong + + * back.texi: Remove unused file. + +2007-02-05 Francesco Potortì + + * maintaining.texi (Tag Syntax): Now --members is the default for + etags, not for ctags yet. + +2007-02-03 Eli Zaretskii + + * emacs.texi (Top): Update the top-level menus. Make the detailed menu + headers compliant with Texinfo guidelines and with what texnfo-upd.el + expects. Add comments to prevent people from inadvertently modifying + the key parts needed by `texinfo-multiple-files-update'. + +2007-01-29 Chong Yidong + + * frames.texi (Secondary Selection): Window clicked does not matter + when mouse-yank-at-point is non-nil. + +2007-01-16 Glenn Morris + + * abbrevs.texi (Editing Abbrevs): Describe how to disable a + system abbrev. + +2007-01-11 Richard Stallman + + * msdog.texi (Windows Keyboard): Another small cleanup. + +2007-01-10 Richard Stallman + + * msdog.texi (Windows Keyboard): Yet another try to make + everyone happy with that passage. + +2007-01-05 Richard Stallman + + * anti.texi (Antinews): Mention M-x shell scrolling. + +2007-01-05 Nick Roberts + + * building.texi (Watch Expressions): Describe gdb-max-children. + +2007-01-04 Richard Stallman + + * msdog.texi (Windows Keyboard): Clarify previous change. + +2007-01-02 Richard Stallman + + * custom.texi (Changing a Variable): Minor clarification. + (Specific Customization): customize-customized => customize-unsaved. + + * entering.texi (Entering Emacs): Clean up text about restarting + Emacs for each file. + + * misc.texi (Shell Options): Minor cleanup. + + * msdog.texi (Windows Keyboard): Explain that Windows was incompatible + with Emacs, not vice versa. + + * programs.texi (Symbol Completion): Recommend customizing + window manager. + + * xresources.texi (Resources): Minor fix. + +2007-01-01 Jan Djärv + + * xresources.texi (Table of Resources): Add scrollBarWidth resource. + +2007-01-01 Richard Stallman + + * commands.texi (User Input): Document keys stolen by window mangers. + +2006-12-31 Richard Stallman + + * custom.texi (Specific Customization): Document customize-option + instead of customize-variable. + +2006-12-31 Kim F. Storm + + * major.texi (Choosing Modes): Document auto-mode-case-fold. + +2006-12-30 Kim F. Storm + + * killing.texi (CUA Bindings): Fix typo. + + * xresources.texi (Table of Resources): Mention grow-only value for + auto-resize-tool-bars. + +2006-12-27 Eli Zaretskii + + * msdog.texi (Windows Keyboard): Mention widespread Windows bindings, + and how to get them back. + +2006-12-26 Richard Stallman + + * calendar.texi (Holidays): Holiday listing is based on current + practice, but DST is not. + +2006-12-25 Richard Stallman + + * emacs.texi (Top): Update subnode menus. + + * mark.texi (Transient Mark): Fix xref. + + * killing.texi (Graphical Kill): Node deleted. + (Killing): Add xref to Cut and Paste. + (CUA Bindings): Update xref. + + * frames.texi (Cut and Paste): New section to hold other nodes. + (Mouse Commands): Node demoted. + (Cut/Paste Other App): Split out from Mouse Commands. + (Word and Line Mouse): Likewise. + (Secondary Selection, Clipboard): Nodes demoted. + +2006-12-24 Kevin Ryde + + * calendar.texi (Holidays): US daylight saving begins second Sunday + in March for 2007 onwards. + (Daylight Savings): Show new US default daylight saving rules, 2nd + Sun in Mar to 1st Sun in Nov, now in cal-dst.el. + +2006-12-23 Chong Yidong + + * calendar.texi (Scroll Calendar): < and > are switched. + +2006-12-23 Kevin Rodgers + + * killing.texi (Deletion): Describe M-\ prefix argument. + +2006-12-23 Richard Stallman + + * search.texi (Regexp Search): Explain why forward and reverse regexp + search are not mirror images. + +2006-12-19 Kim F. Storm + + * major.texi (Choosing Modes): Describe match-function elements for + magic-mode-alist. + +2006-12-18 Eli Zaretskii + + * msdog.texi (Windows Keyboard): Add a footnote about "Windows" keys + peculiarities. + +2006-12-18 Richard Stallman + + * abbrevs.texi (Editing Abbrevs): Fix previous change. + +2006-12-17 Alan Mackenzie + + * programs.texi (Left Margin Paren): Remove the bit which says + that CC Mode sets open-paren-in-column-0-is-defun-start to nil. + Discuss some of the issues of setting this option to nil. + +2006-12-17 Glenn Morris + + * abbrevs.texi (Editing Abbrevs): Mention system abbrevs. + +2006-12-16 Eli Zaretskii + + * msdog.texi (Windows Keyboard): Clarify `w32-recognize-altgr' effect. + (Windows Files): `w32-get-true-file-attributes' is only relevant for + NTFS volumes. + (ls in Lisp): `links' in `ls-lisp-verbosity' is only relevant to NTFS + volumes. + +2006-12-15 Eli Zaretskii + + * text.texi (HTML Mode): Fix "C-c TAB". + +2006-12-09 Richard Stallman + + * misc.texi (Invoking emacsclient): Simplify TCP file text. + +2006-12-08 Kevin Rodgers + + * files.texi (Misc File Ops): Document insert-file-literally. + +2006-12-08 Eli Zaretskii + + * cmdargs.texi (Colors): Note that --color is intended for overriding + the terminal defaults, not for normal invocation. + + * misc.texi (Emacs Server): Improve wording. Don't mention the + ``server program''. Add a cross-reference to "Init File" node. + (Invoking emacsclient): Add index entries. Document both short and + long versions of command-line options. Document the -f option. + +2006-12-06 Richard Stallman + + * text.texi (Outline Format): Say to set outline-regexp + and outline-level with major modes and file local variables. + +2006-12-05 Michaël Cadilhac + + * anti.texi (Antinews): Mention the alternative to + `~/.emacs_SHELLNAME', which is `~/.emacs.d/init_SHELLNAME.sh'. + + * misc.texi (Interactive Shell): Ditto. + +2006-12-04 Eli Zaretskii + + * emacs.texi (Acknowledgments): Fix Arne J@o{}rgensen's name. + + * ack.texi (Acknowledgments): Fix Arne J@o{}rgensen's name. + +2006-12-01 Eli Zaretskii + + * mule.texi (Enabling Multibyte): Rephrase the confusing reference to a + colon in the mode line. + + * msdog.texi (Windows Processes) [@ifnottex]: Mention w32-shell-execute. + +2006-11-26 Nick Roberts + + * building.texi (Watch Expressions): Mention SPC for expanding/ + contracting watch expressions. + +2006-11-26 Kim F. Storm + + * kmacro.texi (Basic Keyboard Macro): Mention F3/F4 more. + +2006-11-26 Nick Roberts + + * building.texi (Debugger Operation): Define text command mode. + Clarify how tooltips work. + (GDB Graphical Interface): Explain how to run in text command mode + more clearly. + +2006-11-25 Juanma Barranquero + + * mule.texi (Defining Fontsets): Fix use of `charset' and `font'. + +2006-11-22 Juanma Barranquero + + * anti.texi (Antinews): Mention --server-file and TCP sockets. + +2006-11-18 Chong Yidong + + * misc.texi (Interactive Shell): INSIDE_EMACS is set to t, + and EMACS is deprecated. + +2006-11-18 Juanma Barranquero + + * makefile.w32-in (emacs.dvi): Remove xresmini.texi. + +2006-11-18 Jan Djärv + + * Makefile.in (emacs.dvi): Remove xresmini.texi. + + * emacs.texi: Include xresources.texi both for info and dvi. + + * xresources.texi: Merge text from xresmini.texi. + +2006-11-12 Roberto Rodríguez (tiny change) + + * glossary.texi: Fix typos. + +2006-11-06 Richard Stallman + + * emacs.texi (Acknowledgments): Fix name spelling, add Anna Bigatti. + + * ack.texi (Acknowledgments): Fix name spelling. + +2006-11-01 Juri Linkov + + * search.texi (Word Search): Document incremental word search. + +2006-10-28 Glenn Morris + + * ack.texi (Acknowledgments): Add cal-html author. + + * calendar.texi (Writing Calendar Files): Rename section (was "LaTeX + Calendar"). Describe new package cal-html. + * emacs.texi (Top): Rename old node "LaTeX Calendar" to "Writing + Calendar Files." + +2006-10-23 Richard Stallman + + * abbrevs.texi (Expanding Abbrevs): Expansion happens only when + Abbrev mode is enabled. + +2006-10-16 Richard Stallman + + * emacs.texi: Update ISBN. + +2006-10-11 Kim F. Storm + + * emacs.texi (Acknowledgments): Use @dotless{i}. + +2006-10-08 Nick Roberts + + * building.texi (Breakpoints Buffer): Mention catchpoints. + +2006-10-08 Kim F. Storm + + * ack.texi (Acknowledgments): Update. + + * emacs.texi (Acknowledgments): Fix bad @/ form. + +2006-10-05 Kim F. Storm + + * emacs.texi (Acknowledgments): Add more contributors. + +2006-10-03 Richard Stallman + + * emacs.texi (Acknowledgments): Update version and edition. + +2006-10-01 Karl Berry + + * custom.texi (Customization Groups): Page break to keep example buffer + on one page. + +2006-09-30 Karl Berry + + * programs.texi (Basic Indent): @need to improve page break. + * text.texi: Rewording to improve page breaks, and use @LaTeX{}. + +2006-09-29 Glenn Morris + + * calendar.texi (Date Formats): Doc fix for european-calendar-style. + +2006-09-29 Karl Berry + + * windows.texi (Basic Window): Remove forced @break, no longer + desirable. + * frames.texi (Frame Commands), + * mark.texi (Marking Objects): Reword to avoid bad page break. + * display.texi (Auto Scrolling): Use @tie{} to avoid bad line break. + +2006-09-19 Richard Stallman + + * frames.texi (Dialog Boxes): Clean up wording: avoid passive, + stick to present tense. + +2006-09-18 Jan Djärv + + * frames.texi (Dialog Boxes): Rename x-use-old-gtk-file-dialog + to x-gtk-use-old-file-dialog. + (Dialog Boxes): Document x-gtk-file-dialog-help-text. + +2006-09-15 Jay Belanger + + * emacs.texi (GNU GENERAL PUBLIC LICENSE): + Change "Library Public License" to "Lesser Public License" + throughout. Use "yyyy" to represent year. + +2006-09-12 Reiner Steib + + * files.texi (Visiting): Add index entry "open file". + +2006-09-11 Richard Stallman + + * building.texi (Compilation Mode): Clarification. + (Grep Searching): Add xref to Compilation Mode. + +2006-09-08 Richard Stallman + + * search.texi (Search): Ref multi-file search commands here. + (Other Repeating Search): Not here. + +2006-08-28 Richard Stallman + + * windows.texi (Split Window): Update xref. + + * basic.texi (Continuation Lines): Update xref. + + * indent.texi (Tab Stops): Update xref. + + * emacs.texi (Top): Update subnode menu. + + * display.texi (Line Truncation, Displaying Boundaries): New nodes, + split out of Display Custom. + +2006-08-25 Kim F. Storm + + * display.texi (Display Custom): Add variables overline-margin + and x-underline-at-descent-line. + +2006-08-25 Richard Stallman + + * entering.texi (Exiting): Rewrite to give graphical displays + priority over text terminals. + + * search.texi (Incremental Search): Move index entries. + +2006-08-23 Chong Yidong + + * custom.texi (Init File): Reference Find Init to avoid "home + directory" confusion. + +2006-08-22 Nick Roberts + + * building.texi (Other GDB-UI Buffers): Describe how to edit + a value in the locals buffer. + +2006-08-21 Richard Stallman + + * search.texi (Basic Isearch): Add `isearch' index entry. + +2006-08-16 Richard Stallman + + * misc.texi (Saving Emacs Sessions): Clean up wording. + + * mark.texi (Marking Objects): Mention term "select all". + + * emacs.texi (Top): Update subnode menu. + + * help.texi (Help Mode): Move node up in file. + +2006-08-15 Nick Roberts + + * building.texi (Stack Buffer): Explain fringe arrow. + +2006-08-12 Eli Zaretskii + + * misc.texi (Saving Emacs Sessions): Clarify when desktop is restored + on startup. + +2006-08-11 Romain Francoise + + * ack.texi (Acknowledgments): Delete mention to zone-mode.el. + +2006-08-10 Sven Joachim (tiny change) + + * mule.texi (Recognize Coding, Text Coding): Fix typos. + +2006-08-10 Richard Stallman + + * text.texi (Format Faces): Substantial rewrites to deal + with face merging. Empty regions don't count. Clarify + face property inheritance. + +2006-08-08 Romain Francoise + + * dired.texi (Marks vs Flags): Fix typo reported by Ari Roponen + . + +2006-08-04 Eli Zaretskii + + * cmdargs.texi (Window Size X) <--geometry>: Only width and height + apply to all frames. + +2006-08-01 Richard Stallman + + * help.texi (Name Help): Add index entries for describe-variable. + +2006-08-01 Nick Roberts + + * building.texi (GDB Graphical Interface): Shorten node names. + (GDB-UI Layout): Use GDB-related. + (Other GDB-UI Buffers): Simplify English. + +2006-07-31 Richard Stallman + + * search.texi (Query Replace): Add xref for Dired's Q command. + +2006-07-31 Nick Roberts + + * building.texi (GDB commands in Fringe): Rename to... + (Source Buffers): ..this and move forward. Describe hollow arrow and + new option gdb-find-source-frame. + +2006-07-29 Richard Stallman + + * dired.texi (Operating on Files): Simplify previous change + and fix Texinfo usage. + +2006-07-29 Eli Zaretskii + + * dired.texi (Operating on Files): Add cross-references. State the + Unix commands that do similar things. + +2006-07-28 Richard Stallman + + * mark.texi (Transient Mark): Clarify that region never disappears + when Transient Mark mode is off, and not when it is on. + +2006-07-27 Richard Stallman + + * search.texi (Non-ASCII Isearch): Clarify. Mention C-q. + +2006-07-24 Richard Stallman + + * xresources.texi (GTK styles): Fix texinfo usage. + + * commands.texi (User Input): Explain why we teach keyboard cmds. + + * xresources.texi, xresmini.texi, search.texi, programs.texi: + * misc.texi, kmacro.texi, killing.texi, glossary.texi: + * fortran-xtra.texi, files.texi, emacs.texi, emacs-xtra.texi: + * doclicense.texi, display.texi, dired.texi, basic.texi: + * anti.texi, ack.texi: Move periods and commas inside quotes. + +2006-07-22 Eli Zaretskii + + * cmdargs.texi (General Variables): Document EMAIL. + +2006-07-21 Eli Zaretskii + + * frames.texi (Frame Commands): Mention that focus-follows-mouse + doesn't have effect on MS-Windows. + +2006-07-17 Richard Stallman + + * building.texi (Grep Searching): Explain about chaining grep commands. + +2006-07-10 Nick Roberts + + * killing.texi, mini.texi: Fix typos. + +2006-07-09 Chong Yidong + + * misc.texi (Invoking emacsclient): Document behavior when emacsclient + is invoked for multiple files. + +2006-07-08 Eli Zaretskii + + * msdog.texi (Windows Keyboard) [@iftex]: Add an @inforef to the + on-line manual for the rest of this node. + (Windows Mouse) : Include + unconditionally. + (Windows Processes) : Include unconditionally. + Improve wording. + (Windows Printing): Improve wording. + (Windows Misc) [@iftex]: Add an @inforef to the on-line manual for the + rest of this node. + +2006-07-05 Thien-Thi Nguyen + + * building.texi (Lisp Eval): Throughout, replace eval-current-buffer + with eval-buffer. + +2006-07-05 Nick Roberts + + * mule.texi (Coding Systems, Specify Coding): Link descriptions + of character translation. + +2006-07-04 Nick Roberts + + * rmail.texi (Remote Mailboxes): Add missing @code keyword. + +2006-07-03 Karl Berry + + * emacs.texi (\hbadness): Set to 6000 so we aren't bothered by + not-too-underfull hboxes in the TeX output. + * abbrevs.texi, buffers.texi, building.texi, calendar.texi, + * cmdargs.texi, custom.texi, dired.texi, macos.texi, + * maintaining.texi, misc.texi, mule.texi, programs.texi, rmail.texi, + * sending.texi, text.texi: Fix overfull/underfull boxes. + +2006-07-03 Romain Francoise + + * m-x.texi (M-x): Fix. + +2006-07-03 Richard Stallman + + * search.texi (Other Repeating Search): filename -> file name. + + * misc.texi (Narrowing): Minor cleanups. + + * files.texi (Visiting): filename -> file name. + + * emacs.texi (Top): Update subnode menus. + + * mule.texi (Coding Systems): Move char translation stuff here. + (Specify Coding, Output Coding): New nodes, out of Recognize Coding. + (Recognize Coding): Substantial local rewrites. + (International): Update menu. + + * display.texi (Auto Scrolling): New node, broken out of Scrolling. + (Scrolling): Substantial local rewrites. + (Display): Update menu and intro. + + * dired.texi: filename -> file name. + + * custom.texi (Safe File Variables): Texinfo usage fix. + +2006-07-03 Ted Zlatanov + + * help.texi, m-x.texi: Lots of cleanups. + +2006-06-30 Eli Zaretskii + + * msdog.texi (ls in Lisp, Windows Keyboard, Windows Mouse) + (Windows Processes, Windows Misc): Shorten the printed version by + selectively conditioning less important portions by @ifnottex. + +2006-06-27 Richard Stallman + + * mini.texi (Minibuffer File): Minor cleanup. + +2006-06-25 Nick Roberts + + * frames.texi (XTerm Mouse): Rename to... + (Text-Only Mouse): ...this. Mention t-mouse-mode. + + * emacs.texi (Top): Use new node name. + +2006-06-24 Eli Zaretskii + + * emacs.texi (Top): Update the detailed menu according to changes in + msdog.texi. + + * msdog.texi (Windows Keyboard): New section. + (Windows Mouse): New section. + (Windows System Menu): Remove section (text merged with "Windows + Keyboard"). + (Windows Misc): New section. + + * dired.texi (Dired Enter): Refer to msdog.texi for ls-lisp emulation. + + * msdog.texi (ls in Lisp): New section. + + * files.texi (Visiting): Document case-insensitive wildcard matching + under find-file-wildcards. + +2006-06-16 YAMAMOTO Mitsuharu + + * macos.texi (Mac Input): Add description of mac-function-modifier. + Now Unicode keyboard layouts work. + +2006-06-10 Richard Stallman + + * mule.texi (Recognize Coding): Clarify previous change. + +2006-06-09 Kenichi Handa + + * mule.texi (Recognize Coding): Describe the convention of "CODING!" + notation. + +2006-06-07 Kevin Ryde + + * mule.texi (Coding Systems): Footnote xref "MS-DOS and MULE" in main + manual for @ifnottex, but in emacs-extra for @iftex. + + * cmdargs.texi (General Variables): Fix smtpmail xref. + +2006-05-29 Stefan Monnier + + * programs.texi (Comment Commands): + * custom.texi (Specifying File Variables): + Use ;; instead of ;;; to better follow coding conventions. + +2006-06-07 Nick Roberts + + * building.texi (Watch Expressions): Move node to end. + (GDB Graphical Interface): Move description of clicks in fringe... + (GDB commands in the Fringe): ...to here. New node. + +2006-06-05 Romain Francoise + + * xresmini.texi (GTK resources): Fix various typos. + +2006-06-05 Nick Roberts + + * building.texi (GDB Graphical Interface): Update bindings. + (Commands of GUD): Add gud-print. Remove gud-run. + Restate availability more generally. + +2006-06-03 Ted Zlatanov + + * mini.texi: Lots of cleanups. + +2006-06-01 Luc Teirlinck + + * misc.texi (Shell History Copying): Update descriptions of `C-c RET' + and Mouse-2. + +2006-06-01 Jan Djärv + + * screen.texi (Menu Bar): Change menu-bar-start to menu-bar-open. + +2006-05-31 Richard Stallman + + * basic.texi (Moving Point): Fix previous change. + +2006-05-29 Jan Djärv + + * screen.texi (Menu Bar): F10 for Gtk+/Lesstif/Lucid menus. + +2006-05-28 Ted Zlatanov + + * basic.texi: Many simplifications and improvements in wording. + +2006-05-26 Nick Roberts + + * anti.texi (Antinews): Create a node for gdb-ui. + +2006-05-22 Reiner Steib + + * frames.texi (Menu Bars, Tool Bars): Add index entries. + +2006-05-20 Richard Stallman + + * dired.texi (Dired Navigation): dired-goto-file is now j. + +2006-05-20 Eli Zaretskii + + * mule.texi (Coding Systems): Mention the undecided-* coding systems + and their aliases. + + * msdog.texi (Windows Printing): Mention non-support of plain text + printing with some el-cheapo printers, and suggest a workaround. + +2006-05-20 Kevin Ryde + + * text.texi (TeX Print): tex-dvi-view-command has a default value, + remove the bit saying you must set it. + +2006-05-19 Luc Teirlinck + + * trouble.texi (Checklist): + * text.texi (Text, Auto Fill, Text Mode): + * search.texi (Nonincremental Search): + * rmail.texi (Rmail Labels): + * mule.texi (Input Methods, Multibyte Conversion): + * misc.texi (Gnus, Where to Look, PostScript): + * maintaining.texi (Create Tags Table): + * indent.texi (Indentation Commands): + * fixit.texi (Spelling): + * emacs.texi (Copying): + * custom.texi (Init File): ifinfo -> ifnottex. + +2006-05-17 Richard Stallman + + * files.texi (Diff Mode): Mention C-x `. + +2006-05-08 Richard Stallman + + * custom.texi (Disabling): Textual cleanups. + +2006-05-12 Glenn Morris + + * calendar.texi (Displaying the Diary, Format of Diary File): + Refer to diary-view-entries, diary-list-entries, + diary-show-all-entries rather than obsolete aliases. + +2006-05-12 Eli Zaretskii + + * calendar.texi (Calendar/Diary, Holidays, Displaying the Diary) + (Displaying the Diary, Special Diary Entries, Importing Diary): + * building.texi (Compilation Shell): + * buffers.texi (Several Buffers) [iftex]: Replace @xref's to + emacs-xtra with @inforef's. + + * files.texi (Visiting): Fix wording. + + * mule.texi (Coding Systems, Text Coding): More indexing. + Mention that C-x RET f can set eol conversion. + +2006-05-07 Jan Djärv + + * xresmini.texi (GTK resources): Insert GTK description. + + * xresources.texi (GTK resources): metafont should be menufont. + +2006-05-06 Michael Albinus + + * mini.texi (Completion Options): Completion of remote files' + method, user name and host name is active only in partial + completion mode. + +2006-05-06 Eli Zaretskii + + * makefile.w32-in (emacs.dvi): + * Makefile.in (emacs.dvi): Add xresmini.texi. + + * xresmini.texi (Table of Resources): Remove xref to non-existent + node "LessTif Resources". + + * msdog.texi (Microsoft Windows): + * calendar.texi (Calendar/Diary, Displaying the Diary) + (Special Diary Entries, Importing Diary, Holidays): + * programs.texi (Program Modes): + * text.texi (Text): + * buffers.texi (Several Buffers): + * files.texi (Comparing Files): Fix cross-references to emacs-xtra. + +2006-05-06 Eli Zaretskii + + The following changes merge the emacs-xtra manual into the main + manual, but only for on-line version of the manual. + + * vc2-xtra.texi (Version Backups, Local Version Control) + (Making Snapshots, Change Logs and VC, Version Headers) + (Customizing VC, CVS Options) [ifnottex]: Conditional xref's for + on-line manual. + + * vc1-xtra.texi (VC Dired Mode) [ifnottex]: Conditional xref's + for on-line manual. + + * msdog-xtra.texi (MS-DOS, MS-DOS Keyboard, MS-DOS Mouse) + (MS-DOS Display, MS-DOS File Names, MS-DOS Printing) + (MS-DOS and MULE, MS-DOS Processes) [ifnottex]: Conditional xref's + for on-line manual. + + * fortran-xtra.texi (Fortran, Fortran Autofill) + (Fortran Autofill, Fortran Abbrev) [ifnottex]: Conditional xref's + for on-line manual. + + * picture-xtra.texi (Basic Picture, Rectangles in Picture) [ifnottex]: + Conditional xref's for on-line manual. + + * emerge-xtra.texi (Emerge, Overview of Emerge) + (Fine Points of Emerge) [ifnottex]: Conditional xref's for on-line + manual. + + * Makefile.in (INFO_TARGETS): Remove ../info/emacs-xtra. + (EMACS_XTRA): New variable, lists the new *-xtra.texi files. + (EMACSSOURCES): Use EMACS_XTRA. + (../info/emacs-xtra): Remove. + (emacs-xtra.dvi): Add EMACS_XTRA to prerequisites. + + * makefile.w32-in (INFO_TARGETS): Remove $(infodir)/emacs-xtra. + (EMACS_XTRA): New variable, lists the new *-xtra.texi files. + (EMACSSOURCES): Use EMACS_XTRA. + ($(infodir)/emacs-xtra): Remove. + (emacs-xtra.dvi): Add EMACS_XTRA to prerequisites. + + * trouble.texi (Quitting): + * text.texi (Text): + * programs.texi (Program Modes): + * msdog.texi (Microsoft Windows): + * frames.texi (Frames): + * files.texi (Backup, Version Control, VC Concepts) + (Types of Log File, Advanced C-x v v, Log Buffer, Old Versions) + (Registering, VC Status, VC Undo, Multi-User Branching) + (Comparing Files): + * calendar.texi (Calendar/Diary, Holidays, Displaying the Diary) + (Displaying the Diary, Special Diary Entries, Importing Diary): + * buffers.texi (Several Buffers): Replace inforef to emacs-xtra by + conditional xref's, depending on @iftex/@ifnottex. + + * msdog.texi (Microsoft Windows) [ifnottex]: Add menu entry for + "MS-DOS". @include msdog-xtra.texi. + + * programs.texi (Programs) [ifnottex]: Add menu entry for "Fortran". + [ifnottex]: @include fortran-xtra.texi. + + * files.texi (Secondary VC Commands) [ifnottex]: Add menu entries + for vc-xtra.texi subsections. + (VC Undo) [ifnottex]: @include vc1-xtra.texi and @lowersections it. + (Multi-User Branching) [ifnottex]: @include vc2-xtra.texi. + + * sending.texi (Sending Mail): A @node line without explicit Prev, + Next, and Up links. + + * abbrevs.texi (Abbrevs): A @node line without explicit Prev, + Next, and Up links. + + * emacs.texi (Top) [ifnottex]: Add menu entries for "Picture Mode" + and its sections. @include picture-xtra.texi. + + * maintaining.texi (Maintaining) [ifnottex]: Add menu entry for + "Emerge". + (List Tags) [ifnottex]: @include emerge-xtra.texi. + + * cal-xtra.texi (Daylight Savings): Remove this node: it is an + exact duplicate of its name-sake in calendar.texi. + + * calendar.texi (Calendar/Diary) [ifnottex]: Add menu item for + "Advanced Calendar/Diary Usage". + (Time Intervals) [ifnottex]: @include cal-xtra.texi. + + * dired.texi (Subdirectories in Dired) [ifnottex]: @include + dired-xtra.texi. + (Dired) [ifnottex]: Add menu entry for "Subdir Switches". + + * files.texi (Reverting) [ifnottex]: @include arevert-xtra.texi. + (Files) [ifnottex]: Add menu entry for Autorevert. + + * emacs-xtra.texi (Introduction): Reword to make consistent with + printed version only. + : Remove the body of all chapters and move them to the + new *-xtra.texi files. Use @raisesections and @lowersections to + convert sections to chapters etc. + + * msdog-xtra.texi: + * fortran-xtra.texi: + * vc-xtra.texi: + * vc1-xtra.texi: + * vc2-xtra.texi: + * emerge-xtra.texi: + * cal-xtra.texi: + * dired-xtra.texi: + * arevert-xtra.texi: New files, with text from respective chapters + of emacs-xtra.texi. Convert each @chapter into @section, @section + into @subsection, etc. + + * emacs-xtra.texi (MS-DOS): Renamed from "MS-DOG". All references + updated. + + * msdog.texi (Microsoft Windows): Rename from "Emacs and Microsoft + Windows". All references updated. + +2006-05-06 YAMAMOTO Mitsuharu + + * macos.texi (Mac Input): Mention input from Character Palette. + (Mac Font Specs): Fix typo. + +2006-05-05 Richard Stallman + + * files.texi (Diff Mode): Minor cleanup. + +2006-05-05 Karl Berry + + * emacs.texi: Call @fonttextsize 10, inside @tex to avoid + errors from the current release of makeinfo (4.8). + * help.texi (Library Keywords): Change widest word in multitable + template from `emulations' to `convenience'. (Not sure if this is + related to the font change.) + +2006-05-05 Eli Zaretskii + + * files.texi (File Names): Add a footnote about limited support of + ~USER on MS-Windows. + + * cmdargs.texi (Initial Options): Add a footnote about limited + support of ~USER on MS-Windows. + +2006-05-03 Richard Stallman + + * files.texi (Diff Mode): Node moved here. + (Comparing Files): Delete what duplicates new node. + (Files): Put Diff Mode in menu. + + * misc.texi (Diff Mode): Moved to files.texi. + + * emacs.texi (Top): Update menu for Diff Mode. + + * trouble.texi (Emergency Escape): Simplify. + + * emacs.texi (Top): Minor clarification. + +2006-05-03 Teodor Zlatanov + + * commands.texi, entering.texi, screen.texi: Many simplifications. + +2006-05-03 Richard Stallman + + * commands.texi (Text Characters): Delete paragraph about unibyte + non-ASCII printing chars. + + * killing.texi (Killing): Say "graphical displays". + * display.texi: Say "graphical displays". + + * cmdargs.texi (Misc X): Say "graphical displays". + +2006-05-01 Richard Stallman + + * emacs.texi (Top): Add Diff Mode to menu. + +2006-05-01 Aaron S. Hawley + + * misc.texi (Diff Mode): New node. + +2006-05-01 YAMAMOTO Mitsuharu + + * macos.texi (Mac International): Now Carbon Emacs has ATSUI support. + (Mac Environment Variables): Shorten example line. + (Mac Font Specs): Shorten lisp lines. Add descriptions for ATSUI. + +2006-05-01 Nick Roberts + + * building.texi (GUD Customization): Describe cases %d and %c. + Update description for %e. + +2006-04-30 Glenn Morris + + * calendar.texi (LaTeX Calendar): Mention cal-tex-preamble-extra. + +2006-04-29 Dan Nicolaescu + + * custom.texi (Examining): Update C-h v output example. + +2006-04-29 Kim F. Storm + + * building.texi (Grep Searching): Add lgrep and rgrep. + +2006-04-23 Richard Stallman + + * emacs.texi [TeX]: Use xresmini.texi instead of xresources.texi. + + * xresmini.texi: New file. + + * xresources.texi (Face Resources): Split table into font resources + and the rest. Combine similar attributes for brevity. + +2006-04-21 Eli Zaretskii + + * emacs-xtra.texi (MS-DOS File Names): Remove section about + backslashes and case-insensitivity in file names (moved to the + main manual). + (MS-DOS Printing): Move most of the text to the main manual. + + * msdog.texi (Windows Files, Windows HOME, MS-Windows Printing): + New nodes. + (Windows Processes, Windows System Menu): Add index entries and + fix wording. + +2006-04-18 J.D. Smith + + * misc.texi (Shell Ring): Add notes on saved input when + navigating off the end of the history list. + +2006-04-18 Chong Yidong + + * misc.texi (Shell Options): Correct default value of + comint-scroll-show-maximum-output. + +2006-04-18 Nick Roberts + + * building.texi (Watch Expressions): Update. + +2006-04-12 Richard Stallman + + * search.texi: Clean up previous change. + +2006-04-12 Eli Zaretskii + + * search.texi (Regexp Backslash, Regexp Replace): Add index + entries for ``back reference'' and mention the term itself in the + text. + +2006-04-11 Richard Stallman + + * custom.texi (Safe File Variables): + Document enable-local-variables = :safe. + +2006-04-11 Karl Berry + + * emacs-xtra.texi, emacs.texi (Dired under VC, VC Dired Commands) + (Remote Repositories, Version Backups, Local Version Control) + (Snapshots, Making and Using Snapshots, Snapshot Caveats) + (Miscellaneous Commands and Features of VC, Change Logs and VC) + (Renaming VC Work Files and Master Files) + (Inserting Version Control Headers, Customizing VC, General Options) + (Options for RCS and SCCS, Options specific for CVS): Move all + these nodes to emacs-xtra.texi, for brevity. + * cmdargs.texi, files.texi: Change cross-references. + +2006-04-11 J.D. Smith + + * files.texi (Old Versions): Update description of vc-annotate's + use of color to indicate date ranges. + +2006-04-09 Kevin Ryde + + * sending.texi (Mail Sending): In send-mail-function @pxref smtpmail, + put info and printed manual names the right way around. + +2006-04-09 Karl Berry + + * msdog.texi, emacs-xtra.texi: Move all the MS-DOS material to + emacs-xtra.texi, leaving only MS Windows information. + * building.texi, emacs.texi, frames.texi, gnu.texi, macos.texi, + * msdog.texi, mule.texi, trouble.texi: Change cross-references and + node names. + + * emacs.texi: Move @summarycontents and @contents to the beginning + of the file. + +2006-04-08 Kevin Ryde + + * text.texi (Fill Commands): fill-nobreak-predicate is now a hook. + +2006-04-07 Richard Stallman + + * programs.texi (Comments, Comment Commands, Options for Comments) + (Multi-Line Comments): "Align", not "indent". + (Basic Indent): C-j deletes trailing whitespace before the newline. + +2006-04-06 Richard Stallman + + * programs.texi (Basic Indent): Clarify relationship of C-j to TAB. + +2006-04-06 Eli Zaretskii + + * killing.texi (Rectangles): Add index entry for marking a rectangle. + +2006-04-05 Richard Stallman + + * emacs.texi (Top): Update subnode menu. + + * trouble.texi (Unasked-for Search): Node deleted. + (Lossage): Delete from menu. + +2006-04-04 Richard Stallman + + * trouble.texi: Various cleanups. + (Checklist): Don't bother saying how to snail a bug report. + (Emergency Escape): Much rewriting. + (After a Crash): Rename the core dump immediately. + (Total Frustration): Call it a psychotherapist. + (Bug Criteria): Avoid "illegal instruction". + (Sending Patches): We always put the contributor's name in. + + * misc.texi (Thumbnails): Minor correction. + +2006-04-03 Richard Stallman + + * misc.texi (Thumbnails): Minor cleanup. + +2006-04-02 Karl Berry + + * sending.texi (Mail Sending): pxref to Top needs five args. + + * texinfo.tex: Update to current version (2006-03-21.13). + +2006-03-31 Richard Stallman + + * emacs.texi (Top): Update subnode menu. + + * help.texi (Help Mode): Cleanup. + + * dired.texi: Many cleanups. + (Dired Deletion): Describe dired-recursive-deletes. + (Operating on Files): dired-create-directory moved. + (Misc Dired Features): Move to here. + (Tumme): Node moved to misc.texi. + + * custom.texi: Many cleanups. + (Minor Modes): Don't mention ISO Accents Mode. + (Examining): Update C-h v output example. + (Hooks): Add index and xref for add-hook. + (Locals): Delete list of vars that are always per-buffer. Rearrange. + (Local Keymaps): Don't mention lisp-mode-map, c-mode-map. + + * misc.texi: Many cleanups. + (beginning): Add to summary of topics. + (Shell): Put eshell xref at the end. Remove eshell from table. + (Thumbnails): New node. + +2006-03-28 Eli Zaretskii + + * files.texi (File Name Cache): Make it clear that the cache is + not persistent. + +2006-03-25 Karl Berry + + * emacs-xtra.texi, emacs.texi, gnu.texi: + (1) use @copyright{} instead of (C) in typeset text; + (2) do not indent copyright year list (or anything else). + +2006-03-21 Juanma Barranquero + + * files.texi (VC Dired Mode): Remove misplaced brackets. + +2006-03-21 Andre Spiegel + + * files.texi: Various updates and clarifications in the VC chapter. + +2006-03-19 Luc Teirlinck + + * help.texi (Help Mode): Document "C-c C-c". + +2006-03-16 Luc Teirlinck + + * emacs-xtra.texi (Top): Avoid ugly continuation line in + menu in the standalone Info reader. + +2006-03-15 Chong Yidong + + * emacs-xtra.texi (Emerge, Picture Mode, Fortran): New chapters, + moved here from Emacs manual. + + * programs.texi (Fortran): Section moved to emacs-xtra. + (Program Modes): Xref to Fortran in emacs-xtra. + + * maintaining.texi (Emerge): Move to emacs-xtra. + * files.texi (Comparing Files): Xref to Emerge in emacs-xtra. + + * picture.texi: File deleted. + * Makefile.in: + * makefile.w32-in: Remove picture.texi. + + * text.texi (Text): Xref to Picture Mode in emacs-xtra. + * abbrevs.texi (Abbrevs): + * sending.texi (Sending Mail): Picture node removed. + + * emacs.texi (Top): Update node listings. + +2006-03-12 Richard Stallman + + * calendar.texi: Various cleanups. + +2006-03-11 Luc Teirlinck + + * search.texi (Regexps): Use @samp for regexp that is not in Lisp + syntax. + +2006-03-08 Luc Teirlinck + + * search.texi (Regexps): More accurately describe which characters + are special in which situations. Recommend _not_ to quote `]' or + `-' when they are not special. + +2006-02-28 Andre Spiegel + + * files.texi (Old Versions): Clarify operation of C-x v =. + +2006-02-21 Nick Roberts + + * building.texi (Watch Expressions): Update and describe + gdb-speedbar-auto-raise. + +2006-02-19 Richard M. Stallman + + * emacs.texi: Use @smallbook. + (Top): Update ref to Emacs paper, delete ref to Cookbook. + Update subnode menu. + + * building.texi (Lisp Interaction): Minor addition. + +2006-02-18 Nick Roberts + + * building.texi (Watch Expressions): Update and be more precise. + +2006-02-15 Francesco Potortì + + * maintaining.texi (Create Tags Table): Explain why the + exception when etags writes to files under the /dev tree. + +2006-02-14 Richard M. Stallman + + * custom.texi (Safe File Variables): Lots of clarification. + Renamed from Unsafe File Variables. + +2006-02-14 Chong Yidong + + * custom.texi (Unsafe File Variables): File variable confirmation + assumed denied in batch mode. + +2006-02-14 Richard M. Stallman + + * building.texi (GDB User Interface Layout): Don't say `inferior' + for program being debugged. + +2006-02-15 Nick Roberts + + * building.texi (GDB Graphical Interface): + Replace gdb-use-inferior-io-buffer with gdb-use-separate-io-buffer. + +2006-02-13 Chong Yidong + + * custom.texi (Specifying File Variables, Unsafe File Variables): + New nodes, split from File Variables. Document new file local + variable behavior. + +2006-02-13 YAMAMOTO Mitsuharu + + * display.texi (Standard Faces): + * files.texi (Visiting): + * frames.texi (Clipboard): + * glossary.texi (Glossary) : + * xresources.texi (X Resources): Mention Mac OS port. + +2006-02-12 Richard M. Stallman + + * building.texi (Building): Clarify topic in intro. + + * maintaining.texi (Maintaining): Change title; clarify topic. + Delete duplicate index entries. + + * building.texi (Other GDB User Interface Buffers): Clarifications. + + * text.texi (Cell Commands): Clarifications. + + * programs.texi (Defuns): Delete duplicate explanation of + left-margin paren convention. + (Hungry Delete): Minor cleanup. + +2006-02-11 Mathias Dahl + + * dired.texi (Tumme): More tumme documentation. + +2006-02-11 Alan Mackenzie + + * programs.texi ("Hungry Delete"): Correct the appellation of the + backspace and delete keys to @kbd{DEL} and @kbd{DELETE}. + +2006-02-11 Mathias Dahl + + * dired.texi (Tumme): Fix small bug. + +2006-02-10 YAMAMOTO Mitsuharu + + * macos.texi (Mac International): Rename "fontset-mac" to + "fontset-standard". + +2006-02-09 Mathias Dahl + + * dired.texi (Tumme): Basic documentation for Tumme added. + +2006-02-07 Luc Teirlinck + + * mule.texi (International): + * programs.texi (Basic Indent): Fix typos. + + * custom.texi (Minor Modes): + * display.texi (Text Display): + * commands.texi (Text Characters): Update xrefs. + +2006-02-07 Richard M. Stallman + + * emacs.texi (Top): Update subnode menu. + Update info on old Emacs papers. + (Intro): "Graphical display", not window system. + + * xresources.texi (GTK styles): Minor clarifications. + + * trouble.texi: "Graphical display", not window system. + (Stuck Recursive): Minor clarification. + + * text.texi: Minor clarifications. + (Sentences): Explain why two-space convention is better. + Explain sentence-end-without-period here. + (Fill Commands): Not here. + (Refill): Node moved down. + (Filling): Update menu. + (Table Creation, Cell Justification, Column Commands): Clarify. + + * sending.texi: Minor clarifications. + + * search.texi (Regexp Backslash): Clarification. + + * rmail.texi: Minor cleanups. + (Rmail): Delete digression about `rmail-mode'. + (Rmail Inbox): Delete false advice wrt rmail-primary-inbox-list. + (Rmail Files): Mention C-u M-x rmail. + (Rmail Reply): Mention References. + (Rmail Display): Mention rmail-nonignored-headers. + + * programs.texi: Minor cleanups. + (Comment Commands): Mention momentary Transient Mark mode. + (Matching): Be more specific about customizing show-paren-mode. + (Info Lookup): Don't list the modes that support C-h S. + Just say what it does in an unsupported mode. + (Man Page): Delete excessive info on customizing woman. + (Motion in C): Don't mention c-for/backward-into-nomenclature. + + * abbrevs.texi: Minor clarifications. + (Dabbrev Customization): Talk about "dynamic abbrev expansion", + not "dynamic abbrevs" as if they were a kind of abbrev. + + * picture.texi (Picture): Minor cleanup. + + * mule.texi (Communication Coding): Say "other applications". + (Fontsets): Not specific to X. Add xref to X Resources. + (Unibyte Mode): Rename from Single-Byte Character Support. + "Graphical display", not window system. + (International): Update menu. + + * maintaining.texi (Format of ChangeLog): + New node, split out from ChangeLog. + (ChangeLog): Clarifications in the remaining text. + (Create Tags Table, Etags Regexps, Select Tags Table): Cleanups. + (Find Tag): Add @w. + (Tags Search): Explain tag table order here. Simplify grep ref. + (List Tags): tags-tag-face is a variable, not a face. + (Emerge): Cleanups. + + * kmacro.texi (Keyboard Macro Counter): Rewrite for clarity. + (Keyboard Macros): Avoid "the user". + + * killing.texi: "Graphical display", not window system. + + * help.texi (Help Echo): "Graphical display", not window system. + + * glossary.texi: Say "you", not "the user". Say "graphical display". + + * frames.texi: Minor cleanups. "Graphical display", not window system. + + * files.texi (Visiting): Make drag-and-drop not X-specific. + + * custom.texi: Minor cleanups. "Graphical display", not window system. + + * cmdargs.texi: Minor cleanups. + + * building.texi (Compilation): Move and split kill-compilation para. + Add para about multiple compilers. + (Compilation Mode): Commands also available in grep mode and others. + Mention C-u C-x ` more tutorially. Clarify C-x `. + (Compilation Shell): Clarify. Put Bash example first. + (Grep Searching): Minor cleanups; add @w. + (Debuggers): Minor cleanups. + (Starting GUD): Make GDB xgraphical mode issue clearer. + (Debugger Operation): Lots of clarifications including + GDB tooltip side-effect issue. + (Commands of GUD): Clarify. + (GUD Customization): Add bashdb-mode-hook. + (GDB Graphical Interface): Rewrite for clarity. + (GDB User Interface Layout): Rewrite for clarity. + (Stack Buffer, Watch Expressions): Likewise. + (Other GDB User Interface Buffers): Cleanups. + (Lisp Libraries, External Lisp): Cleanup. + + * basic.texi (Position Info): "Graphical displays", rather than + window systems. + + * anti.texi: Minor cleanup. + +2006-02-03 Eli Zaretskii + + * custom.texi (Init File, Find Init): Add cross-references to + where $HOME is described. + +2006-02-01 Luc Teirlinck + + * frames.texi (Frame Parameters): Remove @item for S-Mouse-1; it + is not inside the @table. + + * emacs.texi (Top): Correct node name. + + * files.texi (File Names): Fix @xref. + (Reverting): Fix typo. + + * mule.texi (International): Correct node name. + + * kmacro.texi (Save Keyboard Macro): Add missing @kbd to @table. + +2006-02-01 Richard M. Stallman + + * emacs.texi (Top): Update subnode menu. + + * mule.texi: Minor clarifications. + Reduce the specific references to X Windows. + Refer to "graphical" terminals, rather than window systems. + (Text Coding): Rename from Specify Coding. + (Communication Coding, File Name Coding, Terminal Coding): + New nodes split out from Text Coding. + + * kmacro.texi: Minor clarifications. + (Keyboard Macro Ring): Comment out some excessive commands. + (Basic Keyboard Macro): Split up the table, putting part in each node. + + * major.texi: Minor clarifications. + + * misc.texi (Single Shell, Interactive Shell): Fix xrefs. + + * windows.texi: Minor clarifications. + (Change Window): Don't describe mode-line mouse cmds here. + Add xref to Mode Line Mouse. + + * msdog.texi (Text and Binary, MS-DOS and MULE): Fix xrefs. + + * macos.texi (Mac International): Fix xref. + + * indent.texi: Minor clarifications. + + * frames.texi: Minor clarifications. + Reduce the specific references to X Windows. + Refer to "graphical" terminals, rather than window systems. + (Frame Parameters): Don't mention commands like + set-foreground-color. Just say to customize a face. + (Drag and Drop): Lisp-level stuff moved to Emacs Lisp manual. + + * files.texi: Minor clarifications. + (Numbered Backups): New node, split out from Backup Names. + + * display.texi (Font Lock): C mode no longer depends on (-in-col-0. + + * cmdargs.texi (General Variables): Fix xref. + + * buffers.texi: Minor clarifications. + +2006-01-31 Richard M. Stallman + + * display.texi (Scrolling, Horizontal Scrolling, Follow Mode): + Nodes moved to top. + + * display.texi: Minor clarifications. + (Display): Rearrange menu. + (Standard Faces): Mention query-replace face. + (Faces): Simplify. + (Font Lock): Simplify face customization info. + (Highlight Changes): Node merged into Highlight Interactively. + (Highlight Interactively): Much rewriting and cleanup. + (Optional Mode Line): Narrowed line number not good for goto-line. + Simplify face customization advice. + (Text Display): Mention use of escape-glyph face. + Move ctl-arrow and tab-width here. + (Display Custom): Move no-redraw-on-reenter to end of node. + + * search.texi: Minor clarifications. + (Isearch Scroll): Simplify. + (Other Repeating Search): Document multi-occur-in-matching-buffers. + + * regs.texi (Registers): Mention bookmarks here. + + * mark.texi: Minor clarifications. + (Selective Undo): Node deleted. + + * m-x.texi: Minor clarifications. + + * killing.texi: Minor clarifications. + Refer to "graphical" terminals, rather than window systems. + + * help.texi: Clarifications. + (Help): Don't describe C-h F and C-h K here. + (Key Help): Describe C-h K here. + (Name Help): Mention Emacs Lisp Intro. + Describe C-h F here. + (Misc Help): Mention C-h F and C-h K only briefly. + + * fixit.texi (Undo): New node, mostly copied from basic.texi. + Selective undo text merged in. + (Spelling): Mention Aspell along with Ispell. + + * emacs.texi (Top): Update subnode menus. + + * basic.texi (Basic Undo): Rename from Undo. Most of text + moved to new Undo node. + +2006-01-29 Chong Yidong + + * basic.texi (Continuation Lines, Inserting Text): + Mention longlines mode. + +2006-01-29 Richard M. Stallman + + * screen.texi: Minor cleaups. + (Screen): Clean up the intro paragraphs. + (Mode Line): Lots of rewriting. Handle frame-name better. + eol-mnemonic-... vars moved out. + + * emacs.texi (Top): Change menu item for MS-DOS node. + Update subnode menu. + + * msdog.texi (MS-DOS): Rewrite intro to explain how this + chapter relates to Windows. Title changed. + + * mini.texi: Minor cleanups. + + * mark.texi (Selective Undo): New node, text moved from basic.texi. + (Mark): Put it in the menu. + + * entering.texi: Minor cleanups. + + * emacs.texi (Top): Add xref to Mac chapter; explain Windows better. + (Intro): Refer to "graphical" terminals, rather than X. + + * display.texi (Display Custom): Add xref to Variables. + (Optional Mode Line): eol-mnemonic-... vars moved here. + + * commands.texi: Minor cleanups. Refer to "graphical" terminals, + rather than X. + + * basic.texi: Minor cleanups. + (Undo): selective-undo moved. + +2006-01-25 Luc Teirlinck + + * anti.texi (Antinews): Various corrections and additions. + +2006-01-23 Juri Linkov + + * custom.texi (Easy Customization, Customization Groups) + (Browsing Custom): Mention links along with buttons. + +2006-01-21 Eli Zaretskii + + * text.texi (TeX Print): Use @key for TAB. + + * kmacro.texi (Keyboard Macro Step-Edit): Use @key for TAB. + +2006-01-15 Sven Joachim (tiny change) + + * files.texi (File Aliases): Don't claim that usually separate + buffers are created for two file names that name the same data. + Mention additional situations where different names mean the same + file on disk. + +2006-01-19 Richard M. Stallman + + * killing.texi (Deletion): Upcase @key argument. + + * custom.texi (Custom Themes): Minor cleanup. + + * programs.texi (Hungry Delete): Upcase @key argument. + +2006-01-16 Juri Linkov + + * display.texi (Standard Faces): Add `mode-line-buffer-id'. + Move `mode-line-highlight' before `mode-line-buffer-id'. + +2006-01-14 Richard M. Stallman + + * basic.texi (Inserting Text): Minor cleanup. + +2006-01-11 Luc Teirlinck + + * custom.texi (Changing a Variable, Face Customization): + Update for changes in Custom menus. + +2006-01-05 YAMAMOTO Mitsuharu + + * macos.texi (Mac International): Undo last change. + +2006-01-02 Chong Yidong + + * custom.texi (Custom Themes): Describe the new + customize-create-theme interface. + +2005-12-30 Juri Linkov + + * basic.texi (Position Info): Update example. + +2005-12-27 Jan Djärv + + * frames.texi (Dialog Boxes): Add x-gtk-show-hidden-files. + +2005-12-24 Chong Yidong + + * custom.texi (Custom Themes): `load-theme' always loads. + +2005-12-23 Juri Linkov + + * display.texi (Highlight Interactively): Use double space to + separate sentences. Replace C-p with M-p, and C-n with M-n. + +2005-12-22 Richard M. Stallman + + * custom.texi (Easy Customization and subnodes): + Replace "active field" with "button". + Use "user option" only for variables. + Use "setting" for variable-or-face. + +2005-12-22 Luc Teirlinck + + * buffers.texi (Select Buffer): Change order in table to make + "Similar" refer to the correct item. + (Indirect Buffers): Minor rewording. + +2005-12-20 Juri Linkov + + * files.texi (VC Status): Put P and N near p and n. + +2005-12-19 Richard M. Stallman + + * programs.texi (Electric C): Delete the info about newline control. + (Other C Commands): Minor cleanup. + (Left Margin Paren): Minor cleanup. + +2005-12-19 Luc Teirlinck + + * custom.texi (Easy Customization): Add "Browsing Custom" to menu. + (Customization Groups): Delete text moved to "Browsing Custom". + (Browsing Custom): New node. + (Specific Customization): Clarify which commands only work for + loaded options. + +2005-12-18 Bill Wohler + + * frames.texi (Tool Bars): Shorten text of previous change. + +2005-12-18 Aaron S. Hawley + + * files.texi (VC Status): Document log-view mode. + +2005-12-18 Bill Wohler + + * frames.texi (Tool Bars): Mention that you can turn off tool bars + permanently via the customize interface. + +2005-12-16 Ralf Angeli + + * killing.texi (Killing by Lines): Document `kill-whole-line' + function. + +2005-12-16 Lőrentey Károly + + * buffers.texi (Select Buffer): Change `prev-buffer' to + `previous-buffer'. Indicate that these functions use a frame + local buffer list. + +2005-12-12 Richard M. Stallman + + * custom.texi (Easy Customization): Change menu comment. + (Prefix Keymaps): Fix spelling of Control-X-prefix. + + * help.texi (Apropos): Rewrite. Talk about "apropos patterns". + (Help): Among the Apropos commands, describe only C-h a here. + +2005-12-11 Richard M. Stallman + + * programs.texi (Options for Comments): Comment-end starts with space. + + * glossary.texi (Glossary): Minor cleanup. + + * files.texi (Old Versions): Use @table. + +2005-12-10 David Koppelman + + * display.texi (Highlight Interactively): Include + global-hi-lock-mode. Add miscellaneous details and elaborations. + +2005-12-09 Richard M. Stallman + + * display.texi (Font Lock): Delete the Global FL menu item. + +2005-12-09 Luc Teirlinck + + * custom.texi (Minibuffer Maps): Mention the maps for file name + completion. + +2005-12-09 Kim F. Storm + + * killing.texi (CUA Bindings): Describe how to use C-x and C-c as + prefix keys even when mark is active. Decribe that RET moves + cursor to next corner in rectangle; clarify insert around rectangle. + +2005-12-08 Luc Teirlinck + + * custom.texi (Customization): Use xref to elisp manual for + non-TeX output. + (Minor Modes): Update. + (Customization Groups, Changing a Variable, Face Customization): + Update for new appearance of Custom buffers. + (Changing a Variable): `custom-buffer-done-function' has been + replaced by `custom-buffer-done-kill'. + (Specific Customization): In the `customize-group' buffer, a + subgroup's contents are not "hidden". They are not included at + all. They have no [Show] button. + (Mouse Buttons): Add pxref to description of mouse event lists in + Elisp manual. Add `menu-bar' and `header-line' dummy prefix keys. + (Find Init): Emacs now looks for ~/.emacs.d/init.el instead of + ~/.emacs.d/.emacs, if it can not find ~/.emacs(.el). + +2005-12-08 Richard M. Stallman + + * mini.texi (Completion Commands, Completion): + In file name input, SPC does not do completion. + +2005-12-08 Nick Roberts + + * building.texi (GDB Graphical Interface): Explain screen size + setting. + (Other GDB User Interface Buffers): Describe features specific to + GDB 6.4. + +2005-12-01 Nick Roberts + + * building.texi (GDB User Interface Layout): Describe how to + kill associated buffers. + (Breakpoints Buffer): Use D instead of d for gdb-delete-breakpoint. + (Watch Expressions): Be more precise. + (Other GDB User Interface Buffers): Describe how to change a + register value. + +2005-11-24 YAMAMOTO Mitsuharu + + * macos.texi (Mac Input): Remove description of + mac-command-key-is-meta. Add descriptions of + mac-control-modifier, mac-command-modifier, and + mac-option-modifier. + (Mac International): Fix description of conversion of clipboard data. + (Mac Font Specs): Add example of font customization by face attributes. + +2005-11-22 Nick Roberts + + * building.texi (Watch Expressions): Expand description. + (Other GDB User Interface Buffers): Describe local map for + gud-watch. + +2005-11-21 Chong Yidong + + * display.texi (Font Lock): Font lock is enabled by default now. + +2005-11-20 Juri Linkov + + * basic.texi (Position Info): Update examples of the output. + Remove the fact that examples are produced in the TeXinfo buffer, + because in the Info reader users will get a different output from + `C-x ='. + + * building.texi (Compilation Mode): Remove paragraph duplicated + from the node `Compilation'. Add `compilation-skip-threshold'. + + * display.texi (Font Lock): Suggest more user-friendly method of + finding all Font Lock faces (M-x customize-group RET font-lock-faces). + +2005-11-18 Richard M. Stallman + + * files.texi (Registering): Mention @@ in mode line. + + * mini.texi (Minibuffer File): Clarify previous change. Add @findex. + +2005-11-08 Aaron S. Hawley + + * files.texi (Renaming and VC): Some back-ends don't + handle renaming. + +2005-11-17 Juri Linkov + + * emacs.texi (Top): + * display.texi (Highlight Interactively): Put this font-lock based + mode near Font Lock node. + +2005-11-16 Chong Yidong + + * ack.texi (Acknowledgments): Acknowledge Andrew Zhilin for Emacs + icons. + +2005-11-12 Kim F. Storm + + * help.texi (Help): Fix C-h a entry. Add C-h d entry. + (Help Summary): Add C-h d and C-h e. + (Apropos): Clarify that all apropos commands may search for either + list of words or a regexp. Add C-h d for apropos-documentation. + Describe apropos-documentation-sort-by-scores user option. + +2005-11-09 Luc Teirlinck + + * killing.texi (CUA Bindings): Add @section. + +2005-11-10 Kim F. Storm + + * emacs.texi (Top): Add CUA Bindings entry to menu. + + * killing.texi (CUA Bindings): New node. Moved here from + misc.texi and extended with info on rectangle commands and + rectangle highlighting, interface to registers, and the global + mark feature. + + * misc.texi (Emulation): Move CUA bindings item to killing.texi. + + * regs.texi: Prev link points to CUA Bindings node. + +2005-11-07 Luc Teirlinck + + * help.texi (Help Echo): By default, help echos are only shown on + mouse-over, not on point-over. + +2005-11-04 Jérôme Marant + + * misc.texi (Shell Mode): Describe how to activate password echoing. + +2005-11-04 Romain Francoise + + * mark.texi (Mark Ring): Fix typo. + +2005-11-03 Richard M. Stallman + + * mark.texi (Mark Ring): Mention set-mark-command-repeat-pop. + +2005-11-01 Bill Wohler + + * help.texi (Help Mode): Fix typo. + +2005-11-01 Nick Roberts + + * building.texi (Other GDB User Interface Buffers): Describe + the command gdb-use-inferior-io-buffer. + +2005-10-31 Romain Francoise + + * files.texi (Compressed Files): Fix typo. + + * buffers.texi (Misc Buffer): Downcase `*shell*'. + + * windows.texi (Force Same Window): Likewise. + +2005-10-30 Bill Wohler + + * help.texi (Help Mode): URLs viewed with browse-url. + +2005-10-31 Nick Roberts + + * building.texi (GDB Graphical Interface): Don't reference + gdb-mouse-set-clear-breakpoint. Explain gdb-mouse-until + must stay in same frame. + +2005-10-29 Chong Yidong + + * custom.texi (Init File): Document ~/.emacs.d/init.el. + + * anti.texi (Antinews): Likewise. + +2005-10-28 Bill Wohler + + * help.texi (Help): Help mode now creates hyperlinks for URLs. + +2005-10-28 Richard M. Stallman + + * files.texi (Visiting): Explain how to enter ? in a file name. + + * trouble.texi (Memory Full): Mention !MEM FULL! in mode line. + +2005-10-25 Nick Roberts + + * building.texi (GDB Graphical Interface): Describe + gdb-mouse-until. + +2005-10-23 Richard M. Stallman + + * custom.texi (Init File): Recommend when to use site-start.el. + +2005-10-21 Juri Linkov + + * custom.texi (Examining): Mention accessing the old variable + value via M-n in set-variable. + +2005-10-18 Romain Francoise + + * files.texi (Version Systems): Capitalize GNU. + +2005-10-18 Nick Roberts + + * building.texi (Compilation Mode): Remove redundant paragraph. + (Watch Expressions): Remove paragraph to reflect code change. + +2005-10-16 Richard M. Stallman + + * building.texi (Compilation Mode, Compilation): Clarified. + +2005-10-15 Richard M. Stallman + + * misc.texi (Saving Emacs Sessions): Mention savehist library. + +2005-10-13 Kenichi Handa + + * basic.texi (Position Info): Fix previous change. + +2005-10-12 Jan Djärv + + * cmdargs.texi (Icons X): Fix typo. + +2005-10-12 Kenichi Handa + + * basic.texi (Position Info): Describe the case that Emacs shows + "part of display ...". + +2005-10-10 Jan Djärv + + * cmdargs.texi (Icons X): -nb => -nbi. + +2005-10-10 Chong Yidong + + * frames.texi (Speedbar): A couple more clarifications. + +2005-10-11 Nick Roberts + + * building.texi (GDB User Interface Layout): Improve diagram. + (Watch Expressions): Explain how to make speedbar global. + (Other GDB User Interface Buffers): Make references more precise. + +2005-10-09 Richard M. Stallman + + * frames.texi (Speedbar): Clarify the text. + +2005-10-09 Chong Yidong + + * frames.texi (Speedbar): Add information on keybindings, + dismissing the speedbar, and buffer display mode. Link to + speedbar manual. + +2005-10-09 Jan Djärv + + * cmdargs.texi (Icons X): Removed options -i, -itype, --icon-type, + added -nb, --no-bitmap-icon. + +2005-10-07 Nick Roberts + + * building.texi (GDB Graphical Interface): Add variables and + functions to indices. Be more precise. + +2005-10-03 Jan Djärv + + * frames.texi (Drag and Drop): Remove the x- from + x-dnd-open-file-other-window and xdnd-protocol-alist. + +2005-09-30 Romain Francoise + + * mini.texi (Minibuffer): The default value now appears before the + colon in minibuffer prompts. + +2005-09-25 Richard M. Stallman + + * search.texi (Regexp Search): Doc search-whitespace-regexp. + +2005-09-20 Emanuele Giaquinta (tiny change) + + * text.texi (Paragraphs): Correction about Paragraph-Indent Text mode. + +2005-09-21 YAMAMOTO Mitsuharu + + * emacs.texi (Top): Update submenus from macos.texi. + + * macos.texi: Change `Mac OS 8 or 9' to `Mac OS Classic'. + (Mac OS): Update feature support status. + (Mac Input): List supported input scripts. Remove description + about `mac-keyboard-text-encoding'. Mention mouse button + emulation and related variables. + (Mac International): Mention Central European and Cyrillic + support. Now `keyboard-coding-system' is dynamically changed. + Add description about coding system for selection. Add + description about language environment. + (Mac Environment Variables): Mention + `~/.MacOSX/environment.plist'. Give example of command line + arguments. Add Preferences support. + (Mac Directories): Explicitly state that this node is for Mac OS + Classic only. + (Mac Font Specs): Mention specification for scalable fonts. List + supported charsets. Add preferred way of creating fontsets. Add + description about `mac-allow-anti-aliasing'. + (Mac Functions): Add descriptions about `mac-set-file-creator', + `mac-get-file-creator', `mac-set-file-type', `mac-get-file-type', + and `mac-get-preference'. + +2005-09-16 Romain Francoise + + Update all files to specify GFDL version 1.2. + + * doclicense.texi (GNU Free Documentation License): Update to + version 1.2. + +2005-09-15 Richard M. Stallman + + * buffers.texi (List Buffers): Fix xref. + + * rmail.texi (Rmail Basics): Fix xref. + + * emacs.texi (Top): Update subnode menus. + + * files.texi (Saving Commands): New node, broken out of Saving. + (Customize Save): New node, broken out of Saving. + Clarify effect of write-region-inhibit-fsync. + (Misc File Ops): Say write-region-inhibit-fsync affects write-region. + +2005-09-14 Romain Francoise + + * files.texi (Saving): Mention write-region-inhibit-fsync. + +2005-09-05 Chong Yidong + + * custom.texi (Custom Themes): New node. + +2005-09-03 Richard M. Stallman + + * search.texi (Search Case): Mention vars that control + case-fold-search for various operations. + +2005-08-22 Juri Linkov + + * display.texi (Standard Faces): Merge the text from + `(elisp)Standard Faces' into this node. + +2005-08-18 Luc Teirlinck + + * emacs.texi (Top): Delete menu item for deleted node + Keyboard Translations. + +2005-08-18 Richard M. Stallman + + * trouble.texi (Unasked-for Search): + Delete xref to Keyboard Translations. + + * glossary.texi (Glossary): Delete xref. + + * custom.texi (Minor Modes): Say that the list here is not complete. + (Keyboard Translations): Node deleted. + (Disabling): Delete xref to it. + (Customization Groups): Fix Custom buffer example. + (Hooks): Mention remove-hooks. + +2005-08-17 Luc Teirlinck + + * building.texi (GDB Graphical Interface): Improve filling of menu + item. + +2005-08-18 Nick Roberts + + * building.texi (GDB Graphical Interface): Use better node names. + +2005-08-14 Richard M. Stallman + + * text.texi (Sentences): Fix xref. + +2005-08-14 Juri Linkov + + * building.texi (Compilation, Grep Searching): Move grep command + headings from `Compilation' to `Grep Searching'. + + * dired.texi (Dired and Find): + * maintaining.texi (Tags Search): Replace grep xref to + `Compilation' node with `Grep Searching'. + + * files.texi (Comparing Files): Replace xref to `Compilation' with + `Compilation Mode'. + +2005-08-13 Alan Mackenzie + + * search.texi (Non-ASCII Isearch): Correct a typo. + (Replacement Commands): Mention query-replace key binding. + +2005-08-11 Richard M. Stallman + + * programs.texi (Options for Comments): Fix xref. + + * search.texi (Regexp Backslash, Regexp Example): New nodes split + out of Regexps. + +2005-08-09 Juri Linkov + + * building.texi (Compilation): Use `itemx' instead of `item'. + (Grep Searching): Simplify phrase. + + * display.texi (Standard Faces): Describe vertical-border on + window systems. + + * windows.texi (Split Window): Simplify phrase and mention + vertical-border face. + +2005-08-09 Richard M. Stallman + + * files.texi (Comparing Files): Clarify compare-windows. + + * calendar.texi (Scroll Calendar): Document < and > in calendar. + +2005-08-06 Eli Zaretskii + + * mule.texi (Coding Systems): Rephrase the paragraph about + codepages: no need for "M-x codepage-setup" anymore, except on + MS-DOS. + + * msdog.texi (MS-DOS and MULE): Clarify that this section is for + the MS-DOS port only. + +2005-07-30 Eli Zaretskii + + * makefile.w32-in (info): Don't run multi-install-info.bat. + ($(infodir)/dir): New target, produced by running + multi-install-info.bat. + +2005-07-22 Eli Zaretskii + + * files.texi (Quoted File Names): Add index entry. + +2005-07-19 Juri Linkov + + * files.texi (Comparing Files): Mention resync for `compare-windows'. + +2005-07-18 Juri Linkov + + * custom.texi (Easy Customization): + * files.texi (Old Versions): + * frames.texi (Wheeled Mice): + * mule.texi (Specify Coding): + * text.texi (Cell Justification): + * trouble.texi (After a Crash): + * xresources.texi (GTK styles): + Delete duplicate duplicate words. + +2005-07-17 Richard M. Stallman + + * frames.texi (Creating Frames): Fix foreground color example. + + * custom.texi (Init Examples): Clean up text about conditionals. + +2005-07-16 Richard M. Stallman + + * mini.texi (Completion Commands): Fix command name for ?. + +2005-07-16 Eli Zaretskii + + * display.texi (Standard Faces): Explain that customization of + `menu' face has no effect on w32 and with GTK. Add + cross-references. + + * cmdargs.texi (General Variables): Clarify the default location + of $HOME on w32 systems. + +2005-07-15 Jason Rumney + + * cmdargs.texi (General Variables): Default HOME on MS Windows has + changed. + +2005-07-08 Kenichi Handa + + * mule.texi (Recognize Coding): Recommend + revert-buffer-with-coding-system instead of revert-buffer. + +2005-07-07 Richard M. Stallman + + * anti.texi (Antinews): Mention mode-line-inverse-video. + + * files.texi (Saving): Minor correction about C-x C-w. + + * display.texi (Display Custom): Don't mention mode-line-inverse-video. + +2005-07-07 Luc Teirlinck + + * search.texi (Isearch Scroll): Add example of using the + `isearch-scroll' property. + (Slow Isearch): Reference anchor for `baud-rate' instead of entire + `Display Custom' node. + (Regexp Replace): Put text that requires Emacs Lisp knowledge last + and de-emphasize it. + (Other Repeating Search): `occur' currently can not correctly + handle multiline matches. Correct, clarify and update description + of `flush-lines' and `keep-lines'. + + * display.texi (Display Custom): Add anchor for `baud-rate'. + +2005-07-07 Richard M. Stallman + + * gnu.texi: Update where to get GNU status; add refs for how to help. + Add footnotes 6 and 7. + +2005-07-04 Lute Kamstra + + Update FSF's address in GPL notices. + + * doclicense.texi (GNU Free Documentation License): + * trouble.texi (Checklist): Update FSF's address. + +2005-06-24 Richard M. Stallman + + * display.texi (Text Display): Change index entries. + +2005-06-24 Eli Zaretskii + + * makefile.w32-in (MAKEINFO): Use --force. + (INFO_TARGETS, DVI_TARGETS): Make identical to the lists in + Makefile.in. + +2005-06-23 Richard M. Stallman + + * anti.texi (Antinews): Renamed show-nonbreak-escape to + nobreak-char-display. + + * emacs.texi (Top): Update detailed node listing. + + * display.texi (Text Display): Renamed show-nonbreak-escape + to nobreak-char-display and no-break-space to nobreak-space. + (Standard Faces): Split up the list of standard faces + and put it in a separate node. Add nobreak-space and + escape-glyph. + +2005-06-23 Lute Kamstra + + * mule.texi (Select Input Method): Fix typo. + +2005-06-23 Kenichi Handa + + * mule.texi (International): List all supported scripts. Adjust + text for that leim is now included in the normal Emacs + distribution. + (Language Environments): List all language environments. + Intlfonts contains fonts for most supported scripts, not all.. + (Select Input Method): Refer to C-u C-x = to see how to type to + input a specifc character. + (Recognize Coding): Fix typo, china-iso-8bit -> chinese-iso-8bit. + +2005-06-23 Juanma Barranquero + + * building.texi (Grep Searching): Texinfo usage fix. + +2005-06-22 Miles Bader + + * display.texi (Faces): Change `vertical-divider' to `vertical-border'. + +2005-06-20 Miles Bader + + * display.texi (Faces): Add `vertical-divider'. + +2005-06-17 Richard M. Stallman + + * text.texi (Adaptive Fill): Minor clarification. + +2005-06-10 Lute Kamstra + + * emacs.texi (Top): Correct version number. + * anti.texi (Antinews): Correct version number. Use EMACSVER to + refer to the current version of Emacs. + +2005-06-08 Luc Teirlinck + + * files.texi (Log Buffer): Document when there can be more than + one file to be committed. + +2005-06-08 Juri Linkov + + * display.texi (Faces): Add `shadow' face. + +2005-06-07 Masatake YAMATO + + * display.texi (Faces): Write about mode-line-highlight. + +2005-06-06 Richard M. Stallman + + * misc.texi (Printing Package): Explain how to initialize + printing package. + + * cmdargs.texi (Action Arguments): Clarify directory default for -l. + +2005-06-05 Chong Yidong + + * emacs.texi: Rename Hardcopy to Printing. + Make PostScript and PostScript Variables subnodes of it. + + * misc.texi (Printing): Rename node from Hardcopy. + Mention menu bar options. + Move PostScript and PostScript Variables to submenu. + (Printing package): New node. + + * mark.texi (Using Region): Change Hardcopy xref to Printing. + + * dired.texi (Operating on Files): Likewise. + + * calendar.texi (Displaying the Diary): Likewise. + + * msdog.texi (MS-DOS Printing, MS-DOS Processes): Likewise. + + * glossary.texi (Glossary): Likewise. + + * frames.texi (Mode Line Mouse): Mention mode-line-highlight + effect. + +2005-06-04 Richard M. Stallman + + * trouble.texi (After a Crash): Polish previous change. + +2005-05-30 Noah Friedman + + * trouble.texi (After a Crash): Mention emacs-buffer.gdb as a + recovery mechanism. + +2005-05-28 Nick Roberts + + * building.texi (Other Buffers): SPC toggles display of + floating point registers. + +2005-05-27 Nick Roberts + + * files.texi (Log Buffer): Merge in description of Log Edit + mode from pcl-cvs.texi. + +2005-05-26 Richard M. Stallman + + * building.texi (Lisp Eval): C-M-x with arg runs Edebug. + +2005-05-24 Luc Teirlinck + + * fixit.texi (Spelling): Delete confusing sentence; flyspell is + not enabled by default. + When not on a word, `ispell-word' by default checks the word + before point. + +2005-05-24 Nick Roberts + + * building.texi (Debugger Operation): Simplify last sentence. + +2005-05-23 Lute Kamstra + + * emacs.texi: Update FSF's address throughout. + (Preface): Use @cite. + (Distrib): Add cross reference to the node "Copying". Mention the + FDL. Don't refer to etc/{FTP,ORDERS}. Mention the sale of + printed manuals. + (Intro): Use @xref for the Emacs Lisp Intro. + +2005-05-18 Luc Teirlinck + + * buffers.texi (Select Buffer): Document `C-u M-g M-g'. + + * basic.texi (Moving Point): Mention default for `goto-line'. + + * programs.texi (Lisp Doc): Eldoc mode shows only the first line + of a variable's docstring. + +2005-05-18 Lute Kamstra + + * maintaining.texi (Overview of Emerge): Add cross reference. + Remove duplication. + + * emacs.texi (Top): Update to the current structure of the manual. + * misc.texi (Emacs Server): Add menu description. + * files.texi (Saving): Fix menu. + * custom.texi (Customization): Fix menu. + * mule.texi (International): Fix menu. + * kmacro.texi (Keyboard Macros): Fix menu. + +2005-05-16 Luc Teirlinck + + * display.texi: Various minor changes. + (Faces): Delete text that is repeated in the next section. + +2005-05-16 Nick Roberts + + * building.texi (Debugger Operation): Mention GUD tooltips are + disabled with GDB in text command mode. + +2005-05-16 Nick Roberts + + * building.texi: Replace toolbar with "tool bar" for consistency. + (Compilation Mode): Describe compilation-context-lines + and use of arrow in compilation buffer. + (Debugger Operation): Replace help text with variable's value. + + * frames.texi (Tooltips): Replace toolbar with "tool bar" for + consistency. + +2005-05-15 Luc Teirlinck + + * major.texi (Choosing Modes): normal-mode processes the -*- line. + Add xref. + +2005-05-14 Luc Teirlinck + + * basic.texi (Moving Point): Mention `M-g g' binding for `goto-line'. + (Position Info): Delete discussion of `goto-line'. It is already + described in `Moving point'. + + * mini.texi (Completion Commands): Correct reference. + (Completion Options): Fix typo. + + * killing.texi (Deletion): Complete description of `C-x C-o'. + +2005-05-10 Richard M. Stallman + + * building.texi (Compilation): Clarify recompile's directory choice. + + * frames.texi (Tooltips): Cleanups. + + * basic.texi (Arguments): Fix punctuation. + +2005-05-09 Luc Teirlinck + + * screen.texi (Menu Bar): The up and down (not left and right) + arrow keys move through a keyboard menu. + +2005-05-08 Luc Teirlinck + + * basic.texi: Various typo and grammar fixes. + (Moving Point): C-a now runs move-beginning-of-line. + +2005-05-08 Nick Roberts + + * building.texi (Debugger Operation): Describe gud-tooltip-echo-area. + + * frames.texi (Tooltips): Describe help tooltips and GUD tooltips + as different animals. + +2005-05-07 Luc Teirlinck + + * frames.texi (Mouse References): Clarify `mouse-1-click-follows-link'. + Correct index entry. + +2005-05-07 Nick Roberts + + * building.texi (Debugger Operation): Update to reflect changes + in GUD tooltips. + +2005-04-30 Richard M. Stallman + + * files.texi (Compressed Files): Auto Compression normally enabled. + + * building.texi (Debugger Operation): Clarify previous change. + +2005-04-28 Nick Roberts + + * building.texi (Debugger Operation): Add description for + GUD tooltips when program is not running. + +2005-04-26 Luc Teirlinck + + * misc.texi (Shell): Add `Shell Prompts' to menu. + (Shell Mode): Add xref to `Shell Prompts'. Clarify `C-c C-u' + description. Delete remarks moved to new node. + (Shell Prompts): New node. + (History References): Replace remarks moved to `Shell Prompts' + with xref to that node. + (Remote Host): Clarify how to specify the terminal type when + logging in to a different machine. + +2005-04-26 Richard M. Stallman + + * emacs.texi (Top): Update submenus from files.texi. + + * files.texi (Filesets): Clarify previous change. + + * dired.texi (Misc Dired Features): Clarify previous change. + +2005-04-25 Chong Yidong + + * ack.texi (Acknowledgments): Delete info about iso-acc.el. + + * dired.texi (Misc Dired Features): Document + dired-compare-directories. + + * files.texi (Filesets): New node. + (File Conveniences): Document Image mode. + + * text.texi (TeX Print): Document tex-compile. + +2005-04-25 Luc Teirlinck + + * frames.texi (Tooltips): Tooltip mode is enabled by default. + Delete redundant reference to tooltip Custom group. It is + referred too again in the next paragraph. + +2005-04-24 Richard M. Stallman + + * ack.texi: Delete info about lazy-lock.el and fast-lock.el. + +2005-04-19 Kim F. Storm + + * building.texi (Compilation Mode): Add M-g M-n and M-g M-p bindings. + +2005-04-18 Lars Hansen + + * misc.texi (Saving Emacs Sessions): Add that "--no-desktop" now + turns off desktop-save-mode. + +2005-04-17 Luc Teirlinck + + * frames.texi (XTerm Mouse): Xterm Mouse mode is no longer enabled + by default in terminals compatible with xterm. Mention that + xterm-mouse-mode is a minor mode and put in pxref to Minor Modes + node. + +2005-04-12 Luc Teirlinck + + * frames.texi (XTerm Mouse): Xterm Mouse mode is now enabled by default. + +2005-04-12 Jan Djärv + + * xresources.texi (Table of Resources): Add cursorBlink. + +2005-04-11 Luc Teirlinck + + * rmail.texi (Rmail Summary Edit): Explain numeric arguments to + `d', `C-d' and `u'. + +2005-04-11 Richard M. Stallman + + * cmdargs.texi (Initial Options): -Q is now --quick, and does less. + (Misc X): Add -D, --basic-display. + + * maintaining.texi (Change Log): Correct the description of + the example. + + * major.texi (Choosing Modes): Document magic-mode-alist. + +2005-04-10 Luc Teirlinck + + * rmail.texi (Rmail Basics): Clarify description of `q' and `b'. + (Rmail Deletion): `C-d' in RMAIL buffer does not accept a numeric arg. + (Rmail Inbox): Give full name of `rmail-primary-inbox-list'. + (Rmail Output): Clarify which statements apply to `o', `C-o' and + `w', respectively. + (Rmail Labels): Mention `l'. + (Rmail Attributes): Correct pxref. Mention `stored' attribute. + (Rmail Summary Edit): Describe `j' and RET. + +2005-04-10 Jan Djärv + + * xresources.texi (Lucid Resources): Add fontSet resource. + +2005-04-09 Luc Teirlinck + + * display.texi (Useless Whitespace): `indicate-unused-lines' is + now called `indicate-empty-lines'. + +2005-04-06 Kim F. Storm + + * cmdargs.texi (Initial Options): Add --bare-bones alias for -Q. + +2005-04-04 Luc Teirlinck + + * dired.texi (Dired Visiting): `dired-view-command-alist' has been + deleted. + (Marks vs Flags): Add some convenient key bindings. + (Hiding Subdirectories): Delete redundant and inaccurate sentence. + (Misc Dired Features): Correct and expand description of `w' command. + + * frames.texi (XTerm Mouse): Delete apparently false info. + The GNU/Linux console currently does not appear to support + `xterm-mouse-mode'. + +2005-04-03 Glenn Morris + + * calendar.texi (Diary): Mention shell utility `calendar'. + +2005-04-01 Richard M. Stallman + + * cmdargs.texi (Misc X): Explain horizontal scroll bars don't exist. + +2005-04-01 Lute Kamstra + + * maintaining.texi (Change Log): add-change-log-entry uses + add-log-mailing-address. + +2005-03-31 Luc Teirlinck + + * files.texi (Reverting): Move `auto-revert-check-vc-info' to + `VC Mode Line' and put in an xref to that node. + (VC Mode Line): Move `auto-revert-check-vc-info' here and clarify + its description. + +2005-03-31 Paul Eggert + + * calendar.texi (Calendar Systems): Say that the Persian calendar + implemented here is the arithmetical one championed by Birashk. + +2005-03-30 Glenn Morris + + * programs.texi (Fortran Motion): Fix previous change. + +2005-03-29 Richard M. Stallman + + * mule.texi (Single-Byte Character Support): Reinstall the C-x 8 info. + +2005-03-29 Chong Yidong + + * text.texi (Refill): Refer to Long Lines Mode. + (Longlines): New node. + (Auto Fill): Don't index "word wrap" here. + (Filling): Add Longlines to menu. + +2005-03-29 Richard M. Stallman + + * xresources.texi: Minor fixes. + + * misc.texi (Emacs Server): Fix Texinfo usage. + + * emacs.texi (Top): Don't use a real section heading for + "Detailed Node Listing". Fake it instead. + + * basic.texi (Position Info): Minor cleanup. + + * mule.texi (Input Methods): Minor cleanup. + +2005-03-29 Glenn Morris + + * programs.texi (ForIndent Vars): `fortran-if-indent' does other + constructs as well. + (Fortran Motion): Add fortran-end-of-block, fortran-beginning-of-block. + +2005-03-29 Kenichi Handa + + * mule.texi (Input Methods): Refer to the command C-u C-x =. + + * basic.texi (Position Info): Update the description about the + command C-u C-x =. + +2005-03-28 Richard M. Stallman + + * emacs.texi (Top): Use @section for the detailed node listing. + + * calendar.texi: Minor fixes to previous change. + + * programs.texi (Fortran): Small fixes to previous changes. + + * emacs.texi (Top): Update list of subnodes of Dired. + Likewise for building.texi. + + * files.texi (File Conveniences): Delete Auto Image File mode. + +2005-03-28 Chong Yidong + + * building.texi (Flymake): New node. + + * custom.texi (Function Keys): Document kp- event types and + keypad-setup package. + + * dired.texi (Wdired): New node. + + * files.texi (File Conveniences): Reorder entries. + Explain how to turn on Auto-image-file mode. + Document Thumbs mode. + + * mule.texi (Specify Coding): Document recode-region and + recode-file-name. + + * programs.texi (Program Modes): Add Conf mode and DNS mode. + +2005-03-27 Luc Teirlinck + + * commands.texi (Keys): M-o is now a prefix key. + +2005-03-27 Glenn Morris + + * programs.texi: Reformat and update copyright years. + (Fortran): Update section. + +2005-03-26 Luc Teirlinck + + * files.texi: Several small changes in addition to: + (Visiting): Change xref for Dialog Boxes to ref. + (Version Headers): Replace references to obsolete var + `vc-header-alist' with `vc-BACKEND-header'. + (Customizing VC): Update value of `vc-handled-backends'. + +2005-03-26 Glenn Morris + + * emacs-xtra.texi (Advanced Calendar/Diary Usage): New section; + move here from Emacs Lisp Reference Manual. + * calendar.texi (Calendar/Diary, Diary Commands) + (Special Diary Entries, Importing Diary): Change some xrefs to + point to emacs-xtra rather than elisp. + + * emacs-xtra.texi (Calendar Customizing): + Move view-diary-entries-initially, view-calendar-holidays-initially, + mark-diary-entries-in-calendar, mark-holidays-in-calendar to main + Emacs Manual. + (Appt Customizing): Merge entire section into main Emacs Manual. + * calendar.texi (Holidays): Move view-calendar-holidays-initially, + mark-holidays-in-calendar here from emacs-xtra. + (Displaying the Diary): Move view-diary-entries-initially, + mark-diary-entries-in-calendar here from emacs-xtra. + (Appointments): Move appt-display-mode-line, + appt-display-duration, appt-disp-window-function, + appt-delete-window-function here from emacs-xtra. + + * calendar.texi: Update and reformat copyright. + Change all @xrefs to the non-printing emacs-xtra to @inforefs. + (Calendar/Diary): Menu now only on Mouse-3, not C-Mouse-3. + (Diary): Refer to `diary-file' rather than ~/diary. + (Diary Commands): Rename node to "Displaying the Diary". + * emacs.texi (Top): Rename "Diary Commands" section. + * misc.texi (Hardcopy): Rename "Diary Commands" xref. + +2005-03-26 Eli Zaretskii + + * misc.texi (Emacs Server): Fix the command for setting + server-name. Add an xref to Invoking emacsclient. + + * help.texi (Help Summary): Clarify when "C-h ." will do something + nontrivial. + (Apropos): Add cindex entry for apropos-sort-by-scores. + + * display.texi (Text Display): Add index entries for how no-break + characters are displayed. + +2005-03-26 Eli Zaretskii + + * files.texi (Visiting): Fix cross-references introduced with the + last change. + + * xresources.texi (GTK resources): Fix last change. + +2005-03-25 Chong Yidong + + * xresources.texi (X Resources): GTK options documented too. + (Resources): Clarify meaning of program name. + (Table of Resources): Add visualClass. + (GTK resources): Rewrite. + (GTK widget names, GTK Names in Emacs, GTK styles): Cleanups. + + * display.texi (Text Display): Mention non-breaking spaces. + + * files.texi (Reverting): Document auto-revert-check-vc-info. + + * frames.texi (Mouse Commands): Document + x-mouse-click-focus-ignore-position and mouse-drag-copy-region. + + * help.texi (Help Summary): Add `C-h .'. + (Apropos): Apropos accepts a list of search terms. + Document apropos-sort-by-scores. + (Help Echo): Document display-local-help. + + * misc.texi (Emacs Server): Document server-name. + (Invoking emacsclient): Document -s option for server names. + + * text.texi (Outline Visibility): Introduce "current heading + line" (commands can be called with point on a body line). + Re-order table to follow the sequence of discussion. + hide-body won't hide lines before first header line. + (TeX Mode): Add DocTeX mode. + +2005-03-24 Richard M. Stallman + + * mule.texi (Single-Byte Character Support): Delete mention + of iso-acc.el and iso-transl.el. + +2005-03-23 Lute Kamstra + + * search.texi (Non-ASCII Isearch): Rename from Non-Ascii Isearch. + +2005-03-23 Richard M. Stallman + + * search.texi: Delete explicit node pointers. + (Incremental Search): New menu. + (Basic Isearch, Repeat Isearch, Error in Isearch) + (Non-Ascii Isearch, Isearch Yank, Highlight Isearch, Isearch Scroll) + (Slow Isearch): New subnodes. + (Configuring Scrolling): Node deleted. + (Search Case): Doc default-case-fold-search. + (Regexp Replace): Move replace-regexp doc here. + + * rmail.texi (Movemail): Put commas inside closequotes. + + * picture.texi (Insert in Picture): Document C-c arrow combos. + (Basic Picture): Clarify erasure. + + * display.texi (Font Lock): Put commas inside closequotes. + + * cmdargs.texi (General Variables): Put commas inside closequotes. + +2005-03-23 Nick Roberts + + * building.texi (Stack Buffer): Mention reverse contrast for + *selected* frame (might not be current frame). + +2005-03-21 Richard M. Stallman + + * building.texi (Starting GUD): Add bashdb. + +2005-03-20 Chong Yidong + + * basic.texi (Moving Point): Add M-g M-g binding. + (Undo): Document undo-only. + (Position Info): Document M-g M-g and C-u M-g M-g. + + * building.texi (Building): Put Grep Searching after Compilation + Shell. + (Compilation Mode): Document M-n, M-p, M-}, M-{, and C-c C-f bindings. + Document next-error-highlight. + (Grep Searching): Document grep-highlight-matches. + (Lisp Eval): Typing C-x C-e twice prints integers specially. + + * calendar.texi (Importing Diary): Rename node from iCalendar. + Document diary-from-outlook. + + * dired.texi (Misc Dired Features): Rename node from Misc Dired + Commands. + Mention effect of X drag and drop on Dired buffers. + + * files.texi (Visiting): Document large-file-warning-threshold. + Move paragraph on file-selection dialog. + Mention visiting files using X drag and drop. + (Reverting): Mention using Auto-Revert mode to tail files. + Document auto-revert-tail-mode. + (Version Systems): Minor correction. + (Comparing Files): Diff-mode is no longer based on Compilation + mode. + Document compare-ignore-whitespace. + (Misc File Ops): Explain passing a directory to rename-file. + Likewise for copy-file and make-symbolic-link. + + * frames.texi (Wheeled Mice): Mouse wheel support on by default. + Document mouse-wheel-progressive speed. + + * help.texi (Misc Help): Document numeric argument for C-h i. + Correctly explain the effect of just C-u as argument. + + * killing.texi (Deletion): Document numeric argument for + just-one-space. + + * mini.texi (Completion): Completion acts on text before point. + + * misc.texi (Saving Emacs Sessions): Document desktop-restore-eager. + (Emulation): CUA mode replaces pc-bindings-mode, + pc-selection-mode, and s-region. + + * mule.texi (Input Methods): Leim is now built-in. + (Select Input Method): Document quail-show-key. + (Specify Coding): Document revert-buffer-with-coding-system. + + * programs.texi (Fortran Motion): Document f90-next-statement, + f90-previous-statement, f90-next-block, f90-previous-block, + f90-end-of-block, and f90-beginning-of-block. + + * text.texi (Format Faces): Replace old M-g key prefix with M-o. + + * emacs.texi (Acknowledgments): Updated. + + * anti.texi: Total rewrite. + +2005-03-19 Chong Yidong + + * ack.texi (Acknowledgments): Update. + +2005-03-19 Eli Zaretskii + + * anti.texi (Antinews): Refer to Emacs 21.4, not 21.3. Update + copyright years. + +2005-03-14 Nick Roberts + + * building.texi (Commands of GUD): Move paragraph on setting + breakpoints with mouse to the GDB Graphical Interface node. + +2005-03-07 Richard M. Stallman + + * misc.texi (Single Shell, Shell Options): Fix previous change. + + * building.texi (Debugger Operation): Update GUD tooltip enable info. + +2005-03-06 Richard M. Stallman + + * building.texi (Starting GUD): Don't explain text vs graphical + GDB here. Just mention it and xref. + Delete "just one debugger process". + (Debugger Operation): Move GUD tooltip info here. + (GUD Tooltips): Node deleted. + (GDB Graphical Interface): Explain the two GDB modes here. + + * sending.texi (Sending Mail): Minor cleanup. + (Mail Aliases): Explain quoting conventions. + Update key rebinding example. + (Header Editing): C-M-i is like M-TAB. + (Mail Mode Misc): mail-attach-file does not do MIME. + + * rmail.texi (Rmail Inbox): Move text from Remote Mailboxes + that really belongs here. + (Remote Mailboxes): Text moved to Rmail Inbox. + (Rmail Display): Mention Mouse-1. + (Movemail): Clarify two movemail versions. + Clarify rmail-movemail-program. + + * misc.texi (Single Shell): Replace uudecode example with gpg example. + Document async shell commands. + (Shell History): Clarify. + (Shell Ring): Mention C-UP an C-DOWN. + (Shell Options): Add comint-prompt-read-only. + (Invoking emacsclient): Set EDITOR to run Emacs. + (Sorting): No need to explain what region is. + (Saving Emacs Sessions): Fix typo. + (Recursive Edit): Fix punctuation. + (Emulation): Don't mention "PC bindings" which are standard. + (Hyperlinking): Explain Mouse-1 convention here. + (Find Func): Node deleted. + + * help.texi (Name Help): Xref to Hyperlinking. + + * glossary.texi (Glossary): + Rename "Balance Parentheses" to "Balancing...". + Add "Byte Compilation". Correct "Copyleft". + New xref in "Customization". + Clarify "Current Line", "Echoing", "Fringe", "Frame", "Speedbar". + Add "Graphical Terminal" "Keybinding", "Margin", "Window System". + Rename "Registers" to "Register". + Replace "Selecting" with "Selected Frame", + "Selected Window", and "Selecting a Buffer". + + * files.texi (Types of Log File): Explain how projects' + methods can vary. + + * display.texi (Faces): Delete "Emacs 21". + + * custom.texi (Changing a Variable): C-M-i like M-TAB. + * fixit.texi (Spelling): C-M-i like M-TAB. + * mini.texi (Completion Options): C-M-i like M-TAB. + * programs.texi (Symbol Completion): C-M-i like M-TAB. + * text.texi (Text Mode): C-M-i like M-TAB. + + * commands.texi (Keys): Mention F1 and F2 in list of prefixes. + + * calendar.texi (Specified Dates): Mention `g w'. + (Appointments): appt-activate toggles with no arg. + +2005-03-05 Juri Linkov + + * cmdargs.texi (Emacs Invocation): Add cindex + "invocation (command line arguments)" + (Misc X): Add -nbc, --no-blinking-cursor. + +2005-03-04 Ulf Jasper + + * calendar.texi (iCalendar): No need to require it now. + +2005-03-03 Nick Roberts + + * trouble.texi (Contributing): Mention Savannah. Direct users to + emacs-devel. + +2005-03-01 Glenn Morris + + * calendar.texi (Adding to Diary): Mention redrawing of calendar + window. + +2005-02-27 Richard M. Stallman + + * building.texi (Compilation): Update mode line status info. + +2005-02-27 Matt Hodges + + * calendar.texi (General Calendar): Document binding of + scroll-other-window-down. + (Mayan Calendar): Fix earliest date. + (Time Intervals): Document timeclock-change. + Fix timeclock-ask-before-exiting documentation. + +2005-02-26 Kim F. Storm + + * frames.texi (Mouse References): + Add mouse-1-click-in-non-selected-windows. + +2005-02-25 Richard M. Stallman + + * screen.texi (Screen): Explain better about cursors and mode lines; + don't presuppose text terminals. + (Point): Don't assume just one cursor. + Clarify explanation of cursors. + (Echo Area, Menu Bar): Cleanups. + + * mini.texi (Minibuffer): Prompts are highlighted. + (Minibuffer Edit): Newline = C-j only on text terminals. + Clarify resize-mini-windows values. + Mention M-PAGEUP and M-PAGEDOWN. + (Completion Commands): Mouse-1 like Mouse-2. + (Minibuffer History): Explain history commands better. + (Repetition): Add xref to Incremental Search. + + * mark.texi (Setting Mark): Clarify info about displaying mark. + Clarify explanation of C-@ and C-SPC. + (Transient Mark): Mention Delete Selection mode. + (Marking Objects): Clean up text about extending the region. + + * m-x.texi (M-x): One C-g doesn't always go to top level. + No delay before suggest-key-bindings output. + + * fixit.texi (Fixit): Mention C-/ for undo. + (Spelling): Mention ESC TAB like M-TAB. + Replacement words with r and R are rechecked. + Say where C-g leaves point. Mention ? as input. + +2005-02-23 Lute Kamstra + + * cmdargs.texi (Initial Options): Add cross reference. + +2005-02-16 Luc Teirlinck + + * emacs.texi (Top): Update menu for splitting of node in + msdog.texi. + * frames.texi (Frames): Update xref for splitting of node in + msdog.texi. + * trouble.texi (Quitting): Ditto. + +2005-02-16 Richard M. Stallman + + * windows.texi (Split Window): Simplify line truncation info + and xref to Display Custom. + + * trouble.texi (Quitting): Emergency escape only for text terminal. + (Screen Garbled): C-l for ungarbling is only for text terminal. + + * text.texi (Text Mode): ESC TAB alternative for M-TAB. + + * sending.texi (Header Editing): ESC TAB alternative for M-TAB. + + * programs.texi (Program Modes): Mention Python mode. + (Moving by Defuns): Repeating C-M-h extends region. + (Basic Indent): Clarify. + (Custom C Indent): Clarify. + (Expressions): Repeating C-M-@ extends region. + (Info Lookup): Clarify for C-h S. + (Symbol Completion): ESC TAB alternative for M-TAB. + (Electric C): Clarify. + + * emacs.texi (Top): Update display.texi and frames.texi submenu data. + + * msdog.texi (MS-DOS Keyboard, MS-DOS Mouse): Split from + MS-DOS Input node. + (MS-DOS Keyboard): Start with explaining DEL and BREAK. + (MS-DOS and MULE): Clarify. + (MS-DOS Processes, Windows Processes): Fix typos. + + * major.texi (Choosing Modes): Clarify. + + * kmacro.texi (Basic Keyboard Macro): Doc F3, F4. + (Keyboard Macro Step-Edit): Clarify. + + * indent.texi (Indentation): Clarifications. + + * help.texi (Help): Correct error about C-h in query-replace. + Clarify apropos vs C-h a. Fix how to search in FAQ. + (Key Help): Describe C-h w here. + (Name Help): Minor cleanup. C-h w moved to Key Help. + Clarify the "object" joke. + (Apropos): Clarify. Mouse-1 like Mouse-2. + (Help Mode): Mouse-1 like Mouse-2. + + * fixit.texi (Spelling): Mention ESC TAB as alt. for M-TAB. + + * display.texi (Display): Reorder menu. + (Faces): Cleanup. + (Font Lock): Cleanup. Mention Options menu. + Delete obsolete text. + (Scrolling): For C-l, don't presume text terminal. + (Horizontal Scrolling): Simplify intro. + (Follow Mode): Clarify. + (Cursor Display): Moved before Display Custom. + (Display Custom): Explain no-redraw-on-reenter is for text terminals. + Doc default-tab-width. Doc line truncation more thoroughly. + + * dired.texi (Dired Enter): C-x C-f can run Dired. + (Dired Visiting): Comment out `a' command. + Mouse-1 is like Mouse-2. + (Shell Commands in Dired): ? can be used more than once. + + * basic.texi (Continuation Lines): Simplify description of truncation, + and refer to Display Custom for the rest of it. + +2005-02-06 Lute Kamstra + + * basic.texi (Undo): Fix typo. + + * cmdargs.texi (Emacs Invocation): Fix typo. + + * custom.texi (Init Examples): Fix typo. + + * abbrevs.texi (Expanding Abbrevs): Fix typo. + +2005-02-06 Richard M. Stallman + + * regs.texi (Registers): Registers can hold numbers, too. + + * killing.texi (Other Kill Commands): Cleanup. + Delete redundant explanation of kill in read-only buffer. + (Yanking): Mention term "copying". + (Accumulating Text): Fix typo. + + * entering.texi (Entering Emacs): Update rationale at start. + (Exiting): Treat iconifying on a par with suspension. + + * custom.texi (Minor Modes): Fix typo. + (Easy Customization): Fix menu style. + (Variables): Add xref. + (Examining): Setting for future sessions works through .emacs. + (Keymaps): "Text terminals", not "Many". + (Init Rebinding): Explain \C-. Show example of \M-. + Fix minor wording errors. + (Function Keys): Explain vector syntax just once. + (Named ASCII Chars): Clarify history of TAB/C-i connection. + (Init File): Mention .emacs.d directory. + (Init Examples): Add xref. + (Find Init): Mention .emacs.d directory. + + * cmdargs.texi (Emacs Invocation): +LINENUM is also an option. + (Action Arguments): Explain which kinds of -l args are found how. + (Initial Options): --batch does not inhibit site-start. + Add xrefs. + (Command Example): Use --batch, not -batch. + + * basic.texi (Inserting Text): Cleanup wording. + (Moving Point): Doc PRIOR, PAGEUP, NEXT, PAGEDOWN more systematically. + C-n is not error at end of buffer. + (Undo): Doc C-/ like C-_. Add xrefs. + (Arguments): META key may be labeled ALT. + Peculiar arg meanings are explained in doc strings. + + * abbrevs.texi (Expanding Abbrevs): Clarify. + +2005-02-05 Eli Zaretskii + + * frames.texi (Frame Parameters): Add an xref to the description + of list-colors-display. Add a pointer to the X docs about colors. + + * cmdargs.texi (Colors): Mention 16-, 88- and 256-color modes. + Impove docs of list-colors-display. + +2005-02-03 Lute Kamstra + + * frames.texi (Frames, Drag and Drop): Fix typos. + +2005-02-03 Richard M. Stallman + + * windows.texi (Basic Window): Mention color-change in mode line. + (Change Window): Explain dragging vertical boundaries. + + * text.texi (Sentences): Clarify. + (Paragraphs): Explain M-a and blank lines. + (Outline Mode): Clarify text and menu. + (Hard and Soft Newlines): Mention use-hard-newlines. + + * frames.texi (Frames): Delete unnecessary mention of Windows. + (Mouse Commands): Likewise. Mention xterm mouse support. + (Clipboard): Clarify. + (Mouse References): Mention use of Mouse-1 for following links. + (Menu Mouse Clicks): Clarify. + (Mode Line Mouse): Clarify. + (Drag and Drop): Rewrite. + + * fixit.texi (Spelling): Fix typo. + + * files.texi (File Names): Clarify. + (Visiting): Update conditions for use of file dialog. Clarify. + (Saving): Doc d as answer in save-some-buffers. + (Remote Files): Clean up the text. + + * dired.texi (Misc Dired Commands): Delete dired-marked-files. + + * buffers.texi (Select Buffer): Doc next-buffer and prev-buffer. + (List Buffers): Clarify. + (Several Buffers): Doc T command. + (Buffer Convenience): Clarify menu. + + * basic.texi (Undo): Clarify last change. + +2005-02-02 Matt Hodges + + * fixit.texi (Spelling): Fix typo. + +2005-02-01 Luc Teirlinck + + * basic.texi (Undo): Update description of `undo-outer-limit'. + +2005-02-01 Nick Roberts + + * building.texi: Update documentation relating to GDB Graphical + Interface. + +2005-01-30 Luc Teirlinck + + * custom.texi (Easy Customization): Adapt menu to node name change. + +2005-01-30 Richard M. Stallman + + * custom.texi (Easy Customization): Defn of "User Option" now + includes faces. Don't say just "option" when talking about variables. + Do say just "options" to mean "anything customizable". + (Specific Customization): Describe `customize-variable', + not `customize-option'. + + * glossary.texi (Glossary) : Add xref. + : Change definition--include faces. Change xref. + + * picture.texi (Picture): Mention artist.el. + + * sending.texi, screen.texi, programs.texi, misc.texi: + * mini.texi, major.texi, maintaining.texi, macos.texi: + * help.texi, frames.texi, files.texi: + Don't say just "option" when talking about variables. + + * display.texi, mule.texi: Don't say just "option" when talking + about variables. Other minor cleanups. + +2005-01-26 Lute Kamstra + + * cmdargs.texi (Initial Options): Add a cross reference to `Init + File'. Mention the `-Q' option at the `--no-site-file' option. + +2005-01-22 David Kastrup + + * building.texi (Grep Searching): Mention alias `find-grep' for + `grep-find'. + +2005-01-20 Richard M. Stallman + + * calendar.texi (Time Intervals): Delete special stuff for MS-DOS. + +2005-01-15 Sergey Poznyakoff + + * rmail.texi (Movemail): Explain differences + between standard and mailutils versions of movemail. + Describe command line and configuration options introduced + with the latter. + Explain the notion of mailbox URL, provide examples and + cross-references to mailutils documentation. + Describe various methods of specifying mailbox names, + user names and user passwords for rmail. + (Remote Mailboxes): New section. Describe + how movemail handles remote mailboxes. Describe configuration + options used to control its behavior. + (Other Mailbox Formats): Explain handling of various mailbox + formats. + +2005-01-13 Richard M. Stallman + + * commands.texi (Commands): Clarification. + +2005-01-11 Richard M. Stallman + + * programs.texi (Multi-line Indent): Fix previous change. + (Fortran Autofill): Simplify description of fortran-auto-fill-mode. + +2005-01-08 Richard M. Stallman + + * display.texi (Faces): isearch-lazy-highlight-face renamed to + lazy-highlight. + + * search.texi (Query Replace): Mention faces query-replace + and lazy-highlight. + (Incremental Search): Update isearch highlighting info. + +2005-01-04 Richard M. Stallman + + * custom.texi (Saving Customizations): Minor improvement. + +2005-01-03 Luc Teirlinck + + * custom.texi (Saving Customizations): Emacs no longer loads + `custom-file' after .emacs. No longer mention customizing through + Custom. + +2005-01-01 Andreas Schwab + + * killing.texi (Graphical Kill): Move up under node Killing, + change @section to @subsection. + +2005-01-01 Richard M. Stallman + + * custom.texi (Face Customization): Mention hex color specs. + + * emacs.texi (Top): Update Killing submenu. + + * killing.texi (Killing): Reorganize section. + No more TeX-only text; put the node command at start of chapter. + But the first section heading is used only in TeX. + Rewrite the text to read better in this mode. + (Graphical Kill): New subnode gets some of the text that + used to be in the first section. + +2004-12-31 Richard M. Stallman + + * dired.texi (Shell Commands in Dired): Delete the ? example. + + * display.texi (Scrolling): Correct scroll-preserve-screen-position. + + * files.texi (Saving): Describe new require-final-newline features + and mode-require-final-newline. + +2004-12-29 Richard M. Stallman + + * custom.texi (File Variables): Clarify previous change. + +2004-12-27 Jan Djärv + + * frames.texi (Dialog Boxes): Mention Gtk+ 2.6 also, as that version is + out now. + +2004-12-27 Richard M. Stallman + + * Makefile.in (MAKEINFO): Specify --force. + + * basic.texi (Moving Point): C-e now runs move-end-of-line. + (Undo): Doc undo-outer-limit. + +2004-12-15 Juri Linkov + + * mark.texi (Transient Mark, Mark Ring): M-< and other + movement commands don't set mark in Transient Mark mode + if mark is active. + +2004-12-12 Juri Linkov + + * misc.texi (FFAP): Add C-x C-r, C-x C-v, C-x C-d, + C-x 4 r, C-x 4 d, C-x 5 r, C-x 5 d. + + * dired.texi (Dired Navigation): Add @r{(Dired)} to M-g. + (Misc Dired Commands): Add @r{(Dired)} to w. + +2004-12-12 Juri Linkov + + * mark.texi (Marking Objects): Marking commands also extend the + region when mark is active in Transient Mark mode. + +2004-12-08 Luc Teirlinck + + * custom.texi (Saving Customizations): Emacs only loads the custom + file automatically after the init file in version 22.1 or later. + Adapt text and examples to this fact. + +2004-12-07 Luc Teirlinck + + * frames.texi (Scroll Bars): The option `scroll-bar-mode' has to + be set through Custom. Otherwise, it has no effect. + +2004-12-05 Richard M. Stallman + + * cmdargs.texi, doclicense.texi, xresources.texi, emacs.texi: + * entering.texi: Rename Command Line to Emacs Invocation. + + * misc.texi (Term Mode): Correcty describe C-c. + + * custom.texi (Easy Customization): Move up to section level, + before Variables. Avoid using the term "variable"; say "option". + New initial explanation. + (Variables): In initial explanation, connect "variable" to the + already-explained "user option". + + * emacs.texi (Top): Fix ref to Command Line. + Move reference to Easy Customization. + + * xresources.texi (X Resources): Fix From link. + + * doclicense.texi (GNU Free Documentation License): Fix To link. + + * entering.texi (Entering Emacs): Fix xref, now to Command Line. + + * cmdargs.texi (Command Line): Node renamed from Command Arguments. + +2004-12-03 Richard M. Stallman + + * cmdargs.texi (Initial Options): Clarify batch mode i/o. + +2004-12-01 Luc Teirlinck + + * kmacro.texi: Several small changes in addition to the following. + (Keyboard Macro Ring): Describe behavior of `C-x C-k C-k' when + defining a keyboard macro. + Mention `kmacro-ring-max'. + (Keyboard Macro Counter): Clarify description of + `kmacro-insert-counter', `kmacro-set-counter', + `kmacro-add-counter' and `kmacro-set-format'. + +2004-11-29 Reiner Steib + + * custom.texi (File Variables): Add `unibyte' and make it more + clear that `unibyte' and `coding' are special. Suggested by Simon + Krahnke . + + * mule.texi (Enabling Multibyte): Refer to File Variables. + Suggested by Simon Krahnke . + +2004-11-26 Jan Djärv + + * frames.texi (Dialog Boxes): Rename use-old-gtk-file-dialog to + x-use-old-gtk-file-dialog. + +2004-11-20 Richard M. Stallman + + * text.texi (Fill Prefix): M-q doesn't apply fill prefix to first line. + +2004-11-09 Lars Brinkhoff + + * building.texi (Lisp Eval): Delete hyphen in section name. + +2004-11-19 Thien-Thi Nguyen + + * files.texi (Old Versions): + No longer document annotation as "CVS only". + +2004-11-10 Andre Spiegel + + * files.texi (Version Control): Rewrite the introduction about + version systems, mentioning the new ones that we support. Thanks + to Alex Ott, Karl Fogel, Stefan Monnier, and David Kastrup for + suggestions. + +2004-11-03 Jan Djärv + + * frames.texi (Dialog Boxes): Replace non-nil with non-@code{nil}. + +2004-11-02 Jan Djärv + + * frames.texi (Dialog Boxes): Document use-old-gtk-file-dialog. + +2004-10-23 Eli Zaretskii + + * text.texi (Text Based Tables, Table Definition) + (Table Creation, Table Recognition, Cell Commands) + (Cell Justification, Row Commands, Column Commands) + (Fixed Width Mode, Table Conversion, Measuring Tables) + (Table Misc): New nodes, documenting the Table Mode. + +2004-10-19 Jason Rumney + + * makefile.w32-in (info): Change order of arguments to makeinfo. + +2004-10-19 Ulf Jasper + + * calendar.texi (iCalendar): Update for package changes. + +2004-10-09 Luc Teirlinck + + * files.texi (Misc File Ops): View mode is a minor mode. + +2004-10-08 Glenn Morris + + * calendar.texi (iCalendar): Style changes. + +2004-10-07 Luc Teirlinck + + * search.texi (Regexps): The regexp described in the example is no + longer stored in the variable `sentence-end'. + +2004-10-06 Nick Roberts + + * building.texi (Starting GUD): Note that multiple debugging + sessions requires `gdb --fullname'. + +2004-10-05 Ulf Jasper + + * calendar.texi (iCalendar): New section for a new package. + +2004-10-05 Luc Teirlinck + + * text.texi: Various small changes in addition to the following. + (Text): Replace xref for autotype with inforef. + (Sentences): Explain nil value for `sentence-end'. + (Paragraphs): Update default values for `paragraph-start' and + `paragraph-separate'. + (Text Mode): Correct description of Text mode's effect on the + syntax table. + (Outline Visibility): `hide-other' does not hide top level headings. + `selective-display-ellipses' no longer has an effect on Outline mode. + (TeX Misc): Add missing @cindex. + Replace xref for RefTeX with inforef. + (Requesting Formatted Text): The variable + `enriched-fill-after-visiting' no longer exists. + (Editing Format Info): Update names of menu items and commands. + (Format Faces): Mention special effect of specifying the default face. + Describe inheritance of text properties. + Correct description of `fixed' face. + (Format Indentation): Correct description of effect of setting + margins. Mention `set-left-margin' and `set-right-margin'. + (Format Justification): Update names of menu items. + `set-justification-full' is now bound to `M-j b'. + Mention that `default-justification' is a per buffer variable. + (Format Properties): Update name of menu item. + (Forcing Enriched Mode): `format-decode-buffer' automatically + turns on Enriched mode if the buffer is in text/enriched format. + +2004-10-05 Emilio C. Lopes + + * calendar.texi (From Other Calendar): Add calendar-goto-iso-week. + +2004-09-28 Kim F. Storm + + * display.texi (Display Custom) : + Align with new functionality. + +2004-09-22 Luc Teirlinck + + * display.texi (Display Custom): Remove stray `@end defvar'. + +2004-09-23 Kim F. Storm + + * display.texi (Display Custom): Add `overflow-newline-into-fringe', + `indicate-buffer-boundaries' and `default-indicate-buffer-boundaries'. + +2004-09-20 Richard M. Stallman + + * custom.texi (Hooks): Explain using setq to clear out a hook. + (File Variables): Explain multiline string constants. + (Non-ASCII Rebinding): Explain when you need to update + non-ASCII char codes in .emacs. + + * building.texi (Compilation): Explain how to make a silent + subprocess that won't be terminated. Explain compilation-environment. + +2004-09-13 Kim F. Storm + + * mini.texi (Repetition): Rename isearch-resume-enabled to + isearch-resume-in-command-history and change default to disabled. + +2004-09-09 Kim F. Storm + + * kmacro.texi (Save Keyboard Macro): Replace `name-last-kbd-macro' + with new `kmacro-name-last-macro'. + +2004-09-08 Juri Linkov + + * mini.texi (Minibuffer History): Add `history-delete-duplicates'. + +2004-09-03 Juri Linkov + + * search.texi (Incremental Search): Update wording for M-%. + +2004-09-02 Luc Teirlinck + + * killing.texi (Killing): Correct description of kill commands in + read-only buffer. + +2004-09-02 Teodor Zlatanov + + * building.texi (Compilation Mode): Add a paragraph about rules + for finding the compilation buffer for `next-error'. + + * search.texi (Other Repeating Search): Mention that Occur mode + supports the next-error functionality. + +2004-09-02 Juri Linkov + + * search.texi (Regexp Replace): Add missing backslash to \footnote. + +2004-08-31 Luc Teirlinck + + * kmacro.texi (Basic Keyboard Macro): + `apply-macro-to-region-lines' now operates on all lines that begin + in the region, rather than on all complete lines in the region. + +2004-08-31 Jan Djärv + + * frames.texi (Drag and drop): Add documentation about + x-dnd-test-function and x-dnd-known-types. + +2004-08-30 Luc Teirlinck + + * indent.texi: Various minor changes in addition to: + (Indentation Commands): Correct description of `indent-relative'. + (Tab Stops): is no longer bound to `tab-to-tab-stop' in Text + mode. The *Tab Stops* buffer uses Overwrite Mode. + (Just Spaces): `tabify' converts sequences of at least two spaces + to tabs. + +2004-08-27 Luc Teirlinck + + * frames.texi (Secondary Selection): Setting the secondary + selection with M-Drag-Mouse-1 does not alter the kill ring, + setting it with M-Mouse-1 and M-Mouse-3 does. + (Mode Line Mouse): C-Mouse-2 on scroll bar now also works for + toolkit scroll bars. + (Scroll Bars): Ditto. + + * windows.texi (Basic Window): When using a window system, the value + of point in a non-selected window is indicated by a hollow box. + (Split Window): Side by side windows are separated by a scroll bar, + if scroll bars are used. + C-Mouse-2 on scroll bar now also works for toolkit scroll bars. + (Change Window): Correct Mouse-2 vs Mouse-3 mess-up. + (Window Convenience): Update bindings for `winner-undo' and + `winner-redo'. + + * ack.texi (Acknowledgments): Use `@unnumbered'. + * misc.texi: Adapt sectioning in Info to the node structure. + (Invoking emacsclient): Make "Invoking emacsclient" a subsection + of "Using Emacs as a Server". + * building.texi (Building): Interchange nodes (for correct numbering). + * programs.texi (Programs): Interchange nodes (for correct numbering). + * killing.texi, entering.texi, commands.texi: Adapt sectioning in + Info to the node structure. + * emacs.texi: Make "GNU GENERAL PUBLIC LICENSE" an appendix. + Rearrange order of nodes and sections such that both "GNU GENERAL + PUBLIC LICENSE" and "GNU Free Documentation License" appear at the + end, as appropriate for appendices. + (Acknowledgments): Put inside @iftex instead of @ifnotinfo. + Use `@unnumberedsec'. + * trouble.texi: Adapt sectioning in Info to the node structure. + Adapt node pointers to change in emacs.texi. + * cmdargs.texi, doclicense.texi: Adapt node pointers. + +2004-08-25 Kenichi Handa + + * custom.texi (Non-ASCII Rebinding): Fix and simplify the + description for unibyte mode. + +2004-08-23 Luc Teirlinck + + * display.texi (Font Lock): Correct invalid (for hardcopy) @xref. + + * search.texi (Regexps): Correct cryptic (in hardcopy) @ref. + (Configuring Scrolling): Correct invalid (for hardcopy) @xref. + (Regexp Replace): Standardize reference to hardcopy Elisp Manual + in @pxref. + +2004-08-22 Luc Teirlinck + + * kmacro.texi (Keyboard Macro Counter, Keyboard Macro Step-Edit): + Change section names. + +2004-08-21 Luc Teirlinck + + * kmacro.texi (Keyboard Macro Ring): Rename section. + Emacs treats the head of the macro ring as the `last keyboard macro'. + (Keyboard Macro Counter): Minor change. + (Save Keyboard Macro): Some clarifications. + (Edit Keyboard Macro): Rename section. + + * buffers.texi (Buffers): Maximum buffer size is now 256M on + 32-bit machines. + (Several Buffers): Clarify which buffer is selected if `2' is + pressed in the Buffer Menu. + Auto Revert mode can be used to update the Buffer Menu + automatically. + +2004-08-21 Eli Zaretskii + + * help.texi (Misc Help): Add an index entry for finding an Info + manual by its file name. + +2004-08-20 Luc Teirlinck + + * files.texi (Backup Deletion): Correct description of + `delete-old-versions'. + (Time Stamps): `time-stamp' needs to be added to `before-save-hook'. + (Auto Save Files): Recommend `auto-save-mode' to reenable + auto-saving, rather than the abbreviation `auto-save'. + +2004-08-17 Luc Teirlinck + + * emacs.texi (Top): Mention "cutting" and "pasting" as synonyms + for "killing" and "yanking" in main menu. + +2004-08-16 Richard M. Stallman + + * killing.texi (Yanking, Killing): Minor cleanups. + + * mark.texi (Momentary Mark): Minor cleanups. + +2004-08-15 Kenichi Handa + + * custom.texi (Non-ASCII Rebinding): + C-q always inserts the right code to pass to global-set-key. + +2004-08-13 Luc Teirlinck + + * regs.texi (RegNumbers): Mention `C-x r i' binding for + `insert-register', instead of `C-x r g' binding, for consistency. + +2004-08-12 Luc Teirlinck + + * fixit.texi (Spelling): Fix typo. + +2004-08-11 Luc Teirlinck + + * help.texi (Help): Fix Texinfo usage. + +2004-07-24 Richard M. Stallman + + * text.texi (Paragraphs): Update how paragraphs are separated + and the default for paragraph-separate. + + * search.texi (Regexp Replace): Further update text for new + replacement operators. + +2004-07-18 Luc Teirlinck + + * emacs-xtra.texi (Subdir switches): Dired does not remember the + `R' switch. + + * dired.texi (Dired Updating): `k' only deletes inserted + subdirectories from the Dired buffer if a prefix argument was given. + + * search.texi (Regexps): Delete redundant definition of `symbol' in + description of `\_>'. It already occurs in the description of `\_<'. + +2004-07-01 Juri Linkov + + * search.texi (Incremental Search): Add C-M-w, C-M-y, M-%, C-M-%, M-e. + (Regexp Search): Add M-r. + +2004-06-30 Luc Teirlinck + + * makefile.w32-in (EMACSSOURCES): Remove emacs-xtra. + +2004-06-29 Jesper Harder + + * search.texi, calendar.texi: Markup fixes. + +2004-06-25 Richard M. Stallman + + * search.texi (Regexp Replace): Rewrite description of \# \, and \?. + +2004-06-25 David Kastrup + + * search.texi (Regexp Replace): Some typo corrections and + rearrangement. + +2004-06-24 David Kastrup + + * search.texi (Unconditional Replace): Use replace-string instead + of query-replace in example. + (Regexp Replace): Add explanations for `\,', `\#' and `\?' + sequences. + (Query Replace): Correct explanation of `^' which does not use + the mark stack. + +2004-06-21 Nick Roberts + + * misc.texi (Shell History Copying): Document comint-insert-input. + (Shell Ring): Describe comint-dynamic-list-input-ring here. + +2004-06-20 Jesper Harder + + * msdog.texi (Text and Binary, MS-DOS Printing): Use m-dash. + * custom.texi (Customization): Do. + * anti.texi (Antinews): Do. + * abbrevs.texi (Defining Abbrevs): Do. + + * programs.texi (Info Lookup): Fix keybinding for + info-lookup-symbol. + +2004-06-16 Juanma Barranquero + + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS, EMACSSOURCES): + Add emacs-xtra. + ($(infodir)/emacs-xtra, emacs-xtra.dvi): New dependencies. + (clean): Add emacs-xtra and flymake. Remove redundancies. + +2004-06-15 Luc Teirlinck + + * Makefile.in (INFO_TARGETS, DVI_TARGETS, ../info/emacs-xtra): + Add emacs-xtra. + * emacs-xtra.texi: New file. + +2004-06-14 Luc Teirlinck + + * dired.texi (Dired Enter): Mention conditions on `ls' switches. + (Dired and Find): Mention differences with ordinary Dired buffers. + +2004-06-13 Richard M. Stallman + + * custom.texi (Init Syntax): Explain about vars that do special + things when set with setq or with Custom. + (Init Examples): Add line-number-mode example. + +2004-06-12 Juri Linkov + + * dired.texi (Operating on Files): Add dired-do-touch. + +2004-06-10 Juri Linkov + + * building.texi (Lisp Eval): Add C-M-x on defface. + +2004-06-08 Luc Teirlinck + + * files.texi (Reverting): Auto-Revert mode and + Global Auto-Revert mode no longer revert remote files. + +2004-05-29 Richard M. Stallman + + * custom.texi (Init File): Two dashes start --no-site-file. + +2004-05-29 Alan Mackenzie + + * programs.texi: Update for CC Mode 5.30 and incidental amendments. + ("AWK"): Is consistently thus spelt throughout. + (AWK, Pike): Document as "C-like modes". + (@kbd{M-j}): Document as alternative to @kbd{C-M-j}. + (M-x man): Supersedes M-x manual-entry. + Add numerous index entries. Correct "ESC a/e" to "M-a/e". + + ("Comments in C"): Delete node; the info is in CC Mode manual. + (c-comment-only-line-offset): Remove description. + + (C-c ., C-c C-c): Describe new C Mode bindings. + + (C-u TAB, indent-code-rigidly, c-indent-exp, c-tab-always-indent) + (@dfn{Style}, c-default-style, comment-column, comment-padding) + (c-up-conditional, c-beginning-of-statement, c-end-of-statement): + Amend definitions. + + (c-beginning-of-defun, c-end-of-defun, c-context-line-break): + Describe functions. + + (c-comment-start-regexp, c-hanging-comment-ender-p) + (c-hanging-comment-starter-p): Remove obsolete definitions. + + * emacs.texi: Remove the menu entry "Comments in C". + +2004-05-27 Luc Teirlinck + + * dired.texi (Dired and Find): `find-ls-option' does not apply to + `M-x locate'. + +2004-05-16 Karl Berry + + * emacs.texi (ack.texi) [@ifnottex]: Change condition; with @ifinfo, + makeinfo --html fails. + * help.texi (Help Summary) [@ifnottex]: Likewise. + +2004-05-13 Nick Roberts + + * building.texi (GDB Graphical Interface): Update and describe + layout first. + +2004-05-04 Jason Rumney + + * makefile.w32-in: Revert last change. + +2004-05-03 Jason Rumney + + * makefile.w32-in (MULTI_INSTALL_INFO, ENVADD): Use forward slashes. + +2004-04-23 Juanma Barranquero + + * makefile.w32-in: Add "-*- makefile -*-" mode tag. + +2004-04-18 Juri Linkov + + * fixit.texi (Spelling): Remove file extension from ispell xref. + +2004-04-15 Kim F. Storm + + * cmdargs.texi (Initial Options): Add -Q. + +2004-04-05 Kim F. Storm + + * custom.texi (File Variables): Add safe-local-eval-forms. + +2004-04-02 Luc Teirlinck + + * files.texi (Reverting): Correct description of revert-buffer's + handling of point. + +2004-03-22 Juri Linkov + + * emacs.texi (Top): Add `Misc X'. + + * trouble.texi: Fix help key bindings. + + * glossary.texi: Improve references. + + * help.texi: Sync keywords with finder.el. + + * mini.texi (Completion): Add description for menu items. + + * misc.texi (Browse-URL, FFAP): Add information about keywords. + + * sending.texi (Mail Methods): Fix xref to Message manual. + +2004-03-12 Richard M. Stallman + + * buffers.texi (Misc Buffer): Add index entry for rename-uniquely. + +2004-03-04 Richard M. Stallman + + * search.texi (Regexps): Explain that ^ and $ have their + special meanings only in certain contexts. + + * programs.texi (Expressions): Doc C-M-SPC as alias for C-M-@. + + * mule.texi (Specify Coding): Doc C-x RET F. + + * buffers.texi (Misc Buffer): Explain use of M-x rename-uniquely + for multiple compile and grep buffers. + (Indirect Buffers): Don't recommand clone-indirect-buffer + for multiple compile and grep buffers. + +2004-02-29 Juanma Barranquero + + * makefile.w32-in (mostlyclean, clean, maintainer-clean): + Use $(DEL) instead of rm, and ignore exit code. + +2004-02-23 Nick Roberts + + * building.texi (Watch Expressions): Update. + +2004-02-21 Juri Linkov + + * cmdargs.texi (Action Arguments): Add alias --find-file. Add + --directory, --help, --version. Move text about command-line-args + to Command Arguments. + (Initial Options): Add @cindex for --script. Fix @cindex for -q. + Add --no-desktop. Add alias --no-multibyte, --no-unibyte. + (Window Size X): Join -g and --geometry. Add @cindex. + (Borders X): Fix @cindex for -ib. Add @cindex for -bw. + (Title X): Remove alias -title. + (Misc X): New node. + +2004-02-15 Jan Djärv + + * frames.texi (Drag and drop): Add Motif to list of supported + protocols. + +2004-02-03 Jan Djärv + + * frames.texi (Drag and drop): New section. + +2004-01-24 Richard M. Stallman + + * emacs.texi (Acknowledgments): Renamed from Acknowledgements. + Include it only @ifnotinfo. Patch the preceding and following + node headers to point to each other. + +2004-01-11 Glenn Morris + + * calendar.texi (Appointments): Update section. + +2003-12-29 Kevin Ryde + + * programs.texi (C Modes): Fix the xref. + +2003-12-23 Nick Roberts + + * building.texi (Watch Expressions): Update. + (Commands of GUD): Include use of toolbar + breakpoints set from + fringe/margin. + +2003-12-03 Andre Spiegel + + * files.texi: Say how to disable VC. Suggested by Alan Mackenzie + . + +2003-11-29 Jan Djärv + + * frames.texi (Dialog Boxes): Add use-file-dialog. + +2003-11-22 Martin Stjernholm + + * ack.texi: Note that Alan Mackenzie contributed the AWK support + in CC Mode. + +2003-11-02 Jesper Harder (tiny change) + + * man/ack.texi, man/basic.texi, man/cmdargs.texi: + * man/commands.texi, man/custom.texi, man/display.texi: + * man/emacs.texi, man/files.texi: + * man/frames.texi, man/glossary.texi, man/killing.texi: + * man/macos.texi, man/mark.texi, man/misc.texi, man/msdog.texi: + * man/mule.texi, man/rmail.texi, man/search.texi: + * man/sending.texi, man/text.texi, man/trouble.texi: + Replace @sc{ascii} and ASCII with @acronym{ASCII}. + +2003-11-01 Alan Mackenzie + + * search.texi (Scrolling During Incremental Search): Document a + new scrolling facility in isearch mode. + +2003-10-22 Miles Bader + + * Makefile.in (info): Move before $(top_srcdir)/info. + +2003-10-22 Nick Roberts + + * building.texi (Watch Expressions): Update section on data display + to reflect code changes (GDB Graphical Interface). + +2003-10-13 Richard M. Stallman + + * xresources.texi (GTK resources): Clean up previous change. + +2003-10-12 Jan Djärv + + * xresources.texi (GTK resources): Add a note that some themes + disallow customizations. Add scroll theme example. + +2003-09-30 Richard M. Stallman + + * cmdargs.texi (General Variables): Remove MAILRC envvar. + + * misc.texi (Saving Emacs Sessions): Shorten the section, + collapsing back into one node. + +2003-09-30 Lars Hansen + + * misc.texi: Section "Saving Emacs Sessions" rewritten. + +2003-09-29 Jan Djärv. + + * xresources.texi (GTK names in Emacs): Correct typo. + +2003-09-24 Luc Teirlinck + + * cmdargs.texi (Font X): Mention new default font. More + fully describe long font names, wildcard patterns and the + problems involved. (Result of discussion on emacs-devel.) + +2003-09-22 Luc Teirlinck + + * emacs.texi (Acknowledgements): Correct typo. + +2003-09-22 Richard M. Stallman + + * dired.texi (Misc Dired Commands): New node. + (Dired Navigation): Add dired-goto-file. + + * files.texi (File Aliases, Misc File Ops): Add @cindex entries. + + * emacs.texi (Acknowledgements): New node, split from Distribution. + + * cmdargs.texi (Action Arguments): -f reads interactive args. + +2003-09-08 Lute Kamstra + + * screen.texi (Mode Line): Say that POS comes before LINE. + Mention `size-indication-mode'. + * display.texi (Optional Mode Line): Document + `size-indication-mode'. + * basic.texi (Position Info): Mention `size-indication-mode'. + +2003-09-07 Luc Teirlinck + + * xresources.texi (Resources): Refer to `editres' man page. + (Lucid Resources): Update defaults. Expand description of + `shadowThickness'. + +2003-09-04 Miles Bader + + * Makefile.in (top_srcdir): New variable. + ($(top_srcdir)/info): New rule. + (info): Depend on it. + +2003-09-03 Peter Runestig + + * makefile.w32-in: New file. + +2003-08-29 Richard M. Stallman + + * misc.texi (Saving Emacs Sessions): Correct previous change. + +2003-08-19 Luc Teirlinck + + * emacs.texi (Top): Update menu to reflect new Keyboard Macros chapter. + (Intro): Include kmacro.texi after fixit.texi instead of after + custom.texi. (As suggested by Kim Storm.) + +2003-08-18 Luc Teirlinck + + * fixit.texi (Fixit): Update `Next' pointer. + * files.texi (Files): Update `Previous' pointer. + * kmacro.texi (Keyboard Macros): Remove redundant node and section. + * emacs.texi (Intro): Include kmacro.texi after custom.texi. + (Suggested by Kim Storm.) + * Makefile (EMACSSOURCES): Add kmacro.texi. (Suggested by Kim Storm.) + +2003-08-18 Kim F. Storm + + * kmacro.texi: New file describing enhanced keyboard macro + functionality. Replaces old description in custom.texi. + + * custom.texi (Customization): Add xref to Keyboard Macros chapter. + (Keyboard Macros): Move to new kmacro.texi file. + + * emacs.texi (Keyboard Macros): Reference new keyboard macro topics. + +2003-08-17 Edward M. Reingold + + * calendar.texi (Specified Dates): Add `calendar-goto-day-of-year'. + +2003-08-17 Alex Schroeder + + * misc.texi (Saving Emacs Sessions): Manual M-x desktop-save not + required. + +2003-08-05 Richard M. Stallman + + * programs.texi (Lisp Indent): Don't describe + lisp-indent-function property here. Use xref to Lisp Manual. + +2003-08-03 Glenn Morris + + * calendar.texi (Date Formats): Document changed behaviour of + abbreviations. + +2003-07-24 Markus Rost + + * buffers.texi (List Buffers): Fix previous change. + +2003-07-13 Markus Rost + + * buffers.texi (List Buffers): Adjust to new format of *Buffer + List*. + +2003-07-07 Luc Teirlinck + + * display.texi (Font Lock): Fix typo. + +2003-07-07 Richard M. Stallman + + * display.texi (Font Lock): Add xref for format info on + font-lock-remove-keywords. + + * building.texi (Compilation): Document what happens with asynch + children of compiler process. + + * help.texi (Library Keywords): Use @multitable. + +2003-06-04 Richard M. Stallman + + * programs.texi (Expressions): Delete C-M-DEL. + + * misc.texi (Shell Options): Clarify comint-scroll-show-maximum-output. + comint-move-point-for-output renamed from + comint-scroll-to-bottom-on-output. + + * custom.texi (Init Rebinding): Replace previous change with xref. + (Non-ASCII Rebinding): Explain that issue more briefly here. + +2003-05-28 Richard M. Stallman + + * indent.texi (Indentation): Condense, simplify, clarify prev change. + +2003-05-28 Nick Roberts + + * building.texi (GDB Graphical Interface): New node. + (Rewritten somewhat by RMS.) + +2003-05-28 Kai Großjohann + + * custom.texi (Init Rebinding): Xref Non-ASCII Rebinding, for + non-English letters. Explain how to set coding systems correctly + and how to include the right coding cookie in the file. + +2003-05-22 Kai Großjohann + + * indent.texi (Indentation): Explain the concepts. + (Just Spaces): Explain why preventing tabs for indentation might + be useful. + +2003-04-16 Richard M. Stallman + + * search.texi (Regexps): Ref to Lisp manual for more regexp features. + +2003-02-22 Alex Schroeder + + * cmdargs.texi (General Variables): Document SMTPSERVER. + + * sending.texi: Remove SMTP node. + (Mail Sending): Describe `send-mail-function'. Link to SMTP + library. + +2003-02-22 Alex Schroeder + + * sending.texi (Sending via SMTP): Explain MTA/MUA. + +2003-02-22 Simon Josefsson + + * sending.texi (Mail Methods): Add node about SMTP. + +2003-02-17 Jan Djärv + + * xresources.texi (GTK names in Emacs): Add emacs-toolbar - GtkToolbar. + +2003-02-01 Kevin Ryde + + * glossary.texi (Glossary): Correction to cl cross reference. + +2003-01-20 Richard M. Stallman + + * killing.texi (Rectangles): Document C-x c r. + +2003-01-19 Jan Djärv + + * xresources.texi (GTK resources): New node. + (GTK widget names): New node. + (GTK names in Emacs): New node. + (GTK styles): New node. + +2003-01-09 Francesco Potortì + + * maintaining.texi (Create Tags Table): Add reference to the new + `etags --help --lang=LANG' option. + +2002-10-02 Karl Berry + + * emacs.texi: Per rms, update all manuals to use @copying instead of + @ifinfo. Also use @ifnottex instead of @ifinfo around the top node, + where needed for the sake of the HTML output. + +2001-12-20 Eli Zaretskii + + * Makefile.in (EMACSSOURCES): Update the list of Emacs manual + source files. + +2001-11-16 Eli Zaretskii + + * Makefile.in (emacsman): New target. + +2001-10-20 Gerd Moellmann + + * (Version 21.1 released.) + +2001-10-05 Gerd Moellmann + + * Branch for 21.1. + +2001-03-05 Gerd Moellmann + + * Makefile.in (mostlyclean, maintainer-clean): Delete more files. + +2000-05-31 Stefan Monnier + + * .cvsignore (*.tmp): New entry. Seems to be used for @macro. + +1999-07-12 Richard Stallman + + * Version 20.4 released. + +1998-12-04 Markus Rost + + * Makefile.in (INFO_TARGETS): Delete customize.info. + (DVI_TARGETS): Delete customize.dvi. + (../info/customize, customize.dvi): Targets deleted. + +1998-08-19 Richard Stallman + + * Version 20.3 released. + +1998-05-06 Richard Stallman + + * Makefile.in (EMACSSOURCES): Add mule.texi. + Add msdog.texi, ack.texi. Remove gnu1.texi. + +1998-04-06 Andreas Schwab + + * Makefile.in (ENVADD): Enviroment vars to pass to texi2dvi. Use + it in dvi targets. + +1997-09-23 Paul Eggert + + * Makefile.in: Merge changes mistakenly made to `Makefile'. + (INFO_TARGETS): Change ../info/custom to ../info/customize. + (../info/customize): Rename from ../info/custom. + +1997-09-19 Richard Stallman + + * Version 20.2 released. + +1997-09-15 Richard Stallman + + * Version 20.1 released. + +1997-08-24 Richard Stallman + + * Makefile (../info/customize, customize.dvi): New targets. + (INFO_TARGETS): Add ../info/customize. + (DVI_TARGETS): Add customize.dvi. + +1996-08-11 Richard Stallman + + * Version 19.33 released. + +1996-07-31 Richard Stallman + + * Version 19.32 released. + +1996-06-20 Richard Stallman + + * Makefile.in (All info targets): cd $(srcdir) to do the work. + +1996-06-19 Richard Stallman + + * Makefile.in (All info targets): Specify $(srcdir) in input files. + Specify -I option. + (All dvi targets): Set the TEXINPUTS variable. + +1996-05-25 Karl Heuer + + * Version 19.31 released. + +1995-11-24 Richard Stallman + + * Version 19.30 released. + +1995-02-07 Richard Stallman + + * Makefile.in (maintainer-clean): Rename from realclean. + +1994-11-23 Richard Stallman + + * Makefile.in: New file. + * Makefile: File deleted. + +1994-11-19 Richard Stallman + + * Makefile (TEXINDEX_OBJS): Variable deleted. + (texindex, texindex.o, getopt.o): Rules deleted. + All deps on texindex deleted. + (distclean): Don't delete texindex. + (mostlyclean): Don't delete *.o. + * texindex.c, getopt.c: Files deleted. + +1994-09-07 Richard Stallman + + * Version 19.26 released. + +1994-07-02 Richard Stallman (rms@gnu.ai.mit.edu) + + * Makefile (EMACSSOURCES): Exclude undo.texi. + +1994-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.25 released. + +1994-05-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.24 released. + +1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.23 released. + +1994-04-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile: Delete spurious tab. + +1994-02-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (.SUFFIXES): New rule. + +1993-12-04 Richard Stallman (rms@srarc2) + + * getopt.c: New file. + * Makefile (TEXINDEX_OBJS): Use getopt.o in this dir, not ../lib-src. + (getopt.o): New rule. + (dvi): Don't depend on texindex. + (emacs.dvi): Depend on texindex. + +1993-12-03 Richard Stallman (rms@srarc2) + + * Makefile (TEXI2DVI): New variable. + (emacs.dvi): Add explicit command. + (TEXINDEX_OBJS): Delete duplicate getopt.o. + +1993-11-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.22 released. + +1993-11-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (TEXINDEX_OBJS): Delete spurious period. + +1993-11-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.21 released. + +1993-11-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (realclean): Don't delete the Info files. + +1993-10-25 Brian Fox (bfox@albert.gnu.ai.mit.edu) + + * frames.texi (Creating Frames): Mention `C-x 5' instead of `C-x + 4' where appropriate. + +1993-10-20 Brian Fox (bfox@ai.mit.edu) + + * Makefile: Fix targets for texindex. + + * texindex.c: Include "../src/config.h" if building in emacs. + + * Makefile: Change all files to FILENAME.texi, force all targets + to be FILENAME, not FILENAME.info. + Add target to build texindex.c, defining `emacs'. + +1993-08-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.19 released. + +1993-08-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.18 released. + +1993-07-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile: Fix source file names of the separate manuals. + +1993-07-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.17 released. + +1993-07-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * split-man: Fix typos in last change. + +1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.16 released. + +1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * version 19.15 released. + +1993-06-18 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Makefile (distclean): It's rm, not rf. + +1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.14 released. + +1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Makefile: New file. + +1993-06-08 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.13 released. + +1993-05-27 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.9 released. + +1993-05-25 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.8 released. + +1993-05-25 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * cmdargs.texi: Document the -i, -itype, and -iconic options. + + * trouble.texi: It's `enable-flow-control-on', not + `evade-flow-control-on'. + +1993-05-24 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * display.texi: Document standard-display-european. + +1993-05-22 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.7 released. + + * emacs.texi: Add a sentence to the top menu mentioning the + specific version of Emacs this manual applies to. + +1993-04-25 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) + + * basic.texi: Document next-line-add-lines variable used to + implement down-arrow. + + * killing.texi: Document kill-whole-line. + +1993-04-18 Noah Friedman (friedman@nutrimat.gnu.ai.mit.edu) + + * text.texi: Update unix TeX ordering information. + +1993-03-26 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) + + * news.texi: Mention fill-rectangle in keybinding list. + + * killing.texi: Document fill-rectangle. + +1993-03-17 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) + + * vc.texi: Bring the docs up to date with VC 5.2. + +1992-01-10 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) + + * emacs.tex: Mention blackbox and gomoku under Amusements. + Assembler mode is now mentioned and appropriately indexed + under Programming Modes. + +1991-02-15 Robert J. Chassell (bob@wookumz.ai.mit.edu) + + * emacs.tex: Update TeX ordering information. + +1990-06-26 David Lawrence (tale@geech) + + * emacs.tex: Note that completion-ignored-extensions is not used + to filter out names when all completions are displayed in + *Completions*. + +1990-05-25 Richard Stallman (rms@sugar-bombs.ai.mit.edu) + + * texindex.tex: If USG, include sys/types.h and sys/fcntl.h. + +1990-03-21 Jim Kingdon (kingdon@pogo.ai.mit.edu) + + * emacs.tex: Add @findex grep. + +1988-08-16 Robert J. Chassell (bob@frosted-flakes.ai.mit.edu) + + * emacs.tex: Correct two typos. No other changes before + Version 19 will be made. + +1988-05-23 Robert J. Chassell (bob@frosted-flakes.ai.mit.edu) + + * emacs.tex: Update information for obtaining TeX distribution from the + University of Washington. + +;; Local Variables: +;; coding: utf-8 +;; fill-column: 79 +;; add-log-time-zone-rule: t +;; End: + + Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, + 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + + This file is part of GNU Emacs. + + GNU Emacs is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + GNU Emacs is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNU Emacs; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +;;; arch-tag: f1d62776-3ed5-4811-9d96-267252577dbd diff --cc doc/emacs/custom.texi index 1d0d6668d6,0000000000..e270f86325 mode 100644,000000..100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi @@@ -1,2524 -1,0 +1,2526 @@@ +@c This is part of the Emacs manual. +@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, +@c 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@c See file emacs.texi for copying conditions. +@node Customization, Quitting, Amusements, Top +@chapter Customization +@cindex customization + + This chapter talks about various topics relevant to adapting the +behavior of Emacs in ways we have anticipated. +@iftex +See @cite{The Emacs Lisp Reference Manual} +@end iftex +@ifnottex +@xref{Top, Emacs Lisp, Emacs Lisp, elisp, The Emacs Lisp +Reference Manual}, +@end ifnottex +for how to make more far-reaching and open-ended changes. @xref{X +Resources}, for information on using X resources to customize Emacs. + + Customization that you do within Emacs normally affects only the +particular Emacs session that you do it in---it does not persist +between sessions unless you save the customization in a file such as +your init file (@file{.emacs}) that will affect future sessions. +(@xref{Init File}.) When you tell the customization buffer to save +customizations for future sessions, this actually works by editing +@file{.emacs} for you. + + Another means of customization is the keyboard macro, which is a +sequence of keystrokes to be replayed with a single command. +@xref{Keyboard Macros}, for full instruction how to record, manage, and +replay sequences of keys. + +@menu +* Minor Modes:: Each minor mode is one feature you can turn on + independently of any others. +* Easy Customization:: Convenient way to browse and change settings. +* Variables:: Many Emacs commands examine Emacs variables + to decide what to do; by setting variables, + you can control their functioning. +* Key Bindings:: The keymaps say what command each key runs. + By changing them, you can "redefine keys". +* Syntax:: The syntax table controls how words and + expressions are parsed. +* Init File:: How to write common customizations in the + @file{.emacs} file. +@end menu + +@node Minor Modes +@section Minor Modes +@cindex minor modes +@cindex mode, minor + + Minor modes are optional features which you can turn on or off. For +example, Auto Fill mode is a minor mode in which @key{SPC} breaks lines +between words as you type. All the minor modes are independent of each +other and of the selected major mode. Most minor modes say in the mode +line when they are enabled; for example, @samp{Fill} in the mode line means +that Auto Fill mode is enabled. + + You should append @code{-mode} to the name of a minor mode to +produce the name of the command that turns the mode on or off. Thus, +the command to enable or disable Auto Fill mode is called +@code{auto-fill-mode}. These commands are usually invoked with +@kbd{M-x}, but you can bind keys to them if you wish. + + With no argument, the minor mode function turns the mode on if it +was off, and off if it was on. This is known as @dfn{toggling}. A +positive argument always turns the mode on, and an explicit zero +argument or a negative argument always turns it off. + + Some minor modes are global: while enabled, they affect everything +you do in the Emacs session, in all buffers. Other minor modes are +buffer-local; they apply only to the current buffer, so you can enable +the mode in certain buffers and not others. + + For most minor modes, the command name is also the name of a +variable. The variable's value is non-@code{nil} if the mode is +enabled and @code{nil} if it is disabled. Some minor-mode commands +work by just setting the variable. For example, the command +@code{abbrev-mode} works by setting the value of @code{abbrev-mode} as +a variable; it is this variable that directly turns Abbrev mode on and +off. You can directly set the variable's value instead of calling the +mode function. For other minor modes, you need to either set the +variable through the Customize interface or call the mode function to +correctly enable or disable the mode. To check which of these two +possibilities applies to a given minor mode, use @kbd{C-h v} to ask +for documentation on the variable name. + + For minor mode commands that work by just setting the minor mode +variable, that variable provides a good way for Lisp programs to turn +minor modes on and off; it is also useful in a file's local variables +list (@pxref{File Variables}). But please think twice before setting +minor modes with a local variables list, because most minor modes are +a matter of user preference---other users editing the same file might +not want the same minor modes you prefer. + + The most useful buffer-local minor modes include Abbrev mode, Auto +Fill mode, Auto Save mode, Font-Lock mode, Glasses mode, Outline minor +mode, Overwrite mode, and Binary Overwrite mode. + + Abbrev mode allows you to define abbreviations that automatically expand +as you type them. For example, @samp{amd} might expand to @samp{abbrev +mode}. @xref{Abbrevs}, for full information. + + Auto Fill mode allows you to enter filled text without breaking lines +explicitly. Emacs inserts newlines as necessary to prevent lines from +becoming too long. @xref{Filling}. + + Auto Save mode saves the buffer contents periodically to reduce the +amount of work you can lose in case of a crash. @xref{Auto Save}. + + Enriched mode enables editing and saving of formatted text. +@xref{Formatted Text}. + + Flyspell mode automatically highlights misspelled words. +@xref{Spelling}. + + Font-Lock mode automatically highlights certain textual units found +in programs, such as comments, strings, and function names being +defined. This requires a display that can show multiple fonts or +colors. @xref{Faces}. + +@ignore + ISO Accents mode makes the characters @samp{`}, @samp{'}, @samp{"}, +@samp{^}, @samp{/} and @samp{~} combine with the following letter, to +produce an accented letter in the ISO Latin-1 character set. The +newer and more general feature of input methods more or less +supersedes ISO Accents mode. @xref{Unibyte Mode}. +@end ignore + + Outline minor mode provides the same facilities as the major mode +called Outline mode; but since it is a minor mode instead, you can +combine it with any major mode. @xref{Outline Mode}. + +@cindex Overwrite mode +@cindex mode, Overwrite + Overwrite mode causes ordinary printing characters to replace existing +text instead of shoving it to the right. For example, if point is in +front of the @samp{B} in @samp{FOOBAR}, then in Overwrite mode typing a +@kbd{G} changes it to @samp{FOOGAR}, instead of producing @samp{FOOGBAR} +as usual. In Overwrite mode, the command @kbd{C-q} inserts the next +character whatever it may be, even if it is a digit---this gives you a +way to insert a character instead of replacing an existing character. + +@findex overwrite-mode +@kindex INSERT + The command @code{overwrite-mode} is an exception to the rule that +commands which toggle minor modes are normally not bound to keys: it is +bound to the @key{INSERT} function key. This is because many other +programs bind @key{INSERT} to similar functions. + +@findex binary-overwrite-mode + Binary Overwrite mode is a variant of Overwrite mode for editing +binary files; it treats newlines and tabs like other characters, so that +they overwrite other characters and can be overwritten by them. +In Binary Overwrite mode, digits after @kbd{C-q} specify an +octal character code, as usual. + + Here are some useful minor modes that normally apply to all buffers +at once. Since Line Number mode and Transient Mark mode can be +enabled or disabled just by setting the value of the minor mode +variable, you @emph{can} set them differently for particular buffers, +by explicitly making the corresponding variable local in those +buffers. @xref{Locals}. + + Icomplete mode displays an indication of available completions when +you are in the minibuffer and completion is active. @xref{Completion +Options}. + + Line Number mode enables continuous display in the mode line of the +line number of point, and Column Number mode enables display of the +column number. @xref{Mode Line}. + + Scroll Bar mode gives each window a scroll bar (@pxref{Scroll Bars}). +Menu Bar mode gives each frame a menu bar (@pxref{Menu Bars}). Both of +these modes are enabled by default when you use the X Window System. + + In Transient Mark mode, every change in the buffer contents +``deactivates'' the mark, so that commands that operate on the region +will get an error. This means you must either set the mark, or +explicitly ``reactivate'' it, before each command that uses the region. +The advantage of Transient Mark mode is that Emacs can display the +region highlighted. @xref{Mark}. + +@node Easy Customization +@section Easy Customization Interface + +@cindex settings + Emacs has many @dfn{settings} which have values that you can specify +in order to customize various commands. Many are documented in this +manual. Most settings are @dfn{user options}---that is to say, Lisp +variables (@pxref{Variables})---so their names appear in the Variable +Index (@pxref{Variable Index}). The other settings are faces and +their attributes (@pxref{Faces}). + +@findex customize +@cindex customization buffer + You can browse interactively through settings and change them using +@kbd{M-x customize}. This command creates a @dfn{customization +buffer}, which offers commands to navigate through a logically +organized structure of the Emacs settings; you can also use it to edit +and set their values, and to save settings permanently in your +@file{~/.emacs} file (@pxref{Init File}). + + The appearance of the example buffers in this section is typically +different under a graphical display, since faces are then used to indicate +buttons, links and editable fields. + +@menu +* Groups: Customization Groups. How settings are classified in a structure. +* Browsing: Browsing Custom. Browsing and searching for settings. +* Changing a Variable:: How to edit an option's value and set the option. +* Saving Customizations:: Specifying the file for saving customizations. +* Face Customization:: How to edit the attributes of a face. +* Specific Customization:: Making a customization buffer for specific + variables, faces, or groups. +* Custom Themes:: How to define collections of customized options + that can be loaded and unloaded together. +@end menu + +@node Customization Groups +@subsection Customization Groups +@cindex customization groups + + For customization purposes, settings are organized into @dfn{groups} +to help you find them. Groups are collected into bigger groups, all +the way up to a master group called @code{Emacs}. + + @kbd{M-x customize} creates a customization buffer that shows the +top-level @code{Emacs} group and the second-level groups immediately +under it. It looks like this, in part: + +@c we want the buffer example to all be on one page, but unfortunately +@c that's quite a bit of text, so force all space to the bottom. +@page +@smallexample +@group +/- Emacs group: ---------------------------------------------------\ + [State]: visible group members are all at standard values. + Customization of the One True Editor. + See also [Manual]. + +Editing group: [Go to Group] +Basic text editing facilities. + +External group: [Go to Group] +Interfacing to external utilities. + +@var{more second-level groups} + +\- Emacs group end ------------------------------------------------/ +@end group +@end smallexample + +@noindent +This says that the buffer displays the contents of the @code{Emacs} +group. The other groups are listed because they are its contents. But +they are listed differently, without indentation and dashes, because +@emph{their} contents are not included. Each group has a single-line +documentation string; the @code{Emacs} group also has a @samp{[State]} +line. + +@cindex editable fields (customization buffer) +@cindex buttons (customization buffer) +@cindex links (customization buffer) + Most of the text in the customization buffer is read-only, but it +typically includes some @dfn{editable fields} that you can edit. +There are also @dfn{buttons} and @dfn{links}, which do something when +you @dfn{invoke} them. To invoke a button or a link, either click on +it with @kbd{Mouse-1}, or move point to it and type @key{RET}. + + For example, the phrase @samp{[State]} that appears in +a second-level group is a button. It operates on the same +customization buffer. The phrase @samp{[Go to Group]} is a kind +of hypertext link to another group. Invoking it creates a new +customization buffer, which shows that group and its contents. + + The @code{Emacs} group includes a few settings, but mainly it +contains other groups, which contain more groups, which contain the +settings. By browsing the hierarchy of groups, you will eventually +find the feature you are interested in customizing. Then you can use +the customization buffer to set that feature's settings. You can also +go straight to a particular group by name, using the command @kbd{M-x +customize-group}. + +@node Browsing Custom +@subsection Browsing and Searching for Options and Faces +@findex customize-browse + + @kbd{M-x customize-browse} is another way to browse the available +settings. This command creates a special customization buffer which +shows only the names of groups and settings, and puts them in a +structure. + + In this buffer, you can show the contents of a group by invoking the +@samp{[+]} button. When the group contents are visible, this button +changes to @samp{[-]}; invoking that hides the group contents again. + + Each group or setting in this buffer has a link which says +@samp{[Group]}, @samp{[Option]} or @samp{[Face]}. Invoking this link +creates an ordinary customization buffer showing just that group and +its contents, just that user option, or just that face. This is the +way to change settings that you find with @kbd{M-x customize-browse}. + + If you can guess part of the name of the settings you are interested +in, @kbd{M-x customize-apropos} is another way to search for settings. +However, unlike @code{customize} and @code{customize-browse}, +@code{customize-apropos} can only find groups and settings that are +loaded in the current Emacs session. @xref{Specific Customization,, +Customizing Specific Items}. + +@node Changing a Variable +@subsection Changing a Variable + + Here is an example of what a variable (a user option) looks like in +the customization buffer: + +@smallexample +Kill Ring Max: [Hide Value] 60 + [State]: STANDARD. +Maximum length of kill ring before oldest elements are thrown away. +@end smallexample + + The text following @samp{[Hide Value]}, @samp{60} in this case, indicates +the current value of the variable. If you see @samp{[Show Value]} instead of +@samp{[Hide Value]}, it means that the value is hidden; the customization +buffer initially hides values that take up several lines. Invoke +@samp{[Show Value]} to show the value. + + The line after the variable name indicates the @dfn{customization +state} of the variable: in the example above, it says you have not +changed the option yet. The @samp{[State]} button at the beginning of +this line gives you a menu of various operations for customizing the +variable. + + The line after the @samp{[State]} line displays the beginning of the +variable's documentation string. If there are more lines of +documentation, this line ends with a @samp{[More]} button; invoke that +to show the full documentation string. + + To enter a new value for @samp{Kill Ring Max}, move point to the +value and edit it textually. For example, you can type @kbd{M-d}, +then insert another number. As you begin to alter the text, you will +see the @samp{[State]} line change to say that you have edited the +value: + +@smallexample +[State]: EDITED, shown value does not take effect until you set or @r{@dots{}} + save it. +@end smallexample + +@cindex user options, how to set +@cindex variables, how to set +@cindex settings, how to set + Editing the value does not actually set the variable. To do that, +you must @dfn{set} the variable. To do this, invoke the +@samp{[State]} button and choose @samp{Set for Current Session}. + + The state of the variable changes visibly when you set it: + +@smallexample +[State]: SET for current session only. +@end smallexample + + You don't have to worry about specifying a value that is not valid; +the @samp{Set for Current Session} operation checks for validity and +will not install an unacceptable value. + +@kindex M-TAB @r{(customization buffer)} +@findex widget-complete + While editing a field that is a file name, directory name, +command name, or anything else for which completion is defined, you +can type @kbd{M-@key{TAB}} (@code{widget-complete}) to do completion. +(@kbd{@key{ESC} @key{TAB}} and @kbd{C-M-i} do the same thing.) + + Some variables have a small fixed set of possible legitimate values. +These variables don't let you edit the value textually. Instead, a +@samp{[Value Menu]} button appears before the value; invoke this +button to change the value. For a boolean ``on or off'' value, the +button says @samp{[Toggle]}, and it changes to the other value. +@samp{[Value Menu]} and @samp{[Toggle]} simply edit the buffer; the +changes take real effect when you use the @samp{Set for Current +Session} operation. + + Some variables have values with complex structure. For example, the +value of @code{file-coding-system-alist} is an association list. Here +is how it appears in the customization buffer: + +@smallexample +File Coding System Alist: [Hide Value] +[INS] [DEL] File regexp: \.elc\' + Choice: [Value Menu] Encoding/decoding pair: + Decoding: emacs-mule + Encoding: emacs-mule +[INS] [DEL] File regexp: \(\`\|/\)loaddefs.el\' + Choice: [Value Menu] Encoding/decoding pair: + Decoding: raw-text + Encoding: raw-text-unix +[INS] [DEL] File regexp: \.tar\' + Choice: [Value Menu] Encoding/decoding pair: + Decoding: no-conversion + Encoding: no-conversion +[INS] [DEL] File regexp: + Choice: [Value Menu] Encoding/decoding pair: + Decoding: undecided + Encoding: nil +[INS] + [State]: STANDARD. +Alist to decide a coding system to use for a file I/O @r{@dots{}} + operation. [Hide Rest] +The format is ((PATTERN . VAL) ...), +where PATTERN is a regular expression matching a file name, +@r{[@dots{}more lines of documentation@dots{}]} +@end smallexample + +@noindent +Each association in the list appears on four lines, with several +editable fields and/or buttons. You can edit the regexps and coding +systems using ordinary editing commands. You can also invoke +@samp{[Value Menu]} to switch to a different kind of value---for +instance, to specify a function instead of a pair of coding systems. + +To delete an association from the list, invoke the @samp{[DEL]} button +for that item. To add an association, invoke @samp{[INS]} at the +position where you want to add it. There is an @samp{[INS]} button +between each pair of associations, another at the beginning and another +at the end, so you can add a new association at any position in the +list. + +@kindex TAB @r{(customization buffer)} +@kindex S-TAB @r{(customization buffer)} +@findex widget-forward +@findex widget-backward + Two special commands, @key{TAB} and @kbd{S-@key{TAB}}, are useful +for moving through the customization buffer. @key{TAB} +(@code{widget-forward}) moves forward to the next button or editable +field; @kbd{S-@key{TAB}} (@code{widget-backward}) moves backward to +the previous button or editable field. + + Typing @key{RET} on an editable field also moves forward, just like +@key{TAB}. We set it up this way because people often type @key{RET} +when they are finished editing a field. To insert a newline within an +editable field, use @kbd{C-o} or @kbd{C-q C-j}. + +@cindex saving a setting +@cindex settings, how to save + Setting the variable changes its value in the current Emacs session; +@dfn{saving} the value changes it for future sessions as well. To +save the variable, invoke @samp{[State]} and select the @samp{Save for +Future Sessions} operation. This works by writing code so as to set +the variable again, each time you start Emacs (@pxref{Saving +Customizations}). + + You can also restore the variable to its standard value by invoking +@samp{[State]} and selecting the @samp{Erase Customization} operation. +There are actually four reset operations: + +@table @samp +@item Undo Edits +If you have made some modifications and not yet set the variable, +this restores the text in the customization buffer to match +the actual value. + +@item Reset to Saved +This restores the value of the variable to the last saved value, +and updates the text accordingly. + +@item Erase Customization +This sets the variable to its standard value, and updates the text +accordingly. This also eliminates any saved value for the variable, +so that you will get the standard value in future Emacs sessions. + +@item Set to Backup Value +This sets the variable to a previous value that was set in the +customization buffer in this session. If you customize a variable +and then reset it, which discards the customized value, +you can get the discarded value back again with this operation. +@end table + +@cindex comments on customized settings + Sometimes it is useful to record a comment about a specific +customization. Use the @samp{Add Comment} item from the +@samp{[State]} menu to create a field for entering the comment. The +comment you enter will be saved, and displayed again if you again view +the same variable in a customization buffer, even in another session. + + The state of a group indicates whether anything in that group has been +edited, set or saved. + + Near the top of the customization buffer there are two lines of buttons: + +@smallexample + [Set for Current Session] [Save for Future Sessions] + [Undo Edits] [Reset to Saved] [Erase Customization] [Finish] +@end smallexample + +@vindex custom-buffer-done-function +@noindent +Invoking @samp{[Finish]} either buries or kills this customization +buffer according to the setting of the option +@code{custom-buffer-done-kill}; the default is to bury the buffer. +Each of the other buttons performs an operation---set, save or +reset---on each of the settings in the buffer that could meaningfully +be set, saved or reset. They do not operate on settings whose values +are hidden, nor on subgroups which are hidden or not visible in the buffer. + +@node Saving Customizations +@subsection Saving Customizations + + Saving customizations from the customization buffer works by writing +code that future sessions will read, code to set up those +customizations again. + +@vindex custom-file + Normally this saves customizations in your init file, +@file{~/.emacs}. If you wish, you can save customizations in another +file instead. To make this work, your @file{~/.emacs} should set +@code{custom-file} to the name of that file. Then you should load the +file by calling @code{load}. For example: + +@example +(setq custom-file "~/.emacs-custom.el") +(load custom-file) +@end example + + You can use @code{custom-file} to specify different customization +files for different Emacs versions, like this: + +@example +(cond ((< emacs-major-version 21) + ;; @r{Emacs 20 customization.} + (setq custom-file "~/.custom-20.el")) + ((and (= emacs-major-version 21) (< emacs-minor-version 4)) + ;; @r{Emacs 21 customization, before version 21.4.} + (setq custom-file "~/.custom-21.el")) + ((< emacs-major-version 22) + ;; @r{Emacs version 21.4 or later.} + (setq custom-file "~/.custom-21.4.el")) + (t + ;; @r{Emacs version 22.1 or later.} + (setq custom-file "~/.custom-22.el"))) + +(load custom-file) +@end example + + If Emacs was invoked with the @option{-q} or @option{--no-init-file} +options (@pxref{Initial Options}), it will not let you save your +customizations in your @file{~/.emacs} init file. This is because +saving customizations from such a session would wipe out all the other +customizations you might have on your init file. + +@node Face Customization +@subsection Customizing Faces +@cindex customizing faces +@cindex bold font +@cindex italic font +@cindex fonts and faces + + In addition to variables, some customization groups also include +faces. When you show the contents of a group, both the variables and +the faces in the group appear in the customization buffer. Here is an +example of how a face looks: + +@smallexample +Custom Changed Face:(sample) [Hide Face] + [State]: STANDARD. +Face used when the customize item has been changed. +Parent groups: [Custom Magic Faces] +Attributes: [ ] Font Family: * + [ ] Width: * + [ ] Height: * + [ ] Weight: * + [ ] Slant: * + [ ] Underline: * + [ ] Overline: * + [ ] Strike-through: * + [ ] Box around text: * + [ ] Inverse-video: * + [X] Foreground: white (sample) + [X] Background: blue (sample) + [ ] Stipple: * + [ ] Inherit: * +@end smallexample + + Each face attribute has its own line. The @samp{[@var{x}]} button +before the attribute name indicates whether the attribute is +@dfn{enabled}; @samp{[X]} means that it's enabled, and @samp{[ ]} +means that it's disabled. You can enable or disable the attribute by +clicking that button. When the attribute is enabled, you can change +the attribute value in the usual ways. + + For the colors, you can specify a color name (use @kbd{M-x +list-colors-display} for a list of them) or a hexadecimal color +specification of the form @samp{#@var{rr}@var{gg}@var{bb}}. +(@samp{#000000} is black, @samp{#ff0000} is red, @samp{#00ff00} is +green, @samp{#0000ff} is blue, and @samp{#ffffff} is white.) On a +black-and-white display, the colors you can use for the background are +@samp{black}, @samp{white}, @samp{gray}, @samp{gray1}, and +@samp{gray3}. Emacs supports these shades of gray by using background +stipple patterns instead of a color. + + Setting, saving and resetting a face work like the same operations for +variables (@pxref{Changing a Variable}). + + A face can specify different appearances for different types of +display. For example, a face can make text red on a color display, but +use a bold font on a monochrome display. To specify multiple +appearances for a face, select @samp{For All Kinds of Displays} in the +menu you get from invoking @samp{[State]}. + +@findex modify-face + Another more basic way to set the attributes of a specific face is +with @kbd{M-x modify-face}. This command reads the name of a face, then +reads the attributes one by one. For the color and stipple attributes, +the attribute's current value is the default---type just @key{RET} if +you don't want to change that attribute. Type @samp{none} if you want +to clear out the attribute. + +@node Specific Customization +@subsection Customizing Specific Items + + Instead of finding the setting you want to change by navigating the +structure of groups, here are other ways to specify the settings that +you want to customize. + +@table @kbd +@item M-x customize-option @key{RET} @var{option} @key{RET} +Set up a customization buffer with just one user option variable, +@var{option}. +@item M-x customize-face @key{RET} @var{face} @key{RET} +Set up a customization buffer with just one face, @var{face}. +@item M-x customize-group @key{RET} @var{group} @key{RET} +Set up a customization buffer with just one group, @var{group}. +@item M-x customize-apropos @key{RET} @var{regexp} @key{RET} +Set up a customization buffer with all the settings and groups that +match @var{regexp}. +@item M-x customize-changed @key{RET} @var{version} @key{RET} +Set up a customization buffer with all the settings and groups +whose meaning has changed since Emacs version @var{version}. +@item M-x customize-saved +Set up a customization buffer containing all settings that you +have saved with customization buffers. +@item M-x customize-unsaved +Set up a customization buffer containing all settings that you have +set but not saved. +@end table + +@findex customize-option + If you want to alter a particular user option with the customization +buffer, and you know its name, you can use the command @kbd{M-x +customize-option} and specify the user option (variable) name. This +sets up the customization buffer with just one user option---the one +that you asked for. Editing, setting and saving the value work as +described above, but only for the specified user option. Minibuffer +completion is handy if you only know part of the name. However, this +command can only see options that have been loaded in the current +Emacs session. + +@findex customize-face + Likewise, you can modify a specific face, chosen by name, using +@kbd{M-x customize-face}. By default it operates on the face used +on the character after point. + +@findex customize-group + You can also set up the customization buffer with a specific group, +using @kbd{M-x customize-group}. The immediate contents of the chosen +group, including settings (user options and faces), and other groups, +all appear as well (even if not already loaded). However, the +subgroups' own contents are not included. + +@findex customize-apropos + For a more general way of controlling what to customize, you can use +@kbd{M-x customize-apropos}. You specify a regular expression as +argument; then all @emph{loaded} settings and groups whose names match +this regular expression are set up in the customization buffer. If +you specify an empty regular expression, this includes @emph{all} +loaded groups and settings---which takes a long time to set up. + +@findex customize-changed + When you upgrade to a new Emacs version, you might want to consider +customizing new settings, and settings whose meanings or default +values have changed. To do this, use @kbd{M-x customize-changed} and +specify a previous Emacs version number using the minibuffer. It +creates a customization buffer which shows all the settings and groups +whose definitions have been changed since the specified version, +loading them if necessary. + +@findex customize-saved +@findex customize-unsaved + If you change settings and then decide the change was a mistake, you +can use two special commands to revisit your previous changes. Use +@kbd{M-x customize-saved} to look at the settings that you have saved. +Use @kbd{M-x customize-unsaved} to look at the settings that you +have set but not saved. + +@node Custom Themes +@subsection Customization Themes +@cindex custom themes + + @dfn{Custom themes} are collections of settings that can be enabled +or disabled as a unit. You can use Custom themes to switch quickly +and easily between various collections of settings, and to transfer +such collections from one computer to another. + +@findex customize-create-theme + To define a Custom theme, use @kbd{M-x customize-create-theme}, +which brings up a buffer named @samp{*New Custom Theme*}. At the top +of the buffer is an editable field where you can specify the name of +the theme. Click on the button labelled @samp{Insert Variable} to add +a variable to the theme, and click on @samp{Insert Face} to add a +face. You can edit these values in the @samp{*New Custom Theme*} +buffer like in an ordinary Customize buffer. To remove an option from +the theme, click on its @samp{State} button and select @samp{Delete}. + +@vindex custom-theme-directory + After adding the desired options, click on @samp{Save Theme} to save +the Custom theme. This writes the theme definition to a file +@file{@var{foo}-theme.el} (where @var{foo} is the theme name you +supplied), in the directory @file{~/.emacs.d/}. You can specify the +directory by setting @code{custom-theme-directory}. + + You can view and edit the settings of a previously-defined theme by +clicking on @samp{Visit Theme} and specifying the theme name. You can +also import the variables and faces that you have set using Customize +by visiting the ``special'' theme named @samp{user}. This theme, which +records all the options that you set in the ordinary customization +buffer, is always enabled, and always takes precedence over all other +enabled Custom themes. Additionally, the @samp{user} theme is +recorded with code in your @file{.emacs} file, rather than a +@file{user-theme.el} file. + +@vindex custom-enabled-themes + Once you have defined a Custom theme, you can use it by customizing +the variable @code{custom-enabled-themes}. This is a list of Custom +themes that are @dfn{enabled}, or put into effect. If you set +@code{custom-enabled-themes} using the Customize interface, the theme +definitions are automatically loaded from the theme files, if they +aren't already. If you save the value of @code{custom-enabled-themes} +for future Emacs sessions, those Custom themes will be enabled +whenever Emacs is started up. + + If two enabled themes specify different values for an option, the +theme occurring earlier in @code{custom-enabled-themes} takes effect. + +@findex load-theme +@findex enable-theme +@findex disable-theme + You can temporarily enable a Custom theme with @kbd{M-x +enable-theme}. This prompts for a theme name in the minibuffer, loads +the theme from the theme file if necessary, and enables the theme. +You can @dfn{disable} any enabled theme with the command @kbd{M-x +disable-theme}; this returns the options specified in the theme to +their original values. To re-enable the theme, type @kbd{M-x +enable-theme} again. If a theme file is changed during your Emacs +session, you can reload it by typing @kbd{M-x load-theme}. (This also +enables the theme.) + +@node Variables +@section Variables +@cindex variable +@cindex option, user +@cindex user option + + A @dfn{variable} is a Lisp symbol which has a value. The symbol's +name is also called the name of the variable. A variable name can +contain any characters that can appear in a file, but conventionally +variable names consist of words separated by hyphens. A variable can +have a documentation string which describes what kind of value it should +have and how the value will be used. + + Emacs Lisp allows any variable (with a few exceptions) to have any +kind of value, but most variables that Emacs uses expect a value of a +certain type. Often the value should always be a string, or should +always be a number. Sometimes we say that a certain feature is turned +on if a variable is ``non-@code{nil},'' meaning that if the variable's +value is @code{nil}, the feature is off, but the feature is on for +@emph{any} other value. The conventional value to use to turn on the +feature---since you have to pick one particular value when you set the +variable---is @code{t}. + + Emacs uses many Lisp variables for internal record keeping, but the +most interesting variables for a non-programmer user are those meant +for users to change---these are called @dfn{user options}. + + Each user option that you can set with the customization buffer is +in fact a Lisp variable. Emacs does not (usually) change the values +of these variables on its own; instead, you set the values in order to +control the behavior of certain Emacs commands. Use of the +customization buffer is explained above (@pxref{Easy Customization}); +here we describe other aspects of Emacs variables. + +@menu +* Examining:: Examining or setting one variable's value. +* Hooks:: Hook variables let you specify programs for parts + of Emacs to run on particular occasions. +* Locals:: Per-buffer values of variables. +* File Variables:: How files can specify variable values. +@end menu + +@node Examining +@subsection Examining and Setting Variables +@cindex setting variables + +@table @kbd +@item C-h v @var{var} @key{RET} +Display the value and documentation of variable @var{var} +(@code{describe-variable}). +@item M-x set-variable @key{RET} @var{var} @key{RET} @var{value} @key{RET} +Change the value of variable @var{var} to @var{value}. +@end table + + To examine the value of a single variable, use @kbd{C-h v} +(@code{describe-variable}), which reads a variable name using the +minibuffer, with completion. It displays both the value and the +documentation of the variable. For example, + +@example +C-h v fill-column @key{RET} +@end example + +@noindent +displays something like this: + +@smallexample +fill-column is a variable defined in `C source code'. +fill-column's value is 70 +Local in buffer custom.texi; global value is 70 +Automatically becomes buffer-local when set in any fashion. + +This variable is safe to use as a file local variable only if its value +satisfies the predicate `integerp'. + +Documentation: +*Column beyond which automatic line-wrapping should happen. +Interactively, you can set the buffer local value using C-x f. + +You can customize this variable. +@end smallexample + +@noindent +The line that says you can customize the variable indicates that this +variable is a user option. (The star also indicates this, but it is +an obsolete indicator that may eventually disappear.) @kbd{C-h v} is +not restricted to user options; it allows any variable name. + +@findex set-variable +The most convenient way to set a specific user option variable is with +@kbd{M-x set-variable}. This reads the variable name with the +minibuffer (with completion), and then reads a Lisp expression for the +new value using the minibuffer a second time (you can insert the old +value into the minibuffer for editing via @kbd{M-n}). For example, + +@example +M-x set-variable @key{RET} fill-column @key{RET} 75 @key{RET} +@end example + +@noindent +sets @code{fill-column} to 75. + + @kbd{M-x set-variable} is limited to user option variables, but you can +set any variable with a Lisp expression, using the function @code{setq}. +Here is a @code{setq} expression to set @code{fill-column}: + +@example +(setq fill-column 75) +@end example + + To execute an expression like this one, go to the @samp{*scratch*} +buffer, type in the expression, and then type @kbd{C-j}. @xref{Lisp +Interaction}. + + Setting variables, like all means of customizing Emacs except where +otherwise stated, affects only the current Emacs session. The only +way to alter the variable in future sessions is to put something in +the @file{~/.emacs} file to set it those sessions (@pxref{Init File}). + +@node Hooks +@subsection Hooks +@cindex hook +@cindex running a hook + + @dfn{Hooks} are an important mechanism for customization of Emacs. A +hook is a Lisp variable which holds a list of functions, to be called on +some well-defined occasion. (This is called @dfn{running the hook}.) +The individual functions in the list are called the @dfn{hook functions} +of the hook. With rare exceptions, hooks in Emacs are empty when Emacs +starts up, so the only hook functions in any given hook are the ones you +explicitly put there as customization. + + Most major modes run one or more @dfn{mode hooks} as the last step of +initialization. This makes it easy for you to customize the behavior of +the mode, by setting up a hook function to override the local variable +assignments already made by the mode. But hooks are also used in other +contexts. For example, the hook @code{suspend-hook} runs just before +Emacs suspends itself (@pxref{Exiting}). + +@cindex normal hook + Most Emacs hooks are @dfn{normal hooks}. This means that running the +hook operates by calling all the hook functions, unconditionally, with +no arguments. We have made an effort to keep most hooks normal so that +you can use them in a uniform way. Every variable in Emacs whose name +ends in @samp{-hook} is a normal hook. + +@cindex abnormal hook + There are also a few @dfn{abnormal hooks}. These variables' names end +in @samp{-hooks} or @samp{-functions}, instead of @samp{-hook}. What +makes these hooks abnormal is that there is something peculiar about the +way its functions are called---perhaps they are given arguments, or +perhaps the values they return are used in some way. For example, +@code{find-file-not-found-functions} (@pxref{Visiting}) is abnormal because +as soon as one hook function returns a non-@code{nil} value, the rest +are not called at all. The documentation of each abnormal hook variable +explains in detail what is peculiar about it. + +@findex add-hook + You can set a hook variable with @code{setq} like any other Lisp +variable, but the recommended way to add a hook function to a hook +(either normal or abnormal) is by calling @code{add-hook}. +@xref{Hooks,,, elisp, The Emacs Lisp Reference Manual}. + + For example, here's how to set up a hook to turn on Auto Fill mode +when entering Text mode and other modes based on Text mode: + +@example +(add-hook 'text-mode-hook 'turn-on-auto-fill) +@end example + + The next example shows how to use a hook to customize the indentation +of C code. (People often have strong personal preferences for one +format compared to another.) Here the hook function is an anonymous +lambda expression. + +@example +@group +(setq my-c-style + '((c-comment-only-line-offset . 4) +@end group +@group + (c-cleanup-list . (scope-operator + empty-defun-braces + defun-close-semi)) +@end group +@group + (c-offsets-alist . ((arglist-close . c-lineup-arglist) + (substatement-open . 0))))) +@end group + +@group +(add-hook 'c-mode-common-hook + '(lambda () + (c-add-style "my-style" my-c-style t))) +@end group +@end example + + It is best to design your hook functions so that the order in which +they are executed does not matter. Any dependence on the order is +``asking for trouble.'' However, the order is predictable: the most +recently added hook functions are executed first. + +@findex remove-hook + If you play with adding various different versions of a hook +function by calling @code{add-hook} over and over, remember that all +the versions you added will remain in the hook variable together. You +can clear out individual functions by calling @code{remove-hook}, or +do @code{(setq @var{hook-variable} nil)} to remove everything. + +@node Locals +@subsection Local Variables + +@table @kbd +@item M-x make-local-variable @key{RET} @var{var} @key{RET} +Make variable @var{var} have a local value in the current buffer. +@item M-x kill-local-variable @key{RET} @var{var} @key{RET} +Make variable @var{var} use its global value in the current buffer. +@item M-x make-variable-buffer-local @key{RET} @var{var} @key{RET} +Mark variable @var{var} so that setting it will make it local to the +buffer that is current at that time. +@end table + +@cindex local variables + Almost any variable can be made @dfn{local} to a specific Emacs +buffer. This means that its value in that buffer is independent of its +value in other buffers. A few variables are always local in every +buffer. Every other Emacs variable has a @dfn{global} value which is in +effect in all buffers that have not made the variable local. + +@findex make-local-variable + @kbd{M-x make-local-variable} reads the name of a variable and makes +it local to the current buffer. Changing its value subsequently in +this buffer will not affect others, and changes in its global value +will not affect this buffer. + +@findex make-variable-buffer-local +@cindex per-buffer variables + @kbd{M-x make-variable-buffer-local} marks a variable so it will +become local automatically whenever it is set. More precisely, once a +variable has been marked in this way, the usual ways of setting the +variable automatically do @code{make-local-variable} first. We call +such variables @dfn{per-buffer} variables. Many variables in Emacs +are normally per-buffer; the variable's document string tells you when +this is so. A per-buffer variable's global value is normally never +effective in any buffer, but it still has a meaning: it is the initial +value of the variable for each new buffer. + + Major modes (@pxref{Major Modes}) always make variables local to the +buffer before setting the variables. This is why changing major modes +in one buffer has no effect on other buffers. Minor modes also work +by setting variables---normally, each minor mode has one controlling +variable which is non-@code{nil} when the mode is enabled +(@pxref{Minor Modes}). For many minor modes, the controlling variable +is per buffer, and thus always buffer-local. Otherwise, you can make +it local in a specific buffer like any other variable. + + A few variables cannot be local to a buffer because they are always +local to each display instead (@pxref{Multiple Displays}). If you try to +make one of these variables buffer-local, you'll get an error message. + +@findex kill-local-variable + @kbd{M-x kill-local-variable} makes a specified variable cease to be +local to the current buffer. The global value of the variable +henceforth is in effect in this buffer. Setting the major mode kills +all the local variables of the buffer except for a few variables +specially marked as @dfn{permanent locals}. + +@findex setq-default + To set the global value of a variable, regardless of whether the +variable has a local value in the current buffer, you can use the Lisp +construct @code{setq-default}. This construct is used just like +@code{setq}, but it sets variables' global values instead of their local +values (if any). When the current buffer does have a local value, the +new global value may not be visible until you switch to another buffer. +Here is an example: + +@example +(setq-default fill-column 75) +@end example + +@noindent +@code{setq-default} is the only way to set the global value of a variable +that has been marked with @code{make-variable-buffer-local}. + +@findex default-value + Lisp programs can use @code{default-value} to look at a variable's +default value. This function takes a symbol as argument and returns its +default value. The argument is evaluated; usually you must quote it +explicitly. For example, here's how to obtain the default value of +@code{fill-column}: + +@example +(default-value 'fill-column) +@end example + +@node File Variables +@subsection Local Variables in Files +@cindex local variables in files +@cindex file local variables + + A file can specify local variable values for use when you edit the +file with Emacs. Visiting the file checks for local variable +specifications; it automatically makes these variables local to the +buffer, and sets them to the values specified in the file. + +@menu +* Specifying File Variables:: Specifying file local variables. +* Safe File Variables:: Making sure file local variables are safe. +@end menu + +@node Specifying File Variables +@subsubsection Specifying File Variables + + There are two ways to specify file local variable values: in the first +line, or with a local variables list. Here's how to specify them in the +first line: + +@example +-*- mode: @var{modename}; @var{var}: @var{value}; @dots{} -*- +@end example + +@noindent +You can specify any number of variables/value pairs in this way, each +pair with a colon and semicolon as shown above. @code{mode: +@var{modename};} specifies the major mode; this should come first in the +line. The @var{value}s are not evaluated; they are used literally. +Here is an example that specifies Lisp mode and sets two variables with +numeric values: + +@smallexample +;; -*- mode: Lisp; fill-column: 75; comment-column: 50; -*- +@end smallexample + + You can also specify the coding system for a file in this way: just +specify a value for the ``variable'' named @code{coding}. The ``value'' +must be a coding system name that Emacs recognizes. @xref{Coding +Systems}. @w{@samp{unibyte: t}} specifies unibyte loading for a +particular Lisp file. @xref{Enabling Multibyte}. + + The @code{eval} pseudo-variable, described below, can be specified in +the first line as well. + +@cindex shell scripts, and local file variables +@cindex man pages, and local file variables + In shell scripts, the first line is used to identify the script +interpreter, so you cannot put any local variables there. To +accommodate this, Emacs looks for local variable specifications in the +@emph{second} line when the first line specifies an interpreter. +The same is true for man pages which start with the magic string +@samp{'\"} to specify a list of troff preprocessors (not all do, +however). + + A @dfn{local variables list} goes near the end of the file, in the +last page. (It is often best to put it on a page by itself.) The local +variables list starts with a line containing the string @samp{Local +Variables:}, and ends with a line containing the string @samp{End:}. In +between come the variable names and values, one set per line, as +@samp{@var{variable}:@: @var{value}}. The @var{value}s are not +evaluated; they are used literally. If a file has both a local +variables list and a @samp{-*-} line, Emacs processes @emph{everything} +in the @samp{-*-} line first, and @emph{everything} in the local +variables list afterward. + + Here is an example of a local variables list: + +@example +;; Local Variables: ** +;; mode:lisp ** +;; comment-column:0 ** +;; comment-start: ";; " ** +;; comment-end:"**" ** +;; End: ** +@end example + + Each line starts with the prefix @samp{;; } and each line ends with +the suffix @samp{ **}. Emacs recognizes these as the prefix and +suffix based on the first line of the list, by finding them +surrounding the magic string @samp{Local Variables:}; then it +automatically discards them from the other lines of the list. + + The usual reason for using a prefix and/or suffix is to embed the +local variables list in a comment, so it won't confuse other programs +that the file is intended as input for. The example above is for a +language where comment lines start with @samp{;; } and end with +@samp{**}; the local values for @code{comment-start} and +@code{comment-end} customize the rest of Emacs for this unusual +syntax. Don't use a prefix (or a suffix) if you don't need one. + + If you write a multi-line string value, you should put the prefix +and suffix on each line, even lines that start or end within the +string. They will be stripped off for processing the list. If you +want to split a long string across multiple lines of the file, you can +use backslash-newline, which is ignored in Lisp string constants. +Here's an example of doing this: + +@example +# Local Variables: +# compile-command: "cc foo.c -Dfoo=bar -Dhack=whatever \ +# -Dmumble=blaah" +# End: +@end example + + Some ``variable names'' have special meanings in a local variables +list. Specifying the ``variable'' @code{mode} really sets the major +mode, while any value specified for the ``variable'' @code{eval} is +simply evaluated as an expression (its value is ignored). A value for +@code{coding} specifies the coding system for character code +conversion of this file, and a value of @code{t} for @code{unibyte} +says to visit the file in a unibyte buffer. These four ``variables'' +are not really variables; setting them in any other context has no +special meaning. + + @emph{If @code{mode} is used to set a major mode, it should be the +first ``variable'' in the list.} Otherwise, the entries that precede +it will usually be ignored, since most modes kill all local variables +as part of their initialization. + + You can use the @code{mode} ``variable'' to set minor modes as well +as the major modes; in fact, you can use it more than once, first to +set the major mode and then to set minor modes which are specific to +particular buffers. But most minor modes should not be specified in +the file at all, because they represent user preferences. + + For example, you may be tempted to try to turn on Auto Fill mode with +a local variable list. That is a mistake. The choice of Auto Fill mode +or not is a matter of individual taste, not a matter of the contents of +particular files. If you want to use Auto Fill, set up major mode hooks +with your @file{.emacs} file to turn it on (when appropriate) for you +alone (@pxref{Init File}). Don't use a local variable list to impose +your taste on everyone. + + The start of the local variables list must be no more than 3000 +characters from the end of the file, and must be in the last page if the +file is divided into pages. Otherwise, Emacs will not notice it is +there. The purpose of this rule is so that a stray @samp{Local +Variables:}@: not in the last page does not confuse Emacs, and so that +visiting a long file that is all one page and has no local variables +list need not take the time to search the whole file. + + Use the command @code{normal-mode} to reset the local variables and +major mode of a buffer according to the file name and contents, +including the local variables list if any. @xref{Choosing Modes}. + +@node Safe File Variables +@subsubsection Safety of File Variables + + File-local variables can be dangerous; when you visit someone else's +file, there's no telling what its local variables list could do to +your Emacs. Improper values of the @code{eval} ``variable,'' and +other variables such as @code{load-path}, could execute Lisp code you +didn't intend to run. + + Therefore, whenever Emacs encounters file local variable values that +are not known to be safe, it displays the file's entire local +variables list, and asks you for confirmation before setting them. +You can type @kbd{y} or @key{SPC} to put the local variables list into +effect, or @kbd{n} to ignore it. When Emacs is run in batch mode +(@pxref{Initial Options}), it can't really ask you, so it assumes the +answer @kbd{n}. + + Emacs normally recognizes certain variables/value pairs as safe. +For instance, it is safe to give @code{comment-column} or +@code{fill-column} any integer value. If a file specifies only +known-safe variable/value pairs, Emacs does not ask for confirmation +before setting them. Otherwise, you can tell Emacs to record all the +variable/value pairs in this file as safe, by typing @kbd{!} at the +confirmation prompt. When Emacs encounters these variable/value pairs +subsequently, in the same file or others, it will assume they are +safe. + +@vindex safe-local-variable-values +@cindex risky variable + Some variables, such as @code{load-path}, are considered +particularly @dfn{risky}: there is seldom any reason to specify them +as local variables, and changing them can be dangerous. If a file +contains only risky local variables, Emacs neither offers nor accepts +@kbd{!} as input at the confirmation prompt. If some of the local +variables in a file are risky, and some are only potentially unsafe, you +can enter @kbd{!} at the prompt. It applies all the variables, but only +marks the non-risky ones as safe for the future. If you really want to +record safe values for risky variables, do it directly by customizing +@samp{safe-local-variable-values} (@pxref{Easy Customization}). + +@vindex enable-local-variables + The variable @code{enable-local-variables} allows you to change the +way Emacs processes local variables. Its default value is @code{t}, +which specifies the behavior described above. If it is @code{nil}, +Emacs simply ignores all file local variables. @code{:safe} means use +only the safe values and ignore the rest. Any other value says to +query you about each file that has local variables, without trying to +determine whether the values are known to be safe. + +@vindex enable-local-eval + The variable @code{enable-local-eval} controls whether Emacs +processes @code{eval} variables. The three possibilities for the +variable's value are @code{t}, @code{nil}, and anything else, just as +for @code{enable-local-variables}. The default is @code{maybe}, which +is neither @code{t} nor @code{nil}, so normally Emacs does ask for +confirmation about processing @code{eval} variables. + +@vindex safe-local-eval-forms + But there is an exception. The @code{safe-local-eval-forms} is a +customizable list of eval forms which are safe. Emacs does not ask +for confirmation when it finds these forms for the @code{eval} +variable. + +@node Key Bindings +@section Customizing Key Bindings +@cindex key bindings + + This section describes @dfn{key bindings}, which map keys to commands, +and @dfn{keymaps}, which record key bindings. It also explains how +to customize key bindings. + + Recall that a command is a Lisp function whose definition provides for +interactive use. Like every Lisp function, a command has a function +name, which usually consists of lower-case letters and hyphens. + +@menu +* Keymaps:: Generalities. The global keymap. +* Prefix Keymaps:: Keymaps for prefix keys. +* Local Keymaps:: Major and minor modes have their own keymaps. +* Minibuffer Maps:: The minibuffer uses its own local keymaps. +* Rebinding:: How to redefine one key's meaning conveniently. +* Init Rebinding:: Rebinding keys with your init file, @file{.emacs}. +* Function Keys:: Rebinding terminal function keys. +* Named ASCII Chars:: Distinguishing @key{TAB} from @kbd{C-i}, and so on. +* Mouse Buttons:: Rebinding mouse buttons in Emacs. +* Disabling:: Disabling a command means confirmation is required + before it can be executed. This is done to protect + beginners from surprises. +@end menu + +@node Keymaps +@subsection Keymaps +@cindex keymap + + The bindings between key sequences and command functions are recorded +in data structures called @dfn{keymaps}. Emacs has many of these, each +used on particular occasions. + + Recall that a @dfn{key sequence} (@dfn{key}, for short) is a sequence +of @dfn{input events} that have a meaning as a unit. Input events +include characters, function keys and mouse buttons---all the inputs +that you can send to the computer with your terminal. A key sequence +gets its meaning from its @dfn{binding}, which says what command it +runs. The function of keymaps is to record these bindings. + +@cindex global keymap + The @dfn{global} keymap is the most important keymap because it is +always in effect. The global keymap defines keys for Fundamental mode; +most of these definitions are common to most or all major modes. Each +major or minor mode can have its own keymap which overrides the global +definitions of some keys. + + For example, a self-inserting character such as @kbd{g} is +self-inserting because the global keymap binds it to the command +@code{self-insert-command}. The standard Emacs editing characters such +as @kbd{C-a} also get their standard meanings from the global keymap. +Commands to rebind keys, such as @kbd{M-x global-set-key}, actually work +by storing the new binding in the proper place in the global map. +@xref{Rebinding}. + + Meta characters work differently; Emacs translates each Meta +character into a pair of characters starting with @key{ESC}. When you +type the character @kbd{M-a} in a key sequence, Emacs replaces it with +@kbd{@key{ESC} a}. A meta key comes in as a single input event, but +becomes two events for purposes of key bindings. The reason for this is +historical, and we might change it someday. + +@cindex function key + Most modern keyboards have function keys as well as character keys. +Function keys send input events just as character keys do, and keymaps +can have bindings for them. + + On text terminals, typing a function key actually sends the computer a +sequence of characters; the precise details of the sequence depends on +which function key and on the model of terminal you are using. (Often +the sequence starts with @kbd{@key{ESC} [}.) If Emacs understands your +terminal type properly, it recognizes the character sequences forming +function keys wherever they occur in a key sequence (not just at the +beginning). Thus, for most purposes, you can pretend the function keys +reach Emacs directly and ignore their encoding as character sequences. + +@cindex mouse + Mouse buttons also produce input events. These events come with other +data---the window and position where you pressed or released the button, +and a time stamp. But only the choice of button matters for key +bindings; the other data matters only if a command looks at it. +(Commands designed for mouse invocation usually do look at the other +data.) + + A keymap records definitions for single events. Interpreting a key +sequence of multiple events involves a chain of keymaps. The first +keymap gives a definition for the first event; this definition is +another keymap, which is used to look up the second event in the +sequence, and so on. + + Key sequences can mix function keys and characters. For example, +@kbd{C-x @key{SELECT}} is meaningful. If you make @key{SELECT} a prefix +key, then @kbd{@key{SELECT} C-n} makes sense. You can even mix mouse +events with keyboard events, but we recommend against it, because such +key sequences are inconvenient to use. + + As a user, you can redefine any key; but it is usually best to stick +to key sequences that consist of @kbd{C-c} followed by a letter (upper +or lower case). These keys are ``reserved for users,'' so they won't +conflict with any properly designed Emacs extension. The function +keys @key{F5} through @key{F9} are also reserved for users. If you +redefine some other key, your definition may be overridden by certain +extensions or major modes which redefine the same key. + +@node Prefix Keymaps +@subsection Prefix Keymaps + + A prefix key such as @kbd{C-x} or @key{ESC} has its own keymap, +which holds the definition for the event that immediately follows +that prefix. + + The definition of a prefix key is usually the keymap to use for +looking up the following event. The definition can also be a Lisp +symbol whose function definition is the following keymap; the effect is +the same, but it provides a command name for the prefix key that can be +used as a description of what the prefix key is for. Thus, the binding +of @kbd{C-x} is the symbol @code{Control-X-prefix}, whose function +definition is the keymap for @kbd{C-x} commands. The definitions of +@kbd{C-c}, @kbd{C-x}, @kbd{C-h} and @key{ESC} as prefix keys appear in +the global map, so these prefix keys are always available. + + Aside from ordinary prefix keys, there is a fictitious ``prefix key'' +which represents the menu bar; see @ref{Menu Bar,,,elisp, The Emacs Lisp +Reference Manual}, for special information about menu bar key bindings. +Mouse button events that invoke pop-up menus are also prefix keys; see +@ref{Menu Keymaps,,,elisp, The Emacs Lisp Reference Manual}, for more +details. + + Some prefix keymaps are stored in variables with names: + +@itemize @bullet +@item +@vindex ctl-x-map +@code{ctl-x-map} is the variable name for the map used for characters that +follow @kbd{C-x}. +@item +@vindex help-map +@code{help-map} is for characters that follow @kbd{C-h}. +@item +@vindex esc-map +@code{esc-map} is for characters that follow @key{ESC}. Thus, all Meta +characters are actually defined by this map. +@item +@vindex ctl-x-4-map +@code{ctl-x-4-map} is for characters that follow @kbd{C-x 4}. +@item +@vindex mode-specific-map +@code{mode-specific-map} is for characters that follow @kbd{C-c}. +@end itemize + +@node Local Keymaps +@subsection Local Keymaps + +@cindex local keymap + So far we have explained the ins and outs of the global map. Major +modes customize Emacs by providing their own key bindings in @dfn{local +keymaps}. For example, C mode overrides @key{TAB} to make it indent the +current line for C code. Portions of text in the buffer can specify +their own keymaps to substitute for the keymap of the buffer's major +mode. + +@cindex minor mode keymap + Minor modes can also have local keymaps. Whenever a minor mode is +in effect, the definitions in its keymap override both the major +mode's local keymap and the global keymap. + + A local keymap can locally redefine a key as a prefix key by defining +it as a prefix keymap. If the key is also defined globally as a prefix, +then its local and global definitions (both keymaps) effectively +combine: both of them are used to look up the event that follows the +prefix key. Thus, if the mode's local keymap defines @kbd{C-c} as +another keymap, and that keymap defines @kbd{C-z} as a command, this +provides a local meaning for @kbd{C-c C-z}. This does not affect other +sequences that start with @kbd{C-c}; if those sequences don't have their +own local bindings, their global bindings remain in effect. + + Another way to think of this is that Emacs handles a multi-event key +sequence by looking in several keymaps, one by one, for a binding of the +whole key sequence. First it checks the minor mode keymaps for minor +modes that are enabled, then it checks the major mode's keymap, and then +it checks the global keymap. This is not precisely how key lookup +works, but it's good enough for understanding the results in ordinary +circumstances. + +@cindex rebinding major mode keys + Most major modes construct their keymaps when the mode is used for +the first time in a session. If you wish to change one of these +keymaps, you must use the major mode's @dfn{mode hook} +(@pxref{Hooks}). + +@findex define-key + For example, the command @code{texinfo-mode} to select Texinfo mode +runs the hook @code{texinfo-mode-hook}. Here's how you can use the hook +to add local bindings (not very useful, we admit) for @kbd{C-c n} and +@kbd{C-c p} in Texinfo mode: + +@example +(add-hook 'texinfo-mode-hook + '(lambda () + (define-key texinfo-mode-map "\C-cp" + 'backward-paragraph) + (define-key texinfo-mode-map "\C-cn" + 'forward-paragraph))) +@end example + +@node Minibuffer Maps +@subsection Minibuffer Keymaps + +@cindex minibuffer keymaps +@vindex minibuffer-local-map +@vindex minibuffer-local-ns-map +@vindex minibuffer-local-completion-map +@vindex minibuffer-local-must-match-map +@vindex minibuffer-local-filename-completion-map +@vindex minibuffer-local-must-match-filename-map + The minibuffer has its own set of local keymaps; they contain various +completion and exit commands. + +@itemize @bullet +@item +@code{minibuffer-local-map} is used for ordinary input (no completion). +@item +@code{minibuffer-local-ns-map} is similar, except that @key{SPC} exits +just like @key{RET}. This is used mainly for Mocklisp compatibility. +@item +@code{minibuffer-local-completion-map} is for permissive completion. +@item +@code{minibuffer-local-must-match-map} is for strict completion and +for cautious completion. +@item +Finally, @code{minibuffer-local-filename-completion-map} and +@code{minibuffer-local-must-match-filename-map} are like the two +previous ones, but they are specifically for file name completion. +They do not bind @key{SPC}. +@end itemize + +@node Rebinding +@subsection Changing Key Bindings Interactively +@cindex key rebinding, this session +@cindex redefining keys, this session + + The way to redefine an Emacs key is to change its entry in a keymap. +You can change the global keymap, in which case the change is effective in +all major modes (except those that have their own overriding local +definitions for the same key). Or you can change the current buffer's +local map, which affects all buffers using the same major mode. + +@findex global-set-key +@findex local-set-key +@findex global-unset-key +@findex local-unset-key +@table @kbd +@item M-x global-set-key @key{RET} @var{key} @var{cmd} @key{RET} +Define @var{key} globally to run @var{cmd}. +@item M-x local-set-key @key{RET} @var{key} @var{cmd} @key{RET} +Define @var{key} locally (in the major mode now in effect) to run +@var{cmd}. +@item M-x global-unset-key @key{RET} @var{key} +Make @var{key} undefined in the global map. +@item M-x local-unset-key @key{RET} @var{key} +Make @var{key} undefined locally (in the major mode now in effect). +@end table + + For example, suppose you like to execute commands in a subshell within +an Emacs buffer, instead of suspending Emacs and executing commands in +your login shell. Normally, @kbd{C-z} is bound to the function +@code{suspend-emacs} (when not using the X Window System), but you can +change @kbd{C-z} to invoke an interactive subshell within Emacs, by +binding it to @code{shell} as follows: + +@example +M-x global-set-key @key{RET} C-z shell @key{RET} +@end example + +@noindent +@code{global-set-key} reads the command name after the key. After you +press the key, a message like this appears so that you can confirm that +you are binding the key you want: + +@example +Set key C-z to command: +@end example + + You can redefine function keys and mouse events in the same way; just +type the function key or click the mouse when it's time to specify the +key to rebind. + + You can rebind a key that contains more than one event in the same +way. Emacs keeps reading the key to rebind until it is a complete key +(that is, not a prefix key). Thus, if you type @kbd{C-f} for +@var{key}, that's the end; it enters the minibuffer immediately to +read @var{cmd}. But if you type @kbd{C-x}, since that's a prefix, it +reads another character; if that is @kbd{4}, another prefix character, +it reads one more character, and so on. For example, + +@example +M-x global-set-key @key{RET} C-x 4 $ spell-other-window @key{RET} +@end example + +@noindent +redefines @kbd{C-x 4 $} to run the (fictitious) command +@code{spell-other-window}. + + The two-character keys consisting of @kbd{C-c} followed by a letter +are reserved for user customizations. Lisp programs are not supposed to +define these keys, so the bindings you make for them will be available +in all major modes and will never get in the way of anything. + + You can remove the global definition of a key with +@code{global-unset-key}. This makes the key @dfn{undefined}; if you +type it, Emacs will just beep. Similarly, @code{local-unset-key} makes +a key undefined in the current major mode keymap, which makes the global +definition (or lack of one) come back into effect in that major mode. + + If you have redefined (or undefined) a key and you subsequently wish +to retract the change, undefining the key will not do the job---you need +to redefine the key with its standard definition. To find the name of +the standard definition of a key, go to a Fundamental mode buffer in a +fresh Emacs and use @kbd{C-h c}. The documentation of keys in this +manual also lists their command names. + + If you want to prevent yourself from invoking a command by mistake, it +is better to disable the command than to undefine the key. A disabled +command is less work to invoke when you really want to. +@xref{Disabling}. + +@node Init Rebinding +@subsection Rebinding Keys in Your Init File ++@c This node is referenced in the tutorial. When renaming or deleting ++@c it, the tutorial needs to be adjusted. (TUTORIAL.de) + + If you have a set of key bindings that you like to use all the time, +you can specify them in your @file{.emacs} file by using their Lisp +syntax. (@xref{Init File}.) + + The simplest method for doing this works for @acronym{ASCII} characters and +Meta-modified @acronym{ASCII} characters only. This method uses a string to +represent the key sequence you want to rebind. For example, here's how +to bind @kbd{C-z} to @code{shell}: + +@example +(global-set-key "\C-z" 'shell) +@end example + +@noindent +This example uses a string constant containing one character, +@kbd{C-z}. (@samp{\C-} is string syntax for a control character.) The +single-quote before the command name, @code{shell}, marks it as a +constant symbol rather than a variable. If you omit the quote, Emacs +would try to evaluate @code{shell} immediately as a variable. This +probably causes an error; it certainly isn't what you want. + + Here is another example that binds the key sequence @kbd{C-x M-l}: + +@example +(global-set-key "\C-x\M-l" 'make-symbolic-link) +@end example + + To put @key{TAB}, @key{RET}, @key{ESC}, or @key{DEL} in the +string, you can use the Emacs Lisp escape sequences, @samp{\t}, +@samp{\r}, @samp{\e}, and @samp{\d}. Here is an example which binds +@kbd{C-x @key{TAB}}: + +@example +(global-set-key "\C-x\t" 'indent-rigidly) +@end example + + These examples show how to write some other special @acronym{ASCII} characters +in strings for key bindings: + +@example +(global-set-key "\r" 'newline) ;; @key{RET} +(global-set-key "\d" 'delete-backward-char) ;; @key{DEL} +(global-set-key "\C-x\e\e" 'repeat-complex-command) ;; @key{ESC} +@end example + + When the key sequence includes function keys or mouse button events, +or non-@acronym{ASCII} characters such as @code{C-=} or @code{H-a}, you must use +the more general method of rebinding, which uses a vector to specify the +key sequence. + + The way to write a vector in Emacs Lisp is with square brackets around +the vector elements. Use spaces to separate the elements. If an +element is a symbol, simply write the symbol's name---no other +delimiters or punctuation are needed. If a vector element is a +character, write it as a Lisp character constant: @samp{?} followed by +the character as it would appear in a string. + + Here are examples of using vectors to rebind @kbd{C-=} (a control +character not in @acronym{ASCII}), @kbd{C-M-=} (not in @acronym{ASCII} because @kbd{C-=} +is not), @kbd{H-a} (a Hyper character; @acronym{ASCII} doesn't have Hyper at +all), @key{F7} (a function key), and @kbd{C-Mouse-1} (a +keyboard-modified mouse button): + +@example +(global-set-key [?\C-=] 'make-symbolic-link) +(global-set-key [?\M-\C-=] 'make-symbolic-link) +(global-set-key [?\H-a] 'make-symbolic-link) +(global-set-key [f7] 'make-symbolic-link) +(global-set-key [C-mouse-1] 'make-symbolic-link) +@end example + + You can use a vector for the simple cases too. Here's how to +rewrite the first six examples above to use vectors: + +@example +(global-set-key [?\C-z] 'shell) +(global-set-key [?\C-x ?l] 'make-symbolic-link) +(global-set-key [?\C-x ?\t] 'indent-rigidly) +(global-set-key [?\r] 'newline) +(global-set-key [?\d] 'delete-backward-char) +(global-set-key [?\C-x ?\e ?\e] 'repeat-complex-command) +@end example + +@noindent +As you see, you represent a multi-character key sequence with a vector +by listing all of the characters, in order, within the square brackets +that delimit the vector. + + Language and coding systems can cause problems with key bindings +for non-@acronym{ASCII} characters. @xref{Init Non-ASCII}. + +@node Function Keys +@subsection Rebinding Function Keys + + Key sequences can contain function keys as well as ordinary +characters. Just as Lisp characters (actually integers) represent +keyboard characters, Lisp symbols represent function keys. If the +function key has a word as its label, then that word is also the name of +the corresponding Lisp symbol. Here are the conventional Lisp names for +common function keys: + +@table @asis +@item @code{left}, @code{up}, @code{right}, @code{down} +Cursor arrow keys. + +@item @code{begin}, @code{end}, @code{home}, @code{next}, @code{prior} +Other cursor repositioning keys. + +@item @code{select}, @code{print}, @code{execute}, @code{backtab} +@itemx @code{insert}, @code{undo}, @code{redo}, @code{clearline} +@itemx @code{insertline}, @code{deleteline}, @code{insertchar}, @code{deletechar} +Miscellaneous function keys. + +@item @code{f1}, @code{f2}, @dots{} @code{f35} +Numbered function keys (across the top of the keyboard). + +@item @code{kp-add}, @code{kp-subtract}, @code{kp-multiply}, @code{kp-divide} +@itemx @code{kp-backtab}, @code{kp-space}, @code{kp-tab}, @code{kp-enter} +@itemx @code{kp-separator}, @code{kp-decimal}, @code{kp-equal} +Keypad keys (to the right of the regular keyboard), with names or punctuation. + +@item @code{kp-0}, @code{kp-1}, @dots{} @code{kp-9} +Keypad keys with digits. + +@item @code{kp-f1}, @code{kp-f2}, @code{kp-f3}, @code{kp-f4} +Keypad PF keys. +@end table + + These names are conventional, but some systems (especially when using +X) may use different names. To make certain what symbol is used for a +given function key on your terminal, type @kbd{C-h c} followed by that +key. + + A key sequence which contains function key symbols (or anything but +@acronym{ASCII} characters) must be a vector rather than a string. +Thus, to bind function key @samp{f1} to the command @code{rmail}, +write the following: + +@example +(global-set-key [f1] 'rmail) +@end example + +@noindent +To bind the right-arrow key to the command @code{forward-char}, you can +use this expression: + +@example +(global-set-key [right] 'forward-char) +@end example + +@noindent +This uses the Lisp syntax for a vector containing the symbol +@code{right}. (This binding is present in Emacs by default.) + + @xref{Init Rebinding}, for more information about using vectors for +rebinding. + + You can mix function keys and characters in a key sequence. This +example binds @kbd{C-x @key{NEXT}} to the command @code{forward-page}. + +@example +(global-set-key [?\C-x next] 'forward-page) +@end example + +@noindent +where @code{?\C-x} is the Lisp character constant for the character +@kbd{C-x}. The vector element @code{next} is a symbol and therefore +does not take a question mark. + + You can use the modifier keys @key{CTRL}, @key{META}, @key{HYPER}, +@key{SUPER}, @key{ALT} and @key{SHIFT} with function keys. To represent +these modifiers, add the strings @samp{C-}, @samp{M-}, @samp{H-}, +@samp{s-}, @samp{A-} and @samp{S-} at the front of the symbol name. +Thus, here is how to make @kbd{Hyper-Meta-@key{RIGHT}} move forward a +word: + +@example +(global-set-key [H-M-right] 'forward-word) +@end example + +@cindex keypad + Many keyboards have a ``numeric keypad'' on the right hand side. +The numeric keys in the keypad double up as cursor motion keys, +toggled by a key labeled @samp{Num Lock}. By default, Emacs +translates these keys to the corresponding keys in the main keyboard. +For example, when @samp{Num Lock} is on, the key labeled @samp{8} on +the numeric keypad produces @code{kp-8}, which is translated to +@kbd{8}; when @samp{Num Lock} is off, the same key produces +@code{kp-up}, which is translated to @key{UP}. If you rebind a key +such as @kbd{8} or @key{UP}, it affects the equivalent keypad key too. +However, if you rebind a @samp{kp-} key directly, that won't affect +its non-keypad equivalent. + + Emacs provides a convenient method for binding the numeric keypad +keys, using the variables @code{keypad-setup}, +@code{keypad-numlock-setup}, @code{keypad-shifted-setup}, and +@code{keypad-numlock-shifted-setup}. These can be found in the +@samp{keyboard} customization group (@pxref{Easy Customization}). You +can rebind the keys to perform other tasks, such as issuing numeric +prefix arguments. + +@node Named ASCII Chars +@subsection Named @acronym{ASCII} Control Characters + + @key{TAB}, @key{RET}, @key{BS}, @key{LFD}, @key{ESC} and @key{DEL} +started out as names for certain @acronym{ASCII} control characters, +used so often that they have special keys of their own. For instance, +@key{TAB} was another name for @kbd{C-i}. Later, users found it +convenient to distinguish in Emacs between these keys and the ``same'' +control characters typed with the @key{CTRL} key. Therefore, on most +modern terminals, they are no longer the same, and @key{TAB} is +distinguishable from @kbd{C-i}. + + Emacs can distinguish these two kinds of input if the keyboard does. +It treats the ``special'' keys as function keys named @code{tab}, +@code{return}, @code{backspace}, @code{linefeed}, @code{escape}, and +@code{delete}. These function keys translate automatically into the +corresponding @acronym{ASCII} characters @emph{if} they have no +bindings of their own. As a result, neither users nor Lisp programs +need to pay attention to the distinction unless they care to. + + If you do not want to distinguish between (for example) @key{TAB} and +@kbd{C-i}, make just one binding, for the @acronym{ASCII} character @key{TAB} +(octal code 011). If you do want to distinguish, make one binding for +this @acronym{ASCII} character, and another for the ``function key'' @code{tab}. + + With an ordinary @acronym{ASCII} terminal, there is no way to distinguish +between @key{TAB} and @kbd{C-i} (and likewise for other such pairs), +because the terminal sends the same character in both cases. + +@node Mouse Buttons +@subsection Rebinding Mouse Buttons +@cindex mouse button events +@cindex rebinding mouse buttons +@cindex click events +@cindex drag events +@cindex down events +@cindex button down events + + Emacs uses Lisp symbols to designate mouse buttons, too. The ordinary +mouse events in Emacs are @dfn{click} events; these happen when you +press a button and release it without moving the mouse. You can also +get @dfn{drag} events, when you move the mouse while holding the button +down. Drag events happen when you finally let go of the button. + + The symbols for basic click events are @code{mouse-1} for the leftmost +button, @code{mouse-2} for the next, and so on. Here is how you can +redefine the second mouse button to split the current window: + +@example +(global-set-key [mouse-2] 'split-window-vertically) +@end example + + The symbols for drag events are similar, but have the prefix +@samp{drag-} before the word @samp{mouse}. For example, dragging the +first button generates a @code{drag-mouse-1} event. + + You can also define bindings for events that occur when a mouse button +is pressed down. These events start with @samp{down-} instead of +@samp{drag-}. Such events are generated only if they have key bindings. +When you get a button-down event, a corresponding click or drag event +will always follow. + +@cindex double clicks +@cindex triple clicks + If you wish, you can distinguish single, double, and triple clicks. A +double click means clicking a mouse button twice in approximately the +same place. The first click generates an ordinary click event. The +second click, if it comes soon enough, generates a double-click event +instead. The event type for a double-click event starts with +@samp{double-}: for example, @code{double-mouse-3}. + + This means that you can give a special meaning to the second click at +the same place, but it must act on the assumption that the ordinary +single click definition has run when the first click was received. + + This constrains what you can do with double clicks, but user interface +designers say that this constraint ought to be followed in any case. A +double click should do something similar to the single click, only +``more so.'' The command for the double-click event should perform the +extra work for the double click. + + If a double-click event has no binding, it changes to the +corresponding single-click event. Thus, if you don't define a +particular double click specially, it executes the single-click command +twice. + + Emacs also supports triple-click events whose names start with +@samp{triple-}. Emacs does not distinguish quadruple clicks as event +types; clicks beyond the third generate additional triple-click events. +However, the full number of clicks is recorded in the event list, so +if you know Emacs Lisp you can distinguish if you really want to +(@pxref{Click Events,,, elisp, The Emacs Lisp Reference Manual}). +We don't recommend distinct meanings for more than three clicks, but +sometimes it is useful for subsequent clicks to cycle through the same +set of three meanings, so that four clicks are equivalent to one +click, five are equivalent to two, and six are equivalent to three. + + Emacs also records multiple presses in drag and button-down events. +For example, when you press a button twice, then move the mouse while +holding the button, Emacs gets a @samp{double-drag-} event. And at the +moment when you press it down for the second time, Emacs gets a +@samp{double-down-} event (which is ignored, like all button-down +events, if it has no binding). + +@vindex double-click-time + The variable @code{double-click-time} specifies how much time can +elapse between clicks and still allow them to be grouped as a multiple +click. Its value is in units of milliseconds. If the value is +@code{nil}, double clicks are not detected at all. If the value is +@code{t}, then there is no time limit. The default is 500. + +@vindex double-click-fuzz + The variable @code{double-click-fuzz} specifies how much the mouse +can move between clicks and still allow them to be grouped as a multiple +click. Its value is in units of pixels on windowed displays and in +units of 1/8 of a character cell on text-mode terminals; the default is +3. + + The symbols for mouse events also indicate the status of the modifier +keys, with the usual prefixes @samp{C-}, @samp{M-}, @samp{H-}, +@samp{s-}, @samp{A-} and @samp{S-}. These always precede @samp{double-} +or @samp{triple-}, which always precede @samp{drag-} or @samp{down-}. + + A frame includes areas that don't show text from the buffer, such as +the mode line and the scroll bar. You can tell whether a mouse button +comes from a special area of the screen by means of dummy ``prefix +keys.'' For example, if you click the mouse in the mode line, you get +the prefix key @code{mode-line} before the ordinary mouse-button symbol. +Thus, here is how to define the command for clicking the first button in +a mode line to run @code{scroll-up}: + +@example +(global-set-key [mode-line mouse-1] 'scroll-up) +@end example + + Here is the complete list of these dummy prefix keys and their +meanings: + +@table @code +@item mode-line +The mouse was in the mode line of a window. +@item vertical-line +The mouse was in the vertical line separating side-by-side windows. (If +you use scroll bars, they appear in place of these vertical lines.) +@item vertical-scroll-bar +The mouse was in a vertical scroll bar. (This is the only kind of +scroll bar Emacs currently supports.) +@item menu-bar +The mouse was in the menu bar. +@item header-line +The mouse was in a header line. +@ignore +@item horizontal-scroll-bar +The mouse was in a horizontal scroll bar. Horizontal scroll bars do +horizontal scrolling, and people don't use them often. +@end ignore +@end table + + You can put more than one mouse button in a key sequence, but it isn't +usual to do so. + +@node Disabling +@subsection Disabling Commands +@cindex disabled command + + Disabling a command means that invoking it interactively asks for +confirmation from the user. The purpose of disabling a command is to +prevent users from executing it by accident; we do this for commands +that might be confusing to the uninitiated. + + Attempting to invoke a disabled command interactively in Emacs +displays a window containing the command's name, its documentation, +and some instructions on what to do immediately; then Emacs asks for +input saying whether to execute the command as requested, enable it +and execute it, or cancel. If you decide to enable the command, you +must then answer another question---whether to do this permanently, or +just for the current session. (Enabling permanently works by +automatically editing your @file{.emacs} file.) You can also type +@kbd{!} to enable @emph{all} commands, for the current session only. + + The direct mechanism for disabling a command is to put a +non-@code{nil} @code{disabled} property on the Lisp symbol for the +command. Here is the Lisp program to do this: + +@example +(put 'delete-region 'disabled t) +@end example + + If the value of the @code{disabled} property is a string, that string +is included in the message displayed when the command is used: + +@example +(put 'delete-region 'disabled + "It's better to use `kill-region' instead.\n") +@end example + +@findex disable-command +@findex enable-command + You can make a command disabled either by editing the @file{.emacs} +file directly, or with the command @kbd{M-x disable-command}, which edits +the @file{.emacs} file for you. Likewise, @kbd{M-x enable-command} +edits @file{.emacs} to enable a command permanently. @xref{Init File}. + + If Emacs was invoked with the @option{-q} or @option{--no-init-file} +options (@pxref{Initial Options}), it will not edit your +@file{~/.emacs} init file. Doing so could lose information +because Emacs has not read your init file. + + Whether a command is disabled is independent of what key is used to +invoke it; disabling also applies if the command is invoked using +@kbd{M-x}. However, disabling a command has no effect on calling it +as a function from Lisp programs. + +@node Syntax +@section The Syntax Table +@cindex syntax table + + All the Emacs commands which parse words or balance parentheses are +controlled by the @dfn{syntax table}. The syntax table says which +characters are opening delimiters, which are parts of words, which are +string quotes, and so on. It does this by assigning each character to +one of fifteen-odd @dfn{syntax classes}. In some cases it specifies +some additional information also. + + Each major mode has its own syntax table (though related major modes +sometimes share one syntax table), which it installs in each buffer +that uses the mode. The syntax table installed in the current buffer +is the one that all commands use, so we call it ``the'' syntax table. + +@kindex C-h s +@findex describe-syntax + To display a description of the contents of the current syntax +table, type @kbd{C-h s} (@code{describe-syntax}). The description of +each character includes the string you would have to give to +@code{modify-syntax-entry} to set up that character's current syntax, +starting with the character which designates its syntax class, plus +some English text to explain its meaning. + + A syntax table is actually a Lisp object, a char-table, whose +elements are cons cells. For full information on the syntax table, +see @ref{Syntax Tables,, Syntax Tables, elisp, The Emacs Lisp +Reference Manual}. + +@node Init File +@section The Init File, @file{~/.emacs} +@cindex init file +@cindex Emacs initialization file +@cindex key rebinding, permanent +@cindex rebinding keys, permanently +@cindex startup (init file) + + When Emacs is started, it normally loads a Lisp program from the file +@file{.emacs} or @file{.emacs.el} in your home directory (@pxref{Find Init}). +We call this file your @dfn{init file} because it specifies how to +initialize Emacs for you. You can use the command line switch +@samp{-q} to prevent loading your init file, and @samp{-u} (or +@samp{--user}) to specify a different user's init file (@pxref{Initial +Options}). + + You can also use @file{~/.emacs.d/init.el} as the init file. Emacs +tries this if it cannot find @file{~/.emacs} or @file{~/.emacs.el}. + +@cindex @file{default.el}, the default init file + There can also be a @dfn{default init file}, which is the library +named @file{default.el}, found via the standard search path for +libraries. The Emacs distribution contains no such library; your site +may create one for local customizations. If this library exists, it is +loaded whenever you start Emacs (except when you specify @samp{-q}). +But your init file, if any, is loaded first; if it sets +@code{inhibit-default-init} non-@code{nil}, then @file{default} is not +loaded. + +@cindex site init file +@cindex @file{site-start.el}, the site startup file + Your site may also have a @dfn{site startup file}; this is named +@file{site-start.el}, if it exists. Like @file{default.el}, Emacs +finds this file via the standard search path for Lisp libraries. +Emacs loads this library before it loads your init file. To inhibit +loading of this library, use the option @samp{--no-site-file}. +@xref{Initial Options}. We recommend against using +@file{site-start.el} for changes that some users may not like. It is +better to put them in @file{default.el}, so that users can more easily +override them. + + You can place @file{default.el} and @file{site-start.el} in any of +the directories which Emacs searches for Lisp libraries. The variable +@code{load-path} (@pxref{Lisp Libraries}) specifies these directories. +Many sites put these files in the @file{site-lisp} subdirectory of the +Emacs installation directory, typically +@file{/usr/local/share/emacs/site-lisp}. + + Byte-compiling your @file{.emacs} is not recommended (@pxref{Byte +Compilation,, Byte Compilation, elisp, the Emacs Lisp Reference +Manual}). It generally does not speed up startup very much, and often +leads to problems when you forget to recompile the file. A better +solution is to use the Emacs server to reduce the number of times you +have to start Emacs (@pxref{Emacs Server}). If your @file{.emacs} +defines many functions, consider moving them to a separate +(byte-compiled) file that you load in your @file{.emacs}. + + If you are going to write actual Emacs Lisp programs that go beyond +minor customization, you should read the @cite{Emacs Lisp Reference Manual}. +@ifnottex +@xref{Top, Emacs Lisp, Emacs Lisp, elisp, the Emacs Lisp Reference +Manual}. +@end ifnottex + +@menu +* Init Syntax:: Syntax of constants in Emacs Lisp. +* Init Examples:: How to do some things with an init file. +* Terminal Init:: Each terminal type can have an init file. +* Find Init:: How Emacs finds the init file. +* Init Non-ASCII:: Using non-@acronym{ASCII} characters in an init file. +@end menu + +@node Init Syntax +@subsection Init File Syntax + + The @file{.emacs} file contains one or more Lisp function call +expressions. Each of these consists of a function name followed by +arguments, all surrounded by parentheses. For example, @code{(setq +fill-column 60)} calls the function @code{setq} to set the variable +@code{fill-column} (@pxref{Filling}) to 60. + + You can set any Lisp variable with @code{setq}, but with certain +variables @code{setq} won't do what you probably want in the +@file{.emacs} file. Some variables automatically become buffer-local +when set with @code{setq}; what you want in @file{.emacs} is to set +the default value, using @code{setq-default}. Some customizable minor +mode variables do special things to enable the mode when you set them +with Customize, but ordinary @code{setq} won't do that; to enable the +mode in your @file{.emacs} file, call the minor mode command. The +following section has examples of both of these methods. + + The second argument to @code{setq} is an expression for the new +value of the variable. This can be a constant, a variable, or a +function call expression. In @file{.emacs}, constants are used most +of the time. They can be: + +@table @asis +@item Numbers: +Numbers are written in decimal, with an optional initial minus sign. + +@item Strings: +@cindex Lisp string syntax +@cindex string syntax +Lisp string syntax is the same as C string syntax with a few extra +features. Use a double-quote character to begin and end a string constant. + +In a string, you can include newlines and special characters literally. +But often it is cleaner to use backslash sequences for them: @samp{\n} +for newline, @samp{\b} for backspace, @samp{\r} for carriage return, +@samp{\t} for tab, @samp{\f} for formfeed (control-L), @samp{\e} for +escape, @samp{\\} for a backslash, @samp{\"} for a double-quote, or +@samp{\@var{ooo}} for the character whose octal code is @var{ooo}. +Backslash and double-quote are the only characters for which backslash +sequences are mandatory. + +@samp{\C-} can be used as a prefix for a control character, as in +@samp{\C-s} for @acronym{ASCII} control-S, and @samp{\M-} can be used as a prefix for +a Meta character, as in @samp{\M-a} for @kbd{Meta-A} or @samp{\M-\C-a} for +@kbd{Control-Meta-A}.@refill + +@xref{Init Non-ASCII}, for information about including +non-@acronym{ASCII} in your init file. + +@item Characters: +Lisp character constant syntax consists of a @samp{?} followed by +either a character or an escape sequence starting with @samp{\}. +Examples: @code{?x}, @code{?\n}, @code{?\"}, @code{?\)}. Note that +strings and characters are not interchangeable in Lisp; some contexts +require one and some contexts require the other. + +@xref{Init Non-ASCII}, for information about binding commands to +keys which send non-@acronym{ASCII} characters. + +@item True: +@code{t} stands for `true'. + +@item False: +@code{nil} stands for `false'. + +@item Other Lisp objects: +Write a single-quote (@code{'}) followed by the Lisp object you want. +@end table + +@node Init Examples +@subsection Init File Examples + + Here are some examples of doing certain commonly desired things with +Lisp expressions: + +@itemize @bullet +@item +Make @key{TAB} in C mode just insert a tab if point is in the middle of a +line. + +@example +(setq c-tab-always-indent nil) +@end example + +Here we have a variable whose value is normally @code{t} for `true' +and the alternative is @code{nil} for `false'. + +@item +Make searches case sensitive by default (in all buffers that do not +override this). + +@example +(setq-default case-fold-search nil) +@end example + +This sets the default value, which is effective in all buffers that do +not have local values for the variable. Setting @code{case-fold-search} +with @code{setq} affects only the current buffer's local value, which +is not what you probably want to do in an init file. + +@item +@vindex user-mail-address +Specify your own email address, if Emacs can't figure it out correctly. + +@example +(setq user-mail-address "rumsfeld@@torture.gov") +@end example + +Various Emacs packages that need your own email address use the value of +@code{user-mail-address}. + +@item +Make Text mode the default mode for new buffers. + +@example +(setq default-major-mode 'text-mode) +@end example + +Note that @code{text-mode} is used because it is the command for +entering Text mode. The single-quote before it makes the symbol a +constant; otherwise, @code{text-mode} would be treated as a variable +name. + +@need 1500 +@item +Set up defaults for the Latin-1 character set +which supports most of the languages of Western Europe. + +@example +(set-language-environment "Latin-1") +@end example + +@need 1500 +@item +Turn off Line Number mode, a global minor mode. + +@example +(line-number-mode 0) +@end example + +@need 1500 +@item +Turn on Auto Fill mode automatically in Text mode and related modes. + +@example +(add-hook 'text-mode-hook + '(lambda () (auto-fill-mode 1))) +@end example + +This shows how to add a hook function to a normal hook variable +(@pxref{Hooks}). The function we supply is a list starting with +@code{lambda}, with a single-quote in front of it to make it a list +constant rather than an expression. + +It's beyond the scope of this manual to explain Lisp functions, but for +this example it is enough to know that the effect is to execute +@code{(auto-fill-mode 1)} when Text mode is entered. You can replace +that with any other expression that you like, or with several +expressions in a row. + +Emacs comes with a function named @code{turn-on-auto-fill} whose +definition is @code{(lambda () (auto-fill-mode 1))}. Thus, a simpler +way to write the above example is as follows: + +@example +(add-hook 'text-mode-hook 'turn-on-auto-fill) +@end example + +@item +Load the installed Lisp library named @file{foo} (actually a file +@file{foo.elc} or @file{foo.el} in a standard Emacs directory). + +@example +(load "foo") +@end example + +When the argument to @code{load} is a relative file name, not starting +with @samp{/} or @samp{~}, @code{load} searches the directories in +@code{load-path} (@pxref{Lisp Libraries}). + +@item +Load the compiled Lisp file @file{foo.elc} from your home directory. + +@example +(load "~/foo.elc") +@end example + +Here an absolute file name is used, so no searching is done. + +@item +@cindex loading Lisp libraries automatically +@cindex autoload Lisp libraries +Tell Emacs to find the definition for the function @code{myfunction} +by loading a Lisp library named @file{mypackage} (i.e.@: a file +@file{mypackage.elc} or @file{mypackage.el}): + +@example +(autoload 'myfunction "mypackage" "Do what I say." t) +@end example + +@noindent +Here the string @code{"Do what I say."} is the function's +documentation string. You specify it in the @code{autoload} +definition so it will be available for help commands even when the +package is not loaded. The last argument, @code{t}, indicates that +this function is interactive; that is, it can be invoked interactively +by typing @kbd{M-x myfunction @key{RET}} or by binding it to a key. +If the function is not interactive, omit the @code{t} or use +@code{nil}. + +@item +Rebind the key @kbd{C-x l} to run the function @code{make-symbolic-link} +(@pxref{Init Rebinding}). + +@example +(global-set-key "\C-xl" 'make-symbolic-link) +@end example + +or + +@example +(define-key global-map "\C-xl" 'make-symbolic-link) +@end example + +Note once again the single-quote used to refer to the symbol +@code{make-symbolic-link} instead of its value as a variable. + +@item +Do the same thing for Lisp mode only. + +@example +(define-key lisp-mode-map "\C-xl" 'make-symbolic-link) +@end example + +@item +Redefine all keys which now run @code{next-line} in Fundamental mode +so that they run @code{forward-line} instead. + +@findex substitute-key-definition +@example +(substitute-key-definition 'next-line 'forward-line + global-map) +@end example + +@item +Make @kbd{C-x C-v} undefined. + +@example +(global-unset-key "\C-x\C-v") +@end example + +One reason to undefine a key is so that you can make it a prefix. +Simply defining @kbd{C-x C-v @var{anything}} will make @kbd{C-x C-v} a +prefix, but @kbd{C-x C-v} must first be freed of its usual non-prefix +definition. + +@item +Make @samp{$} have the syntax of punctuation in Text mode. +Note the use of a character constant for @samp{$}. + +@example +(modify-syntax-entry ?\$ "." text-mode-syntax-table) +@end example + +@item +Enable the use of the command @code{narrow-to-region} without confirmation. + +@example +(put 'narrow-to-region 'disabled nil) +@end example + +@item +Adjusting the configuration to various platforms and Emacs versions. + +Users typically want Emacs to behave the same on all systems, so the +same init file is right for all platforms. However, sometimes it +happens that a function you use for customizing Emacs is not available +on some platforms or in older Emacs versions. To deal with that +situation, put the customization inside a conditional that tests whether +the function or facility is available, like this: + +@example +(if (fboundp 'blink-cursor-mode) + (blink-cursor-mode 0)) + +(if (boundp 'coding-category-utf-8) + (set-coding-priority '(coding-category-utf-8))) +@end example + +@noindent +You can also simply disregard the errors that occur if the +function is not defined. + +@example +(condition case () + (set-face-background 'region "grey75") + (error nil)) +@end example + +A @code{setq} on a variable which does not exist is generally +harmless, so those do not need a conditional. +@end itemize + +@node Terminal Init +@subsection Terminal-specific Initialization + + Each terminal type can have a Lisp library to be loaded into Emacs when +it is run on that type of terminal. For a terminal type named +@var{termtype}, the library is called @file{term/@var{termtype}} and it is +found by searching the directories @code{load-path} as usual and trying the +suffixes @samp{.elc} and @samp{.el}. Normally it appears in the +subdirectory @file{term} of the directory where most Emacs libraries are +kept.@refill + + The usual purpose of the terminal-specific library is to map the +escape sequences used by the terminal's function keys onto more +meaningful names, using @code{input-decode-map} (or +@code{function-key-map} before it). See the file +@file{term/lk201.el} for an example of how this is done. Many function +keys are mapped automatically according to the information in the +Termcap data base; the terminal-specific library needs to map only the +function keys that Termcap does not specify. + + When the terminal type contains a hyphen, only the part of the name +before the first hyphen is significant in choosing the library name. +Thus, terminal types @samp{aaa-48} and @samp{aaa-30-rv} both use +the library @file{term/aaa}. The code in the library can use +@code{(getenv "TERM")} to find the full terminal type name.@refill + +@vindex term-file-prefix + The library's name is constructed by concatenating the value of the +variable @code{term-file-prefix} and the terminal type. Your @file{.emacs} +file can prevent the loading of the terminal-specific library by setting +@code{term-file-prefix} to @code{nil}. + +@vindex term-setup-hook + Emacs runs the hook @code{term-setup-hook} at the end of +initialization, after both your @file{.emacs} file and any +terminal-specific library have been read in. Add hook functions to this +hook if you wish to override part of any of the terminal-specific +libraries and to define initializations for terminals that do not have a +library. @xref{Hooks}. + +@node Find Init +@subsection How Emacs Finds Your Init File + + Normally Emacs uses the environment variable @env{HOME} +(@pxref{General Variables, HOME}) to find @file{.emacs}; that's what +@samp{~} means in a file name. If @file{.emacs} is not found inside +@file{~/} (nor @file{.emacs.el}), Emacs looks for +@file{~/.emacs.d/init.el} (which, like @file{~/.emacs.el}, can be +byte-compiled). + + However, if you run Emacs from a shell started by @code{su}, Emacs +tries to find your own @file{.emacs}, not that of the user you are +currently pretending to be. The idea is that you should get your own +editor customizations even if you are running as the super user. + + More precisely, Emacs first determines which user's init file to use. +It gets your user name from the environment variables @env{LOGNAME} and +@env{USER}; if neither of those exists, it uses effective user-ID. +If that user name matches the real user-ID, then Emacs uses @env{HOME}; +otherwise, it looks up the home directory corresponding to that user +name in the system's data base of users. +@c LocalWords: backtab + +@node Init Non-ASCII +@subsection Non-@acronym{ASCII} Characters in Init Files +@cindex international characters in @file{.emacs} +@cindex non-@acronym{ASCII} characters in @file{.emacs} +@cindex non-@acronym{ASCII} keys, binding +@cindex rebinding non-@acronym{ASCII} keys + + Language and coding systems may cause problems if your init file +contains non-@acronym{ASCII} characters, such as accented letters, in +strings or key bindings. + + If you want to use non-@acronym{ASCII} characters in your init file, +you should put a @w{@samp{-*-coding: @var{coding-system}-*-}} tag on +the first line of the init file, and specify a coding system that +supports the character(s) in question. @xref{Recognize Coding}. This +is because the defaults for decoding non-@acronym{ASCII} text might +not yet be set up by the time Emacs reads those parts of your init +file which use such strings, possibly leading Emacs to decode those +strings incorrectly. You should then avoid adding Emacs Lisp code +that modifies the coding system in other ways, such as calls to +@code{set-language-environment}. + + To bind non-@acronym{ASCII} keys, you must use a vector (@pxref{Init +Rebinding}). The string syntax cannot be used, since the +non-@acronym{ASCII} characters will be interpreted as meta keys. For +instance: + +@example +(global-set-key [?@var{char}] 'some-function) +@end example + +@noindent +Type @kbd{C-q}, followed by the key you want to bind, to insert @var{char}. + + @strong{Warning:} if you change the keyboard encoding, or change +between multibyte and unibyte mode, or anything that would alter which +code @kbd{C-q} would insert for that character, this key binding may +stop working. It is therefore advisable to use one and only one +coding system, for your init file as well as the files you edit. For +example, don't mix the @samp{latin-1} and @samp{latin-9} coding +systems. + +@ignore + arch-tag: c68abddb-4410-4fb5-925f-63394e971d93 +@end ignore diff --cc doc/emacs/dired.texi index 81d2a00461,0000000000..72cc04dfcd mode 100644,000000..100644 --- a/doc/emacs/dired.texi +++ b/doc/emacs/dired.texi @@@ -1,1321 -1,0 +1,1323 @@@ +@c This is part of the Emacs manual. +@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, +@c 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@c See file emacs.texi for copying conditions. +@node Dired, Calendar/Diary, Rmail, Top +@chapter Dired, the Directory Editor ++@c This node is referenced in the tutorial. When renaming or deleting ++@c it, the tutorial needs to be adjusted. +@cindex Dired +@cindex file management + + Dired makes an Emacs buffer containing a listing of a directory, and +optionally some of its subdirectories as well. You can use the normal +Emacs commands to move around in this buffer, and special Dired commands +to operate on the files listed. + + The Dired buffer is ``read-only,'' and inserting text in it is not +useful, so ordinary printing characters such as @kbd{d} and @kbd{x} +are redefined for special Dired commands. Some Dired commands +@dfn{mark} or @dfn{flag} the @dfn{current file} (that is, the file on +the current line); other commands operate on the marked files or on +the flagged files. You first mark certain files in order to operate +on all of them with on command. + + The Dired-X package provides various extra features for Dired mode. +@xref{Top, Dired-X,,dired-x, Dired Extra Version 2 User's Manual}. + +@menu +* Enter: Dired Enter. How to invoke Dired. +* Navigation: Dired Navigation. Special motion commands in the Dired buffer. +* Deletion: Dired Deletion. Deleting files with Dired. +* Flagging Many Files:: Flagging files based on their names. +* Visit: Dired Visiting. Other file operations through Dired. +* Marks vs Flags:: Flagging for deletion vs marking. +* Operating on Files:: How to copy, rename, print, compress, etc. + either one file or several files. +* Shell Commands in Dired:: Running a shell command on the marked files. +* Transforming File Names:: Using patterns to rename multiple files. +* Comparison in Dired:: Running `diff' by way of Dired. +* Subdirectories in Dired:: Adding subdirectories to the Dired buffer. +@ifnottex +* Subdir Switches:: Subdirectory switches in Dired. +@end ifnottex +* Subdirectory Motion:: Moving across subdirectories, and up and down. +* Hiding Subdirectories:: Making subdirectories visible or invisible. +* Updating: Dired Updating. Discarding lines for files of no interest. +* Find: Dired and Find. Using `find' to choose the files for Dired. +* Wdired:: Operating on files by editing the Dired buffer. +* Image-Dired:: Viewing image thumbnails in Dired +* Misc: Misc Dired Features. Various other features. +@end menu + +@node Dired Enter +@section Entering Dired + +@findex dired +@kindex C-x d +@vindex dired-listing-switches + To invoke Dired, do @kbd{C-x d} or @kbd{M-x dired}. The command +reads a directory name or wildcard file name pattern as a minibuffer +argument to specify the files to list. @kbd{C-x C-f} given a +directory name also invokes Dired. Where @code{dired} differs from +@code{list-directory} is that it puts the buffer into Dired mode, so +that the special commands of Dired are available. + + The variable @code{dired-listing-switches} specifies the options to +give to @code{ls} for listing the directory; this string @emph{must} +contain @samp{-l}. If you use a numeric prefix argument with the +@code{dired} command, you can specify the @code{ls} switches with the +minibuffer before you enter the directory specification. No matter +how they are specified, the @code{ls} switches can include short +options (that is, single characters) requiring no arguments, and long +options (starting with @samp{--}) whose arguments are specified with +@samp{=}. + + On MS-Windows and MS-DOS systems, Emacs @emph{emulates} @code{ls}; +see @ref{ls in Lisp}, for options and peculiarities of that emulation. + + +@findex dired-other-window +@kindex C-x 4 d +@findex dired-other-frame +@kindex C-x 5 d + To display the Dired buffer in another window rather than in the +selected window, use @kbd{C-x 4 d} (@code{dired-other-window}) instead +of @kbd{C-x d}. @kbd{C-x 5 d} (@code{dired-other-frame}) uses a +separate frame to display the Dired buffer. + +@node Dired Navigation +@section Navigation in the Dired Buffer + +@kindex C-n @r{(Dired)} +@kindex C-p @r{(Dired)} + All the usual Emacs cursor motion commands are available in Dired +buffers. The keys @kbd{C-n} and @kbd{C-p} are redefined to put the +cursor at the beginning of the file name on the line, rather than at +the beginning of the line. + +@kindex SPC @r{(Dired)} + For extra convenience, @key{SPC} and @kbd{n} in Dired are equivalent +to @kbd{C-n}. @kbd{p} is equivalent to @kbd{C-p}. (Moving by lines is +so common in Dired that it deserves to be easy to type.) @key{DEL} +(move up and unflag) is often useful simply for moving up. + +@findex dired-goto-file +@kindex j @r{(Dired)} + @kbd{j} (@code{dired-goto-file}) moves point to the line that +describes a specified file or directory. + + Some additional navigation commands are available when the Dired +buffer includes several directories. @xref{Subdirectory Motion}. + +@node Dired Deletion +@section Deleting Files with Dired +@cindex flagging files (in Dired) +@cindex deleting files (in Dired) + + One of the most frequent uses of Dired is to first @dfn{flag} files for +deletion, then delete the files that were flagged. + +@table @kbd +@item d +Flag this file for deletion. +@item u +Remove deletion flag on this line. +@item @key{DEL} +Move point to previous line and remove the deletion flag on that line. +@item x +Delete the files that are flagged for deletion. +@end table + +@kindex d @r{(Dired)} +@findex dired-flag-file-deletion + You can flag a file for deletion by moving to the line describing +the file and typing @kbd{d} (@code{dired-flag-file-deletion}). The +deletion flag is visible as a @samp{D} at the beginning of the line. +This command moves point to the next line, so that repeated @kbd{d} +commands flag successive files. A numeric argument serves as a repeat +count. + +@kindex u @r{(Dired deletion)} +@kindex DEL @r{(Dired)} + The reason for flagging files for deletion, rather than deleting +files immediately, is to reduce the danger of deleting a file +accidentally. Until you direct Dired to delete the flagged files, you +can remove deletion flags using the commands @kbd{u} and @key{DEL}. +@kbd{u} (@code{dired-unmark}) works just like @kbd{d}, but removes +flags rather than making flags. @key{DEL} +(@code{dired-unmark-backward}) moves upward, removing flags; it is +like @kbd{u} with argument @minus{}1. + +@kindex x @r{(Dired)} +@findex dired-do-flagged-delete +@cindex expunging (Dired) + To delete the flagged files, type @kbd{x} +(@code{dired-do-flagged-delete}). (This is also known as +@dfn{expunging}.) This command first displays a list of all the file +names flagged for deletion, and requests confirmation with @kbd{yes}. +If you confirm, Dired deletes the flagged files, then deletes their +lines from the text of the Dired buffer. The Dired buffer, with +somewhat fewer lines, remains selected. + + If you answer @kbd{no} or quit with @kbd{C-g} when asked to confirm, you +return immediately to Dired, with the deletion flags still present in +the buffer, and no files actually deleted. + +@cindex recursive deletion +@vindex dired-recursive-deletes + You can delete empty directories just like other files, but normally +Dired cannot delete directories that are nonempty. If the variable +@code{dired-recursive-deletes} is non-@code{nil}, then Dired can +delete nonempty directories including all their contents. That can +be somewhat risky. + +@node Flagging Many Files +@section Flagging Many Files at Once +@cindex flagging many files for deletion (in Dired) + +@table @kbd +@item # +Flag all auto-save files (files whose names start and end with @samp{#}) +for deletion (@pxref{Auto Save}). + +@item ~ +Flag all backup files (files whose names end with @samp{~}) for deletion +(@pxref{Backup}). + +@item & +Flag for deletion all files with certain kinds of names which suggest +you could easily create those files again. + +@item .@: @r{(Period)} +Flag excess numeric backup files for deletion. The oldest and newest +few backup files of any one file are exempt; the middle ones are +flagged. + +@item % d @var{regexp} @key{RET} +Flag for deletion all files whose names match the regular expression +@var{regexp}. +@end table + + The @kbd{#}, @kbd{~}, @kbd{&}, and @kbd{.} commands flag many files for +deletion, based on their file names. These commands are useful +precisely because they do not themselves delete any files; you can +remove the deletion flags from any flagged files that you really wish to +keep.@refill + +@kindex & @r{(Dired)} +@findex dired-flag-garbage-files +@vindex dired-garbage-files-regexp +@cindex deleting some backup files + @kbd{&} (@code{dired-flag-garbage-files}) flags files whose names +match the regular expression specified by the variable +@code{dired-garbage-files-regexp}. By default, this matches certain +files produced by @TeX{}, @samp{.bak} files, and the @samp{.orig} and +@samp{.rej} files produced by @code{patch}. + +@kindex # @r{(Dired)} +@findex dired-flag-auto-save-files +@cindex deleting auto-save files + @kbd{#} (@code{dired-flag-auto-save-files}) flags for deletion all +files whose names look like auto-save files---that is, files whose +names begin and end with @samp{#}. @xref{Auto Save}. + +@kindex ~ @r{(Dired)} +@findex dired-flag-backup-files + @kbd{~} (@code{dired-flag-backup-files}) flags for deletion all +files whose names say they are backup files---that is, files whose +names end in @samp{~}. @xref{Backup}. + +@kindex . @r{(Dired)} +@vindex dired-kept-versions +@findex dired-clean-directory + @kbd{.} (period, @code{dired-clean-directory}) flags just some of the +backup files for deletion: all but the oldest few and newest few backups +of any one file. Normally @code{dired-kept-versions} (@strong{not} +@code{kept-new-versions}; that applies only when saving) specifies the +number of newest versions of each file to keep, and +@code{kept-old-versions} specifies the number of oldest versions to +keep. + + Period with a positive numeric argument, as in @kbd{C-u 3 .}, +specifies the number of newest versions to keep, overriding +@code{dired-kept-versions}. A negative numeric argument overrides +@code{kept-old-versions}, using minus the value of the argument to +specify the number of oldest versions of each file to keep. + +@findex dired-flag-files-regexp +@kindex % d @r{(Dired)} + The @kbd{% d} command flags all files whose names match a specified +regular expression (@code{dired-flag-files-regexp}). Only the +non-directory part of the file name is used in matching. You can use +@samp{^} and @samp{$} to anchor matches. You can exclude certain +subdirectories from marking by hiding them while you use @kbd{% d}. +@xref{Hiding Subdirectories}. + +@node Dired Visiting +@section Visiting Files in Dired + + There are several Dired commands for visiting or examining the files +listed in the Dired buffer. All of them apply to the current line's +file; if that file is really a directory, these commands invoke Dired on +that subdirectory (making a separate Dired buffer). + +@table @kbd +@item f +@kindex f @r{(Dired)} +@findex dired-find-file +Visit the file described on the current line, like typing @kbd{C-x C-f} +and supplying that file name (@code{dired-find-file}). @xref{Visiting}. + +@item @key{RET} +@itemx e +@kindex RET @r{(Dired)} +@kindex e @r{(Dired)} +Equivalent to @kbd{f}. + +@ignore @c This command seems too risky to document at all. +@item a +@kindex a @r{(Dired)} +@findex dired-find-alternate-file +Like @kbd{f}, but replaces the contents of the Dired buffer with +that of an alternate file or directory (@code{dired-find-alternate-file}). +@end ignore + +@item o +@kindex o @r{(Dired)} +@findex dired-find-file-other-window +Like @kbd{f}, but uses another window to display the file's buffer +(@code{dired-find-file-other-window}). The Dired buffer remains visible +in the first window. This is like using @kbd{C-x 4 C-f} to visit the +file. @xref{Windows}. + +@item C-o +@kindex C-o @r{(Dired)} +@findex dired-display-file +Visit the file described on the current line, and display the buffer in +another window, but do not select that window (@code{dired-display-file}). + +@item Mouse-1 +@itemx Mouse-2 +@findex dired-mouse-find-file-other-window +Visit the file named by the line you click on +(@code{dired-mouse-find-file-other-window}). This uses another window +to display the file, like the @kbd{o} command. + +@item v +@kindex v @r{(Dired)} +@findex dired-view-file +View the file described on the current line, using @kbd{M-x view-file} +(@code{dired-view-file}). Viewing a file with @code{view-file} is +like visiting it, but is slanted toward moving around in the file +conveniently and does not allow changing the file. @xref{Misc File +Ops, View File, Miscellaneous File Operations}. + +@item ^ +@kindex ^ @r{(Dired)} +@findex dired-up-directory +Visit the parent directory of the current directory +(@code{dired-up-directory}). This is equivalent to moving to the line +for @file{..} and typing @kbd{f} there. +@end table + +@node Marks vs Flags +@section Dired Marks vs. Flags + +@cindex marking many files (in Dired) + Instead of flagging a file with @samp{D}, you can @dfn{mark} the +file with some other character (usually @samp{*}). Most Dired +commands to operate on files use the files marked with @samp{*}. The +only command that operates on flagged files is @kbd{x}, which expunges +them. + + Here are some commands for marking with @samp{*}, for unmarking, and +for operating on marks. (@xref{Dired Deletion}, for commands to flag +and unflag files.) + +@table @kbd +@item m +@itemx * m +@kindex m @r{(Dired)} +@kindex * m @r{(Dired)} +@findex dired-mark +Mark the current file with @samp{*} (@code{dired-mark}). With a numeric +argument @var{n}, mark the next @var{n} files starting with the current +file. (If @var{n} is negative, mark the previous @minus{}@var{n} +files.) + +@item * * +@kindex * * @r{(Dired)} +@findex dired-mark-executables +@cindex marking executable files (in Dired) +Mark all executable files with @samp{*} +(@code{dired-mark-executables}). With a numeric argument, unmark all +those files. + +@item * @@ +@kindex * @@ @r{(Dired)} +@findex dired-mark-symlinks +@cindex marking symbolic links (in Dired) +Mark all symbolic links with @samp{*} (@code{dired-mark-symlinks}). +With a numeric argument, unmark all those files. + +@item * / +@kindex * / @r{(Dired)} +@findex dired-mark-directories +@cindex marking subdirectories (in Dired) +Mark with @samp{*} all files which are directories, except for +@file{.} and @file{..} (@code{dired-mark-directories}). With a numeric +argument, unmark all those files. + +@item * s +@kindex * s @r{(Dired)} +@findex dired-mark-subdir-files +Mark all the files in the current subdirectory, aside from @file{.} +and @file{..} (@code{dired-mark-subdir-files}). + +@item u +@itemx * u +@kindex u @r{(Dired)} +@kindex * u @r{(Dired)} +@findex dired-unmark +Remove any mark on this line (@code{dired-unmark}). + +@item @key{DEL} +@itemx * @key{DEL} +@kindex * DEL @r{(Dired)} +@findex dired-unmark-backward +@cindex unmarking files (in Dired) +Move point to previous line and remove any mark on that line +(@code{dired-unmark-backward}). + +@item * ! +@itemx U +@kindex * ! @r{(Dired)} +@kindex U @r{(Dired)} +@findex dired-unmark-all-marks +Remove all marks from all the files in this Dired buffer +(@code{dired-unmark-all-marks}). + +@item * ? @var{markchar} +@itemx M-@key{DEL} +@kindex * ? @r{(Dired)} +@kindex M-DEL @r{(Dired)} +@findex dired-unmark-all-files +Remove all marks that use the character @var{markchar} +(@code{dired-unmark-all-files}). The argument is a single +character---do not use @key{RET} to terminate it. See the description +of the @kbd{* c} command below, which lets you replace one mark +character with another. + +With a numeric argument, this command queries about each marked file, +asking whether to remove its mark. You can answer @kbd{y} meaning yes, +@kbd{n} meaning no, or @kbd{!} to remove the marks from the remaining +files without asking about them. + +@item * C-n +@itemx M-@} +@findex dired-next-marked-file +@kindex * C-n @r{(Dired)} +@kindex M-@} @r{(Dired)} +Move down to the next marked file (@code{dired-next-marked-file}) +A file is ``marked'' if it has any kind of mark. + +@item * C-p +@itemx M-@{ +@findex dired-prev-marked-file +@kindex * C-p @r{(Dired)} +@kindex M-@{ @r{(Dired)} +Move up to the previous marked file (@code{dired-prev-marked-file}) + +@item t +@itemx * t +@kindex t @r{(Dired)} +@kindex * t @r{(Dired)} +@findex dired-toggle-marks +@cindex toggling marks (in Dired) +Toggle all marks (@code{dired-toggle-marks}): files marked with @samp{*} +become unmarked, and unmarked files are marked with @samp{*}. Files +marked in any other way are not affected. + +@item * c @var{old-markchar} @var{new-markchar} +@kindex * c @r{(Dired)} +@findex dired-change-marks +Replace all marks that use the character @var{old-markchar} with marks +that use the character @var{new-markchar} (@code{dired-change-marks}). +This command is the primary way to create or use marks other than +@samp{*} or @samp{D}. The arguments are single characters---do not use +@key{RET} to terminate them. + +You can use almost any character as a mark character by means of this +command, to distinguish various classes of files. If @var{old-markchar} +is a space (@samp{ }), then the command operates on all unmarked files; +if @var{new-markchar} is a space, then the command unmarks the files it +acts on. + +To illustrate the power of this command, here is how to put @samp{D} +flags on all the files that have no marks, while unflagging all those +that already have @samp{D} flags: + +@example +* c D t * c SPC D * c t SPC +@end example + +This assumes that no files were already marked with @samp{t}. + +@item % m @var{regexp} @key{RET} +@itemx * % @var{regexp} @key{RET} +@findex dired-mark-files-regexp +@kindex % m @r{(Dired)} +@kindex * % @r{(Dired)} +Mark (with @samp{*}) all files whose names match the regular expression +@var{regexp} (@code{dired-mark-files-regexp}). This command is like +@kbd{% d}, except that it marks files with @samp{*} instead of flagging +with @samp{D}. + +Only the non-directory part of the file name is used in matching. Use +@samp{^} and @samp{$} to anchor matches. You can exclude +subdirectories by temporarily hiding them (@pxref{Hiding +Subdirectories}). + +@item % g @var{regexp} @key{RET} +@findex dired-mark-files-containing-regexp +@kindex % g @r{(Dired)} +@cindex finding files containing regexp matches (in Dired) +Mark (with @samp{*}) all files whose @emph{contents} contain a match for +the regular expression @var{regexp} +(@code{dired-mark-files-containing-regexp}). This command is like +@kbd{% m}, except that it searches the file contents instead of the file +name. + +@item C-x u +@itemx C-_ +@itemx C-/ +@kindex C-_ @r{(Dired)} +@findex dired-undo +Undo changes in the Dired buffer, such as adding or removing +marks (@code{dired-undo}). @emph{This command does not revert the +actual file operations, nor recover lost files!} It just undoes +changes in the buffer itself. + +In some cases, using this after commands that operate on files can +cause trouble. For example, after renaming one or more files, +@code{dired-undo} restores the original names in the Dired buffer, +which gets the Dired buffer out of sync with the actual contents of +the directory. +@end table + +@node Operating on Files +@section Operating on Files +@cindex operating on files in Dired + + This section describes the basic Dired commands to operate on one file +or several files. All of these commands are capital letters; all of +them use the minibuffer, either to read an argument or to ask for +confirmation, before they act. All of them let you specify the +files to manipulate in these ways: + +@itemize @bullet +@item +If you give the command a numeric prefix argument @var{n}, it operates +on the next @var{n} files, starting with the current file. (If @var{n} +is negative, the command operates on the @minus{}@var{n} files preceding +the current line.) + +@item +Otherwise, if some files are marked with @samp{*}, the command operates +on all those files. + +@item +Otherwise, the command operates on the current file only. +@end itemize + +@noindent +Certain other Dired commands, such as @kbd{!} and the @samp{%} +commands, use the same conventions to decide which files to work on. + +@vindex dired-dwim-target +@cindex two directories (in Dired) + Commands which ask for a destination directory, such as those which +copy and rename files or create links for them, try to guess the default +target directory for the operation. Normally, they suggest the Dired +buffer's default directory, but if the variable @code{dired-dwim-target} +is non-@code{nil}, and if there is another Dired buffer displayed in the +next window, that other buffer's directory is suggested instead. + + Here are the file-manipulating Dired commands that operate on files. + +@table @kbd +@findex dired-do-copy +@kindex C @r{(Dired)} +@cindex copying files (in Dired) +@item C @var{new} @key{RET} +Copy the specified files (@code{dired-do-copy}). The argument @var{new} +is the directory to copy into, or (if copying a single file) the new +name. This is like the shell command @code{cp}. + +@vindex dired-copy-preserve-time +If @code{dired-copy-preserve-time} is non-@code{nil}, then copying +with this command preserves the modification time of the old file in +the copy, like @samp{cp -p}. + +@vindex dired-recursive-copies +@cindex recursive copying +The variable @code{dired-recursive-copies} controls whether to copy +directories recursively (like @samp{cp -r}). The default is +@code{nil}, which means that directories cannot be copied. + +@item D +@findex dired-do-delete +@kindex D @r{(Dired)} +Delete the specified files (@code{dired-do-delete}). This is like the +shell command @code{rm}. + +Like the other commands in this section, this command operates on the +@emph{marked} files, or the next @var{n} files. By contrast, @kbd{x} +(@code{dired-do-flagged-delete}) deletes all @dfn{flagged} files. + +@findex dired-do-rename +@kindex R @r{(Dired)} +@cindex renaming files (in Dired) +@cindex moving files (in Dired) +@item R @var{new} @key{RET} +Rename the specified files (@code{dired-do-rename}). If you rename a +single file, the argument @var{new} is the new name of the file. If +you rename several files, the argument @var{new} is the directory into +which to move the files (this is like the shell command @code{mv}). + +Dired automatically changes the visited file name of buffers associated +with renamed files so that they refer to the new names. + +@findex dired-do-hardlink +@kindex H @r{(Dired)} +@cindex hard links (in Dired) +@item H @var{new} @key{RET} +Make hard links to the specified files (@code{dired-do-hardlink}). +This is like the shell command @code{ln}. The argument @var{new} is +the directory to make the links in, or (if making just one link) the +name to give the link. + +@findex dired-do-symlink +@kindex S @r{(Dired)} +@cindex symbolic links (creation in Dired) +@item S @var{new} @key{RET} +Make symbolic links to the specified files (@code{dired-do-symlink}). +This is like @samp{ln -s}. The argument @var{new} is the directory to +make the links in, or (if making just one link) the name to give the +link. + +@findex dired-do-chmod +@kindex M @r{(Dired)} +@cindex changing file permissions (in Dired) +@item M @var{modespec} @key{RET} +Change the mode (also called ``permission bits'') of the specified files +(@code{dired-do-chmod}). This uses the @code{chmod} program, so +@var{modespec} can be any argument that @code{chmod} can handle. + +@findex dired-do-chgrp +@kindex G @r{(Dired)} +@cindex changing file group (in Dired) +@item G @var{newgroup} @key{RET} +Change the group of the specified files to @var{newgroup} +(@code{dired-do-chgrp}). + +@findex dired-do-chown +@kindex O @r{(Dired)} +@cindex changing file owner (in Dired) +@item O @var{newowner} @key{RET} +Change the owner of the specified files to @var{newowner} +(@code{dired-do-chown}). (On most systems, only the superuser can do +this.) + +@vindex dired-chown-program +The variable @code{dired-chown-program} specifies the name of the +program to use to do the work (different systems put @code{chown} in +different places). + +@findex dired-do-touch +@kindex T @r{(Dired)} +@cindex changing file time (in Dired) +@item T @var{timestamp} @key{RET} +Touch the specified files (@code{dired-do-touch}). This means +updating their modification times to the present time. This is like +the shell command @code{touch}. + +@findex dired-do-print +@kindex P @r{(Dired)} +@cindex printing files (in Dired) +@item P @var{command} @key{RET} +Print the specified files (@code{dired-do-print}). You must specify the +command to print them with, but the minibuffer starts out with a +suitable guess made using the variables @code{lpr-command} and +@code{lpr-switches} (the same variables that @code{lpr-buffer} uses; +@pxref{Printing}). + +@findex dired-do-compress +@kindex Z @r{(Dired)} +@cindex compressing files (in Dired) +@item Z +Compress the specified files (@code{dired-do-compress}). If the file +appears to be a compressed file already, uncompress it instead. + +@findex dired-do-load +@kindex L @r{(Dired)} +@cindex loading several files (in Dired) +@item L +Load the specified Emacs Lisp files (@code{dired-do-load}). +@xref{Lisp Libraries}. + +@findex dired-do-byte-compile +@kindex B @r{(Dired)} +@cindex byte-compiling several files (in Dired) +@item B +Byte compile the specified Emacs Lisp files +(@code{dired-do-byte-compile}). @xref{Byte Compilation,, Byte +Compilation, elisp, The Emacs Lisp Reference Manual}. + +@kindex A @r{(Dired)} +@findex dired-do-search +@cindex search multiple files (in Dired) +@item A @var{regexp} @key{RET} +Search all the specified files for the regular expression @var{regexp} +(@code{dired-do-search}). + +This command is a variant of @code{tags-search}. The search stops at +the first match it finds; use @kbd{M-,} to resume the search and find +the next match. @xref{Tags Search}. + +@kindex Q @r{(Dired)} +@findex dired-do-query-replace-regexp +@cindex search and replace in multiple files (in Dired) +@item Q @var{regexp} @key{RET} @var{to} @key{RET} +Perform @code{query-replace-regexp} on each of the specified files, +replacing matches for @var{regexp} with the string +@var{to} (@code{dired-do-query-replace-regexp}). + +This command is a variant of @code{tags-query-replace}. If you exit the +query replace loop, you can use @kbd{M-,} to resume the scan and replace +more matches. @xref{Tags Search}. +@end table + +@node Shell Commands in Dired +@section Shell Commands in Dired +@cindex shell commands, Dired + +@findex dired-do-shell-command +@kindex ! @r{(Dired)} +@kindex X @r{(Dired)} +The Dired command @kbd{!} (@code{dired-do-shell-command}) reads a +shell command string in the minibuffer and runs that shell command on +all the specified files. (@kbd{X} is a synonym for @kbd{!}.) You can +specify the files to operate on in the usual ways for Dired commands +(@pxref{Operating on Files}). + + The working directory for the shell command is the top-level directory +of the Dired buffer. + + There are two ways of applying a shell command to multiple files: + +@itemize @bullet +@item +If you use @samp{*} surrounded by whitespace in the shell command, +then the command runs just once, with the list of file names +substituted for the @samp{*}. The order of file names is the order of +appearance in the Dired buffer. + +Thus, @kbd{! tar cf foo.tar * @key{RET}} runs @code{tar} on the entire +list of file names, putting them into one tar file @file{foo.tar}. + +If you want to use @samp{*} as a shell wildcard with whitespace around +it, write @samp{*""}. In the shell, this is equivalent to @samp{*}; +but since the @samp{*} is not surrounded by whitespace, Dired does +not treat it specially. + +@item +If the command string doesn't contain @samp{*} surrounded by +whitespace, then it runs once @emph{for each file}. Normally the file +name is added at the end. + +For example, @kbd{! uudecode @key{RET}} runs @code{uudecode} on each +file. + +@item +However, if the command string contains @samp{?} surrounded by +whitespace, the current file name is substituted for @samp{?} (rather +than added at the end). You can use @samp{?} this way more than once +in the command, and the same file name replaces each occurrence. +@end itemize + + To iterate over the file names in a more complicated fashion, use an +explicit shell loop. For example, here is how to uuencode each file, +making the output file name by appending @samp{.uu} to the input file +name: + +@example +for file in * ; do uuencode "$file" "$file" >"$file".uu; done +@end example + + The @kbd{!} command does not attempt to update the Dired buffer to +show new or modified files, because it doesn't understand shell +commands, and does not know what files the shell command changed. Use +the @kbd{g} command to update the Dired buffer (@pxref{Dired +Updating}). + +@node Transforming File Names +@section Transforming File Names in Dired + + This section describes Dired commands which alter file names in a +systematic way. Each command operates on some or all of the marked +files, using a new name made by transforming the existing name. + + Like the basic Dired file-manipulation commands (@pxref{Operating on +Files}), the commands described here operate either on the next +@var{n} files, or on all files marked with @samp{*}, or on the current +file. (To mark files, use the commands described in @ref{Marks vs +Flags}.) + + All of the commands described in this section work +@emph{interactively}: they ask you to confirm the operation for each +candidate file. Thus, you can select more files than you actually +need to operate on (e.g., with a regexp that matches many files), and +then filter the selected names by typing @kbd{y} or @kbd{n} when the +command prompts for confirmation. + +@table @kbd +@findex dired-upcase +@kindex % u @r{(Dired)} +@cindex upcase file names +@item % u +Rename each of the selected files to an upper-case name +(@code{dired-upcase}). If the old file names are @file{Foo} +and @file{bar}, the new names are @file{FOO} and @file{BAR}. + +@item % l +@findex dired-downcase +@kindex % l @r{(Dired)} +@cindex downcase file names +Rename each of the selected files to a lower-case name +(@code{dired-downcase}). If the old file names are @file{Foo} and +@file{bar}, the new names are @file{foo} and @file{bar}. + +@item % R @var{from} @key{RET} @var{to} @key{RET} +@kindex % R @r{(Dired)} +@findex dired-do-rename-regexp +@itemx % C @var{from} @key{RET} @var{to} @key{RET} +@kindex % C @r{(Dired)} +@findex dired-do-copy-regexp +@itemx % H @var{from} @key{RET} @var{to} @key{RET} +@kindex % H @r{(Dired)} +@findex dired-do-hardlink-regexp +@itemx % S @var{from} @key{RET} @var{to} @key{RET} +@kindex % S @r{(Dired)} +@findex dired-do-symlink-regexp +These four commands rename, copy, make hard links and make soft links, +in each case computing the new name by regular-expression substitution +from the name of the old file. +@end table + + The four regular-expression substitution commands effectively +perform a search-and-replace on the selected file names. They read +two arguments: a regular expression @var{from}, and a substitution +pattern @var{to}; they match each ``old'' file name against +@var{from}, and then replace the matching part with @var{to}. You can +use @samp{\&} and @samp{\@var{digit}} in @var{to} to refer to all or +part of what the pattern matched in the old file name, as in +@code{replace-regexp} (@pxref{Regexp Replace}). If the regular +expression matches more than once in a file name, only the first match +is replaced. + + For example, @kbd{% R ^.*$ @key{RET} x-\& @key{RET}} renames each +selected file by prepending @samp{x-} to its name. The inverse of this, +removing @samp{x-} from the front of each file name, is also possible: +one method is @kbd{% R ^x-\(.*\)$ @key{RET} \1 @key{RET}}; another is +@kbd{% R ^x- @key{RET} @key{RET}}. (Use @samp{^} and @samp{$} to anchor +matches that should span the whole file name.) + + Normally, the replacement process does not consider the files' +directory names; it operates on the file name within the directory. If +you specify a numeric argument of zero, then replacement affects the +entire absolute file name including directory name. (A non-zero +argument specifies the number of files to operate on.) + + You may want to select the set of files to operate on using the same +regexp @var{from} that you will use to operate on them. To do this, +mark those files with @kbd{% m @var{from} @key{RET}}, then use the +same regular expression in the command to operate on the files. To +make this more convenient, the @kbd{%} commands to operate on files +use the last regular expression specified in any @kbd{%} command as a +default. + +@node Comparison in Dired +@section File Comparison with Dired +@cindex file comparison (in Dired) +@cindex compare files (in Dired) + + Here are two Dired commands that compare specified files using +@code{diff}. They show the output in a buffer using Diff mode +(@pxref{Comparing Files}). + +@table @kbd +@item = +@findex dired-diff +@kindex = @r{(Dired)} +Compare the current file (the file at point) with another file (the +file at the mark) using the @code{diff} program (@code{dired-diff}). +The file at the mark is the first argument of @code{diff}, and the +file at point is the second argument. This refers to the ordinary +Emacs mark, not Dired marks; use @kbd{C-@key{SPC}} +(@code{set-mark-command}) to set the mark at the first file's line +(@pxref{Setting Mark}). + +@findex dired-backup-diff +@kindex M-= @r{(Dired)} +@item M-= +Compare the current file with its latest backup file +(@code{dired-backup-diff}). If the current file is itself a backup, +compare it with the file it is a backup of; this way, you can compare +a file with any one of its backups. + +The backup file is the first file given to @code{diff}. +@end table + +@node Subdirectories in Dired +@section Subdirectories in Dired +@cindex subdirectories in Dired +@cindex expanding subdirectories in Dired + + A Dired buffer displays just one directory in the normal case; +but you can optionally include its subdirectories as well. + + The simplest way to include multiple directories in one Dired buffer is +to specify the options @samp{-lR} for running @code{ls}. (If you give a +numeric argument when you run Dired, then you can specify these options +in the minibuffer.) That produces a recursive directory listing showing +all subdirectories at all levels. + + More often, you will want to show only specific subdirectories. You +can do this with the @kbd{i} command: + +@table @kbd +@findex dired-maybe-insert-subdir +@kindex i @r{(Dired)} +@item i +@cindex inserted subdirectory (Dired) +@cindex in-situ subdirectory (Dired) +Insert the contents of a subdirectory later in the buffer. +@end table + +Use the @kbd{i} (@code{dired-maybe-insert-subdir}) command on a line +that describes a file which is a directory. It inserts the contents of +that directory into the same Dired buffer, and moves there. Inserted +subdirectory contents follow the top-level directory of the Dired +buffer, just as they do in @samp{ls -lR} output. + +If the subdirectory's contents are already present in the buffer, the +@kbd{i} command just moves to it. + +In either case, @kbd{i} sets the Emacs mark before moving, so @kbd{C-u +C-@key{SPC}} takes you back to the old position in the buffer (the line +describing that subdirectory). + +Use the @kbd{l} command (@code{dired-do-redisplay}) to update the +subdirectory's contents. Use @kbd{C-u k} on the subdirectory header +line to delete the subdirectory (@pxref{Dired Updating}). You can also +hide and show inserted subdirectories (@pxref{Hiding Subdirectories}). + + + + +@ifnottex +@include dired-xtra.texi +@end ifnottex + +@node Subdirectory Motion +@section Moving Over Subdirectories + + When a Dired buffer lists subdirectories, you can use the page motion +commands @kbd{C-x [} and @kbd{C-x ]} to move by entire directories +(@pxref{Pages}). + +@cindex header line (Dired) +@cindex directory header lines + The following commands move across, up and down in the tree of +directories within one Dired buffer. They move to @dfn{directory header +lines}, which are the lines that give a directory's name, at the +beginning of the directory's contents. + +@table @kbd +@findex dired-next-subdir +@kindex C-M-n @r{(Dired)} +@item C-M-n +Go to next subdirectory header line, regardless of level +(@code{dired-next-subdir}). + +@findex dired-prev-subdir +@kindex C-M-p @r{(Dired)} +@item C-M-p +Go to previous subdirectory header line, regardless of level +(@code{dired-prev-subdir}). + +@findex dired-tree-up +@kindex C-M-u @r{(Dired)} +@item C-M-u +Go up to the parent directory's header line (@code{dired-tree-up}). + +@findex dired-tree-down +@kindex C-M-d @r{(Dired)} +@item C-M-d +Go down in the directory tree, to the first subdirectory's header line +(@code{dired-tree-down}). + +@findex dired-prev-dirline +@kindex < @r{(Dired)} +@item < +Move up to the previous directory-file line (@code{dired-prev-dirline}). +These lines are the ones that describe a directory as a file in its +parent directory. + +@findex dired-next-dirline +@kindex > @r{(Dired)} +@item > +Move down to the next directory-file line (@code{dired-prev-dirline}). +@end table + +@node Hiding Subdirectories +@section Hiding Subdirectories +@cindex hiding subdirectories (Dired) +@cindex showing hidden subdirectories (Dired) + + @dfn{Hiding} a subdirectory means to make it invisible, except for its +header line. + +@table @kbd +@item $ +@findex dired-hide-subdir +@kindex $ @r{(Dired)} +Hide or show the subdirectory that point is in, and move point to the +next subdirectory (@code{dired-hide-subdir}). This is a toggle. A +numeric argument serves as a repeat count. + +@item M-$ +@findex dired-hide-all +@kindex M-$ @r{(Dired)} +Hide all subdirectories in this Dired buffer, leaving only their header +lines (@code{dired-hide-all}). Or, if any subdirectory is currently +hidden, make all subdirectories visible again. You can use this command +to get an overview in very deep directory trees or to move quickly to +subdirectories far away. +@end table + + Ordinary Dired commands never consider files inside a hidden +subdirectory. For example, the commands to operate on marked files +ignore files in hidden directories even if they are marked. Thus you +can use hiding to temporarily exclude subdirectories from operations +without having to remove the Dired marks on files in those +subdirectories. + +@xref{Dired Updating}, for how to insert or delete a subdirectory listing. + +@node Dired Updating +@section Updating the Dired Buffer +@cindex updating Dired buffer +@cindex refreshing displayed files + + This section describes commands to update the Dired buffer to reflect +outside (non-Dired) changes in the directories and files, and to delete +part of the Dired buffer. + +@table @kbd +@item g +Update the entire contents of the Dired buffer (@code{revert-buffer}). + +@item l +Update the specified files (@code{dired-do-redisplay}). You specify the +files for @kbd{l} in the same way as for file operations. + +@item k +Delete the specified @emph{file lines}---not the files, just the lines +(@code{dired-do-kill-lines}). + +@item s +Toggle between alphabetical order and date/time order +(@code{dired-sort-toggle-or-edit}). + +@item C-u s @var{switches} @key{RET} +Refresh the Dired buffer using @var{switches} as +@code{dired-listing-switches}. +@end table + +@kindex g @r{(Dired)} +@findex revert-buffer @r{(Dired)} + Type @kbd{g} (@code{revert-buffer}) to update the contents of the +Dired buffer, based on changes in the files and directories listed. +This preserves all marks except for those on files that have vanished. +Hidden subdirectories are updated but remain hidden. + +@kindex l @r{(Dired)} +@findex dired-do-redisplay + To update only some of the files, type @kbd{l} +(@code{dired-do-redisplay}). Like the Dired file-operating commands, +this command operates on the next @var{n} files (or previous +@minus{}@var{n} files), or on the marked files if any, or on the +current file. Updating the files means reading their current status, +then updating their lines in the buffer to indicate that status. + + If you use @kbd{l} on a subdirectory header line, it updates the +contents of the corresponding subdirectory. + +@kindex k @r{(Dired)} +@findex dired-do-kill-lines + To delete the specified @emph{file lines} from the buffer---not +delete the files---type @kbd{k} (@code{dired-do-kill-lines}). Like +the file-operating commands, this command operates on the next @var{n} +files, or on the marked files if any; but it does not operate on the +current file as a last resort. + + If you use @kbd{k} with a numeric prefix argument to kill the line +for a file that is a directory, which you have inserted in the Dired +buffer as a subdirectory, it deletes that subdirectory from the buffer +as well. Typing @kbd{C-u k} on the header line for a subdirectory +also deletes the subdirectory from the Dired buffer. + + The @kbd{g} command brings back any individual lines that you have +killed in this way, but not subdirectories---you must use @kbd{i} to +reinsert a subdirectory. + +@cindex Dired sorting +@cindex sorting Dired buffer +@kindex s @r{(Dired)} +@findex dired-sort-toggle-or-edit + The files in a Dired buffers are normally listed in alphabetical order +by file names. Alternatively Dired can sort them by date/time. The +Dired command @kbd{s} (@code{dired-sort-toggle-or-edit}) switches +between these two sorting modes. The mode line in a Dired buffer +indicates which way it is currently sorted---by name, or by date. + + @kbd{C-u s @var{switches} @key{RET}} lets you specify a new value for +@code{dired-listing-switches}. + +@node Dired and Find +@section Dired and @code{find} +@cindex @code{find} and Dired + + You can select a set of files for display in a Dired buffer more +flexibly by using the @code{find} utility to choose the files. + +@findex find-name-dired + To search for files with names matching a wildcard pattern use +@kbd{M-x find-name-dired}. It reads arguments @var{directory} and +@var{pattern}, and chooses all the files in @var{directory} or its +subdirectories whose individual names match @var{pattern}. + + The files thus chosen are displayed in a Dired buffer, in which the +ordinary Dired commands are available. + +@findex find-grep-dired + If you want to test the contents of files, rather than their names, +use @kbd{M-x find-grep-dired}. This command reads two minibuffer +arguments, @var{directory} and @var{regexp}; it chooses all the files in +@var{directory} or its subdirectories that contain a match for +@var{regexp}. It works by running the programs @code{find} and +@code{grep}. See also @kbd{M-x grep-find}, in @ref{Grep Searching}. +Remember to write the regular expression for @code{grep}, not for Emacs. +(An alternative method of showing files whose contents match a given +regexp is the @kbd{% g @var{regexp}} command, see @ref{Marks vs Flags}.) + +@findex find-dired + The most general command in this series is @kbd{M-x find-dired}, which +lets you specify any condition that @code{find} can test. It takes two +minibuffer arguments, @var{directory} and @var{find-args}; it runs +@code{find} in @var{directory}, passing @var{find-args} to tell +@code{find} what condition to test. To use this command, you need to +know how to use @code{find}. + +@vindex find-ls-option + The format of listing produced by these commands is controlled by the +variable @code{find-ls-option}, whose default value specifies using +options @samp{-ld} for @code{ls}. If your listings are corrupted, you +may need to change the value of this variable. + +@findex locate +@findex locate-with-filter +@cindex file database (locate) +@vindex locate-command + The command @kbd{M-x locate} provides a similar interface to the +@code{locate} program. @kbd{M-x locate-with-filter} is similar, but +keeps only files whose names match a given regular expression. + + These buffers don't work entirely like ordinary Dired buffers: file +operations work, but do not always automatically update the buffer. +Reverting the buffer with @kbd{g} deletes all inserted subdirectories, +and erases all flags and marks. + +@node Wdired +@section Editing the Dired Buffer + +@cindex wdired mode +@findex wdired-change-to-wdired-mode + Wdired is a special mode that allows you to perform file operations +by editing the Dired buffer directly (the ``W'' in ``Wdired'' stands +for ``writable.'') To enter Wdired mode, type @kbd{C-x C-q} or @kbd{M-x +wdired-change-to-wdired-mode} while in a Dired buffer. Alternatively, +use @samp{Edit File Names} in the @samp{Immediate} menu bar menu. + +@findex wdired-finish-edit + While in Wdired mode, you can rename files by editing the file names +displayed in the Dired buffer. All the ordinary Emacs editing +commands, including rectangle operations and @code{query-replace}, are +available for this. Once you are done editing, type @kbd{C-c C-c} +(@code{wdired-finish-edit}). This applies your changes and switches +back to ordinary Dired mode. + + Apart from simply renaming files, you can move a file to another +directory by typing in the new file name (either absolute or +relative). To mark a file for deletion, delete the entire file name. +To change the target of a symbolic link, edit the link target name +which appears next to the link name. + + The rest of the text in the buffer, such as the file sizes and +modification dates, is marked read-only, so you can't edit it. +However, if you set @code{wdired-allow-to-change-permissions} to +@code{t}, you can edit the file permissions. For example, you can +change @samp{-rw-r--r--} to @samp{-rw-rw-rw-} to make a file +world-writable. These changes also take effect when you type @kbd{C-c +C-c}. + +@node Image-Dired +@section Viewing Image Thumbnails in Dired +@cindex image-dired mode +@cindex image-dired + + Image-Dired is a facility for browsing image files. It provides viewing +the images either as thumbnails or in full size, either inside Emacs +or through an external viewer. + +@kindex C-t d @r{(Image-Dired)} +@findex image-dired-display-thumbs + To enter Image-Dired, mark the image files you want to look at in +the Dired buffer, using @kbd{m} as usual. Then type @kbd{C-t d} +(@code{image-dired-display-thumbs}). This creates and switches to a +buffer containing image-dired, corresponding to the marked files. + + You can also enter Image-Dired directly by typing @kbd{M-x +image-dired}. This prompts for a directory; specify one that has +image files. This creates thumbnails for all the images in that +directory, and displays them all in the ``thumbnail buffer.'' This +takes a long time if the directory contains many image files, and it +asks for confirmation if the number of image files exceeds +@code{image-dired-show-all-from-dir-max-files}. + + With point in the thumbnail buffer, you can type @kbd{RET} +(@code{image-dired-display-thumbnail-original-image}) to display a +sized version of it in another window. This sizes the image to fit +the window. Use the arrow keys to move around in the buffer. For +easy browsing, use @kbd{SPC} +(@code{image-dired-display-next-thumbnail-original}) to advance and +display the next image. Typing @kbd{DEL} +(@code{image-dired-display-previous-thumbnail-original}) backs up to +the previous thumbnail and displays that instead. + +@vindex image-dired-external-viewer + To view and the image in its original size, either provide a prefix +argument (@kbd{C-u}) before pressing @kbd{RET}, or type +@kbd{C-@key{RET}} (@code{image-dired-thumbnail-display-external}) to +display the image in an external viewer. You must first configure +@code{image-dired-external-viewer}. + + You can delete images through Image-Dired also. Type @kbd{d} +(@code{image-dired-flag-thumb-original-file}) to flag the image file +for deletion in the Dired buffer. You can also delete the thumbnail +image from the thumbnail buffer with @kbd{C-d} +(@code{image-dired-delete-char}). + + More advanced features include @dfn{image tags}, which are metadata +used to categorize image files. The tags are stored in a plain text +file configured by @code{image-dired-db-file}. + + To tag image files, mark them in the dired buffer (you can also mark +files in Dired from the thumbnail buffer by typing @kbd{m}) and type +@kbd{C-t t} (@code{image-dired-tag-files}). You will be prompted for +a tag. To mark files having a certain tag, type @kbd{C-t f} +(@code{image-dired-mark-tagged-files}). After marking image files +with a certain tag, you can use @kbd{C-t d} to view them. + + You can also tag a file directly from the thumbnail buffer by typing +@kbd{t t} and you can remove a tag by typing @kbd{t r}. There is also +a special ``tag'' called ``comment'' for each file (it is not a tag in +the exact same sense as the other tags, it is handled slightly +different). That is used to enter a comment or description about the +image. You comment a file from the thumbnail buffer by typing +@kbd{c}. You will be prompted for a comment. Type @kbd{C-t c} to add +a comment from Dired (@code{image-dired-dired-comment-files}). + + Image-Dired also provides simple image manipulation. In the +thumbnail buffer, type @kbd{L} to rotate the original image 90 degrees +anti clockwise, and @kbd{R} to rotate it 90 degrees clockwise. This +rotation is lossless, and uses an external utility called JpegTRAN. + +@node Misc Dired Features +@section Other Dired Features + +@kindex + @r{(Dired)} +@findex dired-create-directory + An unusual Dired file-operation command is @kbd{+} +(@code{dired-create-directory}). This command reads a directory name, +and creates the directory if it does not already exist. + +@cindex Adding to the kill ring in Dired. +@kindex w @r{(Dired)} +@findex dired-copy-filename-as-kill + The @kbd{w} command (@code{dired-copy-filename-as-kill}) puts the +names of the marked (or next @var{n}) files into the kill ring, as if +you had killed them with @kbd{C-w}. The names are separated by a space. + + With a zero prefix argument, this uses the absolute file name of +each marked file. With just @kbd{C-u} as the prefix argument, it uses +file names relative to the Dired buffer's default directory. (This +can still contain slashes if in a subdirectory.) As a special case, +if point is on a directory headerline, @kbd{w} gives you the absolute +name of that directory. Any prefix argument or marked files are +ignored in this case. + + The main purpose of this command is so that you can yank the file +names into arguments for other Emacs commands. It also displays what +it added to the kill ring, so you can use it to display the list of +currently marked files in the echo area. + +@findex dired-compare-directories + The command @kbd{M-x dired-compare-directories} is used to compare +the current Dired buffer with another directory. It marks all the files +that are ``different'' between the two directories. It puts these marks +in all Dired buffers where these files are listed, which of course includes +the current buffer. + + The default comparison method (used if you type @key{RET} at the +prompt) is to compare just the file names---each file name that does +not appear in the other directory is ``different.'' You can specify +more stringent comparisons by entering a Lisp expression, which can +refer to the variables @code{size1} and @code{size2}, the respective +file sizes; @code{mtime1} and @code{mtime2}, the last modification +times in seconds, as floating point numbers; and @code{fa1} and +@code{fa2}, the respective file attribute lists (as returned by the +function @code{file-attributes}). This expression is evaluated for +each pair of like-named files, and if the expression's value is +non-@code{nil}, those files are considered ``different.'' + + For instance, the sequence @code{M-x dired-compare-directories +@key{RET} (> mtime1 mtime2) @key{RET}} marks files newer in this +directory than in the other, and marks files older in the other +directory than in this one. It also marks files with no counterpart, +in both directories, as always. + +@cindex drag and drop, Dired + On the X window system, Emacs supports the ``drag and drop'' +protocol. You can drag a file object from another program, and drop +it onto a Dired buffer; this either moves, copies, or creates a link +to the file in that directory. Precisely which action is taken is +determined by the originating program. Dragging files out of a Dired +buffer is currently not supported. + +@ignore + arch-tag: d105f9b9-fc1b-4c5f-a949-9b2cf3ca2fc1 +@end ignore diff --cc doc/emacs/display.texi index bb84610d74,0000000000..5ef7e7fa78 mode 100644,000000..100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi @@@ -1,1250 -1,0 +1,1250 @@@ +@c This is part of the Emacs manual. +@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, +@c 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@c See file emacs.texi for copying conditions. +@node Display, Search, Registers, Top +@chapter Controlling the Display + + Since only part of a large buffer fits in the window, Emacs tries to +show a part that is likely to be interesting. Display-control +commands allow you to specify which part of the text you want to see, +and how to display it. Many variables also affect the details of +redisplay. Unless otherwise stated, the variables described in this +chapter have their effect by customizing redisplay itself; therefore, +their values only make a difference at the time of redisplay. + +@menu +* Scrolling:: Commands to move text up and down in a window. +* Auto Scrolling:: Redisplay scrolls text automatically when needed. +* Horizontal Scrolling:: Moving text left and right in a window. +* Follow Mode:: Follow mode lets two windows scroll as one. +* Faces:: How to change the display style using faces. +* Standard Faces:: Emacs' predefined faces. +* Font Lock:: Minor mode for syntactic highlighting using faces. +* Highlight Interactively:: Tell Emacs what text to highlight. +* Fringes:: Enabling or disabling window fringes. +* Displaying Boundaries:: Displaying top and bottom of the buffer. +* Useless Whitespace:: Showing possibly-spurious trailing whitespace. +* Selective Display:: Hiding lines with lots of indentation. +* Optional Mode Line:: Optional mode line display features. +* Text Display:: How text characters are normally displayed. +* Cursor Display:: Features for displaying the cursor. +* Line Truncation:: Truncating lines to fit the screen width instead + of continuing them to multiple screen lines. +* Display Custom:: Information on variables for customizing display. +@end menu + +@node Scrolling +@section Scrolling + + If a buffer contains text that is too large to fit entirely within a +window that is displaying the buffer, Emacs shows a contiguous portion of +the text. The portion shown always contains point. + +@cindex scrolling + @dfn{Scrolling} means moving text up or down in the window so that +different parts of the text are visible. Scrolling ``forward'' or +``up'' means that text moves up, and new text appears at the bottom. +Scrolling ``backward'' or ``down'' moves text down, and new text +appears at the top. + + Scrolling happens automatically if you move point past the bottom or +top of the window. You can also scroll explicitly with the commands +in this section. + +@table @kbd +@item C-l +Clear screen and redisplay, scrolling the selected window to center +point vertically within it (@code{recenter}). +@item C-v +Scroll forward (a windowful or a specified number of lines) (@code{scroll-up}). +@item @key{NEXT} +@itemx @key{PAGEDOWN} +Likewise, scroll forward. +@item M-v +Scroll backward (@code{scroll-down}). +@item @key{PRIOR} +@itemx @key{PAGEUP} +Likewise, scroll backward. +@item @var{arg} C-l +Scroll so point is on line @var{arg} (@code{recenter}). +@item C-M-l +Scroll heuristically to bring useful information onto the screen +(@code{reposition-window}). +@end table + +@kindex C-l +@findex recenter + The most basic scrolling command is @kbd{C-l} (@code{recenter}) with +no argument. It scrolls the selected window so that point is halfway +down from the top of the window. On a text terminal, it also clears +the screen and redisplays all windows. That is useful in case the +screen is garbled (@pxref{Screen Garbled}). + +@kindex C-v +@kindex M-v +@kindex NEXT +@kindex PRIOR +@kindex PAGEDOWN +@kindex PAGEUP +@findex scroll-up +@findex scroll-down + To read the buffer a windowful at a time, use @kbd{C-v} +(@code{scroll-up}) with no argument. This scrolls forward by nearly +the whole window height. The effect is to take the two lines at the +bottom of the window and put them at the top, followed by nearly a +whole windowful of lines that were not previously visible. If point +was in the text that scrolled off the top, it ends up at the new top +of the window. + +@vindex next-screen-context-lines + @kbd{M-v} (@code{scroll-down}) with no argument scrolls backward in +a similar way, also with overlap. The number of lines of overlap that +the @kbd{C-v} or @kbd{M-v} commands leave is controlled by the +variable @code{next-screen-context-lines}; by default, it is 2. The +function keys @key{NEXT} and @key{PRIOR}, or @key{PAGEDOWN} and +@key{PAGEUP}, are equivalent to @kbd{C-v} and @kbd{M-v}. + + The commands @kbd{C-v} and @kbd{M-v} with a numeric argument scroll +the text in the selected window up or down a few lines. @kbd{C-v} +with an argument moves the text and point up, together, that many +lines; it brings the same number of new lines into view at the bottom +of the window. @kbd{M-v} with numeric argument scrolls the text +downward, bringing that many new lines into view at the top of the +window. @kbd{C-v} with a negative argument is like @kbd{M-v} and vice +versa. + + The names of scroll commands are based on the direction that the +text moves in the window. Thus, the command to scroll forward is +called @code{scroll-up} because it moves the text upward on the +screen. The keys @key{PAGEDOWN} and @key{PAGEUP} derive their names +and customary meanings from a different convention that developed +elsewhere; hence the strange result that @key{PAGEDOWN} runs +@code{scroll-up}. + +@vindex scroll-preserve-screen-position + Some users like the full-screen scroll commands to keep point at the +same screen line. To enable this behavior, set the variable +@code{scroll-preserve-screen-position} to a non-@code{nil} value. In +this mode, when these commands would scroll the text around point off +the screen, or within @code{scroll-margin} lines of the edge, they +move point to keep the same vertical position within the window. +This mode is convenient for browsing through a file by scrolling by +screenfuls; if you come back to the screen where you started, point +goes back to the line where it started. However, this mode is +inconvenient when you move to the next screen in order to move point +to the text there. + + Another way to do scrolling is with @kbd{C-l} with a numeric argument. +@kbd{C-l} does not clear the screen when given an argument; it only scrolls +the selected window. With a positive argument @var{n}, it repositions text +to put point @var{n} lines down from the top. An argument of zero puts +point on the very top line. Point does not move with respect to the text; +rather, the text and point move rigidly on the screen. @kbd{C-l} with a +negative argument puts point that many lines from the bottom of the window. +For example, @kbd{C-u - 1 C-l} puts point on the bottom line, and @kbd{C-u +- 5 C-l} puts it five lines from the bottom. @kbd{C-u C-l} scrolls to put +point at the center (vertically) of the selected window. + +@kindex C-M-l +@findex reposition-window + The @kbd{C-M-l} command (@code{reposition-window}) scrolls the current +window heuristically in a way designed to get useful information onto +the screen. For example, in a Lisp file, this command tries to get the +entire current defun onto the screen if possible. + +@node Auto Scrolling +@section Automatic Scrolling + +@vindex scroll-conservatively + Redisplay scrolls the buffer automatically when point moves out of +the visible portion of the text. The purpose of automatic scrolling +is to make point visible, but you can customize many aspects of how +this is done. + + Normally, automatic scrolling centers point vertically within the +window. However, if you set @code{scroll-conservatively} to a small +number @var{n}, then if you move point just a little off the +screen---less than @var{n} lines---then Emacs scrolls the text just +far enough to bring point back on screen. By default, +@code{scroll-conservatively} is@tie{}0. + +@cindex aggressive scrolling +@vindex scroll-up-aggressively +@vindex scroll-down-aggressively + When the window does scroll by a longer distance, you can control +how aggressively it scrolls, by setting the variables +@code{scroll-up-aggressively} and @code{scroll-down-aggressively}. +The value of @code{scroll-up-aggressively} should be either +@code{nil}, or a fraction @var{f} between 0 and 1. A fraction +specifies where on the screen to put point when scrolling upward. +More precisely, when a window scrolls up because point is above the +window start, the new start position is chosen to put point @var{f} +part of the window height from the top. The larger @var{f}, the more +aggressive the scrolling. + + @code{nil}, which is the default, scrolls to put point at the center. +So it is equivalent to .5. + + Likewise, @code{scroll-down-aggressively} is used for scrolling +down. The value, @var{f}, specifies how far point should be placed +from the bottom of the window; thus, as with +@code{scroll-up-aggressively}, a larger value is more aggressive. + +@vindex scroll-margin + The variable @code{scroll-margin} restricts how close point can come +to the top or bottom of a window. Its value is a number of screen +lines; if point comes within that many lines of the top or bottom of the +window, Emacs recenters the window. By default, @code{scroll-margin} is +0. + +@node Horizontal Scrolling +@section Horizontal Scrolling +@cindex horizontal scrolling + + @dfn{Horizontal scrolling} means shifting all the lines sideways +within a window---so that some of the text near the left margin is not +displayed at all. When the text in a window is scrolled horizontally, +text lines are truncated rather than continued (@pxref{Line +Truncation}). Whenever a window shows truncated lines, Emacs +automatically updates its horizontal scrolling whenever point moves +off the left or right edge of the screen. You can also use these +commands to do explicit horizontal scrolling. + +@table @kbd +@item C-x < +Scroll text in current window to the left (@code{scroll-left}). +@item C-x > +Scroll to the right (@code{scroll-right}). +@end table + +@kindex C-x < +@kindex C-x > +@findex scroll-left +@findex scroll-right + The command @kbd{C-x <} (@code{scroll-left}) scrolls the selected +window to the left by @var{n} columns with argument @var{n}. This moves +part of the beginning of each line off the left edge of the window. +With no argument, it scrolls by almost the full width of the window (two +columns less, to be precise). + + @kbd{C-x >} (@code{scroll-right}) scrolls similarly to the right. The +window cannot be scrolled any farther to the right once it is displayed +normally (with each line starting at the window's left margin); +attempting to do so has no effect. This means that you don't have to +calculate the argument precisely for @w{@kbd{C-x >}}; any sufficiently large +argument will restore the normal display. + + If you use those commands to scroll a window horizontally, that sets +a lower bound for automatic horizontal scrolling. Automatic scrolling +will continue to scroll the window, but never farther to the right +than the amount you previously set by @code{scroll-left}. + +@vindex hscroll-margin + The value of the variable @code{hscroll-margin} controls how close +to the window's edges point is allowed to get before the window will +be automatically scrolled. It is measured in columns. If the value +is 5, then moving point within 5 columns of the edge causes horizontal +scrolling away from that edge. + +@vindex hscroll-step + The variable @code{hscroll-step} determines how many columns to +scroll the window when point gets too close to the edge. If it's +zero, horizontal scrolling centers point horizontally within the +window. If it's a positive integer, it specifies the number of +columns to scroll by. If it's a floating-point number, it specifies +the fraction of the window's width to scroll by. The default is zero. + +@vindex auto-hscroll-mode + To disable automatic horizontal scrolling, set the variable +@code{auto-hscroll-mode} to @code{nil}. + +@node Follow Mode +@section Follow Mode +@cindex Follow mode +@cindex mode, Follow +@findex follow-mode +@cindex windows, synchronizing +@cindex synchronizing windows + + @dfn{Follow mode} is a minor mode that makes two windows, both +showing the same buffer, scroll as a single tall ``virtual window.'' +To use Follow mode, go to a frame with just one window, split it into +two side-by-side windows using @kbd{C-x 3}, and then type @kbd{M-x +follow-mode}. From then on, you can edit the buffer in either of the +two windows, or scroll either one; the other window follows it. + + In Follow mode, if you move point outside the portion visible in one +window and into the portion visible in the other window, that selects +the other window---again, treating the two as if they were parts of +one large window. + + To turn off Follow mode, type @kbd{M-x follow-mode} a second time. + +@node Faces +@section Faces: Controlling Text Display Style +@cindex faces + + You can specify various styles for displaying text using +@dfn{faces}. Each face can specify various @dfn{face attributes}, +such as the font family, the height, weight and slant of the +characters, the foreground and background color, and underlining or +overlining. A face does not have to specify all of these attributes; +often it inherits most of them from another face. + + On graphical display, all the Emacs face attributes are meaningful. +On a text-only terminal, only some of them work. Some text-only +terminals support inverse video, bold, and underline attributes; some +support colors. Text-only terminals generally do not support changing +the height and width or the font family. + + Most major modes assign faces to the text automatically through the +work of Font Lock mode. @xref{Font Lock}, for more information about +Font Lock mode and syntactic highlighting. You can print the current +buffer with the highlighting that appears on your screen using the +command @code{ps-print-buffer-with-faces}. @xref{PostScript}. + + You control the appearance of a part of the text in the buffer by +specifying the face or faces to use for it. The style of display used +for any given character is determined by combining the attributes of +all the applicable faces specified for that character. Any attribute +that isn't specified by these faces is taken from the @code{default} face, +whose attributes reflect the default settings of the frame itself. + + Enriched mode, the mode for editing formatted text, includes several +commands and menus for specifying faces for text in the buffer. +@xref{Format Faces}, for how to specify the font for text in the +buffer. @xref{Format Colors}, for how to specify the foreground and +background color. + +@cindex face colors, setting +@findex set-face-foreground +@findex set-face-background + To alter the appearance of a face, use the customization buffer. +@xref{Face Customization}. You can also use X resources to specify +attributes of particular faces (@pxref{Resources}). Alternatively, +you can change the foreground and background colors of a specific face +with @kbd{M-x set-face-foreground} and @kbd{M-x set-face-background}. +These commands prompt in the minibuffer for a face name and a color +name, with completion, and then set that face to use the specified +color. Changing the colors of the @code{default} face also changes +the foreground and background colors on all frames, both existing and +those to be created in the future. (You can also set foreground and +background colors for the current frame only; see @ref{Frame +Parameters}.) + + If you want to alter the appearance of all Emacs frames, you need to +customize the frame parameters in the variable +@code{default-frame-alist}; see @ref{Creating Frames, +default-frame-alist}. + + Emacs can correctly display variable-width fonts, but Emacs commands +that calculate width and indentation do not know how to calculate +variable widths. This can sometimes lead to incorrect results when +you use variable-width fonts. In particular, indentation commands can +give inconsistent results, so we recommend you avoid variable-width +fonts for editing program source code. Filling will sometimes make +lines too long or too short. We plan to address these issues in +future Emacs versions. + +@node Standard Faces +@section Standard Faces + +@findex list-faces-display + To see what faces are currently defined, and what they look like, +type @kbd{M-x list-faces-display}. It's possible for a given face to +look different in different frames; this command shows the appearance +in the frame in which you type it. With a prefix argument, this +prompts for a regular expression, and displays only faces with names +matching that regular expression. + + Here are the standard faces for specifying text appearance. You can +apply them to specific text when you want the effects they produce. + +@table @code +@item default +This face is used for ordinary text that doesn't specify any face. +@item bold +This face uses a bold variant of the default font, if it has one. +It's up to you to choose a default font that has a bold variant, +if you want to use one. +@item italic +This face uses an italic variant of the default font, if it has one. +@item bold-italic +This face uses a bold italic variant of the default font, if it has one. +@item underline +This face underlines text. +@item fixed-pitch +This face forces use of a particular fixed-width font. +@item variable-pitch +This face forces use of a particular variable-width font. It's +reasonable to customize this face to use a different variable-width font, +if you like, but you should not make it a fixed-width font. +@item shadow +This face is used for making the text less noticeable than the surrounding +ordinary text. Usually this can be achieved by using shades of gray in +contrast with either black or white default foreground color. +@end table + + Here's an incomplete list of faces used to highlight parts of the +text temporarily for specific purposes. (Many other modes define +their own faces for this purpose.) + +@table @code +@item highlight +This face is used for highlighting portions of text, in various modes. +For example, mouse-sensitive text is highlighted using this face. +@item isearch +This face is used for highlighting the current Isearch match. +@item query-replace +This face is used for highlighting the current Query Replace match. +@item lazy-highlight +This face is used for lazy highlighting of Isearch and Query Replace +matches other than the current one. +@item region +This face is used for displaying a selected region (@pxref{Mark}). +@item secondary-selection +This face is used for displaying a secondary X selection (@pxref{Secondary +Selection}). +@item trailing-whitespace +The face for highlighting excess spaces and tabs at the end of a line +when @code{show-trailing-whitespace} is non-@code{nil}; see +@ref{Useless Whitespace}. +@item nobreak-space +The face for displaying the character ``nobreak space.'' +@item escape-glyph +The face for highlighting the @samp{\} or @samp{^} that indicates +a control character. It's also used when @samp{\} indicates a +nobreak space or nobreak (soft) hyphen. +@end table + + These faces control the appearance of parts of the Emacs frame. +They exist as faces to provide a consistent way to customize the +appearance of these parts of the frame. + +@table @code +@item mode-line +@itemx modeline +This face is used for the mode line of the currently selected window, +and for menu bars when toolkit menus are not used. By default, it's +drawn with shadows for a ``raised'' effect on graphical displays, and +drawn as the inverse of the default face on non-windowed terminals. +@code{modeline} is an alias for the @code{mode-line} face, for +compatibility with old Emacs versions. +@item mode-line-inactive +Like @code{mode-line}, but used for mode lines of the windows other +than the selected one (if @code{mode-line-in-non-selected-windows} is +non-@code{nil}). This face inherits from @code{mode-line}, so changes +in that face affect mode lines in all windows. +@item mode-line-highlight +Like @code{highlight}, but used for portions of text on mode lines. +@item mode-line-buffer-id +This face is used for buffer identification parts in the mode line. +@item header-line +Similar to @code{mode-line} for a window's header line, which appears +at the top of a window just as the mode line appears at the bottom. +Most windows do not have a header line---only some special modes, such +Info mode, create one. +@item vertical-border +This face is used for the vertical divider between windows. +By default this face inherits from the @code{mode-line-inactive} face +on character terminals. On graphical displays the foreground color of +this face is used for the vertical line between windows without +scrollbars. +@item minibuffer-prompt +@cindex @code{minibuffer-prompt} face +@vindex minibuffer-prompt-properties +This face is used for the prompt strings displayed in the minibuffer. +By default, Emacs automatically adds this face to the value of +@code{minibuffer-prompt-properties}, which is a list of text +properties used to display the prompt text. (This variable takes +effect when you enter the minibuffer.) +@item fringe +@cindex @code{fringe} face +The face for the fringes to the left and right of windows on graphic +displays. (The fringes are the narrow portions of the Emacs frame +between the text area and the window's right and left borders.) +@xref{Fringes}. +@item scroll-bar +This face determines the visual appearance of the scroll bar. +@xref{Scroll Bars}. +@item border +This face determines the color of the frame border. +@item cursor +This face determines the color of the cursor. +@item mouse +This face determines the color of the mouse pointer. +@item tool-bar +This face determines the color of tool bar icons. @xref{Tool Bars}. +@item tooltip +This face is used for tooltips. @xref{Tooltips}. +@item menu +@cindex menu bar appearance +@cindex @code{menu} face, no effect if customized +@cindex customization of @code{menu} face +This face determines the colors and font of Emacs's menus. @xref{Menu +Bars}. Setting the font of LessTif/Motif menus is currently not +supported; attempts to set the font are ignored in this case. +Likewise, attempts to customize this face in Emacs built with GTK and +in the MS-Windows/Mac ports are ignored by the respective GUI toolkits; +you need to use system-wide styles and options to change the +appearance of the menus. +@end table + +@node Font Lock +@section Font Lock mode +@cindex Font Lock mode +@cindex mode, Font Lock +@cindex syntax highlighting and coloring + + Font Lock mode is a minor mode, always local to a particular buffer, +which highlights (or ``fontifies'') the buffer contents according to +the syntax of the text you are editing. It can recognize comments and +strings in most languages; in several languages, it can also recognize +and properly highlight various other important constructs---for +example, names of functions being defined or reserved keywords. +Some special modes, such as Occur mode and Info mode, have completely +specialized ways of assigning fonts for Font Lock mode. + +@findex font-lock-mode + Font Lock mode is turned on by default in all modes which support it. +You can toggle font-lock for each buffer with the command @kbd{M-x +font-lock-mode}. Using a positive argument unconditionally turns Font +Lock mode on, and a negative or zero argument turns it off. + +@findex global-font-lock-mode +@vindex global-font-lock-mode + If you do not wish Font Lock mode to be turned on by default, +customize the variable @code{global-font-lock-mode} using the Customize +interface (@pxref{Easy Customization}), or use the function +@code{global-font-lock-mode} in your @file{.emacs} file, like this: + +@example +(global-font-lock-mode 0) +@end example + +@noindent +This variable, like all the variables that control Font Lock mode, +take effect whenever fontification is done; that is, potentially at +any time. + +@findex turn-on-font-lock + If you have disabled Global Font Lock mode, you can still enable Font +Lock for specific major modes by adding the function +@code{turn-on-font-lock} to the mode hooks (@pxref{Hooks}). For +example, to enable Font Lock mode for editing C files, you can do this: + +@example +(add-hook 'c-mode-hook 'turn-on-font-lock) +@end example + + Font Lock mode uses several specifically named faces to do its job, +including @code{font-lock-string-face}, @code{font-lock-comment-face}, +and others. The easiest way to find them all is to use @kbd{M-x +customize-group @key{RET} font-lock-faces @key{RET}}. You can then +use that customization buffer to customize the appearance of these +faces. @xref{Face Customization}. + + You can also customize these faces using @kbd{M-x +set-face-foreground} or @kbd{M-x set-face-background}. @xref{Faces}. + +@vindex font-lock-maximum-decoration + The variable @code{font-lock-maximum-decoration} specifies the +preferred level of fontification, for modes that provide multiple +levels. Level 1 is the least amount of fontification; some modes +support levels as high as 3. The normal default is ``as high as +possible.'' You can specify an integer, which applies to all modes, or +you can specify different numbers for particular major modes; for +example, to use level 1 for C/C++ modes, and the default level +otherwise, use this: + +@example +(setq font-lock-maximum-decoration + '((c-mode . 1) (c++-mode . 1))) +@end example + +@vindex font-lock-maximum-size + Fontification can be too slow for large buffers, so you can suppress +it for buffers above a certain size. The variable +@code{font-lock-maximum-size} specifies a buffer size, beyond which +buffer fontification is suppressed. + +@c @w is used below to prevent a bad page-break. +@vindex font-lock-beginning-of-syntax-function +@cindex incorrect fontification +@cindex parenthesis in column zero and fontification +@cindex brace in column zero and fontification + Comment and string fontification (or ``syntactic'' fontification) +relies on analysis of the syntactic structure of the buffer text. For +the sake of speed, some modes, including Lisp mode, rely on a special +convention: an open-parenthesis or open-brace in the leftmost column +always defines the @w{beginning} of a defun, and is thus always +outside any string or comment. (@xref{Left Margin Paren}.) If you +don't follow this convention, Font Lock mode can misfontify the text +that follows an open-parenthesis or open-brace in the leftmost column +that is inside a string or comment. + +@cindex slow display during scrolling + The variable @code{font-lock-beginning-of-syntax-function} (always +buffer-local) specifies how Font Lock mode can find a position +guaranteed to be outside any comment or string. In modes which use the +leftmost column parenthesis convention, the default value of the variable +is @code{beginning-of-defun}---that tells Font Lock mode to use the +convention. If you set this variable to @code{nil}, Font Lock no longer +relies on the convention. This avoids incorrect results, but the price +is that, in some cases, fontification for a changed text must rescan +buffer text from the beginning of the buffer. This can considerably +slow down redisplay while scrolling, particularly if you are close to +the end of a large buffer. + +@findex font-lock-add-keywords + Font Lock highlighting patterns already exist for many modes, but you +may want to fontify additional patterns. You can use the function +@code{font-lock-add-keywords}, to add your own highlighting patterns for +a particular mode. For example, to highlight @samp{FIXME:} words in C +comments, use this: + +@example +(font-lock-add-keywords + 'c-mode + '(("\\<\\(FIXME\\):" 1 font-lock-warning-face t))) +@end example + +@findex font-lock-remove-keywords + To remove keywords from the font-lock highlighting patterns, use the +function @code{font-lock-remove-keywords}. @xref{Search-based +Fontification,,, elisp, The Emacs Lisp Reference Manual}, for +documentation of the format of this list. + +@cindex just-in-time (JIT) font-lock +@cindex background syntax highlighting + Fontifying large buffers can take a long time. To avoid large +delays when a file is visited, Emacs fontifies only the visible +portion of a buffer. As you scroll through the buffer, each portion +that becomes visible is fontified as soon as it is displayed. The +parts of the buffer that are not displayed are fontified +``stealthily,'' in the background, i.e.@: when Emacs is idle. You can +control this background fontification, also called @dfn{Just-In-Time} +(or @dfn{JIT}) Lock, by customizing variables in the customization +group @samp{jit-lock}. @xref{Specific Customization}. + +@node Highlight Interactively +@section Interactive Highlighting +@cindex highlighting by matching +@cindex interactive highlighting +@cindex Highlight Changes mode + +@findex highlight-changes-mode + Use @kbd{M-x highlight-changes-mode} to enable (or disable) +Highlight Changes mode, a minor mode that uses faces (colors, +typically) to indicate which parts of the buffer were changed most +recently. + +@cindex Hi Lock mode +@findex hi-lock-mode + Hi Lock mode highlights text that matches regular expressions you +specify. For example, you might wish to see all the references to a +certain variable in a program source file, highlight certain parts in +a voluminous output of some program, or make certain names stand out +in an article. Use the @kbd{M-x hi-lock-mode} command to enable (or +disable) Hi Lock mode. To enable Hi Lock mode for all buffers, use +@kbd{M-x global-hi-lock-mode} or place @code{(global-hi-lock-mode 1)} +in your @file{.emacs} file. + + Hi Lock mode works like Font Lock mode (@pxref{Font Lock}), except +that you specify explicitly the regular expressions to highlight. You +control them with these commands: + +@table @kbd +@item C-x w h @var{regexp} @key{RET} @var{face} @key{RET} +@kindex C-x w h +@findex highlight-regexp +Highlight text that matches @var{regexp} using face @var{face} +(@code{highlight-regexp}). The highlighting will remain as long as +the buffer is loaded. For example, to highlight all occurrences of +the word ``whim'' using the default face (a yellow background) +@kbd{C-x w h whim @key{RET} @key{RET}}. Any face can be used for +highlighting, Hi Lock provides several of its own and these are +pre-loaded into a history list. While being prompted for a face use +@kbd{M-p} and @kbd{M-n} to cycle through them. + +You can use this command multiple times, specifying various regular +expressions to highlight in different ways. + +@item C-x w r @var{regexp} @key{RET} +@kindex C-x w r +@findex unhighlight-regexp +Unhighlight @var{regexp} (@code{unhighlight-regexp}). + +If you invoke this from the menu, you select the expression to +unhighlight from a list. If you invoke this from the keyboard, you +use the minibuffer. It will show the most recently added regular +expression; use @kbd{M-p} to show the next older expression and +@kbd{M-n} to select the next newer expression. (You can also type the +expression by hand, with completion.) When the expression you want to +unhighlight appears in the minibuffer, press @kbd{@key{RET}} to exit +the minibuffer and unhighlight it. + +@item C-x w l @var{regexp} @key{RET} @var{face} @key{RET} +@kindex C-x w l +@findex highlight-lines-matching-regexp +@cindex lines, highlighting +@cindex highlighting lines of text +Highlight entire lines containing a match for @var{regexp}, using face +@var{face} (@code{highlight-lines-matching-regexp}). + +@item C-x w b +@kindex C-x w b +@findex hi-lock-write-interactive-patterns +Insert all the current highlighting regexp/face pairs into the buffer +at point, with comment delimiters to prevent them from changing your +program. (This key binding runs the +@code{hi-lock-write-interactive-patterns} command.) + +These patterns are extracted from the comments, if appropriate, if you +invoke @kbd{M-x hi-lock-find-patterns}, or if you visit the file while +Hi Lock mode is enabled (since that runs @code{hi-lock-find-patterns}). + +@item C-x w i +@kindex C-x w i +@findex hi-lock-find-patterns +Extract regexp/face pairs from comments in the current buffer +(@code{hi-lock-find-patterns}). Thus, you can enter patterns +interactively with @code{highlight-regexp}, store them into the file +with @code{hi-lock-write-interactive-patterns}, edit them (perhaps +including different faces for different parenthesized parts of the +match), and finally use this command (@code{hi-lock-find-patterns}) to +have Hi Lock highlight the edited patterns. + +@vindex hi-lock-file-patterns-policy +The variable @code{hi-lock-file-patterns-policy} controls whether Hi +Lock mode should automatically extract and highlight patterns found in +a file when it is visited. Its value can be @code{nil} (never +highlight), @code{t} (highlight the patterns), @code{ask} (query the +user), or a function. If it is a function, +@code{hi-lock-find-patterns} calls it with the patterns as argument; +if the function returns non-@code{nil}, the patterns are used. The +default is @code{nil}. Note that patterns are always highlighted if +you call @code{hi-lock-find-patterns} directly, regardless of the +value of this variable. + +@vindex hi-lock-exclude-modes +Also, @code{hi-lock-find-patterns} does nothing if the current major +mode's symbol is a member of the list @code{hi-lock-exclude-modes}. +@end table + +@node Fringes +@section Window Fringes +@cindex fringes + + On a graphical display, each Emacs window normally has narrow +@dfn{fringes} on the left and right edges. The fringes display +indications about the text in the window. + + The most common use of the fringes is to indicate a continuation +line, when one line of text is split into multiple lines on the +screen. The left fringe shows a curving arrow for each screen line +except the first, indicating that ``this is not the real beginning.'' +The right fringe shows a curving arrow for each screen line except the +last, indicating that ``this is not the real end.'' + + The fringes indicate line truncation with short horizontal arrows +meaning ``there's more text on this line which is scrolled +horizontally out of view;'' clicking the mouse on one of the arrows +scrolls the display horizontally in the direction of the arrow. The +fringes can also indicate other things, such as empty lines, or where a +program you are debugging is executing (@pxref{Debuggers}). + +@findex set-fringe-style +@findex fringe-mode + You can enable and disable the fringes for all frames using +@kbd{M-x fringe-mode}. To enable and disable the fringes +for the selected frame, use @kbd{M-x set-fringe-style}. + +@node Displaying Boundaries +@section Displaying Boundaries + +@vindex indicate-buffer-boundaries + On a graphical display, Emacs can indicate the buffer boundaries in +the fringes. It indicates the first line and the last line with +angle images in the fringes. This can be combined with up and down +arrow images which say whether it is possible to scroll the window up +and down. + + The buffer-local variable @code{indicate-buffer-boundaries} controls +how the buffer boundaries and window scrolling is indicated in the +fringes. If the value is @code{left} or @code{right}, both angle and +arrow bitmaps are displayed in the left or right fringe, respectively. + + If value is an alist, each element @code{(@var{indicator} . +@var{position})} specifies the position of one of the indicators. +The @var{indicator} must be one of @code{top}, @code{bottom}, +@code{up}, @code{down}, or @code{t} which specifies the default +position for the indicators not present in the alist. +The @var{position} is one of @code{left}, @code{right}, or @code{nil} +which specifies not to show this indicator. + + For example, @code{((top . left) (t . right))} places the top angle +bitmap in left fringe, the bottom angle bitmap in right fringe, and +both arrow bitmaps in right fringe. To show just the angle bitmaps in +the left fringe, but no arrow bitmaps, use @code{((top . left) +(bottom . left))}. + +@vindex default-indicate-buffer-boundaries + The value of the variable @code{default-indicate-buffer-boundaries} +is the default value for @code{indicate-buffer-boundaries} in buffers +that do not override it. + +@node Useless Whitespace +@section Useless Whitespace + +@cindex trailing whitespace +@cindex whitespace, trailing +@vindex show-trailing-whitespace + It is easy to leave unnecessary spaces at the end of a line, or +empty lines at the end of a file, without realizing it. In most +cases, this @dfn{trailing whitespace} has no effect, but there are +special circumstances where it matters. It can also be a nuisance +that the line has ``changed,'' when the change is just spaces added or +removed at the end. + + You can make trailing whitespace at the end of a line visible on the +screen by setting the buffer-local variable +@code{show-trailing-whitespace} to @code{t}. Then Emacs displays +trailing whitespace in the face @code{trailing-whitespace}. + + This feature does not apply when point is at the end of the line +containing the whitespace. Strictly speaking, that is ``trailing +whitespace'' nonetheless, but displaying it specially in that case +looks ugly while you are typing in new text. In this special case, +the location of point is enough to show you that the spaces are +present. + +@findex delete-trailing-whitespace + To delete all trailing whitespace within the current buffer's +accessible portion (@pxref{Narrowing}), type @kbd{M-x +delete-trailing-whitespace @key{RET}}. (This command does not remove +the form-feed characters.) + +@vindex indicate-empty-lines +@vindex default-indicate-empty-lines +@cindex unused lines +@cindex fringes, and unused line indication + Emacs can indicate unused lines at the end of the window with a +small image in the left fringe (@pxref{Fringes}). The image appears +for window lines that do not correspond to any buffer text. Blank +lines at the end of the buffer then stand out because they do not have +this image in the fringe. + + To enable this feature, set the buffer-local variable +@code{indicate-empty-lines} to a non-@code{nil} value. The default +value of this variable is controlled by the variable +@code{default-indicate-empty-lines}; by setting that variable, you +can enable or disable this feature for all new buffers. (This feature +currently doesn't work on text-only terminals.) + +@node Selective Display +@section Selective Display +@cindex selective display +@findex set-selective-display +@kindex C-x $ + + Emacs has the ability to hide lines indented more than a certain number +of columns (you specify how many columns). You can use this to get an +overview of a part of a program. + + To hide lines in the current buffer, type @kbd{C-x $} +(@code{set-selective-display}) with a numeric argument @var{n}. Then +lines with at least @var{n} columns of indentation disappear from the +screen. The only indication of their presence is that three dots +(@samp{@dots{}}) appear at the end of each visible line that is +followed by one or more hidden ones. + + The commands @kbd{C-n} and @kbd{C-p} move across the hidden lines as +if they were not there. + + The hidden lines are still present in the buffer, and most editing +commands see them as usual, so you may find point in the middle of the +hidden text. When this happens, the cursor appears at the end of the +previous line, after the three dots. If point is at the end of the +visible line, before the newline that ends it, the cursor appears before +the three dots. + + To make all lines visible again, type @kbd{C-x $} with no argument. + +@vindex selective-display-ellipses + If you set the variable @code{selective-display-ellipses} to +@code{nil}, the three dots do not appear at the end of a line that +precedes hidden lines. Then there is no visible indication of the +hidden lines. This variable becomes local automatically when set. + + See also @ref{Outline Mode} for another way to hide part of +the text in a buffer. + +@node Optional Mode Line +@section Optional Mode Line Features + +@cindex buffer size display +@cindex display of buffer size +@findex size-indication-mode + The buffer percentage @var{pos} indicates the percentage of the +buffer above the top of the window. You can additionally display the +size of the buffer by typing @kbd{M-x size-indication-mode} to turn on +Size Indication mode. The size will be displayed immediately +following the buffer percentage like this: + +@example +@var{POS} of @var{SIZE} +@end example + +@noindent +Here @var{SIZE} is the human readable representation of the number of +characters in the buffer, which means that @samp{k} for 10^3, @samp{M} +for 10^6, @samp{G} for 10^9, etc., are used to abbreviate. + +@cindex narrowing, and buffer size display + If you have narrowed the buffer (@pxref{Narrowing}), the size of the +accessible part of the buffer is shown. + +@cindex line number display +@cindex display of line number +@findex line-number-mode + The current line number of point appears in the mode line when Line +Number mode is enabled. Use the command @kbd{M-x line-number-mode} to +turn this mode on and off; normally it is on. The line number appears +after the buffer percentage @var{pos}, with the letter @samp{L} to +indicate what it is. + +@cindex Column Number mode +@cindex mode, Column Number +@findex column-number-mode + Similarly, you can display the current column number by turning on +Column number mode with @kbd{M-x column-number-mode}. The column +number is indicated by the letter @samp{C}. However, when both of +these modes are enabled, the line and column numbers are displayed in +parentheses, the line number first, rather than with @samp{L} and +@samp{C}. For example: @samp{(561,2)}. @xref{Minor Modes}, for more +information about minor modes and about how to use these commands. + +@cindex narrowing, and line number display + If you have narrowed the buffer (@pxref{Narrowing}), the displayed +line number is relative to the accessible portion of the buffer. +Thus, it isn't suitable as an argument to @code{goto-line}. (Use +@code{what-line} command to see the line number relative to the whole +file.) + +@vindex line-number-display-limit + If the buffer is very large (larger than the value of +@code{line-number-display-limit}), then the line number doesn't appear. +Emacs doesn't compute the line number when the buffer is large, because +that would be too slow. Set it to @code{nil} to remove the limit. + +@vindex line-number-display-limit-width + Line-number computation can also be slow if the lines in the buffer +are too long. For this reason, Emacs normally doesn't display line +numbers if the average width, in characters, of lines near point is +larger than the value of the variable +@code{line-number-display-limit-width}. The default value is 200 +characters. + +@findex display-time +@cindex time (on mode line) + Emacs can optionally display the time and system load in all mode +lines. To enable this feature, type @kbd{M-x display-time} or customize +the option @code{display-time-mode}. The information added to the mode +line usually appears after the buffer name, before the mode names and +their parentheses. It looks like this: + +@example +@var{hh}:@var{mm}pm @var{l.ll} +@end example + +@noindent +@vindex display-time-24hr-format +Here @var{hh} and @var{mm} are the hour and minute, followed always by +@samp{am} or @samp{pm}. @var{l.ll} is the average number of running +processes in the whole system recently. (Some fields may be missing if +your operating system cannot support them.) If you prefer time display +in 24-hour format, set the variable @code{display-time-24hr-format} +to @code{t}. + +@cindex mail (on mode line) +@vindex display-time-use-mail-icon +@vindex display-time-mail-face +@vindex display-time-mail-file +@vindex display-time-mail-directory + The word @samp{Mail} appears after the load level if there is mail +for you that you have not read yet. On a graphical display you can use +an icon instead of @samp{Mail} by customizing +@code{display-time-use-mail-icon}; this may save some space on the mode +line. You can customize @code{display-time-mail-face} to make the mail +indicator prominent. Use @code{display-time-mail-file} to specify +the mail file to check, or set @code{display-time-mail-directory} +to specify the directory to check for incoming mail (any nonempty regular +file in the directory is considered as ``newly arrived mail''). + +@cindex mode line, 3D appearance +@cindex attributes of mode line, changing +@cindex non-integral number of lines in a window + By default, the mode line is drawn on graphics displays with +3D-style highlighting, like that of a button when it is not being +pressed. If you don't like this effect, you can disable the 3D +highlighting of the mode line, by customizing the attributes of the +@code{mode-line} face. @xref{Face Customization}. + +@cindex non-selected windows, mode line appearance + By default, the mode line of nonselected windows is displayed in a +different face, called @code{mode-line-inactive}. Only the selected +window is displayed in the @code{mode-line} face. This helps show +which window is selected. When the minibuffer is selected, since +it has no mode line, the window from which you activated the minibuffer +has its mode line displayed using @code{mode-line}; as a result, +ordinary entry to the minibuffer does not change any mode lines. + +@vindex mode-line-in-non-selected-windows + You can disable use of @code{mode-line-inactive} by setting variable +@code{mode-line-in-non-selected-windows} to @code{nil}; then all mode +lines are displayed in the @code{mode-line} face. + +@vindex eol-mnemonic-unix +@vindex eol-mnemonic-dos +@vindex eol-mnemonic-mac +@vindex eol-mnemonic-undecided + You can customize the mode line display for each of the end-of-line +formats by setting each of the variables @code{eol-mnemonic-unix}, +@code{eol-mnemonic-dos}, @code{eol-mnemonic-mac}, and +@code{eol-mnemonic-undecided} to the strings you prefer. + +@node Text Display +@section How Text Is Displayed +@cindex characters (in text) + + @acronym{ASCII} printing characters (octal codes 040 through 0176) in Emacs +buffers are displayed with their graphics, as are non-ASCII multibyte +printing characters (octal codes above 0400). + + Some @acronym{ASCII} control characters are displayed in special ways. The +newline character (octal code 012) is displayed by starting a new line. +The tab character (octal code 011) is displayed by moving to the next +tab stop column (normally every 8 columns). + + Other @acronym{ASCII} control characters are normally displayed as a caret +(@samp{^}) followed by the non-control version of the character; thus, +control-A is displayed as @samp{^A}. The caret appears in face +@code{escape-glyph}. + + Non-@acronym{ASCII} characters 0200 through 0237 (octal) are +displayed with octal escape sequences; thus, character code 0230 +(octal) is displayed as @samp{\230}. The backslash appears in face +@code{escape-glyph}. + +@vindex ctl-arrow + If the variable @code{ctl-arrow} is @code{nil}, control characters in +the buffer are displayed with octal escape sequences, except for newline +and tab. Altering the value of @code{ctl-arrow} makes it local to the +current buffer; until that time, the default value is in effect. The +default is initially @code{t}. + + The display of character codes 0240 through 0377 (octal) may be +either as escape sequences or as graphics. They do not normally occur +in multibyte buffers, but if they do, they are displayed as Latin-1 +graphics. In unibyte mode, if you enable European display they are +displayed using their graphics (assuming your terminal supports them), +otherwise as escape sequences. @xref{Unibyte Mode}. + +@vindex nobreak-char-display +@cindex no-break space, display +@cindex no-break hyphen, display +@cindex soft hyphen, display + Some character sets define ``no-break'' versions of the space and +hyphen characters, which are used where a line should not be broken. +Emacs normally displays these characters with special faces +(respectively, @code{nobreak-space} and @code{escape-glyph}) to +distinguish them from ordinary spaces and hyphens. You can turn off +this feature by setting the variable @code{nobreak-char-display} to +@code{nil}. If you set the variable to any other value, that means to +prefix these characters with an escape character. + +@vindex tab-width +@vindex default-tab-width + Normally, a tab character in the buffer is displayed as whitespace which +extends to the next display tab stop position, and display tab stops come +at intervals equal to eight spaces. The number of spaces per tab is +controlled by the variable @code{tab-width}, which is made local by +changing it. Note that how the tab character +in the buffer is displayed has nothing to do with the definition of +@key{TAB} as a command. The variable @code{tab-width} must have an +integer value between 1 and 1000, inclusive. The variable +@code{default-tab-width} controls the default value of this variable +for buffers where you have not set it locally. + + You can customize the way any particular character code is displayed +by means of a display table. @xref{Display Tables,, Display Tables, +elisp, The Emacs Lisp Reference Manual}. + +@node Cursor Display +@section Displaying the Cursor + +@findex blink-cursor-mode +@vindex blink-cursor-alist +@cindex cursor, locating visually +@cindex cursor, blinking + You can customize the cursor's color, and whether it blinks, using +the @code{cursor} Custom group (@pxref{Easy Customization}). On +a graphical display, the command @kbd{M-x blink-cursor-mode} enables +or disables the blinking of the cursor. (On text terminals, the +terminal itself blinks the cursor, and Emacs has no control over it.) +You can control how the cursor appears when it blinks off by setting +the variable @code{blink-cursor-alist}. + +@vindex visible-cursor + Some text terminals offer two different cursors: the normal cursor +and the very visible cursor, where the latter may be e.g. bigger or +blinking. By default Emacs uses the very visible cursor, and switches +to it when you start or resume Emacs. If the variable +@code{visible-cursor} is @code{nil} when Emacs starts or resumes, it +doesn't switch, so it uses the normal cursor. + +@cindex cursor in non-selected windows +@vindex cursor-in-non-selected-windows + Normally, the cursor appears in non-selected windows without +blinking, with the same appearance as when the blinking cursor blinks +``off.'' For a box cursor, this is a hollow box; for a bar cursor, +this is a thinner bar. To turn off cursors in non-selected windows, +customize the variable @code{cursor-in-non-selected-windows} and +assign it a @code{nil} value. + +@vindex x-stretch-cursor +@cindex wide block cursor + On graphical displays, Emacs can optionally draw the block cursor +as wide as the character under the cursor---for example, if the cursor +is on a tab character, it would cover the full width occupied by that +tab character. To enable this feature, set the variable +@code{x-stretch-cursor} to a non-@code{nil} value. + +@findex hl-line-mode +@findex global-hl-line-mode +@cindex highlight current line + To make the cursor even more visible, you can use HL Line mode, a +minor mode that highlights the line containing point. Use @kbd{M-x +hl-line-mode} to enable or disable it in the current buffer. @kbd{M-x +global-hl-line-mode} enables or disables the same mode globally. + +@node Line Truncation +@section Truncation of Lines + +@cindex truncation +@cindex line truncation, and fringes + As an alternative to continuation, Emacs can display long lines by +@dfn{truncation}. This means that all the characters that do not fit +in the width of the screen or window do not appear at all. On +graphical displays, a small straight arrow in the fringe indicates +truncation at either end of the line. On text-only terminals, @samp{$} +appears in the first column when there is text truncated to the left, +and in the last column when there is text truncated to the right. + +@vindex truncate-lines +@findex toggle-truncate-lines + Horizontal scrolling automatically causes line truncation +(@pxref{Horizontal Scrolling}). You can explicitly enable line +truncation for a particular buffer with the command @kbd{M-x +toggle-truncate-lines}. This works by locally changing the variable +@code{truncate-lines}. If that variable is non-@code{nil}, long lines +are truncated; if it is @code{nil}, they are continued onto multiple +screen lines. Setting the variable @code{truncate-lines} in any way +makes it local to the current buffer; until that time, the default +value is in effect. The default value is normally @code{nil}. + +@c @vindex truncate-partial-width-windows @c Idx entry is in Split Windows. + If the variable @code{truncate-partial-width-windows} is +non-@code{nil}, it forces truncation rather than continuation in any +window less than the full width of the screen or frame, regardless of +the value of @code{truncate-lines}. For information about side-by-side +windows, see @ref{Split Window}. See also @ref{Display,, Display, +elisp, The Emacs Lisp Reference Manual}. + +@vindex overflow-newline-into-fringe + If the variable @code{overflow-newline-into-fringe} is +non-@code{nil} on a graphical display, then Emacs does not continue or +truncate a line which is exactly as wide as the window. Instead, the +newline overflows into the right fringe, and the cursor appears in the +fringe when positioned on that newline. + +@node Display Custom +@section Customization of Display + + This section describes variables (@pxref{Variables}) that you can +change to customize how Emacs displays. Beginning users can skip +it. +@c the reason for that pxref is because an xref early in the +@c ``echo area'' section leads here. + +@vindex inverse-video + If the variable @code{inverse-video} is non-@code{nil}, Emacs attempts +to invert all the lines of the display from what they normally are. + +@vindex visible-bell + If the variable @code{visible-bell} is non-@code{nil}, Emacs attempts +to make the whole screen blink when it would normally make an audible bell +sound. This variable has no effect if your terminal does not have a way +to make the screen blink. + +@vindex echo-keystrokes + The variable @code{echo-keystrokes} controls the echoing of multi-character +keys; its value is the number of seconds of pause required to cause echoing +to start, or zero, meaning don't echo at all. The value takes effect when +there is someting to echo. @xref{Echo Area}. + +@vindex baud-rate + The variable @anchor{baud-rate}@code{baud-rate} holds the output +speed of the terminal, as far as Emacs knows. Setting this variable +does not change the speed of actual data transmission, but the value +is used for calculations. On text-only terminals, it affects padding, +and decisions about whether to scroll part of the screen or redraw it +instead. It also affects the behavior of incremental search. + + On graphical displays, @code{baud-rate} is only used to determine +how frequently to look for pending input during display updating. A +higher value of @code{baud-rate} means that check for pending input +will be done less frequently. + +@cindex hourglass pointer display +@vindex hourglass-delay + On graphical display, Emacs can optionally display the mouse pointer +in a special shape to say that Emacs is busy. To turn this feature on +or off, customize the group @code{cursor}. You can also control the +amount of time Emacs must remain busy before the busy indicator is +displayed, by setting the variable @code{hourglass-delay}. + +@vindex overline-margin - On graphical display, this variables specifies the vertical position ++ On graphical display, the variable @code{overline-margin} specifies the vertical position +of an overline above the text, including the height of the overline +itself (1 pixel). The default value is 2 pixels. + +@vindex x-underline-at-descent-line + On graphical display, Emacs normally draws an underline at the +baseline level of the font. If @code{x-underline-at-descent-line} is +non-@code{nil}, Emacs draws the underline at the same height as the +font's descent line. + +@findex tty-suppress-bold-inverse-default-colors + On some text-only terminals, bold face and inverse video together +result in text that is hard to read. Call the function +@code{tty-suppress-bold-inverse-default-colors} with a non-@code{nil} +argument to suppress the effect of bold-face in this case. + +@vindex no-redraw-on-reenter + On a text-only terminal, when you reenter Emacs after suspending, Emacs +normally clears the screen and redraws the entire display. On some +terminals with more than one page of memory, it is possible to arrange +the termcap entry so that the @samp{ti} and @samp{te} strings (output +to the terminal when Emacs is entered and exited, respectively) switch +between pages of memory so as to use one page for Emacs and another +page for other output. On such terminals, you might want to set the variable +@code{no-redraw-on-reenter} non-@code{nil}; this tells Emacs to +assume, when resumed, that the screen page it is using still contains +what Emacs last wrote there. + +@ignore + arch-tag: 2219f910-2ff0-4521-b059-1bd231a536c4 +@end ignore diff --cc doc/emacs/mini.texi index cbc3930203,0000000000..8510fea9b9 mode 100644,000000..100644 --- a/doc/emacs/mini.texi +++ b/doc/emacs/mini.texi @@@ -1,580 -1,0 +1,582 @@@ +@c This is part of the Emacs manual. +@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, +@c 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@c See file emacs.texi for copying conditions. +@node Minibuffer, M-x, Basic, Top +@chapter The Minibuffer +@cindex minibuffer + + The @dfn{minibuffer} is where Emacs commands read complicated +arguments (anything more a single number). We call it the +``minibuffer'' because it's a special-purpose buffer with a small +amount of screen space. Minibuffer arguments can be file names, +buffer names, Lisp function names, Emacs command names, Lisp +expressions, and many other things---whatever the command wants to +read. You can use the usual Emacs editing commands in the minibuffer +to edit the argument text. + +@cindex prompt + When the minibuffer is in use, it appears in the echo area, with a +cursor. The minibuffer display starts with a @dfn{prompt} in a +distinct color; it says what kind of input is expected and how it will +be used. Often the prompt is derived from the name of the command +that is reading the argument. The prompt normally ends with a colon. + +@cindex default argument + Sometimes a @dfn{default argument} appears in the prompt, inside +parentheses before the colon. The default will be used as the +argument value if you just type @key{RET}. For example, commands that +read buffer names show a buffer name as the default. You can type +@key{RET} to operate on that default buffer. + + The simplest way to enter a minibuffer argument is to type the text, +then @key{RET} to exit the minibuffer. You can cancel the minibuffer, +and the command that wants the argument, by typing @kbd{C-g}. + + Since the minibuffer appears in the echo area, it can conflict with +other uses of the echo area. Here is how Emacs handles such +conflicts: + +@itemize @bullet +@item +An error occurs while the minibuffer is active. + +The error message hides the minibuffer for a few seconds, or until you +type something. Then the minibuffer comes back. + +@item +A command such as @kbd{C-x =} needs to display a message in the echo +area. + +The message hides the minibuffer for a few seconds, or until you type +something. Then the minibuffer comes back. + +@item +Keystrokes don't echo while the minibuffer is in use. +@end itemize + +@menu +* File: Minibuffer File. Entering file names with the minibuffer. +* Edit: Minibuffer Edit. How to edit in the minibuffer. +* Completion:: An abbreviation facility for minibuffer input. +* Minibuffer History:: Reusing recent minibuffer arguments. +* Repetition:: Re-executing commands that used the minibuffer. +@end menu + +@node Minibuffer File +@section Minibuffers for File Names + + When you use the minibuffer to enter a file name, it starts out with +some initial text---the @dfn{default directory}, ending in a slash. +The file you specify will be in this directory unless you alter or +replace it. + +@c Separate paragraph to clean up ugly page break--rms +@need 1500 + For example, if the minibuffer starts out with these contents: + +@example +Find File: /u2/emacs/src/ +@end example + +@noindent +(where @samp{Find File:@: } is the prompt), and you type +@kbd{buffer.c} as input, that specifies the file +@file{/u2/emacs/src/buffer.c}. You can specify the parent directory +by adding @file{..}; thus, if you type @kbd{../lisp/simple.el}, you +will get @file{/u2/emacs/lisp/simple.el}. Alternatively, you can use +@kbd{M-@key{DEL}} to kill the directory names you don't want +(@pxref{Words}). + + You can kill the entire default with @kbd{C-a C-k}, but there's no +need to do that. It's easier to ignore the default, and enter an +absolute file name starting with a slash or a tilde after the default +directory. For example, to specify @file{/etc/termcap}, just type +that name: + +@example +Find File: /u2/emacs/src//etc/termcap +@end example + +@noindent +@cindex // in file name +@cindex double slash in file name +@cindex slashes repeated in file name +@findex file-name-shadow-mode +GNU Emacs interprets a double slash (which is not normally useful in +file names) as, ``ignore everything before the second slash in the +pair.'' In the example above. @samp{/u2/emacs/src/} is ignored, so +you get @file{/etc/termcap}. The ignored part of the file name is +dimmed if the terminal allows it; to disable this dimming, turn off +File Name Shadow mode (a minor mode) with the command +@kbd{M-x file-name-shadow-mode}. + + If the variable @code{insert-default-directory} is @code{nil}, the +default directory is never inserted in the minibuffer---so the +minibuffer starts out empty. Nonetheless, relative file name +arguments are still interpreted based on the same default directory. + +@node Minibuffer Edit +@section Editing in the Minibuffer + + The minibuffer is an Emacs buffer (albeit a peculiar one), and the +usual Emacs commands are available for editing the argument text. + + Since @key{RET} in the minibuffer is defined to exit the minibuffer, +you can't use it to insert a newline in the minibuffer. To do that, +type @kbd{C-o} or @kbd{C-q C-j}. (The newline character is really the +@acronym{ASCII} character control-J.) + + The minibuffer has its own window, which normally has space in the +frame at all times, but it only acts like an Emacs window when the +minibuffer is active. When active, this window is much like any other +Emacs window; for instance, you can switch to another window (with +@kbd{C-x o}), edit text there, then return to the minibuffer window to +finish the argument. You can even kill text in another window, return +to the minibuffer window, and then yank the text into the argument. +@xref{Windows}. + +@cindex height of minibuffer +@cindex size of minibuffer +@cindex growing minibuffer +@cindex resizing minibuffer + There are some restrictions on the minibuffer window, however: you +cannot kill it, or split it, or switch buffers in it---the minibuffer +and its window are permanently attached. + +@vindex resize-mini-windows + The minibuffer window expands vertically as necessary to hold the +text that you put in the minibuffer. If @code{resize-mini-windows} is +@code{t}, the window always resizes as needed by its contents. If its +value is the symbol @code{grow-only} (the default), the window grows +automatically as needed, but shrinks (back to the normal size) only +when the minibuffer becomes inactive. If its value is @code{nil}, you +have to adjust the height yourself. + +@vindex max-mini-window-height + The variable @code{max-mini-window-height} controls the maximum +height for resizing the minibuffer window: a floating-point number +specifies a fraction of the frame's height; an integer specifies the +maximum number of lines; @code{nil} means do not resize the minibuffer +window automatically. The default value is 0.25. + + The @kbd{C-M-v} command in the minibuffer scrolls the help text from +commands that display help text of any sort in another window. +@kbd{M-@key{PAGEUP}} and @kbd{M-@key{PAGEDOWN}} also operate on that +help text. This is especially useful with long lists of possible +completions. @xref{Other Window}. + +@vindex enable-recursive-minibuffers + Emacs normally disallows most commands that use the minibuffer while +the minibuffer is active. (Entering the minibuffer from the +minibuffer can be confusing.) To allow such commands in the +minibuffer, set the variable @code{enable-recursive-minibuffers} to +@code{t}. + +@node Completion +@section Completion ++@c This node is referenced in the tutorial. When renaming or deleting ++@c it, the tutorial needs to be adjusted. +@cindex completion + + Some arguments allow @dfn{completion} to enter their value. This +means that after you type part of the argument, Emacs can fill in the +rest, or some of it, based on what you have typed so far. + + When completion is available, certain keys---@key{TAB}, @key{RET}, +and @key{SPC}---are rebound to complete the text in the minibuffer +before point into a longer string chosen from a set of @dfn{completion +alternatives} provided by the command that requested the argument. +(@key{SPC} does not do completion in reading file names, because it is +common to use spaces in file names on some systems.) @kbd{?} displays +a list of the possible completions at any time. + + For example, @kbd{M-x} uses the minibuffer to read the name of a +command, so it provides a list of all Emacs command names for +completion candidates. The completion keys match the minibuffer text +against these candidates, find any additional name characters implied +by the text already present in the minibuffer, and add those +characters. This makes it possible to type @kbd{M-x ins @key{SPC} b +@key{RET}} instead of @kbd{M-x insert-buffer @key{RET}}, for example. + + Case is significant in completion when it is significant in the +argument you are entering (buffer names, file names, command names, +for instance). Thus, @samp{fo} does not complete to @samp{Foo}. +Completion ignores case distinctions for certain arguments in which +case does not matter. + + Completion acts only on the text before point. If there is text in +the minibuffer after point---i.e., if you move point backward after +typing some text into the minibuffer---it remains unchanged. + +@menu +* Example: Completion Example. Examples of using completion. +* Commands: Completion Commands. A list of completion commands. +* Strict Completion:: Different types of completion. +* Options: Completion Options. Options for completion. +@end menu + +@node Completion Example +@subsection Completion Example + +@kindex TAB @r{(completion)} + A concrete example may help here. If you type @kbd{M-x au +@key{TAB}}, the @key{TAB} looks for alternatives (in this case, +command names) that start with @samp{au}. There are several, +including @code{auto-fill-mode} and @code{auto-save-mode}, but they +all begin with @code{auto-}, so the @samp{au} in the minibuffer +completes to @samp{auto-}. + + If you type @key{TAB} again immediately, it cannot determine the +next character; it could be any of @samp{cfilrs}. So it does not add +any characters; instead, @key{TAB} displays a list of all possible +completions in another window. + + Now type @kbd{f @key{TAB}}. This @key{TAB} sees @samp{auto-f}. The +only command name starting with that is @code{auto-fill-mode}, so +completion fills in the rest of that. You have been able to enter +@samp{auto-fill-mode} by typing just @kbd{au @key{TAB} f @key{TAB}}. + +@node Completion Commands +@subsection Completion Commands + + Here is a list of the completion commands defined in the minibuffer +when completion is allowed. + +@table @kbd +@item @key{TAB} +@findex minibuffer-complete +Complete the text before point in the minibuffer as much as possible +(@code{minibuffer-complete}). +@item @key{SPC} +Complete up to one word from the minibuffer text before point +(@code{minibuffer-complete-word}). @key{SPC} for completion is not +available when entering a file name, since file names often include +spaces. +@item @key{RET} +Submit the text in the minibuffer as the argument, possibly completing +first as described +@iftex +in the next subsection (@code{minibuffer-complete-and-exit}). +@end iftex +@ifnottex +in the next node (@code{minibuffer-complete-and-exit}). @xref{Strict +Completion}. +@end ifnottex +@item ? +Display a list of possible completions of the text before point +(@code{minibuffer-completion-help}). +@end table + +@kindex SPC +@findex minibuffer-complete-word + @key{SPC} completes like @key{TAB}, but only up to the next hyphen +or space. If you have @samp{auto-f} in the minibuffer and type +@key{SPC}, it finds that the completion is @samp{auto-fill-mode}, but +it only inserts @samp{ill-}, giving @samp{auto-fill-}. Another +@key{SPC} at this point completes all the way to +@samp{auto-fill-mode}. The command that implements this behavior is +called @code{minibuffer-complete-word}. + + When you display a list of possible completions, you can choose +one from it: + +@table @kbd +@findex mouse-choose-completion +@item Mouse-1 +@itemx Mouse-2 +Clicking mouse button 1 or 2 on a completion possibility chooses that +completion (@code{mouse-choose-completion}). You must click in the +list of completions, not in the minibuffer. + +@findex switch-to-completions +@item @key{PRIOR} +@itemx M-v +Typing @key{PRIOR} or @key{PAGE-UP}, or @kbd{M-v}, while in the +minibuffer, selects the window showing the completion list buffer +(@code{switch-to-completions}). This paves the way for using the +commands below. (Selecting that window in other ways has the same +effect.) + +@findex choose-completion +@item @key{RET} +Typing @key{RET} @emph{in the completion list buffer} chooses the +completion that point is in or next to (@code{choose-completion}). To +use this command, you must first switch to the completion list window. + +@findex next-completion +@item @key{RIGHT} +Typing the right-arrow key @key{RIGHT} @emph{in the completion list +buffer} moves point to the following completion possibility +(@code{next-completion}). + +@findex previous-completion +@item @key{LEFT} +Typing the left-arrow key @key{LEFT} @emph{in the completion list +buffer} moves point to the previous completion possibility +(@code{previous-completion}). +@end table + +@node Strict Completion +@subsection Strict Completion + + There are three different ways that @key{RET} can do completion, +depending on how the argument will be used. + +@itemize @bullet +@item +@dfn{Strict} completion accepts only known completion candidates. For +example, when @kbd{C-x k} reads the name of a buffer to kill, only the +name of an existing buffer makes sense. In strict completion, +@key{RET} refuses to exit if the text in the minibuffer does not +complete to an exact match. + +@item +@dfn{Cautious} completion is similar to strict completion, except that +@key{RET} exits only if the text is an already exact match. +Otherwise, @key{RET} does not exit, but it does complete the text. If +that completes to an exact match, a second @key{RET} will exit. + +Cautious completion is used for reading file names for files that must +already exist, for example. + +@item +@dfn{Permissive} completion allows any input; the completion +candidates are just suggestions. For example, when @kbd{C-x C-f} +reads the name of a file to visit, any file name is allowed, including +nonexistent file (in case you want to create a file). In permissive +completion, @key{RET} does not complete, it just submits the argument +as you have entered it. +@end itemize + + The completion commands display a list of all possible completions +whenever they can't determine even one more character by completion. +Also, typing @kbd{?} explicitly requests such a list. You can scroll +the list with @kbd{C-M-v} (@pxref{Other Window}). + +@node Completion Options +@subsection Completion Options + +@vindex completion-ignored-extensions +@cindex ignored file names, in completion + When completing file names, certain file names are usually ignored. +The variable @code{completion-ignored-extensions} contains a list of +strings; a file name ending in any of those strings is ignored as a +completion candidate. The standard value of this variable has several +elements including @code{".o"}, @code{".elc"}, @code{".dvi"} and +@code{"~"}. The effect is that, for example, @samp{foo} can complete +to @samp{foo.c} even though @samp{foo.o} exists as well. However, if +@emph{all} the possible completions end in ``ignored'' strings, then +they are not ignored. Displaying a list of possible completions +disregards @code{completion-ignored-extensions}; it shows them all. + + If an element of @code{completion-ignored-extensions} ends in a +slash (@file{/}), it's a subdirectory name; then that directory and +its contents are ignored. Elements of +@code{completion-ignored-extensions} which do not end in a slash are +ordinary file names, and do not apply to names of directories. + +@vindex completion-auto-help + If @code{completion-auto-help} is set to @code{nil}, the completion +commands never display a list of possibilities; you must type @kbd{?} +to display the list. + +@cindex Partial Completion mode +@vindex partial-completion-mode +@findex partial-completion-mode + Partial Completion mode implements a more powerful kind of +completion that can complete multiple words in parallel. For example, +it can complete the command name abbreviation @code{p-b} into +@code{print-buffer} if no other command starts with two words whose +initials are @samp{p} and @samp{b}. + + To enable this mode, use @kbd{M-x partial-completion-mode}, or +customize the variable @code{partial-completion-mode}. This mode +binds special partial completion commands to @key{TAB}, @key{SPC}, +@key{RET}, and @kbd{?} in the minibuffer. The usual completion +commands are available on @kbd{M-@key{TAB}} (or @kbd{C-M-i}), +@kbd{M-@key{SPC}}, @kbd{M-@key{RET}} and @kbd{M-?}. + + Partial completion of directories in file names uses @samp{*} to +indicate the places for completion; thus, @file{/u*/b*/f*} might +complete to @file{/usr/bin/foo}. For remote files, partial completion +enables completion of methods, user names and host names. +@xref{Remote Files}. + +@vindex PC-include-file-path +@vindex PC-disable-includes + Partial Completion mode also extends @code{find-file} so that +@samp{<@var{include}>} looks for the file named @var{include} in the +directories in the path @code{PC-include-file-path}. If you set +@code{PC-disable-includes} to non-@code{nil}, this feature is +disabled. + +@cindex Icomplete mode +@findex icomplete-mode + Icomplete mode presents a constantly-updated display that tells you +what completions are available for the text you've entered so far. The +command to enable or disable this minor mode is @kbd{M-x +icomplete-mode}. + +@node Minibuffer History +@section Minibuffer History +@cindex minibuffer history +@cindex history of minibuffer input + + Every argument that you enter with the minibuffer is saved on a +@dfn{minibuffer history list} so you can easily use it again later. +Special commands fetch the text of an earlier argument into the +minibuffer, replacing the old minibuffer contents. You can think of +them as moving through the history of previous arguments. + +@table @kbd +@item @key{UP} +@itemx M-p +Move to the previous item in the minibuffer history, an earlier argument +(@code{previous-history-element}). +@item @key{DOWN} +@itemx M-n +Move to the next item in the minibuffer history +(@code{next-history-element}). +@item M-r @var{regexp} @key{RET} +Move to an earlier item in the minibuffer history that +matches @var{regexp} (@code{previous-matching-history-element}). +@item M-s @var{regexp} @key{RET} +Move to a later item in the minibuffer history that matches +@var{regexp} (@code{next-matching-history-element}). +@end table + +@kindex M-p @r{(minibuffer history)} +@kindex M-n @r{(minibuffer history)} +@findex next-history-element +@findex previous-history-element + To move through the minibuffer history list one item at a time, use +@kbd{M-p} or up-arrow (@code{previous-history-element}) to fetch the +next earlier minibuffer input, and use @kbd{M-n} or down-arrow +(@code{next-history-element}) to fetch the next later input. These +commands don't move the cursor, they pull different saved strings into +the minibuffer. But you can think of them as ``moving'' through the +history list. + + The input that you fetch from the history entirely replaces the +contents of the minibuffer. To use it again unchanged, just type +@key{RET}. You can also edit the text before you reuse it; this does +not change the history element that you ``moved'' to, but your new +argument does go at the end of the history list in its own right. + + For many minibuffer arguments there is a ``default'' value, or +a list of default values. You can insert the default value into the +minibuffer as text by using @kbd{M-n} one or more times. You can +think of this as moving ``into the future'' in the history. + +@findex previous-matching-history-element +@findex next-matching-history-element +@kindex M-r @r{(minibuffer history)} +@kindex M-s @r{(minibuffer history)} + There are also commands to search forward or backward through the +history; they search for history elements that match a regular +expression. @kbd{M-r} (@code{previous-matching-history-element}) +searches older elements in the history, while @kbd{M-s} +(@code{next-matching-history-element}) searches newer elements. These +commands are unusual; they use the minibuffer to read the regular +expression even though they are invoked from the minibuffer. As with +incremental searching, an upper-case letter in the regular expression +makes the search case-sensitive (@pxref{Search Case}). + +@ignore + We may change the precise way these commands read their arguments. +Perhaps they will search for a match for the string given so far in the +minibuffer; perhaps they will search for a literal match rather than a +regular expression match; perhaps they will only accept matches at the +beginning of a history element; perhaps they will read the string to +search for incrementally like @kbd{C-s}. To find out what interface is +actually available, type @kbd{C-h f previous-matching-history-element}. +@end ignore + + All uses of the minibuffer record your input on a history list, but +there are separate history lists for different kinds of arguments. +For example, there is a list for file names, used by all the commands +that read file names. (As a special feature, this history list +records the absolute file name, even if the name you entered was not +absolute.) + + There are several other specific history lists, including one for +buffer names, one for arguments of commands like @code{query-replace}, +one used by @kbd{M-x} for command names, and one used by +@code{compile} for compilation commands. Finally, there is one +``miscellaneous'' history list that most minibuffer arguments use. + +@vindex history-length + The variable @code{history-length} specifies the maximum length of a +minibuffer history list; adding a new element deletes the oldest +element if the list gets too long. If the value of +@code{history-length} is @code{t}, though, there is no maximum length. + +@vindex history-delete-duplicates + The variable @code{history-delete-duplicates} specifies whether to +delete duplicates in history. If it is @code{t}, adding a new element +deletes from the list all other elements that are equal to it. + +@node Repetition +@section Repeating Minibuffer Commands +@cindex command history +@cindex history of commands + + Every command that uses the minibuffer once is recorded on a special +history list, the @dfn{command history}, together with the values of +its arguments, so that you can repeat the entire command. In +particular, every use of @kbd{M-x} is recorded there, since @kbd{M-x} +uses the minibuffer to read the command name. + +@findex list-command-history +@table @kbd +@item C-x @key{ESC} @key{ESC} +Re-execute a recent minibuffer command from the command history + (@code{repeat-complex-command}). +@item M-x list-command-history +Display the entire command history, showing all the commands +@kbd{C-x @key{ESC} @key{ESC}} can repeat, most recent first. +@end table + +@kindex C-x ESC ESC +@findex repeat-complex-command + @kbd{C-x @key{ESC} @key{ESC}} is used to re-execute a recent command +that used the minibuffer. With no argument, it repeats the last such +command. A numeric argument specifies which command to repeat; 1 +means the last one, 2 the previous, and so on. + + @kbd{C-x @key{ESC} @key{ESC}} works by turning the previous command +into a Lisp expression and then entering a minibuffer initialized with +the text for that expression. Even if you don't understand Lisp +syntax, it will probably be obvious which command is displayed for +repetition. If you type just @key{RET}, that repeats the command +unchanged. You can also change the command by editing the Lisp +expression before you execute it. The repeated command is added to +the front of the command history unless it is identical to the most +recently item. + + Once inside the minibuffer for @kbd{C-x @key{ESC} @key{ESC}}, you can +use the minibuffer history commands (@kbd{M-p}, @kbd{M-n}, @kbd{M-r}, +@kbd{M-s}; @pxref{Minibuffer History}) to move through the history list +of saved entire commands. After finding the desired previous command, +you can edit its expression as usual and then repeat it by typing +@key{RET}. + +@vindex isearch-resume-in-command-history + Incremental search does not, strictly speaking, use the minibuffer. +Therefore, although it behaves like a complex command, it normally +does not appear in the history list for @kbd{C-x @key{ESC} @key{ESC}}. +You can make incremental search commands appear in the history by +setting @code{isearch-resume-in-command-history} to a non-@code{nil} +value. @xref{Incremental Search}. + +@vindex command-history + The list of previous minibuffer-using commands is stored as a Lisp +list in the variable @code{command-history}. Each element is a Lisp +expression which describes one command and its arguments. Lisp programs +can re-execute a command by calling @code{eval} with the +@code{command-history} element. + +@ignore + arch-tag: ba913cfd-b70e-400f-b663-22b2c309227f +@end ignore diff --cc doc/emacs/mule.texi index 504e28acc8,0000000000..a5d4e46200 mode 100644,000000..100644 --- a/doc/emacs/mule.texi +++ b/doc/emacs/mule.texi @@@ -1,1570 -1,0 +1,1572 @@@ +@c This is part of the Emacs manual. +@c Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2004, +@c 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@c See file emacs.texi for copying conditions. +@node International, Major Modes, Frames, Top +@chapter International Character Set Support ++@c This node is referenced in the tutorial. When renaming or deleting ++@c it, the tutorial needs to be adjusted. (TUTORIAL.de) +@cindex MULE +@cindex international scripts +@cindex multibyte characters +@cindex encoding of characters + +@cindex Celtic +@cindex Chinese +@cindex Cyrillic +@cindex Czech +@cindex Devanagari +@cindex Hindi +@cindex Marathi +@cindex Ethiopic +@cindex German +@cindex Greek +@cindex Hebrew +@cindex IPA +@cindex Japanese +@cindex Korean +@cindex Lao +@cindex Latin +@cindex Polish +@cindex Romanian +@cindex Slovak +@cindex Slovenian +@cindex Thai +@cindex Tibetan +@cindex Turkish +@cindex Vietnamese +@cindex Dutch +@cindex Spanish + Emacs supports a wide variety of international character sets, +including European and Vietnamese variants of the Latin alphabet, as +well as Cyrillic, Devanagari (for Hindi and Marathi), Ethiopic, Greek, +Han (for Chinese and Japanese), Hangul (for Korean), Hebrew, IPA, +Kannada, Lao, Malayalam, Tamil, Thai, Tibetan, and Vietnamese scripts. +Emacs also supports various encodings of these characters used by +other internationalized software, such as word processors and mailers. + + Emacs allows editing text with international characters by supporting +all the related activities: + +@itemize @bullet +@item +You can visit files with non-@acronym{ASCII} characters, save non-@acronym{ASCII} text, and +pass non-@acronym{ASCII} text between Emacs and programs it invokes (such as +compilers, spell-checkers, and mailers). Setting your language +environment (@pxref{Language Environments}) takes care of setting up the +coding systems and other options for a specific language or culture. +Alternatively, you can specify how Emacs should encode or decode text +for each command; see @ref{Text Coding}. + +@item +You can display non-@acronym{ASCII} characters encoded by the various +scripts. This works by using appropriate fonts on graphics displays +(@pxref{Defining Fontsets}), and by sending special codes to text-only +displays (@pxref{Terminal Coding}). If some characters are displayed +incorrectly, refer to @ref{Undisplayable Characters}, which describes +possible problems and explains how to solve them. + +@item +You can insert non-@acronym{ASCII} characters or search for them. To do that, +you can specify an input method (@pxref{Select Input Method}) suitable +for your language, or use the default input method set up when you set +your language environment. If +your keyboard can produce non-@acronym{ASCII} characters, you can select an +appropriate keyboard coding system (@pxref{Terminal Coding}), and Emacs +will accept those characters. Latin-1 characters can also be input by +using the @kbd{C-x 8} prefix, see @ref{Unibyte Mode}. + +On X Window systems, your locale should be set to an appropriate value +to make sure Emacs interprets keyboard input correctly; see +@ref{Language Environments, locales}. +@end itemize + + The rest of this chapter describes these issues in detail. + +@menu +* International Chars:: Basic concepts of multibyte characters. +* Enabling Multibyte:: Controlling whether to use multibyte characters. +* Language Environments:: Setting things up for the language you use. +* Input Methods:: Entering text characters not on your keyboard. +* Select Input Method:: Specifying your choice of input methods. +* Multibyte Conversion:: How single-byte characters convert to multibyte. +* Coding Systems:: Character set conversion when you read and + write files, and so on. +* Recognize Coding:: How Emacs figures out which conversion to use. +* Specify Coding:: Specifying a file's coding system explicitly. +* Output Coding:: Choosing coding systems for output. +* Text Coding:: Choosing conversion to use for file text. +* Communication Coding:: Coding systems for interprocess communication. +* File Name Coding:: Coding systems for file @emph{names}. +* Terminal Coding:: Specifying coding systems for converting + terminal input and output. +* Fontsets:: Fontsets are collections of fonts + that cover the whole spectrum of characters. +* Defining Fontsets:: Defining a new fontset. +* Undisplayable Characters:: When characters don't display. +* Unibyte Mode:: You can pick one European character set + to use without multibyte characters. +* Charsets:: How Emacs groups its internal character codes. +@end menu + +@node International Chars +@section Introduction to International Character Sets + + The users of international character sets and scripts have +established many more-or-less standard coding systems for storing +files. Emacs internally uses a single multibyte character encoding, +so that it can intermix characters from all these scripts in a single +buffer or string. This encoding represents each non-@acronym{ASCII} +character as a sequence of bytes in the range 0200 through 0377. +Emacs translates between the multibyte character encoding and various +other coding systems when reading and writing files, when exchanging +data with subprocesses, and (in some cases) in the @kbd{C-q} command +(@pxref{Multibyte Conversion}). + +@kindex C-h h +@findex view-hello-file +@cindex undisplayable characters +@cindex @samp{?} in display + The command @kbd{C-h h} (@code{view-hello-file}) displays the file +@file{etc/HELLO}, which shows how to say ``hello'' in many languages. +This illustrates various scripts. If some characters can't be +displayed on your terminal, they appear as @samp{?} or as hollow boxes +(@pxref{Undisplayable Characters}). + + Keyboards, even in the countries where these character sets are used, +generally don't have keys for all the characters in them. So Emacs +supports various @dfn{input methods}, typically one for each script or +language, to make it convenient to type them. + +@kindex C-x RET + The prefix key @kbd{C-x @key{RET}} is used for commands that pertain +to multibyte characters, coding systems, and input methods. + +@node Enabling Multibyte +@section Enabling Multibyte Characters + + By default, Emacs starts in multibyte mode, because that allows you to +use all the supported languages and scripts without limitations. + +@cindex turn multibyte support on or off + You can enable or disable multibyte character support, either for +Emacs as a whole, or for a single buffer. When multibyte characters +are disabled in a buffer, we call that @dfn{unibyte mode}. Then each +byte in that buffer represents a character, even codes 0200 through +0377. + + The old features for supporting the European character sets, ISO +Latin-1 and ISO Latin-2, work in unibyte mode as they did in Emacs 19 +and also work for the other ISO 8859 character sets. However, there +is no need to turn off multibyte character support to use ISO Latin; +the Emacs multibyte character set includes all the characters in these +character sets, and Emacs can translate automatically to and from the +ISO codes. + + To edit a particular file in unibyte representation, visit it using +@code{find-file-literally}. @xref{Visiting}. To convert a buffer in +multibyte representation into a single-byte representation of the same +characters, the easiest way is to save the contents in a file, kill the +buffer, and find the file again with @code{find-file-literally}. You +can also use @kbd{C-x @key{RET} c} +(@code{universal-coding-system-argument}) and specify @samp{raw-text} as +the coding system with which to find or save a file. @xref{Text +Coding}. Finding a file as @samp{raw-text} doesn't disable format +conversion, uncompression and auto mode selection as +@code{find-file-literally} does. + +@vindex enable-multibyte-characters +@vindex default-enable-multibyte-characters + To turn off multibyte character support by default, start Emacs with +the @samp{--unibyte} option (@pxref{Initial Options}), or set the +environment variable @env{EMACS_UNIBYTE}. You can also customize +@code{enable-multibyte-characters} or, equivalently, directly set the +variable @code{default-enable-multibyte-characters} to @code{nil} in +your init file to have basically the same effect as @samp{--unibyte}. + +@findex toggle-enable-multibyte-characters + To convert a unibyte session to a multibyte session, set +@code{default-enable-multibyte-characters} to @code{t}. Buffers which +were created in the unibyte session before you turn on multibyte support +will stay unibyte. You can turn on multibyte support in a specific +buffer by invoking the command @code{toggle-enable-multibyte-characters} +in that buffer. + +@cindex Lisp files, and multibyte operation +@cindex multibyte operation, and Lisp files +@cindex unibyte operation, and Lisp files +@cindex init file, and non-@acronym{ASCII} characters +@cindex environment variables, and non-@acronym{ASCII} characters + With @samp{--unibyte}, multibyte strings are not created during +initialization from the values of environment variables, +@file{/etc/passwd} entries etc.@: that contain non-@acronym{ASCII} 8-bit +characters. + + Emacs normally loads Lisp files as multibyte, regardless of whether +you used @samp{--unibyte}. This includes the Emacs initialization file, +@file{.emacs}, and the initialization files of Emacs packages such as +Gnus. However, you can specify unibyte loading for a particular Lisp +file, by putting @w{@samp{-*-unibyte: t;-*-}} in a comment on the first +line (@pxref{File Variables}). Then that file is always loaded as +unibyte text, even if you did not start Emacs with @samp{--unibyte}. +The motivation for these conventions is that it is more reliable to +always load any particular Lisp file in the same way. However, you can +load a Lisp file as unibyte, on any one occasion, by typing @kbd{C-x +@key{RET} c raw-text @key{RET}} immediately before loading it. + + The mode line indicates whether multibyte character support is +enabled in the current buffer. If it is, there are two or more +characters (most often two dashes) near the beginning of the mode +line, before the indication of the visited file's end-of-line +convention (colon, backslash, etc.). When multibyte characters +are not enabled, nothing precedes the colon except a single dash. +@xref{Mode Line}, for more details about this. + +@node Language Environments +@section Language Environments +@cindex language environments + + All supported character sets are supported in Emacs buffers whenever +multibyte characters are enabled; there is no need to select a +particular language in order to display its characters in an Emacs +buffer. However, it is important to select a @dfn{language environment} +in order to set various defaults. The language environment really +represents a choice of preferred script (more or less) rather than a +choice of language. + + The language environment controls which coding systems to recognize +when reading text (@pxref{Recognize Coding}). This applies to files, +incoming mail, netnews, and any other text you read into Emacs. It may +also specify the default coding system to use when you create a file. +Each language environment also specifies a default input method. + +@findex set-language-environment +@vindex current-language-environment + To select a language environment, you can customize the variable +@code{current-language-environment} or use the command @kbd{M-x +set-language-environment}. It makes no difference which buffer is +current when you use this command, because the effects apply globally to +the Emacs session. The supported language environments include: + +@cindex Euro sign +@cindex UTF-8 +@quotation +ASCII, Belarusian, Brazilian Portuguese, Bulgarian, Chinese-BIG5, +Chinese-CNS, Chinese-EUC-TW, Chinese-GB, Croatian, Cyrillic-ALT, +Cyrillic-ISO, Cyrillic-KOI8, Czech, Devanagari, Dutch, English, +Esperanto, Ethiopic, French, Georgian, German, Greek, Hebrew, IPA, +Italian, Japanese, Kannada, Korean, Lao, Latin-1, Latin-2, Latin-3, +Latin-4, Latin-5, Latin-6, Latin-7, Latin-8 (Celtic), Latin-9 (updated +Latin-1 with the Euro sign), Latvian, Lithuanian, Malayalam, Polish, +Romanian, Russian, Slovak, Slovenian, Spanish, Swedish, Tajik, Tamil, +Thai, Tibetan, Turkish, UTF-8 (for a setup which prefers Unicode +characters and files encoded in UTF-8), Ukrainian, Vietnamese, Welsh, +and Windows-1255 (for a setup which prefers Cyrillic characters and +files encoded in Windows-1255). +@tex +\hbadness=10000\par % just avoid underfull hbox warning +@end tex +@end quotation + +@cindex fonts for various scripts +@cindex Intlfonts package, installation + To display the script(s) used by your language environment on a +graphical display, you need to have a suitable font. If some of the +characters appear as empty boxes, you should install the GNU Intlfonts +package, which includes fonts for most supported scripts.@footnote{If +you run Emacs on X, you need to inform the X server about the location +of the newly installed fonts with the following commands: + +@example + xset fp+ /usr/local/share/emacs/fonts + xset fp rehash +@end example +} +@xref{Fontsets}, for more details about setting up your fonts. + +@findex set-locale-environment +@vindex locale-language-names +@vindex locale-charset-language-names +@cindex locales + Some operating systems let you specify the character-set locale you +are using by setting the locale environment variables @env{LC_ALL}, +@env{LC_CTYPE}, or @env{LANG}.@footnote{If more than one of these is +set, the first one that is nonempty specifies your locale for this +purpose.} During startup, Emacs looks up your character-set locale's +name in the system locale alias table, matches its canonical name +against entries in the value of the variables +@code{locale-charset-language-names} and @code{locale-language-names}, +and selects the corresponding language environment if a match is found. +(The former variable overrides the latter.) It also adjusts the display +table and terminal coding system, the locale coding system, the +preferred coding system as needed for the locale, and---last but not +least---the way Emacs decodes non-@acronym{ASCII} characters sent by your keyboard. + + If you modify the @env{LC_ALL}, @env{LC_CTYPE}, or @env{LANG} +environment variables while running Emacs, you may want to invoke the +@code{set-locale-environment} function afterwards to readjust the +language environment from the new locale. + +@vindex locale-preferred-coding-systems + The @code{set-locale-environment} function normally uses the preferred +coding system established by the language environment to decode system +messages. But if your locale matches an entry in the variable +@code{locale-preferred-coding-systems}, Emacs uses the corresponding +coding system instead. For example, if the locale @samp{ja_JP.PCK} +matches @code{japanese-shift-jis} in +@code{locale-preferred-coding-systems}, Emacs uses that encoding even +though it might normally use @code{japanese-iso-8bit}. + + You can override the language environment chosen at startup with +explicit use of the command @code{set-language-environment}, or with +customization of @code{current-language-environment} in your init +file. + +@kindex C-h L +@findex describe-language-environment + To display information about the effects of a certain language +environment @var{lang-env}, use the command @kbd{C-h L @var{lang-env} +@key{RET}} (@code{describe-language-environment}). This tells you +which languages this language environment is useful for, and lists the +character sets, coding systems, and input methods that go with it. It +also shows some sample text to illustrate scripts used in this +language environment. If you give an empty input for @var{lang-env}, +this command describes the chosen language environment. + +@vindex set-language-environment-hook + You can customize any language environment with the normal hook +@code{set-language-environment-hook}. The command +@code{set-language-environment} runs that hook after setting up the new +language environment. The hook functions can test for a specific +language environment by checking the variable +@code{current-language-environment}. This hook is where you should +put non-default settings for specific language environment, such as +coding systems for keyboard input and terminal output, the default +input method, etc. + +@vindex exit-language-environment-hook + Before it starts to set up the new language environment, +@code{set-language-environment} first runs the hook +@code{exit-language-environment-hook}. This hook is useful for undoing +customizations that were made with @code{set-language-environment-hook}. +For instance, if you set up a special key binding in a specific language +environment using @code{set-language-environment-hook}, you should set +up @code{exit-language-environment-hook} to restore the normal binding +for that key. + +@node Input Methods +@section Input Methods + +@cindex input methods + An @dfn{input method} is a kind of character conversion designed +specifically for interactive input. In Emacs, typically each language +has its own input method; sometimes several languages which use the same +characters can share one input method. A few languages support several +input methods. + + The simplest kind of input method works by mapping @acronym{ASCII} letters +into another alphabet; this allows you to use one other alphabet +instead of @acronym{ASCII}. The Greek and Russian input methods +work this way. + + A more powerful technique is composition: converting sequences of +characters into one letter. Many European input methods use composition +to produce a single non-@acronym{ASCII} letter from a sequence that consists of a +letter followed by accent characters (or vice versa). For example, some +methods convert the sequence @kbd{a'} into a single accented letter. +These input methods have no special commands of their own; all they do +is compose sequences of printing characters. + + The input methods for syllabic scripts typically use mapping followed +by composition. The input methods for Thai and Korean work this way. +First, letters are mapped into symbols for particular sounds or tone +marks; then, sequences of these which make up a whole syllable are +mapped into one syllable sign. + + Chinese and Japanese require more complex methods. In Chinese input +methods, first you enter the phonetic spelling of a Chinese word (in +input method @code{chinese-py}, among others), or a sequence of +portions of the character (input methods @code{chinese-4corner} and +@code{chinese-sw}, and others). One input sequence typically +corresponds to many possible Chinese characters. You select the one +you mean using keys such as @kbd{C-f}, @kbd{C-b}, @kbd{C-n}, +@kbd{C-p}, and digits, which have special meanings in this situation. + + The possible characters are conceptually arranged in several rows, +with each row holding up to 10 alternatives. Normally, Emacs displays +just one row at a time, in the echo area; @code{(@var{i}/@var{j})} +appears at the beginning, to indicate that this is the @var{i}th row +out of a total of @var{j} rows. Type @kbd{C-n} or @kbd{C-p} to +display the next row or the previous row. + + Type @kbd{C-f} and @kbd{C-b} to move forward and backward among +the alternatives in the current row. As you do this, Emacs highlights +the current alternative with a special color; type @code{C-@key{SPC}} +to select the current alternative and use it as input. The +alternatives in the row are also numbered; the number appears before +the alternative. Typing a digit @var{n} selects the @var{n}th +alternative of the current row and uses it as input. + + @key{TAB} in these Chinese input methods displays a buffer showing +all the possible characters at once; then clicking @kbd{Mouse-2} on +one of them selects that alternative. The keys @kbd{C-f}, @kbd{C-b}, +@kbd{C-n}, @kbd{C-p}, and digits continue to work as usual, but they +do the highlighting in the buffer showing the possible characters, +rather than in the echo area. + + In Japanese input methods, first you input a whole word using +phonetic spelling; then, after the word is in the buffer, Emacs +converts it into one or more characters using a large dictionary. One +phonetic spelling corresponds to a number of different Japanese words; +to select one of them, use @kbd{C-n} and @kbd{C-p} to cycle through +the alternatives. + + Sometimes it is useful to cut off input method processing so that the +characters you have just entered will not combine with subsequent +characters. For example, in input method @code{latin-1-postfix}, the +sequence @kbd{e '} combines to form an @samp{e} with an accent. What if +you want to enter them as separate characters? + + One way is to type the accent twice; this is a special feature for +entering the separate letter and accent. For example, @kbd{e ' '} gives +you the two characters @samp{e'}. Another way is to type another letter +after the @kbd{e}---something that won't combine with that---and +immediately delete it. For example, you could type @kbd{e e @key{DEL} +'} to get separate @samp{e} and @samp{'}. + + Another method, more general but not quite as easy to type, is to use +@kbd{C-\ C-\} between two characters to stop them from combining. This +is the command @kbd{C-\} (@code{toggle-input-method}) used twice. +@ifnottex +@xref{Select Input Method}. +@end ifnottex + +@cindex incremental search, input method interference + @kbd{C-\ C-\} is especially useful inside an incremental search, +because it stops waiting for more characters to combine, and starts +searching for what you have already entered. + + To find out how to input the character after point using the current +input method, type @kbd{C-u C-x =}. @xref{Position Info}. + +@vindex input-method-verbose-flag +@vindex input-method-highlight-flag + The variables @code{input-method-highlight-flag} and +@code{input-method-verbose-flag} control how input methods explain +what is happening. If @code{input-method-highlight-flag} is +non-@code{nil}, the partial sequence is highlighted in the buffer (for +most input methods---some disable this feature). If +@code{input-method-verbose-flag} is non-@code{nil}, the list of +possible characters to type next is displayed in the echo area (but +not when you are in the minibuffer). + +@node Select Input Method +@section Selecting an Input Method + +@table @kbd +@item C-\ +Enable or disable use of the selected input method. + +@item C-x @key{RET} C-\ @var{method} @key{RET} +Select a new input method for the current buffer. + +@item C-h I @var{method} @key{RET} +@itemx C-h C-\ @var{method} @key{RET} +@findex describe-input-method +@kindex C-h I +@kindex C-h C-\ +Describe the input method @var{method} (@code{describe-input-method}). +By default, it describes the current input method (if any). This +description should give you the full details of how to use any +particular input method. + +@item M-x list-input-methods +Display a list of all the supported input methods. +@end table + +@findex set-input-method +@vindex current-input-method +@kindex C-x RET C-\ + To choose an input method for the current buffer, use @kbd{C-x +@key{RET} C-\} (@code{set-input-method}). This command reads the +input method name from the minibuffer; the name normally starts with the +language environment that it is meant to be used with. The variable +@code{current-input-method} records which input method is selected. + +@findex toggle-input-method +@kindex C-\ + Input methods use various sequences of @acronym{ASCII} characters to +stand for non-@acronym{ASCII} characters. Sometimes it is useful to +turn off the input method temporarily. To do this, type @kbd{C-\} +(@code{toggle-input-method}). To reenable the input method, type +@kbd{C-\} again. + + If you type @kbd{C-\} and you have not yet selected an input method, +it prompts for you to specify one. This has the same effect as using +@kbd{C-x @key{RET} C-\} to specify an input method. + + When invoked with a numeric argument, as in @kbd{C-u C-\}, +@code{toggle-input-method} always prompts you for an input method, +suggesting the most recently selected one as the default. + +@vindex default-input-method + Selecting a language environment specifies a default input method for +use in various buffers. When you have a default input method, you can +select it in the current buffer by typing @kbd{C-\}. The variable +@code{default-input-method} specifies the default input method +(@code{nil} means there is none). + + In some language environments, which support several different input +methods, you might want to use an input method different from the +default chosen by @code{set-language-environment}. You can instruct +Emacs to select a different default input method for a certain +language environment, if you wish, by using +@code{set-language-environment-hook} (@pxref{Language Environments, +set-language-environment-hook}). For example: + +@lisp +(defun my-chinese-setup () + "Set up my private Chinese environment." + (if (equal current-language-environment "Chinese-GB") + (setq default-input-method "chinese-tonepy"))) +(add-hook 'set-language-environment-hook 'my-chinese-setup) +@end lisp + +@noindent +This sets the default input method to be @code{chinese-tonepy} +whenever you choose a Chinese-GB language environment. + +You can instruct Emacs to activate a certain input method +automatically. For example: + +@lisp +(add-hook 'text-mode-hook + (lambda () (set-input-method "german-prefix"))) +@end lisp + +@noindent +This activates the input emthod ``german-prefix'' automatically in the +Text mode. + +@findex quail-set-keyboard-layout + Some input methods for alphabetic scripts work by (in effect) +remapping the keyboard to emulate various keyboard layouts commonly used +for those scripts. How to do this remapping properly depends on your +actual keyboard layout. To specify which layout your keyboard has, use +the command @kbd{M-x quail-set-keyboard-layout}. + +@findex quail-show-key + You can use the command @kbd{M-x quail-show-key} to show what key (or +key sequence) to type in order to input the character following point, +using the selected keyboard layout. The command @kbd{C-u C-x =} also +shows that information in addition to the other information about the +character. + +@findex list-input-methods + To see a list of all the supported input methods, type @kbd{M-x +list-input-methods}. The list gives information about each input +method, including the string that stands for it in the mode line. + +@node Multibyte Conversion +@section Unibyte and Multibyte Non-@acronym{ASCII} characters + + When multibyte characters are enabled, character codes 0240 (octal) +through 0377 (octal) are not really legitimate in the buffer. The valid +non-@acronym{ASCII} printing characters have codes that start from 0400. + + If you type a self-inserting character in the range 0240 through +0377, or if you use @kbd{C-q} to insert one, Emacs assumes you +intended to use one of the ISO Latin-@var{n} character sets, and +converts it to the Emacs code representing that Latin-@var{n} +character. You select @emph{which} ISO Latin character set to use +through your choice of language environment +@iftex +(see above). +@end iftex +@ifnottex +(@pxref{Language Environments}). +@end ifnottex +If you do not specify a choice, the default is Latin-1. + + If you insert a character in the range 0200 through 0237, which +forms the @code{eight-bit-control} character set, it is inserted +literally. You should normally avoid doing this since buffers +containing such characters have to be written out in either the +@code{emacs-mule} or @code{raw-text} coding system, which is usually +not what you want. + +@node Coding Systems +@section Coding Systems +@cindex coding systems + + Users of various languages have established many more-or-less standard +coding systems for representing them. Emacs does not use these coding +systems internally; instead, it converts from various coding systems to +its own system when reading data, and converts the internal coding +system to other coding systems when writing data. Conversion is +possible in reading or writing files, in sending or receiving from the +terminal, and in exchanging data with subprocesses. + + Emacs assigns a name to each coding system. Most coding systems are +used for one language, and the name of the coding system starts with the +language name. Some coding systems are used for several languages; +their names usually start with @samp{iso}. There are also special +coding systems @code{no-conversion}, @code{raw-text} and +@code{emacs-mule} which do not convert printing characters at all. + +@cindex international files from DOS/Windows systems + A special class of coding systems, collectively known as +@dfn{codepages}, is designed to support text encoded by MS-Windows and +MS-DOS software. The names of these coding systems are +@code{cp@var{nnnn}}, where @var{nnnn} is a 3- or 4-digit number of the +codepage. You can use these encodings just like any other coding +system; for example, to visit a file encoded in codepage 850, type +@kbd{C-x @key{RET} c cp850 @key{RET} C-x C-f @var{filename} +@key{RET}}@footnote{ +In the MS-DOS port of Emacs, you need to create a @code{cp@var{nnn}} +coding system with @kbd{M-x codepage-setup}, before you can use it. +@iftex +@xref{MS-DOS and MULE,,,emacs-extra,Specialized Emacs Features}. +@end iftex +@ifnottex +@xref{MS-DOS and MULE}. +@end ifnottex +}. + + In addition to converting various representations of non-@acronym{ASCII} +characters, a coding system can perform end-of-line conversion. Emacs +handles three different conventions for how to separate lines in a file: +newline, carriage-return linefeed, and just carriage-return. + +@table @kbd +@item C-h C @var{coding} @key{RET} +Describe coding system @var{coding}. + +@item C-h C @key{RET} +Describe the coding systems currently in use. + +@item M-x list-coding-systems +Display a list of all the supported coding systems. +@end table + +@kindex C-h C +@findex describe-coding-system + The command @kbd{C-h C} (@code{describe-coding-system}) displays +information about particular coding systems, including the end-of-line +conversion specified by those coding systems. You can specify a coding +system name as the argument; alternatively, with an empty argument, it +describes the coding systems currently selected for various purposes, +both in the current buffer and as the defaults, and the priority list +for recognizing coding systems (@pxref{Recognize Coding}). + +@findex list-coding-systems + To display a list of all the supported coding systems, type @kbd{M-x +list-coding-systems}. The list gives information about each coding +system, including the letter that stands for it in the mode line +(@pxref{Mode Line}). + +@cindex end-of-line conversion +@cindex line endings +@cindex MS-DOS end-of-line conversion +@cindex Macintosh end-of-line conversion + Each of the coding systems that appear in this list---except for +@code{no-conversion}, which means no conversion of any kind---specifies +how and whether to convert printing characters, but leaves the choice of +end-of-line conversion to be decided based on the contents of each file. +For example, if the file appears to use the sequence carriage-return +linefeed to separate lines, DOS end-of-line conversion will be used. + + Each of the listed coding systems has three variants which specify +exactly what to do for end-of-line conversion: + +@table @code +@item @dots{}-unix +Don't do any end-of-line conversion; assume the file uses +newline to separate lines. (This is the convention normally used +on Unix and GNU systems.) + +@item @dots{}-dos +Assume the file uses carriage-return linefeed to separate lines, and do +the appropriate conversion. (This is the convention normally used on +Microsoft systems.@footnote{It is also specified for MIME @samp{text/*} +bodies and in other network transport contexts. It is different +from the SGML reference syntax record-start/record-end format which +Emacs doesn't support directly.}) + +@item @dots{}-mac +Assume the file uses carriage-return to separate lines, and do the +appropriate conversion. (This is the convention normally used on the +Macintosh system.) +@end table + + These variant coding systems are omitted from the +@code{list-coding-systems} display for brevity, since they are entirely +predictable. For example, the coding system @code{iso-latin-1} has +variants @code{iso-latin-1-unix}, @code{iso-latin-1-dos} and +@code{iso-latin-1-mac}. + +@cindex @code{undecided}, coding system + The coding systems @code{unix}, @code{dos}, and @code{mac} are +aliases for @code{undecided-unix}, @code{undecided-dos}, and +@code{undecided-mac}, respectively. These coding systems specify only +the end-of-line conversion, and leave the character code conversion to +be deduced from the text itself. + + The coding system @code{raw-text} is good for a file which is mainly +@acronym{ASCII} text, but may contain byte values above 127 which are +not meant to encode non-@acronym{ASCII} characters. With +@code{raw-text}, Emacs copies those byte values unchanged, and sets +@code{enable-multibyte-characters} to @code{nil} in the current buffer +so that they will be interpreted properly. @code{raw-text} handles +end-of-line conversion in the usual way, based on the data +encountered, and has the usual three variants to specify the kind of +end-of-line conversion to use. + + In contrast, the coding system @code{no-conversion} specifies no +character code conversion at all---none for non-@acronym{ASCII} byte values and +none for end of line. This is useful for reading or writing binary +files, tar files, and other files that must be examined verbatim. It, +too, sets @code{enable-multibyte-characters} to @code{nil}. + + The easiest way to edit a file with no conversion of any kind is with +the @kbd{M-x find-file-literally} command. This uses +@code{no-conversion}, and also suppresses other Emacs features that +might convert the file contents before you see them. @xref{Visiting}. + + The coding system @code{emacs-mule} means that the file contains +non-@acronym{ASCII} characters stored with the internal Emacs encoding. It +handles end-of-line conversion based on the data encountered, and has +the usual three variants to specify the kind of end-of-line conversion. + +@findex unify-8859-on-decoding-mode +@anchor{Character Translation} + The @dfn{character translation} feature can modify the effect of +various coding systems, by changing the internal Emacs codes that +decoding produces. For instance, the command +@code{unify-8859-on-decoding-mode} enables a mode that ``unifies'' the +Latin alphabets when decoding text. This works by converting all +non-@acronym{ASCII} Latin-@var{n} characters to either Latin-1 or +Unicode characters. This way it is easier to use various +Latin-@var{n} alphabets together. (In a future Emacs version we hope +to move towards full Unicode support and complete unification of +character sets.) + +@vindex enable-character-translation + If you set the variable @code{enable-character-translation} to +@code{nil}, that disables all character translation (including +@code{unify-8859-on-decoding-mode}). + +@node Recognize Coding +@section Recognizing Coding Systems + + Emacs tries to recognize which coding system to use for a given text +as an integral part of reading that text. (This applies to files +being read, output from subprocesses, text from X selections, etc.) +Emacs can select the right coding system automatically most of the +time---once you have specified your preferences. + + Some coding systems can be recognized or distinguished by which byte +sequences appear in the data. However, there are coding systems that +cannot be distinguished, not even potentially. For example, there is no +way to distinguish between Latin-1 and Latin-2; they use the same byte +values with different meanings. + + Emacs handles this situation by means of a priority list of coding +systems. Whenever Emacs reads a file, if you do not specify the coding +system to use, Emacs checks the data against each coding system, +starting with the first in priority and working down the list, until it +finds a coding system that fits the data. Then it converts the file +contents assuming that they are represented in this coding system. + + The priority list of coding systems depends on the selected language +environment (@pxref{Language Environments}). For example, if you use +French, you probably want Emacs to prefer Latin-1 to Latin-2; if you use +Czech, you probably want Latin-2 to be preferred. This is one of the +reasons to specify a language environment. + +@findex prefer-coding-system + However, you can alter the coding system priority list in detail +with the command @kbd{M-x prefer-coding-system}. This command reads +the name of a coding system from the minibuffer, and adds it to the +front of the priority list, so that it is preferred to all others. If +you use this command several times, each use adds one element to the +front of the priority list. + + If you use a coding system that specifies the end-of-line conversion +type, such as @code{iso-8859-1-dos}, what this means is that Emacs +should attempt to recognize @code{iso-8859-1} with priority, and should +use DOS end-of-line conversion when it does recognize @code{iso-8859-1}. + +@vindex file-coding-system-alist + Sometimes a file name indicates which coding system to use for the +file. The variable @code{file-coding-system-alist} specifies this +correspondence. There is a special function +@code{modify-coding-system-alist} for adding elements to this list. For +example, to read and write all @samp{.txt} files using the coding system +@code{chinese-iso-8bit}, you can execute this Lisp expression: + +@smallexample +(modify-coding-system-alist 'file "\\.txt\\'" 'chinese-iso-8bit) +@end smallexample + +@noindent +The first argument should be @code{file}, the second argument should be +a regular expression that determines which files this applies to, and +the third argument says which coding system to use for these files. + +@vindex inhibit-eol-conversion +@cindex DOS-style end-of-line display + Emacs recognizes which kind of end-of-line conversion to use based on +the contents of the file: if it sees only carriage-returns, or only +carriage-return linefeed sequences, then it chooses the end-of-line +conversion accordingly. You can inhibit the automatic use of +end-of-line conversion by setting the variable @code{inhibit-eol-conversion} +to non-@code{nil}. If you do that, DOS-style files will be displayed +with the @samp{^M} characters visible in the buffer; some people +prefer this to the more subtle @samp{(DOS)} end-of-line type +indication near the left edge of the mode line (@pxref{Mode Line, +eol-mnemonic}). + +@vindex inhibit-iso-escape-detection +@cindex escape sequences in files + By default, the automatic detection of coding system is sensitive to +escape sequences. If Emacs sees a sequence of characters that begin +with an escape character, and the sequence is valid as an ISO-2022 +code, that tells Emacs to use one of the ISO-2022 encodings to decode +the file. + + However, there may be cases that you want to read escape sequences +in a file as is. In such a case, you can set the variable +@code{inhibit-iso-escape-detection} to non-@code{nil}. Then the code +detection ignores any escape sequences, and never uses an ISO-2022 +encoding. The result is that all escape sequences become visible in +the buffer. + + The default value of @code{inhibit-iso-escape-detection} is +@code{nil}. We recommend that you not change it permanently, only for +one specific operation. That's because many Emacs Lisp source files +in the Emacs distribution contain non-@acronym{ASCII} characters encoded in the +coding system @code{iso-2022-7bit}, and they won't be +decoded correctly when you visit those files if you suppress the +escape sequence detection. + +@vindex auto-coding-alist +@vindex auto-coding-regexp-alist +@vindex auto-coding-functions + The variables @code{auto-coding-alist}, +@code{auto-coding-regexp-alist} and @code{auto-coding-functions} are +the strongest way to specify the coding system for certain patterns of +file names, or for files containing certain patterns; these variables +even override @samp{-*-coding:-*-} tags in the file itself. Emacs +uses @code{auto-coding-alist} for tar and archive files, to prevent it +from being confused by a @samp{-*-coding:-*-} tag in a member of the +archive and thinking it applies to the archive file as a whole. +Likewise, Emacs uses @code{auto-coding-regexp-alist} to ensure that +RMAIL files, whose names in general don't match any particular +pattern, are decoded correctly. One of the builtin +@code{auto-coding-functions} detects the encoding for XML files. + +@vindex rmail-decode-mime-charset + When you get new mail in Rmail, each message is translated +automatically from the coding system it is written in, as if it were a +separate file. This uses the priority list of coding systems that you +have specified. If a MIME message specifies a character set, Rmail +obeys that specification, unless @code{rmail-decode-mime-charset} is +@code{nil}. + +@vindex rmail-file-coding-system + For reading and saving Rmail files themselves, Emacs uses the coding +system specified by the variable @code{rmail-file-coding-system}. The +default value is @code{nil}, which means that Rmail files are not +translated (they are read and written in the Emacs internal character +code). + +@node Specify Coding +@section Specifying a File's Coding System + + If Emacs recognizes the encoding of a file incorrectly, you can +reread the file using the correct coding system by typing @kbd{C-x +@key{RET} r @var{coding-system} @key{RET}}. To see what coding system +Emacs actually used to decode the file, look at the coding system +mnemonic letter near the left edge of the mode line (@pxref{Mode +Line}), or type @kbd{C-h C @key{RET}}. + +@vindex coding + You can specify the coding system for a particular file in the file +itself, using the @w{@samp{-*-@dots{}-*-}} construct at the beginning, +or a local variables list at the end (@pxref{File Variables}). You do +this by defining a value for the ``variable'' named @code{coding}. +Emacs does not really have a variable @code{coding}; instead of +setting a variable, this uses the specified coding system for the +file. For example, @samp{-*-mode: C; coding: latin-1;-*-} specifies +use of the Latin-1 coding system, as well as C mode. When you specify +the coding explicitly in the file, that overrides +@code{file-coding-system-alist}. + + If you add the character @samp{!} at the end of the coding system +name in @code{coding}, it disables any character translation +(@pxref{Character Translation}) while decoding the file. This is +useful when you need to make sure that the character codes in the +Emacs buffer will not vary due to changes in user settings; for +instance, for the sake of strings in Emacs Lisp source files. + +@node Output Coding +@section Choosing Coding Systems for Output + +@vindex buffer-file-coding-system + Once Emacs has chosen a coding system for a buffer, it stores that +coding system in @code{buffer-file-coding-system}. That makes it the +default for operations that write from this buffer into a file, such +as @code{save-buffer} and @code{write-region}. You can specify a +different coding system for further file output from the buffer using +@code{set-buffer-file-coding-system} (@pxref{Text Coding}). + + You can insert any character Emacs supports into any Emacs buffer, +but most coding systems can only handle a subset of these characters. +Therefore, you can insert characters that cannot be encoded with the +coding system that will be used to save the buffer. For example, you +could start with an @acronym{ASCII} file and insert a few Latin-1 +characters into it, or you could edit a text file in Polish encoded in +@code{iso-8859-2} and add some Russian words to it. When you save +that buffer, Emacs cannot use the current value of +@code{buffer-file-coding-system}, because the characters you added +cannot be encoded by that coding system. + + When that happens, Emacs tries the most-preferred coding system (set +by @kbd{M-x prefer-coding-system} or @kbd{M-x +set-language-environment}), and if that coding system can safely +encode all of the characters in the buffer, Emacs uses it, and stores +its value in @code{buffer-file-coding-system}. Otherwise, Emacs +displays a list of coding systems suitable for encoding the buffer's +contents, and asks you to choose one of those coding systems. + + If you insert the unsuitable characters in a mail message, Emacs +behaves a bit differently. It additionally checks whether the +most-preferred coding system is recommended for use in MIME messages; +if not, Emacs tells you that the most-preferred coding system is not +recommended and prompts you for another coding system. This is so you +won't inadvertently send a message encoded in a way that your +recipient's mail software will have difficulty decoding. (You can +still use an unsuitable coding system if you type its name in response +to the question.) + +@vindex sendmail-coding-system + When you send a message with Mail mode (@pxref{Sending Mail}), Emacs has +four different ways to determine the coding system to use for encoding +the message text. It tries the buffer's own value of +@code{buffer-file-coding-system}, if that is non-@code{nil}. Otherwise, +it uses the value of @code{sendmail-coding-system}, if that is +non-@code{nil}. The third way is to use the default coding system for +new files, which is controlled by your choice of language environment, +if that is non-@code{nil}. If all of these three values are @code{nil}, +Emacs encodes outgoing mail using the Latin-1 coding system. + +@node Text Coding +@section Specifying a Coding System for File Text + + In cases where Emacs does not automatically choose the right coding +system for a file's contents, you can use these commands to specify +one: + +@table @kbd +@item C-x @key{RET} f @var{coding} @key{RET} +Use coding system @var{coding} for saving or revisiting the visited +file in the current buffer. + +@item C-x @key{RET} c @var{coding} @key{RET} +Specify coding system @var{coding} for the immediately following +command. + +@item C-x @key{RET} r @var{coding} @key{RET} +Revisit the current file using the coding system @var{coding}. + +@item M-x recode-region @key{RET} @var{right} @key{RET} @var{wrong} @key{RET} +Convert a region that was decoded using coding system @var{wrong}, +decoding it using coding system @var{right} instead. +@end table + +@kindex C-x RET f +@findex set-buffer-file-coding-system + The command @kbd{C-x @key{RET} f} +(@code{set-buffer-file-coding-system}) sets the file coding system for +the current buffer---in other words, it says which coding system to +use when saving or reverting the visited file. You specify which +coding system using the minibuffer. If you specify a coding system +that cannot handle all of the characters in the buffer, Emacs warns +you about the troublesome characters when you actually save the +buffer. + +@cindex specify end-of-line conversion + You can also use this command to specify the end-of-line conversion +(@pxref{Coding Systems, end-of-line conversion}) for encoding the +current buffer. For example, @kbd{C-x @key{RET} f dos @key{RET}} will +cause Emacs to save the current buffer's text with DOS-style CRLF line +endings. + +@kindex C-x RET c +@findex universal-coding-system-argument + Another way to specify the coding system for a file is when you visit +the file. First use the command @kbd{C-x @key{RET} c} +(@code{universal-coding-system-argument}); this command uses the +minibuffer to read a coding system name. After you exit the minibuffer, +the specified coding system is used for @emph{the immediately following +command}. + + So if the immediately following command is @kbd{C-x C-f}, for example, +it reads the file using that coding system (and records the coding +system for when you later save the file). Or if the immediately following +command is @kbd{C-x C-w}, it writes the file using that coding system. +When you specify the coding system for saving in this way, instead +of with @kbd{C-x @key{RET} f}, there is no warning if the buffer +contains characters that the coding system cannot handle. + + Other file commands affected by a specified coding system include +@kbd{C-x i} and @kbd{C-x C-v}, as well as the other-window variants +of @kbd{C-x C-f}. @kbd{C-x @key{RET} c} also affects commands that +start subprocesses, including @kbd{M-x shell} (@pxref{Shell}). If the +immediately following command does not use the coding system, then +@kbd{C-x @key{RET} c} ultimately has no effect. + + An easy way to visit a file with no conversion is with the @kbd{M-x +find-file-literally} command. @xref{Visiting}. + +@vindex default-buffer-file-coding-system + The variable @code{default-buffer-file-coding-system} specifies the +choice of coding system to use when you create a new file. It applies +when you find a new file, and when you create a buffer and then save it +in a file. Selecting a language environment typically sets this +variable to a good choice of default coding system for that language +environment. + +@kindex C-x RET r +@findex revert-buffer-with-coding-system + If you visit a file with a wrong coding system, you can correct this +with @kbd{C-x @key{RET} r} (@code{revert-buffer-with-coding-system}). +This visits the current file again, using a coding system you specify. + +@findex recode-region + If a piece of text has already been inserted into a buffer using the +wrong coding system, you can redo the decoding of it using @kbd{M-x +recode-region}. This prompts you for the proper coding system, then +for the wrong coding system that was actually used, and does the +conversion. It first encodes the region using the wrong coding system, +then decodes it again using the proper coding system. + +@node Communication Coding +@section Coding Systems for Interprocess Communication + + This section explains how to specify coding systems for use +in communication with other processes. + +@table @kbd +@item C-x @key{RET} x @var{coding} @key{RET} +Use coding system @var{coding} for transferring selections to and from +other window-based applications. + +@item C-x @key{RET} X @var{coding} @key{RET} +Use coding system @var{coding} for transferring @emph{one} +selection---the next one---to or from another window-based application. + +@item C-x @key{RET} p @var{input-coding} @key{RET} @var{output-coding} @key{RET} +Use coding systems @var{input-coding} and @var{output-coding} for +subprocess input and output in the current buffer. + +@item C-x @key{RET} c @var{coding} @key{RET} +Specify coding system @var{coding} for the immediately following +command. +@end table + +@kindex C-x RET x +@kindex C-x RET X +@findex set-selection-coding-system +@findex set-next-selection-coding-system + The command @kbd{C-x @key{RET} x} (@code{set-selection-coding-system}) +specifies the coding system for sending selected text to other windowing +applications, and for receiving the text of selections made in other +applications. This command applies to all subsequent selections, until +you override it by using the command again. The command @kbd{C-x +@key{RET} X} (@code{set-next-selection-coding-system}) specifies the +coding system for the next selection made in Emacs or read by Emacs. + +@vindex x-select-request-type + The variable @code{x-select-request-type} specifies the data type to +request from the X Window System for receiving text selections from +other applications. If the value is @code{nil} (the default), Emacs +tries @code{COMPOUND_TEXT} and @code{UTF8_STRING}, in this order, and +uses various heuristics to choose the more appropriate of the two +results; if none of these succeed, Emacs falls back on @code{STRING}. +If the value of @code{x-select-request-type} is one of the symbols +@code{COMPOUND_TEXT}, @code{UTF8_STRING}, @code{STRING}, or +@code{TEXT}, Emacs uses only that request type. If the value is a +list of some of these symbols, Emacs tries only the request types in +the list, in order, until one of them succeeds, or until the list is +exhausted. + +@kindex C-x RET p +@findex set-buffer-process-coding-system + The command @kbd{C-x @key{RET} p} (@code{set-buffer-process-coding-system}) +specifies the coding system for input and output to a subprocess. This +command applies to the current buffer; normally, each subprocess has its +own buffer, and thus you can use this command to specify translation to +and from a particular subprocess by giving the command in the +corresponding buffer. + + You can also use @kbd{C-x @key{RET} c} just before the command that +runs or starts a subprocess, to specify the coding system to use for +communication with that subprocess. + + The default for translation of process input and output depends on the +current language environment. + +@vindex locale-coding-system +@cindex decoding non-@acronym{ASCII} keyboard input on X + The variable @code{locale-coding-system} specifies a coding system +to use when encoding and decoding system strings such as system error +messages and @code{format-time-string} formats and time stamps. That +coding system is also used for decoding non-@acronym{ASCII} keyboard input on X +Window systems. You should choose a coding system that is compatible +with the underlying system's text representation, which is normally +specified by one of the environment variables @env{LC_ALL}, +@env{LC_CTYPE}, and @env{LANG}. (The first one, in the order +specified above, whose value is nonempty is the one that determines +the text representation.) + +@vindex x-select-request-type + The variable @code{x-select-request-type} specifies a selection data +type of selection to request from the X server. The default value is +@code{nil}, which means Emacs tries @code{COMPOUND_TEXT} and +@code{UTF8_STRING}, and uses whichever result seems more appropriate. +You can explicitly specify the data type by setting the variable to +one of the symbols @code{COMPOUND_TEXT}, @code{UTF8_STRING}, +@code{STRING} and @code{TEXT}. + +@node File Name Coding +@section Coding Systems for File Names + +@table @kbd +@item C-x @key{RET} F @var{coding} @key{RET} +Use coding system @var{coding} for encoding and decoding file +@emph{names}. +@end table + +@vindex file-name-coding-system +@cindex file names with non-@acronym{ASCII} characters + The variable @code{file-name-coding-system} specifies a coding +system to use for encoding file names. It has no effect on reading +and writing the @emph{contents} of files. + +@findex set-file-name-coding-system +@kindex C-x @key{RET} F + If you set the variable to a coding system name (as a Lisp symbol or +a string), Emacs encodes file names using that coding system for all +file operations. This makes it possible to use non-@acronym{ASCII} +characters in file names---or, at least, those non-@acronym{ASCII} +characters which the specified coding system can encode. Use @kbd{C-x +@key{RET} F} (@code{set-file-name-coding-system}) to specify this +interactively. + + If @code{file-name-coding-system} is @code{nil}, Emacs uses a +default coding system determined by the selected language environment. +In the default language environment, any non-@acronym{ASCII} +characters in file names are not encoded specially; they appear in the +file system using the internal Emacs representation. + + @strong{Warning:} if you change @code{file-name-coding-system} (or the +language environment) in the middle of an Emacs session, problems can +result if you have already visited files whose names were encoded using +the earlier coding system and cannot be encoded (or are encoded +differently) under the new coding system. If you try to save one of +these buffers under the visited file name, saving may use the wrong file +name, or it may get an error. If such a problem happens, use @kbd{C-x +C-w} to specify a new file name for that buffer. + +@findex recode-file-name + If a mistake occurs when encoding a file name, use the command +@kbd{M-x recode-file-name} to change the file name's coding +system. This prompts for an existing file name, its old coding +system, and the coding system to which you wish to convert. + +@node Terminal Coding +@section Coding Systems for Terminal I/O + +@table @kbd +@item C-x @key{RET} k @var{coding} @key{RET} +Use coding system @var{coding} for keyboard input. + +@item C-x @key{RET} t @var{coding} @key{RET} +Use coding system @var{coding} for terminal output. +@end table + +@kindex C-x RET t +@findex set-terminal-coding-system + The command @kbd{C-x @key{RET} t} (@code{set-terminal-coding-system}) +specifies the coding system for terminal output. If you specify a +character code for terminal output, all characters output to the +terminal are translated into that coding system. + + This feature is useful for certain character-only terminals built to +support specific languages or character sets---for example, European +terminals that support one of the ISO Latin character sets. You need to +specify the terminal coding system when using multibyte text, so that +Emacs knows which characters the terminal can actually handle. + + By default, output to the terminal is not translated at all, unless +Emacs can deduce the proper coding system from your terminal type or +your locale specification (@pxref{Language Environments}). + +@kindex C-x RET k +@findex set-keyboard-coding-system +@vindex keyboard-coding-system + The command @kbd{C-x @key{RET} k} (@code{set-keyboard-coding-system}) +or the variable @code{keyboard-coding-system} specifies the coding +system for keyboard input. Character-code translation of keyboard +input is useful for terminals with keys that send non-@acronym{ASCII} +graphic characters---for example, some terminals designed for ISO +Latin-1 or subsets of it. + + By default, keyboard input is translated based on your system locale +setting. If your terminal does not really support the encoding +implied by your locale (for example, if you find it inserts a +non-@acronym{ASCII} character if you type @kbd{M-i}), you will need to set +@code{keyboard-coding-system} to @code{nil} to turn off encoding. +You can do this by putting + +@lisp +(set-keyboard-coding-system nil) +@end lisp + +@noindent +in your @file{~/.emacs} file. + + There is a similarity between using a coding system translation for +keyboard input, and using an input method: both define sequences of +keyboard input that translate into single characters. However, input +methods are designed to be convenient for interactive use by humans, and +the sequences that are translated are typically sequences of @acronym{ASCII} +printing characters. Coding systems typically translate sequences of +non-graphic characters. + +@node Fontsets +@section Fontsets +@cindex fontsets + + A font typically defines shapes for a single alphabet or script. +Therefore, displaying the entire range of scripts that Emacs supports +requires a collection of many fonts. In Emacs, such a collection is +called a @dfn{fontset}. A fontset is defined by a list of fonts, each +assigned to handle a range of character codes. + + Each fontset has a name, like a font. However, while fonts are +stored in the system and the available font names are defined by the +system, fontsets are defined within Emacs itself. Once you have +defined a fontset, you can use it within Emacs by specifying its name, +anywhere that you could use a single font. Of course, Emacs fontsets +can use only the fonts that the system supports; if certain characters +appear on the screen as hollow boxes, this means that the fontset in +use for them has no font for those characters.@footnote{The Emacs +installation instructions have information on additional font +support.} + + Emacs creates two fontsets automatically: the @dfn{standard fontset} +and the @dfn{startup fontset}. The standard fontset is most likely to +have fonts for a wide variety of non-@acronym{ASCII} characters; +however, this is not the default for Emacs to use. (By default, Emacs +tries to find a font that has bold and italic variants.) You can +specify use of the standard fontset with the @samp{-fn} option. For +example, + +@example +emacs -fn fontset-standard +@end example + +@noindent +You can also specify a fontset with the @samp{Font} resource (@pxref{X +Resources}). + + A fontset does not necessarily specify a font for every character +code. If a fontset specifies no font for a certain character, or if it +specifies a font that does not exist on your system, then it cannot +display that character properly. It will display that character as an +empty box instead. + +@node Defining Fontsets +@section Defining fontsets + +@vindex standard-fontset-spec +@cindex standard fontset + Emacs creates a standard fontset automatically according to the value +of @code{standard-fontset-spec}. This fontset's name is + +@example +-*-fixed-medium-r-normal-*-16-*-*-*-*-*-fontset-standard +@end example + +@noindent +or just @samp{fontset-standard} for short. + + Bold, italic, and bold-italic variants of the standard fontset are +created automatically. Their names have @samp{bold} instead of +@samp{medium}, or @samp{i} instead of @samp{r}, or both. + +@cindex startup fontset + If you specify a default @acronym{ASCII} font with the @samp{Font} resource or +the @samp{-fn} argument, Emacs generates a fontset from it +automatically. This is the @dfn{startup fontset} and its name is +@code{fontset-startup}. It does this by replacing the @var{foundry}, +@var{family}, @var{add_style}, and @var{average_width} fields of the +font name with @samp{*}, replacing @var{charset_registry} field with +@samp{fontset}, and replacing @var{charset_encoding} field with +@samp{startup}, then using the resulting string to specify a fontset. + + For instance, if you start Emacs this way, + +@example +emacs -fn "*courier-medium-r-normal--14-140-*-iso8859-1" +@end example + +@noindent +Emacs generates the following fontset and uses it for the initial X +window frame: + +@example +-*-*-medium-r-normal-*-14-140-*-*-*-*-fontset-startup +@end example + + With the X resource @samp{Emacs.Font}, you can specify a fontset name +just like an actual font name. But be careful not to specify a fontset +name in a wildcard resource like @samp{Emacs*Font}---that wildcard +specification matches various other resources, such as for menus, and +menus cannot handle fontsets. + + You can specify additional fontsets using X resources named +@samp{Fontset-@var{n}}, where @var{n} is an integer starting from 0. +The resource value should have this form: + +@smallexample +@var{fontpattern}, @r{[}@var{charset}:@var{font}@r{]@dots{}} +@end smallexample + +@noindent +@var{fontpattern} should have the form of a standard X font name, except +for the last two fields. They should have the form +@samp{fontset-@var{alias}}. + + The fontset has two names, one long and one short. The long name is +@var{fontpattern}. The short name is @samp{fontset-@var{alias}}. You +can refer to the fontset by either name. + + The construct @samp{@var{charset}:@var{font}} specifies which font to +use (in this fontset) for one particular character set. Here, +@var{charset} is the name of a character set, and @var{font} is the +font to use for that character set. You can use this construct any +number of times in defining one fontset. + + For the other character sets, Emacs chooses a font based on +@var{fontpattern}. It replaces @samp{fontset-@var{alias}} with values +that describe the character set. For the @acronym{ASCII} character font, +@samp{fontset-@var{alias}} is replaced with @samp{ISO8859-1}. + + In addition, when several consecutive fields are wildcards, Emacs +collapses them into a single wildcard. This is to prevent use of +auto-scaled fonts. Fonts made by scaling larger fonts are not usable +for editing, and scaling a smaller font is not useful because it is +better to use the smaller font in its own size, which is what Emacs +does. + + Thus if @var{fontpattern} is this, + +@example +-*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24 +@end example + +@noindent +the font specification for @acronym{ASCII} characters would be this: + +@example +-*-fixed-medium-r-normal-*-24-*-ISO8859-1 +@end example + +@noindent +and the font specification for Chinese GB2312 characters would be this: + +@example +-*-fixed-medium-r-normal-*-24-*-gb2312*-* +@end example + + You may not have any Chinese font matching the above font +specification. Most X distributions include only Chinese fonts that +have @samp{song ti} or @samp{fangsong ti} in @var{family} field. In +such a case, @samp{Fontset-@var{n}} can be specified as below: + +@smallexample +Emacs.Fontset-0: -*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24,\ + chinese-gb2312:-*-*-medium-r-normal-*-24-*-gb2312*-* +@end smallexample + +@noindent +Then, the font specifications for all but Chinese GB2312 characters have +@samp{fixed} in the @var{family} field, and the font specification for +Chinese GB2312 characters has a wild card @samp{*} in the @var{family} +field. + +@findex create-fontset-from-fontset-spec + The function that processes the fontset resource value to create the +fontset is called @code{create-fontset-from-fontset-spec}. You can also +call this function explicitly to create a fontset. + + @xref{Font X}, for more information about font naming in X. + +@node Undisplayable Characters +@section Undisplayable Characters + + There may be a some non-@acronym{ASCII} characters that your terminal cannot +display. Most text-only terminals support just a single character +set (use the variable @code{default-terminal-coding-system} +(@pxref{Terminal Coding}) to tell Emacs which one); characters which +can't be encoded in that coding system are displayed as @samp{?} by +default. + + Graphical displays can display a broader range of characters, but +you may not have fonts installed for all of them; characters that have +no font appear as a hollow box. + + If you use Latin-1 characters but your terminal can't display +Latin-1, you can arrange to display mnemonic @acronym{ASCII} sequences +instead, e.g.@: @samp{"o} for o-umlaut. Load the library +@file{iso-ascii} to do this. + +@vindex latin1-display + If your terminal can display Latin-1, you can display characters +from other European character sets using a mixture of equivalent +Latin-1 characters and @acronym{ASCII} mnemonics. Customize the variable +@code{latin1-display} to enable this. The mnemonic @acronym{ASCII} +sequences mostly correspond to those of the prefix input methods. + +@node Unibyte Mode +@section Unibyte Editing Mode + +@cindex European character sets +@cindex accented characters +@cindex ISO Latin character sets +@cindex Unibyte operation + The ISO 8859 Latin-@var{n} character sets define character codes in +the range 0240 to 0377 octal (160 to 255 decimal) to handle the +accented letters and punctuation needed by various European languages +(and some non-European ones). If you disable multibyte characters, +Emacs can still handle @emph{one} of these character codes at a time. +To specify @emph{which} of these codes to use, invoke @kbd{M-x +set-language-environment} and specify a suitable language environment +such as @samp{Latin-@var{n}}. + + For more information about unibyte operation, see @ref{Enabling +Multibyte}. Note particularly that you probably want to ensure that +your initialization files are read as unibyte if they contain +non-@acronym{ASCII} characters. + +@vindex unibyte-display-via-language-environment + Emacs can also display those characters, provided the terminal or font +in use supports them. This works automatically. Alternatively, on a +graphical display, Emacs can also display single-byte characters +through fontsets, in effect by displaying the equivalent multibyte +characters according to the current language environment. To request +this, set the variable @code{unibyte-display-via-language-environment} +to a non-@code{nil} value. + +@cindex @code{iso-ascii} library + If your terminal does not support display of the Latin-1 character +set, Emacs can display these characters as @acronym{ASCII} sequences which at +least give you a clear idea of what the characters are. To do this, +load the library @code{iso-ascii}. Similar libraries for other +Latin-@var{n} character sets could be implemented, but we don't have +them yet. + +@findex standard-display-8bit +@cindex 8-bit display + Normally non-ISO-8859 characters (decimal codes between 128 and 159 +inclusive) are displayed as octal escapes. You can change this for +non-standard ``extended'' versions of ISO-8859 character sets by using the +function @code{standard-display-8bit} in the @code{disp-table} library. + + There are two ways to input single-byte non-@acronym{ASCII} +characters: + +@itemize @bullet +@cindex 8-bit input +@item +You can use an input method for the selected language environment. +@xref{Input Methods}. When you use an input method in a unibyte buffer, +the non-@acronym{ASCII} character you specify with it is converted to unibyte. + +@item +If your keyboard can generate character codes 128 (decimal) and up, +representing non-@acronym{ASCII} characters, you can type those character codes +directly. + +On a graphical display, you should not need to do anything special to use +these keys; they should simply work. On a text-only terminal, you +should use the command @code{M-x set-keyboard-coding-system} or the +variable @code{keyboard-coding-system} to specify which coding system +your keyboard uses (@pxref{Terminal Coding}). Enabling this feature +will probably require you to use @kbd{ESC} to type Meta characters; +however, on a console terminal or in @code{xterm}, you can arrange for +Meta to be converted to @kbd{ESC} and still be able type 8-bit +characters present directly on the keyboard or using @kbd{Compose} or +@kbd{AltGr} keys. @xref{User Input}. + +@kindex C-x 8 +@cindex @code{iso-transl} library +@cindex compose character +@cindex dead character +@item +For Latin-1 only, you can use the key @kbd{C-x 8} as a ``compose +character'' prefix for entry of non-@acronym{ASCII} Latin-1 printing +characters. @kbd{C-x 8} is good for insertion (in the minibuffer as +well as other buffers), for searching, and in any other context where +a key sequence is allowed. + +@kbd{C-x 8} works by loading the @code{iso-transl} library. Once that +library is loaded, the @key{ALT} modifier key, if the keyboard has +one, serves the same purpose as @kbd{C-x 8}: use @key{ALT} together +with an accent character to modify the following letter. In addition, +if the keyboard has keys for the Latin-1 ``dead accent characters,'' +they too are defined to compose with the following character, once +@code{iso-transl} is loaded. + +Use @kbd{C-x 8 C-h} to list all the available @kbd{C-x 8} translations. +@end itemize + +@node Charsets +@section Charsets +@cindex charsets + + Emacs groups all supported characters into disjoint @dfn{charsets}. +Each character code belongs to one and only one charset. For +historical reasons, Emacs typically divides an 8-bit character code +for an extended version of @acronym{ASCII} into two charsets: +@acronym{ASCII}, which covers the codes 0 through 127, plus another +charset which covers the ``right-hand part'' (the codes 128 and up). +For instance, the characters of Latin-1 include the Emacs charset +@code{ascii} plus the Emacs charset @code{latin-iso8859-1}. + + Emacs characters belonging to different charsets may look the same, +but they are still different characters. For example, the letter +@samp{o} with acute accent in charset @code{latin-iso8859-1}, used for +Latin-1, is different from the letter @samp{o} with acute accent in +charset @code{latin-iso8859-2}, used for Latin-2. + +@findex list-charset-chars +@cindex characters in a certain charset +@findex describe-character-set + There are two commands for obtaining information about Emacs +charsets. The command @kbd{M-x list-charset-chars} prompts for a name +of a character set, and displays all the characters in that character +set. The command @kbd{M-x describe-character-set} prompts for a +charset name and displays information about that charset, including +its internal representation within Emacs. + + To find out which charset a character in the buffer belongs to, +put point before it and type @kbd{C-u C-x =}. + +@ignore + arch-tag: 310ba60d-31ef-4ce7-91f1-f282dd57b6b3 +@end ignore diff --cc doc/misc/ChangeLog index 20fc1bf4ac,0000000000..7d480e3689 mode 100644,000000..100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@@ -1,4951 -1,0 +1,4959 @@@ +2008-04-01 Daiki Ueno + + * epa.texi (Encrypting/decrypting *.gpg files): Document + epa-file-name-regexp. + +2008-03-31 Katsumi Yamaoka + + * gnus.texi (Example Methods): Fix description about ssh-agent. + (Indirect Functions): Fix the default value of nntp-telnet-command; + remove link to connect.html. + +2008-03-30 Michael Albinus + + * dbus.texi (Synchronous Methods): New parameter TIMEOUT for + dbus-call-method. + (Receiving Method Calls): The timeout can be set by the calling client. + + * trampver.texi: Update release number. + +2008-03-29 Reiner Steib + + * gnus.texi (Top): Fix version. Add SASL. + +2008-03-29 Michael Albinus + + Sync with Tramp 2.1.13. + + * trampver.texi: Update release number. + ++2008-03-29 Chong Yidong ++ ++ * org.texi: Update to new org-mode website. ++ ++2008-03-29 Stefan Monnier ++ ++ * cl.texi (For Clauses): Fix loop over key-seq to match code. ++ +2008-03-22 Reiner Steib + + * gnus.texi (Foreign Groups): Add gnus-read-ephemeral-gmane-group, + gnus-read-ephemeral-gmane-group-url, + gnus-read-ephemeral-emacs-bug-group, + gnus-read-ephemeral-debian-bug-group. + +2008-03-21 Reiner Steib + + * gnus.texi (MIME Commands): Add gnus-article-browse-html-article. + + * gnus-news.texi: Add EasyPG. Add gnus-article-browse-html-article. + Add FIXMEs for Bookmarks and gnus-registry-marks. + +2008-03-16 Reiner Steib + + * gnus.texi (Smileys): Document `smiley-style'. + +2008-03-21 Reiner Steib + + * gnus.texi (Gnus Development): Clarify difference between ding and + gnu.emacs.gnus. + (MIME Commands, Using MIME, RSS): Fix markup. + + * gnus-faq.texi ([8.4]): Ditto. + +2008-03-20 Reiner Steib + + * gnus.texi (Emacsen): Remove obsolete stuff. + +2008-03-19 Reiner Steib + + * gnus.texi (Oort Gnus): Add version info WRT + `mail-source-delete-incoming'. + +2008-03-16 Reiner Steib + + * gnus.texi (Top): Add "Other related manuals" and version info in + `iftex' output. + (Formatting Fonts): Add index entries for gnus-mouse-face, gnus-face-0, + gnus-balloon-face-0 and the corresponding format specifiers. + +2008-03-26 Michael Albinus + + * tramp.texi (Filename completion): Remove footnote about let-bind + of `partial-completion-mode'. It doesn't work this way. + +2008-03-26 Stefan Monnier + + * pcl-cvs.texi (Contributors): Update my email. + +2008-03-21 Michael Albinus + + * dbus.texi (Receiving Method Calls): Mention default D-Bus timeout. + +2008-03-17 Bill Wohler + + * mh-e.texi (Viewing): Update URL for adding header fields to + mh-invisible-header-fields-default. + +2008-03-16 Bill Wohler + + * mh-e.texi (Preface): Add Gnus to requirements. + (Forwarding): Note that forwarded MIME messages are now inline. + +2008-03-14 Stefan Monnier + + * gnus.texi (Example Methods, Direct Functions, Indirect Functions) + (Common Variables): Give precedence to the netcat methods over the + telnet methods, and mention that they are more reliable. + +2008-03-13 Carsten Dominik + + * org.texi (Exporting Agenda Views): Document agenda export to + iCalendar. + (Progress logging): Document the new progress logging stuff. + +2008-03-10 Reiner Steib + + * gnus.texi (Mail Source Customization, Gnus Development, Oort Gnus): + Update for change of `mail-source-delete-incoming'. + + * gnus-news.texi: Ditto. + +2008-03-10 Reiner Steib + + * gnus-coding.texi (Gnus Maintainance Guide): Update conventions for + custom versions. + +2008-03-07 Alan Mackenzie + + * cc-mode.texi (Limitations and Known Bugs): State that the number of + parens/brackets in a k&r region is limited. + +2008-02-27 Reiner Steib + + * gnus-news.texi: Mention problem with coding system `utf-8-emacs' when + using different Emacs versions. + +2008-02-27 Glenn Morris + + * sc.texi: Remove a lot of old and obsolete info. + (titlepage): Simplify. + (Emacs 19 MUAs, Emacs 18 MUAs, MH-E with any Emacsen) + (VM with any Emacsen, GNEWS with any Emacsen) + (Overloading for Non-conforming MUAs, Version 3 Changes) + (The Supercite Mailing List): Delete nodes. + (Introduction): Remove info about old packages. + (Getting Connected): Simplify. Remove info about old packages. + (Citing Commands): Delete Emacs 19 info. + (Hints to MUA Authors): Simplify. + (Thanks and History): Merge in some info from the deleted node + "Version 3 Changes". + +2008-02-05 Juanma Barranquero + + * org.texi (Setting tags, In-buffer settings): + * rcirc.texi (rcirc commands): Replace `legal' with `valid'. + +2008-02-24 Katsumi Yamaoka + + * gnus-news.texi: Mention that spaces and tabs are allowed in the + installation directory name. + +2008-02-12 Romain Francoise + + * epa.texi (Overview): Fix typo. + +2008-02-11 Daiki Ueno + + * epa.texi (Quick start): Remove the .emacs setting. + +2008-02-10 Daiki Ueno + + * epa.texi (Quick start): Use the command `epa-enable' instead of + loading `epa-setup'. + +2008-02-08 Juanma Barranquero + + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean): Add epa. + ($(infodir)/epa, epa.dvi): New targets. + +2008-02-08 Daiki Ueno + + * Makefile.in: Add rules to build EasyPG Assistant User's Manual. + + * epa.texi: New manual documenting the EasyPG Assistant. + +2008-02-06 Michael Albinus + + * dbus.texi (all): Wrap Lisp code examples with @lisp ... @end lisp. + (Inspection): New function dbus-ping. + +2008-02-05 Michael Albinus + + * tramp.texi (Remote processes): Add `shell-command'. + +2008-01-28 Michael Sperber + + * gnus.texi (Mail Source Specifiers): Document `group' specifier. + (Group Parameters): Document `mail-source' parameter. + +2008-01-27 Michael Albinus + + * tramp.texi (Inline methods): The hostname of the su(do)? methods + must be a local host. + +2008-01-26 Michael Olson + + * erc.texi: Update version for ERC 5.3 release. + (Obtaining ERC): Update extras URLs for 5.3. + (Development): Write instructions for git, and remove those for Arch. + (History): Mention the switch to git. + +2008-01-24 Karl Berry + + * info.texi (Search Index, Search Text): Mention the command + character in the section name, a la the (Go to node) node. + +2008-01-21 Michael Albinus + + * dbus.texi (Errors and Events): New macro dbus-ignore-errors. + +2008-01-18 Katsumi Yamaoka + + * gnus-news.texi: Mention gnus-article-describe-bindings. + +2008-01-18 Katsumi Yamaoka + + * gnus-news.texi: Mention gnus-article-wide-reply-with-original. + +2008-01-18 Carsten Dominik + + * org.texi (Property inheritance): New section. + (Conventions): New section. + (Structure editing): Document C-RET, the prefix arg to the cut/copy + commands, and the new bindings for refiling. + (Sparse trees): Document the new special command for sparse trees. + (References): Be more clear about the counting of hilines. + (Handling links): Document M-p/n for accessing links. + (Fast access to TODO states): New section. + (Per file keywords): New section. + (Property inheritance): New section. + (Column attributes): New summary types. + (Capturing Column View): New section. + (The date/time prompt): Cover the new features in the date/time prompt. + Compactify the table of keys for the calendar remote control. + (Clocking work time): Document the new :scope parameter. + (Remember): Promoted to chapter. + (Quoted examples): New section. + (Enhancing text): New verbatim environments. + +2008-01-14 Michael Albinus + + * trampver.texi: Update release number. + +2008-01-09 Katsumi Yamaoka + + * gnus.texi (Article Keymap): Add + gnus-article-wide-reply-with-original; fix descriptions of + gnus-article-reply-with-original and + gnus-article-followup-with-original. + +2008-01-09 Glenn Morris + + * nxml-mode.texi: Add @copying section. + +2008-01-05 Reiner Steib + + * message.texi (Mail Variables): Add some text from "(gnus)Posting + Server". Add `message-send-mail-with-mailclient'. + + * gnus.texi (Posting Server): Move some text to "(message)Mail + Variables" and add a reference here. + +2008-01-04 Michael Albinus + + * dbus.texi (Receiving Method Calls): New chapter. + (Errors and Events): Add serial number to events. Replace "signal" by + "message". Introduce dbus-event-serial-number. + +2008-01-03 Michael Albinus + + * dbus.texi (Type Conversion): Explain the type specification for empty + arrays. Use another example. + +2007-12-30 Michael Albinus + + * dbus.texi (all): Replace "..." by @dots{}. + (Type Conversion): Precise the value range for :byte types. + (Signals): Rename dbus-unregister-signal to dbus-unregister-object. + Mention its return value. + (Errors and Events): There is no D-Bus error propagation during event + processing. + +2007-12-29 Jay Belanger + + * calc.tex (Yacas Language, Maxima Language, Giac Language): + New sections. + +2007-12-29 Reiner Steib + + * gnus.texi (Group Parameters): Reorder the text and add a note about + `gnus-parameters' near the beginning of the node. + +2007-12-29 IRIE Tetsuya (tiny change) + + * gnus.texi (Score File Editing): Fix function name. + +2007-12-23 Michael Albinus + + Sync with Tramp 2.1.12. + + * trampver.texi: Update release number. + +2007-12-22 Michael Albinus + + * dbus.texi (Type Conversion): Correct input parameters mapping. + +2007-12-21 Michael Albinus + + * dbus.texi (Type Conversion): Extend for D-Bus compound types. + (Errors and Events): Mention wrong-type-argument error. + +2007-12-21 Alex Schroeder + + * rcirc.texi: Changed single spaces after sentence end to double + spaces. Fixed some typos. + (Internet Relay Chat): Explain relay. + (Getting started with rcirc): Change items to reflect prompts. + Add more explanation to rcirc-track-minor-mode and added a comment to + warn future maintainers that this section is a copy. + (People): Changed /ignore example. + (Keywords): Not keywords. + +2007-12-20 Alex Schroeder + + * rcirc.texi (Top): Fighting Information Overload chapter added. + (Getting started with rcirc): Add notice of rcirc-track-minor-mode. + (rcirc commands): Moved /ignore command to the new chapter. + (Fighting Information Overload): New chapter documenting /keyword, + /bright, /dim, channel ignore, and low priority channels. + (Configuration): Document rcirc-server-alist, remove + rcirc-startup-channels-alist and rcirc-default-server. + +2007-12-16 Michael Albinus + + * dbus.texi (Signals): Fix example in dbus-register-signal. + +2007-12-14 Sven Joachim + + * gnus.texi (Score Variables): Fix typo. + +2007-12-07 Michael Albinus + + * dbus.texi (Synchronous Methods): Adapt dbus-call-method. + (Signals): Adapt dbus-send-signal and dbus-register-signal. + (Errors and Events): Adapt dbus-event. + +2007-12-03 Lars Magne Ingebrigtsen + + * gnus.texi (Other Files): Add the yenc command. + +2007-11-30 Reiner Steib + + * gnus.texi (MIME Commands): Default of gnus-article-loose-mime is t + since 2004-08-06. + +2007-11-28 Katsumi Yamaoka + + * gnus.texi (Fancy Mail Splitting): Fix description of splitting based + on body. + +2007-11-27 Katsumi Yamaoka + + * emacs-mime.texi (rfc2047): Mention rfc2047-encoded-word-regexp-loose + and rfc2047-allow-irregular-q-encoded-words; fix description of + rfc2047-encode-encoded-words. + +2007-11-24 Reiner Steib + + * gnus.texi (Fetching Mail): Remove obsoleted `nnmail-spool-file'. + +2007-12-05 Michael Olson + + * remember.texi (Diary): Remove "require" line for remember-diary.el. + Update documentation for `remember-diary-file'. + +2007-12-04 Michael Albinus + + * dbus.texi (Signals): Precise `dbus-register-signal'. + (Errors and Events): Rework events part, the internal structure of + dbus-event has changed. + +2007-12-03 Juanma Barranquero + + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean): Add dbus. + ($(infodir)/dbus, dbus.dvi): New targets. + +2007-12-03 Michael Albinus + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Apply dbus and dbus.dvi + unconditionally. + + * dbus.texi (Synchronous Methods): Show the result of the "lshal" + emulation with @print{}. + +2007-12-02 Richard Stallman + + * dbus.texi (Overview): Minor cleanup. + +2007-12-02 Michael Albinus + + * Makefile.in (INFO_TARGETS): Add dbus. + (DVI_TARGETS): Add dbus.dvi. + (dbus, dbus.dvi): New targets. + + * dbus.texi: New file. + +2007-11-24 Romain Francoise + + * nxml-mode.texi: Add description in @direntry. + Fix file name to match @setfilename. + +2007-11-23 Mark A. Hershberger + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add nxml-mode. + ($(infodir)/nxml-mode): New rule. + + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS): Add nxml-mode. + ($(infodir)/nxml-mode): New rule. + (clean): Add nxml-mode*. + + * nxml-mode.texi: New file with nxml manual. + +2007-11-18 Richard Stallman + + * flymake.texi (Example -- Configuring a tool called directly): + Update example. + +2007-11-18 Michael Albinus + + * tramp.texi (Filename completion): Simplify explanation of + double-slash behaviour. Explain directory contents flushing. + +2007-11-16 Jay Belanger + + * calc.texi (TeX and LaTeX Language Modes): Put in + missing braces. + +2007-11-15 Richard Stallman + + * cl.texi (Equality Predicates): Delete `eql'. + (Predicates, Naming Conventions, Top): Delete `eql'. + (Common Lisp Compatibility): Delete `eql'. + (Porting Common Lisp): Delete obsolete backquote info. + Minor clarification about character constants. + (Sequence Basics): Minor clarification. + +2007-11-15 Juanma Barranquero + + * cc-mode.texi (Electric Keys, Custom Macros): + * tramp.texi (Filename completion): Fix typos. + +2007-11-15 Jay Belanger + + * calc.texi (Basic commands): Mention the menu. + +2007-11-12 Michael Albinus + + * tramp.texi (Connection caching): Tramp flushes connection + properties when remote operating system has been changed. + +2007-11-09 Reiner Steib + + * gnus-news.texi: Fix spelling. + `message-insert-formatted-citation-line', not + `message-insert-formated-citation-line'. + + * gnus.texi, gnus-faq.texi, message.texi: Bump version to 5.10.9. + +2007-11-07 Michael Albinus + + * tramp.texi (Overview): Mention also the PuTTY integration under + Win32. Remove paragraphs about Tramp's experimental status. + (Frequently Asked Questions): Add code example for highlighting the + mode line. + +2007-11-03 Michael Olson + + * remember.texi: Change mentions of remember-buffer to + remember-finalize throughout. + +2007-10-30 Michael Olson + + * remember.texi (Copying): Remove. + (Mailbox): Update with non-BBDB instructions. + (Diary, Org): Add. + (Bibliography, Planner Page): Remove. + +2007-10-30 Juanma Barranquero + + * makefile.w32-in (INFO_TARGETS): Add remember. + (DVI_TARGETS): Add remember.dvi. + ($(infodir)/remember): New rule. + (clean): Add remember*. + +2007-10-30 Michael Olson + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add remember. + ($(infodir)/remember): New rule that builds the Remember Manual. + + * remember.texi: New file containing the Remember Mode Manual. + Shuffle chapters around after initial import. + (Function Reference): Split Keystrokes into separate chapter. + (Keystrokes): Document C-c C-k. + (Introduction): Fix typographical issue with "---". + +2007-10-29 Richard Stallman + + * widget.texi (Introduction): Delete discussion of implementation + internals. + +2007-10-29 Michael Albinus + + * tramp.texi (Connection caching): Host names must be different + when tunneling. + +2007-10-28 Reiner Steib + + * gnus.texi, gnus-faq.texi, message.texi: Bump version to + Gnus v5.13. + +2007-10-28 Miles Bader + + * gnus-news.texi, gnus-coding.texi, sasl.texi: New files. + +2007-10-28 Emanuele Giaquinta (tiny change) + + * gnus-faq.texi ([5.12]): Remove reference to discontinued service. + +2007-10-28 Reiner Steib + + * gnus.texi (Sorting the Summary Buffer): Remove + gnus-article-sort-by-date-reverse. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Non-ASCII Group Names): New node. + (Misc Group Stuff): Move gnus-group-name-charset-method-alist and + gnus-group-name-charset-group-alist to Non-ASCII Group Names node. + +2007-10-28 Michaël Cadilhac + + * gnus.texi (Mail Source Specifiers, IMAP): Add a notice on the need to + clean the output of the program `imap-shell-program'. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (IMAP): Mention nnimap-logout-timeout. + +2007-10-28 Tassilo Horn + + * gnus.texi (Sticky Articles): Documentation for sticky article + buffers. + +2007-10-28 Michaël Cadilhac + + * gnus.texi (RSS): Document nnrss-ignore-article-fields. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Various Various): Mention gnus-add-timestamp-to-message. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Archived Messages): Document + gnus-update-message-archive-method. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Limiting): Document gnus-summary-limit-to-address. + +2007-10-28 Michaël Cadilhac + + * gnus.texi (Group Maneuvering): Document + `gnus-summary-next-group-on-exit'. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Really Various Summary Commands): Mention + gnus-auto-select-on-ephemeral-exit. + +2007-10-28 Reiner Steib + + * gnus.texi, message.texi: Bump version number. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Group Line Specification, Misc Group Stuff) + (Server Commands): Parenthesize @pxref{Mail Spool}. + +2007-10-28 Didier Verna + + New user option: message-signature-directory. + * message.texi (Insertion Variables): Document it. + * gnus.texi (Posting Styles): Ditto. + +2007-10-28 Didier Verna + + * gnus.texi (Group Line Specification): + * gnus.texi (Misc Group Stuff): + * gnus.texi (Server Commands): Document the group compaction feature. + +2007-10-28 Reiner Steib + + * gnus-faq.texi ([5.2]): Adjust for message-fill-column. + + * message.texi (Various Message Variables): Add message-fill-column. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi: Untabify. + +2007-10-28 Didier Verna + + * gnus.texi (Group Parameters): Document the posting-style merging + process in topic-mode. + +2007-10-28 Reiner Steib + + * gnus.texi (Scoring On Other Headers): Add gnus-inhibit-slow-scoring. + +2007-10-28 Romain Francoise + + * gnus.texi (Mail Spool): Fix typo. + Update copyright. + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (Limiting): Add gnus-summary-limit-to-singletons. + +2007-10-28 Andreas Seltenreich + + * gnus.texi (Summary Generation Commands): + Add gnus-summary-insert-ticked-articles. + +2007-10-28 Reiner Steib + + * gnus.texi (SpamAssassin back end): Rename spam-spamassassin-path + to spam-spamassassin-program. + +2007-10-28 Reiner Steib + + * gnus.texi (Mail and Post): Add gnus-message-highlight-citation. + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (Limiting): Add gnus-summary-limit-to-headers. + +2007-10-28 Lars Magne Ingebrigtsen + + * message.texi (Mail Headers): Document `opportunistic'. + +2007-10-28 Reiner Steib + + * emacs-mime.texi (Encoding Customization): Explain how to set + mm-coding-system-priorities per hierarchy. + +2007-10-28 Reiner Steib + + * gnus.texi (Washing Mail): Add nnmail-ignore-broken-references and + nnmail-broken-references-mailers instead of nnmail-fix-eudora-headers. + +2007-10-28 Didier Verna + + * message.texi (Wide Reply): Update documentation of + message-dont-reply-to-names (now allowing a list of regexps). + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (Spam Package Introduction): Fix spam menu and links. + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (SpamAssassin back end): Fix typo. + + * sieve.texi (Examples): Fix grammar. + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (Searching for Articles): Document M-S and M-R. + (Limiting): Document / b. + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (Thread Commands): T M-^. + +2007-10-28 Lars Magne Ingebrigtsen + + * message.texi (Mail Aliases): Document ecomplete. + (Mail Aliases): Fix typo. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Face): Restore xref to gnus-face-properties-alist; + fix typo. + +2007-10-28 Romain Francoise + + * gnus.texi (Mail Spool): Grammar fix. + +2007-10-28 Reiner Steib + + * gnus.texi (Mail Spool): nnml-use-compressed-files can be a + string. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Group Parameters): Fix description. + +2007-10-28 Reiner Steib + + * gnus.texi (Gmane Spam Reporting): + Fix spam-report-gmane-use-article-number. + Add spam-report-user-mail-address. + +2007-10-28 Katsumi Yamaoka + + * emacs-mime.texi (Non-MIME): x-gnus-verbatim -> x-verbatim. + +2007-10-28 Reiner Steib + + * gnus.texi (Group Parameters): Add simplified sorting example based on + example for `Sorting the Summary Buffer' from Jari Aalto + . + (Example Methods): Add example for an indirect connection. + +2007-10-28 Kevin Greiner + + * gnus.texi (nntp-open-via-telnet-and-telnet): Fixed grammar. + (Agent Parameters): Updated parameter names to match code. + (Group Agent Commands): Corrected 'gnus-agent-fetch-series' as + 'gnus-agent-summary-fetch-series'. + (Agent and flags): New section providing a generalized discussion + of flag handling. + (Agent and IMAP): Removed flag discussion. + (Agent Variables): Added 'gnus-agent-synchronize-flags'. + +2007-10-28 Romain Francoise + + * gnus.texi (Exiting the Summary Buffer): Add new function + `gnus-summary-catchup-and-goto-prev-group', bound to `Z p'. + +2007-10-28 Reiner Steib + + * gnus.texi (Conformity): Fix typo. + (Customizing Articles): Document `first'. + +2007-10-28 Jari Aalto + + * gnus.texi (Sorting the Summary Buffer): + Add `gnus-thread-sort-by-date-reverse'. Add example + host to different sorting in NNTP and RSS groups. + +2007-10-28 Reiner Steib + + * message.texi (Insertion): Describe prefix for + message-mark-inserted-region and message-mark-insert-file. + +2007-10-28 Reiner Steib + + * emacs-mime.texi (Non-MIME): Add Slrn-style verbatim marks and + LaTeX documents. Describe "text/x-gnus-verbatim". + +2007-10-28 Teodor Zlatanov + + * gnus.texi (Blacklists and Whitelists, BBDB Whitelists) + (Gmane Spam Reporting, Bogofilter, spam-stat spam filtering) + (spam-stat spam filtering, SpamOracle) + (Extending the Spam ELisp package): Removed extra quote symbol for + clarity. + +2007-10-28 Reiner Steib + + * gnus.texi (MIME Commands): Add gnus-article-save-part-and-strip, + gnus-article-delete-part and gnus-article-replace-part. + (Using MIME): Add gnus-mime-replace-part. + +2007-10-28 Romain Francoise + + * gnus.texi (Mail Spool): Mention that `nnml-use-compressed-files' + requires `auto-compression-mode' to be enabled. Add new nnml + variable `nnml-compressed-files-size-threshold'. + +2007-10-28 Reiner Steib + + * gnus.texi (Sorting the Summary Buffer): Added + gnus-thread-sort-by-recipient. + +2007-10-28 Romain Francoise + + * message.texi (Insertion Variables): Mention new variable + `message-yank-empty-prefix'. Change `message-yank-cited-prefix' + documentation accordingly. + +2007-10-28 Romain Francoise + + * gnus.texi (To From Newsgroups): Mention new variables + `gnus-summary-to-prefix' and `gnus-summary-newsgroup-prefix'. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Using MIME): gnus-mime-copy-part supports the charset + stuff; gnus-mime-inline-part does the automatic decompression. + +2007-10-28 Teodor Zlatanov + + * gnus.texi (Spam ELisp Package Configuration Examples): + "training.ham" should be "training.spam". + +2007-10-28 Katsumi Yamaoka + + * message.texi (Mail Variables): Fix the default value for + message-send-mail-function. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (Optional Back End Functions): nntp-request-update-info + always returns nil exceptionally. + +2007-10-28 Simon Josefsson + + * gnus.texi (Article Washing): Add libidn URL. Suggested by + Michael Cook . + +2007-10-28 Lars Magne Ingebrigtsen + + * gnus.texi (Topic Commands): Fix next/previous. + +2007-10-28 Simon Josefsson + + * gnus.texi (Article Washing): Mention `W i'. + +2007-10-28 Jochen Küpper + + * gnus.texi (Group Parameters): Slight extension of sieve + parameter description. + +2007-10-28 Reiner Steib + + * gnus.texi (Score Decays): `gnus-decay-scores' can be a regexp + matching score files as well. + (Picons): Describe `gnus-picon-style'. + +2007-10-28 Romain Francoise + + * message.texi (Message Headers): Mention that headers are hidden + using narrowing, and how to expose them. + Update copyright. + +2007-10-28 Reiner Steib + + * gnusref.tex: Mention `gnus-summary-limit-to-recipient' and + `gnus-summary-sort-by-recipient'. + +2007-10-28 Romain Francoise + + * gnus.texi (NNTP marks): New node. + (NNTP): Move NNTP marks variables to the new node. + +2007-10-28 Jesper Harder + + * gnus.texi, gnus-news.texi, pgg.texi, sasl.texi: backend -> back end. + + * gnus.texi (MIME Commands, Hashcash): Markup fix. + +2007-10-28 Teodor Zlatanov + + * gnus.texi: Replaced @file{spam.el} with @code{spam.el} + everywhere for consistency. + (Filtering Spam Using The Spam ELisp Package): Admonish again. + (Spam ELisp Package Sequence of Events): This is Gnus, say so. + Say "regular expression" instead of "regex." Admonish. Pick + other words to sound better (s/so/thus/). + (Spam ELisp Package Filtering of Incoming Mail): Mention + statistical filters. Remove old TODO. + (Spam ELisp Package Sorting and Score Display in Summary Buffer): + New section on sorting and displaying the spam score. + (BBDB Whitelists): Mention spam-use-BBDB-exclusive is not a + backend but an alias to spam-use-BBDB. + (Extending the Spam ELisp package): Rewrite the example using the + new backend functionality. + +2007-10-28 Simon Josefsson + + * gnus.texi (NNTP): Mention nntp-marks-is-evil and + nntp-marks-directory, from Romain Francoise + . + +2007-10-28 Magnus Henoch + + * gnus.texi (Hashcash): New default value of + hashcash-default-payment. + +2007-10-28 Simon Josefsson + + * gnus.texi (Hashcash): Fix URL. Add pref to spam section. + (Anti-spam Hashcash Payments): No need to load hashcash.el now. + +2007-10-28 Reiner Steib + + * gnus.texi (Adaptive Scoring): Added gnus-adaptive-pretty-print. + +2007-10-28 Simon Josefsson + + * gnus.texi (documentencoding): Add, to avoid warnings. + +2007-10-28 Simon Josefsson + + * message.texi (Mail Headers): Add. + + * gnus.texi (Hashcash): Fix. + +2007-10-28 Teodor Zlatanov + + * gnus.texi (Hashcash): Changed location of library, also mention + that payments can be verified and fix the name of the + hashcash-path variable. + +2007-10-28 Reiner Steib + + * gnus.texi (Article Display): Add `gnus-picon-style'. + +2007-10-28 Katsumi Yamaoka + + * gnus.texi (SpamAssassin backend): Add it to the detailmenu. + +2007-10-28 Teodor Zlatanov + + * gnus.texi (Blacklists and Whitelists, BBDB Whitelists) + (Bogofilter, spam-stat spam filtering, SpamOracle): Old incorrect + warning about ham processors in spam groups removed. + +2007-10-28 Teodor Zlatanov + + * gnus.texi (SpamAssassin backend): Added new node about SpamAssassin. + From Hubert Chan . + +2007-10-28 Jesper Harder + + * gnus.texi (Spam ELisp Package Sequence of Events): Index. + (Mailing List): Typo. + (Customizing Articles): Add gnus-treat-ansi-sequences. + (Article Washing): Index. + + * message.texi: Use m-dash consistently. + +2007-10-28 Jesper Harder + + * gnus.texi (GroupLens): Remove. + +2007-10-28 Kevin Greiner + + * gnus.texi (Outgoing Messages, Agent Variables): Add + gnus-agent-queue-mail and gnus-agent-prompt-send-queue. + Suggested by Gaute Strokkenes + +2007-10-28 Jesper Harder + + * gnus.texi (Limiting): Add gnus-summary-limit-to-replied. + +2007-10-28 Reiner Steib + + * gnus.texi (Article Washing): Add `gnus-article-treat-ansi-sequences'. + + * gnus.texi (No Gnus): New node. Includes `gnus-news.texi'. + +2007-10-28 Simon Josefsson + + * gnus.texi (Top): Add SASL. + +2007-10-27 Emanuele Giaquinta (tiny change) + + * gnus-faq.texi ([5.12]): Remove reference to discontinued service. + +2007-10-27 Reiner Steib + + * gnus.texi (Troubleshooting): Adjust Gnus version number. + +2007-10-27 Jay Belanger + + * calc.texi (Formulas, Composition Basics): Lower the + precedence of negation. + +2007-10-25 Jonathan Yavner + + * ses.texi (The Basics): Mention how to create a new spreadsheet. + Mention the new three-letter column identifiers. + (More on cell printing): Calculate-cell and truncate-cell are now `c' + and `t' rather than `C-c C-c' and `C-c C-t'. Mention the stupid error + message when using `c' on an empty default with default printer. + (Buffer-local variables in spreadsheets): `symbolic-formulas' was + renamed to `ses--symbolic-formulas' some time ago. + +2007-10-25 Jay Belanger + + * calc.texi (Default Simplifications, Making Selections) + (Customizing Calc): Clarify associativity of multiplication. + +2007-10-23 Michael Albinus + + * tramp.texi (Traces and Profiles): Simplify loop over + `trace-function-background'. + +2007-10-22 Juri Linkov + + * dired-x.texi (Shell Command Guessing): Default values are now + available by typing M-n instead of M-p. + +2007-10-21 Michael Albinus + + * tramp.texi (Cleanup remote connections): New section. + (Password caching): Remove `tramp-clear-passwd'. + It's not a command anymore. + (Bug Reports): Add `tramp-bug' to function index. + (Function Index, Variable Index): New nodes. + (Remote shell setup): Describe `tramp-password-prompt-regexp'. + + * trampver.texi: Update release number. + +2007-10-20 Jay Belanger + + * calc.texi (History and Acknowledgements): Turn comment + about integer size into past tense. + (Time Zones): Remove pointer to Calc author's address. + (Trigonometric and Hyperbolic Functions): Mention cotangent + and hyperbolic cotangent. Fix typo. + +2007-10-10 Michael Albinus + + Sync with Tramp 2.1.11. + + * trampver.texi: Update release number. + +2007-10-06 Michael Albinus + + * tramp.texi (External packages): New section. + +2007-09-29 Juri Linkov + + * info.texi (Help-Int): Document `L' (`Info-history'). + +2007-09-26 Carsten Dominik + + * org.texi: Change links to webpage and maintained email. + (Remember): Promote to Chapter, significant changes. + (Fast access to TODO states): New section. + (Faces for TODO keywords): New section. + (Export options): Example for #+DATE. + (Progress logging): Section moved. + +2007-09-26 Bill Wohler + + * mh-e.texi (HTML): Mention binding of S-mouse-2 to + browse-url-at-mouse. + +2007-09-20 Eduard Wiebe (tiny change) + + * flymake.texi (Customizable variables): Face names don't end in -face. + Fix flymake-err-line-patterns template. + (Example -- Configuring a tool called directly): Fix init-function. + (Highlighting erroneous lines): Face names don't end in -face. + +2007-09-18 Exal de Jesus Garcia Carrillo (tiny change) + + * erc.texi (Special-Features): Fix small typo. + +2007-09-14 Michael Albinus + + * tramp.texi (Filename Syntax): Provide links to "Inline methods" + and "External transfer methods". + +2007-09-13 Jay Belanger + + * calc.texi (Predefined Units): Add some history. + +2007-09-08 Michael Olson + + * erc.texi (Copying): New section included from gpl.texi. + This matches the look of the upstream ERC manual. + +2007-09-07 Jay Belanger + + * calc.texi (History and Acknowledgements): Adjust the "thanks". + (Random Numbers): Clarify the distribution of `random'. + +2007-09-06 Glenn Morris + + * Move manual sources from man/ to subdirectories of doc/. + Split into the Emacs manual in emacs/, and other manuals in misc/. + Change all setfilename commands to use ../../info. + * Makefile.in: Move the parts of the old man/Makefile.in that do not + refer to the Emacs manual here. + (infodir): New variable. + (INFO_TARGETS, info): Use infodir. Also used by all info targets. + (cc-mode.texi, faq.texi): Update references to source file locations. + * makefile.w32-in: Move the parts of the old man/makefile.w32-in that + do not refer to the Emacs manual here. + (infodir, MULTI_INSTALL_INFO, ENVADD): Go up one more level. + + * Makefile.in: Add `basename' versions of all info targets, for + convenience when rebuilding just one manual. + (../etc/GNU): Delete obsolete target. + (.SUFFIXES): Use $(TEXI2DVI) rather than texi2dvi. + (mostlyclean): Add *.op, *.ops. Move *.aux *.cps *.fns *.kys *.pgs + *.vrs *.toc here... + (maintainer-clean): ...from here. + + * makefile.w32-in (../etc/GNU): Delete obsolete target. + +2007-09-01 Jay Belanger + + * calc.texi (Date Conversions): Clarify definition of + Julian day numbering. + (Date Forms): Clarify definition of Julian day numbering; + add some history. + +2007-08-30 Carsten Dominik + + * org.texi: Version 5.07. + +2007-08-24 IRIE Tetsuya (tiny change) + + * message.texi (MIME): Replace mml-attach with mml-attach-file. + +2007-08-22 Carsten Dominik + + * org.texi (Adding hyperlink types): New section. + (Embedded LaTeX): Chapter updated because of LaTeX export. + (LaTeX export): New section. + (Using links out): New section. + +2007-08-22 Glenn Morris + + * faq.texi (Learning how to do something): Refcards now in + etc/refcards/ directory. + +2007-08-22 Michael Albinus + + * tramp.texi (Remote Programs): Persistency file must be cleared when + changing `tramp-remote-path'. + (Filename Syntax): Don't use @var{} constructs inside the @trampfn + macro. + +2007-08-17 Jay Belanger + + * calc.texi: Move contents to beginning of file. + (Algebraic Entry): Fix the formatting of an example. + +2007-08-15 Jay Belanger + + * calc.texi (Basic Operations on Units): Mention exact versus + inexact conversions. + +2007-08-14 Jay Belanger + + * calc.texi (Basic Operations on Units): Mention default + values for new units. + (Quick Calculator Mode): Mention that binary format will + be displayed. + +2007-08-14 Katsumi Yamaoka + + * gnus.texi (Selecting a Group): Mention gnus-maximum-newsgroup. + +2007-08-10 Katsumi Yamaoka + + * gnus.texi (NNTP): Mention nntp-xref-number-is-evil. + +2007-08-08 Glenn Morris + + * gnus.texi, sieve.texi: Replace `iff'. + +2007-08-03 Jay Belanger + + * calc.texi (Basic Graphics): Mention the graphing of error + forms. + (Graphics Options): Mention how `g s' handles error forms. + (Curve Fitting): Mention plotting the curves. + (Standard Nonlinear Models): Add additional models. + (Curve Fitting Details): Mention the Levenberg-Marquardt method. + (Linear Fits): Correct result. + +2007-08-01 Alan Mackenzie + + * cc-mode.texi (Mailing Lists and Bug Reports): Correct "-no-site-file" + to "--no-site-file". + +2007-07-29 Michael Albinus + + * tramp.texi (Frequently Asked Questions): Point to mode line + extension in Emacs 23.1. + + * trampver.texi: Update release number. + +2007-07-27 Glenn Morris + + * calc.texi (Copying): Include license text from gpl.texi, rather than + in-line. + +2007-07-25 Glenn Morris + + * calc.texi (Copying): Replace license with GPLv3. + + * Relicense all FSF files to GPLv3 or later. + +2007-07-22 Michael Albinus + + Sync with Tramp 2.1.10. + + * tramp.texi (trampfn): Expand macro implementation in order to handle + empty arguments. + (trampfnmhl, trampfnuhl, trampfnhl): Remove macros. Replace all + occurencies by trampfn. + (Frequently Asked Questions): Extend example code for host + identification in the modeline. Add bbdb to approaches shortening Tramp + file names to be typed. + + * trampver.texi: Update release number. + +2007-07-17 Michael Albinus + + * tramp.texi: Move @setfilename ../info/tramp up, outside the header + section. Reported by . + (Remote processes): Arguments of the program to be debugged are taken + literally. + (Frequently Asked Questions): Simplify recentf example. + +2007-07-14 Karl Berry + + * info.texi (@copying): New Back-Cover Text. + + * info.texi (Quitting Info): Move to proper place in source. + (Reported by Benno Schulenberg.) + +2007-07-13 Eli Zaretskii + + * Makefile.in (../info/emacs-mime): Use --enable-encoding. + + * makefile.w32-in ($(infodir)/emacs-mime): Ditto. + + * emacs-mime.texi: Add @documentencoding directive. + +2007-07-12 Nick Roberts + + * tramp.texi (Remote processes): Add an anchor to the subsection + "Running a debugger on a remote host". + +2007-07-12 Michael Albinus + + * tramp.texi (Remote processes): Don't call it "experimental" any + longer. Add subsection about running a debugger on a remote host. + +2007-07-10 Carsten Dominik + + * org.texi (Properties and columns): Chapter rewritten. + +2007-07-08 Michael Albinus + + * tramp.texi: + * trampver.texi: Migrate to Tramp 2.1. + +2007-07-02 Carsten Dominik + + * org.texi (Properties): New chapter. + +2007-07-02 Reiner Steib + + * gnus-faq.texi ([3.2]): Fix locating of environment variables in the + Control Panel. + + * gnus.texi (Misc Article): Add index entry for + gnus-single-article-buffer. + +2007-06-27 Andreas Seltenreich + + * gnus.texi (Starting Up): Fix typo. + +2007-06-25 Katsumi Yamaoka + + * gnus.texi (Asynchronous Fetching): Fix typo. + +2007-06-20 Jay Belanger + + * calc.texi:Change ifinfo to ifnottex (as appropriate) throughout. + (About This Manual): Remove redundant information. + (Getting Started): Mention author. + (Basic Arithmetic, Customizing Calc): Make description of the + variable `calc-multiplication-has-precedence' match its new effect. + +2007-06-19 Jay Belanger + + * calc.texi (Basic Arithmetic, Customizing Calc): Mention + the variable `calc-multiplication-has-precedence'. + +2007-06-19 Carsten Dominik + + * org.texi (Tag): Section swapped with node Timestamps. + (Formula syntax for Lisp): Document new `L' flag. + +2007-06-06 Andreas Seltenreich + + * gnus.texi (Misc Group Stuff, Summary Buffer) + (Server Commands, Article Keymap): Fix typo. s/function/command/. + +2007-06-06 Juanma Barranquero + + * cc-mode.texi (Comment Commands, Getting Started, Style Variables): + * gnus.texi (Article Buttons, Mail Source Customization) + (Sending or Not Sending, Customizing NNDiary): + * message.texi (Message Headers): + * mh-e.texi (HTML): Fix typos. + +2007-06-07 Michael Albinus + + Sync with Tramp 2.0.56. + + * tramp.texi (Frequently Asked Questions): Improve ~/.zshrc + settings. Reported by Ted Zlatanov . + +2007-06-02 Chong Yidong + + * Version 22.1 released. + +2007-05-26 Michael Olson + + * erc.texi (Modules): Fix references to completion modules. + +2007-05-09 Reiner Steib + + * gnus.texi (Running NNDiary): Use ~/.gnus.el instead of gnusrc. + +2007-05-09 Didier Verna + + * gnus.texi (Email Based Diary): New. Proper documentation for the + nndiary back end and the gnus-diary library. + +2007-05-03 Karl Berry + + * .cvsignore (*.pdf): New entry. + + * texinfo.tex: Update from current version for better pdf generation. + +2007-04-30 Reiner Steib + + * gnus.texi (Article Highlighting): Clarify gnus-cite-parse-max-size. + +2007-04-28 Glenn Morris + + * faq.texi (New in Emacs 22): Restore mention of python.el pending + consideration of legal status. + +2007-04-27 J.D. Smith + + * idlwave.texi: Minor updates for IDLWAVE 6.1. + +2007-04-24 Chong Yidong + + * faq.texi (New in Emacs 22): python.el removed. + +2007-04-23 Jay Belanger + + * calc.texi (Reporting bugs): Update maintainer's address. + +2007-04-22 Chong Yidong + + * faq.texi (New in Emacs 22): Rename "tumme" to "image-dired". + +2007-04-15 Jay Belanger + + * calc.texi (Title page): Remove the date. + (Basic Arithmetic): Emphasize that / binds less strongly than *. + (The Standard Calc Interface): Change trail title. + (Floats): Mention that when non-decimal floats are entered, only + approximations are stored. + (Copying): Move to the appendices. + (GNU Free Documentation License): Add as an appendix. + +2007-04-15 Chong Yidong + + * ada-mode.texi, autotype.texi, cc-mode.texi, cl.texi: + * dired-x.texi, ebrowse.texi, ediff.texi: + * emacs-mime.texi, erc.texi, eshell.texi: + * eudc.texi, flymake.texi, forms.texi, gnus.texi: + * idlwave.texi, message.texi, newsticker.texi, org.texi: + * pcl-cvs.texi, pgg.texi, rcirc.texi, reftex.texi, sc.texi: + * ses.texi, sieve.texi, smtpmail.texi, speedbar.texi: + * tramp.texi, url.texi, vip.texi, viper.texi, widget.texi: + * woman.texi: Include GFDL. + + * doclicense.texi: Remove node heading, so that it can be included by + other files. + + * dired-x.texi: Relicence under GFDL. Remove date from title page. + + * calc.texi (Algebraic Tutorial): Emphasize that / binds less strongly + than *. + +2007-04-14 Carsten Dominik + + * org.texi (Formula syntax for Calc): Emphasize the operator precedence + in Calc. + +2007-04-09 Romain Francoise + + * faq.texi (New in Emacs 22): Mention improvements to the Windows and + Mac OS ports. Make it clear that mouse-1 complements and doesn't + replace mouse-2. + +2007-04-08 Chong Yidong + + * woman.texi (Word at point, Interface Options): woman-topic-at-point + renamed to woman-use-topic-at-point. Document new behavior. + +2007-04-08 Richard Stallman + + * url.texi: Fix some indexing. + (Disk Caching): Drop discussion of old/other Emacs versions. + +2007-04-07 Chong Yidong + + * url.texi (Disk Caching): Say Emacs 21 "and later". + + * cc-mode.texi (Font Locking Preliminaries): Link to Emacs manual node + on Font locking which now mentions JIT lock. + +2007-04-01 Michael Olson + + * erc.texi: Update for the ERC 5.2 release. + +2007-03-31 David Kastrup + + * woman.texi (Topic, Interface Options): Explain changes semantics of + woman-manpath in order to consider MANPATH_MAP entries. + +2007-03-31 Eli Zaretskii + + * emacs-mime.texi (Non-MIME): Postscript -> PostScript. + +2007-03-26 Richard Stallman + + * pgg.texi (Caching passphrase): Clean up previous change. + +2007-03-25 Thien-Thi Nguyen + + * gnus.texi (Setting Process Marks): Fix typo. + +2007-03-25 Romain Francoise + + * faq.texi (New in Emacs 22): Reorganize using an itemized list for + readability, and include various fixes by Daniel Brockman, Nick Roberts + and Dieter Wilhelm. + +2007-03-24 Thien-Thi Nguyen + + * gnus.texi (Splitting Mail): Reword "splitting"-as-adj to be -as-noun. + + * gnus.texi (Mail Source Specifiers): Fix typo. + +2007-03-22 Ralf Angeli + + * reftex.texi (Imprint): Update maintainer information. + +2007-03-15 Katsumi Yamaoka + + * message.texi (Message Buffers): Update documentation for + message-generate-new-buffers. + +2007-03-15 Daiki Ueno + + * pgg.texi (Caching passphrase): Describe pgg-passphrase-coding-system. + +2007-03-21 Glenn Morris + + * eshell.texi (Known problems): Emacs 22 comes with eshell 2.4.2. + +2007-03-19 Chong Yidong + + * eshell.texi (Known problems): Emacs 21 -> 22. + + * cc-mode.texi (Performance Issues): Update note about 21.3 to 22.1. + +2007-03-18 Jay Belanger + + * calc.texi (Time Zones): Mention that the DST rules changed in 2007. + +2007-03-12 Glenn Morris + + * calc.texi (Time Zones): Switch to new North America DST rule. + + * calc.texi: Replace "daylight savings" with "daylight + saving" in text throughout. + +2007-03-11 Andreas Seltenreich + + * gnus.texi (Mail and Post): Update documentation for gnus-user-agent. + The variable now uses a list of symbols instead of just a symbol. + Reported by Christoph Conrad . + +2007-03-06 Romain Francoise + + * faq.texi (New in Emacs 22): Don't say "now" too much. Add MH-E to + new packages, and mention Gnus update. + +2007-02-27 Katsumi Yamaoka + + * gnus.texi (NNTP): Mention nntp-never-echoes-commands and + nntp-open-connection-functions-never-echo-commands. + +2007-02-27 Chong Yidong + + * pgg.texi (Caching passphrase): Document gpg-agent usage, gpg-agent + problems on the console, and security risk in not using gpg-agent. + +2007-02-25 Carsten Dominik + + * org.texi (The spreadsheet): Renamed from "Table calculations". + Completely reorganized and rewritten. + (CamelCase links): Section removed. + (Repeating items): New section. + (Tracking TODO state changes): New section. + (Agenda views): Chapter reorganized and rewritten. + (HTML export): Section rewritten. + (Tables in arbitrary syntax): New section. + (Summary): Better feature summary. + (Activation): Document problem with cut-and-paste of Lisp code + from PDF files. + (Visibility cycling): Document indirect buffer use. + (Structure editing): Document sorting. + (Remember): Section rewritten. + (Time stamps): Better description of time stamp types. + (Tag searches): Document regular expression search for tags. + (Stuck projects): New section. + (In-buffer settings): New keywords. + (History and Acknowledgments): Updated description. + +2007-02-24 Alan Mackenzie + + * cc-mode.texi (Movement Commands): Insert two missing command names. + (Getting Started): Slight wording correction (use conditional). + +2007-02-22 Kim F. Storm + + * widget.texi (User Interface, Basic Types): Document need to put some + text before the %v escape in :format string in editable-field widget. + +2007-02-18 Romain Francoise + + * pcl-cvs.texi (Miscellaneous commands): q runs `cvs-bury-buffer', not + `cvs-mode-quit'. + +2007-02-10 Markus Triska + + * widget.texi (Programming Example): Put constant strings in :format. + +2007-02-07 Juanma Barranquero + + * faq.texi (Fullscreen mode on MS-Windows): New node. + +2007-02-04 David Kastrup + + * faq.texi (AUCTeX): Update version number. Should probably be done + for other packages as well. + +2007-01-28 Andreas Seltenreich + + * gnus.texi (Batching Agents): Fix example. Reported by Tassilo Horn + . + +2007-01-27 Eli Zaretskii + + * msdog.texi (ls in Lisp): Document ls-lisp-format-time-list and + ls-lisp-use-localized-time-format. + +2007-01-20 Markus Triska + + * flymake.texi (Flymake mode): find-file-hook instead of ...-hooks. + +2007-01-13 Michael Olson + + * erc.texi (Modules): Mention capab-identify module. + +2007-01-05 Michael Olson + + * erc.texi (Getting Started): Update for /RECONNECT command. + +2007-01-04 Richard Stallman + + * ebrowse.texi: Change C-c b to C-c C-m. + +2007-01-03 Reiner Steib + + * gnus.texi (Customizing Articles): Use index entries for gnus-treat-* + variables only in info to avoid redundant entries in the printed + manual. + +2007-01-02 Daiki Ueno + + * message.texi (Using PGP/MIME): Document gpg-agent usage. + +2007-01-02 Reiner Steib + + * message.texi (Security): Split into sub-nodes. + +2007-01-01 Alan Mackenzie + + * cc-mode.texi ("Limitations and Known Bugs"): Document problems with + eval-after-load in Emacs <=21 and a workaround. Document that + trigraphs are not supported. + +2007-01-01 Alan Mackenzie + + * cc-mode.texi ("Filling and Breaking"): Amend the doc for + c-context-line-break. When invoked within a string, preserve + whitespace. Add a backslash only when also in a macro. + +2007-01-01 Alan Mackenzie + + * cc-mode.texi ("Choosing a Style"): Mention c-file-style. + +2007-01-01 Alan Mackenzie + + * cc-mode.texi ("Movement Commands", "Sample .emacs File"): C-M-[ae] + are now bound by default to c-\(beginning\|end\)-of-defun by default. + +2007-01-01 Alan Mackenzie + + * cc-mode.texi ("Other Commands"): Move c-set-style (C-c .) here from + "Choosing a Style". + + * cc-mode.texi ("Styles"): Add @dfn{style}. + +2006-12-30 Michael Albinus + + Sync with Tramp 2.0.55. + + * trampver.texi: Update release number. + +2006-12-29 Reiner Steib + + * gnus.texi (Customizing Articles): Add index entries for all + gnus-treat-* variables. + +2006-12-29 Jouni K. Seppänen + + * gnus.texi (IMAP): Fix incorrect explanation of + nnimap-search-uids-not-since-is-evil in documentation for + nnimap-expunge-search-string. + +2006-12-27 Reiner Steib + + * gnus.texi (ifile spam filtering): Rename spam-ifile-database-path to + spam-ifile-database. + +2006-12-26 Reiner Steib + + * gnus.texi (Spam Package Configuration Examples): Don't encourage to + rebind C-s. + +2006-12-26 Jouni K. Seppänen + + * gnus.texi (Group Parameters, Group Maintenance, Topic Commands) + (Mail Group Commands, Expiring Mail, IMAP): Add index entries for + "expiring mail". + (IMAP): Document nnimap-search-uids-not-since-is-evil and + nnimap-nov-is-evil. + +2006-12-25 Kevin Ryde + + * cl.texi (Sorting Sequences): In sort*, add a little cautionary note + about the key procedure being used heavily. + +2006-12-24 Chong Yidong + + * pgg.texi (Caching passphrase): Default for pgg-gpg-use-agent changed + to t. + (Prerequisites): Add explanation about gpg-agent. + +2006-12-22 Kevin Ryde + + * cl.texi (Sorting Sequences): Typo in sort*, example showed plain + "sort" instead of "sort*". + +2006-12-19 Richard Stallman + + * calc.texi (History and Acknowledgements): Recognize that Emacs + now does have floating point. + +2006-12-19 Michael Albinus + + * tramp.texi (External transfer methods): Describe new method `scpc'. + +2006-12-17 Sascha Wilde + + * pgg.texi: Added short note on gpg-agent to the introduction. + +2006-12-13 Reiner Steib + + * gnus.texi (Hiding Headers): Document that `long-to' and `many-to' + also applies to Cc. + +2006-12-12 Reiner Steib + + * gnus.texi (X-Face): Clarify. Say which programs are required + on Windows. + +2006-12-08 Michael Olson + + * erc.texi (Modules): Remove documentation for list module. + +2006-12-05 Michaël Cadilhac + + * faq.texi (^M in the shell buffer): Ditto. + +2006-11-20 Michael Olson + + * erc.texi: Call this the 5.2 stable pre-release of ERC. + +2006-11-17 Carsten Dominik + + * org.texi: Fix typos. + (Agenda commands): Document `C-k'. + +2006-11-16 Eli Zaretskii + + * url.texi (http/https): Fix a typo in the HTTP URL. + +2006-11-14 Stephen Leake + + * ada-mode.texi: Total rewrite. + +2006-11-13 Carsten Dominik + + * org.texi: Minor typo fixes. + +2006-11-13 Bill Wohler + + Release MH-E manual version 8.0.3. + + * mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for + release 8.0.3. + + * mh-e.texi (Incorporating Mail): Use output of "mhparam Path" + to set MAILDIR. + (Reading Mail): Document the customization of read-mail-command + for MH-E. + (Viewing Attachments): Document mm-discouraged-alternatives. + (Tool Bar): Fix Texinfo for mh-xemacs-use-tool-bar-flag. + (Junk): Add more information about the settings of mh-junk-background + in a program. Add /usr/bin/mh to PATH in examples. + +2006-11-12 Richard Stallman + + * woman.texi: Update author address but say he no longer maintains it. + +2006-11-10 Carsten Dominik + + * org.texi (ARCHIVE tag): Document C-TAB for forcing cycling of + archived trees. + (Checkboxes): Section moved to chapter 5, and extended. + (The date/time prompt): New section. + (Link abbreviations): New section. + (Presentation and sorting): New section. + (Custom agenda views): Section completely rewritten. + (Summary): Compare with Planner. + (Feedback): More info about creating backtraces. + (Plain lists): Modified example. + (Breaking down tasks): New section. + (Custom time format): New section. + (Time stamps): Document inactive timestamps. + (Setting tags): More details about fast tag selection. + (Block agenda): New section. + (Custom agenda views): Section rewritten. + (Block agenda): New section. + +2006-11-07 Michael Albinus + + * tramp.texi (Configuration): scp is the default method. + (Default Method): Use ssh as example for another method. + +2006-10-27 Richard Stallman + + * woman.texi: Downcase nroff/troff/roff. + (Installation): Chapter deleted. Some xrefs deleted. + (Background): woman doesn't advise man ;-). + +2006-10-26 Roberto Rodríguez (tiny change) + + * ada-mode.texi (Project files, Identifier completion) + (Automatic Casing, Debugging, Using non-standard file names) + (Working Remotely): Fix typos. + +2006-10-20 Masatake YAMATO + + * cc-mode.texi (Sample .emacs File): Added missing `)' in + sample code `my-c-initialization-hook'. + +2006-10-19 Stuart D. Herring + + * widget.texi: Fix typos. + +2006-10-19 Michael Albinus + + * tramp.texi (Frequently Asked Questions): Remove questions marked with + "???". There have been no complaints for years, so the information + must be appropriate. + +2006-10-16 Richard Stallman + + * widget.texi: Use @var instead of capitalization. + Clarify many widget type descriptions. + +2006-10-13 Andreas Seltenreich + + * gnus.texi (Other modes): Fix typo. Add alternative index entry for + gnus-dired-attach. + (Selecting a Group): Fix typo. + +2006-10-12 Roberto Rodríguez (tiny change) + + * widget.texi: Fix typos. + +2006-10-06 Reiner Steib + + * gnus.texi (Image Enhancements): Update for Emacs 22. + + * gnus-faq.texi ([1.3]): Update. + +2006-10-06 Richard Stallman + + * faq.texi (Displaying the current line or column): + Delete "As of Emacs 20". + +2006-10-06 Romain Francoise + + * faq.texi (VM): VM works with Emacs 22 too. + +2006-10-06 Richard Stallman + + * ebrowse.texi: Remove Emacs version "21" from title. + +2006-10-02 Reiner Steib + + * gnus.texi (Foreign Groups): Say where change of editing commands are + stored. Add reference to `gnus-parameters'. + +2006-09-15 Jay Belanger + + * calc.texi, mh-e.texi (GNU GENERAL PUBLIC LICENSE): + Change "Library Public License" to "Lesser Public License" + throughout. Use "yyyy" to represent year. + +2006-09-15 Carsten Dominik + + * org.texi (Setting tags): Typo fix. + +2006-09-14 Reiner Steib + + * gnus.texi (Oort Gnus): Add @xref for `mm-fill-flowed'. + +2006-09-12 Reiner Steib + + * reftex.texi (Citations Outside LaTeX): Simplify lisp example. + +2006-09-12 Paul Eggert + + * faq.texi (Escape sequences in shell output): EMACS is now set + to Emacs's absolute file name, not to "t". + (^M in the shell buffer): Likewise. + * misc.texi (Interactive Shell): Likewise. + +2006-09-11 Reiner Steib + + * gnus.texi (Mail Source Specifiers): Mention problem of duplicate + mails with pop3-leave-mail-on-server. Fix wording. + (Limiting): Improve gnus-summary-limit-to-articles. + (X-Face): Fix typo. + +2006-09-11 Simon Josefsson + + * smtpmail.texi (Authentication): Explain TLS and SSL better, based on + suggested by Phillip Lord . + +2006-09-06 Simon Josefsson + + * smtpmail.texi (Authentication): Mention SSL. + +2006-09-01 Eli Zaretskii + + * rcirc.texi (Internet Relay Chat, Useful IRC commands): + Don't use @indicateurl. + + * cc-mode.texi (Subword Movement): Don't use @headitem. + (Custom Braces, Clean-ups): Don't use @tie. + +2006-08-29 Michael Albinus + + Sync with Tramp 2.0.54. + + * tramp.texi (Bug Reports): The Tramp mailing list is moderated now. + Suggested by Adrian Phillips . + +2006-08-15 Carsten Dominik + + * org.texi (Installation, Activation): Split from Installation and + Activation. + (Clocking work time): Documented new features. + +2006-08-13 Alex Schroeder + + * rcirc.texi (Configuration): Use correct variable in rcirc-authinfo + example. + +2006-08-12 Eli Zaretskii + + * faq.texi (How to add fonts): New node. + +2006-08-05 Romain Francoise + + * faq.texi (New in Emacs 22): Expand. + +2006-08-03 Michael Olson + + * erc.texi: Update for ERC 5.1.4. + +2006-07-28 Katsumi Yamaoka + + * gnus.texi (Oort Gnus): Mention that the Lisp files are now installed + in .../site-lisp/gnus/ by default. + [ From gnus-news.texi in the trunk. ] + +2006-07-27 Reiner Steib + + * gnus.texi (MIME Commands): Additions for yEnc. + +2006-07-24 Richard Stallman + + * pgg.texi, org.texi, info.texi, forms.texi, flymake.texi: + * faq.texi: Move periods and commas inside quotes. + +2006-07-20 Jay Belanger + + * calc.texi (Error forms): Mention M-+ keybinding for `calc-plus-minus'. + +2006-07-18 Chong Yidong + + * faq.texi (Security risks with Emacs): Document Emacs 22 + file-local-variable mechanism. + +2006-07-12 Michael Olson + + * erc.texi: Update for ERC 5.1.3. + +2006-07-12 Alex Schroeder + + * rcirc.texi: Fix typos. + (Getting started with rcirc): New calling convention for M-x irc. + Mention #rcirc. Removed channel tracking. + (Configuration): Changed the names of all variables that got changed + recently, eg. rcirc-server to rcirc-default-server. Added + documentation for rcirc-authinfo, some background for Bitlbee, and + rcirc-track-minor-mode. + (Scrolling conservatively): Fixed the xref from Auto Scrolling to just + Scrolling. + (Reconnecting after you have lost the connection): Fixed example code + to match code changes. + +2006-07-10 Nick Roberts + + * gnus.texi, message.texi: Fix typos. + +2006-07-07 Carsten Dominik + + * org.texi (Exporting): Document `C-c C-e' as the prefix for exporting + commands. + (Global TODO list): Document the use of the variables + `org-agenda-todo-ignore-scheduled' and + `org-agenda-todo-list-sublevels'. + +2006-07-05 Richard Stallman + + * faq.texi (Scrolling only one line): Fix xref. + +2006-07-05 Thien-Thi Nguyen + + * faq.texi (Evaluating Emacs Lisp code): + Throughout, replace eval-current-buffer with eval-buffer. + +2006-07-03 Richard Stallman + + * rcirc.texi (Scrolling conservatively): Fix xref. + + * pcl-cvs.texi (Viewing differences): Usage fix. + +2006-07-03 Carsten Dominik + + * org.texi (Agenda commands): Document `s' key to save all org-mode + buffers. + +2006-06-30 Ralf Angeli + + * pcl-cvs.texi (Customizing Faces): Remove -face suffix from face + names. Mention `cvs-msg' face. + +2006-06-29 Carsten Dominik + + * org.texi (Checkboxes): New section. + +2006-06-28 Carsten Dominik + + * org.texi (Embedded LaTeX): Fix typos and implement small improvements + throughout this chapter. + +2006-06-27 Chong Yidong + + * info.texi (Help-Small-Screen): Clarify placement of "All" and "Top" + text for standalone vs Emacs info. + (Help): Clarify header line description. Use mouse-1 for clicks. + (Help-P): Use mouse-1 for clicks. + (Help-^L): "Top" and "All" not displayed with dashes in Emacs. + (Help-^L, Help-M, Help-Int, Search Index, Go to node) + (Choose menu subtopic): Remove gratuitous Emacs command names. + (Help-FOO): Put usual behavior first. + (Help-Xref): Clicking on xrefs works in Emacs. + (Search Text): Clarify what the default behavior is. + (Create Info buffer): Fix Emacs window/X window confusion. + (Emacs Info Variables): Fix for new Emacs init file behavior. + +2006-06-24 Andreas Seltenreich + + * gnus.texi (Summary Buffer Lines): Fix typo. + +2006-06-23 Carsten Dominik + + * org.texi (Embedded LaTeX): New chapter. + (Archiving): Section rewritten. + (Enhancing text): Some parts moved to the new chapter about LaTeX. + +2006-06-20 Bill Wohler + + Release MH-E manual version 8.0.1. + + * mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for + release 8.0.1. + (Preface): Depend on GNU mailutils 1.0 and higher. + +2006-06-19 Katsumi Yamaoka + + * message.texi (News Headers): Update message-syntax-checks section. + +2006-06-19 Karl Berry + + * info.texi (Advanced): Mention C-q, especially with ?. + +2006-06-19 Carsten Dominik + + * org.texi (Publishing links): Document the `:link-validation-function' + property. + (Extensions and Hacking): New chapter, includes some sections of the + "Miscellaneous" chapter. + +2006-06-10 Carsten Dominik + + * org.texi (Progress logging): New section. + +2006-05-29 Stefan Monnier + + * viper.texi (Viper Specials): + * gnus.texi (Example Setup): + * faq.texi (Backspace invokes help): + * dired-x.texi (Optional Installation Dired Jump): + * calc.texi (Defining Simple Commands): Use ;; instead of ;;; to better + follow coding conventions. + +2006-05-18 Reiner Steib + + * gnus.texi (Saving Articles): Clarify gnus-summary-save-article-mail. + +2006-06-06 Carsten Dominik + + * org.texi (ASCII export): Document indentation adaptation. + (Setting tags): Document mutually-exclusive tags. + +2006-06-05 Romain Francoise + + * url.texi (irc): Mention new funs `url-irc-rcirc' and `url-irc-erc'. + Fix typo. + + * gnus-faq.texi (Question 8.6): Update reference to the Gnus + channel (#gnus@irc.freenode.net). + Fix typos. Update copyright notice. + + * cc-mode.texi (Getting Started, Indentation Commands, Config Basics) + (Custom Filling and Breaking, Custom Braces, Syntactic Symbols) + (Line-Up Functions, Custom Macros): + * ediff.texi (Window and Frame Configuration) + (Highlighting Difference Regions): + * emacs-mime.texi (Display Customization): + * erc.texi (History): + * eshell.texi (Known problems): + * eudc.texi (Overview, BBDB): + * gnus.texi (NNTP, IMAP, Advanced Scoring Examples) + (The problem of spam, SpamOracle, Extending the Spam package) + (Conformity, Terminology): + * idlwave.texi (Routine Info) + (Class and Keyword Inheritance, Padding Operators) + (Breakpoints and Stepping, Electric Debug Mode) + (Examining Variables, Troubleshooting): + * org.texi (Creating timestamps): + * reftex.texi (Commands, Options, Changes): + * tramp.texi (Inline methods, Password caching) + (Auto-save and Backup, Issues): + * vip.texi (Files, Commands in Insert Mode): + * viper.texi (Emacs Preliminaries, States in Viper) + (Packages that Change Keymaps, Viper Specials, Groundwork): + Fix various typos. + +2006-05-31 Michael Ernst + + * ediff.texi: Fix typos. + +2006-05-30 Carsten Dominik + + * org.texi: Small typo fixes. + +2006-05-29 Michael Albinus + + * tramp.texi (Frequently Asked Questions): Disable zsh zle. + +2006-05-27 Thien-Thi Nguyen + + * pcl-cvs.texi: Fix typos. + (Customization): Say "us". + +2006-05-26 Eli Zaretskii + + * org.texi: Remove bogus @setfilename. + +2006-05-26 Carsten Dominik + + * org.texi (ASCII export): Omit command name. + (HTML export): Add prefix to all lines in Local Variable example. + (Acknowledgments): Typeset names in italics. + +2006-05-24 Carsten Dominik + + * org.texi (Plain lists): Add new item navigation commands. + (External links): Document elisp and info links. + (Custom searches): New section. + (Publishing): New chapter. + (HTML export): Include a list of supported CSS classes. + (Setting tags): Describe the fast-tag-setting interface. + +2006-05-20 Luc Teirlinck + + * dired-x.texi: ifinfo -> ifnottex. + +2006-05-18 Reiner Steib + + * gnus.texi (Saving Articles): Clarify gnus-summary-save-article-mail. + +2006-05-12 Reiner Steib + + * message.texi (Interface): Add tool bar customization. + (MIME): Index and text additions for mml-attach. + (MIME): Describe mml-dnd-protocol-alist and + mml-dnd-attach-options. + + * gnus.texi (Oort Gnus): Reorder entries in sections. + Fix some entries. + (Starting Up): Add references to "Emacs for Heathens" and to + "Finding the News". Add user-full-name and user-mail-address. + (Group Buffer Format): Add tool bar customization and update. + (Summary Buffer): Add tool bar customization. + (Posting Styles): Add message-alternative-emails. + +2006-05-09 Michael Albinus + + * tramp.texi (Filename completion): Improve wording. + +2006-05-07 Romain Francoise + + * faq.texi (Using regular expressions): Fix typo. + (Packages that do not come with Emacs): Fix capitalization. + (Replacing text across multiple files): Expand node to explain how + to use `dired-do-query-replace-regexp' in more detail, based on + suggestion by Eric Hanchrow . + +2006-05-06 Michael Albinus + + * tramp.texi (Filename completion): Completion of remote files' + method, user name and host name is active only in partial + completion mode. + +2006-05-06 Bill Wohler + + Release MH-E manual version 8.0. + + * mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for + release 8.0. + +2006-05-06 Bill Wohler + + * mh-e.texi (MH-BOOK-HOME): Change from + http://www.ics.uci.edu/~mh/book/mh to + http://rand-mh.sourceforge.net/book/mh. + Replace .htm suffix with .html for MH book files. + (Using This Manual): Update key binding for getting relevant + chapter in Info from command key. + (Ranges): Fix itemx. + +2006-05-05 Karl Berry + + * texinfo.tex (\definetextfonsizexi, \definetextfonsizex): New cmds. + (\fonttextsize): New user-level command to change text font size. + +2006-04-26 Reiner Steib + + * pgg.texi (Caching passphrase): Fix markup and typos. Simplify. + +2006-04-26 Sascha Wilde (tiny change) + + * pgg.texi (Caching passphrase): Add pgg-gpg-use-agent. + +2006-04-24 Bill Wohler + + * mh-e.texi (Getting Started): Make it more explicit that you need + to install MH. Add pointers to current MH implementations. + +2006-04-21 Bill Wohler + + Release MH-E manual version 7.94. + + * mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for + release 7.94. + +2006-04-21 Carsten Dominik + + * org.texi: Many small fixes. + (Handling links): Rename from "Managing links". + +2006-04-20 Reiner Steib + + * gnus.texi (Spam Statistics Package): Fix typo in @pxref. + (Splitting mail using spam-stat): Fix @xref. + +2006-04-20 Chong Yidong + + * gnus.texi (Spam Package): Major revision of the text. + Previouly this node was "Filtering Spam Using The Spam ELisp Package". + +2006-04-20 Carsten Dominik + + * org.texi (Time stamps): Better explanation of the purpose of + different time stamps. + (Structure editing, Plain lists): More details on how new items + and headings are inserted. + +2006-04-18 Carsten Dominik + + * org.texi (Formula syntax): Fix link to Calc Manual. + +2006-04-17 Reiner Steib + + * gnus.texi (Emacsen): Don't support Emacs 20.7 and XEmacs 21.1. + +2006-04-17 Bill Wohler + + * mh-e.texi (Folders): Update mh-before-quit-hook and + mh-quit-hook example with code that removes the buffers rather + than just bury them. + +2006-04-17 Michael Albinus + + Sync with Tramp 2.0.53. + +2006-04-13 Carsten Dominik + + * org.texi (Updating settings): New section. + (Visibility cycling): Better names for the startup folding + options. + (Exporting): Completely restructured. + (The very busy C-c C-c key): New section. + (Summary of in-buffer settings): New section. + +2006-04-11 Reiner Steib + + * gnus.texi, gnus-faq.texi, message.texi: Gnus v5.10.8 is released. + +2006-04-10 Reiner Steib + + * gnus.texi (Misc Group Stuff, Summary Buffer, Article Keymap) + (Server Commands): Key `v' is reserved for users. + +2006-04-11 Carsten Dominik + + * org.texi (Link format): New section, emphasis on bracket links. + (External links): Document bracket links. + (FAQ): Expand to cover shell links and the new link format. + +2006-04-09 Kevin Ryde + + * org.texi (Formula syntax): Typo in node name of calc-eval xref. + +2006-04-07 Reiner Steib + + * gnus.texi (Summary Buffer Lines): Add `*'. + +2006-04-07 Jochen Küpper + + * gnus.texi (Group Parameters): + Mention gnus-permanently-visible-groups. + +2006-04-06 Katsumi Yamaoka + + * gnus.texi (Face): Fix typo. + +2006-04-05 Reiner Steib + + * gnus.texi (X-Face): Clarify. + (Face): Need Emacs with PNG support. + +2006-04-06 Richard Stallman + + * idlwave.texi: Delete the blocks "not suitable for inclusion with + Emacs". + +2006-04-06 J.D. Smith + + * idlwave.texi: Updated for IDLWAVE version 6.0, factoring out + blocks not suitable for inclusion with Emacs using variable + PARTOFEMACS. + +2006-04-04 Simon Josefsson + + * gnus.texi (Security): Improve. + +2006-04-02 Bill Wohler + + * mh-e.texi (Getting Started, Junk, Bug Reports) + (MH FAQ and Support): Fix URLs. + +2006-03-31 Romain Francoise + + * gnus.texi (Virtual Groups): `nnvirtual-always-rescan' defaults + to t, not nil (and has for the past eight years). + +2006-03-31 Reiner Steib + + * message.texi, gnus.texi: Bump version to 5.11. + +2006-03-29 Reiner Steib + + * gnus.texi (Top): Add comment about version line. + + * message.texi (Top): Ditto. Change to take named versions into + account. + +2006-03-28 Reiner Steib + + * gnus.texi (Posting Styles): Add x-face-file to example. + (X-Face): Refer to posting styles. + + * gnus-faq.texi ([5.8]): Add x-face-file. + ([8.4]): Add links to gmane.emacs.gnus.user and + gmane.emacs.gnus.general. + +2006-03-27 Reiner Steib + + * gnus-faq.texi: Use .invalid. + ([5.4]): Fix gnus-posting-styles example. + +2006-03-27 Romain Francoise + + * faq.texi (Emacs/W3): Rename from `w3-mode'. Mention that + Emacs/W3 needs a new maintainer. + (Ispell): Update author and version info. + (Mailcrypt): Mention PGG. + (New in Emacs 22): Add PGG to the list of new packages. + Include minor changes from "Ramprasad B" + updating dead URLs. + +2006-03-25 Karl Berry + + * ada-mode.texi, autotype.texi, calc.texi, cc-mode.texi, cl.texi, + * dired-x.texi, ebrowse.texi, ediff.texi, emacs-mime.texi, erc.texi, + * eshell.texi, eudc.texi, faq.texi, forms.texi, gnus.texi, idlwave.texi, + * info.texi, message.texi, mh-e.texi, pcl-cvs.texi, pgg.texi, + * rcirc.texi, reftex.texi, sc.texi, ses.texi, sieve.texi, + * speedbar.texi, url.texi, vip.texi, viper.texi, widget.texi, + * woman.texi: (1) use @copyright{} instead of (C) in typeset text; + (2) do not indent copyright year list (or anything else). + +2006-03-21 Bill Wohler + + * mh-e.texi (Folders): Various edits. + +2006-03-20 Romain Francoise + + * gnus.texi (Mail Folders): Grammar fix. + +2006-03-19 Bill Wohler + + * mh-e.texi (Replying): Document Mail-Followup-To. + Change manually-formatted table to multitable. Add debugging info. + Move description of mh-reply-default-reply-to into paragraph + that describes its values. + +2006-03-17 Bill Wohler + + * mh-e.texi: Use smallexample and smalllisp consistenly. + (Sending Mail Tour): Update method of entering + addresses and subject. + (Sending Mail Tour, Reading Mail Tour, Processing Mail Tour) + (Adding Attachments, Searching): Update screenshots for Emacs 22. + +2006-03-15 Carsten Dominik + + * org.texi: Version number change only. + +2006-03-14 Bill Wohler + + * mh-e.texi: Add index entries around each paragraph rather than + depend on entries from beginning of node. Doing so ensures that + index entries are less likely to be forgotten if text is cut and + pasted, and are necessary anyway if the references are on a + separate page. It seems that makeinfo is now (v. 4.8) only + producing one index entry per node, so there is no longer any + excuse not to. Use subheading instead of heading. The incorrect + use of heading produced very large fonts in Info--as large as the + main heading. + (From Bill Wohler): MH-E never did appear in Emacs 21--MH-E + versions 6 and 7 appeared *around* the time of these Emacs releases. + +2006-03-13 Carsten Dominik + + * org.texi (Clean view): Document new startup options. + +2006-03-11 Bill Wohler + + * mh-e.texi (Preface, More About MH-E, Options, HTML, Folders) + (Composing, Scan Line Formats): Fix @refs. + (Getting Started): Define MH profile and MH profile components. + (Incorporating Mail, Reading Mail, Viewing, Printing) + (Sending Mail, Forwarding, Editing Drafts, Inserting Letter) + (Signature, Aliases, Scan Line Formats): Use @code instead of @samp + for string constants. + (Tool Bar): Remove spurious quote. + (Junk): Use ``...'' instead of "...". + (Scan Line Formats): Replace @samp with @kbd. + +2006-03-10 Katsumi Yamaoka + + * gnus.texi (NoCeM): Mention gnus-use-nocem can also be a number. + +2006-03-10 Reiner Steib + + * gnus.texi (Fancy Mail Splitting): Improve sentences so as to be + easy to understand. + +2006-03-09 Katsumi Yamaoka + + * gnus.texi: Markup fix. + (Fancy Mail Splitting): Specify new feature. + +2006-03-08 Katsumi Yamaoka + + * gnus.texi (Fancy Mail Splitting): Improve descriptions about + partial-words matching. + +2006-03-07 Reiner Steib + + * emacs-mime.texi (Display Customization): Reword image/.* stuff. + + * gnus.texi (Oort Gnus): Add note about `gnus-load'. + (MIME Commands): Fix mm-discouraged-alternatives. + +2006-03-07 Carsten Dominik + + * org.texi: Version number change only. + +2006-03-06 Bill Wohler + + * mh-e.texi: Move from SourceForge repository to Savannah. + This is version 7.93, which is a total rewrite from the previous + edition 1.3 for MH-E version 5.0.2, and corresponds to MH-E + version 7.93. + +2006-03-03 Reiner Steib + + * gnus.texi (Oort Gnus): Add `mm-fill-flowed'. + +2006-03-01 Carsten Dominik + + * org.texi (Interaction): Add item about `org-mouse.el' by + Piotr Zielinski. + (Managing links): Document that also mouse-1 can be used to + activate a link. + (Headlines, FAQ): Add entry about hiding leading stars. + (Miscellaneous): Resort the sections in this chapter to a more + logical sequence. + +2006-02-27 Simon Josefsson + + * emacs-mime.texi (Flowed text): Add mm-fill-flowed. (Sync + 2004-01-27 from the trunk). + +2006-02-24 Alan Mackenzie + + * cc-mode.texi: Rename c-hungry-backspace to + c-hungry-delete-backwards, at the request of RMS. Leave the old + name as an alias. + +2006-02-24 Alan Mackenzie + + * cc-mode.texi: Correct the definition of c-beginning-of-defun, to + include the function header within the defun. + +2006-02-24 Alan Mackenzie + + * cc-mode.texi: Correct two typos. + +2006-02-24 Alan Mackenzie + + * cc-mode.texi (Comment Commands): State that C-u M-; kills any + existing comment. + (Electric Keys): Add a justification for electric indentation. + (Hungry WS Deletion): Clear up the names and complications of the + BACKSPACE and DELETE keys. + +2006-02-23 Juri Linkov + + * faq.texi (Common requests): Move `Turning on auto-fill by + default' after `Wrapping words automatically'. Move `Working with + unprintable characters' before `Searching for/replacing newlines'. + Move `Replacing highlighted text' after `Highlighting a region'. + Merge `Repeating commands' and `Repeating a command as many times + as possible' into the former. + (Packages that do not come with Emacs): Add refs to Gmane and + etc/MORE.STUFF. + +2006-02-23 Juri Linkov + + * faq.texi (Newsgroup archives): Update URLs of GNU mail archives. + (Reporting bugs): Suggest using `M-x report-emacs-bug'. + Add xref to `(emacs)Reporting Bugs'. + (Getting a printed manual): Add URL to other formats of the manual. + (Common requests): Fix menu. + (Highlighting a region): Remove ref to `Turning on syntax highlighting'. + (Horizontal scrolling): Mention `truncate-partial-width-windows'. + (Inserting text at the beginning of each line): Add pxref to + `Changing the included text prefix'. + (Forcing the cursor to remain in the same column): Mention `track-eol' + and `set-goal-column'. Add pxref to `(emacs)Moving Point'. + (Replacing text across multiple files): Add keybinding `Q' for + `dired-do-query-replace'. + +2006-02-22 Carsten Dominik + + * reftex.texi: Version number and date change only. + + * org.texi (Internal Links): Rewrite to cover the modified + linking system. + +2006-02-17 Eli Zaretskii + + * faq.texi: Remove the coding cookie, it's not needed anymore. + +2006-02-13 YAMAMOTO Mitsuharu + + * faq.texi (Colors on a TTY): Mention Mac OS port. + +2006-02-12 Karl Berry + + * faq.texi (Emacs for Atari ST): Use Sch@"auble instead of the + 8-bit accented a. + +2006-02-09 Reiner Steib + + * gnus.texi (Gnus Versions): Add history beyond start of Oort. + +2006-02-08 Romain Francoise + + * faq.texi (Top): Remove paragraph about the FAQ being a + transitional document, etc. + (Searching for/replacing newlines): New node. + (Yanking text in isearch): New node. + (Inserting text at the beginning of each line): Rename and make + more general, mention `M-;' in Message mode. + +2006-02-07 Luc Teirlinck + + * faq.texi (Meta key does not work in xterm) + (Emacs does not display 8-bit characters) + (Inputting eight-bit characters): Update xrefs. + +2006-02-06 Romain Francoise + + * faq.texi (VM): VM now at version 7.19. + Set myself as maintainer of this file. + +2006-02-04 Michael Olson + + * erc.texi (History): Note that ERC is now included with Emacs. + +2006-01-31 Romain Francoise + + * message.texi (Message Headers): Explain what + `message-alternative-emails' does in more detail. + Update copyright year. + +2006-01-30 Juanma Barranquero + + * makefile.w32-in (clean): Add newsticker, sieve, pgg, erc and rcirc. + +2006-01-29 Richard M. Stallman + + * cc-mode.texi (Indentation Commands): Inserts newline, not "linefeed". + +2006-01-29 Michael Olson + + * makefile.w32-in ($(infodir)/erc, erc.dvi): New targets. + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add ERC. + + * faq.texi (New in Emacs 22): Mention ERC. + +2006-01-28 Luc Teirlinck + + * rcirc.texi: Capitalize dir entry for consistency with the entry + in info/dir and other entries in the Emacs category. + Fix typos. Delete trailing whitespace. + +2006-01-28 Björn Lindström + + * rcirc.texi: Some @cindex changes, some changes from @kbd to @key. + +2006-01-27 Eli Zaretskii + + * makefile.w32-in ($(infodir)/rcirc, rcirc.dvi): New targets. + (INFO_TARGETS, DVI_TARGETS): Add rcirc. + + * Makefile.in (../info/rcirc, rcirc.dvi): New targets. + (INFO_TARGETS, DVI_TARGETS): Add rcirc. + +2006-01-27 Alex Schroeder + + * rcirc.texi: New file. + +2006-01-23 Juri Linkov + + * widget.texi (User Interface): Add S-TAB for widget-backward. + +2006-01-22 Michael Albinus + + Sync with Tramp 2.0.52. + + * tramp.texi (Frequently Asked Questions): Remove Ange-FTP item. + Add Tramp disabling item. New item for common connection problems. + (various): Apply "ftp" as method for the download URL. + (Bug Reports): Refer to FAQ for common problems. + +2006-01-21 Eli Zaretskii + + * widget.texi (User Interface): Use @key for TAB. + + * ses.texi (Formulas, Printer functions): Use @key for TAB. + + * ebrowse.texi (Switching to Tree, Symbol Completion): Use @key + for TAB. + + * cc-mode.texi (Indentation Calculation): Use @key for TAB. + +2006-01-16 Katsumi Yamaoka + + * gnus.texi: Update copyright. + +2006-01-13 Katsumi Yamaoka + + * gnus.texi (Article Washing): Additions. + +2006-01-08 Alex Schroeder + + * pgg.texi (Caching passphrase): Rewording. + +2006-01-13 Carsten Dominik + + * org.texi (Agenda commands): Document tags command. + +2006-01-10 Katsumi Yamaoka + + * gnus.texi (RSS): Document nnrss-wash-html-in-text-plain-parts. + +2006-01-06 Katsumi Yamaoka + + * gnus.texi (RSS): Addition. + +2005-12-22 Katsumi Yamaoka + + * gnus.texi (Summary Post Commands): Fix function bound to `S O p'. + +2005-12-19 Katsumi Yamaoka + + * emacs-mime.texi (Display Customization): Add setting example to + mm-discouraged-alternatives. + +2006-01-09 Stefan Monnier + + * flymake.texi (Obtaining Flymake): Remove chapter since Emacs's + version is the canonical version. + +2006-01-08 Alex Schroeder + + * pgg.texi (Caching passphrase): Rewording. + +2006-01-06 Eli Zaretskii + + * flymake.texi (Obtaining Flymake): Update Flymake's CVS + repository URL. + +2006-01-06 Carsten Dominik + + * org.texi: Removed the accidentally re-added empty line in the + direntry. + +2006-01-05 Carsten Dominik + + * org.texi (Agenda Views): Chapter reorganized. + +2005-12-29 Romain Francoise + + * faq.texi (Using Customize): New node. + +2005-12-28 Luc Teirlinck + + * org.texi: Remove blank line in @direntry. It is non-standard + and recursively produces blank lines all over the dir file (when + using Texinfo 4.8). + +2005-12-21 Luc Teirlinck + + * widget.texi (atoms): Delete obsolete remark about `file' widget. + +2005-12-20 Carsten Dominik + + * org.texi (Tags): Boolean logic documented. + (Agenda Views): Document custom commands. + +2005-12-20 David Kastrup + + * faq.texi (AUCTeX): Update version and mailing list info. + +2005-12-17 Katsumi Yamaoka + + * gnus.texi (MIME Commands): Mention addition of + multipart/alternative to gnus-buttonized-mime-types and add xref + to mm-discouraged-alternatives. + + * emacs-mime.texi (Display Customization): Mention addition of + "image/.*" and add xref to gnus-buttonized-mime-types in the + mm-discouraged-alternatives section. + +2005-12-16 Carsten Dominik + + * org.texi (Tags): New section. + (Agenda Views): Chapter reorganized. + +2005-12-16 Eli Zaretskii + + * org.texi (Internal Links): Add a missing comma after an @xref. + +2005-12-14 Chong Yidong + + * faq.texi (Filling paragraphs with a single space): No need to + change sentence-end now. + +2005-12-13 Romain Francoise + + * faq.texi (Scrolling only one line): Use `scroll-conservatively'. + +2005-12-12 Jay Belanger + + * faq.texi (Calc): Update version number. + +2005-12-12 Carsten Dominik + + * org.texi (Progress Logging): New section. + +2005-12-10 Romain Francoise + + Update the Emacs FAQ for the 22.1 release. + + * faq.texi: Set VER to `22.1'. + (Basic editing): Explain how to use localized versions of the + Tutorial. Mention that `C-h r' displays the manual. Delete + obsolete WWW link to an Emacs 18 tutorial. + (Getting a printed manual): Point to the new locations of the + manuals on the GNU Web site. + (Emacs Lisp documentation): Explain that the Emacs Lisp manual is + available via Info (it was previously distributed separately). + (Installing Texinfo documentation): The latest version of Texinfo + is 4.8, not 4.0. + (Informational files for Emacs): COPYING is the GNU General Public + License, not the Emacs General Public License. + (Informational files for Emacs): Delete obsolete link to the + GNUinfo pages as they have been removed from the GNU Web site. + (New in Emacs 22): New node. + (Setting up a customization file): Say that most packages support + Customize nowadays. + (Colors on a TTY): Delete reference to instructions on how to + enable syntax highlighting, it is now enabled by default. + (Turning on abbrevs by default): Emacs now reads the abbrevs file + at startup automatically. + (Controlling case sensitivity): Mention `M-c' in isearch. + (Using an already running Emacs process): Emacs now creates the + socket in `/tmp/emacsUID'. Fix typos. Change default location of + gnuserv. As emacsclient can now run Lisp code as well, delete a + sentence praising gnuserv for that. Simplify description of how + the client/server operation works. + (Compiler error messages): Delete obsolete text (compile.el has + been rewritten). + (Indenting switch statements): Fix typo. + (Matching parentheses): Simplify setup instructions, mention the + menu bar item in the Options menu. + (Repeating a command as many times as possible): Mention `C-x e'. + (Going to a line by number): Mention new keymap and bindings + `M-g M-g', `M-g M-p' and `M-g M-n'. + (Turning on syntax highlighting): Now on by default. Simplify. + (Replacing highlighted text): Use `1', not `t'. + (Problems with very large files): The maximum size is now 256MB on + 32-bit machines. + (^M in the shell buffer): Mention `comint-process-echoes'. + (Emacs for Apple computers): Emacs 22 has native support for Mac + OS X. + (Translating names to IP addresses): Delete node. + (Binding keys to commands): Fix typo. + (SPC no longer completes file names): New node. + (MIME with Emacs mail packages): Delete section about the Emacs + MIME FAQ (it's not reachable anymore). + +2005-12-08 Alan Mackenzie + + * cc-mode.texi: The manual has been extensively revised: the + information about using CC Mode has been separated from the larger + and more difficult chapters about configuration. It has been + updated for CC Mode 5.31. + +2005-12-05 Katsumi Yamaoka + + * pgg.texi (User Commands): Fix description of pgg-verify-region. + (Selecting an implementation): Fix descriptions. + +2005-11-30 Katsumi Yamaoka + + * message.texi (Various Message Variables): Addition. + +2005-11-29 Katsumi Yamaoka + + * message.texi: Fix default values. + +2005-11-25 Katsumi Yamaoka + + * message.texi (Header Commands): Clarify descriptions of + message-cross-post-followup-to, message-reduce-to-to-cc, and + message-insert-wide-reply. + (Various Commands): Fix kindex for message-kill-to-signature; + clarify description of message-tab. + +2005-11-22 Katsumi Yamaoka + + * message.texi (Mailing Lists): Fix description about MFT. + + * gnus.texi (Emacs Lisp): Use ~/.gnus.el instead of ~/.emacs. + +2005-11-17 Katsumi Yamaoka + + * gnus.texi (Slow Terminal Connection): Replace old description + with new one. + +2005-11-16 Katsumi Yamaoka + + * gnus.texi (Oort Gnus): Use ~/.gnus.el instead of ~/.emacs; + replace X-Draft-Headers with X-Draft-From. + +2005-11-14 Katsumi Yamaoka + + * gnus.texi (Various Various): Fix the default value of + nnheader-max-head-length. + (Gnus Versions): Fix typo. + +2005-12-08 Carsten Dominik + + * org.texi (Structure editing): Document new functionality of + M-RET. + +2005-12-06 Luc Teirlinck + + * org.texi (Internal Links): Fix Texinfo usage. + +2005-12-06 Carsten Dominik + + * org.texi (TODO basics): Document the global todo list. + (TODO items): Documents sparse tree for specific TODO + keywords. + +2005-11-30 Carsten Dominik + + * org.texi (Plain Lists): Typos fixed. + +2005-11-28 Jay Belanger + + * calc.texi: Change references of `M-#' to `C-x *' prefix. + +2005-11-24 Carsten Dominik + + * org.texi (Structure editing): New item moving commands added. + (Plain Lists): New section. + +2005-11-18 Carsten Dominik + + * org.texi (FAQ): Document `org-table-tab-jumps-over-hlines'. + (Agenda): Document commands `org-cycle-agenda-files' and + `org-agenda-file-to-front' + (Built-in table editor): Document `org-table-sort-lines'. + (HTML formatting): Export of hand-formatted lists. + +2005-11-10 Katsumi Yamaoka + + * gnus.texi (XVarious): Fix description of gnus-use-toolbar; add + new variable gnus-toolbar-thickness. + +2005-11-08 Katsumi Yamaoka + + * gnus.texi (XVarious): Revert description of gnus-use-toolbar. + +2005-11-07 Katsumi Yamaoka + + * gnus.texi (X-Face): Fix description. + (XVarious): Remove gnus-xmas-logo-color-alist and + gnus-xmas-logo-color-style; fix description of gnus-use-toolbar. + +2005-11-01 Katsumi Yamaoka + + * gnus.texi (Group Parameters): Mention new variable + gnus-parameters-case-fold-search. + (Home Score File): Addition. + +2005-11-04 Ulf Jasper + + * newsticker.texi: VERSION changed to 1.9. Updated UPDATED. + (Overview): List supported feed types. + (Installation): No installation necessary when using autoload. + (Configuration): Rename "RSS" to "news". + +2005-11-04 Ken Manheimer + + * pgg.texi (User Commands): Document additional passphrase + argument for pgg-encrypt-*, pgg-decrypt-*, and pgg-sign-* functions. + (Backend methods): Likewise for corresponding pgg-scheme-* functions. + +2005-11-04 Carsten Dominik + + * org.texi: Version number changed to 3.19. + +2005-10-29 Sascha Wilde + + * pgg.texi (How to use): Update the example to add autoload of + pgg-encrypt-symmetric-region. + (User Commands): Document pgg-encrypt-symmetric-region. + (Backend methods): Document pgg-scheme-encrypt-symmetric-region. + +2005-10-27 Jay Belanger + + * calc.texi (Predefined Units): Fix the symbol for a TeX points, + mention other TeX-related units. + +2005-10-23 Lars Hansen + + * dired-x.texi (Miscellaneous Commands): Replace + dired-do-relative-symlink by dired-do-relsymlink and + dired-do-relative-symlink-regexp by dired-do-relsymlink-regexp. + +2005-10-23 Jay Belanger + + * calc.texi (Predefined Units): Use `alpha' for the fine structure + constant. + +2005-10-23 Michael Albinus + + * faq.texi (Bugs and problems): Replace + `dired-move-to-filename-regexp' by + `directory-listing-before-filename-regexp'. + +2005-10-22 Eli Zaretskii + + * newsticker.texi (UPDATED): Set value. + +2005-10-17 Katsumi Yamaoka + + * gnus.texi (Document Groups): Remove duplicate item. + +2005-10-21 Carsten Dominik + + * org.texi (Summary): Mention iCalendar support. + (Exporting): Document iCalendar support. + +2005-10-18 Romain Francoise + + * viper.texi (Viper Specials): Capitalize GNU. + +2005-10-17 Juri Linkov + + * info.texi (Getting Started, Search Index, Expert Info): + Fix wording. + (Search Text): Replace `echo area' with `mode line'. + (Search Index): Both `i' and `,' find all index entries. + Replace example `C-f' with `C-l' (which exists in index of Info + manual) and delete spaces in its keyboard input sequence. + Delete unnecessary explanations about literal characters. + +2005-10-14 Katsumi Yamaoka + + * gnus.texi (Document Server Internals): Addition. + +2005-10-13 Katsumi Yamaoka + + * gnus.texi (A note on namespaces): Fix RFC reference. + +2005-10-12 Katsumi Yamaoka + + * gnus.texi (RSS): Fix key description. + +2005-10-11 Katsumi Yamaoka + + * gnus.texi: Emacs/w3 -> Emacs/W3. + (Browsing the Web): Fix description. + (Web Searches): Ditto. + (Customizing W3): Ditto. + +2005-10-07 Katsumi Yamaoka + + * gnus.texi (Maildir): Clarify expire-age and expire-group. + +2005-10-11 Jay Belanger + + * calc.texi (Integration): Mention using `a i' to compute definite + integrals. + +2005-10-11 Juri Linkov + + * info.texi: Rearrange nodes. + (Top): Update menu. Change ref `Info for Experts' to + `Advanced Info Commands'. + (Getting Started): Fix description of manual's parts. + (Help-Int): Change xref `Info Search' to `Search Index', and + `Expert Info' to `Advanced'. + (Advanced): Move node one level up. + (Search Text, Search Index): New nodes split out from `Info Search'. + (Go to node, Choose menu subtopic, Create Info buffer): New nodes + split out from `Advanced'. + (Advanced, Emacs Info Variables): De-document editing an Info file + in Info. + (Emacs Info Variables): Move node from `Expert Info' to `Advanced'. + (Creating an Info File): Delete node and move its text to + `Expert Info'. + +2005-10-10 Carsten Dominik + + * org.texi (Workflow states): Documented that change in keywords + becomes active only after restart of Emacs. + +2005-10-08 Michael Albinus + + Sync with Tramp 2.0.51. + +2005-10-08 Nick Roberts + + * speedbar.texi (Introduction): Describe new location of speedbar + on menubar. + (Basic Key Bindings): Remove descriptions of bindings that have + been removed. + +2005-10-05 Nick Roberts + + * speedbar.texi (GDB): Describe use of watch expressions. + +2005-09-28 Simon Josefsson + + * message.texi (IDNA): Fix. + +2005-09-28 Katsumi Yamaoka + + * gnus.texi (NNTP): Remove nntp-buggy-select, nntp-read-timeout, + nntp-server-hook, and nntp-warn-about-losing-connection; fix + description of nntp-open-connection-function. + (Common Variables): Fix descriptions. + +2005-09-26 Katsumi Yamaoka + + * gnus.texi (Server Buffer Format): Document the %a format spec. + +2005-09-22 Katsumi Yamaoka + + * gnus.texi (Mail): Fix gnus-confirm-mail-reply-to-news entry. + +2005-09-23 Carsten Dominik + + * org.texi Version 3.16. + +2005-09-19 Miles Bader + + * newsticker.texi: Get rid of CVS keywords. + +2005-09-15 Katsumi Yamaoka + + * gnus.texi (Finding the Parent): Fix description of how Gnus + finds article. + +2005-09-14 Jari Aalto + + * gnus.texi (Advanced Scoring Examples): New examples to teach how + to drop off non-answered articles. + +2005-09-19 Juanma Barranquero + + * makefile.w32-in (newsticker.dvi): Use parentheses instead of curly + braces (which are unsupported by NMAKE) for macro `srcdir'. + +2005-09-17 Eli Zaretskii + + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS): Add newsticker targets. + (../info/newsticker, newsticker.dvi): New targets. + +2005-09-17 Ulf Jasper + + * newsticker.texi: Replace @command with @code. Replace @example + with @lisp. + (Top): Added explanations to menu items. + (GNU Free Documentation License): Removed. + +2005-09-16 Romain Francoise + + Update all files to specify GFDL version 1.2. + + * doclicense.texi (GNU Free Documentation License): Update to + version 1.2. + +2005-09-15 Richard M. Stallman + + * newsticker.texi: Fix @setfilename. + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add newsticker targets. + (../info/newsticker, newsticker.dvi): New targets. + +2005-08-30 Carsten Dominik + + * org.texi: Version 3.15. + +2005-08-29 Luc Teirlinck + + * ses.texi: Combine all three indices into one. + Correct a few typos. + +2005-08-19 Katsumi Yamaoka + + * emacs-mime.texi (time-date): Fix description of safe-date-to-time. + +2005-08-18 Katsumi Yamaoka + + * emacs-mime.texi (Handles): Remove duplicate item. + (Encoding Customization): Fix the default value for + mm-coding-system-priorities. + (Charset Translation): Emacs doesn't use mm-mime-mule-charset-alist. + (Basic Functions): Fix reference. + +2005-08-09 Katsumi Yamaoka + + * gnus.texi (Charsets): Fj hierarchy uses iso-2022-jp. + +2005-08-18 Richard M. Stallman + + * faq.texi (Obtaining the FAQ): Delete refs to Lerner's email + and web site. + + * faq.texi (Swapping keys): Xref for normal-erase-is-backspace-mode, + not keyboard-translate. + +2005-08-11 Richard M. Stallman + + * faq.texi (Using regular expressions): Fix xref. + +2005-08-09 Juri Linkov + + * info.texi (Help-P): Replace `Prev' with `Previous'. + (Help-M, Help-Xref): Add S-TAB. + (Help-FOO): Update `u' command. + (Help-Xref): Move info about Mouse-2 from `Help-Int'. + Update info about visibility of xref parts. + (Help-Int): Fix `m' command. Rename `Info-last' to + `Info-history-back'. Add `Info-history-forward'. + (Advanced): Fix `g*' and `M-n' commands. + (Info Search): Add `index-apropos' in stand-alone browser. + Add isearch commands. + (Emacs Info Variables): Remove `Info-fontify'. + Add `Info-mode-hook'. Update face names. + Add `Info-fontify-maximum-menu-size', + `Info-fontify-visited-nodes', `Info-isearch-search'. + +2005-08-07 Michael Albinus + + Sync with Tramp 2.0.50. + + * tramp.texi: Use @option{} consequently for method names. + (Inline methods, External transfer methods): Remove references to + Cygwin. + (Issues with Cygwin ssh): Explain trouble with Cygwin's ssh + implementation. + +2005-07-27 Reiner Steib + + * gnus.texi (Startup Files): Fix name of gnus-site-init-file. + Mention that gnus-init-file is not read when Emacs is invoked with + --no-init-file or -q. + +2005-07-19 Carsten Dominik + + * org.texi: Version 3.14. + +2005-07-04 Carsten Dominik + + * org.texi: Version 3.13. + +2005-07-18 Juri Linkov + + * calc.texi (Time Zones, Logical Operations): + * cl.texi (Overview): + * org.texi (TODO types): + * sc.texi (Emacs 18 MUAs): + * speedbar.texi (Top): + * url.texi (History): + Delete duplicate duplicate words. + +2005-07-16 Johan Bockgard (tiny change) + + * cl.texi (Type Predicates): Document `atom' type. + +2005-07-04 Lute Kamstra + + Update FSF's address in GPL notices. + + * calc.texi (Copying): + * doclicense.texi (GNU Free Documentation License): + * faq.texi (Contacting the FSF): + * mh-e.texi (Copying): Update FSF's address. + +2005-07-03 Richard M. Stallman + + * flymake.texi (Example -- Configuring a tool called directly): + Update name of flymake-build-relative-filename. + +2005-06-29 Katsumi Yamaoka + + * gnus.texi (NoCeM): gnus-nocem-verifyer defaults to pgg-verify. + +2005-06-29 Carsten Dominik + + * org.texi: Version 3.12. + +2005-06-24 Eli Zaretskii + + * makefile.w32-in (MAKEINFO): Use --force. + (INFO_TARGETS, DVI_TARGETS): Make identical to the lists in + Makefile.in. + (gnus.dvi): Use "..." to quote Sed args, so that it works with + more shells. + +2005-06-23 Richard M. Stallman + + * speedbar.texi (Creating a display): Texinfo usage fixes. + + * tramp.texi (Customizing Completion, Auto-save and Backup): + Texinfo usage fixes. + +2005-06-23 Juanma Barranquero + + * dired-x.texi (Miscellaneous Commands): + * ediff.texi (Miscellaneous): + * gnus.texi (MIME Commands, Fancy Mail Splitting, Agent Visuals) + (Agent Variables): + * info.texi (Help-Xref): + * message.texi (Message Headers): + * org.texi (Remember): + * reftex.texi (Options (Defining Label Environments)): + (Options (Index Support)): + (Options (Viewing Cross-References)): + (Options (Misc)): + (Changes): + * speedbar.texi (Creating a display): + * tramp.texi (Customizing Completion, Auto-save and Backup): + Texinfo usage fix. + +2005-06-13 Carsten Dominik + + * org.texi: Version 3.11. + +2005-06-12 Jay Belanger + + * calc.texi (Getting Started): Remove extra menu item. + +2005-05-31 Jay Belanger + + * calc.texi (Notations Used in This Manual): Use @kbd for key + sequence. + (Demonstration of Calc): Mention another way of starting Calc. + (Starting Calc): Mention long name of M-#. + (Embedded Mode Overview): Remove unnecessary instruction. + (Other M-# commands): Rephrase `M-# 0' explanation. + (Basic Embedded Mode): Rewrite discussion of prefix arguments to + reflect current behavior. + +2005-05-30 Jay Belanger + + * calc.texi (Hooks): Change description of calc-window-hook and + calc-trail-window-hook to match usage. + (Computational Functions): Add more constant-generating functions. + (Customizable Variables): Use defvar. + +2005-05-28 Jay Belanger + + * calc.texi (Assignments in Embedded Mode): Fix variable name. + (Basic Embedded Mode): Explain behavior of arguments to + calc-embedded-mode. + +2005-05-27 Jay Belanger + + * calc.texi (Queries in Keyboard Macros): Rewrite to reflect + current behavior. + +2005-05-25 Jay Belanger + + * calc.texi: Change Calc version number throughout. + (Keypad Mode): Change location in info output. + (Keypad mode overview): Move picture of keypad. + +2005-05-21 Jay Belanger + + * calc.texi (Storing variables): Mention that only most variables + are void to begin with. + +2005-05-21 Kevin Ryde + + * widget.texi (Basic Types): Update cross ref from "Enabling + Mouse-1 to Follow Links" to "Links and Mouse-1" per recent + lispref/text.texi change. + +2005-05-20 Carsten Dominik + + * org.texi: Version 3.09. + +2005-05-18 Carsten Dominik + + * reftex.texi: Version 4.28. + +2005-05-16 Jay Belanger + + * calc.texi (Storing Variables): Mention `calc-copy-special-constant'. + +2005-05-14 Jay Belanger + + * calc.texi (Default Simplifications): Insert missing ! (logical + not operator). + +2005-05-14 Michael Albinus + + Sync with Tramp 2.0.49. + +2005-05-10 Jay Belanger + + * calc.texi (Default Simplifications): Mention that 0^0 simplifies + to 1. + +2005-04-29 Carsten Dominik + + * org.texi: Version 3.08, structure reorganized. + +2005-04-24 Richard M. Stallman + + * faq.texi: Delete info about lazy-lock.el and fast-lock.el. + +2005-04-15 Carsten Dominik + + * org.texi: Update to version 3.06. + +2005-04-13 Lute Kamstra + + * cc-mode.texi: Prevent creating an unnecessary empty cc-mode.ss file. + +2005-04-10 Thien-Thi Nguyen + + * cl.texi (Porting Common Lisp): Fix typo. + +2005-04-06 Katsumi Yamaoka + + * gnus.texi (RSS): Addition. + +2005-04-04 Jay Belanger + + * calc.texi: Change Calc version number. + (Customizable variables): Fix description of calc-language-alist. + (Copying): Put in version 2 of GPL. + +2005-04-01 Jay Belanger + + * calc.texi (Troubleshooting Commands): Remove comment about + installation. + (Installation): Remove section. + (Customizable Variables): New section. + (Basic Embedded Mode, Customizing Embedded Mode, Graphics) + (Graphical Devices): Add references to Customizable Variables. + +2005-03-25 Katsumi Yamaoka + + * emacs-mime.texi (Display Customization): Markup fixes. + (rfc2047): Update. + +2005-03-23 Reiner Steib + + * gnus-faq.texi: Replaced with auto-generated version. + +2005-03-26 Stephan Stahl (tiny change) + + * dired-x.texi (Multiple Dired Directories): default-directory was + renamed to dired-default-directory. + +2005-03-26 Jay Belanger + + * calc.texi (Simplifying Formulas, Rewrite Rules): + Change description of top and bottom of fraction. + (Modulo Forms): Move description of how to create modulo forms to + earlier in the section. + (Fraction Mode): Suggest using : to get a fraction by dividing. + (Basic Arithmetic): Adjust placement of command name. + (Truncating the Stack): Emphasize that "hidden" entries are still + visible. + (Installation): Move discussion of printing manual to "About This + Manual". + (About This Manual): Mention how to print the manual. + (Reporting Bugs): Remove first person. + (Building Vectors): Add algebraic version of append. + (Manipulating Vectors): Fix algebraic version of calc-reverse-vector. + (Grouping Digits): Fix typo. + +2005-03-25 Werner Lemberg + + * calc.texi, cl.texi, gnus.texi, idlwave.texi, reftex.texi: + Replace `legal' with `valid'. + +2005-03-25 Werner Lemberg + + * calc.texi, reftex.texi: Replace `illegal' with `invalid'. + +2005-03-24 Jay Belanger + + * calc.texi (General Mode Commands) + (Mode Settings in Embedded Mode): Add some explanation of + recording mode settings. + +2005-03-24 Richard M. Stallman + + * calc.texi: Remove praise of non-free software. + + * idlwave.texi: Don't say where to get IDL or its non-free manual. + (Installation): Node deleted. + +2005-03-23 Richard M. Stallman + + * url.texi (HTTP language/coding): Improve last change. + +2005-03-22 Jay Belanger + + * calc.texi (Embedded Mode): Add new information on changing + modes. + +2005-03-20 Michael Albinus + + Sync with Tramp 2.0.48. + + * trampver.texi.in: Replace "Emacs" by "GNU Emacs". + + * tramp.texi: Replace "Emacs" by "GNU Emacs". Replace "Linux" by + "GNU/Linux". Change all addresses to .gnu.org. + (Default Method): Offer shortened syntax for "su" and "sudo" + methods. + +2005-03-07 Richard M. Stallman + + * url.texi: Fix usage of "e.g.". + (HTTP language/coding): Explain the rules for these strings. + +2005-03-06 Richard M. Stallman + + * woman.texi (Introduction): Minor cleanups. + + * url.texi (HTTP language/coding): Get rid of "Emacs 21". + + * pcl-cvs.texi (About PCL-CVS): Get rid of "Emacs 21". + (Installation): Node deleted. + + * mh-e.texi (Preface): Get rid of "Emacs 21". + + * eshell.texi (Installation): Delete node (for Emacs 20). + +2005-03-05 Thien-Thi Nguyen + + * flymake.texi: Refill and tweak style in @lisp blocks. + +2005-03-03 Reiner Steib + + * gnus.texi (Slow/Expensive Connection): Don't abbreviate "very". + +2005-03-01 Jay Belanger + + * calc.texi (Trigonometric and Hyperbolic Functions): + Mention additional functions. + (Algebraic Simplifications): Mention additional simplifications. + +2005-02-18 Jonathan Yavner + + * ses.texi: Add concept/function/variable indices (this work was + donated by Brad Collins , copyright-assignment + papers on file at FSF). + +2005-02-10 Jay Belanger + + * calc.texi: Change @LaTeX to La@TeX throughout. + Redefine @expr as @math for TeX output. + Redefine @texline as a no-op for TeX output. + Define @tfn, replace @t by @tfn throughout. + +2005-02-09 Jay Belanger + + * calc.texi: Add macro for LaTeX for info output. + +2005-02-08 Kim F. Storm + + * texinfo.tex (LaTex): Add def. + +2005-02-06 Jay Belanger + + * calc.texi (TeX Language Mode): Add mention of LaTeX mode, and + change name to "TeX and LaTeX Language Modes." Mention LaTeX mode + throughout manual. + +2005-01-28 Lars Magne Ingebrigtsen + + * gnus.texi: Some edits based on comments from David Abrahams. + +2005-01-24 Katsumi Yamaoka + + * gnus.texi (RSS): Fix the keystroke. + +2005-01-24 David Kastrup + + * faq.texi: Update AUCTeX version info. + +2005-01-16 Xavier Maillard (tiny change) + + * gnus-faq.texi ([4.1]): Typo. + +2005-01-19 Jay Belanger + + * calc.texi (Keep Arguments): Mention that keeping arguments + doesn't work with keyboard macros. + +2005-01-16 Richard M. Stallman + + * autotype.texi (Autoinserting): Fix small error. + +2005-01-16 Michael Albinus + + Sync with Tramp 2.0.47. + + * tramp.texi (Compilation): New section, describing compilation of + remote files. + +2005-01-11 Kim F. Storm + + * widget.texi (Basic Types): Add :follow-link keyword. + +2005-01-09 Jay Belanger + + * calc.texi (Basic Commands): Describe new behavior of calc-reset. + +2005-01-08 Jay Belanger + + * calc.texi: Change throughout to reflect new default value of + calc-settings-file. + +2005-01-06 Katsumi Yamaoka + + * message.texi (Reply): `message-reply-to-function' should return + a list. Suggested by ARISAWA Akihiro . + +2005-01-06 Hiroshi Fujishima (tiny change) + + * faq.texi (Changing load-path): Fix typo. + +2005-01-05 Jay Belanger + + * calc.texi (Programming Tutorial): Replace kbd command by + appropriate characters for a keyboard macro. + +2005-01-04 Jay Belanger + + * calc.texi (Basic Tutorial, Programming Tutorial): Remove caveats + for Lucid Emacs. + (Programming Tutorial): Mention that the user needs to be in the + right mode to compute some functions. + +2005-01-04 Jay Belanger + + * calc.texi (Rewrite rules): Remove an exercise (on 0^0) which is + no longer applicable. + +2005-01-01 Jay Belanger + + * calc.texi (Programming Tutorial): Changed description of how to + edit keyboard macros to match current behavior. + +2004-12-31 Jay Belanger + + * calc.texi: Mention C-cC-c as the way to finish editing throughout. + +2004-12-20 Jay Belanger + + * calc.texi (Types Tutorial): Emphasize that you can't divide by + zero. + +2004-12-17 Luc Teirlinck + + * cc-mode.texi (Text Filling and Line Breaking): Put period after + @xref. + (Font Locking): Avoid @strong{Note:}. + +2004-12-17 Michael Albinus + + Sync with Tramp 2.0.46. + + * tramp.texi (bottom): Add arch-tag. It was lost, somehow. + +2004-12-16 Luc Teirlinck + + * url.texi: Correct typos. + (Retrieving URLs): @var{nil}->@code{nil}. + (HTTP language/coding, mailto): Replace "GNU Emacs Manual" with + the standard "The GNU Emacs Manual" in fifth argument of @xref's. + (Dealing with HTTP documents): @inforef->@xref. + +2004-12-15 Jay Belanger + + * calc.texi: Consistently capitalized all mode names. + (Answers to Exercises): Mention that an answer can be a fraction + when in Fraction mode. + +2004-12-13 Jay Belanger + + * calc.texi: Fix some TeX definitions. + +2004-12-09 Luc Teirlinck + + * reftex.texi (Imprint): Remove erroneous @value's. + +2004-12-08 Luc Teirlinck + + * makefile.w32-in (INFO_TARGETS, DVI_TARGETS, $(infodir)/org) + (org.dvi, $(infodir)/url, url.dvi, clean): Add org and url manuals. + +2004-12-08 Jay Belanger + + * calc.texi (Starting Calc): Remove comment about installation. + (Keypad Mode Overview): Remove comment about Emacs 19 support. + +2004-12-08 Luc Teirlinck + + * url.texi: Update @setfilename. + (Getting Started): No need to worry about Gnus versions. + (Dealing with HTTP documents): Use @inforef. + + * org.texi: Fix @direntry file name. + +2004-12-07 Stefan Monnier + + * url.texi: New file. + + * Makefile.in (INFO_TARGETS, DVI_TARGETS, ../info/url, url.dvi): Add it. + +2004-12-06 Jay Belanger + + * calc.texi (Using Calc): Remove paragraph about installation. + +2004-12-06 Jay Belanger + + * calc.texi: Use more Texinfo macros and less TeX defs. + Remove @refill's. + +2004-12-06 Richard M. Stallman + + * org.texi: New file. + +2004-12-05 Richard M. Stallman + + * Makefile.in (org.dvi, ../info/org): New targets. + (INFO_TARGETS): Add ../info/org. + (DVI_TARGETS): Add org.dvi. + (maintainer-clean): Remove the info files in the info dir. + +2004-11-26 Eli Zaretskii + + * idlwave.texi: Fix the setfilename directive to put the produced + file in ../info. + (Continued Statement Indentation): Resurrect Jan D.'s change from + 2004-11-03 that was lost when a newer version of idlwave.texi was + imported. + +2004-12-08 Reiner Steib + + * gnus-faq.texi ([5.1]): Added missing bracket. + + * gnus.texi (Filtering Spam Using The Spam ELisp Package): Index + `spam-initialize'. + +2004-11-22 Reiner Steib + + * message.texi (Various Message Variables): Mention that all mail + file variables are derived from `message-directory'. + + * gnus.texi (Splitting Mail): Clarify bogus group. + +2004-11-02 Katsumi Yamaoka + + * emacs-mime.texi (Encoding Customization): Fix + mm-coding-system-priorities entry. + +2004-11-03 Jan Djärv + + * idlwave.texi (Continued Statement Indentation): + * reftex.texi (Options (Index Support)): + (Displaying and Editing the Index, Table of Contents): + * speedbar.texi (Creating a display, Major Display Modes): Replace + non-nil with non-@code{nil}. + +2004-10-21 Jay Belanger + + * calc.texi (Algebraic-Style Calculations): Removed a comment. + +2004-10-18 Luc Teirlinck + + * calc.texi (Reporting Bugs): Double up `@'. + +2004-10-18 Jay Belanger + + * calc.texi (Reporting Bugs): Changed the address that bugs + should be sent to. + +2004-10-15 Reiner Steib + + * gnus.texi (New Features): Add 5.11. + + * message.texi (Resending): Remove wrong default value. + + * gnus.texi (Mail Source Specifiers): Describe possible problems + of `pop3-leave-mail-on-server'. Add `pop3-movemail' and + `pop3-leave-mail-on-server' to the index. + +2004-10-15 Katsumi Yamaoka + + * message.texi (Canceling News): Add how to set a password. + +2004-10-12 Jay Belanger + + * calc.texi (Help Commands): Changed the descriptions of + calc-describe-function and calc-describe-variable to match their + current behavior. + +2004-10-12 Reiner Steib + + * gnus-faq.texi ([5.9]): Improve code for reply-in-news. + +2004-10-12 Michael Albinus + + Sync with Tramp 2.0.45. + + * tramp.texi (Frequently Asked Questions): Comment paragraph about + plink link. The URL is outdated. Originator contacted for + clarification. + +2004-10-10 Juri Linkov + + * gnus.texi (Top, Marking Articles): Join two menus in one node + because a node can have only one menu. + +2004-10-09 Juri Linkov + + * gnus.texi (Fancy Mail Splitting): Remove backslash in the + example of nnmail-split-fancy. + +2004-10-06 Karl Berry + + * info.texi (@kbd{1}--@kbd{9}): No space around --, for + consistency with other uses of dashes. + +2004-10-05 Karl Berry + + * info.texi: Consistently use --- throughout, periods at end of + menu descriptions, and a couple typos. + +2004-09-26 Jesper Harder + + * sieve.texi (Manage Sieve API): nil -> @code{nil}. + * pgg.texi (User Commands, Backend methods): Do. + * gnus.texi: Markup fixes. + (Setting Process Marks): Fix `M P a' entry. + * emacs-mime.texi: Fixes. + +2004-09-23 Reiner Steib + + * gnus-faq.texi ([5.12]): Fix code example for FQDN in Message-Ids + again. + Use 5.10 instead of 5.10.0. + +2004-09-20 Lars Magne Ingebrigtsen + + * gnus.texi (Summary Mail Commands): S D e. + +2004-09-20 Raymond Scholz (tiny change) + + * gnus.texi (Misc Article): Refer to `Summary Buffer Mode Line' in + the gnus-article-mode-line-format section. + +2004-09-20 Helmut Waitzmann (tiny change) + + * gnus.texi (Various Summary Stuff): Fix the documentation for + gnus-newsgroup-variables. + +2004-09-20 Reiner Steib + + * gnus.texi (MIME Commands): Added + gnus-mime-display-multipart-as-mixed, + gnus-mime-display-multipart-alternative-as-mixed, + gnus-mime-display-multipart-related-as-mixed. + (Mail Source Customization): Clarify `mail-source-directory'. + (Splitting Mail): Mention gnus-group-find-new-groups. + (SpamOracle): Fixed typo. + + * gnus-faq.texi: Untabify. + ([6.3]): nnir.el is in contrib directory. + + * message.texi (News Headers): Clarify how a unique ID is created. + + * gnus.texi (Batching Agents): Fixed typo in example. Reported + by Hiroshi Fujishima . + +2004-09-20 Andre Srinivasan (tiny change) + + * gnus.texi (Group Parameters): Added more on hooks. + +2004-09-20 Florian Weimer + + * gnus.texi (Charsets): Point to relevant section in emacs-mime. + +2004-09-22 Jay Belanger + + * calc.texi (Vectors as Lists): Added a warning that the tutorial + might be hidden during part of the session. + +2004-09-20 Jay Belanger + + * calc.texi (Notations Used in This Manual): Put in an earlier + mention that DEL could be called Backspace. + +2004-09-10 Simon Josefsson + + * gnus.texi (IMAP): Add example. Suggested and partially written + by Steinar Bang . + +2004-09-10 Teodor Zlatanov + + * gnus.texi (IMAP): Add comments about imaps synonym to imap in + netrc syntax. + +2004-09-10 Teodor Zlatanov + + * gnus.texi (Spam ELisp Package Sequence of Events): + Some clarifications. + (Spam ELisp Package Global Variables): More clarifications. + +2004-09-10 Teodor Zlatanov + + * gnus.texi (Spam ELisp Package Filtering of Incoming Mail): + Mention spam-split does not modify incoming mail. + +2004-09-10 Teodor Zlatanov + + * gnus.texi (Spam ELisp Package Sequence of Events): Fix typo. + +2004-09-10 Eli Zaretskii + + * Makefile.in (../info/gnus, gnus.dvi): Depend on gnus-faq.texi. + +2004-09-09 Reiner Steib + + * makefile.w32-in (sieve, pgg): Use $(infodir). + +2004-09-08 Dhruva Krishnamurthy (tiny change) + + * makefile.w32-in: Fix PGG and Sieve entries. + +2004-08-28 Eli Zaretskii + + * faq.texi (Emacs for MS-DOS): Update URLs for the MS-DOS port of + Emacs and related programs. + +2004-08-27 Richard M. Stallman + + * faq.texi: Fix texinfo usage, esp. doublequotes. + (Difference between Emacs and XEmacs): Some clarification. + + * faq.texi (Difference between Emacs and XEmacs): + Explain not to contrast XEmacs with GNU Emacs. + +2004-08-26 Richard M. Stallman + + * faq.texi (Difference between Emacs and XEmacs): Rewrite. + +2004-08-22 David Kastrup + + * reftex.texi (AUCTeX): Update links, section name. + + * faq.texi (Calc): Update availability (included in 22.1). + (AUCTeX): Update availability, information, versions, description. + +2004-08-14 Eli Zaretskii + + * Makefile.in (../info/tramp, tramp.dvi): Depend on trampver.texi. + +2004-08-11 Martin Stjernholm + + * cc-mode.texi: Various updates for CC Mode 5.30.9. + +2004-08-10 Michael Albinus + + Sync with Tramp 2.0.44. + +2004-08-05 Lars Hansen + + * widget.texi (User Interface): Update how to separate the + editable field of an editable-field widget from other widgets. + (Programming Example): Add text after field. + +2004-08-31 Katsumi Yamaoka + + * emacs-mime.texi (Encoding Customization): Add a note to the + mm-content-transfer-encoding-defaults entry. + (rfc2047): Update. + + * gnus.texi (Article Highlighting): Add + gnus-cite-ignore-quoted-from. + (POP before SMTP): New node. + (Posting Styles): Addition. + (Splitting Mail): Add nnmail-split-lowercase-expanded. + (Fancy Mail Splitting): Ditto. + (X-Face): Add gnus-x-face. + +2004-08-30 Reiner Steib + + * emacs-mime.texi, gnus-faq.texi, gnus.texi, message.texi, + * pgg.texi, sieve.texi: Use @copying and @insertcopying. + +2004-08-22 Reiner Steib + + * gnus.texi (Mail Source Specifiers): Describe + `pop3-leave-mail-on-server'. + +2004-08-02 Reiner Steib + + * Makefile.in, makefile.w32-in: Added PGG and Sieve files. + + * pgg.texi, sieve.texi: Import from the v5_10 branch of the Gnus + repository. Change setfilename. + + * emacs-mime.texi, gnus-faq.texi, gnus.texi, message.texi: Ditto. + +2004-07-02 Juri Linkov + + * pcl-cvs.texi (Viewing differences): Add `d r'. + +2004-06-29 Jesper Harder + + * ses.texi, viper.texi, flymake.texi, faq.texi: + * eshell.texi, ediff.texi: Markup fixes. + +2004-06-21 Karl Berry + + * info.texi (Top): Mention that only Emacs has mouse support. + (Getting Started): Mention this in a few other places. + +2004-06-13 Luc Teirlinck + + * autotype.texi (Copyrights, Timestamps): Recommend + `before-save-hook' instead of `write-file-functions'. + +2004-06-13 Lars Hansen + + * dired-x.texi (dired-mark-omitted): Update keybinding. + +2004-06-10 Kim F. Storm + + * pcl-cvs.texi (Viewing differences): Add 'd y'. + +2004-06-05 Lars Hansen + + * dired-x.texi (variable dired-omit-mode): Rename from + dired-omit-files-p. + (function dired-omit-mode): Rename from dired-omit-toggle. + Call dired-omit-mode rather than set dired-omit-files-p. + (dired-mark-omitted): Describe command. + +2004-05-29 Michael Albinus + + Version 2.0.41 of Tramp released. + +2004-05-29 Juanma Barranquero + + * makefile.w32-in (../info/flymake, flymake.dvi): New targets. + (INFO_TARGETS, DVI_TARGETS): Add Flymake. + +2004-05-29 Richard M. Stallman + + * cl.texi (Top): Call this chapter `Introduction'. + (Overview): In TeX, no section heading here. + + * cc-mode.texi: Put commas after i.e. and e.g. Minor cleanups. + +2004-05-29 Eli Zaretskii + + * Makefile.in (../info/flymake, flymake.dvi): New targets. + (INFO_TARGETS, DVI_TARGETS): Add Flymake. + +2004-05-29 Pavel Kobiakov + + * flymake.texi: New file. + +2004-05-28 Simon Josefsson + + * smtpmail.texi (Authentication): Improve STARTTLS discussion. + +2004-05-07 Kai Grossjohann + + Version 2.0.40 of Tramp released. + +2004-04-25 Michael Albinus + + Complete rework, based on review by Karl Berry . + + * tramp.texi (Auto-save and Backup): Explain exploitation of new + variables `tramp-backup-directory-alist' and + `tramp-bkup-backup-directory-info'. + (Overview, Connection types) + (External transfer methods, Default Method) + (Windows setup hints): Remove restriction of password entering + with external methods. + (Auto-save and Backup): Make file name example + (X)Emacs neutral. In case of XEmacs, `bkup-backup-directory-info' + and `auto-save-directory' must be used. + (Frequently Asked Questions): Use "MS Windows NT/2000/XP" (not + only "NT"). Remove doubled entry "What kinds of systems does + @tramp{} work on". + (tramp): Macro removed. + (Obtaining Tramp): Flag removed from title. + (all): "tramp-" and "-" removed from flag names. Flags `tramp' + and `trampver' used properly. Flag `tramp-inst' replaced by + `installchapter'. Installation related text adapted. + +2004-04-28 Masatake YAMATO + + * widget.texi (Programming Example): Remove overlays. + +2004-04-27 Jesper Harder + + * faq.texi, viper.texi, dired-x.texi, autotype.texi: lisp -> Lisp. + +2004-04-23 Juanma Barranquero + + * makefile.w32-in: Add "-*- makefile -*-" mode tag. + +2004-04-05 Jesper Harder + + * info.texi (Info Search): Add info-apropos. + +2004-03-22 Juri Linkov + + * faq.texi: Fix help key bindings. + +2004-03-17 Luc Teirlinck + + * info.texi (Advanced): Replace @unnumberedsubsec by @subheading + (as suggested by Karl Berry). Update information about colored + stars in menus. Add new subheading describing M-n. + +2004-03-12 Richard M. Stallman + + * cl.texi (Top): Rename top node's title. + +2004-03-08 Karl Berry + + * info.texi: \input texinfo.tex instead of just texinfo, to avoid + problems making the texinfo distribution. + +2004-02-29 Simon Josefsson + + * smtpmail.texi (Authentication): Changed the list of supported + authentication mechanisms from CRAM-MD5, PLAIN and LOGIN-MD5 to + CRAM-MD5 and LOGIN, tiny patch from Andreas Voegele + . + +2004-02-29 Juanma Barranquero + + * makefile.w32-in (mostlyclean, clean, maintainer-clean): + Use $(DEL) instead of rm, and ignore exit code. + +2004-02-29 Kai Grossjohann + + Tramp version 2.0.39 released. + +2004-02-29 Michael Albinus + + * tramp.texi (Customizing Completion): Explain new functions + `tramp-parse-shostkeys' and `tramp-parse-sknownhosts'. + (all): Savannah URLs unified to "http://savannah.nongnu.org". + (Top): Refer to Savannah mailing list as the major one. Mention + older mailing lists in HTML mode only. + (Auto-save and Backup): Add auto-save. Based on wording of Kai. + (Frequently Asked Questions): Remote hosts must not be Unix-like + for "smb" method. + (Password caching): New node. + (External transfer methods): Refer to password caching for "smb" + method. + +2004-02-17 Karl Berry + + * info.texi (Help-Int): Mention the new line number feature. + +2004-02-14 Jonathan Yavner + + * ses.texi (Advanced Features): New functionality for + ses-set-header-row (defaults to current row unless C-u used). + (Acknowledgements): Add Stefan Monnier. + +2003-12-29 Kevin Ryde + + * viper.texi (Vi Macros): Fix reference to the Emacs manual. + +2003-11-30 Kai Grossjohann + + Tramp version 2.0.38 released. + + * tramp.texi (Remote shell setup): Warn of environment variables + FRUMPLE if user frumple exists. Suggested by Sven Gabriel + . + (Configuration): Tramp now chooses base64/uuencode + automatically. Update wording accordingly. + (Top): More description for the `Default Method' menu entry. + (Default Method): Use @code, not @var, for Lisp variables. + (Default Method): New subsection `Which method is the right one + for me?' Suggested by Christian Kirsch. + (Configuration): Pointer to new subsection added. + (Default Method): Too many "use" in one sentence. + Rephrase. Reported by Christian Kirsch. + (Filename Syntax): Old `su' example is probably a left-over from + the sm/su method naming. Replace with `ssh', instead. + (External transfer methods, Auto-save and Backup): + Typo fixes. + +2003-11-02 Michael Albinus + + * tramp.texi (all): Harmonize all occurences of @tramp{}. + (Top): Mention japanese manual only if flag `jamanual' is set. + Insert section `Japanese manual' in menu. + +2003-11-26 Thien-Thi Nguyen + + * eshell.texi (Known Problems): Add doc item. + +2003-11-22 Martin Stjernholm + + * cc-mode.texi: Update for CC Mode 5.30. + + Note: Please refrain from doing purely cosmetic changes like + removing trailing whitespace in this manual; it clobbers cvs + merging for no good reason. + +2003-11-02 Jesper Harder (tiny change) + + * man/ediff.texi, man/tramp.texi, man/vip.texi, man/viper.texi: + * man/widget.texi, man/woman.texi: Replace @sc{ascii} and ASCII with + @acronym{ASCII}. + +2003-10-26 Karl Berry + + * info.texi (Info Search): Echo area, not echo are. From Debian + diff. + +2003-10-26 Per Abrahamsen + + * widget.texi (Defining New Widgets): Document new beavior of + :buttons and :children keywords. + +2003-10-22 Miles Bader + + * Makefile.in (info): Move before $(top_srcdir)/info. + +2003-10-17 Thien-Thi Nguyen + + * tramp.texi (Inline methods): Small grammar fix. + (External transfer methods): Likewise. + +2003-10-08 Nick Roberts + + * speedbar.texi: Remove paragraph for GUD that is no longer true. + +2003-10-06 Luc Teirlinck + + * texinfo.tex: Replace `%' in arch tagline by @ignore. + +2003-09-30 Richard M. Stallman + + * dired-x.texi (Miscellaneous Commands): Delete M-g, w, T. + + * widget.texi (User Interface): Fix typos. + + * pcl-cvs.texi, cl.texi, woman.texi, ediff.texi: Fix @strong{Note:}. + +2003-09-29 Thien-Thi Nguyen + + * pcl-cvs.texi (Selected Files): Fix typo. + +2003-09-21 Karl Berry + + * info.texi (] and [ commands): No period at end of section title. + +2003-09-04 Miles Bader + + * Makefile.in (top_srcdir): New variable. + ($(top_srcdir)/info): New rule. + (info): Depend on it. + +2003-09-03 Peter Runestig + + * makefile.w32-in: New file. + +2003-08-26 Per Abrahamsen + + * widget.texi (User Interface): Explain the need of static text + around an editable field. + +2003-08-19 Luc Teirlinck + + * widget.texi (Basic Types): The argument to `:help-echo' can now + be a form that evaluates to a string. + +2003-08-18 Kim F. Storm + + * calc.texi (Queries in Macros): Update xref to keyboard macro query. + +2003-08-16 Richard M. Stallman + + * dired-x.texi (Shell Command Guessing): Explain *. + +2003-08-16 Chunyu Wang (tiny change) + + * pcl-cvs.texi (Log Edit Mode): Fix key binding for + log-edit-insert-changelog. + +2003-08-03 Karl Berry + + * info.texi: Need @contents. + +2003-07-20 Kai Großjohann + + Tramp version 2.0.36 released. + + * tramp.texi (Remote shell setup): Explain about problems with + non-Bourne commands in ~/.profile and ~/.shrc. + +2003-07-07 Luc Teirlinck + + * info.texi (Help-Inv, Help-M, Help-Xref): Update following + renaming of `vis-mode' to `visible-mode'. + +2003-07-04 Luc Teirlinck + + * info.texi (Top, Help-Small-Screen): Remove accidentally added + next, prev and up pointers. + +2003-07-02 Luc Teirlinck + + * info.texi (Help): Mention existence of Emacs and stand-alone + Info at the very beginning of the tutorial. + (Help-Inv): New node. + (Help-]): New node. + (Help-M): Systematically point out the differences between default + Emacs and stand-alone versions. Delete second menu. + (Help-Xref): Systematically point out the differences between + default Emacs and stand-alone versions. + (Help-Int): Change `l' example. + (Expert Info): Fix typos. + (Emacs Info Variables): Mention `Info-hide-note-references' and + new default for `Info-scroll-prefer-subnodes'. + +2003-06-17 Kai Großjohann + + Version 2.0.35 of Tramp released. + + * tramp.texi: From Michael Albinus : + (Inline methods): Add methods `remsh' and `plink1'. + (External transfer methods): Add method `remcp'. + (Multi-hop Methods): Add method `remsh'. + Small patch from Adrian Aichner : + Fix minor typos. + (Concept Index): Added to make manual searchable via + `Info-index'. + (Version Control): Add cindex entry. + +2003-05-24 Kai Großjohann + + * trampver.texi: Version 2.0.34 released. + +2003-05-03 Glenn Morris + + * faq.texi: Improve previous changes. + +2003-05-02 Glenn Morris + + * faq.texi: Update copyright and maintenance details. + Update some package URLs, versions, and maintainers. + Remove many references to the Emacs Lisp Archive. + +2003-04-23 Simon Josefsson + + * smtpmail.texi: Fix license (the invariant sections mentioned has + never been part of the smtp manual). Align info dir entry with + other emacs packages. + +2003-04-08 Michael Albinus + + * tramp.texi: Version 2.0.33 released. + Remove installation chapter. Remove XEmacs specifics. + +2003-03-29 Richard M. Stallman + + * tramp.texi (Top): Undo the previous renaming. + (emacs-other-name, emacs-other-dir, emacs-other-file-name): Delete. + +2003-03-29 Kai Großjohann + + * Makefile.in (../info/tramp): Compile Emacs, instead of XEmacs, + version of manual. + + * tramp.texi (Auto-save and Backup): New node. + +2003-03-29 Michael Albinus + + * tramp.texi (Top): Include trampver.texi. Rename "Emacs" to "GNU + Emacs" in order to have better differentiation to "XEmacs". + `emacs-other-name', `emacs-other-dir' and `emacs-other-file-name' + are new macros in order to point to the other Emacs flavor where + appropriate. In info case, point to node `Installation' in order + to explain how to generate the other way. In html case, make a + link to the other html file. + (Obtaining TRAMP): Added a paragraph saying to perform `autoconf' + after CVS checkout/update. + (Installation): Completely rewritten. + (Installation parameters, Load paths): New sections under + `Installation'. + +2003-02-28 Kai Großjohann + + * tramp.texi: Version 2.0.30 released. + Replace word "path" with "localname" where used as a component of + a Tramp file name. + +2003-02-28 Michael Albinus + + * tramp.texi (Frequently Asked Questions): `tramp-chunksize' + introduced. + (Installation): Explain what to do if files from the tramp/contrib + directory are needed. + +2003-02-23 Alex Schroeder + + * smtpmail.texi (How Mail Works): New. + +2003-02-22 Alex Schroeder + + * smtpmail.texi: New file. + + * Makefile.in: Build SMTP manual. + +2003-02-05 Kai Großjohann + + * tramp.texi: Version 2.0.29 released. + (Installation): In Emacs, use M-x texinfo-format-buffer RET, not + M-x makeinfo-buffer RET. Reported by gebser@ameritech.net. + +2003-02-01 Michael Albinus + + * tramp.texi (Frequently Asked Questions): Explain a workaround if + another package loads accidently Ange-FTP. + +2003-01-24 Michael Albinus + + * tramp.texi (Customizing Completion): Add function + `tramp-parse-sconfig'. Change example of + `tramp-set-completion-function', because parsing of ssh config + files looks more natural. + +2003-01-15 ShengHuo ZHU + + * gnus.texi: Do not use `path' in several locations. + +2002-12-26 Kai Großjohann + + * tramp.texi (External transfer methods): New method `smb'. From + Michael Albinus. + +2002-11-05 Karl Berry + + * info.texi (Info-fontify): Reorder face list to avoid bad line + breaks. + +2002-10-06 Kai Großjohann + + * tramp.texi: Move @copying to standard place. Use + @insertcopying. + +2002-10-02 Karl Berry + + * (ada-mode.texi autotype.texi calc.texi cc-mode.texi cl.texi + dired-x.texi ebrowse.texi ediff.texi emacs-mime.texi + eshell.texi eudc.texi faq.texi forms.texi idlwave.texi info.texi + message.texi mh-e.texi pcl-cvs.texi reftex.texi sc.texi ses.texi + speedbar.texi vip.texi viper.texi widget.texi woman.texi): + Per rms, update all manuals to use @copying instead of @ifinfo. + Also use @ifnottex instead of @ifinfo around the top node, where + needed for the sake of the HTML output. + (The Gnus manual is not fixed since it's not clear to me how it + works; and the Tramp manual already uses @copying, although in an + unusual way. All others were changed.) + +2002-09-10 Jonathan Yavner + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add SES. + (../info/ses, ses.dvi): New targets. + * ses.texi: New file. + +2002-09-06 Pavel Janík + + * texinfo.tex: Update to texinfo 4.2. + +2002-08-27 Carsten Dominik + + * reftex.texi: Update to RefTeX 4.19. + +2002-06-17 Kai Großjohann + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add Tramp. + (../info/tramp, tramp.dvi): New targets. + +2002-01-04 Eli Zaretskii + + * Makefile.in (DVI_TARGETS): Add calc.dvi. + (calc.dvi): Uncomment. + +2001-11-07 Eli Zaretskii + + * Makefile.in (INFO_TARGETS): Add ../info/calc. + (../info/calc): New target. + +2001-10-20 Gerd Moellmann + + * (Version 21.1 released.) + +2001-10-05 Gerd Moellmann + + * Branch for 21.1. + +2001-04-14 Eli Zaretskii + + * Makefile.in (../info/info): Use an explicit -o switch to + makeinfo. + +2001-03-05 Gerd Moellmann + + * Makefile.in (mostlyclean, maintainer-clean): Delete more files. + +2000-12-20 Eli Zaretskii + + * Makefile.in (../info/idlwave): Use --no-split. + +2000-12-14 Dave Love + + * Makefile.in (mostlyclean): Remove gnustmp.* + (gnus.dvi): Change rule to remove @latex stuff. + +2000-10-19 Eric M. Ludlam + + * Makefile.in (Speedbar): Add build targets for speedbar.texi. + +2000-10-13 John Wiegley + + * Makefile.in: Add build targets for eshell.texi. + +2000-09-25 Gerd Moellmann + + * Makefile.in: Remove/comment speedbar stuff. + +2000-09-22 Dave Love + + * Makefile.in: Add emacs-mime. + +2000-08-08 Eli Zaretskii + + * Makefile.in (INFO_TARGETS): Add ../info/woman. + (DVI_TARGETS): Add woman.dvi. + (../info/woman, woman.dvi): New targets. + +2000-05-31 Stefan Monnier + + * .cvsignore (*.tmp): New entry. Seems to be used for @macro. + + * pcl-cvs.texi: New file. + * Makefile.in (INFO_TARGETS, DVI_TARGETS: Add pcl-cvs. + (../info/pcl-cvs, pcl-cvs.dvi): New targets. + +2000-05-11 Gerd Moellmann + + * Makefile.in (INFO_TARGETS): Add info/ebrowse. + (../info/ebrowse, ebrowse.dvi): New targets. + +2000-01-13 Gerd Moellmann + + * Makefile.in (INFO_TARGETS): Add eudc. + (DVI_TARGETS): Add eudc.dvi. + (../info/eudc, eudc.dvi): New targets. + +2000-01-05 Eli Zaretskii + + * Makefile.in (INFO_TARGETS): Rename emacs-faq to efaq (for + compatibility with 8+3 filesystems). + (../info/efaq): Rename from emacs-faq. + +2000-01-03 Eli Zaretskii + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add idlwave. + (../info/idlwave, idlwave.dvi): New targets. + +1999-10-23 Dave Love + + * Makefile.in: Use autotype.texi. + +1999-10-12 Stefan Monnier + + * Makefile.in (faq): Use ../info/emacs-faq.info (as specified in the + faq.texi file) rather than ../info/faq. + +1999-10-07 Gerd Moellmann + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add ada-mode. + (../info/ada-mode, ada-mode.dvi): New targets. + +1999-09-01 Dave Love + + * Makefile.in: Add faq. + +1999-07-12 Richard Stallman + + * Version 20.4 released. + +1998-08-19 Richard Stallman + + * Version 20.3 released. + +1998-04-06 Andreas Schwab + + * Makefile.in (ENVADD): Enviroment vars to pass to texi2dvi. Use + it in dvi targets. + (../etc/GNU): Change to $(srcdir) first. + +1998-03-11 Carsten Dominik + + * reftex.texi: Update for RefTeX version 3.22. + +1998-02-08 Richard Stallman + + * Makefile.in (reftex.dvi, ../info/reftex): New targets. + (INFO_TARGETS, DVI_TARGETS): Add the new targets. + +1997-09-23 Paul Eggert + + * Makefile.in: Merge changes mistakenly made to `Makefile'. + (../info/viper, viper.dvi): Remove dependency on viper-cmd.texi. + +1997-09-19 Richard Stallman + + * Version 20.2 released. + +1997-09-15 Richard Stallman + + * Version 20.1 released. + +1997-07-10 Richard Stallman + + * Makefile (../info/viper, viper.dvi): Delete viper-cmd.texi dep. + +1996-08-11 Richard Stallman + + * Version 19.33 released. + +1996-07-31 Richard Stallman + + * Version 19.32 released. + +1996-06-27 Lars Magne Ingebrigtsen + + * Makefile.in: Add rules for the Message manual. + +1996-06-26 Lars Magne Ingebrigtsen + + * gnus.texi: New version. + + * message.texi: New manual. + +1996-06-20 Richard Stallman + + * Makefile.in (All info targets): cd $(srcdir) to do the work. + +1996-06-19 Richard Stallman + + * Makefile.in (All info targets): Specify $(srcdir) in input files. + Specify -I option. + (All dvi targets): Set the TEXINPUTS variable. + +1996-05-25 Karl Heuer + + * Version 19.31 released. + +1996-01-07 Richard Stallman + + * Makefile.in (../info/ccmode): Rename from ../info/cc-mode. + (INFO_TARGETS): Use new name. This avoids name conflict on MSDOS. + +1995-11-29 Richard Stallman + + * Makefile.in (../info/cc-mode, cc-mode.dvi): New targets. + (INFO_TARGETS): Add ../info/cc-mode. + (DVI_TARGETS): Add cc-mode.dvi. + +1996-05-25 Karl Heuer + + * Version 19.31 released. + +1995-11-24 Richard Stallman + + * Version 19.30 released. + +1995-11-04 Lars Magne Ingebrigtsen + + * gnus.texi: New file. + +1995-11-04 Erik Naggum + + * gnus.texi: File deleted. + +1995-11-02 Stephen Gildea + + * mh-e.texi: "Function Index" -> "Command Index" to work with + Emacs 19.30 C-h C-k support of separately-documented commands. + +1995-06-26 Richard Stallman + + * Makefile.in (../info/ediff, ediff.dvi): New targets. + (INFO_TARGETS, DVI_TARGETS): Add those new targets. + +1995-04-24 Richard Stallman + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add viper targets. + (../info/viper, viper.dvi): New targets. + +1995-04-20 Kevin Rodgers + + * dired-x.texi (Installation): Change the example to set + buffer-local variables like dired-omit-files-p in + dired-mode-hook. + +1995-04-17 Richard Stallman + + * Makefile.in (INFO_TARGETS, DVI_TARGETS): Add mh-e targets. + (../info/mh-e, mh-e.dvi): New targets. + +1995-02-07 Richard Stallman + + * Makefile.in (maintainer-clean): Rename from realclean. + +1994-11-23 Richard Stallman + + * Makefile.in: New file. + * Makefile: File deleted. + +1994-11-19 Richard Stallman + + * Makefile (TEXINDEX_OBJS): Variable deleted. + (texindex, texindex.o, getopt.o): Rules deleted. + All deps on texindex deleted. + (distclean): Don't delete texindex. + (mostlyclean): Don't delete *.o. + * texindex.c, getopt.c: Files deleted. + +1994-09-07 Richard Stallman + + * Version 19.26 released. + +1994-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.25 released. + +1994-05-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.24 released. + +1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.23 released. + +1994-04-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile: Delete spurious tab. + +1994-02-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (.SUFFIXES): New rule. + +1994-01-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (dired-x.dvi, ../info/dired-x): New targets. + (INFO_TARGETS, DVI_TARGETS): Add the new targets. + +1994-01-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (../info/sc): Rename from sc.info. + (../info/cl): Likewise. + (INFO_TARGETS): Use new names. + +1993-12-04 Richard Stallman (rms@srarc2) + + * getopt.c: New file. + * Makefile (TEXINDEX_OBJS): Use getopt.o in this dir, not ../lib-src. + (getopt.o): New rule. + (dvi): Don't depend on texindex. + (cl.dvi, forms.dvi, vip.dvi, gnus.dvi, sc.dvi): + Depend on texindex. + +1993-12-03 Richard Stallman (rms@srarc2) + + * Makefile (../info/sc.info): Rename from ../info/sc. + (TEXI2DVI): New variable. + (cl.dvi forms.dvi, sc.dvi, vip.dvi, gnus.dvi, info.dvi): + Add explicit commands. + (TEXINDEX_OBJS): Delete duplicate getopt.o. + +1993-11-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.22 released. + +1993-11-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (TEXINDEX_OBJS): Delete spurious period. + +1993-11-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.21 released. + +1993-11-15 Paul Eggert (eggert@twinsun.com) + + * man/Makefile (../info/cl.info): Rename from ../info/cl. + +1993-11-15 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (../etc/GNU): New target. + (EMACSSOURCES): Add gnu1.texi. + +1993-11-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile (realclean): Don't delete the Info files. + +1993-10-25 Brian Fox (bfox@albert.gnu.ai.mit.edu) + + * forms.texi: Fix forms.texi so that it will format correctly. + Add missing `@end iftex', fix bad reference. + + * info.texi, info-stn.texi: New files implement texinfo version of + `info' file. + +1993-10-20 Brian Fox (bfox@ai.mit.edu) + + * Makefile: Fix targets for texindex, new info.texi files. + * info-stnd.texi: New file implements info for standalone info + reader. + * info.texi: Update to include recent changes to "../info/info". + New source file for ../info/info; includes info-stnd.texi. + + * texindex.c: Include "../src/config.h" if building in emacs. + + * Makefile: Change all files to FILENAME.texi, force all targets + to be FILENAME, not FILENAME.info. This changes sc.texinfo, + vip.texinfo, forms.texinfo, cl.texinfo. + Add target to build texindex.c, defining `emacs'. + + * forms.texi: Install new file to match version 2.3 of forms.el. + +1993-08-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.19 released. + +1993-08-10 Simon Leinen (simon@lia.di.epfl.ch) + + * sc.texinfo: Fix info file name. + + * Makefile (info): Add gnus and sc. + (dvi): Add gnus.dvi and sc.dvi. + (../info/sc, sc.dvi): New targets. + +1993-08-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.18 released. + +1993-07-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Makefile: Fix source file names of the separate manuals. + (gnus.dvi, ../info/gnus): New targets. + +1993-07-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * Version 19.17 released. + +1993-07-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * split-man: Fix typos in last change. + +1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.16 released. + +1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * version 19.15 released. + +1993-06-18 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Makefile (distclean): It's rm, not rf. + +1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.14 released. + +1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Makefile: New file. + +1993-06-08 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.13 released. + +1993-05-27 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.9 released. + +1993-05-25 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * Version 19.8 released. + +1993-05-22 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * Version 19.7 released. + +1990-08-30 David Lawrence (tale@pogo.ai.mit.edu) + + * gnus.texinfo: New file. Removed installation instructions. + +1990-05-25 Richard Stallman (rms@sugar-bombs.ai.mit.edu) + + * texindex.tex: If USG, include sys/types.h and sys/fcntl.h. + +1989-01-17 Robert J. Chassell (bob@rice-chex.ai.mit.edu) + + * texinfo.tex: Change spelling of `\sc' font to `\smallcaps' and + then define `\sc' as the command for smallcaps in Texinfo. This + means that the @sc command will produce small caps. bfox has + made the corresponding change to makeinfo and texinfm.el. + +1988-08-16 Robert J. Chassell (bob@frosted-flakes.ai.mit.edu) + + * vip.texinfo: Remove menu entry Adding Lisp Code in node + Customization since the menu entry did not point to anything. + Also add an @finalout command to remove overfull hboxes from the + printed output. + + * cl.texinfo: Add @bye, \input line and @settitle to file. + This file is clearly intended to be a chapter of some other work, + but the other work does not yet exist. + +1988-07-25 Robert J. Chassell (bob@frosted-flakes.ai.mit.edu) + + * texinfo.texinfo: Three typos corrected. + +;; Local Variables: +;; coding: utf-8 +;; fill-column: 79 +;; add-log-time-zone-rule: t +;; End: + + Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, + 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + + This file is part of GNU Emacs. + + GNU Emacs is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + GNU Emacs is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNU Emacs; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +;; arch-tag: 08b2903e-900c-4c72-a4a9-e76416a80803 diff --cc doc/misc/cl.texi index c16821ba3c,0000000000..7c6cd1d0c4 mode 100644,000000..100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi @@@ -1,5338 -1,0 +1,5339 @@@ +\input texinfo @c -*-texinfo-*- +@setfilename ../../info/cl +@settitle Common Lisp Extensions + +@copying +This file documents the GNU Emacs Common Lisp emulation package. + +Copyright @copyright{} 1993, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +Free Software Foundation, Inc. + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with the Front-Cover texts being ``A GNU +Manual'', and with the Back-Cover Texts as in (a) below. A copy of the +license is included in the section entitled ``GNU Free Documentation +License'' in the Emacs manual. + +(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify +this GNU Manual, like GNU software. Copies published by the Free +Software Foundation raise funds for GNU development.'' + +This document is part of a collection distributed under the GNU Free +Documentation License. If you want to distribute this document +separately from the collection, you can do so by adding a copy of the +license to the document, as described in section 6 of the license. +@end quotation +@end copying + +@dircategory Emacs +@direntry +* CL: (cl). Partial Common Lisp support for Emacs Lisp. +@end direntry + +@finalout + +@titlepage +@sp 6 +@center @titlefont{Common Lisp Extensions} +@sp 4 +@center For GNU Emacs Lisp +@sp 1 +@center Version 2.02 +@sp 5 +@center Dave Gillespie +@center daveg@@synaptics.com +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@node Top, Overview, (dir), (dir) +@chapter Introduction + +@noindent +This document describes a set of Emacs Lisp facilities borrowed from +Common Lisp. All the facilities are described here in detail. While +this document does not assume any prior knowledge of Common Lisp, it +does assume a basic familiarity with Emacs Lisp. + +@menu +* Overview:: Installation, usage, etc. +* Program Structure:: Arglists, `eval-when', `defalias' +* Predicates:: `typep' and `equalp' +* Control Structure:: `setf', `do', `loop', etc. +* Macros:: Destructuring, `define-compiler-macro' +* Declarations:: `proclaim', `declare', etc. +* Symbols:: Property lists, `gensym' +* Numbers:: Predicates, functions, random numbers +* Sequences:: Mapping, functions, searching, sorting +* Lists:: `caddr', `sublis', `member*', `assoc*', etc. +* Structures:: `defstruct' +* Assertions:: `check-type', `assert', `ignore-errors'. + +* Efficiency Concerns:: Hints and techniques +* Common Lisp Compatibility:: All known differences with Steele +* Old CL Compatibility:: All known differences with old cl.el +* Porting Common Lisp:: Hints for porting Common Lisp code + +* GNU Free Documentation License:: The license for this documentation. +* Function Index:: +* Variable Index:: +@end menu + +@node Overview, Program Structure, Top, Top +@ifnottex +@chapter Overview +@end ifnottex + +@noindent +Common Lisp is a huge language, and Common Lisp systems tend to be +massive and extremely complex. Emacs Lisp, by contrast, is rather +minimalist in the choice of Lisp features it offers the programmer. +As Emacs Lisp programmers have grown in number, and the applications +they write have grown more ambitious, it has become clear that Emacs +Lisp could benefit from many of the conveniences of Common Lisp. + +The @dfn{CL} package adds a number of Common Lisp functions and +control structures to Emacs Lisp. While not a 100% complete +implementation of Common Lisp, @dfn{CL} adds enough functionality +to make Emacs Lisp programming significantly more convenient. + +@strong{Please note:} the @dfn{CL} functions are not standard parts of +the Emacs Lisp name space, so it is legitimate for users to define +them with other, conflicting meanings. To avoid conflicting with +those user activities, we have a policy that packages installed in +Emacs must not load @dfn{CL} at run time. (It is ok for them to load +@dfn{CL} at compile time only, with @code{eval-when-compile}, and use +the macros it provides.) If you are writing packages that you plan to +distribute and invite widespread use for, you might want to observe +the same rule. + +Some Common Lisp features have been omitted from this package +for various reasons: + +@itemize @bullet +@item +Some features are too complex or bulky relative to their benefit +to Emacs Lisp programmers. CLOS and Common Lisp streams are fine +examples of this group. + +@item +Other features cannot be implemented without modification to the +Emacs Lisp interpreter itself, such as multiple return values, +lexical scoping, case-insensitive symbols, and complex numbers. +The @dfn{CL} package generally makes no attempt to emulate these +features. + +@item +Some features conflict with existing things in Emacs Lisp. For +example, Emacs' @code{assoc} function is incompatible with the +Common Lisp @code{assoc}. In such cases, this package usually +adds the suffix @samp{*} to the function name of the Common +Lisp version of the function (e.g., @code{assoc*}). +@end itemize + +The package described here was written by Dave Gillespie, +@file{daveg@@synaptics.com}. It is a total rewrite of the original +1986 @file{cl.el} package by Cesar Quiroz. Most features of the +Quiroz package have been retained; any incompatibilities are +noted in the descriptions below. Care has been taken in this +version to ensure that each function is defined efficiently, +concisely, and with minimal impact on the rest of the Emacs +environment. + +@menu +* Usage:: How to use the CL package +* Organization:: The package's five component files +* Installation:: Compiling and installing CL +* Naming Conventions:: Notes on CL function names +@end menu + +@node Usage, Organization, Overview, Overview +@section Usage + +@noindent +Lisp code that uses features from the @dfn{CL} package should +include at the beginning: + +@example +(require 'cl) +@end example + +@noindent +If you want to ensure that the new (Gillespie) version of @dfn{CL} +is the one that is present, add an additional @code{(require 'cl-19)} +call: + +@example +(require 'cl) +(require 'cl-19) +@end example + +@noindent +The second call will fail (with ``@file{cl-19.el} not found'') if +the old @file{cl.el} package was in use. + +It is safe to arrange to load @dfn{CL} at all times, e.g., +in your @file{.emacs} file. But it's a good idea, for portability, +to @code{(require 'cl)} in your code even if you do this. + +@node Organization, Installation, Usage, Overview +@section Organization + +@noindent +The Common Lisp package is organized into four files: + +@table @file +@item cl.el +This is the ``main'' file, which contains basic functions +and information about the package. This file is relatively +compact---about 700 lines. + +@item cl-extra.el +This file contains the larger, more complex or unusual functions. +It is kept separate so that packages which only want to use Common +Lisp fundamentals like the @code{cadr} function won't need to pay +the overhead of loading the more advanced functions. + +@item cl-seq.el +This file contains most of the advanced functions for operating +on sequences or lists, such as @code{delete-if} and @code{assoc*}. + +@item cl-macs.el +This file contains the features of the packages which are macros +instead of functions. Macros expand when the caller is compiled, +not when it is run, so the macros generally only need to be +present when the byte-compiler is running (or when the macros are +used in uncompiled code such as a @file{.emacs} file). Most of +the macros of this package are isolated in @file{cl-macs.el} so +that they won't take up memory unless you are compiling. +@end table + +The file @file{cl.el} includes all necessary @code{autoload} +commands for the functions and macros in the other three files. +All you have to do is @code{(require 'cl)}, and @file{cl.el} +will take care of pulling in the other files when they are +needed. + +There is another file, @file{cl-compat.el}, which defines some +routines from the older @file{cl.el} package that are no longer +present in the new package. This includes internal routines +like @code{setelt} and @code{zip-lists}, deprecated features +like @code{defkeyword}, and an emulation of the old-style +multiple-values feature. @xref{Old CL Compatibility}. + +@node Installation, Naming Conventions, Organization, Overview +@section Installation + +@noindent +Installation of the @dfn{CL} package is simple: Just put the +byte-compiled files @file{cl.elc}, @file{cl-extra.elc}, +@file{cl-seq.elc}, @file{cl-macs.elc}, and @file{cl-compat.elc} +into a directory on your @code{load-path}. + +There are no special requirements to compile this package: +The files do not have to be loaded before they are compiled, +nor do they need to be compiled in any particular order. + +You may choose to put the files into your main @file{lisp/} +directory, replacing the original @file{cl.el} file there. Or, +you could put them into a directory that comes before @file{lisp/} +on your @code{load-path} so that the old @file{cl.el} is +effectively hidden. + +Also, format the @file{cl.texinfo} file and put the resulting +Info files in the @file{info/} directory or another suitable place. + +You may instead wish to leave this package's components all in +their own directory, and then add this directory to your +@code{load-path} and @code{Info-directory-list}. +Add the directory to the front of the list so the old @dfn{CL} +package and its documentation are hidden. + +@node Naming Conventions, , Installation, Overview +@section Naming Conventions + +@noindent +Except where noted, all functions defined by this package have the +same names and calling conventions as their Common Lisp counterparts. + +Following is a complete list of functions whose names were changed +from Common Lisp, usually to avoid conflicts with Emacs. In each +case, a @samp{*} has been appended to the Common Lisp name to obtain +the Emacs name: + +@example +defun* defsubst* defmacro* function* +member* assoc* rassoc* get* +remove* delete* mapcar* sort* +floor* ceiling* truncate* round* +mod* rem* random* +@end example + +Internal function and variable names in the package are prefixed +by @code{cl-}. Here is a complete list of functions @emph{not} +prefixed by @code{cl-} which were not taken from Common Lisp: + +@example +floatp-safe lexical-let lexical-let* +callf callf2 letf letf* +defsubst* +@end example + +The following simple functions and macros are defined in @file{cl.el}; +they do not cause other components like @file{cl-extra} to be loaded. + +@example +floatp-safe endp +evenp oddp plusp minusp +caaar .. cddddr +list* ldiff rest first .. tenth +copy-list subst mapcar* [2] +adjoin [3] acons pairlis pop [4] +push [4] pushnew [3,4] incf [4] decf [4] +proclaim declaim +@end example + +@noindent +[2] Only for one sequence argument or two list arguments. + +@noindent +[3] Only if @code{:test} is @code{eq}, @code{equal}, or unspecified, +and @code{:key} is not used. + +@noindent +[4] Only when @var{place} is a plain variable name. + +@iftex +@chapno=4 +@end iftex + +@node Program Structure, Predicates, Overview, Top +@chapter Program Structure + +@noindent +This section describes features of the @dfn{CL} package which have to +do with programs as a whole: advanced argument lists for functions, +and the @code{eval-when} construct. + +@menu +* Argument Lists:: `&key', `&aux', `defun*', `defmacro*'. +* Time of Evaluation:: The `eval-when' construct. +@end menu + +@iftex +@secno=1 +@end iftex + +@node Argument Lists, Time of Evaluation, Program Structure, Program Structure +@section Argument Lists + +@noindent +Emacs Lisp's notation for argument lists of functions is a subset of +the Common Lisp notation. As well as the familiar @code{&optional} +and @code{&rest} markers, Common Lisp allows you to specify default +values for optional arguments, and it provides the additional markers +@code{&key} and @code{&aux}. + +Since argument parsing is built-in to Emacs, there is no way for +this package to implement Common Lisp argument lists seamlessly. +Instead, this package defines alternates for several Lisp forms +which you must use if you need Common Lisp argument lists. + +@defspec defun* name arglist body... +This form is identical to the regular @code{defun} form, except +that @var{arglist} is allowed to be a full Common Lisp argument +list. Also, the function body is enclosed in an implicit block +called @var{name}; @pxref{Blocks and Exits}. +@end defspec + +@defspec defsubst* name arglist body... +This is just like @code{defun*}, except that the function that +is defined is automatically proclaimed @code{inline}, i.e., +calls to it may be expanded into in-line code by the byte compiler. +This is analogous to the @code{defsubst} form; +@code{defsubst*} uses a different method (compiler macros) which +works in all version of Emacs, and also generates somewhat more +efficient inline expansions. In particular, @code{defsubst*} +arranges for the processing of keyword arguments, default values, +etc., to be done at compile-time whenever possible. +@end defspec + +@defspec defmacro* name arglist body... +This is identical to the regular @code{defmacro} form, +except that @var{arglist} is allowed to be a full Common Lisp +argument list. The @code{&environment} keyword is supported as +described in Steele. The @code{&whole} keyword is supported only +within destructured lists (see below); top-level @code{&whole} +cannot be implemented with the current Emacs Lisp interpreter. +The macro expander body is enclosed in an implicit block called +@var{name}. +@end defspec + +@defspec function* symbol-or-lambda +This is identical to the regular @code{function} form, +except that if the argument is a @code{lambda} form then that +form may use a full Common Lisp argument list. +@end defspec + +Also, all forms (such as @code{defsetf} and @code{flet}) defined +in this package that include @var{arglist}s in their syntax allow +full Common Lisp argument lists. + +Note that it is @emph{not} necessary to use @code{defun*} in +order to have access to most @dfn{CL} features in your function. +These features are always present; @code{defun*}'s only +difference from @code{defun} is its more flexible argument +lists and its implicit block. + +The full form of a Common Lisp argument list is + +@example +(@var{var}... + &optional (@var{var} @var{initform} @var{svar})... + &rest @var{var} + &key ((@var{keyword} @var{var}) @var{initform} @var{svar})... + &aux (@var{var} @var{initform})...) +@end example + +Each of the five argument list sections is optional. The @var{svar}, +@var{initform}, and @var{keyword} parts are optional; if they are +omitted, then @samp{(@var{var})} may be written simply @samp{@var{var}}. + +The first section consists of zero or more @dfn{required} arguments. +These arguments must always be specified in a call to the function; +there is no difference between Emacs Lisp and Common Lisp as far as +required arguments are concerned. + +The second section consists of @dfn{optional} arguments. These +arguments may be specified in the function call; if they are not, +@var{initform} specifies the default value used for the argument. +(No @var{initform} means to use @code{nil} as the default.) The +@var{initform} is evaluated with the bindings for the preceding +arguments already established; @code{(a &optional (b (1+ a)))} +matches one or two arguments, with the second argument defaulting +to one plus the first argument. If the @var{svar} is specified, +it is an auxiliary variable which is bound to @code{t} if the optional +argument was specified, or to @code{nil} if the argument was omitted. +If you don't use an @var{svar}, then there will be no way for your +function to tell whether it was called with no argument, or with +the default value passed explicitly as an argument. + +The third section consists of a single @dfn{rest} argument. If +more arguments were passed to the function than are accounted for +by the required and optional arguments, those extra arguments are +collected into a list and bound to the ``rest'' argument variable. +Common Lisp's @code{&rest} is equivalent to that of Emacs Lisp. +Common Lisp accepts @code{&body} as a synonym for @code{&rest} in +macro contexts; this package accepts it all the time. + +The fourth section consists of @dfn{keyword} arguments. These +are optional arguments which are specified by name rather than +positionally in the argument list. For example, + +@example +(defun* foo (a &optional b &key c d (e 17))) +@end example + +@noindent +defines a function which may be called with one, two, or more +arguments. The first two arguments are bound to @code{a} and +@code{b} in the usual way. The remaining arguments must be +pairs of the form @code{:c}, @code{:d}, or @code{:e} followed +by the value to be bound to the corresponding argument variable. +(Symbols whose names begin with a colon are called @dfn{keywords}, +and they are self-quoting in the same way as @code{nil} and +@code{t}.) + +For example, the call @code{(foo 1 2 :d 3 :c 4)} sets the five +arguments to 1, 2, 4, 3, and 17, respectively. If the same keyword +appears more than once in the function call, the first occurrence +takes precedence over the later ones. Note that it is not possible +to specify keyword arguments without specifying the optional +argument @code{b} as well, since @code{(foo 1 :c 2)} would bind +@code{b} to the keyword @code{:c}, then signal an error because +@code{2} is not a valid keyword. + +If a @var{keyword} symbol is explicitly specified in the argument +list as shown in the above diagram, then that keyword will be +used instead of just the variable name prefixed with a colon. +You can specify a @var{keyword} symbol which does not begin with +a colon at all, but such symbols will not be self-quoting; you +will have to quote them explicitly with an apostrophe in the +function call. + +Ordinarily it is an error to pass an unrecognized keyword to +a function, e.g., @code{(foo 1 2 :c 3 :goober 4)}. You can ask +Lisp to ignore unrecognized keywords, either by adding the +marker @code{&allow-other-keys} after the keyword section +of the argument list, or by specifying an @code{:allow-other-keys} +argument in the call whose value is non-@code{nil}. If the +function uses both @code{&rest} and @code{&key} at the same time, +the ``rest'' argument is bound to the keyword list as it appears +in the call. For example: + +@smallexample +(defun* find-thing (thing &rest rest &key need &allow-other-keys) + (or (apply 'member* thing thing-list :allow-other-keys t rest) + (if need (error "Thing not found")))) +@end smallexample + +@noindent +This function takes a @code{:need} keyword argument, but also +accepts other keyword arguments which are passed on to the +@code{member*} function. @code{allow-other-keys} is used to +keep both @code{find-thing} and @code{member*} from complaining +about each others' keywords in the arguments. + +The fifth section of the argument list consists of @dfn{auxiliary +variables}. These are not really arguments at all, but simply +variables which are bound to @code{nil} or to the specified +@var{initforms} during execution of the function. There is no +difference between the following two functions, except for a +matter of stylistic taste: + +@example +(defun* foo (a b &aux (c (+ a b)) d) + @var{body}) + +(defun* foo (a b) + (let ((c (+ a b)) d) + @var{body})) +@end example + +Argument lists support @dfn{destructuring}. In Common Lisp, +destructuring is only allowed with @code{defmacro}; this package +allows it with @code{defun*} and other argument lists as well. +In destructuring, any argument variable (@var{var} in the above +diagram) can be replaced by a list of variables, or more generally, +a recursive argument list. The corresponding argument value must +be a list whose elements match this recursive argument list. +For example: + +@example +(defmacro* dolist ((var listform &optional resultform) + &rest body) + ...) +@end example + +This says that the first argument of @code{dolist} must be a list +of two or three items; if there are other arguments as well as this +list, they are stored in @code{body}. All features allowed in +regular argument lists are allowed in these recursive argument lists. +In addition, the clause @samp{&whole @var{var}} is allowed at the +front of a recursive argument list. It binds @var{var} to the +whole list being matched; thus @code{(&whole all a b)} matches +a list of two things, with @code{a} bound to the first thing, +@code{b} bound to the second thing, and @code{all} bound to the +list itself. (Common Lisp allows @code{&whole} in top-level +@code{defmacro} argument lists as well, but Emacs Lisp does not +support this usage.) + +One last feature of destructuring is that the argument list may be +dotted, so that the argument list @code{(a b . c)} is functionally +equivalent to @code{(a b &rest c)}. + +If the optimization quality @code{safety} is set to 0 +(@pxref{Declarations}), error checking for wrong number of +arguments and invalid keyword arguments is disabled. By default, +argument lists are rigorously checked. + +@node Time of Evaluation, , Argument Lists, Program Structure +@section Time of Evaluation + +@noindent +Normally, the byte-compiler does not actually execute the forms in +a file it compiles. For example, if a file contains @code{(setq foo t)}, +the act of compiling it will not actually set @code{foo} to @code{t}. +This is true even if the @code{setq} was a top-level form (i.e., not +enclosed in a @code{defun} or other form). Sometimes, though, you +would like to have certain top-level forms evaluated at compile-time. +For example, the compiler effectively evaluates @code{defmacro} forms +at compile-time so that later parts of the file can refer to the +macros that are defined. + +@defspec eval-when (situations...) forms... +This form controls when the body @var{forms} are evaluated. +The @var{situations} list may contain any set of the symbols +@code{compile}, @code{load}, and @code{eval} (or their long-winded +ANSI equivalents, @code{:compile-toplevel}, @code{:load-toplevel}, +and @code{:execute}). + +The @code{eval-when} form is handled differently depending on +whether or not it is being compiled as a top-level form. +Specifically, it gets special treatment if it is being compiled +by a command such as @code{byte-compile-file} which compiles files +or buffers of code, and it appears either literally at the +top level of the file or inside a top-level @code{progn}. + +For compiled top-level @code{eval-when}s, the body @var{forms} are +executed at compile-time if @code{compile} is in the @var{situations} +list, and the @var{forms} are written out to the file (to be executed +at load-time) if @code{load} is in the @var{situations} list. + +For non-compiled-top-level forms, only the @code{eval} situation is +relevant. (This includes forms executed by the interpreter, forms +compiled with @code{byte-compile} rather than @code{byte-compile-file}, +and non-top-level forms.) The @code{eval-when} acts like a +@code{progn} if @code{eval} is specified, and like @code{nil} +(ignoring the body @var{forms}) if not. + +The rules become more subtle when @code{eval-when}s are nested; +consult Steele (second edition) for the gruesome details (and +some gruesome examples). + +Some simple examples: + +@example +;; Top-level forms in foo.el: +(eval-when (compile) (setq foo1 'bar)) +(eval-when (load) (setq foo2 'bar)) +(eval-when (compile load) (setq foo3 'bar)) +(eval-when (eval) (setq foo4 'bar)) +(eval-when (eval compile) (setq foo5 'bar)) +(eval-when (eval load) (setq foo6 'bar)) +(eval-when (eval compile load) (setq foo7 'bar)) +@end example + +When @file{foo.el} is compiled, these variables will be set during +the compilation itself: + +@example +foo1 foo3 foo5 foo7 ; `compile' +@end example + +When @file{foo.elc} is loaded, these variables will be set: + +@example +foo2 foo3 foo6 foo7 ; `load' +@end example + +And if @file{foo.el} is loaded uncompiled, these variables will +be set: + +@example +foo4 foo5 foo6 foo7 ; `eval' +@end example + +If these seven @code{eval-when}s had been, say, inside a @code{defun}, +then the first three would have been equivalent to @code{nil} and the +last four would have been equivalent to the corresponding @code{setq}s. + +Note that @code{(eval-when (load eval) @dots{})} is equivalent +to @code{(progn @dots{})} in all contexts. The compiler treats +certain top-level forms, like @code{defmacro} (sort-of) and +@code{require}, as if they were wrapped in @code{(eval-when +(compile load eval) @dots{})}. +@end defspec + +Emacs includes two special forms related to @code{eval-when}. +One of these, @code{eval-when-compile}, is not quite equivalent to +any @code{eval-when} construct and is described below. + +The other form, @code{(eval-and-compile @dots{})}, is exactly +equivalent to @samp{(eval-when (compile load eval) @dots{})} and +so is not itself defined by this package. + +@defspec eval-when-compile forms... +The @var{forms} are evaluated at compile-time; at execution time, +this form acts like a quoted constant of the resulting value. Used +at top-level, @code{eval-when-compile} is just like @samp{eval-when +(compile eval)}. In other contexts, @code{eval-when-compile} +allows code to be evaluated once at compile-time for efficiency +or other reasons. + +This form is similar to the @samp{#.} syntax of true Common Lisp. +@end defspec + +@defspec load-time-value form +The @var{form} is evaluated at load-time; at execution time, +this form acts like a quoted constant of the resulting value. + +Early Common Lisp had a @samp{#,} syntax that was similar to +this, but ANSI Common Lisp replaced it with @code{load-time-value} +and gave it more well-defined semantics. + +In a compiled file, @code{load-time-value} arranges for @var{form} +to be evaluated when the @file{.elc} file is loaded and then used +as if it were a quoted constant. In code compiled by +@code{byte-compile} rather than @code{byte-compile-file}, the +effect is identical to @code{eval-when-compile}. In uncompiled +code, both @code{eval-when-compile} and @code{load-time-value} +act exactly like @code{progn}. + +@example +(defun report () + (insert "This function was executed on: " + (current-time-string) + ", compiled on: " + (eval-when-compile (current-time-string)) + ;; or '#.(current-time-string) in real Common Lisp + ", and loaded on: " + (load-time-value (current-time-string)))) +@end example + +@noindent +Byte-compiled, the above defun will result in the following code +(or its compiled equivalent, of course) in the @file{.elc} file: + +@example +(setq --temp-- (current-time-string)) +(defun report () + (insert "This function was executed on: " + (current-time-string) + ", compiled on: " + '"Wed Jun 23 18:33:43 1993" + ", and loaded on: " + --temp--)) +@end example +@end defspec + +@node Predicates, Control Structure, Program Structure, Top +@chapter Predicates + +@noindent +This section describes functions for testing whether various +facts are true or false. + +@menu +* Type Predicates:: `typep', `deftype', and `coerce' +* Equality Predicates:: `equalp' +@end menu + +@node Type Predicates, Equality Predicates, Predicates, Predicates +@section Type Predicates + +@noindent +The @dfn{CL} package defines a version of the Common Lisp @code{typep} +predicate. + +@defun typep object type +Check if @var{object} is of type @var{type}, where @var{type} is a +(quoted) type name of the sort used by Common Lisp. For example, +@code{(typep foo 'integer)} is equivalent to @code{(integerp foo)}. +@end defun + +The @var{type} argument to the above function is either a symbol +or a list beginning with a symbol. + +@itemize @bullet +@item +If the type name is a symbol, Emacs appends @samp{-p} to the +symbol name to form the name of a predicate function for testing +the type. (Built-in predicates whose names end in @samp{p} rather +than @samp{-p} are used when appropriate.) + +@item +The type symbol @code{t} stands for the union of all types. +@code{(typep @var{object} t)} is always true. Likewise, the +type symbol @code{nil} stands for nothing at all, and +@code{(typep @var{object} nil)} is always false. + +@item +The type symbol @code{null} represents the symbol @code{nil}. +Thus @code{(typep @var{object} 'null)} is equivalent to +@code{(null @var{object})}. + +@item +The type symbol @code{atom} represents all objects that are not cons +cells. Thus @code{(typep @var{object} 'atom)} is equivalent to +@code{(atom @var{object})}. + +@item +The type symbol @code{real} is a synonym for @code{number}, and +@code{fixnum} is a synonym for @code{integer}. + +@item +The type symbols @code{character} and @code{string-char} match +integers in the range from 0 to 255. + +@item +The type symbol @code{float} uses the @code{floatp-safe} predicate +defined by this package rather than @code{floatp}, so it will work +correctly even in Emacs versions without floating-point support. + +@item +The type list @code{(integer @var{low} @var{high})} represents all +integers between @var{low} and @var{high}, inclusive. Either bound +may be a list of a single integer to specify an exclusive limit, +or a @code{*} to specify no limit. The type @code{(integer * *)} +is thus equivalent to @code{integer}. + +@item +Likewise, lists beginning with @code{float}, @code{real}, or +@code{number} represent numbers of that type falling in a particular +range. + +@item +Lists beginning with @code{and}, @code{or}, and @code{not} form +combinations of types. For example, @code{(or integer (float 0 *))} +represents all objects that are integers or non-negative floats. + +@item +Lists beginning with @code{member} or @code{member*} represent +objects @code{eql} to any of the following values. For example, +@code{(member 1 2 3 4)} is equivalent to @code{(integer 1 4)}, +and @code{(member nil)} is equivalent to @code{null}. + +@item +Lists of the form @code{(satisfies @var{predicate})} represent +all objects for which @var{predicate} returns true when called +with that object as an argument. +@end itemize + +The following function and macro (not technically predicates) are +related to @code{typep}. + +@defun coerce object type +This function attempts to convert @var{object} to the specified +@var{type}. If @var{object} is already of that type as determined by +@code{typep}, it is simply returned. Otherwise, certain types of +conversions will be made: If @var{type} is any sequence type +(@code{string}, @code{list}, etc.) then @var{object} will be +converted to that type if possible. If @var{type} is +@code{character}, then strings of length one and symbols with +one-character names can be coerced. If @var{type} is @code{float}, +then integers can be coerced in versions of Emacs that support +floats. In all other circumstances, @code{coerce} signals an +error. +@end defun + +@defspec deftype name arglist forms... +This macro defines a new type called @var{name}. It is similar +to @code{defmacro} in many ways; when @var{name} is encountered +as a type name, the body @var{forms} are evaluated and should +return a type specifier that is equivalent to the type. The +@var{arglist} is a Common Lisp argument list of the sort accepted +by @code{defmacro*}. The type specifier @samp{(@var{name} @var{args}...)} +is expanded by calling the expander with those arguments; the type +symbol @samp{@var{name}} is expanded by calling the expander with +no arguments. The @var{arglist} is processed the same as for +@code{defmacro*} except that optional arguments without explicit +defaults use @code{*} instead of @code{nil} as the ``default'' +default. Some examples: + +@example +(deftype null () '(satisfies null)) ; predefined +(deftype list () '(or null cons)) ; predefined +(deftype unsigned-byte (&optional bits) + (list 'integer 0 (if (eq bits '*) bits (1- (lsh 1 bits))))) +(unsigned-byte 8) @equiv{} (integer 0 255) +(unsigned-byte) @equiv{} (integer 0 *) +unsigned-byte @equiv{} (integer 0 *) +@end example + +@noindent +The last example shows how the Common Lisp @code{unsigned-byte} +type specifier could be implemented if desired; this package does +not implement @code{unsigned-byte} by default. +@end defspec + +The @code{typecase} and @code{check-type} macros also use type +names. @xref{Conditionals}. @xref{Assertions}. The @code{map}, +@code{concatenate}, and @code{merge} functions take type-name +arguments to specify the type of sequence to return. @xref{Sequences}. + +@node Equality Predicates, , Type Predicates, Predicates +@section Equality Predicates + +@noindent +This package defines the Common Lisp predicate @code{equalp}. + +@defun equalp a b +This function is a more flexible version of @code{equal}. In +particular, it compares strings case-insensitively, and it compares +numbers without regard to type (so that @code{(equalp 3 3.0)} is +true). Vectors and conses are compared recursively. All other +objects are compared as if by @code{equal}. + +This function differs from Common Lisp @code{equalp} in several +respects. First, Common Lisp's @code{equalp} also compares +@emph{characters} case-insensitively, which would be impractical +in this package since Emacs does not distinguish between integers +and characters. In keeping with the idea that strings are less +vector-like in Emacs Lisp, this package's @code{equalp} also will +not compare strings against vectors of integers. +@end defun + +Also note that the Common Lisp functions @code{member} and @code{assoc} +use @code{eql} to compare elements, whereas Emacs Lisp follows the +MacLisp tradition and uses @code{equal} for these two functions. +In Emacs, use @code{member*} and @code{assoc*} to get functions +which use @code{eql} for comparisons. + +@node Control Structure, Macros, Predicates, Top +@chapter Control Structure + +@noindent +The features described in the following sections implement +various advanced control structures, including the powerful +@code{setf} facility and a number of looping and conditional +constructs. + +@menu +* Assignment:: The `psetq' form +* Generalized Variables:: `setf', `incf', `push', etc. +* Variable Bindings:: `progv', `lexical-let', `flet', `macrolet' +* Conditionals:: `case', `typecase' +* Blocks and Exits:: `block', `return', `return-from' +* Iteration:: `do', `dotimes', `dolist', `do-symbols' +* Loop Facility:: The Common Lisp `loop' macro +* Multiple Values:: `values', `multiple-value-bind', etc. +@end menu + +@node Assignment, Generalized Variables, Control Structure, Control Structure +@section Assignment + +@noindent +The @code{psetq} form is just like @code{setq}, except that multiple +assignments are done in parallel rather than sequentially. + +@defspec psetq [symbol form]@dots{} +This special form (actually a macro) is used to assign to several +variables simultaneously. Given only one @var{symbol} and @var{form}, +it has the same effect as @code{setq}. Given several @var{symbol} +and @var{form} pairs, it evaluates all the @var{form}s in advance +and then stores the corresponding variables afterwards. + +@example +(setq x 2 y 3) +(setq x (+ x y) y (* x y)) +x + @result{} 5 +y ; @r{@code{y} was computed after @code{x} was set.} + @result{} 15 +(setq x 2 y 3) +(psetq x (+ x y) y (* x y)) +x + @result{} 5 +y ; @r{@code{y} was computed before @code{x} was set.} + @result{} 6 +@end example + +The simplest use of @code{psetq} is @code{(psetq x y y x)}, which +exchanges the values of two variables. (The @code{rotatef} form +provides an even more convenient way to swap two variables; +@pxref{Modify Macros}.) + +@code{psetq} always returns @code{nil}. +@end defspec + +@node Generalized Variables, Variable Bindings, Assignment, Control Structure +@section Generalized Variables + +@noindent +A ``generalized variable'' or ``place form'' is one of the many places +in Lisp memory where values can be stored. The simplest place form is +a regular Lisp variable. But the cars and cdrs of lists, elements +of arrays, properties of symbols, and many other locations are also +places where Lisp values are stored. + +The @code{setf} form is like @code{setq}, except that it accepts +arbitrary place forms on the left side rather than just +symbols. For example, @code{(setf (car a) b)} sets the car of +@code{a} to @code{b}, doing the same operation as @code{(setcar a b)} +but without having to remember two separate functions for setting +and accessing every type of place. + +Generalized variables are analogous to ``lvalues'' in the C +language, where @samp{x = a[i]} gets an element from an array +and @samp{a[i] = x} stores an element using the same notation. +Just as certain forms like @code{a[i]} can be lvalues in C, there +is a set of forms that can be generalized variables in Lisp. + +@menu +* Basic Setf:: `setf' and place forms +* Modify Macros:: `incf', `push', `rotatef', `letf', `callf', etc. +* Customizing Setf:: `define-modify-macro', `defsetf', `define-setf-method' +@end menu + +@node Basic Setf, Modify Macros, Generalized Variables, Generalized Variables +@subsection Basic Setf + +@noindent +The @code{setf} macro is the most basic way to operate on generalized +variables. + +@defspec setf [place form]@dots{} +This macro evaluates @var{form} and stores it in @var{place}, which +must be a valid generalized variable form. If there are several +@var{place} and @var{form} pairs, the assignments are done sequentially +just as with @code{setq}. @code{setf} returns the value of the last +@var{form}. + +The following Lisp forms will work as generalized variables, and +so may appear in the @var{place} argument of @code{setf}: + +@itemize @bullet +@item +A symbol naming a variable. In other words, @code{(setf x y)} is +exactly equivalent to @code{(setq x y)}, and @code{setq} itself is +strictly speaking redundant now that @code{setf} exists. Many +programmers continue to prefer @code{setq} for setting simple +variables, though, purely for stylistic or historical reasons. +The macro @code{(setf x y)} actually expands to @code{(setq x y)}, +so there is no performance penalty for using it in compiled code. + +@item +A call to any of the following Lisp functions: + +@smallexample +car cdr caar .. cddddr +nth rest first .. tenth +aref elt nthcdr +symbol-function symbol-value symbol-plist +get get* getf +gethash subseq +@end smallexample + +@noindent +Note that for @code{nthcdr} and @code{getf}, the list argument +of the function must itself be a valid @var{place} form. For +example, @code{(setf (nthcdr 0 foo) 7)} will set @code{foo} itself +to 7. Note that @code{push} and @code{pop} on an @code{nthcdr} +place can be used to insert or delete at any position in a list. +The use of @code{nthcdr} as a @var{place} form is an extension +to standard Common Lisp. + +@item +The following Emacs-specific functions are also @code{setf}-able. + +@smallexample +buffer-file-name marker-position +buffer-modified-p match-data +buffer-name mouse-position +buffer-string overlay-end +buffer-substring overlay-get +current-buffer overlay-start +current-case-table point +current-column point-marker +current-global-map point-max +current-input-mode point-min +current-local-map process-buffer +current-window-configuration process-filter +default-file-modes process-sentinel +default-value read-mouse-position +documentation-property screen-height +extent-data screen-menubar +extent-end-position screen-width +extent-start-position selected-window +face-background selected-screen +face-background-pixmap selected-frame +face-font standard-case-table +face-foreground syntax-table +face-underline-p window-buffer +file-modes window-dedicated-p +frame-height window-display-table +frame-parameters window-height +frame-visible-p window-hscroll +frame-width window-point +get-register window-start +getenv window-width +global-key-binding x-get-cut-buffer +keymap-parent x-get-cutbuffer +local-key-binding x-get-secondary-selection +mark x-get-selection +mark-marker +@end smallexample + +Most of these have directly corresponding ``set'' functions, like +@code{use-local-map} for @code{current-local-map}, or @code{goto-char} +for @code{point}. A few, like @code{point-min}, expand to longer +sequences of code when they are @code{setf}'d (@code{(narrow-to-region +x (point-max))} in this case). + +@item +A call of the form @code{(substring @var{subplace} @var{n} [@var{m}])}, +where @var{subplace} is itself a valid generalized variable whose +current value is a string, and where the value stored is also a +string. The new string is spliced into the specified part of the +destination string. For example: + +@example +(setq a (list "hello" "world")) + @result{} ("hello" "world") +(cadr a) + @result{} "world" +(substring (cadr a) 2 4) + @result{} "rl" +(setf (substring (cadr a) 2 4) "o") + @result{} "o" +(cadr a) + @result{} "wood" +a + @result{} ("hello" "wood") +@end example + +The generalized variable @code{buffer-substring}, listed above, +also works in this way by replacing a portion of the current buffer. + +@item +A call of the form @code{(apply '@var{func} @dots{})} or +@code{(apply (function @var{func}) @dots{})}, where @var{func} +is a @code{setf}-able function whose store function is ``suitable'' +in the sense described in Steele's book; since none of the standard +Emacs place functions are suitable in this sense, this feature is +only interesting when used with places you define yourself with +@code{define-setf-method} or the long form of @code{defsetf}. + +@item +A macro call, in which case the macro is expanded and @code{setf} +is applied to the resulting form. + +@item +Any form for which a @code{defsetf} or @code{define-setf-method} +has been made. +@end itemize + +Using any forms other than these in the @var{place} argument to +@code{setf} will signal an error. + +The @code{setf} macro takes care to evaluate all subforms in +the proper left-to-right order; for example, + +@example +(setf (aref vec (incf i)) i) +@end example + +@noindent +looks like it will evaluate @code{(incf i)} exactly once, before the +following access to @code{i}; the @code{setf} expander will insert +temporary variables as necessary to ensure that it does in fact work +this way no matter what setf-method is defined for @code{aref}. +(In this case, @code{aset} would be used and no such steps would +be necessary since @code{aset} takes its arguments in a convenient +order.) + +However, if the @var{place} form is a macro which explicitly +evaluates its arguments in an unusual order, this unusual order +will be preserved. Adapting an example from Steele, given + +@example +(defmacro wrong-order (x y) (list 'aref y x)) +@end example + +@noindent +the form @code{(setf (wrong-order @var{a} @var{b}) 17)} will +evaluate @var{b} first, then @var{a}, just as in an actual call +to @code{wrong-order}. +@end defspec + +@node Modify Macros, Customizing Setf, Basic Setf, Generalized Variables +@subsection Modify Macros + +@noindent +This package defines a number of other macros besides @code{setf} +that operate on generalized variables. Many are interesting and +useful even when the @var{place} is just a variable name. + +@defspec psetf [place form]@dots{} +This macro is to @code{setf} what @code{psetq} is to @code{setq}: +When several @var{place}s and @var{form}s are involved, the +assignments take place in parallel rather than sequentially. +Specifically, all subforms are evaluated from left to right, then +all the assignments are done (in an undefined order). +@end defspec + +@defspec incf place &optional x +This macro increments the number stored in @var{place} by one, or +by @var{x} if specified. The incremented value is returned. For +example, @code{(incf i)} is equivalent to @code{(setq i (1+ i))}, and +@code{(incf (car x) 2)} is equivalent to @code{(setcar x (+ (car x) 2))}. + +Once again, care is taken to preserve the ``apparent'' order of +evaluation. For example, + +@example +(incf (aref vec (incf i))) +@end example + +@noindent +appears to increment @code{i} once, then increment the element of +@code{vec} addressed by @code{i}; this is indeed exactly what it +does, which means the above form is @emph{not} equivalent to the +``obvious'' expansion, + +@example +(setf (aref vec (incf i)) (1+ (aref vec (incf i)))) ; Wrong! +@end example + +@noindent +but rather to something more like + +@example +(let ((temp (incf i))) + (setf (aref vec temp) (1+ (aref vec temp)))) +@end example + +@noindent +Again, all of this is taken care of automatically by @code{incf} and +the other generalized-variable macros. + +As a more Emacs-specific example of @code{incf}, the expression +@code{(incf (point) @var{n})} is essentially equivalent to +@code{(forward-char @var{n})}. +@end defspec + +@defspec decf place &optional x +This macro decrements the number stored in @var{place} by one, or +by @var{x} if specified. +@end defspec + +@defspec pop place +This macro removes and returns the first element of the list stored +in @var{place}. It is analogous to @code{(prog1 (car @var{place}) +(setf @var{place} (cdr @var{place})))}, except that it takes care +to evaluate all subforms only once. +@end defspec + +@defspec push x place +This macro inserts @var{x} at the front of the list stored in +@var{place}. It is analogous to @code{(setf @var{place} (cons +@var{x} @var{place}))}, except for evaluation of the subforms. +@end defspec + +@defspec pushnew x place @t{&key :test :test-not :key} +This macro inserts @var{x} at the front of the list stored in +@var{place}, but only if @var{x} was not @code{eql} to any +existing element of the list. The optional keyword arguments +are interpreted in the same way as for @code{adjoin}. +@xref{Lists as Sets}. +@end defspec + +@defspec shiftf place@dots{} newvalue +This macro shifts the @var{place}s left by one, shifting in the +value of @var{newvalue} (which may be any Lisp expression, not just +a generalized variable), and returning the value shifted out of +the first @var{place}. Thus, @code{(shiftf @var{a} @var{b} @var{c} +@var{d})} is equivalent to + +@example +(prog1 + @var{a} + (psetf @var{a} @var{b} + @var{b} @var{c} + @var{c} @var{d})) +@end example + +@noindent +except that the subforms of @var{a}, @var{b}, and @var{c} are actually +evaluated only once each and in the apparent order. +@end defspec + +@defspec rotatef place@dots{} +This macro rotates the @var{place}s left by one in circular fashion. +Thus, @code{(rotatef @var{a} @var{b} @var{c} @var{d})} is equivalent to + +@example +(psetf @var{a} @var{b} + @var{b} @var{c} + @var{c} @var{d} + @var{d} @var{a}) +@end example + +@noindent +except for the evaluation of subforms. @code{rotatef} always +returns @code{nil}. Note that @code{(rotatef @var{a} @var{b})} +conveniently exchanges @var{a} and @var{b}. +@end defspec + +The following macros were invented for this package; they have no +analogues in Common Lisp. + +@defspec letf (bindings@dots{}) forms@dots{} +This macro is analogous to @code{let}, but for generalized variables +rather than just symbols. Each @var{binding} should be of the form +@code{(@var{place} @var{value})}; the original contents of the +@var{place}s are saved, the @var{value}s are stored in them, and +then the body @var{form}s are executed. Afterwards, the @var{places} +are set back to their original saved contents. This cleanup happens +even if the @var{form}s exit irregularly due to a @code{throw} or an +error. + +For example, + +@example +(letf (((point) (point-min)) + (a 17)) + ...) +@end example + +@noindent +moves ``point'' in the current buffer to the beginning of the buffer, +and also binds @code{a} to 17 (as if by a normal @code{let}, since +@code{a} is just a regular variable). After the body exits, @code{a} +is set back to its original value and point is moved back to its +original position. + +Note that @code{letf} on @code{(point)} is not quite like a +@code{save-excursion}, as the latter effectively saves a marker +which tracks insertions and deletions in the buffer. Actually, +a @code{letf} of @code{(point-marker)} is much closer to this +behavior. (@code{point} and @code{point-marker} are equivalent +as @code{setf} places; each will accept either an integer or a +marker as the stored value.) + +Since generalized variables look like lists, @code{let}'s shorthand +of using @samp{foo} for @samp{(foo nil)} as a @var{binding} would +be ambiguous in @code{letf} and is not allowed. + +However, a @var{binding} specifier may be a one-element list +@samp{(@var{place})}, which is similar to @samp{(@var{place} +@var{place})}. In other words, the @var{place} is not disturbed +on entry to the body, and the only effect of the @code{letf} is +to restore the original value of @var{place} afterwards. (The +redundant access-and-store suggested by the @code{(@var{place} +@var{place})} example does not actually occur.) + +In most cases, the @var{place} must have a well-defined value on +entry to the @code{letf} form. The only exceptions are plain +variables and calls to @code{symbol-value} and @code{symbol-function}. +If the symbol is not bound on entry, it is simply made unbound by +@code{makunbound} or @code{fmakunbound} on exit. +@end defspec + +@defspec letf* (bindings@dots{}) forms@dots{} +This macro is to @code{letf} what @code{let*} is to @code{let}: +It does the bindings in sequential rather than parallel order. +@end defspec + +@defspec callf @var{function} @var{place} @var{args}@dots{} +This is the ``generic'' modify macro. It calls @var{function}, +which should be an unquoted function name, macro name, or lambda. +It passes @var{place} and @var{args} as arguments, and assigns the +result back to @var{place}. For example, @code{(incf @var{place} +@var{n})} is the same as @code{(callf + @var{place} @var{n})}. +Some more examples: + +@example +(callf abs my-number) +(callf concat (buffer-name) "<" (int-to-string n) ">") +(callf union happy-people (list joe bob) :test 'same-person) +@end example + +@xref{Customizing Setf}, for @code{define-modify-macro}, a way +to create even more concise notations for modify macros. Note +again that @code{callf} is an extension to standard Common Lisp. +@end defspec + +@defspec callf2 @var{function} @var{arg1} @var{place} @var{args}@dots{} +This macro is like @code{callf}, except that @var{place} is +the @emph{second} argument of @var{function} rather than the +first. For example, @code{(push @var{x} @var{place})} is +equivalent to @code{(callf2 cons @var{x} @var{place})}. +@end defspec + +The @code{callf} and @code{callf2} macros serve as building +blocks for other macros like @code{incf}, @code{pushnew}, and +@code{define-modify-macro}. The @code{letf} and @code{letf*} +macros are used in the processing of symbol macros; +@pxref{Macro Bindings}. + +@node Customizing Setf, , Modify Macros, Generalized Variables +@subsection Customizing Setf + +@noindent +Common Lisp defines three macros, @code{define-modify-macro}, +@code{defsetf}, and @code{define-setf-method}, that allow the +user to extend generalized variables in various ways. + +@defspec define-modify-macro name arglist function [doc-string] +This macro defines a ``read-modify-write'' macro similar to +@code{incf} and @code{decf}. The macro @var{name} is defined +to take a @var{place} argument followed by additional arguments +described by @var{arglist}. The call + +@example +(@var{name} @var{place} @var{args}...) +@end example + +@noindent +will be expanded to + +@example +(callf @var{func} @var{place} @var{args}...) +@end example + +@noindent +which in turn is roughly equivalent to + +@example +(setf @var{place} (@var{func} @var{place} @var{args}...)) +@end example + +For example: + +@example +(define-modify-macro incf (&optional (n 1)) +) +(define-modify-macro concatf (&rest args) concat) +@end example + +Note that @code{&key} is not allowed in @var{arglist}, but +@code{&rest} is sufficient to pass keywords on to the function. + +Most of the modify macros defined by Common Lisp do not exactly +follow the pattern of @code{define-modify-macro}. For example, +@code{push} takes its arguments in the wrong order, and @code{pop} +is completely irregular. You can define these macros ``by hand'' +using @code{get-setf-method}, or consult the source file +@file{cl-macs.el} to see how to use the internal @code{setf} +building blocks. +@end defspec + +@defspec defsetf access-fn update-fn +This is the simpler of two @code{defsetf} forms. Where +@var{access-fn} is the name of a function which accesses a place, +this declares @var{update-fn} to be the corresponding store +function. From now on, + +@example +(setf (@var{access-fn} @var{arg1} @var{arg2} @var{arg3}) @var{value}) +@end example + +@noindent +will be expanded to + +@example +(@var{update-fn} @var{arg1} @var{arg2} @var{arg3} @var{value}) +@end example + +@noindent +The @var{update-fn} is required to be either a true function, or +a macro which evaluates its arguments in a function-like way. Also, +the @var{update-fn} is expected to return @var{value} as its result. +Otherwise, the above expansion would not obey the rules for the way +@code{setf} is supposed to behave. + +As a special (non-Common-Lisp) extension, a third argument of @code{t} +to @code{defsetf} says that the @code{update-fn}'s return value is +not suitable, so that the above @code{setf} should be expanded to +something more like + +@example +(let ((temp @var{value})) + (@var{update-fn} @var{arg1} @var{arg2} @var{arg3} temp) + temp) +@end example + +Some examples of the use of @code{defsetf}, drawn from the standard +suite of setf methods, are: + +@example +(defsetf car setcar) +(defsetf symbol-value set) +(defsetf buffer-name rename-buffer t) +@end example +@end defspec + +@defspec defsetf access-fn arglist (store-var) forms@dots{} +This is the second, more complex, form of @code{defsetf}. It is +rather like @code{defmacro} except for the additional @var{store-var} +argument. The @var{forms} should return a Lisp form which stores +the value of @var{store-var} into the generalized variable formed +by a call to @var{access-fn} with arguments described by @var{arglist}. +The @var{forms} may begin with a string which documents the @code{setf} +method (analogous to the doc string that appears at the front of a +function). + +For example, the simple form of @code{defsetf} is shorthand for + +@example +(defsetf @var{access-fn} (&rest args) (store) + (append '(@var{update-fn}) args (list store))) +@end example + +The Lisp form that is returned can access the arguments from +@var{arglist} and @var{store-var} in an unrestricted fashion; +macros like @code{setf} and @code{incf} which invoke this +setf-method will insert temporary variables as needed to make +sure the apparent order of evaluation is preserved. + +Another example drawn from the standard package: + +@example +(defsetf nth (n x) (store) + (list 'setcar (list 'nthcdr n x) store)) +@end example +@end defspec + +@defspec define-setf-method access-fn arglist forms@dots{} +This is the most general way to create new place forms. When +a @code{setf} to @var{access-fn} with arguments described by +@var{arglist} is expanded, the @var{forms} are evaluated and +must return a list of five items: + +@enumerate +@item +A list of @dfn{temporary variables}. + +@item +A list of @dfn{value forms} corresponding to the temporary variables +above. The temporary variables will be bound to these value forms +as the first step of any operation on the generalized variable. + +@item +A list of exactly one @dfn{store variable} (generally obtained +from a call to @code{gensym}). + +@item +A Lisp form which stores the contents of the store variable into +the generalized variable, assuming the temporaries have been +bound as described above. + +@item +A Lisp form which accesses the contents of the generalized variable, +assuming the temporaries have been bound. +@end enumerate + +This is exactly like the Common Lisp macro of the same name, +except that the method returns a list of five values rather +than the five values themselves, since Emacs Lisp does not +support Common Lisp's notion of multiple return values. + +Once again, the @var{forms} may begin with a documentation string. + +A setf-method should be maximally conservative with regard to +temporary variables. In the setf-methods generated by +@code{defsetf}, the second return value is simply the list of +arguments in the place form, and the first return value is a +list of a corresponding number of temporary variables generated +by @code{gensym}. Macros like @code{setf} and @code{incf} which +use this setf-method will optimize away most temporaries that +turn out to be unnecessary, so there is little reason for the +setf-method itself to optimize. +@end defspec + +@defun get-setf-method place &optional env +This function returns the setf-method for @var{place}, by +invoking the definition previously recorded by @code{defsetf} +or @code{define-setf-method}. The result is a list of five +values as described above. You can use this function to build +your own @code{incf}-like modify macros. (Actually, it is +better to use the internal functions @code{cl-setf-do-modify} +and @code{cl-setf-do-store}, which are a bit easier to use and +which also do a number of optimizations; consult the source +code for the @code{incf} function for a simple example.) + +The argument @var{env} specifies the ``environment'' to be +passed on to @code{macroexpand} if @code{get-setf-method} should +need to expand a macro in @var{place}. It should come from +an @code{&environment} argument to the macro or setf-method +that called @code{get-setf-method}. + +See also the source code for the setf-methods for @code{apply} +and @code{substring}, each of which works by calling +@code{get-setf-method} on a simpler case, then massaging +the result in various ways. +@end defun + +Modern Common Lisp defines a second, independent way to specify +the @code{setf} behavior of a function, namely ``@code{setf} +functions'' whose names are lists @code{(setf @var{name})} +rather than symbols. For example, @code{(defun (setf foo) @dots{})} +defines the function that is used when @code{setf} is applied to +@code{foo}. This package does not currently support @code{setf} +functions. In particular, it is a compile-time error to use +@code{setf} on a form which has not already been @code{defsetf}'d +or otherwise declared; in newer Common Lisps, this would not be +an error since the function @code{(setf @var{func})} might be +defined later. + +@iftex +@secno=4 +@end iftex + +@node Variable Bindings, Conditionals, Generalized Variables, Control Structure +@section Variable Bindings + +@noindent +These Lisp forms make bindings to variables and function names, +analogous to Lisp's built-in @code{let} form. + +@xref{Modify Macros}, for the @code{letf} and @code{letf*} forms which +are also related to variable bindings. + +@menu +* Dynamic Bindings:: The `progv' form +* Lexical Bindings:: `lexical-let' and lexical closures +* Function Bindings:: `flet' and `labels' +* Macro Bindings:: `macrolet' and `symbol-macrolet' +@end menu + +@node Dynamic Bindings, Lexical Bindings, Variable Bindings, Variable Bindings +@subsection Dynamic Bindings + +@noindent +The standard @code{let} form binds variables whose names are known +at compile-time. The @code{progv} form provides an easy way to +bind variables whose names are computed at run-time. + +@defspec progv symbols values forms@dots{} +This form establishes @code{let}-style variable bindings on a +set of variables computed at run-time. The expressions +@var{symbols} and @var{values} are evaluated, and must return lists +of symbols and values, respectively. The symbols are bound to the +corresponding values for the duration of the body @var{form}s. +If @var{values} is shorter than @var{symbols}, the last few symbols +are made unbound (as if by @code{makunbound}) inside the body. +If @var{symbols} is shorter than @var{values}, the excess values +are ignored. +@end defspec + +@node Lexical Bindings, Function Bindings, Dynamic Bindings, Variable Bindings +@subsection Lexical Bindings + +@noindent +The @dfn{CL} package defines the following macro which +more closely follows the Common Lisp @code{let} form: + +@defspec lexical-let (bindings@dots{}) forms@dots{} +This form is exactly like @code{let} except that the bindings it +establishes are purely lexical. Lexical bindings are similar to +local variables in a language like C: Only the code physically +within the body of the @code{lexical-let} (after macro expansion) +may refer to the bound variables. + +@example +(setq a 5) +(defun foo (b) (+ a b)) +(let ((a 2)) (foo a)) + @result{} 4 +(lexical-let ((a 2)) (foo a)) + @result{} 7 +@end example + +@noindent +In this example, a regular @code{let} binding of @code{a} actually +makes a temporary change to the global variable @code{a}, so @code{foo} +is able to see the binding of @code{a} to 2. But @code{lexical-let} +actually creates a distinct local variable @code{a} for use within its +body, without any effect on the global variable of the same name. + +The most important use of lexical bindings is to create @dfn{closures}. +A closure is a function object that refers to an outside lexical +variable. For example: + +@example +(defun make-adder (n) + (lexical-let ((n n)) + (function (lambda (m) (+ n m))))) +(setq add17 (make-adder 17)) +(funcall add17 4) + @result{} 21 +@end example + +@noindent +The call @code{(make-adder 17)} returns a function object which adds +17 to its argument. If @code{let} had been used instead of +@code{lexical-let}, the function object would have referred to the +global @code{n}, which would have been bound to 17 only during the +call to @code{make-adder} itself. + +@example +(defun make-counter () + (lexical-let ((n 0)) + (function* (lambda (&optional (m 1)) (incf n m))))) +(setq count-1 (make-counter)) +(funcall count-1 3) + @result{} 3 +(funcall count-1 14) + @result{} 17 +(setq count-2 (make-counter)) +(funcall count-2 5) + @result{} 5 +(funcall count-1 2) + @result{} 19 +(funcall count-2) + @result{} 6 +@end example + +@noindent +Here we see that each call to @code{make-counter} creates a distinct +local variable @code{n}, which serves as a private counter for the +function object that is returned. + +Closed-over lexical variables persist until the last reference to +them goes away, just like all other Lisp objects. For example, +@code{count-2} refers to a function object which refers to an +instance of the variable @code{n}; this is the only reference +to that variable, so after @code{(setq count-2 nil)} the garbage +collector would be able to delete this instance of @code{n}. +Of course, if a @code{lexical-let} does not actually create any +closures, then the lexical variables are free as soon as the +@code{lexical-let} returns. + +Many closures are used only during the extent of the bindings they +refer to; these are known as ``downward funargs'' in Lisp parlance. +When a closure is used in this way, regular Emacs Lisp dynamic +bindings suffice and will be more efficient than @code{lexical-let} +closures: + +@example +(defun add-to-list (x list) + (mapcar (lambda (y) (+ x y))) list) +(add-to-list 7 '(1 2 5)) + @result{} (8 9 12) +@end example + +@noindent +Since this lambda is only used while @code{x} is still bound, +it is not necessary to make a true closure out of it. + +You can use @code{defun} or @code{flet} inside a @code{lexical-let} +to create a named closure. If several closures are created in the +body of a single @code{lexical-let}, they all close over the same +instance of the lexical variable. + +The @code{lexical-let} form is an extension to Common Lisp. In +true Common Lisp, all bindings are lexical unless declared otherwise. +@end defspec + +@defspec lexical-let* (bindings@dots{}) forms@dots{} +This form is just like @code{lexical-let}, except that the bindings +are made sequentially in the manner of @code{let*}. +@end defspec + +@node Function Bindings, Macro Bindings, Lexical Bindings, Variable Bindings +@subsection Function Bindings + +@noindent +These forms make @code{let}-like bindings to functions instead +of variables. + +@defspec flet (bindings@dots{}) forms@dots{} +This form establishes @code{let}-style bindings on the function +cells of symbols rather than on the value cells. Each @var{binding} +must be a list of the form @samp{(@var{name} @var{arglist} +@var{forms}@dots{})}, which defines a function exactly as if +it were a @code{defun*} form. The function @var{name} is defined +accordingly for the duration of the body of the @code{flet}; then +the old function definition, or lack thereof, is restored. + +While @code{flet} in Common Lisp establishes a lexical binding of +@var{name}, Emacs Lisp @code{flet} makes a dynamic binding. The +result is that @code{flet} affects indirect calls to a function as +well as calls directly inside the @code{flet} form itself. + +You can use @code{flet} to disable or modify the behavior of a +function in a temporary fashion. This will even work on Emacs +primitives, although note that some calls to primitive functions +internal to Emacs are made without going through the symbol's +function cell, and so will not be affected by @code{flet}. For +example, + +@example +(flet ((message (&rest args) (push args saved-msgs))) + (do-something)) +@end example + +This code attempts to replace the built-in function @code{message} +with a function that simply saves the messages in a list rather +than displaying them. The original definition of @code{message} +will be restored after @code{do-something} exits. This code will +work fine on messages generated by other Lisp code, but messages +generated directly inside Emacs will not be caught since they make +direct C-language calls to the message routines rather than going +through the Lisp @code{message} function. + +Functions defined by @code{flet} may use the full Common Lisp +argument notation supported by @code{defun*}; also, the function +body is enclosed in an implicit block as if by @code{defun*}. +@xref{Program Structure}. +@end defspec + +@defspec labels (bindings@dots{}) forms@dots{} +The @code{labels} form is like @code{flet}, except that it +makes lexical bindings of the function names rather than +dynamic bindings. (In true Common Lisp, both @code{flet} and +@code{labels} make lexical bindings of slightly different sorts; +since Emacs Lisp is dynamically bound by default, it seemed +more appropriate for @code{flet} also to use dynamic binding. +The @code{labels} form, with its lexical binding, is fully +compatible with Common Lisp.) + +Lexical scoping means that all references to the named +functions must appear physically within the body of the +@code{labels} form. References may appear both in the body +@var{forms} of @code{labels} itself, and in the bodies of +the functions themselves. Thus, @code{labels} can define +local recursive functions, or mutually-recursive sets of +functions. + +A ``reference'' to a function name is either a call to that +function, or a use of its name quoted by @code{quote} or +@code{function} to be passed on to, say, @code{mapcar}. +@end defspec + +@node Macro Bindings, , Function Bindings, Variable Bindings +@subsection Macro Bindings + +@noindent +These forms create local macros and ``symbol macros.'' + +@defspec macrolet (bindings@dots{}) forms@dots{} +This form is analogous to @code{flet}, but for macros instead of +functions. Each @var{binding} is a list of the same form as the +arguments to @code{defmacro*} (i.e., a macro name, argument list, +and macro-expander forms). The macro is defined accordingly for +use within the body of the @code{macrolet}. + +Because of the nature of macros, @code{macrolet} is lexically +scoped even in Emacs Lisp: The @code{macrolet} binding will +affect only calls that appear physically within the body +@var{forms}, possibly after expansion of other macros in the +body. +@end defspec + +@defspec symbol-macrolet (bindings@dots{}) forms@dots{} +This form creates @dfn{symbol macros}, which are macros that look +like variable references rather than function calls. Each +@var{binding} is a list @samp{(@var{var} @var{expansion})}; +any reference to @var{var} within the body @var{forms} is +replaced by @var{expansion}. + +@example +(setq bar '(5 . 9)) +(symbol-macrolet ((foo (car bar))) + (incf foo)) +bar + @result{} (6 . 9) +@end example + +A @code{setq} of a symbol macro is treated the same as a @code{setf}. +I.e., @code{(setq foo 4)} in the above would be equivalent to +@code{(setf foo 4)}, which in turn expands to @code{(setf (car bar) 4)}. + +Likewise, a @code{let} or @code{let*} binding a symbol macro is +treated like a @code{letf} or @code{letf*}. This differs from true +Common Lisp, where the rules of lexical scoping cause a @code{let} +binding to shadow a @code{symbol-macrolet} binding. In this package, +only @code{lexical-let} and @code{lexical-let*} will shadow a symbol +macro. + +There is no analogue of @code{defmacro} for symbol macros; all symbol +macros are local. A typical use of @code{symbol-macrolet} is in the +expansion of another macro: + +@example +(defmacro* my-dolist ((x list) &rest body) + (let ((var (gensym))) + (list 'loop 'for var 'on list 'do + (list* 'symbol-macrolet (list (list x (list 'car var))) + body)))) + +(setq mylist '(1 2 3 4)) +(my-dolist (x mylist) (incf x)) +mylist + @result{} (2 3 4 5) +@end example + +@noindent +In this example, the @code{my-dolist} macro is similar to @code{dolist} +(@pxref{Iteration}) except that the variable @code{x} becomes a true +reference onto the elements of the list. The @code{my-dolist} call +shown here expands to + +@example +(loop for G1234 on mylist do + (symbol-macrolet ((x (car G1234))) + (incf x))) +@end example + +@noindent +which in turn expands to + +@example +(loop for G1234 on mylist do (incf (car G1234))) +@end example + +@xref{Loop Facility}, for a description of the @code{loop} macro. +This package defines a nonstandard @code{in-ref} loop clause that +works much like @code{my-dolist}. +@end defspec + +@node Conditionals, Blocks and Exits, Variable Bindings, Control Structure +@section Conditionals + +@noindent +These conditional forms augment Emacs Lisp's simple @code{if}, +@code{and}, @code{or}, and @code{cond} forms. + +@defspec case keyform clause@dots{} +This macro evaluates @var{keyform}, then compares it with the key +values listed in the various @var{clause}s. Whichever clause matches +the key is executed; comparison is done by @code{eql}. If no clause +matches, the @code{case} form returns @code{nil}. The clauses are +of the form + +@example +(@var{keylist} @var{body-forms}@dots{}) +@end example + +@noindent +where @var{keylist} is a list of key values. If there is exactly +one value, and it is not a cons cell or the symbol @code{nil} or +@code{t}, then it can be used by itself as a @var{keylist} without +being enclosed in a list. All key values in the @code{case} form +must be distinct. The final clauses may use @code{t} in place of +a @var{keylist} to indicate a default clause that should be taken +if none of the other clauses match. (The symbol @code{otherwise} +is also recognized in place of @code{t}. To make a clause that +matches the actual symbol @code{t}, @code{nil}, or @code{otherwise}, +enclose the symbol in a list.) + +For example, this expression reads a keystroke, then does one of +four things depending on whether it is an @samp{a}, a @samp{b}, +a @key{RET} or @kbd{C-j}, or anything else. + +@example +(case (read-char) + (?a (do-a-thing)) + (?b (do-b-thing)) + ((?\r ?\n) (do-ret-thing)) + (t (do-other-thing))) +@end example +@end defspec + +@defspec ecase keyform clause@dots{} +This macro is just like @code{case}, except that if the key does +not match any of the clauses, an error is signaled rather than +simply returning @code{nil}. +@end defspec + +@defspec typecase keyform clause@dots{} +This macro is a version of @code{case} that checks for types +rather than values. Each @var{clause} is of the form +@samp{(@var{type} @var{body}...)}. @xref{Type Predicates}, +for a description of type specifiers. For example, + +@example +(typecase x + (integer (munch-integer x)) + (float (munch-float x)) + (string (munch-integer (string-to-int x))) + (t (munch-anything x))) +@end example + +The type specifier @code{t} matches any type of object; the word +@code{otherwise} is also allowed. To make one clause match any of +several types, use an @code{(or ...)} type specifier. +@end defspec + +@defspec etypecase keyform clause@dots{} +This macro is just like @code{typecase}, except that if the key does +not match any of the clauses, an error is signaled rather than +simply returning @code{nil}. +@end defspec + +@node Blocks and Exits, Iteration, Conditionals, Control Structure +@section Blocks and Exits + +@noindent +Common Lisp @dfn{blocks} provide a non-local exit mechanism very +similar to @code{catch} and @code{throw}, but lexically rather than +dynamically scoped. This package actually implements @code{block} +in terms of @code{catch}; however, the lexical scoping allows the +optimizing byte-compiler to omit the costly @code{catch} step if the +body of the block does not actually @code{return-from} the block. + +@defspec block name forms@dots{} +The @var{forms} are evaluated as if by a @code{progn}. However, +if any of the @var{forms} execute @code{(return-from @var{name})}, +they will jump out and return directly from the @code{block} form. +The @code{block} returns the result of the last @var{form} unless +a @code{return-from} occurs. + +The @code{block}/@code{return-from} mechanism is quite similar to +the @code{catch}/@code{throw} mechanism. The main differences are +that block @var{name}s are unevaluated symbols, rather than forms +(such as quoted symbols) which evaluate to a tag at run-time; and +also that blocks are lexically scoped whereas @code{catch}/@code{throw} +are dynamically scoped. This means that functions called from the +body of a @code{catch} can also @code{throw} to the @code{catch}, +but the @code{return-from} referring to a block name must appear +physically within the @var{forms} that make up the body of the block. +They may not appear within other called functions, although they may +appear within macro expansions or @code{lambda}s in the body. Block +names and @code{catch} names form independent name-spaces. + +In true Common Lisp, @code{defun} and @code{defmacro} surround +the function or expander bodies with implicit blocks with the +same name as the function or macro. This does not occur in Emacs +Lisp, but this package provides @code{defun*} and @code{defmacro*} +forms which do create the implicit block. + +The Common Lisp looping constructs defined by this package, +such as @code{loop} and @code{dolist}, also create implicit blocks +just as in Common Lisp. + +Because they are implemented in terms of Emacs Lisp @code{catch} +and @code{throw}, blocks have the same overhead as actual +@code{catch} constructs (roughly two function calls). However, +the optimizing byte compiler will optimize away the @code{catch} +if the block does +not in fact contain any @code{return} or @code{return-from} calls +that jump to it. This means that @code{do} loops and @code{defun*} +functions which don't use @code{return} don't pay the overhead to +support it. +@end defspec + +@defspec return-from name [result] +This macro returns from the block named @var{name}, which must be +an (unevaluated) symbol. If a @var{result} form is specified, it +is evaluated to produce the result returned from the @code{block}. +Otherwise, @code{nil} is returned. +@end defspec + +@defspec return [result] +This macro is exactly like @code{(return-from nil @var{result})}. +Common Lisp loops like @code{do} and @code{dolist} implicitly enclose +themselves in @code{nil} blocks. +@end defspec + +@node Iteration, Loop Facility, Blocks and Exits, Control Structure +@section Iteration + +@noindent +The macros described here provide more sophisticated, high-level +looping constructs to complement Emacs Lisp's basic @code{while} +loop. + +@defspec loop forms@dots{} +The @dfn{CL} package supports both the simple, old-style meaning of +@code{loop} and the extremely powerful and flexible feature known as +the @dfn{Loop Facility} or @dfn{Loop Macro}. This more advanced +facility is discussed in the following section; @pxref{Loop Facility}. +The simple form of @code{loop} is described here. + +If @code{loop} is followed by zero or more Lisp expressions, +then @code{(loop @var{exprs}@dots{})} simply creates an infinite +loop executing the expressions over and over. The loop is +enclosed in an implicit @code{nil} block. Thus, + +@example +(loop (foo) (if (no-more) (return 72)) (bar)) +@end example + +@noindent +is exactly equivalent to + +@example +(block nil (while t (foo) (if (no-more) (return 72)) (bar))) +@end example + +If any of the expressions are plain symbols, the loop is instead +interpreted as a Loop Macro specification as described later. +(This is not a restriction in practice, since a plain symbol +in the above notation would simply access and throw away the +value of a variable.) +@end defspec + +@defspec do (spec@dots{}) (end-test [result@dots{}]) forms@dots{} +This macro creates a general iterative loop. Each @var{spec} is +of the form + +@example +(@var{var} [@var{init} [@var{step}]]) +@end example + +The loop works as follows: First, each @var{var} is bound to the +associated @var{init} value as if by a @code{let} form. Then, in +each iteration of the loop, the @var{end-test} is evaluated; if +true, the loop is finished. Otherwise, the body @var{forms} are +evaluated, then each @var{var} is set to the associated @var{step} +expression (as if by a @code{psetq} form) and the next iteration +begins. Once the @var{end-test} becomes true, the @var{result} +forms are evaluated (with the @var{var}s still bound to their +values) to produce the result returned by @code{do}. + +The entire @code{do} loop is enclosed in an implicit @code{nil} +block, so that you can use @code{(return)} to break out of the +loop at any time. + +If there are no @var{result} forms, the loop returns @code{nil}. +If a given @var{var} has no @var{step} form, it is bound to its +@var{init} value but not otherwise modified during the @code{do} +loop (unless the code explicitly modifies it); this case is just +a shorthand for putting a @code{(let ((@var{var} @var{init})) @dots{})} +around the loop. If @var{init} is also omitted it defaults to +@code{nil}, and in this case a plain @samp{@var{var}} can be used +in place of @samp{(@var{var})}, again following the analogy with +@code{let}. + +This example (from Steele) illustrates a loop which applies the +function @code{f} to successive pairs of values from the lists +@code{foo} and @code{bar}; it is equivalent to the call +@code{(mapcar* 'f foo bar)}. Note that this loop has no body +@var{forms} at all, performing all its work as side effects of +the rest of the loop. + +@example +(do ((x foo (cdr x)) + (y bar (cdr y)) + (z nil (cons (f (car x) (car y)) z))) + ((or (null x) (null y)) + (nreverse z))) +@end example +@end defspec + +@defspec do* (spec@dots{}) (end-test [result@dots{}]) forms@dots{} +This is to @code{do} what @code{let*} is to @code{let}. In +particular, the initial values are bound as if by @code{let*} +rather than @code{let}, and the steps are assigned as if by +@code{setq} rather than @code{psetq}. + +Here is another way to write the above loop: + +@example +(do* ((xp foo (cdr xp)) + (yp bar (cdr yp)) + (x (car xp) (car xp)) + (y (car yp) (car yp)) + z) + ((or (null xp) (null yp)) + (nreverse z)) + (push (f x y) z)) +@end example +@end defspec + +@defspec dolist (var list [result]) forms@dots{} +This is a more specialized loop which iterates across the elements +of a list. @var{list} should evaluate to a list; the body @var{forms} +are executed with @var{var} bound to each element of the list in +turn. Finally, the @var{result} form (or @code{nil}) is evaluated +with @var{var} bound to @code{nil} to produce the result returned by +the loop. Unlike with Emacs's built in @code{dolist}, the loop is +surrounded by an implicit @code{nil} block. +@end defspec + +@defspec dotimes (var count [result]) forms@dots{} +This is a more specialized loop which iterates a specified number +of times. The body is executed with @var{var} bound to the integers +from zero (inclusive) to @var{count} (exclusive), in turn. Then +the @code{result} form is evaluated with @var{var} bound to the total +number of iterations that were done (i.e., @code{(max 0 @var{count})}) +to get the return value for the loop form. Unlike with Emacs's built in +@code{dolist}, the loop is surrounded by an implicit @code{nil} block. +@end defspec + +@defspec do-symbols (var [obarray [result]]) forms@dots{} +This loop iterates over all interned symbols. If @var{obarray} +is specified and is not @code{nil}, it loops over all symbols in +that obarray. For each symbol, the body @var{forms} are evaluated +with @var{var} bound to that symbol. The symbols are visited in +an unspecified order. Afterward the @var{result} form, if any, +is evaluated (with @var{var} bound to @code{nil}) to get the return +value. The loop is surrounded by an implicit @code{nil} block. +@end defspec + +@defspec do-all-symbols (var [result]) forms@dots{} +This is identical to @code{do-symbols} except that the @var{obarray} +argument is omitted; it always iterates over the default obarray. +@end defspec + +@xref{Mapping over Sequences}, for some more functions for +iterating over vectors or lists. + +@node Loop Facility, Multiple Values, Iteration, Control Structure +@section Loop Facility + +@noindent +A common complaint with Lisp's traditional looping constructs is +that they are either too simple and limited, such as Common Lisp's +@code{dotimes} or Emacs Lisp's @code{while}, or too unreadable and +obscure, like Common Lisp's @code{do} loop. + +To remedy this, recent versions of Common Lisp have added a new +construct called the ``Loop Facility'' or ``@code{loop} macro,'' +with an easy-to-use but very powerful and expressive syntax. + +@menu +* Loop Basics:: `loop' macro, basic clause structure +* Loop Examples:: Working examples of `loop' macro +* For Clauses:: Clauses introduced by `for' or `as' +* Iteration Clauses:: `repeat', `while', `thereis', etc. +* Accumulation Clauses:: `collect', `sum', `maximize', etc. +* Other Clauses:: `with', `if', `initially', `finally' +@end menu + +@node Loop Basics, Loop Examples, Loop Facility, Loop Facility +@subsection Loop Basics + +@noindent +The @code{loop} macro essentially creates a mini-language within +Lisp that is specially tailored for describing loops. While this +language is a little strange-looking by the standards of regular Lisp, +it turns out to be very easy to learn and well-suited to its purpose. + +Since @code{loop} is a macro, all parsing of the loop language +takes place at byte-compile time; compiled @code{loop}s are just +as efficient as the equivalent @code{while} loops written longhand. + +@defspec loop clauses@dots{} +A loop construct consists of a series of @var{clause}s, each +introduced by a symbol like @code{for} or @code{do}. Clauses +are simply strung together in the argument list of @code{loop}, +with minimal extra parentheses. The various types of clauses +specify initializations, such as the binding of temporary +variables, actions to be taken in the loop, stepping actions, +and final cleanup. + +Common Lisp specifies a certain general order of clauses in a +loop: + +@example +(loop @var{name-clause} + @var{var-clauses}@dots{} + @var{action-clauses}@dots{}) +@end example + +The @var{name-clause} optionally gives a name to the implicit +block that surrounds the loop. By default, the implicit block +is named @code{nil}. The @var{var-clauses} specify what +variables should be bound during the loop, and how they should +be modified or iterated throughout the course of the loop. The +@var{action-clauses} are things to be done during the loop, such +as computing, collecting, and returning values. + +The Emacs version of the @code{loop} macro is less restrictive about +the order of clauses, but things will behave most predictably if +you put the variable-binding clauses @code{with}, @code{for}, and +@code{repeat} before the action clauses. As in Common Lisp, +@code{initially} and @code{finally} clauses can go anywhere. + +Loops generally return @code{nil} by default, but you can cause +them to return a value by using an accumulation clause like +@code{collect}, an end-test clause like @code{always}, or an +explicit @code{return} clause to jump out of the implicit block. +(Because the loop body is enclosed in an implicit block, you can +also use regular Lisp @code{return} or @code{return-from} to +break out of the loop.) +@end defspec + +The following sections give some examples of the Loop Macro in +action, and describe the particular loop clauses in great detail. +Consult the second edition of Steele's @dfn{Common Lisp, the Language}, +for additional discussion and examples of the @code{loop} macro. + +@node Loop Examples, For Clauses, Loop Basics, Loop Facility +@subsection Loop Examples + +@noindent +Before listing the full set of clauses that are allowed, let's +look at a few example loops just to get a feel for the @code{loop} +language. + +@example +(loop for buf in (buffer-list) + collect (buffer-file-name buf)) +@end example + +@noindent +This loop iterates over all Emacs buffers, using the list +returned by @code{buffer-list}. For each buffer @code{buf}, +it calls @code{buffer-file-name} and collects the results into +a list, which is then returned from the @code{loop} construct. +The result is a list of the file names of all the buffers in +Emacs' memory. The words @code{for}, @code{in}, and @code{collect} +are reserved words in the @code{loop} language. + +@example +(loop repeat 20 do (insert "Yowsa\n")) +@end example + +@noindent +This loop inserts the phrase ``Yowsa'' twenty times in the +current buffer. + +@example +(loop until (eobp) do (munch-line) (forward-line 1)) +@end example + +@noindent +This loop calls @code{munch-line} on every line until the end +of the buffer. If point is already at the end of the buffer, +the loop exits immediately. + +@example +(loop do (munch-line) until (eobp) do (forward-line 1)) +@end example + +@noindent +This loop is similar to the above one, except that @code{munch-line} +is always called at least once. + +@example +(loop for x from 1 to 100 + for y = (* x x) + until (>= y 729) + finally return (list x (= y 729))) +@end example + +@noindent +This more complicated loop searches for a number @code{x} whose +square is 729. For safety's sake it only examines @code{x} +values up to 100; dropping the phrase @samp{to 100} would +cause the loop to count upwards with no limit. The second +@code{for} clause defines @code{y} to be the square of @code{x} +within the loop; the expression after the @code{=} sign is +reevaluated each time through the loop. The @code{until} +clause gives a condition for terminating the loop, and the +@code{finally} clause says what to do when the loop finishes. +(This particular example was written less concisely than it +could have been, just for the sake of illustration.) + +Note that even though this loop contains three clauses (two +@code{for}s and an @code{until}) that would have been enough to +define loops all by themselves, it still creates a single loop +rather than some sort of triple-nested loop. You must explicitly +nest your @code{loop} constructs if you want nested loops. + +@node For Clauses, Iteration Clauses, Loop Examples, Loop Facility +@subsection For Clauses + +@noindent +Most loops are governed by one or more @code{for} clauses. +A @code{for} clause simultaneously describes variables to be +bound, how those variables are to be stepped during the loop, +and usually an end condition based on those variables. + +The word @code{as} is a synonym for the word @code{for}. This +word is followed by a variable name, then a word like @code{from} +or @code{across} that describes the kind of iteration desired. +In Common Lisp, the phrase @code{being the} sometimes precedes +the type of iteration; in this package both @code{being} and +@code{the} are optional. The word @code{each} is a synonym +for @code{the}, and the word that follows it may be singular +or plural: @samp{for x being the elements of y} or +@samp{for x being each element of y}. Which form you use +is purely a matter of style. + +The variable is bound around the loop as if by @code{let}: + +@example +(setq i 'happy) +(loop for i from 1 to 10 do (do-something-with i)) +i + @result{} happy +@end example + +@table @code +@item for @var{var} from @var{expr1} to @var{expr2} by @var{expr3} +This type of @code{for} clause creates a counting loop. Each of +the three sub-terms is optional, though there must be at least one +term so that the clause is marked as a counting clause. + +The three expressions are the starting value, the ending value, and +the step value, respectively, of the variable. The loop counts +upwards by default (@var{expr3} must be positive), from @var{expr1} +to @var{expr2} inclusively. If you omit the @code{from} term, the +loop counts from zero; if you omit the @code{to} term, the loop +counts forever without stopping (unless stopped by some other +loop clause, of course); if you omit the @code{by} term, the loop +counts in steps of one. + +You can replace the word @code{from} with @code{upfrom} or +@code{downfrom} to indicate the direction of the loop. Likewise, +you can replace @code{to} with @code{upto} or @code{downto}. +For example, @samp{for x from 5 downto 1} executes five times +with @code{x} taking on the integers from 5 down to 1 in turn. +Also, you can replace @code{to} with @code{below} or @code{above}, +which are like @code{upto} and @code{downto} respectively except +that they are exclusive rather than inclusive limits: + +@example +(loop for x to 10 collect x) + @result{} (0 1 2 3 4 5 6 7 8 9 10) +(loop for x below 10 collect x) + @result{} (0 1 2 3 4 5 6 7 8 9) +@end example + +The @code{by} value is always positive, even for downward-counting +loops. Some sort of @code{from} value is required for downward +loops; @samp{for x downto 5} is not a valid loop clause all by +itself. + +@item for @var{var} in @var{list} by @var{function} +This clause iterates @var{var} over all the elements of @var{list}, +in turn. If you specify the @code{by} term, then @var{function} +is used to traverse the list instead of @code{cdr}; it must be a +function taking one argument. For example: + +@example +(loop for x in '(1 2 3 4 5 6) collect (* x x)) + @result{} (1 4 9 16 25 36) +(loop for x in '(1 2 3 4 5 6) by 'cddr collect (* x x)) + @result{} (1 9 25) +@end example + +@item for @var{var} on @var{list} by @var{function} +This clause iterates @var{var} over all the cons cells of @var{list}. + +@example +(loop for x on '(1 2 3 4) collect x) + @result{} ((1 2 3 4) (2 3 4) (3 4) (4)) +@end example + +With @code{by}, there is no real reason that the @code{on} expression +must be a list. For example: + +@example +(loop for x on first-animal by 'next-animal collect x) +@end example + +@noindent +where @code{(next-animal x)} takes an ``animal'' @var{x} and returns +the next in the (assumed) sequence of animals, or @code{nil} if +@var{x} was the last animal in the sequence. + +@item for @var{var} in-ref @var{list} by @var{function} +This is like a regular @code{in} clause, but @var{var} becomes +a @code{setf}-able ``reference'' onto the elements of the list +rather than just a temporary variable. For example, + +@example +(loop for x in-ref my-list do (incf x)) +@end example + +@noindent +increments every element of @code{my-list} in place. This clause +is an extension to standard Common Lisp. + +@item for @var{var} across @var{array} +This clause iterates @var{var} over all the elements of @var{array}, +which may be a vector or a string. + +@example +(loop for x across "aeiou" + do (use-vowel (char-to-string x))) +@end example + +@item for @var{var} across-ref @var{array} +This clause iterates over an array, with @var{var} a @code{setf}-able +reference onto the elements; see @code{in-ref} above. + +@item for @var{var} being the elements of @var{sequence} +This clause iterates over the elements of @var{sequence}, which may +be a list, vector, or string. Since the type must be determined +at run-time, this is somewhat less efficient than @code{in} or +@code{across}. The clause may be followed by the additional term +@samp{using (index @var{var2})} to cause @var{var2} to be bound to +the successive indices (starting at 0) of the elements. + +This clause type is taken from older versions of the @code{loop} macro, +and is not present in modern Common Lisp. The @samp{using (sequence ...)} +term of the older macros is not supported. + +@item for @var{var} being the elements of-ref @var{sequence} +This clause iterates over a sequence, with @var{var} a @code{setf}-able +reference onto the elements; see @code{in-ref} above. + +@item for @var{var} being the symbols [of @var{obarray}] +This clause iterates over symbols, either over all interned symbols +or over all symbols in @var{obarray}. The loop is executed with +@var{var} bound to each symbol in turn. The symbols are visited in +an unspecified order. + +As an example, + +@example +(loop for sym being the symbols + when (fboundp sym) + when (string-match "^map" (symbol-name sym)) + collect sym) +@end example + +@noindent +returns a list of all the functions whose names begin with @samp{map}. + +The Common Lisp words @code{external-symbols} and @code{present-symbols} +are also recognized but are equivalent to @code{symbols} in Emacs Lisp. + +Due to a minor implementation restriction, it will not work to have +more than one @code{for} clause iterating over symbols, hash tables, +keymaps, overlays, or intervals in a given @code{loop}. Fortunately, +it would rarely if ever be useful to do so. It @emph{is} valid to mix +one of these types of clauses with other clauses like @code{for ... to} +or @code{while}. + +@item for @var{var} being the hash-keys of @var{hash-table} +This clause iterates over the entries in @var{hash-table}. For each +hash table entry, @var{var} is bound to the entry's key. If you write +@samp{the hash-values} instead, @var{var} is bound to the values +of the entries. The clause may be followed by the additional +term @samp{using (hash-values @var{var2})} (where @code{hash-values} +is the opposite word of the word following @code{the}) to cause +@var{var} and @var{var2} to be bound to the two parts of each +hash table entry. + +@item for @var{var} being the key-codes of @var{keymap} +This clause iterates over the entries in @var{keymap}. - The iteration does not enter nested keymaps or inherited (parent) keymaps. ++The iteration does not enter nested keymaps but does enter inherited ++(parent) keymaps. +You can use @samp{the key-bindings} to access the commands bound to +the keys rather than the key codes, and you can add a @code{using} +clause to access both the codes and the bindings together. + +@item for @var{var} being the key-seqs of @var{keymap} +This clause iterates over all key sequences defined by @var{keymap} +and its nested keymaps, where @var{var} takes on values which are +vectors. The strings or vectors +are reused for each iteration, so you must copy them if you wish to keep +them permanently. You can add a @samp{using (key-bindings ...)} +clause to get the command bindings as well. + +@item for @var{var} being the overlays [of @var{buffer}] @dots{} +This clause iterates over the ``overlays'' of a buffer +(the clause @code{extents} is synonymous +with @code{overlays}). If the @code{of} term is omitted, the current +buffer is used. +This clause also accepts optional @samp{from @var{pos}} and +@samp{to @var{pos}} terms, limiting the clause to overlays which +overlap the specified region. + +@item for @var{var} being the intervals [of @var{buffer}] @dots{} +This clause iterates over all intervals of a buffer with constant +text properties. The variable @var{var} will be bound to conses +of start and end positions, where one start position is always equal +to the previous end position. The clause allows @code{of}, +@code{from}, @code{to}, and @code{property} terms, where the latter +term restricts the search to just the specified property. The +@code{of} term may specify either a buffer or a string. + +@item for @var{var} being the frames +This clause iterates over all frames, i.e., X window system windows +open on Emacs files. The +clause @code{screens} is a synonym for @code{frames}. The frames +are visited in @code{next-frame} order starting from +@code{selected-frame}. + +@item for @var{var} being the windows [of @var{frame}] +This clause iterates over the windows (in the Emacs sense) of +the current frame, or of the specified @var{frame}. + +@item for @var{var} being the buffers +This clause iterates over all buffers in Emacs. It is equivalent +to @samp{for @var{var} in (buffer-list)}. + +@item for @var{var} = @var{expr1} then @var{expr2} +This clause does a general iteration. The first time through +the loop, @var{var} will be bound to @var{expr1}. On the second +and successive iterations it will be set by evaluating @var{expr2} +(which may refer to the old value of @var{var}). For example, +these two loops are effectively the same: + +@example +(loop for x on my-list by 'cddr do ...) +(loop for x = my-list then (cddr x) while x do ...) +@end example + +Note that this type of @code{for} clause does not imply any sort +of terminating condition; the above example combines it with a +@code{while} clause to tell when to end the loop. + +If you omit the @code{then} term, @var{expr1} is used both for +the initial setting and for successive settings: + +@example +(loop for x = (random) when (> x 0) return x) +@end example + +@noindent +This loop keeps taking random numbers from the @code{(random)} +function until it gets a positive one, which it then returns. +@end table + +If you include several @code{for} clauses in a row, they are +treated sequentially (as if by @code{let*} and @code{setq}). +You can instead use the word @code{and} to link the clauses, +in which case they are processed in parallel (as if by @code{let} +and @code{psetq}). + +@example +(loop for x below 5 for y = nil then x collect (list x y)) + @result{} ((0 nil) (1 1) (2 2) (3 3) (4 4)) +(loop for x below 5 and y = nil then x collect (list x y)) + @result{} ((0 nil) (1 0) (2 1) (3 2) (4 3)) +@end example + +@noindent +In the first loop, @code{y} is set based on the value of @code{x} +that was just set by the previous clause; in the second loop, +@code{x} and @code{y} are set simultaneously so @code{y} is set +based on the value of @code{x} left over from the previous time +through the loop. + +Another feature of the @code{loop} macro is @dfn{destructuring}, +similar in concept to the destructuring provided by @code{defmacro}. +The @var{var} part of any @code{for} clause can be given as a list +of variables instead of a single variable. The values produced +during loop execution must be lists; the values in the lists are +stored in the corresponding variables. + +@example +(loop for (x y) in '((2 3) (4 5) (6 7)) collect (+ x y)) + @result{} (5 9 13) +@end example + +In loop destructuring, if there are more values than variables +the trailing values are ignored, and if there are more variables +than values the trailing variables get the value @code{nil}. +If @code{nil} is used as a variable name, the corresponding +values are ignored. Destructuring may be nested, and dotted +lists of variables like @code{(x . y)} are allowed. + +@node Iteration Clauses, Accumulation Clauses, For Clauses, Loop Facility +@subsection Iteration Clauses + +@noindent +Aside from @code{for} clauses, there are several other loop clauses +that control the way the loop operates. They might be used by +themselves, or in conjunction with one or more @code{for} clauses. + +@table @code +@item repeat @var{integer} +This clause simply counts up to the specified number using an +internal temporary variable. The loops + +@example +(loop repeat n do ...) +(loop for temp to n do ...) +@end example + +@noindent +are identical except that the second one forces you to choose +a name for a variable you aren't actually going to use. + +@item while @var{condition} +This clause stops the loop when the specified condition (any Lisp +expression) becomes @code{nil}. For example, the following two +loops are equivalent, except for the implicit @code{nil} block +that surrounds the second one: + +@example +(while @var{cond} @var{forms}@dots{}) +(loop while @var{cond} do @var{forms}@dots{}) +@end example + +@item until @var{condition} +This clause stops the loop when the specified condition is true, +i.e., non-@code{nil}. + +@item always @var{condition} +This clause stops the loop when the specified condition is @code{nil}. +Unlike @code{while}, it stops the loop using @code{return nil} so that +the @code{finally} clauses are not executed. If all the conditions +were non-@code{nil}, the loop returns @code{t}: + +@example +(if (loop for size in size-list always (> size 10)) + (some-big-sizes) + (no-big-sizes)) +@end example + +@item never @var{condition} +This clause is like @code{always}, except that the loop returns +@code{t} if any conditions were false, or @code{nil} otherwise. + +@item thereis @var{condition} +This clause stops the loop when the specified form is non-@code{nil}; +in this case, it returns that non-@code{nil} value. If all the +values were @code{nil}, the loop returns @code{nil}. +@end table + +@node Accumulation Clauses, Other Clauses, Iteration Clauses, Loop Facility +@subsection Accumulation Clauses + +@noindent +These clauses cause the loop to accumulate information about the +specified Lisp @var{form}. The accumulated result is returned +from the loop unless overridden, say, by a @code{return} clause. + +@table @code +@item collect @var{form} +This clause collects the values of @var{form} into a list. Several +examples of @code{collect} appear elsewhere in this manual. + +The word @code{collecting} is a synonym for @code{collect}, and +likewise for the other accumulation clauses. + +@item append @var{form} +This clause collects lists of values into a result list using +@code{append}. + +@item nconc @var{form} +This clause collects lists of values into a result list by +destructively modifying the lists rather than copying them. + +@item concat @var{form} +This clause concatenates the values of the specified @var{form} +into a string. (It and the following clause are extensions to +standard Common Lisp.) + +@item vconcat @var{form} +This clause concatenates the values of the specified @var{form} +into a vector. + +@item count @var{form} +This clause counts the number of times the specified @var{form} +evaluates to a non-@code{nil} value. + +@item sum @var{form} +This clause accumulates the sum of the values of the specified +@var{form}, which must evaluate to a number. + +@item maximize @var{form} +This clause accumulates the maximum value of the specified @var{form}, +which must evaluate to a number. The return value is undefined if +@code{maximize} is executed zero times. + +@item minimize @var{form} +This clause accumulates the minimum value of the specified @var{form}. +@end table + +Accumulation clauses can be followed by @samp{into @var{var}} to +cause the data to be collected into variable @var{var} (which is +automatically @code{let}-bound during the loop) rather than an +unnamed temporary variable. Also, @code{into} accumulations do +not automatically imply a return value. The loop must use some +explicit mechanism, such as @code{finally return}, to return +the accumulated result. + +It is valid for several accumulation clauses of the same type to +accumulate into the same place. From Steele: + +@example +(loop for name in '(fred sue alice joe june) + for kids in '((bob ken) () () (kris sunshine) ()) + collect name + append kids) + @result{} (fred bob ken sue alice joe kris sunshine june) +@end example + +@node Other Clauses, , Accumulation Clauses, Loop Facility +@subsection Other Clauses + +@noindent +This section describes the remaining loop clauses. + +@table @code +@item with @var{var} = @var{value} +This clause binds a variable to a value around the loop, but +otherwise leaves the variable alone during the loop. The following +loops are basically equivalent: + +@example +(loop with x = 17 do ...) +(let ((x 17)) (loop do ...)) +(loop for x = 17 then x do ...) +@end example + +Naturally, the variable @var{var} might be used for some purpose +in the rest of the loop. For example: + +@example +(loop for x in my-list with res = nil do (push x res) + finally return res) +@end example + +This loop inserts the elements of @code{my-list} at the front of +a new list being accumulated in @code{res}, then returns the +list @code{res} at the end of the loop. The effect is similar +to that of a @code{collect} clause, but the list gets reversed +by virtue of the fact that elements are being pushed onto the +front of @code{res} rather than the end. + +If you omit the @code{=} term, the variable is initialized to +@code{nil}. (Thus the @samp{= nil} in the above example is +unnecessary.) + +Bindings made by @code{with} are sequential by default, as if +by @code{let*}. Just like @code{for} clauses, @code{with} clauses +can be linked with @code{and} to cause the bindings to be made by +@code{let} instead. + +@item if @var{condition} @var{clause} +This clause executes the following loop clause only if the specified +condition is true. The following @var{clause} should be an accumulation, +@code{do}, @code{return}, @code{if}, or @code{unless} clause. +Several clauses may be linked by separating them with @code{and}. +These clauses may be followed by @code{else} and a clause or clauses +to execute if the condition was false. The whole construct may +optionally be followed by the word @code{end} (which may be used to +disambiguate an @code{else} or @code{and} in a nested @code{if}). + +The actual non-@code{nil} value of the condition form is available +by the name @code{it} in the ``then'' part. For example: + +@example +(setq funny-numbers '(6 13 -1)) + @result{} (6 13 -1) +(loop for x below 10 + if (oddp x) + collect x into odds + and if (memq x funny-numbers) return (cdr it) end + else + collect x into evens + finally return (vector odds evens)) + @result{} [(1 3 5 7 9) (0 2 4 6 8)] +(setq funny-numbers '(6 7 13 -1)) + @result{} (6 7 13 -1) +(loop <@r{same thing again}>) + @result{} (13 -1) +@end example + +Note the use of @code{and} to put two clauses into the ``then'' +part, one of which is itself an @code{if} clause. Note also that +@code{end}, while normally optional, was necessary here to make +it clear that the @code{else} refers to the outermost @code{if} +clause. In the first case, the loop returns a vector of lists +of the odd and even values of @var{x}. In the second case, the +odd number 7 is one of the @code{funny-numbers} so the loop +returns early; the actual returned value is based on the result +of the @code{memq} call. + +@item when @var{condition} @var{clause} +This clause is just a synonym for @code{if}. + +@item unless @var{condition} @var{clause} +The @code{unless} clause is just like @code{if} except that the +sense of the condition is reversed. + +@item named @var{name} +This clause gives a name other than @code{nil} to the implicit +block surrounding the loop. The @var{name} is the symbol to be +used as the block name. + +@item initially [do] @var{forms}... +This keyword introduces one or more Lisp forms which will be +executed before the loop itself begins (but after any variables +requested by @code{for} or @code{with} have been bound to their +initial values). @code{initially} clauses can appear anywhere; +if there are several, they are executed in the order they appear +in the loop. The keyword @code{do} is optional. + +@item finally [do] @var{forms}... +This introduces Lisp forms which will be executed after the loop +finishes (say, on request of a @code{for} or @code{while}). +@code{initially} and @code{finally} clauses may appear anywhere +in the loop construct, but they are executed (in the specified +order) at the beginning or end, respectively, of the loop. + +@item finally return @var{form} +This says that @var{form} should be executed after the loop +is done to obtain a return value. (Without this, or some other +clause like @code{collect} or @code{return}, the loop will simply +return @code{nil}.) Variables bound by @code{for}, @code{with}, +or @code{into} will still contain their final values when @var{form} +is executed. + +@item do @var{forms}... +The word @code{do} may be followed by any number of Lisp expressions +which are executed as an implicit @code{progn} in the body of the +loop. Many of the examples in this section illustrate the use of +@code{do}. + +@item return @var{form} +This clause causes the loop to return immediately. The following +Lisp form is evaluated to give the return value of the @code{loop} +form. The @code{finally} clauses, if any, are not executed. +Of course, @code{return} is generally used inside an @code{if} or +@code{unless}, as its use in a top-level loop clause would mean +the loop would never get to ``loop'' more than once. + +The clause @samp{return @var{form}} is equivalent to +@samp{do (return @var{form})} (or @code{return-from} if the loop +was named). The @code{return} clause is implemented a bit more +efficiently, though. +@end table + +While there is no high-level way to add user extensions to @code{loop} +(comparable to @code{defsetf} for @code{setf}, say), this package +does offer two properties called @code{cl-loop-handler} and +@code{cl-loop-for-handler} which are functions to be called when +a given symbol is encountered as a top-level loop clause or +@code{for} clause, respectively. Consult the source code in +file @file{cl-macs.el} for details. + +This package's @code{loop} macro is compatible with that of Common +Lisp, except that a few features are not implemented: @code{loop-finish} +and data-type specifiers. Naturally, the @code{for} clauses which +iterate over keymaps, overlays, intervals, frames, windows, and +buffers are Emacs-specific extensions. + +@node Multiple Values, , Loop Facility, Control Structure +@section Multiple Values + +@noindent +Common Lisp functions can return zero or more results. Emacs Lisp +functions, by contrast, always return exactly one result. This +package makes no attempt to emulate Common Lisp multiple return +values; Emacs versions of Common Lisp functions that return more +than one value either return just the first value (as in +@code{compiler-macroexpand}) or return a list of values (as in +@code{get-setf-method}). This package @emph{does} define placeholders +for the Common Lisp functions that work with multiple values, but +in Emacs Lisp these functions simply operate on lists instead. +The @code{values} form, for example, is a synonym for @code{list} +in Emacs. + +@defspec multiple-value-bind (var@dots{}) values-form forms@dots{} +This form evaluates @var{values-form}, which must return a list of +values. It then binds the @var{var}s to these respective values, +as if by @code{let}, and then executes the body @var{forms}. +If there are more @var{var}s than values, the extra @var{var}s +are bound to @code{nil}. If there are fewer @var{var}s than +values, the excess values are ignored. +@end defspec + +@defspec multiple-value-setq (var@dots{}) form +This form evaluates @var{form}, which must return a list of values. +It then sets the @var{var}s to these respective values, as if by +@code{setq}. Extra @var{var}s or values are treated the same as +in @code{multiple-value-bind}. +@end defspec + +The older Quiroz package attempted a more faithful (but still +imperfect) emulation of Common Lisp multiple values. The old +method ``usually'' simulated true multiple values quite well, +but under certain circumstances would leave spurious return +values in memory where a later, unrelated @code{multiple-value-bind} +form would see them. + +Since a perfect emulation is not feasible in Emacs Lisp, this +package opts to keep it as simple and predictable as possible. + +@node Macros, Declarations, Control Structure, Top +@chapter Macros + +@noindent +This package implements the various Common Lisp features of +@code{defmacro}, such as destructuring, @code{&environment}, +and @code{&body}. Top-level @code{&whole} is not implemented +for @code{defmacro} due to technical difficulties. +@xref{Argument Lists}. + +Destructuring is made available to the user by way of the +following macro: + +@defspec destructuring-bind arglist expr forms@dots{} +This macro expands to code which executes @var{forms}, with +the variables in @var{arglist} bound to the list of values +returned by @var{expr}. The @var{arglist} can include all +the features allowed for @code{defmacro} argument lists, +including destructuring. (The @code{&environment} keyword +is not allowed.) The macro expansion will signal an error +if @var{expr} returns a list of the wrong number of arguments +or with incorrect keyword arguments. +@end defspec + +This package also includes the Common Lisp @code{define-compiler-macro} +facility, which allows you to define compile-time expansions and +optimizations for your functions. + +@defspec define-compiler-macro name arglist forms@dots{} +This form is similar to @code{defmacro}, except that it only expands +calls to @var{name} at compile-time; calls processed by the Lisp +interpreter are not expanded, nor are they expanded by the +@code{macroexpand} function. + +The argument list may begin with a @code{&whole} keyword and a +variable. This variable is bound to the macro-call form itself, +i.e., to a list of the form @samp{(@var{name} @var{args}@dots{})}. +If the macro expander returns this form unchanged, then the +compiler treats it as a normal function call. This allows +compiler macros to work as optimizers for special cases of a +function, leaving complicated cases alone. + +For example, here is a simplified version of a definition that +appears as a standard part of this package: + +@example +(define-compiler-macro member* (&whole form a list &rest keys) + (if (and (null keys) + (eq (car-safe a) 'quote) + (not (floatp-safe (cadr a)))) + (list 'memq a list) + form)) +@end example + +@noindent +This definition causes @code{(member* @var{a} @var{list})} to change +to a call to the faster @code{memq} in the common case where @var{a} +is a non-floating-point constant; if @var{a} is anything else, or +if there are any keyword arguments in the call, then the original +@code{member*} call is left intact. (The actual compiler macro +for @code{member*} optimizes a number of other cases, including +common @code{:test} predicates.) +@end defspec + +@defun compiler-macroexpand form +This function is analogous to @code{macroexpand}, except that it +expands compiler macros rather than regular macros. It returns +@var{form} unchanged if it is not a call to a function for which +a compiler macro has been defined, or if that compiler macro +decided to punt by returning its @code{&whole} argument. Like +@code{macroexpand}, it expands repeatedly until it reaches a form +for which no further expansion is possible. +@end defun + +@xref{Macro Bindings}, for descriptions of the @code{macrolet} +and @code{symbol-macrolet} forms for making ``local'' macro +definitions. + +@node Declarations, Symbols, Macros, Top +@chapter Declarations + +@noindent +Common Lisp includes a complex and powerful ``declaration'' +mechanism that allows you to give the compiler special hints +about the types of data that will be stored in particular variables, +and about the ways those variables and functions will be used. This +package defines versions of all the Common Lisp declaration forms: +@code{declare}, @code{locally}, @code{proclaim}, @code{declaim}, +and @code{the}. + +Most of the Common Lisp declarations are not currently useful in +Emacs Lisp, as the byte-code system provides little opportunity +to benefit from type information, and @code{special} declarations +are redundant in a fully dynamically-scoped Lisp. A few +declarations are meaningful when the optimizing byte +compiler is being used, however. Under the earlier non-optimizing +compiler, these declarations will effectively be ignored. + +@defun proclaim decl-spec +This function records a ``global'' declaration specified by +@var{decl-spec}. Since @code{proclaim} is a function, @var{decl-spec} +is evaluated and thus should normally be quoted. +@end defun + +@defspec declaim decl-specs@dots{} +This macro is like @code{proclaim}, except that it takes any number +of @var{decl-spec} arguments, and the arguments are unevaluated and +unquoted. The @code{declaim} macro also puts an @code{(eval-when +(compile load eval) ...)} around the declarations so that they will +be registered at compile-time as well as at run-time. (This is vital, +since normally the declarations are meant to influence the way the +compiler treats the rest of the file that contains the @code{declaim} +form.) +@end defspec + +@defspec declare decl-specs@dots{} +This macro is used to make declarations within functions and other +code. Common Lisp allows declarations in various locations, generally +at the beginning of any of the many ``implicit @code{progn}s'' +throughout Lisp syntax, such as function bodies, @code{let} bodies, +etc. Currently the only declaration understood by @code{declare} +is @code{special}. +@end defspec + +@defspec locally declarations@dots{} forms@dots{} +In this package, @code{locally} is no different from @code{progn}. +@end defspec + +@defspec the type form +Type information provided by @code{the} is ignored in this package; +in other words, @code{(the @var{type} @var{form})} is equivalent +to @var{form}. Future versions of the optimizing byte-compiler may +make use of this information. + +For example, @code{mapcar} can map over both lists and arrays. It is +hard for the compiler to expand @code{mapcar} into an in-line loop +unless it knows whether the sequence will be a list or an array ahead +of time. With @code{(mapcar 'car (the vector foo))}, a future +compiler would have enough information to expand the loop in-line. +For now, Emacs Lisp will treat the above code as exactly equivalent +to @code{(mapcar 'car foo)}. +@end defspec + +Each @var{decl-spec} in a @code{proclaim}, @code{declaim}, or +@code{declare} should be a list beginning with a symbol that says +what kind of declaration it is. This package currently understands +@code{special}, @code{inline}, @code{notinline}, @code{optimize}, +and @code{warn} declarations. (The @code{warn} declaration is an +extension of standard Common Lisp.) Other Common Lisp declarations, +such as @code{type} and @code{ftype}, are silently ignored. + +@table @code +@item special +Since all variables in Emacs Lisp are ``special'' (in the Common +Lisp sense), @code{special} declarations are only advisory. They +simply tell the optimizing byte compiler that the specified +variables are intentionally being referred to without being +bound in the body of the function. The compiler normally emits +warnings for such references, since they could be typographical +errors for references to local variables. + +The declaration @code{(declare (special @var{var1} @var{var2}))} is +equivalent to @code{(defvar @var{var1}) (defvar @var{var2})} in the +optimizing compiler, or to nothing at all in older compilers (which +do not warn for non-local references). + +In top-level contexts, it is generally better to write +@code{(defvar @var{var})} than @code{(declaim (special @var{var}))}, +since @code{defvar} makes your intentions clearer. But the older +byte compilers can not handle @code{defvar}s appearing inside of +functions, while @code{(declare (special @var{var}))} takes care +to work correctly with all compilers. + +@item inline +The @code{inline} @var{decl-spec} lists one or more functions +whose bodies should be expanded ``in-line'' into calling functions +whenever the compiler is able to arrange for it. For example, +the Common Lisp function @code{cadr} is declared @code{inline} +by this package so that the form @code{(cadr @var{x})} will +expand directly into @code{(car (cdr @var{x}))} when it is called +in user functions, for a savings of one (relatively expensive) +function call. + +The following declarations are all equivalent. Note that the +@code{defsubst} form is a convenient way to define a function +and declare it inline all at once. + +@example +(declaim (inline foo bar)) +(eval-when (compile load eval) (proclaim '(inline foo bar))) +(defsubst foo (...) ...) ; instead of defun +@end example + +@strong{Please note:} this declaration remains in effect after the +containing source file is done. It is correct to use it to +request that a function you have defined should be inlined, +but it is impolite to use it to request inlining of an external +function. + +In Common Lisp, it is possible to use @code{(declare (inline @dots{}))} +before a particular call to a function to cause just that call to +be inlined; the current byte compilers provide no way to implement +this, so @code{(declare (inline @dots{}))} is currently ignored by +this package. + +@item notinline +The @code{notinline} declaration lists functions which should +not be inlined after all; it cancels a previous @code{inline} +declaration. + +@item optimize +This declaration controls how much optimization is performed by +the compiler. Naturally, it is ignored by the earlier non-optimizing +compilers. + +The word @code{optimize} is followed by any number of lists like +@code{(speed 3)} or @code{(safety 2)}. Common Lisp defines several +optimization ``qualities''; this package ignores all but @code{speed} +and @code{safety}. The value of a quality should be an integer from +0 to 3, with 0 meaning ``unimportant'' and 3 meaning ``very important.'' +The default level for both qualities is 1. + +In this package, with the optimizing compiler, the +@code{speed} quality is tied to the @code{byte-compile-optimize} +flag, which is set to @code{nil} for @code{(speed 0)} and to +@code{t} for higher settings; and the @code{safety} quality is +tied to the @code{byte-compile-delete-errors} flag, which is +set to @code{t} for @code{(safety 3)} and to @code{nil} for all +lower settings. (The latter flag controls whether the compiler +is allowed to optimize out code whose only side-effect could +be to signal an error, e.g., rewriting @code{(progn foo bar)} to +@code{bar} when it is not known whether @code{foo} will be bound +at run-time.) + +Note that even compiling with @code{(safety 0)}, the Emacs +byte-code system provides sufficient checking to prevent real +harm from being done. For example, barring serious bugs in +Emacs itself, Emacs will not crash with a segmentation fault +just because of an error in a fully-optimized Lisp program. + +The @code{optimize} declaration is normally used in a top-level +@code{proclaim} or @code{declaim} in a file; Common Lisp allows +it to be used with @code{declare} to set the level of optimization +locally for a given form, but this will not work correctly with the +current version of the optimizing compiler. (The @code{declare} +will set the new optimization level, but that level will not +automatically be unset after the enclosing form is done.) + +@item warn +This declaration controls what sorts of warnings are generated +by the byte compiler. Again, only the optimizing compiler +generates warnings. The word @code{warn} is followed by any +number of ``warning qualities,'' similar in form to optimization +qualities. The currently supported warning types are +@code{redefine}, @code{callargs}, @code{unresolved}, and +@code{free-vars}; in the current system, a value of 0 will +disable these warnings and any higher value will enable them. +See the documentation for the optimizing byte compiler for details. +@end table + +@node Symbols, Numbers, Declarations, Top +@chapter Symbols + +@noindent +This package defines several symbol-related features that were +missing from Emacs Lisp. + +@menu +* Property Lists:: `get*', `remprop', `getf', `remf' +* Creating Symbols:: `gensym', `gentemp' +@end menu + +@node Property Lists, Creating Symbols, Symbols, Symbols +@section Property Lists + +@noindent +These functions augment the standard Emacs Lisp functions @code{get} +and @code{put} for operating on properties attached to symbols. +There are also functions for working with property lists as +first-class data structures not attached to particular symbols. + +@defun get* symbol property &optional default +This function is like @code{get}, except that if the property is +not found, the @var{default} argument provides the return value. +(The Emacs Lisp @code{get} function always uses @code{nil} as +the default; this package's @code{get*} is equivalent to Common +Lisp's @code{get}.) + +The @code{get*} function is @code{setf}-able; when used in this +fashion, the @var{default} argument is allowed but ignored. +@end defun + +@defun remprop symbol property +This function removes the entry for @var{property} from the property +list of @var{symbol}. It returns a true value if the property was +indeed found and removed, or @code{nil} if there was no such property. +(This function was probably omitted from Emacs originally because, +since @code{get} did not allow a @var{default}, it was very difficult +to distinguish between a missing property and a property whose value +was @code{nil}; thus, setting a property to @code{nil} was close +enough to @code{remprop} for most purposes.) +@end defun + +@defun getf place property &optional default +This function scans the list @var{place} as if it were a property +list, i.e., a list of alternating property names and values. If +an even-numbered element of @var{place} is found which is @code{eq} +to @var{property}, the following odd-numbered element is returned. +Otherwise, @var{default} is returned (or @code{nil} if no default +is given). + +In particular, + +@example +(get sym prop) @equiv{} (getf (symbol-plist sym) prop) +@end example + +It is valid to use @code{getf} as a @code{setf} place, in which case +its @var{place} argument must itself be a valid @code{setf} place. +The @var{default} argument, if any, is ignored in this context. +The effect is to change (via @code{setcar}) the value cell in the +list that corresponds to @var{property}, or to cons a new property-value +pair onto the list if the property is not yet present. + +@example +(put sym prop val) @equiv{} (setf (getf (symbol-plist sym) prop) val) +@end example + +The @code{get} and @code{get*} functions are also @code{setf}-able. +The fact that @code{default} is ignored can sometimes be useful: + +@example +(incf (get* 'foo 'usage-count 0)) +@end example + +Here, symbol @code{foo}'s @code{usage-count} property is incremented +if it exists, or set to 1 (an incremented 0) otherwise. + +When not used as a @code{setf} form, @code{getf} is just a regular +function and its @var{place} argument can actually be any Lisp +expression. +@end defun + +@defspec remf place property +This macro removes the property-value pair for @var{property} from +the property list stored at @var{place}, which is any @code{setf}-able +place expression. It returns true if the property was found. Note +that if @var{property} happens to be first on the list, this will +effectively do a @code{(setf @var{place} (cddr @var{place}))}, +whereas if it occurs later, this simply uses @code{setcdr} to splice +out the property and value cells. +@end defspec + +@iftex +@secno=2 +@end iftex + +@node Creating Symbols, , Property Lists, Symbols +@section Creating Symbols + +@noindent +These functions create unique symbols, typically for use as +temporary variables. + +@defun gensym &optional x +This function creates a new, uninterned symbol (using @code{make-symbol}) +with a unique name. (The name of an uninterned symbol is relevant +only if the symbol is printed.) By default, the name is generated +from an increasing sequence of numbers, @samp{G1000}, @samp{G1001}, +@samp{G1002}, etc. If the optional argument @var{x} is a string, that +string is used as a prefix instead of @samp{G}. Uninterned symbols +are used in macro expansions for temporary variables, to ensure that +their names will not conflict with ``real'' variables in the user's +code. +@end defun + +@defvar *gensym-counter* +This variable holds the counter used to generate @code{gensym} names. +It is incremented after each use by @code{gensym}. In Common Lisp +this is initialized with 0, but this package initializes it with a +random (time-dependent) value to avoid trouble when two files that +each used @code{gensym} in their compilation are loaded together. +(Uninterned symbols become interned when the compiler writes them +out to a file and the Emacs loader loads them, so their names have to +be treated a bit more carefully than in Common Lisp where uninterned +symbols remain uninterned after loading.) +@end defvar + +@defun gentemp &optional x +This function is like @code{gensym}, except that it produces a new +@emph{interned} symbol. If the symbol that is generated already +exists, the function keeps incrementing the counter and trying +again until a new symbol is generated. +@end defun + +The Quiroz @file{cl.el} package also defined a @code{defkeyword} +form for creating self-quoting keyword symbols. This package +automatically creates all keywords that are called for by +@code{&key} argument specifiers, and discourages the use of +keywords as data unrelated to keyword arguments, so the +@code{defkeyword} form has been discontinued. + +@iftex +@chapno=11 +@end iftex + +@node Numbers, Sequences, Symbols, Top +@chapter Numbers + +@noindent +This section defines a few simple Common Lisp operations on numbers +which were left out of Emacs Lisp. + +@menu +* Predicates on Numbers:: `plusp', `oddp', `floatp-safe', etc. +* Numerical Functions:: `abs', `floor*', etc. +* Random Numbers:: `random*', `make-random-state' +* Implementation Parameters:: `most-positive-float' +@end menu + +@iftex +@secno=1 +@end iftex + +@node Predicates on Numbers, Numerical Functions, Numbers, Numbers +@section Predicates on Numbers + +@noindent +These functions return @code{t} if the specified condition is +true of the numerical argument, or @code{nil} otherwise. + +@defun plusp number +This predicate tests whether @var{number} is positive. It is an +error if the argument is not a number. +@end defun + +@defun minusp number +This predicate tests whether @var{number} is negative. It is an +error if the argument is not a number. +@end defun + +@defun oddp integer +This predicate tests whether @var{integer} is odd. It is an +error if the argument is not an integer. +@end defun + +@defun evenp integer +This predicate tests whether @var{integer} is even. It is an +error if the argument is not an integer. +@end defun + +@defun floatp-safe object +This predicate tests whether @var{object} is a floating-point +number. On systems that support floating-point, this is equivalent +to @code{floatp}. On other systems, this always returns @code{nil}. +@end defun + +@iftex +@secno=3 +@end iftex + +@node Numerical Functions, Random Numbers, Predicates on Numbers, Numbers +@section Numerical Functions + +@noindent +These functions perform various arithmetic operations on numbers. + +@defun gcd &rest integers +This function returns the Greatest Common Divisor of the arguments. +For one argument, it returns the absolute value of that argument. +For zero arguments, it returns zero. +@end defun + +@defun lcm &rest integers +This function returns the Least Common Multiple of the arguments. +For one argument, it returns the absolute value of that argument. +For zero arguments, it returns one. +@end defun + +@defun isqrt integer +This function computes the ``integer square root'' of its integer +argument, i.e., the greatest integer less than or equal to the true +square root of the argument. +@end defun + +@defun floor* number &optional divisor +This function implements the Common Lisp @code{floor} function. +It is called @code{floor*} to avoid name conflicts with the +simpler @code{floor} function built-in to Emacs. + +With one argument, @code{floor*} returns a list of two numbers: +The argument rounded down (toward minus infinity) to an integer, +and the ``remainder'' which would have to be added back to the +first return value to yield the argument again. If the argument +is an integer @var{x}, the result is always the list @code{(@var{x} 0)}. +If the argument is a floating-point number, the first +result is a Lisp integer and the second is a Lisp float between +0 (inclusive) and 1 (exclusive). + +With two arguments, @code{floor*} divides @var{number} by +@var{divisor}, and returns the floor of the quotient and the +corresponding remainder as a list of two numbers. If +@code{(floor* @var{x} @var{y})} returns @code{(@var{q} @var{r})}, +then @code{@var{q}*@var{y} + @var{r} = @var{x}}, with @var{r} +between 0 (inclusive) and @var{r} (exclusive). Also, note +that @code{(floor* @var{x})} is exactly equivalent to +@code{(floor* @var{x} 1)}. + +This function is entirely compatible with Common Lisp's @code{floor} +function, except that it returns the two results in a list since +Emacs Lisp does not support multiple-valued functions. +@end defun + +@defun ceiling* number &optional divisor +This function implements the Common Lisp @code{ceiling} function, +which is analogous to @code{floor} except that it rounds the +argument or quotient of the arguments up toward plus infinity. +The remainder will be between 0 and minus @var{r}. +@end defun + +@defun truncate* number &optional divisor +This function implements the Common Lisp @code{truncate} function, +which is analogous to @code{floor} except that it rounds the +argument or quotient of the arguments toward zero. Thus it is +equivalent to @code{floor*} if the argument or quotient is +positive, or to @code{ceiling*} otherwise. The remainder has +the same sign as @var{number}. +@end defun + +@defun round* number &optional divisor +This function implements the Common Lisp @code{round} function, +which is analogous to @code{floor} except that it rounds the +argument or quotient of the arguments to the nearest integer. +In the case of a tie (the argument or quotient is exactly +halfway between two integers), it rounds to the even integer. +@end defun + +@defun mod* number divisor +This function returns the same value as the second return value +of @code{floor}. +@end defun + +@defun rem* number divisor +This function returns the same value as the second return value +of @code{truncate}. +@end defun + +These definitions are compatible with those in the Quiroz +@file{cl.el} package, except that this package appends @samp{*} +to certain function names to avoid conflicts with existing +Emacs functions, and that the mechanism for returning +multiple values is different. + +@iftex +@secno=8 +@end iftex + +@node Random Numbers, Implementation Parameters, Numerical Functions, Numbers +@section Random Numbers + +@noindent +This package also provides an implementation of the Common Lisp +random number generator. It uses its own additive-congruential +algorithm, which is much more likely to give statistically clean +random numbers than the simple generators supplied by many +operating systems. + +@defun random* number &optional state +This function returns a random nonnegative number less than +@var{number}, and of the same type (either integer or floating-point). +The @var{state} argument should be a @code{random-state} object +which holds the state of the random number generator. The +function modifies this state object as a side effect. If +@var{state} is omitted, it defaults to the variable +@code{*random-state*}, which contains a pre-initialized +@code{random-state} object. +@end defun + +@defvar *random-state* +This variable contains the system ``default'' @code{random-state} +object, used for calls to @code{random*} that do not specify an +alternative state object. Since any number of programs in the +Emacs process may be accessing @code{*random-state*} in interleaved +fashion, the sequence generated from this variable will be +irreproducible for all intents and purposes. +@end defvar + +@defun make-random-state &optional state +This function creates or copies a @code{random-state} object. +If @var{state} is omitted or @code{nil}, it returns a new copy of +@code{*random-state*}. This is a copy in the sense that future +sequences of calls to @code{(random* @var{n})} and +@code{(random* @var{n} @var{s})} (where @var{s} is the new +random-state object) will return identical sequences of random +numbers. + +If @var{state} is a @code{random-state} object, this function +returns a copy of that object. If @var{state} is @code{t}, this +function returns a new @code{random-state} object seeded from the +date and time. As an extension to Common Lisp, @var{state} may also +be an integer in which case the new object is seeded from that +integer; each different integer seed will result in a completely +different sequence of random numbers. + +It is valid to print a @code{random-state} object to a buffer or +file and later read it back with @code{read}. If a program wishes +to use a sequence of pseudo-random numbers which can be reproduced +later for debugging, it can call @code{(make-random-state t)} to +get a new sequence, then print this sequence to a file. When the +program is later rerun, it can read the original run's random-state +from the file. +@end defun + +@defun random-state-p object +This predicate returns @code{t} if @var{object} is a +@code{random-state} object, or @code{nil} otherwise. +@end defun + +@node Implementation Parameters, , Random Numbers, Numbers +@section Implementation Parameters + +@noindent +This package defines several useful constants having to with numbers. + +The following parameters have to do with floating-point numbers. +This package determines their values by exercising the computer's +floating-point arithmetic in various ways. Because this operation +might be slow, the code for initializing them is kept in a separate +function that must be called before the parameters can be used. + +@defun cl-float-limits +This function makes sure that the Common Lisp floating-point parameters +like @code{most-positive-float} have been initialized. Until it is +called, these parameters will be @code{nil}. If this version of Emacs +does not support floats, the parameters will remain @code{nil}. If the +parameters have already been initialized, the function returns +immediately. + +The algorithm makes assumptions that will be valid for most modern +machines, but will fail if the machine's arithmetic is extremely +unusual, e.g., decimal. +@end defun + +Since true Common Lisp supports up to four different floating-point +precisions, it has families of constants like +@code{most-positive-single-float}, @code{most-positive-double-float}, +@code{most-positive-long-float}, and so on. Emacs has only one +floating-point precision, so this package omits the precision word +from the constants' names. + +@defvar most-positive-float +This constant equals the largest value a Lisp float can hold. +For those systems whose arithmetic supports infinities, this is +the largest @emph{finite} value. For IEEE machines, the value +is approximately @code{1.79e+308}. +@end defvar + +@defvar most-negative-float +This constant equals the most-negative value a Lisp float can hold. +(It is assumed to be equal to @code{(- most-positive-float)}.) +@end defvar + +@defvar least-positive-float +This constant equals the smallest Lisp float value greater than zero. +For IEEE machines, it is about @code{4.94e-324} if denormals are +supported or @code{2.22e-308} if not. +@end defvar + +@defvar least-positive-normalized-float +This constant equals the smallest @emph{normalized} Lisp float greater +than zero, i.e., the smallest value for which IEEE denormalization +will not result in a loss of precision. For IEEE machines, this +value is about @code{2.22e-308}. For machines that do not support +the concept of denormalization and gradual underflow, this constant +will always equal @code{least-positive-float}. +@end defvar + +@defvar least-negative-float +This constant is the negative counterpart of @code{least-positive-float}. +@end defvar + +@defvar least-negative-normalized-float +This constant is the negative counterpart of +@code{least-positive-normalized-float}. +@end defvar + +@defvar float-epsilon +This constant is the smallest positive Lisp float that can be added +to 1.0 to produce a distinct value. Adding a smaller number to 1.0 +will yield 1.0 again due to roundoff. For IEEE machines, epsilon +is about @code{2.22e-16}. +@end defvar + +@defvar float-negative-epsilon +This is the smallest positive value that can be subtracted from +1.0 to produce a distinct value. For IEEE machines, it is about +@code{1.11e-16}. +@end defvar + +@iftex +@chapno=13 +@end iftex + +@node Sequences, Lists, Numbers, Top +@chapter Sequences + +@noindent +Common Lisp defines a number of functions that operate on +@dfn{sequences}, which are either lists, strings, or vectors. +Emacs Lisp includes a few of these, notably @code{elt} and +@code{length}; this package defines most of the rest. + +@menu +* Sequence Basics:: Arguments shared by all sequence functions +* Mapping over Sequences:: `mapcar*', `mapcan', `map', `every', etc. +* Sequence Functions:: `subseq', `remove*', `substitute', etc. +* Searching Sequences:: `find', `position', `count', `search', etc. +* Sorting Sequences:: `sort*', `stable-sort', `merge' +@end menu + +@node Sequence Basics, Mapping over Sequences, Sequences, Sequences +@section Sequence Basics + +@noindent +Many of the sequence functions take keyword arguments; @pxref{Argument +Lists}. All keyword arguments are optional and, if specified, +may appear in any order. + +The @code{:key} argument should be passed either @code{nil}, or a +function of one argument. This key function is used as a filter +through which the elements of the sequence are seen; for example, +@code{(find x y :key 'car)} is similar to @code{(assoc* x y)}: +It searches for an element of the list whose @code{car} equals +@code{x}, rather than for an element which equals @code{x} itself. +If @code{:key} is omitted or @code{nil}, the filter is effectively +the identity function. + +The @code{:test} and @code{:test-not} arguments should be either +@code{nil}, or functions of two arguments. The test function is +used to compare two sequence elements, or to compare a search value +with sequence elements. (The two values are passed to the test +function in the same order as the original sequence function +arguments from which they are derived, or, if they both come from +the same sequence, in the same order as they appear in that sequence.) +The @code{:test} argument specifies a function which must return +true (non-@code{nil}) to indicate a match; instead, you may use +@code{:test-not} to give a function which returns @emph{false} to +indicate a match. The default test function is @code{eql}. + +Many functions which take @var{item} and @code{:test} or @code{:test-not} +arguments also come in @code{-if} and @code{-if-not} varieties, +where a @var{predicate} function is passed instead of @var{item}, +and sequence elements match if the predicate returns true on them +(or false in the case of @code{-if-not}). For example: + +@example +(remove* 0 seq :test '=) @equiv{} (remove-if 'zerop seq) +@end example + +@noindent +to remove all zeros from sequence @code{seq}. + +Some operations can work on a subsequence of the argument sequence; +these function take @code{:start} and @code{:end} arguments which +default to zero and the length of the sequence, respectively. +Only elements between @var{start} (inclusive) and @var{end} +(exclusive) are affected by the operation. The @var{end} argument +may be passed @code{nil} to signify the length of the sequence; +otherwise, both @var{start} and @var{end} must be integers, with +@code{0 <= @var{start} <= @var{end} <= (length @var{seq})}. +If the function takes two sequence arguments, the limits are +defined by keywords @code{:start1} and @code{:end1} for the first, +and @code{:start2} and @code{:end2} for the second. + +A few functions accept a @code{:from-end} argument, which, if +non-@code{nil}, causes the operation to go from right-to-left +through the sequence instead of left-to-right, and a @code{:count} +argument, which specifies an integer maximum number of elements +to be removed or otherwise processed. + +The sequence functions make no guarantees about the order in +which the @code{:test}, @code{:test-not}, and @code{:key} functions +are called on various elements. Therefore, it is a bad idea to depend +on side effects of these functions. For example, @code{:from-end} +may cause the sequence to be scanned actually in reverse, or it may +be scanned forwards but computing a result ``as if'' it were scanned +backwards. (Some functions, like @code{mapcar*} and @code{every}, +@emph{do} specify exactly the order in which the function is called +so side effects are perfectly acceptable in those cases.) + +Strings may contain ``text properties'' as well +as character data. Except as noted, it is undefined whether or +not text properties are preserved by sequence functions. For +example, @code{(remove* ?A @var{str})} may or may not preserve +the properties of the characters copied from @var{str} into the +result. + +@node Mapping over Sequences, Sequence Functions, Sequence Basics, Sequences +@section Mapping over Sequences + +@noindent +These functions ``map'' the function you specify over the elements +of lists or arrays. They are all variations on the theme of the +built-in function @code{mapcar}. + +@defun mapcar* function seq &rest more-seqs +This function calls @var{function} on successive parallel sets of +elements from its argument sequences. Given a single @var{seq} +argument it is equivalent to @code{mapcar}; given @var{n} sequences, +it calls the function with the first elements of each of the sequences +as the @var{n} arguments to yield the first element of the result +list, then with the second elements, and so on. The mapping stops as +soon as the shortest sequence runs out. The argument sequences may +be any mixture of lists, strings, and vectors; the return sequence +is always a list. + +Common Lisp's @code{mapcar} accepts multiple arguments but works +only on lists; Emacs Lisp's @code{mapcar} accepts a single sequence +argument. This package's @code{mapcar*} works as a compatible +superset of both. +@end defun + +@defun map result-type function seq &rest more-seqs +This function maps @var{function} over the argument sequences, +just like @code{mapcar*}, but it returns a sequence of type +@var{result-type} rather than a list. @var{result-type} must +be one of the following symbols: @code{vector}, @code{string}, +@code{list} (in which case the effect is the same as for +@code{mapcar*}), or @code{nil} (in which case the results are +thrown away and @code{map} returns @code{nil}). +@end defun + +@defun maplist function list &rest more-lists +This function calls @var{function} on each of its argument lists, +then on the @code{cdr}s of those lists, and so on, until the +shortest list runs out. The results are returned in the form +of a list. Thus, @code{maplist} is like @code{mapcar*} except +that it passes in the list pointers themselves rather than the +@code{car}s of the advancing pointers. +@end defun + +@defun mapc function seq &rest more-seqs +This function is like @code{mapcar*}, except that the values returned +by @var{function} are ignored and thrown away rather than being +collected into a list. The return value of @code{mapc} is @var{seq}, +the first sequence. This function is more general than the Emacs +primitive @code{mapc}. +@end defun + +@defun mapl function list &rest more-lists +This function is like @code{maplist}, except that it throws away +the values returned by @var{function}. +@end defun + +@defun mapcan function seq &rest more-seqs +This function is like @code{mapcar*}, except that it concatenates +the return values (which must be lists) using @code{nconc}, +rather than simply collecting them into a list. +@end defun + +@defun mapcon function list &rest more-lists +This function is like @code{maplist}, except that it concatenates +the return values using @code{nconc}. +@end defun + +@defun some predicate seq &rest more-seqs +This function calls @var{predicate} on each element of @var{seq} +in turn; if @var{predicate} returns a non-@code{nil} value, +@code{some} returns that value, otherwise it returns @code{nil}. +Given several sequence arguments, it steps through the sequences +in parallel until the shortest one runs out, just as in +@code{mapcar*}. You can rely on the left-to-right order in which +the elements are visited, and on the fact that mapping stops +immediately as soon as @var{predicate} returns non-@code{nil}. +@end defun + +@defun every predicate seq &rest more-seqs +This function calls @var{predicate} on each element of the sequence(s) +in turn; it returns @code{nil} as soon as @var{predicate} returns +@code{nil} for any element, or @code{t} if the predicate was true +for all elements. +@end defun + +@defun notany predicate seq &rest more-seqs +This function calls @var{predicate} on each element of the sequence(s) +in turn; it returns @code{nil} as soon as @var{predicate} returns +a non-@code{nil} value for any element, or @code{t} if the predicate +was @code{nil} for all elements. +@end defun + +@defun notevery predicate seq &rest more-seqs +This function calls @var{predicate} on each element of the sequence(s) +in turn; it returns a non-@code{nil} value as soon as @var{predicate} +returns @code{nil} for any element, or @code{t} if the predicate was +true for all elements. +@end defun + +@defun reduce function seq @t{&key :from-end :start :end :initial-value :key} +This function combines the elements of @var{seq} using an associative +binary operation. Suppose @var{function} is @code{*} and @var{seq} is +the list @code{(2 3 4 5)}. The first two elements of the list are +combined with @code{(* 2 3) = 6}; this is combined with the next +element, @code{(* 6 4) = 24}, and that is combined with the final +element: @code{(* 24 5) = 120}. Note that the @code{*} function happens +to be self-reducing, so that @code{(* 2 3 4 5)} has the same effect as +an explicit call to @code{reduce}. + +If @code{:from-end} is true, the reduction is right-associative instead +of left-associative: + +@example +(reduce '- '(1 2 3 4)) + @equiv{} (- (- (- 1 2) 3) 4) @result{} -8 +(reduce '- '(1 2 3 4) :from-end t) + @equiv{} (- 1 (- 2 (- 3 4))) @result{} -2 +@end example + +If @code{:key} is specified, it is a function of one argument which +is called on each of the sequence elements in turn. + +If @code{:initial-value} is specified, it is effectively added to the +front (or rear in the case of @code{:from-end}) of the sequence. +The @code{:key} function is @emph{not} applied to the initial value. + +If the sequence, including the initial value, has exactly one element +then that element is returned without ever calling @var{function}. +If the sequence is empty (and there is no initial value), then +@var{function} is called with no arguments to obtain the return value. +@end defun + +All of these mapping operations can be expressed conveniently in +terms of the @code{loop} macro. In compiled code, @code{loop} will +be faster since it generates the loop as in-line code with no +function calls. + +@node Sequence Functions, Searching Sequences, Mapping over Sequences, Sequences +@section Sequence Functions + +@noindent +This section describes a number of Common Lisp functions for +operating on sequences. + +@defun subseq sequence start &optional end +This function returns a given subsequence of the argument +@var{sequence}, which may be a list, string, or vector. +The indices @var{start} and @var{end} must be in range, and +@var{start} must be no greater than @var{end}. If @var{end} +is omitted, it defaults to the length of the sequence. The +return value is always a copy; it does not share structure +with @var{sequence}. + +As an extension to Common Lisp, @var{start} and/or @var{end} +may be negative, in which case they represent a distance back +from the end of the sequence. This is for compatibility with +Emacs' @code{substring} function. Note that @code{subseq} is +the @emph{only} sequence function that allows negative +@var{start} and @var{end}. + +You can use @code{setf} on a @code{subseq} form to replace a +specified range of elements with elements from another sequence. +The replacement is done as if by @code{replace}, described below. +@end defun + +@defun concatenate result-type &rest seqs +This function concatenates the argument sequences together to +form a result sequence of type @var{result-type}, one of the +symbols @code{vector}, @code{string}, or @code{list}. The +arguments are always copied, even in cases such as +@code{(concatenate 'list '(1 2 3))} where the result is +identical to an argument. +@end defun + +@defun fill seq item @t{&key :start :end} +This function fills the elements of the sequence (or the specified +part of the sequence) with the value @var{item}. +@end defun + +@defun replace seq1 seq2 @t{&key :start1 :end1 :start2 :end2} +This function copies part of @var{seq2} into part of @var{seq1}. +The sequence @var{seq1} is not stretched or resized; the amount +of data copied is simply the shorter of the source and destination +(sub)sequences. The function returns @var{seq1}. + +If @var{seq1} and @var{seq2} are @code{eq}, then the replacement +will work correctly even if the regions indicated by the start +and end arguments overlap. However, if @var{seq1} and @var{seq2} +are lists which share storage but are not @code{eq}, and the +start and end arguments specify overlapping regions, the effect +is undefined. +@end defun + +@defun remove* item seq @t{&key :test :test-not :key :count :start :end :from-end} +This returns a copy of @var{seq} with all elements matching +@var{item} removed. The result may share storage with or be +@code{eq} to @var{seq} in some circumstances, but the original +@var{seq} will not be modified. The @code{:test}, @code{:test-not}, +and @code{:key} arguments define the matching test that is used; +by default, elements @code{eql} to @var{item} are removed. The +@code{:count} argument specifies the maximum number of matching +elements that can be removed (only the leftmost @var{count} matches +are removed). The @code{:start} and @code{:end} arguments specify +a region in @var{seq} in which elements will be removed; elements +outside that region are not matched or removed. The @code{:from-end} +argument, if true, says that elements should be deleted from the +end of the sequence rather than the beginning (this matters only +if @var{count} was also specified). +@end defun + +@defun delete* item seq @t{&key :test :test-not :key :count :start :end :from-end} +This deletes all elements of @var{seq} which match @var{item}. +It is a destructive operation. Since Emacs Lisp does not support +stretchable strings or vectors, this is the same as @code{remove*} +for those sequence types. On lists, @code{remove*} will copy the +list if necessary to preserve the original list, whereas +@code{delete*} will splice out parts of the argument list. +Compare @code{append} and @code{nconc}, which are analogous +non-destructive and destructive list operations in Emacs Lisp. +@end defun + +@findex remove-if +@findex remove-if-not +@findex delete-if +@findex delete-if-not +The predicate-oriented functions @code{remove-if}, @code{remove-if-not}, +@code{delete-if}, and @code{delete-if-not} are defined similarly. + +@defun remove-duplicates seq @t{&key :test :test-not :key :start :end :from-end} +This function returns a copy of @var{seq} with duplicate elements +removed. Specifically, if two elements from the sequence match +according to the @code{:test}, @code{:test-not}, and @code{:key} +arguments, only the rightmost one is retained. If @code{:from-end} +is true, the leftmost one is retained instead. If @code{:start} or +@code{:end} is specified, only elements within that subsequence are +examined or removed. +@end defun + +@defun delete-duplicates seq @t{&key :test :test-not :key :start :end :from-end} +This function deletes duplicate elements from @var{seq}. It is +a destructive version of @code{remove-duplicates}. +@end defun + +@defun substitute new old seq @t{&key :test :test-not :key :count :start :end :from-end} +This function returns a copy of @var{seq}, with all elements +matching @var{old} replaced with @var{new}. The @code{:count}, +@code{:start}, @code{:end}, and @code{:from-end} arguments may be +used to limit the number of substitutions made. +@end defun + +@defun nsubstitute new old seq @t{&key :test :test-not :key :count :start :end :from-end} +This is a destructive version of @code{substitute}; it performs +the substitution using @code{setcar} or @code{aset} rather than +by returning a changed copy of the sequence. +@end defun + +@findex substitute-if +@findex substitute-if-not +@findex nsubstitute-if +@findex nsubstitute-if-not +The @code{substitute-if}, @code{substitute-if-not}, @code{nsubstitute-if}, +and @code{nsubstitute-if-not} functions are defined similarly. For +these, a @var{predicate} is given in place of the @var{old} argument. + +@node Searching Sequences, Sorting Sequences, Sequence Functions, Sequences +@section Searching Sequences + +@noindent +These functions search for elements or subsequences in a sequence. +(See also @code{member*} and @code{assoc*}; @pxref{Lists}.) + +@defun find item seq @t{&key :test :test-not :key :start :end :from-end} +This function searches @var{seq} for an element matching @var{item}. +If it finds a match, it returns the matching element. Otherwise, +it returns @code{nil}. It returns the leftmost match, unless +@code{:from-end} is true, in which case it returns the rightmost +match. The @code{:start} and @code{:end} arguments may be used to +limit the range of elements that are searched. +@end defun + +@defun position item seq @t{&key :test :test-not :key :start :end :from-end} +This function is like @code{find}, except that it returns the +integer position in the sequence of the matching item rather than +the item itself. The position is relative to the start of the +sequence as a whole, even if @code{:start} is non-zero. The function +returns @code{nil} if no matching element was found. +@end defun + +@defun count item seq @t{&key :test :test-not :key :start :end} +This function returns the number of elements of @var{seq} which +match @var{item}. The result is always a nonnegative integer. +@end defun + +@findex find-if +@findex find-if-not +@findex position-if +@findex position-if-not +@findex count-if +@findex count-if-not +The @code{find-if}, @code{find-if-not}, @code{position-if}, +@code{position-if-not}, @code{count-if}, and @code{count-if-not} +functions are defined similarly. + +@defun mismatch seq1 seq2 @t{&key :test :test-not :key :start1 :end1 :start2 :end2 :from-end} +This function compares the specified parts of @var{seq1} and +@var{seq2}. If they are the same length and the corresponding +elements match (according to @code{:test}, @code{:test-not}, +and @code{:key}), the function returns @code{nil}. If there is +a mismatch, the function returns the index (relative to @var{seq1}) +of the first mismatching element. This will be the leftmost pair of +elements which do not match, or the position at which the shorter of +the two otherwise-matching sequences runs out. + +If @code{:from-end} is true, then the elements are compared from right +to left starting at @code{(1- @var{end1})} and @code{(1- @var{end2})}. +If the sequences differ, then one plus the index of the rightmost +difference (relative to @var{seq1}) is returned. + +An interesting example is @code{(mismatch str1 str2 :key 'upcase)}, +which compares two strings case-insensitively. +@end defun + +@defun search seq1 seq2 @t{&key :test :test-not :key :from-end :start1 :end1 :start2 :end2} +This function searches @var{seq2} for a subsequence that matches +@var{seq1} (or part of it specified by @code{:start1} and +@code{:end1}.) Only matches which fall entirely within the region +defined by @code{:start2} and @code{:end2} will be considered. +The return value is the index of the leftmost element of the +leftmost match, relative to the start of @var{seq2}, or @code{nil} +if no matches were found. If @code{:from-end} is true, the +function finds the @emph{rightmost} matching subsequence. +@end defun + +@node Sorting Sequences, , Searching Sequences, Sequences +@section Sorting Sequences + +@defun sort* seq predicate @t{&key :key} +This function sorts @var{seq} into increasing order as determined +by using @var{predicate} to compare pairs of elements. @var{predicate} +should return true (non-@code{nil}) if and only if its first argument +is less than (not equal to) its second argument. For example, +@code{<} and @code{string-lessp} are suitable predicate functions +for sorting numbers and strings, respectively; @code{>} would sort +numbers into decreasing rather than increasing order. + +This function differs from Emacs' built-in @code{sort} in that it +can operate on any type of sequence, not just lists. Also, it +accepts a @code{:key} argument which is used to preprocess data +fed to the @var{predicate} function. For example, + +@example +(setq data (sort* data 'string-lessp :key 'downcase)) +@end example + +@noindent +sorts @var{data}, a sequence of strings, into increasing alphabetical +order without regard to case. A @code{:key} function of @code{car} +would be useful for sorting association lists. It should only be a +simple accessor though, it's used heavily in the current +implementation. + +The @code{sort*} function is destructive; it sorts lists by actually +rearranging the @code{cdr} pointers in suitable fashion. +@end defun + +@defun stable-sort seq predicate @t{&key :key} +This function sorts @var{seq} @dfn{stably}, meaning two elements +which are equal in terms of @var{predicate} are guaranteed not to +be rearranged out of their original order by the sort. + +In practice, @code{sort*} and @code{stable-sort} are equivalent +in Emacs Lisp because the underlying @code{sort} function is +stable by default. However, this package reserves the right to +use non-stable methods for @code{sort*} in the future. +@end defun + +@defun merge type seq1 seq2 predicate @t{&key :key} +This function merges two sequences @var{seq1} and @var{seq2} by +interleaving their elements. The result sequence, of type @var{type} +(in the sense of @code{concatenate}), has length equal to the sum +of the lengths of the two input sequences. The sequences may be +modified destructively. Order of elements within @var{seq1} and +@var{seq2} is preserved in the interleaving; elements of the two +sequences are compared by @var{predicate} (in the sense of +@code{sort}) and the lesser element goes first in the result. +When elements are equal, those from @var{seq1} precede those from +@var{seq2} in the result. Thus, if @var{seq1} and @var{seq2} are +both sorted according to @var{predicate}, then the result will be +a merged sequence which is (stably) sorted according to +@var{predicate}. +@end defun + +@node Lists, Structures, Sequences, Top +@chapter Lists + +@noindent +The functions described here operate on lists. + +@menu +* List Functions:: `caddr', `first', `list*', etc. +* Substitution of Expressions:: `subst', `sublis', etc. +* Lists as Sets:: `member*', `adjoin', `union', etc. +* Association Lists:: `assoc*', `rassoc*', `acons', `pairlis' +@end menu + +@node List Functions, Substitution of Expressions, Lists, Lists +@section List Functions + +@noindent +This section describes a number of simple operations on lists, +i.e., chains of cons cells. + +@defun caddr x +This function is equivalent to @code{(car (cdr (cdr @var{x})))}. +Likewise, this package defines all 28 @code{c@var{xxx}r} functions +where @var{xxx} is up to four @samp{a}s and/or @samp{d}s. +All of these functions are @code{setf}-able, and calls to them +are expanded inline by the byte-compiler for maximum efficiency. +@end defun + +@defun first x +This function is a synonym for @code{(car @var{x})}. Likewise, +the functions @code{second}, @code{third}, @dots{}, through +@code{tenth} return the given element of the list @var{x}. +@end defun + +@defun rest x +This function is a synonym for @code{(cdr @var{x})}. +@end defun + +@defun endp x +Common Lisp defines this function to act like @code{null}, but +signaling an error if @code{x} is neither a @code{nil} nor a +cons cell. This package simply defines @code{endp} as a synonym +for @code{null}. +@end defun + +@defun list-length x +This function returns the length of list @var{x}, exactly like +@code{(length @var{x})}, except that if @var{x} is a circular +list (where the cdr-chain forms a loop rather than terminating +with @code{nil}), this function returns @code{nil}. (The regular +@code{length} function would get stuck if given a circular list.) +@end defun + +@defun list* arg &rest others +This function constructs a list of its arguments. The final +argument becomes the @code{cdr} of the last cell constructed. +Thus, @code{(list* @var{a} @var{b} @var{c})} is equivalent to +@code{(cons @var{a} (cons @var{b} @var{c}))}, and +@code{(list* @var{a} @var{b} nil)} is equivalent to +@code{(list @var{a} @var{b})}. + +(Note that this function really is called @code{list*} in Common +Lisp; it is not a name invented for this package like @code{member*} +or @code{defun*}.) +@end defun + +@defun ldiff list sublist +If @var{sublist} is a sublist of @var{list}, i.e., is @code{eq} to +one of the cons cells of @var{list}, then this function returns +a copy of the part of @var{list} up to but not including +@var{sublist}. For example, @code{(ldiff x (cddr x))} returns +the first two elements of the list @code{x}. The result is a +copy; the original @var{list} is not modified. If @var{sublist} +is not a sublist of @var{list}, a copy of the entire @var{list} +is returned. +@end defun + +@defun copy-list list +This function returns a copy of the list @var{list}. It copies +dotted lists like @code{(1 2 . 3)} correctly. +@end defun + +@defun copy-tree x &optional vecp +This function returns a copy of the tree of cons cells @var{x}. +Unlike @code{copy-sequence} (and its alias @code{copy-list}), +which copies only along the @code{cdr} direction, this function +copies (recursively) along both the @code{car} and the @code{cdr} +directions. If @var{x} is not a cons cell, the function simply +returns @var{x} unchanged. If the optional @var{vecp} argument +is true, this function copies vectors (recursively) as well as +cons cells. +@end defun + +@defun tree-equal x y @t{&key :test :test-not :key} +This function compares two trees of cons cells. If @var{x} and +@var{y} are both cons cells, their @code{car}s and @code{cdr}s are +compared recursively. If neither @var{x} nor @var{y} is a cons +cell, they are compared by @code{eql}, or according to the +specified test. The @code{:key} function, if specified, is +applied to the elements of both trees. @xref{Sequences}. +@end defun + +@iftex +@secno=3 +@end iftex + +@node Substitution of Expressions, Lists as Sets, List Functions, Lists +@section Substitution of Expressions + +@noindent +These functions substitute elements throughout a tree of cons +cells. (@xref{Sequence Functions}, for the @code{substitute} +function, which works on just the top-level elements of a list.) + +@defun subst new old tree @t{&key :test :test-not :key} +This function substitutes occurrences of @var{old} with @var{new} +in @var{tree}, a tree of cons cells. It returns a substituted +tree, which will be a copy except that it may share storage with +the argument @var{tree} in parts where no substitutions occurred. +The original @var{tree} is not modified. This function recurses +on, and compares against @var{old}, both @code{car}s and @code{cdr}s +of the component cons cells. If @var{old} is itself a cons cell, +then matching cells in the tree are substituted as usual without +recursively substituting in that cell. Comparisons with @var{old} +are done according to the specified test (@code{eql} by default). +The @code{:key} function is applied to the elements of the tree +but not to @var{old}. +@end defun + +@defun nsubst new old tree @t{&key :test :test-not :key} +This function is like @code{subst}, except that it works by +destructive modification (by @code{setcar} or @code{setcdr}) +rather than copying. +@end defun + +@findex subst-if +@findex subst-if-not +@findex nsubst-if +@findex nsubst-if-not +The @code{subst-if}, @code{subst-if-not}, @code{nsubst-if}, and +@code{nsubst-if-not} functions are defined similarly. + +@defun sublis alist tree @t{&key :test :test-not :key} +This function is like @code{subst}, except that it takes an +association list @var{alist} of @var{old}-@var{new} pairs. +Each element of the tree (after applying the @code{:key} +function, if any), is compared with the @code{car}s of +@var{alist}; if it matches, it is replaced by the corresponding +@code{cdr}. +@end defun + +@defun nsublis alist tree @t{&key :test :test-not :key} +This is a destructive version of @code{sublis}. +@end defun + +@node Lists as Sets, Association Lists, Substitution of Expressions, Lists +@section Lists as Sets + +@noindent +These functions perform operations on lists which represent sets +of elements. + +@defun member* item list @t{&key :test :test-not :key} +This function searches @var{list} for an element matching @var{item}. +If a match is found, it returns the cons cell whose @code{car} was +the matching element. Otherwise, it returns @code{nil}. Elements +are compared by @code{eql} by default; you can use the @code{:test}, +@code{:test-not}, and @code{:key} arguments to modify this behavior. +@xref{Sequences}. + +Note that this function's name is suffixed by @samp{*} to avoid +the incompatible @code{member} function defined in Emacs. +(That function uses @code{equal} for comparisons; it is equivalent +to @code{(member* @var{item} @var{list} :test 'equal)}.) +@end defun + +@findex member-if +@findex member-if-not +The @code{member-if} and @code{member-if-not} functions +analogously search for elements which satisfy a given predicate. + +@defun tailp sublist list +This function returns @code{t} if @var{sublist} is a sublist of +@var{list}, i.e., if @var{sublist} is @code{eql} to @var{list} or to +any of its @code{cdr}s. +@end defun + +@defun adjoin item list @t{&key :test :test-not :key} +This function conses @var{item} onto the front of @var{list}, +like @code{(cons @var{item} @var{list})}, but only if @var{item} +is not already present on the list (as determined by @code{member*}). +If a @code{:key} argument is specified, it is applied to +@var{item} as well as to the elements of @var{list} during +the search, on the reasoning that @var{item} is ``about'' to +become part of the list. +@end defun + +@defun union list1 list2 @t{&key :test :test-not :key} +This function combines two lists which represent sets of items, +returning a list that represents the union of those two sets. +The result list will contain all items which appear in @var{list1} +or @var{list2}, and no others. If an item appears in both +@var{list1} and @var{list2} it will be copied only once. If +an item is duplicated in @var{list1} or @var{list2}, it is +undefined whether or not that duplication will survive in the +result list. The order of elements in the result list is also +undefined. +@end defun + +@defun nunion list1 list2 @t{&key :test :test-not :key} +This is a destructive version of @code{union}; rather than copying, +it tries to reuse the storage of the argument lists if possible. +@end defun + +@defun intersection list1 list2 @t{&key :test :test-not :key} +This function computes the intersection of the sets represented +by @var{list1} and @var{list2}. It returns the list of items +which appear in both @var{list1} and @var{list2}. +@end defun + +@defun nintersection list1 list2 @t{&key :test :test-not :key} +This is a destructive version of @code{intersection}. It +tries to reuse storage of @var{list1} rather than copying. +It does @emph{not} reuse the storage of @var{list2}. +@end defun + +@defun set-difference list1 list2 @t{&key :test :test-not :key} +This function computes the ``set difference'' of @var{list1} +and @var{list2}, i.e., the set of elements that appear in +@var{list1} but @emph{not} in @var{list2}. +@end defun + +@defun nset-difference list1 list2 @t{&key :test :test-not :key} +This is a destructive @code{set-difference}, which will try +to reuse @var{list1} if possible. +@end defun + +@defun set-exclusive-or list1 list2 @t{&key :test :test-not :key} +This function computes the ``set exclusive or'' of @var{list1} +and @var{list2}, i.e., the set of elements that appear in +exactly one of @var{list1} and @var{list2}. +@end defun + +@defun nset-exclusive-or list1 list2 @t{&key :test :test-not :key} +This is a destructive @code{set-exclusive-or}, which will try +to reuse @var{list1} and @var{list2} if possible. +@end defun + +@defun subsetp list1 list2 @t{&key :test :test-not :key} +This function checks whether @var{list1} represents a subset +of @var{list2}, i.e., whether every element of @var{list1} +also appears in @var{list2}. +@end defun + +@node Association Lists, , Lists as Sets, Lists +@section Association Lists + +@noindent +An @dfn{association list} is a list representing a mapping from +one set of values to another; any list whose elements are cons +cells is an association list. + +@defun assoc* item a-list @t{&key :test :test-not :key} +This function searches the association list @var{a-list} for an +element whose @code{car} matches (in the sense of @code{:test}, +@code{:test-not}, and @code{:key}, or by comparison with @code{eql}) +a given @var{item}. It returns the matching element, if any, +otherwise @code{nil}. It ignores elements of @var{a-list} which +are not cons cells. (This corresponds to the behavior of +@code{assq} and @code{assoc} in Emacs Lisp; Common Lisp's +@code{assoc} ignores @code{nil}s but considers any other non-cons +elements of @var{a-list} to be an error.) +@end defun + +@defun rassoc* item a-list @t{&key :test :test-not :key} +This function searches for an element whose @code{cdr} matches +@var{item}. If @var{a-list} represents a mapping, this applies +the inverse of the mapping to @var{item}. +@end defun + +@findex assoc-if +@findex assoc-if-not +@findex rassoc-if +@findex rassoc-if-not +The @code{assoc-if}, @code{assoc-if-not}, @code{rassoc-if}, +and @code{rassoc-if-not} functions are defined similarly. + +Two simple functions for constructing association lists are: + +@defun acons key value alist +This is equivalent to @code{(cons (cons @var{key} @var{value}) @var{alist})}. +@end defun + +@defun pairlis keys values &optional alist +This is equivalent to @code{(nconc (mapcar* 'cons @var{keys} @var{values}) +@var{alist})}. +@end defun + +@iftex +@chapno=18 +@end iftex + +@node Structures, Assertions, Lists, Top +@chapter Structures + +@noindent +The Common Lisp @dfn{structure} mechanism provides a general way +to define data types similar to C's @code{struct} types. A +structure is a Lisp object containing some number of @dfn{slots}, +each of which can hold any Lisp data object. Functions are +provided for accessing and setting the slots, creating or copying +structure objects, and recognizing objects of a particular structure +type. + +In true Common Lisp, each structure type is a new type distinct +from all existing Lisp types. Since the underlying Emacs Lisp +system provides no way to create new distinct types, this package +implements structures as vectors (or lists upon request) with a +special ``tag'' symbol to identify them. + +@defspec defstruct name slots@dots{} +The @code{defstruct} form defines a new structure type called +@var{name}, with the specified @var{slots}. (The @var{slots} +may begin with a string which documents the structure type.) +In the simplest case, @var{name} and each of the @var{slots} +are symbols. For example, + +@example +(defstruct person name age sex) +@end example + +@noindent +defines a struct type called @code{person} which contains three +slots. Given a @code{person} object @var{p}, you can access those +slots by calling @code{(person-name @var{p})}, @code{(person-age @var{p})}, +and @code{(person-sex @var{p})}. You can also change these slots by +using @code{setf} on any of these place forms: + +@example +(incf (person-age birthday-boy)) +@end example + +You can create a new @code{person} by calling @code{make-person}, +which takes keyword arguments @code{:name}, @code{:age}, and +@code{:sex} to specify the initial values of these slots in the +new object. (Omitting any of these arguments leaves the corresponding +slot ``undefined,'' according to the Common Lisp standard; in Emacs +Lisp, such uninitialized slots are filled with @code{nil}.) + +Given a @code{person}, @code{(copy-person @var{p})} makes a new +object of the same type whose slots are @code{eq} to those of @var{p}. + +Given any Lisp object @var{x}, @code{(person-p @var{x})} returns +true if @var{x} looks like a @code{person}, false otherwise. (Again, +in Common Lisp this predicate would be exact; in Emacs Lisp the +best it can do is verify that @var{x} is a vector of the correct +length which starts with the correct tag symbol.) + +Accessors like @code{person-name} normally check their arguments +(effectively using @code{person-p}) and signal an error if the +argument is the wrong type. This check is affected by +@code{(optimize (safety @dots{}))} declarations. Safety level 1, +the default, uses a somewhat optimized check that will detect all +incorrect arguments, but may use an uninformative error message +(e.g., ``expected a vector'' instead of ``expected a @code{person}''). +Safety level 0 omits all checks except as provided by the underlying +@code{aref} call; safety levels 2 and 3 do rigorous checking that will +always print a descriptive error message for incorrect inputs. +@xref{Declarations}. + +@example +(setq dave (make-person :name "Dave" :sex 'male)) + @result{} [cl-struct-person "Dave" nil male] +(setq other (copy-person dave)) + @result{} [cl-struct-person "Dave" nil male] +(eq dave other) + @result{} nil +(eq (person-name dave) (person-name other)) + @result{} t +(person-p dave) + @result{} t +(person-p [1 2 3 4]) + @result{} nil +(person-p "Bogus") + @result{} nil +(person-p '[cl-struct-person counterfeit person object]) + @result{} t +@end example + +In general, @var{name} is either a name symbol or a list of a name +symbol followed by any number of @dfn{struct options}; each @var{slot} +is either a slot symbol or a list of the form @samp{(@var{slot-name} +@var{default-value} @var{slot-options}@dots{})}. The @var{default-value} +is a Lisp form which is evaluated any time an instance of the +structure type is created without specifying that slot's value. + +Common Lisp defines several slot options, but the only one +implemented in this package is @code{:read-only}. A non-@code{nil} +value for this option means the slot should not be @code{setf}-able; +the slot's value is determined when the object is created and does +not change afterward. + +@example +(defstruct person + (name nil :read-only t) + age + (sex 'unknown)) +@end example + +Any slot options other than @code{:read-only} are ignored. + +For obscure historical reasons, structure options take a different +form than slot options. A structure option is either a keyword +symbol, or a list beginning with a keyword symbol possibly followed +by arguments. (By contrast, slot options are key-value pairs not +enclosed in lists.) + +@example +(defstruct (person (:constructor create-person) + (:type list) + :named) + name age sex) +@end example + +The following structure options are recognized. + +@table @code +@iftex +@itemmax=0 in +@advance@leftskip-.5@tableindent +@end iftex +@item :conc-name +The argument is a symbol whose print name is used as the prefix for +the names of slot accessor functions. The default is the name of +the struct type followed by a hyphen. The option @code{(:conc-name p-)} +would change this prefix to @code{p-}. Specifying @code{nil} as an +argument means no prefix, so that the slot names themselves are used +to name the accessor functions. + +@item :constructor +In the simple case, this option takes one argument which is an +alternate name to use for the constructor function. The default +is @code{make-@var{name}}, e.g., @code{make-person}. The above +example changes this to @code{create-person}. Specifying @code{nil} +as an argument means that no standard constructor should be +generated at all. + +In the full form of this option, the constructor name is followed +by an arbitrary argument list. @xref{Program Structure}, for a +description of the format of Common Lisp argument lists. All +options, such as @code{&rest} and @code{&key}, are supported. +The argument names should match the slot names; each slot is +initialized from the corresponding argument. Slots whose names +do not appear in the argument list are initialized based on the +@var{default-value} in their slot descriptor. Also, @code{&optional} +and @code{&key} arguments which don't specify defaults take their +defaults from the slot descriptor. It is valid to include arguments +which don't correspond to slot names; these are useful if they are +referred to in the defaults for optional, keyword, or @code{&aux} +arguments which @emph{do} correspond to slots. + +You can specify any number of full-format @code{:constructor} +options on a structure. The default constructor is still generated +as well unless you disable it with a simple-format @code{:constructor} +option. + +@example +(defstruct + (person + (:constructor nil) ; no default constructor + (:constructor new-person (name sex &optional (age 0))) + (:constructor new-hound (&key (name "Rover") + (dog-years 0) + &aux (age (* 7 dog-years)) + (sex 'canine)))) + name age sex) +@end example + +The first constructor here takes its arguments positionally rather +than by keyword. (In official Common Lisp terminology, constructors +that work By Order of Arguments instead of by keyword are called +``BOA constructors.'' No, I'm not making this up.) For example, +@code{(new-person "Jane" 'female)} generates a person whose slots +are @code{"Jane"}, 0, and @code{female}, respectively. + +The second constructor takes two keyword arguments, @code{:name}, +which initializes the @code{name} slot and defaults to @code{"Rover"}, +and @code{:dog-years}, which does not itself correspond to a slot +but which is used to initialize the @code{age} slot. The @code{sex} +slot is forced to the symbol @code{canine} with no syntax for +overriding it. + +@item :copier +The argument is an alternate name for the copier function for +this type. The default is @code{copy-@var{name}}. @code{nil} +means not to generate a copier function. (In this implementation, +all copier functions are simply synonyms for @code{copy-sequence}.) + +@item :predicate +The argument is an alternate name for the predicate which recognizes +objects of this type. The default is @code{@var{name}-p}. @code{nil} +means not to generate a predicate function. (If the @code{:type} +option is used without the @code{:named} option, no predicate is +ever generated.) + +In true Common Lisp, @code{typep} is always able to recognize a +structure object even if @code{:predicate} was used. In this +package, @code{typep} simply looks for a function called +@code{@var{typename}-p}, so it will work for structure types +only if they used the default predicate name. + +@item :include +This option implements a very limited form of C++-style inheritance. +The argument is the name of another structure type previously +created with @code{defstruct}. The effect is to cause the new +structure type to inherit all of the included structure's slots +(plus, of course, any new slots described by this struct's slot +descriptors). The new structure is considered a ``specialization'' +of the included one. In fact, the predicate and slot accessors +for the included type will also accept objects of the new type. + +If there are extra arguments to the @code{:include} option after +the included-structure name, these options are treated as replacement +slot descriptors for slots in the included structure, possibly with +modified default values. Borrowing an example from Steele: + +@example +(defstruct person name (age 0) sex) + @result{} person +(defstruct (astronaut (:include person (age 45))) + helmet-size + (favorite-beverage 'tang)) + @result{} astronaut + +(setq joe (make-person :name "Joe")) + @result{} [cl-struct-person "Joe" 0 nil] +(setq buzz (make-astronaut :name "Buzz")) + @result{} [cl-struct-astronaut "Buzz" 45 nil nil tang] + +(list (person-p joe) (person-p buzz)) + @result{} (t t) +(list (astronaut-p joe) (astronaut-p buzz)) + @result{} (nil t) + +(person-name buzz) + @result{} "Buzz" +(astronaut-name joe) + @result{} error: "astronaut-name accessing a non-astronaut" +@end example + +Thus, if @code{astronaut} is a specialization of @code{person}, +then every @code{astronaut} is also a @code{person} (but not the +other way around). Every @code{astronaut} includes all the slots +of a @code{person}, plus extra slots that are specific to +astronauts. Operations that work on people (like @code{person-name}) +work on astronauts just like other people. + +@item :print-function +In full Common Lisp, this option allows you to specify a function +which is called to print an instance of the structure type. The +Emacs Lisp system offers no hooks into the Lisp printer which would +allow for such a feature, so this package simply ignores +@code{:print-function}. + +@item :type +The argument should be one of the symbols @code{vector} or @code{list}. +This tells which underlying Lisp data type should be used to implement +the new structure type. Vectors are used by default, but +@code{(:type list)} will cause structure objects to be stored as +lists instead. + +The vector representation for structure objects has the advantage +that all structure slots can be accessed quickly, although creating +vectors is a bit slower in Emacs Lisp. Lists are easier to create, +but take a relatively long time accessing the later slots. + +@item :named +This option, which takes no arguments, causes a characteristic ``tag'' +symbol to be stored at the front of the structure object. Using +@code{:type} without also using @code{:named} will result in a +structure type stored as plain vectors or lists with no identifying +features. + +The default, if you don't specify @code{:type} explicitly, is to +use named vectors. Therefore, @code{:named} is only useful in +conjunction with @code{:type}. + +@example +(defstruct (person1) name age sex) +(defstruct (person2 (:type list) :named) name age sex) +(defstruct (person3 (:type list)) name age sex) + +(setq p1 (make-person1)) + @result{} [cl-struct-person1 nil nil nil] +(setq p2 (make-person2)) + @result{} (person2 nil nil nil) +(setq p3 (make-person3)) + @result{} (nil nil nil) + +(person1-p p1) + @result{} t +(person2-p p2) + @result{} t +(person3-p p3) + @result{} error: function person3-p undefined +@end example + +Since unnamed structures don't have tags, @code{defstruct} is not +able to make a useful predicate for recognizing them. Also, +accessors like @code{person3-name} will be generated but they +will not be able to do any type checking. The @code{person3-name} +function, for example, will simply be a synonym for @code{car} in +this case. By contrast, @code{person2-name} is able to verify +that its argument is indeed a @code{person2} object before +proceeding. + +@item :initial-offset +The argument must be a nonnegative integer. It specifies a +number of slots to be left ``empty'' at the front of the +structure. If the structure is named, the tag appears at the +specified position in the list or vector; otherwise, the first +slot appears at that position. Earlier positions are filled +with @code{nil} by the constructors and ignored otherwise. If +the type @code{:include}s another type, then @code{:initial-offset} +specifies a number of slots to be skipped between the last slot +of the included type and the first new slot. +@end table +@end defspec + +Except as noted, the @code{defstruct} facility of this package is +entirely compatible with that of Common Lisp. + +@iftex +@chapno=23 +@end iftex + +@node Assertions, Efficiency Concerns, Structures, Top +@chapter Assertions and Errors + +@noindent +This section describes two macros that test @dfn{assertions}, i.e., +conditions which must be true if the program is operating correctly. +Assertions never add to the behavior of a Lisp program; they simply +make ``sanity checks'' to make sure everything is as it should be. + +If the optimization property @code{speed} has been set to 3, and +@code{safety} is less than 3, then the byte-compiler will optimize +away the following assertions. Because assertions might be optimized +away, it is a bad idea for them to include side-effects. + +@defspec assert test-form [show-args string args@dots{}] +This form verifies that @var{test-form} is true (i.e., evaluates to +a non-@code{nil} value). If so, it returns @code{nil}. If the test +is not satisfied, @code{assert} signals an error. + +A default error message will be supplied which includes @var{test-form}. +You can specify a different error message by including a @var{string} +argument plus optional extra arguments. Those arguments are simply +passed to @code{error} to signal the error. + +If the optional second argument @var{show-args} is @code{t} instead +of @code{nil}, then the error message (with or without @var{string}) +will also include all non-constant arguments of the top-level +@var{form}. For example: + +@example +(assert (> x 10) t "x is too small: %d") +@end example + +This usage of @var{show-args} is an extension to Common Lisp. In +true Common Lisp, the second argument gives a list of @var{places} +which can be @code{setf}'d by the user before continuing from the +error. Since Emacs Lisp does not support continuable errors, it +makes no sense to specify @var{places}. +@end defspec + +@defspec check-type form type [string] +This form verifies that @var{form} evaluates to a value of type +@var{type}. If so, it returns @code{nil}. If not, @code{check-type} +signals a @code{wrong-type-argument} error. The default error message +lists the erroneous value along with @var{type} and @var{form} +themselves. If @var{string} is specified, it is included in the +error message in place of @var{type}. For example: + +@example +(check-type x (integer 1 *) "a positive integer") +@end example + +@xref{Type Predicates}, for a description of the type specifiers +that may be used for @var{type}. + +Note that in Common Lisp, the first argument to @code{check-type} +must be a @var{place} suitable for use by @code{setf}, because +@code{check-type} signals a continuable error that allows the +user to modify @var{place}. +@end defspec + +The following error-related macro is also defined: + +@defspec ignore-errors forms@dots{} +This executes @var{forms} exactly like a @code{progn}, except that +errors are ignored during the @var{forms}. More precisely, if +an error is signaled then @code{ignore-errors} immediately +aborts execution of the @var{forms} and returns @code{nil}. +If the @var{forms} complete successfully, @code{ignore-errors} +returns the result of the last @var{form}. +@end defspec + +@node Efficiency Concerns, Common Lisp Compatibility, Assertions, Top +@appendix Efficiency Concerns + +@appendixsec Macros + +@noindent +Many of the advanced features of this package, such as @code{defun*}, +@code{loop}, and @code{setf}, are implemented as Lisp macros. In +byte-compiled code, these complex notations will be expanded into +equivalent Lisp code which is simple and efficient. For example, +the forms + +@example +(incf i n) +(push x (car p)) +@end example + +@noindent +are expanded at compile-time to the Lisp forms + +@example +(setq i (+ i n)) +(setcar p (cons x (car p))) +@end example + +@noindent +which are the most efficient ways of doing these respective operations +in Lisp. Thus, there is no performance penalty for using the more +readable @code{incf} and @code{push} forms in your compiled code. + +@emph{Interpreted} code, on the other hand, must expand these macros +every time they are executed. For this reason it is strongly +recommended that code making heavy use of macros be compiled. +(The features labeled ``Special Form'' instead of ``Function'' in +this manual are macros.) A loop using @code{incf} a hundred times +will execute considerably faster if compiled, and will also +garbage-collect less because the macro expansion will not have +to be generated, used, and thrown away a hundred times. + +You can find out how a macro expands by using the +@code{cl-prettyexpand} function. + +@defun cl-prettyexpand form &optional full +This function takes a single Lisp form as an argument and inserts +a nicely formatted copy of it in the current buffer (which must be +in Lisp mode so that indentation works properly). It also expands +all Lisp macros which appear in the form. The easiest way to use +this function is to go to the @code{*scratch*} buffer and type, say, + +@example +(cl-prettyexpand '(loop for x below 10 collect x)) +@end example + +@noindent +and type @kbd{C-x C-e} immediately after the closing parenthesis; +the expansion + +@example +(block nil + (let* ((x 0) + (G1004 nil)) + (while (< x 10) + (setq G1004 (cons x G1004)) + (setq x (+ x 1))) + (nreverse G1004))) +@end example + +@noindent +will be inserted into the buffer. (The @code{block} macro is +expanded differently in the interpreter and compiler, so +@code{cl-prettyexpand} just leaves it alone. The temporary +variable @code{G1004} was created by @code{gensym}.) + +If the optional argument @var{full} is true, then @emph{all} +macros are expanded, including @code{block}, @code{eval-when}, +and compiler macros. Expansion is done as if @var{form} were +a top-level form in a file being compiled. For example, + +@example +(cl-prettyexpand '(pushnew 'x list)) + @print{} (setq list (adjoin 'x list)) +(cl-prettyexpand '(pushnew 'x list) t) + @print{} (setq list (if (memq 'x list) list (cons 'x list))) +(cl-prettyexpand '(caddr (member* 'a list)) t) + @print{} (car (cdr (cdr (memq 'a list)))) +@end example + +Note that @code{adjoin}, @code{caddr}, and @code{member*} all +have built-in compiler macros to optimize them in common cases. +@end defun + +@ifinfo +@example + +@end example +@end ifinfo +@appendixsec Error Checking + +@noindent +Common Lisp compliance has in general not been sacrificed for the +sake of efficiency. A few exceptions have been made for cases +where substantial gains were possible at the expense of marginal +incompatibility. + +The Common Lisp standard (as embodied in Steele's book) uses the +phrase ``it is an error if'' to indicate a situation which is not +supposed to arise in complying programs; implementations are strongly +encouraged but not required to signal an error in these situations. +This package sometimes omits such error checking in the interest of +compactness and efficiency. For example, @code{do} variable +specifiers are supposed to be lists of one, two, or three forms; +extra forms are ignored by this package rather than signaling a +syntax error. The @code{endp} function is simply a synonym for +@code{null} in this package. Functions taking keyword arguments +will accept an odd number of arguments, treating the trailing +keyword as if it were followed by the value @code{nil}. + +Argument lists (as processed by @code{defun*} and friends) +@emph{are} checked rigorously except for the minor point just +mentioned; in particular, keyword arguments are checked for +validity, and @code{&allow-other-keys} and @code{:allow-other-keys} +are fully implemented. Keyword validity checking is slightly +time consuming (though not too bad in byte-compiled code); +you can use @code{&allow-other-keys} to omit this check. Functions +defined in this package such as @code{find} and @code{member*} +do check their keyword arguments for validity. + +@ifinfo +@example + +@end example +@end ifinfo +@appendixsec Optimizing Compiler + +@noindent +Use of the optimizing Emacs compiler is highly recommended; many of the Common +Lisp macros emit +code which can be improved by optimization. In particular, +@code{block}s (whether explicit or implicit in constructs like +@code{defun*} and @code{loop}) carry a fair run-time penalty; the +optimizing compiler removes @code{block}s which are not actually +referenced by @code{return} or @code{return-from} inside the block. + +@node Common Lisp Compatibility, Old CL Compatibility, Efficiency Concerns, Top +@appendix Common Lisp Compatibility + +@noindent +Following is a list of all known incompatibilities between this +package and Common Lisp as documented in Steele (2nd edition). + +Certain function names, such as @code{member}, @code{assoc}, and +@code{floor}, were already taken by (incompatible) Emacs Lisp +functions; this package appends @samp{*} to the names of its +Common Lisp versions of these functions. + +The word @code{defun*} is required instead of @code{defun} in order +to use extended Common Lisp argument lists in a function. Likewise, +@code{defmacro*} and @code{function*} are versions of those forms +which understand full-featured argument lists. The @code{&whole} +keyword does not work in @code{defmacro} argument lists (except +inside recursive argument lists). + +The @code{equal} predicate does not distinguish +between IEEE floating-point plus and minus zero. The @code{equalp} +predicate has several differences with Common Lisp; @pxref{Predicates}. + +The @code{setf} mechanism is entirely compatible, except that +setf-methods return a list of five values rather than five +values directly. Also, the new ``@code{setf} function'' concept +(typified by @code{(defun (setf foo) @dots{})}) is not implemented. + +The @code{do-all-symbols} form is the same as @code{do-symbols} +with no @var{obarray} argument. In Common Lisp, this form would +iterate over all symbols in all packages. Since Emacs obarrays +are not a first-class package mechanism, there is no way for +@code{do-all-symbols} to locate any but the default obarray. + +The @code{loop} macro is complete except that @code{loop-finish} +and type specifiers are unimplemented. + +The multiple-value return facility treats lists as multiple +values, since Emacs Lisp cannot support multiple return values +directly. The macros will be compatible with Common Lisp if +@code{values} or @code{values-list} is always used to return to +a @code{multiple-value-bind} or other multiple-value receiver; +if @code{values} is used without @code{multiple-value-@dots{}} +or vice-versa the effect will be different from Common Lisp. + +Many Common Lisp declarations are ignored, and others match +the Common Lisp standard in concept but not in detail. For +example, local @code{special} declarations, which are purely +advisory in Emacs Lisp, do not rigorously obey the scoping rules +set down in Steele's book. + +The variable @code{*gensym-counter*} starts out with a pseudo-random +value rather than with zero. This is to cope with the fact that +generated symbols become interned when they are written to and +loaded back from a file. + +The @code{defstruct} facility is compatible, except that structures +are of type @code{:type vector :named} by default rather than some +special, distinct type. Also, the @code{:type} slot option is ignored. + +The second argument of @code{check-type} is treated differently. + +@node Old CL Compatibility, Porting Common Lisp, Common Lisp Compatibility, Top +@appendix Old CL Compatibility + +@noindent +Following is a list of all known incompatibilities between this package +and the older Quiroz @file{cl.el} package. + +This package's emulation of multiple return values in functions is +incompatible with that of the older package. That package attempted +to come as close as possible to true Common Lisp multiple return +values; unfortunately, it could not be 100% reliable and so was prone +to occasional surprises if used freely. This package uses a simpler +method, namely replacing multiple values with lists of values, which +is more predictable though more noticeably different from Common Lisp. + +The @code{defkeyword} form and @code{keywordp} function are not +implemented in this package. + +The @code{member}, @code{floor}, @code{ceiling}, @code{truncate}, +@code{round}, @code{mod}, and @code{rem} functions are suffixed +by @samp{*} in this package to avoid collision with existing +functions in Emacs. The older package simply +redefined these functions, overwriting the built-in meanings and +causing serious portability problems. (Some more +recent versions of the Quiroz package changed the names to +@code{cl-member}, etc.; this package defines the latter names as +aliases for @code{member*}, etc.) + +Certain functions in the old package which were buggy or inconsistent +with the Common Lisp standard are incompatible with the conforming +versions in this package. For example, @code{eql} and @code{member} +were synonyms for @code{eq} and @code{memq} in that package, @code{setf} +failed to preserve correct order of evaluation of its arguments, etc. + +Finally, unlike the older package, this package is careful to +prefix all of its internal names with @code{cl-}. Except for a +few functions which are explicitly defined as additional features +(such as @code{floatp-safe} and @code{letf}), this package does not +export any non-@samp{cl-} symbols which are not also part of Common +Lisp. + +@ifinfo +@example + +@end example +@end ifinfo +@appendixsec The @code{cl-compat} package + +@noindent +The @dfn{CL} package includes emulations of some features of the +old @file{cl.el}, in the form of a compatibility package +@code{cl-compat}. To use it, put @code{(require 'cl-compat)} in +your program. + +The old package defined a number of internal routines without +@code{cl-} prefixes or other annotations. Call to these routines +may have crept into existing Lisp code. @code{cl-compat} +provides emulations of the following internal routines: +@code{pair-with-newsyms}, @code{zip-lists}, @code{unzip-lists}, +@code{reassemble-arglists}, @code{duplicate-symbols-p}, +@code{safe-idiv}. + +Some @code{setf} forms translated into calls to internal +functions that user code might call directly. The functions +@code{setnth}, @code{setnthcdr}, and @code{setelt} fall in +this category; they are defined by @code{cl-compat}, but the +best fix is to change to use @code{setf} properly. + +The @code{cl-compat} file defines the keyword functions +@code{keywordp}, @code{keyword-of}, and @code{defkeyword}, +which are not defined by the new @dfn{CL} package because the +use of keywords as data is discouraged. + +The @code{build-klist} mechanism for parsing keyword arguments +is emulated by @code{cl-compat}; the @code{with-keyword-args} +macro is not, however, and in any case it's best to change to +use the more natural keyword argument processing offered by +@code{defun*}. + +Multiple return values are treated differently by the two +Common Lisp packages. The old package's method was more +compatible with true Common Lisp, though it used heuristics +that caused it to report spurious multiple return values in +certain cases. The @code{cl-compat} package defines a set +of multiple-value macros that are compatible with the old +CL package; again, they are heuristic in nature, but they +are guaranteed to work in any case where the old package's +macros worked. To avoid name collision with the ``official'' +multiple-value facilities, the ones in @code{cl-compat} have +capitalized names: @code{Values}, @code{Values-list}, +@code{Multiple-value-bind}, etc. + +The functions @code{cl-floor}, @code{cl-ceiling}, @code{cl-truncate}, +and @code{cl-round} are defined by @code{cl-compat} to use the +old-style multiple-value mechanism, just as they did in the old +package. The newer @code{floor*} and friends return their two +results in a list rather than as multiple values. Note that +older versions of the old package used the unadorned names +@code{floor}, @code{ceiling}, etc.; @code{cl-compat} cannot use +these names because they conflict with Emacs built-ins. + +@node Porting Common Lisp, GNU Free Documentation License, Old CL Compatibility, Top +@appendix Porting Common Lisp + +@noindent +This package is meant to be used as an extension to Emacs Lisp, +not as an Emacs implementation of true Common Lisp. Some of the +remaining differences between Emacs Lisp and Common Lisp make it +difficult to port large Common Lisp applications to Emacs. For +one, some of the features in this package are not fully compliant +with ANSI or Steele; @pxref{Common Lisp Compatibility}. But there +are also quite a few features that this package does not provide +at all. Here are some major omissions that you will want to watch out +for when bringing Common Lisp code into Emacs. + +@itemize @bullet +@item +Case-insensitivity. Symbols in Common Lisp are case-insensitive +by default. Some programs refer to a function or variable as +@code{foo} in one place and @code{Foo} or @code{FOO} in another. +Emacs Lisp will treat these as three distinct symbols. + +Some Common Lisp code is written entirely in upper case. While Emacs +is happy to let the program's own functions and variables use +this convention, calls to Lisp builtins like @code{if} and +@code{defun} will have to be changed to lower case. + +@item +Lexical scoping. In Common Lisp, function arguments and @code{let} +bindings apply only to references physically within their bodies +(or within macro expansions in their bodies). Emacs Lisp, by +contrast, uses @dfn{dynamic scoping} wherein a binding to a +variable is visible even inside functions called from the body. + +Variables in Common Lisp can be made dynamically scoped by +declaring them @code{special} or using @code{defvar}. In Emacs +Lisp it is as if all variables were declared @code{special}. + +Often you can use code that was written for lexical scoping +even in a dynamically scoped Lisp, but not always. Here is +an example of a Common Lisp code fragment that would fail in +Emacs Lisp: + +@example +(defun map-odd-elements (func list) + (loop for x in list + for flag = t then (not flag) + collect (if flag x (funcall func x)))) + +(defun add-odd-elements (list x) + (map-odd-elements (lambda (a) (+ a x))) list) +@end example + +@noindent +In Common Lisp, the two functions' usages of @code{x} are completely +independent. In Emacs Lisp, the binding to @code{x} made by +@code{add-odd-elements} will have been hidden by the binding +in @code{map-odd-elements} by the time the @code{(+ a x)} function +is called. + +(This package avoids such problems in its own mapping functions +by using names like @code{cl-x} instead of @code{x} internally; +as long as you don't use the @code{cl-} prefix for your own +variables no collision can occur.) + +@xref{Lexical Bindings}, for a description of the @code{lexical-let} +form which establishes a Common Lisp-style lexical binding, and some +examples of how it differs from Emacs' regular @code{let}. + +@item +Reader macros. Common Lisp includes a second type of macro that +works at the level of individual characters. For example, Common +Lisp implements the quote notation by a reader macro called @code{'}, +whereas Emacs Lisp's parser just treats quote as a special case. +Some Lisp packages use reader macros to create special syntaxes +for themselves, which the Emacs parser is incapable of reading. + +@item +Other syntactic features. Common Lisp provides a number of +notations beginning with @code{#} that the Emacs Lisp parser +won't understand. For example, @samp{#| ... |#} is an +alternate comment notation, and @samp{#+lucid (foo)} tells +the parser to ignore the @code{(foo)} except in Lucid Common +Lisp. + +@item +Packages. In Common Lisp, symbols are divided into @dfn{packages}. +Symbols that are Lisp built-ins are typically stored in one package; +symbols that are vendor extensions are put in another, and each +application program would have a package for its own symbols. +Certain symbols are ``exported'' by a package and others are +internal; certain packages ``use'' or import the exported symbols +of other packages. To access symbols that would not normally be +visible due to this importing and exporting, Common Lisp provides +a syntax like @code{package:symbol} or @code{package::symbol}. + +Emacs Lisp has a single namespace for all interned symbols, and +then uses a naming convention of putting a prefix like @code{cl-} +in front of the name. Some Emacs packages adopt the Common Lisp-like +convention of using @code{cl:} or @code{cl::} as the prefix. +However, the Emacs parser does not understand colons and just +treats them as part of the symbol name. Thus, while @code{mapcar} +and @code{lisp:mapcar} may refer to the same symbol in Common +Lisp, they are totally distinct in Emacs Lisp. Common Lisp +programs which refer to a symbol by the full name sometimes +and the short name other times will not port cleanly to Emacs. + +Emacs Lisp does have a concept of ``obarrays,'' which are +package-like collections of symbols, but this feature is not +strong enough to be used as a true package mechanism. + +@item +The @code{format} function is quite different between Common +Lisp and Emacs Lisp. It takes an additional ``destination'' +argument before the format string. A destination of @code{nil} +means to format to a string as in Emacs Lisp; a destination +of @code{t} means to write to the terminal (similar to +@code{message} in Emacs). Also, format control strings are +utterly different; @code{~} is used instead of @code{%} to +introduce format codes, and the set of available codes is +much richer. There are no notations like @code{\n} for +string literals; instead, @code{format} is used with the +``newline'' format code, @code{~%}. More advanced formatting +codes provide such features as paragraph filling, case +conversion, and even loops and conditionals. + +While it would have been possible to implement most of Common +Lisp @code{format} in this package (under the name @code{format*}, +of course), it was not deemed worthwhile. It would have required +a huge amount of code to implement even a decent subset of +@code{format*}, yet the functionality it would provide over +Emacs Lisp's @code{format} would rarely be useful. + +@item +Vector constants use square brackets in Emacs Lisp, but +@code{#(a b c)} notation in Common Lisp. To further complicate +matters, Emacs has its own @code{#(} notation for +something entirely different---strings with properties. + +@item +Characters are distinct from integers in Common Lisp. The notation +for character constants is also different: @code{#\A} in Common Lisp +where Emacs Lisp uses @code{?A}. Also, @code{string=} and +@code{string-equal} are synonyms in Emacs Lisp, whereas the latter is +case-insensitive in Common Lisp. + +@item +Data types. Some Common Lisp data types do not exist in Emacs +Lisp. Rational numbers and complex numbers are not present, +nor are large integers (all integers are ``fixnums''). All +arrays are one-dimensional. There are no readtables or pathnames; +streams are a set of existing data types rather than a new data +type of their own. Hash tables, random-states, structures, and +packages (obarrays) are built from Lisp vectors or lists rather +than being distinct types. + +@item +The Common Lisp Object System (CLOS) is not implemented, +nor is the Common Lisp Condition System. However, the EIEIO package +from @uref{ftp://ftp.ultranet.com/pub/zappo} does implement some +CLOS functionality. + +@item +Common Lisp features that are completely redundant with Emacs +Lisp features of a different name generally have not been +implemented. For example, Common Lisp writes @code{defconstant} +where Emacs Lisp uses @code{defconst}. Similarly, @code{make-list} +takes its arguments in different ways in the two Lisps but does +exactly the same thing, so this package has not bothered to +implement a Common Lisp-style @code{make-list}. + +@item +A few more notable Common Lisp features not included in this +package: @code{compiler-let}, @code{tagbody}, @code{prog}, +@code{ldb/dpb}, @code{parse-integer}, @code{cerror}. + +@item +Recursion. While recursion works in Emacs Lisp just like it +does in Common Lisp, various details of the Emacs Lisp system +and compiler make recursion much less efficient than it is in +most Lisps. Some schools of thought prefer to use recursion +in Lisp over other techniques; they would sum a list of +numbers using something like + +@example +(defun sum-list (list) + (if list + (+ (car list) (sum-list (cdr list))) + 0)) +@end example + +@noindent +where a more iteratively-minded programmer might write one of +these forms: + +@example +(let ((total 0)) (dolist (x my-list) (incf total x)) total) +(loop for x in my-list sum x) +@end example + +While this would be mainly a stylistic choice in most Common Lisps, +in Emacs Lisp you should be aware that the iterative forms are +much faster than recursion. Also, Lisp programmers will want to +note that the current Emacs Lisp compiler does not optimize tail +recursion. +@end itemize + +@node GNU Free Documentation License, Function Index, Porting Common Lisp, Top +@appendix GNU Free Documentation License +@include doclicense.texi + +@node Function Index, Variable Index, GNU Free Documentation License, Top +@unnumbered Function Index + +@printindex fn + +@node Variable Index, , Function Index, Top +@unnumbered Variable Index + +@printindex vr + +@setchapternewpage odd +@contents +@bye + +@ignore + arch-tag: b61e7200-3bfa-4a70-a9d3-095e152696f8 +@end ignore diff --cc doc/misc/org.texi index 9c36b39208,0000000000..a94728b1b4 mode 100644,000000..100644 --- a/doc/misc/org.texi +++ b/doc/misc/org.texi @@@ -1,8822 -1,0 +1,8822 @@@ +\input texinfo +@c %**start of header +@setfilename ../../info/org +@settitle Org Mode Manual + +@set VERSION 5.23 +@set DATE March 2008 + +@dircategory Emacs +@direntry +* Org Mode: (org). Outline-based notes management and organizer +@end direntry + +@c Version and Contact Info +@set MAINTAINERSITE @uref{http://orgmode.org,maintainers webpage} +@set AUTHOR Carsten Dominik +@set MAINTAINER Carsten Dominik +@set MAINTAINEREMAIL @email{carsten at orgmode dot org} +@set MAINTAINERCONTACT @uref{mailto:carsten at orgmode dot org,contact the maintainer} +@c %**end of header +@finalout + +@c Macro definitions + +@c Subheadings inside a table. +@macro tsubheading{text} +@ifinfo +@subsubheading \text\ +@end ifinfo +@ifnotinfo +@item @b{\text\} +@end ifnotinfo +@end macro + +@copying +This manual is for Org-mode (version @value{VERSION}). + +Copyright @copyright{} 2004, 2005, 2006, 2007, 2008 Free Software Foundation + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.1 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with the Front-Cover texts being ``A GNU Manual,'' +and with the Back-Cover Texts as in (a) below. A copy of the +license is included in the section entitled ``GNU Free Documentation +License.'' + +(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify +this GNU Manual, like GNU software. Copies published by the Free +Software Foundation raise funds for GNU development.'' +@end quotation +@end copying + +@titlepage +@title Org Mode Manual + +@subtitle Release @value{VERSION} +@author by Carsten Dominik + +@c The following two commands start the copyright page. +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@c Output the table of contents at the beginning. +@contents + +@ifnottex +@node Top, Introduction, (dir), (dir) +@top Org Mode Manual + +@insertcopying +@end ifnottex + +@menu +* Introduction:: Getting started +* Document structure:: A tree works like your brain +* Tables:: Pure magic for quick formatting +* Hyperlinks:: Notes in context +* TODO items:: Every tree branch can be a TODO item +* Tags:: Tagging headlines and matching sets of tags +* Properties and columns:: Storing information about an entry +* Dates and times:: Making items useful for planning +* Remember:: Quickly adding nodes to the outline tree +* Agenda views:: Collecting information into views +* Embedded LaTeX:: LaTeX fragments and formulas +* Exporting:: Sharing and publishing of notes +* Publishing:: Create a web site of linked Org-mode files +* Miscellaneous:: All the rest which did not fit elsewhere +* Extensions and Hacking:: It is possible to write add-on code +* History and Acknowledgments:: How Org-mode came into being +* Main Index:: +* Key Index:: Key bindings and where they are described + +@detailmenu + --- The Detailed Node Listing --- + +Introduction + +* Summary:: Brief summary of what Org-mode does +* Installation:: How to install a downloaded version of Org-mode +* Activation:: How to activate Org-mode for certain buffers. +* Feedback:: Bug reports, ideas, patches etc. +* Conventions:: Type-setting conventions in the manual + +Document Structure + +* Outlines:: Org-mode is based on outline-mode +* Headlines:: How to typeset org-tree headlines +* Visibility cycling:: Show and hide, much simplified +* Motion:: Jumping to other headlines +* Structure editing:: Changing sequence and level of headlines +* Archiving:: Move done task trees to a different place +* Sparse trees:: Matches embedded in context +* Plain lists:: Additional structure within an entry +* Drawers:: Tucking stuff away +* orgstruct-mode:: Structure editing outside Org-mode + +Archiving + +* ARCHIVE tag:: Marking a tree as inactive +* Moving subtrees:: Moving a tree to an archive file + +Tables + +* Built-in table editor:: Simple tables +* Narrow columns:: Stop wasting space in tables +* Column groups:: Grouping to trigger vertical lines +* orgtbl-mode:: The table editor as minor mode +* The spreadsheet:: The table editor has spreadsheet capabilities. + +The spreadsheet + +* References:: How to refer to another field or range +* Formula syntax for Calc:: Using Calc to compute stuff +* Formula syntax for Lisp:: Writing formulas in Emacs Lisp +* Field formulas:: Formulas valid for a single field +* Column formulas:: Formulas valid for an entire column +* Editing and debugging formulas:: Fixing formulas +* Updating the table:: Recomputing all dependent fields +* Advanced features:: Field names, parameters and automatic recalc + +Hyperlinks + +* Link format:: How links in Org-mode are formatted +* Internal links:: Links to other places in the current file +* External links:: URL-like links to the world +* Handling links:: Creating, inserting and following +* Using links outside Org-mode:: Linking from my C source code? +* Link abbreviations:: Shortcuts for writing complex links +* Search options:: Linking to a specific location +* Custom searches:: When the default search is not enough + +Internal links + +* Radio targets:: Make targets trigger links in plain text. + +TODO items + +* TODO basics:: Marking and displaying TODO entries +* TODO extensions:: Workflow and assignments +* Progress logging:: Dates and notes for progress +* Priorities:: Some things are more important than others +* Breaking down tasks:: Splitting a task into manageable pieces +* Checkboxes:: Tick-off lists + +Extended use of TODO keywords + +* Workflow states:: From TODO to DONE in steps +* TODO types:: I do this, Fred does the rest +* Multiple sets in one file:: Mixing it all, and still finding your way +* Fast access to TODO states:: Single letter selection of a state +* Per-file keywords:: Different files, different requirements +* Faces for TODO keywords:: Highlighting states + +Progress Logging + +* Closing items:: When was this entry marked DONE? +* Tracking TODO state changes:: When did the status change? + +Tags + +* Tag inheritance:: Tags use the tree structure of the outline +* Setting tags:: How to assign tags to a headline +* Tag searches:: Searching for combinations of tags + +Properties and Columns + +* Property syntax:: How properties are spelled out +* Special properties:: Access to other Org-mode features +* Property searches:: Matching property values +* Property inheritance:: Passing values down the tree +* Column view:: Tabular viewing and editing +* Property API:: Properties for Lisp programmers + +Column View + +* Defining columns:: The COLUMNS format property +* Using column view:: How to create and use column view +* Capturing Column View:: A dynamic block for column view + +Defining Columns + +* Scope of column definitions:: Where defined, where valid? +* Column attributes:: Appearance and content of a column + +Dates and Times + +* Time stamps:: Assigning a time to a tree entry +* Creating timestamps:: Commands which insert timestamps +* Deadlines and scheduling:: Planning your work +* Clocking work time:: + +Creating timestamps + +* The date/time prompt:: How org-mode helps you entering date and time +* Custom time format:: Making dates look differently + +Deadlines and Scheduling + +* Inserting deadline/schedule:: Planning items +* Repeated tasks:: Items that show up again and again + +Remember + +* Setting up remember:: Some code for .emacs to get things going +* Remember templates:: Define the outline of different note types +* Storing notes:: Directly get the note to where it belongs +* Refiling notes:: Moving a note or task to a project + +Agenda Views + +* Agenda files:: Files being searched for agenda information +* Agenda dispatcher:: Keyboard access to agenda views +* Built-in agenda views:: What is available out of the box? +* Presentation and sorting:: How agenda items are prepared for display +* Agenda commands:: Remote editing of org trees +* Custom agenda views:: Defining special searches and views + +The built-in agenda views + +* Weekly/Daily agenda:: The calendar page with current tasks +* Global TODO list:: All unfinished action items +* Matching tags and properties:: Structured information with fine-tuned search +* Timeline:: Time-sorted view for single file +* Keyword search:: Finding entries by keyword +* Stuck projects:: Find projects you need to review + +Presentation and sorting + +* Categories:: Not all tasks are equal +* Time-of-day specifications:: How the agenda knows the time +* Sorting of agenda items:: The order of things + +Custom agenda views + +* Storing searches:: Type once, use often +* Block agenda:: All the stuff you need in a single buffer +* Setting Options:: Changing the rules +* Exporting Agenda Views:: Writing agendas to files. +* Extracting Agenda Information for other programs:: + +Embedded LaTeX + +* Math symbols:: TeX macros for symbols and Greek letters +* Subscripts and Superscripts:: Simple syntax for raising/lowering text +* LaTeX fragments:: Complex formulas made easy +* Processing LaTeX fragments:: Previewing LaTeX processing +* CDLaTeX mode:: Speed up entering of formulas + +Exporting + +* ASCII export:: Exporting to plain ASCII +* HTML export:: Exporting to HTML +* LaTeX export:: Exporting to LaTeX +* XOXO export:: Exporting to XOXO +* iCalendar export:: Exporting in iCalendar format +* Text interpretation:: How the exporter looks at the file + +HTML export + +* HTML Export commands:: How to invoke LaTeX export +* Quoting HTML tags:: Using direct HTML in Org-mode +* Links:: Transformation of links for HTML +* Images:: How to include images +* CSS support:: Changing the appearence of the output + +LaTeX export + +* LaTeX export commands:: How to invoke LaTeX export +* Quoting LaTeX code:: Incorporating literal LaTeX code +* Sectioning structure:: + +Text interpretation by the exporter + +* Comment lines:: Some lines will not be exported +* Initial text:: Text before the first headline +* Footnotes:: Numbers like [1] +* Quoted examples:: Inserting quoted chnuks of text +* Enhancing text:: Subscripts, symbols and more +* Export options:: How to influence the export settings + +Publishing + +* Configuration:: Defining projects +* Sample configuration:: Example projects +* Triggering publication:: Publication commands + +Configuration + +* Project alist:: The central configuration variable +* Sources and destinations:: From here to there +* Selecting files:: What files are part of the project? +* Publishing action:: Setting the function doing the publishing +* Publishing options:: Tweaking HTML export +* Publishing links:: Which links keep working after publishing? +* Project page index:: Publishing a list of project files + +Sample configuration + +* Simple example:: One-component publishing +* Complex example:: A multi-component publishing example + +Miscellaneous + +* Completion:: M-TAB knows what you need +* Customization:: Adapting Org-mode to your taste +* In-buffer settings:: Overview of the #+KEYWORDS +* The very busy C-c C-c key:: When in doubt, press C-c C-c +* Clean view:: Getting rid of leading stars in the outline +* TTY keys:: Using Org-mode on a tty +* Interaction:: Other Emacs packages +* Bugs:: Things which do not work perfectly + +Interaction with other packages + +* Cooperation:: Packages Org-mode cooperates with +* Conflicts:: Packages that lead to conflicts + +Extensions, Hooks and Hacking + +* Extensions:: Existing 3rd-part extensions +* Adding hyperlink types:: New custom link types +* Tables in arbitrary syntax:: Orgtbl for LaTeX and other programs +* Dynamic blocks:: Automatically filled blocks +* Special agenda views:: Customized views +* Using the property API:: Writing programs that use entry properties + +Tables and Lists in arbitrary syntax + +* Radio tables:: Sending and receiving +* A LaTeX example:: Step by step, almost a tutorial +* Translator functions:: Copy and modify +* Radio lists:: Doing the same for lists. + +@end detailmenu +@end menu + +@node Introduction, Document structure, Top, Top +@chapter Introduction +@cindex introduction + +@menu +* Summary:: Brief summary of what Org-mode does +* Installation:: How to install a downloaded version of Org-mode +* Activation:: How to activate Org-mode for certain buffers. +* Feedback:: Bug reports, ideas, patches etc. +* Conventions:: Type-setting conventions in the manual +@end menu + +@node Summary, Installation, Introduction, Introduction +@section Summary +@cindex summary + +Org-mode is a mode for keeping notes, maintaining TODO lists, and doing +project planning with a fast and effective plain-text system. + +Org-mode develops organizational tasks around NOTES files that contain +lists or information about projects as plain text. Org-mode is +implemented on top of outline-mode, which makes it possible to keep the +content of large files well structured. Visibility cycling and +structure editing help to work with the tree. Tables are easily created +with a built-in table editor. Org-mode supports TODO items, deadlines, +time stamps, and scheduling. It dynamically compiles entries into an +agenda that utilizes and smoothly integrates much of the Emacs calendar +and diary. Plain text URL-like links connect to websites, emails, +Usenet messages, BBDB entries, and any files related to the projects. +For printing and sharing of notes, an Org-mode file can be exported as a +structured ASCII file, as HTML, or (TODO and agenda items only) as an +iCalendar file. It can also serve as a publishing tool for a set of +linked webpages. + +An important design aspect that distinguishes Org-mode from for example +Planner/Muse is that it encourages to store every piece of information +only once. In Planner, you have project pages, day pages and possibly +other files, duplicating some information such as tasks. In Org-mode, +you only have notes files. In your notes you mark entries as tasks, +label them with tags and timestamps. All necessary lists like a +schedule for the day, the agenda for a meeting, tasks lists selected by +tags etc are created dynamically when you need them. + +Org-mode keeps simple things simple. When first fired up, it should +feel like a straightforward, easy to use outliner. Complexity is not +imposed, but a large amount of functionality is available when you need +it. Org-mode is a toolbox and can be used in different ways, for +example as: + +@example +@r{@bullet{} outline extension with visibility cycling and structure editing} +@r{@bullet{} ASCII system and table editor for taking structured notes} +@r{@bullet{} ASCII table editor with spreadsheet-like capabilities} +@r{@bullet{} TODO list editor} +@r{@bullet{} full agenda and planner with deadlines and work scheduling} +@r{@bullet{} environment to implement David Allen's GTD system} +@r{@bullet{} a basic database application} +@r{@bullet{} simple hypertext system, with HTML and LaTeX export} +@r{@bullet{} publishing tool to create a set of interlinked webpages} +@end example + +Org-mode's automatic, context sensitive table editor with spreadsheet +capabilities can be integrated into any major mode by activating the +minor Orgtbl-mode. Using a translation step, it can be used to maintain +tables in arbitrary file types, for example in La@TeX{}. The structure +editing and list creation capabilities can be used outside Org-mode with +the minor Orgstruct-mode. + +@cindex FAQ +There is a website for Org-mode which provides links to the newest +version of Org-mode, as well as additional information, frequently asked +questions (FAQ), links to tutorials etc. This page is located at +@uref{http://orgmode.org}. + +@page + + +@node Installation, Activation, Summary, Introduction +@section Installation +@cindex installation +@cindex XEmacs + +@b{Important:} @i{If Org-mode is part of the Emacs distribution or an +XEmacs package, please skip this section and go directly to +@ref{Activation}.} + +If you have downloaded Org-mode from the Web, you must take the +following steps to install it: Go into the Org-mode distribution +directory and edit the top section of the file @file{Makefile}. You +must set the name of the Emacs binary (likely either @file{emacs} or +@file{xemacs}), and the paths to the directories where local Lisp and +Info files are kept. If you don't have access to the system-wide +directories, create your own two directories for these files, enter them +into the Makefile, and make sure Emacs finds the Lisp files by adding +the following line to @file{.emacs}: + +@example +(setq load-path (cons "~/path/to/lispdir" load-path)) +@end example + +@b{XEmacs users now need to install the file @file{noutline.el} from +the @file{xemacs} subdirectory of the Org-mode distribution. Use the +command:} + +@example +@b{make install-noutline} +@end example + +@noindent Now byte-compile and install the Lisp files with the shell +commands: + +@example +make +make install +@end example + +@noindent If you want to install the info documentation, use this command: + +@example +make install-info +@end example + +@noindent Then add to @file{.emacs}: + +@lisp +;; This line only if org-mode is not part of the X/Emacs distribution. +(require 'org-install) +@end lisp + +@node Activation, Feedback, Installation, Introduction +@section Activation +@cindex activation +@cindex autoload +@cindex global keybindings +@cindex keybindings, global + +@iftex +@b{Important:} @i{If you use copy-and-paste to copy lisp code from the +PDF documentation as viewed by Acrobat reader to your .emacs file, the +single quote character comes out incorrectly and the code will not work. +You need to fix the single quotes by hand, or copy from Info +documentation.} +@end iftex + +Add the following lines to your @file{.emacs} file. The last two lines +define @emph{global} keys for the commands @command{org-store-link} and +@command{org-agenda} - please choose suitable keys yourself. + +@lisp +;; The following lines are always needed. Choose your own keys. +(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode)) +(global-set-key "\C-cl" 'org-store-link) +(global-set-key "\C-ca" 'org-agenda) +@end lisp + +Furthermore, you must activate @code{font-lock-mode} in org-mode +buffers, because significant functionality depends on font-locking being +active. You can do this with either one of the following two lines +(XEmacs user must use the second option): +@lisp +(global-font-lock-mode 1) ; for all buffers +(add-hook 'org-mode-hook 'turn-on-font-lock) ; org-mode buffers only +@end lisp + +@cindex org-mode, turning on +With this setup, all files with extension @samp{.org} will be put +into Org-mode. As an alternative, make the first line of a file look +like this: + +@example +MY PROJECTS -*- mode: org; -*- +@end example + +@noindent which will select Org-mode for this buffer no matter what +the file's name is. See also the variable +@code{org-insert-mode-line-in-empty-file}. + +@node Feedback, Conventions, Activation, Introduction +@section Feedback +@cindex feedback +@cindex bug reports +@cindex maintainer +@cindex author + +If you find problems with Org-mode, or if you have questions, remarks, +or ideas about it, please contact the maintainer @value{MAINTAINER} at +@value{MAINTAINEREMAIL}. + +For bug reports, please provide as much information as possible, +including the version information of Emacs (@kbd{C-h v emacs-version +@key{RET}}) and Org-mode (@kbd{C-h v org-version @key{RET}}), as well as +the Org-mode related setup in @file{.emacs}. If an error occurs, a +backtrace can be very useful (see below on how to create one). Often a +small example file helps, along with clear information about: + +@enumerate +@item What exactly did you do? +@item What did you expect to happen? +@item What happened instead? +@end enumerate +@noindent Thank you for helping to improve this mode. + +@subsubheading How to create a useful backtrace + +@cindex backtrace of an error +If working with Org-mode produces an error with a message you don't +understand, you may have hit a bug. The best way to report this is by +providing, in addition to what was mentioned above, a @emph{Backtrace}. +This is information from the built-in debugger about where and how the +error occurred. Here is how to produce a useful backtrace: + +@enumerate +@item +Start a fresh Emacs or XEmacs, and make sure that it will load the +original Lisp code in @file{org.el} instead of the compiled version in +@file{org.elc}. The backtrace contains much more information if it is +produced with uncompiled code. To do this, either rename @file{org.elc} +to something else before starting Emacs, or ask Emacs explicitly to load +@file{org.el} by using the command line +@example +emacs -l /path/to/org.el +@end example +@item +Go to the @code{Options} menu and select @code{Enter Debugger on Error} +(XEmacs has this option in the @code{Troubleshooting} sub-menu). +@item +Do whatever you have to do to hit the error. Don't forget to +document the steps you take. +@item +When you hit the error, a @file{*Backtrace*} buffer will appear on the +screen. Save this buffer to a file (for example using @kbd{C-x C-w}) and +attach it to your bug report. +@end enumerate + +@node Conventions, , Feedback, Introduction +@section Typesetting conventions used in this manual + +Org-mode uses three types of keywords: TODO keywords, tags, and property +names. In this manual we use the following conventions: + +@table @code +@item TODO +@itemx WAITING +TODO keywords are written with all capitals, even if they are +user-defined. +@item boss +@itemx ARCHIVE +User-defined tags are written in lowercase; built-in tags with special +meaning are written with all capitals. +@item Release +@itemx PRIORITY +User-defined properties are capitalized; built-in properties with +special meaning are written with all capitals. +@end table + +@node Document structure, Tables, Introduction, Top +@chapter Document Structure +@cindex document structure +@cindex structure of document + +Org-mode is based on outline mode and provides flexible commands to +edit the structure of the document. + +@menu +* Outlines:: Org-mode is based on outline-mode +* Headlines:: How to typeset org-tree headlines +* Visibility cycling:: Show and hide, much simplified +* Motion:: Jumping to other headlines +* Structure editing:: Changing sequence and level of headlines +* Archiving:: Move done task trees to a different place +* Sparse trees:: Matches embedded in context +* Plain lists:: Additional structure within an entry +* Drawers:: Tucking stuff away +* orgstruct-mode:: Structure editing outside Org-mode +@end menu + +@node Outlines, Headlines, Document structure, Document structure +@section Outlines +@cindex outlines +@cindex outline-mode + +Org-mode is implemented on top of outline-mode. Outlines allow a +document to be organized in a hierarchical structure, which (at least +for me) is the best representation of notes and thoughts. An overview +of this structure is achieved by folding (hiding) large parts of the +document to show only the general document structure and the parts +currently being worked on. Org-mode greatly simplifies the use of +outlines by compressing the entire show/hide functionality into a single +command @command{org-cycle}, which is bound to the @key{TAB} key. + +@node Headlines, Visibility cycling, Outlines, Document structure +@section Headlines +@cindex headlines +@cindex outline tree + +Headlines define the structure of an outline tree. The headlines in +Org-mode start with one or more stars, on the left margin@footnote{See +the variable @code{org-special-ctrl-a/e} to configure special behavior +of @kbd{C-a} and @kbd{C-e} in headlines.}. For example: + +@example +* Top level headline +** Second level +*** 3rd level + some text +*** 3rd level + more text + +* Another top level headline +@end example + +@noindent Some people find the many stars too noisy and would prefer an +outline that has whitespace followed by a single star as headline +starters. @ref{Clean view} describes a setup to realize this. + +An empty line after the end of a subtree is considered part of it and +will be hidden when the subtree is folded. However, if you leave at +least two empty lines, one empty line will remain visible after folding +the subtree, in order to structure the collapsed view. See the +variable @code{org-cycle-separator-lines} to modify this behavior. + +@node Visibility cycling, Motion, Headlines, Document structure +@section Visibility cycling +@cindex cycling, visibility +@cindex visibility cycling +@cindex trees, visibility +@cindex show hidden text +@cindex hide text + +Outlines make it possible to hide parts of the text in the buffer. +Org-mode uses just two commands, bound to @key{TAB} and +@kbd{S-@key{TAB}} to change the visibility in the buffer. + +@cindex subtree visibility states +@cindex subtree cycling +@cindex folded, subtree visibility state +@cindex children, subtree visibility state +@cindex subtree, subtree visibility state +@table @kbd +@kindex @key{TAB} +@item @key{TAB} +@emph{Subtree cycling}: Rotate current subtree among the states + +@example +,-> FOLDED -> CHILDREN -> SUBTREE --. +'-----------------------------------' +@end example + +The cursor must be on a headline for this to work@footnote{see, however, +the option @code{org-cycle-emulate-tab}.}. When the cursor is at the +beginning of the buffer and the first line is not a headline, then +@key{TAB} actually runs global cycling (see below)@footnote{see the +option @code{org-cycle-global-at-bob}.}. Also when called with a prefix +argument (@kbd{C-u @key{TAB}}), global cycling is invoked. + +@cindex global visibility states +@cindex global cycling +@cindex overview, global visibility state +@cindex contents, global visibility state +@cindex show all, global visibility state +@kindex S-@key{TAB} +@item S-@key{TAB} +@itemx C-u @key{TAB} +@emph{Global cycling}: Rotate the entire buffer among the states + +@example +,-> OVERVIEW -> CONTENTS -> SHOW ALL --. +'--------------------------------------' +@end example + +When @kbd{S-@key{TAB}} is called with a numerical prefix N, the CONTENTS +view up to headlines of level N will be shown. +Note that inside tables, @kbd{S-@key{TAB}} jumps to the previous field. + +@cindex show all, command +@kindex C-c C-a +@item C-c C-a +Show all. +@kindex C-c C-r +@item C-c C-r +Reveal context around point, showing the current entry, the following +heading and the hierarchy above. Useful for working near a location +that has been exposed by a sparse tree command (@pxref{Sparse trees}) or +an agenda command (@pxref{Agenda commands}). With prefix arg show, on +each + +level, all sibling headings. +@kindex C-c C-x b +@item C-c C-x b +Show the current subtree in an indirect buffer@footnote{The indirect +buffer +@ifinfo +(@pxref{Indirect Buffers,,,emacs,GNU Emacs Manual}) +@end ifinfo +@ifnotinfo +(see the Emacs manual for more information about indirect buffers) +@end ifnotinfo +will contain the entire buffer, but will be narrowed to the current +tree. Editing the indirect buffer will also change the original buffer, +but without affecting visibility in that buffer.}. With numerical +prefix ARG, go up to this level and then take that tree. If ARG is +negative, go up that many levels. With @kbd{C-u} prefix, do not remove +the previously used indirect buffer. +@end table + +When Emacs first visits an Org-mode file, the global state is set to +OVERVIEW, i.e. only the top level headlines are visible. This can be +configured through the variable @code{org-startup-folded}, or on a +per-file basis by adding one of the following lines anywhere in the +buffer: + +@example +#+STARTUP: overview +#+STARTUP: content +#+STARTUP: showall +@end example + +@node Motion, Structure editing, Visibility cycling, Document structure +@section Motion +@cindex motion, between headlines +@cindex jumping, to headlines +@cindex headline navigation +The following commands jump to other headlines in the buffer. + +@table @kbd +@kindex C-c C-n +@item C-c C-n +Next heading. +@kindex C-c C-p +@item C-c C-p +Previous heading. +@kindex C-c C-f +@item C-c C-f +Next heading same level. +@kindex C-c C-b +@item C-c C-b +Previous heading same level. +@kindex C-c C-u +@item C-c C-u +Backward to higher level heading. +@kindex C-c C-j +@item C-c C-j +Jump to a different place without changing the current outline +visibility. Shows the document structure in a temporary buffer, where +you can use the following keys to find your destination: +@example +@key{TAB} @r{Cycle visibility.} +@key{down} / @key{up} @r{Next/previous visible headline.} +n / p @r{Next/previous visible headline.} +f / b @r{Next/previous headline same level.} +u @r{One level up.} +0-9 @r{Digit argument.} +@key{RET} @r{Select this location.} +@end example +@end table + +@node Structure editing, Archiving, Motion, Document structure +@section Structure editing +@cindex structure editing +@cindex headline, promotion and demotion +@cindex promotion, of subtrees +@cindex demotion, of subtrees +@cindex subtree, cut and paste +@cindex pasting, of subtrees +@cindex cutting, of subtrees +@cindex copying, of subtrees +@cindex subtrees, cut and paste + +@table @kbd +@kindex M-@key{RET} +@item M-@key{RET} +Insert new heading with same level as current. If the cursor is in a +plain list item, a new item is created (@pxref{Plain lists}). To force +creation of a new headline, use a prefix arg, or first press @key{RET} +to get to the beginning of the next line. When this command is used in +the middle of a line, the line is split and the rest of the line becomes +the new headline@footnote{If you do not want the line to be split, +customize the variable @code{org-M-RET-may-split-line}.}. If the +command is used at the beginning of a headline, the new headline is +created before the current line. If at the beginning of any other line, +the content of that line is made the new heading. If the command is +used at the end of a folded subtree (i.e. behind the ellipses at the end +of a headline), then a headline like the current one will be inserted +after the end of the subtree. +@kindex C-@key{RET} +@item C-@key{RET} +Insert a new heading after the current subtree, same level as the +current headline. This command works from anywhere in the entry. +@kindex M-S-@key{RET} +@item M-S-@key{RET} +Insert new TODO entry with same level as current heading. +@kindex M-@key{left} +@item M-@key{left} +Promote current heading by one level. +@kindex M-@key{right} +@item M-@key{right} +Demote current heading by one level. +@kindex M-S-@key{left} +@item M-S-@key{left} +Promote the current subtree by one level. +@kindex M-S-@key{right} +@item M-S-@key{right} +Demote the current subtree by one level. +@kindex M-S-@key{up} +@item M-S-@key{up} +Move subtree up (swap with previous subtree of same +level). +@kindex M-S-@key{down} +@item M-S-@key{down} +Move subtree down (swap with next subtree of same level). +@kindex C-c C-x C-w +@kindex C-c C-x C-k +@item C-c C-x C-w +@itemx C-c C-x C-k +Kill subtree, i.e. remove it from buffer but save in kill ring. +With prefix arg, kill N sequential subtrees. +@kindex C-c C-x M-w +@item C-c C-x M-w +Copy subtree to kill ring. With prefix arg, copy N sequential subtrees. +@kindex C-c C-x C-y +@item C-c C-x C-y +Yank subtree from kill ring. This does modify the level of the subtree to +make sure the tree fits in nicely at the yank position. The yank +level can also be specified with a prefix arg, or by yanking after a +headline marker like @samp{****}. +@kindex C-c C-w +@item C-c C-w +Refile entry to a different location. @xref{Refiling notes}. +@kindex C-c ^ +@item C-c ^ +Sort same-level entries. When there is an active region, all entries in +the region will be sorted. Otherwise the children of the current +headline are sorted. The command prompts for the sorting method, which +can be alphabetically, numerically, by time (using the first time stamp +in each entry), by priority, and each of these in reverse order. You +can also supply your own function to extract the sorting key. With a +@kbd{C-u} prefix, sorting will be case-sensitive. With two @kbd{C-u +C-u} prefixes, duplicate entries will also be removed. +@kindex C-c * +@item C-c * +Turn a normal line or plain list item into a headline (so that it +becomes a subheading at its location). Also turn a headline into a +normal line by removing the stars. If there is an active region, turn +all lines in the region into headlines. Or, if the first line is a +headline, remove the stars from all headlines in the region. +@end table + +@cindex region, active +@cindex active region +@cindex transient-mark-mode +When there is an active region (transient-mark-mode), promotion and +demotion work on all headlines in the region. To select a region of +headlines, it is best to place both point and mark at the beginning of a +line, mark at the beginning of the first headline, and point at the line +just after the last headline to change. Note that when the cursor is +inside a table (@pxref{Tables}), the Meta-Cursor keys have different +functionality. + +@node Archiving, Sparse trees, Structure editing, Document structure +@section Archiving +@cindex archiving + +When a project represented by a (sub)tree is finished, you may want +to move the tree out of the way and to stop it from contributing to the +agenda. Org-mode knows two ways of archiving. You can mark a tree with +the ARCHIVE tag, or you can move an entire (sub)tree to a different +location. + +@menu +* ARCHIVE tag:: Marking a tree as inactive +* Moving subtrees:: Moving a tree to an archive file +@end menu + +@node ARCHIVE tag, Moving subtrees, Archiving, Archiving +@subsection The ARCHIVE tag +@cindex internal archiving + +A headline that is marked with the ARCHIVE tag (@pxref{Tags}) stays at +its location in the outline tree, but behaves in the following way: +@itemize @minus +@item +It does not open when you attempt to do so with a visibility cycling +command (@pxref{Visibility cycling}). You can force cycling archived +subtrees with @kbd{C-@key{TAB}}, or by setting the option +@code{org-cycle-open-archived-trees}. Also normal outline commands like +@code{show-all} will open archived subtrees. +@item +During sparse tree construction (@pxref{Sparse trees}), matches in +archived subtrees are not exposed, unless you configure the option +@code{org-sparse-tree-open-archived-trees}. +@item +During agenda view construction (@pxref{Agenda views}), the content of +archived trees is ignored unless you configure the option +@code{org-agenda-skip-archived-trees}. +@item +Archived trees are not exported (@pxref{Exporting}), only the headline +is. Configure the details using the variable +@code{org-export-with-archived-trees}. +@end itemize + +The following commands help managing the ARCHIVE tag: + +@table @kbd +@kindex C-c C-x C-a +@item C-c C-x C-a +Toggle the ARCHIVE tag for the current headline. When the tag is set, +the headline changes to a shadowish face, and the subtree below it is +hidden. +@kindex C-u C-c C-x C-a +@item C-u C-c C-x C-a +Check if any direct children of the current headline should be archived. +To do this, each subtree is checked for open TODO entries. If none are +found, the command offers to set the ARCHIVE tag for the child. If the +cursor is @emph{not} on a headline when this command is invoked, the +level 1 trees will be checked. +@kindex C-@kbd{TAB} +@item C-@kbd{TAB} +Cycle a tree even if it is tagged with ARCHIVE. +@end table + +@node Moving subtrees, , ARCHIVE tag, Archiving +@subsection Moving subtrees +@cindex external archiving + +Once an entire project is finished, you may want to move it to a +different location, either in the current file, or even in a different +file, the archive file. + +@table @kbd +@kindex C-c C-x C-s +@item C-c C-x C-s +Archive the subtree starting at the cursor position to the location +given by @code{org-archive-location}. Context information that could be +lost like the file name, the category, inherited tags, and the todo +state will be store as properties in the entry. +@kindex C-u C-c C-x C-s +@item C-u C-c C-x C-s +Check if any direct children of the current headline could be moved to +the archive. To do this, each subtree is checked for open TODO entries. +If none are found, the command offers to move it to the archive +location. If the cursor is @emph{not} on a headline when this command +is invoked, the level 1 trees will be checked. +@end table + +@cindex archive locations +The default archive location is a file in the same directory as the +current file, with the name derived by appending @file{_archive} to the +current file name. For information and examples on how to change this, +see the documentation string of the variable +@code{org-archive-location}. There is also an in-buffer option for +setting this variable, for example@footnote{For backward compatibility, +the following also works: If there are several such lines in a file, +each specifies the archive location for the text below it. The first +such line also applies to any text before its definition. However, +using this method is @emph{strongly} deprecated as it is incompatible +with the outline structure of the document. The correct method for +setting multiple archive locations in a buffer is using a property.}: + +@example +#+ARCHIVE: %s_done:: +@end example + +@noindent +If you would like to have a special ARCHIVE location for a single entry +or a (sub)tree, give the entry an @code{:ARCHIVE:} property with the +location as the value (@pxref{Properties and columns}). + +When a subtree is moved, it receives a number of special properties that +record context information like the file from where the entry came, it's +outline path the archiving time etc. Configure the variable +@code{org-archive-save-context-info} to adjust the amount of information +added. + +@node Sparse trees, Plain lists, Archiving, Document structure +@section Sparse trees +@cindex sparse trees +@cindex trees, sparse +@cindex folding, sparse trees +@cindex occur, command + +An important feature of Org-mode is the ability to construct +@emph{sparse trees} for selected information in an outline tree, so that +the entire document is folded as much as possible, but the selected +information is made visible along with the headline structure above +it@footnote{See also the variables @code{org-show-hierarchy-above}, +@code{org-show-following-heading}, and @code{org-show-siblings} for +detailed control on how much context is shown around each match.}. Just +try it out and you will see immediately how it works. + +Org-mode contains several commands creating such trees, all these +commands can be accessed through a dispatcher: + +@table @kbd +@kindex C-c / +@item C-c / +This prompts for an extra key to select a sparse-tree creating command. +@kindex C-c / r +@item C-c / r +Occur. Prompts for a regexp and shows a sparse tree with all matches. +If the match is in a headline, the headline is made visible. If the +match is in the body of an entry, headline and body are made visible. +In order to provide minimal context, also the full hierarchy of +headlines above the match is shown, as well as the headline following +the match. Each match is also highlighted; the highlights disappear +when the buffer is changed by an editing command, or by pressing +@kbd{C-c C-c}. When called with a @kbd{C-u} prefix argument, previous +highlights are kept, so several calls to this command can be stacked. +@end table + +@noindent +For frequently used sparse trees of specific search strings, you can +use the variable @code{org-agenda-custom-commands} to define fast +keyboard access to specific sparse trees. These commands will then be +accessible through the agenda dispatcher (@pxref{Agenda dispatcher}). +For example: + +@lisp +(setq org-agenda-custom-commands + '(("f" occur-tree "FIXME"))) +@end lisp + +@noindent will define the key @kbd{C-c a f} as a shortcut for creating +a sparse tree matching the string @samp{FIXME}. + +The other sparse tree commands select headings based on TODO keywords, +tags, or properties and will be discussed later in this manual. + +@kindex C-c C-e v +@cindex printing sparse trees +@cindex visible text, printing +To print a sparse tree, you can use the Emacs command +@code{ps-print-buffer-with-faces} which does not print invisible parts +of the document @footnote{This does not work under XEmacs, because +XEmacs uses selective display for outlining, not text properties.}. +Or you can use the command @kbd{C-c C-e v} to export only the visible +part of the document and print the resulting file. + +@node Plain lists, Drawers, Sparse trees, Document structure +@section Plain lists +@cindex plain lists +@cindex lists, plain +@cindex lists, ordered +@cindex ordered lists + +Within an entry of the outline tree, hand-formatted lists can provide +additional structure. They also provide a way to create lists of +checkboxes (@pxref{Checkboxes}). Org-mode supports editing such lists, +and the HTML exporter (@pxref{Exporting}) parses and formats them. + +Org-mode knows ordered and unordered lists. Unordered list items start +with @samp{-}, @samp{+}, or @samp{*}@footnote{When using @samp{*} as a +bullet, lines must be indented or they will be seen as top-level +headlines. Also, when you are hiding leading stars to get a clean +outline view, plain list items starting with a star are visually +indistinguishable from true headlines. In short: even though @samp{*} +is supported, it may be better to not use it for plain list items.} as +bullets. Ordered list items start with a numeral followed by either a +period or a right parenthesis, such as @samp{1.} or @samp{1)}. Items +belonging to the same list must have the same indentation on the first +line. In particular, if an ordered list reaches number @samp{10.}, then +the 2--digit numbers must be written left-aligned with the other numbers +in the list. Indentation also determines the end of a list item. It +ends before the next line that is indented like the bullet/number, or +less. Empty lines are part of the previous item, so you can have +several paragraphs in one item. If you would like an empty line to +terminate all currently open plain lists, configure the variable +@code{org-empty-line-terminates-plain-lists}. Here is an example: + +@example +@group +** Lord of the Rings + My favorite scenes are (in this order) + 1. The attack of the Rohirrim + 2. Eowyns fight with the witch king + + this was already my favorite scene in the book + + I really like Miranda Otto. + 3. Peter Jackson being shot by Legolas + - on DVD only + He makes a really funny face when it happens. + But in the end, not individual scenes matter but the film as a whole. +@end group +@end example + +Org-mode supports these lists by tuning filling and wrapping commands to +deal with them correctly@footnote{Org-mode only changes the filling +settings for Emacs. For XEmacs, you should use Kyle E. Jones' +@file{filladapt.el}. To turn this on, put into @file{.emacs}: +@code{(require 'filladapt)}}. + +The following commands act on items when the cursor is in the first line +of an item (the line with the bullet or number). + +@table @kbd +@kindex @key{TAB} +@item @key{TAB} +Items can be folded just like headline levels if you set the variable +@code{org-cycle-include-plain-lists}. The level of an item is then +given by the indentation of the bullet/number. Items are always +subordinate to real headlines, however; the hierarchies remain +completely separated. + +If @code{org-cycle-include-plain-lists} has not been set, @key{TAB} +fixes the indentation of the curent line in a heuristic way. +@kindex M-@key{RET} +@item M-@key{RET} +Insert new item at current level. With prefix arg, force a new heading +(@pxref{Structure editing}). If this command is used in the middle of a +line, the line is @emph{split} and the rest of the line becomes the new +item@footnote{If you do not want the line to be split, customize the +variable @code{org-M-RET-may-split-line}.}. If this command is executed +in the @emph{whitespace before a bullet or number}, the new item is +created @emph{before} the current item. If the command is executed in +the white space before the text that is part of an item but does not +contain the bullet, a bullet is added to the current line. +@kindex M-S-@key{RET} +@item M-S-@key{RET} +Insert a new item with a checkbox (@pxref{Checkboxes}). +@kindex S-@key{up} +@kindex S-@key{down} +@item S-@key{up} +@itemx S-@key{down} +Jump to the previous/next item in the current list. +@kindex M-S-@key{up} +@kindex M-S-@key{down} +@item M-S-@key{up} +@itemx M-S-@key{down} +Move the item including subitems up/down (swap with previous/next item +of same indentation). If the list is ordered, renumbering is +automatic. +@kindex M-S-@key{left} +@kindex M-S-@key{right} +@item M-S-@key{left} +@itemx M-S-@key{right} +Decrease/increase the indentation of the item, including subitems. +Initially, the item tree is selected based on current indentation. +When these commands are executed several times in direct succession, +the initially selected region is used, even if the new indentation +would imply a different hierarchy. To use the new hierarchy, break +the command chain with a cursor motion or so. +@kindex C-c C-c +@item C-c C-c +If there is a checkbox (@pxref{Checkboxes}) in the item line, toggle the +state of the checkbox. If not, this command makes sure that all the +items on this list level use the same bullet. Furthermore, if this is +an ordered list, make sure the numbering is ok. +@kindex C-c - +@item C-c - +Cycle the entire list level through the different itemize/enumerate +bullets (@samp{-}, @samp{+}, @samp{*}, @samp{1.}, @samp{1)}). +With prefix arg, select the nth bullet from this list. +If there is an active region when calling this, all lines will be +converted to list items. If the first line already was a list item, any +item markers will be removed from the list. Finally, even without an +active region, a normal line will be converted into a list item. +@end table + +@node Drawers, orgstruct-mode, Plain lists, Document structure +@section Drawers +@cindex drawers +@cindex visibility cycling, drawers + +Sometimes you want to keep information associated with an entry, but you +normally don't want to see it. For this, Org-mode has @emph{drawers}. +Drawers need to be configured with the variable +@code{org-drawers}@footnote{You can define drawers on a per-file basis +with a line like @code{#+DRAWERS: HIDDEN PROPERTIES STATE}}. Drawers +look like this: + +@example +** This is a headline + Still outside the drawer + :DRAWERNAME: + This is inside the drawer. + :END: + After the drawer. +@end example + +Visibility cycling (@pxref{Visibility cycling}) on the headline will +hide and show the entry, but keep the drawer collapsed to a single line. +In order to look inside the drawer, you need to move the cursor to the +drawer line and press @key{TAB} there. Org-mode uses a drawer for +storing properties (@pxref{Properties and columns}). + +@node orgstruct-mode, , Drawers, Document structure +@section The Orgstruct minor mode +@cindex orgstruct-mode +@cindex minor mode for structure editing + +If you like the intuitive way the Org-mode structure editing and list +formatting works, you might want to use these commands in other modes +like text-mode or mail-mode as well. The minor mode Orgstruct-mode +makes this possible. You can always toggle the mode with @kbd{M-x +orgstruct-mode}. To turn it on by default, for example in mail mode, +use + +@lisp +(add-hook 'mail-mode-hook 'turn-on-orgstruct) +@end lisp + +When this mode is active and the cursor is on a line that looks to +Org-mode like a headline of the first line of a list item, most +structure editing commands will work, even if the same keys normally +have different functionality in the major mode you are using. If the +cursor is not in one of those special lines, Orgstruct-mode lurks +silently in the shadow. + +@node Tables, Hyperlinks, Document structure, Top +@chapter Tables +@cindex tables +@cindex editing tables + +Org-mode comes with a fast and intuitive table editor. Spreadsheet-like +calculations are supported in connection with the Emacs @file{calc} +package +@ifinfo +(@pxref{Top,Calc,,calc,Gnu Emacs Calculator Manual}). +@end ifinfo +@ifnotinfo +(see the Emacs Calculator manual for more information about the Emacs +calculator). +@end ifnotinfo + +@menu +* Built-in table editor:: Simple tables +* Narrow columns:: Stop wasting space in tables +* Column groups:: Grouping to trigger vertical lines +* orgtbl-mode:: The table editor as minor mode +* The spreadsheet:: The table editor has spreadsheet capabilities. +@end menu + +@node Built-in table editor, Narrow columns, Tables, Tables +@section The built-in table editor +@cindex table editor, built-in + +Org-mode makes it easy to format tables in plain ASCII. Any line with +@samp{|} as the first non-whitespace character is considered part of a +table. @samp{|} is also the column separator. A table might look like +this: + +@example +| Name | Phone | Age | +|-------+-------+-----| +| Peter | 1234 | 17 | +| Anna | 4321 | 25 | +@end example + +A table is re-aligned automatically each time you press @key{TAB} or +@key{RET} or @kbd{C-c C-c} inside the table. @key{TAB} also moves to +the next field (@key{RET} to the next row) and creates new table rows +at the end of the table or before horizontal lines. The indentation +of the table is set by the first line. Any line starting with +@samp{|-} is considered as a horizontal separator line and will be +expanded on the next re-align to span the whole table width. So, to +create the above table, you would only type + +@example +|Name|Phone|Age| +|- +@end example + +@noindent and then press @key{TAB} to align the table and start filling in +fields. + +When typing text into a field, Org-mode treats @key{DEL}, +@key{Backspace}, and all character keys in a special way, so that +inserting and deleting avoids shifting other fields. Also, when +typing @emph{immediately after the cursor was moved into a new field +with @kbd{@key{TAB}}, @kbd{S-@key{TAB}} or @kbd{@key{RET}}}, the +field is automatically made blank. If this behavior is too +unpredictable for you, configure the variables +@code{org-enable-table-editor} and @code{org-table-auto-blank-field}. + +@table @kbd +@tsubheading{Creation and conversion} +@kindex C-c | +@item C-c | +Convert the active region to table. If every line contains at least one +TAB character, the function assumes that the material is tab separated. +If every line contains a comma, comma-separated values (CSV) are assumed. +If not, lines are split at whitespace into fields. You can use a prefix +argument to force a specific separator: @kbd{C-u} forces CSV, @kbd{C-u +C-u} forces TAB, and a numeric argument N indicates that at least N +consequtive spaces, or alternatively a TAB will be the separator. +@* +If there is no active region, this command creates an empty Org-mode +table. But it's easier just to start typing, like +@kbd{|Name|Phone|Age @key{RET} |- @key{TAB}}. + +@tsubheading{Re-aligning and field motion} +@kindex C-c C-c +@item C-c C-c +Re-align the table without moving the cursor. +@c +@kindex @key{TAB} +@item @key{TAB} +Re-align the table, move to the next field. Creates a new row if +necessary. +@c +@kindex S-@key{TAB} +@item S-@key{TAB} +Re-align, move to previous field. +@c +@kindex @key{RET} +@item @key{RET} +Re-align the table and move down to next row. Creates a new row if +necessary. At the beginning or end of a line, @key{RET} still does +NEWLINE, so it can be used to split a table. + +@tsubheading{Column and row editing} +@kindex M-@key{left} +@kindex M-@key{right} +@item M-@key{left} +@itemx M-@key{right} +Move the current column left/right. +@c +@kindex M-S-@key{left} +@item M-S-@key{left} +Kill the current column. +@c +@kindex M-S-@key{right} +@item M-S-@key{right} +Insert a new column to the left of the cursor position. +@c +@kindex M-@key{up} +@kindex M-@key{down} +@item M-@key{up} +@itemx M-@key{down} +Move the current row up/down. +@c +@kindex M-S-@key{up} +@item M-S-@key{up} +Kill the current row or horizontal line. +@c +@kindex M-S-@key{down} +@item M-S-@key{down} +Insert a new row above (with arg: below) the current row. +@c +@kindex C-c - +@item C-c - +Insert a horizontal line below current row. With prefix arg, the line +is created above the current line. +@c +@kindex C-c ^ +@item C-c ^ +Sort the table lines in the region. The position of point indicates the +column to be used for sorting, and the range of lines is the range +between the nearest horizontal separator lines, or the entire table. If +point is before the first column, you will be prompted for the sorting +column. If there is an active region, the mark specifies the first line +and the sorting column, while point should be in the last line to be +included into the sorting. The command prompts for the sorting type +(alphabetically, numerically, or by time). When called with a prefix +argument, alphabetic sorting will be case-sensitive. + +@tsubheading{Regions} +@kindex C-c C-x M-w +@item C-c C-x M-w +Copy a rectangular region from a table to a special clipboard. Point +and mark determine edge fields of the rectangle. The process ignores +horizontal separator lines. +@c +@kindex C-c C-x C-w +@item C-c C-x C-w +Copy a rectangular region from a table to a special clipboard, and +blank all fields in the rectangle. So this is the ``cut'' operation. +@c +@kindex C-c C-x C-y +@item C-c C-x C-y +Paste a rectangular region into a table. +The upper right corner ends up in the current field. All involved fields +will be overwritten. If the rectangle does not fit into the present table, +the table is enlarged as needed. The process ignores horizontal separator +lines. +@c +@kindex C-c C-q +@kindex M-@key{RET} +@item C-c C-q +@itemx M-@kbd{RET} +Wrap several fields in a column like a paragraph. If there is an active +region, and both point and mark are in the same column, the text in the +column is wrapped to minimum width for the given number of lines. A +prefix ARG may be used to change the number of desired lines. If there +is no region, the current field is split at the cursor position and the +text fragment to the right of the cursor is prepended to the field one +line down. If there is no region, but you specify a prefix ARG, the +current field is made blank, and the content is appended to the field +above. + +@tsubheading{Calculations} +@cindex formula, in tables +@cindex calculations, in tables +@cindex region, active +@cindex active region +@cindex transient-mark-mode +@kindex C-c + +@item C-c + +Sum the numbers in the current column, or in the rectangle defined by +the active region. The result is shown in the echo area and can +be inserted with @kbd{C-y}. +@c +@kindex S-@key{RET} +@item S-@key{RET} +When current field is empty, copy from first non-empty field above. +When not empty, copy current field down to next row and move cursor +along with it. Depending on the variable +@code{org-table-copy-increment}, integer field values will be +incremented during copy. This key is also used by CUA-mode +(@pxref{Cooperation}). + +@tsubheading{Miscellaneous} +@kindex C-c ` +@item C-c ` +Edit the current field in a separate window. This is useful for fields +that are not fully visible (@pxref{Narrow columns}). When called with a +@kbd{C-u} prefix, just make the full field visible, so that it can be +edited in place. +@c +@item M-x org-table-import +Import a file as a table. The table should be TAB- or whitespace +separated. Useful, for example, to import a spreadsheet table or data +from a database, because these programs generally can write +TAB-separated text files. This command works by inserting the file into +the buffer and then converting the region to a table. Any prefix +argument is passed on to the converter, which uses it to determine the +separator. +@item C-c | +Tables can also be imported by pasting tabular text into the org-mode +buffer, selecting the pasted text with @kbd{C-x C-x} and then using the +@kbd{C-c |} command (see above under @i{Creation and conversion}. +@c +@item M-x org-table-export +Export the table as a TAB-separated file. Useful for data exchange with, +for example, spreadsheet or database programs. +@end table + +If you don't like the automatic table editor because it gets in your +way on lines which you would like to start with @samp{|}, you can turn +it off with + +@lisp +(setq org-enable-table-editor nil) +@end lisp + +@noindent Then the only table command that still works is +@kbd{C-c C-c} to do a manual re-align. + +@node Narrow columns, Column groups, Built-in table editor, Tables +@section Narrow columns +@cindex narrow columns in tables + +The width of columns is automatically determined by the table editor. +Sometimes a single field or a few fields need to carry more text, +leading to inconveniently wide columns. To limit@footnote{This feature +does not work on XEmacs.} the width of a column, one field anywhere in +the column may contain just the string @samp{} where @samp{N} is an +integer specifying the width of the column in characters. The next +re-align will then set the width of this column to no more than this +value. + +@example +@group +|---+------------------------------| |---+--------| +| | | | | <6> | +| 1 | one | | 1 | one | +| 2 | two | ----\ | 2 | two | +| 3 | This is a long chunk of text | ----/ | 3 | This=> | +| 4 | four | | 4 | four | +|---+------------------------------| |---+--------| +@end group +@end example + +@noindent +Fields that are wider become clipped and end in the string @samp{=>}. +Note that the full text is still in the buffer, it is only invisible. +To see the full text, hold the mouse over the field - a tool-tip window +will show the full content. To edit such a field, use the command +@kbd{C-c `} (that is @kbd{C-c} followed by the backquote). This will +open a new window with the full field. Edit it and finish with @kbd{C-c +C-c}. + +When visiting a file containing a table with narrowed columns, the +necessary character hiding has not yet happened, and the table needs to +be aligned before it looks nice. Setting the option +@code{org-startup-align-all-tables} will realign all tables in a file +upon visiting, but also slow down startup. You can also set this option +on a per-file basis with: + +@example +#+STARTUP: align +#+STARTUP: noalign +@end example + +@node Column groups, orgtbl-mode, Narrow columns, Tables +@section Column groups +@cindex grouping columns in tables + +When Org-mode exports tables, it does so by default without vertical +lines because that is visually more satisfying in general. Occasionally +however, vertical lines can be useful to structure a table into groups +of columns, much like horizontal lines can do for groups of rows. In +order to specify column groups, you can use a special row where the +first field contains only @samp{/}. The further fields can either +contain @samp{<} to indicate that this column should start a group, +@samp{>} to indicate the end of a column, or @samp{<>} to make a column +a group of its own. Boundaries between colum groups will upon export be +marked with vertical lines. Here is an example: + +@example +| | N | N^2 | N^3 | N^4 | sqrt(n) | sqrt[4](N) | +|---+----+-----+-----+-----+---------+------------| +| / | <> | < | | > | < | > | +| # | 1 | 1 | 1 | 1 | 1 | 1 | +| # | 2 | 4 | 8 | 16 | 1.4142 | 1.1892 | +| # | 3 | 9 | 27 | 81 | 1.7321 | 1.3161 | +|---+----+-----+-----+-----+---------+------------| +#+TBLFM: $3=$2^2::$4=$2^3::$5=$2^4::$6=sqrt($2)::$7=sqrt(sqrt(($2)) +@end example + +It is also sufficient to just insert the colum group starters after +every vertical line you'd like to have: + +@example +| N | N^2 | N^3 | N^4 | sqrt(n) | sqrt[4](N) | +|----+-----+-----+-----+---------+------------| +| / | < | | | < | | +@end example + +@node orgtbl-mode, The spreadsheet, Column groups, Tables +@section The Orgtbl minor mode +@cindex orgtbl-mode +@cindex minor mode for tables + +If you like the intuitive way the Org-mode table editor works, you +might also want to use it in other modes like text-mode or mail-mode. +The minor mode Orgtbl-mode makes this possible. You can always toggle +the mode with @kbd{M-x orgtbl-mode}. To turn it on by default, for +example in mail mode, use + +@lisp +(add-hook 'mail-mode-hook 'turn-on-orgtbl) +@end lisp + +Furthermore, with some special setup, it is possible to maintain tables +in arbitrary syntax with Orgtbl-mode. For example, it is possible to +construct La@TeX{} tables with the underlying ease and power of +Orgtbl-mode, including spreadsheet capabilities. For details, see +@ref{Tables in arbitrary syntax}. + +@node The spreadsheet, , orgtbl-mode, Tables +@section The spreadsheet +@cindex calculations, in tables +@cindex spreadsheet capabilities +@cindex @file{calc} package + +The table editor makes use of the Emacs @file{calc} package to implement +spreadsheet-like capabilities. It can also evaluate Emacs Lisp forms to +derive fields from other fields. While fully featured, Org-mode's +implementation is not identical to other spreadsheets. For example, +Org-mode knows the concept of a @emph{column formula} that will be +applied to all non-header fields in a column without having to copy the +formula to each relevant field. + +@menu +* References:: How to refer to another field or range +* Formula syntax for Calc:: Using Calc to compute stuff +* Formula syntax for Lisp:: Writing formulas in Emacs Lisp +* Field formulas:: Formulas valid for a single field +* Column formulas:: Formulas valid for an entire column +* Editing and debugging formulas:: Fixing formulas +* Updating the table:: Recomputing all dependent fields +* Advanced features:: Field names, parameters and automatic recalc +@end menu + +@node References, Formula syntax for Calc, The spreadsheet, The spreadsheet +@subsection References +@cindex references + +To compute fields in the table from other fields, formulas must +reference other fields or ranges. In Org-mode, fields can be referenced +by name, by absolute coordinates, and by relative coordinates. To find +out what the coordinates of a field are, press @kbd{C-c ?} in that +field, or press @kbd{C-c @}} to toggle the display of a grid. + +@subsubheading Field references +@cindex field references +@cindex references, to fields + +Formulas can reference the value of another field in two ways. Like in +any other spreadsheet, you may reference fields with a letter/number +combination like @code{B3}, meaning the 2nd field in the 3rd row. +@c Such references are always fixed to that field, they don't change +@c when you copy and paste a formula to a different field. So +@c Org-mode's @code{B3} behaves like @code{$B$3} in other spreadsheets. + +@noindent +Org-mode also uses another, more general operator that looks like this: +@example +@@row$column +@end example + +@noindent +Column references can be absolute like @samp{1}, @samp{2},...@samp{N}, +or relative to the current column like @samp{+1} or @samp{-2}. + +The row specification only counts data lines and ignores horizontal +separator lines (hlines). You can use absolute row numbers +@samp{1}...@samp{N}, and row numbers relative to the current row like +@samp{+3} or @samp{-1}. Or specify the row relative to one of the +hlines: @samp{I} refers to the first hline@footnote{Note that only +hlines are counted that @emph{separate} table lines. If the table +starts with a hline above the header, it does not count.}, @samp{II} to +the second etc. @samp{-I} refers to the first such line above the +current line, @samp{+I} to the first such line below the current line. +You can also write @samp{III+2} which is the second data line after the +third hline in the table. Relative row numbers like @samp{-3} will not +cross hlines if the current line is too close to the hline. Instead, +the value directly at the hline is used. + +@samp{0} refers to the current row and column. Also, if you omit +either the column or the row part of the reference, the current +row/column is implied. + +Org-mode's references with @emph{unsigned} numbers are fixed references +in the sense that if you use the same reference in the formula for two +different fields, the same field will be referenced each time. +Org-mode's references with @emph{signed} numbers are floating +references because the same reference operator can reference different +fields depending on the field being calculated by the formula. + +Here are a few examples: + +@example +@@2$3 @r{2nd row, 3rd column} +C2 @r{same as previous} +$5 @r{column 5 in the current row} +E& @r{same as previous} +@@2 @r{current column, row 2} +@@-1$-3 @r{the field one row up, three columns to the left} +@@-I$2 @r{field just under hline above current row, column 2} +@end example + +@subsubheading Range references +@cindex range references +@cindex references, to ranges + +You may reference a rectangular range of fields by specifying two field +references connected by two dots @samp{..}. If both fields are in the +current row, you may simply use @samp{$2..$7}, but if at least one field +is in a different row, you need to use the general @code{@@row$column} +format at least for the first field (i.e the reference must start with +@samp{@@} in order to be interpreted correctly). Examples: + +@example +$1..$3 @r{First three fields in the current row.} +$P..$Q @r{Range, using column names (see under Advanced)} +@@2$1..@@4$3 @r{6 fields between these two fields.} +A2..C4 @r{Same as above.} +@@-1$-2..@@-1 @r{3 numbers from the column to the left, 2 up to current row} +@end example + +@noindent Range references return a vector of values that can be fed +into Calc vector functions. Empty fields in ranges are normally +suppressed, so that the vector contains only the non-empty fields (but +see the @samp{E} mode switch below). If there are no non-empty fields, +@samp{[0]} is returned to avoid syntax errors in formulas. + +@subsubheading Named references +@cindex named references +@cindex references, named +@cindex name, of column or field +@cindex constants, in calculations + +@samp{$name} is interpreted as the name of a column, parameter or +constant. Constants are defined globally through the variable +@code{org-table-formula-constants}, and locally (for the file) through a +line like + +@example +#+CONSTANTS: c=299792458. pi=3.14 eps=2.4e-6 +@end example + +@noindent +Also properties (@pxref{Properties and columns}) can be used as +constants in table formulas: For a property @samp{:Xyz:} use the name +@samp{$PROP_Xyz}, and the property will be searched in the current +outline entry and in the hierarchy above it. If you have the +@file{constants.el} package, it will also be used to resolve constants, +including natural constants like @samp{$h} for Planck's constant, and +units like @samp{$km} for kilometers@footnote{@file{Constant.el} can +supply the values of constants in two different unit systems, @code{SI} +and @code{cgs}. Which one is used depends on the value of the variable +@code{constants-unit-system}. You can use the @code{#+STARTUP} options +@code{constSI} and @code{constcgs} to set this value for the current +buffer.}. Column names and parameters can be specified in special table +lines. These are described below, see @ref{Advanced features}. All +names must start with a letter, and further consist of letters and +numbers. + +@node Formula syntax for Calc, Formula syntax for Lisp, References, The spreadsheet +@subsection Formula syntax for Calc +@cindex formula syntax, Calc +@cindex syntax, of formulas + +A formula can be any algebraic expression understood by the Emacs +@file{Calc} package. @b{Note that @file{calc} has the +non-standard convention that @samp{/} has lower precedence than +@samp{*}, so that @samp{a/b*c} is interpreted as @samp{a/(b*c)}.} Before +evaluation by @code{calc-eval} (@pxref{Calling Calc from +Your Programs,calc-eval,Calling calc from Your Lisp Programs,calc,GNU +Emacs Calc Manual}), +@c FIXME: The link to the calc manual in HTML does not work. +variable substitution takes place according to the rules described above. +@cindex vectors, in table calculations +The range vectors can be directly fed into the calc vector functions +like @samp{vmean} and @samp{vsum}. + +@cindex format specifier +@cindex mode, for @file{calc} +A formula can contain an optional mode string after a semicolon. This +string consists of flags to influence Calc and other modes during +execution. By default, Org-mode uses the standard calc modes (precision +12, angular units degrees, fraction and symbolic modes off. The display +format, however, has been changed to @code{(float 5)} to keep tables +compact. The default settings can be configured using the variable +@code{org-calc-default-modes}. + +@example +p20 @r{switch the internal precision to 20 digits} +n3 s3 e2 f4 @r{normal, scientific, engineering, or fixed display format} +D R @r{angle modes: degrees, radians} +F S @r{fraction and symbolic modes} +N @r{interpret all fields as numbers, use 0 for non-numbers} +T @r{force text interpretation} +E @r{keep empty fields in ranges} +@end example + +@noindent +In addition, you may provide a @code{printf} format specifier to +reformat the final result. A few examples: + +@example +$1+$2 @r{Sum of first and second field} +$1+$2;%.2f @r{Same, format result to two decimals} +exp($2)+exp($1) @r{Math functions can be used} +$0;%.1f @r{Reformat current cell to 1 decimal} +($3-32)*5/9 @r{Degrees F -> C conversion} +$c/$1/$cm @r{Hz -> cm conversion, using @file{constants.el}} +tan($1);Dp3s1 @r{Compute in degrees, precision 3, display SCI 1} +sin($1);Dp3%.1e @r{Same, but use printf specifier for display} +vmean($2..$7) @r{Compute column range mean, using vector function} +vmean($2..$7);EN @r{Same, but treat empty fields as 0} +taylor($3,x=7,2) @r{taylor series of $3, at x=7, second degree} +@end example + +Calc also contains a complete set of logical operations. For example + +@example +if($1<20,teen,string("")) @r{``teen'' if age $1 less than 20, else empty} +@end example + +@node Formula syntax for Lisp, Field formulas, Formula syntax for Calc, The spreadsheet +@subsection Emacs Lisp forms as formulas +@cindex Lisp forms, as table formulas + +It is also possible to write a formula in Emacs Lisp; this can be useful +for string manipulation and control structures, if the Calc's +functionality is not enough. If a formula starts with a single quote +followed by an opening parenthesis, then it is evaluated as a lisp form. +The evaluation should return either a string or a number. Just as with +@file{calc} formulas, you can specify modes and a printf format after a +semicolon. With Emacs Lisp forms, you need to be concious about the way +field references are interpolated into the form. By default, a +reference will be interpolated as a Lisp string (in double quotes) +containing the field. If you provide the @samp{N} mode switch, all +referenced elements will be numbers (non-number fields will be zero) and +interpolated as Lisp numbers, without quotes. If you provide the +@samp{L} flag, all fields will be interpolated literally, without quotes. +I.e., if you want a reference to be interpreted as a string by the Lisp +form, enclode the reference operator itself in double quotes, like +@code{"$3"}. Ranges are inserted as space-separated fields, so you can +embed them in list or vector syntax. A few examples, note how the +@samp{N} mode is used when we do computations in lisp. + +@example +@r{Swap the first two characters of the content of column 1} + '(concat (substring $1 1 2) (substring $1 0 1) (substring $1 2)) +@r{Add columns 1 and 2, equivalent to the Calc's @code{$1+$2}} + '(+ $1 $2);N +@r{Compute the sum of columns 1-4, like Calc's @code{vsum($1..$4)}} + '(apply '+ '($1..$4));N +@end example + +@node Field formulas, Column formulas, Formula syntax for Lisp, The spreadsheet +@subsection Field formulas +@cindex field formula +@cindex formula, for individual table field + +To assign a formula to a particular field, type it directly into the +field, preceded by @samp{:=}, for example @samp{:=$1+$2}. When you +press @key{TAB} or @key{RET} or @kbd{C-c C-c} with the cursor still in +the field, the formula will be stored as the formula for this field, +evaluated, and the current field replaced with the result. + +Formulas are stored in a special line starting with @samp{#+TBLFM:} +directly below the table. If you typed the equation in the 4th field of +the 3rd data line in the table, the formula will look like +@samp{@@3$4=$1+$2}. When inserting/deleting/swapping column and rows +with the appropriate commands, @i{absolute references} (but not relative +ones) in stored formulas are modified in order to still reference the +same field. Of cause this is not true if you edit the table structure +with normal editing commands - then you must fix the equations yourself. + +Instead of typing an equation into the field, you may also use the +following command + +@table @kbd +@kindex C-u C-c = +@item C-u C-c = +Install a new formula for the current field. The command prompts for a +formula, with default taken from the @samp{#+TBLFM:} line, applies +it to the current field and stores it. +@end table + +@node Column formulas, Editing and debugging formulas, Field formulas, The spreadsheet +@subsection Column formulas +@cindex column formula +@cindex formula, for table column + +Often in a table, the same formula should be used for all fields in a +particular column. Instead of having to copy the formula to all fields +in that column, org-mode allows to assign a single formula to an entire +column. If the table contains horizontal separator hlines, everything +before the first such line is considered part of the table @emph{header} +and will not be modified by column formulas. + +To assign a formula to a column, type it directly into any field in the +column, preceded by an equal sign, like @samp{=$1+$2}. When you press +@key{TAB} or @key{RET} or @kbd{C-c C-c} with the cursor still in the +field, the formula will be stored as the formula for the current column, +evaluated and the current field replaced with the result. If the field +contains only @samp{=}, the previously stored formula for this column is +used. For each column, Org-mode will only remember the most recently +used formula. In the @samp{TBLFM:} line, column formulas will look like +@samp{$4=$1+$2}. + +Instead of typing an equation into the field, you may also use the +following command: + +@table @kbd +@kindex C-c = +@item C-c = +Install a new formula for the current column and replace current field +with the result of the formula. The command prompts for a formula, with +default taken from the @samp{#+TBLFM} line, applies it to the current +field and stores it. With a numerical prefix (e.g. @kbd{C-5 C-c =}) +will apply it to that many consecutive fields in the current column. +@end table + + +@node Editing and debugging formulas, Updating the table, Column formulas, The spreadsheet +@subsection Editing and Debugging formulas +@cindex formula editing +@cindex editing, of table formulas + +You can edit individual formulas in the minibuffer or directly in the +field. Org-mode can also prepare a special buffer with all active +formulas of a table. When offering a formula for editing, Org-mode +converts references to the standard format (like @code{B3} or @code{D&}) +if possible. If you prefer to only work with the internal format (like +@code{@@3$2} or @code{$4}), configure the variable +@code{org-table-use-standard-references}. + +@table @kbd +@kindex C-c = +@kindex C-u C-c = +@item C-c = +@itemx C-u C-c = +Edit the formula associated with the current column/field in the +minibuffer. See @ref{Column formulas} and @ref{Field formulas}. +@kindex C-u C-u C-c = +@item C-u C-u C-c = +Re-insert the active formula (either a +field formula, or a column formula) into the current field, so that you +can edit it directly in the field. The advantage over editing in the +minibuffer is that you can use the command @kbd{C-c ?}. +@kindex C-c ? +@item C-c ? +While editing a formula in a table field, highlight the field(s) +referenced by the reference at the cursor position in the formula. +@kindex C-c @} +@item C-c @} +Toggle the display of row and column numbers for a table, using +overlays. These are updated each time the table is aligned, you can +force it with @kbd{C-c C-c}. +@kindex C-c @{ +@item C-c @{ +Toggle the formula debugger on and off. See below. +@kindex C-c ' +@item C-c ' +Edit all formulas for the current table in a special buffer, where the +formulas will be displayed one per line. If the current field has an +active formula, the cursor in the formula editor will mark it. +While inside the special buffer, Org-mode will automatically highlight +any field or range reference at the cursor position. You may edit, +remove and add formulas, and use the following commands: +@table @kbd +@kindex C-c C-c +@kindex C-x C-s +@item C-c C-c +@itemx C-x C-s +Exit the formula editor and store the modified formulas. With @kbd{C-u} +prefix, also apply the new formulas to the entire table. +@kindex C-c C-q +@item C-c C-q +Exit the formula editor without installing changes. +@kindex C-c C-r +@item C-c C-r +Toggle all references in the formula editor between standard (like +@code{B3}) and internal (like @code{@@3$2}). +@kindex @key{TAB} +@item @key{TAB} +Pretty-print or indent lisp formula at point. When in a line containing +a lisp formula, format the formula according to Emacs Lisp rules. +Another @key{TAB} collapses the formula back again. In the open +formula, @key{TAB} re-indents just like in Emacs-lisp-mode. +@kindex M-@key{TAB} +@item M-@key{TAB} +Complete Lisp symbols, just like in Emacs-lisp-mode. +@kindex S-@key{up} +@kindex S-@key{down} +@kindex S-@key{left} +@kindex S-@key{right} +@item S-@key{up}/@key{down}/@key{left}/@key{right} +Shift the reference at point. For example, if the reference is +@code{B3} and you press @kbd{S-@key{right}}, it will become @code{C3}. +This also works for relative references, and for hline references. +@kindex M-S-@key{up} +@kindex M-S-@key{down} +@item M-S-@key{up}/@key{down} +Move the test line for column formulas in the Org-mode buffer up and +down. +@kindex M-@key{up} +@kindex M-@key{down} +@item M-@key{up}/@key{down} +Scroll the window displaying the table. +@kindex C-c @} +@item C-c @} +Turn the coordinate grid in the table on and off. +@end table +@end table + +Making a table field blank does not remove the formula associated with +the field, because that is stored in a different line (the @samp{TBLFM} +line) - during the next recalculation the field will be filled again. +To remove a formula from a field, you have to give an empty reply when +prompted for the formula, or to edit the @samp{#+TBLFM} line. + +@kindex C-c C-c +You may edit the @samp{#+TBLFM} directly and re-apply the changed +equations with @kbd{C-c C-c} in that line, or with the normal +recalculation commands in the table. + +@subsubheading Debugging formulas +@cindex formula debugging +@cindex debugging, of table formulas +When the evaluation of a formula leads to an error, the field content +becomes the string @samp{#ERROR}. If you would like see what is going +on during variable substitution and calculation in order to find a bug, +turn on formula debugging in the @code{Tbl} menu and repeat the +calculation, for example by pressing @kbd{C-u C-u C-c = @key{RET}} in a +field. Detailed information will be displayed. + +@node Updating the table, Advanced features, Editing and debugging formulas, The spreadsheet +@subsection Updating the Table +@cindex recomputing table fields +@cindex updating, table + +Recalculation of a table is normally not automatic, but needs to be +triggered by a command. See @ref{Advanced features} for a way to make +recalculation at least semi-automatically. + +In order to recalculate a line of a table or the entire table, use the +following commands: + +@table @kbd +@kindex C-c * +@item C-c * +Recalculate the current row by first applying the stored column formulas +from left to right, and all field formulas in the current row. +@c +@kindex C-u C-c * +@item C-u C-c * +@kindex C-u C-c C-c +@itemx C-u C-c C-c +Recompute the entire table, line by line. Any lines before the first +hline are left alone, assuming that these are part of the table header. +@c +@kindex C-u C-u C-c * +@kindex C-u C-u C-c C-c +@item C-u C-u C-c * +@itemx C-u C-u C-c C-c +Iterate the table by recomputing it until no further changes occur. +This may be necessary if some computed fields use the value of other +fields that are computed @i{later} in the calculation sequence. +@end table + +@node Advanced features, , Updating the table, The spreadsheet +@subsection Advanced features + +If you want the recalculation of fields to happen automatically, or if +you want to be able to assign @i{names} to fields and columns, you need +to reserve the first column of the table for special marking characters. +@table @kbd +@kindex C-# +@item C-# +Rotate the calculation mark in first column through the states @samp{}, +@samp{#}, @samp{*}, @samp{!}, @samp{$}. The meaning of these characters +is discussed below. When there is an active region, change all marks in +the region. +@end table + +Here is an example of a table that collects exam results of students and +makes use of these features: + +@example +@group +|---+---------+--------+--------+--------+-------+------| +| | Student | Prob 1 | Prob 2 | Prob 3 | Total | Note | +|---+---------+--------+--------+--------+-------+------| +| ! | | P1 | P2 | P3 | Tot | | +| # | Maximum | 10 | 15 | 25 | 50 | 10.0 | +| ^ | | m1 | m2 | m3 | mt | | +|---+---------+--------+--------+--------+-------+------| +| # | Peter | 10 | 8 | 23 | 41 | 8.2 | +| # | Sara | 6 | 14 | 19 | 39 | 7.8 | +| # | Sam | 2 | 4 | 3 | 9 | 1.8 | +|---+---------+--------+--------+--------+-------+------| +| | Average | | | | 29.7 | | +| ^ | | | | | at | | +| $ | max=50 | | | | | | +|---+---------+--------+--------+--------+-------+------| +#+TBLFM: $6=vsum($P1..$P3)::$7=10*$Tot/$max;%.1f::$at=vmean(@@-II..@@-I);%.1f +@end group +@end example + +@noindent @b{Important}: Please note that for these special tables, +recalculating the table with @kbd{C-u C-c *} will only affect rows that +are marked @samp{#} or @samp{*}, and fields that have a formula assigned +to the field itself. The column formulas are not applied in rows with +empty first field. + +@cindex marking characters, tables +The marking characters have the following meaning: +@table @samp +@item ! +The fields in this line define names for the columns, so that you may +refer to a column as @samp{$Tot} instead of @samp{$6}. +@item ^ +This row defines names for the fields @emph{above} the row. With such +a definition, any formula in the table may use @samp{$m1} to refer to +the value @samp{10}. Also, if you assign a formula to a names field, it +will be stored as @samp{$name=...}. +@item _ +Similar to @samp{^}, but defines names for the fields in the row +@emph{below}. +@item $ +Fields in this row can define @emph{parameters} for formulas. For +example, if a field in a @samp{$} row contains @samp{max=50}, then +formulas in this table can refer to the value 50 using @samp{$max}. +Parameters work exactly like constants, only that they can be defined on +a per-table basis. +@item # +Fields in this row are automatically recalculated when pressing +@key{TAB} or @key{RET} or @kbd{S-@key{TAB}} in this row. Also, this row +is selected for a global recalculation with @kbd{C-u C-c *}. Unmarked +lines will be left alone by this command. +@item * +Selects this line for global recalculation with @kbd{C-u C-c *}, but +not for automatic recalculation. Use this when automatic +recalculation slows down editing too much. +@item +Unmarked lines are exempt from recalculation with @kbd{C-u C-c *}. +All lines that should be recalculated should be marked with @samp{#} +or @samp{*}. +@item / +Do not export this line. Useful for lines that contain the narrowing +@samp{} markers. +@end table + +Finally, just to whet your appetite on what can be done with the +fantastic @file{calc} package, here is a table that computes the Taylor +series of degree @code{n} at location @code{x} for a couple of +functions. + +@example +@group +|---+-------------+---+-----+--------------------------------------| +| | Func | n | x | Result | +|---+-------------+---+-----+--------------------------------------| +| # | exp(x) | 1 | x | 1 + x | +| # | exp(x) | 2 | x | 1 + x + x^2 / 2 | +| # | exp(x) | 3 | x | 1 + x + x^2 / 2 + x^3 / 6 | +| # | x^2+sqrt(x) | 2 | x=0 | x*(0.5 / 0) + x^2 (2 - 0.25 / 0) / 2 | +| # | x^2+sqrt(x) | 2 | x=1 | 2 + 2.5 x - 2.5 + 0.875 (x - 1)^2 | +| * | tan(x) | 3 | x | 0.0175 x + 1.77e-6 x^3 | +|---+-------------+---+-----+--------------------------------------| +#+TBLFM: $5=taylor($2,$4,$3);n3 +@end group +@end example + +@node Hyperlinks, TODO items, Tables, Top +@chapter Hyperlinks +@cindex hyperlinks + +Like HTML, Org-mode provides links inside a file, external links to +other files, Usenet articles, emails, and much more. + +@menu +* Link format:: How links in Org-mode are formatted +* Internal links:: Links to other places in the current file +* External links:: URL-like links to the world +* Handling links:: Creating, inserting and following +* Using links outside Org-mode:: Linking from my C source code? +* Link abbreviations:: Shortcuts for writing complex links +* Search options:: Linking to a specific location +* Custom searches:: When the default search is not enough +@end menu + +@node Link format, Internal links, Hyperlinks, Hyperlinks +@section Link format +@cindex link format +@cindex format, of links + +Org-mode will recognize plain URL-like links and activate them as +clickable links. The general link format, however, looks like this: + +@example +[[link][description]] @r{or alternatively} [[link]] +@end example + +Once a link in the buffer is complete (all brackets present), Org-mode +will change the display so that @samp{description} is displayed instead +of @samp{[[link][description]]} and @samp{link} is displayed instead of +@samp{[[link]]}. Links will be highlighted in the face @code{org-link}, +which by default is an underlined face. You can directly edit the +visible part of a link. Note that this can be either the @samp{link} +part (if there is no description) or the @samp{description} part. To +edit also the invisible @samp{link} part, use @kbd{C-c C-l} with the +cursor on the link. + +If you place the cursor at the beginning or just behind the end of the +displayed text and press @key{BACKSPACE}, you will remove the +(invisible) bracket at that location. This makes the link incomplete +and the internals are again displayed as plain text. Inserting the +missing bracket hides the link internals again. To show the +internal structure of all links, use the menu entry +@code{Org->Hyperlinks->Literal links}. + +@node Internal links, External links, Link format, Hyperlinks +@section Internal links +@cindex internal links +@cindex links, internal +@cindex targets, for links + +If the link does not look like a URL, it is considered to be internal in +the current file. Links such as @samp{[[My Target]]} or @samp{[[My +Target][Find my target]]} lead to a text search in the current file. +The link can be followed with @kbd{C-c C-o} when the cursor is on the +link, or with a mouse click (@pxref{Handling links}). The preferred +match for such a link is a dedicated target: the same string in double +angular brackets. Targets may be located anywhere; sometimes it is +convenient to put them into a comment line. For example + +@example +# <> +@end example + +@noindent In HTML export (@pxref{HTML export}), such targets will become +named anchors for direct access through @samp{http} links@footnote{Note +that text before the first headline is usually not exported, so the +first such target should be after the first headline.}. + +If no dedicated target exists, Org-mode will search for the words in the +link. In the above example the search would be for @samp{my target}. +Links starting with a star like @samp{*My Target} restrict the search to +headlines. When searching, Org-mode will first try an exact match, but +then move on to more and more lenient searches. For example, the link +@samp{[[*My Targets]]} will find any of the following: + +@example +** My targets +** TODO my targets are bright +** my 20 targets are +@end example + +To insert a link targeting a headline, in-buffer completion can be used. +Just type a star followed by a few optional letters into the buffer and +press @kbd{M-@key{TAB}}. All headlines in the current buffer will be +offered as completions. @xref{Handling links}, for more commands +creating links. + +Following a link pushes a mark onto Org-mode's own mark ring. You can +return to the previous position with @kbd{C-c &}. Using this command +several times in direct succession goes back to positions recorded +earlier. + +@menu +* Radio targets:: Make targets trigger links in plain text. +@end menu + +@node Radio targets, , Internal links, Internal links +@subsection Radio targets +@cindex radio targets +@cindex targets, radio +@cindex links, radio targets + +Org-mode can automatically turn any occurrences of certain target names +in normal text into a link. So without explicitly creating a link, the +text connects to the target radioing its position. Radio targets are +enclosed by triple angular brackets. For example, a target @samp{<<>>} causes each occurrence of @samp{my target} in normal text to +become activated as a link. The Org-mode file is scanned automatically +for radio targets only when the file is first loaded into Emacs. To +update the target list during editing, press @kbd{C-c C-c} with the +cursor on or at a target. + +@node External links, Handling links, Internal links, Hyperlinks +@section External links +@cindex links, external +@cindex external links +@cindex links, external +@cindex GNUS links +@cindex BBDB links +@cindex IRC links +@cindex URL links +@cindex file links +@cindex VM links +@cindex RMAIL links +@cindex WANDERLUST links +@cindex MH-E links +@cindex USENET links +@cindex SHELL links +@cindex Info links +@cindex elisp links + +Org-mode supports links to files, websites, Usenet and email messages, +BBDB database entries and links to both IRC conversations and their +logs. External links are URL-like locators. They start with a short +identifying string followed by a colon. There can be no space after +the colon. The following list shows examples for each link type. + +@example - http://www.astro.uva.nl/~dominik @r{on the web} ++http://orgmode.org/ @r{on the web} +file:/home/dominik/images/jupiter.jpg @r{file, absolute path} +file:papers/last.pdf @r{file, relative path} +news:comp.emacs @r{Usenet link} +mailto:adent@@galaxy.net @r{Mail link} +vm:folder @r{VM folder link} +vm:folder#id @r{VM message link} +vm://myself@@some.where.org/folder#id @r{VM on remote machine} +wl:folder @r{WANDERLUST folder link} +wl:folder#id @r{WANDERLUST message link} +mhe:folder @r{MH-E folder link} +mhe:folder#id @r{MH-E message link} +rmail:folder @r{RMAIL folder link} +rmail:folder#id @r{RMAIL message link} +gnus:group @r{GNUS group link} +gnus:group#id @r{GNUS article link} +bbdb:Richard Stallman @r{BBDB link} +irc:/irc.com/#emacs/bob @r{IRC link} +shell:ls *.org @r{A shell command} +elisp:(find-file-other-frame "Elisp.org") @r{An elisp form to evaluate} +@end example + +A link should be enclosed in double brackets and may contain a +descriptive text to be displayed instead of the url (@pxref{Link +format}), for example: + +@example +[[http://www.gnu.org/software/emacs/][GNU Emacs]] +@end example + +@noindent +If the description is a file name or URL that points to an image, HTML +export (@pxref{HTML export}) will inline the image as a clickable +button. If there is no description at all and the link points to an +image, +that image will be inlined into the exported HTML file. + +@cindex angular brackets, around links +@cindex plain text external links +Org-mode also finds external links in the normal text and activates them +as links. If spaces must be part of the link (for example in +@samp{bbdb:Richard Stallman}), or if you need to remove ambiguities +about the end of the link, enclose them in angular brackets. + +@node Handling links, Using links outside Org-mode, External links, Hyperlinks +@section Handling links +@cindex links, handling + +Org-mode provides methods to create a link in the correct syntax, to +insert it into an org-mode file, and to follow the link. + +@table @kbd +@kindex C-c l +@cindex storing links +@item C-c l +Store a link to the current location. This is a @emph{global} command +which can be used in any buffer to create a link. The link will be +stored for later insertion into an Org-mode buffer (see below). For +Org-mode files, if there is a @samp{<>} at the cursor, the +link points to the target. Otherwise it points to the current +headline. For VM, RMAIL, WANDERLUST, MH-E, GNUS and BBDB buffers, the +link will indicate the current article/entry. For W3 and W3M buffers, +the link goes to the current URL. For IRC links, if you set the +variable @code{org-irc-link-to-logs} to non-nil then @kbd{C-c l} will +store a @samp{file:/} style link to the relevant point in the logs for +the current conversation. Otherwise an @samp{irc:/} style link to the +user/channel/server under the point will be stored. For any other +files, the link will point to the file, with a search string +(@pxref{Search options}) pointing to the contents of the current line. +If there is an active region, the selected words will form the basis +of the search string. If the automatically created link is not +working correctly or accurately enough, you can write custom functions +to select the search string and to do the search for particular file +types - see @ref{Custom searches}. The key binding @kbd{C-c l} is +only a suggestion - see @ref{Installation}. +@c +@kindex C-c C-l +@cindex link completion +@cindex completion, of links +@cindex inserting links +@item C-c C-l +Insert a link. This prompts for a link to be inserted into the buffer. +You can just type a link, using text for an internal link, or one of the +link type prefixes mentioned in the examples above. All links stored +during the current session are part of the history for this prompt, so +you can access them with @key{up} and @key{down} (or @kbd{M-p/n}). +Completion, on the other hand, will help you to insert valid link +prefixes like @samp{http:} or @samp{ftp:}, including the prefixes +defined through link abbreviations (@pxref{Link abbreviations}). The +link will be inserted into the buffer@footnote{After insertion of a +stored link, the link will be removed from the list of stored links. To +keep it in the list later use, use a triple @kbd{C-u} prefix to @kbd{C-c +C-l}, or configure the option +@code{org-keep-stored-link-after-insertion}.}, along with a descriptive +text. If some text was selected when this command is called, the +selected text becomes the default description.@* Note that you don't +have to use this command to insert a link. Links in Org-mode are plain +text, and you can type or paste them straight into the buffer. By using +this command, the links are automatically enclosed in double brackets, +and you will be asked for the optional descriptive text. +@c +@c If the link is a @samp{file:} link and +@c the linked file is located in the same directory as the current file or +@c a subdirectory of it, the path of the file will be inserted relative to +@c the current directory. +@c +@kindex C-u C-c C-l +@cindex file name completion +@cindex completion, of file names +@item C-u C-c C-l +When @kbd{C-c C-l} is called with a @kbd{C-u} prefix argument, a link to +a file will be inserted and you may use file name completion to select +the name of the file. The path to the file is inserted relative to the +directory of the current org file, if the linked file is in the current +directory or in a subdirectory of it, or if the path is written relative +to the current directory using @samp{../}. Otherwise an absolute path +is used, if possible with @samp{~/} for your home directory. You can +force an absolute path with two @kbd{C-u} prefixes. +@c +@item C-c C-l @r{(with cursor on existing link)} +When the cursor is on an existing link, @kbd{C-c C-l} allows you to edit the +link and description parts of the link. +@c +@cindex following links +@kindex C-c C-o +@item C-c C-o +Open link at point. This will launch a web browser for URLs (using +@command{browse-url-at-point}), run vm/mh-e/wanderlust/rmail/gnus/bbdb +for the corresponding links, and execute the command in a shell link. +When the cursor is on an internal link, this commands runs the +corresponding search. When the cursor is on a TAG list in a headline, +it creates the corresponding TAGS view. If the cursor is on a time +stamp, it compiles the agenda for that date. Furthermore, it will visit +text and remote files in @samp{file:} links with Emacs and select a +suitable application for local non-text files. Classification of files +is based on file extension only. See option @code{org-file-apps}. If +you want to override the default application and visit the file with +Emacs, use a @kbd{C-u} prefix. +@c +@kindex mouse-2 +@kindex mouse-1 +@item mouse-2 +@itemx mouse-1 +On links, @kbd{mouse-2} will open the link just as @kbd{C-c C-o} +would. Under Emacs 22, also @kbd{mouse-1} will follow a link. +@c +@kindex mouse-3 +@item mouse-3 +Like @kbd{mouse-2}, but force file links to be opened with Emacs, and +internal links to be displayed in another window@footnote{See the +variable @code{org-display-internal-link-with-indirect-buffer}}. +@c +@cindex mark ring +@kindex C-c % +@item C-c % +Push the current position onto the mark ring, to be able to return +easily. Commands following an internal link do this automatically. +@c +@cindex links, returning to +@kindex C-c & +@item C-c & +Jump back to a recorded position. A position is recorded by the +commands following internal links, and by @kbd{C-c %}. Using this +command several times in direct succession moves through a ring of +previously recorded positions. +@c +@kindex C-c C-x C-n +@kindex C-c C-x C-p +@cindex links, finding next/previous +@item C-c C-x C-n +@itemx C-c C-x C-p +Move forward/backward to the next link in the buffer. At the limit of +the buffer, the search fails once, and then wraps around. The key +bindings for this are really too long, you might want to bind this also +to @kbd{C-n} and @kbd{C-p} +@lisp +(add-hook 'org-load-hook + (lambda () + (define-key 'org-mode-map "\C-n" 'org-next-link) + (define-key 'org-mode-map "\C-p" 'org-previous-link))) +@end lisp +@end table + +@node Using links outside Org-mode, Link abbreviations, Handling links, Hyperlinks +@section Using links outside Org-mode + +You can insert and follow links that have Org-mode syntax not only in +Org-mode, but in any Emacs buffer. For this, you should create two +global commands, like this (please select suitable global keys +yourself): + +@lisp +(global-set-key "\C-c L" 'org-insert-link-global) +(global-set-key "\C-c o" 'org-open-at-point-global) +@end lisp + +@node Link abbreviations, Search options, Using links outside Org-mode, Hyperlinks +@section Link abbreviations +@cindex link abbreviations +@cindex abbreviation, links + +Long URLs can be cumbersome to type, and often many similar links are +needed in a document. For this you can use link abbreviations. An +abbreviated link looks like this + +@example +[[linkword:tag][description]] +@end example + +@noindent +where the tag is optional. Such abbreviations are resolved according to +the information in the variable @code{org-link-abbrev-alist} that +relates the linkwords to replacement text. Here is an example: + +@lisp +@group +(setq org-link-abbrev-alist + '(("bugzilla" . "http://10.1.2.9/bugzilla/show_bug.cgi?id=") + ("google" . "http://www.google.com/search?q=") + ("ads" . "http://adsabs.harvard.edu/cgi-bin/ + nph-abs_connect?author=%s&db_key=AST"))) +@end group +@end lisp + +If the replacement text contains the string @samp{%s}, it will be +replaced with the tag. Otherwise the tag will be appended to the string +in order to create the link. You may also specify a function that will +be called with the tag as the only argument to create the link. + +With the above setting, you could link to a specific bug with +@code{[[bugzilla:129]]}, search the web for @samp{OrgMode} with +@code{[[google:OrgMode]]} and find out what the Org-mode author is +doing besides Emacs hacking with @code{[[ads:Dominik,C]]}. + +If you need special abbreviations just for a single Org-mode buffer, you +can define them in the file with + +@example +#+LINK: bugzilla http://10.1.2.9/bugzilla/show_bug.cgi?id= +#+LINK: google http://www.google.com/search?q=%s +@end example + +@noindent +In-buffer completion @pxref{Completion} can be used after @samp{[} to +complete link abbreviations. + +@node Search options, Custom searches, Link abbreviations, Hyperlinks +@section Search options in file links +@cindex search option in file links +@cindex file links, searching + +File links can contain additional information to make Emacs jump to a +particular location in the file when following a link. This can be a +line number or a search option after a double@footnote{For backward +compatibility, line numbers can also follow a single colon.} colon. For +example, when the command @kbd{C-c l} creates a link (@pxref{Handling +links}) to a file, it encodes the words in the current line as a search +string that can be used to find this line back later when following the +link with @kbd{C-c C-o}. + +Here is the syntax of the different ways to attach a search to a file +link, together with an explanation: + +@example +[[file:~/code/main.c::255]] +[[file:~/xx.org::My Target]] +[[file:~/xx.org::*My Target]] +[[file:~/xx.org::/regexp/]] +@end example + +@table @code +@item 255 +Jump to line 255. +@item My Target +Search for a link target @samp{<>}, or do a text search for +@samp{my target}, similar to the search in internal links, see +@ref{Internal links}. In HTML export (@pxref{HTML export}), such a file +link will become an HTML reference to the corresponding named anchor in +the linked file. +@item *My Target +In an Org-mode file, restrict search to headlines. +@item /regexp/ +Do a regular expression search for @code{regexp}. This uses the Emacs +command @code{occur} to list all matches in a separate window. If the +target file is in Org-mode, @code{org-occur} is used to create a +sparse tree with the matches. +@c If the target file is a directory, +@c @code{grep} will be used to search all files in the directory. +@end table + +As a degenerate case, a file link with an empty file name can be used +to search the current file. For example, @code{[[file:::find me]]} does +a search for @samp{find me} in the current file, just as +@samp{[[find me]]} would. + +@node Custom searches, , Search options, Hyperlinks +@section Custom Searches +@cindex custom search strings +@cindex search strings, custom + +The default mechanism for creating search strings and for doing the +actual search related to a file link may not work correctly in all +cases. For example, BibTeX database files have many entries like +@samp{year="1993"} which would not result in good search strings, +because the only unique identification for a BibTeX entry is the +citation key. + +If you come across such a problem, you can write custom functions to set +the right search string for a particular file type, and to do the search +for the string in the file. Using @code{add-hook}, these functions need +to be added to the hook variables +@code{org-create-file-search-functions} and +@code{org-execute-file-search-functions}. See the docstring for these +variables for more information. Org-mode actually uses this mechanism +for Bib@TeX{} database files, and you can use the corresponding code as +an implementation example. Search for @samp{BibTeX links} in the source +file. + + + +@node TODO items, Tags, Hyperlinks, Top +@chapter TODO items +@cindex TODO items + +Org-mode does not maintain TODO lists as separate documents. Instead, +TODO items are an integral part of the notes file, because TODO items +usually come up while taking notes! With Org-mode, simply mark any +entry in a tree as being a TODO item. In this way, information is not +duplicated, and the entire context from which the TODO item emerged is +always present. + +Of course, this technique for managing TODO items scatters them +throughout your notes file. Org-mode compensates for this by providing +methods to give you an overview of all the things that you have to do. + +@menu +* TODO basics:: Marking and displaying TODO entries +* TODO extensions:: Workflow and assignments +* Progress logging:: Dates and notes for progress +* Priorities:: Some things are more important than others +* Breaking down tasks:: Splitting a task into manageable pieces +* Checkboxes:: Tick-off lists +@end menu + +@node TODO basics, TODO extensions, TODO items, TODO items +@section Basic TODO functionality + +Any headline becomes a TODO item when it starts with the word +@samp{TODO}, for example: + +@example +*** TODO Write letter to Sam Fortune +@end example + +@noindent +The most important commands to work with TODO entries are: + +@table @kbd +@kindex C-c C-t +@cindex cycling, of TODO states +@item C-c C-t +Rotate the TODO state of the current item among + +@example +,-> (unmarked) -> TODO -> DONE --. +'--------------------------------' +@end example + +The same rotation can also be done ``remotely'' from the timeline and +agenda buffers with the @kbd{t} command key (@pxref{Agenda commands}). + +@kindex C-u C-c C-t +@item C-u C-c C-t +Select a specific keyword using completion or (if it has been set up) +the fast selection interface. For the latter, you need to assign keys +to TODO states, see @ref{Per-file keywords} and @ref{Setting tags} for +more information. + +@kindex S-@key{right} +@kindex S-@key{left} +@item S-@key{right} +@itemx S-@key{left} +Select the following/preceding TODO state, similar to cycling. Useful +mostly if more than two TODO states are possible (@pxref{TODO +extensions}). +@kindex C-c C-v +@kindex C-c / t +@cindex sparse tree, for TODO +@item C-c C-v +@itemx C-c / t +View TODO items in a @emph{sparse tree} (@pxref{Sparse trees}). Folds +the entire buffer, but shows all TODO items and the headings hierarchy +above them. With prefix arg, search for a specific TODO. You will be +prompted for the keyword, and you can also give a list of keywords like +@code{KWD1|KWD2|...}. With numerical prefix N, show the tree for the +Nth keyword in the variable @code{org-todo-keywords}. With two prefix +args, find all TODO and DONE entries. +@kindex C-c a t +@item C-c a t +Show the global TODO list. Collects the TODO items from all agenda +files (@pxref{Agenda views}) into a single buffer. The new buffer will +be in @code{agenda-mode}, which provides commands to examine and +manipulate the TODO entries from the new buffer (@pxref{Agenda +commands}). @xref{Global TODO list}, for more information. +@kindex S-M-@key{RET} +@item S-M-@key{RET} +Insert a new TODO entry below the current one. +@end table + +@node TODO extensions, Progress logging, TODO basics, TODO items +@section Extended use of TODO keywords +@cindex extended TODO keywords + +By default, marked TODO entries have one of only two states: TODO and +DONE. Org-mode allows you to classify TODO items in more complex ways +with @emph{TODO keywords} (stored in @code{org-todo-keywords}). With +special setup, the TODO keyword system can work differently in different +files. + +Note that @i{tags} are another way to classify headlines in general and +TODO items in particular (@pxref{Tags}). + +@menu +* Workflow states:: From TODO to DONE in steps +* TODO types:: I do this, Fred does the rest +* Multiple sets in one file:: Mixing it all, and still finding your way +* Fast access to TODO states:: Single letter selection of a state +* Per-file keywords:: Different files, different requirements +* Faces for TODO keywords:: Highlighting states +@end menu + +@node Workflow states, TODO types, TODO extensions, TODO extensions +@subsection TODO keywords as workflow states +@cindex TODO workflow +@cindex workflow states as TODO keywords + +You can use TODO keywords to indicate different @emph{sequential} states +in the process of working on an item, for example@footnote{Changing +this variable only becomes effective after restarting Org-mode in a +buffer.}: + +@lisp +(setq org-todo-keywords + '((sequence "TODO" "FEEDBACK" "VERIFY" "|" "DONE" "DELEGATED"))) +@end lisp + +The vertical bar separates the TODO keywords (states that @emph{need +action}) from the DONE states (which need @emph{no further action}. If +you don't provide the separator bar, the last state is used as the DONE +state. +@cindex completion, of TODO keywords +With this setup, the command @kbd{C-c C-t} will cycle an entry from TODO +to FEEDBACK, then to VERIFY, and finally to DONE and DELEGATED. You may +also use a prefix argument to quickly select a specific state. For +example @kbd{C-3 C-c C-t} will change the state immediately to VERIFY. +Or you can use @kbd{S-left} to go backward through the sequence. If you +define many keywords, you can use in-buffer completion +(@pxref{Completion}) or even a special one-key selection scheme +(@pxref{Fast access to TODO states}) to insert these words into the +buffer. Changing a todo state can be logged with a timestamp, see +@ref{Tracking TODO state changes} for more information. + +@node TODO types, Multiple sets in one file, Workflow states, TODO extensions +@subsection TODO keywords as types +@cindex TODO types +@cindex names as TODO keywords +@cindex types as TODO keywords + +The second possibility is to use TODO keywords to indicate different +@emph{types} of action items. For example, you might want to indicate +that items are for ``work'' or ``home''. Or, when you work with several +people on a single project, you might want to assign action items +directly to persons, by using their names as TODO keywords. This would +be set up like this: + +@lisp +(setq org-todo-keywords '((type "Fred" "Sara" "Lucy" "|" "DONE"))) +@end lisp + +In this case, different keywords do not indicate a sequence, but rather +different types. So the normal work flow would be to assign a task to a +person, and later to mark it DONE. Org-mode supports this style by +adapting the workings of the command @kbd{C-c C-t}@footnote{This is also +true for the @kbd{t} command in the timeline and agenda buffers.}. When +used several times in succession, it will still cycle through all names, +in order to first select the right type for a task. But when you return +to the item after some time and execute @kbd{C-c C-t} again, it will +switch from any name directly to DONE. Use prefix arguments or +completion to quickly select a specific name. You can also review the +items of a specific TODO type in a sparse tree by using a numeric prefix +to @kbd{C-c C-v}. For example, to see all things Lucy has to do, you +would use @kbd{C-3 C-c C-v}. To collect Lucy's items from all agenda +files into a single buffer, you would use the prefix arg as well when +creating the global todo list: @kbd{C-3 C-c t}. + +@node Multiple sets in one file, Fast access to TODO states, TODO types, TODO extensions +@subsection Multiple keyword sets in one file +@cindex todo keyword sets + +Sometimes you may want to use different sets of TODO keywords in +parallel. For example, you may want to have the basic +@code{TODO}/@code{DONE}, but also a workflow for bug fixing, and a +separate state indicating that an item has been canceled (so it is not +DONE, but also does not require action). Your setup would then look +like this: + +@lisp +(setq org-todo-keywords + '((sequence "TODO" "|" "DONE") + (sequence "REPORT" "BUG" "KNOWNCAUSE" "|" "FIXED") + (sequence "|" "CANCELED"))) +@end lisp + +The keywords should all be different, this helps Org-mode to keep track +of which subsequence should be used for a given entry. In this setup, +@kbd{C-c C-t} only operates within a subsequence, so it switches from +@code{DONE} to (nothing) to @code{TODO}, and from @code{FIXED} to +(nothing) to @code{REPORT}. Therefore you need a mechanism to initially +select the correct sequence. Besides the obvious ways like typing a +keyword or using completion, you may also apply the following commands: + +@table @kbd +@kindex C-S-@key{right} +@kindex C-S-@key{left} +@item C-S-@key{right} +@itemx C-S-@key{left} +These keys jump from one TODO subset to the next. In the above example, +@kbd{C-S-@key{right}} would jump from @code{TODO} or @code{DONE} to +@code{REPORT}, and any of the words in the second row to @code{CANCELED}. +@kindex S-@key{right} +@kindex S-@key{left} +@item S-@key{right} +@itemx S-@key{left} +@kbd{S-@key{}} and @kbd{S-@key{}} and walk through +@emph{all} keywords from all sets, so for example @kbd{S-@key{}} +would switch from @code{DONE} to @code{REPORT} in the example above. +@end table + +@node Fast access to TODO states, Per-file keywords, Multiple sets in one file, TODO extensions +@subsection Fast access to TODO states + +If you would like to quickly change an entry to an arbitrary TODO state +instead of cycling through the states, you can set up keys for +single-letter access to the states. This is done by adding the section +key after each keyword, in parenthesis. For example: + +@lisp +(setq org-todo-keywords + '((sequence "TODO(t)" "|" "DONE(d)") + (sequence "REPORT(r)" "BUG(b)" "KNOWNCAUSE(k)" "|" "FIXED(f)") + (sequence "|" "CANCELED(c)"))) +@end lisp + +If you then press @code{C-u C-c C-t} followed by the selection key, the +entry will be switched to this state. @key{SPC} can be used to remove +any TODO keyword from an entry. Should you like this way of selecting +TODO states a lot, you might want to set the variable +@code{org-use-fast-todo-selection} to @code{t} and make this behavior +the default. Check also the variable +@code{org-fast-tag-selection-include-todo}, it allows to change the TODO +state through the tags interface (@pxref{Setting tags}), in case you +like to mingle the two concepts. + +@node Per-file keywords, Faces for TODO keywords, Fast access to TODO states, TODO extensions +@subsection Setting up keywords for individual files +@cindex keyword options +@cindex per-file keywords + +It can be very useful to use different aspects of the TODO mechanism in +different files. For file-local settings, you need to add special lines +to the file which set the keywords and interpretation for that file +only. For example, to set one of the two examples discussed above, you +need one of the following lines, starting in column zero anywhere in the +file: + +@example +#+SEQ_TODO: TODO FEEDBACK VERIFY | DONE CANCELED +@end example +or +@example +#+TYP_TODO: Fred Sara Lucy Mike | DONE +@end example + +A setup for using several sets in parallel would be: + +@example +#+SEQ_TODO: TODO | DONE +#+SEQ_TODO: REPORT BUG KNOWNCAUSE | FIXED +#+SEQ_TODO: | CANCELED +@end example + +@cindex completion, of option keywords +@kindex M-@key{TAB} +@noindent To make sure you are using the correct keyword, type +@samp{#+} into the buffer and then use @kbd{M-@key{TAB}} completion. + +@cindex DONE, final TODO keyword +Remember that the keywords after the vertical bar (or the last keyword +if no bar is there) must always mean that the item is DONE (although you +may use a different word). After changing one of these lines, use +@kbd{C-c C-c} with the cursor still in the line to make the changes +known to Org-mode@footnote{Org-mode parses these lines only when +Org-mode is activated after visiting a file. @kbd{C-c C-c} with the +cursor in a line starting with @samp{#+} is simply restarting Org-mode +for the current buffer.}. + +@node Faces for TODO keywords, , Per-file keywords, TODO extensions +@subsection Faces for TODO keywords +@cindex faces, for TODO keywords + +Org-mode highlights TODO keywords with special faces: @code{org-todo} +for keywords indicating that an item still has to be acted upon, and +@code{org-done} for keywords indicating that an item is finished. If +you are using more than 2 different states, you might want to use +special faces for some of them. This can be done using the variable +@code{org-todo-keyword-faces}. For example: + +@lisp +(setq org-todo-keyword-faces + '(("TODO" . org-warning) + ("DEFERRED" . shadow) + ("CANCELED" . (:foreground "blue" :weight bold)))) +@end lisp + +While using a list with face properties as shown for CANCELED +@emph{should} work, this does not aways seem to be the case. If +necessary, define a special face and use that. + +@page +@node Progress logging, Priorities, TODO extensions, TODO items +@section Progress Logging +@cindex progress logging +@cindex logging, of progress + +Org-mode can automatically record a time stamp and possibly a note when +you mark a TODO item as DONE, or even each time you change the state of +a TODO item. This system is highly configurable, settings can be on a +per-keyword basis and can be localized to a file or even a subtree. For +information on how to clock working time for a task, see @ref{Clocking +work time}. + +@menu +* Closing items:: When was this entry marked DONE? +* Tracking TODO state changes:: When did the status change? +@end menu + +@node Closing items, Tracking TODO state changes, Progress logging, Progress logging +@subsection Closing items + +The most basic logging is to keep track of @emph{when} a certain TODO +item was finished. This is achieved with@footnote{The corresponding +in-buffer setting is: @code{#+STARTUP: logdone}}. + +@lisp +(setq org-log-done 'time) +@end lisp + +@noindent +Then each time you turn an entry from a TODO (not-done) state into any +of the DONE states, a line @samp{CLOSED: [timestamp]} will be inserted +just after the headline. If you turn the entry back into a TODO item +through further state cycling, that line will be removed again. If you +want to record a note along with the timestamp, use@footnote{The +corresponding in-buffer setting is: @code{#+STARTUP: lognotedone}} + +@lisp +(setq org-log-done 'note) +@end lisp + +@noindent +You will then be prompted for a note, and that note will be stored below +the entry with a @samp{Closing Note} heading. + +In the timeline (@pxref{Timeline}) and in the agenda +(@pxref{Weekly/Daily agenda}), you can then use the @kbd{l} key to +display the TODO items with a @samp{CLOSED} timestamp on each day, +giving you an overview of what has been done. + +@node Tracking TODO state changes, , Closing items, Progress logging +@subsection Tracking TODO state changes + +When TODO keywords are used as workflow states (@pxref{Workflow +states}), you might want to keep track of when a state change occurred +and maybe take a note about this change. Since it is normally too much +to record a note for every state, Org-mode expects configuration on a +per-keyword basis for this. This is achieved by adding special markers +@samp{!} (for a time stamp) and @samp{@@} (for a note) in parenthesis +after each keyword. For example, with the setting + +@lisp +(setq org-todo-keywords + '((sequence "TODO(t)" "WAIT(w@@/!)" "|" "DONE(d!)" "CANCELED(c@@)"))) +@end lisp + +@noindent +you not only define global TODO keywords and fast access keys, but also +request that a time is recorded when the entry is turned into +DONE@footnote{It is possible that Org-mode will record two time stamps +when you are using both @code{org-log-done} and state change logging. +However, it will never prompt for two notes - if you have configured +both, the state change recording note will take precedence and cancel +the @samp{Closing Note}.}, and that a note is recorded when switching to +WAIT or CANCELED. The setting for WAIT is even more special: The +@samp{!} after the slash means that in addition to the note taken when +entering the state, a time stamp should be recorded when @i{leaving} the +WAIT state, if and only if the @i{target} state does not configure +logging for entering it. So it has no effect when switching from WAIT +to DONE, because DONE is configured to record a timestamp only. But +when switching from WAIT back to TODO, the @samp{/!} in the WAIT +setting now triggers a timestamp even though TODO has no logging +configured. + +You can use the exact same syntax for setting logging preferences local +to a buffer: +@example +#+SEQ_TODO: TODO(t) WAIT(w@@/!) | DONE(d!) CANCELED(c@@) +@end example + +In order to define logging settings that are local to a subtree or a +single item, define a LOGGING property in this entry. Any non-empty +LOGGING property resets all logging settings to nil. You may then turn +on logging for this specific tree using STARTUP keywords like +@code{lognotedone} or @code{logrepeat}, as well as adding state specific +settings like @code{TODO(!)}. For example + +@example +* TODO Log each state with only a time + :PROPERTIES: + :LOGGING: TODO(!) WAIT(!) DONE(!) CANCELED(!) + :END: +* TODO Only log when switching to WAIT, and when repeating + :PROPERTIES: + :LOGGING: WAIT(@@) logrepeat + :END: +* TODO No logging at all + :PROPERTIES: + :LOGGING: nil + :END: +@end example + + +@node Priorities, Breaking down tasks, Progress logging, TODO items +@section Priorities +@cindex priorities + +If you use Org-mode extensively, you may end up enough TODO items that +it starts to make sense to prioritize them. Prioritizing can be done by +placing a @emph{priority cookie} into the headline of a TODO item, like +this + +@example +*** TODO [#A] Write letter to Sam Fortune +@end example + +@noindent +By default, Org-mode supports three priorities: @samp{A}, @samp{B}, and +@samp{C}. @samp{A} is the highest priority. An entry without a cookie +is treated as priority @samp{B}. Priorities make a difference only in +the agenda (@pxref{Weekly/Daily agenda}); outside the agenda, they have +no inherent meaning to Org-mode. + +Priorities can be attached to any outline tree entries; they do not need +to be TODO items. + +@table @kbd +@kindex @kbd{C-c ,} +@item @kbd{C-c ,} +Set the priority of the current headline. The command prompts for a +priority character @samp{A}, @samp{B} or @samp{C}. When you press +@key{SPC} instead, the priority cookie is removed from the headline. +The priorities can also be changed ``remotely'' from the timeline and +agenda buffer with the @kbd{,} command (@pxref{Agenda commands}). +@c +@kindex S-@key{up} +@kindex S-@key{down} +@item S-@key{up} +@itemx S-@key{down} +Increase/decrease priority of current headline@footnote{See also the +option @code{org-priority-start-cycle-with-default'}.}. Note that these +keys are also used to modify time stamps (@pxref{Creating timestamps}). +Furthermore, these keys are also used by CUA-mode (@pxref{Conflicts}). +@end table + +You can change the range of allowed priorities by setting the variables +@code{org-highest-priority}, @code{org-lowest-priority}, and +@code{org-default-priority}. For an individual buffer, you may set +these values (highest, lowest, default) like this (please make sure that +the highest priority is earlier in the alphabet than the lowest +priority): + +@example +#+PRIORITIES: A C B +@end example + +@node Breaking down tasks, Checkboxes, Priorities, TODO items +@section Breaking tasks down into subtasks +@cindex tasks, breaking down + +It is often advisable to break down large tasks into smaller, manageable +subtasks. You can do this by creating an outline tree below a TODO +item, with detailed subtasks on the tree@footnote{To keep subtasks out +of the global TODO list, see the +@code{org-agenda-todo-list-sublevels}.}. Another possibility is the use +of checkboxes to identify (a hierarchy of) a large number of subtasks +(@pxref{Checkboxes}). + + +@node Checkboxes, , Breaking down tasks, TODO items +@section Checkboxes +@cindex checkboxes + +Every item in a plain list (@pxref{Plain lists}) can be made into a +checkbox by starting it with the string @samp{[ ]}. This feature is +similar to TODO items (@pxref{TODO items}), but is more lightweight. +Checkboxes are not included into the global TODO list, so they are often +great to split a task into a number of simple steps. Or you can use +them in a shopping list. To toggle a checkbox, use @kbd{C-c C-c}, or +use the mouse (thanks to Piotr Zielinski's @file{org-mouse.el}). + +Here is an example of a checkbox list. + +@example +* TODO Organize party [2/4] + - [-] call people [1/3] + - [ ] Peter + - [X] Sarah + - [ ] Sam + - [X] order food + - [ ] think about what music to play + - [X] talk to the neighbors +@end example + +Checkboxes work hierarchically, so if a checkbox item has children that +are checkboxes, toggling one of the children checkboxes will make the +parent checkbox reflect if none, some, or all of the children are +checked. + +@cindex statistics, for checkboxes +@cindex checkbox statistics +The @samp{[2/4]} and @samp{[1/3]} in the first and second line are +cookies indicating how many checkboxes present in this entry have been +checked off, and the total number of checkboxes are present. This can +give you an idea on how many checkboxes remain, even without opening a +folded entry. The cookies can be placed into a headline or into (the +first line of) a plain list item. Each cookie covers all checkboxes +structurally below the headline/item on which the cookie appear. You +have to insert the cookie yourself by typing either @samp{[/]} or +@samp{[%]}. With @samp{[/]} you get an @samp{n out of m} result, as in +the examples above. With @samp{[%]} you get information about the +percentage of checkboxes checked (in the above example, this would be +@samp{[50%]} and @samp{[33%]}, respectively). + +@noindent The following commands work with checkboxes: + +@table @kbd +@kindex C-c C-c +@item C-c C-c +Toggle checkbox at point. With prefix argument, set it to @samp{[-]}, +which is considered to be an intermediate state. +@kindex C-c C-x C-b +@item C-c C-x C-b +Toggle checkbox at point. +@itemize @minus +@item +If there is an active region, toggle the first checkbox in the region +and set all remaining boxes to the same status as the first. If you +want to toggle all boxes in the region independently, use a prefix +argument. +@item +If the cursor is in a headline, toggle checkboxes in the region between +this headline and the next (so @emph{not} the entire subtree). +@item +If there is no active region, just toggle the checkbox at point. +@end itemize +@kindex M-S-@key{RET} +@item M-S-@key{RET} +Insert a new item with a checkbox. +This works only if the cursor is already in a plain list item +(@pxref{Plain lists}). +@kindex C-c # +@item C-c # +Update the checkbox statistics in the current outline entry. When +called with a @kbd{C-u} prefix, update the entire file. Checkbox +statistic cookies are updated automatically if you toggle checkboxes +with @kbd{C-c C-c} and make new ones with @kbd{M-S-@key{RET}}. If you +delete boxes or add/change them by hand, use this command to get things +back into synch. Or simply toggle any checkbox twice with @kbd{C-c C-c}. +@end table + +@node Tags, Properties and columns, TODO items, Top +@chapter Tags +@cindex tags +@cindex headline tagging +@cindex matching, tags +@cindex sparse tree, tag based + +An excellent way to implement labels and contexts for cross-correlating +information is to assign @i{tags} to headlines. Org-mode has extensive +support for tags. + +Every headline can contain a list of tags; they occur at the end of the +headline. Tags are normal words containing letters, numbers, @samp{_}, +and @samp{@@}. Tags must be preceded and followed by a single colon, +e.g., @samp{:WORK:}. Several tags can be specified, as in +@samp{:work:URGENT:}. + +@menu +* Tag inheritance:: Tags use the tree structure of the outline +* Setting tags:: How to assign tags to a headline +* Tag searches:: Searching for combinations of tags +@end menu + +@node Tag inheritance, Setting tags, Tags, Tags +@section Tag inheritance +@cindex tag inheritance +@cindex inheritance, of tags +@cindex sublevels, inclusion into tags match + +@i{Tags} make use of the hierarchical structure of outline trees. If a +heading has a certain tag, all subheadings will inherit the tag as +well. For example, in the list + +@example +* Meeting with the French group :work: +** Summary by Frank :boss:notes: +*** TODO Prepare slides for him :action: +@end example + +@noindent +the final heading will have the tags @samp{:work:}, @samp{:boss:}, +@samp{:notes:}, and @samp{:action:} even though the final heading is not +explicitly marked with those tags. When executing tag searches and +Org-mode finds that a certain headline matches the search criterion, it +will not check any sublevel headline, assuming that these also match and +that the list of matches could become very long because of that. If you +do want the subevels be tested and listed as well, you may set the +variable @code{org-tags-match-list-sublevels}. To turn off tag +inheritance entirely, use the variable @code{org-use-tag-inheritance}. + +@node Setting tags, Tag searches, Tag inheritance, Tags +@section Setting tags +@cindex setting tags +@cindex tags, setting + +@kindex M-@key{TAB} +Tags can simply be typed into the buffer at the end of a headline. +After a colon, @kbd{M-@key{TAB}} offers completion on tags. There is +also a special command for inserting tags: + +@table @kbd +@kindex C-c C-c +@item C-c C-c +@cindex completion, of tags +Enter new tags for the current headline. Org-mode will either offer +completion or a special single-key interface for setting tags, see +below. After pressing @key{RET}, the tags will be inserted and aligned +to @code{org-tags-column}. When called with a @kbd{C-u} prefix, all +tags in the current buffer will be aligned to that column, just to make +things look nice. TAGS are automatically realigned after promotion, +demotion, and TODO state changes (@pxref{TODO basics}). +@end table + +Org will support tag insertion based on a @emph{list of tags}. By +default this list is constructed dynamically, containing all tags +currently used in the buffer. You may also globally specify a hard list +of tags with the variable @code{org-tag-alist}. Finally you can set +the default tags for a given file with lines like + +@example +#+TAGS: @@work @@home @@tennisclub +#+TAGS: laptop car pc sailboat +@end example + +If you have globally defined your preferred set of tags using the +variable @code{org-tag-alist}, but would like to use a dynamic tag list +in a specific file, add an empty TAGS option line to that file: + +@example +#+TAGS: +@end example + +The default support method for entering tags is minibuffer completion. +However, Org-mode also implements a much better method: @emph{fast tag +selection}. This method allows to select and deselect tags with a +single key per tag. To function efficiently, you should assign unique +keys to most tags. This can be done globally with + +@lisp +(setq org-tag-alist '(("@@work" . ?w) ("@@home" . ?h) ("laptop" . ?l))) +@end lisp + +@noindent or on a per-file basis with + +@example +#+TAGS: @@work(w) @@home(h) @@tennisclub(t) laptop(l) pc(p) +@end example + +@noindent +You can also group together tags that are mutually exclusive. With +curly braces@footnote{In @code{org-mode-alist} use +@code{'(:startgroup)} and @code{'(:endgroup)}, respectively. Several +groups are allowed.} + +@example +#+TAGS: @{ @@work(w) @@home(h) @@tennisclub(t) @} laptop(l) pc(p) +@end example + +@noindent you indicate that at most one of @samp{@@work}, @samp{@@home}, +and @samp{@@tennisclub} should be selected. + +@noindent Don't forget to press @kbd{C-c C-c} with the cursor in one of +these lines to activate any changes. + +If at least one tag has a selection key, pressing @kbd{C-c C-c} will +automatically present you with a special interface, listing inherited +tags, the tags of the current headline, and a list of all valid tags +with corresponding keys@footnote{Keys will automatically be assigned to +tags which have no configured keys.}. In this interface, you can use +the following keys: + +@table @kbd +@item a-z... +Pressing keys assigned to tags will add or remove them from the list of +tags in the current line. Selecting a tag in a group of mutually +exclusive tags will turn off any other tags from that group. +@kindex @key{TAB} +@item @key{TAB} +Enter a tag in the minibuffer, even if the tag is not in the predefined +list. You will be able to complete on all tags present in the buffer. +@kindex @key{SPC} +@item @key{SPC} +Clear all tags for this line. +@kindex @key{RET} +@item @key{RET} +Accept the modified set. +@item C-g +Abort without installing changes. +@item q +If @kbd{q} is not assigned to a tag, it aborts like @kbd{C-g}. +@item ! +Turn off groups of mutually exclusive tags. Use this to (as an +exception) assign several tags from such a group. +@item C-c +Toggle auto-exit after the next change (see below). +If you are using expert mode, the first @kbd{C-c} will display the +selection window. +@end table + +@noindent +This method lets you assign tags to a headline with very few keys. With +the above setup, you could clear the current tags and set @samp{@@home}, +@samp{laptop} and @samp{pc} tags with just the following keys: @kbd{C-c +C-c @key{SPC} h l p @key{RET}}. Switching from @samp{@@home} to +@samp{@@work} would be done with @kbd{C-c C-c w @key{RET}} or +alternatively with @kbd{C-c C-c C-c w}. Adding the non-predefined tag +@samp{Sarah} could be done with @kbd{C-c C-c @key{TAB} S a r a h +@key{RET} @key{RET}}. + +If you find that most of the time, you need only a single keypress to +modify your list of tags, set the variable +@code{org-fast-tag-selection-single-key}. Then you no longer have to +press @key{RET} to exit fast tag selection - it will immediately exit +after the first change. If you then occasionally need more keys, press +@kbd{C-c} to turn off auto-exit for the current tag selection process +(in effect: start selection with @kbd{C-c C-c C-c} instead of @kbd{C-c +C-c}). If you set the variable to the value @code{expert}, the special +window is not even shown for single-key tag selection, it comes up only +when you press an extra @kbd{C-c}. + +@node Tag searches, , Setting tags, Tags +@section Tag searches +@cindex tag searches +@cindex searching for tags + +Once a system of tags has been set up, it can be used to collect related +information into special lists. + +@table @kbd +@kindex C-c \ +@kindex C-c / T +@item C-c \ +@itemx C-c / T +Create a sparse tree with all headlines matching a tags search. With a +@kbd{C-u} prefix argument, ignore headlines that are not a TODO line. +@kindex C-c a m +@item C-c a m +Create a global list of tag matches from all agenda files. +@xref{Matching tags and properties}. +@kindex C-c a M +@item C-c a M +Create a global list of tag matches from all agenda files, but check +only TODO items and force checking subitems (see variable +@code{org-tags-match-list-sublevels}). +@end table + +@cindex Boolean logic, for tag searches +A @i{tags} search string can use Boolean operators @samp{&} for AND and +@samp{|} for OR. @samp{&} binds more strongly than @samp{|}. +Parenthesis are currently not implemented. A tag may also be preceded +by @samp{-}, to select against it, and @samp{+} is syntactic sugar for +positive selection. The AND operator @samp{&} is optional when @samp{+} +or @samp{-} is present. Examples: + +@table @samp +@item +work-boss +Select headlines tagged @samp{:work:}, but discard those also tagged +@samp{:boss:}. +@item work|laptop +Selects lines tagged @samp{:work:} or @samp{:laptop:}. +@item work|laptop&night +Like before, but require the @samp{:laptop:} lines to be tagged also +@samp{:night:}. +@end table + +@cindex TODO keyword matching, with tags search +If you are using multi-state TODO keywords (@pxref{TODO extensions}), it +can be useful to also match on the TODO keyword. This can be done by +adding a condition after a slash to a tags match. The syntax is similar +to the tag matches, but should be applied with consideration: For +example, a positive selection on several TODO keywords can not +meaningfully be combined with boolean AND. However, @emph{negative +selection} combined with AND can be meaningful. To make sure that only +lines are checked that actually have any TODO keyword, use @kbd{C-c a +M}, or equivalently start the todo part after the slash with @samp{!}. +Examples: + +@table @samp +@item work/WAITING +Select @samp{:work:}-tagged TODO lines with the specific TODO +keyword @samp{WAITING}. +@item work/!-WAITING-NEXT +Select @samp{:work:}-tagged TODO lines that are neither @samp{WAITING} +nor @samp{NEXT} +@item work/+WAITING|+NEXT +Select @samp{:work:}-tagged TODO lines that are either @samp{WAITING} or +@samp{NEXT}. +@end table + +@cindex regular expressions, with tags search +Any element of the tag/todo match can be a regular expression - in this +case it must be enclosed in curly braces. For example, +@samp{work+@{^boss.*@}} matches headlines that contain the tag +@samp{:work:} and any tag @i{starting} with @samp{boss}. + +@cindex level, require for tags/property match +@cindex category, require for tags/property match +You can also require a headline to be of a certain level or category, by +writing instead of any TAG an expression like @samp{LEVEL=3} or +@samp{CATEGORY="work"}, respectively. For example, a search +@samp{+LEVEL=3+boss/-DONE} lists all level three headlines that have the +tag @samp{boss} and are @emph{not} marked with the todo keyword DONE. + +@node Properties and columns, Dates and times, Tags, Top +@chapter Properties and Columns +@cindex properties + +Properties are a set of key-value pairs associated with an entry. There +are two main applications for properties in Org-mode. First, properties +are like tags, but with a value. Second, you can use properties to +implement (very basic) database capabilities in an Org-mode buffer. For +an example of the first application, imagine maintaining a file where +you document bugs and plan releases of a piece of software. Instead of +using tags like @code{:release_1:}, @code{:release_2:}, one can use a +property, say @code{:Release:}, that in different subtrees has different +values, such as @code{1.0} or @code{2.0}. For an example of the second +application of properties, imagine keeping track of one's music CD's, +where properties could be things such as the album artist, date of +release, number of tracks, and so on. + +Properties can be conveniently edited and viewed in column view +(@pxref{Column view}). + +Properties are like tags, but with a value. For example, in a file +where you document bugs and plan releases of a piece of software, +instead of using tags like @code{:release_1:}, @code{:release_2:}, it +can be more efficient to use a property @code{:Release:} with a value +@code{1.0} or @code{2.0}. Second, you can use properties to implement +(very basic) database capabilities in an Org-mode buffer, for example to +create a list of Music CD's you own. You can edit and view properties +conveniently in column view (@pxref{Column view}). + +@menu +* Property syntax:: How properties are spelled out +* Special properties:: Access to other Org-mode features +* Property searches:: Matching property values +* Property inheritance:: Passing values down the tree +* Column view:: Tabular viewing and editing +* Property API:: Properties for Lisp programmers +@end menu + +@node Property syntax, Special properties, Properties and columns, Properties and columns +@section Property Syntax +@cindex property syntax +@cindex drawer, for properties + +Properties are key-value pairs. They need to be inserted into a special +drawer (@pxref{Drawers}) with the name @code{PROPERTIES}. Each property +is specified on a single line, with the key (surrounded by colons) +first, and the value after it. Here is an example: + +@example +* CD collection +** Classic +*** Goldberg Variations + :PROPERTIES: + :Title: Goldberg Variations + :Composer: J.S. Bach + :Artist: Glen Gould + :Publisher: Deutsche Grammphon + :NDisks: 1 + :END: +@end example + +You may define the allowed values for a particular property @samp{:Xyz:} +by setting a property @samp{:Xyz_ALL:}. This special property is +@emph{inherited}, so if you set it in a level 1 entry, it will apply to +the entire tree. When allowed values are defined, setting the +corresponding property becomes easier and is less prone to typing +errors. For the example with the CD collection, we can predefine +publishers and the number of disks in a box like this: + +@example +* CD collection + :PROPERTIES: + :NDisks_ALL: 1 2 3 4 + :Publisher_ALL: "Deutsche Grammophon" Phillips EMI + :END: +@end example + +If you want to set properties that can be inherited by any entry in a +file, use a line like + +@example +#+PROPERTY: NDisks_ALL 1 2 3 4 +@end example + +Property values set with the global variable +@code{org-global-properties} can be inherited by all entries in all +Org-mode files. + +@noindent +The following commands help to work with properties: + +@table @kbd +@kindex M-@key{TAB} +@item M-@key{TAB} +After an initial colon in a line, complete property keys. All keys used +in the current file will be offered as possible completions. +@kindex C-c C-x p +@item C-c C-x p +Set a property. This prompts for a property name and a value. If +necessary, the property drawer is created as well. +@item M-x org-insert-property-drawer +Insert a property drawer into the current entry. The drawer will be +inserted early in the entry, but after the lines with planning +information like deadlines. +@kindex C-c C-c +@item C-c C-c +With the cursor in a property drawer, this executes property commands. +@item C-c C-c s +Set a property in the current entry. Both the property and the value +can be inserted using completion. +@kindex S-@key{right} +@kindex S-@key{left} +@item S-@key{left}/@key{right} +Switch property at point to the next/previous allowed value. +@item C-c C-c d +Remove a property from the current entry. +@item C-c C-c D +Globally remove a property, from all entries in the current file. +@item C-c C-c c +Compute the property at point, using the operator and scope from the +nearest column format definition. +@end table + +@node Special properties, Property searches, Property syntax, Properties and columns +@section Special Properties +@cindex properties, special + +Special properties provide alternative access method to Org-mode +features discussed in the previous chapters, like the TODO state or the +priority of an entry. This interface exists so that you can include +these states into columns view (@pxref{Column view}), or to use them in +queries. The following property names are special and should not be +used as keys in the properties drawer: + +@example +TODO @r{The TODO keyword of the entry.} +TAGS @r{The tags defined directly in the headline.} +ALLTAGS @r{All tags, including inherited ones.} +PRIORITY @r{The priority of the entry, a string with a single letter.} +DEADLINE @r{The deadline time string, without the angular brackets.} +SCHEDULED @r{The scheduling time stamp, without the angular brackets.} +TIMESTAMP @r{The first keyword-less time stamp in the entry.} +TIMESTAMP_IA @r{The first inactive time stamp in the entry.} +CLOCKSUM @r{The sum of CLOCK intervals in the subtree. @code{org-clock-sum}} + @r{must be run first to compute the values.} +@end example + +@node Property searches, Property inheritance, Special properties, Properties and columns +@section Property searches +@cindex properties, searching +@cindex properties, inheritance +@cindex searching, of properties +@cindex inheritance, of properties + +To create sparse trees and special lists with selection based on +properties, the same commands are used as for tag searches (@pxref{Tag +searches}), and the same logic applies. For example, a search string + +@example ++work-boss+PRIORITY="A"+Coffee="unlimited"+Effort=""+With=@{Sarah\|Denny@} +@end example + +@noindent +finds entries tagged @samp{:work:} but not @samp{:boss:}, which +also have a priority value @samp{A}, a @samp{:Coffee:} property with the +value @samp{unlimited}, an @samp{Effort} property that is undefined or +empty, and a @samp{:With:} property that is matched by +the regular expression @samp{Sarah\|Denny}. + +You can configure Org-mode to use property inheritance during a search, +see @ref{Property inheritance} for details. + +There is also a special command for creating sparse trees based on a +single property: + +@table @kbd +@kindex C-c / p +@item C-c / p +Create a sparse tree based on the value of a property. This first +prompts for the name of a property, and then for a value. A sparse tree +is created with all entries that define this property with the given +value. If you enclose the value into curly braces, it is interpreted as +a regular expression and matched against the property values. +@end table + +@node Property inheritance, Column view, Property searches, Properties and columns +@section Property Inheritance + +The outline structure of Org-mode documents lends itself for an +inheritance model of properties: If the parent in a tree has a certain +property, the children can inherit this property. Org-mode does not +turn this on by default, because it can slow down property searches +significantly and is often not needed. However, if you find inheritance +useful, you can turn it on by setting the variable +@code{org-use-property-inheritance}. It may be set to @code{t}, to make +all properties inherited from the parent, or to a list of properties +that should be inherited. + +Org-mode has a few properties for which inheritance is hard-coded, at +least for the special applications for which they are used: + +@table @code +@item COLUMNS +The @code{:COLUMNS:} property defines the format of column view +(@pxref{Column view}). It is inherited in the sense that the level +where a @code{:COLUMNS:} property is defined is used as the starting +point for a column view table, independently of the location in the +subtree from where columns view is turned on. +@item CATEGORY +For agenda view, a category set through a @code{:CATEGORY:} property +applies to the entire subtree. +@item ARCHIVE +For archiving, the @code{:ARCHIVE:} property may define the archive +location for the entire subtree (@pxref{Moving subtrees}). +@item LOGGING +The LOGGING property may define logging settings for an entry or a +subtree (@pxref{Tracking TODO state changes}). +@end table + +@node Column view, Property API, Property inheritance, Properties and columns +@section Column View + +A great way to view and edit properties in an outline tree is +@emph{column view}. In column view, each outline item is turned into a +table row. Columns in this table provide access to properties of the +entries. Org-mode implements columns by overlaying a tabular structure +over the headline of each item. While the headlines have been turned +into a table row, you can still change the visibility of the outline +tree. For example, you get a compact table by switching to CONTENTS +view (@kbd{S-@key{TAB} S-@key{TAB}}, or simply @kbd{c} while column view +is active), but you can still open, read, and edit the entry below each +headline. Or, you can switch to column view after executing a sparse +tree command and in this way get a table only for the selected items. +Column view also works in agenda buffers (@pxref{Agenda views}) where +queries have collected selected items, possibly from a number of files. + +@menu +* Defining columns:: The COLUMNS format property +* Using column view:: How to create and use column view +* Capturing Column View:: A dynamic block for column view +@end menu + +@node Defining columns, Using column view, Column view, Column view +@subsection Defining Columns +@cindex column view, for properties +@cindex properties, column view + +Setting up a column view first requires defining the columns. This is +done by defining a column format line. + +@menu +* Scope of column definitions:: Where defined, where valid? +* Column attributes:: Appearance and content of a column +@end menu + +@node Scope of column definitions, Column attributes, Defining columns, Defining columns +@subsubsection Scope of column definitions + +To define a column format for an entire file, use a line like + +@example +#+COLUMNS: %25ITEM %TAGS %PRIORITY %TODO +@end example + +To specify a format that only applies to a specific tree, add a +@code{:COLUMNS:} property to the top node of that tree, for example: + +@example +** Top node for columns view + :PROPERTIES: + :COLUMNS: %25ITEM %TAGS %PRIORITY %TODO + :END: +@end example + +If a @code{:COLUMNS:} property is present in an entry, it defines columns +for the entry itself, and for the entire subtree below it. Since the +column definition is part of the hierarchical structure of the document, +you can define columns on level 1 that are general enough for all +sublevels, and more specific columns further down, when you edit a +deeper part of the tree. + +@node Column attributes, , Scope of column definitions, Defining columns +@subsubsection Column attributes +A column definition sets the attributes of a column. The general +definition looks like this: + +@example + %[width]property[(title)][@{summary-type@}] +@end example + +@noindent +Except for the percent sign and the property name, all items are +optional. The individual parts have the following meaning: + +@example +width @r{An integer specifying the width of the column in characters.} + @r{If omitted, the width will be determined automatically.} +property @r{The property that should be edited in this column.} +(title) @r{The header text for the column. If omitted, the} + @r{property name is used.} +@{summary-type@} @r{The summary type. If specified, the column values for} + @r{parent nodes are computed from the children.} + @r{Supported summary types are:} + @{+@} @r{Sum numbers in this column.} + @{+;%.1f@} @r{Like @samp{+}, but format result with @samp{%.1f}.} + @{$@} @r{Currency, short for @samp{+;%.2f}.} + @{:@} @r{Sum times, HH:MM:SS, plain numbers are hours.} + @{X@} @r{Checkbox status, [X] if all children are [X].} + @{X/@} @r{Checkbox status, [n/m].} + @{X%@} @r{Checkbox status, [n%].} +@end example + +@noindent +Here is an example for a complete columns definition, along with allowed +values. + +@example +:COLUMNS: %20ITEM %9Approved(Approved?)@{X@} %Owner %11Status \@footnote{Please note that the COLUMNS definition must be on a single line - it is wrapped here only because of formatting constraints.} + %10Time_Estimate@{:@} %CLOCKSUM +:Owner_ALL: Tammy Mark Karl Lisa Don +:Status_ALL: "In progress" "Not started yet" "Finished" "" +:Approved_ALL: "[ ]" "[X]" +@end example + +The first column, @samp{%25ITEM}, means the first 25 characters of the +item itself, i.e. of the headline. You probably always should start the +column definition with the @samp{ITEM} specifier. The other specifiers +create columns @samp{Owner} with a list of names as allowed values, for +@samp{Status} with four different possible values, and for a checkbox +field @samp{Approved}. When no width is given after the @samp{%} +character, the column will be exactly as wide as it needs to be in order +to fully display all values. The @samp{Approved} column does have a +modified title (@samp{Approved?}, with a question mark). Summaries will +be created for the @samp{Time_Estimate} column by adding time duration +expressions like HH:MM, and for the @samp{Approved} column, by providing +an @samp{[X]} status if all children have been checked. The +@samp{CLOCKSUM} column is special, it lists the sum of CLOCK intervals +in the subtree. + +@node Using column view, Capturing Column View, Defining columns, Column view +@subsection Using Column View + +@table @kbd +@tsubheading{Turning column view on and off} +@kindex C-c C-x C-c +@item C-c C-x C-c +Create the column view for the local environment. This command searches +the hierarchy, up from point, for a @code{:COLUMNS:} property that defines +a format. When one is found, the column view table is established for +the entire tree, starting from the entry that contains the @code{:COLUMNS:} +property. If none is found, the format is taken from the @code{#+COLUMNS} +line or from the variable @code{org-columns-default-format}, and column +view is established for the current entry and its subtree. +@kindex r +@item r +Recreate the column view, to included hanges happening in the buffer. +@kindex g +@item g +Same as @kbd{r}. +@kindex q +@item q +Exit column view. +@tsubheading{Editing values} +@item @key{left} @key{right} @key{up} @key{down} +Move through the column view from field to field. +@kindex S-@key{left} +@kindex S-@key{right} +@item S-@key{left}/@key{right} +Switch to the next/previous allowed value of the field. For this, you +have to have specified allowed values for a property. +@kindex n +@kindex p +@itemx n / p +Same as @kbd{S-@key{left}/@key{right}} +@kindex e +@item e +Edit the property at point. For the special properties, this will +invoke the same interface that you normally use to change that +property. For example, when editing a TAGS property, the tag completion +or fast selection interface will pop up. +@kindex C-c C-c +@item C-c C-c +When there is a checkbox at point, toggle it. +@kindex v +@item v +View the full value of this property. This is useful if the width of +the column is smaller than that of the value. +@kindex a +@item a +Edit the list of allowed values for this property. If the list is found +in the hierarchy, the modified values is stored there. If no list is +found, the new value is stored in the first entry that is part of the +current column view. +@tsubheading{Modifying the table structure} +@kindex < +@kindex > +@item < / > +Make the column narrower/wider by one character. +@kindex S-M-@key{right} +@item S-M-@key{right} +Insert a new column, to the right of the current column. +@kindex S-M-@key{left} +@item S-M-@key{left} +Delete the current column. +@end table + +@node Capturing Column View, , Using column view, Column view +@subsection Capturing Column View + +Since column view is just an overlay over a buffer, it cannot be +exported or printed directly. If you want to capture a column view, use +ths @code{columnview} dynamic block (@pxref{Dynamic blocks}). The frame +of this block looks like this: + +@example +* The column view +#+BEGIN: columnview :hlines 1 :id "label" + +#+END: +@end example + +@noindent This dynamic block has the following parameters: + +@table @code +@item :id +This is most important parameter. Column view is a feature that is +often localized to a certain (sub)tree, and the capture block might be +in a different location in the file. To identify the tree whose view to +capture, you can use 3 values: +@example +local @r{use the tree in which the capture block is located} +global @r{make a global view, including all headings in the file} +"label" @r{call column view in the tree that has and @code{:ID:}} + @r{property with the value @i{label}} +@end example +@item :hlines +When @code{t}, insert a hline after every line. When a number N, insert +a hline before each headline with level @code{<= N}. +@item :vlines +When set to @code{t}, enforce column groups to get vertical lines. +@item :maxlevel +When set to a number, don't capture entries below this level. +@item :skip-empty-rows +When set to @code{t}, skip row where the only non-empty specifier of the +column view is @code{ITEM}. + +@end table + +@noindent +The following commands insert or update the dynamic block: + +@table @kbd +@kindex C-c C-x r +@item C-c C-x r +Insert a dynamic block capturing a column view. You will be prompted +for the scope or id of the view. +@kindex C-c C-c +@item C-c C-c +@kindex C-c C-x C-u +@itemx C-c C-x C-u +Update dynamical block at point. The cursor needs to be in the +@code{#+BEGIN} line of the dynamic block. +@kindex C-u C-c C-x C-u +@item C-u C-c C-x C-u +Update all dynamic blocks (@pxref{Dynamic blocks}). This is useful if +you have several clocktable blocks in a buffer. +@end table + +@node Property API, , Column view, Properties and columns +@section The Property API +@cindex properties, API +@cindex API, for properties + +There is a full API for accessing and changing properties. This API can +be used by Emacs Lisp programs to work with properties and to implement +features based on them. For more information see @ref{Using the +property API}. + +@node Dates and times, Remember, Properties and columns, Top +@chapter Dates and Times +@cindex dates +@cindex times +@cindex time stamps +@cindex date stamps + +To assist project planning, TODO items can be labeled with a date and/or +a time. The specially formatted string carrying the date and time +information is called a @emph{timestamp} in Org-mode. This may be a +little confusing because timestamp is often used as indicating when +something was created or last changed. However, in Org-mode this term +is used in a much wider sense. + +@menu +* Time stamps:: Assigning a time to a tree entry +* Creating timestamps:: Commands which insert timestamps +* Deadlines and scheduling:: Planning your work +* Clocking work time:: +@end menu + + +@node Time stamps, Creating timestamps, Dates and times, Dates and times +@section Time stamps, deadlines and scheduling +@cindex time stamps +@cindex ranges, time +@cindex date stamps +@cindex deadlines +@cindex scheduling + +A time stamp is a specification of a date (possibly with time or a range +of times) in a special format, either @samp{<2003-09-16 Tue>} or +@samp{<2003-09-16 Tue 09:39>} or @samp{<2003-09-16 Tue +12:00-12:30>}@footnote{This is the standard ISO date/time format. To +use an alternative format, see @ref{Custom time format}.}. A time stamp +can appear anywhere in the headline or body of an org-tree entry. Its +presence causes entries to be shown on specific dates in the agenda +(@pxref{Weekly/Daily agenda}). We distinguish: + +@table @var +@item Plain time stamp; Event; Appointment +@cindex timestamp +A simple time stamp just assigns a date/time to an item. This is just +like writing down an appointment or event in a paper agenda. In the +timeline and agenda displays, the headline of an entry associated with a +plain time stamp will be shown exactly on that date. + +@example +* Meet Peter at the movies <2006-11-01 Wed 19:15> +* Discussion on climate change <2006-11-02 Thu 20:00-22:00> +@end example + +@item Time stamp with repeater interval +@cindex timestamp, with repeater interval +A time stamp may contain a @emph{repeater interval}, indicating that it +applies not only on the given date, but again and again after a certain +interval of N days (d), weeks (w), months(m), or years(y). The +following will show up in the agenda every Wednesday: + +@example +* Pick up Sam at school <2007-05-16 Wed 12:30 +1w> +@end example + +@item Diary-style sexp entries +For more complex date specifications, Org-mode supports using the +special sexp diary entries implemented in the Emacs calendar/diary +package. For example + +@example +* The nerd meeting on every 2nd Thursday of the month + <%%(diary-float t 4 2)> +@end example + +@item Time/Date range +@cindex timerange +@cindex date range +Two time stamps connected by @samp{--} denote a range. The headline +will be shown on the first and last day of the range, and on any dates +that are displayed and fall in the range. Here is an example: + +@example +** Meeting in Amsterdam + <2004-08-23 Mon>--<2004-08-26 Thu> +@end example + +@item Inactive time stamp +@cindex timestamp, inactive +@cindex inactive timestamp +Just like a plain time stamp, but with square brackets instead of +angular ones. These time stamps are inactive in the sense that they do +@emph{not} trigger an entry to show up in the agenda. + +@example +* Gillian comes late for the fifth time [2006-11-01 Wed] +@end example + +@end table + +@node Creating timestamps, Deadlines and scheduling, Time stamps, Dates and times +@section Creating timestamps +@cindex creating timestamps +@cindex timestamps, creating + +For Org-mode to recognize time stamps, they need to be in the specific +format. All commands listed below produce time stamps in the correct +format. + +@table @kbd +@kindex C-c . +@item C-c . +Prompt for a date and insert a corresponding time stamp. When the +cursor is at a previously used time stamp, it is updated to NOW. When +this command is used twice in succession, a time range is inserted. +@c +@kindex C-u C-c . +@item C-u C-c . +Like @kbd{C-c .}, but use the alternative format which contains date +and time. The default time can be rounded to multiples of 5 minutes, +see the option @code{org-time-stamp-rounding-minutes}. +@c +@kindex C-c ! +@item C-c ! +Like @kbd{C-c .}, but insert an inactive time stamp that will not cause +an agenda entry. +@c +@kindex C-c < +@item C-c < +Insert a time stamp corresponding to the cursor date in the Calendar. +@c +@kindex C-c > +@item C-c > +Access the Emacs calendar for the current date. If there is a +timestamp in the current line, goto the corresponding date +instead. +@c +@kindex C-c C-o +@item C-c C-o +Access the agenda for the date given by the time stamp or -range at +point (@pxref{Weekly/Daily agenda}). +@c +@kindex S-@key{left} +@kindex S-@key{right} +@item S-@key{left} +@itemx S-@key{right} +Change date at cursor by one day. These key bindings conflict with +CUA-mode (@pxref{Conflicts}). +@c +@kindex S-@key{up} +@kindex S-@key{down} +@item S-@key{up} +@itemx S-@key{down} +Change the item under the cursor in a timestamp. The cursor can be on a +year, month, day, hour or minute. Note that if the cursor is in a +headline and not at a time stamp, these same keys modify the priority of +an item. (@pxref{Priorities}). The key bindings also conflict with +CUA-mode (@pxref{Conflicts}). +@c +@kindex C-c C-y +@cindex evaluate time range +@item C-c C-y +Evaluate a time range by computing the difference between start and +end. With prefix arg, insert result after the time range (in a table: +into the following column). +@end table + + +@menu +* The date/time prompt:: How org-mode helps you entering date and time +* Custom time format:: Making dates look differently +@end menu + +@node The date/time prompt, Custom time format, Creating timestamps, Creating timestamps +@subsection The date/time prompt +@cindex date, reading in minibuffer +@cindex time, reading in minibuffer + +When Org-mode prompts for a date/time, the default is shown as an ISO +date, and the prompt therefore seems to ask for an ISO date. But it +will in fact accept any string containing some date and/or time +information, and it is really smart about interpreting your input. You +can, for example, use @kbd{C-y} to paste a (possibly multi-line) string +copied from an email message. Org-mode will find whatever information +is in there and derive anything you have not specified from the +@emph{default date and time}. The default is usually the current date +and time, but when modifying an existing time stamp, or when entering +the second stamp of a range, it is taken from the stamp in the buffer. +When filling in information, Org-mode assumes that most of the time you +will want to enter a date in the future: If you omit the month/year and +the given day/month is @i{before} today, it will assume that you mean a +future date@footnote{See the variable +@code{org-read-date-prefer-future}.}. + +For example, lets assume that today is @b{June 13, 2006}. Here is how +various inputs will be interpreted, the items filled in by Org-mode are +in @b{bold}. + +@example +3-2-5 --> 2003-02-05 +14 --> @b{2006}-@b{06}-14 +12 --> @b{2006}-@b{07}-12 +Fri --> nearest Friday (defaultdate or later) +sep 15 --> @b{2006}-11-15 +feb 15 --> @b{2007}-02-15 +sep 12 9 --> 2009-09-12 +12:45 --> @b{2006}-@b{06}-@b{13} 12:45 +22 sept 0:34 --> @b{2006}-09-22 0:34 +@end example + +Furthermore you can specify a relative date by giving, as the +@emph{first} thing in the input: a plus/minus sign, a number and a +letter [dwmy] to indicate change in days weeks, months, years. With a +single plus or minus, the date is always relative to today. With a +double plus or minus, it is relative to the default date. If instead of +a single letter, you use the abbreviation of day name, the date will be +the nth such day. E.g. + +@example ++4d --> four days from today ++4 --> same as above ++2w --> two weeks from today +++5 --> five days from default date ++2tue --> second tuesday from now. +@end example + +The function understands English month and weekday abbreviations. If +you want to use unabbreviated names and/or other languages, configure +the variables @code{parse-time-months} and @code{parse-time-weekdays}. + +@cindex calendar, for selecting date +Parallel to the minibuffer prompt, a calendar is popped up@footnote{If +you don't need/want the calendar, configure the variable +@code{org-popup-calendar-for-date-prompt}.}. When you exit the date +prompt, either by clicking on a date in the calendar, or by pressing +@key{RET}, the date selected in the calendar will be combined with the +information entered at the prompt. You can control the calendar fully +from the minibuffer: + +@kindex < +@kindex > +@kindex mouse-1 +@kindex S-@key{right} +@kindex S-@key{left} +@kindex S-@key{down} +@kindex S-@key{up} +@kindex M-S-@key{right} +@kindex M-S-@key{left} +@kindex @key{RET} +@example +> / < @r{Scroll calendar forward/backward by one month.} +mouse-1 @r{Select date by clicking on it.} +S-@key{right}/@key{left} @r{One day forward/backward.} +S-@key{down}/@key{up} @r{One week forward/backward.} +M-S-@key{right}/@key{left} @r{One month forward/backward.} +@key{RET} @r{Choose date in calendar.} +@end example + +The actions of the date/time prompt may seem complex, but I asure you +they will grow on you. To help you understand what is going on, the +current interpretation of your input will be displayed live in the +minibuffer@footnote{If you find this distracting, turn the display of +with @code{org-read-date-display-live}.}. + +@node Custom time format, , The date/time prompt, Creating timestamps +@subsection Custom time format +@cindex custom date/time format +@cindex time format, custom +@cindex date format, custom + +Org-mode uses the standard ISO notation for dates and times as it is +defined in ISO 8601. If you cannot get used to this and require another +representation of date and time to keep you happy, you can get it by +customizing the variables @code{org-display-custom-times} and +@code{org-time-stamp-custom-formats}. + +@table @kbd +@kindex C-c C-x C-t +@item C-c C-x C-t +Toggle the display of custom formats for dates and times. +@end table + +@noindent +Org-mode needs the default format for scanning, so the custom date/time +format does not @emph{replace} the default format - instead it is put +@emph{over} the default format using text properties. This has the +following consequences: +@itemize @bullet +@item +You cannot place the cursor onto a time stamp anymore, only before or +after. +@item +The @kbd{S-@key{up}/@key{down}} keys can no longer be used to adjust +each component of a time stamp. If the cursor is at the beginning of +the stamp, @kbd{S-@key{up}/@key{down}} will change the stamp by one day, +just like @kbd{S-@key{left}/@key{right}}. At the end of the stamp, the +time will be changed by one minute. +@item +If the time stamp contains a range of clock times or a repeater, these +will not be overlayed, but remain in the buffer as they were. +@item +When you delete a time stamp character-by-character, it will only +disappear from the buffer after @emph{all} (invisible) characters +belonging to the ISO timestamp have been removed. +@item +If the custom time stamp format is longer than the default and you are +using dates in tables, table alignment will be messed up. If the custom +format is shorter, things do work as expected. +@end itemize + + +@node Deadlines and scheduling, Clocking work time, Creating timestamps, Dates and times +@section Deadlines and Scheduling + +A time stamp may be preceded by special keywords to facilitate planning: + +@table @var +@item DEADLINE +@cindex DEADLINE keyword + +Meaning: the task (most likely a TODO item, though not necessarily) is supposed +to be finished on that date. + +On the deadline date, the task will be listed in the agenda. In +addition, the agenda for @emph{today} will carry a warning about the +approaching or missed deadline, starting +@code{org-deadline-warning-days} before the due date, and continuing +until the entry is marked DONE. An example: + +@example +*** TODO write article about the Earth for the Guide + The editor in charge is [[bbdb:Ford Prefect]] + DEADLINE: <2004-02-29 Sun> +@end example + +You can specify a different lead time for warnings for a specific +deadlines using the following syntax. Here is an example with a warning +period of 5 days @code{DEADLINE: <2004-02-29 Sun -5d>}. + +@item SCHEDULED +@cindex SCHEDULED keyword + +Meaning: you are planning to start working on that task on the given +date. + +The headline will be listed under the given date@footnote{It will still +be listed on that date after it has been marked DONE. If you don't like +this, set the variable @code{org-agenda-skip-scheduled-if-done}.}. In +addition, a reminder that the scheduled date has passed will be present +in the compilation for @emph{today}, until the entry is marked DONE. +I.e., the task will automatically be forwarded until completed. + +@example +*** TODO Call Trillian for a date on New Years Eve. + SCHEDULED: <2004-12-25 Sat> +@end example + +@noindent +@b{Important:} Scheduling an item in Org-mode should @i{not} be +understood in the same way that we understand @i{scheduling a meeting}. +Setting a date for a meeting is just a simple appointment, you should +mark this entry with a simple plain time stamp, to get this item shown +on the date where it applies. This is a frequent mis-understanding from +Org-users. In Org-mode, @i{scheduling} means setting a date when you +want to start working on an action item. +@end table + +You may use time stamps with repeaters in scheduling and deadline +entries. Org-mode will issue early and late warnings based on the +assumption that the time stamp represents the @i{nearest instance} of +the repeater. However, the use of diary sexp entries like +@c +@code{<%%(diary-float t 42)>} +@c +in scheduling and deadline timestamps is limited. Org-mode does not +know enough about the internals of each sexp function to issue early and +late warnings. However, it will show the item on each day where the +sexp entry matches. + +@menu +* Inserting deadline/schedule:: Planning items +* Repeated tasks:: Items that show up again and again +@end menu + +@node Inserting deadline/schedule, Repeated tasks, Deadlines and scheduling, Deadlines and scheduling +@subsection Inserting deadline/schedule + +The following commands allow to quickly insert a deadline or to schedule +an item: + +@table @kbd +@c +@kindex C-c C-d +@item C-c C-d +Insert @samp{DEADLINE} keyword along with a stamp. The insertion will +happen in the line directly following the headline. When called with a +prefix arg, an existing deadline will be removed from the entry. +@c FIXME Any CLOSED timestamp will be removed.???????? +@c +@kindex C-c / d +@cindex sparse tree, for deadlines +@item C-c / d +Create a sparse tree with all deadlines that are either past-due, or +which will become due within @code{org-deadline-warning-days}. +With @kbd{C-u} prefix, show all deadlines in the file. With a numeric +prefix, check that many days. For example, @kbd{C-1 C-c / d} shows +all deadlines due tomorrow. +@c +@kindex C-c C-s +@item C-c C-s +Insert @samp{SCHEDULED} keyword along with a stamp. The insertion will +happen in the line directly following the headline. Any CLOSED +timestamp will be removed. When called with a prefix argument, remove +the scheduling date from the entry. +@end table + +@node Repeated tasks, , Inserting deadline/schedule, Deadlines and scheduling +@subsection Repeated Tasks + +Some tasks need to be repeated again and again. Org-mode helps to +organize such tasks using a so-called repeater in a DEADLINE, SCHEDULED, +or plain time stamp. In the following example +@example +** TODO Pay the rent + DEADLINE: <2005-10-01 Sat +1m> +@end example +the @code{+1m} is a repeater; the intended interpretation is that the +task has a deadline on <2005-10-01> and repeats itself every (one) month +starting from that time. If you need both a repeater and a special +warning period in a deadline entry, the repeater comes first and the +warning period last: @code{DEADLINE: <2005-10-01 Sat +1m -3d>}. + +Deadlines and scheduled items produce entries in the agenda when they +are over-due, so it is important to be able to mark such an entry as +completed once you have done so. When you mark a DEADLINE or a SCHEDULE +with the todo keyword DONE, it will no longer produce entries in the +agenda. The problem with this is, however, that then also the +@emph{next} instance of the repeated entry will not be active. Org-mode +deals with this in the following way: When you try to mark such an entry +DONE (using @kbd{C-c C-t}), it will shift the base date of the repeating +time stamp by the repeater interval, and immediately set the entry state +back to TODO. In the example above, setting the state to DONE would +actually switch the date like this: + +@example +** TODO Pay the rent + DEADLINE: <2005-11-01 Tue +1m> +@end example + +You will also be prompted for a note@footnote{You can change this using +the option @code{org-log-repeat}, or the @code{#+STARTUP} options +@code{logrepeat}, @code{lognoterepeat}, and @code{nologrepeat}.} that +will be put under the DEADLINE line to keep a record that you actually +acted on the previous instance of this deadline. + +As a consequence of shifting the base date, this entry will no longer be +visible in the agenda when checking past dates, but all future instances +will be visible. + +With the @samp{+1m} cookie, the date shift will always be exactly one +month. So if you have not payed the rent for three months, marking this +entry DONE will still keep it as an overdue deadline. Depending on the +task, this may not be the best way to handle it. For example, if you +forgot to call you father for 3 weeks, it does not make sense to call +her 3 times in a single day to make up for it. Finally, there are tasks +like changing batteries which should always repeat a certain time +@i{after} the last time you did it. For these tasks, Org-mode has +special repeaters markes with @samp{++} and @samp{.+}. For example: + +@example +** TODO Call Father + DEADLINE: <2008-02-10 Sun ++1w> + Marking this DONE will shift the date by at least one week, + but also by as many weeks as it takes to get this date into + the future. However, it stays on a Sunday, even if you called + and marked it done on Saturday. +** TODO Check the batteries in the smoke detectors + DEADLINE: <2005-11-01 Tue .+1m> + Marking this DONE will shift the date to one month after + today. +@end example + +You may have both scheduling and deadline information for a specific +task - just make sure that the repeater intervals on both are the same. + +@node Clocking work time, , Deadlines and scheduling, Dates and times +@section Clocking work time + +Org-mode allows you to clock the time you spent on specific tasks in a +project. When you start working on an item, you can start the clock. +When you stop working on that task, or when you mark the task done, the +clock is stopped and the corresponding time interval is recorded. It +also computes the total time spent on each subtree of a project. + +@table @kbd +@kindex C-c C-x C-i +@item C-c C-x C-i +Start the clock on the current item (clock-in). This inserts the CLOCK +keyword together with a timestamp. If this is not the first clocking of +this item, the multiple CLOCK lines will be wrapped into a +@code{:CLOCK:} drawer (see also the variable +@code{org-clock-into-drawer}). +@kindex C-c C-x C-o +@item C-c C-x C-o +Stop the clock (clock-out). The inserts another timestamp at the same +location where the clock was last started. It also directly computes +the resulting time in inserts it after the time range as @samp{=> +HH:MM}. See the variable @code{org-log-note-clock-out} for the +possibility to record an additional note together with the clock-out +time stamp@footnote{The corresponding in-buffer setting is: +@code{#+STARTUP: lognoteclock-out}}. +@kindex C-c C-y +@item C-c C-y +Recompute the time interval after changing one of the time stamps. This +is only necessary if you edit the time stamps directly. If you change +them with @kbd{S-@key{cursor}} keys, the update is automatic. +@kindex C-c C-t +@item C-c C-t +Changing the TODO state of an item to DONE automatically stops the clock +if it is running in this same item. +@kindex C-c C-x C-x +@item C-c C-x C-x +Cancel the current clock. This is useful if a clock was started by +mistake, or if you ended up working on something else. +@kindex C-c C-x C-j +@item C-c C-x C-j +Jump to the entry that contains the currently running clock, an another +window. +@kindex C-c C-x C-d +@item C-c C-x C-d +Display time summaries for each subtree in the current buffer. This +puts overlays at the end of each headline, showing the total time +recorded under that heading, including the time of any subheadings. You +can use visibility cycling to study the tree, but the overlays disappear +when you change the buffer (see variable +@code{org-remove-highlights-with-change}) or press @kbd{C-c C-c}. +@kindex C-c C-x C-r +@item C-c C-x C-r +Insert a dynamic block (@pxref{Dynamic blocks}) containing a clock +report as an org-mode table into the current file. When the cursor is +at an existing clock table, just update it. When called with a prefix +argument, jump to the first clock report in the current document and +update it. +@example +#+BEGIN: clocktable :maxlevel 2 :emphasize nil :scope file + +#+END: clocktable +@end example +@noindent +If such a block already exists at point, its content is replaced by the +new table. The @samp{BEGIN} line can specify options: +@example +:maxlevel @r{Maximum level depth to which times are listed in the table.} +:emphasize @r{When @code{t}, emphasize level one and level two items} +:scope @r{The scope to consider. This can be any of the following:} + nil @r{the current buffer or narrowed region} + file @r{the full current buffer} + subtree @r{the subtree where the clocktable is located} + treeN @r{the surrounding level N tree, for example @code{tree3}} + tree @r{the surrounding level 1 tree} + agenda @r{all agenda files} + ("file"..) @r{scan these files} +:block @r{The time block to consider. This block is specified relative} + @r{to the current time and may be any of these keywords:} + @r{@code{today}, @code{yesterday}, @code{thisweek}, @code{lastweek},} + @r{@code{thismonth}, @code{lastmonth}, @code{thisyear}, or @code{lastyear}}. +:tstart @r{A time string specifying when to start considering times} +:tend @r{A time string specifying when to stop considering times} +:step @r{@code{week} or @code{day}, to split the table into chunks} +:link @r{Link the item headlines in the table to their origins} +@end example +So to get a clock summary of the current level 1 tree, for the current +day, you could write +@example +#+BEGIN: clocktable :maxlevel 2 :block today :scope tree1 + +#+END: clocktable +@end example +and to use a specific time range you could write@footnote{Note that all +parameters must be specified in a single line - the line is broken here +only to fit it onto the manual.} +@example +#+BEGIN: clocktable :tstart "<2006-08-10 Thu 10:00>" + :tend "<2006-08-10 Thu 12:00>" + +#+END: clocktable +@end example +@kindex C-c C-c +@item C-c C-c +@kindex C-c C-x C-u +@itemx C-c C-x C-u +Update dynamical block at point. The cursor needs to be in the +@code{#+BEGIN} line of the dynamic block. +@kindex C-u C-c C-x C-u +@item C-u C-c C-x C-u +Update all dynamic blocks (@pxref{Dynamic blocks}). This is useful if +you have several clocktable blocks in a buffer. +@end table + +The @kbd{l} key may be used in the timeline (@pxref{Timeline}) and in +the agenda (@pxref{Weekly/Daily agenda}) to show which tasks have been +worked on or closed during a day. + +@node Remember, Agenda views, Dates and times, Top +@chapter Remember +@cindex @file{remember.el} + +The @i{Remember} package by John Wiegley lets you store quick notes with +little interruption of your work flow. See +@uref{http://www.emacswiki.org/cgi-bin/wiki/RememberMode} for more +information. It is an excellent way to add new notes and tasks to +Org-mode files. Org-mode significantly expands the possibilities of +@i{remember}: You may define templates for different note types, and +associate target files and headlines with specific templates. It also +allows you to select the location where a note should be stored +interactively, on the fly. + +@menu +* Setting up remember:: Some code for .emacs to get things going +* Remember templates:: Define the outline of different note types +* Storing notes:: Directly get the note to where it belongs +* Refiling notes:: Moving a note or task to a project +@end menu + +@node Setting up remember, Remember templates, Remember, Remember +@section Setting up remember + +The following customization will tell @i{remember} to use org files as +target, and to create annotations compatible with Org-mode links. + +@example +(org-remember-insinuate) +(setq org-directory "~/path/to/my/orgfiles/") +(setq org-default-notes-file (concat org-directory "/notes.org")) +(define-key global-map "\C-cr" 'org-remember) +@end example + +The last line binds the command @code{org-remember} to a global +key@footnote{Please select your own key, @kbd{C-c r} is only a +suggestion.}. @code{org-remember} basically just calls @code{remember}, +but it makes a few things easier: If there is an active region, it will +automatically copy the region into the remember buffer. It also allows +to jump to the buffer and location where remember notes are being +stored: Just call @code{org-remember} with a prefix argument. If you +use two prefix arguments, Org-mode jumps to the location where the last +remember note was stored. + +@node Remember templates, Storing notes, Setting up remember, Remember +@section Remember templates +@cindex templates, for remember + +In combination with Org-mode, you can use templates to generate +different types of @i{remember} notes. For example, if you would like +to use one template to create general TODO entries, another one for +journal entries, and a third one for collecting random ideas, you could +use: + +@example +(setq org-remember-templates + '(("Todo" ?t "* TODO %?\n %i\n %a" "~/org/TODO.org" "Tasks") + ("Journal" ?j "* %U %?\n\n %i\n %a" "~/org/JOURNAL.org") + ("Idea" ?i "* %^@{Title@}\n %i\n %a" "~/org/JOURNAL.org" "New Ideas"))) +@end example + +@noindent In these entries, the first string is just a name, and the +character specifies how to select the template. It is useful if the +character is also the first letter of the name. The next string +specifies the template. Two more (optional) strings give the file in +which, and the headline under which the new note should be stored. The +file (if not present or @code{nil}) defaults to +@code{org-default-notes-file}, the heading to +@code{org-remember-default-headline}. + +An optional sixth element specifies the contexts in which the user can +select the template. This element can be either a list of major modes +or a function. @code{org-remember} will first check whether the function +returns @code{t} or if we are in any of the listed major mode, and select +the template accordingly. + +So for example: + +@example +(setq org-remember-templates + '(("Bug" ?b "* BUG %?\n %i\n %a" "~/org/BUGS.org" "Bugs" (emacs-lisp-mode)) + ("Journal" ?j "* %U %?\n\n %i\n %a" "~/org/JOURNAL.org" my-check) + ("Idea" ?i "* %^@{Title@}\n %i\n %a" "~/org/JOURNAL.org" "New Ideas"))) +@end example + +The first template will only be available when invoking @code{org-remember} +from an buffer in @code{emacs-lisp-mode}. The second template will only be +available when the function @code{my-check} returns @code{t}. The third +template will be proposed in any context. + +When you call @kbd{M-x remember} (or @kbd{M-x org-remember}) to remember +something, org will prompt for a key to select the template (if you have +more than one template) and then prepare the buffer like +@example +* TODO + [[file:link to where you called remember]] +@end example + +@noindent +During expansion of the template, special @kbd{%}-escapes allow dynamic +insertion of content: +@example +%^@{prompt@} @r{prompt the user for a string and replace this sequence with it.} + @r{You may specify a default value and a completion table with} + @r{%^@{prompt|default|completion2|completion3...@}} + @r{The arrow keys access a prompt-specific history.} +%t @r{time stamp, date only} +%T @r{time stamp with date and time} +%u, %U @r{like the above, but inactive time stamps} +%^t @r{like @code{%t}, but prompt for date. Similarly @code{%^T}, @code{%^u}, @code{%^U}} + @r{You may define a prompt like @code{%^@{Birthday@}t}} +%n @r{user name (taken from @code{user-full-name})} +%a @r{annotation, normally the link created with @code{org-store-link}} +%A @r{like @code{%a}, but prompt for the description part} +%i @r{initial content, the region when remember is called with C-u.} + @r{The entire text will be indented like @code{%i} itself.} +%c @r{Content of the clipboard, or current kill ring head.} +%^g @r{prompt for tags, with completion on tags in target file.} +%^G @r{prompt for tags, with completion all tags in all agenda files.} +%:keyword @r{specific information for certain link types, see below} +%[pathname] @r{insert the contents of the file given by @code{pathname}} +%(sexp) @r{evaluate elisp @code{(sexp)} and replace with the result} +%! @r{immediately store note after completing the template} + @r{(skipping the @kbd{C-c C-c} that normally triggers storing)} +@end example + +@noindent +For specific link types, the following keywords will be +defined@footnote{If you define your own link types (@pxref{Adding +hyperlink types}), any property you store with +@code{org-store-link-props} can be accessed in remember templates in a +similar way.}: + +@example +Link type | Available keywords +-------------------+---------------------------------------------- +bbdb | %:name %:company +bbdb | %::server %:port %:nick +vm, wl, mh, rmail | %:type %:subject %:message-id + | %:from %:fromname %:fromaddress + | %:to %:toname %:toaddress + | %:fromto @r{(either "to NAME" or "from NAME")@footnote{This will always be the other, not the user. See the variable @code{org-from-is-user-regexp}.}} +gnus | %:group, @r{for messages also all email fields} +w3, w3m | %:url +info | %:file %:node +calendar | %:date" +@end example + +@noindent +To place the cursor after template expansion use: + +@example +%? @r{After completing the template, position cursor here.} +@end example + +@noindent +If you change your mind about which template to use, call +@code{org-remember} in the remember buffer. You may then select a new +template that will be filled with the previous context information. + +@node Storing notes, Refiling notes, Remember templates, Remember +@section Storing notes + +When you are finished preparing a note with @i{remember}, you have to +press @kbd{C-c C-c} to file the note away. The handler will store the +note in the file and under the headline specified in the template, or it +will use the default file and headlines. The window configuration will +be restored, sending you back to the working context before the call to +@code{remember}. To re-use the location found during the last call to +@code{remember}, exit the remember buffer with @kbd{C-u C-u C-c C-c}, +i.e. specify a double prefix argument to @kbd{C-c C-c}. + +If you want to store the note directly to a different place, use +@kbd{C-u C-c C-c} instead to exit remember@footnote{Configure the +variable @code{org-remember-store-without-prompt} to make this behavior +the default.}. The handler will then first prompt for a target file - +if you press @key{RET}, the value specified for the template is used. +Then the command offers the headings tree of the selected file, with the +cursor position at the default headline (if you had specified one in the +template). You can either immediately press @key{RET} to get the note +placed there. Or you can use the following keys to find a different +location: +@example +@key{TAB} @r{Cycle visibility.} +@key{down} / @key{up} @r{Next/previous visible headline.} +n / p @r{Next/previous visible headline.} +f / b @r{Next/previous headline same level.} +u @r{One level up.} +@c 0-9 @r{Digit argument.} +@end example +@noindent +Pressing @key{RET} or @key{left} or @key{right} +then leads to the following result. + +@multitable @columnfractions 0.2 0.15 0.65 +@item @b{Cursor position} @tab @b{Key} @tab @b{Note gets inserted} +@item on headline @tab @key{RET} @tab as sublevel of the heading at cursor, first or last +@item @tab @tab depending on @code{org-reverse-note-order}. +@item @tab @key{left}/@key{right} @tab as same level, before/after current heading +@item buffer-start @tab @key{RET} @tab as level 2 heading at end of file or level 1 at beginning +@item @tab @tab depending on @code{org-reverse-note-order}. +@item not on headline @tab @key{RET} + @tab at cursor position, level taken from context. +@end multitable + +Before inserting the text into a tree, the function ensures that the +text has a headline, i.e. a first line that starts with a @samp{*}. If +not, a headline is constructed from the current date and some additional +data. If you have indented the text of the note below the headline, the +indentation will be adapted if inserting the note into the tree requires +demotion from level 1. + +@node Refiling notes, , Storing notes, Remember +@section Refiling notes +@cindex refiling notes + +Remember is usually used to quickly capture notes and tasks into one or +a few capture lists. When reviewing the captured data, you may want to +refile some of the entries into a different list, for example into a +project. Cutting, finding the right location and then pasting the note +is cumbersome. To simplify this process, you can use the following +special command: + +@table @kbd +@kindex C-c C-w +@item C-c C-w +Refile the entry at point. This command offers possible locations for +refiling the entry and lets you select one with completion. The item is +filed below the target heading as a subitem. Depending on +@code{org-reverse-note-order}, it will be either the first of last +subitem.@* By default, all level 1 headlines in the current buffer are +considered to be targets, but you can have more complex definitions +across a number of files. See the variable @code{org-refile-targets} +for details. +@kindex C-u C-c C-w +@item C-u C-c C-w +Use the refile interface to jump to a heading. +@kindex C-u C-u C-c C-w +@item C- C-u C-c C-w +Jump to the location where @code{org-refile} last moved a tree to. +@end table + +@node Agenda views, Embedded LaTeX, Remember, Top +@chapter Agenda Views +@cindex agenda views + +Due to the way Org-mode works, TODO items, time-stamped items, and +tagged headlines can be scattered throughout a file or even a number of +files. To get an overview of open action items, or of events that are +important for a particular date, this information must be collected, +sorted and displayed in an organized way. + +Org-mode can select items based on various criteria, and display them +in a separate buffer. Seven different view types are provided: + +@itemize @bullet +@item +an @emph{agenda} that is like a calendar and shows information +for specific dates, +@item +a @emph{TODO list} that covers all unfinished +action items, +@item +a @emph{tags view}, showings headlines based on +the tags associated with them, +@item +a @emph{timeline view} that shows all events in a single Org-mode file, +in time-sorted view, +@item +a @emph{keyword search view} that shows all entries from multiple files +that contain specified keywords. +@item +a @emph{stuck projects view} showing projects that currently don't move +along, and +@item +@emph{custom views} that are special tag/keyword searches and +combinations of different views. +@end itemize + +@noindent +The extracted information is displayed in a special @emph{agenda +buffer}. This buffer is read-only, but provides commands to visit the +corresponding locations in the original Org-mode files, and even to +edit these files remotely. + +Two variables control how the agenda buffer is displayed and whether the +window configuration is restored when the agenda exits: +@code{org-agenda-window-setup} and +@code{org-agenda-restore-windows-after-quit}. + +@menu +* Agenda files:: Files being searched for agenda information +* Agenda dispatcher:: Keyboard access to agenda views +* Built-in agenda views:: What is available out of the box? +* Presentation and sorting:: How agenda items are prepared for display +* Agenda commands:: Remote editing of org trees +* Custom agenda views:: Defining special searches and views +@end menu + +@node Agenda files, Agenda dispatcher, Agenda views, Agenda views +@section Agenda files +@cindex agenda files +@cindex files for agenda + +The information to be shown is normally collected from all @emph{agenda +files}, the files listed in the variable +@code{org-agenda-files}@footnote{If the value of that variable is not a +list, but a single file name, then the list of agenda files will be +maintained in that external file.}. If a directory is part of this list, +all files with the extension @file{.org} in this directory will be part +of the list. + +Thus even if you only work with a single Org-mode file, this file should +be put into that list@footnote{When using the dispatcher, pressing +@kbd{<} before selecting a command will actually limit the command to +the current file, and ignore @code{org-agenda-files} until the next +dispatcher command.}. You can customize @code{org-agenda-files}, but +the easiest way to maintain it is through the following commands + +@cindex files, adding to agenda list +@table @kbd +@kindex C-c [ +@item C-c [ +Add current file to the list of agenda files. The file is added to +the front of the list. If it was already in the list, it is moved to +the front. With prefix arg, file is added/moved to the end. +@kindex C-c ] +@item C-c ] +Remove current file from the list of agenda files. +@kindex C-, +@kindex C-' +@item C-, +@itemx C-' +Cycle through agenda file list, visiting one file after the other. +@end table + +@noindent +The Org menu contains the current list of files and can be used +to visit any of them. + +If you would like to focus the agenda temporarily onto a file not in +this list, or onto just one file in the list or even only a subtree in a +file, this can be done in different ways. For a single agenda command, +you may press @kbd{<} once or several times in the dispatcher +(@pxref{Agenda dispatcher}). To restrict the agenda scope for an +extended period, use the following commands: + +@table @kbd +@kindex C-c C-x < +@item C-c C-x < +Permanently restrict the agenda to the current subtree. When with a +prefix argument, or with the cursor before the first headline in a file, +the agenda scope is set to the entire file. This restriction remains in +effect until removed with @kbd{C-c C-x >}, or by typing either @kbd{<} +or @kbd{>} in the agenda dispatcher. If there is a window displaying an +agenda view, the new restriction takes effect immediately. +@kindex C-c C-x < +@item C-c C-x < +Remove the permanent restriction created by @kbd{C-c C-x <}. +@end table + +@noindent +When working with @file{Speedbar}, you can use the following commands in +the speedbar frame: +@table @kbd +@kindex < +@item < @r{in the speedbar frame} +Permanently restrict the agenda to the item at the cursor in the +speedbar frame, either an Org-mode file or a subtree in such a file. +If there is a window displaying an agenda view, the new restriction takes +effect immediately. +@kindex < +@item > @r{in the speedbar frame} +Lift the restriction again. +@end table + +@node Agenda dispatcher, Built-in agenda views, Agenda files, Agenda views +@section The agenda dispatcher +@cindex agenda dispatcher +@cindex dispatching agenda commands +The views are created through a dispatcher that should be bound to a +global key, for example @kbd{C-c a} (@pxref{Installation}). In the +following we will assume that @kbd{C-c a} is indeed how the dispatcher +is accessed and list keyboard access to commands accordingly. After +pressing @kbd{C-c a}, an additional letter is required to execute a +command. The dispatcher offers the following default commands: +@table @kbd +@item a +Create the calendar-like agenda (@pxref{Weekly/Daily agenda}). +@item t @r{/} T +Create a list of all TODO items (@pxref{Global TODO list}). +@item m @r{/} M +Create a list of headlines matching a TAGS expression (@pxref{Matching +tags and properties}). +@item L +Create the timeline view for the current buffer (@pxref{Timeline}). +@item s +Create a list of entries selected by a boolean expression of keywords +and/or regular expressions that must or must not occur in the entry. +@item / +Search for a regular expression in all agenda files and additionally in +the files listed in @code{org-agenda-multi-occur-extra-files}. This +uses the Emacs command @code{multi-occur}. A prefix argument can be +used to specify the number of context lines for each match, default is +1. +@item # @r{/} ! +Create a list of stuck projects (@pxref{Stuck projects}). +@item < +Restrict an agenda command to the current buffer@footnote{For backward +compatibility, you can also press @kbd{1} to restrict to the current +buffer.}. After pressing @kbd{<}, you still need to press the character +selecting the command. +@item < < +If there is an active region, restrict the following agenda command to +the region. Otherwise, restrict it to the current subtree@footnote{For +backward compatibility, you can also press @kbd{0} to restrict to the +current buffer.}. After pressing @kbd{< <}, you still need to press the +character selecting the command. +@end table + +You can also define custom commands that will be accessible through the +dispatcher, just like the default commands. This includes the +possibility to create extended agenda buffers that contain several +blocks together, for example the weekly agenda, the global TODO list and +a number of special tags matches. @xref{Custom agenda views}. + +@node Built-in agenda views, Presentation and sorting, Agenda dispatcher, Agenda views +@section The built-in agenda views + +In this section we describe the built-in views. + +@menu +* Weekly/Daily agenda:: The calendar page with current tasks +* Global TODO list:: All unfinished action items +* Matching tags and properties:: Structured information with fine-tuned search +* Timeline:: Time-sorted view for single file +* Keyword search:: Finding entries by keyword +* Stuck projects:: Find projects you need to review +@end menu + +@node Weekly/Daily agenda, Global TODO list, Built-in agenda views, Built-in agenda views +@subsection The weekly/daily agenda +@cindex agenda +@cindex weekly agenda +@cindex daily agenda + +The purpose of the weekly/daily @emph{agenda} is to act like a page of a +paper agenda, showing all the tasks for the current week or day. + +@table @kbd +@cindex org-agenda, command +@kindex C-c a a +@item C-c a a +Compile an agenda for the current week from a list of org files. The +agenda shows the entries for each day. With a numeric +prefix@footnote{For backward compatibility, the universal prefix +@kbd{C-u} causes all TODO entries to be listed before the agenda. This +feature is deprecated, use the dedicated TODO list, or a block agenda +instead.} (like @kbd{C-u 2 1 C-c a a}) you may set the number of days +to be displayed (see also the variable @code{org-agenda-ndays}) +@end table + +Remote editing from the agenda buffer means, for example, that you can +change the dates of deadlines and appointments from the agenda buffer. +The commands available in the Agenda buffer are listed in @ref{Agenda +commands}. + +@subsubheading Calendar/Diary integration +@cindex calendar integration +@cindex diary integration + +Emacs contains the calendar and diary by Edward M. Reingold. The +calendar displays a three-month calendar with holidays from different +countries and cultures. The diary allows you to keep track of +anniversaries, lunar phases, sunrise/set, recurrent appointments +(weekly, monthly) and more. In this way, it is quite complementary to +Org-mode. It can be very useful to combine output from Org-mode with +the diary. + +In order to include entries from the Emacs diary into Org-mode's +agenda, you only need to customize the variable + +@lisp +(setq org-agenda-include-diary t) +@end lisp + +@noindent After that, everything will happen automatically. All diary +entries including holidays, anniversaries etc will be included in the +agenda buffer created by Org-mode. @key{SPC}, @key{TAB}, and +@key{RET} can be used from the agenda buffer to jump to the diary +file in order to edit existing diary entries. The @kbd{i} command to +insert new entries for the current date works in the agenda buffer, as +well as the commands @kbd{S}, @kbd{M}, and @kbd{C} to display +Sunrise/Sunset times, show lunar phases and to convert to other +calendars, respectively. @kbd{c} can be used to switch back and forth +between calendar and agenda. + +If you are using the diary only for sexp entries and holidays, it is +faster to not use the above setting, but instead to copy or even move +the entries into an Org-mode file. Org-mode evaluates diary-style sexp +entries, and does it faster because there is no overhead for first +creating the diary display. Note that the sexp entries must start at +the left margin, no white space is allowed before them. For example, +the following segment of an Org-mode file will be processed and entries +will be made in the agenda: + +@example +* Birthdays and similar stuff +#+CATEGORY: Holiday +%%(org-calendar-holiday) ; special function for holiday names +#+CATEGORY: Ann +%%(diary-anniversary 14 5 1956) Arthur Dent is %d years old +%%(diary-anniversary 2 10 1869) Mahatma Gandhi would be %d years old +@end example + +@subsubheading Appointment reminders +@cindex @file{appt.el} +@cindex appointment reminders + +Org can interact with Emacs appointments notification facility. + +To add all the appointments of your agenda files, use the command +@code{org-agenda-to-appt}. This commands also lets you filter through +the list of your appointments and add only those belonging to a specific +category or matching a regular expression. See the docstring for +details. + +@node Global TODO list, Matching tags and properties, Weekly/Daily agenda, Built-in agenda views +@subsection The global TODO list +@cindex global TODO list +@cindex TODO list, global + +The global TODO list contains all unfinished TODO items, formatted and +collected into a single place. + +@table @kbd +@kindex C-c a t +@item C-c a t +Show the global TODO list. This collects the TODO items from all +agenda files (@pxref{Agenda views}) into a single buffer. The buffer is in +@code{agenda-mode}, so there are commands to examine and manipulate +the TODO entries directly from that buffer (@pxref{Agenda commands}). +@kindex C-c a T +@item C-c a T +@cindex TODO keyword matching +Like the above, but allows selection of a specific TODO keyword. You +can also do this by specifying a prefix argument to @kbd{C-c a t}. With +a @kbd{C-u} prefix you are prompted for a keyword, and you may also +specify several keywords by separating them with @samp{|} as boolean OR +operator. With a numeric prefix, the Nth keyword in +@code{org-todo-keywords} is selected. +@kindex r +The @kbd{r} key in the agenda buffer regenerates it, and you can give +a prefix argument to this command to change the selected TODO keyword, +for example @kbd{3 r}. If you often need a search for a specific +keyword, define a custom command for it (@pxref{Agenda dispatcher}).@* +Matching specific TODO keywords can also be done as part of a tags +search (@pxref{Tag searches}). +@end table + +Remote editing of TODO items means that you can change the state of a +TODO entry with a single key press. The commands available in the +TODO list are described in @ref{Agenda commands}. + +@cindex sublevels, inclusion into todo list +Normally the global todo list simply shows all headlines with TODO +keywords. This list can become very long. There are two ways to keep +it more compact: +@itemize @minus +@item +Some people view a TODO item that has been @emph{scheduled} for +execution (@pxref{Time stamps}) as no longer @emph{open}. Configure the +variable @code{org-agenda-todo-ignore-scheduled} to exclude scheduled +items from the global TODO list. +@item +TODO items may have sublevels to break up the task into subtasks. In +such cases it may be enough to list only the highest level TODO headline +and omit the sublevels from the global list. Configure the variable +@code{org-agenda-todo-list-sublevels} to get this behavior. +@end itemize + +@node Matching tags and properties, Timeline, Global TODO list, Built-in agenda views +@subsection Matching Tags and Properties +@cindex matching, of tags +@cindex matching, of properties +@cindex tags view + +If headlines in the agenda files are marked with @emph{tags} +(@pxref{Tags}), you can select headlines based on the tags that apply +to them and collect them into an agenda buffer. + +@table @kbd +@kindex C-c a m +@item C-c a m +Produce a list of all headlines that match a given set of tags. The +command prompts for a selection criterion, which is a boolean logic +expression with tags, like @samp{+work+urgent-withboss} or +@samp{work|home} (@pxref{Tags}). If you often need a specific search, +define a custom command for it (@pxref{Agenda dispatcher}). +@kindex C-c a M +@item C-c a M +Like @kbd{C-c a m}, but only select headlines that are also TODO items +and force checking subitems (see variable +@code{org-tags-match-list-sublevels}). Matching specific todo keywords +together with a tags match is also possible, see @ref{Tag searches}. +@end table + +The commands available in the tags list are described in @ref{Agenda +commands}. + +@node Timeline, Keyword search, Matching tags and properties, Built-in agenda views +@subsection Timeline for a single file +@cindex timeline, single file +@cindex time-sorted view + +The timeline summarizes all time-stamped items from a single Org-mode +file in a @emph{time-sorted view}. The main purpose of this command is +to give an overview over events in a project. + +@table @kbd +@kindex C-c a L +@item C-c a L +Show a time-sorted view of the org file, with all time-stamped items. +When called with a @kbd{C-u} prefix, all unfinished TODO entries +(scheduled or not) are also listed under the current date. +@end table + +@noindent +The commands available in the timeline buffer are listed in +@ref{Agenda commands}. + +@node Keyword search, Stuck projects, Timeline, Built-in agenda views +@subsection Keyword search +@cindex keyword search +@cindex searching, for keywords + +This agenda view is a general text search facility for Org-mode entries. +It is particularly useful to find notes. + +@table @kbd +@kindex C-c a s +@item C-c a s +This is a special search that lets you select entries by keywords or +regular expression, using a boolean logic. For example, the search +string + +@example ++computer +wifi -ethernet -@{8\.11[bg]@} +@end example + +@noindent +will search for note entries that contain the keywords @code{computer} +and @code{wifi}, but not the keyword @code{ethernet}, and which are also +not matched by the regular expression @code{8\.11[bg]}, meaning to +exclude both 8.11b and 8.11g. + +Note that in addition to the agenda files, this command will also search +the files listed in @code{org-agenda-text-search-extra-files}. +@end table + +@node Stuck projects, , Keyword search, Built-in agenda views +@subsection Stuck projects + +If you are following a system like David Allen's GTD to organize your +work, one of the ``duties'' you have is a regular review to make sure +that all projects move along. A @emph{stuck} project is a project that +has no defined next actions, so it will never show up in the TODO lists +Org-mode produces. During the review, you need to identify such +projects and define next actions for them. + +@table @kbd +@kindex C-c a # +@item C-c a # +List projects that are stuck. +@kindex C-c a ! +@item C-c a ! +Customize the variable @code{org-stuck-projects} to define what a stuck +project is and how to find it. +@end table + +You almost certainly will have to configure this view before it will +work for you. The built-in default assumes that all your projects are +level-2 headlines, and that a project is not stuck if it has at least +one entry marked with a todo keyword TODO or NEXT or NEXTACTION. + +Lets assume that you, in your own way of using Org-mode, identify +projects with a tag PROJECT, and that you use a todo keyword MAYBE to +indicate a project that should not be considered yet. Lets further +assume that the todo keyword DONE marks finished projects, and that NEXT +and TODO indicate next actions. The tag @@SHOP indicates shopping and +is a next action even without the NEXT tag. Finally, if the project +contains the special word IGNORE anywhere, it should not be listed +either. In this case you would start by identifying eligible projects +with a tags/todo match @samp{+PROJECT/-MAYBE-DONE}, and then check for +TODO, NEXT, @@SHOP, and IGNORE in the subtree to identify projects that +are not stuck. The correct customization for this is + +@lisp +(setq org-stuck-projects + '("+PROJECT/-MAYBE-DONE" ("NEXT" "TODO") ("@@SHOP") + "\\")) +@end lisp + + +@node Presentation and sorting, Agenda commands, Built-in agenda views, Agenda views +@section Presentation and sorting +@cindex presentation, of agenda items + +Before displaying items in an agenda view, Org-mode visually prepares +the items and sorts them. Each item occupies a single line. The line +starts with a @emph{prefix} that contains the @emph{category} +(@pxref{Categories}) of the item and other important information. You can +customize the prefix using the option @code{org-agenda-prefix-format}. +The prefix is followed by a cleaned-up version of the outline headline +associated with the item. + +@menu +* Categories:: Not all tasks are equal +* Time-of-day specifications:: How the agenda knows the time +* Sorting of agenda items:: The order of things +@end menu + +@node Categories, Time-of-day specifications, Presentation and sorting, Presentation and sorting +@subsection Categories + +@cindex category +The category is a broad label assigned to each agenda item. By default, +the category is simply derived from the file name, but you can also +specify it with a special line in the buffer, like this@footnote{For +backward compatibility, the following also works: If there are several +such lines in a file, each specifies the category for the text below it. +The first category also applies to any text before the first CATEGORY +line. However, using this method is @emph{strongly} deprecated as it is +incompatible with the outline structure of the document. The correct +method for setting multiple categories in a buffer is using a +property.}: + +@example +#+CATEGORY: Thesis +@end example + +@noindent +If you would like to have a special CATEGORY for a single entry or a +(sub)tree, give the entry a @code{:CATEGORY:} property with the location +as the value (@pxref{Properties and columns}). + +@noindent +The display in the agenda buffer looks best if the category is not +longer than 10 characters. + +@node Time-of-day specifications, Sorting of agenda items, Categories, Presentation and sorting +@subsection Time-of-Day Specifications +@cindex time-of-day specification + +Org-mode checks each agenda item for a time-of-day specification. The +time can be part of the time stamp that triggered inclusion into the +agenda, for example as in @w{@samp{<2005-05-10 Tue 19:00>}}. Time +ranges can be specified with two time stamps, like +@c +@w{@samp{<2005-05-10 Tue 20:30>--<2005-05-10 Tue 22:15>}}. + +In the headline of the entry itself, a time(range) may also appear as +plain text (like @samp{12:45} or a @samp{8:30-1pm}. If the agenda +integrates the Emacs diary (@pxref{Weekly/Daily agenda}), time +specifications in diary entries are recognized as well. + +For agenda display, Org-mode extracts the time and displays it in a +standard 24 hour format as part of the prefix. The example times in +the previous paragraphs would end up in the agenda like this: + +@example + 8:30-13:00 Arthur Dent lies in front of the bulldozer + 12:45...... Ford Prefect arrives and takes Arthur to the pub + 19:00...... The Vogon reads his poem + 20:30-22:15 Marwin escorts the Hitchhikers to the bridge +@end example + +@cindex time grid +If the agenda is in single-day mode, or for the display of today, the +timed entries are embedded in a time grid, like + +@example + 8:00...... ------------------ + 8:30-13:00 Arthur Dent lies in front of the bulldozer + 10:00...... ------------------ + 12:00...... ------------------ + 12:45...... Ford Prefect arrives and takes Arthur to the pub + 14:00...... ------------------ + 16:00...... ------------------ + 18:00...... ------------------ + 19:00...... The Vogon reads his poem + 20:00...... ------------------ + 20:30-22:15 Marwin escorts the Hitchhikers to the bridge +@end example + +The time grid can be turned on and off with the variable +@code{org-agenda-use-time-grid}, and can be configured with +@code{org-agenda-time-grid}. + +@node Sorting of agenda items, , Time-of-day specifications, Presentation and sorting +@subsection Sorting of agenda items +@cindex sorting, of agenda items +@cindex priorities, of agenda items +Before being inserted into a view, the items are sorted. How this is +done depends on the type of view. +@itemize @bullet +@item +For the daily/weekly agenda, the items for each day are sorted. The +default order is to first collect all items containing an explicit +time-of-day specification. These entries will be shown at the beginning +of the list, as a @emph{schedule} for the day. After that, items remain +grouped in categories, in the sequence given by @code{org-agenda-files}. +Within each category, items are sorted by priority (@pxref{Priorities}), +which is composed of the base priority (2000 for priority @samp{A}, 1000 +for @samp{B}, and 0 for @samp{C}), plus additional increments for +overdue scheduled or deadline items. +@item +For the TODO list, items remain in the order of categories, but within +each category, sorting takes place according to priority +(@pxref{Priorities}). +@item +For tags matches, items are not sorted at all, but just appear in the +sequence in which they are found in the agenda files. +@end itemize + +Sorting can be customized using the variable +@code{org-agenda-sorting-strategy}. + + +@node Agenda commands, Custom agenda views, Presentation and sorting, Agenda views +@section Commands in the agenda buffer +@cindex commands, in agenda buffer + +Entries in the agenda buffer are linked back to the org file or diary +file where they originate. You are not allowed to edit the agenda +buffer itself, but commands are provided to show and jump to the +original entry location, and to edit the org-files ``remotely'' from +the agenda buffer. In this way, all information is stored only once, +removing the risk that your agenda and note files may diverge. + +Some commands can be executed with mouse clicks on agenda lines. For +the other commands, the cursor needs to be in the desired line. + +@table @kbd +@tsubheading{Motion} +@cindex motion commands in agenda +@kindex n +@item n +Next line (same as @key{up} and @kbd{C-p}). +@kindex p +@item p +Previous line (same as @key{down} and @kbd{C-n}). +@tsubheading{View/GoTo org file} +@kindex mouse-3 +@kindex @key{SPC} +@item mouse-3 +@itemx @key{SPC} +Display the original location of the item in another window. +@c +@kindex L +@item L +Display original location and recenter that window. +@c +@kindex mouse-2 +@kindex mouse-1 +@kindex @key{TAB} +@item mouse-2 +@itemx mouse-1 +@itemx @key{TAB} +Go to the original location of the item in another window. Under Emacs +22, @kbd{mouse-1} will also works for this. +@c +@kindex @key{RET} +@itemx @key{RET} +Go to the original location of the item and delete other windows. +@c +@kindex f +@item f +Toggle Follow mode. In Follow mode, as you move the cursor through +the agenda buffer, the other window always shows the corresponding +location in the org file. The initial setting for this mode in new +agenda buffers can be set with the variable +@code{org-agenda-start-with-follow-mode}. +@c +@kindex b +@item b +Display the entire subtree of the current item in an indirect buffer. +With numerical prefix ARG, go up to this level and then take that tree. +If ARG is negative, go up that many levels. With @kbd{C-u} prefix, do +not remove the previously used indirect buffer. +@c +@kindex l +@item l +Toggle Logbook mode. In Logbook mode, entries that where marked DONE while +logging was on (variable @code{org-log-done}) are shown in the agenda, +as are entries that have been clocked on that day. + +@tsubheading{Change display} +@cindex display changing, in agenda +@kindex o +@item o +Delete other windows. +@c +@kindex d +@kindex w +@kindex m +@kindex y +@item d w m y +Switch to day/week/month/year view. When switching to day or week view, +this setting becomes the default for subseqent agenda commands. Since +month and year views are slow to create, the do not become the default. +@c +@kindex D +@item D +Toggle the inclusion of diary entries. See @ref{Weekly/Daily agenda}. +@c +@kindex G +@item G +Toggle the time grid on and off. See also the variables +@code{org-agenda-use-time-grid} and @code{org-agenda-time-grid}. +@c +@kindex r +@item r +Recreate the agenda buffer, for example to reflect the changes +after modification of the time stamps of items with S-@key{left} and +S-@key{right}. When the buffer is the global todo list, a prefix +argument is interpreted to create a selective list for a specific TODO +keyword. +@kindex g +@item g +Same as @kbd{r}. +@c +@kindex s +@kindex C-x C-s +@item s +@itemx C-x C-s +Save all Org-mode buffers in the current Emacs session. +@c +@kindex @key{right} +@item @key{right} +Display the following @code{org-agenda-ndays} days. For example, if +the display covers a week, switch to the following week. With prefix +arg, go forward that many times @code{org-agenda-ndays} days. +@c +@kindex @key{left} +@item @key{left} +Display the previous dates. +@c +@kindex . +@item . +Goto today. + +@tsubheading{Query editing} +@cindex query editing, in agenda + +@kindex [ +@kindex ] +@kindex @{ +@kindex @} +@item [ ] @{ @} +In the @i{search view} (@pxref{Keyword search}), these keys add new +search words (@kbd{[} and @kbd{]}) or new regular expressions (@kbd{@{} +and @kbd{@}}) to the query string. The opening bracket/brace will add a +positive search term prefixed by @samp{+}, indicating that this search +term @i{must} occur/match in the entry. Closing bracket/brace add a +negative search term which @i{must not} occur/match in the entry for it +to be selected. + + +@tsubheading{Remote editing} +@cindex remote editing, from agenda + +@item 0-9 +Digit argument. +@c +@cindex undoing remote-editing events +@cindex remote editing, undo +@kindex C-_ +@item C-_ +Undo a change due to a remote editing command. The change is undone +both in the agenda buffer and in the remote buffer. +@c +@kindex t +@item t +Change the TODO state of the item, both in the agenda and in the +original org file. +@c +@kindex C-k +@item C-k +Delete the current agenda item along with the entire subtree belonging +to it in the original Org-mode file. If the text to be deleted remotely +is longer than one line, the kill needs to be confirmed by the user. See +variable @code{org-agenda-confirm-kill}. +@c +@kindex $ +@item $ +Archive the subtree corresponding to the current headline. +@c +@kindex T +@item T +Show all tags associated with the current item. Because of +inheritance, this may be more than the tags listed in the line itself. +@c +@kindex : +@item : +Set tags for the current headline. If there is an active region in the +agenda, change a tag for all headings in the region. +@c +@kindex a +@item a +Toggle the ARCHIVE tag for the current headline. +@c +@kindex , +@item , +Set the priority for the current item. Org-mode prompts for the +priority character. If you reply with @key{SPC}, the priority cookie +is removed from the entry. +@c +@kindex P +@item P +Display weighted priority of current item. +@c +@kindex + +@kindex S-@key{up} +@item + +@itemx S-@key{up} +Increase the priority of the current item. The priority is changed in +the original buffer, but the agenda is not resorted. Use the @kbd{r} +key for this. +@c +@kindex - +@kindex S-@key{down} +@item - +@itemx S-@key{down} +Decrease the priority of the current item. +@c +@kindex C-c C-s +@item C-c C-s +Schedule this item +@c +@kindex C-c C-d +@item C-c C-d +Set a deadline for this item. +@c +@kindex S-@key{right} +@item S-@key{right} +Change the time stamp associated with the current line by one day into +the future. With prefix argument, change it by that many days. For +example, @kbd{3 6 5 S-@key{right}} will change it by a year. The +stamp is changed in the original org file, but the change is not +directly reflected in the agenda buffer. Use the +@kbd{r} key to update the buffer. +@c +@kindex S-@key{left} +@item S-@key{left} +Change the time stamp associated with the current line by one day +into the past. +@c +@kindex > +@item > +Change the time stamp associated with the current line to today. +The key @kbd{>} has been chosen, because it is the same as @kbd{S-.} +on my keyboard. +@c +@kindex I +@item I +Start the clock on the current item. If a clock is running already, it +is stopped first. +@c +@kindex O +@item O +Stop the previously started clock. +@c +@kindex X +@item X +Cancel the currently running clock. + +@kindex J +@item J +Jump to the running clock in another window. + +@tsubheading{Calendar commands} +@cindex calendar commands, from agenda +@kindex c +@item c +Open the Emacs calendar and move to the date at the agenda cursor. +@c +@item c +When in the calendar, compute and show the Org-mode agenda for the +date at the cursor. +@c +@cindex diary entries, creating from agenda +@kindex i +@item i +Insert a new entry into the diary. Prompts for the type of entry +(day, weekly, monthly, yearly, anniversary, cyclic) and creates a new +entry in the diary, just as @kbd{i d} etc. would do in the calendar. +The date is taken from the cursor position. +@c +@kindex M +@item M +Show the phases of the moon for the three months around current date. +@c +@kindex S +@item S +Show sunrise and sunset times. The geographical location must be set +with calendar variables, see documentation of the Emacs calendar. +@c +@kindex C +@item C +Convert the date at cursor into many other cultural and historic +calendars. +@c +@kindex H +@item H +Show holidays for three month around the cursor date. +@c +@c FIXME: This should be a different key. +@kindex C-c C-x C-c +@item C-c C-x C-c +Export a single iCalendar file containing entries from all agenda files. + +@tsubheading{Exporting to a file} +@kindex C-x C-w +@item C-x C-w +@cindex exporting agenda views +@cindex agenda views, exporting +Write the agenda view to a file. Depending on the extension of the +selected file name, the view will be exported as HTML (extension +@file{.html} or @file{.htm}), Postscript (extension @file{.ps}), or +plain text (any other extension). Use the variable +@code{org-agenda-exporter-settings} to set options for @file{ps-print} +and for @file{htmlize} to be used during export. + +@tsubheading{Quit and Exit} +@kindex q +@item q +Quit agenda, remove the agenda buffer. +@c +@kindex x +@cindex agenda files, removing buffers +@item x +Exit agenda, remove the agenda buffer and all buffers loaded by Emacs +for the compilation of the agenda. Buffers created by the user to +visit org files will not be removed. +@end table + + +@node Custom agenda views, , Agenda commands, Agenda views +@section Custom agenda views +@cindex custom agenda views +@cindex agenda views, custom + +Custom agenda commands serve two purposes: to store and quickly access +frequently used TODO and tags searches, and to create special composite +agenda buffers. Custom agenda commands will be accessible through the +dispatcher (@pxref{Agenda dispatcher}), just like the default commands. + +@menu +* Storing searches:: Type once, use often +* Block agenda:: All the stuff you need in a single buffer +* Setting Options:: Changing the rules +* Exporting Agenda Views:: Writing agendas to files. +* Extracting Agenda Information for other programs:: +@end menu + +@node Storing searches, Block agenda, Custom agenda views, Custom agenda views +@subsection Storing searches + +The first application of custom searches is the definition of keyboard +shortcuts for frequently used searches, either creating an agenda +buffer, or a sparse tree (the latter covering of course only the current +buffer). +@kindex C-c a C +Custom commands are configured in the variable +@code{org-agenda-custom-commands}. You can customize this variable, for +example by pressing @kbd{C-c a C}. You can also directly set it with +Emacs Lisp in @file{.emacs}. The following example contains all valid +search types: + +@lisp +@group +(setq org-agenda-custom-commands + '(("w" todo "WAITING") + ("W" todo-tree "WAITING") + ("u" tags "+boss-urgent") + ("v" tags-todo "+boss-urgent") + ("U" tags-tree "+boss-urgent") + ("f" occur-tree "\\") + ("h" . "HOME+Name tags searches") ; description for "h" prefix + ("hl" tags "+home+Lisa") + ("hp" tags "+home+Peter") + ("hk" tags "+home+Kim"))) +@end group +@end lisp + +@noindent +The initial string in each entry defines the keys you have to press +after the dispatcher command @kbd{C-c a} in order to access the command. +Usually this will be just a single character, but if you have many +similar commands, you can also define two-letter combinations where the +first character is the same in several combinations and serves as a +prefix key@footnote{You can provide a description for a prefix key by +inserting a cons cell with the prefix and the description.}. The second +parameter is the search type, followed by the string or regular +expression to be used for the matching. The example above will +therefore define: + +@table @kbd +@item C-c a w +as a global search for TODO entries with @samp{WAITING} as the TODO +keyword +@item C-c a W +as the same search, but only in the current buffer and displaying the +results as a sparse tree +@item C-c a u +as a global tags search for headlines marked @samp{:boss:} but not +@samp{:urgent:} +@item C-c a v +as the same search as @kbd{C-c a u}, but limiting the search to +headlines that are also TODO items +@item C-c a U +as the same search as @kbd{C-c a u}, but only in the current buffer and +displaying the result as a sparse tree +@item C-c a f +to create a sparse tree (again: current buffer only) with all entries +containing the word @samp{FIXME} +@item C-c a h +as a prefix command for a HOME tags search where you have to press an +additional key (@kbd{l}, @kbd{p} or @kbd{k}) to select a name (Lisa, +Peter, or Kim) as additional tag to match. +@end table + +@node Block agenda, Setting Options, Storing searches, Custom agenda views +@subsection Block agenda +@cindex block agenda +@cindex agenda, with block views + +Another possibility is the construction of agenda views that comprise +the results of @emph{several} commands, each of which creates a block in +the agenda buffer. The available commands include @code{agenda} for the +daily or weekly agenda (as created with @kbd{C-c a a}), @code{alltodo} +for the global todo list (as constructed with @kbd{C-c a t}), and the +matching commands discussed above: @code{todo}, @code{tags}, and +@code{tags-todo}. Here are two examples: + +@lisp +@group +(setq org-agenda-custom-commands + '(("h" "Agenda and Home-related tasks" + ((agenda "") + (tags-todo "home") + (tags "garden"))) + ("o" "Agenda and Office-related tasks" + ((agenda "") + (tags-todo "work") + (tags "office"))))) +@end group +@end lisp + +@noindent +This will define @kbd{C-c a h} to create a multi-block view for stuff +you need to attend to at home. The resulting agenda buffer will contain +your agenda for the current week, all TODO items that carry the tag +@samp{home}, and also all lines tagged with @samp{garden}. Finally the +command @kbd{C-c a o} provides a similar view for office tasks. + +@node Setting Options, Exporting Agenda Views, Block agenda, Custom agenda views +@subsection Setting Options for custom commands +@cindex options, for custom agenda views + +Org-mode contains a number of variables regulating agenda construction +and display. The global variables define the behavior for all agenda +commands, including the custom commands. However, if you want to change +some settings just for a single custom view, you can do so. Setting +options requires inserting a list of variable names and values at the +right spot in @code{org-agenda-custom-commands}. For example: + +@lisp +@group +(setq org-agenda-custom-commands + '(("w" todo "WAITING" + ((org-agenda-sorting-strategy '(priority-down)) + (org-agenda-prefix-format " Mixed: "))) + ("U" tags-tree "+boss-urgent" + ((org-show-following-heading nil) + (org-show-hierarchy-above nil))) + ("N" search "" + ((org-agenda-files '("~org/notes.org")) + (org-agenda-text-search-extra-files nil))))) +@end group +@end lisp + +@noindent +Now the @kbd{C-c a w} command will sort the collected entries only by +priority, and the prefix format is modified to just say @samp{ Mixed: } +instead of giving the category of the entry. The sparse tags tree of +@kbd{C-c a U} will now turn out ultra-compact, because neither the +headline hierarchy above the match, nor the headline following the match +will be shown. The command @kbd{C-c a N} will do a text search limited +to only a single file. + +For command sets creating a block agenda, +@code{org-agenda-custom-commands} has two separate spots for setting +options. You can add options that should be valid for just a single +command in the set, and options that should be valid for all commands in +the set. The former are just added to the command entry, the latter +must come after the list of command entries. Going back to the block +agenda example (@pxref{Block agenda}), let's change the sorting strategy +for the @kbd{C-c a h} commands to @code{priority-down}, but let's sort +the results for GARDEN tags query in the opposite order, +@code{priority-up}. This would look like this: + +@lisp +@group +(setq org-agenda-custom-commands + '(("h" "Agenda and Home-related tasks" + ((agenda) + (tags-todo "home") + (tags "garden" + ((org-agenda-sorting-strategy '(priority-up))))) + ((org-agenda-sorting-strategy '(priority-down)))) + ("o" "Agenda and Office-related tasks" + ((agenda) + (tags-todo "work") + (tags "office"))))) +@end group +@end lisp + +As you see, the values and parenthesis setting is a little complex. +When in doubt, use the customize interface to set this variable - it +fully supports its structure. Just one caveat: When setting options in +this interface, the @emph{values} are just lisp expressions. So if the +value is a string, you need to add the double quotes around the value +yourself. + + +@node Exporting Agenda Views, Extracting Agenda Information for other programs, Setting Options, Custom agenda views +@subsection Exporting Agenda Views +@cindex agenda views, exporting + +If you are away from your computer, it can be very useful to have a +printed version of some agenda views to carry around. Org-mode can +export custom agenda views as plain text, HTML@footnote{You need to +install Hrvoje Niksic' @file{htmlize.el}.} postscript, and iCalendar +files. If you want to do this only occasionally, use the command + +@table @kbd +@kindex C-x C-w +@item C-x C-w +@cindex exporting agenda views +@cindex agenda views, exporting +Write the agenda view to a file. Depending on the extension of the +selected file name, the view will be exported as HTML (extension +@file{.html} or @file{.htm}), Postscript (extension @file{.ps}), +iCalendar (extension @file{.ics}), or plain text (any other extension). +Use the variable @code{org-agenda-exporter-settings} to +set options for @file{ps-print} and for @file{htmlize} to be used during +export, for example + +@lisp +(setq org-agenda-exporter-settings + '((ps-number-of-columns 2) + (ps-landscape-mode t) + (htmlize-output-type 'css))) +@end lisp +@end table + +If you need to export certain agenda views frequently, you can associate +any custom agenda command with a list of output file names +@footnote{If you want to store standard views like the weekly agenda +or the global TODO list as well, you need to define custom commands for +them in order to be able to specify file names.}. Here is an example +that first does define custom commands for the agenda and the global +todo list, together with a number of files to which to export them. +Then we define two block agenda commands and specify file names for them +as well. File names can be relative to the current working directory, +or absolute. + +@lisp +@group +(setq org-agenda-custom-commands + '(("X" agenda "" nil ("agenda.html" "agenda.ps")) + ("Y" alltodo "" nil ("todo.html" "todo.txt" "todo.ps")) + ("h" "Agenda and Home-related tasks" + ((agenda "") + (tags-todo "home") + (tags "garden")) + nil + ("~/views/home.html")) + ("o" "Agenda and Office-related tasks" + ((agenda) + (tags-todo "work") + (tags "office")) + nil + ("~/views/office.ps" "~/calendars/office.ics")))) +@end group +@end lisp + +The extension of the file name determines the type of export. If it is +@file{.html}, Org-mode will use the @file{htmlize.el} package to convert +the buffer to HTML and save it to this file name. If the extension is +@file{.ps}, @code{ps-print-buffer-with-faces} is used to produce +postscript output. If the extension is @file{.ics}, iCalendar export is +run export over all files that were used to construct the agenda, and +limit the export to entries listed in the agenda now. Any other +extension produces a plain ASCII file. + +The export files are @emph{not} created when you use one of those +commands interactively because this might use too much overhead. +Instead, there is a special command to produce @emph{all} specified +files in one step: + +@table @kbd +@kindex C-c a e +@item C-c a e +Export all agenda views that have export file names associated with +them. +@end table + +You can use the options section of the custom agenda commands to also +set options for the export commands. For example: + +@lisp +(setq org-agenda-custom-commands + '(("X" agenda "" + ((ps-number-of-columns 2) + (ps-landscape-mode t) + (org-agenda-prefix-format " [ ] ") + (org-agenda-with-colors nil) + (org-agenda-remove-tags t)) + ("theagenda.ps")))) +@end lisp + +@noindent +This command sets two options for the postscript exporter, to make it +print in two columns in landscape format - the resulting page can be cut +in two and then used in a paper agenda. The remaining settings modify +the agenda prefix to omit category and scheduling information, and +instead include a checkbox to check off items. We also remove the tags +to make the lines compact, and we don't want to use colors for the +black-and-white printer. Settings specified in +@code{org-agenda-exporter-settings} will also apply, but the settings +in @code{org-agenda-custom-commands} take precedence. + +@noindent +From the command line you may also use +@example +emacs -f org-batch-store-agenda-views -kill +@end example +@noindent +or, if you need to modify some parameters +@example +emacs -eval '(org-batch-store-agenda-views \ + org-agenda-ndays 30 \ + org-agenda-start-day "2007-11-01" \ + org-agenda-include-diary nil \ + org-agenda-files (quote ("~/org/project.org")))' \ + -kill +@end example +@noindent +which will create the agenda views restricted to the file +@file{~/org/project.org}, without diary entries and with 30 days +extent. + +@node Extracting Agenda Information for other programs, , Exporting Agenda Views, Custom agenda views +@subsection Extracting Agenda Information for other programs +@cindex agenda, pipe +@cindex Scripts, for agenda processing + +Org-mode provides commands to access agenda information for the command +line in emacs batch mode. This extracted information can be sent +directly to a printer, or it can be read by a program that does further +processing of the data. The first of these commands is the function +@code{org-batch-agenda}, that produces an agenda view and sends it as +ASCII text to STDOUT. The command takes a single string as parameter. +If the string has length 1, it is used as a key to one of the commands +you have configured in @code{org-agenda-custom-commands}, basically any +key you can use after @kbd{C-c a}. For example, to directly print the +current TODO list, you could use + +@example +emacs -batch -l ~/.emacs -eval '(org-batch-agenda "t")' | lpr +@end example + +If the parameter is a string with 2 or more characters, it is used as a +tags/todo match string. For example, to print your local shopping list +(all items with the tag @samp{shop}, but excluding the tag +@samp{NewYork}), you could use + +@example +emacs -batch -l ~/.emacs \ + -eval '(org-batch-agenda "+shop-NewYork")' | lpr +@end example + +@noindent +You may also modify parameters on the fly like this: + +@example +emacs -batch -l ~/.emacs \ + -eval '(org-batch-agenda "a" \ + org-agenda-ndays 30 \ + org-agenda-include-diary nil \ + org-agenda-files (quote ("~/org/project.org")))' \ + | lpr +@end example + +@noindent +which will produce a 30 day agenda, fully restricted to the Org file +@file{~/org/projects.org}, not even including the diary. + +If you want to process the agenda data in more sophisticated ways, you +can use the command @code{org-batch-agenda-csv} to get a comma-separated +list of values for each agenda item. Each line in the output will +contain a number of fields separated by commas. The fields in a line +are: + +@example +category @r{The category of the item} +head @r{The headline, without TODO kwd, TAGS and PRIORITY} +type @r{The type of the agenda entry, can be} + todo @r{selected in TODO match} + tagsmatch @r{selected in tags match} + diary @r{imported from diary} + deadline @r{a deadline} + scheduled @r{scheduled} + timestamp @r{appointment, selected by timestamp} + closed @r{entry was closed on date} + upcoming-deadline @r{warning about nearing deadline} + past-scheduled @r{forwarded scheduled item} + block @r{entry has date block including date} +todo @r{The todo keyword, if any} +tags @r{All tags including inherited ones, separated by colons} +date @r{The relevant date, like 2007-2-14} +time @r{The time, like 15:00-16:50} +extra @r{String with extra planning info} +priority-l @r{The priority letter if any was given} +priority-n @r{The computed numerical priority} +@end example + +@noindent +Time and date will only be given if a timestamp (or deadline/scheduled) +lead to the selection of the item. + +A CSV list like this is very easy to use in a post processing script. +For example, here is a Perl program that gets the TODO list from +Emacs/org-mode and prints all the items, preceded by a checkbox: + +@example +@group +#!/usr/bin/perl + +# define the Emacs command to run +$cmd = "emacs -batch -l ~/.emacs -eval '(org-batch-agenda-csv \"t\")'"; + +# run it and capture the output +$agenda = qx@{$cmd 2>/dev/null@}; + +# loop over all lines +foreach $line (split(/\n/,$agenda)) @{ + + # get the individual values + ($category,$head,$type,$todo,$tags,$date,$time,$extra, + $priority_l,$priority_n) = split(/,/,$line); + + # proccess and print + print "[ ] $head\n"; +@} +@end group +@end example + +@node Embedded LaTeX, Exporting, Agenda views, Top +@chapter Embedded LaTeX +@cindex @TeX{} interpretation +@cindex La@TeX{} interpretation + +Plain ASCII is normally sufficient for almost all note taking. One +exception, however, are scientific notes which need to be able to +contain mathematical symbols and the occasional formula. +La@TeX{}@footnote{La@TeX{} is a macro system based on Donald E. Knuth's +@TeX{} system. Many of the features described here as ``La@TeX{}'' are +really from @TeX{}, but for simplicity I am blurring this distinction.} +is widely used to typeset scientific documents. Org-mode supports +embedding La@TeX{} code into its files, because many academics are used +to read La@TeX{} source code, and because it can be readily processed +into images for HTML production. + +It is not necessary to mark La@TeX{} macros and code in any special way. +If you observe a few conventions, Org-mode knows how to find it and what +to do with it. + +@menu +* Math symbols:: TeX macros for symbols and Greek letters +* Subscripts and Superscripts:: Simple syntax for raising/lowering text +* LaTeX fragments:: Complex formulas made easy +* Processing LaTeX fragments:: Previewing LaTeX processing +* CDLaTeX mode:: Speed up entering of formulas +@end menu + +@node Math symbols, Subscripts and Superscripts, Embedded LaTeX, Embedded LaTeX +@section Math symbols +@cindex math symbols +@cindex TeX macros + +You can use La@TeX{} macros to insert special symbols like @samp{\alpha} +to indicate the Greek letter, or @samp{\to} to indicate an arrow. +Completion for these macros is available, just type @samp{\} and maybe a +few letters, and press @kbd{M-@key{TAB}} to see possible completions. +Unlike La@TeX{} code, Org-mode allows these macros to be present +without surrounding math delimiters, for example: + +@example +Angles are written as Greek letters \alpha, \beta and \gamma. +@end example + +During HTML export (@pxref{HTML export}), these symbols are translated +into the proper syntax for HTML, for the above examples this is +@samp{α} and @samp{→}, respectively. + +@node Subscripts and Superscripts, LaTeX fragments, Math symbols, Embedded LaTeX +@section Subscripts and Superscripts +@cindex subscript +@cindex superscript + +Just like in La@TeX{}, @samp{^} and @samp{_} are used to indicate super- +and subscripts. Again, these can be used without embedding them in +math-mode delimiters. To increase the readability of ASCII text, it is +not necessary (but OK) to surround multi-character sub- and superscripts +with curly braces. For example + +@example +The mass if the sun is M_sun = 1.989 x 10^30 kg. The radius of +the sun is R_@{sun@} = 6.96 x 10^8 m. +@end example + +To avoid interpretation as raised or lowered text, you can quote +@samp{^} and @samp{_} with a backslash: @samp{\_} and @samp{\^}. + +During HTML export (@pxref{HTML export}), subscript and superscripts +are surrounded with @code{} and @code{} tags, respectively. + +@node LaTeX fragments, Processing LaTeX fragments, Subscripts and Superscripts, Embedded LaTeX +@section LaTeX fragments +@cindex LaTeX fragments + +With symbols, sub- and superscripts, HTML is pretty much at its end when +it comes to representing mathematical formulas@footnote{Yes, there is +MathML, but that is not yet fully supported by many browsers, and there +is no decent converter for turning La@TeX{} or ASCII representations of +formulas into MathML. So for the time being, converting formulas into +images seems the way to go.}. More complex expressions need a dedicated +formula processor. To this end, Org-mode can contain arbitrary La@TeX{} +fragments. It provides commands to preview the typeset result of these +fragments, and upon export to HTML, all fragments will be converted to +images and inlined into the HTML document@footnote{The La@TeX{} export +will not use images for displaying La@TeX{} fragments but include these +fragments directly into the La@TeX{} code.}. For this to work you +need to be on a system with a working La@TeX{} installation. You also +need the @file{dvipng} program, available at +@url{http://sourceforge.net/projects/dvipng/}. The La@TeX{} header that +will be used when processing a fragment can be configured with the +variable @code{org-format-latex-header}. + +La@TeX{} fragments don't need any special marking at all. The following +snippets will be identified as La@TeX{} source code: +@itemize @bullet +@item +Environments of any kind. The only requirement is that the +@code{\begin} statement appears on a new line, preceded by only +whitespace. +@item +Text within the usual La@TeX{} math delimiters. To avoid conflicts with +currency specifications, single @samp{$} characters are only recognized +as math delimiters if the enclosed text contains at most two line breaks, +is directly attached to the @samp{$} characters with no whitespace in +between, and if the closing @samp{$} is followed by whitespace or +punctuation. For the other delimiters, there is no such restriction, so +when in doubt, use @samp{\(...\)} as inline math delimiters. +@end itemize + +@noindent For example: + +@example +\begin@{equation@} % arbitrary environments, +x=\sqrt@{b@} % even tables, figures +\end@{equation@} % etc + +If $a^2=b$ and \( b=2 \), then the solution must be +either $$ a=+\sqrt@{2@} $$ or \[ a=-\sqrt@{2@} \]. +@end example + +@noindent +If you need any of the delimiter ASCII sequences for other purposes, you +can configure the option @code{org-format-latex-options} to deselect the +ones you do not wish to have interpreted by the La@TeX{} converter. + +@node Processing LaTeX fragments, CDLaTeX mode, LaTeX fragments, Embedded LaTeX +@section Processing LaTeX fragments +@cindex LaTeX fragments, preview + +La@TeX{} fragments can be processed to produce a preview images of the +typeset expressions: + +@table @kbd +@kindex C-c C-x C-l +@item C-c C-x C-l +Produce a preview image of the La@TeX{} fragment at point and overlay it +over the source code. If there is no fragment at point, process all +fragments in the current entry (between two headlines). When called +with a prefix argument, process the entire subtree. When called with +two prefix arguments, or when the cursor is before the first headline, +process the entire buffer. +@kindex C-c C-c +@item C-c C-c +Remove the overlay preview images. +@end table + +During HTML export (@pxref{HTML export}), all La@TeX{} fragments are +converted into images and inlined into the document if the following +setting is active: + +@lisp +(setq org-export-with-LaTeX-fragments t) +@end lisp + +@node CDLaTeX mode, , Processing LaTeX fragments, Embedded LaTeX +@section Using CDLaTeX to enter math +@cindex CDLaTeX + +CDLaTeX-mode is a minor mode that is normally used in combination with a +major La@TeX{} mode like AUCTeX in order to speed-up insertion of +environments and math templates. Inside Org-mode, you can make use of +some of the features of cdlatex-mode. You need to install +@file{cdlatex.el} and @file{texmathp.el} (the latter comes also with +AUCTeX) from @url{http://www.astro.uva.nl/~dominik/Tools/cdlatex}. +Don't turn cdlatex-mode itself under Org-mode, but use the light +version @code{org-cdlatex-mode} that comes as part of Org-mode. Turn it +on for the current buffer with @code{M-x org-cdlatex-mode}, or for all +Org-mode files with + +@lisp +(add-hook 'org-mode-hook 'turn-on-org-cdlatex) +@end lisp + +When this mode is enabled, the following features are present (for more +details see the documentation of cdlatex-mode): +@itemize @bullet +@kindex C-c @{ +@item +Environment templates can be inserted with @kbd{C-c @{}. +@item +@kindex @key{TAB} +The @key{TAB} key will do template expansion if the cursor is inside a +La@TeX{} fragment@footnote{Org-mode has a method to test if the cursor is +inside such a fragment, see the documentation of the function +@code{org-inside-LaTeX-fragment-p}.}. For example, @key{TAB} will +expand @code{fr} to @code{\frac@{@}@{@}} and position the cursor +correctly inside the first brace. Another @key{TAB} will get you into +the second brace. Even outside fragments, @key{TAB} will expand +environment abbreviations at the beginning of a line. For example, if +you write @samp{equ} at the beginning of a line and press @key{TAB}, +this abbreviation will be expanded to an @code{equation} environment. +To get a list of all abbreviations, type @kbd{M-x cdlatex-command-help}. +@item +@kindex _ +@kindex ^ +Pressing @kbd{_} and @kbd{^} inside a La@TeX{} fragment will insert these +characters together with a pair of braces. If you use @key{TAB} to move +out of the braces, and if the braces surround only a single character or +macro, they are removed again (depending on the variable +@code{cdlatex-simplify-sub-super-scripts}). +@item +@kindex ` +Pressing the backquote @kbd{`} followed by a character inserts math +macros, also outside La@TeX{} fragments. If you wait more than 1.5 seconds +after the backquote, a help window will pop up. +@item +@kindex ' +Pressing the normal quote @kbd{'} followed by another character modifies +the symbol before point with an accent or a font. If you wait more than +1.5 seconds after the backquote, a help window will pop up. Character +modification will work only inside La@TeX{} fragments, outside the quote +is normal. +@end itemize + +@node Exporting, Publishing, Embedded LaTeX, Top +@chapter Exporting +@cindex exporting + +Org-mode documents can be exported into a variety of other formats. For +printing and sharing of notes, ASCII export produces a readable and +simple version of an Org-mode file. HTML export allows you to publish a +notes file on the web, while the XOXO format provides a solid base for +exchange with a broad range of other applications. La@TeX{} export lets +you use Org-mode and its structured editing functions to easily create +La@TeX{} files. To incorporate entries with associated times like +deadlines or appointments into a desktop calendar program like iCal, +Org-mode can also produce extracts in the iCalendar format. Currently +Org-mode only supports export, not import of these different formats. + +When exporting, Org-mode uses special conventions to enrich the output +produced. @xref{Text interpretation}, for more details. + +@table @kbd +@kindex C-c C-e +@item C-c C-e +Dispatcher for export and publishing commands. Displays a help-window +listing the additional key(s) needed to launch an export or publishing +command. +@end table + +@menu +* ASCII export:: Exporting to plain ASCII +* HTML export:: Exporting to HTML +* LaTeX export:: Exporting to LaTeX +* XOXO export:: Exporting to XOXO +* iCalendar export:: Exporting in iCalendar format +* Text interpretation:: How the exporter looks at the file +@end menu + +@node ASCII export, HTML export, Exporting, Exporting +@section ASCII export +@cindex ASCII export + +ASCII export produces a simple and very readable version of an Org-mode +file. + +@cindex region, active +@cindex active region +@cindex transient-mark-mode +@table @kbd +@kindex C-c C-e a +@item C-c C-e a +Export as ASCII file. For an org file @file{myfile.org}, the ASCII file +will be @file{myfile.txt}. The file will be overwritten without +warning. If there is an active region, only the region will be +exported. If the selected region is a single tree, the tree head will +become the document title. If the tree head entry has or inherits an +@code{:EXPORT_FILE_NAME:} property, that name will be used for the +export. +@kindex C-c C-e v a +@item C-c C-e v a +Export only the visible part of the document. +@end table + +@cindex headline levels, for exporting +In the exported version, the first 3 outline levels will become +headlines, defining a general document structure. Additional levels +will be exported as itemized lists. If you want that transition to occur +at a different level, specify it with a prefix argument. For example, + +@example +@kbd{C-1 C-c C-e a} +@end example + +@noindent +creates only top level headlines and does the rest as items. When +headlines are converted to items, the indentation of the text following +the headline is changed to fit nicely under the item. This is done with +the assumption that the first bodyline indicates the base indentation of +the body text. Any indentation larger than this is adjusted to preserve +the layout relative to the first line. Should there be lines with less +indentation than the first, these are left alone. + +@node HTML export, LaTeX export, ASCII export, Exporting +@section HTML export +@cindex HTML export + +Org-mode contains an HTML (XHTML 1.0 strict) exporter with extensive +HTML formatting, in ways similar to John Grubers @emph{markdown} +language, but with additional support for tables. + +@menu +* HTML Export commands:: How to invoke LaTeX export +* Quoting HTML tags:: Using direct HTML in Org-mode +* Links:: Transformation of links for HTML +* Images:: How to include images +* CSS support:: Changing the appearence of the output +@end menu + +@node HTML Export commands, Quoting HTML tags, HTML export, HTML export +@subsection HTML export commands + +@cindex region, active +@cindex active region +@cindex transient-mark-mode +@table @kbd +@kindex C-c C-e h +@item C-c C-e h +Export as HTML file @file{myfile.html}. For an org file +@file{myfile.org}, the ASCII file will be @file{myfile.html}. The file +will be overwritten without warning. If there is an active region, only +the region will be exported. If the selected region is a single tree, +the tree head will become the document title. If the tree head entry +has or inherits an @code{:EXPORT_FILE_NAME:} property, that name will be +used for the export. +@kindex C-c C-e b +@item C-c C-e b +Export as HTML file and immediately open it with a browser. +@kindex C-c C-e H +@item C-c C-e H +Export to a temporary buffer, do not create a file. +@kindex C-c C-e R +@item C-c C-e R +Export the active region to a temporary buffer. With prefix arg, do not +produce file header and foot, but just the plain HTML section for the +region. This is good for cut-and-paste operations. +@kindex C-c C-e v h +@kindex C-c C-e v b +@kindex C-c C-e v H +@kindex C-c C-e v R +@item C-c C-e v h +@item C-c C-e v b +@item C-c C-e v H +@item C-c C-e v R +Export only the visible part of the document. +@item M-x org-export-region-as-html +Convert the region to HTML under the assumption that it was org-mode +syntax before. This is a global command that can be invoked in any +buffer. +@item M-x org-replace-region-by-HTML +Replace the active region (assumed to be in Org-mode syntax) by HTML +code. +@end table + +@cindex headline levels, for exporting +In the exported version, the first 3 outline levels will become +headlines, defining a general document structure. Additional levels +will be exported as itemized lists. If you want that transition to occur +at a different level, specify it with a prefix argument. For example, + +@example +@kbd{C-2 C-c C-e b} +@end example + +@noindent +creates two levels of headings and does the rest as items. + +@node Quoting HTML tags, Links, HTML Export commands, HTML export +@subsection Quoting HTML tags + +Plain @samp{<} and @samp{>} are always transformed to @samp{<} and +@samp{>} in HTML export. If you want to include simple HTML tags +which should be interpreted as such, mark them with @samp{@@} as in +@samp{@@bold text@@}. Note that this really works only for +simple tags. For more extensive HTML that should be copied verbatim to +the exported file use either + +@example +#+HTML: Literal HTML code for export +@end example + +@noindent or + +@example +#+BEGIN_HTML +All lines between these markers are exported literally +#+END_HTML +@end example + + +@node Links, Images, Quoting HTML tags, HTML export +@subsection Links + +@cindex links, in HTML export +@cindex internal links, in HTML export +@cindex external links, in HTML export +Internal links (@pxref{Internal links}) will continue to work in HTML +files only if they match a dedicated @samp{<>}. Automatic links +created by radio targets (@pxref{Radio targets}) will also work in the +HTML file. Links to external files will still work if the HTML file is +in the same directory as the Org-mode file. Links to other @file{.org} +files will be translated into HTML links under the assumption that an +HTML version also exists of the linked file. For information related to +linking files while publishing them to a publishing directory see +@ref{Publishing links}. + +@node Images, CSS support, Links, HTML export +@subsection Images + +@cindex images, inline in HTML +@cindex inlining images in HTML +HTML export can inline images given as links in the Org-mode file, and +it can make an image the clickable part of a link. By +default@footnote{but see the variable +@code{org-export-html-inline-images}}, images are inlined if a link does +not have a description. So @samp{[[file:myimg.jpg]]} will be inlined, +while @samp{[[file:myimg.jpg][the image]]} will just produce a link +@samp{the image} that points to the image. If the description part +itself is a @code{file:} link or a @code{http:} URL pointing to an +image, this image will be inlined and activated so that clicking on the +image will activate the link. For example, to include a thumbnail that +will link to a high resolution version of the image, you could use: + +@example +[[file:highres.jpg][file:thumb.jpg]] +@end example + +@noindent +and you could use @code{http} addresses just as well. + +@node CSS support, , Images, HTML export +@subsection CSS support + +You can also give style information for the exported file. The HTML +exporter assigns the following CSS classes to appropriate parts of the +document - your style specifications may change these: +@example +.todo @r{TODO keywords} +.done @r{the DONE keyword} +.timestamp @r{time stamp} +.timestamp-kwd @r{keyword associated with a time stamp, like SCHEDULED} +.tag @r{tag in a headline} +.target @r{target for links} +@end example + +The default style specification can be configured through the option +@code{org-export-html-style}. If you want to use a file-local style, +you may use file variables, best wrapped into a COMMENT section at the +end of the outline tree. For example@footnote{Under Emacs 21, the +continuation lines for a variable value should have no @samp{#} at the +start of the line.}: + +@example +* COMMENT html style specifications + +# Local Variables: +# org-export-html-style: " " +# End: +@end example + +Remember to execute @kbd{M-x normal-mode} after changing this to make +the new style visible to Emacs. This command restarts org-mode for the +current buffer and forces Emacs to re-evaluate the local variables +section in the buffer. + +@c FIXME: More about header and footer styles +@c FIXME: Talk about links and targets. + +@node LaTeX export, XOXO export, HTML export, Exporting +@section LaTeX export +@cindex LaTeX export + +Org-mode contains a La@TeX{} exporter written by Bastien Guerry. + +@menu +* LaTeX export commands:: How to invoke LaTeX export +* Quoting LaTeX code:: Incorporating literal LaTeX code +* Sectioning structure:: +@end menu + +@node LaTeX export commands, Quoting LaTeX code, LaTeX export, LaTeX export +@subsection LaTeX export commands + +@table @kbd +@kindex C-c C-e l +@item C-c C-e l +Export as La@TeX{} file @file{myfile.tex}. +@kindex C-c C-e L +@item C-c C-e L +Export to a temporary buffer, do not create a file. +@kindex C-c C-e v l +@kindex C-c C-e v L +@item C-c C-e v l +@item C-c C-e v L +Export only the visible part of the document. +@item M-x org-export-region-as-latex +Convert the region to La@TeX{} under the assumption that it was org-mode +syntax before. This is a global command that can be invoked in any +buffer. +@item M-x org-replace-region-by-latex +Replace the active region (assumed to be in Org-mode syntax) by La@TeX{} +code. +@end table + +@cindex headline levels, for exporting +In the exported version, the first 3 outline levels will become +headlines, defining a general document structure. Additional levels +will be exported as description lists. The exporter can ignore them or +convert them to a custom string depending on +@code{org-latex-low-levels}. + +If you want that transition to occur at a different level, specify it +with a prefix argument. For example, + +@example +@kbd{C-2 C-c C-e l} +@end example + +@noindent +creates two levels of headings and does the rest as items. + +@node Quoting LaTeX code, Sectioning structure, LaTeX export commands, LaTeX export +@subsection Quoting LaTeX code + +Embedded La@TeX{} as described in @ref{Embedded LaTeX} will be correctly +inserted into the La@TeX{} file. Forthermore, you can add special code +that should only be present in La@TeX{} export with the following +constructs: + +@example +#+LaTeX: Literal LaTeX code for export +@end example + +@noindent or + +@example +#+BEGIN_LaTeX +All lines between these markers are exported literally +#+END_LaTeX +@end example + + + +@node Sectioning structure, , Quoting LaTeX code, LaTeX export +@subsection Sectioning structure +@cindex LaTeX class +@cindex LaTeX sectioning structure + +By default, the La@TeX{} output uses the class @code{article}. + +You can change this globally by setting a different value for +@code{org-export-latex-default-class} or locally by adding an option +like @code{#+LaTeX_CLASS: myclass} in your file. The class should be +listed in @code{org-export-latex-classes}, where you can also define the +sectioning structure for each class. + + +@node XOXO export, iCalendar export, LaTeX export, Exporting +@section XOXO export +@cindex XOXO export + +Org-mode contains an exporter that produces XOXO-style output. +Currently, this exporter only handles the general outline structure and +does not interpret any additional Org-mode features. + +@table @kbd +@kindex C-c C-e x +@item C-c C-e x +Export as XOXO file @file{myfile.html}. +@kindex C-c C-e v +@item C-c C-e v x +Export only the visible part of the document. +@end table + +@node iCalendar export, Text interpretation, XOXO export, Exporting +@section iCalendar export +@cindex iCalendar export + +Some people like to use Org-mode for keeping track of projects, but +still prefer a standard calendar application for anniversaries and +appointments. In this case it can be useful to have deadlines and +other time-stamped items in Org-mode files show up in the calendar +application. Org-mode can export calendar information in the standard +iCalendar format. If you also want to have TODO entries included in the +export, configure the variable @code{org-icalendar-include-todo}. + +@table @kbd +@kindex C-c C-e i +@item C-c C-e i +Create iCalendar entries for the current file and store them in the same +directory, using a file extension @file{.ics}. +@kindex C-c C-e I +@item C-c C-e I +Like @kbd{C-c C-e i}, but do this for all files in +@code{org-agenda-files}. For each of these files, a separate iCalendar +file will be written. +@kindex C-c C-e c +@item C-c C-e c +Create a single large iCalendar file from all files in +@code{org-agenda-files} and write it to the file given by +@code{org-combined-agenda-icalendar-file}. +@end table + +The export will honor SUMMARY, DESCRIPTION and LOCATION properties if +the selected entries have them. If not, the summary will be derived +from the headline, and the description from the body (limited to +@code{org-icalendar-include-body} characters). + +How this calendar is best read and updated, depends on the application +you are using. The FAQ covers this issue. + + +@node Text interpretation, , iCalendar export, Exporting +@section Text interpretation by the exporter + +The exporter backends interpret additional structure in the Org-mode file +in order to produce better output. + +@menu +* Comment lines:: Some lines will not be exported +* Initial text:: Text before the first headline +* Footnotes:: Numbers like [1] +* Quoted examples:: Inserting quoted chnuks of text +* Enhancing text:: Subscripts, symbols and more +* Export options:: How to influence the export settings +@end menu + +@node Comment lines, Initial text, Text interpretation, Text interpretation +@subsection Comment lines +@cindex comment lines +@cindex exporting, not + +Lines starting with @samp{#} in column zero are treated as comments +and will never be exported. Also entire subtrees starting with the +word @samp{COMMENT} will never be exported. + +@table @kbd +@kindex C-c ; +@item C-c ; +Toggle the COMMENT keyword at the beginning of an entry. +@end table + +@node Initial text, Footnotes, Comment lines, Text interpretation +@subsection Text before the first headline + +Org-mode normally ignores any text before the first headline when +exporting, leaving this region for internal links to speed up navigation +etc. However, in publishing-oriented files, you might want to have some +text before the first headline, like a small introduction, special HTML +code with a navigation bar, etc. You can ask to have this part of the +file exported as well by setting the variable +@code{org-export-skip-text-before-1st-heading} to @code{nil}. On a +per-file basis, you can get the same effect with + +@example +#+OPTIONS: skip:nil +@end example + +The text before the first headline will be fully processed +(@pxref{Enhancing text}), and the first non-comment line becomes the +title of the exported document. If you need to include literal HTML, +use the special constructs described in @ref{Quoting HTML tags}. The +table of contents is normally inserted directly before the first +headline of the file. If you would like to get it to a different +location, insert the string @code{[TABLE-OF-CONTENTS]} on a line by +itself at the desired location. + +Finally, if you want to use the space before the first headline for +internal purposes, but @emph{still} want to place something before the +first headline when exporting the file, you can use the @code{#+TEXT} +construct: + +@example +#+OPTIONS: skip:t +#+TEXT: This text will go before the *first* headline. +#+TEXT: We place the table of contents here: +#+TEXT: [TABLE-OF-CONTENTS] +#+TEXT: This goes between the table of contents and the first headline +@end example + +@node Footnotes, Quoted examples, Initial text, Text interpretation +@subsection Footnotes +@cindex footnotes +@cindex @file{footnote.el} + +Numbers in square brackets are treated as footnotes, so that you can use +the Emacs package @file{footnote.el} to create footnotes. For example: + +@example +The org-mode homepage[1] clearly needs help from +a good web designer. + +[1] The link is: http://orgmode.org +@end example + +@noindent +@kindex C-c ! +Note that the @file{footnote} package uses @kbd{C-c !} to invoke its +commands. This binding conflicts with the org-mode command for +inserting inactive time stamps. You could use the variable +@code{footnote-prefix} to switch footnotes commands to another key. Or, +if you are too used to this binding, you could use +@code{org-replace-disputed-keys} and @code{org-disputed-keys} to change +the settings in Org-mode. + +@node Quoted examples, Enhancing text, Footnotes, Text interpretation +@subsection Quoted examples +@cindex quoted examples +@cindex examples, quoted +@cindex text, fixed width +@cindex fixed width text + +When writing technical documents, you often need to insert examples that +are not further interpreted by Org-mode. For historical reasons, there +are several ways to do this: + +@itemize @bullet +@item +If a headline starts with the word @samp{QUOTE}, the text below the +headline will be typeset as fixed-width, to allow quoting of computer +codes etc. +@item +Lines starting with @samp{:} are also typeset in fixed-width font. +@table @kbd +@kindex C-c : +@item C-c : +Toggle fixed-width for entry (QUOTE) or region, see below. +@end table +@item +Finally, text between +@example +#+BEGIN_EXAMPLE +quoted text +#+END_EXAMPLE +@end example +will also be exported in this way. +@end itemize + + +@node Enhancing text, Export options, Quoted examples, Text interpretation +@subsection Enhancing text for export +@cindex enhancing text +@cindex richer text + +Some of the export backends of Org-mode allow for sophisticated text +formatting, this is true in particular for the HTML and La@TeX{} +backends. Org-mode has a number of typing conventions that allow to +produce a richly formatted output. + +@itemize @bullet + +@cindex hand-formatted lists +@cindex lists, hand-formatted +@item +Plain lists @samp{-}, @samp{*} or @samp{+} as bullet, or with @samp{1.} +or @samp{2)} as enumerator will be recognized and transformed if the +backend supports lists. See @xref{Plain lists}. + +@cindex underlined text +@cindex bold text +@cindex italic text +@cindex verbatim text +@item +You can make words @b{*bold*}, @i{/italic/}, _underlined_, @code{=code=} +and @code{~verbatim~}, and, if you must, @samp{+strikethrough+}. Text +in the code and verbatim string is not processed for org-mode specific +syntax, it is exported verbatim. + +@cindex horizontal rules, in exported files +@item +A line consisting of only dashes, and at least 5 of them, will be +exported as a horizontal line (@samp{
} in HTML). + +@cindex LaTeX fragments, export +@cindex TeX macros, export +@item +Many @TeX{} macros and entire La@TeX{} fragments are converted into HTML +entities or images (@pxref{Embedded LaTeX}). + +@cindex tables, export +@item +Tables are transformed into native tables under the exporter, if the +export backend supports this. Data fields before the first horizontal +separator line will be formatted as table header fields. + +@cindex fixed width +@item +If a headline starts with the word @samp{QUOTE}, the text below the +headline will be typeset as fixed-width, to allow quoting of computer +codes etc. Lines starting with @samp{:} are also typeset in fixed-width +font. +@table @kbd +@kindex C-c : +@item C-c : +Toggle fixed-width for entry (QUOTE) or region, see below. +@end table +Finally, text between +@example +#+BEGIN_EXAMPLE +quoted text +#+END_EXAMPLE +@end example +will also be exported in this way. + +@cindex linebreak, forced +@item +A double backslash @emph{at the end of a line} enforces a line break at +this position. + +@cindex HTML entities, LaTeX entities +@item +Strings like @code{\alpha} will be exported as @code{α}, in the +HTML output. These strings are exported as @code{$\alpha$} in the +La@TeX{} output. Similarly, @code{\nbsp} will become @code{ } in +HTML and in La@TeX{}. This applies for a long list of entities, see +the variable @code{org-html-entities} for the complete list. +@c FIXME +@end itemize + +If these conversions conflict with your habits of typing ASCII text, +they can all be turned off with corresponding variables. See the +customization group @code{org-export-general}, and the following section +which explains how to set export options with special lines in a +buffer. + + +@node Export options, , Enhancing text, Text interpretation +@subsection Export options +@cindex options, for export + +@cindex completion, of option keywords +The exporter recognizes special lines in the buffer which provide +additional information. These lines may be put anywhere in the file. +The whole set of lines can be inserted into the buffer with @kbd{C-c +C-e t}. For individual lines, a good way to make sure the keyword is +correct is to type @samp{#+} and then use @kbd{M-@key{TAB}} completion +(@pxref{Completion}). + +@table @kbd +@kindex C-c C-e t +@item C-c C-e t +Insert template with export options, see example below. +@end table + +@example +#+TITLE: the title to be shown (default is the buffer name) +#+AUTHOR: the author (default taken from @code{user-full-name}) +#+DATE: A date, fixed, of a format string for @code{format-time-string} +#+EMAIL: his/her email address (default from @code{user-mail-address}) +#+LANGUAGE: language for HTML, e.g. @samp{en} (@code{org-export-default-language}) +#+TEXT: Some descriptive text to be inserted at the beginning. +#+TEXT: Several lines may be given. +#+OPTIONS: H:2 num:t toc:t \n:nil @@:t ::t |:t ^:t f:t TeX:t ... +@end example + +@noindent +The OPTIONS line is a compact form to specify export settings. Here +you can: +@cindex headline levels +@cindex section-numbers +@cindex table of contents +@cindex linebreak preservation +@cindex quoted HTML tags +@cindex fixed-width sections +@cindex tables +@cindex @TeX{}-like syntax for sub- and superscripts +@cindex footnotes +@cindex special strings +@cindex emphasized text +@cindex @TeX{} macros +@cindex La@TeX{} fragments +@cindex author info, in export +@cindex time info, in export +@example +H: @r{set the number of headline levels for export} +num: @r{turn on/off section-numbers} +toc: @r{turn on/off table of contents, or set level limit (integer)} +\n: @r{turn on/off linebreak-preservation} +@@: @r{turn on/off quoted HTML tags} +:: @r{turn on/off fixed-width sections} +|: @r{turn on/off tables} +^: @r{turn on/off @TeX{}-like syntax for sub- and superscripts. If} + @r{you write "^:@{@}", @code{a_@{b@}} will be interpreted, but} + @r{the simple @code{a_b} will be left as it is.} +-: @r{turn on/off conversion of special strings.} +f: @r{turn on/off foototes like this[1].} +*: @r{turn on/off emphasized text (bold, italic, underlined)} +TeX: @r{turn on/off simple @TeX{} macros in plain text} +LaTeX: @r{turn on/off La@TeX{} fragments} +skip: @r{turn on/off skipping the text before the first heading} +author: @r{turn on/off inclusion of author name/email into exported file} +timestamp: @r{turn on/off inclusion creation time into exported file} +d: @r{turn on/off inclusion of drawers} +@end example + +These options take effect in both the HTML and La@TeX{} export, except +for @code{TeX} and @code{LaTeX}, which are respectively @code{t} and +@code{nil} for the La@TeX{} export. + +@node Publishing, Miscellaneous, Exporting, Top +@chapter Publishing +@cindex publishing + +Org-mode includes@footnote{@file{org-publish.el} is not distributed with +Emacs 21, if you are still using Emacs 21, you need you need to download +this file separately.} a publishing management system that allows you to +configure automatic HTML conversion of @emph{projects} composed of +interlinked org files. This system is called @emph{org-publish}. You can +also configure org-publish to automatically upload your exported HTML +pages and related attachments, such as images and source code files, to +a web server. Org-publish turns org-mode into a web-site authoring tool. + +You can also use Org-publish to convert files into La@TeX{}, or even +combine HTML and La@TeX{} conversion so that files are available in both +formats on the server@footnote{Since La@TeX{} files on a server are not +that helpful, you surely want to perform further conversion on them -- +e.g. convert them to @code{PDF} format.}. + +Org-publish has been contributed to Org-mode by David O'Toole. + +@menu +* Configuration:: Defining projects +* Sample configuration:: Example projects +* Triggering publication:: Publication commands +@end menu + +@node Configuration, Sample configuration, Publishing, Publishing +@section Configuration + +Publishing needs significant configuration to specify files, destination +and many other properties of a project. + +@menu +* Project alist:: The central configuration variable +* Sources and destinations:: From here to there +* Selecting files:: What files are part of the project? +* Publishing action:: Setting the function doing the publishing +* Publishing options:: Tweaking HTML export +* Publishing links:: Which links keep working after publishing? +* Project page index:: Publishing a list of project files +@end menu + +@node Project alist, Sources and destinations, Configuration, Configuration +@subsection The variable @code{org-publish-project-alist} +@cindex org-publish-project-alist +@cindex projects, for publishing + +Org-publish is configured almost entirely through setting the value of +one variable, called @code{org-publish-project-alist}. +Each element of the list configures one project, and may be in one of +the two following forms: + +@lisp +("project-name" :property value :property value ...) + +@r{or} + +("project-name" :components ("project-name" "project-name" ...)) + +@end lisp + +In both cases, projects are configured by specifying property values. +A project defines the set of files that will be published, as well as +the publishing configuration to use when publishing those files. When +a project takes the second form listed above, the individual members +of the ``components'' property are taken to be components of the +project, which group together files requiring different publishing +options. When you publish such a ``meta-project'' all the components +will also publish. + +@node Sources and destinations, Selecting files, Project alist, Configuration +@subsection Sources and destinations for files +@cindex directories, for publishing + +Most properties are optional, but some should always be set. In +particular, org-publish needs to know where to look for source files, +and where to put published files. + +@multitable @columnfractions 0.3 0.7 +@item @code{:base-directory} +@tab Directory containing publishing source files +@item @code{:publishing-directory} +@tab Directory (possibly remote) where output files will be published. +@item @code{:preparation-function} +@tab Function called before starting publishing process, for example to +run @code{make} for updating files to be published. +@end multitable +@noindent + +@node Selecting files, Publishing action, Sources and destinations, Configuration +@subsection Selecting files +@cindex files, selecting for publishing + +By default, all files with extension @file{.org} in the base directory +are considered part of the project. This can be modified by setting the +properties +@multitable @columnfractions 0.25 0.75 +@item @code{:base-extension} +@tab Extension (without the dot!) of source files. This actually is a +regular expression. + +@item @code{:exclude} +@tab Regular expression to match file names that should not be +published, even though they have been selected on the basis of their +extension. + +@item @code{:include} +@tab List of files to be included regardless of @code{:base-extension} +and @code{:exclude}. +@end multitable + +@node Publishing action, Publishing options, Selecting files, Configuration +@subsection Publishing Action +@cindex action, for publishing + +Publishing means that a file is copied to the destination directory and +possibly transformed in the process. The default transformation is to +export Org-mode files as HTML files, and this is done by the function +@code{org-publish-org-to-html} which calls the HTML exporter +(@pxref{HTML export}). But you also can publish your files in La@TeX{} by +using the function @code{org-publish-org-to-latex} instead. Other files +like images only need to be copied to the publishing destination. For +non-Org-mode files, you need to specify the publishing function. + + +@multitable @columnfractions 0.3 0.7 +@item @code{:publishing-function} +@tab Function executing the publication of a file. This may also be a +list of functions, which will all be called in turn. +@end multitable + +The function must accept two arguments: a property list containing at +least a @code{:publishing-directory} property, and the name of the file +to be published. It should take the specified file, make the necessary +transformation (if any) and place the result into the destination folder. +You can write your own publishing function, but @code{org-publish} +provides one for attachments (files that only need to be copied): +@code{org-publish-attachment}. + +@node Publishing options, Publishing links, Publishing action, Configuration +@subsection Options for the HTML/LaTeX exporters +@cindex options, for publishing + +The property list can be used to set many export options for the HTML +and La@TeX{} exporters. In most cases, these properties correspond to user +variables in Org-mode. The table below lists these properties along +with the variable they belong to. See the documentation string for the +respective variable for details. + +@multitable @columnfractions 0.3 0.7 +@item @code{:language} @tab @code{org-export-default-language} +@item @code{:headline-levels} @tab @code{org-export-headline-levels} +@item @code{:section-numbers} @tab @code{org-export-with-section-numbers} +@item @code{:table-of-contents} @tab @code{org-export-with-toc} +@item @code{:archived-trees} @tab @code{org-export-with-archived-trees} +@item @code{:emphasize} @tab @code{org-export-with-emphasize} +@item @code{:sub-superscript} @tab @code{org-export-with-sub-superscripts} +@item @code{:special-strings} @tab @code{org-export-with-special-strings} +@item @code{:TeX-macros} @tab @code{org-export-with-TeX-macros} +@item @code{:LaTeX-fragments} @tab @code{org-export-with-LaTeX-fragments} +@item @code{:fixed-width} @tab @code{org-export-with-fixed-width} +@item @code{:timestamps} .@tab @code{org-export-with-timestamps} +@item @code{:tags} .@tab @code{org-export-with-tags} +@item @code{:tables} @tab @code{org-export-with-tables} +@item @code{:table-auto-headline} @tab @code{org-export-highlight-first-table-line} +@item @code{:style} @tab @code{org-export-html-style} +@item @code{:convert-org-links} @tab @code{org-export-html-link-org-files-as-html} +@item @code{:inline-images} @tab @code{org-export-html-inline-images} +@item @code{:expand-quoted-html} @tab @code{org-export-html-expand} +@item @code{:timestamp} @tab @code{org-export-html-with-timestamp} +@item @code{:publishing-directory} @tab @code{org-export-publishing-directory} +@item @code{:preamble} @tab @code{org-export-html-preamble} +@item @code{:postamble} @tab @code{org-export-html-postamble} +@item @code{:auto-preamble} @tab @code{org-export-html-auto-preamble} +@item @code{:auto-postamble} @tab @code{org-export-html-auto-postamble} +@item @code{:author} @tab @code{user-full-name} +@item @code{:email} @tab @code{user-mail-address} +@end multitable + +If you use several email addresses, separate them by a semi-column. + +Most of the @code{org-export-with-*} variables have the same effect in +both HTML and La@TeX{} exporters, except for @code{:TeX-macros} and +@code{:LaTeX-fragments}, respectively @code{nil} and @code{t} in the +La@TeX{} export. + +When a property is given a value in @code{org-publish-project-alist}, +its setting overrides the value of the corresponding user variable (if +any) during publishing. Options set within a file (@pxref{Export +options}), however, override everything. + +@node Publishing links, Project page index, Publishing options, Configuration +@subsection Links between published files +@cindex links, publishing + +To create a link from one Org-mode file to another, you would use +something like @samp{[[file:foo.org][The foo]]} or simply +@samp{file:foo.org.} (@pxref{Hyperlinks}). Upon publishing this link +becomes a link to @file{foo.html}. In this way, you can interlink the +pages of your "org web" project and the links will work as expected when +you publish them to HTML. + +You may also link to related files, such as images. Provided you are +careful with relative pathnames, and provided you have also configured +@code{org-publish} to upload the related files, these links will work +too. @ref{Complex example} for an example of this usage. + +Sometime an Org-mode file to be published may contain links that are +only valid in your production environment, but not in the publishing +location. In this case, use the property + +@multitable @columnfractions 0.4 0.6 +@item @code{:link-validation-function} +@tab Function to validate links +@end multitable + +@noindent +to define a function for checking link validity. This function must +accept two arguments, the file name and a directory relative to which +the file name is interpreted in the production environment. If this +function returns @code{nil}, then the HTML generator will only insert a +description into the HTML file, but no link. One option for this +function is @code{org-publish-validate-link} which checks if the given +file is part of any project in @code{org-publish-project-alist}. + +@node Project page index, , Publishing links, Configuration +@subsection Project page index +@cindex index, of published pages + +The following properties may be used to control publishing of an +index of files or summary page for a given project. + +@multitable @columnfractions 0.25 0.75 +@item @code{:auto-index} +@tab When non-nil, publish an index during org-publish-current-project or +org-publish-all. + +@item @code{:index-filename} +@tab Filename for output of index. Defaults to @file{index.org} (which +becomes @file{index.html}). + +@item @code{:index-title} +@tab Title of index page. Defaults to name of file. + +@item @code{:index-function} +@tab Plugin function to use for generation of index. +Defaults to @code{org-publish-org-index}, which generates a plain list +of links to all files in the project. +@end multitable + +@node Sample configuration, Triggering publication, Configuration, Publishing +@section Sample configuration + +Below we provide two example configurations. The first one is a simple +project publishing only a set of Org-mode files. The second example is +more complex, with a multi-component project. + +@menu +* Simple example:: One-component publishing +* Complex example:: A multi-component publishing example +@end menu + +@node Simple example, Complex example, Sample configuration, Sample configuration +@subsection Example: simple publishing configuration + +This example publishes a set of Org-mode files to the @file{public_html} +directory on the local machine. + +@lisp +(setq org-publish-project-alist + '(("org" + :base-directory "~/org/" + :publishing-directory "~/public_html" + :section-numbers nil + :table-of-contents nil + :style ""))) +@end lisp + +@node Complex example, , Simple example, Sample configuration +@subsection Example: complex publishing configuration + +This more complicated example publishes an entire website, including +org files converted to HTML, image files, emacs lisp source code, and +stylesheets. The publishing-directory is remote and private files are +excluded. + +To ensure that links are preserved, care should be taken to replicate +your directory structure on the web server, and to use relative file +paths. For example, if your org files are kept in @file{~/org} and your +publishable images in @file{~/images}, you'd link to an image with +@c +@example +file:../images/myimage.png +@end example +@c +On the web server, the relative path to the image should be the +same. You can accomplish this by setting up an "images" folder in the +right place on the webserver, and publishing images to it. + +@lisp +(setq org-publish-project-alist + '(("orgfiles" + :base-directory "~/org/" + :base-extension "org" + :publishing-directory "/ssh:user@@host:~/html/notebook/" + :publishing-function org-publish-org-to-html + :exclude "PrivatePage.org" ;; regexp + :headline-levels 3 + :section-numbers nil + :table-of-contents nil + :style "" + :auto-preamble t + :auto-postamble nil) + + ("images" + :base-directory "~/images/" + :base-extension "jpg\\|gif\\|png" + :publishing-directory "/ssh:user@@host:~/html/images/" + :publishing-function org-publish-attachment) + + ("other" + :base-directory "~/other/" + :base-extension "css\\|el" + :publishing-directory "/ssh:user@@host:~/html/other/" + :publishing-function org-publish-attachment) + ("website" :components ("orgfiles" "images" "other")))) +@end lisp + +@node Triggering publication, , Sample configuration, Publishing +@section Triggering publication + +Once org-publish is properly configured, you can publish with the +following functions: + +@table @kbd +@item C-c C-e C +Prompt for a specific project and publish all files that belong to it. +@item C-c C-e P +Publish the project containing the current file. +@item C-c C-e F +Publish only the current file. +@item C-c C-e A +Publish all projects. +@end table + +Org uses timestamps to track when a file has changed. The above +functions normally only publish changed files. You can override this and +force publishing of all files by giving a prefix argument. + +@node Miscellaneous, Extensions and Hacking, Publishing, Top +@chapter Miscellaneous + +@menu +* Completion:: M-TAB knows what you need +* Customization:: Adapting Org-mode to your taste +* In-buffer settings:: Overview of the #+KEYWORDS +* The very busy C-c C-c key:: When in doubt, press C-c C-c +* Clean view:: Getting rid of leading stars in the outline +* TTY keys:: Using Org-mode on a tty +* Interaction:: Other Emacs packages +* Bugs:: Things which do not work perfectly +@end menu + +@node Completion, Customization, Miscellaneous, Miscellaneous +@section Completion +@cindex completion, of @TeX{} symbols +@cindex completion, of TODO keywords +@cindex completion, of dictionary words +@cindex completion, of option keywords +@cindex completion, of tags +@cindex completion, of property keys +@cindex completion, of link abbreviations +@cindex @TeX{} symbol completion +@cindex TODO keywords completion +@cindex dictionary word completion +@cindex option keyword completion +@cindex tag completion +@cindex link abbreviations, completion of + +Org-mode supports in-buffer completion. This type of completion does +not make use of the minibuffer. You simply type a few letters into +the buffer and use the key to complete text right there. + +@table @kbd +@kindex M-@key{TAB} +@item M-@key{TAB} +Complete word at point +@itemize @bullet +@item +At the beginning of a headline, complete TODO keywords. +@item +After @samp{\}, complete @TeX{} symbols supported by the exporter. +@item +After @samp{*}, complete headlines in the current buffer so that they +can be used in search links like @samp{[[*find this headline]]}. +@item +After @samp{:} in a headline, complete tags. The list of tags is taken +from the variable @code{org-tag-alist} (possibly set through the +@samp{#+TAGS} in-buffer option, @pxref{Setting tags}), or it is created +dynamically from all tags used in the current buffer. +@item +After @samp{:} and not in a headline, complete property keys. The list +of keys is constructed dynamically from all keys used in the current +buffer. +@item +After @samp{[}, complete link abbreviations (@pxref{Link abbreviations}). +@item +After @samp{#+}, complete the special keywords like @samp{TYP_TODO} or +@samp{OPTIONS} which set file-specific options for Org-mode. When the +option keyword is already complete, pressing @kbd{M-@key{TAB}} again +will insert example settings for this keyword. +@item +In the line after @samp{#+STARTUP: }, complete startup keywords, +i.e. valid keys for this line. +@item +Elsewhere, complete dictionary words using ispell. +@end itemize +@end table + +@node Customization, In-buffer settings, Completion, Miscellaneous +@section Customization +@cindex customization +@cindex options, for customization +@cindex variables, for customization + +There are more than 180 variables that can be used to customize +Org-mode. For the sake of compactness of the manual, I am not +describing the variables here. A structured overview of customization +variables is available with @kbd{M-x org-customize}. Or select +@code{Browse Org Group} from the @code{Org->Customization} menu. Many +settings can also be activated on a per-file basis, by putting special +lines into the buffer (@pxref{In-buffer settings}). + +@node In-buffer settings, The very busy C-c C-c key, Customization, Miscellaneous +@section Summary of in-buffer settings +@cindex in-buffer settings +@cindex special keywords + +Org-mode uses special lines in the buffer to define settings on a +per-file basis. These lines start with a @samp{#+} followed by a +keyword, a colon, and then individual words defining a setting. Several +setting words can be in the same line, but you can also have multiple +lines for the keyword. While these settings are described throughout +the manual, here is a summary. After changing any of those lines in the +buffer, press @kbd{C-c C-c} with the cursor still in the line to +activate the changes immediately. Otherwise they become effective only +when the file is visited again in a new Emacs session. + +@table @kbd +@item #+ARCHIVE: %s_done:: +This line sets the archive location for the agenda file. It applies for +all subsequent lines until the next @samp{#+ARCHIVE} line, or the end +of the file. The first such line also applies to any entries before it. +The corresponding variable is @code{org-archive-location}. +@item #+CATEGORY: +This line sets the category for the agenda file. The category applies +for all subsequent lines until the next @samp{#+CATEGORY} line, or the +end of the file. The first such line also applies to any entries before it. +@item #+COLUMNS: %25ITEM ..... +Set the default format for columns view. This format applies when +columns view is invoked in location where no @code{COLUMNS} property +applies. +@item #+CONSTANTS: name1=value1 ... +Set file-local values for constants to be used in table formulas. This +line set the local variable @code{org-table-formula-constants-local}. +The global version of this variable is +@code{org-table-formula-constants}. +@item #+DRAWERS: NAME1 ..... +Set the file-local set of drawers. The corresponding global variable is +@code{org-drawers}. +@item #+LINK: linkword replace +These lines (several are allowed) specify link abbreviations. +@xref{Link abbreviations}. The corresponding variable is +@code{org-link-abbrev-alist}. +@item #+PRIORITIES: highest lowest default +This line sets the limits and the default for the priorities. All three +must be either letters A-Z or numbers 0-9. The highest priority must +have a lower ASCII number that the lowest priority. +@item #+PROPERTY: Property_Name Value +This line sets a default inheritance value for entries in the current +buffer, most useful for specifying the allowed values of a property. +@item #+STARTUP: +This line sets options to be used at startup of Org-mode, when an +Org-mode file is being visited. The first set of options deals with the +initial visibility of the outline tree. The corresponding variable for +global default settings is @code{org-startup-folded}, with a default +value @code{t}, which means @code{overview}. +@cindex @code{overview}, STARTUP keyword +@cindex @code{content}, STARTUP keyword +@cindex @code{showall}, STARTUP keyword +@example +overview @r{top-level headlines only} +content @r{all headlines} +showall @r{no folding at all, show everything} +@end example +Then there are options for aligning tables upon visiting a file. This +is useful in files containing narrowed table columns. The corresponding +variable is @code{org-startup-align-all-tables}, with a default value +@code{nil}. +@cindex @code{align}, STARTUP keyword +@cindex @code{noalign}, STARTUP keyword +@example +align @r{align all tables} +noalign @r{don't align tables on startup} +@end example +Logging closing and reinstating TODO items, and clock intervals +(variables @code{org-log-done}, @code{org-log-note-clock-out}, and +@code{org-log-repeat}) can be configured using these options. +@cindex @code{logdone}, STARTUP keyword +@cindex @code{lognotedone}, STARTUP keyword +@cindex @code{nologdone}, STARTUP keyword +@cindex @code{lognoteclock-out}, STARTUP keyword +@cindex @code{nolognoteclock-out}, STARTUP keyword +@cindex @code{logrepeat}, STARTUP keyword +@cindex @code{lognoterepeat}, STARTUP keyword +@cindex @code{nologrepeat}, STARTUP keyword +@example +logdone @r{record a timestamp when an item is marked DONE} +lognotedone @r{record timestamp and a note when DONE} +nologdone @r{don't record when items are marked DONE} +logrepeat @r{record a time when reinstating a repeating item} +lognoterepeat @r{record a note when reinstating a repeating item} +nologrepeat @r{do not record when reinstating repeating item} +lognoteclock-out @r{record a note when clocking out} +nolognoteclock-out @r{don't record a note when clocking out} +@end example +Here are the options for hiding leading stars in outline headings. The +corresponding variables are @code{org-hide-leading-stars} and +@code{org-odd-levels-only}, both with a default setting @code{nil} +(meaning @code{showstars} and @code{oddeven}). +@cindex @code{hidestars}, STARTUP keyword +@cindex @code{showstars}, STARTUP keyword +@cindex @code{odd}, STARTUP keyword +@cindex @code{even}, STARTUP keyword +@example +hidestars @r{make all but one of the stars starting a headline invisible.} +showstars @r{show all stars starting a headline} +odd @r{allow only odd outline levels (1,3,...)} +oddeven @r{allow all outline levels} +@end example +To turn on custom format overlays over time stamps (variables +@code{org-put-time-stamp-overlays} and +@code{org-time-stamp-overlay-formats}), use +@cindex @code{customtime}, STARTUP keyword +@example +customtime @r{overlay custom time format} +@end example +The following options influence the table spreadsheet (variable +@code{constants-unit-system}). +@cindex @code{constcgs}, STARTUP keyword +@cindex @code{constSI}, STARTUP keyword +@example +constcgs @r{@file{constants.el} should use the c-g-s unit system} +constSI @r{@file{constants.el} should use the SI unit system} +@end example +@item #+TAGS: TAG1(c1) TAG2(c2) +These lines (several such lines are allowed) specify the valid tags in +this file, and (potentially) the corresponding @emph{fast tag selection} +keys. The corresponding variable is @code{org-tag-alist}. +@item #+TBLFM: +This line contains the formulas for the table directly above the line. +@item #+TITLE:, #+AUTHOR:, #+EMAIL:, #+LANGUAGE:, #+TEXT:, #+OPTIONS, #+DATE: +These lines provide settings for exporting files. For more details see +@ref{Export options}. +@item #+SEQ_TODO: #+TYP_TODO: +These lines set the TODO keywords and their interpretation in the +current file. The corresponding variables are @code{org-todo-keywords} +and @code{org-todo-interpretation}. +@end table + +@node The very busy C-c C-c key, Clean view, In-buffer settings, Miscellaneous +@section The very busy C-c C-c key +@kindex C-c C-c +@cindex C-c C-c, overview + +The key @kbd{C-c C-c} has many purposes in org-mode, which are all +mentioned scattered throughout this manual. One specific function of +this key is to add @emph{tags} to a headline (@pxref{Tags}). In many +other circumstances it means something like @emph{Hey Org-mode, look +here and update according to what you see here}. Here is a summary of +what this means in different contexts. + +@itemize @minus +@item +If there are highlights in the buffer from the creation of a sparse +tree, or from clock display, remove these highlights. +@item +If the cursor is in one of the special @code{#+KEYWORD} lines, this +triggers scanning the buffer for these lines and updating the +information. +@item +If the cursor is inside a table, realign the table. This command +works even if the automatic table editor has been turned off. +@item +If the cursor is on a @code{#+TBLFM} line, re-apply the formulas to +the entire table. +@item +If the cursor is inside a table created by the @file{table.el} package, +activate that table. +@item +If the current buffer is a remember buffer, close the note and file it. +With a prefix argument, file it, without further interaction, to the +default location. +@item +If the cursor is on a @code{<<>>}, update radio targets and +corresponding links in this buffer. +@item +If the cursor is in a property line or at the start or end of a property +drawer, offer property commands. +@item +If the cursor is in a plain list item with a checkbox, toggle the status +of the checkbox. +@item +If the cursor is on a numbered item in a plain list, renumber the +ordered list. +@item +If the cursor is on the @code{#+BEGIN} line of a dynamical block, the +block is updated. +@end itemize + +@node Clean view, TTY keys, The very busy C-c C-c key, Miscellaneous +@section A cleaner outline view +@cindex hiding leading stars +@cindex clean outline view + +Some people find it noisy and distracting that the Org-mode headlines +are starting with a potentially large number of stars. For example +the tree from @ref{Headlines}: + +@example +* Top level headline +** Second level +*** 3rd level + some text +*** 3rd level + more text +* Another top level headline +@end example + +@noindent +Unfortunately this is deeply ingrained into the code of Org-mode and +cannot be easily changed. You can, however, modify the display in such +a way that all leading stars become invisible and the outline more easy +to read. To do this, customize the variable +@code{org-hide-leading-stars} like this: + +@lisp +(setq org-hide-leading-stars t) +@end lisp + +@noindent +or change this on a per-file basis with one of the lines (anywhere in +the buffer) + +@example +#+STARTUP: showstars +#+STARTUP: hidestars +@end example + +@noindent +Press @kbd{C-c C-c} with the cursor in a @samp{STARTUP} line to activate +the modifications. + +With stars hidden, the tree becomes: + +@example +* Top level headline + * Second level + * 3rd level + some text + * 3rd level + more text +* Another top level headline +@end example + +@noindent +Note that the leading stars are not truly replaced by whitespace, they +are only fontified with the face @code{org-hide} that uses the +background color as font color. If you are not using either white or +black background, you may have to customize this face to get the wanted +effect. Another possibility is to set this font such that the extra +stars are @i{almost} invisible, for example using the color +@code{grey90} on a white background. + +Things become cleaner still if you skip all the even levels and use only +odd levels 1, 3, 5..., effectively adding two stars to go from one +outline level to the next: + +@example +* Top level headline + * Second level + * 3rd level + some text + * 3rd level + more text +* Another top level headline +@end example + +@noindent +In order to make the structure editing and export commands handle this +convention correctly, use + +@lisp +(setq org-odd-levels-only t) +@end lisp + +@noindent +or set this on a per-file basis with one of the following lines (don't +forget to press @kbd{C-c C-c} with the cursor in the startup line to +activate changes immediately). + +@example +#+STARTUP: odd +#+STARTUP: oddeven +@end example + +You can convert an Org-mode file from single-star-per-level to the +double-star-per-level convention with @kbd{M-x org-convert-to-odd-levels +RET} in that file. The reverse operation is @kbd{M-x +org-convert-to-oddeven-levels}. + +@node TTY keys, Interaction, Clean view, Miscellaneous +@section Using org-mode on a tty +@cindex tty keybindings + +Because Org-mode contains a large number of commands, by default much of +Org-mode's core commands are bound to keys that are generally not +accessible on a tty, such as the cursor keys (@key{left}, @key{right}, +@key{up}, @key{down}), @key{TAB} and @key{RET}, in particular when used +together with modifiers like @key{Meta} and/or @key{Shift}. To access +these commands on a tty when special keys are unavailable, the following +alternative bindings can be used. The tty bindings below will likely be +more cumbersome; you may find for some of the bindings below that a +customized work-around suits you better. For example, changing a time +stamp is really only fun with @kbd{S-@key{cursor}} keys, whereas on a +tty you would rather use @kbd{C-c .} to re-insert the timestamp. + +@multitable @columnfractions 0.15 0.2 0.2 +@item @b{Default} @tab @b{Alternative 1} @tab @b{Alternative 2} +@item @kbd{S-@key{TAB}} @tab @kbd{C-u @key{TAB}} @tab +@item @kbd{M-@key{left}} @tab @kbd{C-c C-x l} @tab @kbd{@key{Esc} @key{left}} +@item @kbd{M-S-@key{left}} @tab @kbd{C-c C-x L} @tab +@item @kbd{M-@key{right}} @tab @kbd{C-c C-x r} @tab @kbd{@key{Esc} @key{right}} +@item @kbd{M-S-@key{right}} @tab @kbd{C-c C-x R} @tab +@item @kbd{M-@key{up}} @tab @kbd{C-c C-x u} @tab @kbd{@key{Esc} @key{up}} +@item @kbd{M-S-@key{up}} @tab @kbd{C-c C-x U} @tab +@item @kbd{M-@key{down}} @tab @kbd{C-c C-x d} @tab @kbd{@key{Esc} @key{down}} +@item @kbd{M-S-@key{down}} @tab @kbd{C-c C-x D} @tab +@item @kbd{S-@key{RET}} @tab @kbd{C-c C-x c} @tab +@item @kbd{M-@key{RET}} @tab @kbd{C-c C-x m} @tab @kbd{@key{Esc} @key{RET}} +@item @kbd{M-S-@key{RET}} @tab @kbd{C-c C-x M} @tab +@item @kbd{S-@key{left}} @tab @kbd{C-c @key{left}} @tab +@item @kbd{S-@key{right}} @tab @kbd{C-c @key{right}} @tab +@item @kbd{S-@key{up}} @tab @kbd{C-c @key{up}} @tab +@item @kbd{S-@key{down}} @tab @kbd{C-c @key{down}} @tab +@item @kbd{C-S-@key{left}} @tab @kbd{C-c C-x @key{left}} @tab +@item @kbd{C-S-@key{right}} @tab @kbd{C-c C-x @key{right}} @tab +@end multitable + +@node Interaction, Bugs, TTY keys, Miscellaneous +@section Interaction with other packages +@cindex packages, interaction with other +Org-mode lives in the world of GNU Emacs and interacts in various ways +with other code out there. + +@menu +* Cooperation:: Packages Org-mode cooperates with +* Conflicts:: Packages that lead to conflicts +@end menu + +@node Cooperation, Conflicts, Interaction, Interaction +@subsection Packages that Org-mode cooperates with + +@table @asis +@cindex @file{calc.el} +@item @file{calc.el} by Dave Gillespie +Org-mode uses the calc package for implementing spreadsheet +functionality in its tables (@pxref{The spreadsheet}). Org-mode +checks for the availability of calc by looking for the function +@code{calc-eval} which should be autoloaded in your setup if calc has +been installed properly. As of Emacs 22, calc is part of the Emacs +distribution. Another possibility for interaction between the two +packages is using calc for embedded calculations. @xref{Embedded Mode, +, Embedded Mode, calc, GNU Emacs Calc Manual}. +@cindex @file{constants.el} +@item @file{constants.el} by Carsten Dominik +In a table formula (@pxref{The spreadsheet}), it is possible to use +names for natural constants or units. Instead of defining your own +constants in the variable @code{org-table-formula-constants}, install +the @file{constants} package which defines a large number of constants +and units, and lets you use unit prefixes like @samp{M} for +@samp{Mega} etc. You will need version 2.0 of this package, available +at @url{http://www.astro.uva.nl/~dominik/Tools}. Org-mode checks for +the function @code{constants-get}, which has to be autoloaded in your +setup. See the installation instructions in the file +@file{constants.el}. +@item @file{cdlatex.el} by Carsten Dominik +@cindex @file{cdlatex.el} +Org-mode can make use of the cdlatex package to efficiently enter +La@TeX{} fragments into Org-mode files. See @ref{CDLaTeX mode}. +@item @file{imenu.el} by Ake Stenhoff and Lars Lindberg +@cindex @file{imenu.el} +Imenu allows menu access to an index of items in a file. Org-mode +supports imenu - all you need to do to get the index is the following: +@lisp +(add-hook 'org-mode-hook + (lambda () 'imenu-add-to-menubar "Imenu")) +@end lisp +By default the index is two levels deep - you can modify the depth using +the option @code{org-imenu-depth}. +@item @file{remember.el} by John Wiegley +@cindex @file{remember.el} +Org mode cooperates with remember, see @ref{Remember}. +@file{Remember.el} is not part of Emacs, find it on the web. +@item @file{speedbar.el} by Eric M. Ludlam +@cindex @file{speedbar.el} +Speedbar is a package that creates a special frame displaying files and +index items in files. Org-mode supports speedbar and allows you to +drill into Org-mode files directly from the speedbar. It also allows to +restrict the scope of agenda commands to a file or a subtree by using +the command @kbd{<} in the speedbar frame. +@cindex @file{table.el} +@item @file{table.el} by Takaaki Ota +@kindex C-c C-c +@cindex table editor, @file{table.el} +@cindex @file{table.el} + +Complex ASCII tables with automatic line wrapping, column- and +row-spanning, and alignment can be created using the Emacs table +package by Takaaki Ota (@uref{http://sourceforge.net/projects/table}, +and also part of Emacs 22). +When @key{TAB} or @kbd{C-c C-c} is pressed in such a table, Org-mode +will call @command{table-recognize-table} and move the cursor into the +table. Inside a table, the keymap of Org-mode is inactive. In order +to execute Org-mode-related commands, leave the table. + +@table @kbd +@kindex C-c C-c +@item C-c C-c +Recognize @file{table.el} table. Works when the cursor is in a +table.el table. +@c +@kindex C-c ~ +@item C-c ~ +Insert a table.el table. If there is already a table at point, this +command converts it between the table.el format and the Org-mode +format. See the documentation string of the command +@code{org-convert-table} for the restrictions under which this is +possible. +@end table +@file{table.el} is part of Emacs 22. +@cindex @file{footnote.el} +@item @file{footnote.el} by Steven L. Baur +Org-mode recognizes numerical footnotes as provided by this package +(@pxref{Footnotes}). +@end table + +@node Conflicts, , Cooperation, Interaction +@subsection Packages that lead to conflicts with Org-mode + +@table @asis + +@cindex @file{allout.el} +@item @file{allout.el} by Ken Manheimer +Startup of Org-mode may fail with the error message +@code{(wrong-type-argument keymapp nil)} when there is an outdated +version @file{allout.el} on the load path, for example the version +distributed with Emacs 21.x. Upgrade to Emacs 22 and this problem will +disappear. If for some reason you cannot do this, make sure that org.el +is loaded @emph{before} @file{allout.el}, for example by putting +@code{(require 'org)} early enough into your @file{.emacs} file. + +@cindex @file{CUA.el} +@item @file{CUA.el} by Kim. F. Storm +Keybindings in Org-mode conflict with the @kbd{S-} keys used by +CUA-mode (as well as pc-select-mode and s-region-mode) to select and +extend the region. If you want to use one of these packages along with +Org-mode, configure the variable @code{org-replace-disputed-keys}. When +set, Org-mode will move the following keybindings in Org-mode files, and +in the agenda buffer (but not during date selection). + +@example +S-UP -> M-p S-DOWN -> M-n +S-LEFT -> M-- S-RIGHT -> M-+ +@end example + +Yes, these are unfortunately more difficult to remember. If you want +to have other replacement keys, look at the variable +@code{org-disputed-keys}. +@item @file{windmove.el} by Hovav Shacham +@cindex @file{windmove.el} +Also this package uses the @kbd{S-} keys, so everything written +in the paragraph above about CUA mode also applies here. + +@cindex @file{footnote.el} +@item @file{footnote.el} by Steven L. Baur +Org-mode supports the syntax of the footnote package, but only the +numerical footnote markers. Also, the default key for footnote +commands, @kbd{C-c !} is already used by Org-mode. You could use the +variable @code{footnote-prefix} to switch footnotes commands to another +key. Or, you could use @code{org-replace-disputed-keys} and +@code{org-disputed-keys} to change the settings in Org-mode. + +@end table + + +@node Bugs, , Interaction, Miscellaneous +@section Bugs +@cindex bugs + +Here is a list of things that should work differently, but which I +have found too hard to fix. + +@itemize @bullet +@item +If a table field starts with a link, and if the corresponding table +column is narrowed (@pxref{Narrow columns}) to a width too small to +display the link, the field would look entirely empty even though it is +not. To prevent this, Org-mode throws an error. The work-around is to +make the column wide enough to fit the link, or to add some text (at +least 2 characters) before the link in the same field. +@item +Narrowing table columns does not work on XEmacs, because the +@code{format} function does not transport text properties. +@item +Text in an entry protected with the @samp{QUOTE} keyword should not +autowrap. +@item +When the application called by @kbd{C-c C-o} to open a file link fails +(for example because the application does not exist or refuses to open +the file), it does so silently. No error message is displayed. +@item +Recalculating a table line applies the formulas from left to right. +If a formula uses @emph{calculated} fields further down the row, +multiple recalculation may be needed to get all fields consistent. You +may use the command @code{org-table-iterate} (@kbd{C-u C-c *}) to +recalculate until convergence. +@item +A single letter cannot be made bold, for example @samp{*a*}. +@item +The exporters work well, but could be made more efficient. +@end itemize + + +@node Extensions and Hacking, History and Acknowledgments, Miscellaneous, Top +@appendix Extensions, Hooks and Hacking + +This appendix lists extensions for Org-mode written by other authors. +It also covers some aspects where users can extend the functionality of +Org-mode. + +@menu +* Extensions:: Existing 3rd-part extensions +* Adding hyperlink types:: New custom link types +* Tables in arbitrary syntax:: Orgtbl for LaTeX and other programs +* Dynamic blocks:: Automatically filled blocks +* Special agenda views:: Customized views +* Using the property API:: Writing programs that use entry properties +@end menu + +@node Extensions, Adding hyperlink types, Extensions and Hacking, Extensions and Hacking +@section Third-party extensions for Org-mode +@cindex extension, third-party + +The following extensions for Org-mode have been written by other people: + +@table @asis +@cindex @file{org-publish.el} +@item @file{org-publish.el} by David O'Toole +This package provides facilities for publishing related sets of Org-mode +files together with linked files like images as webpages. It is +highly configurable and can be used for other publishing purposes as +well. As of Org-mode version 4.30, @file{org-publish.el} is part of the +Org-mode distribution. It is not yet part of Emacs, however, a delay +caused by the preparations for the 22.1 release. In the mean time, +@file{org-publish.el} can be downloaded from David's site: +@url{http://dto.freeshell.org/e/org-publish.el}. +@cindex @file{org-mouse.el} +@item @file{org-mouse.el} by Piotr Zielinski +This package implements extended mouse functionality for Org-mode. It +allows you to cycle visibility and to edit the document structure with +the mouse. Best of all, it provides a context-sensitive menu on +@key{mouse-3} that changes depending on the context of a mouse-click. +As of Org-mode version 4.53, @file{org-mouse.el} is part of the +Org-mode distribution. It is not yet part of Emacs, however, a delay +caused by the preparations for the 22.1 release. In the mean time, +@file{org-mouse.el} can be downloaded from Piotr's site: +@url{http://www.cl.cam.ac.uk/~pz215/files/org-mouse.el}. +@cindex @file{org-blog.el} +@item @file{org-blog.el} by David O'Toole +A blogging plug-in for @file{org-publish.el}.@* +@url{http://dto.freeshell.org/notebook/OrgMode.html}. +@cindex @file{blorg.el} +@item @file{blorg.el} by Bastien Guerry +Publish Org-mode files as +blogs. @url{http://www.cognition.ens.fr/~guerry/blorg.html}. +@cindex @file{org2rem.el} +@item @file{org2rem.el} by Bastien Guerry +Translates Org-mode files into something readable by +Remind. @url{http://www.cognition.ens.fr/~guerry/u/org2rem.el}. +@item @file{org-toc.el} by Bastien Guerry +Produces a simple table of contents of an Org-mode file, for easy +navigation. @url{http://www.cognition.ens.fr/~guerry/u/org-registry.el}. +@item @file{org-registry.el} by Bastien Guerry +Find which Org-file link to a certain document. +@url{http://www.cognition.ens.fr/~guerry/u/org2rem.el}. +@end table + +@page + +@node Adding hyperlink types, Tables in arbitrary syntax, Extensions, Extensions and Hacking +@section Adding hyperlink types +@cindex hyperlinks, adding new types + +Org-mode has a large number of hyperlink types built-in +(@pxref{Hyperlinks}). If you would like to add new link types, it +provides an interface for doing so. Lets look at an example file +@file{org-man.el} that will add support for creating links like +@samp{[[man:printf][The printf manpage]]} to show unix manual pages inside +emacs: + +@lisp +;;; org-man.el - Support for links to manpages in Org-mode + +(require 'org) + +(org-add-link-type "man" 'org-man-open) +(add-hook 'org-store-link-functions 'org-man-store-link) + +(defcustom org-man-command 'man + "The Emacs command to be used to display a man page." + :group 'org-link + :type '(choice (const man) (const woman))) + +(defun org-man-open (path) + "Visit the manpage on PATH. +PATH should be a topic that can be thrown at the man command." + (funcall org-man-command path)) + +(defun org-man-store-link () + "Store a link to a manpage." + (when (memq major-mode '(Man-mode woman-mode)) + ;; This is a man page, we do make this link + (let* ((page (org-man-get-page-name)) + (link (concat "man:" page)) + (description (format "Manpage for %s" page))) + (org-store-link-props + :type "man" + :link link + :description description)))) + +(defun org-man-get-page-name () + "Extract the page name from the buffer name." + ;; This works for both `Man-mode' and `woman-mode'. + (if (string-match " \\(\\S-+\\)\\*" (buffer-name)) + (match-string 1 (buffer-name)) + (error "Cannot create link to this man page"))) + +(provide 'org-man) + +;;; org-man.el ends here +@end lisp + +@noindent +You would activate this new link type in @file{.emacs} with + +@lisp +(require 'org-man) +@end lisp + +@noindent +Lets go through the file and see what it does. +@enumerate +@item +It does @code{(require 'org)} to make sure that @file{org.el} has been +loaded. +@item +The next line calls @code{org-add-link-type} to define a new link type +with prefix @samp{man}. The call also contains the name of a function +that will be called to follow such a link. +@item +The next line adds a function to @code{org-store-link-functions}, in +order to allow the command @kbd{C-c l} to record a useful link in a +buffer displaying a man page. +@end enumerate + +The rest of the file defines the necessary variables and functions. +First there is a customization variable that determines which emacs +command should be used to display manpages. There are two options, +@code{man} and @code{woman}. Then the function to follow a link is +defined. It gets the link path as an argument - in this case the link +path is just a topic for the manual command. The function calls the +value of @code{org-man-command} to display the man page. + +Finally the function @code{org-man-store-link} is defined. When you try +to store a link with @kbd{C-c l}, also this function will be called to +try to make a link. The function must first decide if it is supposed to +create the link for this buffer type, we do this by checking the value +of the variable @code{major-mode}. If not, the function must exit and +retunr the value @code{nil}. If yes, the link is created by getting the +manual tpoic from the buffer name and prefixing it with the string +@samp{man:}. Then it must call the command @code{org-store-link-props} +and set the @code{:type} and @code{:link} properties. Optionally you +can also set the @code{:description} property to provide a default for +the link description when the link is later inserted into tan Org-mode +buffer with @kbd{C-c C-l}. + +@node Tables in arbitrary syntax, Dynamic blocks, Adding hyperlink types, Extensions and Hacking +@section Tables and Lists in arbitrary syntax +@cindex tables, in other modes +@cindex lists, in other modes +@cindex orgtbl-mode + +Since Orgtbl-mode can be used as a minor mode in arbitrary buffers, a +frequent feature request has been to make it work with native tables in +specific languages, for example La@TeX{}. However, this is extremely +hard to do in a general way, would lead to a customization nightmare, +and would take away much of the simplicity of the Orgtbl-mode table +editor. + + +This appendix describes a different approach. We keep the Orgtbl-mode +table in its native format (the @i{source table}), and use a custom +function to @i{translate} the table to the correct syntax, and to +@i{install} it in the right location (the @i{target table}). This puts +the burden of writing conversion functions on the user, but it allows +for a very flexible system. + +Bastien added the ability to do the same with lists. You can use Org's +facilities to edit and structure lists by turning @code{orgstruct-mode} +on, then locally exporting such lists in another format (HTML, La@TeX{} +or TeXInfo.) + + +@menu +* Radio tables:: Sending and receiving +* A LaTeX example:: Step by step, almost a tutorial +* Translator functions:: Copy and modify +* Radio lists:: Doing the same for lists. +@end menu + +@node Radio tables, A LaTeX example, Tables in arbitrary syntax, Tables in arbitrary syntax +@subsection Radio tables +@cindex radio tables + +To define the location of the target table, you first need to create two +lines that are comments in the current mode, but contain magic words for +Orgtbl-mode to find. Orgtbl-mode will insert the translated table +between these lines, replacing whatever was there before. For example: + +@example +/* BEGIN RECEIVE ORGTBL table_name */ +/* END RECEIVE ORGTBL table_name */ +@end example + +@noindent +Just above the source table, we put a special line that tells +Orgtbl-mode how to translate this table and where to install it. For +example: +@example +#+ORGTBL: SEND table_name translation_function arguments.... +@end example + +@noindent +@code{table_name} is the reference name for the table that is also used +in the receiver lines. @code{translation_function} is the Lisp function +that does the translation. Furthermore, the line can contain a list of +arguments (alternating key and value) at the end. The arguments will be +passed as a property list to the translation function for +interpretation. A few standard parameters are already recognized and +acted upon before the translation function is called: + +@table @code +@item :skip N +Skip the first N lines of the table. Hlines do count! +@item :skipcols (n1 n2 ...) +List of columns that should be skipped. If the table has a column with +calculation marks, that column is automatically discarded as well. +Please note that the translator function sees the table @emph{after} the +removal of these columns, the function never knows that there have been +additional columns. +@end table + +@noindent +The one problem remaining is how to keep the source table in the buffer +without disturbing the normal workings of the file, for example during +compilation of a C file or processing of a La@TeX{} file. There are a +number of different solutions: + +@itemize @bullet +@item +The table could be placed in a block comment if that is supported by the +language. For example, in C-mode you could wrap the table between +@samp{/*} and @samp{*/} lines. +@item +Sometimes it is possible to put the table after some kind of @i{END} +statement, for example @samp{\bye} in TeX and @samp{\end@{document@}} +in La@TeX{}. +@item +You can just comment the table line by line whenever you want to process +the file, and uncomment it whenever you need to edit the table. This +only sounds tedious - the command @kbd{M-x orgtbl-toggle-comment} does +make this comment-toggling very easy, in particular if you bind it to a +key. +@end itemize + +@node A LaTeX example, Translator functions, Radio tables, Tables in arbitrary syntax +@subsection A LaTeX example of radio tables +@cindex LaTeX, and orgtbl-mode + +The best way to wrap the source table in La@TeX{} is to use the +@code{comment} environment provided by @file{comment.sty}. It has to be +activated by placing @code{\usepackage@{comment@}} into the document +header. Orgtbl-mode can insert a radio table skeleton@footnote{By +default this works only for La@TeX{}, HTML, and TeXInfo. Configure the +variable @code{orgtbl-radio-tables} to install templates for other +modes.} with the command @kbd{M-x orgtbl-insert-radio-table}. You will +be prompted for a table name, lets say we use @samp{salesfigures}. You +will then get the following template: + +@example +% BEGIN RECEIVE ORGTBL salesfigures +% END RECEIVE ORGTBL salesfigures +\begin@{comment@} +#+ORGTBL: SEND salesfigures orgtbl-to-latex +| | | +\end@{comment@} +@end example + +@noindent +The @code{#+ORGTBL: SEND} line tells orgtbl-mode to use the function +@code{orgtbl-to-latex} to convert the table into La@TeX{} and to put it +into the receiver location with name @code{salesfigures}. You may now +fill in the table, feel free to use the spreadsheet features@footnote{If +the @samp{#+TBLFM} line contains an odd number of dollar characters, +this may cause problems with font-lock in latex-mode. As shown in the +example you can fix this by adding an extra line inside the +@code{comment} environment that is used to balance the dollar +expressions. If you are using AUCTeX with the font-latex library, a +much better solution is to add the @code{comment} environment to the +variable @code{LaTeX-verbatim-environments}.}: + +@example +% BEGIN RECEIVE ORGTBL salesfigures +% END RECEIVE ORGTBL salesfigures +\begin@{comment@} +#+ORGTBL: SEND salesfigures orgtbl-to-latex +| Month | Days | Nr sold | per day | +|-------+------+---------+---------| +| Jan | 23 | 55 | 2.4 | +| Feb | 21 | 16 | 0.8 | +| March | 22 | 278 | 12.6 | +#+TBLFM: $4=$3/$2;%.1f +% $ (optional extra dollar to keep font-lock happy, see footnote) +\end@{comment@} +@end example + +@noindent +When you are done, press @kbd{C-c C-c} in the table to get the converted +table inserted between the two marker lines. + +Now lets assume you want to make the table header by hand, because you +want to control how columns are aligned etc. In this case we make sure +that the table translator does skip the first 2 lines of the source +table, and tell the command to work as a @i{splice}, i.e. to not produce +header and footer commands of the target table: + +@example +\begin@{tabular@}@{lrrr@} +Month & \multicolumn@{1@}@{c@}@{Days@} & Nr.\ sold & per day\\ +% BEGIN RECEIVE ORGTBL salesfigures +% END RECEIVE ORGTBL salesfigures +\end@{tabular@} +% +\begin@{comment@} +#+ORGTBL: SEND salesfigures orgtbl-to-latex :splice t :skip 2 +| Month | Days | Nr sold | per day | +|-------+------+---------+---------| +| Jan | 23 | 55 | 2.4 | +| Feb | 21 | 16 | 0.8 | +| March | 22 | 278 | 12.6 | +#+TBLFM: $4=$3/$2;%.1f +\end@{comment@} +@end example + +The La@TeX{} translator function @code{orgtbl-to-latex} is already part of +Orgtbl-mode. It uses a @code{tabular} environment to typeset the table +and marks horizontal lines with @code{\hline}. Furthermore, it +interprets the following parameters: + +@table @code +@item :splice nil/t +When set to t, return only table body lines, don't wrap them into a +tabular environment. Default is nil. + +@item :fmt fmt +A format to be used to wrap each field, should contain @code{%s} for the +original field value. For example, to wrap each field value in dollars, +you could use @code{:fmt "$%s$"}. This may also be a property list with +column numbers and formats. for example @code{:fmt (2 "$%s$" 4 "%s\\%%")}. + +@item :efmt efmt +Use this format to print numbers with exponentials. The format should +have @code{%s} twice for inserting mantissa and exponent, for example +@code{"%s\\times10^@{%s@}"}. The default is @code{"%s\\,(%s)"}. This +may also be a property list with column numbers and formats, for example +@code{:efmt (2 "$%s\\times10^@{%s@}$" 4 "$%s\\cdot10^@{%s@}$")}. After +@code{efmt} has been applied to a value, @code{fmt} will also be +applied. +@end table + +@node Translator functions, Radio lists, A LaTeX example, Tables in arbitrary syntax +@subsection Translator functions +@cindex HTML, and orgtbl-mode +@cindex translator function + +Orgtbl-mode has several translator functions built-in: +@code{orgtbl-to-latex}, @code{orgtbl-to-html}, and +@code{orgtbl-to-texinfo}. Except for @code{orgtbl-to-html}@footnote{The +HTML translator uses the same code that produces tables during HTML +export.}, these all use a generic translator, @code{orgtbl-to-generic}. +For example, @code{orgtbl-to-latex} itself is a very short function that +computes the column definitions for the @code{tabular} environment, +defines a few field and line separators and then hands over to the +generic translator. Here is the entire code: + +@lisp +@group +(defun orgtbl-to-latex (table params) + "Convert the orgtbl-mode TABLE to LaTeX." + (let* ((alignment (mapconcat (lambda (x) (if x "r" "l")) + org-table-last-alignment "")) + (params2 + (list + :tstart (concat "\\begin@{tabular@}@{" alignment "@}") + :tend "\\end@{tabular@}" + :lstart "" :lend " \\\\" :sep " & " + :efmt "%s\\,(%s)" :hline "\\hline"))) + (orgtbl-to-generic table (org-combine-plists params2 params)))) +@end group +@end lisp + +As you can see, the properties passed into the function (variable +@var{PARAMS}) are combined with the ones newly defined in the function +(variable @var{PARAMS2}). The ones passed into the function (i.e. the +ones set by the @samp{ORGTBL SEND} line) take precedence. So if you +would like to use the La@TeX{} translator, but wanted the line endings to +be @samp{\\[2mm]} instead of the default @samp{\\}, you could just +overrule the default with + +@example +#+ORGTBL: SEND test orgtbl-to-latex :lend " \\\\[2mm]" +@end example + +For a new language, you can either write your own converter function in +analogy with the La@TeX{} translator, or you can use the generic function +directly. For example, if you have a language where a table is started +with @samp{!BTBL!}, ended with @samp{!ETBL!}, and where table lines are +started with @samp{!BL!}, ended with @samp{!EL!} and where the field +separator is a TAB, you could call the generic translator like this (on +a single line!): + +@example +#+ORGTBL: SEND test orgtbl-to-generic :tstart "!BTBL!" :tend "!ETBL!" + :lstart "!BL! " :lend " !EL!" :sep "\t" +@end example + +@noindent +Please check the documentation string of the function +@code{orgtbl-to-generic} for a full list of parameters understood by +that function and remember that you can pass each of them into +@code{orgtbl-to-latex}, @code{orgtbl-to-texinfo}, and any other function +using the generic function. + +Of course you can also write a completely new function doing complicated +things the generic translator cannot do. A translator function takes +two arguments. The first argument is the table, a list of lines, each +line either the symbol @code{hline} or a list of fields. The second +argument is the property list containing all parameters specified in the +@samp{#+ORGTBL: SEND} line. The function must return a single string +containing the formatted table. If you write a generally useful +translator, please post it on @code{emacs-orgmode@@gnu.org} so that +others can benefit from your work. + +@node Radio lists, , Translator functions, Tables in arbitrary syntax +@subsection Radio lists +@cindex radio lists +@cindex org-list-insert-radio-list + +Sending and receiving radio lists works exactly the same way than +sending and receiving radio tables (@pxref{Radio tables}) @footnote{You +need to load the @code{org-export-latex.el} package to use radio lists +since the relevant code is there for now.}. As for radio tables, you +can insert radio lists templates in HTML, La@TeX{} and TeXInfo modes by +calling @code{org-list-insert-radio-list}. + +Here are the differences with radio tables: + +@itemize @minus +@item +Use @code{ORGLST} instead of @code{ORGTBL}. +@item +The available translation functions for radio lists don't take +parameters. +@item +`C-c C-c' will work when pressed on the first item of the list. +@end itemize + +Here is a La@TeX{} example. Let's say that you have this in your +La@TeX{} file: + +@example +% BEGIN RECEIVE ORGLST to-buy +% END RECEIVE ORGLST to-buy +\begin@{comment@} +#+ORGLIST: SEND to-buy orgtbl-to-latex +- a new house +- a new computer + + a new keyboard + + a new mouse +- a new life +\end@{comment@} +@end example + +Pressing `C-c C-c' on @code{a new house} and will insert the converted +La@TeX{} list between the two marker lines. + +@node Dynamic blocks, Special agenda views, Tables in arbitrary syntax, Extensions and Hacking +@section Dynamic blocks +@cindex dynamic blocks + +Org-mode documents can contain @emph{dynamic blocks}. These are +specially marked regions that are updated by some user-written function. +A good example for such a block is the clock table inserted by the +command @kbd{C-c C-x C-r} (@pxref{Clocking work time}). + +Dynamic block are enclosed by a BEGIN-END structure that assigns a name +to the block and can also specify parameters for the function producing +the content of the block. + +@example +#+BEGIN: myblock :parameter1 value1 :parameter2 value2 ... + +#+END: +@end example + +Dynamic blocks are updated with the following commands + +@table @kbd +@kindex C-c C-x C-u +@item C-c C-x C-u +Update dynamic block at point. +@kindex C-u C-c C-x C-u +@item C-u C-c C-x C-u +Update all dynamic blocks in the current file. +@end table + +Updating a dynamic block means to remove all the text between BEGIN and +END, parse the BEGIN line for parameters and then call the specific +writer function for this block to insert the new content. If you want +to use the original content in the writer function, you can use the +extra parameter @code{:content}. + +For a block with name @code{myblock}, the writer function is +@code{org-dblock-write:myblock} with as only parameter a property list +with the parameters given in the begin line. Here is a trivial example +of a block that keeps track of when the block update function was last +run: + +@example +#+BEGIN: block-update-time :format "on %m/%d/%Y at %H:%M" + +#+END: +@end example + +@noindent +The corresponding block writer function could look like this: + +@lisp +(defun org-dblock-write:block-update-time (params) + (let ((fmt (or (plist-get params :format) "%d. %m. %Y"))) + (insert "Last block update at: " + (format-time-string fmt (current-time))))) +@end lisp + +If you want to make sure that all dynamic blocks are always up-to-date, +you could add the function @code{org-update-all-dblocks} to a hook, for +example @code{before-save-hook}. @code{org-update-all-dblocks} is +written in a way that is does nothing in buffers that are not in Org-mode. + +@node Special agenda views, Using the property API, Dynamic blocks, Extensions and Hacking +@section Special Agenda Views +@cindex agenda views, user-defined + +Org-mode provides a special hook that can be used to narrow down the +selection made by any of the agenda views. You may specify a function +that is used at each match to verify if the match should indeed be part +of the agenda view, and if not, how much should be skipped. + +Let's say you want to produce a list of projects that contain a WAITING +tag anywhere in the project tree. Let's further assume that you have +marked all tree headings that define a project with the todo keyword +PROJECT. In this case you would run a todo search for the keyword +PROJECT, but skip the match unless there is a WAITING tag anywhere in +the subtree belonging to the project line. + +To achieve this, you must write a function that searches the subtree for +the tag. If the tag is found, the function must return @code{nil} to +indicate that this match should not be skipped. If there is no such +tag, return the location of the end of the subtree, to indicate that +search should continue from there. + +@lisp +(defun my-skip-unless-waiting () + "Skip trees that are not waiting" + (let ((subtree-end (save-excursion (org-end-of-subtree t)))) + (if (re-search-forward ":waiting:" subtree-end t) + nil ; tag found, do not skip + subtree-end))) ; tag not found, continue after end of subtree +@end lisp + +Now you may use this function in an agenda custom command, for example +like this: + +@lisp +(org-add-agenda-custom-command + '("b" todo "PROJECT" + ((org-agenda-skip-function 'my-org-waiting-projects) + (org-agenda-overriding-header "Projects waiting for something: ")))) +@end lisp + +Note that this also binds @code{org-agenda-overriding-header} to get a +meaningful header in the agenda view. + +You may also put a Lisp form into @code{org-agenda-skip-function}. In +particular, you may use the functions @code{org-agenda-skip-entry-if} +and @code{org-agenda-skip-subtree-if} in this form, for example: + +@table @code +@item '(org-agenda-skip-entry-if 'scheduled) +Skip current entry if it has been scheduled. +@item '(org-agenda-skip-entry-if 'notscheduled) +Skip current entry if it has not been scheduled. +@item '(org-agenda-skip-entry-if 'deadline) +Skip current entry if it has a deadline. +@item '(org-agenda-skip-entry-if 'scheduled 'deadline) +Skip current entry if it has a deadline, or if it is scheduled. +@item '(org-agenda-skip-entry 'regexp "regular expression") +Skip current entry if the regular expression matches in the entry. +@item '(org-agenda-skip-entry 'notregexp "regular expression") +Skip current entry unless the regular expression matches. +@item '(org-agenda-skip-subtree-if 'regexp "regular expression") +Same as above, but check and skip the entire subtree. +@end table + +Therefore we could also have written the search for WAITING projects +like this, even without defining a special function: + +@lisp +(org-add-agenda-custom-command + '("b" todo "PROJECT" + ((org-agenda-skip-function '(org-agenda-skip-subtree-if + 'regexp ":waiting:")) + (org-agenda-overriding-header "Projects waiting for something: ")))) +@end lisp + + +@node Using the property API, , Special agenda views, Extensions and Hacking +@section Using the property API +@cindex API, for properties +@cindex properties, API + +Here is a description of the functions that can be used to work with +properties. + +@defun org-entry-properties &optional pom which +Get all properties of the entry at point-or-marker POM. +This includes the TODO keyword, the tags, time strings for deadline, +scheduled, and clocking, and any additional properties defined in the +entry. The return value is an alist, keys may occur multiple times +if the property key was used several times. +POM may also be nil, in which case the current entry is used. +If WHICH is nil or `all', get all properties. If WHICH is +`special' or `standard', only get that subclass. +@end defun +@defun org-entry-get pom property &optional inherit +Get value of PROPERTY for entry at point-or-marker POM. +If INHERIT is non-nil and the entry does not have the property, +then also check higher levels of the hierarchy. This function ignores +the value of @code{org-use-property-inheritance} and requires the +explicit INHERIT flag. +@end defun + +@defun org-entry-delete pom property +Delete the property PROPERTY from entry at point-or-marker POM. +@end defun + +@defun org-entry-put pom property value +Set PROPERTY to VALUE for entry at point-or-marker POM. +@end defun + +@defun org-buffer-property-keys &optional include-specials +Get all property keys in the current buffer. +@end defun + +@defun org-insert-property-drawer +Insert a property drawer at point. +@end defun + +@node History and Acknowledgments, Main Index, Extensions and Hacking, Top +@appendix History and Acknowledgments +@cindex acknowledgments +@cindex history +@cindex thanks + +Org-mode was borne in 2003, out of frustration over the user interface +of the Emacs outline-mode. I was trying to organize my notes and +projects, and using Emacs seemed to be the natural way to go. However, +having to remember eleven different commands with two or three keys per +command, only to hide and unhide parts of the outline tree, that seemed +entirely unacceptable to me. Also, when using outlines to take notes, I +constantly want to restructure the tree, organizing it parallel to my +thoughts and plans. @emph{Visibility cycling} and @emph{structure +editing} were originally implemented in the package +@file{outline-magic.el}, but quickly moved to the more general +@file{org.el}. As this environment became comfortable for project +planning, the next step was adding @emph{TODO entries}, basic @emph{time +stamps}, and @emph{table support}. These areas highlight the two main +goals that Org-mode still has today: To create a new, outline-based, +plain text mode with innovative and intuitive editing features, and to +incorporate project planning functionality directly into a notes file. + +Since the first release, literally thousands of emails to me or on +@code{emacs-orgmode@@gnu.org} have provided a constant stream of bug +reports, feedback, new ideas, and sometimes patches and add-on code. +Many thanks to everyone who has helped to improve this package. I am +trying to keep here a list of the people who had significant influence +in shaping one or more aspects of Org-mode. The list may not be +complete, if I have forgotten someone, please accept my apologies and +let me know. + +@itemize @bullet + +@item +@i{Russel Adams} came up with the idea for drawers. +@item +@i{Thomas Baumann} contributed the code for links to the MH-E email +system. +@item +@i{Alex Bochannek} provided a patch for rounding time stamps. +@item +@i{Charles Cave}'s suggestion sparked the implementation of templates +for Remember. +@item +@i{Pavel Chalmoviansky} influenced the agenda treatment of items with +specified time. +@item +@i{Gregory Chernov} patched support for lisp forms into table +calculations and improved XEmacs compatibility, in particular by porting +@file{nouline.el} to XEmacs. +@item +@i{Sacha Chua} suggested to copy some linking code from Planner. +@item +@i{Eddward DeVilla} proposed and tested checkbox statistics. He also +came up with the idea of properties, and that there should be an API for +them. +@item +@i{Kees Dullemond} used to edit projects lists directly in HTML and so +inspired some of the early development, including HTML export. He also +asked for a way to narrow wide table columns. +@item +@i{Christian Egli} converted the documentation into TeXInfo format, +patched CSS formatting into the HTML exporter, and inspired the agenda. +@item +@i{David Emery} provided a patch for custom CSS support in exported +HTML agendas. +@item +@i{Nic Ferrier} contributed mailcap and XOXO support. +@item +@i{Miguel A. Figueroa-Villanueva} implemented hierarchical checkboxes. +@item +@i{John Foerch} figured out how to make incremental search show context +around a match in a hidden outline tree. +@item +@i{Niels Giesen} had the idea to automatically archive DONE trees. +@item +@i{Bastien Guerry} wrote the La@TeX{} exporter and has been prolific +with patches, ideas, and bug reports. +@item +@i{Kai Grossjohann} pointed out key-binding conflicts with other packages. +@item +@i{Scott Jaderholm} proposed footnotes, control over whitespace between +folded entries, and column view for properties. +@item +@i{Shidai Liu} ("Leo") asked for embedded La@TeX{} and tested it. He also +provided frequent feedback and some patches. +@item +@i{Jason F. McBrayer} suggested agenda export to CSV format. +@item +@i{Max Mikhanosha} came up with the idea of refiling. +@item +@i{Dmitri Minaev} sent a patch to set priority limits on a per-file +basis. +@item +@i{Stefan Monnier} provided a patch to keep the Emacs-Lisp compiler +happy. +@item +@i{Rick Moynihan} proposed to allow multiple TODO sequences in a file +and to be able to quickly restrict the agenda to a subtree. +@item +@i{Todd Neal} provided patches for links to Info files and elisp forms. +@item +@i{Tim O'Callaghan} suggested in-file links, search options for general +file links, and TAGS. +@item +@i{Takeshi Okano} translated the manual and David O'Toole's tutorial +into Japanese. +@item +@i{Oliver Oppitz} suggested multi-state TODO items. +@item +@i{Scott Otterson} sparked the introduction of descriptive text for +links, among other things. +@item +@i{Pete Phillips} helped during the development of the TAGS feature, and +provided frequent feedback. +@item +@i{T.V. Raman} reported bugs and suggested improvements. +@item +@i{Matthias Rempe} (Oelde) provided ideas, Windows support, and quality +control. +@item +@i{Kevin Rogers} contributed code to access VM files on remote hosts. +@item +@i{Frank Ruell} solved the mystery of the @code{keymapp nil} bug, a +conflict with @file{allout.el}. +@item +@i{Jason Riedy} sent a patch to fix a bug with export of TODO keywords. +@item +@i{Philip Rooke} created the Org-mode reference card and provided lots +of feedback. +@item +@i{Christian Schlauer} proposed angular brackets around links, among +other things. +@item +Linking to VM/BBDB/GNUS was inspired by @i{Tom Shannon}'s +@file{organizer-mode.el}. +@item +@i{Daniel Sinder} came up with the idea of internal archiving by locking +subtrees. +@item +@i{Dale Smith} proposed link abbreviations. +@item +@i{Adam Spiers} asked for global linking commands and inspired the link +extension system. support mairix. +@item +@i{David O'Toole} wrote @file{org-publish.el} and drafted the manual +chapter about publishing. +@item +@i{J@"urgen Vollmer} contributed code generating the table of contents +in HTML output. +@item +@i{Chris Wallace} provided a patch implementing the @samp{QUOTE} +keyword. +@item +@i{David Wainberg} suggested archiving, and improvements to the linking +system. +@item +@i{John Wiegley} wrote @file{emacs-wiki.el} and @file{planner.el}. The +development of Org-mode was fully independent, and both systems are +really different beasts in their basic ideas and implementation details. +I later looked at John's code, however, and learned from his +implementation of (i) links where the link itself is hidden and only a +description is shown, and (ii) popping up a calendar to select a date. +John has also contributed a number of great ideas directly to Org-mode. +@item +@i{Carsten Wimmer} suggested some changes and helped fix a bug in +linking to GNUS. +@item +@i{Roland Winkler} requested additional keybindings to make Org-mode +work on a tty. +@item +@i{Piotr Zielinski} wrote @file{org-mouse.el}, proposed agenda blocks +and contributed various ideas and code snippets. +@end itemize + + +@node Main Index, Key Index, History and Acknowledgments, Top +@unnumbered The Main Index + +@printindex cp + +@node Key Index, , Main Index, Top +@unnumbered Key Index + +@printindex ky + +@bye + +@ignore + arch-tag: 7893d1fe-cc57-4d13-b5e5-f494a1bcc7ac +@end ignore +) diff --cc etc/AUTHORS index 69273d8087,0000000000..33e68941ae mode 100644,000000..100644 --- a/etc/AUTHORS +++ b/etc/AUTHORS @@@ -1,2830 -1,0 +1,2834 @@@ +Many people have contributed code included in the Free Software +Foundation's distribution of GNU Emacs. To show our appreciation for +their public spirit, we list here in alphabetical order a condensed +list of their contributions. + +Aaron Hawley: changed tar-mode.el tutorial.el + +Aaron Larson: changed bibtex.el + +Aaron S. Hawley: changed files.texi building.texi custom.texi files.el + glossary.texi isearch.el misc.texi + +Abraham Nahum: changed configure.in dgux4.h sysdep.c + +Abramo Bagnara: changed term.c + +Adam Hupp: changed gdb-ui.el + +Adrian Aichner: changed erc-log.el erc.el erc-autojoin.el erc-backend.el + erc-dcc.el erc-members.el erc-nets.el erc-sound.el etags.c + gnus-score.el + +Adrian Colley: changed aix3-2.h + +Adrian Lanz: changed mail-source.el spam.el + +,AF(Bvar Arnfj,Av(Br,Ap(B Bjarmason: changed rcirc.el + +Agust,Am(Bn Mart,Am(Bn: changed flyspell.el ispell.el + +Aidan Kehoe: changed lread.c mm-util.el erc.el latin-ltx.el objects.texi + +Ake Stenhoff: wrote imenu.el +and changed cc-mode.el perl-mode.el + +Aki Vehtari: changed bibtex.el gnus-art.el gnus-score.el gnus-sum.el + nnmail.el tar-mode.el + +Alakazam Petrofsky: changed hanoi.el + +Alan Mackenzie: wrote cc-awk.el +and changed cc-cmds.el cc-mode.el cc-engine.el cc-defs.el cc-langs.el + cc-vars.el cc-mode.texi cc-styles.el cc-fonts.el cc-align.el lread.c + programs.texi cc-subword.el isearch.el lisp.el search.texi startup.el + subr.el text.texi buffers.texi bytecomp.el and 20 other files + +Alan Shutko: changed diary-lib.el calendar.el bindings.el cal-hebrew.el + easy-mmode.el gnus-sum.el ibuf-ext.el ibuffer.el lunar.el macros.el + solar.el + +Alastair Burt: changed gnus-art.el smiley.el + +Albert L. Ting: changed gnus-group.el mail-hist.el + +Alex Coventry: changed files.el + +Alex Ott: changed TUTORIAL.ru ru-refcard.tex ispell.el ru-refcard.ps + +Alex Rezinsky: wrote which-func.el + +Alex Schroeder: wrote ansi-color.el cus-theme.el erc-compat.el + erc-hecomplete.el erc-join.el erc-lang.el erc-ring.el master.el + spam-stat.el sql.el +and changed erc.el erc-track.el erc-button.el erc-stamp.el erc-match.el + erc-autoaway.el erc-nickserv.el Makefile erc-autojoin.el erc-fill.el + erc-pcomplete.el erc-complete.el erc-ibuffer.el erc-members.el + rcirc.texi comint.el custom.el erc-bbdb.el erc-chess.el erc-ezbounce.el + erc-imenu.el and 26 other files + +Alexander Klimov: changed man.el + +Alexander Kreuzer: changed nnrss.el + +Alexander L. Belikoff: wrote erc.el + +Alexander Pohoyda: changed rmailsum.el man.el rmail.el sendmail.el + +Alexander Shopov: changed code-pages.el + +Alexander Zhuckov: changed ebrowse.c + +Alexandre Julliard: wrote vc-git.el + +Alexandre Oliva: wrote gnus-mlspl.el +and changed unexelf.c format.el iris4d.h iris5d.h unexsgi.c + +Alexandre Veyrenc: changed fr-refcard.tex + +Alfred Correira: changed generic-x.el + +Alfred M. Szmidt: changed compile.el html2text.el openbsd.h rmail.el + rmailsum.el + +Alfredo Finelli: changed TUTORIAL.it + +Alin C. Soare: changed lisp-mode.el hexl.el + +Ami Fischman: changed calendar.el diary-lib.el + +Anders Holst: wrote hippie-exp.el + +Anders Lindgren: wrote autorevert.el cwarn.el follow.el +and changed font-lock.el etags.c compile.el + +Andre Spiegel: changed vc.el vc-hooks.el vc-cvs.el vc-rcs.el vc-sccs.el + files.el dired.el files.texi cperl-mode.el ediff-util.el log-view.el + parse-time.el startup.el tramp-vc.el vc-arch.el vc-mcvs.el vc-svn.el + vcdiff viper-util.el + +Andre Srinivasan: changed gnus-group.el gnus-sum.el gnus.texi message.el + mm-decode.el mml.el nnmail.el + +Andrea Russo: changed erc-dcc.el info-look.el + +Andreas B,A|(Bsching: changed emacsclient.c + +Andreas Fuchs: wrote erc-ezbounce.el erc-fill.el erc-match.el + erc-replace.el erc-truncate.el +and changed erc.el erc-bbdb.el erc-button.el erc-log.el erc-stamp.el + erc-autoaway.el erc-autojoin.el erc-dcc.el erc-imenu.el erc-list.el + erc-members.el erc-menu.el erc-netsplit.el erc-notify.el erc-ring.el + erc-speedbar.el erc-track.el erc-xdcc.el gnus-registry.el mml-sec.el + mml2015.el + +Andreas Jaeger: changed gnus-msg.el gnus-start.el gnus-xmas.el + nnfolder.el nnml.el + +Andreas Leue: changed artist.el + +Andreas Luik: changed xfns.c xterm.c + +Andreas Schwab: changed Makefile.in files.el lisp.h alloc.c xdisp.c + configure.in editfns.c fns.c print.c coding.c dired.el fileio.c info.el + eval.c process.c simple.el buffer.c minibuf.c window.c xterm.c emacs.c - and 451 other files ++ and 452 other files + +Andreas Seltenreich: changed nnweb.el gnus.texi nnslashdot.el + gnus-util.el mm-uu.el url-http.el battery.el comint.el easy-mmode.el + gmm-utils.el gnus-art.el gnus-ml.el gnus-msg.el gnus-srvr.el + gnus-start.el gnus-sum.el gnus.el message.el mm-url.el url-cookie.el + xterm.c + +Andrew Choi: wrote mac-win.el +and changed macterm.c mac.c macfns.c INSTALL macmenu.c darwin.h macterm.h + sysdep.c emacs.c fontset.c frame.c keyboard.c macgui.h xfaces.c Emacs.r + README cw5-mcp.xml cw6-mcp.xml dispextern.h make-package makefile.MPW + and 61 other files + +Andrew Cohen: changed dns.el + +Andrew Csillag: wrote m4-mode.el + +Andrew Hall: changed paren.el + +Andrew Innes: changed makefile.w32-in w32fns.c w32term.c w32.c w32proc.c + fileio.c gmake.defs dos-w32.el ms-w32.h nmake.defs w32-fns.el w32term.h + unexw32.c w32menu.c w32xfns.c addpm.c cmdproxy.c emacs.c w32-win.el + w32inevt.c configure.bat and 135 other files + +Andrew Oram: changed man/calendar.texi + miscellaneous changes to files in man/ + +Andrey Slusar: changed gnus.el + +Andrey Zhdanov: changed gud.el + +Andy Norman: wrote ange-ftp.el + +Andy Petrusenco: changed w32term.c + +Anna M. Bigatti: wrote cal-html.el + +Ari Roponen: changed atimer.c startup.el time-date.el + +Arisawa Akihiro: changed message.el mm-decode.el mm-view.el ps-print.el + time.el utf-8.el + +Arne Georg Gleditsch: changed gnus-sum.el + +Arne J,Ax(Brgensen: wrote latexenc.el +and changed smime.el gnus-art.el gnus-sieve.el ldap.el message.el + mm-decode.el mule-conf.el nnimap.el nnrss.el wid-edit.el + +Artem Chuprina: changed message.el + +Ashwin Ram: wrote refer.el + +Aubrey Jaffer: changed info.el unexelf.c + +Axel Boldt: changed ehelp.el electric.el + +B. Anyos: changed w32term.c + +Barry A. Warsaw: wrote assoc.el elp.el man.el regi.el reporter.el + supercite.el +and changed cc-mode.el cc-cmds.el cc-engine.el cc-langs.el cc-styles.el + cc-vars.el c++-mode.el cc-menus.el cc-align.el cc-defs.el cplus-md1.el + syntax.c syntax.h + +Barry Fishman: changed gnu-linux.h + +Ben A. Mesander: wrote erc-dcc.el + +Ben Harris: changed configure.in + +Ben Key: changed w32.c w32fns.c w32menu.c makefile.w32-in w32.h w32term.c + emacs.c gmake.defs ms-w32.h nmake.defs sound.c + +Ben North: changed outline.el fill.el isearch.el lisp-mode.el paren.el + w32term.c xfaces.c + +Benjamin Drieu: wrote pong.el + +Benjamin Riefenstahl: changed emacs.c mac-win.el macterm.c ms-w32.h + mule-cmds.el runemacs.c tcl.el w32.c w32.h w32select.c + +Benjamin Rutt: changed vc.el gnus-msg.el message.el diff-mode.el ffap.el + gnus-dired.el nnimap.el nnmbox.el simple.el vc-cvs.el + +Bill Atkins: changed wdired.el + +Bill Burton: changed ptx.h sequent-ptx.h + +Bill Carpenter: wrote feedmail.el (public domain) + +Bill Mann: changed configure.in unexaix.c ibmrs6000.h usg5-4-3.h + +Bill Meier: changed sh-script.el + +Bill Pringlemeir: changed messcompat.el + +Bill Richter: changed fill.el quail.el ccl.el encoded-kb.el fontset.el + kinsoku.el kkc.el mule-cmds.el mule-conf.el mule-util.el mule.el + +Bill Rosenblatt: wrote float.el + +Bill Rozas: wrote scheme.el +and changed xscheme.el + +Bill White: changed gnus-start.el + +Bill Wohler: wrote mh-buffers.el mh-comp.el mh-compat.el mh-e.el + mh-folder.el mh-funcs.el mh-letter.el mh-loaddefs.el mh-mime.el + mh-scan.el mh-seq.el mh-show.el mh-utils.el mh-xface.el +and changed mh-customize.el mh-index.el MH-E-NEWS mh-alias.el Makefile + mh-identity.el mh-pick.el README mh-speed.el mh-init.el mh-junk.el + mh-e.texi mh-acros.el mh-gnus.el mh-search.el mh-unit.el mh-inc.el + mh-xemacs-compat.el mh-print.el Makefile.in image.el and 88 other files + +Bjorn Solberg: changed nnimap.el + +Bj,Av(Brn Lindstr,Av(Bm: changed rcirc.texi + +Bj,Av(Brn Torkelsson: changed gnus-art.el gnus-group.el gnus-srvr.el + gnus-sum.el gnus-mlspl.el gnus-msg.el message.el dgnushack.el + gnus-agent.el gnus-cus.el gnus-gl.el gnus-nocem.el gnus-score.el + gnus-topic.el gnus.el mail-source.el nnmail.el + +Bj,Ax(Brn Mork: changed gnus-agent.el message.el mml2015.el + +Blitz Product Development Corporation: wrote ispell.el + +Boaz Ben-Zvi: wrote profile.el + +Bob Glickstein: wrote sregex.el +and changed isearch.el sendmail.el + +Bob Halley: changed esh-io.el + +Bob Rogers: changed cperl-mode.el ffap.el thingatpt.el + +Bob Weiner: changed info.el quail.el + +Boris Goldowsky: wrote avoid.el descr-text.el enriched.el facemenu.el + format.el shadowfile.el +and changed fill.el simple.el indent.el paragraphs.el cmds.c intervals.c + intervals.h add-log.el cc-mode.el enriched.doc fileio.c make-mode.el + text-mode.el textprop.c ada.el allout.el awk-mode.el bibtex.el buffer.c + buffer.h c-mode.el and 38 other files + +Boris Samorodov: changed imap.el + +Boyd Lynn Gerber: changed configure.in + +Brad Howes: changed gnus-demon.el + +Brad Miller: wrote gnus-gl.el + +Brendan Kehoe: changed hpux9.h + +Brian D. Carlstrom: changed gud.el smtpmail.el + +Brian Fox: changed Makefile.in configure.in minibuf.c dired.el files.el + rmail.el search.c simple.el sysdep.c Makefile compile.el forms.texi + frame.c info.texi keyboard.c make-dist subr.el systty.h xterm.c INSTALL + alloc.c and 44 other files + +Brian Marick: wrote hideif.el + +Brian P Templeton: changed erc.el erc-compat.el erc-fill.el + erc-nickserv.el erc-pcomplete.el erc-stamp.el erc-track.el + +Brian Palmer: changed erc.el erc-list.el + +Brian Preble: changed abbrev.el apropos.el asm-mode.el doctex.el + abbrevlist.el ada.el add-log.el appt.el array.el autoload.el + awk-mode.el bg-mouse.el bib-mode.el blackbox.el buff-menu.el + bug-screen.el bytecomp.el c++-mode.el c-comment.el c-fill.el c-mode.el + and 92 other files + +Bruno Haible: changed INSTALL emacs.1 epaths.in info.el paths.el + +Bryan D. O'connor: changed make-package + +Bryan Henderson: changed Makefile term.el + +Bryan O'sullivan: changed ange-ftp.el + +Caleb Deupree: changed winnt.el + +Carl D. Roth: changed gnus-nocem.el + +Carsten Bormann: changed ibmrs6000.h + +Carsten Dominik: wrote idlw-complete-structtag.el idlw-toolbar.el org.el + reftex-auc.el reftex-cite.el reftex-dcr.el reftex-global.el + reftex-index.el reftex-parse.el reftex-ref.el reftex-sel.el + reftex-toc.el reftex-vars.el reftex.el +and changed org.texi orgcard.tex idlw-shell.el idlwave.el idlw-rinfo.el + reftex.texi reftex-vcr.el diary-lib.el bibtex.el bookmark.el files.el + idlwave-rinfo.el idlwave-shell.el idlwave-toolbar.el + +Caveh Jalali: changed configure.in intel386.h sol2-4.h + +Changwoo Ryu: changed files.el + +Chao-Hong Liu: changed TUTORIAL.cn TUTORIAL.zh + +Charles Hannum: changed aix3-1.h aix3-2.h configure ibmrs6000.h + keyboard.c netbsd.h pop.c sysdep.c systime.h systty.h xrdb.c + +Charlie Martin: wrote autoinsert.el + +Cheng Gao: changed MORE.STUFF flymake.el tips.texi url-dired.el + url-file.el url-handlers.el url-http.el url-nfs.el + - Chong Yidong: changed files.el cus-edit.el simple.el xdisp.c longlines.el ++Chong Yidong: changed files.el simple.el cus-edit.el xdisp.c longlines.el + display.texi custom.el files.texi image-mode.el keyboard.c info.el + compile.el custom.texi text.texi xterm.c frames.texi image.c mouse.el - misc.texi startup.el wid-edit.el and 302 other files ++ misc.texi startup.el wid-edit.el and 322 other files + +Chris Hanson: changed xscheme.el scheme.el xterm.c hpux.h x11term.c + hp9000s300.h keyboard.c process.c texinfmt.el emacsclient.c sort.el + syntax.c texnfo-upd.el x11fns.c xfns.c dired.el fileio.c hp9000s800.h + indent.c info.el man.el and 17 other files + +Chris Moore: changed dired.el hexl.el replace.el Makefile.in comint.el + gnus-sum.el isearch.el jka-cmpr-hook.el pgg-gpg.el pgg-pgp.el + pgg-pgp5.el server.el shell.el tutorial.el wdired.el + +Chris Prince: changed w32term.c + +Chris Smith: wrote icon.el +and changed icon-mode.el + +Christian Limpach: changed configure.in + +Christian Lynbech: changed appt.el emacsserver.c + +Christian Neukirchen: changed mm-util.el + +Christian Plaunt: wrote soundex.el + +Christian Von Roques: changed gnus-start.el + +Christoph Bauer: changed configure.in + +Christoph Conrad: changed gnus-agent.el gnus-score.el makefile.w32-in + qp.el + +Christoph Wedler: wrote antlr-mode.el +and changed format.el gnus-art.el gnus-picon.el message.el register.el + smiley.el texinfmt.el + +Christopher Allan Webber: changed gamegrid.el tetris.el + +Christopher J. Madsen: wrote decipher.el +and changed files.el ispell.el replace.el time.el + +Chunyu Wang: changed gnus-art.el pcl-cvs.texi + +Claudio Fontana: changed Makefile.in + +Colin Marquardt: changed gnus.el message.el + +Colin Rafferty: changed message.el + +Colin Walters: wrote ibuf-ext.el ibuf-macs.el ibuffer.el +and changed calc.el replace.el update-game-score.c calc-ext.el + calc-misc.el Makefile.in calc-macs.el calc-mode.el calc-graph.el + gamegrid.el calc-aent.el calc-bin.el calc-embed.el calc-keypd.el + calc-math.el calc-prog.el calc-units.el calcalg2.el font-core.el + info.el calc-alg.el and 78 other files + +Craig Mcdaniel: changed sheap.c + +D. E. Evans: changed basic.texi + +Daiki Ueno: wrote pgg-def.el pgg-gpg.el pgg-parse.el pgg-pgp.el + pgg-pgp5.el pgg.el starttls.el +and changed gnus-sum.el mml2015.el faces.el gnus-agent.el gnus-srvr.el + message.texi mml1991.el pgg.texi utf-7.el + +Dale Gulledge: changed TUTORIAL.eo + +Dale Hagglund: changed unexelf.c + +Dale R. Worley: wrote emerge.el (public domain) +and changed mail-extr.el + +Damien Elmes: changed erc.el erc-dcc.el erc-track.el erc-log.el + erc-pcomplete.el README erc-button.el erc-nets.el erc-ring.el Makefile + erc-fill.el erc-match.el erc-members.el erc-nickserv.el + +Damon Anton Permezel: wrote hanoi.el (public domain) + +Dan Christensen: changed gnus-sum.el nnfolder.el gnus-art.el + gnus-group.el gnus-registry.el gnus-score.el nndoc.el nnmail.el + +Dan Nicolaescu: wrote iris-ansi.el romanian.el +and changed xterm.el term.el hideshow.el vc-hg.el verilog-mode.el - files.el isearch.el sh-script.el icon.el lisp.h vc.el cus-edit.el - faces.el font-lock.el grep.el diff-mode.el eterm-color.ti ibuffer.el - replace.el rxvt.el term.c and 191 other files ++ files.el isearch.el sh-script.el font-lock.el icon.el lisp.h vc.el ++ cus-edit.el faces.el grep.el diff-mode.el eterm-color.ti ibuffer.el ++ replace.el rxvt.el term.c and 192 other files + +Daniel Brockman: changed cus-start.el format-spec.el ibuffer.el rcirc.el + +Daniel Laliberte: wrote cl-specs.el cust-print.el edebug.el hideif.el + isearch.el +and changed mlconvert.el eval-region.el + +Daniel M Coffman: changed arc-mode.el + +Daniel N,Ai(Bri: changed message.el + +Daniel Ortmann: changed paragraphs.el + +Daniel Pfeiffer: wrote conf-mode.el copyright.el executable.el + sh-script.el skeleton.el two-column.el wyse50.el +and changed compile.el files.el make-mode.el apropos.el buff-menu.el + font-lock.el grep.el mpuz.el sgml-mode.el autoinsert.el cperl-mode.el + facemenu.el gomoku.el help.el imenu.el autoload.el autorevert.el + bindings.el button.el cc-fonts.el cc-mode.el and 12 other files + +Daniel Pittman: wrote tramp-vc.el +and changed gnus-spec.el gnus-sum.el nnimap.el + +Daniel Quinlan: changed dired.el info.el + +Danny Roozendaal: wrote handwrite.el + +Danny Siu: changed gnus-picon.el gnus-sum.el nndoc.el nnimap.el smiley.el + +Darren Stalder: changed gnus-util.el + +Darrin B. Jewell: changed etags.c lisp.h + +Dave Lambert: changed sol2-5.h xfns.c xterm.c xterm.h + +Dave Love: wrote autoarg.el autoconf.el benchmark.el cfengine.el + code-pages.el elide-head.el georgian.el hl-line.el latin-8.el + latin-9.el latin1-disp.el python.el refill.el rfc1345.el sgml-input.el + smiley.el subst-big5.el subst-gb2312.el subst-jis.el subst-ksc.el + tool-bar.el ucs-tables.el uni-input.el utf-16.el utf-7.el utf-8-lang.el + vc-bzr.el welsh.el +and changed configure.in Makefile.in help.el fortran.el browse-url.el + mule-cmds.el simple.el xterm.c cus-edit.el files.el info.el mule.el + wid-edit.el fns.c vc.el rfc2047.el bindings.el cus-start.el buffer.c + byte-opt.el bytecomp.el and 727 other files + +Dave Pearson: wrote 5x5.el quickurl.el + +David A. Capello: changed etags.c + +David Abrahams: changed coding.c + +David Bakhash: wrote strokes.el + +David Byers: changed minibuf.c + +David Casperson: changed menu-bar.el tex-mode.el + +David Edmondson: changed message.el gnus-cite.el imap.el mm-view.el + nnfolder.el nnml.el + +David Gillespie: wrote calc-aent.el calc-alg.el calc-arith.el calc-bin.el + calc-comb.el calc-cplx.el calc-embed.el calc-ext.el calc-fin.el + calc-forms.el calc-frac.el calc-funcs.el calc-graph.el calc-help.el + calc-incom.el calc-keypd.el calc-lang.el calc-macs.el calc-map.el + calc-math.el calc-misc.el calc-mode.el calc-mtx.el calc-poly.el + calc-prog.el calc-rewr.el calc-rules.el calc-sel.el calc-stat.el + calc-store.el calc-stuff.el calc-trail.el calc-undo.el calc-units.el + calc-vec.el calc-yank.el calc.el calcalg2.el calcalg3.el calccomp.el + calcsel2.el cl-compat.el cl-extra.el cl-macs.el cl-seq.el cl.el + cl.texinfo complete.el edmacro.el +and changed info.el bytecomp.el + +David Hansen: changed nnrss.el cc-cmds.el em-dirs.el lisp.el pcomplete.el + tempo.el + +David Hedbor: changed gnus-art.el mm-decode.el mm-view.el gnus-agent.el + gnus-cite.el gnus-cus.el gnus-eform.el gnus-group.el gnus-msg.el + gnus-score.el gnus-spec.el gnus-util.el gnus.el mail-source.el + message.el mm-encode.el mm-util.el nndoc.el nnmail.el score-mode.el + webmail.el + +David Hunter: changed config.nt flymake.el ms-w32.h process.c + +David J. Mackenzie: changed configure.in etags.c fakemail.c movemail.c + wakeup.c Makefile cvtmail.c qsort.c termcap.c yow.c Makefile.in + avoid.el b2m.c digest-doc.c emacsclient.c emacsserver.c emacstool.c + etags-vmslib.c fortran.el hexl.c isearch.el and 12 other files + +David Kastrup: changed greek.el replace.el faq.texi search.c ange-ftp.el + help.el mouse.el Makefile.in calc.el desktop.el keymaps.texi + meta-mode.el process.c search.texi subr.el woman.el DEBUG DEVEL.HUMOR + MAILINGLISTS advice.el autoload.el and 40 other files + +David K,Ae(Bgedal: wrote tempo.el +and changed sendmail.el xmenu.c + +David Lawrence: changed loaddefs.el comint.el simple.el files.el + c++-mode.el compile.el inf-lisp.el shell.el tex-mode.el MACHINES + Makefile c-mode.el cl.el dired.el emacs.1 emacsserver.c emerge.el + gnus.el history.el lisp-mode.el lisp.el and 78 other files + +David M. Brown: wrote array.el + +David M. Koppelman: changed hi-lock.el display.texi + +David M. Koppelman, Koppel@Ece.Lsu.Edu: wrote hi-lock.el + +David M. Smith: wrote ielm.el +and changed imenu.el + +David Mccabe: changed lisp-mode.el + +David Megginson: wrote derived.el +and changed mode-clone.el + +David Moore: wrote nnvirtual.el +and changed gnus-xmas.el + +David Mosberger-Tang: changed alpha.h unexelf.c cm.h config.in + configure.in cvtmail.c data.c dispnew.c emacsserver.c etags.c + fakemail.c keyboard.c mem-limits.h process.c profile.c sorted-doc.c + sysdep.c terminfo.c unexelf1.c yow.c + +David Ponce: wrote recentf.el ruler-mode.el tree-widget.el +and changed w32menu.c w32term.c close.png close.xpm empty.png empty.xpm + end-guide.png end-guide.xpm files.el guide.png guide.xpm handle.png + handle.xpm keyboard.c leaf.png leaf.xpm no-guide.png no-guide.xpm + no-handle.png no-handle.xpm open.png and 21 other files + +David Reitter: wrote mailclient.el +and changed commands.h cus-edit.el easy-mmode.el emacsbug.el + emacsclient.c keymap.c macterm.c menu-bar.el minibuf.c python.el + sendmail.el url-http.el + +David Robinson: changed menu-bar.el x-win.el + +David S. Goldberg: changed gnus-art.el message.el + +David Vazquez: changed m4-mode.el + +David Z. Maze: changed nnml.el nnrss.el + +Davis Herring: changed desktop.el timeclock.el + +Deanna Phillips: changed configure.in + +Decklin Foster: changed nngateway.el + +Deepak Goel: changed README ada-mode.el ada-xref.el appt.el apropos.el + artist.el bibtex.el bookmark.el calc-forms.el calc-mode.el + calc-units.el calc.el cmacexp.el decipher.el desktop.el diary-lib.el + dired-aux.el dnd.el doctor.el ebnf2ps.el echistory.el + and 50 other files + +Denis Bueno: changed autorevert.el + +Denis Howe: wrote browse-url.el + +Denis St,A|(Bnkel: changed ibuf-ext.el + +Derek Atkins: changed imap.el pgg-pgp.el + +Derek L. Davies: changed gud.el + +Detlev Zundel: wrote re-builder.el + +Dhruva Krishnamurthy: changed makefile.w32-in + +Dhuvra Krishnamurthy: changed makefile.w32-in w32proc.c + +Diane Murray: changed erc.el erc-menu.el erc-backend.el erc-button.el + erc-track.el erc-match.el erc-nets.el erc-list.el erc-autoaway.el + erc-capab.el erc-nickserv.el erc-stamp.el erc-compat.el erc-fill.el + erc-goodies.el erc-ibuffer.el erc-log.el url-http.el Makefile + erc-dcc.el erc-networks.el and 36 other files + +Dick King: wrote uniquify.el + +Didier Verna: wrote gnus-diary.el nndiary.el +and changed nntp.el gnus-art.el gnus-msg.el gnus-group.el gnus-start.el + gnus-sum.el gnus-xmas.el gnus-picon.el gnus-salt.el cus-edit.el rect.el + dgnushack.el gnus-agent.el gnus-ems.el gnus-fun.el gnus-topic.el + gnus.texi message.el nnmail.el nnmbox.el smiley.el + +Dirk Herrmann: changed bibtex.el + +Dmitry Antipov: changed keyboard.c + +Dominique De Waleffe: changed pcvs-info.el + +Don Morrison: wrote dabbrev.el + +Don Woods: changed replace.el + +Doug Cutting: wrote disass.el + +Doug Maxey: changed mouse.el + +Drake Wilson: changed files.el + +Drew Adams: changed cus-edit.el speedbar.el + +E. Jay Berkenbilt: changed flyspell.el ispell.el window.h + +Ed L. Cashin: changed gnus-sum.el imap.el + +Ed Swarthout: changed hexl.el + +Eduard Wiebe: changed flymake.texi + +Eduardo Mu,Aq(Boz: changed dired.el ls-lisp.el + +Edward M. Reingold: wrote cal-china.el cal-coptic.el cal-french.el + cal-islam.el cal-iso.el cal-julian.el cal-menu.el cal-move.el + cal-persia.el calendar.el diary-lib.el holidays.el lunar.el solar.el +and changed diary.el tex-mode.el cal-tex.el cal-mayan.el holiday.el + cal-x.el cal-hebrew.el cal-chinese.el cal-dst.el diary-ins.el + diary-insert.el cal-persian.el cal-islamic.el calendar.texi + list-holidays.el + +Edward O'connor: changed erc.el erc-viper.el erc-log.el erc-track.el + viper.el erc-backend.el erc-chess.el erc-dcc.el erc-ezbounce.el + erc-goodies.el erc-list.el erc-macs.el erc-match.el erc-ring.el + erc-stamp.el goto-addr.el python.el url-auth.el + +Edwin Steiner: changed gnus-nocem.el + +Ehud Karni: changed rmail.el aviion-intel.h compile.el complete.el + configure.in frame.el rmailsum.el sort.el xdisp.c + +Eirik Fuller: changed ralloc.c xterm.c + +Eli Barzilay: wrote calculator.el + +Eli Tziperman: wrote rmail-spam-filter.el + +Eli Zaretskii: wrote codepage.el rxvt.el tty-colors.el +and changed msdos.c Makefile.in makefile.w32-in files.el info.el fileio.c + startup.el mainmake.v2 rmail.el config.bat menu-bar.el simple.el + pc-win.el msdos.h internal.el xfaces.c emacs.c frame.c INSTALL dosfns.c + mule-cmds.el and 537 other files + +Emanuele Giaquinta: changed rxvt.el configure.in etags.c frame.el + gnus-faq.texi sh-script.el text.texi + +Emilio C. Lopes: changed woman.el cmuscheme.el help.el vc.el advice.el + animate.el apropos.el artist.el bookmark.el cal-menu.el calc-prog.el + calc-store.el calcalg3.el calendar.el calendar.texi checkdoc.el + code-pages.el codepage.el compile.el completion.el cus-edit.el + and 53 other files + +Emmanuel Briot: wrote ada-prj.el xml.el +and changed ada-mode.el ada-stmt.el ada-xref.el + +Enami Tsugutomo: changed frame.c keyboard.c dispnew.c fileio.c process.c + xdisp.c add-log.el bytecomp.el configure.in editfns.c emacs.c frame.h + gnus-group.el perl-mode.el rmailsum.el simple.el sysdep.c vc.el + window.c window.el + +Era Eriksson: changed dired.el shell.el + +Eric Decker: changed hp9000s800.h hpux.h sysdep.c + +Eric Ding: wrote goto-addr.el +and changed mh-utils.el mh-e.el mh-comp.el mh-mime.el + +Eric Eide: changed gnus-xmas.el + +Eric Hanchrow: changed TUTORIAL.es abbrev.el autorevert.el cperl-mode.el + delphi.el dired.el emacsclient.c erc.el ibuf-ext.el ispell.el make-dist + +,AI(Bric Jacoboni: changed fr-refcard.tex + +Eric Knauel: changed gnus.el spam-report.el spam.el + +Eric M. Ludlam: wrote checkdoc.el dframe.el ezimage.el sb-image.el + speedbar.el +and changed info.el rmail.el speedbspec.el gud.el Makefile.in comint.el + dir lisp-mnt.el rmailout.el sb-*.xpm sb-dir+.xpm sb-dir-.xpm + sb-dir-minus.xpm sb-dir-plus.xpm sb-dir.xpm sb-file+.xpm sb-file-.xpm + sb-file.xpm sb-mail.xpm sb-pg-minus.xpm sb-pg-plus.xpm + and 10 other files + +Eric Marsden: changed gnus-cache.el url-util.el + +Eric S. Raymond: wrote AT386.el asm-mode.el cookie1.el finder.el gud.el + keyswap.el lisp-mnt.el loadhist.el +and changed vc.el Makefile.in files.el comint.el loaddefs.el simple.el + vc-hooks.el cust-print.el dired.el emacsbug.el help.el isearch.el + makefile.el tex-mode.el x-win.el bibtex.el buff-menu.el bytecomp.el + c-mode.el cmulisp.el cmuscheme.el and 217 other files + +Eric Youngdale: changed etags-vmslib.c + +Erik Naggum: wrote disp-table.el latin-4.el latin-5.el mailheader.el + parse-time.el +and changed simple.el emacs.c files.el lread.c rmail.el alloc.c editfns.c + keyboard.c apropos.el configure.in dispnew.c filelock.c fns.c keymap.c + lisp.h print.c process.c add-log.el buffer.c casetab.c cl-macs.el + and 112 other files + +Erik Toubro Nielsen: changed gnus-sum.el gnus-topic.el + +Espen Skoglund: wrote pascal.el + +Ethan Bradford: changed ispell.el ange-ftp.el gnus.el gnuspost.el lpr.el + mailalias.el vt-control.el + +Eugene Exarevsky: changed sql.el + +Evgeni Dobrev: changed man.el + +Evgeny Roubinchtein: changed mail-source.el pc-select.el + +F. Thomas May: wrote blackbox.el + +Fabrice Bauzac: changed dired-aux.el + +Fabrice Popineau: changed etags.c gnus-cache.el + +Faried Nawaz: changed message.el + +Felix Lee: changed flyspell.el outline.el compile.el data.c gud.el + nntp.el process.c vc.el xdisp.c + +Ferenc Wagner: changed nnweb.el + +Flemming Hoejstrup Hansen: changed forms.el + +Florian Weimer: changed message.el gnus.el coding.c gnus.texi mm-util.el + +Francesc Rocher: changed cus-start.el macterm.c w32term.c xdisp.c xterm.c + +Francesco Potort,Al(B: wrote cmacexp.el +and changed etags.c man.el delta.h etags.1 undigest.el comint.el + configure.in maintaining.texi uniquify.el latin-post.el rmail.el + Makefile.in etags.el latin-alt.el sgml-mode.el data.c european.el + filelock.c files.el generic-x.el gud.el and 44 other files + +Francis J. Wright: wrote woman.el +and changed dired.el comint.el files.el + +Francis Litterio: changed erc.el erc-list.el erc-dcc.el erc-notify.el + erc-button.el erc-goodies.el erc-nets.el erc-ring.el Makefile + erc-pcomplete.el erc-backend.el erc-ibuffer.el erc-match.el + erc-nickserv.el erc-page.el erc-speedbar.el gnus-util.el keymaps.texi + message.el os.texi saveplace.el and 4 other files + +Francois Felix Ingrand: changed gnus-salt.el + +Frank Bennett: changed nnmail.el + +Frank Bresz: wrote diff.el + +Frank Schmitt: changed gnus-sum.el gnus-util.el + +Frank Weinberg: changed gnus-art.el + +Fran,Ag(Bois Pinard: changed nndoc.el allout.el bytecomp.el gnus-sum.el + gnus-util.el gnus-uu.el make-mode.el nnmail.el rmailsum.el timezone.el + +Fran,Ag(Bois-David Collin: changed message.el mm-decode.el + +Fred Fish: changed linux.h unexec.c + +Fred Oberhauser: changed nnmail.el + +Frederic Han: changed iso-cvt.el + +Frederic Lepied: wrote expand.el +and changed gnus.el + +Frederic Pierresteguy: wrote widget.c +and changed xmenu.c xterm.c xfns.c dpx2.h lwlib.c rmailsum.el rmail.el + xlwmenu.c xterm.h lwlib-Xaw.c lwlib-Xlw.c Makefile.in configure.in + lwlib-Xaw.h lwlib-int.h xdisp.c compile.el editfns.c fns.c frame.h + hilit19.el and 9 other files + +Frederik Fouvry: changed sendmail.el TUTORIAL.nl emacs.bash faces.el + filecache.el mailalias.el rmail.el thumbs.el + +Fritz Knabe: changed mh-mime.el + +Fr,Ai(Bd,Ai(Bric Bothamy: changed TUTORIAL.fr + +G Dinesh Dutt: changed etags.el + +Gareth Jones: changed fns.c gnus-score.el + +Garrett Wollman: changed sendmail.el + +Gary Byers: changed xenix.h + +Gary D. Foster: wrote crisp.el scroll-all.el +and changed gnus-group.el gnus-topic.el + +Gary Delp: wrote mailpost.el (public domain) + +Gary Howell: changed server.el + +Gary Oberbrunner: changed gud.el + +Gary Wong: changed termcap.c tparam.c + +Gaute B Strokkenes: changed imap.el gnus-fun.el mail-source.el process.c + +Geoff Greene: changed message.el + +Geoff Voelker: wrote lisp/makefile.nt nt.c nt.h ntheap.c ntheap.h + ntinevt.c ntproc.c ntterm.c src/makefile.nt w32-fns.el windowsnt.h + winnt.el +and changed w32.c w32fns.c fileio.c w32heap.c w32term.c w32inevt.c + callproc.c s/ms-w32.h w32proc.c unexw32.c w32term.h dos-w32.el + emacs.bat loadup.el w32-win.el emacs.c keyboard.c process.c + w32console.c addpm.c cmdproxy.c and 106 other files + +Georg C. F. Greve: changed pgg-gpg.el + +George V. Reilly: changed emacs.ico + +Georges Brun-Cottan: wrote easy-mmode.el + +Gerd M,Av(Bllmann: wrote authors.el ebrowse.el jit-lock.el rx.el tooltip.el +and changed xdisp.c xterm.c dispnew.c dispextern.h xfns.c xfaces.c + window.c keyboard.c lisp.h Makefile.in faces.el alloc.c buffer.c + startup.el xterm.h fns.c simple.el term.c configure.in frame.c xmenu.c + and 620 other files + +Gergely Nagy: changed erc.el + +Germano Caronni: changed ralloc.c + +Gernot Heiser: changed refer.el + +Giorgos Keramidas: changed configure.in MACHINES amdx86-64.h apropos.el + display.texi fringe.c fringe.el lisp.h windows.texi xmenu.c + +Giuseppe Scrivano: changed buffer.c configure.in sysdep.c xsmfns.c + +Glenn Morris: changed f90.el diary-lib.el calendar.el fortran.el + calendar.texi COPYING appt.el Makefile.in files.el sh-script.el + timeclock.el cal-menu.el configure.in simple.el tex-mode.el calc.texi + complete.el fr-refcard.tex orgcard.tex programs.texi startup.el - and 249 other files ++ and 250 other files + +Glynn Clements: wrote gamegrid.el snake.el tetris.el + +Gordon Matzigkeit: changed gnus-uu.el + +Greg Hill: changed bytecomp.el + +Greg Hudson: changed configure.in indent.c + +Greg Klanderman: changed messagexmas.el + +Greg Mcgary: changed tar-mode.el + +Greg Stark: changed gnus-ems.el timezone.el + +Gregor Schmid: wrote tcl-mode.el +and changed intervals.c intervals.h textprop.c dispnew.c indent.c xdisp.c + +Gregorio Gervasio, Jr.: changed gnus-sum.el + +Gregory Chernov: changed nnslashdot.el + +Gregory Neil Shapiro: changed mailabbrev.el + +Guanpeng Xu: changed add-log.el TUTORIAL.cn display.texi mouse.el + type-break.el + +Guillermo J. Rozas: wrote fakemail.c + +Gunnar Horrigmo: changed gnus-sum.el + +Gustav H,Ae(Bllberg: changed compile.el rect.el + +Guy Geens: changed gnus-score.el + +Gwern Branwen: changed browse-url.el + +G,Av(Bran Uddeborg: changed isc4-1.h + +Hallvard B. Furuseth: changed gnus-util.el editfns.c gnus-cache.el + gnus-sum.el lread.c messcompat.el nntp.el print.c process.c search.c + +Han Boetes: changed netbsd.h + +Han-Wen Nienhuys: changed emacsclient.c server.el + +Hans Chalupsky: wrote advice.el trace.el +and changed bytecomp.el + +Hans De Graaff: changed mml.el + +Hans Henrik Eriksen: wrote simula.el + +Harald Maier: changed w32heap.c + +Harald Meland: changed gnus-art.el gnus-salt.el gnus-score.el + gnus-util.el gnus-win.el + +Heiko Muenkel: changed b2m.c + +Helmut Waitzmann: changed gnus-sum.el gnus.texi + +Henrik Enberg: changed gnus-art.el gnus-msg.el lread.c rmailout.el + xfaces.c + +Henry Guillaume: wrote find-file.el + +Henry Kautz: wrote bib-mode.el refbib.el + +Hewlett-Packard: changed emacsclient.c emacsserver.c keyboard.c server.el + +Hideki Iwamoto: changed etags.c + +Hiroshi Fujishima: changed faq.texi mail-source.el spam-stat.el + +Hiroshi Nakano: changed ralloc.c unexelf.c + +Hoan Ton-That: changed erc-log.el + +Holger Schauer: wrote fortune.el +and changed message-utils.el + +Hovav Shacham: wrote windmove.el + +Howard Gayle: wrote case-table.el casetab.c disp-table.el iso-ascii.el + iso-insert.el iso-swed.el iso-syntax.el iso-transl.el latin-1.el + rot13.el swedish.el vt100-led.el + +Howard Melman: changed imenu.el picture.el + +Howie Kaye: wrote sort.el + +Hrvoje Nik,B9(Bi,Bf(B: wrote croatian.el savehist.el +and changed gnus-xmas.el message.el nnmail.el fileio.c fns.c gnus-art.el + gnus-salt.el gnus-spec.el mm-decode.el add-log.el appt.el arc-mode.el + avoid.el bookmark.el cal-china.el cal-tex.el calendar.el cl-indent.el + cmacexp.el comint.el compile.el and 83 other files + +H,Ae(Bkan Granath: changed dired.el + +H,Ae(Bkon Malmedal: changed calendar.el holidays.el + +Ian Lance Taylor: changed sco4.h + +Ian T Zimmerman: wrote gametree.el +and changed ange-ftp.el desktop.el tex-mode.el + +Ilja Weis: wrote gnus-topic.el + +Ilya N. Golubev: changed mm-util.el shell.el + +Ilya Zakharevich: wrote tmm.el +and changed cperl-mode.el syntax.c syntax.h textprop.c dired.c + font-lock.el interval.c intervals.c intervals.h regex.c regex.h + search.c + +Ilya Zakharevich And Bob Olson: wrote cperl-mode.el + +Indiana University Foundation: changed buffer.c buffer.h indent.c + region-cache.c region-cache.h search.c xdisp.c + +Inge Frick: changed easymenu.el keyboard.c view.el compile.el + dired-aux.el arc-mode.el dired.el files.el gnus-sum.el keyboard.h + keymap.c tar-mode.el window.el xmenu.c + +Inoue Seiichiro: changed xterm.c xfns.c xterm.h + +International Business Machines: changed emacs.c fileio.c ibmrt-aix.h + ibmrt.h process.c sysdep.c unexec.c + +Irie Tetsuya: changed gnus.texi message.texi + +Ishikawa Chiaki: changed aviion.h dgux.h + +Istvan Marko: changed gnus-agent.el xfns.c + +Itai Zukerman: changed mm-decode.el + +Ivan Boldyrev: changed mml1991.el + +Ivan Kanis: wrote vc-hg.el + +Ivan Zakharyaschev: changed codepage.el lread.c + +Ivar Rummelhoff: wrote winner.el + +Iwamuro Motonori: changed gnus-kill.el + +J.D. Smith: changed idlwave.el idlw-shell.el idlw-help.el idlw-rinfo.el + idlw-toolbar.el comint.el idlwave.texi vc.el bibtex.el files.texi + hideshow.el idlw-complete-structtag.el misc.texi mouse.el + +Jaap-Henk Hoepman: changed mm-decode.el + +Jack Repenning: changed unexelfsgi.c + +Jack Twilley: changed message.el + +Jacob Morzinski: changed mh-comp.el + +Jacques Duthen: changed ps-print.el + +Jaeyoun Chung: changed hangul3.el hanja3.el gnus-mule.el hangul.el + +James Clark: wrote sgml-mode.el +and changed fns.c window.c xselect.c + +James Cloos: changed url-history.el + +James R. Larus: wrote mh-e.el + +James R. Van Zandt: changed sh-script.el + +James Troup: changed gnus-sum.el + +James Van Artsdalen: changed unexec.c usg5-4.h + +Jamie Zawinski: wrote byte-opt.el byte-run.el bytecomp.el disass.el + mailabbrev.el tar-mode.el +and changed bytecode.c mail-extr.el subr.el + +Jan Dj,Ad(Brv: wrote dnd.el x-dnd.el +and changed gtkutil.c xterm.c xfns.c xmenu.c xterm.h configure.in + x-win.el gtkutil.h keyboard.c Makefile.in frames.texi config.in + xselect.c emacs.c alloc.c xlwmenu.c xresources.texi startup.el frame.c + xdisp.c xfaces.c and 177 other files + +Jan Nieuwenhuizen: changed info.el TUTORIAL.nl emacs.c emacsclient.c + gnus-start.el gud.el nnmh.el server.el startup.el + +Jan Rychter: changed gnus-msg.el + +Jan Schormann: wrote solitaire.el + +Jan Vroonhof: changed gnus-cite.el gnus-msg.el nntp.el + +Jan-Hein Buhrman: changed ange-ftp.el env.el + +Jari Aalto: changed add-log.el filecache.el gnus-art.el lisp-mnt.el + man.el nnmail.el apropos.el autorevert.el comint.el compile.el + cperl-mode.el debug.el executable.el files.el finder.el font-lock.el + gnus.el gnus.texi grep.el ls-lisp.el sendmail.el terminal.el + +Jason Merrill: changed gnus-sum.el gnus-salt.el imap.el nnfolder.el + +Jason Rumney: wrote w32-vars.el +and changed w32fns.c w32term.c w32menu.c w32-win.el makefile.w32-in + w32term.h w32.c w32bdf.c w32-fns.el w32proc.c w32select.c w32console.c + mule-cmds.el w32gui.h keyboard.c emacs.c fileio.c files.el nmake.defs + w32bdf.h w32inevt.c and 94 other files + +Jay Belanger: changed calc.texi calc.el calc-ext.el calc-embed.el + calc-aent.el calc-prog.el calc-arith.el calc-help.el calc-lang.el + calcalg2.el COPYING calc-graph.el calc-store.el calc-units.el + calc-misc.el calc-yank.el calc-alg.el calc-poly.el calccomp.el + calc-mode.el calc-forms.el and 35 other files + +Jay K. Adams: wrote jka-cmpr-hook.el jka-compr.el + +Jay Sachs: changed gnus-score.el gnus-win.el + +Jean-Philippe Theberge: wrote thumbs.el + +Jeff Dwork: changed ehelp.el facemenu.el + +Jeff Miller: changed appt.el calendar.el + +Jeff Morgenthaler: changed flow-ctrl.el vt200.el vt201.el vt220.el + vt240.el + +Jeff Norden: wrote kermit.el + +Jeff Peck: wrote sun-curs.el sun-fns.el sun-mouse.el sun.el + +Jeffrey C Honig: wrote mh-print.el +and changed mh-comp.el mh-e.el mh-utils.el mh-customize.el mh-funcs.el + mh-mime.el mh-seq.el Makefile bsdos4.h mh-alias.el mh-junk.el + mh-loaddefs.el + +Jens Krinke: changed smime.el + +Jens Lautenbacher: changed gnus.el + +Jens Petersen: wrote find-func.el +and changed ffap.el mule-cmds.el + +Jens Toivo Berger Thielemann: changed word-help.el + +Jens-Ulrik Holger Petersen: changed cus-edit.el find-func.el gnus.el + +Jeramey Crawford: changed amdx86-64.h configure.in + +Jeremy Bertram Maitin-Shepard: changed erc.el erc-backend.el + erc-button.el mml.el + +Jerry Frain: changed systime.h usg5-4.h + +Jerry James: changed format.el dns.el gnus-util.el gnus-xmas.el + +Jesper Harder: wrote yenc.el +and changed gnus-art.el gnus-sum.el message.el gnus-msg.el gnus.el + gnus-group.el mm-bodies.el gnus-util.el mm-util.el mm-decode.el mml.el + rfc2047.el mailcap.el mm-uu.el mml1991.el pgg-gpg.el smtpmail.el + gnus-srvr.el info.el nnmail.el pgg.el and 178 other files + +Jhair Tocancipa Triana: changed gnus-audio.el + +Jim Blandy: wrote tvi970.el +and changed keyboard.c xterm.c xfns.c Makefile.in window.c process.c + dispnew.c xdisp.c sysdep.c configure.in lisp.h keymap.c configure + make-dist buffer.c frame.c screen.c x-win.el simple.el alloc.c emacs.c + and 389 other files + +Jim Kingdon: changed MACHINES SERVICE emacsclient.c emacs.tex hp300bsd.h + rmail.el + +Jim Meyering: changed Makefile.in autoinsert.el copyright.el + grep-changelog + +Jim Radford: changed gnus-start.el + +Jim Salem: wrote completion.el + +Jim Thompson: wrote ps-print.el + +Jim Wilson: changed Makefile.in alloca.c + +Jindrich Makovicka: changed eval.c fns.c + +Jirka Kosek: changed mule.el + +Joakim Hove: wrote html2text.el + +Joakim Verona: changed nnrss.el + +Joanna Pluta: changed TUTORIAL.pl + +Jochen Hein: changed gnus-art.el + +Jochen K,A|(Bpper: changed calc-units.el gnus.texi + +Joe Buehler: changed Makefile.in configure.in cygwin.h MACHINES + browse-url.el comint.el configure dired-aux.el dired.el dirtrack.el + dos-w32.el fast-lock.el filecache.el fileio.c files.el gmalloc.c + gnus-util.el hippie-exp.el keyboard.c lastfile.c loadup.el + and 12 other files + +Joe Casadonte: changed gnus-srvr.el + +Joe Corneli: changed subr.el + +Joe Edmonds: changed lisp-mode.el + +Joe Kelsey: changed skeleton.el + +Joe Ramey: changed filelock.c rmailsum.el + +Joe Reiss: changed gnus-art.el + +Joe Wells: wrote apropos.el mail-extr.el resume.el +and changed arc-mode.el tex-mode.el + +Joel N. Weber Ii: changed comint.el make-dist + +Joel Ray Holveck: changed gnus-sum.el info.el + +Joev Dubach: changed nntp.el + ++Johan Bockg$: changed info.el ++ +Johan Bockg,Ae(Brd: changed erc.el erc-backend.el cl-macs.el erc-match.el + custom.el erc-nickserv.el erc-ring.el erc-speak.el erc-track.el - simple.el xterm.el align.el browse-url.el bytecomp.el calendar.el - cl.texi dired-aux.el dired-x.el display.texi erc-bbdb.el erc-button.el ++ simple.el subr.el xterm.el align.el browse-url.el bytecomp.el ++ calendar.el cl.texi dired-aux.el dired-x.el display.texi erc-bbdb.el + and 23 other files + +Johan Vromans: wrote forms-d2.el forms.el iso-acc.el +and changed complete.el + +Johannes Weiner: changed lisp-mode.el + +John Basrai: changed man.el + +John F. Carr: changed dired.c + +John F. Whitehead: changed mule-cmds.el mule-diag.el + +John Fremlin: changed gnus-msg.el message.el + +John Grabowski: changed xfaces.c xfns.c + +John H. Palmieri: changed gnus-fun.el + +John Heidemann: wrote mouse-copy.el mouse-drag.el + +John Hughes: changed term.c + +John J Foerch: changed erc-stamp.el + +John Mongan: changed f90.el + +John Paul Wallington: changed ibuffer.el ibuf-ext.el subr.el files.el + help-fns.el rmail.el thumbs.el fns.c xfns.c bindings.el bytecomp.el + cus-theme.el info.el re-builder.el simple.el startup.el apropos.el + arc-mode.el browse-url.el comint.el cus-start.el and 117 other files + +John Robinson: wrote bg-mouse.el + +John Sullivan: changed window.c + +John Tobey: changed gud.el + +John W. Eaton: wrote octave-hlp.el octave-inf.el octave-mod.el + +John Wiegley: wrote align.el cal-bahai.el em-alias.el em-banner.el + em-basic.el em-cmpl.el em-dirs.el em-glob.el em-hist.el em-ls.el + em-pred.el em-prompt.el em-rebind.el em-script.el em-smart.el + em-term.el em-unix.el em-xtra.el erc-identd.el esh-arg.el esh-cmd.el + esh-ext.el esh-io.el esh-maint.el esh-mode.el esh-module.el esh-opt.el + esh-proc.el esh-test.el esh-util.el esh-var.el eshell.el eudcb-mab.el + isearchb.el pcmpl-cvs.el pcomplete.el remember.el timeclock.el +and changed erc-chess.el erc.el iswitchb.el Makefile.in allout.el + cal-menu.el calendar.el compile.el desktop.el diary-lib.el erc-bbdb.el + erc-button.el erc-complete.el erc-fill.el erc-ibuffer.el erc-list.el + erc-match.el erc-menu.el erc-nets.el erc-replace.el erc-speak.el + and 12 other files + +John Williams: changed etags.el + +Jon Ericson: changed gnus.el spam-report.el + +Jon K Hellan: wrote utf7.el + +Jonathan I. Kamens: changed pop.c movemail.c rmail.el configure.in + Makefile.in b2m.pl config.in files.el pop.h terminal.el vc.el + gnus-sum.el jka-compr.el rmailout.el rnewspost.el sendmail.el simple.el + timezone.el vc-hooks.el + +Jonathan Stigelman: wrote hilit19.el + +Jonathan Vail: changed vc.el + +Jonathan Yavner: wrote ses.el tcover-ses.el tcover-unsafep.el + testcover.el unsafep.el +and changed ses.texi Makefile.in edebug.el editfns.c files.el + functions.texi ses-example.ses subr.el variables.texi + +Jorgen Schaefer: wrote erc-autoaway.el erc-goodies.el erc-spelling.el +and changed erc.el erc-track.el erc-backend.el erc-match.el erc-stamp.el + erc-button.el erc-fill.el erc-truncate.el erc-compat.el erc-members.el + Makefile erc-dcc.el erc-ibuffer.el erc-page.el erc-pcomplete.el + erc-sound.el erc-bbdb.el erc-imenu.el erc-lang.el erc-list.el + erc-macs.el and 9 other files + +Jose E. Marchesi: changed smtpmail.el + +Joseph Arceneaux: wrote xrdb.c +and changed xterm.c xfns.c keyboard.c screen.c dispnew.c xdisp.c window.c + x-win.el fileio.c buffer.c xterm.h minibuf.c editfns.c lread.c + process.c alloc.c buffer.h screen.el files.el insdel.c emacs.c + and 105 other files + +Joseph M. Kelsey: changed dir.h fileio.c uaf.h vms-pwd.h vmsfns.c + +Josh Huber: changed mml-sec.el gnus-msg.el message.el mml.el mml2015.el + nnmail.el ChangeLog ChangeLog.1 gnus-cite.el gnus-delay.el gnus-spec.el + mml1991.el nnultimate.el nnwfm.el gnus-cus.el gnus-smiley.el + gnus-start.el gnus-topic.el gnus.el nnbabyl.el nndiary.el + and 8 other files + +Joshua Varner: changed intro.texi + +Jouni K. Sepp,Ad(Bnen: changed gnus.texi nnimap.el mm-url.el + +Juan Le,As(Bn Lahoz Garc,Am(Ba: wrote wdired.el +and changed files.el perl-mode.el + +Juanma Barranquero: changed makefile.w32-in subr.el faces.el files.el + help-fns.el bs.el w32fns.c buffer.c simple.el desktop.el emacsclient.c + replace.el eval.c org.el idlwave.el ido.el process.c vhdl-mode.el - window.c xdisp.c allout.el and 660 other files ++ window.c xdisp.c allout.el and 661 other files + +Juergen Hoetzel: changed url-handlers.el + +Juergen Nickelsen: wrote ws-mode.el + +Julien Avarre: changed gnus-fun.el + +Julien Gilles: wrote gnus-ml.el + +Junio Hamano: changed window.el + +Jure Cuhalev: changed ispell.el + +Juri Linkov: changed info.el simple.el isearch.el replace.el compile.el - faces.el display.texi grep.el descr-text.el cus-edit.el startup.el - dired.el dired-aux.el edebug.el compare-w.el desktop.el files.el ++ faces.el display.texi grep.el descr-text.el cus-edit.el dired.el ++ startup.el dired-aux.el edebug.el compare-w.el desktop.el files.el + lisp-mode.el lisp.el man.el menu-bar.el and 224 other files + +Justin Sheehy: changed gnus-sum.el nntp.el + +J,Ai(Br,At(Bme Marant: changed Makefile.in make-dist bindings.el configure.in + emacsclient.c misc.texi + +K. Shane Hartman: wrote chistory.el echistory.el electric.el emacsbug.el + helper.el picture.el view.el +and changed rmail.el loaddefs.el ebuff-menu.el dired.el simple.el + add-log.el lisp-mode.el shell.el buff-menu.el buffer.c c-mode.el + mail-utils.el mim-mode.el more-mode.el aton.el c++-mode.el cmds.c + compile.el files.el gud.el indent.el and 14 other files + +Kahlil Hodgson: changed timeclock.el + +Kai Gro,A_(Bjohann: wrote gnus-delay.el tramp-util.el tramp-uu.el tramp.el + trampver.el +and changed gnus-agent.el message.el gnus-sum.el files.el nnmail.el + tramp.texi gnus.el simple.el ange-ftp.el Makefile.in dired.el + paragraphs.el bindings.el files.texi gnus-art.el gnus-group.el man.el + nntp.el INSTALL crisp.el fileio.c and 44 other files + +Kailash C. Chowksey: changed HELLO Makefile.in ind-util.el kannada.el + knd-util.el loadup.el makefile.w32-in + +Kanematsu Daiji: changed nnimap.el + +Karl Berry: changed emacs.texi info.texi elisp.texi anti.texi + display.texi emacs-xtra.texi filelock.c gnu.texi mule.texi texinfo.tex + text.texi .cvsignore building.texi cmdargs.texi control.texi + copyright.el custom.texi customize.texi dired.c dired.texi faq.texi + and 77 other files + +Karl Chen: changed files.el align.el cc-vars.el gnus-art.el help-mode.el + jka-cmpr-hook.el make-mode.el perl-mode.el python.el tex-mode.el + vc-svn.el + +Karl Eichwalder: changed Makefile.in add-log.el bookmark.el dired-aux.el + dired.el info.el menu-bar.el midnight.el po.el + +Karl Fogel: wrote bookmark.el mail-hist.el saveplace.el +and changed isearch.el menu-bar.el simple.el autogen.sh editfns.c + nnmail.el vc-svn.el window.c + +Karl Heuer: changed keyboard.c lisp.h xdisp.c buffer.c xfns.c xterm.c + alloc.c files.el frame.c configure.in window.c data.c minibuf.c + editfns.c fns.c process.c fileio.c simple.el keymap.c indent.c sysdep.c + and 444 other files + +Karl Kleinpaste: changed gnus-sum.el gnus-art.el gnus-picon.el + gnus-score.el gnus-uu.el gnus-xmas.el gnus.el mm-uu.el mml.el nnmail.el + smiley.el + +Karl M. Hegbloom: changed gnus.el + +Karl Pfl,Ad(Bsterer: changed gnus-art.el gnus-score.el spam-stat.el + +Katsuhiro Hermit Endo: changed gnus-group.el gnus-spec.el + +Katsumi Yamaoka: wrote canlock.el +and changed gnus-art.el message.el gnus-sum.el gnus.texi mm-decode.el - mm-view.el gnus-util.el gnus.el mm-util.el gnus-msg.el gnus-agent.el - gnus-start.el lpath.el nntp.el rfc2047.el gnus-group.el dgnushack.el - mm-uu.el mml.el nnrss.el message.texi and 76 other files ++ mm-view.el gnus-util.el gnus.el mm-util.el gnus-msg.el nntp.el ++ gnus-agent.el gnus-start.el lpath.el rfc2047.el gnus-group.el ++ dgnushack.el mm-uu.el mml.el nnrss.el message.texi and 76 other files + +Kaveh R. Ghazi: changed delta88k.h xterm.c + +Kawabata, Taichi: wrote indian.el +and changed devanagari.el ind-util.el Makefile.in devan-util.el + characters.el fontset.el malayalam.el mlm-util.el mule-conf.el tamil.el + tml-util.el + +Kayvan Sylvan: changed sc.el + +Kazushi Marukawa: changed filelock.c hexl.c profile.c unexalpha.c + +Keiichi Suzuki: changed nntp.el + +Keisuke Nishida: changed print.c alloc.c bytecomp.el data.c keymap.c + +Keith Gabryelski: wrote hexl.c hexl.el + +Ken Brush: changed emacsclient.c + +Ken Laprade: changed simple.el + +Ken Manheimer: wrote allout.el icomplete.el +and changed pgg-gpg.el pgg.el pgg-pgp.el pgg-pgp5.el edebug.el pgg.texi + tips.texi + +Ken Raeburn: changed lisp.h buffer.c alloc.c keyboard.c lread.c minibuf.c + coding.c Makefile.in editfns.c fileio.c fns.c keymap.c undo.c xdisp.c + xfns.c xterm.c charset.h fontset.c search.c window.c charset.c + and 84 other files + +Ken Stevens: wrote ispell.el + +Kenichi Handa: wrote cyrillic.el isearch-x.el py-punct.el pypunct-b5.el + quail.el thai-word.el +and changed coding.c mule-cmds.el mule.el charset.c fileio.c xterm.c + fns.c ccl.c Makefile.in mule-conf.el fontset.c charset.h coding.h + fontset.el mule-diag.el xdisp.c editfns.c process.c insdel.c + japanese.el characters.el and 286 other files + +Kenneth Stailey: changed alpha.h configure.in ns32000.h openbsd.h pmax.h + sparc.h unexalpha.c unexelf.c + +Kevin Blake: changed font-lock.el ring.el + +Kevin Broadey: wrote foldout.el + +Kevin Christian: changed gnus-score.el + +Kevin Gallagher: wrote edt-lk201.el edt-mapper.el edt-pc.el edt-vt100.el + edt.el flow-ctrl.el +and changed edt-user.doc + +Kevin Gallo: wrote w32-win.el +and changed dispnew.c addpm.c config.nt dispextern.h emacs.c facemenu.el + faces.el fns.c frame.c frame.h keyboard.c mouse.el ntterm.c process.c + s/ms-w32.h scroll.c startup.el sysdep.c term.c unexw32.c w32.c + and 16 other files + +Kevin Greiner: wrote legacy-gnus-agent.el +and changed gnus-agent.el gnus-start.el gnus-sum.el gnus-int.el gnus.el + nntp.el gnus-util.el gnus-group.el gnus-cus.el gnus-range.el + gnus-art.el gnus-cache.el gnus-srvr.el nnagent.el nnheader.el + dgnushack.el gnus-async.el gnus-draft.el gnus-registry.el gnus-salt.el + gnus-uu.el and 3 other files + +Kevin Layer: changed w32proc.c + +Kevin Rodgers: changed compile.el mailabbrev.el dired-x.el files.el + ange-ftp.el byte-opt.el desktop.el diff-mode.el dired-x.texi ffap.el + files.texi flyspell.el isearch.el killing.texi lisp.el loadhist.el + mailalias.el menu-bar.el print.c replace.el sendmail.el + and 5 other files + +Kevin Ryde: wrote info-xref.el +and changed info-look.el info.el mule.el arc-mode.el cl.texi gnus-art.el + gnus-sum.el mailcap.el os.texi text.texi MORE.STUFF cal-dst.el + calendar.texi cc-align.el cmdargs.texi compilation.txt compile.el + compile.texi custom.texi display.texi em-alias.el and 22 other files + +Kim F. Storm: wrote bindat.el cua-base.el cua-gmrk.el cua-rect.el ido.el + keypad.el kmacro.el +and changed xdisp.c dispextern.h process.c simple.el window.c keyboard.c + xterm.c subr.el w32term.c dispnew.c lisp.h fringe.c macterm.c + display.texi fns.c alloc.c xfaces.c keymap.c xfns.c xterm.h .gdbinit + and 255 other files + +Kim-Minh Kaplan: changed gnus-picon.el gnus-sum.el gnus-start.el + gnus-win.el gnus-xmas.el gnus.texi message.el nndraft.el nnml.el + +Kimit Yada: changed copyright.el + +Kishore Kumar: changed terminal.el + +Klaus Straubinger: changed url-http.el url-history.el url-cookie.el + url.el + +Klaus Zeitler: changed configure.in files.el sh-script.el vcursor.el + +Koaunghi Un: wrote hanja3.el +and changed hanja.el hangul.el hangul3.el hanja-jis.el symbol-ksc.el + +Kobayashi Yasuhiro: changed w32fns.c configure.bat indent.c info.el + w32term.c w32term.h window.c xfns.c + +Kohtala Marko: changed info.el + +Konstantin Novitsky: changed python.el + +Koseki Yoshinori: wrote iimage.el +and changed nnmail.el + +Kurt B. Kaiser: changed message.el + +Kurt Hornik: wrote octave-hlp.el octave-inf.el octave-mod.el +and changed battery.el ielm.el term.el + +Kurt Swanson: changed gnus-art.el gnus-salt.el gnus-sum.el gnus-ems.el + gnus-group.el gnus-msg.el gnus-score.el gnus-util.el nnmail.el window.c + +Kyle Jones: wrote life.el mldrag.el +and changed saveconf.el buffer.c mail-utils.el sendmail.el + +Kyotaro Horiguchi: changed coding.c indent.c + +K,Aa(Broly L$,1 q(Brentey: changed xfns.c bindings.el keyboard.c HELLO authors.el + buff-menu.el buffer.c buffers.texi cmds.c coding.c editfns.c frame.el + menu-bar.el print.c simple.el xdisp.c xterm.c xterm.h + +Larry Kolodney: wrote cvtmail.c + +Lars Balker Rasmussen: changed gnus-art.el gnus-agent.el message.el + +Lars Brinkhoff: changed building.texi config.in configure.in editfns.c + fns.c os.texi + +Lars Hansen: changed desktop.el tramp.el info.el mh-e.el dired-x.el + dired-x.texi dired.el ls-lisp.el rmail.el dired.c files.texi grp.h + hilit-chg.el misc.texi url-auth.el url-cache.el url-dired.el url-ftp.el + url-irc.el url-misc.el url-news.el and 39 other files + +Lars Lindberg: wrote imenu.el msb.el +and changed dabbrev.el + +Lars Magne Ingebrigtsen: wrote compface.el dns.el format-spec.el + gnus-agent.el gnus-art.el gnus-async.el gnus-bcklg.el gnus-cache.el + gnus-demon.el gnus-draft.el gnus-dup.el gnus-eform.el gnus-ems.el + gnus-fun.el gnus-group.el gnus-int.el gnus-logic.el gnus-move.el + gnus-nocem.el gnus-picon.el gnus-range.el gnus-salt.el gnus-spec.el + gnus-srvr.el gnus-start.el gnus-sum.el gnus-undo.el gnus-util.el + gnus-uu.el gnus-win.el ietf-drums.el mail-parse.el mail-prsvr.el + mail-source.el message.el messcompat.el mm-bodies.el mm-decode.el + mm-encode.el mm-util.el mm-view.el mml.el netrc.el nnagent.el + nnbabyl.el nndir.el nndoc.el nndraft.el nneething.el nngateway.el + nnkiboze.el nnlistserv.el nnmail.el nnmbox.el nnmh.el nnoo.el + nnslashdot.el nnsoup.el nntp.el nnultimate.el nnweb.el nnwfm.el qp.el + rfc2045.el rfc2047.el rfc2231.el score-mode.el spam.el time-date.el +and changed gnus.el gnus-msg.el gnus-score.el gnus-topic.el gnus-xmas.el + nnfolder.el gnus-cite.el nnheader.el nnml.el lpath.el nnvirtual.el + dgnushack.el gnus-cus.el smiley-ems.el editfns.c gnus-mh.el + gnus-soup.el gnus.texi nnrss.el pop3.el fns.c and 46 other files + +Lasse Rasinen: changed gnus-start.el + +Laurent Martelli: changed mm-decode.el + +Lawrence Mitchell: wrote erc-backend.el erc-log.el +and changed erc.el erc-match.el erc-nets.el erc-nickserv.el erc-button.el + erc-compat.el erc-dcc.el erc-fill.el erc-list.el erc-track.el Makefile + erc-autoaway.el erc-autojoin.el erc-bbdb.el erc-ezbounce.el erc-menu.el + erc-netsplit.el erc-nicklist.el erc-notify.el erc-sound.el objects.texi + and 3 other files + +Lawrence R. Dodd: wrote dired-x.el +and changed fortran.el ispell.el sendmail.el cmuscheme.el comint.el + compile.el dired.el find-dired.el gnus.el gud.el inf-lisp.el info.el + lisp.el loaddefs.el man.el minibuf.c rcs2log rmail.el simple.el + terminal.el text-mode.el and 4 other files + +Leigh Stoller: changed emacsclient.c emacsserver.c server.el + +Lennart Borgman: changed tutorial.el window.el ada-xref.el emacsclient.c + filesets.el flymake.el help-fns.el isearch.el mouse.el recentf.el + replace.el shell.el texinfmt.el w32term.c w32term.h + +Lennart Staflin: changed dired.el diary-ins.el diary-lib.el tq.el xdisp.c + +Leonard H. Tower Jr.: changed rnews.el rnewspost.el emacsbug.el + rmailout.el + +Levin Du: changed parse-time.el + +Liam Healy: changed outline.el + +Lloyd Zusman: changed mml.el pgg-gpg.el + +Luc Teirlinck: wrote help-at-pt.el +and changed files.el autorevert.el cus-edit.el subr.el simple.el + frames.texi startup.el display.texi files.texi Makefile.in dired.el + comint.el custom.texi emacs.texi fns.c frame.el ielm.el minibuf.texi + modes.texi variables.texi buffers.texi and 215 other files + +Lucid, Inc.: changed byte-opt.el byte-run.el bytecode.c bytecomp.el + delsel.el disass.el faces.el font-lock.el lmenu.el lselect.el + mailabbrev.el select.el xfaces.c xselect.c + +$,1 a(Bukasz Demianiuk: changed erc.el + +Lute Kamstra: changed modes.texi generic.el debug.el generic-x.el + font-lock.el subr.el Makefile.in debugging.texi easy-mmode.el + elisp.texi hl-line.el simple.el battery.el bindings.el calc.el + cmdargs.texi edebug.texi emacs.texi info.el make-tarball.txt + octave-inf.el and 216 other files + +Lynn Slater: wrote help-macro.el + +L,Bu(Brentey K,Ba(Broly: changed spam.el gnus-sum.el + +MCC: wrote xmenu.c +and changed emacsclient.c emacsserver.c etags.c lisp.h movemail.c + rmail.el rmailedit.el rmailkwd.el rmailmsc.el rmailout.el rmailsum.el + scribe.el server.el sysdep.c unexec.c + +Maciek Pasternacki: changed nnrss.el + +Magnus Henoch: changed url-http.el ispell.el url.el url-gw.el + url-parse.el url-proxy.el autoinsert.el process.c rcirc.el url-https.el + +Manuel Serrano: wrote flyspell.el + +Marc Fleischeuers: changed files.el + +Marc Girod: changed informat.el rmail.el rmailsum.el sendmail.el + +Marc Lefranc: changed gnus-art.el + +Marc Shapiro: changed bibtex.el + +Marcelo Toledo: changed TUTORIAL.pt_BR TUTORIAL.cn TUTORIAL.cs + TUTORIAL.de TUTORIAL.es TUTORIAL.fr TUTORIAL.it TUTORIAL.ja TUTORIAL.ko + TUTORIAL.pl TUTORIAL.ro TUTORIAL.ru TUTORIAL.sk TUTORIAL.sl TUTORIAL.th + TUTORIAL.translators TUTORIAL.zh add-log.el european.el + +Marco Melgazzi: changed term.el + +Marco Walther: changed mips-siemens.h unexelfsni.c unexsni.c + +Marcus G. Daniels: changed xterm.c configure.in lwlib-Xm.c lwlib.c + Makefile.in xdisp.c xfns.c xmenu.c alloc.c config.in dispnew.c + editfns.c emacs.c irix5-0.h linux.h lwlib-Xm.h lwlib.h ptx4.h + sequent-ptx.h unexelf.c + +Marek Martin: changed nnfolder.el + +Marien Zwart: changed python.el + +Mario Lang: wrote erc-button.el erc-ibuffer.el erc-imenu.el erc-menu.el + erc-netsplit.el erc-networks.el erc-notify.el erc-speedbar.el + erc-stamp.el erc-track.el erc-xdcc.el +and changed erc.el erc-dcc.el erc-speak.el Makefile erc-bbdb.el + erc-complete.el erc-pcomplete.el erc-chess.el erc-fill.el erc-list.el + battery.el erc-match.el erc-autojoin.el erc-nets.el erc-nickserv.el + erc-ring.el diff.el erc-ezbounce.el erc-identd.el erc-lang.el + erc-log.el and 6 other files + +Mark A. Hershberger: changed xml.el nnrss.el mm-url.el cperl-mode.el + esh-mode.el gnus-group.el + +Mark D. Baushke: changed mh-e.el mh-utils.el mh-mime.el mh-comp.el + mh-customize.el mh-index.el mh-loaddefs.el Makefile mh-identity.el + mh-seq.el mh-speed.el mh-funcs.el mh-alias.el MH-E-NEWS etags.c + mh-junk.el mh-pick.el mh-tool-bar.el mh-xemacs-compat.el + +Mark Davies: changed Makefile.in amdx86-64.h configure configure.in + hp800.h netbsd.h ralloc.c sh3el.h sort.el + +Mark Diekhans: changed compile.el + +Mark H. Weaver: changed comint.el + +Mark Hood: changed gnus-uu.el + +Mark Lambert: changed process.c process.h + +Mark Mitchell: changed font-lock.el + +Mark Neale: changed fortran.el + +Mark Osbourne: changed hexl-mode.el + +Mark Plaksin: changed nnrss.el term.el + +Mark Thomas: changed flow-fill.el gnus-sum.el gnus-util.el nnmail.el + +Mark W Maimone: changed mpuz.el + +Mark W. Eichin: changed keyboard.c xterm.c + +Marko Kohtala: changed info.el + +Marko Rahamaa: wrote latin-3.el + +Markus Armbruster: changed avoid.el + +Markus Heritsch: wrote ada-xref.el + +Markus Holmberg: changed thingatpt.el + +Markus Rost: wrote cus-test.el +and changed cus-edit.el Makefile.in files.el compile.el rmail.el + tex-mode.el find-func.el rmailsum.el simple.el cus-dep.el dired.el + mule-cmds.el rmailout.el checkdoc.el configure.in custom.el emacsbug.el + gnus.el help-fns.el ls-lisp.el mwheel.el and 122 other files + +Markus Triska: changed byte-opt.el bytecomp.el doctor.el expand.el + flymake.el flymake.texi handwrite.el internals.texi speedbar.el subr.el + tumme.el widget.texi + +Marshall T. Vandegrift: changed gnus-fun.el + +Martin Boyer: changed bibtex.el menu-bar.el + +Martin Buchholz: changed etags.c + +Martin J. Reed: changed ldap.el + +Martin Kretzschmar: changed gnus-spec.el gnus-sum.el + +Martin Larose: changed message.el + +Martin Lorentzon: changed vc.el vc-cvs.el vc-hooks.el vc-rcs.el + vc-sccs.el + +Martin Neitzel: changed sc.el + +Martin Rudalics: changed cus-start.el cus-edit.el files.el wid-edit.el + window.el flyspell.el font-lock.el mouse.el syntax.c xdisp.c compile.el + complete.el dired.el frame.c frame.el insdel.c ispell.el keyboard.c + macmenu.c macterm.c msdos.c and 65 other files + +Martin Stjernholm: wrote cc-bytecomp.el +and changed cc-engine.el cc-cmds.el cc-langs.el cc-defs.el cc-mode.el + cc-vars.el cc-fonts.el cc-align.el cc-styles.el cc-menus.el cc-fix.el + cc-mode.texi Makefile.in cc-guess.el cc-mode-19.el ack.texi awk-mode.el + cc-awk.el cc-lobotomy.el cc-make.el cc-style.el and 5 other files + +Martin Svenson: changed python.el + +Martin Thornquist: changed gnus-group.el gnus-topic.el + +Masahiko Sato: wrote vip.el + +Masanobu Umeda: wrote gnus-kill.el gnus-mh.el gnus-msg.el gnus.el + metamail.el nndb.el nnheader.el nnspool.el prolog.el rmailsort.el + timezone.el +and changed gnuspost.el + +Masatake Yamato: wrote cc-subword.el ld-script.el +and changed etags.el asm-mode.el hexl.el xdisp.c bindings.el man.el + simple.el wid-edit.el add-log.el compile.el etags.c faces.el pcvs.el + register.el ruler-mode.el buffer.c cus-face.el dired-x.el display.texi + font-lock.el gdb-ui.el and 60 other files + +Masayuki Ataka: changed texinfmt.el texinfo.el characters.el cmuscheme.el + make-mode.el + +Masayuki Fujii: changed dnd.el w32-win.el + +Mathias Dahl: wrote image-dired.el +and changed tumme.el dired.el dired.texi + +Mathias Megyei: changed Makefile.in + +Mats Lidell: changed TUTORIAL.sv european.el gnus-art.el + +Matt Hodges: changed table.el faces.el iswitchb.el simple.el tmm.el + cal-menu.el calendar.el calendar.texi diary-lib.el easymenu.el + edebug.texi eldoc.el em-hist.el em-pred.el fixit.texi icon.el ido.el + locate.el paragraphs.el pcomplete.el repeat.el and 3 other files + +Matt Pharr: changed message.el + +Matt Simmons: changed message.el + +Matt Swift: changed compile.el dired.el editfns.c lisp-mode.el + mm-decode.el outline.el rx.el simple.el startup.el + +Matthew Luckie: changed configure.in + +Matthew Mundell: changed calendar.texi diary-lib.el files.texi + type-break.el debugging.texi display.texi edebug.texi editfns.c eval.c + fileio.c frames.texi help.texi internals.texi modes.texi nonascii.texi + objects.texi os.texi positions.texi searching.texi subr.el text.texi + tips.texi + +Matthias F,Av(Brste: changed files.el + +Matthias Wiehl: changed gnus.el + +Matthieu Devin: wrote delsel.el + +Matthieu Moy: changed gnus-msg.el message.el + +Max Froumentin: changed gnus-art.el mml.el + +Michael Albinus: wrote tramp-ftp.el tramp-smb.el +and changed tramp.el tramp.texi tramp-vc.el ange-ftp.el files.el + tramp-util.el trampver.el files.texi nnml.el tramp-uu.el trampver.texi + vc.el dired-x.el dired.el faq.texi ffap.el find-dired.el locate.el + mini.texi rcompile.el socks.el and 4 other files + +Michael Ben-Gershon: changed acorn.h configure.in riscix1-1.h riscix1-2.h + unexec.c + +Michael Cook: changed gnus-sum.el + +Michael D. Ernst: wrote reposition.el +and changed dired-x.el uniquify.el ispell.el bibtex.el rmail.el dired.el + simple.el dired-aux.el gud.el rmailsum.el bytecomp.el compare-w.el + complete.el fill.el shadow.el texnfo-upd.el vc.el allout.el comint.el + cust-print.el edebug.el and 29 other files + +Michael D. Prange: wrote fortran.el +and changed tex-mode.el + +Michael Downes: changed gnus-sum.el + +Michael Gschwind: wrote iso-cvt.el latin-2.el + +Michael Hotchin: changed compile.el + +Michael I. Bushnell: changed rmail.el simple.el callproc.c gnu.h gnus.el + lread.c process.c screen.el search.c sendmail.el startup.el timer.c + +Michael K. Johnson: changed configure.in emacs.c intel386.h linux.h + mem-limits.h process.c sysdep.c syssignal.h systty.h template.h + unexec.c ymakefile + +Michael Kifer: wrote cal-x.el ediff-diff.el ediff-help.el ediff-hook.el + ediff-init.el ediff-merg.el ediff-mult.el ediff-ptch.el ediff-util.el + ediff-vers.el ediff-wind.el ediff.el viper-cmd.el viper-ex.el + viper-init.el viper-keym.el viper-macs.el viper-mous.el viper-util.el + viper.el +and changed ediff*.el viper*.el ediff-hooks.el ediff-merge.el menu-bar.el + appt.el desktop.el ediff-meta.el ediff-nult.el ediff.texi + viper-mouse.el viper.texi + +Michael Mcnamara: wrote verilog-mode.el + +Michael Olson: changed erc.el erc-backend.el erc.texi Makefile + erc-autoaway.el erc-log.el erc-stamp.el erc-identd.el erc-list.el + erc-track.el erc-match.el erc-bbdb.el erc-dcc.el erc-notify.el + erc-ibuffer.el erc-nicklist.el erc-pcomplete.el erc-spelling.el + erc-compat.el erc-goodies.el ERC-NEWS and 44 other files + +Michael Piotrowski: changed gnus-sum.el ps-print.el + +Michael R. Cook: changed gnus-topic.el gnus-art.el gnus-sum.el + +Michael R. Mauger: changed sql.el emacsclient.c cua-base.el custom.el + facemenu.el recentf.el replace.el tramp.el w32fns.c + +Michael R. Wolf: changed ange-ftp.el + +Michael Schierl: changed pgg-pgp.el + +Michael Schmidt: wrote modula2.el (public domain) + +Michael Shields: changed spam.el gnus-art.el gnus-sum.el gnus-cite.el + gnus-group.el gnus.el intel386.h nndraft.el pgg-def.el + +Michael Sperber [Mr. Preprocessor]: changed aix3-1.h aix4-2.h + +Michael Staats: wrote pc-select.el + +Michael Welsh Duggan: changed lisp.h sh-script.el w32term.c buffer.c + gnus-spec.el keyboard.c nnmail.el termhooks.h url-http.el w32-win.el + w32fns.c w32menu.c w32term.h xdisp.c xterm.c + +Michal Jankowski: changed insdel.c keyboard.c + +Michal Nazarewicz: changed ispell.el + +Micha,Ak(Bl Cadilhac: changed ido.el fill.el ispell.el Makefile anti.texi + battery.el blackbox.el bs.el cmuscheme.el complete.el cus-edit.el + dispnew.c faq.texi flyspell.el footnote.el fr-refcard.ps fr-refcard.tex + glasses.el gud.el info.el life.el and 14 other files + +Michelangelo Grigni: wrote ffap.el +and changed gnus-score.el + +Mikael Djurfeldt: changed xdisp.c + +Mike Haertel: changed 7300.h + +Mike Kupfer: changed mh-e.el mh-utils.el + +Mike Long: changed b2m.c make-dist make-mode.el netbsd.h view.el vms.h + +Mike Mcewan: changed gnus-agent.el gnus-sum.el gnus-score.el + +Mike Newton: changed bibtex.el + +Mike Rowan: changed process.c alloc.c dispnew.c keyboard.c process.h + sysdep.c xdisp.c + +Mike Williams: wrote mouse-sel.el thingatpt.el +and changed sgml-mode.el xml-lite.el + +Mike Woolley: changed gnus-sum.el + +Mikio Nakajima: changed ring.el viper-util.el + +Milan Zamazal: wrote czech.el glasses.el tildify.el +and changed slovak.el abbrev.el compile.el filecache.el files.el + +Miles Bader: wrote button.el image-file.el macroexp.el minibuf-eldef.el + rfn-eshadow.el +and changed comint.el faces.el simple.el editfns.c xfaces.c info.el + xdisp.c minibuf.c wid-edit.el xterm.c subr.el window.el cus-edit.el + diff-mode.el dispextern.h quick-install-emacs xfns.c help.el lisp.h + textprop.c bytecomp.el and 245 other files + +Miyashita Hisashi: changed ccl.c coding.c coding.h mule-cmds.el + mule-conf.el mule.el pop3.el + +Miyoshi Masanori: changed mouse.el smtpmail.el xdisp.c + +Morioka Tomohiko: changed rmail.el rmailout.el rmailsum.el fns.c + message.el nnheader.el nnmail.el rmailkwd.el smiley.el + +Morten Welinder: wrote [many MSDOS files] arc-mode.el desktop.el dosfns.c + internal.el msdos.h pc-win.el s-region.el +and changed msdos.c config.bat keyboard.c sed1.inp sed2.inp fileio.c + sed3.inp dos-fns.el callproc.c add-log.el alpha.h data.c editfns.c + emacs.c etags.c files.el info.el lread.c mainmake osf1.h tar-mode.el + and 73 other files + +Mosur Mohan: changed etags.c + +Motorola: changed buff-menu.el + +Mukesh Prasad: wrote vmsproc.el + +Murata Shuuichirou: changed coding.c + +N. Raghavendra: changed timezone.el + +Nachum Dershowitz: wrote cal-hebrew.el + +Nagy Andras: wrote gnus-sieve.el +and changed imap.el gnus.el + +Nakaji Hiroyuki: changed amdx86-64.h configure.in mm-util.el + +Nakamura Toshikazu: changed w32fns.c + +NeXT, Inc.: wrote unexnext.c + +Neal Ziring: wrote vi.el (public domain) + +Neil Mager: wrote appt.el + +Neil W. Van Dyke: wrote webjump.el + +Nelson H. F. Beebe: changed configure.in + +Nelson Jose Dos Santos Ferreira: changed nnsoup.el + +Nevin Kapur: changed nnmail.el gnus-sum.el nnimap.el gnus-group.el + gnus.el nnbabyl.el nnfolder.el nnmbox.el nnmh.el nnml.el + +Niall Mansfield: changed etags.c + +Nick Roberts: wrote gdb-ui.el +and changed gud.el building.texi tooltip.el speedbar.el bindings.el + thumbs.el xt-mouse.el .gdbinit DEBUG cc-mode.el subr.el t-mouse.el + comint.el frames.texi display.texi help-mode.el compile.el + descr-text.el dired.el gud-display.pbm speedbar.texi + and 120 other files + +Nico Francois: changed w32fns.c w32inevt.c w32menu.c + +Niimi Satoshi: changed pp.el search.c + +Niklas Morberg: changed nnweb.el gnus-art.el nnimap.el spam.el + +Nikolaj Schumacher: changed compile.el rx.el + ++Nils Ackermann: changed message.el nnmh.el ++ +Noah Friedman: wrote eldoc.el rlogin.el rsz-mini.el type-break.el +and changed comint.el emacs-buffer.gdb files.el mailabbrev.el sendmail.el + subr.el timer.el yow.el battery.el complete.el config.in configure.in + copyright.h fns.c gnu-linux.h hpux7.h irix3-3.h lisp-mnt.el loaddefs.el + mailalias.el menu-bar.el and 14 other files + +Nobuyuki Hikichi: changed news-risc.h + +Noel Cragg: changed mh-junk.el + +Norbert Koch: changed gnus-msg.el gnus-score.el + +Nozomu Ando: changed unexmacosx.c alloc.c buffer.c mips.h pmax.h + smtpmail.el sysselect.h unexelf.c + +Nuutti Kotivuori: changed gnus-sum.el flow-fill.el gnus-cache.el + +Odd Gripenstam: wrote dcl-mode.el + +Ognyan Kulev: changed TUTORIAL.bg cyrillic.el + +Olaf Sylvester: wrote bs.el + +Ole Aamot: changed compile.el + +Oleg S. Tihonov: changed cyrillic.el ispell.el map-ynp.el subr.el + +Olin Shivers: wrote cmuscheme.el comint.el inf-lisp.el shell.el + +Olive Lin: changed tex-mode.el + +Oliver Scholz: changed gamegrid.el nonascii.texi rx.el startup.el + update-game-score.c + +Oliver Seidel: wrote todo-mode.el + +Olivier Laurens: changed forms.el + +Olivier Lecarme: changed make-mode.el ange-ftp.el apropos.el bibtex.el + cpp.el facemenu.el forms.el hscroll.el indent.el nroff-mode.el + paragraphs.el server.el sort.el + +Olli Savia: changed etags.c syssignal.h + +Osamu Yamane: changed smtpmail.el + +Oscar Figueiredo: wrote eudc-bob.el eudc-export.el eudc-hotlist.el + eudc-vars.el eudc.el eudcb-bbdb.el eudcb-ldap.el eudcb-ph.el ldap.el +and changed ph.el + +,bS(Bscar Fuentes: changed emacsclient.c + +Oystein Viggen: changed dgnushack.el + +P. E. Jareth Hein: changed gnus-util.el + +Pace Willisson: wrote ispell.el + +Pascal Dupuis: changed octave-inf.el + +Pascal Rigaux: changed rfc2231.el + +Paul Curry: changed cc-subword.el + +Paul D. Smith: wrote snmp-mode.el +and changed imenu.el make-mode.el + +Paul Eggert: wrote cal-dst.el rcs2log vcdiff +and changed editfns.c vc.el Makefile.in configure.in vc-hooks.el data.c + emacs.c gnus.el calendar.el config.in floatfns.c process.c sysdep.c + dired.el xterm.c callproc.c fileio.c filelock.c lread.c print.c + rmail.el and 290 other files + +Paul Fisher: changed fns.c + +Paul Franklin: changed nnmail.el message.el + +Paul Hilfinger: changed fill.el + +Paul Jarc: wrote nnmaildir.el nnnil.el +and changed message.el gnus-util.el gnus-int.el gnus.el gnus-agent.el + gnus-start.el gnus-sum.el lpath.el nnmail.el + +Paul Pogonyshev: changed subr.el align.el dabbrev.el display.texi + etags.el info.el ses.el tar-mode.el url-http.el which-func.el window.el + +Paul Reilly: wrote dgux5-4r3.h gux5-4r2.h +and changed dgux.h lwlib-Xm.c lwlib.c xlwmenu.c configure.in process.c + xfns.c Makefile.in dgux5-4R2.h dgux5-4R3.h files.el keyboard.c + lwlib-Xaw.c lwlib-Xm.h lwlib-int.h lwlib.h widget.c widget.h xlwmenu.h + xmenu.c xterm.c + +Paul Rubin: changed config.h sun2.h texinfmt.el window.c + +Paul Stevenson: changed nnvirtual.el + +Paul Stodghill: changed gnus-agent.el + +Pavel Jan,Bm(Bk: changed COPYING keyboard.c xterm.c xdisp.c Makefile.in + process.c emacs.c lisp.h menu-bar.el ldap.el make-dist xfns.c buffer.c + coding.c eval.c fileio.c flyspell.el fns.c indent.c callint.c + cus-start.el and 703 other files + +Pavel Kobiakov: changed flymake.el flymake.texi + +Pavel Kobyakov: wrote flymake.el + +Per Abrahamsen: wrote cpp.el cus-dep.el cus-edit.el cus-face.el + cus-start.el custom.el double.el gnus-cite.el gnus-cus.el gnus-score.el + gnus-soup.el wid-browse.el wid-edit.el widget.el xt-mouse.el +and changed message.el menu-bar.el gnus.el gnus-art.el gnus-msg.el + gnus-group.el frame.el gnus-draft.el gnus-sum.el tool-bar.el + widget.texi apropos.el easymenu.el facemenu.el faces.el gnus-srvr.el + gnus-uu.el ispell.el lisp-mode.el makefile.el mouse.el + and 27 other files + +Per Bothner: wrote term.el +and changed iso-acc.el process.c sysdep.c + +Per Cederqvist: wrote ewoc.el +and changed vc.el vc-hooks.el diff-mode.el etags.c etags.el forms.el + hexl.el process.c + +Per Persson: wrote gnus-vm.el + +Per Starback: changed ispell.el gnus-start.el apropos.el bytecomp.el + characters.el charset.h coding.c dired.el doctor.el emacs.c european.el + iso-transl.el replace.el startup.el vc.el xdisp.c + +Pete Kazmier: changed gnus-art.el + +Pete Ware: wrote auto-show.el (public domain) +and changed message.el + +Pete-Temp: changed gnus-art.el + +Peter Breton: wrote dirtrack.el filecache.el find-lisp.el generic-x.el + generic.el locate.el net-utils.el + +Peter Doornbosch: changed vc-svn.el + +Peter Heslin: changed flyspell.el outline.el + +Peter Kleiweg: wrote ps-mode.el + +Peter Liljenberg: wrote elint.el + +Peter O'gorman: changed configure.in frame.h gtkutil.c termhooks.h + +Peter Povinec: changed term.el + +Peter Runestig: changed makefile.w32-in configure.bat dos-w32.el emacs.rc + envadd.bat gmake.defs multi-install-info.bat nmake.defs w32fns.c + zone-mode.el + +Peter S. Galbraith: wrote mh-alias.el mh-identity.el mh-inc.el + mh-limit.el +and changed mh-comp.el mh-e.el mh-utils.el mh-mime.el mh-customize.el + mh-seq.el Makefile mh-init.el mh-loaddefs.el mh-pick.el + mh-xemacs-compat.el mh-xemacs-toolbar.el README info-look.el + mh-compat.el mh-funcs.el .cvsignore MH-E-NEWS alias.pbm alias.xpm + cabinet.xpm and 14 other files + +Peter Seibel: changed cl-indent.el lisp-mode.el + +Peter Stephenson: wrote vcursor.el + +Peter Von Der Ahe: changed gnus-ems.el + +Peter Whaite: changed data.c + +Petr Salinger: changed configure.in gnu-kfreebsd.h + +Petri Kaurinkoski: changed configure.in iris4d.h irix6-0.h irix6-5.h + usg5-4.h + +Phil Sung: changed wdired.el + +Philippe Schnoebelen: wrote gomoku.el mpuz.el + +Philippe Waroquiers: changed etags.el term.c + +Piet Van Oostrum: changed data.c fileio.c flyspell.el make-package + smtpmail.el + +Pieter E.J. Pareit: wrote mixal-mode.el + +Pinku Surana: changed sql.el + +Pmr-Sav: changed mail-utils.el rmail.el + +Primoz Peterlin: changed TUTORIAL.sl + +R. Bernstein: changed gud.el + +Rafael Sep,Az(Blveda: changed TUTORIAL.es + +Rainer Schoepf: wrote alpha.h unexalpha.c +and changed osf1.h alloc.c buffer.c callint.c data.c dispextern.h doc.c + editfns.c floatfns.c frame.h lisp.h lread.c marker.c mem-limits.h + print.c puresize.h window.h xdisp.c xterm.h + +Raja R Harinath: changed nnml.el + +Raja R. Harinath: changed gnus-salt.el + +Rajappa Iyer: changed gnus-salt.el + +Rajesh Vaidheeswarran: wrote whitespace.el +and changed ffap.el + +Ralf Angeli: wrote scroll-lock.el +and changed w32fns.c reftex.el tex-mode.el comint.el flow-fill.el + frame.el gnus-art.el killing.texi mm-view.el pcl-cvs.texi reftex-auc.el + reftex-cite.el reftex-dcr.el reftex-global.el reftex-index.el + reftex-parse.el reftex-ref.el reftex-sel.el reftex-toc.el + reftex-vars.el reftex.texi and 4 other files + +Ralf Fassel: changed dabbrev.el files.el fill.el iso-acc.el tar-mode.el + +Ralph Schleicher: wrote battery.el info-look.el +and changed libc.el fileio.c mm-decode.el nnultimate.el + +Ramakrishnan M: changed mlm-util.el + +Randal Schwartz: wrote pp.el + +Randall Smith: changed dired.el + +Raul Acevedo: changed info.el options.el + +Ray Blaak: wrote delphi.el + +Raymond Scholz: wrote deuglify.el +and changed gnus-art.el gnus-msg.el gnus.texi message.el nnmail.el + pgg-gpg.el + +Reiner Steib: wrote gmm-utils.el - and changed gnus-art.el gnus.texi message.el gnus-sum.el gnus.el ++and changed gnus.texi gnus-art.el message.el gnus-sum.el gnus.el + gnus-group.el gnus-faq.texi mm-util.el gnus-start.el gnus-util.el + message.texi mml.el gnus-score.el gnus-agent.el gnus-msg.el spam.el - files.el nnmail.el spam-report.el mm-decode.el nnweb.el - and 168 other files ++ files.el nnmail.el spam-report.el mail-source.el mm-decode.el ++ and 170 other files + +Remek Trzaska: changed gnus-ems.el + +Remi Letot: changed nnmaildir.el + +Renaud Rioboo: changed nnmail.el + +Ren,Ai(B Kyllingstad: changed pcomplete.el + +Reto Zimmermann: wrote vera-mode.el +and changed vhdl-mode.el + +Riccardo Murri: changed vc-bzr.el tls.el + +Richard Bielawski: changed modes.texi + +Richard Dawe: changed Makefile.in config.in + +Richard G Bielawski: changed paren.el + +Richard Hoskins: changed message.el + +Richard King: wrote backquote.el filelock.c userlock.el + +Richard L. Pieri: wrote pop3.el + +Richard M. Heiberger: changed tex-mode.el + +Richard M. Stallman: wrote [The original GNU Emacs and numerous files] + easymenu.el font-lock.el image-mode.el menu-bar.el paren.el +and changed keyboard.c files.el simple.el xterm.c xdisp.c fileio.c + rmail.el process.c sysdep.c xfns.c buffer.c Makefile.in window.c + configure.in subr.el startup.el emacs.c editfns.c info.el sendmail.el + dispnew.c and 1337 other files + +Richard Mlynarik: wrote cl-indent.el ebuff-menu.el ehelp.el env.c + rfc822.el terminal.el yow.el +and changed files.el sysdep.c rmail.el info.el keyboard.c fileio.c + loaddefs.el simple.el process.c window.c editfns.c startup.el unexec.c + xfns.c bytecomp.el keymap.c minibuf.c sendmail.el buffer.c dispnew.c + emacs.c and 123 other files + +Richard Sharman: wrote hilit-chg.el +and changed sh-script.el ediff-init.el regexp-opt.el simple.el + +Rick Farnbach: wrote morse.el + +Rick Sladkey: wrote backquote.el +and changed gud.el intervals.c intervals.h simple.el + +Rob Browning: changed configure.in + +Rob Kaut: changed vhdl-mode.el + +Rob Riepel: wrote tpu-edt.el tpu-extras.el tpu-mapper.el vt-control.el +and changed tpu-doc.el + +Robert Bihlmeyer: changed gnus-score.el gnus-util.el message.el + +Robert Fenk: changed desktop.el + +Robert J. Chassell: wrote makeinfo.el texinfo.el texnfo-upd.el +and changed texinfmt.el emacs-lisp-intro.texi page-ext.el emacs.tex + info.el loaddefs.el texinfo-update.el texinfo.tex INSTALL case-table.el + cl.texinfo history.el informat.el latin-1.el latin-2.el latin-3.el + latin-4.el page.el tex-mode.el texinfo.texinfo vip.texinfo + +Robert Thorpe: changed cus-start.el indent.el + +Roberto Rodr,Am(Bguez: changed ada-mode.texi glossary.texi widget.texi + +Roderick Schertler: changed dgux.h dgux4.h gud.el sysdep.c + +Rodrigo Real: changed pt-br-refcard.tex pt-br-refcard.ps + +Roger Breitenstein: changed smtpmail.el + +Roland B. Roberts: wrote logout.com mailemacs.com vms-pmail.el +and changed buffer.h build.com callproc.c compile.com dired.c files.el + gnus-group.el gnus-sum.el kepteditor.com precomp.com process.c sort.el + sysdep.c systty.h vmspaths.h vmsproc.el + +Roland Mcgrath: wrote autoload.el etags.el find-dired.el grep.el + map-ynp.el +and changed compile.el add-log.el configure.in files.el vc.el Makefile.in + simple.el mailabbrev.el buffer.c comint.el upd-copyr.el etags.c + menu-bar.el loaddefs.el mem-limits.h ralloc.c fileio.c data.c process.c + rlogin.el rmail.el and 137 other files + +Roland Winkler: changed bibtex.el appt.el artist.el conf-mode.el + flyspell.el ispell.el make-mode.el sgml-mode.el sh-script.el + skeleton.el + +Rolf Ebert: wrote ada-mode.el +and changed files.el find-file.el + +Romain Francoise: changed faq.texi dired-x.el ibuf-ext.el Makefile.in + comint.el compile.el message.el puresize.h replace.el subr.el + files.texi gnus-fun.el gnus.texi help-fns.el make-dist rcirc.el + antlr-mode.el bookmark.el buffer.c diary-lib.el dired.el + and 130 other files + +Roman Belenov: changed which-func.el + +Ron Schnell: wrote dunnet.el + +Ronan Waide: changed smtpmail.el + +Rui-Tao Dong: changed nnweb.el + +Rune Kleveland: changed xfns.c + +Russ Allbery: changed message.el + +Ryan Yeske: wrote rcirc.el +and changed ffap.el ispell.el rmailsum.el simple.el testcover.el + webjump.el + +Ryo Yoshitake: changed mac.c + +Ryszard Kubiak: changed ogonek.el + +Sacha Chua: wrote erc-pcomplete.el remember-diary.el +and changed erc.el erc-button.el remember.el + +Saito Takuya: changed compile.el mule.el + +Sam Dooley: changed keyboard.c + +Sam Falkner: changed nntp.el + +Sam Kendall: changed etags.c etags.el + +Sam Steingold: wrote gulp.el midnight.el +and changed cl-indent.el font-lock.el ange-ftp.el mouse.el tex-mode.el + vc-cvs.el add-log.el bindings.el bookmark.el debug.el diary-lib.el + dired.el pcvs.el sgml-mode.el simple.el browse-url.el buff-menu.el + bytecomp.el cc-mode.el compile.el etags.el and 97 other files + +Samuel Tardieu: changed smime.el + +Sanghyuk Suh: changed mac-win.el macterm.c + +Sascha L,A|(Bdecke: wrote mml1991.el +and changed gnus-win.el + +Sascha Wilde: changed pgg-gpg.el pgg.el pgg.texi configure.in + +Satyaki Das: wrote mh-acros.el mh-gnus.el mh-junk.el mh-search.el + mh-speed.el mh-thread.el mh-tool-bar.el +and changed mh-e.el mh-utils.el mh-seq.el mh-index.el mh-comp.el + mh-mime.el mh-customize.el mh-loaddefs.el mh-funcs.el Makefile + mh-alias.el mh-pick.el mh-unit.el mh-init.el mh-identity.el mh-make.el + mh-xemacs-toolbar.el mh-xemacs-compat.el pgg-gpg.el mh-inc.el + highlight.xpm and 7 other files + +Schlumberger Technology Corporation: changed gud.el + +Scott A Crosby: changed gnus-logic.el + +Scott Byer: changed gnus-sum.el + +Scott Draves: wrote tq.el + +Scott M. Meyers: changed cmacexp.el + +Sean Neakums: changed gnus-msg.el gnus-uu.el + +Sean O'rourke: changed find-func.el ibuf-ext.el + +Sebastian Kremer: wrote dired-aux.el dired-x.el dired.el ls-lisp.el +and changed add-log.el + +Sebastian Tennant: changed desktop.el + +Sebastien Kirche: changed mail-extr.el + +Sen Nagata: wrote crm.el rfc2368.el + +Seokchan Lee: changed message.el + +Sergey Poznyakoff: changed rmail.el mh-mime.el rmail.texi smtpmail.el + +Sergio Pokrovskij: changed TUTORIAL.eo + +Shawn M. Carey: wrote freebsd.h + +Shenghuo Zhu: wrote binhex.el mm-extern.el mm-partial.el mm-url.el + mm-uu.el mml2015.el nnrss.el nnwarchive.el rfc1843.el uudecode.el + webmail.el +and changed gnus-art.el message.el gnus-sum.el gnus-msg.el gnus.el + gnus-agent.el mm-decode.el mm-util.el gnus-group.el mml.el + gnus-start.el gnus-util.el nnfolder.el mm-view.el nnslashdot.el + nnmail.el nntp.el gnus-topic.el gnus-xmas.el rfc2047.el dgnushack.el + and 101 other files + +Shinichirou Sugou: changed etags.c + +Shuhei Kobayashi: wrote hex-util.el sha1.el +and changed gnus-group.el message.el nnmail.el + +Shun-Ichi Goto: changed url-http.el + +Sidney Markowitz: changed doctor.el + +Sigbjorn Finne: changed gnus-srvr.el + +Simon Josefsson: wrote dig.el dns-mode.el flow-fill.el fringe.el imap.el + mml-sec.el mml-smime.el nnfolder.el nnimap.el nnml.el rfc2104.el + sieve-manage.el sieve-mode.el sieve.el smime.el starttls.el tls.el + url-imap.el +and changed message.el gnus-sum.el gnus-art.el smtpmail.el pgg.el + pgg-gpg.el mml2015.el gnus-agent.el mml.el mm-decode.el mml1991.el + gnus-group.el gnus-msg.el pgg-pgp5.el gnus-sieve.el browse-url.el + gnus-int.el gnus.el pgg-parse.el gnus-cache.el mail-source.el + and 88 other files + +Simon Leinen: changed smtpmail.el Makefile Makefile.in cm.c cm.h hpux9.h + indent.c process.c sc.texinfo sgml-mode.el term.c xfns.c xmenu.c + xterm.c + +Simon Marshall: wrote fast-lock.el lazy-lock.el regexp-opt.el +and changed comint.el font-lock.el shell.el rmail.el fortran.el + sendmail.el subr.el dired.el sh-script.el texinfo.el add-log.el + compile.el outline.el help.el menu-bar.el perl-mode.el ps-print.el + rmailsum.el bytecomp.el cc-fonts.el data.c and 57 other files + +Skip Collins: changed w32fns.c w32term.c w32term.h + +Slawomir Nowaczyk: changed emacs.py python.el TUTORIAL.pl flyspell.el + ls-lisp.el w32proc.c + +Spencer Thomas: changed dabbrev.el emacsclient.c emacsserver.c gnus.texi + server.el tcp.c unexec.c + +Sriram Karra: changed message.el + +Stanislav Shalunov: wrote uce.el + +Stefan Monnier: wrote bibtex-style.el bibtex.el css-mode.el cvs-status.el + diff-mode.el log-edit.el log-view.el pcvs-defs.el pcvs-info.el + pcvs-parse.el pcvs-util.el reveal.el smerge-mode.el vc-mtn.el +and changed vc.el font-lock.el pcvs.el newcomment.el subr.el lisp.h + keyboard.c fill.el tex-mode.el keymap.c vc-hooks.el compile.el + simple.el files.el alloc.c easy-mmode.el regex.c syntax.c info.el - xdisp.c sh-script.el and 528 other files ++ xdisp.c sh-script.el and 529 other files + +Steinar Bang: changed imap.el + +Stephan Stahl: changed which-func.el buff-menu.el buffer.c dired-x.texi + ediff-mult.el + +Stephen A. Wood: changed fortran.el + +Stephen Berman: changed allout.el find-dired.el recentf.el + +Stephen C. Gilardi: changed configure.in + +Stephen Compall: changed saveplace.el texinfo.el + +Stephen Eglen: wrote iswitchb.el mspools.el +and changed diary-lib.el locate.el octave-inf.el replace.el hexl.el + info-look.el sendmail.el spell.el uce.el MORE.STUFF add-log.el + advice.el allout.el autoinsert.el avoid.el backquote.el battery.el + bib-mode.el bruce.el c-mode.el ccl.el and 71 other files + +Stephen Gildea: wrote mh-funcs.el mh-pick.el refcard.tex +and changed time-stamp.el mh-e.el mh-comp.el mh-utils.el mh-customize.el + mh-junk.el fileio.c files.el fortran.el mh-e.texi mh-mime.el mwheel.el + tex-mode.el + +Stephen J. Turnbull: changed ediff-init.el strings.texi subr.el + +Stephen Leake: changed ada-mode.el ada-xref.el ada-stmt.el ada-mode.texi + ada-prj.el align.el pcvs-parse.el vhdl-mode.el + +Steve Fisk: wrote cal-tex.el + +Steve Nygard: changed unexnext.c + +Steve Strassman: wrote spook.el + +Steve Youngs: changed mh-utils.el mh-xemacs-compat.el dgnushack.el + mh-customize.el mh-e.el mh-comp.el mh-mime.el Makefile Makefile.in + browse-url.el gnus-art.el gnus-sum.el gnus-xmas.el lpath.el mh-seq.el + .cvsignore dns.el em-unix.el gnus-async.el gnus-util.el mail-source.el + and 15 other files + +Steven E. Harris: changed nnheader.el + +Steven Huwig: changed emacs.py python.el + +Steven L. Baur: wrote earcon.el footnote.el gnus-audio.el gnus-setup.el +and changed gnus-xmas.el gnus-msg.el add-log.el dgnushack.el edebug.el + gnus-ems.el gnus-start.el gnus-topic.el message.el nnbabyl.el nntp.el + webjump.el + +Steven Suhr: changed dispnew.c scroll.c term.c termchar.h + +Steven Tamm: changed macterm.c make-package mac.c macfns.c configure.in + unexmacosx.c INSTALL mac-win.el Makefile.in README darwin.h editfns.c + lread.c macmenu.c scroll-bar.el MACHINES config.h config.in dispnew.c + eval.c fileio.c and 7 other files + +Stewart M. Clamen: wrote cal-mayan.el + +Stuart D. Herring: changed keymap.c minibuf.c widget.texi + +Stuart Herring: changed files.el isearch.el align.el allout.el comint.el + edebug.el find-lisp.el sregex.el + +Sudish Joseph: changed mac-win.el + +Sun Microsystems, Inc: wrote emacs.icon emacstool.1 emacstool.c + sun-curs.el sun-fns.el sun-mouse.el sun.el sunfns.c +and changed emacsclient.c emacsserver.c server.el + +Sun Yijiang: changed TUTORIAL.cn + +Sundar Narasimhan: changed rnews.el rnewspost.el + +Sven Joachim: changed arc-mode.el de-refcard.tex dired-aux.el files.el + files.texi gnus.texi help.el mule.texi sed3v2.inp sh-script.el + simple.el vc-bzr.el view.el + +Svend Tollak Munkejord: changed deuglify.el + +Takaaki Ota: wrote table.el +and changed appt.el compile.el dired.c etags.c ldap.el makefile.w32-in + recentf.el subr.el w32bdf.c + +Takahashi Kaoru: changed texinfmt.el + +Takahashi Naoto: wrote cyrillic.el ethio-util.el ethiopic.el latin-ltx.el + latin-post.el utf-8.el +and changed fontset.el mule-conf.el quail.el + +Takai Kousuke: changed ccl.el + +Takeshi Yamada: changed fns.c + +Taro Kawagishi: changed arc-mode.el + +Tatsuya Ichikawa: changed gnus-agent.el gnus-cache.el + +Ted Lemon: changed emacs.c lastfile.c puresize.h + +Ted Phelps: changed mh-search.el mh-tool-bar.el + +Teodor Zlatanov: wrote gnus-registry.el spam-report.el +and changed spam.el gnus.el gnus-sum.el nnmail.el gnus-start.el + spam-stat.el gnus.texi lpath.el nnbabyl.el nnfolder.el nnimap.el + nnmbox.el nnmh.el nnml.el replace.el simple.el basic.texi building.texi + commands.texi compile.el dig.el and 13 other files + +Terje Rosten: changed xfns.c version.el xterm.c xterm.h + +Terrence Brannon: wrote landmark.el + +Terry Jones: wrote shadow.el + +Tetsurou Okazaki: changed log-edit.el xterm.c + +Theodore Jump: changed w32-win.el w32faces.c + +Thien-Thi Nguyen: wrote hideshow.el make-mms-derivative.el +and changed ewoc.el info.el processes.texi vc.el zone.el Makefile.in + lisp-mode.el fileio.c scheme.el text.texi TUTORIAL.it bindat.el + dcl-mode.el display.texi files.el gnus.texi pcvs.el startup.el sysdep.c + vc-rcs.el MORE.STUFF and 134 other files + +Thierry Emery: changed kinsoku.el timezone.el url-http.el wid-edit.el + +Thomas Deweese: changed x-win.el + +Thomas Dorner: changed ange-ftp.el + +Thomas Horsley: wrote cxux.h cxux7.h +and changed cxux-crt0.s emacs.c nh3000.h nh4000.h sysdep.c xterm.c + +Thomas Link: wrote filesets.el + +Thomas Morgan: changed forms.el + +Thomas Neumann: wrote make-mode.el +and changed makefile.el + +Thomas W Murphy: changed outline.el + +Thomas Wurgler: changed emacs-lock.el + +Thor Kristoffersen: changed nntp.el + +Thorsten Ohl: changed lread.c next.h + +Tijs Van Bakel: changed erc.el + +Tim Fleehart: wrote makefile.nt + +Tim Van Holder: changed emacsclient.c Makefile.in compile.el configure.in + which-func.el + +Tobias C. Rittweiler: changed font-lock.el + +Toby Allsopp: changed ldap.el eudc.el + +Toby Speight: changed window.el + +Tom Breton: changed autoinsert.el gnus-agent.el lread.c + +Tom Hageman: changed etags.c + +Tom Houlder: wrote mantemp.el + +Tom Tromey: wrote tcl.el +and changed makefile.el buffer.c make-mode.el add-log.el blackbox.el + buff-menu.el diff-mode.el doc.c emacsclient.c gdb-ui.el info.el man.el + replace.el xfns.c xterm.c xterm.h + +Tom Wurgler: wrote emacs-lock.el +and changed subr.el + +Tomas Abrahamsson: wrote artist.el + +Tommi Vainikainen: changed gnus-sum.el message.el + +Tomohiko Morioka: changed gnus-sum.el nnfolder.el nnmail.el nnmh.el + nnml.el coding.c gnus-art.el gnus-ems.el gnus-mule.el nnheader.el + nnspool.el nntp.el + +Tomoji Kagatani: wrote smtpmail.el + +Torbj,Av(Brn Axelsson: changed options.el + +Torbj,Av(Brn Einarsson: wrote f90.el + +Torsten Bronger: changed latin-ltx.el + +Toru Tomabechi: wrote tibet-util.el tibetan.el + +Toshiaki Nomura: changed uxpds.h + +Trent Buck: changed rcirc.el + +Trey Jackson: changed spam-stat.el + +Triet Hoai Lai: changed vntelex.el viet-util.el vietnamese.el + +Trung Tran-Duc: changed nntp.el + +Tsuchiya Masatoshi: changed gnus-art.el gnus-sum.el nneething.el + mm-view.el gnus-group.el nnheader.el nnml.el gnus-agent.el + gnus-cache.el gnus-msg.el lpath.el nndiary.el nnfolder.el nnimap.el + nnmaildir.el pgg.el rfc2047.el + +Tsugutomo Enami: changed nnheader.el regex.c regex.h simple.el + +Tsuyoshi Akiho: changed gnus-sum.el nnrss.el + +Tudor Hulubei: changed iso-acc.el latin-pre.el + +Ulf Jasper: wrote icalendar.el newsticker.el +and changed calendar.texi newsticker.texi Makefile.in + +Ulrich Leodolter: changed w32proc.c + +Ulrich Mueller: changed gud.el ChgPane.c ChgSel.c Makefile.in + XMakeAssoc.c bibtex.el case-table.el files.el fortran.el iso-acc.el + msdog-xtra.texi simple.el sysdep.c + +Ulrich Neumerkel: changed xterm.c + +Ulrik Vieth: wrote meta-mode.el +and changed files.el + +Vadim Nasardinov: changed allout.el + +Vagn Johansen: changed gnus-cache.el + +Valery Alexeev: changed cyril-util.el cyrillic.el + +Vasily Korytov: changed cperl-mode.el gnus-art.el gnus-dired.el + gnus-msg.el gnus-util.el mail-source.el message.el smiley.el + +Victor Zandy: wrote zone.el + +Viktor Dukhovni: wrote unexsunos4.c + +Ville Skytt,Ad(B: changed mh-comp.el pgg.el tcl.el tramp-vc.el + +Vincent Del Vecchio: changed info.el mh-utils.el + +Vinicius Jose Latorre: wrote delim-col.el ebnf-abn.el ebnf-bnf.el + ebnf-dtd.el ebnf-ebx.el ebnf-iso.el ebnf-otz.el ebnf-yac.el ebnf2ps.el + printing.el ps-mule.el +and changed ps-print.el ps-prin1.ps ps-bdf.el ps-prin0.ps ps-prin3.ps + ps-prin2.ps lpr.el subr.el TUTORIAL.pt_BR easymenu.el loading.texi + ps-print-def.el ps-print0.ps ps-vars.el + +Vivek Dasmohapatra: changed emacs.c erc-backend.el erc.el sh-script.el + xterm.c xterm.h + +Vladimir Alexiev: changed arc-mode.el nnvirtual.el tmm.el + +Vladimir Volovich: changed smime.el + +Walter C. Pelissero: changed browse-url.el url-methods.el + +Wayne Mesard: wrote hscroll.el + +Werner Benger: changed keyboard.c + +Werner Lemberg: wrote sisheng.el vntelex.el +and changed TUTORIAL.de Makefile.in calc.texi chinese.el czech.el emacs.1 + european.el idlwave.el reftex-vars.el reftex.el reftex.texi slovak.el + supercite.el .cvsignore advice.el calc-forms.el calc-sel.el calendar.el + china-util.el cl-macs.el cl.texi and 44 other files + +Wes Hardaker: changed gnus-score.el gnus-art.el gnus-sum.el gnus-win.el + +Will Mengarini: wrote repeat.el + +William F. Mann: wrote perl-mode.el + +William F. Schelter: wrote telnet.el + +William M. Perry: wrote mailcap.el socks.el url-dav.el url-gw.el + url-http.el url-util.el url.el vc-dav.el +and changed url-handlers.el url-file.el url-methods.el url-vars.el + url-https.el aclocal.m4 mule-sysdp.el url-imap.el url-news.el + url-nfs.el configure.in image.el mwheel.el url-about.el url-auth.el + url-cid.el url-dired.el url-expand.el url-ftp.el url-history.el + url-irc.el and 6 other files + +William Smith: changed strftime.c + +William Sommerfeld: wrote emacsclient.c emacsserver.c scribe.el server.el + +Wilson H. Tien: changed unexelf.c + +Wilson Snyder: changed verilog-mode.el + +Wim Nieuwenhuizen: changed TUTORIAL.nl + +Wlodzimierz Bzyl: wrote ogonek.el +and changed latin-pre.el pl-refcard.ps pl-refcard.tex refcard-pl.ps + refcard-pl.tex survival.tex + +Wolfgang Glas: changed unexsgi.c + +Wolfgang Jenkner: changed conf-mode.el gnus-sum.el pcvs.el + +Wolfgang Rupprecht: wrote float-sup.el floatfns.c sup-mouse.el +and changed process.c alloc.c callint.c config.h.in config.in + configure.in crt0.c data.c fns.c lisp-mode.el lisp.h loadup.el lread.c + net-utils.el nntp.el print.c sort.el sun3.h ymakefile + +Wolfgang Scherer: changed vc-cvs.el + +Wolfram Fenske: changed nnimap.el + +Wolfram Gloger: changed emacs.c + +Xavier Maillard: changed gnus-faq.texi gnus-score.el spam.el + +Yagi Tatsuya: changed gnus-art.el gnus-start.el + +Yamamoto Mitsuharu: changed macterm.c macfns.c mac-win.el mac.c macterm.h + macmenu.c macgui.h image.c macselect.c xdisp.c keyboard.c emacs.c + makefile.MPW config.h INSTALL Makefile.in macos.texi darwin.h + unexmacosx.c xfaces.c dispnew.c and 80 other files + +Yann Dirson: changed imenu.el + +Yavor Doganov: changed emacs.1 etags.1 + +Yoichi Nakayama: changed browse-url.el finder.el man.el rfc2368.el + +Yoni Rabkin Katzenell: changed faces.el whitespace.el + +Yoshiki Hayashi: changed texinfmt.el nnheader.el + +Yoshinori Koseki: changed fontset.el + +Yuri Shtil: changed etags.c + +Yutaka Niibe: changed indent.c xdisp.c configure.in Makefile.in dispnew.c + sysdep.c config.in dired.el emacs.c fill.el fns.c gmalloc.c gnu-linux.h + indent.h process.c simple.el term.c window.c + +Zhang Wei: changed xfns.c erc.el x-win.el + +Zoltan Kemenczy: changed gud.el + +Zoran Milojevic: changed avoid.el + +Local Variables: +coding: iso-2022-7bit +End: diff --cc etc/ChangeLog index de3b0fef5f,bc98b78091..7ca037679c --- a/etc/ChangeLog +++ b/etc/ChangeLog @@@ -1,110 -1,27 +1,122 @@@ -2008-03-26 Chong Yidong - - * Version 22.2 released. - + 2008-03-22 Reiner Steib + + * GNUS-NEWS (incoming mail files): Add version. + + 2008-03-12 Reiner Steib + - * TUTORIAL.de: Remove even more discussion of flow control. Refer - to node name `Init Rebinding' instead of title. ++ * tutorials/TUTORIAL.de: Remove even more discussion of flow ++ control. Refer to node name `Init Rebinding' instead of title. ++ +2008-03-13 Carsten Dominik + + * refcards/orgcard.tex: Minor fixes. 2008-03-12 Chong Yidong -- * TUTORIAL, TUTORIAL.fr, TUTORIAL.ro, TUTORIAL.bg, TUTORIAL.it: -- * TUTORIAL.ru, TUTORIAL.cn, TUTORIAL.ja, TUTORIAL.sk: -- * TUTORIAL.cs, TUTORIAL.ko, TUTORIAL.sl, TUTORIAL.de: -- * TUTORIAL.nl, TUTORIAL.sv, TUTORIAL.eo, TUTORIAL.pl, TUTORIAL.th: -- * TUTORIAL.es, TUTORIAL.pt_BR: Remove discussion of flow control. ++ * tutorials/TUTORIAL, tutorials/TUTORIAL.fr, tutorials/TUTORIAL.ro: ++ * tutorials/TUTORIAL.bg, tutorials/TUTORIAL.it, tutorials/TUTORIAL.ru: ++ * tutorials/TUTORIAL.cn, tutorials/TUTORIAL.ja, tutorials/TUTORIAL.sk: ++ * tutorials/TUTORIAL.cs, tutorials/TUTORIAL.ko, tutorials/TUTORIAL.sl: ++ * tutorials/TUTORIAL.de, tutorials/TUTORIAL.nl, tutorials/TUTORIAL.sv: ++ * tutorials/TUTORIAL.eo, tutorials/TUTORIAL.pl, tutorials/TUTORIAL.th: ++ * tutorials/TUTORIAL.es, tutorials/TUTORIAL.pt_BR: ++ Remove discussion of flow control. + +2008-03-12 Juanma Barranquero + + * NEWS: Describe linum.el. + +2008-03-11 Glenn Morris + + * images/icons/hicolor/128x128/apps/emacs.png: + * images/icons/hicolor/16x16/apps/emacs.png: + * images/icons/hicolor/24x24/apps/emacs.png: + * images/icons/hicolor/32x32/apps/emacs.png: + * images/icons/hicolor/48x48/apps/emacs.png: + * images/icons/hicolor/scalable/apps/emacs.svg: + * images/icons/hicolor/scalable/mimetypes/emacs-document.svg: + Remove `creator' metadata. + +2008-03-06 Jan Djärv + + * images/README: Update with bookmark_add. + + * images/bookmark_add.pbm, images/bookmark_add.xpm: New files. + +2008-03-03 Kentaro Ohkouchi + + * images/icons/hicolor/32x32/apps/emacs.png: Make transparency 8 bit. + * images/icons/hicolor/scalable/mimetypes/emacs-document.svg: New file. + * images/icons/hicolor/scalable/apps/emacs.svg: Fix format. + +2008-03-03 Andrew Zhilin + + * images/icons/hicolor/16x16/apps/emacs22.png: + * images/icons/hicolor/24x24/apps/emacs22.png: + * images/icons/hicolor/32x32/apps/emacs22.png: + * images/icons/hicolor/48x48/apps/emacs22.png: New files. + These are the old versions of `emacs.png' under a new name. + +2008-03-02 Kentaro Ohkouchi + + * images/icons/README: Update info for the icons. + + * images/icons/emacs16_mac.png: + * images/icons/emacs24_mac.png: + * images/icons/emacs256_mac.png: + * images/icons/emacs32_mac.png: + * images/icons/emacs48_mac.png: + * images/icons/emacs512_mac.png: Remove. + + * images/icons/hicolor/16x16/apps/emacs.png: + * images/icons/hicolor/24x24/apps/emacs.png: + * images/icons/hicolor/32x32/apps/emacs.png: + * images/icons/hicolor/48x48/apps/emacs.png: New icon. + + * images/icons/hicolor/scalable/apps/emacs.svg: + * images/icons/hicolor/128x128/apps/emacs.png: New files. + +2008-02-26 Reiner Steib + + * NEWS (Gnus): Mention problem with coding system `utf-8-emacs' + when using different Emacs versions. + +2008-02-25 Jan Djärv + + * NEWS.22: Mention stock icons for Gtk+. + +2008-02-22 Kenichi Handa + + * NEWS: Mention the new language environments Bengali, Punjabi, + Gujarati, Oriya, Telugu, Sinhala. Mention the removal of features + devanagari, devan-util, kannada, knd-util, malayalam, mlm-util, + tamil, and tml-util. + +2008-02-22 Michael Olson + + * NEWS: Describe nXML mode and json.el. -2008-02-25 Jan Dj,Ad(Brv +2008-02-21 Kenichi Handa - * NEWS: Mention stock icons for Gtk+. + * NEWS: Improve the description about the removal of cp-...-codepage + functions. Describe the removal of the feature `devan-util'. + +2008-02-21 Glenn Morris + + * NEWS.unicode: Merge into NEWS and remove file. + +2008-02-20 Kenichi Handa + + * NEWS.unicode: Mention the removal of codepage related functions. + +2008-02-16 Glenn Morris + + * nxml/test-invalid.xml, nxml/test-valid.xml: Move here from lisp/nxml. + Rename from "test." to "test-" for doschk. + +2008-02-10 Daiki Ueno + + * NEWS: Clarify EasyPG functionalities. 2008-02-09 Eli Zaretskii diff --cc etc/GNUS-NEWS index 3562069dad,89df6ab2df..e0c8808ec7 --- a/etc/GNUS-NEWS +++ b/etc/GNUS-NEWS @@@ -60,8 -92,56 +60,9 @@@ querying the user about whether to do s * Changes in group mode -** `gnus-group-read-ephemeral-group' can be called interactively, using `G -M'. - -** Retrieval of charters and control messages - -There are new commands for fetching newsgroup charters (`H c') and -control messages (`H C'). - -** The new variable `gnus-parameters' can be used to set group parameters. - -Earlier this was done only via `G p' (or `G c'), which stored the -parameters in `~/.newsrc.eld', but via this variable you can enjoy the -powers of customize, and simplified backups since you set the variable -in `~/.gnus.el' instead of `~/.newsrc.eld'. The variable maps regular -expressions matching group names to group parameters, a'la: -(setq gnus-parameters - '(("mail\\..*" - (gnus-show-threads nil) - (gnus-use-scoring nil)) - ("^nnimap:\\(foo.bar\\)$" - (to-group . "\\1")))) - -** Unread count correct in nnimap groups. - -The estimated number of unread articles in the group buffer should now -be correct for nnimap groups. This is achieved by calling -`nnimap-fixup-unread-after-getting-new-news' from the -`gnus-setup-news-hook' (called on startup) and -`gnus-after-getting-new-news-hook'. (called after getting new mail). If -you have modified those variables from the default, you may want to add -`nnimap-fixup-unread-after-getting-new-news' again. If you were happy -with the estimate and want to save some (minimal) time when getting new -mail, remove the function. - -** Group names are treated as UTF-8 by default. - -This is supposedly what USEFOR wanted to migrate to. See -`gnus-group-name-charset-group-alist' and -`gnus-group-name-charset-method-alist' for customization. - -** `gnus-group-charset-alist' and `gnus-group-ignored-charsets-alist'. - -The regexps in these variables are compared with full group names -instead of real group names in 5.8. Users who customize these variables -should change those regexps accordingly. For example: -("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr) - ** Old intermediate incoming mail files (`Incoming*') are deleted after a couple of days, not immediately. *Note Mail Source Customization::. + (New in Gnus 5.10.10 / Emacs 22.2) * Changes in summary and article mode diff --cc etc/NEWS.22 index 5d54528988,0000000000..3fa234723d mode 100644,000000..100644 --- a/etc/NEWS.22 +++ b/etc/NEWS.22 @@@ -1,5571 -1,0 +1,5577 @@@ +GNU Emacs NEWS -- history of user-visible changes. + +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 + Free Software Foundation, Inc. +See the end of the file for license conditions. + +Please send Emacs bug reports to bug-gnu-emacs@gnu.org. +If possible, use M-x report-emacs-bug. + +This file is about changes in Emacs version 22. + +See files NEWS.21, NEWS.20, NEWS.19, NEWS.18, and NEWS.1-17 for changes +in older Emacs versions. + +You can narrow news to a specific version by calling `view-emacs-news' +with a prefix argument or by typing C-u C-h C-n. + +* About external Lisp packages + +When you upgrade to Emacs 22 from a previous version, some older +versions of external Lisp packages are known to behave badly. +So in general, it is recommended that you upgrade to the latest +versions of any external Lisp packages that you are using. + +You should also be aware that many Lisp packages have been included +with Emacs 22 (see the extensive list below), and you should remove +any older versions of these packages to ensure that the Emacs 22 +version is used. You can use M-x list-load-path-shadows to find such +older packages. + +Some specific packages that are known to cause problems are given +below. Emacs tries to warn you about these through `bad-packages-alist'. + +** Semantic (used by CEDET, ECB, JDEE): upgrade to latest version. + +** cua.el, cua-mode.el: remove old versions. + + +* Installation Changes in Emacs 22.2 + +** Emacs is now licensed under the GNU GPL version 3 (or later). + +** Support for GNU/kFreeBSD (GNU userland and FreeBSD kernel) was added. + +** Deprecated machine types and operating systems + +Certain machine types and operating systems have been deprecated. On +these systems, configure will print a warning and exit, and you must +edit the configure script for compilation to proceed. The deprecated +systems will not be supported at all in Emacs 23. We are not aware of +anyone running Emacs on these systems; if you are, please email +emacs-devel@gnu.org to take it off the list of deprecated systems. + +*** Deprecated machine types +pmax, hp9000s300, ibm370aix, ncr386, ews4800, mips-siemens, powerpcle, +and tandem-s2 + +*** Deprecated operating systems +bsd386, bsdos2-1, bsdos2, bsdos3, bsdos4, bsd4-1, bsd4-2, bsd4-3, +usg5-0, usg5-2-2, usg5-2, usg5-3, ultrix4-3, 386bsd, hpux, hpux8, +hpux9, hpux9shr, hpux10, hpux10-20, aix3-1, aix3-2-5, aix3-2, aix4-1, +nextstep, ux4800, uxpds, and uxpv + +* Changes in Emacs 22.2 + +** `describe-project' is renamed to `describe-gnu-project'. + +** `view-todo' is renamed to `view-emacs-todo'. + +** `find-name-dired' now uses -iname rather than -name +for case-insensitive filesystems. The default behavior is determined +by the value of `read-file-name-completion-ignore-case'; if you don't +like that, customize the value of the new option `find-name-arg'. + +** In Image mode, whenever the displayed image is wider and/or higher +than the window, the usual keys for moving the cursor cause the image +to be scrolled horizontally or vertically instead. + +** Emacs can use stock icons in the tool bar when compiled with Gtk+. +However, this feature is disabled by default. To enable it, put + + (setq icon-map-list '(x-gtk-stock-map)) + +in your .emacs or some other startup file. For more information, see +the documentation for the two variables icon-map-list and x-gtk-stock-map. + +** Scrollbars follow the system theme on Windows XP and later. +Windows XP introduced themed scrollbars, but applications have to take +special steps to use them. Emacs now has the appropriate resources linked +in to make it use the scrollbars from the system theme. + +** focus-follows-mouse defaults to nil on MS Windows. +Previously this variable was incorrectly documented as having no effect +on MS Windows, and the default was inappropriate for the majority of +Windows installations. Users of software which modifies the behaviour of +Windows to cause focus to follow the mouse will now need to explicitly set +this variable. + +** `bad-packages-alist' will warn about external packages that are known +to cause problems in this version of Emacs. + +** The values of `dired-recursive-deletes' and `dired-recursive-copies' +have been changed to `top'. This means that the user is asked once, +before deleting/copying the indicated directory recursively. + +** `browse-url-emacs' loads a URL into an Emacs buffer. Handy for *.el URLs. + +** The command gdba has been removed as gdb works now for those cases where it +was needed. In text command mode, if you have problems before execution has +started, use M-x gud-gdb. + +** desktop.el now detects conflicting uses of the desktop file. +When loading the desktop, desktop.el can now detect that the file is already +in use. The default behavior is to ask the user what to do, but you can +customize it with the new option `desktop-load-locked-desktop'. When saving, +desktop.el warns about attempts to overwrite a desktop file if it determines +that the desktop being saved is not an update of the one on disk. + +** Compilation mode now correctly respects the value of +`compilation-scroll-output' between invocations. Previously, output +was mistakenly scrolled on compiles after the first. Customize +`compilation-scroll-output' if you want to retain the scrolling. + +** `font-lock-comment-face' no longer differs from the default on - displays with fewer than 16 colors (e.g. older xterms and the Linux console). - On such displays, only the comment delimiters will appear to be fontified - (in the new face `font-lock-comment-delimiter-face'). To restore the - old appearance, customize `font-lock-comment-face', or use a newer terminal - emulator that supports more colors (256 is now common). (This was new - in Emacs 22.1, but was not described.) ++displays with fewer than 16 colors and dark background (e.g. older ++xterms and the Linux console). On such displays, only the comment ++delimiters will appear to be fontified (in the new face ++`font-lock-comment-delimiter-face'). To restore the old appearance, ++customize `font-lock-comment-face'. Another alternative is to use a ++newer terminal emulator that supports more colors (256 is now common). ++For example, for xterm compatible emulators that support 256 colors, ++you can run emacs like this: ++env TERM=xterm-256color emacs -nw ++(This was new in Emacs 22.1, but was not described. In Emacs 22.1 ++this also happened for terminals with a light background, that is not ++the case anymore). + +* New Modes and Packages in Emacs 22.2 + +** bibtex-style-mode helps you write BibTeX's *.bst files. + +** The new package css-mode.el provides a major mode for editing CSS files. + +** The new package vera-mode.el provides a major mode for editing Vera files. + +** The new package verilog-mode.el provides a major mode for editing Verilog files. + +** The new package socks.el implements the SOCKS v5 protocol. + +** VC + +*** VC backends can provide completion of revision names. + +*** VC backends can provide extra menu entries to the "Version Control" menu. +This can be used to add menu entries for backend specific functions. + +*** VC has some support for Mercurial (Hg). + +*** VC has some support for Monotone (Mtn). + +*** VC has some support for Bazaar (Bzr). + +*** VC has some support for Git. + +* Incompatible Lisp Changes in Emacs 22.2 + +** shell.el no longer defines the aliases `dirtrack-toggle' and +`dirtrack-mode' for `shell-dirtrack-mode'. These names were removed +because they clash with commands provided by dirtrack.el. Use +`shell-dirtrack-mode' instead. + +* Lisp Changes in Emacs 22.2. + +** Frame-local variables are deprecated and are slated for removal. +They can easily be emulated. Rather than calling `make-variable-frame-local' +and accessing the variable value directly, explicitly check for a +frame-parameter, and if there is one, use its value in preference to +that of the variable. Note that buffer-local values should take +precedence over frame-local ones, so you may wish to check `local-variable-p' +first. + +** The function invisible-p returns non-nil if the character +after a specified position is invisible. + +** inhibit-modification-hooks is bound to t while running modification hooks. +As a happy consequence, after-change-functions and before-change-functions +are not bound to nil any more while running an (after|before)-change-function. + +** New function `window-full-width-p' returns t if a window is as wide +as its frame. + +** The new function `image-refresh' refreshes all images associated +with a given image specification. + +** The new function `combine-and-quote-strings' concatenates a list of strings +using a specified separator. If a string contains double quotes, they +are escaped in the output. + +** The new function `split-string-and-unquote' performs the inverse operation to +`combine-and-quote-strings', i.e. splits a single string into a list +of strings, undoing any quoting added by `combine-and-quote-strings'. +(For some separator/string combinations, the original strings cannot +be recovered.) + + +* Installation Changes in Emacs 22.1 + +** You can build Emacs with Gtk+ widgets by specifying `--with-x-toolkit=gtk' +when you run configure. This requires Gtk+ 2.4 or newer. This port +provides a way to display multilingual text in menus (with some caveats). + +** The Emacs Lisp Reference Manual is now part of the distribution. + +The Emacs Lisp Reference Manual in Info format is built as part of the +Emacs build procedure and installed together with the Emacs User +Manual. A menu item was added to the menu bar to make it easily +accessible (Help->More Manuals->Emacs Lisp Reference). + +** The Introduction to Programming in Emacs Lisp manual is now part of +the distribution. + +This manual is now part of the standard distribution and is installed, +together with the Emacs User Manual, into the Info directory. A menu +item was added to the menu bar to make it easily accessible +(Help->More Manuals->Introduction to Emacs Lisp). + +** Leim is now part of the Emacs distribution. +You no longer need to download a separate tarball in order to build +Emacs with Leim. + +** Support for MacOS X was added. +See the files mac/README and mac/INSTALL for build instructions. + +** Mac OS 9 port now uses the Carbon API by default. You can also +create a non-Carbon build by specifying `NonCarbon' as a target. See +the files mac/README and mac/INSTALL for build instructions. + +** Support for a Cygwin build of Emacs was added. + +** Support for GNU/Linux systems on X86-64 machines was added. + +** Support for GNU/Linux systems on S390 machines was added. + +** Support for GNU/Linux systems on Tensilica Xtensa machines was added. + +** Support for FreeBSD/Alpha has been added. + +** New translations of the Emacs Tutorial are available in the +following languages: Brasilian Portuguese, Bulgarian, Chinese (both +with simplified and traditional characters), French, Russian, and +Italian. Type `C-u C-h t' to choose one of them in case your language +setup doesn't automatically select the right one. + +** New translations of the Emacs reference card are available in the +Brasilian Portuguese and Russian. The corresponding PostScript files +are also included. + +** A French translation of the `Emacs Survival Guide' is available. + +** Emacs now supports new configure options `--program-prefix', +`--program-suffix' and `--program-transform-name' that affect the names of +installed programs. + +** By default, Emacs now uses a setgid helper program to update game +scores. The directory ${localstatedir}/games/emacs is the normal +place for game scores to be stored. You can control this with the +configure option `--with-game-dir'. The specific user that Emacs uses +to own the game scores is controlled by `--with-game-user'. If access +to a game user is not available, then scores will be stored separately +in each user's home directory. + +** Emacs now includes support for loading image libraries on demand. +(Currently this feature is only used on MS Windows.) You can configure +the supported image types and their associated dynamic libraries by +setting the variable `image-library-alist'. + +** Emacs can now be built without sound support. + +** Emacs Lisp source files are compressed by default if `gzip' is available. + +** All images used in Emacs have been consolidated in etc/images and subdirs. +See also the changes to `find-image', documented below. + +** Emacs comes with a new set of icons. +These icons are displayed on the taskbar and/or titlebar when Emacs +runs in a graphical environment. Source files for these icons can be +found in etc/images/icons. (You can't change the icons displayed by +Emacs by changing these files directly. On X, the icon is compiled +into the Emacs executable; see gnu.h in the source tree. On MS +Windows, see nt/icons/emacs.ico.) + +** The `emacsserver' program has been removed, replaced with Lisp code. + +** The `yow' program has been removed. +Use the corresponding Emacs feature instead. + +** The Emacs terminal emulation in term.el uses a different terminfo name. +The Emacs terminal emulation in term.el now uses "eterm-color" as its +terminfo name, since term.el now supports color. + +** The script etc/emacs-buffer.gdb can be used with gdb to retrieve the +contents of buffers from a core dump and save them to files easily, should +Emacs crash. + +** Building with -DENABLE_CHECKING does not automatically build with union +types any more. Add -DUSE_LISP_UNION_TYPE if you want union types. + +** When pure storage overflows while dumping, Emacs now prints how +much pure storage it will approximately need. + + +* Startup Changes in Emacs 22.1 + +** Init file changes +If the init file ~/.emacs does not exist, Emacs will try +~/.emacs.d/init.el or ~/.emacs.d/init.elc. Likewise, if the shell init file +~/.emacs_SHELL is not found, Emacs will try ~/.emacs.d/init_SHELL.sh. + +** Emacs can now be invoked in full-screen mode on a windowed display. +When Emacs is invoked on a window system, the new command-line options +`--fullwidth', `--fullheight', and `--fullscreen' produce a frame +whose width, height, or both width and height take up the entire +screen size. (For now, this does not work with some window managers.) + +** Emacs now displays a splash screen by default even if command-line +arguments were given. The new command-line option --no-splash +disables the splash screen; see also the variable +`inhibit-splash-screen' (which is also aliased as +`inhibit-startup-message'). + +** New user option `inhibit-startup-buffer-menu'. +When loading many files, for instance with `emacs *', Emacs normally +displays a buffer menu. This option turns the buffer menu off. + +** New command line option -nbc or --no-blinking-cursor disables +the blinking cursor on graphical terminals. + +** The option --script FILE runs Emacs in batch mode and loads FILE. +It is useful for writing Emacs Lisp shell script files, because they +can start with this line: + + #!/usr/bin/emacs --script + +** The -f option, used from the command line to call a function, +now reads arguments for the function interactively if it is +an interactively callable function. + +** The option --directory DIR now modifies `load-path' immediately. +Directories are added to the front of `load-path' in the order they +appear on the command line. For example, with this command line: + + emacs -batch -L .. -L /tmp --eval "(require 'foo)" + +Emacs looks for library `foo' in the parent directory, then in /tmp, then +in the other directories in `load-path'. (-L is short for --directory.) + +** When you specify a frame size with --geometry, the size applies to +all frames you create. A position specified with --geometry only +affects the initial frame. + +** Emacs built for MS-Windows now behaves like Emacs on X does, +with respect to its frame position: if you don't specify a position +(in your .emacs init file, in the Registry, or with the --geometry +command-line option), Emacs leaves the frame position to the Windows' +window manager. + +** The command line option --no-windows has been changed to +--no-window-system. The old one still works, but is deprecated. + +** If the environment variable DISPLAY specifies an unreachable X display, +Emacs will now startup as if invoked with the --no-window-system option. + +** Emacs now reads the standard abbrevs file ~/.abbrev_defs +automatically at startup, if it exists. When Emacs offers to save +modified buffers, it saves the abbrevs too if they have changed. It +can do this either silently or asking for confirmation first, +according to the value of `save-abbrevs'. + +** New command line option -Q or --quick. +This is like using -q --no-site-file, but in addition it also disables +the fancy startup screen. + +** New command line option -D or --basic-display. +Disables the menu-bar, the tool-bar, the scroll-bars, tool tips, and +the blinking cursor. + +** The default is now to use a bitmap as the icon. +The command-line options --icon-type, -i have been replaced with +options --no-bitmap-icon, -nbi to turn the bitmap icon off. + +** If the environment variable EMAIL is defined, Emacs now uses its value +to compute the default value of `user-mail-address', in preference to +concatenation of `user-login-name' with the name of your host machine. + + +* Incompatible Editing Changes in Emacs 22.1 + +** You can now follow links by clicking Mouse-1 on the link. + +See below for more details. + +** When the undo information of the current command gets really large +(beyond the value of `undo-outer-limit'), Emacs discards it and warns +you about it. + +** When Emacs prompts for file names, SPC no longer completes the file name. +This is so filenames with embedded spaces could be input without the +need to quote the space with a C-q. The underlying changes in the +keymaps that are active in the minibuffer are described below under +"New keymaps for typing file names". + +If you want the old behavior back, add these two key bindings to your +~/.emacs init file: + + (define-key minibuffer-local-filename-completion-map + " " 'minibuffer-complete-word) + (define-key minibuffer-local-must-match-filename-map + " " 'minibuffer-complete-word) + +** The completion commands TAB, SPC and ? in the minibuffer apply only +to the text before point. If there is text in the buffer after point, +it remains unchanged. + +** In incremental search, C-w is changed. M-%, C-M-w and C-M-y are special. + +See below under "incremental search changes". + +** M-g is now a prefix key. +M-g g and M-g M-g run goto-line. +M-g n and M-g M-n run next-error (like C-x `). +M-g p and M-g M-p run previous-error. + +** C-u M-g M-g switches to the most recent previous buffer, +and goes to the specified line in that buffer. + +When goto-line starts to execute, if there's a number in the buffer at +point then it acts as the default argument for the minibuffer. + +** M-o now is the prefix key for setting text properties; +M-o M-o requests refontification. + +** C-x C-f RET (find-file), typing nothing in the minibuffer, is no longer +a special case. + +Since the default input is the current directory, this has the effect +of specifying the current directory. Normally that means to visit the +directory with Dired. + +You can get the old behavior by typing C-x C-f M-n RET, which fetches +the actual file name into the minibuffer. + +** In Dired's ! command (dired-do-shell-command), `*' and `?' now +control substitution of the file names only when they are surrounded +by whitespace. This means you can now use them as shell wildcards +too. If you want to use just plain `*' as a wildcard, type `*""'; the +doublequotes make no difference in the shell, but they prevent +special treatment in `dired-do-shell-command'. + +** The info-search bindings on C-h C-f, C-h C-k and C-h C-i +have been moved to C-h F, C-h K and C-h S. + +** `apply-macro-to-region-lines' now operates on all lines that begin +in the region, rather than on all complete lines in the region. + +** line-move-ignore-invisible now defaults to t. + +** Adaptive filling misfeature removed. +It no longer treats `NNN.' or `(NNN)' as a prefix. + +** The old bindings C-M-delete and C-M-backspace have been deleted, +since there are situations where one or the other will shut down +the operating system or your X server. + +** The register compatibility key bindings (deprecated since Emacs 19) +have been removed: + C-x / point-to-register (Use: C-x r SPC) + C-x j jump-to-register (Use: C-x r j) + C-x x copy-to-register (Use: C-x r s) + C-x g insert-register (Use: C-x r i) + + +* Editing Changes in Emacs 22.1 + +** The max size of buffers and integers has been doubled. +On 32bit machines, it is now 256M (i.e. 268435455). + +** !MEM FULL! at the start of the mode line indicates that Emacs +cannot get any more memory for Lisp data. This often means it could +crash soon if you do things that use more memory. On most systems, +killing buffers will get out of this state. If killing buffers does +not make !MEM FULL! disappear, you should save your work and start +a new Emacs. + +** `undo-only' does an undo which does not redo any previous undo. + +** Yanking text now discards certain text properties that can +be inconvenient when you did not expect them. The variable +`yank-excluded-properties' specifies which ones. Insertion +of register contents and rectangles also discards these properties. + +** New command `kill-whole-line' kills an entire line at once. +By default, it is bound to C-S-. + +** M-SPC (just-one-space) when given a numeric argument N +converts whitespace around point to N spaces. + +** You can now switch buffers in a cyclic order with C-x C-left +(previous-buffer) and C-x C-right (next-buffer). C-x left and +C-x right can be used as well. The functions keep a different buffer +cycle for each frame, using the frame-local buffer list. + +** C-x 5 C-o displays a specified buffer in another frame +but does not switch to that frame. It's the multi-frame +analogue of C-x 4 C-o. + +** `special-display-buffer-names' and `special-display-regexps' now +understand two new boolean pseudo-frame-parameters `same-frame' and +`same-window'. + +** New commands to operate on pairs of open and close characters: +`insert-pair', `delete-pair', `raise-sexp'. + +** M-x setenv now expands environment variable references. + +Substrings of the form `$foo' and `${foo}' in the specified new value +now refer to the value of environment variable foo. To include a `$' +in the value, use `$$'. + +** The default values of paragraph-start and indent-line-function have +been changed to reflect those used in Text mode rather than those used +in Paragraph-Indent Text mode. + +** The default for the paper size (variable ps-paper-type) is taken +from the locale. + +** Help command changes: + +*** Changes in C-h bindings: + +C-h e displays the *Messages* buffer. + +C-h d runs apropos-documentation. + +C-h r visits the Emacs Manual in Info. + +C-h followed by a control character is used for displaying files + that do not change: + +C-h C-f displays the FAQ. +C-h C-e displays the PROBLEMS file. + +The info-search bindings on C-h C-f, C-h C-k and C-h C-i +have been moved to C-h F, C-h K and C-h S. + +C-h c, C-h k, C-h w, and C-h f now handle remapped interactive commands. +- C-h c and C-h k report the actual command (after possible remapping) + run by the key sequence. +- C-h w and C-h f on a command which has been remapped now report the + command it is remapped to, and the keys which can be used to run + that command. + +For example, if C-k is bound to kill-line, and kill-line is remapped +to new-kill-line, these commands now report: +- C-h c and C-h k C-k reports: + C-k runs the command new-kill-line +- C-h w and C-h f kill-line reports: + kill-line is remapped to new-kill-line which is on C-k, +- C-h w and C-h f new-kill-line reports: + new-kill-line is on C-k + +*** The apropos commands now accept a list of words to match. +When more than one word is specified, at least two of those words must +be present for an item to match. Regular expression matching is still +available. + +*** The new option `apropos-sort-by-scores' causes the matching items +to be sorted according to their score. The score for an item is a +number calculated to indicate how well the item matches the words or +regular expression that you entered to the apropos command. The best +match is listed first, and the calculated score is shown for each +matching item. + +*** Help commands `describe-function' and `describe-key' now show function +arguments in lowercase italics on displays that support it. To change the +default, customize face `help-argument-name' or redefine the function +`help-default-arg-highlight'. + +*** C-h v and C-h f commands now include a hyperlink to the C source for +variables and functions defined in C (if the C source is available). + +*** Help mode now only makes hyperlinks for faces when the face name is +preceded or followed by the word `face'. It no longer makes +hyperlinks for variables without variable documentation, unless +preceded by one of the words `variable' or `option'. It now makes +hyperlinks to Info anchors (or nodes) if the anchor (or node) name is +enclosed in single quotes and preceded by `info anchor' or `Info +anchor' (in addition to earlier `info node' and `Info node'). In +addition, it now makes hyperlinks to URLs as well if the URL is +enclosed in single quotes and preceded by `URL'. + +*** The new command `describe-char' (C-u C-x =) pops up a buffer with +description various information about a character, including its +encodings and syntax, its text properties, how to input, overlays, and +widgets at point. You can get more information about some of them, by +clicking on mouse-sensitive areas or moving there and pressing RET. + +*** The command `list-text-properties-at' has been deleted because +C-u C-x = gives the same information and more. + +*** New command `display-local-help' displays any local help at point +in the echo area. It is bound to `C-h .'. It normally displays the +same string that would be displayed on mouse-over using the +`help-echo' property, but, in certain cases, it can display a more +keyboard oriented alternative. + +*** New user option `help-at-pt-display-when-idle' allows you to +automatically show the help provided by `display-local-help' on +point-over, after suitable idle time. The amount of idle time is +determined by the user option `help-at-pt-timer-delay' and defaults +to one second. This feature is turned off by default. + +** Mark command changes: + +*** A prefix argument is no longer required to repeat a jump to a +previous mark if you set `set-mark-command-repeat-pop' to t. I.e. C-u +C-SPC C-SPC C-SPC ... cycles through the mark ring. Use C-u C-u C-SPC +to set the mark immediately after a jump. + +*** Marking commands extend the region when invoked multiple times. + +If you type C-M-SPC (mark-sexp), M-@ (mark-word), M-h +(mark-paragraph), or C-M-h (mark-defun) repeatedly, the marked region +extends each time, so you can mark the next two sexps with M-C-SPC +M-C-SPC, for example. This feature also works for +mark-end-of-sentence, if you bind that to a key. It also extends the +region when the mark is active in Transient Mark mode, regardless of +the last command. To start a new region with one of marking commands +in Transient Mark mode, you can deactivate the active region with C-g, +or set the new mark with C-SPC. + +*** Some commands do something special in Transient Mark mode when the +mark is active--for instance, they limit their operation to the +region. Even if you don't normally use Transient Mark mode, you might +want to get this behavior from a particular command. There are two +ways you can enable Transient Mark mode and activate the mark, for one +command only. + +One method is to type C-SPC C-SPC; this enables Transient Mark mode +and sets the mark at point. The other method is to type C-u C-x C-x. +This enables Transient Mark mode temporarily but does not alter the +mark or the region. + +After these commands, Transient Mark mode remains enabled until you +deactivate the mark. That typically happens when you type a command +that alters the buffer, but you can also deactivate the mark by typing +C-g. + +*** Movement commands `beginning-of-buffer', `end-of-buffer', +`beginning-of-defun', `end-of-defun' do not set the mark if the mark +is already active in Transient Mark mode. + +*** M-h (mark-paragraph) now accepts a prefix arg. + +With positive arg, M-h marks the current and the following paragraphs; +if the arg is negative, it marks the current and the preceding +paragraphs. + +** Incremental Search changes: + +*** M-% typed in isearch mode invokes `query-replace' or +`query-replace-regexp' (depending on search mode) with the current +search string used as the string to replace. + +*** C-w in incremental search now grabs either a character or a word, +making the decision in a heuristic way. This new job is done by the +command `isearch-yank-word-or-char'. To restore the old behavior, +bind C-w to `isearch-yank-word' in `isearch-mode-map'. + +*** C-y in incremental search now grabs the next line if point is already +at the end of a line. + +*** C-M-w deletes and C-M-y grabs a character in isearch mode. +Another method to grab a character is to enter the minibuffer by `M-e' +and to type `C-f' at the end of the search string in the minibuffer. + +*** Vertical scrolling is now possible within incremental search. +To enable this feature, customize the new user option +`isearch-allow-scroll'. User written commands which satisfy stringent +constraints can be marked as "scrolling commands". See the Emacs manual +for details. + +*** Isearch no longer adds `isearch-resume' commands to the command +history by default. To enable this feature, customize the new +user option `isearch-resume-in-command-history'. + +** Replace command changes: + +*** When used interactively, the commands `query-replace-regexp' and +`replace-regexp' allow \,expr to be used in a replacement string, +where expr is an arbitrary Lisp expression evaluated at replacement +time. `\#' in a replacement string now refers to the count of +replacements already made by the replacement command. All regular +expression replacement commands now allow `\?' in the replacement +string to specify a position where the replacement string can be +edited for each replacement. `query-replace-regexp-eval' is now +deprecated since it offers no additional functionality. + +*** query-replace uses isearch lazy highlighting when the new user option +`query-replace-lazy-highlight' is non-nil. + +*** The current match in query-replace is highlighted in new face +`query-replace' which by default inherits from isearch face. + +*** New user option `query-replace-skip-read-only': when non-nil, +`query-replace' and related functions simply ignore +a match if part of it has a read-only property. + +** Local variables lists: + +*** If the local variables list contains any variable-value pairs that +are not known to be safe, Emacs shows a prompt asking whether to apply +the local variables list as a whole. In earlier versions, a prompt +was only issued for variables explicitly marked as risky (for the +definition of risky variables, see `risky-local-variable-p'). + +At the prompt, you can choose to save the contents of this local +variables list to `safe-local-variable-values'. This new customizable +option is a list of variable-value pairs that are known to be safe. +Variables can also be marked as safe with the existing +`safe-local-variable' property (see `safe-local-variable-p'). +However, risky variables will not be added to +`safe-local-variable-values' in this way. + +*** The variable `enable-local-variables' controls how local variable +lists are handled. t, the default, specifies the standard querying +behavior. :safe means use only safe values, and ignore the rest. +:all means set all variables, whether or not they are safe. +nil means ignore them all. Anything else means always query. + +*** The variable `safe-local-eval-forms' specifies a list of forms that +are ok to evaluate when they appear in an `eval' local variables +specification. Normally Emacs asks for confirmation before evaluating +such a form, but if the form appears in this list, no confirmation is +needed. + +*** If a function has a non-nil `safe-local-eval-function' property, +that means it is ok to evaluate some calls to that function when it +appears in an `eval' local variables specification. If the property +is t, then any form calling that function with constant arguments is +ok. If the property is a function or list of functions, they are called +with the form as argument, and if any returns t, the form is ok to call. + +If the form is not "ok to call", that means Emacs asks for +confirmation as before. + +*** In processing a local variables list, Emacs strips the prefix and +suffix from every line before processing all the lines. + +*** Text properties in local variables. + +A file local variables list cannot specify a string with text +properties--any specified text properties are discarded. + +** File operation changes: + +*** Unquoted `$' in file names do not signal an error any more when +the corresponding environment variable does not exist. +Instead, the `$ENVVAR' text is left as is, so that `$$' quoting +is only rarely needed. + +*** C-x C-f RET, typing nothing in the minibuffer, is no longer a special case. + +Since the default input is the current directory, this has the effect +of specifying the current directory. Normally that means to visit the +directory with Dired. + +*** C-x s (save-some-buffers) now offers an option `d' to diff a buffer +against its file, so you can see what changes you would be saving. + +*** Auto Compression mode is now enabled by default. + +*** If the user visits a file larger than `large-file-warning-threshold', +Emacs asks for confirmation. + +*** The commands copy-file, rename-file, make-symbolic-link and +add-name-to-file, when given a directory as the "new name" argument, +convert it to a file name by merging in the within-directory part of +the existing file's name. (This is the same convention that shell +commands cp, mv, and ln follow.) Thus, M-x copy-file RET ~/foo RET +/tmp RET copies ~/foo to /tmp/foo. + +*** require-final-newline now has two new possible values: + +`visit' means add a newline (as an undoable change) if it's needed +when visiting the file. + +`visit-save' means add a newline (as an undoable change) if it's +needed when visiting the file, and also add a newline if it's needed +when saving the file. + +*** The new option mode-require-final-newline controls how certain +major modes enable require-final-newline. Any major mode that's +designed for a kind of file that should normally end in a newline +sets require-final-newline based on mode-require-final-newline. +So you can customize mode-require-final-newline to control what these +modes do. + +*** When you are root, and you visit a file whose modes specify +read-only, the Emacs buffer is now read-only too. Type C-x C-q if you +want to make the buffer writable. (As root, you can in fact alter the +file.) + +*** find-file-read-only visits multiple files in read-only mode, +when the file name contains wildcard characters. + +*** find-alternate-file replaces the current file with multiple files, +when the file name contains wildcard characters. It now asks if you +wish save your changes and not just offer to kill the buffer. + +*** When used interactively, `format-write-file' now asks for confirmation +before overwriting an existing file, unless a prefix argument is +supplied. This behavior is analogous to `write-file'. + +*** The variable `auto-save-file-name-transforms' now has a third element that +controls whether or not the function `make-auto-save-file-name' will +attempt to construct a unique auto-save name (e.g. for remote files). + +*** The new option `write-region-inhibit-fsync' disables calls to fsync +in `write-region'. This can be useful on laptops to avoid spinning up +the hard drive upon each file save. Enabling this variable may result +in data loss, use with care. + +** Minibuffer changes: + +*** The completion commands TAB, SPC and ? in the minibuffer apply only +to the text before point. If there is text in the buffer after point, +it remains unchanged. + +*** The new file-name-shadow-mode is turned ON by default, so that when +entering a file name, any prefix which Emacs will ignore is dimmed. + +*** There's a new face `minibuffer-prompt'. +Emacs adds this face to the list of text properties stored in the +variable `minibuffer-prompt-properties', which is used to display the +prompt string. + +*** Enhanced visual feedback in `*Completions*' buffer. + +Completions lists use faces to highlight what all completions +have in common and where they begin to differ. + +The common prefix shared by all possible completions uses the face +`completions-common-part', while the first character that isn't the +same uses the face `completions-first-difference'. By default, +`completions-common-part' inherits from `default', and +`completions-first-difference' inherits from `bold'. The idea of +`completions-common-part' is that you can use it to make the common +parts less visible than normal, so that the rest of the differing +parts is, by contrast, slightly highlighted. + +Above fontification is always done when listing completions is +triggered at minibuffer. If you want to fontify completions whose +listing is triggered at the other normal buffer, you have to pass +the common prefix of completions to `display-completion-list' as +its second argument. + +*** File-name completion can now ignore specified directories. +If an element of the list in `completion-ignored-extensions' ends in a +slash `/', it indicates a subdirectory that should be ignored when +completing file names. Elements of `completion-ignored-extensions' +which do not end in a slash are never considered when a completion +candidate is a directory. + +*** New user option `history-delete-duplicates'. +If set to t when adding a new history element, all previous identical +elements are deleted from the history list. + +** Redisplay changes: + +*** The new face `mode-line-inactive' is used to display the mode line +of non-selected windows. The `mode-line' face is now used to display +the mode line of the currently selected window. + +The new variable `mode-line-in-non-selected-windows' controls whether +the `mode-line-inactive' face is used. + +*** The mode line position information now comes before the major mode. +When the file is maintained under version control, that information +appears between the position information and the major mode. + +*** You can now customize the use of window fringes. To control this +for all frames, use M-x fringe-mode or the Show/Hide submenu of the +top-level Options menu, or customize the `fringe-mode' variable. To +control this for a specific frame, use the command M-x +set-fringe-style. + +*** Angle icons in the fringes can indicate the buffer boundaries. In +addition, up and down arrow bitmaps in the fringe indicate which ways +the window can be scrolled. + +This behavior is activated by setting the buffer-local variable +`indicate-buffer-boundaries' to a non-nil value. The default value of +this variable is found in `default-indicate-buffer-boundaries'. + +If value is `left' or `right', both angle and arrow bitmaps are +displayed in the left or right fringe, resp. + +The value can also be an alist which specifies the presence and +position of each bitmap individually. + +For example, ((top . left) (t . right)) places the top angle bitmap +in left fringe, the bottom angle bitmap in right fringe, and both +arrow bitmaps in right fringe. To show just the angle bitmaps in the +left fringe, but no arrow bitmaps, use ((top . left) (bottom . left)). + +*** On window systems, lines which are exactly as wide as the window +(not counting the final newline character) are no longer broken into +two lines on the display (with just the newline on the second line). +Instead, the newline now "overflows" into the right fringe, and the +cursor will be displayed in the fringe when positioned on that newline. + +The new user option 'overflow-newline-into-fringe' can be set to nil to +revert to the old behavior of continuing such lines. + +*** A window can now have individual fringe and scroll-bar settings, +in addition to the individual display margin settings. + +Such individual settings are now preserved when windows are split +horizontally or vertically, a saved window configuration is restored, +or when the frame is resized. + +*** When a window has display margin areas, the fringes are now +displayed between the margins and the buffer's text area, rather than +outside those margins. + +*** New face `escape-glyph' highlights control characters and escape glyphs. + +*** Non-breaking space and hyphens are now displayed with a special +face, either nobreak-space or escape-glyph. You can turn this off or +specify a different mode by setting the variable `nobreak-char-display'. + +*** The parameters of automatic hscrolling can now be customized. +The variable `hscroll-margin' determines how many columns away from +the window edge point is allowed to get before automatic hscrolling +will horizontally scroll the window. The default value is 5. + +The variable `hscroll-step' determines how many columns automatic +hscrolling scrolls the window when point gets too close to the +window edge. If its value is zero, the default, Emacs scrolls the +window so as to center point. If its value is an integer, it says how +many columns to scroll. If the value is a floating-point number, it +gives the fraction of the window's width to scroll the window. + +The variable `automatic-hscrolling' was renamed to +`auto-hscroll-mode'. The old name is still available as an alias. + +*** Moving or scrolling through images (and other lines) taller than +the window now works sensibly, by automatically adjusting the window's +vscroll property. + +*** Preemptive redisplay now adapts to current load and bandwidth. + +To avoid preempting redisplay on fast computers, networks, and displays, +the arrival of new input is now performed at regular intervals during +redisplay. The new variable `redisplay-preemption-period' specifies +the period; the default is to check for input every 0.1 seconds. + +*** The %c and %l constructs are now ignored in frame-title-format. +Due to technical limitations in how Emacs interacts with windowing +systems, these constructs often failed to render properly, and could +even cause Emacs to crash. + +*** If value of `auto-resize-tool-bars' is `grow-only', the tool bar +will expand as needed, but not contract automatically. To contract +the tool bar, you must type C-l. + +*** New customize option `overline-margin' controls the space between +overline and text. + +*** New variable `x-underline-at-descent-line' controls the relative +position of the underline. When set, it overrides the +`x-use-underline-position-properties' variables. + +** New faces: + +*** `mode-line-highlight' is the standard face indicating mouse sensitive +elements on mode-line (and header-line) like `highlight' face on text +areas. + +*** `mode-line-buffer-id' is the standard face for buffer identification +parts of the mode line. + +*** `shadow' face defines the appearance of the "shadowed" text, i.e. +the text which should be less noticeable than the surrounding text. +This can be achieved by using shades of grey in contrast with either +black or white default foreground color. This generic shadow face +allows customization of the appearance of shadowed text in one place, +so package-specific faces can inherit from it. + +*** `vertical-border' face is used for the vertical divider between windows. + +** Font-Lock (syntax highlighting) changes: + +*** All modes now support using M-x font-lock-mode to toggle +fontification, even those such as Occur, Info, and comint-derived +modes that do their own fontification in a special way. + +The variable `Info-fontify' is no longer applicable; to disable +fontification in Info, remove `turn-on-font-lock' from +`Info-mode-hook'. + +*** New standard font-lock face `font-lock-comment-delimiter-face'. +This is used for the characters that indicate the start of a comment, +e.g. `;' in Lisp mode. + +*** New standard font-lock face `font-lock-preprocessor-face'. + +*** Easy to overlook single character negation can now be font-locked. +You can use the new variable `font-lock-negation-char-face' and the face of +the same name to customize this. Currently the cc-modes, sh-script-mode, +cperl-mode and make-mode support this. + +*** Font-Lock mode: in major modes such as Lisp mode, where some Emacs +features assume that an open-paren in column 0 is always outside of +any string or comment, Font-Lock now highlights any such open-paren in +bold-red if it is inside a string or a comment, to indicate that it +can cause trouble. You should rewrite the string or comment so that +the open-paren is not in column 0. + +*** M-o now is the prefix key for setting text properties; +M-o M-o requests refontification. + +*** The default settings for JIT stealth lock parameters are changed. +The default value for the user option jit-lock-stealth-time is now nil +instead of 3. This setting of jit-lock-stealth-time disables stealth +fontification: on today's machines, it may be a bug in font lock +patterns if fontification otherwise noticeably degrades interactivity. +If you find movement in infrequently visited buffers sluggish (and the +major mode maintainer has no better idea), customizing +jit-lock-stealth-time to a non-nil value will let Emacs fontify +buffers in the background when it considers the system to be idle. +jit-lock-stealth-nice is now 0.5 instead of 0.125 which is supposed to +cause less load than the old defaults. + +*** jit-lock can now be delayed with `jit-lock-defer-time'. + +If this variable is non-nil, its value should be the amount of Emacs +idle time in seconds to wait before starting fontification. For +example, if you set `jit-lock-defer-time' to 0.25, fontification will +only happen after 0.25s of idle time. + +*** contextual refontification is now separate from stealth fontification. + +jit-lock-defer-contextually is renamed jit-lock-contextually and +jit-lock-context-time determines the delay after which contextual +refontification takes place. + +*** lazy-lock is considered obsolete. + +The `lazy-lock' package is superseded by `jit-lock' and is considered +obsolete. `jit-lock' is activated by default; if you wish to continue +using `lazy-lock', activate it in your ~/.emacs like this: + (setq font-lock-support-mode 'lazy-lock-mode) + +If you invoke `lazy-lock-mode' directly rather than through +`font-lock-support-mode', it now issues a warning: + "Use font-lock-support-mode rather than calling lazy-lock-mode" + +** Menu support: + +*** A menu item "Show/Hide" was added to the top-level menu "Options". +This menu allows you to turn various display features on and off (such +as the fringes, the tool bar, the speedbar, and the menu bar itself). +You can also move the vertical scroll bar to either side here or turn +it off completely. There is also a menu-item to toggle displaying of +current date and time, current line and column number in the mode-line. + +*** Speedbar has moved from the "Tools" top level menu to "Show/Hide". + +*** The menu item "Open File..." has been split into two items, "New File..." +and "Open File...". "Open File..." now opens only existing files. This is +to support existing GUI file selection dialogs better. + +*** The file selection dialog for Gtk+, Mac, W32 and Motif/LessTif can be +disabled by customizing the variable `use-file-dialog'. + +*** The pop up menus for Lucid now stay up if you do a fast click and can +be navigated with the arrow keys (like Gtk+, Mac and W32). + +*** The menu bar for Motif/LessTif/Lucid/Gtk+ can be navigated with keys. +Pressing F10 shows the first menu in the menu bar. Navigation is done with +the arrow keys, select with the return key and cancel with the escape keys. + +*** The Lucid menus can display multilingual text in your locale. You have +to explicitly specify a fontSet resource for this to work, for example +`-xrm "Emacs*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*"'. + +*** Dialogs for Lucid/Athena and LessTif/Motif now pop down on pressing +ESC, like they do for Gtk+, Mac and W32. + +*** For the Gtk+ version, you can make Emacs use the old file dialog +by setting the variable `x-gtk-use-old-file-dialog' to t. Default is to use +the new dialog. + +*** You can exit dialog windows and menus by typing C-g. + +** Buffer Menu changes: + +*** The new options `buffers-menu-show-directories' and +`buffers-menu-show-status' let you control how buffers are displayed +in the menu dropped down when you click "Buffers" from the menu bar. + +`buffers-menu-show-directories' controls whether the menu displays +leading directories as part of the file name visited by the buffer. +If its value is `unless-uniquify', the default, directories are +shown unless uniquify-buffer-name-style' is non-nil. The value of nil +and t turn the display of directories off and on, respectively. + +`buffers-menu-show-status' controls whether the Buffers menu includes +the modified and read-only status of the buffers. By default it is +t, and the status is shown. + +Setting these variables directly does not take effect until next time +the Buffers menu is regenerated. + +*** New command `Buffer-menu-toggle-files-only' toggles display of file +buffers only in the Buffer Menu. It is bound to T in Buffer Menu +mode. + +*** `buffer-menu' and `list-buffers' now list buffers whose names begin +with a space, when those buffers are visiting files. Normally buffers +whose names begin with space are omitted. + +** Mouse changes: + +*** You can now follow links by clicking Mouse-1 on the link. + +Traditionally, Emacs uses a Mouse-1 click to set point and a Mouse-2 +click to follow a link, whereas most other applications use a Mouse-1 +click for both purposes, depending on whether you click outside or +inside a link. Now the behavior of a Mouse-1 click has been changed +to match this context-sensitive dual behavior. (If you prefer the old +behavior, set the user option `mouse-1-click-follows-link' to nil.) + +Depending on the current mode, a Mouse-2 click in Emacs can do much +more than just follow a link, so the new Mouse-1 behavior is only +activated for modes which explicitly mark a clickable text as a "link" +(see the new function `mouse-on-link-p' for details). The Lisp +packages that are included in release 22.1 have been adapted to do +this, but external packages may not yet support this. However, there +is no risk in using such packages, as the worst thing that could +happen is that you get the original Mouse-1 behavior when you click +on a link, which typically means that you set point where you click. + +If you want to get the original Mouse-1 action also inside a link, you +just need to press the Mouse-1 button a little longer than a normal +click (i.e. press and hold the Mouse-1 button for half a second before +you release it). + +Dragging the Mouse-1 inside a link still performs the original +drag-mouse-1 action, typically copy the text. + +You can customize the new Mouse-1 behavior via the new user options +`mouse-1-click-follows-link' and `mouse-1-click-in-non-selected-windows'. + +*** If you set the new variable `mouse-autoselect-window' to a non-nil +value, windows are automatically selected as you move the mouse from +one Emacs window to another, even within a frame. A minibuffer window +can be selected only when it is active. + +*** On X, when the window manager requires that you click on a frame to +select it (give it focus), the selected window and cursor position +normally changes according to the mouse click position. If you set +the variable x-mouse-click-focus-ignore-position to t, the selected +window and cursor position do not change when you click on a frame +to give it focus. + +*** Emacs normally highlights mouse sensitive text whenever the mouse +is over the text. By setting the new variable `mouse-highlight', you +can optionally enable mouse highlighting only after you move the +mouse, so that highlighting disappears when you press a key. You can +also disable mouse highlighting. + +*** You can now customize if selecting a region by dragging the mouse +shall not copy the selected text to the kill-ring by setting the new +variable mouse-drag-copy-region to nil. + +*** Under X, mouse-wheel-mode is turned on by default. + +*** Emacs ignores mouse-2 clicks while the mouse wheel is being moved. + +People tend to push the mouse wheel (which counts as a mouse-2 click) +unintentionally while turning the wheel, so these clicks are now +ignored. You can customize this with the mouse-wheel-click-event and +mouse-wheel-inhibit-click-time variables. + +*** mouse-wheels can now scroll a specific fraction of the window +(rather than a fixed number of lines) and the scrolling is `progressive'. + +** Multilingual Environment (Mule) changes: + +*** You can disable character translation for a file using the -*- +construct. Include `enable-character-translation: nil' inside the +-*-...-*- to disable any character translation that may happen by +various global and per-coding-system translation tables. You can also +specify it in a local variable list at the end of the file. For +shortcut, instead of using this long variable name, you can append the +character "!" at the end of coding-system name specified in -*- +construct or in a local variable list. For example, if a file has the +following header, it is decoded by the coding system `iso-latin-1' +without any character translation: +;; -*- coding: iso-latin-1!; -*- + +*** Language environment and various default coding systems are setup +more correctly according to the current locale name. If the locale +name doesn't specify a charset, the default is what glibc defines. +This change can result in using the different coding systems as +default in some locale (e.g. vi_VN). + +*** The keyboard-coding-system is now automatically set based on your +current locale settings if you are not using a window system. This +can mean that the META key doesn't work but generates non-ASCII +characters instead, depending on how the terminal (or terminal +emulator) works. Use `set-keyboard-coding-system' (or customize +keyboard-coding-system) if you prefer META to work (the old default) +or if the locale doesn't describe the character set actually generated +by the keyboard. See Info node `Unibyte Mode'. + +*** The new command `set-file-name-coding-system' (C-x RET F) sets +coding system for encoding and decoding file names. A new menu item +(Options->Mule->Set Coding Systems->For File Name) invokes this +command. + +*** The new command `revert-buffer-with-coding-system' (C-x RET r) +revisits the current file using a coding system that you specify. + +*** New command `recode-region' decodes the region again by a specified +coding system. + +*** The new command `recode-file-name' changes the encoding of the name +of a file. + +*** New command `ucs-insert' inserts a character specified by its +unicode. + +*** New command quail-show-key shows what key (or key sequence) to type +in the current input method to input a character at point. + +*** Limited support for character `unification' has been added. +Emacs now knows how to translate between different representations of +the same characters in various Emacs charsets according to standard +Unicode mappings. This applies mainly to characters in the ISO 8859 +sets plus some other 8-bit sets, but can be extended. For instance, +translation works amongst the Emacs ...-iso8859-... charsets and the +mule-unicode-... ones. + +By default this translation happens automatically on encoding. +Self-inserting characters are translated to make the input conformant +with the encoding of the buffer in which it's being used, where +possible. + +You can force a more complete unification with the user option +unify-8859-on-decoding-mode. That maps all the Latin-N character sets +into Unicode characters (from the latin-iso8859-1 and +mule-unicode-0100-24ff charsets) on decoding. Note that this mode +will often effectively clobber data with an iso-2022 encoding. + +*** New language environments (set up automatically according to the +locale): Belarusian, Bulgarian, Chinese-EUC-TW, Croatian, Esperanto, +French, Georgian, Italian, Latin-7, Latvian, Lithuanian, Malayalam, +Russian, Russian, Slovenian, Swedish, Tajik, Tamil, UTF-8,Ukrainian, +Welsh,Latin-6, Windows-1255. + +*** New input methods: latin-alt-postfix, latin-postfix, latin-prefix, +belarusian, bulgarian-bds, bulgarian-phonetic, chinese-sisheng (for +Chinese Pinyin characters), croatian, dutch, georgian, latvian-keyboard, +lithuanian-numeric, lithuanian-keyboard, malayalam-inscript, rfc1345, +russian-computer, sgml, slovenian, tamil-inscript, ukrainian-computer, +ucs, vietnamese-telex, welsh. + +*** There is support for decoding Greek and Cyrillic characters into +either Unicode (the mule-unicode charsets) or the iso-8859 charsets, +when possible. The latter are more space-efficient. + This is controlled by user option utf-fragment-on-decoding. + +*** Improved Thai support. A new minor mode `thai-word-mode' (which is +automatically activated if you select Thai as a language +environment) changes key bindings of most word-oriented commands to +versions which recognize Thai words. Affected commands are + M-f (forward-word) + M-b (backward-word) + M-d (kill-word) + M-DEL (backward-kill-word) + M-t (transpose-words) + M-q (fill-paragraph) + +*** Indian support has been updated. +The in-is13194 coding system is now Unicode-based. CDAC fonts are +assumed. There is a framework for supporting various Indian scripts, +but currently only Devanagari, Malayalam and Tamil are supported. + +*** The utf-8/16 coding systems have been enhanced. +By default, untranslatable utf-8 sequences are simply composed into +single quasi-characters. User option `utf-translate-cjk-mode' (it is +turned on by default) arranges to translate many utf-8 CJK character +sequences into real Emacs characters in a similar way to the Mule-UCS +system. As this loads a fairly big data on demand, people who are not +interested in CJK characters may want to customize it to nil. +You can augment/amend the CJK translation via hash tables +`ucs-mule-cjk-to-unicode' and `ucs-unicode-to-mule-cjk'. The utf-8 +coding system now also encodes characters from most of Emacs's +one-dimensional internal charsets, specifically the ISO-8859 ones. +The utf-16 coding system is affected similarly. + +*** A UTF-7 coding system is available in the library `utf-7'. + +*** A new coding system `euc-tw' has been added for traditional Chinese +in CNS encoding; it accepts both Big 5 and CNS as input; on saving, +Big 5 is then converted to CNS. + +*** Many new coding systems are available in the `code-pages' library. +These include complete versions of most of those in codepage.el, based +on Unicode mappings. `codepage-setup' is now obsolete and is used +only in the MS-DOS port of Emacs. All coding systems defined in +`code-pages' are auto-loaded. + +*** New variable `utf-translate-cjk-unicode-range' controls which +Unicode characters to translate in `utf-translate-cjk-mode'. + +*** iso-10646-1 (`Unicode') fonts can be used to display any range of +characters encodable by the utf-8 coding system. Just specify the +fontset appropriately. + +** Customize changes: + +*** Custom themes are collections of customize options. Create a +custom theme with M-x customize-create-theme. Use M-x load-theme to +load and enable a theme, and M-x disable-theme to disable it. Use M-x +enable-theme to enable a disabled theme. + +*** The commands M-x customize-face and M-x customize-face-other-window +now look at the character after point. If a face or faces are +specified for that character, the commands by default customize those +faces. + +*** The face-customization widget has been reworked to be less confusing. +In particular, when you enable a face attribute using the corresponding +check-box, there's no longer a redundant `*' option in value selection +for that attribute; the values you can choose are only those which make +sense for the attribute. When an attribute is de-selected by unchecking +its check-box, then the (now ignored, but still present temporarily in +case you re-select the attribute) value is hidden. + +*** When you set or reset a variable's value in a Customize buffer, +the previous value becomes the "backup value" of the variable. +You can go back to that backup value by selecting "Use Backup Value" +under the "[State]" button. + +** Dired mode: + +*** In Dired's ! command (dired-do-shell-command), `*' and `?' now +control substitution of the file names only when they are surrounded +by whitespace. This means you can now use them as shell wildcards +too. If you want to use just plain `*' as a wildcard, type `*""'; the +double quotes make no difference in the shell, but they prevent +special treatment in `dired-do-shell-command'. + +*** The Dired command `dired-goto-file' is now bound to j, not M-g. +This is to avoid hiding the global key binding of M-g. + +*** New faces dired-header, dired-mark, dired-marked, dired-flagged, +dired-ignored, dired-directory, dired-symlink, dired-warning +introduced for Dired mode instead of font-lock faces. + +*** New Dired command `dired-compare-directories' marks files +with different file attributes in two dired buffers. + +*** New Dired command `dired-do-touch' (bound to T) changes timestamps +of marked files with the value entered in the minibuffer. + +*** In Dired, the w command now stores the current line's file name +into the kill ring. With a zero prefix arg, it stores the absolute file name. + +*** In Dired-x, Omitting files is now a minor mode, dired-omit-mode. + +The mode toggling command is bound to M-o. A new command +dired-mark-omitted, bound to * O, marks omitted files. The variable +dired-omit-files-p is obsoleted, use the mode toggling function +instead. + +*** The variables dired-free-space-program and dired-free-space-args +have been renamed to directory-free-space-program and +directory-free-space-args, and they now apply whenever Emacs puts a +directory listing into a buffer. + +** Comint changes: + +*** The new INSIDE_EMACS environment variable is set to "t" in subshells +running inside Emacs. This supersedes the EMACS environment variable, +which will be removed in a future Emacs release. Programs that need +to know whether they are started inside Emacs should check INSIDE_EMACS +instead of EMACS. + +*** The comint prompt can now be made read-only, using the new user +option `comint-prompt-read-only'. This is not enabled by default, +except in IELM buffers. The read-only status of IELM prompts can be +controlled with the new user option `ielm-prompt-read-only', which +overrides `comint-prompt-read-only'. + +The new commands `comint-kill-whole-line' and `comint-kill-region' +support editing comint buffers with read-only prompts. + +`comint-kill-whole-line' is like `kill-whole-line', but ignores both +read-only and field properties. Hence, it always kill entire +lines, including any prompts. + +`comint-kill-region' is like `kill-region', except that it ignores +read-only properties, if it is safe to do so. This means that if any +part of a prompt is deleted, then the entire prompt must be deleted +and that all prompts must stay at the beginning of a line. If this is +not the case, then `comint-kill-region' behaves just like +`kill-region' if read-only properties are involved: it copies the text +to the kill-ring, but does not delete it. + +*** The new command `comint-insert-previous-argument' in comint-derived +modes (shell-mode, etc.) inserts arguments from previous command lines, +like bash's `ESC .' binding. It is bound by default to `C-c .', but +otherwise behaves quite similarly to the bash version. + +*** `comint-use-prompt-regexp-instead-of-fields' has been renamed +`comint-use-prompt-regexp'. The old name has been kept as an alias, +but declared obsolete. + +** M-x Compile changes: + +*** M-x compile has become more robust and reliable + +Quite a few more kinds of messages are recognized. Messages that are +recognized as warnings or informational come in orange or green, instead of +red. Informational messages are by default skipped with `next-error' +(controlled by `compilation-skip-threshold'). + +Location data is collected on the fly as the *compilation* buffer changes. +This means you could modify messages to make them point to different files. +This also means you can not go to locations of messages you may have deleted. + +The variable `compilation-error-regexp-alist' has now become customizable. If +you had added your own regexps to this, you'll probably need to include a +leading `^', otherwise they'll match anywhere on a line. There is now also a +`compilation-mode-font-lock-keywords' and it nicely handles all the checks +that configure outputs and -o options so you see at a glance where you are. + +The new file etc/compilation.txt gives examples of each type of message. + +*** New user option `compilation-environment'. +This option allows you to specify environment variables for inferior +compilation processes without affecting the environment that all +subprocesses inherit. + +*** New user option `compilation-disable-input'. +If this is non-nil, send end-of-file as compilation process input. + +*** New options `next-error-highlight' and `next-error-highlight-no-select' +specify the method of highlighting of the corresponding source line +in new face `next-error'. + +*** A new minor mode `next-error-follow-minor-mode' can be used in +compilation-mode, grep-mode, occur-mode, and diff-mode (i.e. all the +modes that can use `next-error'). In this mode, cursor motion in the +buffer causes automatic display in another window of the corresponding +matches, compilation errors, etc. This minor mode can be toggled with +C-c C-f. + +*** When the left fringe is displayed, an arrow points to current message in +the compilation buffer. + +*** The new variable `compilation-context-lines' controls lines of leading +context before the current message. If nil and the left fringe is displayed, +it doesn't scroll the compilation output window. If there is no left fringe, +no arrow is displayed and a value of nil means display the message at the top +of the window. + +** Occur mode changes: + +*** The new command `multi-occur' is just like `occur', except it can +search multiple buffers. There is also a new command +`multi-occur-in-matching-buffers' which allows you to specify the +buffers to search by their filenames or buffer names. Internally, +Occur mode has been rewritten, and now uses font-lock, among other +changes. + +*** You can now use next-error (C-x `) and previous-error to advance to +the next/previous matching line found by M-x occur. + +*** In the *Occur* buffer, `o' switches to it in another window, and +C-o displays the current line's occurrence in another window without +switching to it. + +** Grep changes: + +*** Grep has been decoupled from compilation mode setup. + +There's a new separate package grep.el, with its own submenu and +customization group. + +*** `grep-find' is now also available under the name `find-grep' where +people knowing `find-grep-dired' would probably expect it. + +*** New commands `lgrep' (local grep) and `rgrep' (recursive grep) are +more user-friendly versions of `grep' and `grep-find', which prompt +separately for the regular expression to match, the files to search, +and the base directory for the search. Case sensitivity of the +search is controlled by the current value of `case-fold-search'. + +These commands build the shell commands based on the new variables +`grep-template' (lgrep) and `grep-find-template' (rgrep). + +The files to search can use aliases defined in `grep-files-aliases'. + +Subdirectories listed in `grep-find-ignored-directories' such as those +typically used by various version control systems, like CVS and arch, +are automatically skipped by `rgrep'. + +*** The grep commands provide highlighting support. + +Hits are fontified in green, and hits in binary files in orange. Grep buffers +can be saved and automatically revisited. + +*** New option `grep-highlight-matches' highlights matches in *grep* +buffer. It uses a special feature of some grep programs which accept +--color option to output markers around matches. When going to the next +match with `next-error' the exact match is highlighted in the source +buffer. Otherwise, if `grep-highlight-matches' is nil, the whole +source line is highlighted. + +*** New key bindings in grep output window: +SPC and DEL scrolls window up and down. C-n and C-p moves to next and +previous match in the grep window. RET jumps to the source line of +the current match. `n' and `p' shows next and previous match in +other window, but does not switch buffer. `{' and `}' jumps to the +previous or next file in the grep output. TAB also jumps to the next +file. + +*** M-x grep now tries to avoid appending `/dev/null' to the command line +by using GNU grep `-H' option instead. M-x grep automatically +detects whether this is possible or not the first time it is invoked. +When `-H' is used, the grep command line supplied by the user is passed +unchanged to the system to execute, which allows more complicated +command lines to be used than was possible before. + +*** The new variables `grep-window-height' and `grep-scroll-output' override +the corresponding compilation mode settings, for grep commands only. + +** Cursor display changes: + +*** Emacs can produce an underscore-like (horizontal bar) cursor. +The underscore cursor is set by putting `(cursor-type . hbar)' in +default-frame-alist. It supports variable heights, like the `bar' +cursor does. + +*** The variable `cursor-in-non-selected-windows' can now be set to any +of the recognized cursor types. + +*** Display of hollow cursors now obeys the buffer-local value (if any) +of `cursor-in-non-selected-windows' in the buffer that the cursor +appears in. + +*** On text terminals, the variable `visible-cursor' controls whether Emacs +uses the "very visible" cursor (the default) or the normal cursor. + +*** The X resource cursorBlink can be used to turn off cursor blinking. + +*** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is +now controlled by the variable `blink-cursor-alist'. + +** X Windows Support: + +*** Emacs now supports drag and drop for X. Dropping a file on a window +opens it, dropping text inserts the text. Dropping a file on a dired +buffer copies or moves the file to that directory. + +*** Under X11, it is possible to swap Alt and Meta (and Super and Hyper). +The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym', +and `x-super-keysym' can be used to choose which keysyms Emacs should +use for the modifiers. For example, the following two lines swap +Meta and Alt: + (setq x-alt-keysym 'meta) + (setq x-meta-keysym 'alt) + +*** The X resource useXIM can be used to turn off use of XIM, which can +speed up Emacs with slow networking to the X server. + +If the configure option `--without-xim' was used to turn off use of +XIM by default, the X resource useXIM can be used to turn it on. + +*** The new variable `x-select-request-type' controls how Emacs +requests X selection. The default value is nil, which means that +Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING, +and use the more appropriately result. + +*** The scrollbar under LessTif or Motif has a smoother drag-scrolling. +On the other hand, the size of the thumb does not represent the actual +amount of text shown any more (only a crude approximation of it). + +** Xterm support: + +*** If you enable Xterm Mouse mode, Emacs will respond to mouse clicks +on the mode line, header line and display margin, when run in an xterm. + +*** Improved key bindings support when running in an xterm. +When Emacs is running in an xterm more key bindings are available. +The following should work: +{C,S,C-S,A}-{right,left,up,down,prior,next,delete,insert,F1-12}. +These key bindings work on xterm from X.org 6.8 (and later versions), +they might not work on some older versions of xterm, or on some +proprietary versions. +The various keys generated by xterm when the "modifyOtherKeys" +resource is set are also supported. + +** Character terminal color support changes: + +*** The new command-line option --color=MODE lets you specify a standard +mode for a tty color support. It is meant to be used on character +terminals whose capabilities are not set correctly in the terminal +database, or with terminal emulators which support colors, but don't +set the TERM environment variable to a name of a color-capable +terminal. "emacs --color" uses the same color commands as GNU `ls' +when invoked with "ls --color", so if your terminal can support colors +in "ls --color", it will support "emacs --color" as well. See the +user manual for the possible values of the MODE parameter. + +*** Emacs now supports several character terminals which provide more +than 8 colors. For example, for `xterm', 16-color, 88-color, and +256-color modes are supported. Emacs automatically notes at startup +the extended number of colors, and defines the appropriate entries for +all of these colors. + +*** Emacs now uses the full range of available colors for the default +faces when running on a color terminal, including 16-, 88-, and +256-color xterms. This means that when you run "emacs -nw" on an +88-color or 256-color xterm, you will see essentially the same face +colors as on X. + +*** There's a new support for colors on `rxvt' terminal emulator. + +** ebnf2ps changes: + +*** New option `ebnf-arrow-extra-width' which specify extra width for arrow +shape drawing. +The extra width is used to avoid that the arrowhead and the terminal border +overlap. It depends on `ebnf-arrow-shape' and `ebnf-line-width'. + +*** New option `ebnf-arrow-scale' which specify the arrow scale. +Values lower than 1.0, shrink the arrow. +Values greater than 1.0, expand the arrow. + +* New Modes and Packages in Emacs 22.1 + +** CUA mode is now part of the Emacs distribution. + +The new cua package provides CUA-like keybindings using C-x for +cut (kill), C-c for copy, C-v for paste (yank), and C-z for undo. +With cua, the region can be set and extended using shifted movement +keys (like pc-selection-mode) and typed text replaces the active +region (like delete-selection-mode). Do not enable these modes with +cua-mode. Customize the variable `cua-mode' to enable cua. + +The cua-selection-mode enables the CUA keybindings for the region but +does not change the bindings for C-z/C-x/C-c/C-v. It can be used as a +replacement for pc-selection-mode. + +In addition, cua provides unified rectangle support with visible +rectangle highlighting: Use C-return to start a rectangle, extend it +using the movement commands (or mouse-3), and cut or copy it using C-x +or C-c (using C-w and M-w also works). + +Use M-o and M-c to `open' or `close' the rectangle, use M-b or M-f, to +fill it with blanks or another character, use M-u or M-l to upcase or +downcase the rectangle, use M-i to increment the numbers in the +rectangle, use M-n to fill the rectangle with a numeric sequence (such +as 10 20 30...), use M-r to replace a regexp in the rectangle, and use +M-' or M-/ to restrict command on the rectangle to a subset of the +rows. See the commentary in cua-base.el for more rectangle commands. + +Cua also provides unified support for registers: Use a numeric +prefix argument between 0 and 9, i.e. M-0 .. M-9, for C-x, C-c, and +C-v to cut or copy into register 0-9, or paste from register 0-9. + +The last text deleted (not killed) is automatically stored in +register 0. This includes text deleted by typing text. + +Finally, cua provides a global mark which is set using S-C-space. +When the global mark is active, any text which is cut or copied is +automatically inserted at the global mark position. See the +commentary in cua-base.el for more global mark related commands. + +The features of cua also works with the standard Emacs bindings for +kill, copy, yank, and undo. If you want to use cua mode, but don't +want the C-x, C-c, C-v, and C-z bindings, you can customize the +`cua-enable-cua-keys' variable. + +Note: This version of cua mode is not backwards compatible with older +versions of cua.el and cua-mode.el. To ensure proper operation, you +must remove older versions of cua.el or cua-mode.el as well as the +loading and customization of those packages from the .emacs file. + +** Tramp is now part of the distribution. + +This package is similar to Ange-FTP: it allows you to edit remote +files. But whereas Ange-FTP uses FTP to access the remote host, +Tramp uses a shell connection. The shell connection is always used +for filename completion and directory listings and suchlike, but for +the actual file transfer, you can choose between the so-called +`inline' methods (which transfer the files through the shell +connection using base64 or uu encoding) and the `out-of-band' methods +(which invoke an external copying program such as `rcp' or `scp' or +`rsync' to do the copying). + +Shell connections can be acquired via `rsh', `ssh', `telnet' and also +`su' and `sudo'. Ange-FTP is still supported via the `ftp' method. + +If you want to disable Tramp you should set + + (setq tramp-default-method "ftp") + +Removing Tramp, and re-enabling Ange-FTP, can be achieved by M-x +tramp-unload-tramp. + +** The image-dired.el package allows you to easily view, tag and in +other ways manipulate image files and their thumbnails, using dired as +the main interface. Image-Dired provides functionality to generate +simple image galleries. + +** Image files are normally visited in Image mode, which lets you toggle +between viewing the image and viewing the text using C-c C-c. + +** The new python.el package is used to edit Python and Jython programs. + +** The URL package (which had been part of W3) is now part of Emacs. + +** Calc is now part of the Emacs distribution. + +Calc is an advanced desk calculator and mathematical tool written in +Emacs Lisp. The prefix for Calc has been changed to `C-x *' and Calc +can be started with `C-x * *'. The Calc manual is separate from the +Emacs manual; within Emacs, type "C-h i m calc RET" to read the +manual. A reference card is available in `etc/calccard.tex' and +`etc/calccard.ps'. + +** Org mode is now part of the Emacs distribution + +Org mode is a mode for keeping notes, maintaining ToDo lists, and +doing project planning with a fast and effective plain-text system. +It also contains a plain-text table editor with spreadsheet-like +capabilities. + +The Org mode table editor can be integrated into any major mode by +activating the minor mode, Orgtbl mode. + +The documentation for org-mode is in a separate manual; within Emacs, +type "C-h i m org RET" to read that manual. A reference card is +available in `etc/orgcard.tex' and `etc/orgcard.ps'. + +** ERC is now part of the Emacs distribution. + +ERC is a powerful, modular, and extensible IRC client for Emacs. + +To see what modules are available, type +M-x customize-option erc-modules RET. + +To start an IRC session with ERC, type M-x erc, and follow the prompts +for server, port, and nick. + +** Rcirc is now part of the Emacs distribution. + +Rcirc is an Internet relay chat (IRC) client. It supports +simultaneous connections to multiple IRC servers. Each discussion +takes place in its own buffer. For each connection you can join +several channels (many-to-many) and participate in private +(one-to-one) chats. Both channel and private chats are contained in +separate buffers. + +To start an IRC session using the default parameters, type M-x irc. +If you type C-u M-x irc, it prompts you for the server, nick, port and +startup channel parameters before connecting. + +** The new package ibuffer provides a powerful, completely +customizable replacement for buff-menu.el. + +** Newsticker is now part of the Emacs distribution. + +Newsticker asynchronously retrieves headlines (RSS) from a list of news +sites, prepares these headlines for reading, and allows for loading the +corresponding articles in a web browser. Its documentation is in a +separate manual. + +** The wdired.el package allows you to use normal editing commands on Dired +buffers to change filenames, permissions, etc... + +** Ido mode is now part of the Emacs distribution. + +The ido (interactively do) package is an extension of the iswitchb +package to do interactive opening of files and directories in addition +to interactive buffer switching. Ido is a superset of iswitchb (with +a few exceptions), so don't enable both packages. + +** The new global minor mode `file-name-shadow-mode' modifies the way +filenames being entered by the user in the minibuffer are displayed, so +that it's clear when part of the entered filename will be ignored due to +Emacs' filename parsing rules. The ignored portion can be made dim, +invisible, or otherwise less visually noticeable. The display method can +be displayed by customizing the variable `file-name-shadow-properties'. + +** Emacs' keyboard macro facilities have been enhanced by the new +kmacro package. + +Keyboard macros are now defined and executed via the F3 and F4 keys: +F3 starts a macro, F4 ends the macro, and pressing F4 again executes +the last macro. While defining the macro, F3 inserts a counter value +which automatically increments every time the macro is executed. + +There is now a keyboard macro ring which stores the most recently +defined macros. + +The C-x C-k sequence is now a prefix for the kmacro keymap which +defines bindings for moving through the keyboard macro ring, +C-x C-k C-p and C-x C-k C-n, editing the last macro C-x C-k C-e, +manipulating the macro counter and format via C-x C-k C-c, +C-x C-k C-a, and C-x C-k C-f. See the commentary in kmacro.el +for more commands. + +The original macro bindings C-x (, C-x ), and C-x e are still +available, but they now interface to the keyboard macro ring too. + +The C-x e command now automatically terminates the current macro +before calling it, if used while defining a macro. + +In addition, when ending or calling a macro with C-x e, the macro can +be repeated immediately by typing just the `e'. You can customize +this behavior via the variables kmacro-call-repeat-key and +kmacro-call-repeat-with-arg. + +Keyboard macros can now be debugged and edited interactively. +C-x C-k SPC steps through the last keyboard macro one key sequence +at a time, prompting for the actions to take. + +** The new keypad setup package provides several common bindings for +the numeric keypad which is available on most keyboards. The numeric +keypad typically has the digits 0 to 9, a decimal point, keys marked ++, -, /, and *, an Enter key, and a NumLock toggle key. The keypad +package only controls the use of the digit and decimal keys. + +By customizing the variables `keypad-setup', `keypad-shifted-setup', +`keypad-numlock-setup', and `keypad-numlock-shifted-setup', or by +using the function `keypad-setup', you can rebind all digit keys and +the decimal key of the keypad in one step for each of the four +possible combinations of the Shift key state (not pressed/pressed) and +the NumLock toggle state (off/on). + +The choices for the keypad keys in each of the above states are: +`Plain numeric keypad' where the keys generates plain digits, +`Numeric keypad with decimal key' where the character produced by the +decimal key can be customized individually (for internationalization), +`Numeric Prefix Arg' where the keypad keys produce numeric prefix args +for Emacs editing commands, `Cursor keys' and `Shifted Cursor keys' +where the keys work like (shifted) arrow keys, home/end, etc., and +`Unspecified/User-defined' where the keypad keys (kp-0, kp-1, etc.) +are left unspecified and can be bound individually through the global +or local keymaps. + +** The printing package is now part of the Emacs distribution. + +If you enable the printing package by including (require 'printing) in +the .emacs file, the normal Print item on the File menu is replaced +with a Print sub-menu which allows you to preview output through +ghostview, use ghostscript to print (if you don't have a PostScript +printer) or send directly to printer a PostScript code generated by +`ps-print' package. Use M-x pr-help for more information. + +** The new package longlines.el provides a minor mode for editing text +files composed of long lines, based on the `use-hard-newlines' +mechanism. The long lines are broken up by inserting soft newlines, +which are automatically removed when saving the file to disk or +copying into the kill ring, clipboard, etc. By default, Longlines +mode inserts soft newlines automatically during editing, a behavior +referred to as "soft word wrap" in other text editors. This is +similar to Refill mode, but more reliable. To turn the word wrap +feature off, set `longlines-auto-wrap' to nil. + +** SES mode (ses-mode) is a new major mode for creating and editing +spreadsheet files. Besides the usual Emacs features (intuitive command +letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers +viral immunity and import/export of tab-separated values. + +** The new package table.el implements editable, WYSIWYG, embedded +`text tables' in Emacs buffers. It simulates the effect of putting +these tables in a special major mode. The package emulates WYSIWYG +table editing available in modern word processors. The package also +can generate a table source in typesetting and markup languages such +as latex and html from the visually laid out text table. + +** Filesets are collections of files. You can define a fileset in +various ways, such as based on a directory tree or based on +program files that include other program files. + +Once you have defined a fileset, you can perform various operations on +all the files in it, such as visiting them or searching and replacing +in them. + +** The minor mode Reveal mode makes text visible on the fly as you +move your cursor into hidden regions of the buffer. +It should work with any package that uses overlays to hide parts +of a buffer, such as outline-minor-mode, hs-minor-mode, hide-ifdef-mode, ... + +There is also Global Reveal mode which affects all buffers. + +** New minor mode, Visible mode, toggles invisibility in the current buffer. +When enabled, it makes all invisible text visible. When disabled, it +restores the previous value of `buffer-invisibility-spec'. + +** The new package flymake.el does on-the-fly syntax checking of program +source files. See the Flymake's Info manual for more details. + +** savehist saves minibuffer histories between sessions. +To use this feature, turn on savehist-mode in your `.emacs' file. + +** The ruler-mode.el library provides a minor mode for displaying an +"active" ruler in the header line. You can use the mouse to visually +change the `fill-column', `window-margins' and `tab-stop-list' +settings. + +** The file t-mouse.el is now part of Emacs and provides access to mouse +events from the console. It still requires gpm to work but has been updated +for Emacs 22. In particular, the mode-line is now position sensitive. + +** The new package scroll-lock.el provides the Scroll Lock minor mode +for pager-like scrolling. Keys which normally move point by line or +paragraph will scroll the buffer by the respective amount of lines +instead and point will be kept vertically fixed relative to window +boundaries during scrolling. + +** The new global minor mode `size-indication-mode' (off by default) +shows the size of accessible part of the buffer on the mode line. + +** The new package conf-mode.el handles thousands of configuration files, with +varying syntaxes for comments (;, #, //, /* */ or !), assignment (var = value, +var : value, var value or keyword var value) and sections ([section] or +section { }). Many files under /etc/, or with suffixes like .cf through +.config, .properties (Java), .desktop (KDE/Gnome), .ini and many others are +recognized. + +** GDB-Script-mode is used for files like .gdbinit. + +** The new package dns-mode.el adds syntax highlighting of DNS master files. +It is a modern replacement for zone-mode.el, which is now obsolete. + +** `cfengine-mode' is a major mode for editing GNU Cfengine +configuration files. + +** The TCL package tcl-mode.el was replaced by tcl.el. +This was actually done in Emacs-21.1, and was not documented. + +* Changes in Specialized Modes and Packages in Emacs 22.1: + +** Changes in Dired + +*** Bindings for Image-Dired added. +Several new keybindings, all starting with the C-t prefix, have been +added to Dired. They are all bound to commands in Image-Dired. As a +starting point, mark some image files in a dired buffer and do C-t d +to display thumbnails of them in a separate buffer. + +** Info mode changes + +*** Images in Info pages are supported. + +Info pages show embedded images, in Emacs frames with image support. +Info documentation that includes images, processed with makeinfo +version 4.7 or newer, compiles to Info pages with embedded images. + +*** `Info-index' offers completion. + +*** http and ftp links in Info are now operational: they look like cross +references and following them calls `browse-url'. + +*** isearch in Info uses Info-search and searches through multiple nodes. + +Before leaving the initial Info node isearch fails once with the error +message [initial node], and with subsequent C-s/C-r continues through +other nodes. When isearch fails for the rest of the manual, it wraps +around the whole manual to the top/final node. The user option +`Info-isearch-search' controls whether to use Info-search for isearch, +or the default isearch search function that wraps around the current +Info node. + +*** New search commands: `Info-search-case-sensitively' (bound to S), +`Info-search-backward', and `Info-search-next' which repeats the last +search without prompting for a new search string. + +*** New command `info-apropos' searches the indices of the known +Info files on your system for a string, and builds a menu of the +possible matches. + +*** New command `Info-history-forward' (bound to r and new toolbar icon) +moves forward in history to the node you returned from after using +`Info-history-back' (renamed from `Info-last'). + +*** New command `Info-history' (bound to L) displays a menu of visited nodes. + +*** New command `Info-toc' (bound to T) creates a node with table of contents +from the tree structure of menus of the current Info file. + +*** New command `Info-copy-current-node-name' (bound to w) copies +the current Info node name into the kill ring. With a zero prefix +arg, puts the node name inside the `info' function call. + +*** New face `info-xref-visited' distinguishes visited nodes from unvisited +and a new option `Info-fontify-visited-nodes' to control this. + +*** A numeric prefix argument of `info' selects an Info buffer +with the number appended to the `*info*' buffer name (e.g. "*info*<2>"). + +*** Info now hides node names in menus and cross references by default. + +If you prefer the old behavior, you can set the new user option +`Info-hide-note-references' to nil. + +*** The default value for `Info-scroll-prefer-subnodes' is now nil. + +** Emacs server changes + +*** You can have several Emacs servers on the same machine. + + % emacs --eval '(setq server-name "foo")' -f server-start & + % emacs --eval '(setq server-name "bar")' -f server-start & + % emacsclient -s foo file1 + % emacsclient -s bar file2 + +*** The `emacsclient' command understands the options `--eval' and +`--display' which tell Emacs respectively to evaluate the given Lisp +expression and to use the given display when visiting files. + +*** User option `server-mode' can be used to start a server process. + +** Locate changes + +*** By default, reverting the *Locate* buffer now just runs the last +`locate' command back over again without offering to update the locate +database (which normally only works if you have root privileges). If +you prefer the old behavior, set the new customizable option +`locate-update-when-revert' to t. + +** Desktop package + +*** Desktop saving is now a minor mode, `desktop-save-mode'. + +*** The variable `desktop-enable' is obsolete. + +Customize `desktop-save-mode' to enable desktop saving. + +*** Buffers are saved in the desktop file in the same order as that in the +buffer list. + +*** The desktop package can be customized to restore only some buffers +immediately, remaining buffers are restored lazily (when Emacs is +idle). + +*** New command line option --no-desktop + +*** New commands: + - desktop-revert reverts to the last loaded desktop. + - desktop-change-dir kills current desktop and loads a new. + - desktop-save-in-desktop-dir saves desktop in the directory from which + it was loaded. + - desktop-lazy-complete runs the desktop load to completion. + - desktop-lazy-abort aborts lazy loading of the desktop. + +*** New customizable variables: + - desktop-save. Determines whether the desktop should be saved when it is + killed. + - desktop-file-name-format. Format in which desktop file names should be saved. + - desktop-path. List of directories in which to lookup the desktop file. + - desktop-locals-to-save. List of local variables to save. + - desktop-globals-to-clear. List of global variables that `desktop-clear' will clear. + - desktop-clear-preserve-buffers-regexp. Regexp identifying buffers that `desktop-clear' + should not delete. + - desktop-restore-eager. Number of buffers to restore immediately. Remaining buffers are + restored lazily (when Emacs is idle). + - desktop-lazy-verbose. Verbose reporting of lazily created buffers. + - desktop-lazy-idle-delay. Idle delay before starting to create buffers. + +*** New hooks: + - desktop-after-read-hook run after a desktop is loaded. + - desktop-no-desktop-file-hook run when no desktop file is found. + +** Recentf changes + +The recent file list is now automatically cleaned up when recentf mode is +enabled. The new option `recentf-auto-cleanup' controls when to do +automatic cleanup. + +The ten most recent files can be quickly opened by using the shortcut +keys 1 to 9, and 0, when the recent list is displayed in a buffer via +the `recentf-open-files', or `recentf-open-more-files' commands. + +The `recentf-keep' option replaces `recentf-keep-non-readable-files-p' +and provides a more general mechanism to customize which file names to +keep in the recent list. + +With the more advanced option `recentf-filename-handlers', you can +specify functions that successively transform recent file names. For +example, if set to `file-truename' plus `abbreviate-file-name', the +same file will not be in the recent list with different symbolic +links, and the file name will be abbreviated. + +To follow naming convention, `recentf-menu-append-commands-flag' +replaces the misnamed option `recentf-menu-append-commands-p'. The +old name remains available as alias, but has been marked obsolete. + +** Auto-Revert changes + +*** You can now use Auto Revert mode to `tail' a file. + +If point is at the end of a file buffer before reverting, Auto Revert +mode keeps it at the end after reverting. Similarly if point is +displayed at the end of a file buffer in any window, it stays at the end +of the buffer in that window. This allows you to "tail" a file: just +put point at the end of the buffer and it stays there. This rule +applies to file buffers. For non-file buffers, the behavior can be mode +dependent. + +If you are sure that the file will only change by growing at the end, +then you can tail the file more efficiently by using the new minor +mode Auto Revert Tail mode. The function `auto-revert-tail-mode' +toggles this mode. + +*** Auto Revert mode is now more careful to avoid excessive reverts and +other potential problems when deciding which non-file buffers to +revert. This matters especially if Global Auto Revert mode is enabled +and `global-auto-revert-non-file-buffers' is non-nil. Auto Revert +mode only reverts a non-file buffer if the buffer has a non-nil +`revert-buffer-function' and a non-nil `buffer-stale-function', which +decides whether the buffer should be reverted. Currently, this means +that auto reverting works for Dired buffers (although this may not +work properly on all operating systems) and for the Buffer Menu. + +*** If the new user option `auto-revert-check-vc-info' is non-nil, Auto +Revert mode reliably updates version control info (such as the version +control number in the mode line), in all version controlled buffers in +which it is active. If the option is nil, the default, then this info +only gets updated whenever the buffer gets reverted. + +** Changes in Shell Mode + +*** Shell output normally scrolls so that the input line is at the +bottom of the window -- thus showing the maximum possible text. (This +is similar to the way sequential output to a terminal works.) + +** Changes in Hi Lock + +*** hi-lock-mode now only affects a single buffer, and a new function +`global-hi-lock-mode' enables Hi Lock in all buffers. By default, if +hi-lock-mode is used in what appears to be the initialization file, a +warning message suggests to use global-hi-lock-mode instead. However, +if the new variable `hi-lock-archaic-interface-deduce' is non-nil, +using hi-lock-mode in an initialization file will turn on Hi Lock in all +buffers and no warning will be issued (for compatibility with the +behavior in older versions of Emacs). + +** Changes in Allout + +*** Topic cryptography added, enabling easy gpg topic encryption and +decryption. Per-topic basis enables interspersing encrypted-text and +clear-text within a single file to your heart's content, using symmetric +and/or public key modes. Time-limited key caching, user-provided +symmetric key hinting and consistency verification, auto-encryption of +pending topics on save, and more, make it easy to use encryption in +powerful ways. Encryption behavior customization is collected in the +allout-encryption customization group. + +*** Default command prefix was changed to "\C-c " (control-c space), to +avoid intruding on user's keybinding space. Customize the +`allout-command-prefix' variable to your preference. + +*** Some previously rough topic-header format edge cases are reconciled. +Level 1 topics use the mode's comment format, and lines starting with the +asterisk - for instance, the comment close of some languages (eg, c's "*/" +or mathematica's "*)") - at the beginning of line are no longer are +interpreted as level 1 topics in those modes. + +*** Many or most commonly occurring "accidental" topics are disqualified. +Text in item bodies that looks like a low-depth topic is no longer mistaken +for one unless its first offspring (or that of its next sibling with +offspring) is only one level deeper. + +For example, pasting some text with a bunch of leading asterisks into a +topic that's followed by a level 3 or deeper topic will not cause the +pasted text to be mistaken for outline structure. + +The same constraint is applied to any level 2 or 3 topics. + +This settles an old issue where typed or pasted text needed to be carefully +reviewed, and sometimes doctored, to avoid accidentally disrupting the +outline structure. Now that should be generally unnecessary, as the most +prone-to-occur accidents are disqualified. + +*** Allout now refuses to create "containment discontinuities", where a +topic is shifted deeper than the offspring-depth of its container. On the +other hand, allout now operates gracefully with existing containment +discontinuities, revealing excessively contained topics rather than either +leaving them hidden or raising an error. + +*** Navigation within an item is easier. Repeated beginning-of-line and +end-of-line key commands (usually, ^A and ^E) cycle through the +beginning/end-of-line and then beginning/end of topic, etc. See new +customization vars `allout-beginning-of-line-cycles' and +`allout-end-of-line-cycles'. + +*** New or revised allout-mode activity hooks enable creation of +cooperative enhancements to allout mode without changes to the mode, +itself. + +See `allout-exposure-change-hook', `allout-structure-added-hook', +`allout-structure-deleted-hook', and `allout-structure-shifted-hook'. + +`allout-exposure-change-hook' replaces the existing +`allout-view-change-hook', which is being deprecated. Both are still +invoked, but `allout-view-change-hook' will eventually be ignored. +`allout-exposure-change-hook' is called with explicit arguments detailing +the specifics of each change (as are the other new hooks), making it easier +to use than the old version. + +There is a new mode deactivation hook, `allout-mode-deactivate-hook', for +coordinating with deactivation of allout-mode. Both that and the mode +activation hook, `allout-mode-hook' are now run after the `allout-mode' +variable is changed, rather than before. + +*** Allout now uses text overlay's `invisible' property for concealed text, +instead of selective-display. This simplifies the code, in particular +avoiding the need for kludges for isearch dynamic-display, discretionary +handling of edits of concealed text, undo concerns, etc. + +*** There are many other fixes and refinements, including: + + - repaired inhibition of inadvertent edits to concealed text, without + inhibiting undo; we now reveal undo changes within concealed text. + - auto-fill-mode is now left inactive when allout-mode starts, if it + already was inactive. also, `allout-inhibit-auto-fill' custom + configuration variable makes it easy to disable auto fill in allout + outlines in general or on a per-buffer basis. + - allout now tolerates fielded text in outlines without disruption. + - hot-spot navigation now is modularized with a new function, + `allout-hotspot-key-handler', enabling easier use and enhancement of + the functionality in allout addons. + - repaired retention of topic body hanging indent upon topic depth shifts + - bulleting variation is simpler and more accommodating, both in the + default behavior and in ability to vary when creating new topics + - mode deactivation now does cleans up effectively, more properly + restoring affected variables and hooks to former state, removing + overlays, etc. see `allout-add-resumptions' and + `allout-do-resumptions', which replace the old `allout-resumptions'. + - included a few unit-tests for interior functionality. developers can + have them automatically run at the end of module load by customizing + the option `allout-run-unit-tests-on-load'. + - many, many other, more minor tweaks, fixes, and refinements. + - version number incremented to 2.2 + +** Hideshow mode changes + +*** New variable `hs-set-up-overlay' allows customization of the overlay +used to effect hiding for hideshow minor mode. Integration with isearch +handles the overlay property `display' specially, preserving it during +temporary overlay showing in the course of an isearch operation. + +*** New variable `hs-allow-nesting' non-nil means that hiding a block does +not discard the hidden state of any "internal" blocks; when the parent +block is later shown, the internal blocks remain hidden. Default is nil. + +** FFAP changes + +*** New ffap commands and keybindings: + +C-x C-r (`ffap-read-only'), +C-x C-v (`ffap-alternate-file'), C-x C-d (`ffap-list-directory'), +C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'), +C-x 5 r (`ffap-read-only-other-frame'), C-x 5 d (`ffap-dired-other-frame'). + +*** FFAP accepts wildcards in a file name by default. + +C-x C-f passes the file name to `find-file' with non-nil WILDCARDS +argument, which visits multiple files, and C-x d passes it to `dired'. + +** Changes in Skeleton + +*** In skeleton.el, `-' marks the `skeleton-point' without interregion interaction. + +`@' has reverted to only setting `skeleton-positions' and no longer +sets `skeleton-point'. Skeletons which used @ to mark +`skeleton-point' independent of `_' should now use `-' instead. The +updated `skeleton-insert' docstring explains these new features along +with other details of skeleton construction. + +*** The variables `skeleton-transformation', `skeleton-filter', and +`skeleton-pair-filter' have been renamed to +`skeleton-transformation-function', `skeleton-filter-function', and +`skeleton-pair-filter-function'. The old names are still available +as aliases. + +** HTML/SGML changes + +*** Emacs now tries to set up buffer coding systems for HTML/XML files +automatically. + +*** SGML mode has indentation and supports XML syntax. +The new variable `sgml-xml-mode' tells SGML mode to use XML syntax. +When this option is enabled, SGML tags are inserted in XML style, +i.e., there is always a closing tag. +By default, its setting is inferred on a buffer-by-buffer basis +from the file name or buffer contents. + +*** The variable `sgml-transformation' has been renamed to +`sgml-transformation-function'. The old name is still available as +alias. + +*** `xml-mode' is now an alias for `sgml-mode', which has XML support. + +** TeX modes + +*** New major mode Doctex mode, for *.dtx files. + +*** C-c C-c prompts for a command to run, and tries to offer a good default. + +*** The user option `tex-start-options-string' has been replaced +by two new user options: `tex-start-options', which should hold +command-line options to feed to TeX, and `tex-start-commands' which should hold +TeX commands to use at startup. + +*** verbatim environments are now highlighted in courier by font-lock +and super/sub-scripts are made into super/sub-scripts. + +** RefTeX mode changes + +*** Changes to RefTeX's table of contents + +The new command keys "<" and ">" in the TOC buffer promote/demote the +section at point or all sections in the current region, with full +support for multifile documents. + +The new command `reftex-toc-recenter' (`C-c -') shows the current +section in the TOC buffer without selecting the TOC window. +Recentering can happen automatically in idle time when the option +`reftex-auto-recenter-toc' is turned on. The highlight in the TOC +buffer stays when the focus moves to a different window. A dedicated +frame can show the TOC with the current section always automatically +highlighted. The frame is created and deleted from the toc buffer +with the `d' key. + +The toc window can be split off horizontally instead of vertically. +See new option `reftex-toc-split-windows-horizontally'. + +Labels can be renamed globally from the table of contents using the +key `M-%'. + +The new command `reftex-goto-label' jumps directly to a label +location. + +*** Changes related to citations and BibTeX database files + +Commands that insert a citation now prompt for optional arguments when +called with a prefix argument. Related new options are +`reftex-cite-prompt-optional-args' and `reftex-cite-cleanup-optional-args'. + +The new command `reftex-create-bibtex-file' creates a BibTeX database +with all entries referenced in the current document. The keys "e" and +"E" allow to produce a BibTeX database file from entries marked in a +citation selection buffer. + +The command `reftex-citation' uses the word in the buffer before the +cursor as a default search string. + +The support for chapterbib has been improved. Different chapters can +now use BibTeX or an explicit `thebibliography' environment. + +The macros which specify the bibliography file (like \bibliography) +can be configured with the new option `reftex-bibliography-commands'. + +Support for jurabib has been added. + +*** Global index matched may be verified with a user function. + +During global indexing, a user function can verify an index match. +See new option `reftex-index-verify-function'. + +*** Parsing documents with many labels can be sped up. + +Operating in a document with thousands of labels can be sped up +considerably by allowing RefTeX to derive the type of a label directly +from the label prefix like `eq:' or `fig:'. The option +`reftex-trust-label-prefix' needs to be configured in order to enable +this feature. While the speed-up is significant, this may reduce the +quality of the context offered by RefTeX to describe a label. + +*** Miscellaneous changes + +The macros which input a file in LaTeX (like \input, \include) can be +configured in the new option `reftex-include-file-commands'. + +RefTeX supports global incremental search. + +** BibTeX mode + +*** The new command `bibtex-url' browses a URL for the BibTeX entry at +point (bound to C-c C-l and mouse-2, RET on clickable fields). + +*** The new command `bibtex-entry-update' (bound to C-c C-u) updates +an existing BibTeX entry by inserting fields that may occur but are not +present. + +*** New `bibtex-entry-format' option `required-fields', enabled by default. + +*** `bibtex-maintain-sorted-entries' can take values `plain', +`crossref', and `entry-class' which control the sorting scheme used +for BibTeX entries. `bibtex-sort-entry-class' controls the sorting +scheme `entry-class'. TAB completion for reference keys and +automatic detection of duplicates does not require anymore that +`bibtex-maintain-sorted-entries' is non-nil. + +*** The new command `bibtex-complete' completes word fragment before +point according to context (bound to M-tab). + +*** In BibTeX mode the command `fill-paragraph' (M-q) fills +individual fields of a BibTeX entry. + +*** The new variable `bibtex-autofill-types' contains a list of entry +types for which fields are filled automatically (if possible). + +*** The new commands `bibtex-find-entry' and `bibtex-find-crossref' +locate entries and crossref'd entries (bound to C-c C-s and C-c C-x). +Crossref fields are clickable (bound to mouse-2, RET). + +*** The new variables `bibtex-files' and `bibtex-file-path' define a set +of BibTeX files that are searched for entry keys. + +*** The new command `bibtex-validate-globally' checks for duplicate keys +in multiple BibTeX files. + +*** If the new variable `bibtex-autoadd-commas' is non-nil, +automatically add missing commas at end of BibTeX fields. + +*** The new command `bibtex-copy-summary-as-kill' pushes summary +of BibTeX entry to kill ring (bound to C-c C-t). + +*** If the new variable `bibtex-parse-keys-fast' is non-nil, +use fast but simplified algorithm for parsing BibTeX keys. + +*** The new variables bibtex-expand-strings and +bibtex-autokey-expand-strings control the expansion of strings when +extracting the content of a BibTeX field. + +*** The variables `bibtex-autokey-name-case-convert' and +`bibtex-autokey-titleword-case-convert' have been renamed to +`bibtex-autokey-name-case-convert-function' and +`bibtex-autokey-titleword-case-convert-function'. The old names are +still available as aliases. + +** GUD changes + +*** The new package gdb-ui.el provides an enhanced graphical interface to +GDB. You can interact with GDB through the GUD buffer in the usual way, but +there are also further buffers which control the execution and describe the +state of your program. It can separate the input/output of your program from +that of GDB and watches expressions in the speedbar. It also uses features of +Emacs 21/22 such as the toolbar, and bitmaps in the fringe to indicate +breakpoints. + +To use this package just type M-x gdb. See the Emacs manual if you want the +old behaviour. + +*** GUD mode has its own tool bar for controlling execution of the inferior +and other common debugger commands. + +*** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program +counter to the specified source line (the one where point is). + +*** The variable tooltip-gud-tips-p has been removed. GUD tooltips can now be +toggled independently of normal tooltips with the minor mode +`gud-tooltip-mode'. + +*** In graphical mode, with a C program, GUD Tooltips have been extended to +display the #define directive associated with an identifier when program is +not executing. + +*** GUD mode improvements for jdb: + +**** Search for source files using jdb classpath and class information. +Fast startup since there is no need to scan all source files up front. +There is also no need to create and maintain lists of source +directories to scan. Look at `gud-jdb-use-classpath' and +`gud-jdb-classpath' customization variables documentation. + +**** The previous method of searching for source files has been +preserved in case someone still wants/needs to use it. +Set `gud-jdb-use-classpath' to nil. + +**** Supports the standard breakpoint (gud-break, gud-clear) +set/clear operations from Java source files under the classpath, stack +traversal (gud-up, gud-down), and run until current stack finish +(gud-finish). + +**** Supports new jdb (Java 1.2 and later) in addition to oldjdb +(Java 1.1 jdb). + +*** Added jdb Customization Variables + +**** `gud-jdb-command-name'. What command line to use to invoke jdb. + +**** `gud-jdb-use-classpath'. Allows selection of java source file searching +method: set to t for new method, nil to scan `gud-jdb-directories' for +java sources (previous method). + +**** `gud-jdb-directories'. List of directories to scan and search for Java +classes using the original gud-jdb method (if `gud-jdb-use-classpath' +is nil). + +*** Minor Improvements + +**** The STARTTLS wrapper (starttls.el) can now use GNUTLS +instead of the OpenSSL based `starttls' tool. For backwards +compatibility, it prefers `starttls', but you can toggle +`starttls-use-gnutls' to switch to GNUTLS (or simply remove the +`starttls' tool). + +**** Do not allow debugger output history variable to grow without bounds. + +** Lisp mode changes + +*** Lisp mode now uses `font-lock-doc-face' for doc strings. + +*** C-u C-M-q in Emacs Lisp mode pretty-prints the list after point. + +*** New features in evaluation commands + +**** The function `eval-defun' (C-M-x) called on defface reinitializes +the face to the value specified in the defface expression. + +**** Typing C-x C-e twice prints the value of the integer result +in additional formats (octal, hexadecimal, character) specified +by the new function `eval-expression-print-format'. The same +function also defines the result format for `eval-expression' (M-:), +`eval-print-last-sexp' (C-j) and some edebug evaluation functions. + +** Changes to cmuscheme + +*** Emacs now offers to start Scheme if the user tries to +evaluate a Scheme expression but no Scheme subprocess is running. + +*** If the file ~/.emacs_NAME or ~/.emacs.d/init_NAME.scm (where NAME +is the name of the Scheme interpreter) exists, its contents are sent +to the Scheme subprocess upon startup. + +*** There are new commands to instruct the Scheme interpreter to trace +procedure calls (`scheme-trace-procedure') and to expand syntactic forms +(`scheme-expand-current-form'). The commands actually sent to the Scheme +subprocess are controlled by the user options `scheme-trace-command', +`scheme-untrace-command' and `scheme-expand-current-form'. + +** Ewoc changes + +*** The new function `ewoc-delete' deletes specified nodes. + +*** `ewoc-create' now takes optional arg NOSEP, which inhibits insertion of +a newline after each pretty-printed entry and after the header and footer. +This allows you to create multiple-entry ewocs on a single line and to +effect "invisible" nodes by arranging for the pretty-printer to not print +anything for those nodes. + +For example, these two sequences of expressions behave identically: + +;; NOSEP nil +(defun PP (data) (insert (format "%S" data))) +(ewoc-create 'PP "start\n") + +;; NOSEP t +(defun PP (data) (insert (format "%S\n" data))) +(ewoc-create 'PP "start\n\n" "\n" t) + +** CC mode changes + +*** The CC Mode manual has been extensively revised. +The information about using CC Mode has been separated from the larger +and more difficult chapters about configuration. + +*** New Minor Modes +**** Electric Minor Mode toggles the electric action of non-alphabetic keys. +The new command c-toggle-electric-mode is bound to C-c C-l. Turning the +mode off can be helpful for editing chaotically indented code and for +users new to CC Mode, who sometimes find electric indentation +disconcerting. Its current state is displayed in the mode line with an +'l', e.g. "C/al". + +**** Subword Minor Mode makes Emacs recognize word boundaries at upper case +letters in StudlyCapsIdentifiers. You enable this feature by C-c C-w. It can +also be used in non-CC Mode buffers. :-) Contributed by Masatake YAMATO. + +*** Support for the AWK language. +Support for the AWK language has been introduced. The implementation is +based around GNU AWK version 3.1, but it should work pretty well with +any AWK. As yet, not all features of CC Mode have been adapted for AWK. +Here is a summary: + +**** Indentation Engine +The CC Mode indentation engine fully supports AWK mode. + +AWK mode handles code formatted in the conventional AWK fashion: `{'s +which start actions, user-defined functions, or compound statements are +placed on the same line as the associated construct; the matching `}'s +are normally placed under the start of the respective pattern, function +definition, or structured statement. + +The predefined line-up functions haven't yet been adapted for AWK +mode, though some of them may work serendipitously. There shouldn't +be any problems writing custom indentation functions for AWK mode. + +**** Font Locking +There is a single level of font locking in AWK mode, rather than the +three distinct levels the other modes have. There are several +idiosyncrasies in AWK mode's font-locking due to the peculiarities of +the AWK language itself. + +**** Comment and Movement Commands +These commands all work for AWK buffers. The notion of "defun" has +been augmented to include AWK pattern-action pairs - the standard +"defun" commands on key sequences C-M-a, C-M-e, and C-M-h use this +extended definition. + +**** "awk" style, Auto-newline Insertion and Clean-ups +A new style, "awk" has been introduced, and this is now the default +style for AWK code. With auto-newline enabled, the clean-up +c-one-liner-defun (see above) is useful. + +*** Font lock support. +CC Mode now provides font lock support for all its languages. This +supersedes the font lock patterns that have been in the core font lock +package for C, C++, Java and Objective-C. Like indentation, font +locking is done in a uniform way across all languages (except the new +AWK mode - see below). That means that the new font locking will be +different from the old patterns in various details for most languages. + +The main goal of the font locking in CC Mode is accuracy, to provide a +dependable aid in recognizing the various constructs. Some, like +strings and comments, are easy to recognize while others like +declarations and types can be very tricky. CC Mode can go to great +lengths to recognize declarations and casts correctly, especially when +the types aren't recognized by standard patterns. This is a fairly +demanding analysis which can be slow on older hardware, and it can +therefore be disabled by choosing a lower decoration level with the +variable font-lock-maximum-decoration. + +Note that the most demanding font lock level has been tuned with lazy +fontification in mind; Just-In-Time-Lock mode should be enabled for +the highest font lock level (by default, it is). Fontifying a file +with several thousand lines in one go can take the better part of a +minute. + +**** The (c|c++|objc|java|idl|pike)-font-lock-extra-types variables +are now used by CC Mode to recognize identifiers that are certain to +be types. (They are also used in cases that aren't related to font +locking.) At the maximum decoration level, types are often recognized +properly anyway, so these variables should be fairly restrictive and +not contain patterns for uncertain types. + +**** Support for documentation comments. +There is a "plugin" system to fontify documentation comments like +Javadoc and the markup within them. It's independent of the host +language, so it's possible to e.g. turn on Javadoc font locking in C +buffers. See the variable c-doc-comment-style for details. + +Currently three kinds of doc comment styles are recognized: Sun's +Javadoc, Autodoc (which is used in Pike) and GtkDoc (used in C). (The +last was contributed by Masatake YAMATO). This is by no means a +complete list of the most common tools; if your doc comment extractor +of choice is missing then please drop a note to bug-cc-mode@gnu.org. + +**** Better handling of C++ templates. +As a side effect of the more accurate font locking, C++ templates are +now handled much better. The angle brackets that delimit them are +given parenthesis syntax so that they can be navigated like other +parens. + +This also improves indentation of templates, although there still is +work to be done in that area. E.g. it's required that multiline +template clauses are written in full and then refontified to be +recognized, and the indentation of nested templates is a bit odd and +not as configurable as it ought to be. + +**** Improved handling of Objective-C and CORBA IDL. +Especially the support for Objective-C and IDL has gotten an overhaul. +The special "@" declarations in Objective-C are handled correctly. +All the keywords used in CORBA IDL, PSDL, and CIDL are recognized and +handled correctly, also wrt indentation. + +*** Changes in Key Sequences +**** c-toggle-auto-hungry-state is no longer bound to C-c C-t. + +**** c-toggle-hungry-state is no longer bound to C-c C-d. +This binding has been taken over by c-hungry-delete-forwards. + +**** c-toggle-auto-state (C-c C-t) has been renamed to c-toggle-auto-newline. +c-toggle-auto-state remains as an alias. + +**** The new commands c-hungry-backspace and c-hungry-delete-forwards +have key bindings C-c C-DEL (or C-c DEL, for the benefit of TTYs) and +C-c C-d (or C-c C- or C-c ) respectively. These +commands delete entire blocks of whitespace with a single +key-sequence. [N.B. "DEL" is the key.] + +**** The new command c-toggle-electric-mode is bound to C-c C-l. + +**** The new command c-subword-mode is bound to C-c C-w. + +*** C-c C-s (`c-show-syntactic-information') now highlights the anchor +position(s). + +*** New syntactic symbols in IDL mode. +The top level constructs "module" and "composition" (from CIDL) are +now handled like "namespace" in C++: They are given syntactic symbols +module-open, module-close, inmodule, composition-open, +composition-close, and incomposition. + +*** New functions to do hungry delete without enabling hungry delete mode. +The new functions `c-hungry-backspace' and `c-hungry-delete-forward' +provide hungry deletion without having to toggle a mode. They are +bound to C-c C-DEL and C-c C-d (and several variants, for the benefit +of different keyboard setups. See "Changes in key sequences" above). + +*** Better control over `require-final-newline'. + +The variable `c-require-final-newline' specifies which of the modes +implemented by CC mode should insert final newlines. Its value is a +list of modes, and only those modes should do it. By default the list +includes C, C++ and Objective-C modes. + +Whichever modes are in this list will set `require-final-newline' +based on `mode-require-final-newline'. + +*** Format change for syntactic context elements. + +The elements in the syntactic context returned by `c-guess-basic-syntax' +and stored in `c-syntactic-context' has been changed somewhat to allow +attaching more information. They are now lists instead of single cons +cells. E.g. a line that previously had the syntactic analysis + +((inclass . 11) (topmost-intro . 13)) + +is now analyzed as + +((inclass 11) (topmost-intro 13)) + +In some cases there are more than one position given for a syntactic +symbol. + +This change might affect code that calls `c-guess-basic-syntax' +directly, and custom lineup functions if they use +`c-syntactic-context'. However, the argument given to lineup +functions is still a single cons cell with nil or an integer in the +cdr. + +*** API changes for derived modes. + +There have been extensive changes "under the hood" which can affect +derived mode writers. Some of these changes are likely to cause +incompatibilities with existing derived modes, but on the other hand +care has now been taken to make it possible to extend and modify CC +Mode with less risk of such problems in the future. + +**** New language variable system. +These are variables whose values vary between CC Mode's different +languages. See the comment blurb near the top of cc-langs.el. + +**** New initialization functions. +The initialization procedure has been split up into more functions to +give better control: `c-basic-common-init', `c-font-lock-init', and +`c-init-language-vars'. + +*** Changes in analysis of nested syntactic constructs. +The syntactic analysis engine has better handling of cases where +several syntactic constructs appear nested on the same line. They are +now handled as if each construct started on a line of its own. + +This means that CC Mode now indents some cases differently, and +although it's more consistent there might be cases where the old way +gave results that's more to one's liking. So if you find a situation +where you think that the indentation has become worse, please report +it to bug-cc-mode@gnu.org. + +**** New syntactic symbol substatement-label. +This symbol is used when a label is inserted between a statement and +its substatement. E.g: + + if (x) + x_is_true: + do_stuff(); + +*** Better handling of multiline macros. + +**** Syntactic indentation inside macros. +The contents of multiline #define's are now analyzed and indented +syntactically just like other code. This can be disabled by the new +variable `c-syntactic-indentation-in-macros'. A new syntactic symbol +`cpp-define-intro' has been added to control the initial indentation +inside `#define's. + +**** New lineup function `c-lineup-cpp-define'. + +Now used by default to line up macro continuation lines. The behavior +of this function closely mimics the indentation one gets if the macro +is indented while the line continuation backslashes are temporarily +removed. If syntactic indentation in macros is turned off, it works +much line `c-lineup-dont-change', which was used earlier, but handles +empty lines within the macro better. + +**** Automatically inserted newlines continues the macro if used within one. +This applies to the newlines inserted by the auto-newline mode, and to +`c-context-line-break' and `c-context-open-line'. + +**** Better alignment of line continuation backslashes. +`c-backslash-region' tries to adapt to surrounding backslashes. New +variable `c-backslash-max-column' puts a limit on how far out +backslashes can be moved. + +**** Automatic alignment of line continuation backslashes. +This is controlled by the new variable `c-auto-align-backslashes'. It +affects `c-context-line-break', `c-context-open-line' and newlines +inserted in Auto-Newline mode. + +**** Line indentation works better inside macros. +Regardless whether syntactic indentation and syntactic indentation +inside macros are enabled or not, line indentation now ignores the +line continuation backslashes. This is most noticeable when syntactic +indentation is turned off and there are empty lines (save for the +backslash) in the macro. + +*** indent-for-comment is more customizable. +The behavior of M-; (indent-for-comment) is now configurable through +the variable `c-indent-comment-alist'. The indentation behavior is +based on the preceding code on the line, e.g. to get two spaces after +#else and #endif but indentation to `comment-column' in most other +cases (something which was hardcoded earlier). + +*** New function `c-context-open-line'. +It's the open-line equivalent of `c-context-line-break'. + +*** New clean-ups + +**** `comment-close-slash'. +With this clean-up, a block (i.e. c-style) comment can be terminated by +typing a slash at the start of a line. + +**** `c-one-liner-defun' +This clean-up compresses a short enough defun (for example, an AWK +pattern/action pair) onto a single line. "Short enough" is configurable. + +*** New lineup functions + +**** `c-lineup-string-cont' +This lineup function lines up a continued string under the one it +continues. E.g: + +result = prefix + "A message " + "string."; <- c-lineup-string-cont + +**** `c-lineup-cascaded-calls' +Lines up series of calls separated by "->" or ".". + +**** `c-lineup-knr-region-comment' +Gives (what most people think is) better indentation of comments in +the "K&R region" between the function header and its body. + +**** `c-lineup-gcc-asm-reg' +Provides better indentation inside asm blocks. + +**** `c-lineup-argcont' +Lines up continued function arguments after the preceding comma. + +*** Added toggle for syntactic indentation. +The function `c-toggle-syntactic-indentation' can be used to toggle +syntactic indentation. + +*** Better caching of the syntactic context. +CC Mode caches the positions of the opening parentheses (of any kind) +of the lists surrounding the point. Those positions are used in many +places as anchor points for various searches. The cache is now +improved so that it can be reused to a large extent when the point is +moved. The less it moves, the less needs to be recalculated. + +The effect is that CC Mode should be fast most of the time even when +opening parens are hung (i.e. aren't in column zero). It's typically +only the first time after the point is moved far down in a complex +file that it'll take noticeable time to find out the syntactic +context. + +*** Statements are recognized in a more robust way. +Statements are recognized most of the time even when they occur in an +"invalid" context, e.g. in a function argument. In practice that can +happen when macros are involved. + +*** Improved the way `c-indent-exp' chooses the block to indent. +It now indents the block for the closest sexp following the point +whose closing paren ends on a different line. This means that the +point doesn't have to be immediately before the block to indent. +Also, only the block and the closing line is indented; the current +line is left untouched. + +** Changes in Makefile mode + +*** Makefile mode has submodes for automake, gmake, makepp, BSD make and imake. + +The former two couldn't be differentiated before, and the latter three +are new. Font-locking is robust now and offers new customizable +faces. + +*** The variable `makefile-query-one-target-method' has been renamed +to `makefile-query-one-target-method-function'. The old name is still +available as alias. + +** Sql changes + +*** The variable `sql-product' controls the highlighting of different +SQL dialects. This variable can be set globally via Customize, on a +buffer-specific basis via local variable settings, or for the current +session using the new SQL->Product submenu. (This menu replaces the +SQL->Highlighting submenu.) + +The following values are supported: + + ansi ANSI Standard (default) + db2 DB2 + informix Informix + ingres Ingres + interbase Interbase + linter Linter + ms Microsoft + mysql MySQL + oracle Oracle + postgres Postgres + solid Solid + sqlite SQLite + sybase Sybase + +The current product name will be shown on the mode line following the +SQL mode indicator. + +The technique of setting `sql-mode-font-lock-defaults' directly in +your `.emacs' will no longer establish the default highlighting -- Use +`sql-product' to accomplish this. + +ANSI keywords are always highlighted. + +*** The function `sql-add-product-keywords' can be used to add +font-lock rules to the product specific rules. For example, to have +all identifiers ending in `_t' under MS SQLServer treated as a type, +you would use the following line in your .emacs file: + + (sql-add-product-keywords 'ms + '(("\\<\\w+_t\\>" . font-lock-type-face))) + +*** Oracle support includes keyword highlighting for Oracle 9i. + +Most SQL and PL/SQL keywords are implemented. SQL*Plus commands are +highlighted in `font-lock-doc-face'. + +*** Microsoft SQLServer support has been significantly improved. + +Keyword highlighting for SqlServer 2000 is implemented. +sql-interactive-mode defaults to use osql, rather than isql, because +osql flushes its error stream more frequently. Thus error messages +are displayed when they occur rather than when the session is +terminated. + +If the username and password are not provided to `sql-ms', osql is +called with the `-E' command line argument to use the operating system +credentials to authenticate the user. + +*** Postgres support is enhanced. +Keyword highlighting of Postgres 7.3 is implemented. Prompting for +the username and the pgsql `-U' option is added. + +*** MySQL support is enhanced. +Keyword highlighting of MySql 4.0 is implemented. + +*** Imenu support has been enhanced to locate tables, views, indexes, +packages, procedures, functions, triggers, sequences, rules, and +defaults. + +*** Added SQL->Start SQLi Session menu entry which calls the +appropriate `sql-interactive-mode' wrapper for the current setting of +`sql-product'. + +*** sql.el supports the SQLite interpreter--call 'sql-sqlite'. + +** Fortran mode changes + +*** F90 mode and Fortran mode have support for `hs-minor-mode' (hideshow). +It cannot deal with every code format, but ought to handle a sizeable +majority. + +*** F90 mode and Fortran mode have new navigation commands +`f90-end-of-block', `f90-beginning-of-block', `f90-next-block', +`f90-previous-block', `fortran-end-of-block', +`fortran-beginning-of-block'. + +*** Fortran mode does more font-locking by default. Use level 3 +highlighting for the old default. + +*** Fortran mode has a new variable `fortran-directive-re'. +Adapt this to match the format of any compiler directives you use. +Lines that match are never indented, and are given distinctive font-locking. + +*** The new function `f90-backslash-not-special' can be used to change +the syntax of backslashes in F90 buffers. + +** Miscellaneous programming mode changes + +*** In sh-script, a continuation line is only indented if the backslash was +preceded by a SPC or a TAB. + +*** Perl mode has a new variable `perl-indent-continued-arguments'. + +*** The old Octave mode bindings C-c f and C-c i have been changed +to C-c C-f and C-c C-i. The C-c C-i subcommands now have duplicate +bindings on control characters--thus, C-c C-i C-b is the same as +C-c C-i b, and so on. + +*** Prolog mode has a new variable `prolog-font-lock-keywords' +to support use of font-lock. + +** VC Changes + +*** New backends for Subversion and Meta-CVS. + +*** The new variable `vc-cvs-global-switches' specifies switches that +are passed to any CVS command invoked by VC. + +These switches are used as "global options" for CVS, which means they +are inserted before the command name. For example, this allows you to +specify a compression level using the `-z#' option for CVS. + +*** The key C-x C-q only changes the read-only state of the buffer +(toggle-read-only). It no longer checks files in or out. + +We made this change because we held a poll and found that many users +were unhappy with the previous behavior. If you do prefer this +behavior, you can bind `vc-toggle-read-only' to C-x C-q in your +`.emacs' file: + + (global-set-key "\C-x\C-q" 'vc-toggle-read-only) + +The function `vc-toggle-read-only' will continue to exist. + +*** VC-Annotate mode enhancements + +In VC-Annotate mode, you can now use the following key bindings for +enhanced functionality to browse the annotations of past revisions, or +to view diffs or log entries directly from vc-annotate-mode: + + P: annotates the previous revision + N: annotates the next revision + J: annotates the revision at line + A: annotates the revision previous to line + D: shows the diff of the revision at line with its previous revision + L: shows the log of the revision at line + W: annotates the workfile (most up to date) version + +** pcl-cvs changes + +*** In pcl-cvs mode, there is a new `d y' command to view the diffs +between the local version of the file and yesterday's head revision +in the repository. + +*** In pcl-cvs mode, there is a new `d r' command to view the changes +anyone has committed to the repository since you last executed +`checkout', `update' or `commit'. That means using cvs diff options +-rBASE -rHEAD. + +** Diff changes + +*** M-x diff uses Diff mode instead of Compilation mode. + +*** Diff mode key bindings changed. + +These are the new bindings: + +C-c C-e diff-ediff-patch (old M-A) +C-c C-n diff-restrict-view (old M-r) +C-c C-r diff-reverse-direction (old M-R) +C-c C-u diff-context->unified (old M-U) +C-c C-w diff-refine-hunk (old C-c C-r) + +To convert unified to context format, use C-u C-c C-u. +In addition, C-c C-u now operates on the region +in Transient Mark mode when the mark is active. + +** EDiff changes. + +*** When comparing directories. +Typing D brings up a buffer that lists the differences between the contents of +directories. Now it is possible to use this buffer to copy the missing files +from one directory to another. + +*** When comparing files or buffers. +Typing the = key now offers to perform the word-by-word comparison of the +currently highlighted regions in an inferior Ediff session. If you answer 'n' +then it reverts to the old behavior and asks the user to select regions for +comparison. + +*** The new command `ediff-backup' compares a file with its most recent +backup using `ediff'. If you specify the name of a backup file, +`ediff-backup' compares it with the file of which it is a backup. + +** Etags changes. + +*** New regular expressions features + +**** New syntax for regular expressions, multi-line regular expressions. + +The syntax --ignore-case-regexp=/regex/ is now undocumented and retained +only for backward compatibility. The new equivalent syntax is +--regex=/regex/i. More generally, it is --regex=/TAGREGEX/TAGNAME/MODS, +where `/TAGNAME' is optional, as usual, and MODS is a string of 0 or +more characters among `i' (ignore case), `m' (multi-line) and `s' +(single-line). The `m' and `s' modifiers behave as in Perl regular +expressions: `m' allows regexps to match more than one line, while `s' +(which implies `m') means that `.' matches newlines. The ability to +span newlines allows writing of much more powerful regular expressions +and rapid prototyping for tagging new languages. + +**** Regular expressions can use char escape sequences as in GCC. + +The escaped character sequence \a, \b, \d, \e, \f, \n, \r, \t, \v, +respectively, stand for the ASCII characters BEL, BS, DEL, ESC, FF, NL, +CR, TAB, VT. + +**** Regular expressions can be bound to a given language. + +The syntax --regex={LANGUAGE}REGEX means that REGEX is used to make tags +only for files of language LANGUAGE, and ignored otherwise. This is +particularly useful when storing regexps in a file. + +**** Regular expressions can be read from a file. + +The --regex=@regexfile option means read the regexps from a file, one +per line. Lines beginning with space or tab are ignored. + +*** New language parsing features + +**** New language HTML. + +Tags are generated for `title' as well as `h1', `h2', and `h3'. Also, +when `name=' is used inside an anchor and whenever `id=' is used. + +**** New language PHP. + +Functions, classes and defines are tags. If the --members option is +specified to etags, variables are tags also. + +**** New language Lua. + +All functions are tagged. + +**** The `::' qualifier triggers C++ parsing in C file. + +Previously, only the `template' and `class' keywords had this effect. + +**** The GCC __attribute__ keyword is now recognized and ignored. + +**** In C and derived languages, etags creates tags for #undef + +**** In Makefiles, constants are tagged. + +If you want the old behavior instead, thus avoiding to increase the +size of the tags file, use the --no-globals option. + +**** In Perl, packages are tags. + +Subroutine tags are named from their package. You can jump to sub tags +as you did before, by the sub name, or additionally by looking for +package::sub. + +**** In Prolog, etags creates tags for rules in addition to predicates. + +**** New default keywords for TeX. + +The new keywords are def, newcommand, renewcommand, newenvironment and +renewenvironment. + +*** Honor #line directives. + +When Etags parses an input file that contains C preprocessor's #line +directives, it creates tags using the file name and line number +specified in those directives. This is useful when dealing with code +created from Cweb source files. When Etags tags the generated file, it +writes tags pointing to the source file. + +*** New option --parse-stdin=FILE. + +This option is mostly useful when calling etags from programs. It can +be used (only once) in place of a file name on the command line. Etags +reads from standard input and marks the produced tags as belonging to +the file FILE. + +** Ctags changes. + +*** Ctags now allows duplicate tags + +** Rmail changes + +*** Support for `movemail' from GNU mailutils was added to Rmail. + +This version of `movemail' allows you to read mail from a wide range of +mailbox formats, including remote POP3 and IMAP4 mailboxes with or +without TLS encryption. If GNU mailutils is installed on the system +and its version of `movemail' can be found in exec-path, it will be +used instead of the native one. + +*** The new commands rmail-end-of-message and rmail-summary end-of-message, +by default bound to `/', go to the end of the current mail message in +Rmail and Rmail summary buffers. + +*** Rmail now displays 5-digit message ids in its summary buffer. + +** Gnus package + +*** Gnus now includes Sieve and PGG + +Sieve is a library for managing Sieve scripts. PGG is a library to handle +PGP/MIME. + +*** There are many news features, bug fixes and improvements. + +See the file GNUS-NEWS or the node "Oort Gnus" in the Gnus manual for details. + +** MH-E changes. + +Upgraded to MH-E version 8.0.3. There have been major changes since +version 5.0.2; see MH-E-NEWS for details. + +** Miscellaneous mail changes + +*** The new variable `mail-default-directory' specifies +`default-directory' for mail buffers. This directory is used for +auto-save files of mail buffers. It defaults to "~/". + +*** The mode line can indicate new mail in a directory or file. + +See the documentation of the user option `display-time-mail-directory'. + +** Calendar changes + +*** There is a new calendar package, icalendar.el, that can be used to +convert Emacs diary entries to/from the iCalendar format. + +*** The new package cal-html.el writes HTML files with calendar and +diary entries. + +*** The new functions `diary-from-outlook', `diary-from-outlook-gnus', +and `diary-from-outlook-rmail' can be used to import diary entries +from Outlook-format appointments in mail messages. The variable +`diary-outlook-formats' can be customized to recognize additional +formats. + +*** The procedure for activating appointment reminders has changed: +use the new function `appt-activate'. The new variable +`appt-display-format' controls how reminders are displayed, replacing +`appt-issue-message', `appt-visible', and `appt-msg-window'. + +*** The function `simple-diary-display' now by default sets a header line. +This can be controlled through the variables `diary-header-line-flag' +and `diary-header-line-format'. + +*** Diary sexp entries can have custom marking in the calendar. +Diary sexp functions which only apply to certain days (such as +`diary-block' or `diary-cyclic') now take an optional parameter MARK, +which is the name of a face or a single-character string indicating +how to highlight the day in the calendar display. Specifying a +single-character string as @var{mark} places the character next to the +day in the calendar. Specifying a face highlights the day with that +face. This lets you have different colors or markings for vacations, +appointments, paydays or anything else using a sexp. + +*** The meanings of C-x < and C-x > have been interchanged. +< means to scroll backward in time, and > means to scroll forward. + +*** You can now use < and >, instead of C-x < and C-x >, to scroll +the calendar left or right. + +*** The new function `calendar-goto-day-of-year' (g D) prompts for a +year and day number, and moves to that date. Negative day numbers +count backward from the end of the year. + +*** The new Calendar function `calendar-goto-iso-week' (g w) +prompts for a year and a week number, and moves to the first +day of that ISO week. + +*** The functions `holiday-easter-etc' and `holiday-advent' now take +optional arguments, in order to only report on the specified holiday +rather than all. This makes customization of variables such as +`christian-holidays' simpler. + +*** The new variable `calendar-minimum-window-height' affects the +window generated by the function `generate-calendar-window'. + +** Speedbar changes + +*** Speedbar items can now be selected by clicking mouse-1, based on +the `mouse-1-click-follows-link' mechanism. + +*** The new command `speedbar-toggle-line-expansion', bound to SPC, +contracts or expands the line under the cursor. + +*** New command `speedbar-create-directory', bound to `M'. + +*** The new commands `speedbar-expand-line-descendants' and +`speedbar-contract-line-descendants', bound to `[' and `]' +respectively, expand and contract the line under cursor with all of +its descendents. + +*** The new user option `speedbar-use-tool-tips-flag', if non-nil, +means to display tool-tips for speedbar items. + +*** The new user option `speedbar-query-confirmation-method' controls +how querying is performed for file operations. A value of 'always +means to always query before file operations; 'none-but-delete means +to not query before any file operations, except before a file +deletion. + +*** The new user option `speedbar-select-frame-method' specifies how +to select a frame for displaying a file opened with the speedbar. A +value of 'attached means to use the attached frame (the frame that +speedbar was started from.) A number such as 1 or -1 means to pass +that number to `other-frame'. + +*** SPC and DEL are no longer bound to scroll up/down in the speedbar +keymap. + +*** The frame management code in speedbar.el has been split into a new +`dframe' library. Emacs Lisp code that makes use of the speedbar +should use `dframe-attached-frame' instead of +`speedbar-attached-frame', `dframe-timer' instead of `speedbar-timer', +`dframe-close-frame' instead of `speedbar-close-frame', and +`dframe-activity-change-focus-flag' instead of +`speedbar-activity-change-focus-flag'. The variables +`speedbar-update-speed' and `speedbar-navigating-speed' are also +obsolete; use `dframe-update-speed' instead. + +** battery.el changes + +*** display-battery-mode replaces display-battery. + +*** battery.el now works on recent versions of OS X. + +** Games + +*** The game `mpuz' is enhanced. + +`mpuz' now allows the 2nd factor not to have two identical digits. By +default, all trivial operations involving whole lines are performed +automatically. The game uses faces for better visual feedback. + +** Obsolete and deleted packages + +*** fast-lock.el and lazy-lock.el are obsolete. Use jit-lock.el instead. + +*** iso-acc.el is now obsolete. Use one of the latin input methods instead. + +*** zone-mode.el is now obsolete. Use dns-mode.el instead. + +*** cplus-md.el has been deleted. + +** Miscellaneous + +*** The variable `woman-topic-at-point' is renamed +to `woman-use-topic-at-point' and behaves differently: if this +variable is non-nil, the `woman' command uses the word at point +automatically, without asking for a confirmation. Otherwise, the word +at point is suggested as default, but not inserted at the prompt. + +*** You can now customize `fill-nobreak-predicate' to control where +filling can break lines. The value is now normally a list of +functions, but it can also be a single function, for compatibility. + +Emacs provide two predicates, `fill-single-word-nobreak-p' and +`fill-french-nobreak-p', for use as the value of +`fill-nobreak-predicate'. + +*** M-x view-file and commands that use it now avoid interfering +with special modes such as Tar mode. + +*** `global-whitespace-mode' is a new alias for `whitespace-global-mode'. + +*** The saveplace.el package now filters out unreadable files. + +When you exit Emacs, the saved positions in visited files no longer +include files that aren't readable, e.g. files that don't exist. +Customize the new option `save-place-forget-unreadable-files' to nil +to get the old behavior. The new options `save-place-save-skipped' +and `save-place-skip-check-regexp' allow further fine-tuning of this +feature. + +*** Commands `winner-redo' and `winner-undo', from winner.el, are now +bound to C-c and C-c , respectively. This is an +incompatible change. + +*** The type-break package now allows `type-break-file-name' to be nil +and if so, doesn't store any data across sessions. This is handy if +you don't want the `.type-break' file in your home directory or are +annoyed by the need for interaction when you kill Emacs. + +*** `ps-print' can now print characters from the mule-unicode charsets. + +Printing text with characters from the mule-unicode-* sets works with +`ps-print', provided that you have installed the appropriate BDF +fonts. See the file INSTALL for URLs where you can find these fonts. + +*** New command `strokes-global-set-stroke-string'. +This is like `strokes-global-set-stroke', but it allows you to bind +the stroke directly to a string to insert. This is convenient for +using strokes as an input method. + +*** In Outline mode, `hide-body' no longer hides lines at the top +of the file that precede the first header line. + +*** `hide-ifdef-mode' now uses overlays rather than selective-display +to hide its text. This should be mostly transparent but slightly +changes the behavior of motion commands like C-e and C-p. + +*** In Artist mode the variable `artist-text-renderer' has been +renamed to `artist-text-renderer-function'. The old name is still +available as alias. + +*** In Enriched mode, `set-left-margin' and `set-right-margin' are now +by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l' +and `C-c C-r'. + +*** `partial-completion-mode' now handles partial completion on directory names. + +*** You can now disable pc-selection-mode after enabling it. + +M-x pc-selection-mode behaves like a proper minor mode, and with no +argument it toggles the mode. Turning off PC-Selection mode restores +the global key bindings that were replaced by turning on the mode. + +*** `uniquify-strip-common-suffix' tells uniquify to prefer +`file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'. + +*** New user option `add-log-always-start-new-record'. + +When this option is enabled, M-x add-change-log-entry always +starts a new record regardless of when the last record is. + +*** M-x compare-windows now can automatically skip non-matching text to +resync points in both windows. + +*** PO translation files are decoded according to their MIME headers +when Emacs visits them. + +*** Telnet now prompts you for a port number with C-u M-x telnet. + +*** calculator.el now has radix grouping mode. + +To enable this, set `calculator-output-radix' non-nil. In this mode a +separator character is used every few digits, making it easier to see +byte boundaries etc. For more info, see the documentation of the +variable `calculator-radix-grouping-mode'. + +*** LDAP support now defaults to ldapsearch from OpenLDAP version 2. + +*** The terminal emulation code in term.el has been improved; it can +run most curses applications now. + +*** Support for `magic cookie' standout modes has been removed. + +Emacs still works on terminals that require magic cookies in order to +use standout mode, but they can no longer display mode-lines in +inverse-video. + + +* Changes in Emacs 22.1 on non-free operating systems + +** The HOME directory defaults to Application Data under the user profile. + +If you used a previous version of Emacs without setting the HOME +environment variable and a `.emacs' was saved, then Emacs will continue +using C:/ as the default HOME. But if you are installing Emacs afresh, +the default location will be the "Application Data" (or similar +localized name) subdirectory of your user profile. A typical location +of this directory is "C:\Documents and Settings\USERNAME\Application Data", +where USERNAME is your user name. + +This change means that users can now have their own `.emacs' files on +shared computers, and the default HOME directory is less likely to be +read-only on computers that are administered by someone else. + +** Images are now supported on MS Windows. + +PBM and XBM images are supported out of the box. Other image formats +depend on external libraries. All of these libraries have been ported +to Windows, and can be found in both source and binary form at +http://gnuwin32.sourceforge.net/. Note that libpng also depends on +zlib, and tiff depends on the version of jpeg that it was compiled +against. For additional information, see nt/INSTALL. + +** Sound is now supported on MS Windows. + +WAV format is supported on all versions of Windows, other formats such +as AU, AIFF and MP3 may be supported in the more recent versions of +Windows, or when other software provides hooks into the system level +sound support for those formats. + +** Tooltips now work on MS Windows. + +See the Emacs 21.1 NEWS entry for tooltips for details. + +** Pointing devices with more than 3 buttons are now supported on MS Windows. + +The new variable `w32-pass-extra-mouse-buttons-to-system' controls +whether Emacs should handle the extra buttons itself (the default), or +pass them to Windows to be handled with system-wide functions. + +** Passing resources on the command line now works on MS Windows. + +You can use --xrm to pass resource settings to Emacs, overriding any +existing values. For example: + + emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20" + +will start up Emacs on an initial frame of 100x20 with red background, +irrespective of geometry or background setting on the Windows registry. + +** Emacs takes note of colors defined in Control Panel on MS-Windows. + +The Control Panel defines some default colors for applications in much +the same way as wildcard X Resources do on X. Emacs now adds these +colors to the colormap prefixed by System (eg SystemMenu for the +default Menu background, SystemMenuText for the foreground), and uses +some of them to initialize some of the default faces. +`list-colors-display' shows the list of System color names, in case +you wish to use them in other faces. + +** Running in a console window in Windows now uses the console size. + +Previous versions of Emacs erred on the side of having a usable Emacs +through telnet, even though that was inconvenient if you use Emacs in +a local console window with a scrollback buffer. The default value of +w32-use-full-screen-buffer is now nil, which favors local console +windows. Recent versions of Windows telnet also work well with this +setting. If you are using an older telnet server then Emacs detects +that the console window dimensions that are reported are not sane, and +defaults to 80x25. If you use such a telnet server regularly at a size +other than 80x25, you can still manually set +w32-use-full-screen-buffer to t. + +** Different shaped mouse pointers are supported on MS Windows. + +The mouse pointer changes shape depending on what is under the pointer. + +** On MS Windows, the "system caret" now follows the cursor. + +This enables Emacs to work better with programs that need to track the +cursor, for example screen magnifiers and text to speech programs. +When such a program is in use, the system caret is made visible +instead of Emacs drawing its own cursor. This seems to be required by +some programs. The new variable w32-use-visible-system-caret allows +the caret visibility to be manually toggled. + +** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations. + +Those systems use Unicode internally, so this allows Emacs to share +multilingual text with other applications. On other versions of +MS Windows, Emacs now uses the appropriate locale coding-system, so +the clipboard should work correctly for your local language without +any customizations. + +** On Mac OS, `keyboard-coding-system' changes based on the keyboard script. + +** The variable `mac-keyboard-text-encoding' and the constants +`kTextEncodingMacRoman', `kTextEncodingISOLatin1', and +`kTextEncodingISOLatin2' are obsolete. + +** The variable `mac-command-key-is-meta' is obsolete. Use +`mac-command-modifier' and `mac-option-modifier' instead. + +* Incompatible Lisp Changes in Emacs 22.1 + +** Mode line display ignores text properties as well as the +:propertize and :eval forms in the value of a variable whose +`risky-local-variable' property is nil. + +The function `comint-send-input' now accepts 3 optional arguments: + + (comint-send-input &optional no-newline artificial) + +Callers sending input not from the user should use bind the 3rd +argument `artificial' to a non-nil value, to prevent Emacs from +deleting the part of subprocess output that matches the input. + +** The `read-file-name' function now returns a null string if the +user just types RET. + +** The variables post-command-idle-hook and post-command-idle-delay have +been removed. Use run-with-idle-timer instead. + +** A hex or octal escape in a string constant forces the string to +be multibyte or unibyte, respectively. + +** The explicit method of creating a display table element by +combining a face number and a character code into a numeric +glyph code is deprecated. + +Instead, the new functions `make-glyph-code', `glyph-char', and +`glyph-face' must be used to create and decode glyph codes in +display tables. + +** `suppress-keymap' now works by remapping `self-insert-command' to +the command `undefined'. (In earlier Emacs versions, it used +`substitute-key-definition' to rebind self inserting characters to +`undefined'.) + +** The third argument of `accept-process-output' is now milliseconds. +It used to be microseconds. + +** The function find-operation-coding-system may be called with a cons +(FILENAME . BUFFER) in the second argument if the first argument +OPERATION is `insert-file-contents', and thus a function registered in +`file-coding-system-alist' is also called with such an argument. + +** When Emacs receives a USR1 or USR2 signal, this generates +input events: sigusr1 or sigusr2. Use special-event-map to +handle these events. + +** The variable `memory-full' now remains t until +there is no longer a shortage of memory. + +** Support for Mocklisp has been removed. + + +* Lisp Changes in Emacs 22.1 + +** General Lisp changes: + +*** New syntax: \s now stands for the SPACE character. + +`?\s' is a new way to write the space character. You must make sure +it is not followed by a dash, since `?\s-...' indicates the "super" +modifier. However, it would be strange to write a character constant +and a following symbol (beginning with `-') with no space between +them. + +`\s' stands for space in strings, too, but it is not really meant for +strings; it is easier and nicer just to write a space. + +*** New syntax: \uXXXX and \UXXXXXXXX specify Unicode code points in hex. + +For instance, you can use "\u0428" to specify a string consisting of +CYRILLIC CAPITAL LETTER SHA, or `"U0001D6E2" to specify one consisting +of MATHEMATICAL ITALIC CAPITAL ALPHA (the latter is greater than +#xFFFF and thus needs the longer syntax). + +This syntax works for both character constants and strings. + +*** New function `unsafep' determines whether a Lisp form is safe. + +It returns nil if the given Lisp form can't possibly do anything +dangerous; otherwise it returns a reason why the form might be unsafe +(calls unknown function, alters global variable, etc.). + +*** The function `eql' is now available without requiring the CL package. + +*** The new function `memql' is like `memq', but uses `eql' for comparison, +that is, floats are compared by value and other elements with `eq'. + +*** New functions `string-or-null-p' and `booleanp'. + +`string-or-null-p' returns non-nil if OBJECT is a string or nil. +`booleanp' returns non-nil if OBJECT is t or nil. + +*** `makehash' is now obsolete. Use `make-hash-table' instead. + +*** Minor change in the function `format'. + +Some flags that were accepted but not implemented (such as "*") are no +longer accepted. + +*** `add-to-list' takes an optional third argument, APPEND. + +If APPEND is non-nil, the new element gets added at the end of the +list instead of at the beginning. This change actually occurred in +Emacs 21.1, but was not documented then. + +*** New function `add-to-ordered-list' is like `add-to-list' but +associates a numeric ordering of each element added to the list. + +*** New function `add-to-history' adds an element to a history list. + +Lisp packages should use this function to add elements to their +history lists. + +If `history-delete-duplicates' is non-nil, it removes duplicates of +the new element from the history list it updates. + +*** New function `copy-tree' makes a copy of a tree. + +It recursively copies through both CARs and CDRs. + +*** New function `delete-dups' deletes `equal' duplicate elements from a list. + +It modifies the list destructively, like `delete'. Of several `equal' +occurrences of an element in the list, the one that's kept is the +first one. + +*** New function `rassq-delete-all'. + +(rassq-delete-all VALUE ALIST) deletes, from ALIST, each element whose +CDR is `eq' to the specified value. + +*** Functions `get' and `plist-get' no longer give errors for bad plists. + +They return nil for a malformed property list or if the list is +cyclic. + +*** New functions `lax-plist-get' and `lax-plist-put'. + +They are like `plist-get' and `plist-put', except that they compare +the property name using `equal' rather than `eq'. + +*** The function `number-sequence' makes a list of equally-separated numbers. + +For instance, (number-sequence 4 9) returns (4 5 6 7 8 9). By +default, the separation is 1, but you can specify a different +separation as the third argument. (number-sequence 1.5 6 2) returns +(1.5 3.5 5.5). + +*** New variables `most-positive-fixnum' and `most-negative-fixnum'. + +They hold the largest and smallest possible integer values. + +*** The function `expt' handles negative exponents differently. +The value for `(expt A B)', if both A and B are integers and B is +negative, is now a float. For example: (expt 2 -2) => 0.25. + +*** The function `atan' now accepts an optional second argument. + +When called with 2 arguments, as in `(atan Y X)', `atan' returns the +angle in radians between the vector [X, Y] and the X axis. (This is +equivalent to the standard C library function `atan2'.) + +*** New macro `with-case-table' + +This executes the body with the case table temporarily set to a given +case table. + +*** New macro `with-local-quit' temporarily allows quitting. + +A quit inside the body of `with-local-quit' is caught by the +`with-local-quit' form itself, but another quit will happen later once +the code that has inhibited quitting exits. + +This is for use around potentially blocking or long-running code +inside timer functions and `post-command-hook' functions. + +*** New macro `define-obsolete-function-alias'. + +This combines `defalias' and `make-obsolete'. + +*** New macro `eval-at-startup' specifies expressions to +evaluate when Emacs starts up. If this is done after startup, +it evaluates those expressions immediately. + +This is useful in packages that can be preloaded. + +*** New function `macroexpand-all' expands all macros in a form. + +It is similar to the Common-Lisp function of the same name. +One difference is that it guarantees to return the original argument +if no expansion is done, which can be tested using `eq'. + +*** A function or macro's doc string can now specify the calling pattern. + +You put this info in the doc string's last line. It should be +formatted so as to match the regexp "\n\n(fn .*)\\'". If you don't +specify this explicitly, Emacs determines it from the actual argument +names. Usually that default is right, but not always. + +*** New variable `print-continuous-numbering'. + +When this is non-nil, successive calls to print functions use a single +numbering scheme for circular structure references. This is only +relevant when `print-circle' is non-nil. + +When you bind `print-continuous-numbering' to t, you should +also bind `print-number-table' to nil. + +*** `list-faces-display' takes an optional argument, REGEXP. + +If it is non-nil, the function lists only faces matching this regexp. + +*** New hook `command-error-function'. + +By setting this variable to a function, you can control +how the editor command loop shows the user an error message. + +*** `debug-on-entry' accepts primitive functions that are not special forms. + +** Lisp code indentation features: + +*** The `defmacro' form can contain indentation and edebug declarations. + +These declarations specify how to indent the macro calls in Lisp mode +and how to debug them with Edebug. You write them like this: + + (defmacro NAME LAMBDA-LIST [DOC-STRING] [DECLARATION ...] ...) + +DECLARATION is a list `(declare DECLARATION-SPECIFIER ...)'. The +possible declaration specifiers are: + +(indent INDENT) + Set NAME's `lisp-indent-function' property to INDENT. + +(edebug DEBUG) + Set NAME's `edebug-form-spec' property to DEBUG. (This is + equivalent to writing a `def-edebug-spec' for the macro, + but this is cleaner.) + +*** cl-indent now allows customization of Indentation of backquoted forms. + +See the new user option `lisp-backquote-indentation'. + +*** cl-indent now handles indentation of simple and extended `loop' forms. + +The new user options `lisp-loop-keyword-indentation', +`lisp-loop-forms-indentation', and `lisp-simple-loop-indentation' can +be used to customize the indentation of keywords and forms in loop +forms. + +** Variable aliases: + +*** New function: defvaralias ALIAS-VAR BASE-VAR [DOCSTRING] + +This function defines the symbol ALIAS-VAR as a variable alias for +symbol BASE-VAR. This means that retrieving the value of ALIAS-VAR +returns the value of BASE-VAR, and changing the value of ALIAS-VAR +changes the value of BASE-VAR. + +DOCSTRING, if present, is the documentation for ALIAS-VAR; else it has +the same documentation as BASE-VAR. + +*** The macro `define-obsolete-variable-alias' combines `defvaralias' and +`make-obsolete-variable'. + +*** New function: indirect-variable VARIABLE + +This function returns the variable at the end of the chain of aliases +of VARIABLE. If VARIABLE is not a symbol, or if VARIABLE is not +defined as an alias, the function returns VARIABLE. + +It might be noteworthy that variables aliases work for all kinds of +variables, including buffer-local and frame-local variables. + +** defcustom changes: + +*** The package-version keyword has been added to provide +`customize-changed-options' functionality to packages in the future. +Developers who make use of this keyword must also update the new +variable `customize-package-emacs-version-alist'. + +*** The new customization type `float' requires a floating point number. + +** String changes: + +*** A hex escape in a string constant forces the string to be multibyte. + +*** An octal escape in a string constant forces the string to be unibyte. + +*** New function `string-to-multibyte' converts a unibyte string to a +multibyte string with the same individual character codes. + +*** `split-string' now includes null substrings in the returned list if +the optional argument SEPARATORS is non-nil and there are matches for +SEPARATORS at the beginning or end of the string. If SEPARATORS is +nil, or if the new optional third argument OMIT-NULLS is non-nil, all +empty matches are omitted from the returned list. + +*** The new function `assoc-string' replaces `assoc-ignore-case' and +`assoc-ignore-representation', which are still available, but have +been declared obsolete. + +*** New function `substring-no-properties' returns a substring without +text properties. + +** Displaying warnings to the user. + +See the functions `warn' and `display-warning', or the Lisp Manual. +If you want to be sure the warning will not be overlooked, this +facility is much better than using `message', since it displays +warnings in a separate window. + +** Progress reporters. + +These provide a simple and uniform way for commands to present +progress messages for the user. + +See the new functions `make-progress-reporter', +`progress-reporter-update', `progress-reporter-force-update', +`progress-reporter-done', and `dotimes-with-progress-reporter'. + +** Buffer positions: + +*** Function `compute-motion' now calculates the usable window +width if the WIDTH argument is nil. If the TOPOS argument is nil, +the usable window height and width is used. + +*** The `line-move', `scroll-up', and `scroll-down' functions will now +modify the window vscroll to scroll through display rows that are +taller that the height of the window, for example in the presence of +large images. To disable this feature, bind the new variable +`auto-window-vscroll' to nil. + +*** The argument to `forward-word', `backward-word' is optional. + +It defaults to 1. + +*** Argument to `forward-to-indentation' and `backward-to-indentation' is optional. + +It defaults to 1. + +*** `field-beginning' and `field-end' take new optional argument, LIMIT. + +This argument tells them not to search beyond LIMIT. Instead they +give up and return LIMIT. + +*** New function `window-line-height' is an efficient way to get +information about a specific text line in a window provided that the +window's display is up-to-date. + +*** New function `line-number-at-pos' returns the line number of a position. + +It an optional buffer position argument that defaults to point. + +*** Function `pos-visible-in-window-p' now returns the pixel coordinates +and partial visibility state of the corresponding row, if the PARTIALLY +arg is non-nil. + +*** New functions `posn-at-point' and `posn-at-x-y' return +click-event-style position information for a given visible buffer +position or for a given window pixel coordinate. + +*** New function `mouse-on-link-p' tests if a position is in a clickable link. + +This is the function used by the new `mouse-1-click-follows-link' +functionality. + +** Text modification: + +*** The new function `buffer-chars-modified-tick' returns a buffer's +tick counter for changes to characters. Each time text in that buffer +is inserted or deleted, the character-change counter is updated to the +tick counter (`buffer-modified-tick'). Text property changes leave it +unchanged. + +*** The new function `insert-for-yank' normally works like `insert', but +removes the text properties in the `yank-excluded-properties' list +and handles the `yank-handler' text property. + +*** The new function `insert-buffer-substring-as-yank' is like +`insert-for-yank' except that it gets the text from another buffer as +in `insert-buffer-substring'. + +*** The new function `insert-buffer-substring-no-properties' is like +`insert-buffer-substring', but removes all text properties from the +inserted substring. + +*** The new function `filter-buffer-substring' extracts a buffer +substring, passes it through a set of filter functions, and returns +the filtered substring. Use it instead of `buffer-substring' or +`delete-and-extract-region' when copying text into a user-accessible +data structure, such as the kill-ring, X clipboard, or a register. + +The list of filter function is specified by the new variable +`buffer-substring-filters'. For example, Longlines mode adds to +`buffer-substring-filters' to remove soft newlines from the copied +text. + +*** Function `translate-region' accepts also a char-table as TABLE +argument. + +*** The new translation table `translation-table-for-input' +is used for customizing self-insertion. The character to +be inserted is translated through it. + +*** Text clones. + +The new function `text-clone-create'. Text clones are chunks of text +that are kept identical by transparently propagating changes from one +clone to the other. + +*** The function `insert-string' is now obsolete. + +** Filling changes. + +*** In determining an adaptive fill prefix, Emacs now tries the function in +`adaptive-fill-function' _before_ matching the buffer line against +`adaptive-fill-regexp' rather than _after_ it. + +** Atomic change groups. + +To perform some changes in the current buffer "atomically" so that +they either all succeed or are all undone, use `atomic-change-group' +around the code that makes changes. For instance: + + (atomic-change-group + (insert foo) + (delete-region x y)) + +If an error (or other nonlocal exit) occurs inside the body of +`atomic-change-group', it unmakes all the changes in that buffer that +were during the execution of the body. The change group has no effect +on any other buffers--any such changes remain. + +If you need something more sophisticated, you can directly call the +lower-level functions that `atomic-change-group' uses. Here is how. + +To set up a change group for one buffer, call `prepare-change-group'. +Specify the buffer as argument; it defaults to the current buffer. +This function returns a "handle" for the change group. You must save +the handle to activate the change group and then finish it. + +Before you change the buffer again, you must activate the change +group. Pass the handle to `activate-change-group' afterward to +do this. + +After you make the changes, you must finish the change group. You can +either accept the changes or cancel them all. Call +`accept-change-group' to accept the changes in the group as final; +call `cancel-change-group' to undo them all. + +You should use `unwind-protect' to make sure the group is always +finished. The call to `activate-change-group' should be inside the +`unwind-protect', in case the user types C-g just after it runs. +(This is one reason why `prepare-change-group' and +`activate-change-group' are separate functions.) Once you finish the +group, don't use the handle again--don't try to finish the same group +twice. + +To make a multibuffer change group, call `prepare-change-group' once +for each buffer you want to cover, then use `nconc' to combine the +returned values, like this: + + (nconc (prepare-change-group buffer-1) + (prepare-change-group buffer-2)) + +You can then activate the multibuffer change group with a single call +to `activate-change-group', and finish it with a single call to +`accept-change-group' or `cancel-change-group'. + +Nested use of several change groups for the same buffer works as you +would expect. Non-nested use of change groups for the same buffer +will lead to undesirable results, so don't let it happen; the first +change group you start for any given buffer should be the last one +finished. + +** Buffer-related changes: + +*** The new function `buffer-local-value' returns the buffer-local +binding of VARIABLE (a symbol) in buffer BUFFER. If VARIABLE does not +have a buffer-local binding in buffer BUFFER, it returns the default +value of VARIABLE instead. + +*** `list-buffers-noselect' now takes an additional argument, BUFFER-LIST. + +If it is non-nil, it specifies which buffers to list. + +*** `kill-buffer-hook' is now a permanent local. + +*** The function `frame-or-buffer-changed-p' now lets you maintain +various status records in parallel. + +It takes a variable (a symbol) as argument. If the variable is non-nil, +then its value should be a vector installed previously by +`frame-or-buffer-changed-p'. If the frame names, buffer names, buffer +order, or their read-only or modified flags have changed, since the +time the vector's contents were recorded by a previous call to +`frame-or-buffer-changed-p', then the function returns t. Otherwise +it returns nil. + +On the first call to `frame-or-buffer-changed-p', the variable's +value should be nil. `frame-or-buffer-changed-p' stores a suitable +vector into the variable and returns t. + +If the variable is itself nil, then `frame-or-buffer-changed-p' uses, +for compatibility, an internal variable which exists only for this +purpose. + +*** The function `read-buffer' follows the convention for reading from +the minibuffer with a default value: if DEF is non-nil, the minibuffer +prompt provided in PROMPT is edited to show the default value provided +in DEF before the terminal colon and space. + +** Searching and matching changes: + +*** New function `looking-back' checks whether a regular expression matches +the text before point. Specifying the LIMIT argument bounds how far +back the match can start; this is a way to keep it from taking too long. + +*** The new variable `search-spaces-regexp' controls how to search +for spaces in a regular expression. If it is non-nil, it should be a +regular expression, and any series of spaces stands for that regular +expression. If it is nil, spaces stand for themselves. + +Spaces inside of constructs such as `[..]' and inside loops such as +`*', `+', and `?' are never replaced with `search-spaces-regexp'. + +*** New regular expression operators, `\_<' and `\_>'. + +These match the beginning and end of a symbol. A symbol is a +non-empty sequence of either word or symbol constituent characters, as +specified by the syntax table. + +*** `skip-chars-forward' and `skip-chars-backward' now handle +character classes such as `[:alpha:]', along with individual +characters and ranges. + +*** In `replace-match', the replacement text no longer inherits +properties from surrounding text. + +*** The list returned by `(match-data t)' now has the buffer as a final +element, if the last match was on a buffer. `set-match-data' +accepts such a list for restoring the match state. + +*** Functions `match-data' and `set-match-data' now have an optional +argument `reseat'. When non-nil, all markers in the match data list +passed to these functions will be reseated to point to nowhere. + +*** rx.el has new corresponding `symbol-start' and `symbol-end' elements. + +*** The default value of `sentence-end' is now defined using the new +variable `sentence-end-without-space', which contains such characters +that end a sentence without following spaces. + +The function `sentence-end' should be used to obtain the value of the +variable `sentence-end'. If the variable `sentence-end' is nil, then +this function returns the regexp constructed from the variables +`sentence-end-without-period', `sentence-end-double-space' and +`sentence-end-without-space'. + +** Undo changes: + +*** `buffer-undo-list' allows programmable elements. + +These elements have the form (apply FUNNAME . ARGS), where FUNNAME is +a symbol other than t or nil. That stands for a high-level change +that should be undone by evaluating (apply FUNNAME ARGS). + +These entries can also have the form (apply DELTA BEG END FUNNAME . ARGS) +which indicates that the change which took place was limited to the +range BEG...END and increased the buffer size by DELTA. + +*** If the buffer's undo list for the current command gets longer than +`undo-outer-limit', garbage collection empties it. This is to prevent +it from using up the available memory and choking Emacs. + +** Killing and yanking changes: + +*** New `yank-handler' text property can be used to control how +previously killed text on the kill ring is reinserted. + +The value of the `yank-handler' property must be a list with one to four +elements with the following format: + (FUNCTION PARAM NOEXCLUDE UNDO). + +The `insert-for-yank' function looks for a yank-handler property on +the first character on its string argument (typically the first +element on the kill-ring). If a `yank-handler' property is found, +the normal behavior of `insert-for-yank' is modified in various ways: + + When FUNCTION is present and non-nil, it is called instead of `insert' +to insert the string. FUNCTION takes one argument--the object to insert. + If PARAM is present and non-nil, it replaces STRING as the object +passed to FUNCTION (or `insert'); for example, if FUNCTION is +`yank-rectangle', PARAM should be a list of strings to insert as a +rectangle. + If NOEXCLUDE is present and non-nil, the normal removal of the +`yank-excluded-properties' is not performed; instead FUNCTION is +responsible for removing those properties. This may be necessary +if FUNCTION adjusts point before or after inserting the object. + If UNDO is present and non-nil, it is a function that will be called +by `yank-pop' to undo the insertion of the current object. It is +called with two arguments, the start and end of the current region. +FUNCTION can set `yank-undo-function' to override the UNDO value. + +*** The functions `kill-new', `kill-append', and `kill-region' now have an +optional argument to specify the `yank-handler' text property to put on +the killed text. + +*** The function `yank-pop' will now use a non-nil value of the variable +`yank-undo-function' (instead of `delete-region') to undo the previous +`yank' or `yank-pop' command (or a call to `insert-for-yank'). The function +`insert-for-yank' automatically sets that variable according to the UNDO +element of the string argument's `yank-handler' text property if present. + +*** The function `insert-for-yank' now supports strings where the +`yank-handler' property does not span the first character of the +string. The old behavior is available if you call +`insert-for-yank-1' instead. + +** Syntax table changes: + +*** The new function `syntax-ppss' provides an efficient way to find the +current syntactic context at point. + +*** The new function `syntax-after' returns the syntax code +of the character after a specified buffer position, taking account +of text properties as well as the character code. + +*** `syntax-class' extracts the class of a syntax code (as returned +by `syntax-after'). + +*** The macro `with-syntax-table' no longer copies the syntax table. + +** File operation changes: + +*** New vars `exec-suffixes' and `load-suffixes' used when +searching for an executable or an Emacs Lisp file. + +*** New function `locate-file' searches for a file in a list of directories. +`locate-file' accepts a name of a file to search (a string), and two +lists: a list of directories to search in and a list of suffixes to +try; typical usage might use `exec-path' and `load-path' for the list +of directories, and `exec-suffixes' and `load-suffixes' for the list +of suffixes. The function also accepts a predicate argument to +further filter candidate files. + +One advantage of using this function is that the list of suffixes in +`exec-suffixes' is OS-dependant, so this function will find +executables without polluting Lisp code with OS dependencies. + +*** The new function `file-remote-p' tests a file name and returns +non-nil if it specifies a remote file (one that Emacs accesses using +its own special methods and not directly through the file system). +The value in that case is an identifier for the remote file system. + +*** The new hook `before-save-hook' is invoked by `basic-save-buffer' +before saving buffers. This allows packages to perform various final +tasks. For example, it can be used by the copyright package to make +sure saved files have the current year in any copyright headers. + +*** `file-chase-links' now takes an optional second argument LIMIT which +specifies the maximum number of links to chase through. If after that +many iterations the file name obtained is still a symbolic link, +`file-chase-links' returns it anyway. + +*** Functions `file-name-sans-extension' and `file-name-extension' now +ignore the leading dots in file names, so that file names such as +`.emacs' are treated as extensionless. + +*** If `buffer-save-without-query' is non-nil in some buffer, +`save-some-buffers' will always save that buffer without asking (if +it's modified). + +*** `buffer-auto-save-file-format' is the new name for what was +formerly called `auto-save-file-format'. It is now a permanent local. + +*** `visited-file-modtime' and `calendar-time-from-absolute' now return +a list of two integers, instead of a cons. + +*** The precedence of file name handlers has been changed. + +Instead of choosing the first handler that matches, +`find-file-name-handler' now gives precedence to a file name handler +that matches nearest the end of the file name. More precisely, the +handler whose (match-beginning 0) is the largest is chosen. In case +of ties, the old "first matched" rule applies. + +*** A file name handler can declare which operations it handles. + +You do this by putting an `operation' property on the handler name +symbol. The property value should be a list of the operations that +the handler really handles. It won't be called for any other +operations. + +This is useful for autoloaded handlers, to prevent them from being +autoloaded when not really necessary. + +*** The function `make-auto-save-file-name' is now handled by file +name handlers. This will be exploited for remote files mainly. + +*** The function `file-name-completion' accepts an optional argument +PREDICATE, and rejects completion candidates that don't satisfy PREDICATE. + +*** The new primitive `set-file-times' sets a file's access and +modification times. Magic file name handlers can handle this +operation. + +** Input changes: + +*** Functions `y-or-n-p', `read-char', `read-key-sequence' and the like, that +display a prompt but don't use the minibuffer, now display the prompt +using the text properties (esp. the face) of the prompt string. + +*** The functions `read-event', `read-char', and `read-char-exclusive' +have a new optional argument SECONDS. If non-nil, this specifies a +maximum time to wait for input, in seconds. If no input arrives after +this time elapses, the functions stop waiting and return nil. + +*** An interactive specification can now use the code letter `U' to get +the up-event that was discarded in case the last key sequence read for a +previous `k' or `K' argument was a down-event; otherwise nil is used. + +*** The new interactive-specification `G' reads a file name +much like `F', but if the input is a directory name (even defaulted), +it returns just the directory name. + +*** (while-no-input BODY...) runs BODY, but only so long as no input +arrives. If the user types or clicks anything, BODY stops as if a +quit had occurred. `while-no-input' returns the value of BODY, if BODY +finishes. It returns nil if BODY was aborted by a quit, and t if +BODY was aborted by arrival of input. + +*** `recent-keys' now returns the last 300 keys. + +** Minibuffer changes: + +*** The new function `minibufferp' returns non-nil if its optional +buffer argument is a minibuffer. If the argument is omitted, it +defaults to the current buffer. + +*** New function `minibuffer-selected-window' returns the window which +was selected when entering the minibuffer. + +*** The `read-file-name' function now takes an additional argument which +specifies a predicate which the file name read must satisfy. The +new variable `read-file-name-predicate' contains the predicate argument +while reading the file name from the minibuffer; the predicate in this +variable is used by read-file-name-internal to filter the completion list. + +*** The new variable `read-file-name-function' can be used by Lisp code +to override the built-in `read-file-name' function. + +*** The new variable `read-file-name-completion-ignore-case' specifies +whether completion ignores case when reading a file name with the +`read-file-name' function. + +*** The new function `read-directory-name' is for reading a directory name. + +It is like `read-file-name' except that the defaulting works better +for directories, and completion inside it shows only directories. + +*** The new variable `history-add-new-input' specifies whether to add new +elements in history. If set to nil, minibuffer reading functions don't +add new elements to the history list, so it is possible to do this +afterwards by calling `add-to-history' explicitly. + +** Completion changes: + +*** The new function `minibuffer-completion-contents' returns the contents +of the minibuffer just before point. That is what completion commands +operate on. + +*** The functions `all-completions' and `try-completion' now accept lists +of strings as well as hash-tables additionally to alists, obarrays +and functions. Furthermore, the function `test-completion' is now +exported to Lisp. The keys in alists and hash tables can be either +strings or symbols, which are automatically converted with to strings. + +*** The new macro `dynamic-completion-table' supports using functions +as a dynamic completion table. + + (dynamic-completion-table FUN) + +FUN is called with one argument, the string for which completion is required, +and it should return an alist containing all the intended possible +completions. This alist can be a full list of possible completions so that FUN +can ignore the value of its argument. If completion is performed in the +minibuffer, FUN will be called in the buffer from which the minibuffer was +entered. `dynamic-completion-table' then computes the completion. + +*** The new macro `lazy-completion-table' initializes a variable +as a lazy completion table. + + (lazy-completion-table VAR FUN) + +If the completion table VAR is used for the first time (e.g., by passing VAR +as an argument to `try-completion'), the function FUN is called with no +arguments. FUN must return the completion table that will be stored in VAR. +If completion is requested in the minibuffer, FUN will be called in the buffer +from which the minibuffer was entered. The return value of +`lazy-completion-table' must be used to initialize the value of VAR. + +** Abbrev changes: + +*** `define-abbrev' now accepts an optional argument SYSTEM-FLAG. + +If non-nil, this marks the abbrev as a "system" abbrev, which means +that it won't be stored in the user's abbrevs file if he saves the +abbrevs. Major modes that predefine some abbrevs should always +specify this flag. + +*** The new function `copy-abbrev-table' copies an abbrev table. + +It returns a new abbrev table that is a copy of a given abbrev table. + +** Enhancements to keymaps. + +*** Cleaner way to enter key sequences. + +You can enter a constant key sequence in a more natural format, the +same one used for saving keyboard macros, using the macro `kbd'. For +example, + +(kbd "C-x C-f") => "\^x\^f" + +Actually, this format has existed since Emacs 20.1. + +*** Interactive commands can be remapped through keymaps. + +This is an alternative to using `defadvice' or `substitute-key-definition' +to modify the behavior of a key binding using the normal keymap +binding and lookup functionality. + +When a key sequence is bound to a command, and that command is +remapped to another command, that command is run instead of the +original command. + +Example: +Suppose that minor mode `my-mode' has defined the commands +`my-kill-line' and `my-kill-word', and it wants C-k (and any other key +bound to `kill-line') to run the command `my-kill-line' instead of +`kill-line', and likewise it wants to run `my-kill-word' instead of +`kill-word'. + +Instead of rebinding C-k and the other keys in the minor mode map, +command remapping allows you to directly map `kill-line' into +`my-kill-line' and `kill-word' into `my-kill-word' using `define-key': + + (define-key my-mode-map [remap kill-line] 'my-kill-line) + (define-key my-mode-map [remap kill-word] 'my-kill-word) + +When `my-mode' is enabled, its minor mode keymap is enabled too. So +when the user types C-k, that runs the command `my-kill-line'. + +Only one level of remapping is supported. In the above example, this +means that if `my-kill-line' is remapped to `other-kill', then C-k still +runs `my-kill-line'. + +The following changes have been made to provide command remapping: + +- Command remappings are defined using `define-key' with a prefix-key + `remap', i.e. `(define-key MAP [remap CMD] DEF)' remaps command CMD + to definition DEF in keymap MAP. The definition is not limited to + another command; it can be anything accepted for a normal binding. + +- The new function `command-remapping' returns the binding for a + remapped command in the current keymaps, or nil if not remapped. + +- `key-binding' now remaps interactive commands unless the optional + third argument NO-REMAP is non-nil. + +- `where-is-internal' now returns nil for a remapped command (e.g. + `kill-line', when `my-mode' is enabled), and the actual key binding for + the command it is remapped to (e.g. C-k for my-kill-line). + It also has a new optional fifth argument, NO-REMAP, which inhibits + remapping if non-nil (e.g. it returns "C-k" for `kill-line', and + "" for `my-kill-line'). + +- The new variable `this-original-command' contains the original + command before remapping. It is equal to `this-command' when the + command was not remapped. + +*** The definition of a key-binding passed to define-key can use XEmacs-style +key-sequences, such as [(control a)]. + +*** New keymaps for typing file names + +Two new keymaps, `minibuffer-local-filename-completion-map' and +`minibuffer-local-must-match-filename-map', apply whenever +Emacs reads a file name in the minibuffer. These key maps override +the usual binding of SPC to `minibuffer-complete-word' (so that file +names with embedded spaces could be typed without the need to quote +the spaces). + +*** New function `current-active-maps' returns a list of currently +active keymaps. + +*** New function `describe-buffer-bindings' inserts the list of all +defined keys and their definitions. + +*** New function `keymap-prompt' returns the prompt string of a keymap. + +*** If text has a `keymap' property, that keymap takes precedence +over minor mode keymaps. + +*** The `keymap' property now also works at the ends of overlays and +text properties, according to their stickiness. This also means that it +works with empty overlays. The same hold for the `local-map' property. + +*** `key-binding' will now look up mouse-specific bindings. The +keymaps consulted by `key-binding' will get adapted if the key +sequence is started with a mouse event. Instead of letting the click +position be determined from the key sequence itself, it is also +possible to specify it with an optional argument explicitly. + +*** `define-key-after' now accepts keys longer than 1. + +*** (map-keymap FUNCTION KEYMAP) applies the function to each binding +in the keymap. + +*** New variable `emulation-mode-map-alists'. + +Lisp packages using many minor mode keymaps can now maintain their own +keymap alist separate from `minor-mode-map-alist' by adding their +keymap alist to this list. + +*** Dense keymaps now handle inheritance correctly. + +Previously a dense keymap would hide all of the simple-char key +bindings of the parent keymap. + +** Enhancements to process support + +*** Adaptive read buffering of subprocess output. + +On some systems, when Emacs reads the output from a subprocess, the +output data is read in very small blocks, potentially resulting in +very poor performance. This behavior can be remedied to some extent +by setting the new variable `process-adaptive-read-buffering' to a +non-nil value (the default), as it will automatically delay reading +from such processes, allowing them to produce more output before +Emacs tries to read it. + +*** Processes now have an associated property list where programs can +maintain process state and other per-process related information. + +Use the new functions `process-get' and `process-put' to access, add, +and modify elements on this property list. Use the new functions +`process-plist' and `set-process-plist' to access and replace the +entire property list of a process. + +*** Function `list-processes' now has an optional argument; if non-nil, +it lists only the processes whose query-on-exit flag is set. + +*** New fns `set-process-query-on-exit-flag' and `process-query-on-exit-flag'. + +These replace the old function `process-kill-without-query'. That +function is still supported, but new code should use the new +functions. + +*** The new function `call-process-shell-command'. + +This executes a shell command synchronously in a separate process. + +*** The new function `process-file' is similar to `call-process', but +obeys file handlers. The file handler is chosen based on +`default-directory'. + +*** Function `signal-process' now accepts a process object or process +name in addition to a process id to identify the signaled process. + +*** Function `accept-process-output' has a new optional fourth arg +JUST-THIS-ONE. If non-nil, only output from the specified process +is handled, suspending output from other processes. If value is an +integer, also inhibit running timers. This feature is generally not +recommended, but may be necessary for specific applications, such as +speech synthesis. + +*** A process filter function gets the output as multibyte string +if the process specifies t for its filter's multibyteness. + +That multibyteness is decided by the value of +`default-enable-multibyte-characters' when the process is created, and +you can change it later with `set-process-filter-multibyte'. + +*** The new function `set-process-filter-multibyte' sets the +multibyteness of the strings passed to the process's filter. + +*** The new function `process-filter-multibyte-p' returns the +multibyteness of the strings passed to the process's filter. + +*** If a process's coding system is `raw-text' or `no-conversion' and its +buffer is multibyte, the output of the process is at first converted +to multibyte by `string-to-multibyte' then inserted in the buffer. +Previously, it was converted to multibyte by `string-as-multibyte', +which was not compatible with the behavior of file reading. + +** Enhanced networking support. + +*** The new `make-network-process' function makes network connections. +It allows opening of stream and datagram connections to a server, as well as +create a stream or datagram server inside Emacs. + +- A server is started using :server t arg. +- Datagram connection is selected using :type 'datagram arg. +- A server can open on a random port using :service t arg. +- Local sockets are supported using :family 'local arg. +- IPv6 is supported (when available). You may explicitly select IPv6 + using :family 'ipv6 arg. +- Non-blocking connect is supported using :nowait t arg. +- The process' property list can be initialized using :plist PLIST arg; + a copy of the server process' property list is automatically inherited + by new client processes created to handle incoming connections. + +To test for the availability of a given feature, use featurep like this: + (featurep 'make-network-process '(:type datagram)) + (featurep 'make-network-process '(:family ipv6)) + +*** The old `open-network-stream' now uses `make-network-process'. + +*** `process-contact' has an optional KEY argument. + +Depending on this argument, you can get the complete list of network +process properties or a specific property. Using :local or :remote as +the KEY, you get the address of the local or remote end-point. + +An Inet address is represented as a 5 element vector, where the first +4 elements contain the IP address and the fifth is the port number. + +*** New functions `stop-process' and `continue-process'. + +These functions stop and restart communication through a network +connection. For a server process, no connections are accepted in the +stopped state. For a client process, no input is received in the +stopped state. + +*** New function `format-network-address'. + +This function reformats the Lisp representation of a network address +to a printable string. For example, an IP address A.B.C.D and port +number P is represented as a five element vector [A B C D P], and the +printable string returned for this vector is "A.B.C.D:P". See the doc +string for other formatting options. + +*** New function `network-interface-list'. + +This function returns a list of network interface names and their +current network addresses. + +*** New function `network-interface-info'. + +This function returns the network address, hardware address, current +status, and other information about a specific network interface. + +*** New functions `process-datagram-address', `set-process-datagram-address'. + +These functions are used with datagram-based network processes to get +and set the current address of the remote partner. + +*** Deleting a network process with `delete-process' calls the sentinel. + +The status message passed to the sentinel for a deleted network +process is "deleted". The message passed to the sentinel when the +connection is closed by the remote peer has been changed to +"connection broken by remote peer". + +** Using window objects: + +*** You can now make a window as short as one line. + +A window that is just one line tall does not display either a mode +line or a header line, even if the variables `mode-line-format' and +`header-line-format' call for them. A window that is two lines tall +cannot display both a mode line and a header line at once; if the +variables call for both, only the mode line actually appears. + +*** The new function `window-inside-edges' returns the edges of the +actual text portion of the window, not including the scroll bar or +divider line, the fringes, the display margins, the header line and +the mode line. + +*** The new functions `window-pixel-edges' and `window-inside-pixel-edges' +return window edges in units of pixels, rather than columns and lines. + +*** New function `window-body-height'. + +This is like `window-height' but does not count the mode line or the +header line. + +*** The new function `adjust-window-trailing-edge' moves the right +or bottom edge of a window. It does not move other window edges. + +*** The new macro `with-selected-window' temporarily switches the +selected window without impacting the order of `buffer-list'. +It saves and restores the current buffer, too. + +*** `select-window' takes an optional second argument NORECORD. + +This is like `switch-to-buffer'. + +*** `save-selected-window' now saves and restores the selected window +of every frame. This way, it restores everything that can be changed +by calling `select-window'. It also saves and restores the current +buffer. + +*** `set-window-buffer' has an optional argument KEEP-MARGINS. + +If non-nil, that says to preserve the window's current margin, fringe, +and scroll-bar settings. + +*** The new function `window-tree' returns a frame's window tree. + +*** The functions `get-lru-window' and `get-largest-window' take an optional +argument `dedicated'. If non-nil, those functions do not ignore +dedicated windows. + +** Customizable fringe bitmaps + +*** There are new display properties, `left-fringe' and `right-fringe', +that can be used to show a specific bitmap in the left or right fringe +bitmap of the display line. + +Format is `display (left-fringe BITMAP [FACE])', where BITMAP is a +symbol identifying a fringe bitmap, either built-in or defined with +`define-fringe-bitmap', and FACE is an optional face name to be used +for displaying the bitmap instead of the default `fringe' face. +When specified, FACE is automatically merged with the `fringe' face. + +*** New buffer-local variables `fringe-indicator-alist' and +`fringe-cursor-alist' maps between logical (internal) fringe indicator +and cursor symbols and the actual fringe bitmaps to be displayed. +This decouples the logical meaning of the fringe indicators from the +physical appearance, as well as allowing different fringe bitmaps to +be used in different windows showing different buffers. + +*** New function `define-fringe-bitmap' can now be used to create new +fringe bitmaps, as well as change the built-in fringe bitmaps. + +*** New function `destroy-fringe-bitmap' deletes a fringe bitmap +or restores a built-in one to its default value. + +*** New function `set-fringe-bitmap-face' specifies the face to be +used for a specific fringe bitmap. The face is automatically merged +with the `fringe' face, so normally, the face should only specify the +foreground color of the bitmap. + +*** New function `fringe-bitmaps-at-pos' returns the current fringe +bitmaps in the display line at a given buffer position. + +** Other window fringe features: + +*** Controlling the default left and right fringe widths. + +The default left and right fringe widths for all windows of a frame +can now be controlled by setting the `left-fringe' and `right-fringe' +frame parameters to an integer value specifying the width in pixels. +Setting the width to 0 effectively removes the corresponding fringe. + +The actual default fringe widths for the frame may deviate from the +specified widths, since the combined fringe widths must match an +integral number of columns. The extra width is distributed evenly +between the left and right fringe. To force a specific fringe width, +specify the width as a negative integer (if both widths are negative, +only the left fringe gets the specified width). + +Setting the width to nil (the default), restores the default fringe +width which is the minimum number of pixels necessary to display any +of the currently defined fringe bitmaps. The width of the built-in +fringe bitmaps is 8 pixels. + +*** Per-window fringe and scrollbar settings + +**** Windows can now have their own individual fringe widths and +position settings. + +To control the fringe widths of a window, either set the buffer-local +variables `left-fringe-width', `right-fringe-width', or call +`set-window-fringes'. + +To control the fringe position in a window, that is, whether fringes +are positioned between the display margins and the window's text area, +or at the edges of the window, either set the buffer-local variable +`fringes-outside-margins' or call `set-window-fringes'. + +The function `window-fringes' can be used to obtain the current +settings. To make `left-fringe-width', `right-fringe-width', and +`fringes-outside-margins' take effect, you must set them before +displaying the buffer in a window, or use `set-window-buffer' to force +an update of the display margins. + +**** Windows can now have their own individual scroll-bar settings +controlling the width and position of scroll-bars. + +To control the scroll-bar of a window, either set the buffer-local +variables `scroll-bar-mode' and `scroll-bar-width', or call +`set-window-scroll-bars'. The function `window-scroll-bars' can be +used to obtain the current settings. To make `scroll-bar-mode' and +`scroll-bar-width' take effect, you must set them before displaying +the buffer in a window, or use `set-window-buffer' to force an update +of the display margins. + +** Redisplay features: + +*** `sit-for' can now be called with args (SECONDS &optional NODISP). + +*** Iconifying or deiconifying a frame no longer makes sit-for return. + +*** New function `redisplay' causes an immediate redisplay if no input is +available, equivalent to (sit-for 0). The call (redisplay t) forces +an immediate redisplay even if input is pending. + +*** New function `force-window-update' can initiate a full redisplay of +one or all windows. Normally, this is not needed as changes in window +contents are detected automatically. However, certain implicit +changes to mode lines, header lines, or display properties may require +forcing an explicit window update. + +*** (char-displayable-p CHAR) returns non-nil if Emacs ought to be able +to display CHAR. More precisely, if the selected frame's fontset has +a font to display the character set that CHAR belongs to. + +Fontsets can specify a font on a per-character basis; when the fontset +does that, this value cannot be accurate. + +*** You can define multiple overlay arrows via the new +variable `overlay-arrow-variable-list'. + +It contains a list of variables which contain overlay arrow position +markers, including the original `overlay-arrow-position' variable. + +Each variable on this list can have individual `overlay-arrow-string' +and `overlay-arrow-bitmap' properties that specify an overlay arrow +string (for non-window terminals) or fringe bitmap (for window +systems) to display at the corresponding overlay arrow position. +If either property is not set, the default `overlay-arrow-string' or +'overlay-arrow-fringe-bitmap' will be used. + +*** New `line-height' and `line-spacing' properties for newline characters + +A newline can now have `line-height' and `line-spacing' text or overlay +properties that control the height of the corresponding display row. + +If the `line-height' property value is t, the newline does not +contribute to the height of the display row; instead the height of the +newline glyph is reduced. Also, a `line-spacing' property on this +newline is ignored. This can be used to tile small images or image +slices without adding blank areas between the images. + +If the `line-height' property value is a positive integer, the value +specifies the minimum line height in pixels. If necessary, the line +height it increased by increasing the line's ascent. + +If the `line-height' property value is a float, the minimum line +height is calculated by multiplying the default frame line height by +the given value. + +If the `line-height' property value is a cons (FACE . RATIO), the +minimum line height is calculated as RATIO * height of named FACE. +RATIO is int or float. If FACE is t, it specifies the current face. + +If the `line-height' property value is a cons (nil . RATIO), the line +height is calculated as RATIO * actual height of the line's contents. + +If the `line-height' value is a cons (HEIGHT . TOTAL), HEIGHT specifies +the line height as described above, while TOTAL is any of the forms +described above and specifies the total height of the line, causing a +varying number of pixels to be inserted after the line to make it line +exactly that many pixels high. + +If the `line-spacing' property value is an positive integer, the value +is used as additional pixels to insert after the display line; this +overrides the default frame `line-spacing' and any buffer local value of +the `line-spacing' variable. + +If the `line-spacing' property is a float or cons, the line spacing +is calculated as specified above for the `line-height' property. + +*** The buffer local `line-spacing' variable can now have a float value, +which is used as a height relative to the default frame line height. + +*** Enhancements to stretch display properties + +The display property stretch specification form `(space PROPS)', where +PROPS is a property list, now allows pixel based width and height +specifications, as well as enhanced horizontal text alignment. + +The value of these properties can now be a (primitive) expression +which is evaluated during redisplay. The following expressions +are supported: + +EXPR ::= NUM | (NUM) | UNIT | ELEM | POS | IMAGE | FORM +NUM ::= INTEGER | FLOAT | SYMBOL +UNIT ::= in | mm | cm | width | height +ELEM ::= left-fringe | right-fringe | left-margin | right-margin + | scroll-bar | text +POS ::= left | center | right +FORM ::= (NUM . EXPR) | (OP EXPR ...) +OP ::= + | - + +The form `NUM' specifies a fractional width or height of the default +frame font size. The form `(NUM)' specifies an absolute number of +pixels. If a symbol is specified, its buffer-local variable binding +is used. The `in', `mm', and `cm' units specifies the number of +pixels per inch, milli-meter, and centi-meter, resp. The `width' and +`height' units correspond to the width and height of the current face +font. An image specification corresponds to the width or height of +the image. + +The `left-fringe', `right-fringe', `left-margin', `right-margin', +`scroll-bar', and `text' elements specify to the width of the +corresponding area of the window. + +The `left', `center', and `right' positions can be used with :align-to +to specify a position relative to the left edge, center, or right edge +of the text area. One of the above window elements (except `text') +can also be used with :align-to to specify that the position is +relative to the left edge of the given area. Once the base offset for +a relative position has been set (by the first occurrence of one of +these symbols), further occurrences of these symbols are interpreted as +the width of the area. + +For example, to align to the center of the left-margin, use + :align-to (+ left-margin (0.5 . left-margin)) + +If no specific base offset is set for alignment, it is always relative +to the left edge of the text area. For example, :align-to 0 in a +header line aligns with the first text column in the text area. + +The value of the form `(NUM . EXPR)' is the value of NUM multiplied by +the value of the expression EXPR. For example, (2 . in) specifies a +width of 2 inches, while (0.5 . IMAGE) specifies half the width (or +height) of the specified image. + +The form `(+ EXPR ...)' adds up the value of the expressions. +The form `(- EXPR ...)' negates or subtracts the value of the expressions. + +*** Normally, the cursor is displayed at the end of any overlay and +text property string that may be present at the current window +position. The cursor can now be placed on any character of such +strings by giving that character a non-nil `cursor' text property. + +*** The display space :width and :align-to text properties are now +supported on text terminals. + +*** Support for displaying image slices + +**** New display property (slice X Y WIDTH HEIGHT) can be used with +an image property to display only a specific slice of the image. + +**** Function `insert-image' has new optional fourth arg to +specify image slice (X Y WIDTH HEIGHT). + +**** New function `insert-sliced-image' inserts a given image as a +specified number of evenly sized slices (rows x columns). + +*** Images can now have an associated image map via the :map property. + +An image map is an alist where each element has the format (AREA ID PLIST). +An AREA is specified as either a rectangle, a circle, or a polygon: +A rectangle is a cons (rect . ((X0 . Y0) . (X1 . Y1))) specifying the +pixel coordinates of the upper left and bottom right corners. +A circle is a cons (circle . ((X0 . Y0) . R)) specifying the center +and the radius of the circle; R can be a float or integer. +A polygon is a cons (poly . [X0 Y0 X1 Y1 ...]) where each pair in the +vector describes one corner in the polygon. + +When the mouse pointer is above a hot-spot area of an image, the +PLIST of that hot-spot is consulted; if it contains a `help-echo' +property it defines a tool-tip for the hot-spot, and if it contains +a `pointer' property, it defines the shape of the mouse cursor when +it is over the hot-spot. See the variable `void-area-text-pointer' +for possible pointer shapes. + +When you click the mouse when the mouse pointer is over a hot-spot, +an event is composed by combining the ID of the hot-spot with the +mouse event, e.g. [area4 mouse-1] if the hot-spot's ID is `area4'. + +*** The function `find-image' now searches in etc/images/ and etc/. +The new variable `image-load-path' is a list of locations in which to +search for image files. The default is to search in etc/images, then +in etc/, and finally in the directories specified by `load-path'. +Subdirectories of etc/ and etc/images are not recursively searched; if +you put an image file in a subdirectory, you have to specify it +explicitly; for example, if an image is put in etc/images/foo/bar.xpm: + + (defimage foo-image '((:type xpm :file "foo/bar.xpm"))) + +Note that all images formerly located in the lisp directory have been +moved to etc/images. + +*** New function `image-load-path-for-library' returns a suitable +search path for images relative to library. This function is useful in +external packages to save users from having to update +`image-load-path'. + +*** The new variable `max-image-size' defines the maximum size of +images that Emacs will load and display. + +*** The new variable `display-mm-dimensions-alist' can be used to +override incorrect graphical display dimensions returned by functions +`display-mm-height' and `display-mm-width'. + +** Mouse pointer features: + +*** The mouse pointer shape in void text areas (i.e. after the end of a +line or below the last line in the buffer) of the text window is now +controlled by the new variable `void-text-area-pointer'. The default +is to use the `arrow' (non-text) pointer. Other choices are `text' +(or nil), `hand', `vdrag', `hdrag', `modeline', and `hourglass'. + +*** The mouse pointer shape over an image can now be controlled by the +:pointer image property. + +*** The mouse pointer shape over ordinary text or images can now be +controlled/overridden via the `pointer' text property. + +** Mouse event enhancements: + +*** All mouse events now include a buffer position regardless of where +you clicked. For mouse clicks in window margins and fringes, this is +a sensible buffer position corresponding to the surrounding text. + +*** Mouse events for clicks on window fringes now specify `left-fringe' +or `right-fringe' as the area. + +*** Mouse events include actual glyph column and row for all event types +and all areas. + +*** Mouse events can now indicate an image object clicked on. + +*** Mouse events include relative X and Y pixel coordinates relative to +the top left corner of the object (image or character) clicked on. + +*** Mouse events include the pixel width and height of the object +(image or character) clicked on. + +*** Function `mouse-set-point' now works for events outside text area. + +*** `posn-point' now returns buffer position for non-text area events. + +*** New function `posn-area' returns window area clicked on (nil means +text area). + +*** New function `posn-actual-col-row' returns the actual glyph coordinates +of the mouse event position. + +*** New functions 'posn-object', 'posn-object-x-y', 'posn-object-width-height'. + +These return the image or string object of a mouse click, the X and Y +pixel coordinates relative to the top left corner of that object, and +the total width and height of that object. + +** Text property and overlay changes: + +*** Arguments for `remove-overlays' are now optional, so that you can +remove all overlays in the buffer with just (remove-overlays). + +*** New variable `char-property-alias-alist'. + +This variable allows you to create alternative names for text +properties. It works at the same level as `default-text-properties', +although it applies to overlays as well. This variable was introduced +to implement the `font-lock-face' property. + +*** New function `get-char-property-and-overlay' accepts the same +arguments as `get-char-property' and returns a cons whose car is the +return value of `get-char-property' called with those arguments and +whose cdr is the overlay in which the property was found, or nil if +it was found as a text property or not found at all. + +*** The new function `remove-list-of-text-properties'. + +It is like `remove-text-properties' except that it takes a list of +property names as argument rather than a property list. + +** Face changes + +*** The variable `facemenu-unlisted-faces' has been removed. +Emacs has a lot more faces than in the past, and nearly all of them +needed to be excluded. The new variable `facemenu-listed-faces' lists +the faces to include in the face menu. + +*** The new face attribute condition `min-colors' can be used to tailor +the face color to the number of colors supported by a display, and +define the foreground and background colors accordingly so that they +look best on a terminal that supports at least this many colors. This +is now the preferred method for defining default faces in a way that +makes a good use of the capabilities of the display. + +*** New function `display-supports-face-attributes-p' can be used to test +whether a given set of face attributes is actually displayable. + +A new predicate `supports' has also been added to the `defface' face +specification language, which can be used to do this test for faces +defined with `defface'. + +*** The special treatment of faces whose names are of the form `fg:COLOR' +or `bg:COLOR' has been removed. Lisp programs should use the +`defface' facility for defining faces with specific colors, or use +the feature of specifying the face attributes :foreground and :background +directly in the `face' property instead of using a named face. + +*** The first face specification element in a defface can specify +`default' instead of frame classification. Then its attributes act as +defaults that apply to all the subsequent cases (and can be overridden +by them). + +*** The function `face-differs-from-default-p' now truly checks +whether the given face displays differently from the default face or +not (previously it did only a very cursory check). + +*** `face-attribute', `face-foreground', `face-background', `face-stipple'. + +These now accept a new optional argument, INHERIT, which controls how +face inheritance is used when determining the value of a face +attribute. + +*** New functions `face-attribute-relative-p' and `merge-face-attribute' +help with handling relative face attributes. + +*** The priority of faces in an :inherit attribute face list is reversed. + +If a face contains an :inherit attribute with a list of faces, earlier +faces in the list override later faces in the list; in previous +releases of Emacs, the order was the opposite. This change was made +so that :inherit face lists operate identically to face lists in text +`face' properties. + +*** The variable `face-font-rescale-alist' specifies how much larger +(or smaller) font we should use. For instance, if the value is +'((SOME-FONTNAME-PATTERN . 1.3)) and a face requests a font of 10 +point, we actually use a font of 13 point if the font matches +SOME-FONTNAME-PATTERN. + +*** On terminals, faces with the :inverse-video attribute are displayed +with swapped foreground and background colors even when one of them is +not specified. In previous releases of Emacs, if either foreground +or background color was unspecified, colors were not swapped. This +was inconsistent with the face behavior under X. + +*** `set-fontset-font', `fontset-info', `fontset-font' now operate on +the default fontset if the argument NAME is nil.. + +** Font-Lock changes: + +*** New special text property `font-lock-face'. + +This property acts like the `face' property, but it is controlled by +M-x font-lock-mode. It is not, strictly speaking, a builtin text +property. Instead, it is implemented inside font-core.el, using the +new variable `char-property-alias-alist'. + +*** font-lock can manage arbitrary text-properties beside `face'. + +**** the FACENAME returned in `font-lock-keywords' can be a list of the +form (face FACE PROP1 VAL1 PROP2 VAL2 ...) so you can set other +properties than `face'. + +**** `font-lock-extra-managed-props' can be set to make sure those +extra properties are automatically cleaned up by font-lock. + +*** jit-lock obeys a new text-property `jit-lock-defer-multiline'. + +If a piece of text with that property gets contextually refontified +(see `jit-lock-defer-contextually'), then all of that text will +be refontified. This is useful when the syntax of a textual element +depends on text several lines further down (and when `font-lock-multiline' +is not appropriate to solve that problem). For example in Perl: + + s{ + foo + }{ + bar + }e + +Adding/removing the last `e' changes the `bar' from being a piece of +text to being a piece of code, so you'd put a `jit-lock-defer-multiline' +property over the second half of the command to force (deferred) +refontification of `bar' whenever the `e' is added/removed. + +*** `font-lock-extend-region-functions' makes it possible to alter the way +the fontification region is chosen. This can be used to prevent rounding +up to whole lines, or to extend the region to include all related lines +of multiline constructs so that such constructs get properly recognized. + +** Major mode mechanism changes: + +*** New variable `magic-mode-alist' determines major mode for a file by +looking at the file contents. It takes precedence over `auto-mode-alist'. + +*** New variable `magic-fallback-mode-alist' determines major mode for a file by +looking at the file contents. It is handled after `auto-mode-alist', +only if `auto-mode-alist' (and `magic-mode-alist') says nothing about the file. + +*** XML or SGML major mode is selected when file starts with an ` ) + (if (boundp 'foo) form +won't produce a warning if it's not defined as a function, and in the +second case, using `foo' as a variable won't produce a warning if it's +unbound. The test must be in exactly one of the above forms (after +macro expansion), but such tests can be nested. Note that `when' and +`unless' expand to `if', but `cond' doesn't. + +*** `(featurep 'xemacs)' is treated by the compiler as nil. This +helps to avoid noisy compiler warnings in code meant to run under both +Emacs and XEmacs and can sometimes make the result significantly more +efficient. Since byte code from recent versions of XEmacs won't +generally run in Emacs and vice versa, this optimization doesn't lose +you anything. + +*** The local variable `no-byte-compile' in Lisp files is now obeyed. + +*** When a Lisp file uses CL functions at run-time, compiling the file +now issues warnings about these calls, unless the file performs +(require 'cl) when loaded. + +** Frame operations: + +*** New functions `frame-current-scroll-bars' and `window-current-scroll-bars'. + +These functions return the current locations of the vertical and +horizontal scroll bars in a frame or window. + +*** The new function `modify-all-frames-parameters' modifies parameters +for all (existing and future) frames. + +*** The new frame parameter `tty-color-mode' specifies the mode to use +for color support on character terminal frames. Its value can be a +number of colors to support, or a symbol. See the Emacs Lisp +Reference manual for more detailed documentation. + +*** When using non-toolkit scroll bars with the default width, +the `scroll-bar-width' frame parameter value is nil. + +** Mode line changes: + +*** New function `format-mode-line'. + +This returns the mode line or header line of the selected (or a +specified) window as a string with or without text properties. + +*** The new mode-line construct `(:propertize ELT PROPS...)' can be +used to add text properties to mode-line elements. + +*** The new `%i' and `%I' constructs for `mode-line-format' can be used +to display the size of the accessible part of the buffer on the mode +line. + +*** Mouse-face on mode-line (and header-line) is now supported. + +** Menu manipulation changes: + +*** To manipulate the File menu using easy-menu, you must specify the +proper name "file". In previous Emacs versions, you had to specify +"files", even though the menu item itself was changed to say "File" +several versions ago. + +*** The dummy function keys made by easy-menu are now always lower case. +If you specify the menu item name "Ada", for instance, it uses `ada' +as the "key" bound by that key binding. + +This is relevant only if Lisp code looks for the bindings that were +made with easy-menu. + +*** `easy-menu-define' now allows you to use nil for the symbol name +if you don't need to give the menu a name. If you install the menu +into other keymaps right away (MAPS is non-nil), it usually doesn't +need to have a name. + +** Mule changes: + +*** Already true in Emacs 21.1, but not emphasized clearly enough: + +Multibyte buffers can now faithfully record all 256 character codes +from 0 to 255. As a result, most of the past reasons to use unibyte +buffers no longer exist. We only know of three reasons to use them +now: + +1. If you prefer to use unibyte text all of the time. + +2. For reading files into temporary buffers, when you want to avoid +the time it takes to convert the format. + +3. For binary files where format conversion would be pointless and +wasteful. + +*** The new variable `auto-coding-functions' lets you specify functions +to examine a file being visited and deduce the proper coding system +for it. (If the coding system is detected incorrectly for a specific +file, you can put a `coding:' tags to override it.) + +*** The new variable `ascii-case-table' stores the case table for the +ascii character set. Language environments (such as Turkish) may +alter the case correspondences of ASCII characters. This variable +saves the original ASCII case table before any such changes. + +*** The new function `merge-coding-systems' fills in unspecified aspects +of one coding system from another coding system. + +*** New coding system property `mime-text-unsuitable' indicates that +the coding system's `mime-charset' is not suitable for MIME text +parts, e.g. utf-16. + +*** New function `decode-coding-inserted-region' decodes a region as if +it is read from a file without decoding. + +*** New CCL functions `lookup-character' and `lookup-integer' access +hash tables defined by the Lisp function `define-translation-hash-table'. + +*** New function `quail-find-key' returns a list of keys to type in the +current input method to input a character. + +*** `set-buffer-file-coding-system' now takes an additional argument, +NOMODIFY. If it is non-nil, it means don't mark the buffer modified. + +** Operating system access: + +*** The new primitive `get-internal-run-time' returns the processor +run time used by Emacs since start-up. + +*** Functions `user-uid' and `user-real-uid' now return floats if the +user UID doesn't fit in a Lisp integer. Function `user-full-name' +accepts a float as UID parameter. + +*** New function `locale-info' accesses locale information. + +*** On MS Windows, locale-coding-system is used to interact with the OS. +The Windows specific variable w32-system-coding-system, which was +formerly used for that purpose is now an alias for locale-coding-system. + +*** New function `redirect-debugging-output' can be used to redirect +debugging output on the stderr file handle to a file. + +** GC changes: + +*** New variable `gc-cons-percentage' automatically grows the GC cons threshold +as the heap size increases. + +*** New variables `gc-elapsed' and `gcs-done' provide extra information +on garbage collection. + +*** The normal hook `post-gc-hook' is run at the end of garbage collection. + +The hook is run with GC inhibited, so use it with care. + +** Miscellaneous: + +*** A number of hooks have been renamed to better follow the conventions: + +`find-file-hooks' to `find-file-hook', +`find-file-not-found-hooks' to `find-file-not-found-functions', +`write-file-hooks' to `write-file-functions', +`write-contents-hooks' to `write-contents-functions', +`x-lost-selection-hooks' to `x-lost-selection-functions', +`x-sent-selection-hooks' to `x-sent-selection-functions', +`delete-frame-hook' to `delete-frame-functions'. + +In each case the old name remains as an alias for the moment. + +*** Variable `local-write-file-hooks' is marked obsolete. + +Use the LOCAL arg of `add-hook'. + +*** New function `x-send-client-message' sends a client message when +running under X. + +* New Packages for Lisp Programming in Emacs 22.1 + +** The new library button.el implements simple and fast `clickable +buttons' in Emacs buffers. Buttons are much lighter-weight than the +`widgets' implemented by widget.el, and can be used by lisp code that +doesn't require the full power of widgets. Emacs uses buttons for +such things as help and apropos buffers. + +** The new library tree-widget.el provides a widget to display a set +of hierarchical data as an outline. For example, the tree-widget is +well suited to display a hierarchy of directories and files. + +** The new library bindat.el provides functions to unpack and pack +binary data structures, such as network packets, to and from Lisp +data structures. + +** master-mode.el implements a minor mode for scrolling a slave +buffer without leaving your current buffer, the master buffer. + +It can be used by sql.el, for example: the SQL buffer is the master +and its SQLi buffer is the slave. This allows you to scroll the SQLi +buffer containing the output from the SQL buffer containing the +commands. + +This is how to use sql.el and master.el together: the variable +sql-buffer contains the slave buffer. It is a local variable in the +SQL buffer. + +(add-hook 'sql-mode-hook + (function (lambda () + (master-mode t) + (master-set-slave sql-buffer)))) +(add-hook 'sql-set-sqli-hook + (function (lambda () + (master-set-slave sql-buffer)))) + +** The new library benchmark.el does timing measurements on Lisp code. + +This includes measuring garbage collection time. + +** The new library testcover.el does test coverage checking. + +This is so you can tell whether you've tested all paths in your Lisp +code. It works with edebug. + +The function `testcover-start' instruments all functions in a given +file. Then test your code. The function `testcover-mark-all' adds +overlay "splotches" to the Lisp file's buffer to show where coverage +is lacking. The command `testcover-next-mark' (bind it to a key!) +will move point forward to the next spot that has a splotch. + +Normally, a red splotch indicates the form was never completely +evaluated; a brown splotch means it always evaluated to the same +value. The red splotches are skipped for forms that can't possibly +complete their evaluation, such as `error'. The brown splotches are +skipped for forms that are expected to always evaluate to the same +value, such as (setq x 14). + +For difficult cases, you can add do-nothing macros to your code to +help out the test coverage tool. The macro `noreturn' suppresses a +red splotch. It is an error if the argument to `noreturn' does +return. The macro `1value' suppresses a brown splotch for its argument. +This macro is a no-op except during test-coverage -- then it signals +an error if the argument actually returns differing values. + + + +---------------------------------------------------------------------- +This file is part of GNU Emacs. + +GNU Emacs is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3, or (at your option) +any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. + + +Local variables: +mode: outline +paragraph-separate: "[ ]*$" +end: + +arch-tag: 1aca9dfa-2ac4-4d14-bebf-0007cee12793 diff --cc etc/tutorials/TUTORIAL.de index b3d3e6eb75,0000000000..f11f5180b6 mode 100644,000000..100644 --- a/etc/tutorials/TUTORIAL.de +++ b/etc/tutorials/TUTORIAL.de @@@ -1,1477 -1,0 +1,1467 @@@ +Einführung in Emacs. Siehe Dateiende für Vervielfältigungsbedingungen. + +Emacs-Befehle beinhalten im allgemeinen die CONTROL-Taste (manchmal +auch als CTRL, CTL oder STRG beschriftet) sowie die META-Taste (auch +EDIT oder ALT genannt). Folgende Abkürzungen werden verwendet: + + C- bedeutet, daß die CONTROL-Taste gedrückt sein muß, + während man das Zeichen eingibt. Beispiel: + C-f Halten Sie die CONTROL-Taste gedrückt und drücken + Sie dann die f-Taste. + M- bedeutet, daß die META-Taste gedrückt sein muß, + während man das Zeichen eingibt. Statt dessen + kann man auch die ESC-Taste und anschließend + drücken (hintereinander, nicht gleichzeitig). Beispiel: + M-f Halten Sie die META-Taste gedrückt und geben + Sie den Buchstaben (klein) f ein. + +`>>' am linken Rand ist ein Hinweis, einen Befehl auszuprobieren: +<> +[Leerzeilen befinden sich hier aus didaktischen Gründen. Fortsetzung unten.] +>> Drücken Sie C-v, um zur nächsten Bildschirmseite vorzublättern. + Ab jetzt sollten Sie das stets tun, wenn Sie eine Seite fertig + gelesen haben. + +Beachten Sie bitte, daß beim Blättern die untersten zwei Zeilen der +vorigen Bildschirmseite als die zwei obersten Zeilen der neuen Seite +erscheinen, um eine gewisse Kontinuität während des Lesens zu +ermöglichen. + +Wichtig: Sie können Emacs mit der Befehlsfolge C-x C-c beenden. + +Im weiteren wird die ESC-Taste mit bezeichnet. + +[Falls die deutschen Umlaute nicht korrekt auf dem Bildschirm +erscheinen, lesen Sie bitte den Abschnitt `MULE' kurz vor Ende dieser +Einführung.] + +Zunächst müssen Sie wissen, wie man sich innerhalb eines Dokuments +bewegen kann. Wie man eine Bildschirmseite vorwärts blättert, wissen +Sie schon (C-v). Mit M-v blättern Sie eine Bildschirmseite zurück +(halten Sie die META-Taste gedrückt und geben Sie v ein, oder drücken +Sie zuerst und anschließend v). + +>> Probieren Sie einige Male M-v und C-v aus. + +[Auf den meisten Tastaturen bewirkt die PgUp-Taste (`page up', auch +mit `Bild' und einem Aufwärtspfeil beschriftet) dasselbe wie M-v bzw. +die PgDn-Taste (`page down', `Bild' mit Abwärtspfeil) dasselbe wie +C-v.] + + +* ZUSAMMENFASSUNG +----------------- + +Die folgenden Befehle sind nützlich, um Text bildschirmweise zu +betrachten: + + C-v eine Seite vorwärts blättern + M-v eine Seite zurück blättern + C-l lösche den Bildschirm und stelle den ganzen Text + erneut dar, wobei der Text rund um den Cursor zur + Mitte des Bildschirms bewegt wird. + (`l' ist der Buchstabe `klein L', nicht die Ziffer 1.) + + +>> Lokalisieren Sie den Cursor und merken sich den Text in dessen + Umgebung. Drücken Sie C-l. Der Cursor ist jetzt ungefähr in der + (vertikalen) Bildschirmmitte, und er hat seine Position relativ zum + Text nicht geändert. + + +* KONTROLLE DES CURSORS +----------------------- + +Text bildschirmweise anzuschauen ist sicherlich praktisch, aber wie +kommt man zu einer bestimmten Position innerhalb des gerade +dargestellten Textes? + +Es gibt verschiedene Möglichkeiten. Die Grundbefehle sind C-p, C-b, +C-f und C-n. Dem folgenden Diagramm können Sie entnehmen, welcher +Befehl den Cursor wohin bewegt: + + + vorige Zeile, C-p + : + : + zurück, C-b .... momentane Cursor-Position .... vorwärts, C-f + : + : + nächste Zeile, C-n + + +[Die Buchstaben p, b, f und n stehen für die englischen Worte +`previous', `backward', `forward' und `next'.] + +>> Bewegen Sie den Cursor zur Zeile in der Mitte des Diagramms mittels + C-n oder C-p. Geben Sie dann C-l ein, und das ganze Diagramm ist + zentriert auf dem Bildschirm. + +Normalerweise sind die vier Pfeiltasten mit den Cursor-Grundbefehlen +belegt. Falls nicht, sollten Sie Ihre Terminalkonfiguration +überprüfen. Wenn z.B. Ihr Terminalprogramm (mit dem Sie sich über +eine Modem-Leitung in Ihrem Rechenzentrum oder Internet-Provider +eingewählt haben) ein vt100-Terminal emuliert, sollte die +Umgebungsvariable `TERM=vt100' gesetzt sein. Unter dem X Window +System sollten die Pfeiltasten immer richtig belegt sein. + +Es ist von großer Wichtigkeit, sich mit obigen Cursor-Befehlen +vertraut zu machen, da man sie ständig braucht (besonders wenn man mit +Terminal-Emulationen arbeitet, welche die Pfeiltasten nicht +unterstützen). + +>> Drücken Sie ein paarmal C-n, um den Cursor zu dieser Zeile zu + bewegen. + +>> Bewegen Sie den Cursor vorwärts mittels C-f und nach oben mit C-p. + Beobachten Sie, was C-p tut, wenn der Cursor sich in der + Zeilenmitte befindet. + +Jede Textzeile endet mit einem Zeilenvorschub-Zeichen (`newline'), das +sie von der folgenden Zeile trennt. + +>> Probieren Sie C-b am Anfang einer Zeile. Der Cursor sollte zum + Ende der vorigen Zeile springen: C-b überspringt + Zeilenvorschub-Zeichen. + +C-f überspringt Zeilenvorschub-Zeichen analog zu C-b. + +>> Drücken Sie noch ein paarmal C-b, um ein Gefühl für den Cursor zu + bekommen. Bewegen sie anschließend den Cursor mittels C-f zum Ende + der Zeile. Geben Sie jetzt noch einmal C-f ein, um zur nächsten + Zeile zu springen. + +>> Falls die Pfeiltasten funktionieren, können Sie mit diesen das + gleiche probieren und üben. + +Wenn Sie den Cursor entweder nach oben oder nach unten über den +Bildschirmrand hinaus bewegen wollen, dann wird statt dessen Text in +den Bildschirm hineingeschoben. Dies nennt man `scrolling'. Auf +diese Weise verhindert Emacs, daß der Cursor je den sichtbaren Bereich +verläßt. + +>> Versuchen Sie den Cursor über den unteren Bildschirmrand hinaus zu + bewegen und beobachten Sie, was geschieht. + +Wenn zeichenweise Cursorbewegung zu langsam ist, dann kann man den +Cursor wortweise bewegen. M-f (META-f) bewegt den Cursor ein Wort +vor, und M-b ein Wort zurück. + +>> Geben Sie ein paarmal M-f und M-b ein. + +Befinden Sie sich in der Mitte eines Wortes, bewegt M-f den Cursor zum +Ende des Wortes. Befinden Sie dagegen sich in einem Wortzwischenraum, +bewegt M-f den Cursor zum Ende des nächsten Wortes. M-b arbeitet +analog, aber in die entgegengesetzte Richtung. + +>> Kombinieren Sie M-f und M-b mit den Befehlen C-f und C-b, um die + Cursorbewegung von verschiedenen Positionen aus innerhalb und + zwischen Wörtern zu beobachten. + +Beachten Sie die Parallele zwischen C-f und C-b einerseits und M-f und +M-b andererseits. Sehr oft werden mit `META-' beginnende Befehle für +Operationen verwendet, die mit Sprache zu tun haben (Wörter, Sätze, +Absätze), während CONTROL-Befehle mit den Text-Basiseinheiten +operieren, unabhängig davon, was Sie gerade editieren (Zeichen, +Buchstaben, Zeilen etc). + +Ein anderes Beispiel: C-a und C-e bewegt den Cursor zum Anfang +bzw. zum Ende einer Zeile, wohingegen M-a und M-e den Cursor zum +Anfang bzw. zum Ende eines Satzes springen läßt. + +>> Probieren Sie ein paarmal C-a und C-e. + Probieren Sie dann ein paarmal M-a und M-e. + +Beachten Sie, daß ein wiederholtes Drücken von C-a nichts bewirkt, +dagegen M-a den Cursor satzweise zurücksetzt. Hier endet die +Analogie, jedoch ist das Verhalten dieser Befehle leicht +nachvollziehbar. + +[Anmerkung 1: Im Deutschen kommt laut Duden nach einem Punkt nur ein +Leerzeichen. Falls Sie aber Texte schreiben, die weiter verarbeitet +werden (z.B. durch ein Textformatierprogramm wie TeX), dann sollten +Sie sich angewöhnen, nach einem Satzende stets ZWEI Leerzeichen zu +lassen. Dadurch ermöglichen Sie u.a., daß Emacs zwischen +Abkürzungspunkten und dem Satzende unterscheiden kann, was für +Textsuche in wissenschaftlichen Texten oft vorteilhaft ist.] + +[Anmerkung 2: Die Tasten `Home' (Pos1) und `End' (Ende) verhalten sich +standardmäßig wie C-a und C-e, wie wohl die meisten Benutzer +annehmen.] + +Die aktuelle Position des Cursors wird im Englischen auch `point' +(Punkt) genannt. Beachten Sie bitte, daß sich `point' stets +*zwischen* zwei Zeichen befindet, nämlich genau vor dem +Cursor-Kästchen. + +Hier ist eine Zusammenfassung von einfachen Bewegungsbefehlen für den +Cursor einschließlich der Wort- und Satzbewegungsbefehle: + + C-f ein Zeichen vorwärts (auch `Pfeil rechts'-Taste) + C-b ein Zeichen zurück (auch `Pfeil links'-Taste) + + M-f ein Wort vorwärts + M-b ein Wort zurück + + C-n eine Zeile vorwärts (auch `Pfeil hinunter'-Taste) + C-p eine Zeile zurück (auch `Pfeil hinauf'-Taste) + + C-a zum Zeilenanfang + C-e zum Zeilenende + + M-a zum Satzanfang + M-e zum Satzende + +>> Probieren Sie diese Befehle jetzt ein paarmal zur Übung. + Es sind die meistverwendeten Befehle innerhalb Emacs. + +Zwei weitere wichtige Befehle für die Cursorbewegung sind M-< (META +Kleiner-als) und M-> (META Größer-als), welche zum Anfang bzw. zum +Ende des ganzen Textes springen. + +Bei den meisten Terminal-Tastaturen befindet sich `<' über dem Komma, +d.h., Sie müssen zusätzlich die SHIFT-Taste verwenden (der Umschalter +ist auf deutschen Tastaturen normalerweise mit einem dicken +Aufwärtspfeil markiert). Ohne SHIFT-Taste würden Sie M-Komma +eingeben. + +>> Testen Sie nun M-<, um an den Anfang der Einführung + zu gelangen. Verwenden Sie dann C-v, um wieder hierher zu kommen. + +Ein weiteres, oft benütztes Konzept in Emacs ist die Markierung +(`mark'). Der Grundbefehl dazu ist C-SPC (oder gleichwertig C-@, +`SPC' bezeichnet die Leertaste, engl. `space key'); mit ihm kann eine +Markierung gesetzt werden. Mit C-u C-SPC kommt man zu dieser +Markierung zurück, falls man den Cursor inzwischen weiterbewegt hat. +Viele Befehle, die große Sprünge in einem Text ausführen (so auch M-> +und M-<) setzen eine Markierung implizit, was in der untersten Zeile +(dem Echobereich, s.u.) als `Mark set' angezeigt wird. + +>> Verwenden Sie jetzt M->, um zum Ende der Einführung + zu springen und benützen Sie C-u C-SPC, um hierher zurückzukehren. + +Markierungen werden in einem Ring gespeichert (d.h., die zuletzt in +den Ring eingehängte Markierung wird als erste zurückgeholt und wie +bei einem Schlüsselbund am Ende wieder in den Ring eingefügt). Mit +C-u C-SPC können Sie Stück für Stück alle Markierungen im +Markierungsring ansteuern. + +>> Drücken Sie hier C-SPC, gehen Sie dann zu verschiedenen Positionen + innerhalb dieses Dokuments und verwenden Sie C-SPC, um weitere + Markierungen zu setzen. Geben Sie anschließend C-u C-SPC so oft + ein, bis Sie wieder an dieser Position angelangt sind. + +Die meisten Emacs-Befehle akzeptieren ein numerisches Argument, das in +der Regel als Wiederholungszähler dient (d.h., wie oft der Befehl +ausgeführt werden soll). Eingegeben wird diese Zahl mit C-u, dann die +Ziffern und dann der Befehl selbst. Alternativ können Sie die +META-Taste (bzw. EDIT- oder ALT-Taste) gedrückt halten und dann die +Ziffern des Wiederholungszählers eingeben. Wir empfehlen allerdings, +die C-u-Methode zu lernen, da sie mit jedem Terminal funktioniert. +Das numerische Argument wird auch `Präfix-Argument' genannt, da man es +vor dem zugehörigen Befehl eingibt. + +Beispiel: C-u 8 C-f bewegt den Cursor acht Zeichen vorwärts. + +>> Versuchen Sie, C-n oder C-p mit einem numerischen Argument zu + verwenden und bewegen Sie den Cursor mit nur einem Befehl ungefähr + hierher. + +Wie gesagt, die meisten Befehle verwenden das numerische Argument als +Wiederholungszähler, jedoch nicht alle. Einige davon, die allerdings +noch nicht besprochen wurden, benützen es als Flag (`Flagge'), d.h., +allein das Vorhandensein eines Präfix-Arguments, unabhängig von seinem +Wert, signalisiert dem Befehl, etwas anderes zu tun. + +C-v und M-v sind weitere Ausnahmen. Gibt man diesen Befehlen einen +Parameter n, dann verschieben sie den Bildschirminhalt nicht um eine +ganze Bildschirmseite, sondern um n Zeilen. Beispiel: C-u 4 C-v +verschiebt den Bildschirminhalt um vier Zeilen. + +>> Versuchen Sie jetzt C-u 8 C-v auszuführen. + +Der Bildschirminhalt sollte jetzt um acht Zeilen nach oben verschoben +sein. Wollen Sie ihn nach unten verschieben, dann geben Sie M-v mit +einem numerischen Argument ein. + +Wenn Sie eine graphische Oberfläche wie X oder MS-Windows verwenden, +dann befindet sich ein schmaler, langgezogener rechteckiger Bereich auf +der linken oder rechten Seite des Emacs-Fensters. Dieser Bereich +wird Scrollbar genannt (`Verschiebungsbalken'). Sie können Text +verschieben, indem Sie mit der Maus auf den Scrollbar klicken. + +>> Drücken Sie die mittlere Taste (oder die linke und rechte Taste + gleichzeitig, falls Sie eine Zwei-Tasten-Maus verwenden) innerhalb + des Scrollbar-Bereichs. Das sollte den Text zu einer Position + verschieben, die davon abhängt, wie weit oben oder unten Sie + geklickt haben. + +>> Bewegen Sie nun die Maus auf und ab, während Sie die mittlere Taste + gedrückt halten. Sie werden sehen, daß der Text entsprechend der + Mausbewegungen nach oben oder unter verschoben wird. + + +* WENN EMACS NICHT MEHR REAGIERT +-------------------------------- + +Wenn Emacs `hängt', also auf keine Ihrer Eingaben reagiert, drücken +Sie C-g. Sie können C-g auch dazu benützen, einen Befehl zu stoppen, +der zu lange braucht. + +Eine andere Anwendung ist, einen teilweise eingegebenen Befehl zu +verwerfen, z.B. ein irrtümlich eingetipptes numerisches Argument zu +entfernen. + +>> Geben Sie C-u 100 ein, um ein numerisches Argument 100 zu + spezifizieren, und drücken Sie dann C-g. Wenn Sie jetzt C-f + ausführen, dann bewegt sich der Cursor genau ein Zeichen vorwärts, + da Sie ja das numerische Argument mittels C-g gelöscht haben. + +Wenn Sie aus Versehen gedrückt haben, können Sie dies ebenfalls +mit C-g rückgängig machen. + + +* DEAKTIVIERTE BEFEHLE +---------------------- + +Ein paar Befehle von Emacs sind deaktiviert (`disabled'), damit +Anfänger sie nicht unabsichtlich benutzen. + +Wenn Sie einen solchen Befehl eingeben, dann gibt Emacs eine Meldung +aus und fragt Sie, ob Sie ihn wirklich ausführen wollen. + +Antworten Sie mit y (für `yes') oder drücken Sie die Leertaste, wenn +Sie den Befehl ausführen wollen, sonst mit n. + +>> Geben Sie C-x C-l ein (das ist ein deaktivierter Befehl) und + drücken Sie n als Antwort auf die Frage. + + +* FENSTER +--------- + +Emacs kann mehrere Fenster (`windows') haben, von denen jedes seinen +eigenen Text darstellt. Später erklären wir, wie man mit Fenstern +umgeht. Hier wollen wir nur erklären, wie man ein (vielleicht +irrtümlich erzeugtes) Fenster wieder entfernt und zum normalen +Ein-Fenster-Editieren zurückkommt. Der Befehl ist einfach: + + C-x 1 Ein Fenster (d.h., schließe alle anderen Fenster) + +Das ist C-x gefolgt von der Ziffer 1. C-x 1 expandiert das Fenster, +in dem der Cursor sich befindet, sodaß es den ganzen Bildschirm +erfaßt. Alle anderen Fenster werden gelöscht. + +[Anmerkung: Emacs verwendet das Wort Fenster (`windows') in einem +anderen Sinn, als Sie es vielleicht gewöhnt sind. Wenn Sie einen +Textbildschirm vor sich haben, dann ist die Terminologie eindeutig. +Wenn Sie allerdings eine graphische Oberfläche benutzen, dann +bezeichnet ein Emacs-Fenster einen Teilbereich des Fensters (von Ihrer +graphischen Oberfläche erzeugt), in dem Emacs läuft, in völliger +Analogie zum Textmodus. Für (graphische) Fenster im herkömmlichen +Sinn verwenden die Emacs-Entwickler den Ausdruck Rahmen (`frame').] + +>> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein. + +>> Drücken Sie jetzt C-h k C-f. + Beachten Sie, wie das Fenster schrumpft und ein neues dazukommt, + welches die (englische) Dokumentation des C-f Befehls anzeigt. + +>> Geben Sie jetzt C-x 1 ein. Das Dokumentationsfenster verschwindet + wieder. + + +* EINFÜGEN UND LÖSCHEN +---------------------- + +Wenn Sie Text einfügen wollen, dann geben Sie ihn einfach ein. +Sichtbare Zeichen, z.B. A, 7, * usw. werden als Text von Emacs sofort +eingefügt. Drücken Sie (die Zeilenvorschubtaste, meistens +mit `Enter' oder nur mit einem Rückwärts-Hakenpfeil beschriftet), um +ein Zeilenvorschubzeichen einzufügen. + +Sie können das zuletzt eingegebene Zeichen löschen, indem Sie +drücken. ist einer Taste auf der Tastatur zugeordnet, die +mit `Del' oder `Entf' beschriftet ist. In manchen Fällen dient die +Backspace-Taste (oft auch nur als Rückwärtspfeil beschriftet) als +, aber nicht immer! + +Allgemein gesprochen löscht das Zeichen unmittelbar vor der +aktuellen Cursorposition. + +[Beachten Sie, daß ein logischer Befehlsname ist, der auf die - jeweilige Tastatur abgebildet wird. Lesen Sie im Abschnitt `Rebinding - Keys in Your Init File' des Emacs-Handbuches nach, wie Sie - gegebenenfalls die Tastaturbelegung verändern können.] ++jeweilige Tastatur abgebildet wird. Lesen Sie im Abschnitt `Init ++Rebinding' des Emacs-Handbuches nach, wie Sie gegebenenfalls die ++Tastaturbelegung verändern können.] + +>> Probieren Sie das jetzt aus: Geben Sie ein paar Zeichen ein und + löschen Sie sie wieder mit . Sie brauchen sich keine + Sorgen zu machen, dieses Dokument zu verändern: Was Sie hier lesen, + ist nur eine (persönliche) Kopie des originalen Dokuments. + +Wenn eine Textzeile zu lang wird für eine Bildschirmzeile, dann wird +sie auf einer zweiten Bildschirmzeile `fortgesetzt'. Ein +`Backslash'-Zeichen (`\') bzw. ein kleiner gebogener Pfeil (bei +graphischen Oberflächen) am rechten Rand verdeutlicht das. + +>> Fügen Sie Text ein, bis Sie den rechten Rand erreicht haben. Fügen + Sie weiter Text ein. Beobachten Sie, wie eine Fortsetzungszeile + erscheint. + +>> Verwenden Sie so oft, bis die Textzeile wieder auf eine + Bildschirmzeile paßt. Die Fortsetzungszeile verschwindet wieder. + +Sie können das Zeilenvorschubzeichen wie jedes andere Zeichen löschen: +Die Zeilen vor und nach ihm werdan dann zu einer zusammengehängt. Ist +diese länger als die Bildschirmbreite, erscheint eine +Fortsetzungszeile. + +>> Bewegen Sie den Cursor zum Anfang der Zeile und geben Sie + ein: Die momentane Zeile wird an die vorige angehängt. + +>> Geben Sie ein, um wieder ein Zeilenvorschubzeichen + einzufügen. + +Denken Sie daran, daß die meisten Emacs-Befehle mit einem +Wiederholungszähler aufgerufen werden können. Tun Sie das mit einem +Textzeichen, dann wird es entsprechend dem numerischen Parameter +wiederholt. + +>> Drücken Sie C-u 8 *, und es wird ******** eingefügt. + +Bis jetzt kennen Sie die Grundbefehle, um Text in Emacs einzugeben und +Fehler zu korrigieren -- fast analog zu den Bewegungsbefehlen ist es +möglich, ganze Wörter, Sätze oder Zeilen zu löschen: + + lösche ein Zeichen vor dem Cursor + C-d lösche das Zeichen unter dem Cursor + + M- lösche bis zum (nächsten) Wortanfang unmittelbar + vor dem Cursor + M-d lösche bis zum (nächsten) Wortende nach + (bzw. unter) dem Cursor + + C-k lösche von momentaner Cursorposition bis zum Ende + der Zeile + M-k lösche bis zum nächsten Satzende nach + (bzw. unter) dem Cursor + +Beachten Sie bitte, daß je nach Tastaturbelegung die Del- +(Entf-) oder die Backspace- (Rückwärtspfeil-) Taste sein kann. + +Eine andere, einheitliche Methode zum Löschen von Text ist das +Befehlspaar C-@ (oder C-SPC) und C-w. Gehen sie zum Anfang des zu +löschenden Textes und drücken Sie C-@ oder C-SPC. Gehen Sie dann zum +Ende des zu löschenden Textes und drücken Sie C-w, um ihn zu +entfernen. + +>> Bewegen Sie den Cursor zum Buchstaben `E' am Anfang des letzten + Absatzes. +>> Drücken Sie C-SPC. Emacs sollte die Meldung `Mark set' am unteren + Bildschirmrand zeigen. +>> Bewegen Sie den Cursor zum Buchstaben `A' in der zweiten Zeile des + letzten Absatzes. +>> Geben Sie C-w ein. Der ganze Text, beginnend mit dem `E' und + endend vor dem `A', ist nun gelöscht. + +Löschen Sie mehr als ein Zeichen auf einmal, dann speichert Emacs den +gelöschten Text, damit Sie ihn bei Bedarf wieder zurückholen können. +Einfügen von bereits gelöschtem Text wird im englischen Dokumentation +von Emacs als `yanking' (wörtlich `herausreißen') bezeichnet. Sie +können den gelöschten Text an einer beliebigen Stelle wieder +einzufügen. Solange Sie nichts neues löschen, steht Ihnen dieser +gelöschte Textteil immer wieder zu Verfügung. Der Befehl dazu ist C-y +(das Ypsilon steht für `yank'). + +Emacs unterscheidet zwei Klassen von Löschbefehlen (was man im +Deutschen leider nicht gut wiedergeben kann): `killing' (umbringen) +und `deleting' (löschen). Wenn man sich vorstellt, daß `yanking' den +Begriff `von den Toten erwecken' darstellt, dann hat man ungefähr eine +Vorstellung von der Metapher -- Von einem `kill'-Befehl gelöschter +Text wird gespeichert und kann bei Bedarf mit C-y zurückgeholt +werden. Von einem `delete'-Befehl entfernter Text (in der Regel +einzelne Zeichen, leere Zeilen und Zwischenräume) wird nicht extra +gespeichert und kann daher auch nicht zurückgeholt werden. + +>> Bringen Sie den Cursor an den Anfang einer nicht-leeren Zeile und + geben Sie C-k ein, um die Zeile zu löschen. + +>> Geben Sie C-k ein zweites Mal ein. Nun wird der Zeilenvorschub + ebenfalls entfernt. + +Das letzte Beispiel zeigt, daß ein einmaliges Ausführen von C-k den +Zeileninhalt löscht, und daß ein nochmaliger C-k-Befehl die Zeile +selbst löscht. Ein numerisches Argument für C-k wird speziell +behandelt: es löscht die angegebene Anzahl von Zeilen UND die +Zeilenvorschübe: C-u 2 C-k löscht zwei Zeilen komplett; zweimal C-k +löscht dagegen nur eine Zeile. + +Wie schon erwähnt, bringt C-y den zuletzt gelöschten (`gekillten') +Text zurück -- man kann diesen Text einfügen, wo man will: an der +ursprünglichen Stelle, an einer anderen Stelle, oder sogar in einer +anderen Datei. Mehrmaliges Ausführen von C-y fügt den Text mehrmals +ein. + +>> Probieren Sie jetzt C-y, um diesen Effekt zu sehen. + +Führen Sie C-k mehrmals hintereinander aus, dann wird der so +gelöschte Text auf einmal gespeichert; C-y bringt dann den gesamten +Text zurück. + +>> Drücken Sie mehrmals C-k. + +Holen Sie jetzt den Text `von den Toten' zurück: + +>> Drücken Sie C-y. Bewegen Sie dann den Cursor ein paar Zeilen nach + unten und drücken Sie C-y erneut. Der eben eingefügte Text wird + noch einmal an anderer Stelle kopiert. + +Wie können Sie gelöschten Text wieder einfügen, wenn Sie in der +Zwischenzeit noch etwas anderes `gekillt' haben? C-y würde das +zuletzt gelöschte Textstück zurückholen, was aber nicht das gewünschte +ist. Verwenden Sie nun M-y (unmittelbar nach der erstmaligen +Ausführung von C-y), um den gerade mit C-y eingefügten Textteil durch +ein früher gelöschtes Textstück zu ersetzen. Durch wiederholtes +Betätigen von M-y kommen immer ältere gelöschte Textteile zum +Vorschein. Haben Sie das gewünschte gefunden, dann brauchen Sie +nichts weiter zu tun. Lassen Sie den eingefügten Text so wie er ist +und setzen Sie das Editieren fort. + +Drücken Sie M-y immer weiter, dann kommen Sie irgendwann wieder an den +Anfangspunkt zurück (Emacs zeigt Ihnen dann wieder das zuletzt +gelöschte Textfragment), haben also den gesamten Löschring +durchgesehen. + +>> Löschen Sie eine Zeile, bewegen Sie den Cursor zu einer anderen + Position und löschen Sie eine weitere Zeile. + Drücken Sie dann C-y, um die zweite gelöschte Zeile zurückzuholen. + Drücken Sie jetzt M-y, und die erste gelöschte Zeile erscheint + statt der zweiten. + Führen Sie nun ein paar weitere M-y-Befehle aus und beobachten Sie + das Ergebnis. Wiederholen Sie das solange, bis die zweite Zeile + wieder erscheint. + Wenn Sie wollen, dann können Sie M-y mit positiven oder negativen + Argumenten aufrufen, um direkt zu einem bestimmten Eintrag im + Löschring zu kommen. + +Unter dem X Window System besteht auch die Möglichkeit, mit der linken +Maustaste einen Textteil zu markieren (er erscheint dann normalerweise +grau unterlegt). Der Befehl C-w löscht diesen markierten Textteil (in +Emacs auch Region genannt) und fügt ihn in den Löschring ein. + +Dasselbe geht auch ohne Maus: bewegen Sie den Cursor zum Beginn des zu +löschenden Textteils, drücken Sie C-SPC, um eine Markierung für den +Beginn einer Region zu setzen, gehen Sie dann zum Ende des zu +löschenden Textes und drücken Sie C-w. + +Der lange Name für C-w ist kill-region (weiter unten wird erklärt, wie +man Befehle mit langen Namen ausführen kann). + + +* UNDO +------ + +Wenn Sie etwas am Text geändert haben und nachträglich bemerken, daß +das ein Fehler war, so können Sie den Fehler mit dem Befehl C-x u +ungeschehen machen (`undo'). + +Normalerweise macht C-x u das Verhalten von einem Befehl ungeschehen; +führen Sie C-x u mehrmals hintereinander aus, dann werden die +jeweiligen vorigen Befehle widerrufen. + +Es gibt jedoch zwei Ausnahmen: Befehle, die den Text nicht ändern, +werden nicht gezählt (z.B. Cursorbewegungen und Blättern im Text). +Und Befehle, die sich selbst einfügen (`self-inserting': Drücken Sie +zum Beispiel die `u'-Taste, dann wird der Buchstabe u eingefügt) +werden in Gruppen von bis zu 20 Zeichen wiederhergestellt, um die +Anzahl der notwendigen C-x u-Befehle zu reduzieren. + +>> Löschen Sie diese Zeilen mit C-k und drücken Sie anschließend + mehrmals C-x u, und die Zeilen erscheinen wieder. + +C-_ ist ein alternativer Undo-Befehl; er arbeitet genauso wie C-x u, +ist jedoch einfacher zu tippen, wenn Sie den Befehl mehrmals +hintereinander ausführen möchten. Der Nachteil von C-_ ist, daß bei +manchen Tastaturen nicht sofort einsichtig ist, wie man das eingibt. + +Eine weitere Eingabemöglichkeit bei vielen Terminals ist C-/. + +Ein numerisches Argument für C-_, C-x u oder C-/ wird als +Wiederholungszähler interpretiert. + +Der Unterschied zwischen der Undo-Funktion und dem oben erklärten C-y +ist, daß erstere gelöschten Text an exakt der gleichen Position wie +vorher wiederherstellt, wohingegen C-y den gelöschten Text an der +momentanen Cursorposition einfügt. Im übrigen kann auch `gekillter' +Text wieder hergestellt werden; der Unterschied zwischen `killing' und +`yanking' betrifft nur C-y, aber nicht die Undo-Funktion. + + +* DATEIEN +--------- + +Um editierten Text zu sichern, muß man ihn in einer Datei (`file') +speichern (`save'). Wird Emacs beendet, ohne daß man vorher den Text +gespeichert hat, dann ist der Text verloren. + +Will man andererseits bereits gesicherten Text mit Emacs editieren, so +muß die entsprechende Datei in Emacs geladen werden (im Englischen +wird das als `finding' (finden) bzw. als `visiting' (besuchen) +bezeichnet). + +Eine Datei `finden' bedeutet, daß man den Inhalt dieser Datei mit +Emacs bearbeitet -- es ist fast so, als ob man die Datei selbst +editiert. Jedoch werden Änderungen an dieser Datei erst dann +dauerhaft, wenn man sie speichert; auf diese Weise wird vermieden, daß +Dateien in einem halb-geänderten Zustand im Betriebssystem bleiben. +Es wird sogar die originale, unveränderte Datei unter einem anderen +Namen gesichert, falls Sie später entscheiden sollten, daß die +Änderungen ein Fehler sind. + +Wenn Sie die untere Bildschirmkante genauer betrachten, dann werden +Sie eine Zeile finden, die mit einem oder mehreren Bindestrichen +beginnt und endet; sie enthält unter anderem die Zeichenkette +`TUTORIAL.de'. An dieser Position befindet sich immer der Name der +Datei, die Sie momentan bearbeiten (`visit'). Gerade in diesem +Augenblick bearbeiten Sie eine Datei mit dem Namen `TUTORIAL.de' +(genauer gesagt, Emacs hat eine identische Kopie geladen). + +Die Befehle für das Laden und Speichern von Dateien bestehen aus zwei +Zeichen: Beide beginnen mit CONTROL-x. Es gibt eine ganze Reihe von +Kommandos, die mit C-x beginnen; viele von ihnen haben mit Dateien, +Puffern (s.u.) und ähnlichem zu tun. All diese Befehle sind zwei, +drei oder vier Zeichen lang -- Sie haben bereits C-x u kennengelernt. + +Um eine Datei in Emacs laden zu können, muß man dem Lade-Befehl den +Namen der Datei mitteilen. Der Befehl `liest ein Argument vom +Terminal' (in diesem Fall ist das der Name der Datei). Nachdem Sie + + C-x C-f (lade Datei) + +eingegeben haben, werden Sie von Emacs nach dem Dateinamen gefragt. +Die Zeichen, die Sie eingeben, werden in der untersten Bildschirmzeile +dargestellt, dem sogenannten Minipuffer (`minibuffer'). Sie können +ganz normale Emacs-Editierfunktionen verwenden, um den Dateinamen zu +ändern. + +Sie können jederzeit die Eingabe (auch von anderen Befehlen, die den +Minipuffer benutzen) mit C-g abbrechen. + +>> Drücken Sie C-x C-f und dann C-g. Der letzte Befehl verwirft + jegliche Eingabe in den Minipuffer und bricht außerdem den + Ladebefehl ab (Sie haben also keine Datei geladen). + +Wenn Sie den Dateinamen fertig eingegeben haben, drücken Sie , +um den Befehl abzuschließen; C-x C-f wird ausgeführt und lädt die von +Ihnen ausgesuchte Datei. Der Minipuffer verschwindet wieder, sobald +C-x C-f beendet ist. + +Ein paar Augenblicke später erscheint der Dateiinhalt auf dem +Bildschirm, und Sie können den Text editieren. Wenn Sie Ihre +Änderungen permanent speichern wollen, dann drücken Sie + + C-x C-s (sichere Datei) + +und Emacs kopiert den Text in die Datei. Beim ersten Mal benennt +Emacs die Originaldatei um, damit sie nicht verloren ist. Der neue +Name besteht aus dem Originalnamen plus einer angehängten Tilde `~' +[unter einigen Betriebssystemen wird statt dessen die +Namenserweiterung durch `.bak' ersetzt]. + +Emacs schreibt den Namen der gesicherten Datei in die unterste Zeile, +sobald C-x C-s fertig ausgeführt ist. Sie sollten den editierten Text +oft speichern, damit nicht allzuviel bei einem etwaigen Systemabsturz +verloren geht. + +>> Geben Sie C-x C-s ein, um Ihre Kopie der Einführung zu sichern. + Die Ausgabe am unteren Bildschirmrand sollte `Wrote ...TUTORIAL.de' + sein. + +[Eine erste Abhilfe zur Umschiffung des C-s-Problems schafft die +Befehlsfolge `M-x save-buffer', welche exakt das gleiche wie C-x C-s +bewirkt.] + +Sie können eine existierende Datei anschauen (`view') oder editieren. +Sie können aber auch eine Datei laden, die noch gar nicht existiert, +um so eine neue Datei zu erzeugen: Sie öffnen dazu die +(nicht-existente) Datei, die natürlich leer ist, und beginnen dann +einfach Text einzugeben. Wenn Sie jetzt die Datei speichern, erzeugt +Emacs wirklich die Datei und kopiert den editierten Text in sie +hinein. + + +* PUFFER +-------- + +Manche Editoren können nicht mehr als eine Datei gleichzeitig +bearbeiten. Wenn Sie jedoch eine zweite Datei in Emacs mit C-x C-f +laden, dann bleibt die erste in Emacs. Sie können zur ersten +zurückschalten, indem Sie noch einmal C-x C-f eingeben. Auf diese +Weise lassen sich eine ganze Reihe von Dateien laden und bearbeiten. + +>> Erzeugen Sie eine Datei mit dem Namen `foo', indem Sie + + C-x C-f foo + + eingeben. Tippen Sie etwas Text ein, editieren Sie ihn und + speichern Sie ihn abschließend mit C-x C-s. Kehren Sie + anschließend zu dieser Einführung zurück mit + + C-x C-f TUTORIAL.de + +Emacs speichert jeden Text, der aus einer Datei in Emacs geladen wird, +in einem `Puffer'-Objekt. Um eine Liste der momentan existierenden +Puffer zu sehen, geben Sie + + C-x C-b (liste Puffer auf) + +ein. + +>> Probieren Sie jetzt C-x C-b. + +Beachten Sie, daß jeder Puffer einen Namen hat und manche auch mit dem +Namen einer Datei assoziiert sind, dessen Inhalt sie enthalten. +Manche Puffer aber haben keinen zugehörige Datei, z.B. der mit dem +Namen `*Buffer List*'. Er wurde von dem Befehl C-x C-b erzeugt, um +die Pufferliste darzustellen. JEDER Text, den Sie innerhalb Emacs in +einem Fenster sehen, ist immer ein Ausschnitt eines Puffers. + +>> Geben Sie jetzt C-x 1 ein, um die Pufferliste wieder verschwinden + zu lassen. + +Wenn Sie Änderungen an einer Datei vornehmen und anschließend eine +andere Datei laden, dann wird die erste nicht gespeichert. Die +Änderungen bleiben in Emacs, und zwar in dem zur ersten Datei +gehörigen Puffer. Das ist sehr praktisch, bedeutet jedoch +gleichzeitig, daß man einen Befehl braucht, um den Puffer der ersten +Datei permanent abzuspeichern. Es wäre äußerst umständlich, müßte man +jedesmal C-x C-f eingeben, um den Puffer dann mit C-x C-s +abzuspeichern. Daher gibt es den Befehl + + C-x s (sichere mehrere Puffer) + +Dieser Befehl fragt Sie bei jedem Puffer, der Änderungen enthält, ob +Sie ihn speichern wollen. + +>> Fügen Sie eine Textzeile ein und drücken Sie dann C-x s. Emacs + fragt Sie jetzt, ob Sie einen Puffer mit dem Namen TUTORIAL.de + speichern wollen. Bejahen Sie, indem Sie `y' drücken. + +[Anmerkung: Sie verändern nicht die Originaldatei, sondern eine +persönliche Kopie.] + + +* WEITERE BEFEHLE +----------------- + +Es existieren viel mehr Emacs-Befehle als Tasten auf der Tastatur. Um +sie trotzdem alle benutzen zu können, gibt es zwei Erweiterungen: + + C-x Zeichenerweiterung. Gefolgt von einem Zeichen. + M-x Befehlserweiterung. Gefolgt von einem (langen) Namen. + +[Das `x' steht für das englische Wort `extension'.] Diese beiden +Befehle sind prinzipiell sehr nützlich, werden aber weniger oft +benötigt als die bisher vorgestellten. Sie haben bereits zwei Befehle +aus der ersten Kategorie kennengelernt: C-x C-f, um eine Datei zu +laden, und C-x C-s, um sie zu speichern. Ein weiteres Beispiel ist +C-x C-c, um Emacs zu beenden -- Sie brauchen sich keine Gedanken zu +machen, ob Sie beim Beenden von Emacs vielleicht vergessen haben, +Daten oder Text zu sichern -- Emacs fragt bei jedem geändertem Puffer +(bzw. Datei), ob er gespeichert werden soll. + +C-z ist der Befehl um Emacs *zeitweise* zu verlassen; es ist also +möglich, später an der unterbrochenen Stelle nahtlos weiterzuarbeiten. + +Auf den meisten Systemen wie Linux oder FreeBSD wird Emacs +`suspendiert', wenn Sie C-z drücken, d.h., Sie kehren zurück zur +Eingabezeile des Betriebssystems, ohne Emacs zu beenden. In der Regel +können Sie dann mittels des Befehls `fg' bzw. `%emacs' wieder zu Emacs +umschalten. Unter X Window System bewirkt C-z in der Regel, daß Emacs +ikonofiziert wird, also als Ikone (`Icon') darauf wartet, mit einem +Mausklick bei Bedarf wieder vergrößert zu werden. + +Bei Betriebssystemen bzw. Shells, die Suspension von Programmen nicht +implementiert haben (z.B. MS-DOS), startet C-z einen +System-Befehlsinterpreter innerhalb von Emacs (`subshell'). +Normalerweise müssen Sie dann `exit' in die Befehlszeile schreiben, um +zu Emacs zurückzukehren. + +Der beste Zeitpunkt für C-x C-c ist, wenn Sie sich ausloggen +(bzw. Ihren Computer ausschalten); Sie sollten Emacs ebenfalls +beenden, wenn Sie Emacs von einem anderen Programm aus aufgerufen +haben (z.B. einem Programm, das E-mails liest), da solche Programme +oft nicht wissen, wie sie mit Emacs im Suspend-Modus umgehen sollen. +In allen anderen Fällen ist es meistens günstiger, C-z zu benutzen und +Emacs nicht zu beenden, damit man im Bedarfsfalle sofort an der +gleichen Stelle weiterarbeiten kann. + +Hier ist eine Liste aller C-x-Befehle, die Sie bereits kennengelernt +haben: + + C-x C-f lade Datei + C-x C-s sichere Datei + C-x C-b zeige Pufferliste an + C-x C-c beende Emacs + C-x u widerrufen + C-x 1 lösche alle Fenster außer eines + +Ein Beispiel für einen Befehl mit langen Namen ist replace-string, der +global (also in der ganzen Datei bzw. Puffer) eine Zeichenkette durch +eine andere ersetzt. Wenn Sie M-x drücken, dann fragt Sie Emacs in +der untersten Bildschirmzeile nach dem Namen des Befehls (in diesem +Fall `replace-string'). Geben Sie jetzt `repl s' ein und Emacs +vervollständigt den Namen. Schließen Sie die Eingabe mit ab. +[ bezeichnet die Tabulatortaste.] + +>> Bewegen Sie den Cursor zu der leeren Zeile sechs Zeilen unter + dieser. Geben Sie dann + + M-x repl sBildschirmText + + ein und kehren Sie mit C-u C-SPC an diese Position zurück. + + Beachten Sie wie diese Bildschirmzeile jetzt aussieht: Sie haben + den Wortteil B-i-l-d-s-c-h-i-r-m durch `Text' ersetzt (und zwar im + ganzen Dokument beginnend von der Cursorposition). + +>> Drücken Sie jetzt C-x u, um diese Änderungen auf einmal rückgängig + zu machen. + + +* AUTOMATISCHES SPEICHERN +------------------------- + +Haben Sie Änderungen an einem Dokument vorgenommen, sie jedoch nicht +gespeichert, dann können sie verloren gehen, falls der Computer +abstürzt. Um Sie davor zu schützen, sichert Emacs in bestimmten +Zeitintervallen jede von Ihnen editierte Datei in sogenannten +`auto-save'-Dateien. Sie sind daran zu erkennen, daß sie mit einem # +beginnen und enden; z.B. ist `#hello.c#' der Name der Auto-save-Datei +von `hello.c'. Wenn Sie Ihren Text auf normalem Wege speichern, wird +die Auto-save-Datei gelöscht. + +Stürzt der Rechner einmal wirklich ab, so können Sie die Änderungen, +die beim letzten Auto-Save gespeichert worden sind, folgendermaßen +wiederherstellen: Laden Sie die Datei auf normalem Wege (die Datei, +die Sie bearbeitet haben, nicht die Auto-save-Datei) und geben Sie +dann `M-x recover-file' ein. Wenn Emacs Sie um Bestätigung +fragt, antworten Sie mit `yes', um den Inhalt der +Auto-save-Datei zu übernehmen. + + +* DER ECHO-BEREICH +------------------ + +Geben Sie Befehle langsam ein, dann zeigt Ihnen Emacs Ihre eigene +Eingabe am unteren Bildschirmrand im sogenannten Echo-Bereich (`echo +area'). Der Echo-Bereich enthält die unterste Bildschirmzeile. + +[Mini-Puffer und Echo-Bereich fallen normalerweise zusammen, sind aber +nicht das gleiche, da innerhalb des Echo-Bereiches nichts eingegeben +werden kann.] + + +* DIE STATUSZEILE +------------------ + +Die Bildschirmzeile unmittelbar über dem Echo-Bereich ist die +Statuszeile (`mode line'). Sie schaut ungefähr so aus: + +-1:** TUTORIAL.de 58% L865 (Fundamental)---------------------- + +Diese Zeile gibt nützliche Hinweise über den momentanen Zustand von +Emacs und den Text, den Sie gerade editieren. + +Sie wissen bereits, was der Dateiname bedeutet. `--NN%--' zeigt die +momentane Position innerhalb des Textes an: NN Prozent davon sind +oberhalb des Bildschirms. Ist der Dateianfang zu sehen, dann +erscheint `Top' anstelle von `00%'. Analog dazu erscheint `Bot' (für +das englische Wort `bottom'), wenn das Dateiende sichtbar ist. Wenn +Sie einen Text betrachten, der komplett auf den Bildschirm paßt, dann +erscheint `All'. + +Das `L' und die nachfolgenden Ziffern geben die aktuelle Zeilennummer +an, in denen sich der Cursor befindet. + +Am Anfang der Zeile sehen Sie `-1:**'. Die Zeichen vor dem +Doppelpunkt geben an, in welcher Kodierung der Text ist und welche +Eingabemethode verwendet wird. Dazu mehr weiter unten im Abschnitt +`MULE'. + +[Anstelle des Doppelpunktes können auch ein `\' und `/' stehen, falls +Sie Dateien editieren, die der MS-DOS- bzw. der +Macintosh-Textkonvention folgen: MS-DOS verwendet als +Zeilenvorschubzeichen CR-LF (Carriage Return gefolgt von Linefeed), +während Macintosh nur CR benutzt. Emacs verwendet standardmäßig LF.] + +Die Sterne nach dem Doppelpunkt bedeuten, daß Sie Änderungen am Text +vorgenommen haben. Wenn Sie gerade eine Datei in Emacs geladen oder +gespeichert haben, dann erscheinen statt der Sterne zwei Bindestriche. +Prozentzeichen nach dem Doppelpunkt stehen für eine Datei, die nur +gelesen, aber nicht editiert werden kann. + +Der eingeklammerte Teil gibt an, in welchem Editiermodus Sie sich +befinden. Der Standardmodus heißt `Fundamental' (Sie verwenden ihn +gerade); er ist ein Beispiel für einen Hauptmodus (`major mode'). + +Emacs hat viele Hauptmodi implementiert. Manche davon werden für +verschiedene (Computer-)Sprachen und/oder Textarten verwendet, +z.B. Lisp-Modus, Text-Modus usw. Es kann immer nur ein Hauptmodus +aktiviert sein, und der Name befindet sich dort, wo jetzt gerade +`Fundamental' steht. + +Einige Befehle verhalten sich jeweils in verschiedenen Hauptmodi +anders. Es gibt zum Beispiel einen Befehl, um einen Kommentar in den +Quellcode eines Computerprogramm einzufügen -- die Tastenfolge dafür +ist zwar (in der Regel) die gleiche, doch wird ein Kommentar mit der +für die aktuelle Programmiersprache gültigen Syntax eingefügt +(z.B. `// ...' für ein Programm in C++ oder `; ...' für Lisp). Um in +einen Hauptmodus zu schalten, hängen Sie einfach das englische Wort +`-mode' an den (kleingeschriebenen) Namen des Modus an und führen den +Befehl mittels M-x aus. Beispiel: `M-x fundamental-mode' schaltet in +den Fundamental-Modus. Weitere wichtige Modi sind c-mode, perl-mode, +lisp-mode, text-mode u.a. Die meisten davon werden automatisch +aktiviert, und zwar entsprechend der Namenserweiterung der zu ladenden +Datei: So wird z.B. durch das Laden der Datei foo.c automatisch der +C-Modus aktiviert. + +Wenn Sie deutschen oder englischen Text bearbeiten, dann sollten Sie +den Textmodus verwenden. [Falls Ihre Tastatur keine Umlaut-Tasten +hat, müssen Sie noch einen weiteren Nebenmodus aktivieren. Lesen Sie +dazu den Abschnitt `MULE' weiter unten.] + +>> Geben Sie `M-x text mode' ein. + +Sie brauchen keine Angst zu haben, daß sich die bisher dargestellte +Tastaturbelegung von Emacs stark ändert. Beobachten Sie z.B. die +Befehle M-f und M-b: Apostrophe werden nun als Teil eines Wortes +betrachtet (wie man's leicht an diesem Beispiel ausprobieren kann), +wohingegen im Fundamentalmodus Apostrophe als Worttrenner +(`word-separator') behandelt werden. + +Normalerweise ist das eben genannte Beispiel die Methode von +Hauptmodi: Die meisten Befehle tun `das gleiche', arbeiten aber +jeweils ein bißchen anders. + +Dokumentation zum derzeit aktuellen Hauptmodus bekommen Sie mit C-h m. + +>> Drücken Sie C-u C-v ein- oder mehrmals, um diese Zeile in die Nähe + des oberen Bildschirmrands zu bringen. +>> Lesen Sie nun mittels C-h m die englische Dokumentation zum + Textmodus. +>> Entfernen Sie schließlich das Dokumentationsfenster mit C-x 1. + +Neben den Hauptmodi gibt es auch Nebenmodi (`minor modes'). Nebenmodi +sind keine Alternativen zu Hauptmodi, sondern stellen Ergänzungen zur +Verfügung, die (normalerweise) in allen Hauptmodi funktionieren +(z.B. der Überschreibmodus: Zeichen werden nicht eingefügt, sondern +überschreiben den Text). Man kann Nebenmodi ein- und ausschalten +unabhängig von anderen Nebenmodi und Hauptmodi; mit anderen Worten, +Sie können zu Ihrem Hauptmodus keinen, einen oder sogar mehrere +Nebenmodi haben. + +Ein Nebenmodus, welcher äußerst nützlich ist, besonders für das +Editieren von Text, ist der automatische Zeilenumbruch (`Auto Fill +mode'). Ist dieser Modus aktiviert, dann bricht Emacs die laufende +Zeile selbsttätig zwischen Wörtern um, sobald sie zu lang wird. + +Sie können den Zeilenumbruchmodus einschalten mittels `M-x auto fill +mode'. Wenn der Modus aktiviert ist, können Sie ihn mit dem +gleichen Befehl wieder ausschalten. Mit anderen Worten, der Befehl +verhält sich wie ein Lichttaster, der bei Betätigung entweder das +Licht ein- oder ausschaltet, je nachdem, ob das Licht vorher +ausgeschaltet bzw. eingeschaltet war. Wir sagen, daß dieser Befehl +den Modus umschaltet (`toggle'). + +>> Geben Sie nun M-x auto-fill-mode ein. Fügen Sie + anschließend eine Zeile ein, die aus lauter `asdf ' besteht, und + zwar so lange, bis die Zeile automatisch umgebrochen wird. + Vergessen Sie nicht, Leerzeichen einzugeben, da nur dort ein + Umbruch erfolgt. + +Normalerweise ist die maximale Zeilenlänge 70 Zeichen (d.h., der linke +Rand ist ganz links auf Position 1 und der rechte Rand auf +Position 70), jedoch können Sie das mit dem Befehl C-x f ändern. +Geben Sie den neuen (rechten) Rand als numerischen Parameter ein. + +>> Geben Sie C-x mit dem Argument 20 ein (C-u 2 0 C-x f). Schreiben + Sie nun etwas Text und beobachten Sie, wie Emacs die laufende Zeile + an Position 20 umbricht. Setzen Sie anschließend den Rand wieder + zurück auf 70 mit dem gleichen Befehl. + +Machen Sie Änderungen in der Mitte eines Absatzes, dann reformatiert +der Zeilenfüllmodus nicht automatisch den Absatz. +Verwenden Sie dafür den Befehl M-q, wobei der Cursor innerhalb des +Absatzes stehen muß. + +>> Bewegen Sie den Cursor zurück zum letzten Absatz und drücken Sie + M-q. + + +* SUCHEN +-------- + +Emacs kann Zeichenketten (`strings') entweder in Richtung Pufferende +(vorwärts, `forward') oder in Richtung Pufferanfang (rückwärts, +`backward') suchen. Gleichzeitig wird der Cursor an die nächste +Stelle bewegt, wo diese Zeichenkette erscheint. + +Hier unterscheidet sich Emacs von vielen anderen Editoren, da nämlich +die Standard-Suchoperation inkrementelles Suchen ist, d.h., die Suche +beginnt dann, wenn Sie die Zeichen eingeben. + +Der Befehl für Vorwärtssuchen ist C-s und C-r für Rückwärtssuchen. +ABER HALT! Probieren Sie bitte diese Befehle noch nicht. + +Wenn Sie C-s eingeben, dann erscheint die Zeichenkette `I-search:' als +Eingabeaufforderung im Echobereich. Das bedeutet, daß Emacs jetzt +eine inkrementellen Suche ausführt und darauf wartet, daß Sie die zu +suchende Zeichenkette eingeben. beendet die Suche. + +>> Geben Sie jetzt C-s ein, um einen Suchvorgang zu starten. Schreiben + Sie LANGSAM, einen Buchstaben nach dem anderen, das Wort `Cursor', + und warten Sie jeweils ab, was mit dem Cursor passiert. Sie haben + jetzt das Wort `Cursor' einmal gefunden. +>> Drücken Sie C-s noch einmal, um die nächste Stelle zu suchen, wo das + Wort `Cursor' vorkommt. +>> Drücken Sie nun viermal und beobachten Sie, wie der Cursor + zurückspringt. +>> Beenden Sie die Suche mit . + +Verstehen Sie, was gerade vorgegangen ist? Emacs versucht während +einer inkrementellen Suche zu der Stelle zu gehen, wo die Zeichenkette +steht, die Sie bis jetzt eingegeben haben. Um die darauffolgende +Position zu suchen, wo `Cursor' steht, genügt es, noch einmal C-s zu +betätigen. Wenn es keine nächste Position gibt, dann ertönt ein +kurzer Ton, und Emacs sagt Ihnen, daß die Suche im Augenblick +fehlschlägt (`failing'). C-g beendet ebenfalls einen Suchvorgang. + - Anmerkung: Wie weiter oben schon einmal erwähnt, scheint es bei - einigen Systemen, als ob das Ausführen von C-s Emacs abstürzen läßt - (Emacs reagiert mit keinen Meldungen mehr; der Bildschirm wirkt - eingefroren). Dieser Effekt tritt auf, wenn das Betriebssystem das - Zeichen C-s abfängt (es wird für `flow control' verwendet) und nicht - an Emacs weiterreicht. Um den Bildschirm wieder zum Leben zu - erwecken, geben Sie C-q ein, und lesen Sie dann den Abschnitt - `Spontaneous Entry to Incremental Search' im Emacs-Handbuch, was man - am besten tun kann. - +Wenn Sie sich mitten in einer inkrementellen Suche befinden und + drücken, wird das letzte Zeichen im Suchstring gelöscht, und +der Cursor springt zurück auf die letzte Suchposition. Angenommen, +Sie haben `c' eingegeben, um das erste Auftreten von `c' zu suchen. +Geben Sie jetzt `u' ein, dann springt der Cursor zu dem ersten +Auftreten der Zeichenkette `cu'. Wenn Sie jetzt mit das `u' +vom Suchstring löschen, dann springt der Cursor zurück zum ersten `c'. +Drücken Sie dagegen ein paar mal C-s, um weitere `cu'-Zeichenketten zu +finden, dann bewirkt , daß Sie zum letzten Auftreten von `cu' +zurückspringen, und erst wenn es kein weiteres `cu' mehr gibt, springt +der Cursor zum ersten `c' zurück. + +Die Suche wird ebenfalls beendet, wenn Sie ein CONTROL- oder +META-Zeichen eingeben (mit ein paar Ausnahmen -- Zeichen, die +bei einer Suche speziell gehandhabt werden wie C-s oder C-r). + +C-s versucht, die Zeichenkette NACH der aktuellen Cursorposition zu +finden. Wollen Sie etwas davor suchen, müssen Sie C-r verwenden. Das +oben Gesagte gilt völlig analog, jedoch in die entgegengesetzte +Suchrichtung. + + +* MEHRFACHE FENSTER +------------------- + +Eine weitere, nützliche Fähigkeit von Emacs ist die Möglichkeit, mehr +als ein Fenster zur gleichen Zeit auf dem Bildschirm darzustellen. + +>> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein. + +>> Drücken Sie nun C-x 2, um den Bildschirm in zwei Fenster zu teilen. + Beide Fenster zeigen diese Einführung an, und der Cursor bleibt im + oberen. + +>> Verwenden Sie C-M-v, um im unteren Fenster zu blättern (Sie können + statt dessen auch ESC C-v verwenden, falls Sie keine META-Taste + haben; siehe auch weiter unten). + +>> Mittels C-x o (das `o' steht für das englische Wort `other', `das + andere') können Sie den Cursor in das untere Fenster bewegen. + +>> Benützen Sie C-v und M-v, um im unteren Fenster zu blättern. Lesen + Sie die Emacs-Einführung jedoch im oberen Fenster weiter. + +>> Geben Sie C-x o nochmals ein, und der Cursor ist wieder im oberen + Fenster, genau an der Stelle, wo er vorher war. + +C-x o ist der Befehl, um zwischen (Emacs-)Fenstern hin- und +herzuschalten. Jedes Fenster hat eine eigene Cursorposition, aber nur +das aktuelle Fenster zeigt den Cursor an (unter X wird die +nicht-aktuelle Cursorposition durch ein leeres Rechteck dargestellt). +Alle normalen Editierbefehle betreffen das Fenster, in dem sich der +Cursor befindet. Wir nennen dieses Fenster `selektiert' (`selected +window'). + +Der Befehl M-C-v ist sehr nützlich, wenn man Text in einem Fenster +editiert und das andere Fenster als Referenz verwendet. Der Cursor +bleibt stets im gleichen Arbeitsfenster, und mit M-C-v kann man bequem +vorwärtsblättern. + +M-C-v ist ein Beispiel eines CONTROL-META-Zeichens. Haben Sie eine +META-Taste, dann kann man M-C-v erzeugen, indem man CTRL und META +gleichzeitig niedergedrückt hält, während man v eintippt. Es ist +egal, ob zuerst CTRL oder META niedergedrückt wird, da beide Tasten +gleichberechtigt das jeweils einzugebende Zeichen modifizieren. + +Haben Sie keine META-Taste, und Sie verwenden stattdessen ESC, dann +ist die Reihenfolge nicht mehr egal: Sie müssen zuerst ESC drücken, +gefolgt von CTRL-v. CTRL-ESC v funktioniert nicht! Der Grund dafür +ist, daß ESC ein eigenes Zeichen ist und keine Modifizier-Taste wie +META oder CTRL. + +Der umgekehrte Befehl zu M-C-v ist M-C-S-v, um im anderen Fenster +rückwärts zu blättern (d.h., Sie müssen die META-Taste sowie die +CONTROL- und SHIFT-Taste zusammen mit `v' betätigen) -- jetzt werden +Sie wahrscheinlich verstehen, warum manche Kritiker das Wort Emacs als +Abkürzung von Escape-Meta-Alt-Control-Shift betrachten. Leider +funktioniert diese Befehlsfolge normalerweise nur mit dem X Window +System, da C-v von C-S-v auf den meisten Textterminals nicht +unterschieden werden kann. + +[Unter X kann man außerdem in der Regel mit den bequemeren +Tastenkombinationen META-`Bild mit Aufwärtspfeil' bzw. META-`Bild mit +Abwärtspfeil' ebenfalls im anderen Fenster rück- bzw. vorwärts +blättern.] + +>> Entfernen Sie mit C-x 1 (eingegeben im oberen Fenster) das untere + Fenster. + +(Hätten Sie C-x 1 im unteren Fenster eingegeben, dann wäre das obere +Fenster geschlossen worden -- eine Eselsbrücke für C-x 1 ist `ich will +nur das *eine* Fenster, in dem ich mich gerade befinde.') + +Sie müssen nicht den gleichen Puffer in beiden Fenstern darstellen. +Wenn Sie C-x C-f verwenden, um in einem Fenster eine Datei zu laden, +dann bleibt das andere Fenster unverändert. Sie können in jedem +Fenster eine andere Datei anzeigen lassen, unabhängig vom anderen +Fenster. + +Hier eine andere Möglichkeit, in zwei Fenstern zwei verschiedene +Texte darzustellen: + +>> Geben Sie C-x 4 C-f ein, gefolgt vom Namen einer Ihrer Dateien. + Schließen Sie ab mit . Beobachten Sie, wie die + spezifizierte Datei im unteren Fenster erscheint. Der Cursor + springt ebenfalls in das untere Fenster. + +>> Bewegen Sie den Cursor mittels C-x o in das obere Fenster und geben + Sie C-x 1 ein, um das untere Fenster zu schließen. + + +* REKURSIVE EDITIER-EBENEN +-------------------------- + +Manchmal kann es passieren, daß Sie in eine sogenannte rekursive +Editier-Ebene geraten (`recursive editing level'). Sie können das an +den eckigen Klammern in der Statuszeile erkennen, welche den +derzeitigen Hauptmodus zusätzlich umschließen, z.B. [(Fundamental)] +anstelle von (Fundamental). + +Um eine rekursive Editier-Ebene zu verlassen, geben Sie ESC ESC ESC +ein. Diese Tastenkombination ist ein allgemeiner +Ich-will-hier-raus-Befehl. Sie können ihn auch verwenden, um +unerwünschte Fenster zu schließen und den Minipuffer zu verlassen. + +>> Geben Sie M-x ein, um in den Minipuffer zu gelangen, und tippen Sie + dann ESC ESC ESC, um ihn wieder zu verlassen. + +Mit C-g kann man eine rekursive Editier-Ebene nicht verlassen, da C-g +Befehle INNERHALB einer rekursiven Editier-Ebene stoppt. + +Rekursive Editier-Ebenen sind hier in dieser Einführung nicht weiter +dargestellt. Details finden Sie im Emacs-Handbuch beschrieben. + + +* MULE +------ + +Mule ist die Abkürzung für `Multi-lingual Enhancement to GNU Emacs'. +Früher wurde damit eine spezielle Emacs-Variante bezeichnet, die +allerdings seit der Version 20 mit Emacs verschmolzen ist. + +Emacs unterstützt eine große Anzahl von internationalen Zeichensätzen, +z.B. verschiedene europäische Varianten des lateinischen Alphabets, +Chinesisch, Russisch oder Thai, um nur einige zu nennen. In dieser +Einführung wird jedoch nur auf den deutschen Zeichensatz sowie +Eingabemöglichkeiten für Deutsch näher eingegangen. + +Der Standard-Zeichensatz für Deutsch ist Latin-1 (auch bekannt unter +dem Namen ISO-8859-1). Wenn anstelle der deutschen Umlaute +unansehnliche Konstrukte wie `\201ä' dargestellt werden, dann ist die +sogenannte Multibyte-Zeichenunterstützung deaktiviert (intern werden +in Emacs nicht-ASCII Zeichensätze durch mehr als ein Byte +repräsentiert). Durch den Befehl `M-x +toggle-enable-multibyte-characters' wird die +Multibyte-Zeichenunterstützung aktiviert. Denken Sie daran, die +Tabulatortaste zur Vervollständigung von Befehlsnamen zu benützen, +z.B. `M-x toggle-e'. + +Wenn anstelle der Umlaute `ä', `ö' oder `ü' die Zeichen `d', `v' und +`|' erscheinen (also `kleines D', `kleines V' und ein senkrechter +Strich), dann wird das achte Bit von jedem Byte abgeschnitten, sodaß +nur ASCII-Zeichen dargestellt werden können. In der Regel gibt es +zwei Ursachen für dieses Problem: Sie haben sich nicht `8-bit clean' +(z.B. mittels `telnet -8 ...') eingeloggt oder Ihr +Telekommunikationsprogramm ist nicht für 8-bit konfiguriert. + +>> Geben Sie `M-x toggle-enable-multibyte-characters' ein. Die + deutschen Umlaute (so sie von Ihrem Terminal darstellbar sind) + verschwinden und werden durch Zahlenkonstrukte ersetzt. So wird + zum Beispiel Umlaut a (`ä') dargestellt als `\201ä'. + +>> Aktivieren Sie wieder die Multibyte-Zeichenunterstützung mittels + `M-x toggle-enable-multibyte-characters'. + +Sehen Sie anstelle der Umlaute leere Kästchen (unter X), dann sollten +Sie mit C-x C-c Emacs beenden und folgendermaßen neu starten: + + emacs -fn fontset-standard + +Bei einem Textterminal gibt es weiter die Möglichkeit, die +Befehlsfolge `M-x standard-display-european' auszuführen, wodurch +Emacs die Multibyte-Zeichenunterstützung deaktiviert und direkt +Latin-1-Zeichen darzustellen versucht. Sie können auch probieren, +Emacs mit der `--unibyte'-Option zu starten, was einen ähnlichen +Effekt bewirkt. + +Falls das alles nichts nützt oder Sie Fragezeichen anstelle der +Umlaute auf ihrem Textterminal sehen, sollten Sie sich an Ihren +Systemadministrator wenden und sich beschweren, daß kein +Latin-1-Zeichensatz installiert ist (was heutzutage eigentlich eine +Selbstverständlichkeit sein sollte). Falls statt der Umlaute andere +Zeichen auf ihrem Textterminal erscheinen (z.B. kyrillische +Buchstaben), dann erkundigen Sie sich, wie sie auf Latin-1 umschalten +können. + +Lesen Sie im Emacs-Handbuch nach unter dem Stichwort `International', +welche weitere Optionen es bezüglich Zeichensätze gibt. + +Es empfiehlt sich, Latin-1 als Standardkodierung zu aktivieren, wenn +Sie primär Deutsch verwenden. Benutzen Sie zu diesem Zweck die +Befehlsfolge + + C-x l latin-1 + +(C-x l führt die Funktion set-language-environment aus), um +in einer laufenden Emacs-Sitzung auf Latin-1 umzuschalten. Dadurch +wird erreicht, daß Emacs beim Laden einer Datei (und Speichern +derselben) standardmäßig die Latin-1-Zeichenkodierung verwendet. Sie +können an der Ziffer 1 unmittelbar vor dem Doppelpunkt links unten in +der Statuszeile erkennen, daß Sie Latin-1 aktiviert haben. Beachten +Sie allerdings, daß set-language-environment keinen Einfluß auf die +Kodierung bereits existierender Puffer hat! Haben Sie eine Datei mit +deutschem Text in Latin-1-Kodierung irrtümlicherweise in einer +falschen Kodierung geladen, dann müssen Sie diesen Puffer aus Emacs +mit dem Befehl C-x k (kill-buffer) entfernen und die Datei erneut +laden, nachdem Sie mit set-language-environment auf Latin-1 +umgeschaltet haben. + +>> Führen Sie jetzt C-x l latin-1 aus und öffnen Sie + anschließend eine (neue) Datei mit dem Namen `bar' in einem anderen + Fenster mittels C-x 4 C-f bar . In der Statuszeile des + zweiten Fensters sehen Sie die Ziffer 1 unmittelbar vor dem + Doppelpunkt. + +>> Schließen Sie das soeben geöffnete Fenster mit C-x 1 wieder. + +Wie können Sie nun deutsche Umlaute eingeben? Es gibt prinzipiell +zwei unterschiedliche Fälle: Sie besitzen eine deutsche Tastatur mit +Tasten für die Umlaute oder Sie haben eine nicht-deutsche Tastatur. +Im ersteren Fall sollten Sie die Eingabemethode `german' auswählen, +welche direkt die Umlaute auf die entsprechenden Tasten abbildet. Im +letzteren Fall gibt es mehrere Möglichkeiten, wovon zwei hier erklärt +werden sollen, nämlich `latin-1-prefix' und `latin-1-postfix'. Die +Präfix-Methode erwartet zuerst den Akzent und dann den Basisbuchstaben +('a wird zu á, "s zu ß etc.), während bei der Postfix-Methode zuerst +der Basisbuchstabe und dann der Akzent einzugeben ist (a" wird zu ä, +s/ wird zu ß etc). + +Aktiviert wird die jeweilige Eingabe mit dem Befehl + + C-u C-\ Eingabemethode + +(z.B. C-u C-\ german ). Durch diese Befehlsfolge wird der +sogenannte Quail-Nebenmodus aktiviert, was sich durch eine kleine +Veränderung in der Statuszeile zeigt: Durch zwei oder drei Zeichen +unmittelbar vor der Pufferkodierung wird die aktuelle Eingabemethode +angezeigt. Ist der Eingabemodus einmal gewählt, kann man mit C-\ ihn +ein- und ausschalten. + +>> Geben Sie C-u C-\ latin-1-postfix ein. Beobachten Sie, + wie links unten in der Statuszeile die Anzeige von `1:**' auf + `1<1:**' springt. Probieren Sie ä einzugeben mittels a". + +>> Deaktivieren Sie den Eingabemodus wieder mit C-\. + +Folgende Kürzel in der Statuszeile repräsentieren die eben +beschriebenen Eingabemethoden: + + DE@ german + 1< latin-1-postfix + 1> latin-1-prefix + +So bedeutet die Angabe `DE@1:**', daß Sie die Eingabemethode `german' +in einem Puffer mit Latin-1-Kodierung verwenden, und daß die Datei +bereits modifiziert wurde. + +[Arbeitet Emacs in einem Terminal, werden noch zwei zusätzliche +Spalten zwischen Eingabemethode und Pufferkodierung eingefügt, und +zwar für die Tastatur- und Bildschirmkodierung.] + + +* WEITERE DOKUMENTATION VON EMACS +--------------------------------- + +Wir haben uns bemüht, in dieser Einführung genau soviel Information zu +geben, daß Sie beginnen können, mit Emacs zu arbeiten. Emacs ist +jedoch so mächtig und umfangreich, daß es den Rahmen einer Einführung +spränge, an dieser Stelle mehr zu erklären. Um Sie im weiteren +Lernverlauf zu unterstützen, stellt Emacs eine Reihe von +Hilfe-Funktionen zu Verfügung, die alle mit dem Präfix C-h (dem +Hilfe-Zeichen, `Help character') beginnen. + +Nach dem Drücken von C-h geben Sie ein weiteres Zeichen ein, um Emacs +zu sagen, worüber Sie mehr Informationen brauchen. Sollten Sie +WIRKLICH verloren sein, geben Sie C-h ? ein, und Emacs sagt Ihnen, +welche Art von Hilfe er Ihnen zu Verfügung stellen kann. Haben Sie +C-h versehentlich gedrückt, können Sie mit C-g sofort abbrechen. + +(Es kann vorkommen, daß bei manchen Computern bzw. Terminals C-h etwas +anderes bedeutet. Da erfahrungsgemäß C-h eine der meistbenötigten +Emacs-Befehle ist, haben Sie einen wirklichen Grund, sich in diesem +Fall beim Systemadministrator zu beschweren. Alternativen zu C-h sind +die F1-Taste und der lange Befehl M-x help .) + +Die elementarste Hilfestellung gibt C-h c. Drücken Sie C-h, dann das +Zeichen c, und dann einen Befehl: Emacs zeigt daraufhin eine kurze +Beschreibung des Befehls an. + +>> Geben Sie C-h c C-p ein. + Die Antwort darauf (im Echo-Bereich) sollte so ähnlich sein wie + + C-p runs the command previous-line + +Somit wissen Sie den `Namen der Funktion'. Funktionsnamen werden +hauptsächlich benutzt, um Emacs anzupassen bzw. zu erweitern. Aber da +Namen in der Regel beschreiben, was die jeweilige Funktion tut, können +sie auch als sehr kurze Beschreibung dienen -- ausreichend, um Sie an +Befehle zu erinnern, die Sie bereits gelernt haben. + +Aus mehr als einem Zeichen bestehende Befehle, z.B. C-x C-s oder +v, sind ebenfalls erlaubt nach C-h c. + +Um eine detaillierte Dokumentation eines Befehls zu erhalten, +verwenden Sie C-h k anstelle von C-h c. + +>> Geben Sie C-h k C-p ein. + +Diese Befehlsfolge zeigt die komplette Dokumentation des Befehls an +zusammen mit seinem Namen, und zwar in einem eigenem Fenster. Wenn +Sie die Beschreibung gelesen haben, benützen Sie am besten C-x 1, um +das Hilfe-Fenster wieder zu schließen. Sie müssen das nicht sofort +tun -- Sie können weiter Text editieren und das Fenster schließen, +wenn Sie es nicht mehr brauchen. + +Hier einige weitere nützliche Optionen von C-h: + + C-h f Beschreibt eine Funktion. Sie müssen den Namen der + Funktion eingeben. + +>> Probieren Sie C-h f previous-line. + Alle Information über den C-p-Befehl wird angezeigt. + +Sie können die Tabulator-Taste stets benützen, um den Namen des +jeweiligen Befehls zu vervollständigen. Geben Sie z.B. `C-h f +previous' ein, dann werden alle Befehle angezeigt, deren Namen +mit `previous-' beginnen. Ergänzen Sie die Zeichenkette auf +`previous-l' und drücken Sie dann , bleibt nur noch der Befehl +`previous-line' übrig, und Sie können mit abschließen. + +Ein ähnlicher Befehl ist C-h v. Er zeigt den Wert und die +Dokumentation von Variablen, deren Werte man ändern kann (um Emacs an +persönliche Bedürfnisse anzupassen). Auch hier kann man die +Tabulator-Taste zur Vervollständigung benutzen. + + C-h a Ein Befehls-Apropos. Gibt man ein Schlüsselwort ein, + dann zeigt Emacs alle Befehle, die dieses + Schlüsselwort enthalten. Alle angezeigten Befehle + können mit M-x aufgerufen werden. Für einige + Kommandos wird zusätzlich eine Zeichensequenz + (meistens bestehend aus einem oder zwei Zeichen) + aufgelistet, welche den gleichen Befehl startet. + +>> Geben Sie C-h a file ein. + +Alle M-x-Befehle, die das Wort `file' in ihrem Namen enthalten, werden +angezeigt. Beachten Sie, daß auch C-x C-f aufgelistet wird neben dem +zugehörigen langen Namen, find-file. + +>> Blättern Sie mit C-M-v, um sich die Liste der Funktionen anzusehen. + +>> Schließen Sie das Hilfefenster mit C-x 1. + + C-h i Dieser Befehl öffnet einen speziellen Puffer, um + Online-Handbücher zu lesen (im `Info'-Format), die auf + dem verwendeten Computersystem installiert sind. + Geben Sie z.B. m emacs ein, um das + Emacs-Handbuch zu lesen. Haben Sie `Info' noch nie + benutzt, tippen Sie ?, und Emacs führt Sie Schritt für + Schritt durch die Möglichkeiten des Info-Modus. Wenn + Sie diese Einführung fertiggelesen haben, sollten Sie + das Info-Handbuch für Emacs als primäre Dokumentation + benutzen. + + +* SCHLUSSBEMERKUNG +------------------ + +Das Wichtigste: Emacs wird mit C-x C-c beendet und mit C-z temporär +unterbrochen. + +Diese Einführung soll für alle neuen Benutzer von Emacs verständlich +sein. Wenn daher etwas unklar sein sollte, dann hadern Sie nicht mit +sich selbst. Schreiben Sie an die Free Software Foundation oder an +den Autor und erläutern Sie, was für Sie unklar geblieben ist. Eine +weitere Kontaktadresse ist die Mailing-Liste `de@li.org', in der +Probleme mit der Adaption von GNU-Programmen an das Deutsche +diskutiert werden. + + +* RECHTLICHES +------------- + +Die englische Version dieser Einführung hat eine lange Vorgeschichte. +Stuart Cracraft hat für die Urversion von Emacs das erste Tutorial +geschrieben. Übersetzer ins Deutsche ist Werner Lemberg (wl@gnu.org). + +Beachten Sie bitte, daß im Zweifelsfalle das englische Original dieser +Urheberrechtsnotiz gültig ist (zu finden in der Datei TUTORIAL). + +Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, + 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + + Hiermit wird für jedermann die Erlaubnis erteilt, wörtliche, + unveränderte Kopien dieses Dokumentes für jegliches Medium zu + erstellen, unter der Voraussetzung, daß die Copyright-Notiz sowie + diese Erlaubnis beibehalten werden. Außerdem muß der Verteiler + dieses Dokuments den Empfängern die gleichen Rechte einräumen, + welche durch diese Erlaubnis gegeben sind. + + Zugleich wird die Erlaubnis erteilt, modifizierte Versionen dieses + Dokuments, oder Teile davon, zu verteilen, und zwar zu den oben + gegebenen Bedingungen unter der Voraussetzung, daß eindeutig zu + erkennen ist, wer zuletzt dieses Dokument verändert hat. + +Die Vervielfältigungsbedingungen für Emacs selbst sind etwas +komplexer, folgen aber in etwa den gleichen Richtlinien. Lesen Sie +bitte die Datei COPYING und geben Sie Emacs an Ihre Freunde weiter! +Helfen Sie mit, die Idee von freier Software zu propagieren, indem Sie +freie Software verwenden, verteilen, oder sogar selber schreiben. + +--- end of TUTORIAL.de --- + +;;; Local Variables: +;;; coding: latin-1 +;;; End: + +;;; arch-tag: a8f2fe06-631d-4ae1-887e-446f971b0baa diff --cc lisp/ChangeLog index 1c0601493c,00e51eb43e..914ce9003a --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@@ -1,21907 -1,37581 +1,21935 @@@ -2008-04-04 Stephen Berman ++2008-04-05 Stefan Monnier + - * newcomment.el (comment-enter-backward): Be careful to restore - position changed during narrowing. - -2008-04-03 Nick Roberts - - * progmodes/gdb-ui.el (gdb-mouse-set-clear-breakpoint): - Fix in disassembly buffer (regression in 22.2). - -2008-04-03 Chong Yidong - - * shell.el (shell-dynamic-complete-filename): New fun. - (shell-dynamic-complete-functions): Use it. - -2008-04-02 Alan Mackenzie - - * progmodes/cc-cmds.el (c-defun-name, c-cpp-define-name): - New optimised functions to get the name of the current defun/macro. - - * add-log.el (add-log-current-defun): Move the functionality which - gets the current function name for C like modes to cc-cmds.el, - thus optimising for speed. - -2008-04-02 Eli Zaretskii - - * ps-print.el (ps-generate-postscript-with-faces): If the face - specified by the overlay's `face' property is a string, assume - it's a string name and intern it to get the face symbol. - -2008-04-01 Chong Yidong - - * find-dired.el (find-dired-filter): Fix last patch to handle - multi-line process input. Pad link numbers too. - -2008-04-01 Jari Aalto - - * find-dired.el (find-dired-filter): Align columns by padding file - sizes. - -2008-04-01 Jay Belanger - - * calc/calc.el: Autoload `calc-yank'. - (calc-mode-map): Add keybindings for `calc-yank'. - * calc/calc-ext.el (calc-init-extensions): Remove keybinding - assignments for `calc-yank'. - -2008-03-31 Martin Rudalics - - * emacs-lisp/find-func.el (find-function-search-for-symbol): - Strip extension from .emacs.el to make sure symbol is searched - in .emacs too. - -2008-03-29 Stefan Monnier - - * vc.el (vc-do-command): Don't show internal temp buffers. - -2008-03-29 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-ae-reopen-application): New function. - (mac-apple-event-map): Bind "reopen application" Apple event to it. - -2008-03-29 Juanma Barranquero - - * term/mac-win.el (mac-dnd-drop-data): Remove redundant check. - -2008-03-26 Chong Yidong - - * Version 22.2 released. - -2008-03-25 Johan Bockg,Ae(Brd - - * info.el (Info-isearch-search): Always return point. - -2008-03-23 Andreas Schwab - - * menu-bar.el (menu-bar-showhide-fringe-ind-menu) [mixed]: - Fix radio button condition. - [box]: Likewise. - [customize]: Add radio button. - -2008-03-20 Dan Nicolaescu - - * vc-bzr.el (vc-bzr-print-log): Ensure it works when passed a - single file argument. - (vc-bzr-show-log-entry): Fix typo. - -2008-03-19 Wilson Snyder - - * progmodes/verilog-mode.el (verilog-easy-menu-filter): - New function. - (verilog-stmt-menu, verilog-menu): Add :help. - (verilog-customize, verilog-font-customize) - (electric-verilog-backward-sexp, electric-verilog-forward-sexp) - (verilog-mode): Update documentation strings to match tool tips. - (verilog-auto-search-do, verilog-auto-re-search-do) - (verilog-skip-forward-comment-or-string): Fix verilog-auto - expansion when a .* appears inside a string. - (verilog-re-search-forward, verilog-re-search-backward): - Add comment to recall how this works. - -2008-03-19 Reiner Steib - - * net/tls.el (open-tls-stream): Reindent. - -2008-03-19 Glenn Morris - - * net/tls.el: Don't require rx when compiling. - (tls-end-of-info): Rewrite without using rx. - (open-tls-stream): Use with-current-buffer. - -2008-03-18 Dan Nicolaescu - - * font-lock.el (font-lock-comment-face): Set the foreground for - the light background 8 colors case. - - * vc-bzr.el (vc-bzr-print-log): Insert a file marker. Run the log - command for each file in the list. - (vc-bzr-log-view-mode): Recognize the file marker. - (vc-bzr-show-log-entry): Make regexp match more cases. - -2008-03-18 Wilson Snyder - - * verilog-mode.el (verilog-read-decls): Fix AUTOINPUT/AUTOOUTPUT - mis-including genvars. - -2008-03-18 Stefan Monnier - - * vc-bzr.el (vc-bzr-log-view-mode, vc-bzr-annotate-command) - (vc-bzr-annotate-time, vc-bzr-annotate-extract-revision-at-line): - Revision numbers can include ".". - - * diff-mode.el (diff-end-of-hunk): Be careful not to overlook trailing - "+" lines not accounted for by counting "-" and context lines. - -2008-03-16 Juri Linkov - - * dired.el (dired-warn-writable): Rename to `dired-perm-write'. - (dired-perm-write): Rename from `dired-warn-writable'. - Change parent face from `font-lock-warning-face' to - `font-lock-comment-delimiter-face'. - (dired-warn-writable-face): Rename to `dired-perm-write-face'. - (dired-perm-write-face): Rename from `dired-warn-writable-face'. - (dired-font-lock-keywords): Replace `dired-warn-writable-face' - with `dired-perm-write-face'. - -2008-03-16 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-service-open-file): Use file URL instead of - file name string. - -2008-03-14 Stefan Monnier - - * vc-bzr.el (vc-bzr-registered): Fail if `bzr' is not installed. - (vc-bzr-annotate-command): Preserve line alignment. - (vc-bzr-annotate-time): Accept space used to preserve alignment. - -2008-03-13 Richard Stallman - - * mouse.el (mouse-yank-secondary): Nice error msg if no secondary sel. - - * emacs-lisp/advice.el (defadvice): Add usage pattern. - -2008-03-11 Chong Yidong - - * simple.el (set-mark-command): Doc fix. - -2008-03-10 Nick Roberts - - * progmodes/gdb-ui.el: Add advice about using Cygwin GDB (from a - thread in [h-e-w]). - -2008-03-08 Johan Bockg,Ae(Brd - - * subr.el (while-no-input): Don't splice BODY directly into the - `or' form. - -2008-03-06 Kim F. Storm - - * help.el (view-emacs-todo): Rename from view-todo. Change users. - (describe-gnu-project): Rename from describe-project. Change users. - Define obsolete function aliases for the old names. - -2008-03-05 Chong Yidong - - * emacs-lisp/lisp.el (parens-require-spaces): Doc fix. - Reported by Drew Adams . - -2008-03-05 Juanma Barranquero - - * iswitchb.el (iswitchb-use-faces): Doc fix. - (iswitchb-buffer-ignore, iswitchb-read-buffer): Fix typos in docstrings. - -2008-03-03 Dan Nicolaescu - - * progmodes/verilog-mode.el (verilog-highlight-grouping-keywords): - Fix typo. - (verilog-type-font-keywords): Reindent. - -2008-03-03 Michael McNamara - - * verilog-mode.el (verilog-font-grouping-keywords): Fix bug in the - grouping-keyword regular expression. - (verilog-font-lock-keywords): Allow users to toggle special - highlight of grouping-keywords. - (verilog-highlight-grouping-keywords): The toggle for special - highlighting of grouping keywords. - -2008-03-02 Juri Linkov - - * startup.el: Revert 2008-02-28 change that adds initial message - to *scratch* buffer regardless of the value of `inhibit-startup-screen'. - -2008-03-01 Dan Nicolaescu - - * textmodes/css-mode.el (css-indent-offset, css-electric-keys): - * textmodes/bibtex-style.el (bibtex-style-indent-basic): - * progmodes/verilog-mode.el (verilog-mode): - * net/socks.el (socks): - * vc-mtn.el (vc-mtn-mode-line-rewrite): Add :version. - -2008-03-01 Juanma Barranquero - - * desktop.el (desktop-read): Set `desktop-dirname' to nil before - running `desktop-not-loaded-hook' to allow modifying it. - Don't show warning message if `desktop-dirname' was modified. - -2008-03-01 Alan Mackenzie - - * progmodes/cc-mode.el (c-neutralize-syntax-in-CPP): Fix coding bug. - - * progmodes/cc-langs.el (c-before-font-lock-function): Fix bug in - doc-string, "c-old-LEN" -> "c-old-END". - -2008-02-29 Glenn Morris - - * allout.el (allout-topic-encryption-bullet) - (allout-passphrase-verifier-handling, allout-passphrase-hint-handling) - (allout-encrypt-unencrypted-on-saves): Change defcustom :version - from 22.0 to 22.1. - -2008-02-29 Juanma Barranquero - - * desktop.el (desktop-save): Save the buffer name if the - uniquified base name is empty. - -2008-02-29 Stefan Monnier - - * diff-mode.el (diff-sanity-check-hunk): Only accept an empty line if - we still expect more lines. - -2008-02-28 Juri Linkov - - * startup.el (normal-splash-screen): Add argument `concise'. - Remove unused binding `prev-buffer'. Let-bind `splash-buffer' - to the created buffer. If `concise' is non-nil, call - `display-buffer', otherwise `switch-to-buffer'. Doc fix. - (display-startup-screen): Add argument `concise' to the call to - `normal-splash-screen'. - -2008-02-28 Kim F. Storm - - * startup.el (startup-echo-area-message): Check for about-emacs. - -2008-02-28 Juri Linkov - - * startup.el: Always add initial message to *scratch* buffer if - `initial-scratch-message' is non-nil regardless of the value of - `inhibit-startup-screen'. - (inhibit-startup-screen, initial-scratch-message): Doc fix. - (command-line-1): Move code that inserts `initial-scratch-message' - up before the if-form that checks for `inhibit-startup-screen'. - Suggested by Jonathan Rockway . - -2008-02-28 Stefan Monnier - - * textmodes/fill.el (fill-comment-paragraph): Don't try to do - comment-paragraph filling if the commark doesn't match - comment-start-skip. - - * uniquify.el (uniquify-buffer-base-name): Undo last change. - -2008-02-28 Daiki Ueno - - * international/utf-7.el (utf-7-encode): Never skip the trailing - for - the `imap' variant. - -2008-02-27 Juanma Barranquero - - * uniquify.el (uniquify-buffer-base-name): If the base name is an - empty string, return nil to allow the caller to default to the - buffer name. Reported by Martin Fischer . - -2008-02-26 Jason Rumney - - * files.el (make-auto-save-file-name): Encode more characters in - non-file buffer names. Use url-encoding. - -2008-02-26 Juanma Barranquero - - * net/net-utils.el (ftp-program): Fix typo in docstring. - (ifconfig-program-options, netstat-program-options) - (arp-program-options, route-program-options, nslookup-program-options) - (ftp-program-options, smbclient-program-options) - (dns-lookup-program-options, arp, route): Doc fixes. - - * progmodes/gdb-ui.el (gdb-pc-address, gdb-source-file-list) - (gdb-cpp-define-alist-program, gdb-mouse-jump, gdb-get-buffer-create) - (gdb-set-gud-minor-mode-existing-buffers-1, gdb-debug-log): - Fix typos in docstrings. - (gdb-pending-triggers): Reflow docstring. - (gdb, gdb-init-1): Fix typos in docstrings of gud-def definitions. - -2008-02-25 Alan Mackenzie - - * progmodes/cc-mode.el (c-neutralize-syntax-in-CPP): Fix a bug on - typing "#" at EOB. - -2008-02-25 Chong Yidong - - * files.el (shell-quote-wildcard-pattern): Quote ' and " as well. - -2008-02-24 Jason Rumney - - * files.el (file-name-invalid-regexp): Fix octal/decimal confusion. - -2008-02-23 Ulrich Mueller (tiny change) - - * textmodes/bibtex.el (bibtex-convert-alien): Fix sit-for ags. - -2008-02-22 Stefan Monnier - - * dired.el (dired-mark-prompt): Don't count/display the t element. - Reported by Carsten Blaauw . - -2008-02-22 Bill Meier (tiny change) - - * progmodes/sh-script.el (sh-indent-comment): Docstring fix. - -2008-02-21 Glenn Morris - - * subr.el (sit-for): Fix obsolete form for nil second argument. - -2008-02-21 Dan Nicolaescu - - * progmodes/verilog-mode.el (eval-when-compile): Don't define - add-submenu. - (verilog-xemacs-menu): Add :keys for C-M-a, C-M-e and C-M-h. - Remove. Move contents to the only use ... - (verilog-menu): ... here. - (verilog-statement-menu): Remove. Move contents to the only use ... - (verilog-stmt-menu): ... here. - (verilog-mark-defun): Simply call mark-defun for Emacs. - (occur-pos-list): Declare for byte compiler. - (mode-popup-menu): Don't defvar. - (verilog-add-statement-menu): Remove. - (verilog-mode-hook): Don't add verilog-add-statement-menu. - (verilog-mode): Call easy-menu-add and set mode-popup-menu for XEmacs. - -2008-02-21 Michael McNamara - - * progmodes/verilog-mode.el (verilog-xemacs-menu): Remove XEmacs - conditional. - (verilog-font-grouping-keywords-face): Make the begin..end - keywords standout more than other verilog keywords. - (verilog-type-font-keywords): Move the begin..end out of this list - to facilitate making them to (potentially) stand out more. - (verilog-backward-token): Fix indent of bare always{_*}?, initial, - function & task blocks. - (verilog-behavioral-block-beg-re): Fix indent of bare always{_*}?, - initial, function & task blocks. - (verilog-forward-sexp): Handle the new "disable fork" statement of - IEEE-1800 Verilog. - (verilog-beg-block-re-ordered): Handle the new "disable fork" - statement of IEEE-1800 Verilog. - (verilog-calc-1): Handle the new "disable fork" statement of - IEEE-1800 Verilog. - (verilog-disable-fork-re): Add const to help handle the new - "disable fork" statement of IEEE-1800 Verilog. - (verilog-declaration-core-re): Add port directions by themselves, - with no qualification, as base item of a declaration. - (verilog-pretty-declarations): Add new flag to ask it to refrain - from printing to the message buffer. - (verilog-pretty-expr): Add a QUIET flag to ask it to refrain from - printing to the message buffer. Improve handling of the many - types of expression line up. - (verilog-just-one-space): Remove printing of an empty message. - (verilog-get-lineup-indent): Rework to support the better handling - of expression lineup for verilog-pretty-expr. - (verilog-auto-wire): Pass the quiet flag to verilog-pretty-expr. - -2008-02-20 Alan Mackenzie - - * progmodes/cc-mode.el (c-extend-region-for-CPP): Bug fix from - yesterday's commit. - -2008-02-20 Nick Roberts - - * progmodes/gdb-ui.el (gdb-mouse-set-clear-breakpoint): Fall back - to mouse-set-point in buffers that aren't associated with files. - - * progmodes/gud.el: Rename menu item to "Show GUD tooltips". - -2008-02-20 Glenn Morris - - * mail/rmail.el (rmail-autodetect): Add .exe extension to movemail - on Windows. - -2008-02-19 Alan Mackenzie - - Set of changes so that "obtrusive" syntactic elements in a - C/C++/ObjC preprocessor line (e.g. an unbalanced string quote or - unmatched paren) don't interact syntactically with stuff outside - the CPP line. - - * progmodes/cc-awk.el (c-awk-beyond-logical-line, c-awk-old-ByLL): - Replace c-awk-end-of-logical-line and c-awk-old-EoLL to solve an - off-by-one bug. - (c-awk-record-region-clear-NL): Replaces c-awk-before-change, with - a bit of refactoring. - (c-awk-extend-and-syntax-tablify-region): Takes some of the - functionality of c-awk-advise-fl-for-awk-region, which has been - refactored away. - - * progmodes/cc-defs.el (c-clear-char-property-with-value-function) - (c-clear-char-property-with-value): New function and macro which - remove text-properties `equal' to a supplied value. - - * progmodes/cc-engine.el: Comment about text properties amended. - - * progmodes/cc-fonts.el (c-cpp-matchers): Make it put regexp - parens around "error\\|warning". - - * progmodes/cc-langs.el (c-get-state-before-change-function) - (c-before-font-lock-function, c-anchored-cpp-prefix): - New language variables. - (c-cpp-message-directives): Handle "#warning" in C, C++ and ObjC. - - * progmodes/cc-mode.el (c-basic-common-init): C and ObjC now use - syntax-table text properties. - (c-common-init): Call language specific before/after-change - functions at mode initialisation. - (c-new-BEG, c-new-END, c-old-BOM, c-old-EOM): New variables. - (c-extend-region-for-CPP, c-neutralize-CPP-line) - (c-neutralize-syntax-in-CPP): New functions. - (c-before-change, c-after-change): Call the new language specific - change functions defined in cc-langs.el. - (c-advise-fl-for-region): New macro. - (awk-mode): Remove AWK specific stuff which has been refactored - into language independent stuff. - -2008-02-19 Stefan Monnier - - * diff-mode.el (diff-file-junk-re): New const. - (diff-beginning-of-file-and-junk): Use it. - (diff-file-kill): Make sure we were really inside a file diff. - - * diff-mode.el: Make it more robust in the presence of empty context - lines in unified hunks. - (diff-valid-unified-empty-line): New var. - (diff-unified->context, diff-sanity-check-hunk): Obey it. - (diff-end-of-hunk): Obey it. New arg `donttrustheader'. - (diff-fixup-modifs, diff-post-command-hook): Use this new arg. - (diff-hunk-header-re-unified): New const. - (diff-font-lock-keywords, diff-hunk-header-re, diff-split-hunk) - (diff-fixup-modifs, diff-unified->context, diff-next-complex-hunk) - (diff-sanity-check-hunk): Use it. - -2008-02-19 Nick Roberts - - * progmodes/gdb-ui.el (gdba): Recreate as an alias for gdb. - (gdb): (Re)set gdb-flush-pending-output to nil here... - (gdb-init-1): ...instead of here (before gdb-prompt). - -2008-02-18 Juanma Barranquero - - * progmodes/verilog-mode.el (customize): Fix typo in error message. - (verilog-mode, verilog-mode-indent, verilog-mode-actions) - (verilog-mode-auto, verilog-indent-level-module) - (verilog-minimum-comment-distance, verilog-library-flags) - (verilog-library-directories, verilog-library-files) - (verilog-auto-reset-widths, verilog-imenu-generic-expression) - (verilog-xemacs-menu, verilog-set-compile-command) - (verilog-set-compile-command, verilog-mode-syntax-table, verilog-mode) - (verilog-get-expr, verilog-strip-comments, verilog-one-line) - (verilog-lint-off, verilog-batch-auto, verilog-batch-delete-auto) - (verilog-batch-inject-auto, verilog-batch-indent) - (verilog-continued-line, verilog-type-keywords) - (verilog-read-sub-decls-sig, verilog-read-sub-decls-line) - (verilog-read-inst-pins, verilog-read-arg-pins) - (verilog-read-auto-template, verilog-read-signals, verilog-getopt-file) - (verilog-add-list-unique, verilog-symbol-detick, verilog-modi-filename) - (verilog-auto-star, verilog-auto-inst, verilog-auto-wire) - (verilog-enum-ascii, verilog-sk-begin, verilog-sk-fork) - (verilog-sk-datadef, verilog-colorize-include-files-buffer) - (verilog-mode-version, verilog-mode-release-date) - (verilog-mode-release-emacs, verilog-linter, verilog-coverage) - (verilog-simulator, verilog-compiler) - (verilog-auto-sense-defines-constant, verilog-company) - (verilog-project, verilog-mark-defun, verilog-submit-bug-report): - Fix typos in docstrings. - (verilog-set-auto-endcomments, verilog-calculate-indent) - (verilog-inject-auto, verilog-auto-arg, verilog-auto-inout-module): - Reflow docstrings. - (verilog-tab-always-indent, verilog-highlight-p1800-keywords) - (verilog-auto-star-save, verilog-auto-inst-vector, verilog-mode-hook) - (electric-verilog-forward-sexp, verilog-in-case-region-p) - (verilog-in-struct-region-p, verilog-in-generate-region-p) - (verilog-leap-to-head, verilog-current-indent-level) - (verilog-case-indent-level, verilog-cpp-keywords) - (verilog-defun-keywords, verilog-block-keywords, verilog-tf-keywords) - (verilog-case-keywords, verilog-separator-keywords, verilog-completion) - (verilog-signals-not-in, verilog-symbol-detick-text) - (verilog-modi-cache-preserve-tick, verilog-modi-cache-preserve-buffer) - (verilog-forward-close-paren, verilog-backward-open-paren) - (verilog-backward-open-bracket): Doc fixes. - - * progmodes/gud.el (gud-def, gud-last-speedbar-stackframe): Doc fixes. - (gud-symbol, gud-expansion-speedbar-buttons, gud-speedbar-buttons) - (gud-gdb-run-command-fetch-lines, gud-dbx-use-stopformat-p) - (gud-jdb-classpath, gud-jdb-find-source-using-classpath, jdb) - (gud-find-class, gdb-script-mode, gud-tooltip-event, gud-tooltip-tips): - Fix typos in docstrings. - -2008-02-17 Stefan Monnier - - * progmodes/ada-mode.el (ada-font-lock-syntactic-keywords): - Recognize ''' just like any other char-constant. - -2008-02-16 Stefan Monnier - - * vc-hooks.el (vc-find-root): Remove initial loop because it's not - careful enough. Detect the uid-change all within the main loop. - -2008-02-14 Stefan Monnier - - * textmodes/sgml-mode.el (sgml-mode): Fix comment syntax. - -2008-02-13 Stefan Monnier - - * hilit-chg.el (highlight-save-buffer-state): New macro. - (highlight-save-buffer-state, hilit-chg-set-face-on-change) - (hilit-chg-clear): Use it to preserve the modified-p flag. - (highlight-changes-rotate-faces): Don't mess with the undo-list. - -2008-02-13 Michael Albinus - - * net/ange-ftp.el (ange-ftp-cf1): Quote FILENAME. - -2008-02-12 Juri Linkov - - * startup.el (fancy-startup-screen, normal-splash-screen): - Set default-directory to command-line-default-directory. - - * desktop.el (after-init-hook): Set inhibit-startup-screen to t - after reading the desktop. - -2008-02-12 Stefan Monnier - - * font-lock.el (font-lock-set-defaults): Unset previously set variables - when needed. - -2008-02-12 Juanma Barranquero - - * uniquify.el (uniquify-buffer-base-name): New function. - Suggested by Stefan Monnier . - - * desktop.el (uniquify-managed): Don't defvar. - (desktop-buffer-info): Use `uniquify-buffer-base-name', not - `uniquify-managed'. Return also the buffer's base name. - (desktop-save): When saving the buffer info, filter out the base name, - and save it as buffer name if the buffer is managed by uniquify. - -2008-02-10 Stefan Monnier - - * diff-mode.el (diff-beginning-of-file-and-junk): If we're on the - Index: line, don't search backward for the previous one. - -2008-02-10 ,AF(Bvar Arnfj,Av(Br,Ap(B Bjarmason (tiny change) - - * net/rcirc.el (rcirc-url-regexp): Replace definition by copying - from gnus-button-url-regexp. - -2008-02-09 Eli Zaretskii - - * progmodes/compile.el (compilation-next-error): Doc fix. - (compilation-find-file): Doc fix. - -2008-02-09 Glenn Morris - - * net/net-utils.el (ipconfig-program, ipconfig-program-options): - Add obsolete aliases to the old names. - -2008-02-08 Richard Stallman - - * net/net-utils.el (ifconfig): Rename from ipconfig. - (ipconfig): Alias to ifconfig. - (ifconfig-program): Rename from ipconfig-program. - (ifconfig-program-options): Rename from ipconfig-program-options. - -2008-02-08 Glenn Morris - - * custom.el (custom-theme-set-variables): Sort symbols that are - dependencies before symbols that depend on them. - (custom-enabled-themes): Set after custom-theme-directory. - -2008-02-04 Juanma Barranquero - - * w32-vars.el (w32-system-shells): Add TCC (new name for 4NT). - -2008-02-04 Michael McNamara - - * progmodes/verilog-mode.el (verilog-declaration-core-re): - Add port directions by themselves, with no qualification, as base - item of a declaration. - (verilog-pretty-declarations): Add new flag that inhibits printing - to the message buffer. - (verilog-pretty-expr): Add new flag that inhibits printing to the - message buffer. Improve handling of the many types of expression - line up. - (verilog-just-one-space): Don't print an empty message. - (verilog-get-lineup-indent): Rework to support the better handling - of expression lineup for verilog-pretty-expr. - (verilog-auto-wire): Pass the quiet flag to verilog-pretty-expr. - (verilog-mode-version, verilog-mode-release-date): Update. - -2008-02-04 Stefan Monnier - - * subr.el (cancel-change-group): Don't move point. - -2008-02-02 Michael Albinus - - Sync with Tramp 2.0.57. - - * net/tramp.el (tramp-handle-make-auto-save-file-name) - (tramp-completion-dissect-file-name, tramp-find-executable): - Use `mapc' instead of `mapcar'. - (tramp-open-connection-setup-interactive-shell): Send only single - prompt setting commands, in order to avoid double-prompt. - - * net/tramp-vc.el (tramp-vc-do-command): Use `mapc' instead of - `mapcar'. - - * net/trampver.el: Update release number. - -2008-02-01 Chong Yidong - - * progmodes/etags.el (next-file): Improve revert message. - -2008-02-01 Juanma Barranquero - - * term/w32-win.el (image-library-alist): Prefer libpng12 to libpng13, - because the latter is in fact a 1.2.8 build distributed with GTK+ (as - of today, the most recent libpng is 1.2.24). - -2008-02-01 Thien-Thi Nguyen - - * vc.el (vc-update): Fix bug: Specify branch tip as - vc-checkout REVISION. Reported by Dan Nicolaescu. - -2008-02-01 Stefan Monnier - - * simple.el (reindent-then-newline-and-indent): Be careful about the - unusual case where indent-according-to-mode moves point. - -2008-02-01 Dan Nicolaescu - - * progmodes/verilog-mode.el (verilog-sk-prompt-msb) - (verilog-sk-module, verilog-sk-function, verilog-sk-begin) - (verilog-sk-if, verilog-sk-wire, verilog-sk-for) - (verilog-sk-state-machine): Quote all calls to - "auxiliary skeleton"s to prevent infloops. - -2008-01-31 Jason Rumney - - * w32-fns.el: Partially revert 2007-11-10 change. - -2008-01-31 Martin Rudalics - - * mail/rmail.el (rmail-highlight): Fix specification. - Reported by pod . - -2008-01-31 Jason Rumney - - * term/w32-win.el (image-library-alist): Prefer libxpm.dll. - -2008-01-30 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-set-format-regexp): New constant. - (gdb-var-set-format-handler): New function. - (gdb-var-set-format): Use it. - -2008-01-29 Alan Mackenzie - - * progmodes/cc-langs.el (c-block-stmt-1-kwds, c-block-stmt-2-kwds) - (c-simple-stmt-kwds): New Objective C keywords: @finally, @try, - @catch, @synchronized, @throw. - - * progmodes/cc-langs.el (c-specifier-key): Exclude "template" - from this regexp; part of same fix as next change to cc-engine.el. - - * progmodes/cc-engine.el (c-guess-basic-syntax, CASE 5A.5): - Anchor the "{" of a template function correctly on "template", not the - following "<". - - * progmodes/cc-defs.el (c-version): Increase to 5.31.5. - -2008-01-29 Richard Stallman - - * progmodes/etags.el (tags-query-replace): Delete unused optional args. - Doc fix. - - * files.el (hack-local-variables): Don't query about fake variables. - -2008-01-27 Nick Roberts - - * progmodes/gdb-ui.el (gdb-create-define-alist): Don't call - gdb-cpp-define-alist-program if file is nil (currently only - " *partial-output-..."). - -2008-01-27 Alan Mackenzie - - * progmodes/cc-awk.el, progmodes/cc-engine.el: Correct typos, - enhance comments. - -2008-01-27 Richard Stallman - - * allout.el: Many doc fixes. - (allout-encrypt-string): Fix error message. - -2008-01-26 Alan Mackenzie - - * progmodes/cc-vars.el (c-hanging-braces-alist): New element for - arglist-cont-nonempty. - - * progmodes/cc-cmds.el (c-brace-newlines): Determine the newlines - for a brace with syntax arglist-cont-nonempty. - - * progmodes/cc-styles.el (c-style-alist): Add elements for - arglist-cont-nonempty into 5 styles (gnu, ellemtel, linux, python, - awk). - -2008-01-26 Alan Mackenzie - - * progmodes/cc-defs.el (c-save-buffer-state): - Bind buffer-file-name and buffer-file-truename to nil, to prevent - primitives generating "buffer is read only" messages. - -2008-01-26 Eli Zaretskii - - * progmodes/etags.el (tags-query-replace): Doc fix. - -2008-01-26 Phil Sung (tiny change) - - * wdired.el (wdired-get-filename): Change `(1+ beg)' to `beg' so - that the filename end is found even when the filename is empty. - Fixes error and spurious newlines when marking files for deletion. - -2008-01-25 Juanma Barranquero - - * allout.el (allout-unload-function): New function. - -2008-01-25 Sven Joachim - - * view.el (kill-buffer-if-not-modified): Don't pass t to - buffer-modified-p. - -2008-01-25 Juanma Barranquero - - * allout.el (allout-prefix-data): Doc fix. - (allout-show-current-subtree): Reflow docstring. - (allout-use-mode-specific-leader, allout-use-hanging-indents) - (produce-allout-mode-map, allout-overlay-interior-modification-handler) - (allout-next-heading, allout-previous-heading, allout-rebullet-heading) - (allout-rebullet-topic, allout-rebullet-topic-grunt, allout-kill-topic) - (allout-copy-topic-as-kill, allout-listify-exposed) - (allout-process-exposed, allout-encrypted-key-info) - (allout-update-passphrase-mnemonic-aids) - (allout-next-topic-pending-encryption) - (allout-tests-globally-true): Fix typos in docstrings. - -2008-01-24 Stefan Monnier - - * vc.el (vc-version-diff): Make sure we shrink the right window. - -2008-01-23 Jason Rumney - - * lpr.el (printer-name): Do not set on MS Windows. - -2008-01-20 Glenn Morris - - * progmodes/python.el: Quote all calls to "auxiliary skeleton"s to - prevent infloops. - -2008-01-20 Martin Svenson (tiny change) - - * progmodes/python.el (python-imports): Default to "None". - -2008-01-19 Dan Nicolaescu - - * progmodes/sh-script.el (sh-basic-offset): - * progmodes/cc-vars.el (c-syntactic-indentation) - (c-syntactic-indentation-in-macros): Mark as safe. - -2008-01-18 Richard Stallman - - * icomplete.el (icomplete-get-keys): - Look up KEYS using all maps in proper buffer. - -2008-01-16 Alan Mackenzie - - * progmodes/cc-vars.el (c-constant-symbol): Put this defun inside an - eval-and-compile, so as to permit byte-compiling (e.g. in bootstrap). - -2008-01-16 Juanma Barranquero - - * frame.el (display-mm-height, display-mm-width): - * whitespace.el (whitespace-check-leading-whitespace) - (whitespace-check-trailing-whitespace) - (whitespace-check-spacetab-whitespace) - (whitespace-check-indent-whitespace) - (whitespace-check-ateol-whitespace): - * progmodes/ada-xref.el (ada-convert-file-name): Fix typo in docstring. - -2008-01-16 Glenn Morris - - * comint.el (comint-regexp-arg): Fix no-input case. - -2008-01-16 Ulf Jasper - - * calendar/icalendar.el (icalendar-export-file) - (icalendar-import-file): Restore significant trailing whitespace - in `interactive' prompts. - -2008-01-15 Dan Nicolaescu - - * vc-arch.el (vc-arch-delete-rej-if-obsolete): Remove the - after-save-hook so that it is not called multiple times. - - * vc-svn.el (vc-svn-resolve-when-done): Likewise. - -2008-01-15 Glenn Morris - - * diff-mode.el (diff-end-of-hunk): Revert 2008-01-08 change. - -2008-01-14 Alan Mackenzie - - * progmodes/cc-vars.el (c-constant-symbol): New function which - supersedes c-const-symbol. During a customize-.. call it enables - an element of (e.g.) c-hanging-braces alist to have its name - displayed, even when the default value of c-h-b etc. doesn't - include the elemnt. Replace uses of the old function by the new. - - * progmodes/cc-vars.el (c-hanging-braces-alist): Remove the - obscure non-working fragment ":value c-". - - * progmodes/cc-engine.el (c-guess-basic-syntax): Prevent a macro - call inside a struct being recognised as a K&R argument. - -2008-01-14 Jason Rumney - - * image.el (image-type): Use image-type-from-file-name (from trunk - 2007-05-21 Chong Yidong ). - -2008-01-12 Glenn Morris - - * woman.el (woman-parse-numeric-arg): Change handling of `==': - can be interned without a function definition. - -2008-01-12 Eli Zaretskii - - * view.el (view-file-other-window, view-file-other-frame): - Don't kill the buffer if it is modified. Doc fixes. - (kill-buffer-if-not-modified): New function. - (view-file): Don't kill the buffer if it is modified. - - * progmodes/ebrowse.el (ebrowse-view-file-other-window): Delete. - (ebrowse-view/find-file-and-search-pattern): - Call view-file-other-window instead of ebrowse-view-file-other-window. - (ebrowse-view-file-other-frame): Don't call - current-window-configuration. Fix second argument in the call to - view-mode-enter. Doc fix. - -2008-01-11 Richard Stallman - - * subr.el (atomic-change-group): Prevent undo list truncation. - -2008-01-11 Martin Rudalics - - * cus-start.el (all): Add missing version entries. - -2008-01-10 Dan Nicolaescu - - * files.el (safe-local-eval-forms): - Mark (add-hook 'write-file-hooks 'time-stamp) as safe. - -2008-01-10 Nick Roberts - - * comint.el (comint-insert-input): Set point first. - - * progmodes/gdb-ui.el (gdb-dequeue-input): Make doubly sure - session doesn't hang because gdb-pending-triggers is non-nil. - (gdb-frame-handler): Use buffer-file-name instead of - buffer-name in case of duplicate file names. - -2008-01-10 Dan Nicolaescu - - * progmodes/verilog-mode.el (verilog-mode-map): Don't bind C-M-a, - C-M-e and C-M-h for emacs, they work by default. - (verilog-emacs-features): Remove. - (verilog-setup-dual-comments, verilog-populate-syntax-table): - Remove. Move syntax table initialization ... - (verilog-mode-syntax-table): ... here. - (verilog-mode): Don't initialize the syntax table here. - (verilog-mark-defun): Only do something useful for XEmacs, Emacs - does not need it. - -2008-01-10 Glenn Morris - - * shell.el (shell-dirtrack-verbose, shell-mode) - (shell-directory-tracker, shell-dirtrack-mode): Doc fix. - (dirtrack-toggle, dirtrack-mode): No longer alias to - shell-dirtrack-mode. - -2008-01-10 Kenichi Handa - - * international/mule-cmds.el (select-safe-coding-system): - When a buffer is modified, cancel the writing. - -2008-01-09 Wilson Snyder - - * progmodes/verilog-mode.el (verilog-booleanp): New function for - backward compatibility. Replace all uses of booleanp with - verilog-booleanp. - -2008-01-09 Dan Nicolaescu - - * vc-hg.el (vc-hg-diff): Don't pass an empty string. - -2008-01-09 Wilson Snyder - - * progmodes/verilog-mode.el (top-level): Fix spacing. - (verilog-mode-version, verilog-mode-release-date): Update version - number. - (verilog-mode-release-emacs): New variable. - (compile-command, reporter-prompt-for-summary-p): Define for byte - compiler. - (verilog-startup-message-lines) - (verilog-startup-message-displayed) - (verilog-display-startup-message): Remove. - (verilog-highlight-p1800-keywords): Improve docstring. - (sigs-in, sigs-out, got-sig, got-rvalue, uses-delayed) - (vector-skip-list): Only defvar at compile time. - (verilog-highlight-translate-off, verilog-indent-level) - (verilog-indent-level-module, verilog-indent-level-declaration) - (verilog-indent-declaration-macros, verilog-indent-lists) - (verilog-indent-level-behavioral) - (verilog-indent-level-directive, verilog-cexp-indent) - (verilog-case-indent, verilog-auto-newline) - (verilog-auto-indent-on-newline, verilog-tab-always-indent) - (verilog-tab-to-comment, verilog-indent-begin-after-if) - (verilog-align-ifelse, verilog-minimum-comment-distance) - (verilog-auto-lineup, verilog-highlight-p1800-keywords) - (verilog-auto-endcomments, verilog-auto-read-includes) - (verilog-auto-star-expand, verilog-auto-star-save) - (verilog-library-flags, verilog-library-directories) - (verilog-library-files, verilog-library-extensions) - (verilog-active-low-regexp, verilog-auto-sense-include-inputs) - (verilog-auto-sense-defines-constant, verilog-auto-reset-widths) - (verilog-assignment-delay, verilog-auto-inst-vector) - (verilog-auto-inst-template-numbers) - (verilog-auto-input-ignore-regexp) - (verilog-auto-inout-ignore-regexp) - (verilog-auto-output-ignore-regexp) - (verilog-auto-unused-ignore-regexp, verilog-typedef-regexp): - Add safe-local-variable properties. - (verilog-statement-menu, verilog-company) - (verilog-re-search-forward, verilog-re-search-backward) - (verilog-error-regexp-add, verilog-end-block-re) - (verilog-emacs-features, verilog-populate-syntax-table) - (verilog-setup-dual-comments, verilog-type-font-keywords) - (verilog-inside-comment-p, electric-verilog-backward-sexp) - (verilog-backward-sexp, verilog-forward-sexp) - (verilog-font-lock-init, verilog-mode) - (electric-verilog-terminate-line, electric-verilog-semi) - (electric-verilog-tab, verilog-insert-1, ) - (verilog-insert-indices, verilog-generate-numbers) - (verilog-comment-region, verilog-label-be) - (verilog-beg-of-statement, verilog-in-case-region-p) - (verilog-in-struct-region-p, verilog-in-generate-region-p) - (verilog-in-fork-region-p, verilog-backward-case-item) - (verilog-set-auto-endcomments, verilog-get-expr) - (verilog-expand-vector-internal, verilog-surelint-off) - (verilog-batch-execute-func, verilog-calculate-indent) - (verilog-calc-1, verilog-calculate-indent-directive) - (verilog-leap-to-head, verilog-continued-line) - (verilog-backward-token, verilog-backward-syntactic-ws) - (verilog-forward-syntactic-ws, verilog-backward-ws&directives) - (verilog-forward-ws&directives, verilog-at-constraint-p) - (verilog-skip-backward-comments, verilog-indent-line-relative) - (verilog-do-indent, verilog-indent-comment) - (verilog-more-comment, verilog-pretty-declarations) - (verilog-pretty-expr, verilog-just-one-space) - (verilog-indent-declaration, verilog-get-completion-decl) - (verilog-goto-defun, verilog-showscopes, verilog-header) - (verilog-signals-combine-bus, verilog-read-decls) - (verilog-read-always-signals-recurse, verilog-read-instants) - (verilog-read-auto-template, verilog-set-define) - (verilog-read-defines, verilog-read-signals, verilog-getopt) - (verilog-is-number, verilog-expand-dirnames) - (verilog-modi-lookup, verilog-modi-cache-results) - (verilog-insert-one-definition, verilog-make-width-expression) - (verilog-delete-autos-lined, verilog-auto-save-check) - (verilog-auto-arg, verilog-auto-inst-port, verilog-auto-inst) - (verilog-auto-inst-param, verilog-auto-reg) - (verilog-auto-reg-input, verilog-auto-wire, ) - (verilog-auto-output, verilog-auto-output-every) - (verilog-auto-input, verilog-auto-inout) - (verilog-auto-inout-module, verilog-auto-sense) - (verilog-auto-reset, verilog-auto-tieoff, verilog-auto-unused) - (verilog-auto-ascii-enum, verilog-auto) - (verilog-sk-define-signal, verilog-mode-mouse-map) - (verilog-load-file-at-mouse, verilog-load-file-at-point) - (verilog-library-files): Cleanup spacing of )'s they should not be - on unique lines. Fix checkdoc warnings. - -2008-01-09 Glenn Morris - - * ffap.el (ffap-string-at-point-mode-alist): Add `\' to file - entry, for Windows. - -2008-01-09 Vinicius Jose Latorre - - * ps-print.el: Some face attributes (like :strike-through) was not - being recognised. Reported by Leo . - (ps-face-strikout-p, ps-face-overline-p, ps-face-box-p): New funs. - (ps-screen-to-bit-face): Fix code. - -2008-01-08 Kevin Ryde - - * progmodes/compile.el (compilation-error-regexp-alist-alist): - For perl, allow "during global destruction" at end. - -2008-01-08 Glenn Morris - - * diff-mode.el (diff-end-of-hunk): Don't match empty lines in - unified format. - - * mouse.el (mouse-major-mode-menu): Suppress duplicate menus. - -2008-01-08 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-list-children-1): Put varnum in - quotes in case of spaces, e.g. STL containers (not pretty). - -2008-01-07 Dan Nicolaescu - - * vc-hg.el (vc-hg-log-view-mode): Handle the user field better. - -2008-01-07 Nick Roberts - - * progmodes/gdb-ui.el (gud-gdb-command-name): - Explain "--annotate=3" option is necessary for the Graphical Interface. - -2008-01-07 Dan Nicolaescu - - * vc-hg.el (vc-hg-dir-state): Pass the dir argument to vc-hg-command. - -2008-01-07 Glenn Morris - - * calc/calc-help.el (calc-full-help): Use emacs-copyright. - -2008-01-06 Nick Roberts - - * progmodes/hideif.el (hide-ifdef-mode-menu): Put hide-ifdef commands - on menu bar. - -2008-01-06 Michael Albinus - - * ffap.el (ffap-read-file-or-url): Let-bind - `file-name-handler-alist' due to `rfn-eshadow-update-overlay'. - -2008-01-05 Sven Joachim - - * vc-bzr.el: Fix typo in header. - -2008-01-05 Eli Zaretskii - - * Makefile.in (custom-deps, finder-data): Depend on autoloads - instead of loaddefs.el. - -2008-01-05 Glenn Morris - - * progmodes/verilog-mode.el: Replace all instances of - string-to-int with string-to-number, insert-string with insert, - and read-input with read-string. - (top-level): No need to require imenu, reporter, dinotrace, vc, - font-lock when compiling. Always require compile. Relegate remaining - compatibility cruft to XEmacs. Don't require font-lock. - (verilog-version): Remove superfluous concat. - (dinotrace-unannotate-all, zmacs-activate-region, customize-apropos): - No need to define. - (verilog-regexp-opt): On Emacs, just make it an alias for regexp-opt. - (verilog-font-lock-keywords, verilog-font-lock-keywords-1) - (verilog-font-lock-keywords-2, verilog-font-lock-keywords-3) - (verilog-startup-message-displayed): These are variables, not constants. - (verilog-batch-execute-func, verilog-auto-inst) - (verilog-auto-inst-param): Use mapc rather than mapcar. - (sigs-in, sigs-inout, sigs-out): Define for compiler rather than - actually defining. - (verilog-modi-get-decls, verilog-modi-get-sub-decls) - (verilog-modi-get-outputs, verilog-modi-get-inouts) - (verilog-modi-get-inputs, verilog-modi-get-wires) - (verilog-modi-get-regs, verilog-modi-get-assigns) - (verilog-modi-get-consts, verilog-modi-get-gparams) - (verilog-modi-get-sub-outputs, verilog-modi-get-sub-inouts) - (verilog-modi-get-sub-inputs): Move inline functions earlier in - the file. - (sigs-in, sigs-out): Don't declare multiple times. - (got-sig, got-rvalue, uses-delayed): Define for compiler with just - `defvar'. - (verilog-auto): Call dinotrace-unannotate-all only if bound. - (verilog-module-inside-filename-p): No need to wrap fboundp test - in condition-case. - (reporter-submit-bug-report): Autoload it. - (verilog-mark-defun): Call zmacs-activate-region only if bound. - (verilog-font-customize): Call customize-apropos only if bound. - (verilog-getopt-flags, verilog-auto-reeval-locals): - Use make-local-variable rather than make-variable-buffer-local. - (verilog-company, verilog-project, verilog-modi-cache-list): - Move make-variable-buffer-local calls to top-level. - (font-lock-defaults-alist): Don't define it. - (verilog-need-fld): Remove. - (verilog-font-lock-init): Don't set font-lock-defaults-alist. - (verilog-mode): Only call make-local-hook on XEmacs. - Set font-lock-defaults rather than using verilog-font-lock-init. - - * progmodes/verilog-mode.el (top-level): Don't require compile. - (compilation-error-regexp-alist, compilation-last-buffer): - Define for compiler. - (verilog-insert-1): New function. - (verilog-insert-indices, verilog-generate-numbers): Doc fixes. - Use verilog-insert-1. - (verilog-surelint-off): Use next-error-last-buffer if bound. - Check compile buffer is live. - -2008-01-05 Stefan Monnier - - * vc-cvs.el (vc-cvs-annotate-time): Don't move backward when text - gets inserted out-of-order. - -2008-01-04 Riccardo Murri - - * vc-bzr.el: Copyright and version headers update. - Remove some outdated comments through the whole file. - (vc-bzr-program-args): Remove because unused. - (vc-bzr-log-switches): New customization option. - (vc-bzr-command): Use LC_MESSAGES=C instead of LC_ALL=C. No longer - use `vc-bzr-program-args'. - (vc-bzr-register): Fix for working with both 22.1 and CVS version of - `vc-find-root' (patch by Andreas Hoenen). - (vc-bzr-status): Update regex to match latest Bzr output. - Remove redundant test. - (vc-bzr-init-version): New function. - (vc-bzr-unregister): Must not delete file. - (vc-bzr-find-version): New function. - (vc-bzr-checkout): Argument `rev' is explicit revision only if it's - a non-empty string, otherwise take head revision. - (vc-bzr-print-log): Pass `vc-bzr-log-switches' to "bzr log". - (vc-bzr-diff): Simpler build of the revision spec string. - (vc-annotate-convert-time, vc-bzr-annotate-difference): - Remove: compatibility hacks for Emacs21, not needed in Emacs 22. - (vc-bzr-dir-state): Add code comments. Removed redundant statement. - (vc-bzr-dired-state-info): Only provide custom strings for - overloaded VC state 'edited; otherwise fallback to - `vc-default-dired-state-info'. - -2008-01-04 Dan Nicolaescu - - * vc-git.el (vc-git-dir-state): - * vc-hg.el (vc-hg-dir-state): Set the vc-backend property. - -2008-01-04 Richard Stallman - - * delsel.el (delete-selection-mode): Doc fix. - -2008-01-04 Glenn Morris - - * version.el (emacs-copyright): Update to 2008. - -2008-01-03 Nick Roberts - - * progmodes/gud.el (gud-def): Do nothing if gud-running is t. - (gud-speedbar-menu-items): Add item for gdb-var-set-format below. - - * progmodes/gdb-ui.el (gdb-var-set-format): Set the output format - of watch expressions (only works fully with GDB 6.7 or later). - -2008-01-03 Dan Nicolaescu - - * time-stamp.el (time-stamp-time-zone): - * whitespace.el (whitespace-check-buffer-leading) - (whitespace-check-buffer-trailing) - (whitespace-check-buffer-indent) - (whitespace-check-buffer-spacetab) - (whitespace-check-buffer-ateol): - * progmodes/sh-script.el (sh-indentation): - * textmodes/ispell.el (ispell-local-pdict): - Add safe-local-variable properties. - -2007-12-31 Richard Stallman - - * cus-edit.el (custom-add-parent-links): New arg DOC-INITIAL-STRING. - Defaults for INITIAL-STRING and DOC-INITIAL-STRING do not include - `parent'. - (custom-group-value-create): Pass two args to custom-add-parent-links. - -2007-12-29 Richard Stallman - - * font-lock.el (font-lock-prepend-text-property) - (font-lock-append-text-property): Canonicalize the face and - font-lock-face properties. - - * faces.el (facep): Doc fix. - - * startup.el (fancy-startup-tail, fancy-about-text) - (fancy-startup-text): Regularize format of face property. - - * facemenu.el (list-colors-print): Use :background and :foreground - instead of background-color and foreground-color. - -2007-12-29 Drew Adams - - * cus-edit.el (custom-add-parent-links): - Fill the "Parent documentation" text. - -2007-12-29 Eli Zaretskii - - * textmodes/ispell.el (ispell-grep-command): Use "grep" on - MS-Windows and MS-DOS. - (ispell-grep-options): Use "-Ei" on MS-Windows and MS-DOS. - -2007-12-28 YAMAMOTO Mitsuharu - - * progmodes/grep.el (rgrep): Fix last change. - -2007-12-27 Richard Stallman - - * progmodes/compile.el (compilation-start): Set initial visible - point properly even when compilation buffer already current. - -2007-12-26 Richard Stallman - - * files.el (conf-mode-maybe): New function. - (auto-mode-alist): Use conf-mode-maybe for .conf etc. - -2007-12-26 Martin Rudalics - - * textmodes/fill.el (fill-find-break-point): Fix doc-string typo. - -2007-12-25 Dan Nicolaescu - - * progmodes/asm-mode.el (asm-mode-map): Add a major mode menu. - -2007-12-25 Richard Stallman - - * comint.el (comint-mode-map): Explicitly bind `delete' and `kp-delete' - so they never do EOF. - -2007-12-23 Richard Stallman - - * dired-aux.el: Load dired.el at run time too. - - * faces.el (copy-face): Create the new face explicitly if it - does not exist already. - -2007-12-23 Andreas Schwab - - * files.el (switch-to-buffer-other-frame): Return the buffer - switched to. - -2007-12-23 Juri Linkov - - * term/mac-win.el (mac-apple-event-map): Bind About Emacs menu - item to about-emacs instead of display-splash-screen. - -2007-12-22 Eli Zaretskii - - * simple.el (minibuffer-history, shell-command-history) - (set-variable-value-history): - * replace.el (regexp-history): - * international/mule-cmds.el (input-method-history): - * files.el (file-name-history): Add reference to history-length in - the doc string. - -2007-12-22 Richard Stallman - - * comint.el (comint-password-prompt-regexp): Match `Enter Password'. - -2007-12-21 Jason Rumney - - * find-dired.el (find-name-arg): New custom variable. - (find-name-dired): Use it. - (find-dired-find-program): Remove. - (find-dired): Use find-program. - (find-grep-dired): Use grep-program. - - * progmodes/grep.el (rgrep): Use find-name-arg. - -2007-12-21 Martin Rudalics - - * autoinsert.el (auto-insert-alist): Remove nonsensical precision - specifier from format-string. Reported by Ye Wenbin. - -2007-12-19 Martin Rudalics - - * cus-start.el: Use correct group name for members of mode-line group. - -2007-12-17 Thien-Thi Nguyen - - * progmodes/cc-vars.el (defcustom-c-stylevar): - Revert to pre-2007-12-12 version. - -2007-12-15 Richard Stallman - - * emacs-lisp/find-func.el (find-function-after-hook): Add :type. - - * info.el (Info-clone-buffer): Rename from Info-clone-buffer-hook. - Use changed. - - * startup.el (fancy-splash-help-echo): Var deleted. - (fancy-splash-insert): Get help-echo from (startup-echo-area-message). - (fancy-about-screen): Don't display fancy-splash-help-echo. - - * menu-bar.el (menu-bar-describe-menu): Remove dots from menu text. - -2007-12-12 Thien-Thi Nguyen - - * progmodes/cc-vars.el (defcustom-c-stylevar): Rewrite. - -2007-12-11 Dan Nicolaescu - - * progmodes/verilog-mode.el (set-buffer-menubar): Remove unused - function. - (add-submenu): Only define for XEmacs. - (verilog-regexp-words): Revert previous change, keep the other - definition. - -2007-12-09 Dan Nicolaescu - - * progmodes/perl-mode.el (perl-continued-statement-offset) - (perl-continued-brace-offset, perl-brace-offset) - (perl-brace-imaginary-offset, perl-label-offset): - * progmodes/cperl-mode.el (cperl-brace-offset) - (cperl-continued-brace-offset, cperl-label-offset) - (cperl-continued-statement-offset) - (cperl-extra-newline-before-brace, cperl-merge-trailing-else): - Add safe-local-variable properties. - -2007-12-08 Dan Nicolaescu - - * progmodes/verilog-mode.el (verilog-mode-map) - (verilog-template-map, verilog-mode-mouse-map): Fix typos. - (verilog-colorize-include-files): Use only overlay functions so - that it can work on both Emacs and XEmacs. - (set-extent-keymap): Remove unused defun. - (verilog-kill-existing-comment, verilog-insert-date) - (verilog-insert-year): Rename in order not to pollute the global - namespace from kill-existing-comment, insert-date and - insert-year, respectively. - (verilog-set-auto-endcomments, verilog-header): Update callers. - - * files.el (auto-mode-alist): Recognize verilog files. - - * progmodes/verilog-mode.el (verilog-string-replace-matches) - (verilog-string-remove-spaces, verilog-re-search-forward) - (verilog-re-search-backward, verilog-re-search-forward-quick) - (verilog-re-search-backward-quick, verilog-get-beg-of-line) - (verilog-get-end-of-line, verilog-within-string): Move definitions - before first use. No code changes. - -2007-12-08 Dan Nicolaescu - - * progmodes/verilog-mode.el (verilog-mode-version) - (verilog-mode-release-date): Don't use expanding keywords. - (provide): Move to the end of file. - (fboundp): Don't check if eval-when-compile is bound, it is used - later in the file without checking. - (when, unless): Copy definitions from subr.el. - (char-before, defcustom, defface, customize-group) - (verilog-batch-error-wrapper): Don't use old style backquotes. - (verilog-regexp-opt): Avoid using the cl function case. - (verilog-regexp-words): Remove duplicated definition. - (verilog-mode-abbrev-table): Remove, duplicate. - (verilog-mode-map, verilog-template-map, verilog-mode-mouse-map): - Declare and initialize in one step. - (verilog-declaration-prefix-re, verilog-declaration-re) - (verilog-end-of-statement, verilog-indent-declaration) - (verilog-get-lineup-indent): Remove trailing whitespace. - (verilog-mode): Fix autoload cookie. - Set beginning-of-defun-function and end-of-defun-function. - Use when instead of if. - (verilog-emacs-features, verilog-auto-ascii-enum) - (verilog-insert-indices): Escape braces in doc strings. - -2007-12-08 Michael McNamara - Wilson Snyder - - * progmodes/verilog-mode.el: New file. - -2007-12-08 Eli Zaretskii - - * international/latexenc.el (latexenc-find-file-coding-system): - If both coding-system-for-write and buffer-file-coding-system of - latex-main-file are nil, use `undecided'. - -2007-12-06 Jason Rumney - - * mouse.el (mouse-buffer-menu-alist): Keep buffer names left aligned. - -2007-12-04 Juanma Barranquero - - * ido.el (ido-save-history): Use emacs-mule coding system - instead of utf-8 to save filenames (it's safer in Emacs 22). - Set the `coding' local variable on the first line of the file. - -2007-12-04 Karl Fogel - - * saveplace.el (save-place-alist-to-file): Save with 'emacs-mule' - coding system. This ports revisions 1.40 and 1.41 over to the - EMACS_22_BASE branch, but with the right coding system for Emacs - 22 to reliably record filenames. Suggested by Eli Zaretskii. - -2007-12-01 Richard Stallman - - * wid-edit.el (widget-type): Doc fix. - -2007-12-01 Dan Nicolaescu - - * emacs-lisp/byte-run.el (declare-function): Change to a macro. - -2007-12-01 Alexandre Julliard - - * vc-git.el (vc-git-dir-state): Fix the git command arguments. - -2007-11-30 Stefan Monnier - - * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords): - Don't match "sub { (...) ... }". - -2007-11-29 Richard Stallman - - * international/mule-cmds.el (toggle-input-method-active): New var. - (toggle-input-method): Bind toggle-input-method-active to t. - Error if it was already non-nil. - -2007-11-29 Glenn Morris - - * calendar/time-date.el (with-decoded-time-value): Doc fix. - -2007-11-29 Ari Roponen (tiny change) - - * calendar/time-date.el (encode-time-value): Doc fix. - -2007-11-26 Juanma Barranquero - - * emacs-lisp/bytecomp.el (batch-byte-recompile-directory): Doc fix. - -2007-11-24 Kenichi Handa - - * international/ucs-tables.el (ucs-8859-7-alist): Update the table. - -2007-11-22 Jan Dj,Ad(Brv - - * term/x-win.el (x-gtk-map-stock): Check if FILE is a string. - -2007-11-21 Juanma Barranquero - - * textmodes/paragraphs.el (forward-sentence): Doc fix. - Reported by Drew Adams . - -2007-11-20 Glenn Morris - - * emacs-lisp/byte-run.el (declare-function): Define as a no-op, - for compatibility with Emacs 23. - -2007-11-19 Juanma Barranquero - - * replace.el (map-query-replace-regexp): Doc fix (revert part of - 2000-05-21T17:04:47Z!fx@gnu.org made on 2000-05-21 with no ChangeLog entry). - -2007-11-19 Nick Roberts - - * progmodes/gdb-ui.el: Update commentary. - -2007-11-16 Eli Zaretskii - - * international/mule-cmds.el (set-locale-environment): - Set default-file-name-coding-system _after_ keyboard and terminal - coding systems. This fixes last change. - - * mail/rmail.el (rmail-current-subject-regexp): Allow more than - one space after "Subject:". - -2007-11-16 Juanma Barranquero - - * subr.el (make-variable-frame-local): - Fix typo in obsolescence declaration. - -2007-11-16 Glenn Morris - - * mail/mail-extr.el (mail-extr-all-top-level-domains): Update domains. - -2007-11-16 Rob Riepel - - * emulation/tpu-extras.el (tpu-next-line, tpu-previous-line) - (tpu-forward-line, tpu-backward-line, tpu-scroll-window-down) - (tpu-scroll-window-up): Replace next-line-internal -> line-move. - -2007-11-16 Stefan Monnier - - * pcvs-parse.el (cvs-parse-table): Ignore errors when looking up files - in order to determine if there's a conflict. - -2007-11-16 Juri Linkov - - * man.el (Man-heading-regexp): Add 0-9. - (Man-first-heading-regexp): Remove leading space [ \t]* before NAME. - -2007-11-15 Juanma Barranquero - - * progmodes/cc-engine.el (c-crosses-statement-barrier-p): - Fix typo in docstring. - - * emulation/cua-base.el (cua-paste-pop): Fix typo in docstring. - (cua-highlight-region-shift-only): Doc fix. - -2007-11-15 Richard Stallman - - * bindings.el (esc-map): Bind C-M-l here; moved from reposition.el. - - * reposition.el (reposition-window): - Binding C-M-l moved to bindings.el. - - * bindings.el (ctl-x-4-map): Bind C-x 4 a here; moved from add-log.el. - - * add-log.el (add-change-log-entry-other-window): - Key binding C-x 4 a moved to bindings.el. - - * bindings.el (minibuffer-local-map): Bind C-tab here; moved - from filecache.el. - - * filecache.el: Minibuffer map bindings moved to bindings.el. - -2007-11-14 Jason Rumney - - * international/mule-cmds.el (set-locale-environment): - Set default-file-name-coding-system from system defaults on Windows. - -2007-11-14 Nick Roberts - - * progmodes/gdb-ui.el (gdb-parent-bptno-enabled): New variable. - (gdb-breakpoint-regexp, gdb-mouse-toggle-breakpoint-margin) - (gdb-mouse-toggle-breakpoint-fringe, gdb-delete-breakpoint) - (gdb-goto-breakpoint): Generalise for breakpoints with multiple - locations. - (gdb-info-breakpoints-custom, gdb-assembler-custom) - (gdb-toggle-breakpoint): Update for new gdb-breakpoint-regexp. - (gdb-put-breakpoint-icon): Only display icon for parent breakpoint. - -2007-11-11 Juanma Barranquero - - * international/iso-cvt.el (iso-translate-conventions): Doc fix. - (iso-aggressive-german-trans-tab, iso-conservative-german-trans-tab) - (iso-tex2iso-trans-tab, iso-gtex2iso-trans-tab): Reflow docstring. - (iso-spanish, iso-german, iso-iso2tex, iso-tex2iso, iso-gtex2iso) - (iso-iso2gtex, iso-iso2duden, iso-iso2sgml, iso-sgml2iso): - Rewrite in active voice. - -2007-11-10 Juri Linkov - - * startup.el: Backport startup screen related changes from the trunk. - (initialization): Change group to `environment'. - (inhibit-startup-screen): Rename from `inhibit-splash-screen'. - (inhibit-splash-screen): Make alias to `inhibit-startup-screen'. - (inhibit-startup-message): Change alias to `inhibit-startup-screen'. - (initial-scratch-message): Fix docstring. - (startup-screen-inhibit-startup-screen) - (pure-space-overflow-message): New variables. - (command-line): Rename `inhibit-startup-message' to - `inhibit-startup-screen'. - (initial-scratch-message): Doc fix. - (fancy-splash-text): Remove variable. - (fancy-startup-text, fancy-about-text, splash-screen-keymap): - New variables. - (fancy-splash-delay, fancy-splash-max-time) - (fancy-current-text, fancy-splash-stop-time) - (fancy-splash-outer-buffer, fancy-splash-last-input-event): - Remove variables. - (fancy-splash-insert): Use help-echo from the 3rd element of the - link specification list, or "Follow this link" if it's nil. Doc fix. - Allow functions for face and link specs. - (fancy-splash-tail): Remove function. - (fancy-startup-tail): New function. - (fancy-splash-default-action, fancy-splash-special-event-action) - (fancy-splash-screens): Remove functions. - (fancy-about-screen): New function. - (normal-splash-screen): Rename argument `hide-on-input' to `startup'. - Fix docstring. Use argument `startup' to conditionally display - different texts for Startup and About screens. Don't display Help - commands on the About screen. Remove `unwind-protect' `sit-for' - delay and `kill-buffer' after it. - (normal-mouse-startup-screen, normal-splash-screen) - (normal-no-mouse-startup-screen): New functions. - (startup-echo-area-message): Change text of the echo area. - (display-splash-screen): Remove function. - (display-startup-screen, display-about-screen): New functions. - (about-emacs): Make alias to `display-about-screen'. - (display-splash-screen): Make alias to `display-startup-screen'. - (command-line-1): Rename `inhibit-startup-message' to - `inhibit-startup-screen'. Inhibit startup screen when Emacs is - started with command line options "-f", "-funcall", "-e", "-eval", - "-execute", "-insert", "-find-file", "-file", "-visit". - Inhibit startup screen when Emacs is started with a file name only - on tty (i.e. don't inhibit it when started with a file name like - "emacs FILE..." on a window system). - Comment out unused code for coping with the old sit-for behavior. - If file-count > 0, then display the concise version in another - window, otherwise display full version in the same window. - * loadup.el: Add `button'. Move up `startup'. - * help.el (help-map, help-for-help-internal): Add `C-h C-a'. - * version.el (emacs-copyright): Add emacs-copyright. - * menu-bar.el (menu-bar-help-menu): - Move "About Emacs" and "About GNU" to the end of the Help menu. - Move "Emacs Psychotherapist" after "Send Bug Report...". - Move "External Packages" after "Find Emacs Packages". - -2007-11-10 Jason Rumney - - * w32-fns.el: Sync charset names with setup-default-fontset. - Append "-1" where second part missing. - - * term/w32-win.el: Enable SJIS fonts before creating any fontsets. - -2007-11-10 Juanma Barranquero - - * ido.el (ido-save-history): Write the history file in UTF-8, - and add `coding' file-local variable. - -2007-11-09 Juanma Barranquero - - * international/iso-cvt.el (iso-spanish, iso-german, iso-iso2tex) - (iso-tex2iso, iso-gtex2iso, iso-iso2gtex, iso-iso2duden): Doc fixes. - (iso-iso2duden-trans-tab): Add docstring. - -2007-11-09 YAMAMOTO Mitsuharu - - * faces.el (face-normalize-spec): Remove function. - (frame-set-background-mode): Undo last change. - -2007-11-09 Juanma Barranquero - - * files.el (enable-local-variables): Doc fix. - -2007-11-08 David Hansen (tiny change) - - * eshell/em-dirs.el (eshell-expand-multiple-dots): Change regexp to - match dir like "a...b". - -2007-11-07 Johan Bockg,Ae(Brd - - * eshell/esh-mode.el (eshell-output-filter): - * eshell/esh-proc.el (eshell-insertion-filter, eshell-sentinel): - Use `with-current-buffer'. - -2007-11-05 Nick Roberts - - * progmodes/gud.el (gud-gdb): Remove vestigial gdba doc and code. - -2007-11-04 Riccardo Murri - - * net/tls.el: Require rx when compiling. - (tls-end-of-info): New variable. - (open-tls-stream): Keep reading input until `tls-end-of-info' is - matched. - -2007-11-03 Ulrich Mueller (tiny change) - - * simple.el (bad-packages-alist): Anchor semantic regexp. - -2007-11-02 Drake Wilson (tiny change) - - * files.el (hack-local-variables): Fix membership tests to avoid - treating all variables as safe if `enable-local-variables' is - set to :safe (CVE-2007-5795). - -2007-11-02 Glenn Morris - - * progmodes/etags.el (tags-table-mode): Disable undo. - - * simple.el (bad-packages-alist): Revert previous change. - -2007-11-01 Dan Nicolaescu - - * printing.el (printing): Fix :version, printing.el was included - in emacs-22.1. - (pr-path-style, pr-path-alist, pr-txt-name) - (pr-txt-printer-alist, pr-ps-name, pr-ps-printer-alist) - (pr-temp-dir, pr-ps-temp-file, pr-file-modes, pr-gv-command) - (pr-gs-command, pr-gs-switches, pr-gs-device, pr-gs-resolution) - (pr-print-using-ghostscript, pr-file-tumble, pr-auto-region) - (pr-auto-mode, pr-mode-alist, pr-ps-utility) - (pr-ps-utility-alist, pr-menu-char-height, pr-menu-char-width) - (pr-setting-database, pr-visible-entry-list) - (pr-delete-temp-file, pr-list-directory, pr-buffer-name) - (pr-buffer-name-ignore, pr-buffer-verbose): Remove incorrect - :version. - -2007-11-01 Glenn Morris - - * simple.el (bad-packages-alist): Add an entry for standalone vc-svn. - - * mail/footnote.el (footnote-numeric-regexp) - (footnote-english-upper-regexp, footnote-english-lower-regexp) - (footnote-roman-lower-regexp, footnote-roman-upper-regexp): - Match multi-character footnotes. - - * textmodes/nroff-mode.el (nroff-mode): Set indent-line-function. - (nroff-indent-line-function): New function. - (nroff-count-text-lines): Use nroff-forward-text-line rather than - obsolete alias. - -2007-10-31 Michael Albinus - - * net/tramp.el (tramp-open-connection-telnet) - (tramp-open-connection-rsh, tramp-open-connection-su) - (tramp-open-connection-multi): Set $LC_ALL to "C". - -2007-10-31 Sven Joachim - - * dired-aux.el (dired-copy-file-recursive): - Preserve directory permissions. - -2007-10-31 Juanma Barranquero - - * whitespace.el (whitespace-write-file-hook): Remove interactive spec. - (whitespace-unload-function): New-style unload function. When run, - unintern `whitespace-unload-hook' and call `unload-feature' recursively - to stop the old hook from messing with the unloading. - - * strokes.el (strokes-alphabetic-lessp): Doc fix. - -2007-10-31 Sean O'Rourke - - * emacs-lisp/find-func.el (find-library): Use library at - point as default interactive argument. - -2007-10-31 Juanma Barranquero - - * emacs-lisp/elp.el (elp-report-limit, elp-restore-all) - (elp-unset-master, elp-results): Fix typos. - (elp-sort-by-function, elp-use-standard-output, elp-recycle-buffers-p): - Doc fixes. - - * msb.el (msb--many-menus): Remove variable. - (msb-max-menu-items, msb--add-to-menu): Doc fixes. - (msb-menu-cond, msb-item-handling-function, msb--create-function-info) - (msb--toggle-menu-type): Fix typos in docstrings. - - * shadowfile.el (shadow-inhibit-overload, shadow-remove-from-todo) - (shadow-insert-var): Doc fixes. - (shadow-file-match, shadow-define-cluster, shadow-define-regexp-group): - Reflow docstrings. - (shadow-parse-fullname, shadow-read-files): Fix typos in docstrings. - -2007-10-30 Juanma Barranquero - - * ediff-hook.el (ediff, ediff-files, ediff-buffers, ebuffers, ediff3) - (ediff-files3, ediff-buffers3, ebuffers3, erevision, ediff-revision): - Fix typos in autoload docstrings. - - * loadhist.el (unload-feature): Remove redundant check. - -2007-10-30 Richard Stallman - - * savehist.el (savehist-save): Obey savehist-ignored-variables. - -2007-10-30 Nick Roberts - - * progmodes/gdb-ui.el (gdb-delete-out-of-scope): New option. - (gdb-var-update-handler-1): Use it. - -2007-10-30 Juanma Barranquero - - * loadhist.el (unload-feature): Remove erroneous check for the - FEATURE-unload-function variable; check the existence of the - function (that's what the docstring says, and it makes more sense). - - * follow.el (follow-unload-function): Add docstring. - (follow-unload-function): Remove variable. - - * server.el (server-unload-function): Remove variable. - (server-unload-function): Unbind `server-edit' from `C-x #'. - - * uniquify.el (uniquify-unload-function): Add docstring. - (uniquify-unload-function): Remove variable. - - * ses.el (ses-unload-function): New function. - -2007-10-29 Juanma Barranquero - - * emacs-lisp/unsafep.el (unsafep, unsafep-function) - (unsafep-progn, unsafep-let): Fix typos in docstrings. - - * uniquify.el (uniquify-maybe-rerationalize-w/o-cb): Define it - before use to avoid a warning in packages that require uniquify. - (uniquify-unload-function): New function and var. - -2007-10-29 Juanma Barranquero - - * loadhist.el (unload-feature-special-hooks): - Add `delete-frame-functions'. - - * server.el (server-unload-function): Rename from `server-unload-hook' - and adapt to new `unload-feature' functionality. Remove hook from - `kill-buffer-hook' buffer-locally. - (server-unload-hook): Remove. - (server-unload-function): New var; replaces `server-unload-hook'. - -2007-10-27 Juanma Barranquero - - * desktop.el (uniquify-managed): Pacify byte compiler. - (desktop-buffer-info): If the buffer name is managed by uniquify, - save the base name, not the uniquified one. - (desktop-create-buffer): Allow `rename-buffer' to generate a new - name in case of conflict. - -2007-10-26 Glenn Morris - - * emacs-lisp/bytecomp.el (byte-compile-warnings): Autoload the - safe-local-variable property. - -2007-10-26 Gwern Branwen (tiny change) - - * net/browse-url.el (browse-url-browser-function): Delete grail. - (browse-url-grail): Function and variable deleted. - (browse-url-browser-function): Delete IXI Mosaic. - (browse-url-default-browser): Don't try IXI Mosaic. - (browse-url-iximosaic): Function deleted. - (browse-url-browser-function): Delete MMM. - (browse-url-default-browser): Don't try MMM. - (browse-url-mmm): Function deleted. - -2007-10-25 Glenn Morris - - * progmodes/f90.el (f90-indented-comment-re) - (f90-directive-comment-re, f90-break-delimiters): - * progmodes/fortran.el (fortran-comment-line-start-skip) - (fortran-directive-re): - * textmodes/conf-mode.el (conf-space-keywords): Mark these regexps - as safe if they are strings. - -2007-10-25 Richard Stallman - - * progmodes/ps-mode.el (ps-mode-map): Delete C-c v binding. - -2007-10-24 Richard Stallman - - * savehist.el (savehist-save): Omit unreadable elements. - - * loadhist.el (unload-function-defs-list): Renamed from - unload-function-features-list. - (unload-feature-special-hooks, unload-feature): Doc fixes. - - * indent.el (indent-to-left-margin): If point's in the indentation, - move to the end of the indentation. - - * cus-edit.el (customize-changed-options): Make arg optional. - -2007-10-24 Juanma Barranquero - - * bs.el (bs-select, bs-select-other-window): Fix typos in docstrings. - -2007-10-23 Stefan Monnier - - * textmodes/css-mode.el: Require CL. - (comment-continue): Declare. - - * subr.el (make-variable-frame-localizable): Remove. - (make-variable-frame-local): Mark obsolete. - -2007-10-23 Juanma Barranquero - - * ibuf-ext.el (ibuffer-switch-to-saved-filters) - (ibuffer-switch-to-saved-filter-groups): Doc fixes. - -2007-10-23 Chris Moore - - * comint.el (comint-password-prompt-regexp): - Handle `[sudo] password'-style prompt. - -2007-10-23 Glenn Morris - - * progmodes/f90.el (f90-do-indent, f90-if-indent) - (f90-type-indent, f90-program-indent) - (f90-continuation-indent, f90-comment-region) - (f90-beginning-ampersand, f90-smart-end) - (f90-break-before-delimiters, f90-auto-keyword-case) - (f90-leave-line-no, f90-mode-hook): - Give an appropriate safe-local-variable property. - (f90-font-lock-keywords-2): Fix `go to' regexp. - - * progmodes/fortran.el (fortran-tab-mode-default) - (fortran-tab-mode-string, fortran-do-indent, fortran-if-indent) - (fortran-structure-indent, fortran-continuation-indent) - (fortran-comment-indent, fortran-comment-line-extra-indent) - (fortran-comment-line-start) - (fortran-minimum-statement-indent-fixed) - (fortran-minimum-statement-indent-tab) - (fortran-comment-indent-char, fortran-line-number-indent) - (fortran-check-all-num-for-matching-do) - (fortran-blink-matching-if, fortran-continuation-string) - (fortran-comment-region, fortran-electric-line-number) - (fortran-column-ruler-fixed, fortran-column-ruler-tab) - (fortran-analyze-depth, fortran-break-before-delimiters): - Give an appropriate safe-local-variable property. - -2007-10-23 Stefan Monnier - - * textmodes/tex-mode.el (tex-uptodate-p): Don't signal an error if one - of the subdirs is unreadable. - -2007-10-22 Martin Rudalics - - * progmodes/fortran.el (fortran-mode-map, fortran-window-create): - Use window-full-width-p. - -2007-10-22 Stefan Monnier - - * emulation/tpu-edt.el (tpu-edt-old-global-values): New var. - (tpu-edt-off): Use it. - (tpu-edt-on): Set it. Make sure the tpu-global-map is not already on - the global-map before adding it to global-map. - - * menu-bar.el (global-buffers-menu-map): New var. - (global-map, menu-bar-update-buffers): Use it. - * msb.el (msb-menu-bar-update-buffers): Use it. - (msb-sort-by-directory, msb--choose-menu, msb--mode-menu-cond) - (msb--most-recently-used-menu, msb--create-buffer-menu-2): - Use with-current-buffer. - -2007-10-21 Dan Nicolaescu - - * hexl.el (hexl-menu): New major mode menu. - -2007-10-20 Glenn Morris - - * progmodes/f90.el (f90-font-lock-keywords-2) - (f90-looking-at-type-like): Fix regexp typos. - -2007-10-19 Juanma Barranquero - - * bs.el (bs-mode): Add mode name (accidentally left out - in the 2007-10-16 change). - -2007-10-19 Juanma Barranquero - - * bs.el (bs--track-window-changes): Don't refresh the whole list. - (bs-mode): Set mode-class property to special. - - * follow.el (follow-unload-function): New function. - - * loadhist.el (unload-function-features-list): - Rename from `unload-hook-features-list'. - (unload-hook-features-list): Add as obsolete alias. - (unload-feature): Use `unload-function-features-list' - and new FEATURE-unload-function. - -2007-10-18 Juanma Barranquero - - * loadhist.el (unload-feature-special-hooks): - Update list of special hooks. - - * textmodes/fill.el (fill-individual-paragraphs): Doc fix. - (adaptive-fill-function): Doc fix. Remove * from docstring. - -2007-10-18 Glenn Morris - - * ibuf-ext.el (ibuffer-saved-filter-groups): Doc fix. - -2007-10-17 Aaron Hawley - - * tutorial.el (tutorial--save-tutorial): Display message when tutorial - position is not saved. - -2007-10-17 Chong Yidong - - * longlines.el (longlines-wrap-follows-window-size): Integer value - specifies wrapping margin. - (longlines-mode, longlines-window-change-function): - Set window-specific wrapping margin based on the above. - -2007-10-17 John Wiegley - - * eshell/esh-cmd.el (eshell-complex-commands): Add "ls". - -2007-10-17 Glenn Morris - - * progmodes/cc-menus.el (cc-imenu-c++-generic-expression): - Tweak regexp to avoid stack overflow. - -2007-10-16 Stefan Monnier - - * simple.el (reindent-then-newline-and-indent): Don't assume that - indent-according-to-mode preserves point. - -2007-10-16 Juanma Barranquero - - * bs.el (bs--window-config-coming-from): Revert 2006-11-09 change. - (bs--restore-window-config): Keep the selected frame. - (bs--track-window-changes, bs--remove-hooks): New functions. - (bs-mode): Use `define-derived-mode'. Set hook to track window changes. - (bs--show-with-configuration): Revert 2006-11-09 change. - Don't reuse window unless it is visible on the selected frame. - Restore window configuration (possibly in a different frame) - before creating any window. - -2007-10-16 Richard Stallman - - * emacs-lisp/advice.el (ad-get-advice-info): Change to a function. - (ad-get-advice-info-macro): New macro, like old ad-get-advice-info. - (ad-is-advised, ad-get-advice-info-field) - (ad-set-advice-info-field): Use ad-get-advice-info-macro. - -2007-10-16 Glenn Morris - - * simple.el (blink-matching-open): Don't report false errors with - the `$' syntax class. - -2007-10-15 Juanma Barranquero - - * filesets.el (filesets-alist-get): Use `let' rather than `let*'. - (filesets-ormap, filesets-sort-case-sensitive-flag) - (filesets-remake-shortcut, filesets-ingroup-collect-files): - Fix typos in docstrings. - (filesets-data-get-name, filesets-data-get-data) - (filesets-data-set, filesets-cmd-query-replace-getargs) - (filesets-ingroup-collect, filesets-find-or-display-file): Doc fixes. - -2007-10-15 YAMAMOTO Mitsuharu - - * term/mac-win.el: Don't require url when compiling, as url-type is - no longer a macro. - -2007-10-14 Glenn Morris - - * progmodes/etags.el (select-tags-table): Disable undo in the - `*Tags Table List*' buffer. - -2007-10-13 Eli Zaretskii - - * dired.el (dired-warn-writable): New face. - (dired-warn-writable-face): New variable. - (dired-font-lock-keywords): Use dired-warn-writable-face, instead - of dired-warning-face, for group- and world-writable files. - -2007-10-13 Glenn Morris - - * progmodes/octave-mod.el (octave-looking-at-kw): Add doc string. - (octave-re-search-forward-kw, octave-re-search-backward-kw): - Add doc string, and an explicit COUNT argument. - (octave-scan-blocks, octave-beginning-of-defun): Explicitly pass - `inc' to search functions. - -2007-10-13 John W. Eaton - - * progmodes/octave-mod.el (octave-looking-at-kw) - (octave-re-search-forward-kw, octave-re-search-backward-kw): - New functions. - (octave-in-defun-p, calculate-octave-indent) - (octave-blink-matching-block-open, octave-beginning-of-defun) - (octave-auto-fill): Use octave-looking-at-kw instead of looking-at, - to search for regexps that contain case-sensitive keywords. - (octave-beginning-of-defun): Likewise, for octave-re-search-backward-kw. - (octave-scan-blocks): Likewise, for octave-re-search-forward-kw. - -2007-10-13 Richard Stallman - - * files.el (directory-abbrev-alist): Doc fix. - -2007-10-13 Jari Aalto - - * comint.el (comint-password-prompt-regexp): Add 'LDAP'. - -2007-10-12 Martin Rudalics - - * frame.el (set-frame-configuration): Assign name parameter only - if it has been set explicitly before. - - * window.el (handle-select-window): Revert part of 2007-10-06 - change setting the input focus. - -2007-10-12 Glenn Morris - - * cus-edit.el (custom-variable-menu, custom-face-menu) - (custom-group-menu): Check init-file-user rather than - user-init-file, in case cus-edit is loaded by site-run-file. - -2007-10-11 Juanma Barranquero - - * follow.el (follow-stop-intercept-process-output): - Use `follow-call-process-filter' rather than `process-filter'. - -2007-10-11 Tom Tromey - - * progmodes/gdb-ui.el (gdb-info-stack-custom): Ensure current - frame is visible. - -2007-10-10 Richard Stallman - - * emacs-lisp/debug.el (debugger-setup-buffer): Disable undo - in *Backtrace*. - - * faces.el (face-font-selection-order): Doc fix. - - * loadhist.el (unload-feature): Doc fix. - -2007-10-10 Vinicius Jose Latorre - - * ps-print.el: Fix the usage of :foreground and :background face - attributes. Reported by Nikolaj Schumacher . - (ps-print-version): New version 6.7.6. - (ps-face-attributes, ps-face-attribute-list, ps-face-background): - Fix code. - (ps-face-foreground-color-p, ps-face-background-color-p) - (ps-face-color-p): New inline funs. - -2007-10-10 Juanma Barranquero - - * follow.el: Change all instances of "Follow Mode" to "Follow - mode" in docstrings and messages. - -2007-10-09 Juanma Barranquero - - * faces.el (face-font-selection-order): Doc fix. - - * follow.el (follow-mode-hook, follow-mode): Doc fixes. - (follow-mode-off-hook): Mark as obsolete. - -2007-10-08 Richard Stallman - - * emacs-lisp/edebug.el (edebug-install-custom-print-funcs) - (edebug-install-custom-print, edebug-reset-print-funcs) - (edebug-uninstall-custom-print, edebug-uninstall-custom-print-funcs): - Functions deleted. - (edebug-prin1, edebug-print, edebug-prin1-to-string) - (edebug-format, edebug-message): Define directly as aliases. - -2007-10-08 Juanma Barranquero - - * follow.el (follow-mode): Don't run hooks twice. Use `when'. - -2007-10-07 Glenn Morris - - * simple.el (bad-packages-alist): Clarify Semantic and CEDET - version numbers. - -2007-10-06 Michael Albinus - - * net/tramp.el (tramp-completion-mode): Extend doc-string. - (tramp-completion-mode-p): Revert change from 2007-09-24. - Checking for `return' etc as last character is not sufficient, for - example in dired-mode when entering (revert-buffer) or - (dired-sort). - -2007-10-06 Martin Rudalics - - * window.el (mouse-autoselect-window-cancel): Don't cancel for - select-window or select-frame events. - (handle-select-window): When autoselecting window set input - focus. Restructure. - - * frame.el (focus-follows-mouse): Moved to frame.c. - * cus-start.el (all): Add focus-follows-mouse. - -2007-10-05 Chris Moore - - * server.el (server-kill-new-buffers): Doc fix. - -2007-10-05 Juanma Barranquero - - * bs.el (bs-mode): Make sure global-font-lock-mode doesn't - activate font-locking in the *buffer-selection* buffer. - (bs-show-sorted): Doc fix. - - * bs.el (bs--get-marked-string, bs--get-modified-string) - (bs--get-readonly-string, bs--get-size-string, bs--get-name) - (bs--get-mode-name, bs-mode): Fix typos in docstrings. - (bs--format-aux): Doc fix. - -2007-10-04 Juanma Barranquero - - * image-dired.el (image-dired-image-at-point-p): Fix typo in docstring. - -2007-10-04 Micha,Ak(Bl Cadilhac - - * progmodes/gud.el (gud-gud-gdb-command-name): Fix typo in docstring. - -2007-10-04 Nick Roberts - - * progmodes/gud.el (gud-gud-gdb-command-name): New option. - (gud-gdb): New function for old M-x gdb (text command mode). - (gud-gdb-command-name, gdb): Move to... - - * progmodes/gdb-ui.el: ...here and adapt doc string. - (gud-gdba-command-name, gdba): Delete. - -2007-10-03 Juanma Barranquero - - * bs.el: Don't defvar `font-lock-verbose'. - (bs-config-clear, bs-kill, bs-string-show-normally, bs-sort-functions) - (bs--get-file-name): Fix typos in docstrings. - (bs--show-header): Use `dolist' instead of `mapcar'. - (bs-mode): Set `show-trailing-whitespace' to nil. - (bs-buffer-sort-function, bs-mouse-select-other-frame) - (bs-visits-non-file, bs-sort-buffer-interns-are-last, bs-show): - Doc fixes. - -2007-10-02 Adam Hupp (tiny change) - - * progmodes/gdb-ui.el (pdb): Specify file for gud-break. - -2007-10-02 Nick Roberts - - * progmodes/gud.el (gdb): Make graphical mode the default and - switch to text command mode if appropriate, i.e., reverse previous - arrangement. - (gud-gdb-marker-filter): Adapt for above change. - - * progmodes/gdb-ui.el (gdb-init-1): Don't set the values - gud-minor-mode and gud-marker-filter. - (gdb-fullname-regexp): New variable. - (gud-gdba-marker-filter): Use it to switch to text command - mode if appropriate. - -2007-10-02 Richard Stallman - - * frame.el (cursor-in-non-selected-windows): Doc fix. - -2007-10-01 Nick Roberts - - * progmodes/gud.el (gud-display-line): Find source buffer even when - GUD buffer has its own frame. - -2007-10-01 Jan Dj,Ad(Brv - - * term/x-win.el (icon-map-list): Set to nil for 22.1 compatibility. - -2007-09-29 Jan Dj,Ad(Brv - - * term/x-win.el (x-gtk-stock-map): Version is 22.2. - -2007-09-29 Martin Rudalics - - * allout.el (allout-before-change-handler): Replace got-char by - goto-char. - -2007-09-28 Stefan Monnier - - * vc-svn.el (vc-svn-resolve-when-done, vc-svn-find-file-hook): New funs. - Used to try and automatically enabled smerge-mode in the presence of - conflicts and to call `svn resolved' when the conflicts are gone. - (vc-svn-parse-status): Remember the svn-specific status. - - * newcomment.el (comment-choose-indent): New function extracted - from comment-indent. Improve the alignment algorithm. - (comment-indent): Use it. - -2007-09-27 Juanma Barranquero - - * emacs-lisp/eldoc.el (eldoc-message-commands-table-size) - (eldoc-message-commands, eldoc-current-idle-delay): - Fix typos in docstrings. - - * progmodes/python.el (python-eldoc-function): Doc fix. - -2007-09-26 Eli Zaretskii - - * menu-bar.el (menu-bar-search-documentation-menu): Rename from - menu-bar-apropos-menu. All users changed. - (menu-bar-help-menu): Change menu symbols to better match the text - displayed by the menu. - -2007-09-25 Glenn Morris - - * view.el (view-search-no-match-lines): Add a doc string. - Rewrite to simplify and work better. - -2007-09-24 Michael Albinus - - * net/tramp.el (tramp-completion-mode-p): Rename from - `tramp-completion-mode'. Revert logic, check `return', `newline' - and such alike. Packages like Icicles tend to use other completion - characters but `tab' and `space' only. - (top): Require cl.el, when `copy-tree' is not available otherwise. - - * net/tramp-vc.el (tramp-vc-user-login-name): Get argument by - `ad-get-arg'. - -2007-09-24 Ville Skytt,Ad(B (tiny change) - - * net/tramp-vc.el (tramp-vc-user-login-name): - Use `vc-find-version' instead of `process-file' to check whether we - have a new enough vc that doesn't need the defadvice. - -2007-09-23 Dan Nicolaescu - - * files.el (file-name-sans-versions): Use [:alnum:] and also allow - #, @, : and ^. - -2007-09-23 Glenn Morris - - * ses.el (ses-calculate-cell): Don't evaluate unsafe formulae. - -2007-09-22 Dan Nicolaescu - - * pcvs-defs.el (cvs-mode-map): Bind TAB and backtab. - - * log-view.el (log-view-mode-map): Likewise. - - * diff-mode.el (diff-mode-shared-map): Likewise. - -2007-09-21 Francesco Potort,Al(B - - * progmodes/octave-inf.el (inferior-octave-mode): Use add-hook to - add inferior-octave-directory-tracker to the buffer-local value - of comint-input-filter-functions. - -2007-09-22 Dan Nicolaescu - - * files.el (file-name-sans-versions): Also allow `A-Z'. - - * vc.el: Mention all supported VC backends. - -2007-09-22 Richard Stallman - - * wid-edit.el (widget-specify-button): Don't merge mouse-face with - neighbouring buttons. - -2007-09-22 Andreas Schwab - - * files.el (file-name-sans-versions): Also allow `_'. - -2007-09-22 Glenn Morris - - * eshell/esh-mode.el (eshell-output-filter-functions): - Add eshell-postoutput-scroll-to-bottom. - -2007-09-21 Dan Nicolaescu - - * files.el (file-name-sans-versions): Allow - and a-z in version names. - - * log-view.el (log-view-mode-map, log-view-mode-menu): - Bind log-view-annotate-version. - (log-view-beginning-of-defun, log-view-end-of-defun) - (log-view-annotate-version): New functions. - (log-view-mode): Use log-view-beginning-of-defun and - log-view-end-of-defun. - -2007-09-21 Stefan Monnier - - * emacs-lisp/easy-mmode.el (define-minor-mode): Fix staging. - -2007-09-21 Kevin Ryde - - * international/mule.el (sgml-html-meta-auto-coding-function): - Bind `case-fold-search' to t. - -2007-09-20 Stefan Monnier - - * wid-edit.el (widget-image-insert): Don't merge mouse-face with - neighbouring buttons. - - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Recognize gcc's use of "note" for informational messages. - -2007-09-20 Glenn Morris - - * textmodes/tex-mode.el (tex-validate-buffer): Use paragraph - motion functions, rather than hard-coding "\n\n". - (tex-validate-region): Check for eobp, to speed up. - (tex-next-unmatched-end): Doc fix. - -2007-09-19 Glenn Morris - - * textmodes/tex-mode.el (tex-terminate-paragraph): - Use backward-paragraph. - -2007-09-18 Stefan Monnier - - * textmodes/css-mode.el (css-electric-keys): electrick->electric. - (css-mode): Update correspondingly. - -2007-09-18 Stefan Monnier - - * vc-arch.el (vc-arch-extra-menu-map): New var and fun. - - * vc-hooks.el (vc-menu-entry): New var. - (vc-mode-line-map): Use it so that this menu also uses the extra-menu. - (menu-bar-tools-menu): Add the VC menu here rather than in menu-bar.el. - (vc-menu-map): Declare and initialize in one step. - - * menu-bar.el (vc-menu-map): Don't setup any more. - Instead, just create the proper spot in the menu. - -2007-09-18 Dan Nicolaescu - Stefan Monnier - - * vc.el: Document new VC operation `extra-menu'. - - * vc-hooks.el (vc-default-extra-menu, vc-menu-map-filter): New fun. - -2007-09-17 Dan Nicolaescu - - * vc-git.el (vc-git-log-view-mode): Add font-lock patterns for - Signed-off-by, Acked-by and Merge. - -2007-09-17 Glenn Morris - - * textmodes/tex-mode.el (tex-compilation-parse-errors): Prefer the - filename from `--file-line-error', if it is available. - -2007-09-17 Joe Wells (tiny change) - - * textmodes/tex-mode.el (tex-compilation-parse-errors): Also match - TeX `--file-line-error' format. - -2007-09-17 Glenn Morris - - * textmodes/tex-mode.el (tex-region): Simplify previous change, - handling the case where the region is not in `tex-main-file'. - (tex-region-1): Delete. - (tex-region-header): New function, doing the header part of the - old tex-region-1. - -2007-09-16 Stefan Monnier - - * ediff-init.el (ediff-verbose-p): This var is not a constant. - -2007-09-16 Drew Adams - - * cus-edit.el (custom-face-edit-activate): Doc fix. - -2007-09-16 Glenn Morris - - * textmodes/tex-mode.el (tex-region): Handle the case where the - region is not in `tex-main-file'. Move the old code that applies - to both cases... - (tex-region-1): ...to this new function. - -2007-09-15 Martin Rudalics - - * simple.el (blink-matching-open): Don't display message when no - paren is found within blink-matching-paren-distance characters. - Don't search prompt in blink-matching-paren-distance nil case. - -2007-09-14 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Add C-M- bindings. - -2007-09-14 Stefan Monnier - - * vc-mtn.el: New file. - - * vc-hooks.el (vc-handled-backends): Add Mtn. - -2007-09-13 Eli Zaretskii - - * files.el (find-file, find-file-other-window) - (find-file-other-frame, find-file-existing, find-file-read-only) - (find-file-read-only-other-window) - (find-file-read-only-other-frame) - (find-alternate-file-other-window, find-alternate-file): Doc fixes. - -2007-09-13 Jari Aalto - - * man.el (Man-default-man-entry): At end of line, continue looking - to the next line for possible end of hyphenated command. - -2007-09-13 Chris Moore - - * shell.el (shell-resync-dirs): Don't move the cursor relative to - the command being edited. - -2007-09-13 Nick Roberts - - * progmodes/gud.el (gdb-ready): New variable. - (gdb): Set it to nil. Set gud-running to nil here... - (gud-common-init): ...instead of here. - - * progmodes/gdb-ui.el (gdba, gdb-send, gdb-source-info): - Use gdb-ready. Discard input until GDB is ready to accept it. - -2007-09-12 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Add bindings for M-S- and - C-M-S- keys. - -2007-09-12 Martin Rudalics - - * dired.el (dired-warning): Inherit from font-lock-warning-face to - make it show up with eight colors. - -2007-09-12 Stefan Monnier - - * diff-mode.el (diff-sanity-check-hunk): Fix up the case when unified - diffs are concatenated with no intervening line. - -2007-09-10 Dave Love - - * progmodes/python.el: Merge changes from Dave Love's v2007-Sep-10. - (python-font-lock-keywords): Update to the 2.5 version of the language. - (python-quote-syntax): Let-bind font-lock-syntactic-keywords to nil. - (python-backspace): Only behave funny in code. - (python-compilation-regexp-alist): Add PDB stack trace regexp. - (inferior-python-mode): Add PDB prompt regexp. - (python-fill-paragraph): Refine the fenced-string regexp. - (python-find-imports): Handle imports spanning several lines. - (python-mode): Add `class' to hideshow support. - -2007-09-08 Stefan Monnier - - * pcvs.el (cvs-mode-add-change-log-entry-other-window): Use - add-log-buffer-file-name-function rather than bind buffer-file-name, - so we dont end up calling change-log-mode in *cvs* when `fi' is the - ChangeLog file itself. - - * outline.el (outline-flag-region): Use front-advance. - -2007-09-07 Ilya Zakharevich - - * progmodes/cperl-mode.el: Merge upstream 5.23. - (cperl-where-am-i): Remove function. - (cperl-backward-to-noncomment): Don't go too far when skipping POD/HEREs - (cperl-sniff-for-indent): De-invert [string] and [comment]. - When looking for label, skip s:m:y:tr. - (cperl-indent-line): Likewise. - (cperl-mode): Don't assume `font-lock-multiline' is auto-local. - (cperl-windowed-init): Wrong `ps-print' handling. - Both thanks to Chong Yidong. - (cperl-look-at-leading-count): Could fail with unfinished RExen. - (cperl-find-pods-heres): If the second part of s()[] is missing, - don't try to highlight delimiters... - -2007-09-07 Stefan Monnier - - * progmodes/compile.el (compilation-get-file-structure): Complete last - change by also using spec-directory in the puthash. - -2007-09-07 Riccardo Murri - - * vc-bzr.el (vc-bzr-admin-lastrev): New constant. - (vc-bzr-file-name-relative): Use 'when' instead of 'and'. - (vc-bzr-status): Fix shadowing of variable 'status'. - (vc-bzr-workfile-version): Use correct path to 'last-revision' file. - Use `expand-file-name' instead of `concat'. - (vc-bzr-annotate-command): Use option name '--long' instead of '-l'. - Update annotation line regexp. Fixes launchpad.net [Bug 137435]. - -2007-09-05 Jason Rumney - - * frame.el (focus-follows-mouse): Doc-fix. Change default on w32. - -2007-09-02 Richard Stallman - - * emacs-lisp/lisp-mode.el (lisp-indent-offset): Make defcustom. - Add `safe-local-variable' property. - (lisp-body-indent): Likewise. - -2007-09-02 Jan Dj,Ad(Brv - - * info.el (info-tool-bar-map): Add :rtl keyword to right/left-arrow and - prev/next-node. - - * term/x-win.el (x-gtk-stock-map, icon-map-list): New variables. - (x-gtk-map-stock): New function. - -2007-09-02 Glenn Morris - - * comint.el (comint-mode): Don't set scroll-conservatively. - - * eshell/em-unix.el (eshell/time): Stringify and flatten the - non-command arguments. - -2007-09-01 Thien-Thi Nguyen - - * emacs-lisp/bytecomp.el (byte-recompile-directory): - Fix bug: Don't expand top-level file name more than once. - Reported by Dmitry Antipov . - -2007-09-01 Richard Stallman - - * files.el (hack-local-variables-confirm): Rename arg VARS to ALL-VARS. - Add doc string. - -2007-08-30 Richard Stallman - - * speedbar.el (speedbar-frame-reposition-smartly) - (speedbar-set-mode-line-format, speedbar-reconfigure-keymaps) - (speedbar-check-vc): Don't use dframe-xemacsp. - -2007-08-30 Martin Rudalics - - * files.el (backup-buffer-copy): Try to overwrite old backup first. - -2007-08-29 Martin Rudalics - - * repeat.el (repeat): Use last-repeatable-command instead of - real-last-command. Run pre- and post-command hooks for - self-insertion. Update doc-string. - -2007-08-28 Glenn Morris - - * progmodes/cc-langs.el (c-constant-kwds): Add java: true, false, null. - -2007-08-27 Alexandre Julliard - - * vc-git.el (vc-git-state): Call git-add --refresh to update the - state of the file. - (vc-git-workfile-unchanged-p): Delegate implementation to vc-git-state. - (vc-git-create-repo): Fix invalid command. - -2007-08-27 Richard Stallman - - * textmodes/flyspell.el (flyspell-mode): - Catch errors in flyspell-mode-on. - -2007-08-27 Thien-Thi Nguyen - - * progmodes/modula2.el (m2-definition, m2-module): - Don't use previous-line. Reported by T. V. Raman. - -2007-08-27 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-handle-toolbar-switch-mode): Add explicit - argument to tool-bar-mode call. - -2007-08-27 Glenn Morris - - * diff-mode.el (diff-find-file-name): Only accept regular files, - to rule out /dev/null, directories, etc. - -2007-08-25 Dan Nicolaescu - - * progmodes/cperl-mode.el (cperl-indent-level): Autoload the - safe-local-variable setting. - * progmodes/perl-mode.el (perl-indent-level): Likewise. - -2007-08-25 Stefan Monnier - - * uniquify.el (uniquify-rationalize-file-buffer-names): Check liveness - of buffers in uniquify-managed. - - * simple.el (invisible-p): Rename from text-invisible-p. - Update callers. - -2007-08-25 Alan Mackenzie - - * progmodes/cc-langs.el (c-other-decl-block-key-in-symbols-alist): - new language variable. - - * progmodes/cc-engine.el (c-brace-anchor-point): New function. - (c-add-stmt-syntax): Give accurate anchor points for "namespace", - "extern" etc., rather than BOI. Fix addition of spurious - syntactic-symbol 'defun-block-intro, replacing it with - 'innamespace, etc. - -2007-08-25 Reiner Steib - - * pcvs.el (cvs-query-directory): Only prompt when prefix is given. - Don't behave differently when executed via M-x. Add doc string. - -2007-08-24 Ulrich Mueller (tiny change) - - * files.el (backup-buffer-copy): Don't wrap delete in - condition-case, only try to delete if file exists. - -2007-08-24 Glenn Morris - - * files.el (backup-buffer-copy): Revert 2007-08-22 change. - -2007-08-23 Stefan Monnier - - * progmodes/cperl-mode.el (defcustom, x-color-defined-p, cperl-is-face) - (cperl-is-face, cperl-force-face, cperl-etags-snarf-tag, cperl-mode) - (cperl-etags-snarf-tag, cperl-etags-goto-tag-location, cperl-init-faces) - (cperl-etags-goto-tag-location): Use new style backquotes. - - * subr.el (complete-with-action): Backport from trunk (for vc-arch.el). - (dynamic-completion-table): Use it it. - - * net/browse-url.el: Remove spurious * in custom docstrings. - (browse-url-filename-alist): Use new-style backquote. - - * emacs-lisp/backquote.el (backquote-unquote-symbol) - (backquote-splice-symbol): Clarify they're not new-style unquotes. - - * emacs-lisp/edebug.el (edebug-list-form, edebug-match-symbol, \,) - (\,@): Backslash the , and ,@ which are not new-style unquotes. - - * textmodes/texinfmt.el (\,): Clarify it's not a new-style unquote. - - * net/socks.el (socks-username/password-auth-filter): - Remove unused vars `state' and `desired-len'. - (socks-parse-services, socks-nslookup-host): Use with-current-buffer. - (socks-wait-for-state-change): Use new-style backquotes. - - * pcvs.el (cvs-mode-status): Fix long-standing typo. - - * emacs-lisp/bytecomp.el (byte-compile-from-buffer): Check old-style - backquotes after each `read' rather than once per buffer. - - * dframe.el: Remove spurious * in custom docstrings. - (dframe-xemacsp): Remove, use (featurep 'xemacs) instead. - (dframe-xemacs20p): Remove, inline at the sole use point. - (defface): Don't defvar the face, don't use old-style backquote. - (defcustom): Don't use old-style backquote. - (dframe-frame-parameter, dframe-mouse-event-p): - Make it obvious that it's always defined. - (dframe-popup-kludge): New function to replace - dframe-xemacs-popup-kludge and dframe-xemacs-popup-kludge. - (dframe-frame-mode, dframe-set-timer-internal) - (dframe-mouse-set-point): Remove use of with-no-warnings from - XEmacs-specific code. - (dframe-set-timer-internal): Fix very old bug with - post-command-idle-hook. - - * emacs-lisp/byte-opt.el (byte-optimize-featurep): Handle `sxemacs'. - -2007-08-22 Chong Yidong - - * image-mode.el (image-minor-mode): Use image-mode-text-map. - -2007-08-22 Reiner Steib - - * sort.el (sort-fold-case, sort-numeric-base): Mark as - safe-local-variable. - -2007-08-22 Johan Bockg,Ae(Brd - - * net/browse-url.el (browse-url-emacs): New function. - -2007-08-22 Stefan Monnier - - * emacs-lisp/bytecomp.el (byte-compile-from-buffer): Display a big fat - warning if the file uses old style backquotes. - - * emacs-lisp/bytecomp.el (byte-compile-log-file) - (byte-recompile-directory, byte-compile-file) - (byte-compile-from-buffer): Use with-current-buffer. - - * simple.el (text-invisible-p): Rename from line-move-invisible-p. - (line-move-invisible-p): Keep as an obsolete alias, just to be safe. - (line-move-1, line-move-finish, line-move-to-column) - (move-end-of-line, move-beginning-of-line): Use new name. - -2007-08-22 Glenn Morris - - * files.el (backup-buffer-copy): Check backup directory is - writable, to avoid infloop deleting old backup. - - * mail/rmail.el (rmail-movemail-variant-p): Call on load to set - movemail related variables. - (rmail-insert-inbox-text): Use only rmail-movemail-program, which - will now be set before this is called. - -2007-08-21 Stefan Monnier - - * emacs-lisp/backquote.el (backquote-delay-process): Fix last change. - - * progmodes/ada-mode.el: Fix up comment style in header. - (ada-check-emacs-version): Remove. - (ada-mode): Set parse-sexp-* even if they don't exist: can't hurt. - (ada-region-selected): Use (featurep 'xemacs) rather than contortions - to try and quieten the byte-compiler. - (ada-create-keymap): Use [(..)] keys, which work on both (X)Emacs. - - * vc.el (vc-annotate-warp-version): Don't use previous-line. - -2007-08-20 Johannes Weiner (tiny change) - - * emacs-lisp/lisp-mode.el (preceding-sexp): New fun, the code was - extracted from `eval-last-sexp-1'. - (eval-last-sexp-1): Call `preceding-sexp'. - -2007-08-19 Glenn Morris - - * Makefile.in (custom-deps, finder-data, autoloads, recompile) - (progmodes/cc-mode.elc, mh-e/mh-loaddefs.el): Use $(emacs) rather - than $(EMACS), so that EMACSLOADPATH is set. Prevents any system - shadow files messing up the compilation. - -2007-08-18 Glenn Morris - - * progmodes/scheme.el (scheme-mode-variables): - Set font-lock-comment-start-skip. - -2007-08-18 Martin Rudalics - - * progmodes/ada-mode.el (ada-create-syntax-table): - Move set-syntax-table from here to ... - (ada-mode): ... here. Don't change global value of comment-multi-line. - Call new function ada-initialize-syntax-table-properties. - Add ada-handle-syntax-table-properties to font-lock-mode-hook. - (ada-deactivate-properties, ada-initialize-properties): - Replace by new functions ... - (ada-handle-syntax-table-properties, ada-set-syntax-table-properties) - (ada-initialize-syntax-table-properties): ... to set up syntax-table - properties uniformly, independently from whether font-lock-mode - is enabled or not. Handle read-only buffers and do not change - undo-list when setting syntax-table properties. - (ada-after-change-function): Use ada-set-syntax-table-properties. - -2007-08-17 Bob Rogers (tiny change) - - * progmodes/cperl-mode.el (cperl-look-at-leading-count) - (cperl-find-pods-heres): Fix an error when typing expressions like - `s{a}{b}'. - -2007-08-17 Glenn Morris - - * progmodes/compile.el (compilation-get-file-structure): Make use - of the directory part when checking for an existing entry, to - handle files with same basename in different directories. - -2007-08-16 Vinicius Jose Latorre - - * ps-print.el (ps-header-font-size, ps-header-title-font-size) - (ps-footer-font-size, ps-line-number-font-size, ps-line-spacing) - (ps-paragraph-spacing): Docstring fix. - -2007-08-16 Stefan Monnier - - * smerge-mode.el (smerge-resolve): New arg `safe'. - (smerge-resolve-all, smerge-batch-resolve): New function. - (smerge-refine): Make sure `diff' returns the expected result. - (smerge-parsep-re): New const. - (smerge-mode): Use it to adjust paragraph-separate. - - * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords): - Correctly match / regexp matchers as first char on a line when - fontifying only that line. - - * emacs-lisp/cl-macs.el (cl-transform-lambda): Preserve the match-data. - -2007-08-16 Glenn Morris - - * ps-print.el (ps-font-size): Doc fix. - -2007-08-15 Stefan Monnier - - * vc-bzr.el: Don't fiddle with vc-handled-backend. - (vc-bzr-registered): Don't redundantly protect against - file-error. Actually use the format-specific code. - (vc-bzr-buffer-nonblank-p): Remove. - (vc-bzr-status): Change `kindchange' -> `kindchanged'. - -2007-08-15 Glenn Morris - - * mail/undigest.el (rmail-digest-parse-rfc1153sloppy): Be even - sloppier, for the sake of GNU Mailman. - (rmail-digest-rfc1153): Initialize `result' correctly. - -2007-08-14 Glenn Morris - - * simple.el (bad-packages-alist): New constant. - (bad-package-check): New function. Together, these two add - elements to `after-load-alist' to check for problematic external - packages. - * emulation/cua-base.el: Move CUA-mode check to `bad-packages-alist'. - -2007-08-13 Stephen Leake - - * pcvs-parse.el (cvs-parse-table): Handle additional instance of - optional quotes around files in NEED-UPDATE . REMOVED case. - - * progmodes/ada-xref.el (ada-gnatls-args): Fix docstring. - (ada-treat-cmd-string): Improve error message. - (ada-do-file-completion): Call `ada-require-project-file', so - project variables are set properly. - (ada-prj-find-prj-file): Delete Emacs 20.2 support. - (ada-gnatfind-buffer-name): New constant. - (ada-find-any-references): Use new constant. Set buffer name - properly in compilation-start. Toggle read-only properly. - (ada-find-in-src-path): Fix spelling error in docstring. - - * progmodes/vhdl-mode.el (vhdl-update-progress-info): Avoid divide - by zero error. - -2007-08-13 Nick Roberts - - * progmodes/gdb-ui.el (gdb-send): Handle CTRL-D more carefully. - -2007-08-12 Richard Stallman - - * pcvs.el (cvs-reread-cvsrc, cvs-checkout, cvs-mode-checkout) - (cvs-execute-single-file): Use new name split-string-and-unquote. - (cvs-header-msg): Use new name combine-and-quote-strings. - - * emulation/vi.el (vi-next-line): Ignore return value of line-move. - - * progmodes/gud.el (gud-common-init): Use new name - split-string-and-unquote. - - * progmodes/flymake.el (flymake-err-line-patterns): Fix infloop - in javac regexp. - - * pcvs-util.el (cvs-qtypedesc-strings): Use new names - combine-and-quote-strings and split-string-and-unquote. - - * subr.el (combine-and-quote-strings): Rename from strings->string. - (split-string-and-unquote): Rename from string->strings. - -2007-08-10 Stefan Monnier - - * log-view.el (log-view-font-lock-keywords): Use `eval' so as to adapt - to buffer-local settings. - - * emacs-lisp/backquote.el (backquote-delay-process): New function. - (backquote-process): Add internal arg `level'. Use the two to - correctly handle nested backquotes. - -2007-08-09 Riccardo Murri - - * vc-bzr.el (vc-bzr-registered): Use \0 instead of literal NULs. - (vc-bzr-state-words): Add "kind changed" state word. - (vc-bzr-status): New function. Return Bzr idea of file status, - which is different from VC's. - (vc-bzr-state): Use vc-bzr-status. - (vc-workfile-unchanged-p): Use vc-bzr-status. - (vc-bzr-revert): Use synchronous process; expect exitcode 0. - (vc-dired-state): Process "kind changed" state word. - -2007-08-09 Stefan Monnier - - * vc-hooks.el (vc-default-find-file-not-found-hook): Do nothing. - - * vc-rcs.el (vc-rcs-find-file-not-found-hook): - Move from vc-default-find-file-not-found-hook. - -2007-08-09 Edward O'Connor (tiny change) - - * url/url-auth.el (url-basic-auth): When prompting for username - and password, default to the username and password in the URL. - -2007-08-08 Stefan Monnier - - * man.el: Remove spurious * in docstrings. - Merge defvars and toplevel setq-defaults. - (Man-highlight-references0): Limit=nil rather than point-max. - (Man-mode-map): Move initialization into the declaration. - (Man-strip-page-headers, Man-unindent): Use dolist & inhibit-read-only. - (Man-view-header-file): Use expand-file-name rather than concat. - (Man-notify-when-ready, Man-bgproc-sentinel): Use with-current-buffer. - - * man.el (Man-next-section): Make sure we do not move backward. - -2007-08-08 Vinicius Jose Latorre - - * ps-print.el (ps-default-fg, ps-default-bg): Docstring fix. - (ps-begin-job): Use ps-default-fg and ps-default-bg only when - ps-print-color-p is neither nil nor black-white. Reported by Christian - Schlauer . - -2007-08-08 Stefan Monnier - - * files.el (auto-mode-alist): Use the purecopied text (duh!). - -2007-08-08 Andreas Schwab - - * mail/mailabbrev.el (sendmail-pre-abbrev-expand-hook): Check for - self-insert-command, not self-insert. - -2007-08-08 Glenn Morris - - * emacs-lisp/checkdoc.el (checkdoc-ispell-lisp-words): Remove `iff'. - - * Replace `iff' in doc-strings and comments. - - * help-mode.el (help-make-xrefs): Search for symbol constituents, - rather than just `-'. - -2007-08-08 Martin Rudalics - - * dired.el (dired-pop-to-buffer): - * mouse-drag.el (mouse-drag-should-do-col-scrolling): - * calendar/calendar.el (generate-calendar-window): - * progmodes/compile.el (compilation-set-window-height): - * textmodes/two-column.el (2C-two-columns, 2C-merge): - Use window-full-width-p instead of comparing frame-width and - window-width. - - * progmodes/compile.el (compilation-find-buffer): Remove extra - argument in call to compilation-buffer-internal-p. - -2007-08-07 Michael Albinus - - * net/tramp.el (tramp-handle-file-remote-p): Handle optional - parameters IDENTIFICATION and CONNECTED. - (tramp-handle-insert-file-contents): VISIT must be handled after - insertion of the local copy. Reported by Peter Gordon - . - (tramp-file-name-handler): No special handling for - `expand-file-name'. But for `file-name-as-directory'. - (tramp-find-shell, tramp-open-connection-telnet) - (tramp-open-connection-rsh, tramp-open-connection-su) - (tramp-open-connection-multi) - (tramp-open-connection-setup-interactive-shell): Guard against - $PROMPT_COMMAND shell var. Reported by Steve Youngs - . - (tramp-append-tramp-buffers): Replace "sensible" by "sensitive" in - the hint. - - * net/trampver.el: Update release number. - -2007-08-07 Tom Tromey - - * progmodes/tcl.el (tcl-indent-level, tcl-continued-indent-level): - Add safe-local-variable property. - -2007-08-07 Chong Yidong - - * image-mode.el (image-toggle-display): Use image-refresh. - - * longlines.el (longlines-decoded): New variable. - (longlines-mode): Avoid encoding or decoding the buffer twice. - -2007-08-07 Riccardo Murri - - * vc-bzr.el: Remove comments about vc-bzr.el being a modified - unofficial version. - (vc-bzr-command): Remove redundant setting of process-connection-type. - (vc-bzr-admin-checkout-format-file): Add autoload. - (vc-bzr-root-dir): Remove in favor of vc-bzr-root. - (vc-bzr-root): Switch to implementation of vc-bzr-root-dir. - (vc-bzr-registered): Compare dirstate format tag with known good - value, abort parsing if match fails. Warn user in docstring. - (vc-bzr-workfile-version): Case for different Bzr branch formats. - See bzrlib/branch.py in Bzr sources. - (vc-bzr-diff): First argument FILES may be a string rather than a list. - (vc-bzr-shell-command): Remove in favor of - vc-bzr-command-discarding-stderr. - (vc-bzr-command-discarding-stderr): New function. - -2007-08-06 Riccardo Murri - - * vc-bzr.el (vc-bzr-registered): Gracefully handle missing "bzr" - program, and return nil - (vc-bzr-state): Gracefully handle missing "bzr" program, and return nil. - (vc-bzr-state): Look for path names relative to the repository - root after status keyword. - (vc-bzr-file-name-relative): New function. - (vc-bzr-admin-dirname): Reinstate, as other vc-bzr-admin-... paths - depend on it. - (vc-bzr-admin-dirname, ...-checkout-format-file) - (...-branch-format-file, ...-revhistory): Paths to some Bzr internal - files that we now parse directly for speed. - (vc-bzr-root-dir): Use `vc-bzr-admin-checkout-format-file' as witness. - (vc-bzr-registered): Only parse vc-bzr-admin-dirstate file if it exists. - (vc-bzr-state): "bzr status" successful only if exitcode is 0 - (vc-bzr-root): Use `vc-bzr-shell-command'. Stderr may contain - Bzr warnings, so we must discard it. - (vc-bzr-workfile-version): Speedup counting lines from - `vc-bzr-admin-revhistory' file, but fallback to spawning "bzr revno" - if that file doesn't exist. - (vc-bzr-responsible-p): Use `vc-bzr-root' instead of - `vc-bzr-root-dir' for speed. Add `vc-bzr-admin-dirname' - (not ".bzr"!) to `vc-directory-exclusion-list' - (vc-bzr-shell-command): New function. - -2007-08-06 Tom Tromey - - * diff-mode.el (diff-unified->context, diff-reverse-direction) - (diff-fixup-modifs): Typo in docstring. - -2007-08-06 Stefan Monnier - - * emulation/tpu-edt.el (tpu-current-line): Use posn-at-point and - count-screen-lines. - (tpu-edt-off): Disable relevant pieces of advice. - - * emulation/tpu-extras.el (tpu-before-save-hook): Rename from - tpu-write-file-hook. Activate it with add-hook on buffer-save-hook. - (newline, newline-and-indent, do-auto-fill): Use advice instead of - redefining the function. - (tpu-set-scroll-margins): Activate the pieces of advice. - -2007-08-06 Michael Albinus - - * net/ange-ftp.el (ange-ftp-hook-function): Catch also errors in - process-filter. - -2007-08-06 Martin Rudalics - - * help.el (resize-temp-buffer-window): Use window-full-width-p - instead of comparing frame-width and window-width. - -2007-08-05 Peter Povinec yahoo.com> (tiny change) - - * term.el: Honor term-default-fg-color and term-default-bg-color - settings when modifying term-current-face. - (term-default-fg-color, term-default-bg-color): Initialize from - default term-current-face. - (term-mode, term-reset-terminal): Set term-current-face with - term-default-fg-color and term-default-bg-color. - (term-handle-colors-array): term-current-face has term-default-fg-color - and term-default-bg-color after reset escape sequence. - (term-handle-colors-array): Set term-current-color with - term-default-fg/bg-color instead of ansi-term-color-vector when the - index (term-ansi-current-color or term-ansi-current-bg-color) is zero. - -2007-08-05 Michael Albinus - - * files.el (set-auto-mode): Handle also remote files wrt - `auto-mode-alist'. - - * net/tramp.el (tramp-handle-file-remote-p): Return a string as - remote identification. - -2007-08-04 Glenn Morris - - * autorevert.el (auto-revert-tail-mode): auto-revert-tail-pos is - zero, not nil, when the library is first loaded. Check for a file - that has been modified on disk. - - * progmodes/cperl-mode.el (cperl-compilation-error-regexp-alist): - Remove duplicate defvar preventing initialization. - (cperl-mode): Fix compilation-error-regexp-alist-alist setting. - -2007-08-03 Miles Bader - - * vc-hooks.el (vc-handled-backends): Change capitalization of VC - backend names for new backends to `Git', `Hg', and `Bzr'. - * vc-hg.el (vc-hg-dired-state-info): Use `Hg' as VC backend name, - not `HG'. - * vc-git.el (vc-git-dired-state-info): Use `Git' as VC backend - name, not `GIT'. - * vc-bzr.el (vc-bzr-dir-state, vc-bzr-dired-state-info) - (vc-bzr-unload-hook): Use `Bzr' as VC backend name, not `BZR'. - -2007-08-03 Glenn Morris - - * net/telnet.el (telnet-mode): Set comint-use-prompt-regexp to t. - -2007-08-02 Richard Stallman - - * mail/rmailsum.el (rmail-make-summary-line): Find end of msg number - to update deleted flag. - - * cus-edit.el (customize-apropos, customize-apropos-options) - (customize-apropos-faces, customize-apropos-groups): Improve prompt. - - * menu-bar.el (menu-bar-help-menu): Add "About GNU" menu item. - - * startup.el (fancy-splash-head, startup-echo-area-message): - Change message text. - - * emulation/tpu-edt.el (next-line-internal): Setting deleted. - All callers use line-move. - - * progmodes/compile.el (compilation-find-buffer): Return current - buffer immediately if suitable. - (compile, compilation-buffer-name, compilation-start): Doc fixes. - -2007-08-02 Stefan Monnier - - * vc-bzr.el (vc-bzr-admin-dirstate): Rename from `...-dirname'. - Make it more discriminating and more useful. - (vc-bzr-root-dir): Use new name. - (vc-bzr-registered): Use new name and look at the dirstate file to - determine if it's registered or not without running `bzr'. - -2007-08-01 Eric Hanchrow (tiny change) - - * ibuf-ext.el (ibuffer-mark-old-buffers): Docstring fix. - -2007-07-31 Drew Adams - - * cus-edit.el (custom-group-value-create, custom-goto-parent): - Fix parent groups link. - -2007-07-31 Daiki Ueno - - * faces.el (face-normalize-spec): New function. - (frame-set-background-mode): Normalize face-spec before calling - face-spec-match-p. - -2007-07-31 Stefan Monnier - - * vc-bzr.el: New file (copied from the trunk). - - * vc-hooks.el (vc-handled-backends): Add BZR. - (vc-find-file-hook): Failsafe if the backend's `registered' - function burps. - - * server.el (server-window): Add switch-to-buffer-other-frame option. - -2007-07-30 Dan Nicolaescu - - * vc-git.el (vc-directory-exclusion-list, vc-handled-backends): Remove. - (vc-git-revision-completion-table): Enable. - - * vc-hooks.el (vc-handled-backends): Add GIT and HG. - - * vc.el (vc-directory-exclusion-list): Add .git and .hg. - - * vc-hg.el (vc-hg-revision-completion-table): Re-enable. - (vc-hg-registered): Set the vc-state property. - - * diff-mode.el (diff-mode-menu): New entries. - -2007-06-30 Stefan Monnier - - * diff-mode.el (diff-beginning-of-file-and-junk): New function. - (diff-file-kill): Use it. - (diff-beginning-of-hunk): Add arg `try-harder' using it. - (diff-restrict-view, diff-find-source-location, diff-refine-hunk): - Use it so they find the hunk even when we're in the file header. - - * vc.el: Add new VC operation `revision-completion-table'. - (vc-default-revision-completion-table): New function. - (vc-version-diff, vc-version-other-window): Use it to provide - completion of revision names if the backend provides it. - - * vc-arch.el (vc-arch--version-completion-table) - (vc-arch-revision-completion-table): New functions to provide - completion of revision names. - - * vc-cvs.el: Require CL. - (vc-cvs-revision-table, vc-cvs-revision-completion-table): - New functions to provide completion of revision names. - -2007-07-29 Kimit Yada (tiny change) - - * emacs-lisp/copyright.el (copyright-update-year, copyright-update) - (copyright-fix-years, copyright): Correctly handle the case where - copyright-limit is nil. - -2007-07-28 Konstantin Novitsky (tiny change) - - * progmodes/python.el (run-python): Fix path separator under w32. - -2007-07-28 Dan Nicolaescu - - * vc-git.el: New File. - -2007-07-28 Alan Mackenzie - - Fix problem with modes derived from CC Mode: - * progmodes/cc-mode.el (c-make-emacs-variables-local): Move this - macro to cc-langs. - (c-init-language-vars-for): Remove call to above macro. - * progmodes/cc-langs.el (c-make-emacs-variables-local): Macro has - been moved to here. - (c-make-init-lang-vars-fun): Call c-make-emacs-variables-local. - -2007-07-28 Eli Zaretskii - - * net/trampver.el: Fix the `coding' cookie. - -2007-07-25 Nick Roberts - - * add-log.el (change-log-redate): Remove (not needed anymore and - doesn't appear to work). - -2007-07-25 Glenn Morris - - * Relicense all FSF files to GPLv3 or later. - - * COPYING: Switch to GPLv3. - -2007-07-25 Stefan Monnier - - * pcvs.el (cvs-temp-buffer): Undo last ill-conceived change. - Replace it with another one which disables undo before calling - erase-buffer and then turns it back on if needed. - -2007-07-24 Vinicius Jose Latorre - - * ps-print.el: Problem with foreground and background color when - printing a buffer with and without faces. Reported by Christian - Schlauer . - (ps-print-version): New version 6.7.5. - (ps-default-fg): Change default value to nil, so black color is used - when a face does not specify a foreground color. - (ps-default-bg): Change default value to nil, so white color is used - for background color. - (ps-begin-job): Fix code. - -2007-07-24 Dan Nicolaescu - - * vc-hg.el (vc-hg-revision-completion-table): Temporarily comment out. - -2007-07-24 Alan Mackenzie - - * emacs-lisp/bytecomp.el (byte-compile-from-buffer): - Initialise byte-compile-unresolved-functions before rather than - after a compilation. - (byte-compile-unresolved-functions): Amplify doc string. - -2007-07-24 Glenn Morris - - * calendar/cal-tex.el (cal-tex-holidays, cal-tex-diary) - (cal-tex-rules, cal-tex-buffer, cal-tex-24) - (cal-tex-cursor-month-landscape, cal-tex-cursor-month) - (cal-tex-cursor-week, cal-tex-cursor-week2) - (cal-tex-cursor-week-iso, cal-tex-week-hours) - (cal-tex-cursor-week-monday, cal-tex-weekly4-box) - (cal-tex-cursor-filofax-2week, cal-tex-cursor-filofax-week) - (cal-tex-cursor-filofax-daily, cal-tex-daily-page): Doc fix. - -2007-07-24 Stefan Monnier - - * pcvs.el (cvs-temp-buffer): Disable undo in temp buffers. - -2007-07-23 Stefan Monnier - - * ses.el (ses-cleanup): Prevent Emacs from spuriously checking if the - underlying file is uptodate. - -2007-07-23 Richard Stallman - - * progmodes/octave-inf.el (inferior-octave-prompt): Accept .exe. - -2007-07-23 Stefan Monnier - - * progmodes/sh-script.el (sh-font-lock-backslash-quote) - (sh-font-lock-flush-syntax-ppss-cache): New funs. - (sh-font-lock-syntactic-keywords): Use them to distinguish the - different possible cases for \'. - (sh-font-lock-paren): Mark the relevant text with font-lock-multiline. - - * vc-hooks.el (vc-find-root): Walk up the tree to find an existing - `file' from which to start the search and fix case where `file' is the - current directory and the root as well. - - * pcvs.el (cvs-mode-add-change-log-entry-other-window): Use a directory - name for buffer-file-name if it refers to a directory. - -2007-07-22 Jason Rumney - - * w32-fns.el (set-default-process-coding-system): Use dos line ends - for input to cmdproxy on all versions of Windows. - Use dos line ends for input to plink. - - * comint.el (comint-simple-send): Concat newline before sending. - (comint-password-prompt-regexp): Recognize plink's passphrase prompt. - -2007-07-22 Juri Linkov - - * isearch.el (isearch-edit-string): Save old point and - isearch-other-end to old-point and old-other-end before reading - the search string from minibuffer. After exiting minibuffer set - point to old-other-end if point and the search direction is the - same as before reading the search string. - (isearch-del-char): Don't set isearch-yank-flag to t. Put point - to isearch-other-end. Instead of isearch-search-and-update call - three functions isearch-search, isearch-push-state and isearch-update. - -2007-07-22 Ralf Angeli - - * textmodes/reftex.el (reftex-access-parse-file): Do not risk - destroying an existing buffer. - -2007-07-22 Jan Dj,Ad(Brv - - * startup.el (command-line-x-option-alist): Use x-handle-no-bitmap-icon. - - * term/x-win.el (x-handle-no-bitmap-icon): New function. - -2007-07-22 Ralf Angeli - - * textmodes/reftex.el (reftex-access-parse-file): Create parse - file in a way that does not interfere with recentf. - -2007-07-21 Thien-Thi Nguyen - - * image-dired.el (image-dired-sane-db-file): New func. - (image-dired-write-tags, image-dired-remove-tag) - (image-dired-list-tags, image-dired-write-comments) - (image-dired-get-comment, image-dired-mark-tagged-files) - (image-dired-create-gallery-lists): Call new func. - Reported by Dieter Wilhelm . - -2007-07-21 Dan Nicolaescu - - * vc-hg.el (vc-hg-diff): Use vc-hg-command. - (vc-hg-dir-state): Fix loop. - (vc-hg-print-log): Fix expected return value for vc-hg-command. - (vc-hg-next-version, vc-hg-delete-file, vc-hg-rename-file) - (vc-hg-register, vc-hg-create-repo, vc-hg-checkin) - (vc-hg-revert): Likewise. - (vc-hg-revision-table, vc-hg-revision-completion-table): New functions. - -2007-07-21 Thien-Thi Nguyen - - * emacs-lisp/lisp-mode.el (calculate-lisp-indent): In the - case of alignment under a constant symbol, find and consider - the sexp actually at indentation to be the "last sexp". - -2007-07-20 Eli Zaretskii - - * makefile.w32-in (install-lisp-SH, install-lisp-CMD): New targets. - (install): Use them to copy all *.el files before *.elc. - (clean): Don't delete *~. - -2007-07-20 Dan Nicolaescu - - * vc-hg.el (vc-hg-workfile-unchanged-p): New function. - -2007-07-19 Dan Nicolaescu - - * vc-hg.el (vc-hg-registered): Replace if with when. - (vc-hg-state): Deal with nonexistent files. - -2007-07-18 Juanma Barranquero - - * follow.el (follow-mode-hook, follow-mode-off-hook, follow-mode) - (follow-delete-other-windows-and-split, follow-recenter) - (follow-windows-aligned-p, follow-point-visible-all-windows-p) - (follow-redisplay, follow-estimate-first-window-start) - (follow-xemacs-scrollbar-support, follow-intercept-process-output): - Fix typos in docstrings. - -2007-07-17 Thien-Thi Nguyen - - * bookmark.el (bookmark-show-all-annotations): - Make sure each inserted annotation ends with newline. - - (bookmark-maybe-sort-alist): Don't modify - bookmark-alist. Instead, if not sorting, simply return it. - (bookmark-bmenu-list): Call bookmark-maybe-sort-alist - for its return value, not for its side effect. - -2007-07-17 Dan Nicolaescu - - * vc.el: Add more info about the vc-registered function. - -2007-07-16 David Kastrup - - * emacs-lisp/advice.el (defadvice): Doc fix. - -2007-07-16 Juanma Barranquero - - * subr.el (when, unless): Doc fix. - -2007-07-16 Dan Nicolaescu - - * vc-hg.el (vc-hg-state): Handle removed files. - (vc-hg-dir-state, vc-hg-dired-state-info): New functions. - (vc-hg-checkout): Re-enable. - -2007-07-15 Richard Stallman - - * kmacro.el (kmacro-bind-to-key): Avoid comparisons on function keys. - - * tutorial.el (tutorial--find-changed-keys): - Handle C-x specially like ESC. - -2007-07-15 Roland McGrath - - * add-log.el (add-change-log-entry): Check add-log-full-name - and add-log-mailing-address later, after change-log-mode-hook. - -2007-07-15 Richard Stallman - - * isearch.el (isearch-mode, isearch-done): - Delete unintended code in previous change. - - * ps-print.el (ps-default-bg): Change to White. - -2007-07-15 Aaron Hawley - - * tar-mode.el (tar-get-descriptor): No error for zero-length file. - -2007-07-15 Martin Rudalics - - * mouse.el (mouse-drag-track): Reset transient-mark-mode to nil - when handling the terminating event. - -2007-07-15 Jeff Miller (tiny change) - - * calendar/calendar.el (calendar-goto-bahai-date): Autoload it. - -2007-07-13 Eli Zaretskii - - * makefile.w32-in (install-lisp-SH, install-lisp-CMD): New targets. - (install): Use them to copy all *.el files before *.elc. - -2007-07-13 Dan Nicolaescu - - * replace.el (match): Use yellow1 instead of yellow. - - * progmodes/gdb-ui.el (breakpoint-enabled): Use red1 instead of red. - - * pcvs-info.el (cvs-unknown): Likewise. - -2007-07-12 Davis Herring - - * desktop.el (desktop-buffer-info, desktop-save): - Use `desktop-dirname' instead of `dirname'. - -2007-07-10 Jim Meyering (tiny change) - - * emacs-lisp/copyright.el (copyright-current-gpl-version): Set to 3. - - * autoinsert.el (auto-insert-alist): s/2/3/ in the generated comment. - -2007-07-10 Richard Stallman - - * emacs-lisp/lisp-mode.el (eval-defun): - Explain special handling of `defface'. - -2007-07-09 Richard Stallman - - * isearch.el (isearch-edit-string): Call to isearch-push-state - after the search. - -2007-07-08 Katsumi Yamaoka - - * cus-start.el (file-coding-system-alist): Fix custom type. - -2007-07-08 Chong Yidong - - * longlines.el (longlines-wrap-region): Avoid marking buffer as - modified. - (longlines-auto-wrap, longlines-window-change-function): - Remove unnecessary calls to set-buffer-modified-p. - -2007-06-20 Stefan Monnier - - * vc.el (vc-default-log-view-mode): New function. - (vc-print-log): Add new `log-view-mode' VC operation. - -2007-07-08 Nick Roberts - - * pcvs-util.el (cvs-strings->string, cvs-string->strings): - Rename and move to... - - * subr.el (strings->string, string->strings): ...here. - - * pcvs.el (cvs-reread-cvsrc, cvs-header-msg, cvs-checkout) - (cvs-mode-checkout, cvs-execute-single-file): Use new function names. - - * progmodes/gud.el (gud-common-init): Call string->strings instead - of split-string. - -2007-07-07 Eli Zaretskii - - * term/w32-win.el (menu-bar-open): New function. - Bind to it. - -2007-07-07 Dan Nicolaescu - - * log-view.el (log-view-mode-menu): New menu. - -2007-07-06 Dan Nicolaescu - - * vc-hg.el: New file. - -2007-07-06 Andreas Schwab - - * emacs-lisp/lisp-mode.el (eval-last-sexp): Avoid introducing any - dynamic bindings around the evaluation of the expression. - Reported by Jay Belanger . - -2007-07-03 Dan Nicolaescu - - * progmodes/gud.el (auto-mode-alist): Match more valid gdb init - file names. - -2007-07-02 Martin Rudalics - - * help-mode.el (help-make-xrefs): Skip spaces too when skipping tabs. - - * mouse.el (mouse-drag-mode-line-1): Quit mouse tracking when - event is not a cons cell. Do not unread drag-mouse-1 events. - Select right window in check whether space was stolen from - window above. - -2007-07-01 Richard Stallman - - * files.el (find-file-visit-truename): Fix safe-local-variable value. - -2007-06-29 Juanma Barranquero - - * generic-x.el (generic-define-mswindows-modes) - (generic-define-unix-modes, apache-log-generic-mode) - (bat-generic-mode-keymap, java-manifest-generic-mode) - (show-tabs-generic-mode): Fix typos in docstrings. - -2007-06-28 Jan Dj,Ad(Brv - - * dnd.el (dnd-get-local-file-name): Set fixcase to t in call to - replace-regexp-in-string. - -2007-06-28 Andreas Schwab - - * Makefile.in ($(lisp)/mh-e/mh-loaddefs.el): Depend on - $(lisp)/subdirs.el. - -2007-06-28 Juanma Barranquero - - * speedbar.el (speedbar-handle-delete-frame): Don't try to delete - the speedbar frame if nil; that deletes the current frame or - causes an error if it is the only frame. - Reported by Angelo Graziosi . - -2007-06-24 Juanma Barranquero - - * desktop.el (desktop-read): Run `desktop-not-loaded-hook' in the - directory where the desktop file was found, as the docstring says. - (desktop-kill): Use `read-directory-name'. - - * desktop.el (desktop-load-locked-desktop): New option. - (desktop-read): Use it. - (desktop-truncate, desktop-outvar, desktop-restore-file-buffer): - Use `when'. - -2007-06-24 Davis Herring - - * desktop.el (desktop-save-mode-off): New function. - (desktop-base-lock-name, desktop-not-loaded-hook): New variables. - (desktop-full-lock-name, desktop-file-modtime, desktop-owner) - (desktop-claim-lock, desktop-release-lock): New functions. - (desktop-kill): Tell `desktop-save' that this is the last save. - Release the lock afterwards. - (desktop-buffer-info): New function. - (desktop-save): Use it. Run `desktop-save-hook' where the doc - says to. Detect conflicts, and manage the lock. - (desktop-read): Detect conflicts. Manage the lock. - -2007-06-23 Eli Zaretskii - - * ls-lisp.el (insert-directory): If an invalid regexp error is - thrown, try using FILE as a literal file name, not a wildcard. - Check for FILE as an existing file, not just a directory. - -2007-06-23 Juanma Barranquero - - * ruler-mode.el (ruler-mode): Prevent clobbering the original - `header-line-format' when reentering ruler mode. - -2007-06-23 Eli Zaretskii - - * ls-lisp.el (insert-directory): Don't treat FILE as a wildcard if - FILE exists as a directory. - -2007-06-21 Stefan Monnier - - * progmodes/vera-mode.el (vera-mode): Fix `commend-end-skip' setting. - (vera-font-lock-match-item): Fix doc string. - (vera-in-comment-p): Remove unused function. - (vera-skip-forward-literal, vera-skip-backward-literal): Improve code, - use `syntax-ppss'. - (vera-forward-syntactic-ws): Fix argument order. - (vera-prepare-search): Use `with-syntax-table'. - (vera-indent-line): Fix doc string. - (vera-electric-tab): Fix doc string. - (vera-expand-abbrev): Define alias instead of using `fset'. - (vera-comment-uncomment-region): Use `comment-start-skip'. - -2007-06-20 Reto Zimmermann - - * progmodes/vera-mode.el: New file. - -2007-06-20 Juanma Barranquero - - * ido.el (ido-find-file-in-dir): Don't signal an error for - empty directories. - -2007-06-18 Alan Mackenzie - - * progmodes/cc-mode.el (c-remove-any-local-eval-or-mode-variables): - When removing lines, also remove the \n. Correction of patch of - 2007-04-21. - -2007-06-17 Glenn Morris - - * lpr.el (lpr-page-header-switches): Move %s to separate element - for correct quoting. Doc fix. - -2007-06-13 Johan Bockg,Ae(Brd - - * term/xterm.el (terminal-init-xterm): Escape parens in character - constants. - -2007-06-12 Ralf Angeli - - * scroll-lock.el (scroll-lock-mode): Doc fix. - -2007-06-11 Stefan Monnier - - * font-lock.el (font-lock-add-keywords): In case font-lock was only - half-activated, forcefully activate it completely. - -2007-06-11 Richard Stallman - - * cus-edit.el (custom-variable-type): Doc fix. - -2007-06-09 Alfred M. Szmidt (tiny change) - - * mail/rmail.el (rmail-movemail-variant-in-use): Fix doc typo. - -2007-06-09 Davis Herring - - * desktop.el (desktop-minor-mode-table): Doc fix. - -2007-06-08 Chong Yidong - - * image-mode.el (image-forward-hscroll, image-backward-hscroll) - (image-next-line, image-previous-line, image-scroll-up) - (image-scroll-down, image-bol, image-eol, image-bob, image-eob): - New functions. - (image-mode-map): Remap motion commands. - (image-mode-text-map): New keymap for viewing images as text. - (image-mode): Use image-mode-map. - (image-toggle-display): Toggle auto-hscroll-mode and mode keymaps. - -2007-06-07 Michael Albinus - - Sync with Tramp 2.0.56. - - * net/tramp.el: - * net/tramp-ftp.el: - * net/tramp-smb.el: - * net/tramp-util.el: - * net/tramp-vc.el: - Don't load cl.el, because that pollutes the namespace. Replace cl - macros by their implementations where necessary. Requested by - Richard Stallman . - - * net/tramp.el (top): Make `set-buffer-multibyte' an alias if it - doesn't exist. - (with-parsed-tramp-file-name): Protect debug spec during compilation. - (tramp-handle-insert-directory): Check (featurep 'ls-lisp). - (tramp-file-name-p, tramp-file-name-multi-method) - (tramp-file-name-method, tramp-file-name-user) - (tramp-file-name-host, tramp-file-name-localname): New defuns, - replacing defstruct `tramp-file-name'. - (tramp-handle-file-remote-p, tramp-completion-dissect-file-name1) - (tramp-dissect-file-name, tramp-dissect-multi-file-name): - Apply `vector' instead of `make-tramp-file-name'. - (tramp-handle-make-auto-save-file-name): - Apply `tramp-temporary-file-directory' for compatibility reasons. - (tramp-completion-mode): Use `natnump' instead of `wholenump' - because of XEmacs. - (tramp-completion-mode): `last-input-event' is nil when XEmacs is - started. - -2007-06-07 David Kastrup - - * dired.el (dired-recursive-deletes, dired-recursive-copies): - Change default to `top'. - -2007-06-07 Chong Yidong - - * dired.el (dired-mode-map): Remove spurious separator. - -2007-06-07 Juanma Barranquero - - * progmodes/ebrowse.el (ebrowse-draw-file-member-info): Doc fix. - - * progmodes/mixal-mode.el (mixal-operation-codes-alist): - * progmodes/idlwave.el (idlwave-one-key-select): Fix typo in docstring. - -2007-06-07 Alfred M. Szmidt (tiny change) - - * mail/rmailsum.el (rmail-summary-save-buffer): New command. - (rmail-summary-mode-map): Add rmail-summary-save-buffer. - -2007-06-07 Juanma Barranquero - - * progmodes/ebrowse.el (ebrowse-member-table): - * textmodes/org.el (org-export-ascii-bullets): Fix typos in docstrings. - -2007-06-06 Juanma Barranquero - - * pgg.el (pgg-sign-region, pgg-sign): - * ses.el (ses-call-printer): - * calendar/icalendar.el (icalendar--diarytime-to-isotime): - * textmodes/org.el (org-cycle): Fix typos in docstrings. - -2007-06-06 Eli Zaretskii - - * tar-mode.el (tar-header-block-summarize, tar-summarize-buffer) - (tar-get-descriptor): Handle type 55, an extended pax header. - -2007-06-06 Stefan Monnier - - * textmodes/css-mode.el: New file. - -2007-06-06 Michael Albinus - - * net/socks.el: New file, taken from w3 repository. - (top): Update Copyright. Don't load cl.el. - (all): Replace `case' by `cond', `string-to-int' by - `string-to-number', and `process-kill-without-query' by - `set-process-query-on-exit-flag'. - (socks-char-int): Remove defalias and all occurrences. - -2007-06-06 Juanma Barranquero - - * international/mule-cmds.el (toggle-enable-multibyte-characters) - (sort-coding-systems, search-unencodable-char): Doc fixes. - (coding-system-change-eol-conversion, set-default-coding-systems) - (prefer-coding-system, find-multibyte-characters, princ-list) - (leim-list-entry-regexp, set-input-method, locale-language-names) - (input-method-exit-on-first-char, exit-language-environment-hook) - (locale-charset-language-names): Fix typos in docstrings. - -2007-06-05 Juanma Barranquero - - * bs.el (bs-cycle-previous): Don't modify the cycle list until - `switch-to-buffer' has returned succesfully. - (bs-cycle-next): Ditto. Also, don't bury the buffer when the - window is dedicated (it could iconify the frame). - -2007-06-05 Glenn Morris - - * files.el (auto-mode-alist): Open `.asd' files in lisp-mode. - -2007-06-05 Chong Yidong - - * files.el (auto-mode-alist): Add lower-priority match for names - like ChangeLog.old. - -2007-06-04 Andreas Schwab - - * emacs-lisp/sregex.el (sregexq): Fix doc string quoting. - -2007-06-04 Davis Herring - - * calendar/timeclock.el: Update version number. - (timeclock-modeline-display): Mention timeclock-use-display-time - in explanatory message. - (timeclock-log): Suppress warnings when finding the log. - Don't check for a nil project twice. Run hooks after killing the - buffer (if applicable). - (timeclock-geometric-mean): Rename to `timeclock-mean' (it never - was geometric). All uses changed. - (timeclock-generate-report): Support prefix argument. - -2007-06-04 Micha,Ak(Bl Cadilhac - - * man.el (Man-next-section): Don't consider the last line of the - page as being part of any section. - -2007-06-04 Martin Rudalics - - * hilit-chg.el (highlight-changes-rotate-faces): Don't set - modified flag of buffer. Use `inhibit-modification-hooks'. - -2007-06-04 Katsumi Yamaoka - - * mail/mail-extr.el (mail-extract-address-components): - Recognize non-ASCII characters except for NBSP as words. - -2007-06-04 Ryan Yeske - - * net/webjump.el (webjump-sample-sites): Add Wikipedia query. - -2007-06-04 Michael Olson - - * emacs-lisp/tq.el (tq-queue-pop): Stifle error when a process has - died and we are trying to send a signal to it. - -2007-06-04 Juanma Barranquero - - * emacs-lisp/easy-mmode.el (define-minor-mode) - (easy-mmode-define-navigation): Fix typos in docstrings. - - * progmodes/compile.el (compilation-find-file, compilation-handle-exit): - Fix typos in docstrings. - (compilation-search-path, compilation-buffer-name-function): Doc fixes. - (compilation-finish-function): Fix typo in obsolescence declaration. - - * progmodes/idlwave.el (idlwave-routines): Fix typo in docstring. - -2007-06-04 Chong Yidong - - * files.el (magic-mode-alist): Remove image-type-auto-detected-p. - (magic-fallback-mode-alist): Add image-type-auto-detected-p. - - * image.el (image-type-auto-detected-p): Don't scan auto-mode-alist. - - * longlines.el (longlines-mode): Make longlines-auto-wrap - buffer-local. Add hooks unconditionally. - (longlines-auto-wrap): Toggle wrapping. - (longlines-after-change-function) - (longlines-post-command-function): Check longlines-auto-wrap. - -2007-06-02 Chong Yidong - - * Version 22.1 released. - -2007-06-01 Chong Yidong - - * paren.el (show-paren-function): Undo 2007-04-19 and 2007-04-20 - changes. - -2007-05-31 Richard Stallman - - * dired.el (dired-do-delete, dired-do-flagged-delete): Doc fixes. - -2007-05-29 Martin Rudalics - - * textmodes/table.el (table--point-entered-cell-function) - (table--point-left-cell-function): - Bind `inhibit-point-motion-hooks' to t. - -2007-05-29 Nikolaj Schumacher (tiny change) - - * emacs-lisp/rx.el (rx): Doc fix. - -2007-05-28 Chong Yidong - - * textmodes/sgml-mode.el (sgml-point-entered): Use condition-case. - -2007-05-27 Tetsurou Okazaki (tiny change) - - * log-edit.el (log-edit-changelog-paragraph): Return point-max - as the end of the ChangeLog paragraph when it ends without a line - termination. - -2007-05-25 Stefan Monnier - - * textmodes/fill.el (canonically-space-region): Make the second arg - a marker if it's not already the case. - - * xt-mouse.el (xterm-mouse-truncate-wrap): New function. - (xterm-mouse-event): Use it. - -2007-05-25 Miles Bader - - * vc-hooks.el (vc-find-root): Fix file attribute test. - -2007-05-24 Richard Stallman - - * textmodes/flyspell.el (flyspell-correct-word-before-point): - Don't let opoint be nil. - (flyspell-emacs-popup): Explicit error if no dialogs. - -2007-05-23 Eli Zaretskii - - * tar-mode.el (tar-file-name-handler): New function. - (tar-extract): Bind file-name-handler-alist to it to force - find-buffer-file-type-coding-system behave as if the file being - extracted existed. Use last-coding-system-used to force - buffer-file-coding-system to what decode-coding-region actually - used to decode the file. - -2007-05-23 Nikolaj Schumacher (tiny change) - - * progmodes/compile.el (compilation-handle-exit): - `compilation-finish-function' may change the current buffer. - -2007-05-22 Richard Stallman - - * files.el (set-auto-mode): Doc fix. - -2007-05-22 Eli Zaretskii - - * dos-w32.el (find-buffer-file-type-coding-system): Doc fix. - -2007-05-21 Trent Buck (tiny change) - - * net/rcirc.el (rcirc-fill-column): Allow `window-width'. - (rcirc-print): Handle `window-width'. - (rcirc-buffer-maximum-lines): Doc fix. - -2007-05-19 Kevin Ryde - - * info.el (Info-fontify-node): Match https also. - -2007-05-18 Richard Stallman - - * simple.el (push-mark): Doc fix. - -2007-05-18 Rob Riepel - - * emulation/tpu-edt.el (CSI-map, SS3-map): Move from global-map to - tpu-global-map. - (tpu-original-global-map): Delete variable. - (tpu-control-keys-map): New keymap variable. - (tpu-set-control-keys): Use tpu-reset-control-keys rather than - setting keymapping directly. - (tpu-reset-control-keys): Use tpu-control-keys-map instead of - tpu-global-map. - (tpu-edt-on): Activate the tpu-global-map. - (tpu-edt-off): Deactivate the tpu-global-map. - -2007-05-18 Ryan Yeske - - * textmodes/ispell.el (ispell-get-word): Return markers - for start and end positions. - (ispell-word): Assume END is a marker. - -2007-05-17 Vinicius Jose Latorre - - * ps-print.el: Use default color when foreground or background color - are unspecified. Reported by Leo . - (ps-print-version): New version 6.7.4. - (ps-rgb-color): New argument. Use default color when color is - unspecified. - (ps-begin-job): Fix code. - -2007-05-17 Martin Rudalics - - * textmodes/ispell.el (ispell-start-process): Defend against bad - default-directory. - -2007-05-17 Stefan Monnier - - * vc-hooks.el (vc-find-root): Stop searching when the user changes. - -2007-05-16 Richard Stallman - - * buff-menu.el (Buffer-menu-sort-column): Doc fix. - -2007-05-16 Stefan Monnier - - * files.el (magic-mode-alist, magic-fallback-mode-alist): - Move the *ml, Postscript, and XmCD entries to the fallback part. - - * files.el (magic-fallback-mode-alist): - Rename from file-start-mode-alist. - -2007-05-16 Nikolaj Schumacher (tiny change) - - * progmodes/compile.el (compilation-handle-exit): Quote first - argument of `run-hook-with-args'. - -2007-05-16 Juanma Barranquero - - * buff-menu.el (Buffer-menu-sort-column): - * dabbrev.el (dabbrev-upcase-means-case-search): - * dired.el (dired-recursive-deletes, dired-recursive-copies): - * info.el (Info-current-subfile): - * ls-lisp.el (ls-lisp-verbosity): - * msb.el (msb-menu-cond): - * pcvs.el (cvs-dired-use-hook): - * simple.el (set-mark-command-repeat-pop): - * time.el (display-time-24hr-format, display-time-mail-file): - Doc fixes. - - * tutorial.el (get-lang-string, tutorial--find-changed-keys): - * printing.el (pr-ps-fast-fire): Fix typos in docstrings. - - * view.el (view-inhibit-help-message): Fix typo in docstring. - (view-scroll-auto-exit, view-try-extend-at-buffer-end): Doc fixes. - -2007-05-14 Eli Zaretskii - - * mail/rmail.el (rmail-convert-to-babyl-format): - Check content-transfer-encoding _last_, because we need its position - in base64-header-field-end. - -2007-05-14 Juanma Barranquero - - * files.el (mode-require-final-newline, require-final-newline) - (enable-local-variables, enable-local-eval): Doc fixes. - -2007-05-10 Edward O'Connor (tiny change) - - * progmodes/python.el (python-font-lock-keywords) - (python-open-block-statement-p, python-mode): Add support for the new - "with" keyword. - -2007-05-10 Richard Stallman - - * international/iso-cvt.el (iso-cvt-read-only): Ignore arguments. - (iso-cvt-write-only): Likewise. - - * emacs-lisp/easy-mmode.el (define-minor-mode): - Fix generated doc string. - - * startup.el (fancy-splash-text): Add URL of guided tour. - Adjust horizontal and vertical whitespace. - - * progmodes/compile.el (compilation-handle-exit): - Use run-hook-with-args to run compilation-finish-functions. - - * files.el (file-start-mode-alist): New variable. - (magic-mode-regexp-match-limit): Doc fix. - (set-auto-mode): Handle file-start-mode-alist. - A little cleanup of structure. - -2007-05-10 Davis Herring - - * calendar/timeclock.el (timeclock-in): Fix non-interactive - workday specifications. - (timeclock-log): Don't kill the log buffer if it already existed. - -2007-05-08 Richard Stallman - - * mail/mailabbrev.el (sendmail-pre-abbrev-expand-hook): - Don't include non-self-insert commands in the exception for `-'. - -2007-05-08 David Reitter - - * progmodes/python.el (python-guess-indent): Check non-nullness - before comparing indent against the 2..8 interval. - -2007-05-07 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-ts-unicode-for-key-event): Check if text is - available. - -2007-05-06 Richard Stallman - - * emacs-lisp/eldoc.el (turn-on-eldoc-mode): Doc fix. - -2007-05-03 Ryan Yeske - - * net/rcirc.el (rcirc-timeout-seconds): Increase to prevent unwanted - disconnections. - -2007-05-01 Romain Francoise - - * dired-x.el: Revert 2007-04-06 change. - -2007-04-30 Nick Roberts - - * progmodes/gud.el (gud-menu-map): Pdb can't handle SIGINT so - don't put stop on toolbar. - -2007-04-29 Stephen Berman - - * find-dired.el (find-dired-filter): Propertize all text down to eob. - -2007-04-29 Richard Stallman - - * international/mule.el (auto-coding-alist): Add pdf => no-conversion. - -2007-04-28 Stefan Monnier - - * progmodes/cc-mode.el (c-before-change): Use point-min rather - than 1. - -2007-04-28 Richard Stallman - - * progmodes/sh-script.el (sh-mode): Recognize .profile as sh style. - -2007-04-28 Stefan Monnier - - * vc-hooks.el (vc-ignore-dir-regexp): Add /.../ for the DFS filesystem. - -2007-04-28 Eli Zaretskii - - * makefile.w32-in ($(lisp)/mh-e/mh-loaddefs.el): Use ./mh-e - instead of $(lisp)/mh-e. - - * textmodes/fill.el (fill-paragraph): Doc fix. - -2007-04-28 Glenn Morris - - * image-dired.el (image-dired-cmd-create-thumbnail-options) - (image-dired-cmd-create-temp-image-options): Replace option - +profile "*" with -strip. - -2007-04-27 Chong Yidong - - * textmodes/flyspell.el (flyspell-auto-correct-previous-word): - Use window-start and window-end. - -2007-04-26 Glenn Morris - - * progmodes/python.el: Restore file pending consideration of legal - status. - -2007-04-26 Luc Teirlinck - - * locate.el (locate-in-alternate-database): Doc fix. - -2007-04-26 Glenn Morris - - * button.el (button): Use underline if supported, else fall back - to color. - -2007-04-25 Richard Stallman - - * hi-lock.el (hi-lock-file-patterns-policy): Default to `ask'. - -2007-04-25 J.D. Smith - - * progmodes/idlwave.el (idlwave-beginning-of-subprogram) - (idlwave-end-of-subprogram): Take optional NOMARK arg to prevent - pushing mark. - (idlwave-current-routine): Don't push mark. - -2007-04-25 Mathias Dahl - - * image-dired.el (image-dired-display-image): Derive image-type from - filename rather than assuming jpeg, in case no resizing was needed. - -2007-04-25 Johan Bockg,Ae(Brd - - * custom.el (defface): Doc fix. - -2007-04-24 Chong Yidong - - * progmodes/python.el: Remove due to unclear legal issues. - -2007-04-24 J.D. Smith - - * progmodes/idlw-shell.el (idlwave-shell-clear-all-bp): - Don't re-query for each cleared BP. - (idlwave-shell-clear-bp): Optionally skip BP query. - (idlwave-shell-update-bp-overlays): Use set-window-margins instead - of set-window-buffer, which incorrectly moves displayed region. - -2007-04-23 Jay Belanger - - * calc/calc.el (calc-bug-address): Update maintainer's address. - * calc/*: Update maintainer's address. - -2007-04-23 Richard Stallman - - * simple.el (set-mark-command-repeat-pop): Doc fix. - Put in `editing-basics' group. - -2007-04-23 Chong Yidong - - * info.el (Info-mouse-scroll-up, Info-mouse-scroll-down): - New functions. - (Info-mode-line-node-keymap): Bind mouse commands to - Info-mouse-scroll-up/down instead of Info-scroll-up/down. - -2007-04-23 Luc Teirlinck - - * locate.el (locate-local-prompt): New var. - (locate-prompt-for-command): Doc fix. - (locate-prompt-for-search-string): New function. - (locate): New optional arg. Make locate-local-prompt - buffer-local. Use locate-prompt-for-search-string. - (locate-with-filter): New optional arg. - Use locate-prompt-for-search-string. - (locate-update): Bind locate-prompt-for-command. - -2007-04-23 Glenn Morris - - * files.el (magic-mode-alist): ` - - * button.el (button): Inherit from link face on a tty. - -2007-04-23 Glenn Morris - - * button.el (button): Use color for this face on a tty. - - * files.el (magic-mode-alist): Allow for carriage-returns in - html-mode and sgml-mode entries. - -2007-04-22 Richard Stallman - - * emacs-lisp/easy-mmode.el (define-globalized-minor-mode): - Improve doc string of generated command. - - * subr.el (read-number): Catch errors. - - * hi-lock.el (hi-lock-file-patterns-policy): Doc fix. - -2007-04-22 Chong Yidong - - * image-dired.el: Rename from thumbnails.el. All instances of - "thumbnails" replaced with "image-dired". - - * dired.el (dired-mode-map): Rename "thumbnails" again, to - "image-dired". - -2007-04-22 Kim F. Storm - - * ido.el (ido-kill-buffer-at-head, ido-delete-file-at-head): - Don't use kill-line. - -2007-04-22 Nick Roberts - - * t-mouse.el (t-mouse-make-event): Pass on mev's more informative - error message. - -2007-04-22 Chong Yidong - - * dired.el: Rename "tumme" to "thumbnails". - - * thumbnails.el: Rename from tumme.el. All instances of "tumme" - replaced with "thumbnails". - -2007-04-22 Glenn Morris - - * hi-lock.el (hi-lock-file-patterns-policy): Make it a defcustom, - and give it the risky-local-variable property. - - * textmodes/flyspell.el (flyspell-define-abbrev): Downcase abbrev - before defining it. - -2007-04-21 Martin Rudalics - - * progmodes/cc-mode.el (c-remove-any-local-eval-or-mode-variables): - Use delete-region instead of kill-line. - -2007-04-21 Alan Mackenzie - - * progmodes/cc-cmds.el (c-electric-slash): Replace wrong use of - `kill-region' by `delete-region'. - -2007-04-21 Chong Yidong - - * progmodes/perl-mode.el (perl-indent-command): Use delete-region - instead of kill-region. - - * progmodes/mantemp.el (mantemp-make-mantemps-region) - (mantemp-insert-cxx-syntax, mantemp-sort-and-unique-lines) - (mantemp-remove-memfuncs): Use delete-region instead of kill-word - and kill-line. - - * progmodes/vhdl-mode.el (vhdl-template-type) - (vhdl-template-record, vhdl-template-nature) - (vhdl-template-configuration-spec, vhdl-template-component-inst) - (vhdl-template-break, vhdl-regress-line, vhdl-electric-tab): - Use delete-region instead of kill-word and kill-line. - -2007-04-21 Johan Bockg,Ae(Brd - - * dired-x.el (dired-virtual-mode): Doc fix. - -2007-04-21 Richard Stallman - - * font-lock.el (font-lock-keywords-alist): Mark as risky. - - * subr.el (read-number): Doc fix. - - * simple.el (pop-to-mark-command): Display message "mark popped" - if point does not move. - (set-mark-command): Doc fix. - -2007-04-21 Luc Teirlinck - - * locate.el: Revert 2006-09-09 and 2007-04-20 changes. - (locate-local-filter, locate-local-search): New vars. - (locate): Make variables local. - (locate-update): Bind locate-buffer-name. Call locate using - locate-local-filter and locate-local-search. - -2007-04-20 David Koppelman - - * hi-lock.el (hi-lock-file-patterns-policy): New var. - (hi-lock-find-patterns): Use hi-lock-file-patterns-policy. - (hi-lock-mode): Update docstring. - -2007-04-20 Stefan Monnier - - * textmodes/fill.el (fill-move-to-break-point): Don't inhibit - fill-nobreak-predicate when the break is past fill-column. - -2007-04-20 Francesco Potort,Al(B - - * locate.el (locate): Output from shell-command should go in the - current buffer rather than *Shell Command Output*. - -2007-04-20 Chong Yidong - - * paren.el (show-paren-function): Fix last fix. - -2007-04-19 Kevin Ryde - - * arc-mode.el (archive-find-type): lzh-exe for lzh self-extracting exe. - (archive-lzh-summarize): Add optional start arg for where to start - looking at the archive. - (archive-lzh-exe-summarize, archive-lzh-exe-extract): New functions. - - * international/mule.el (auto-coding-alist): no-conversion for .exe - and .EXE. - -2007-04-19 Alan Mackenzie - - * progmodes/cc-cmds.el (c-in-function-trailer-p): Fix this: when a - function return type contains "struct", "union", etc. - c-end-of-defun goes too far forward. - -2007-04-19 Chong Yidong - - * paren.el (show-paren-function): Reset window-start to avoid - recentering. - -2007-04-19 Glenn Morris - - * calendar/todo-mode.el: Fix typo: "threshhold" -> "threshold". - -2007-04-18 Glenn Morris - - * calendar/diary-lib.el (diary-header-line-format): Add a custom - :set function. - (diary-list-entries): Only switch to diary-mode from - default-major-mode (reverts 2007-03-21 change). Otherwise, if in - diary-mode set header-line-format, in case of any customization. - -2007-04-18 Levin Du (tiny change) - - * calendar/parse-time.el (parse-time-string-chars): Check if CHAR - is less than the length of parse-time-syntax. - -2007-04-17 David Kastrup - - * replace.el (query-replace-regexp-eval): Deprecate. - -2007-04-17 Alan Mackenzie - - * progmodes/cc-cmds.el (c-beginning-of-defun): With -ve arg and - point too close to EOB, leave point at EOB rather than last `}'. - -2007-04-17 Roland Winkler - - * textmodes/bibtex.el (bibtex-include-OPTkey) - (bibtex-user-optional-fields, bibtex-entry-field-alist): - Fix defcustom. - -2007-04-17 Glenn Morris - - * calendar/cal-dst.el (calendar-dst-find-startend): If YEAR cannot - be encoded, fall back to current year. - -2007-04-14 Kevin Ryde - - * arc-mode.el (archive-lzh-summarize): Only apply the "downcase if - all upcase" rule to OS-ID 0 "generic". Always downcase for OS-ID - M "MSDOS". - -2007-04-16 Chong Yidong - - * progmodes/python.el (python-end-of-block): Avoid looping forever - if python-next-statement fails. - -2007-04-16 Roland Winkler - - * textmodes/bibtex.el (bibtex-entry-field-alist): Use defcustom. - -2007-04-16 Dan Nicolaescu - - * progmodes/perl-mode.el (perl-indent-level): Mark as safe local var. - * progmodes/cperl-mode.el (cperl-indent-level): Likewise. - -2007-04-15 Jay Belanger - - * calc/calc.el (calc-version): New function. - (calc-trail-mode): Shorten the title. - -2007-04-15 Chong Yidong - - * mail/footnote.el (footnote-style): Clarify docstring to state - that customizing this only applies to future footnotes. - -2007-04-15 Roland Winkler - - * textmodes/bibtex.el (bibtex-field-list): Use functionp. - (bibtex-make-field): Check that INIT is a string. Use functionp. - -2007-04-14 Glenn Morris - - * complete.el (PC-goto-end): New buffer-local variable. - (PC-do-completion-end): Make buffer-local. - (partial-completion-mode) : - Do not go to the end of the minibuffer if PC-goto-end is non-nil. - (PC-do-completion): New optional fourth argument GOTO-END. Add a - doc string. Set PC-goto-end for choose-completion. - (PC-lisp-complete-symbol): Pass non-nil GOTO-END arg to - PC-do-completion. - - * textmodes/bibtex.el (bibtex-insert-kill): Pass non-nil NODELIM - arg to bibtex-make-field. - (bibtex-make-field): Add optional fourth arg NODELIM. - Insert delimiters around INIT unless this arg is non-nil. - -2007-04-14 Nick Roberts - - * tmm.el (tmm-get-keybind): Use copy-sequence to ensure that the - global map isn't modified. - -2007-04-14 Glenn Morris - - * calendar/appt.el (appt-disp-window): Do not split small windows. - Suggested by Jeff Miller . - -2007-04-13 Chong Yidong - - * progmodes/compile.el (compilation-start): Revert 2007-03-25 change. - - * files.el: Ditto. - -2007-04-13 Juanma Barranquero - - * cus-edit.el (minibuffer, auto-save): Fix typos in docstrings. - - * term.el (term-buffer-maximum-size, term-exec, term-escape-char) - (term-set-escape-char, term-termcap-format, term-get-old-input-default) - (term-skip-prompt, term-send-string, term-send-region, term-pager-page) - (term-pager-help): Fix typos in docstrings. - - * wid-edit.el (widget-documentation): Fix typo in docstring. - - * progmodes/ebnf2ps.el (ebnf-insert-style, ebnf-merge-style): - Fix typos in error messages. - -2007-04-13 Martin Rudalics - - * emacs-lisp/edebug.el (edebug-pop-to-buffer): Don't select - window marked as dedicated. - - * mail/footnote.el (footnote-latin-string): New variable. - (footnote-latin-regexp): Redefine as regexp alternative. - (Footnote-latin): Use footnote-latin-string instead of - footnote-latin-regexp. - -2007-04-13 Glenn Morris - - * tmm.el (tmm-get-keybind): Use car-safe to avoid errors with - inherited keymaps. - -2007-04-12 Chong Yidong - - * outline.el (outline-get-next-sibling): Clarify docstring. - (outline-get-last-sibling): Handle case where we are at the first - heading. Clarify docstring. - -2007-04-12 Nick Roberts - - * progmodes/gud.el (gud-minor-mode-map): Make go button same - length as stop button to lessen flicker. - (jdb): Add gud-print. - (gud-find-expr): Jdb prints the expression with the value, so - don't insert it in the output. - -2007-04-11 Jason Rumney - - * dnd.el (dnd-get-local-file-name): Decode both upper and lower - case hex. Do not try to decode non-hex letters. - -2007-04-11 Markus Triska - - * emacs-lisp/byte-opt.el (byte-optimize-backward-char) - (byte-optimize-backward-word): Remove (move to bytecomp.el). - (byte-optimize-form-code-walker): Evaluate pure function calls if - possible. - (byte-optimize-all-constp): New function. - - * emacs-lisp/bytecomp.el (byte-compile-char-before): - Improve numeric argument case. - (byte-compile-backward-char, byte-compile-backward-word): - New functions, performing rewriting previously done in byte-opt.el. - Fix their "Fixme" item (restriction to numeric arguments). - -2007-04-11 Stefan Monnier - - * desktop.el (desktop-save, desktop-create-buffer): Replace mapcar - with dolist. - (after-init-hook): Don't quote lambda. - (desktop-first-buffer): Don't wrap it in eval-when-compile. - (desktop-internal-v2s): Remove unused var `el'. - (desktop-buffer-major-mode, desktop-buffer-locals): Move out of - desktop-restore-file-buffer. - (desktop-buffer-ok-count, desktop-buffer-fail-count): Move out of - desktop-create-buffer. - -2007-04-10 Chong Yidong - - * woman.el (woman-decode-buffer): Postpone macro-set check... - (woman-decode-region): ...to here. - -2007-04-10 Thien-Thi Nguyen - - * startup.el (tty-handle-args): Use %S to log ARGS. - -2007-04-10 Glenn Morris - - * dframe.el (dframe-frame-mode): Do not set auto-show-mode, since - it is obsolete and has no effect. - - * dos-w32.el (default-buffer-file-type): Add defvar to quieten - byte-compiler. - - * progmodes/cperl-mode.el (cperl-mode): Remove unnecessary call to - obsolete function make-local-hook. - - * progmodes/dcl-mode.el (top-level): Move (require 'tempo) to - start to quieten byte-compiler. - -2007-04-10 Markus Triska - - * emacs-lisp/byte-opt.el (byte-optimize-char-before): Remove (move - to bytecomp.el as byte-compile-char-before). - * emacs-lisp/bytecomp.el (byte-compile-char-before): - New function (modified replacement for byte-optimize-char-before in - byte-opt.el). - -2007-04-09 Alan Mackenzie - - * startup.el (inhibit-splash-screen): Emphatically state that it - can't be set in site-start.el. - -2007-04-09 Masatake YAMATO - - * progmodes/cc-subword.el (c-capitalize-subword): More closely - mimic the behavior of `capitalize-word'. Do not move point with a - negative argument. Based on tiny change by Paul Curry. - -2007-04-09 Paul Curry (tiny change) - - * progmodes/cc-subword.el (c-downcase-subword, c-upcase-subword): - Don't move point if ARG is negative. - -2007-04-09 Alan Mackenzie - - Changes to make `narrow-to-defun' and `mark-defun' work properly - in CC Mode: - - * progmodes/cc-defs.el (c-beginning-of-defun-1): - * progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): - Bind beginning/end-of-defun-function to nil around calls to - beginning/end-of-defun. - - * progmodes/cc-langs.el (beginning-of-defun-function) - (end-of-defun-function): New c-lang-setvar's. - - * progmodes/cc-awk.el (c-awk-beginning-of-defun): Add "(or arg - (setq arg 1))" to enable non-interactive call. - -2007-04-09 Eli Zaretskii - - * simple.el (set-mark-command): Doc fix. - -2007-04-09 Nick Roberts - - * progmodes/gud.el (gdb): Restore existing session if user - tries to start a second one in graphical mode. - -2007-04-08 Martin Rudalics - - * cus-start.el : Add choices. - -2007-04-08 Johan Bockg,Ae(Brd - - * term/xterm.el (terminal-init-xterm): Fix key definitions. - Add binding for C-M-SPC. - -2007-04-08 Richard Stallman - - * pcomplete.el (pcomplete-read-event): One single definition, - and not a defsubst. - -2007-04-08 Chong Yidong - - * progmodes/cc-cmds.el (c-end-of-defun): Tidy up, to eliminate - byte-compiler warning "value unused". - -2007-04-08 Andreas Schwab - - * term/xterm.el (terminal-init-xterm): Add bindings for keypad keys. - -2007-04-07 Glenn Morris - - * calendar/calendar.el (diary-font-lock-keywords, diary-live-p): - Autoload these functions. - (diary-date-forms): Add a custom :set form. - - * calendar/diary-lib.el (diary-set-maybe-redraw): Move definition - before first use. - (diary-font-lock-keywords): New function with old code for - initialization of variable of same name. - -2007-04-07 David Hansen (tiny change) - - * progmodes/cc-cmds.el (c-electric-paren): Fix space-before-funcall - clean-up: only insert space when on identifier, etc. - -2007-04-07 Chong Yidong - - * progmodes/grep.el (grep-find-use-xargs): Rewrite docstring. - - * net/tls.el (open-tls-stream): Properly handle case where there - is no associated buffer. - -2007-04-07 Glenn Morris - - * ffap.el (ffap-file-at-point): Lower the priority of the - ffap-ftp-sans-slash-regexp check. - -2007-04-06 Alan Mackenzie - - Fix fontification of labels, and other things with ":". - - * progmodes/cc-engine.el (c-forward-label): The function now - returns 'goto-target, 'qt-2kwds-colon, 'qt-1kwd-colon, as well as - the former t. - - * progmodes/cc-fonts.el (c-font-lock-declarations): Interpret the - new return code from c-forward-label, fontifying tokens properly. - Add some general comments throughout the file. - -2007-04-06 Chong Yidong - - * textmodes/flyspell.el (flyspell-duplicate, flyspell-incorrect): - Revert 2006-01-27 change. - - * diff-mode.el (diff-mode): Revert 2007-03-04 change. - - * menu-bar.el (menu-bar-tools-menu): Revert 2003-07-25 change. - - * desktop.el (desktop-create-buffer, desktop-save): - Revert 2004-11-12 change for lack of copyright papers. - - * dired-x.el (dired-guess-shell-case-fold-search): Delete var. - (dired-guess-default): Respect case. - - * isearch.el (isearch-forward): Revert 1998-08-26 doc change. - - * emacs-lisp/byte-opt.el (byte-optimize-pure-func): Remove function; - was originally checked in as byte-optimize-concat on 1997-11-02. - - * mail/sendmail.el (mail-text, mail-mode): Revert extant pieces of - 1995-05-19 doc changes. - -2007-04-06 Kim F. Storm - - * loadhist.el (read-feature): Reimplement. New optional arg LOADED-P. - (unload-feature): Update interactive spec accordingly. - - * progmodes/grep.el (grep-program): Remove commentary about zgrep. - -2007-04-06 John Paul Wallington - - * subr.el (with-case-table): Use `make-symbol' to avoid variable - capture. Restore the table in the same buffer. - - * font-lock.el (lisp-font-lock-keywords-2): Add `with-case-table'. - -2007-04-05 Chong Yidong - - * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): - Print entire form. - -2007-04-05 Nick Roberts - - * progmodes/gdb-ui.el (breakpoint-disabled): Tweak face (again) - for low-color displays. - -2007-04-05 Glenn Morris - - * play/5x5.el, play/animate.el, play/dissociate.el, play/doctor.el, - * play/gomoku.el, play/landmark.el, play/tetris.el, play/zone.el: - Seed random number generator on loading. - - * emacs-lisp/authors.el (top-level): Provide self. - - * play/animate.el (top-level): Provide self. - -2007-04-04 Alan Mackenzie - - * progmodes/cc-vars.el (c-special-indent-hook): Amend doc-string - to mention c-syntactic-indentation. - -2007-04-04 Chong Yidong - - * subr.el (with-case-table): New macro. - - * international/mule.el (ascii-case-table): New var. - - * mail/smtpmail.el (smtpmail-via-smtp): Use ascii-case-table when - downcasing. - -2007-04-03 Nick Roberts - - * progmodes/gud.el (gud-minor-mode-map): Simplify. - - * t-mouse.el (t-mouse-make-event-element): Don't use the left edge - of the window if we're outside it e.g menu-bar. - - * xt-mouse.el (xterm-mouse-event): Don't use the left edge of the - window if we're outside it e.g menu-bar. - -2007-04-03 Eli Zaretskii - - * mail/rmail.el (rmail-convert-to-babyl-format): Don't try to - decode base-64 encoded body if its content-type is something other - than text/* or message/*. - -2007-04-03 Juanma Barranquero - - * simple.el (activate-mark-hook): Fix typo in docstring. - -2007-04-03 Nick Roberts - - * tmm.el (tmm-c-prompt): Initialize. - (tmm-menubar): Deal with extended menu-items at top level. - (tmm-get-keybind): Handle bindings redefined/undefined locally. - (tmm-prompt): Handle visibility of top level menu-items. - - * progmodes/gud.el (gud-menu-map): Simplify. - (gud-minor-mode-map): Add tool-bar like bindings to the text mode - menubar. - -2007-04-02 Chong Yidong - - * mail/smtpmail.el (smtpmail-via-smtp): Revert last change. - - * comint.el (comint-send-input): Widen the buffer first. - - * info.el (Info-fontify-maximum-menu-size): Revert to 100000. - -2007-04-01 Stefan Monnier - - * emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Only obey - emacs-lisp-docstring-fill-column in emacs-lisp-mode. - - * newcomment.el (comment-search-forward): Discard comment starters - before point. - -2007-04-01 Guanpeng Xu - - * mouse.el (mouse-set-secondary): Update mouse-secondary-overlay. - -2007-04-01 Chong Yidong - - * mail/smtpmail.el (smtpmail-via-smtp): Use standard case table - when downcasing. - - * button.el (previous-button): Rewrite to account for adjacent buttons. - -2007-04-01 J.D. Smith - - * progmodes/idlwave.el (idlwave-auto-fill): - Revert paragraph-separate change. - - * progmodes/idlw-shell.el (idlwave-shell-break-in): - Simplify module calc. - (idlwave-shell-set-bp-in-module): Compute module. - -2007-03-31 Glenn Morris - - * emacs-lisp/timer.el (run-at-time): Doc fix. - - * emacs-lisp/warnings.el (display-warning): If we create the - buffer displaying the warning, disable undo there. - -2007-03-31 Michael Albinus - - * net/tramp.el (tramp-register-file-name-handler) - (tramp-register-completion-file-name-handler): New defsubst, - derived from `tramp-register-file-name-handlers'. The split is - necessary because Tramp's file name handlers must be registered at - different startup places. - -2007-03-31 Chong Yidong - - * progmodes/hideshow.el (turn-off-hideshow): New function. - (hs-minor-mode): Use it instead of a lambda expression in - change-major-mode-hook. - -2007-03-31 David Kastrup - - * woman.el (woman-Cyg-to-Win): Don't convert cons cells - corresponding to MANPATH_MAP entries. - (woman-man.conf-path, woman-parse-man.conf): Doc fix. - (woman-parse-man.conf): Use more discriminating man.conf name. - (woman-parse-man.conf): Parse MANPATH_MAP entries. - (woman-manpath): Doc fix and type fix. - (woman-cached-data): Check for MANPATH_MAP entries. - (woman-expand-directory-path): Treat MANPATH_MAP entries. - -2007-03-31 Stuart Herring - - * emacs-lisp/sregex.el (sregexq): Doc fix. - -2007-03-31 Markus Triska - - * progmodes/flymake.el (flymake-err-line-patterns): Doc fix. - -2007-03-30 Reiner Steib - - * info.el (info-tool-bar-map): Use "exit" for Info-exit. - Move to the right. - -2007-03-30 Alan Mackenzie - - * progmodes/cc-cmds.el (c-forward-to-nth-EOF-}): Fix EOB bug. - -2007-03-30 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc--insert-new-node): Take additional arg DLL. - Use it, passed in explicitly, instead of from the dynamic binding. - (ewoc-create, ewoc-enter-before): Update to use new call sequence. - -2007-03-30 Juanma Barranquero - - * simple.el (blink-matching-open): When in minibuffer, don't - search for a match inside the prompt. - -2007-03-30 Nick Roberts - - * tmm.el (tmm-menubar): Select the right menu item with the mouse. - (tmm-prompt): Don't make the mouse user select the first menu - item twice. - -2007-03-30 Chong Yidong - - * eshell/esh-proc.el (eshell/kill): Tweak regexp to recognize - SIGUSR1 and SIGUSR2. - -2007-03-29 Kim F. Storm - - * ido.el (ido-read-internal): When reading file or dir, only override - minibuffer-local-filename-completion-map, otherwise only override - minibuffer-local-completion-map. - -2007-03-29 Glenn Morris - - * complete.el (partial-completion-mode): Set PC-do-completion-end - to nil after use. - (PC-lisp-complete-symbol): Create and use a marker at `end', - rather than using point-marker. - -2007-03-28 Chong Yidong - - * simple.el (next-error-highlight): Doc fix. - (compose-mail): Revert 2007-03-19 change. - -2007-03-28 Richard Stallman - - * emacs-lisp/edebug.el (edebug-display): Don't go to - edebug-outside-buffer if it is dead. - -2007-03-28 Juanma Barranquero - - * view.el (view-mode): Fix typos in docstring. - -2007-03-28 Stephen Berman - - * recentf.el (recentf-save-file): Add a custom :set function. - -2007-03-28 Glenn Morris - - * complete.el (PC-do-completion-end): New variable. - (partial-completion-mode) : - Use PC-do-completion-end in the non-minibuffer case to replace the - correct amount of text. - (PC-do-completion): Set PC-do-completion-end for c-c-s-f. - (PC-lisp-complete-symbol): Give marker the after-insertion type, - to deal with improvements inserted after point. - -2007-03-28 Stefan Monnier - - * button.el (make-text-button): Add explicit `button' property. - (default-button): Don't put a `button' property on it. - - * progmodes/python.el (python-mode): Skip comments when parsing. - - * vc-arch.el (vc-with-current-file-buffer): New macro. - (vc-arch-file-source-p): Use it to avoid infloop. - -2007-03-28 David Hansen (tiny change) - - * emacs-lisp/lisp.el (lisp-complete-symbol): - Fix call to get-buffer-window to find windows in other frames. - -2007-03-28 Stefan Monnier - - * comint.el (comint-proc-query, comint-dynamic-list-completions): - Fix calls to get-buffer-window to find windows in other frames. - Reported by David Hansen . - -2007-03-27 Kevin Ryde - - * info.el (Info-display-images-node): On a text-only terminal, - show the "text" or "alt" parts of the image blobs. - -2007-03-27 Glenn Morris - - * complete.el (PC-do-completion): Compute completion-base-size in - the non-filename case, rather than setting to nil. - (PC-lisp-complete-end): New variable. - (PC-lisp-complete-symbol): Use PC-lisp-complete-end to store the - original end in a series of consecutive invocations. - - * calendar/calendar.el (calendar-mode-hook): Declare it. - - * calendar/diary-lib.el (diary-live-p): Do not check for - diary-selective-display. - -2007-03-26 Stefan Monnier - - * replace.el (occur-next-error): *Occur* might not be displayed in the - selected frame. Reported by David Hansen . - -2007-03-26 Richard Stallman - - * textmodes/flyspell.el (flyspell-large-region): - Use ispell-call-process-region. - -2007-03-26 Johan Bockg,Ae(Brd - - * emacs-lisp/bytecomp.el (byte-compile-file-form-defmumble): - Use prin1 instead of princ. - -2007-03-25 Chong Yidong - - * faces.el (face-set-after-frame-default): Revert 2007-03-10 change. - Merge in X resources before global face. - - * progmodes/compile.el (compilation-start): Save compilation-directory - rather than default-directory as local var. - (compilation-directory): Mark as safe local var. - - * files.el: Don't mark default-directory as a safe local var. - -2007-03-25 Alan Mackenzie - - * progmodes/cc-mode.el (c-before-change): Fix BOB bug. - * progmodes/cc-engine.el: Fix typo. - -2007-03-25 Juri Linkov - - * compare-w.el (compare-windows): Rename customization group - `compare-w' to `compare-windows'. - (compare-windows-whitespace, compare-ignore-whitespace) - (compare-ignore-case, compare-windows-sync) - (compare-windows-sync-string-size, compare-windows-recenter) - (compare-windows-highlight, compare-windows): Change group name in - the `group' tag from `compare-w' to `compare-windows'. - (compare-windows-sync): Add option `nil' for no sync. Doc fix. - -2007-03-24 Markus Triska - - * expand.el: Change example to always enable abbrev-mode, - and remove redundant `function'. - (expand-abbrev-hook): Add autoload cookie. - -2007-03-24 Ryan Yeske - - * emacs-lisp/testcover.el (testcover-start, testcover-end) - (testcover-mark-all, testcover-unmark-all): Add prompts to - interactive specs. - -2007-03-24 Jason Rumney - - * autorevert.el (find-file-hook, auto-revert-tail-mode): - Use file size in bytes for auto-revert-tail-pos not characters. - -2007-03-24 Thien-Thi Nguyen - - * vc-rcs.el (vc-rcs-annotate-command): - Set text property :vc-annotate-prefix on the annotation text. - (vc-rcs-annotate-time): Instead of searching for ": ", - search for end of text propertized with :vc-annotate-prefix. - -2007-03-24 Martin Rudalics - - * whitespace.el (top level): Remove calls putting - permanent-local nil property since these are no-ops. - - * man.el (Man-support-local-filenames): Assure that - default-directory exists when doing call-process. - -2007-03-23 David Vazquez (tiny change) - - * progmodes/m4-mode.el (m4-m4-buffer, m4-m4-region): - Fix omission bug: Use m4-program-options to construct shell command. - -2007-03-23 David Kastrup - - * progmodes/cc-mode.el (c-make-emacs-variables-local): - Use `mapcar' rather than `mapcan' to silence compiler warning. - -2007-03-22 Ralf Angeli - - * textmodes/reftex.el, textmodes/reftex-vars.el, - * textmodes/reftex-toc.el, textmodes/reftex-sel.el, - * textmodes/reftex-ref.el, textmodes/reftex-parse.el, - * textmodes/reftex-index.el, textmodes/reftex-global.el, - * textmodes/reftex-dcr.el, textmodes/reftex-cite.el, - * textmodes/reftex-auc.el: Add maintainer address. - -2007-03-22 Carsten Dominik - - * textmodes/org.el (org-agenda-mode, org-table-edit-formulas): - Make sure that `global-font-lock-mode' does not turn on font-lock - in these buffers. - -2007-03-21 Kim F. Storm - - * xt-mouse.el (xt-mouse-epoch): New variable. - (xterm-mouse-event): Use float-time. - -2007-03-21 Nick Roberts - - * xt-mouse.el (xterm-mouse-event): Compute a timestamp using - current-time. - -2007-03-21 Stefan Monnier - - * complete.el (read-file-name-internal): Don't add the final > if the - completion is not finished (re-application of this patch, which was - accidentally undone by Eli). - -2007-03-21 Chong Yidong - - * emulation/viper.el (viper-non-hook-settings): Handle mouse - clicks in describe-key and describe-key-briefly advice a little better. - -2007-03-21 Juanma Barranquero - - * server.el (server-process-filter): Cancel any pending isearch. - -2007-03-21 Ulf Jasper - - * calendar/icalendar.el (icalendar-version): Increase to 0.15. - (icalendar--get-unfolded-buffer): Define actual arguments rather - than just using &rest. Check replace-in-string is fbound. - (icalendar-import-buffer): Doc fix. - (icalendar--convert-ical-to-diary): Set diary-file. - Check diary-file before inserting final newline. - (icalendar--add-diary-entry): Return diary-file. - -2007-03-21 Glenn Morris - - * calendar/calendar.el (diary-set-maybe-redraw): Autoload it. - (diary-display-hook): Add custom :set function. - - * calendar/diary-lib.el (diary-header-line-flag): Doc fix. - Add custom :set function. - (diary-header-line-format): Doc fix. - (diary-set-maybe-redraw): New function. - (number-of-diary-entries): Change :set to use diary-set-maybe-redraw. - (diary-list-entries): Always run diary-mode. - -2007-03-20 Kenichi Handa - - * international/quail.el (quail-setup-completion-buf): Make the - completion buffer read-only. - (quail-completion): Adjusted for the above change. Leave the - modified flag nil. - -2007-03-20 David Kastrup - - * files.el (magic-mode-alist): Require literal "%!PS" string for - magic postscript file detection. - -2007-03-20 Richard Stallman - - * textmodes/ispell.el (ispell-call-process): New function. - Defends against bad `default-directory.' - (ispell-check-version, ispell-find-aspell-dictionaries) - (ispell-get-aspell-config-value, lookup-words): Call it. - (ispell-call-process-region): New function. - (ispell-send-string): Call it. - -2007-03-20 Andreas Schwab - - * Makefile.in (custom-deps): Depend on $(lisp)/subdirs.el. - (finder-data): Likewise. - (autoloads): Likewise. - -2007-03-20 Martin Rudalics - - * files.el (basic-save-buffer): Do not set visited filename when - the corresponding directory does not exist or the specified - filename is that of an existing directory. - -2007-03-20 Glenn Morris - - * calendar/diary-lib.el (diary-live-p): New function. - (number-of-diary-entries): Add a :set function to redisplay diary - when necessary. - -2007-03-19 Nick Roberts - - * t-mouse.el (t-mouse-make-event-element): Use timestamp output - from client program, mev, to compute mouse event. - -2007-03-19 Chong Yidong - - * faces.el (momentary): Face removed; unused due to reversion of - 2007-01-04 changes by Kevin Rodgers. - - * mouse.el (mouse-drag-track): Remove spurious input-pending-p test. - Suggested by Johan Bockg,Ae(Brd. - -2007-03-19 Martin Rudalics - - * font-lock.el (lisp-font-lock-keywords-1): - Highlight define-globalized-minor-mode as a keyword. - -2007-03-19 Kim F. Storm - - * calc/calc-forms.el (math-std-daylight-savings) - (math-std-daylight-savings-old): Doc fix. - -2007-03-19 Juanma Barranquero - - * progmodes/python.el (python-default-template): Doc fix. - (python-buffer): Fix typo in docstring. - - * isearchb.el (isearchb-follow-char): - * subr.el (def-edebug-spec): Fix typo in docstring. - -2007-03-19 Richard Stallman - - * files.el (default-directory): Mark safe. - (basic-save-buffer-2): Put proper dir name in error message. - - * simple.el (compose-mail): Run switch-function after - setting up the mail buffer. - - * startup.el (inhibit-splash-screen, initial-major-mode): Doc fixes. - -2007-03-18 Jay Belanger - - * calc/calc-forms.el (math-parse-date): Fix a regular expression. - (math-std-daylight-savings-new): Rename from - `math-std-daylight-savings'. - (math-std-daylight-savings-old): Rename from old value of - `math-std-daylight-savings'. - (math-std-daylight-savings): Use `math-std-daylight-savings-new' or - `math-std-daylight-savings-old' depending on the year. - -2007-03-18 Detlev Zundel - - * emacs-lisp/re-builder.el (reb-update-overlays): Do not mark - zero-width regexps as invalid but rather at least count them correctly. - -2007-03-18 Thien-Thi Nguyen - - * net/tls.el (open-tls-stream): In handshake-waiting loop, - don't wait more if there is output available to process. - -2007-03-18 Nick Roberts - - * progmodes/compile.el (compilation-find-file): Revert change - from 2006-07-18 to allow completion of directory names. - Reported by John Carter . - -2007-03-18 Kim F. Storm - - * subr.el (when, unless): Doc fix. - -2007-03-17 Thien-Thi Nguyen - - * net/tls.el (tls-program): Doc fix. - -2007-03-17 Denis Bueno (tiny change) - - * autorevert.el (auto-revert-tail-handler): - Call after-revert-hook. - -2007-03-17 Ryan Yeske - - * simple.el (switch-to-completions): No error if search for \n\n fails. - -2007-03-17 Chong Yidong - - * simple.el (line-move-1): - Respect `inhibit-line-move-field-capture' property. - -2007-03-13 Chong Yidong - - * comint.el (comint-arguments): Mark backslash-escaped chars. - (comint-delim-arg): Don't treat them as delimiters. - -2007-03-12 Kim F. Storm - * ido.el (ido-init-completion-maps): Remap delete-backward-char. - -2007-03-12 Lawrence Mitchell (tiny change) - - * tempo.el (tempo-insert): Deal with 'r> if it appears - specified with a prompt argument. - -2007-03-12 Carsten Dominik - - * textmodes/org.el (org-set-font-lock-defaults): - Handle narrow table columns correctly. - -2007-03-12 Mark A. Hershberger - - * xml.el (xml-parse-tag, xml-parse-string, xml-parse-attlist) - (xml-parse-dtd, xml-parse-elem-type, xml-substitute-special): - Return to use of the -no-properties variants. There was - consensus on emacs-devel that the speed of these variants was - prefered since we are usually parsing files (from the internet - or on disk) instead of XML created in Emacs. - - * eshell/esh-mode.el (eshell-handle-ansi-color): New function. - Add customize option. - -2007-03-12 Glenn Morris - - * calc/calc-forms.el (math-std-daylight-savings): Switch to new - North American rule. Replace "daylight savings" with "daylight - saving" in doc. - - * calendar/cal-china.el, cal-dst.el, calendar.el, diary-lib.el: - * calendar/lunar.el, solar.el: Replace "daylight savings" with - "daylight saving" in text. - - * woman.el (woman-change-fonts): Tweak previous change by using - woman-request-regexp rather than "^\\.". - - * startup.el (command-line-1): Make insertion of - initial-scratch-message not depend on scratch being selected. - -2007-03-11 Juri Linkov - - * replace.el (match): Use yellow background on light-bg terminals. - -2007-03-11 Richard Stallman - - * emacs-lisp/bytecomp.el (byte-compile-warning-prefix): - Correctly compute line number. - -2007-03-11 Guanpeng Xu - - * type-break.el (type-break-get-previous-count): - Repeat previous change here. - -2007-03-11 Dan Nicolaescu - - * progmodes/grep.el (grep-find-ignored-directories): - Add .git and .bzr to list. - -2007-03-11 Andreas Schwab - - * diff-mode.el (diff-apply-hunk): Use proper format string for error. - -2007-03-11 Stefan Monnier - - * mail/emacsbug.el (report-emacs-bug): Don't hard code the "X" name. - -2007-03-10 Chong Yidong - - * faces.el (face-set-after-frame-default): Recalculate face - customizations after applying X resources. - -2007-03-10 Ryan Yeske - - * net/rcirc.el (rcirc-timeout-seconds): New variable. - (rcirc-keepalive-seconds): Remove variable. - (rcirc-server-name, rcirc-timeout-timer, rcirc-connecting) - (rcirc-process, rcirc-user-disconnect): New variables. - (rcirc-connect): Initalize new variables. - (rcirc-keepalive): Don't send keepalive pings before connection - is completed. - (rcirc-sentinel): Do mark all channels with activity when - connection is dropped. Run hook with process buffer local. - (rcirc-reschedule-timeout, rcirc-delete-process): New functions. - (rcirc-buffer-process): Return value of rcirc-process if - rcirc-server-buffer is nil. - (rcirc-server-name): Return the reported server name. - (rcirc-update-prompt): Simplify computation of the server name. - (rcirc-format-response-string): Likewise. - (rcirc-handler-001): Mark server as connected, record the reported - server name, and schedule a timeout. - (rcirc-track-nick): Add a spec for the tty class. - (rcirc-user-non-nick): Remove function. - (rcirc-nick-prefix-chars): Add variable. - (rcirc-user-nick): Use above variable. - -2007-03-10 Johan Bockg,Ae(Brd - - * icomplete.el (icomplete-tidy, icomplete-exhibit): - Bind deactivate-mark to nil. - -2007-03-10 Martin Rudalics - - * complete.el (PC-do-completion): Bind dirlength to nil to avoid - that buffer contents get erased during completion. - -2007-03-10 Glenn Morris - - * woman.el (woman-change-fonts): Add a hack to deal with - font-escape followed by "." at start of a line. - (woman2-IP): Add a hack to deal with consecutive requests. - (woman2-tagged-paragraph): Extend existing hack to handle "sp". - -2007-03-10 Alan Mackenzie - - * progmodes/cc-mode.el (c-before-change): Wrap in save-match-data. - -2007-03-09 Richard Stallman - - * abbrev.el (abbrev): Add `provide'. - -2007-03-09 Thien-Thi Nguyen - - * net/ange-ftp.el (ange-ftp-try-passive-mode): Doc fix. - -2007-03-09 Martin Rudalics - - * complete.el (PC-try-completion): New function. - (PC-do-completion, read-file-name-internal): Use it instead of - try-completion. - -2007-03-08 Alan Mackenzie - - Remove stale tokens from `c-found-types' cache. - - * progmodes/cc-mode.el (c-unfind-enclosing-token) - (c-unfind-coalesced-tokens, c-before-change): New functions. - (c-maybe-stale-found-type): New variable. - - * progmodes/cc-engine.el (c-partial-ws-p, c-unfind-type) - (c-trim-found-types): New functions. - -2007-03-08 Stefan Monnier - - * smerge-mode.el (smerge-remove-props): Don't mark the buffer modified. - (debug-ignored-errors): Add entry from smerge-match-conflict. - -2007-03-08 J.D. Smith - - * progmodes/idlw-help.el (idlwave-do-context-help1): Don't visit - special help topics for keywords. - (idlwave-help-assistant-command): Include ".exe" for ms-dos - etc. Assistant command. - -2007-03-08 Chong Yidong - - * replace.el (occur-engine): Move buffer-undo-list binding... - (occur-1): ...to here. - - * complete.el (PC-bindings): Rebind M-TAB in read-expression-map. - - * simple.el (minibuffer-completing-symbol): New var. - (eval-expression): Use it. - (completion-setup-function): Don't bind completion-base-size when - completing a symbol in the minibuffer. - -2007-03-08 Nick Roberts - - * progmodes/gud.el (gdb): Pop up current GUD buffer if user - tries to start a second session in graphical mode. - -2007-03-07 Miles Bader - - * international/isearch-x.el - (isearch-process-search-multibyte-characters): - Strip text-properties from PROMPT to avoid an error from read-string. - -2007-03-07 Kim F. Storm - - * complete.el (PC-bindings): Remap lisp-complete-symbol to - PC-lisp-complete-symbol instead of binding M-TAB in global-map. - -2007-03-07 Micha,Ak(Bl Cadilhac - - * complete.el (PC-do-completion): Delete duplicates in the list of - possible completions. - -2007-03-07 Glenn Morris - - * ses.el (ses-mode): Doc fix. - -2007-03-06 Kim F. Storm - - * isearch.el (isearch-message-prefix): Undo 2007-03-01 change. - -2007-03-06 Kenichi Handa - - * term/x-win.el (x-select-utf8-or-ctext): Improve the strategy. - -2007-03-06 Stefan Monnier - - * simple.el (completion-setup-function): Improve last fix so it doesn't - set it to a relative directory name either. - -2007-03-05 Vinicius Jose Latorre - - * ps-print.el: Replace some (defvar VAR) by (defvar VAR nil). - -2007-03-05 Richard Stallman - - * emacs-lisp/re-builder.el (reb-re-syntax): Fix custom type. - - * files.el (find-file-noselect): No error if file no longer exists. - Display a message and avoid other questions. - -2007-03-05 Stefan Monnier - - * pcomplete.el (pcomplete-show-completions): Improve last change, so - as not to use an invisible window and to create a window if none exist. - - * progmodes/python.el (python-send-command): Restart proc if necessary. - (python-proc): Simplify. - -2007-03-05 David Hansen (tiny change) - - * pcomplete.el (pcomplete-show-completions): Search all frames for - completions buffer. - -2007-03-05 Chong Yidong - - * cus-edit.el (customize-save-variable): Clear customized-value - property (saved values are now put in theme-value property). - (customize-set-variable): Doc fix. - - * complete.el (PC-do-completion): If completion-ignore-case is - non-nil, replace field with completion string before exiting. - -2007-03-05 Michael Albinus - - * net/tramp.el (tramp-make-temp-file): New parameter FILENAME. - Append its extension to the resulting temporary file name. - (tramp-handle-file-local-copy, tramp-handle-write-region): Apply it. - - * net/tramp-smb.el (tramp-smb-handle-file-local-copy) - (tramp-smb-handle-write-region): Apply it. - -2007-03-05 Alin C. Soare (tiny change) - - * emacs-lisp/lisp-mode.el (calculate-lisp-indent): - Redo previous change. - -2007-03-04 Kevin Rodgers (tiny change) - - * diff-mode.el (diff-mode): Doc fix. - -2007-03-05 Kenichi Handa - - * international/characters.el: Set category `l' (latin) - for more characters. - -2007-03-04 Kim F. Storm - - * emacs-lisp/authors.el (authors-aliases): Add alias. - -2007-03-04 Glenn Morris - - * progmodes/hideshow.el (hs-minor-mode): Turn mode off and show - all when switching major mode. - (hs-minor-mode, hs-c-start-regexp, hs-block-start-regexp) - (hs-block-start-mdata-select, hs-block-end-regexp) - (hs-forward-sexp-func, hs-adjust-block-beginning): - Do not make these variables permanent-local. - -2007-03-04 Richard Stallman - - * progmodes/cperl-mode.el (cperl-mode): - Modify cperl-compilation-error-regexp-alist by appending. - - * emacs-lisp/edebug.el (edebug-kill-buffer): New function. - (edebug-mode): Add the hook. - (edebug-recursive-edit): Remove the hook on exiting. - - * type-break.el (type-break-get-previous-time): - Handle end-of-file errors specially - so they don't get reported wrong in .emacs. - - * startup.el (fancy-splash-text): Clarify text. - - * simple.el (beginning-of-buffer, end-of-buffer): - Avoid treating plain C-u like numeric arg. - - * simple.el (completion-setup-function): Don't set - default-directory to nil. - - * shell.el (shell-dirstack-query): Doc fix. - - * mouse.el (mouse-drag-mode-line-1, mouse-drag-vertical-line): - Don't select the window -- pass it to primitives instead. - - * faces.el (minibuffer-prompt): Use medium blue by default. - -2007-03-04 David Kastrup - - * jit-lock.el (jit-lock-stealth-time): Change default to nil. - Preserve 16 as default value for "seconds" when customizing. - -2007-03-04 Carsten Dominik - - * textmodes/org.el (org-self-insert-command) - (orgtbl-self-insert-command, org-delete-char) - (org-delete-backward-char): Set the `flyspell-delayed' property. - -2007-03-03 Chong Yidong - - * international/mule.el (find-auto-coding): Don't search for - line-ending characters past the end of the tail. - -2007-03-03 Christopher Allan Webber (tiny change) - - * play/gamegrid.el (gamegrid-add-score-with-update-game-score-1): - Jump to the line where new score has been uploaded. - - * play/tetris.el (tetris-move-bottom, tetris-move-left) - (tetris-move-right, tetris-rotate-prev, tetris-rotate-next): - Do nothing when the game is paused. - -2007-03-03 Carsten Dominik - - * textmodes/org.el (org-set-tags): Prevent slipping of point - during completion. - -2007-03-01 Lennart Borgman - - * isearch.el (isearch-message-prefix): - Use minibuffer-prompt-properties. - -2007-03-01 Vinicius Jose Latorre - - * ps-print.el: Replace (defvar VAR nil) by (defvar VAR). - (ps-setup): Print which Emacsen is running ps-print package. - -2007-03-01 Stuart Herring - - * files.el (set-auto-mode-0): Use `indirect-function'. - (hack-one-local-variable): Don't reapply current major mode. - -2007-03-01 Stefan Monnier - - * progmodes/python.el (python-quote-syntax): Don't bother with - syntax-ppss-context. - (python-fill-paragraph): Make sure that fenced-string delimiters that - stand on their own line stay there. - -2007-03-01 Lennart Borgman - - * replace.el (perform-replace): Propertize message. - -2007-03-01 Carsten Dominik - - * textmodes/org.el (org-prepare-agenda-buffers): Also check for - invisible heading. - -2007-02-28 Chong Yidong - - * net/tramp.el (tramp-file-name-handler): Revert last change. - -2007-02-28 Nick Roberts - - * progmodes/gdb-ui.el (gdb-mouse-until, gdb-mouse-jump): - Correct doc strings. - -2007-02-28 Chong Yidong - - * replace.el (perform-replace): Undo forward-char immediately if - non-adjacent search fails. - -2007-02-28 Stefan Monnier - - * version.el (emacs-major-version, emacs-minor-version): - string-to-int -> string-to-number. - -2007-02-28 Juanma Barranquero - - * help.el (where-is): Fail gracefully when not passed a command. - -2007-02-28 Stuart Herring - - * find-lisp.el (find-lisp-default-directory-predicate): - Fix bug: Do symlink check on expanded filename. - -2007-02-28 Carsten Dominik - - * textmodes/org.el (org-set-tags, org-table-get-field): Avoid case - changes during replacement. - (org-agenda-mode-map): Add default binding for `org-agenda-archive'. - -2007-02-28 Lars Hansen - - * desktop.el: Delete header line listing me as maintainer. - -2007-02-28 Glenn Morris - - * tutorial.el (tutorial--describe-nonstandard-key): Tweak text in - the menus case. - -2007-02-28 Chong Yidong - - * net/tramp.el (tramp-file-name-handler): Inhibit modification - hooks to avoid confusion when combining after-change calls. - -2007-02-27 Ken Manheimer - - * allout.el (allout-encrypt-string): Remove inhibition of gpg-agent, - now that pgg-gpg-process-region correctly honors passed-in passphrase. - (allout-distinctive-bullets-string): Add info about bullet conventions. - (allout-mode): Add info about distinctive vs plain bullets. - -2007-02-27 Carsten Dominik - - * textmodes/org.el (org-archive-subtree): Quote variable name. - (org-agenda-get-todos): Make sure skip properties are checked correctly. - -2007-02-26 Nick Roberts - - * progmodes/gud.el (gud-bashdb-history, gud-bashdb-marker-filter) - (gud-bashdb-command-name, bashdb): Remove. - (gud, gud-menu-map): Remove references to bash/bashdb. - -2007-02-26 Andrey Zhdanov (tiny change) - - * progmodes/gud.el (gud-pdb-marker-regexp): Add optional - keyword for Python 2.5. - -2007-02-26 Romain Francoise - - * net/net-utils.el (whois-server-tld): Update server for .org. - (whois-server-list): Add whois.publicinterestregistry.net. - (whois-guess-server): Fix formatting in docstring. - -2007-02-26 Kim F. Storm - - * mouse.el (mouse-show-mark): Run hooks and perform command - remapping for mouse-region-delete-keys. - -2007-02-26 Johan Bockg,Ae(Brd - - * font-core.el (font-lock-mode): Doc fix. - -2007-02-25 Kim F. Storm - - * ido.el (ido-buffer-internal): Set this-command to fallback command. - Add selected buffer to buffer-name-history. - (ido-file-internal): Set this-command to fallback command. - Add file names to file-name-history. - - * emacs-lisp/map-ynp.el (map-y-or-n-p): - Apply minibuffer-prompt-properties. - -2007-02-25 Andreas Schwab - - * files.el (hack-one-local-variable-eval-safep): Correct handling - of edebug-form-spec property value. Reported by Johan Bockg,Ae(Brd. - -2007-02-25 Carsten Dominik - - * textmodes/org.el (org-table-overlay-coordinates) - (org-table-toggle-coordinate-overlays): New functions. - (org-table-overlay-coordinates, org-table-coordinate-overlays): - New variables. - (org-startup-with-deadline-check): Remove option. - (org-mode): Remove deadline check on startup. - (org-table-limit-column-width): Remove option. - (org-table-formula-numbers-only): Remove option. - (org-link-style, org-link-format): Remove options. - (org-select-agenda-window, org-fit-agenda-window): Remove options. - (org-export-ascii-show-new-buffer) - (org-export-html-show-new-buffer): Remove options. - (org-activate-links): Remove camel option. - (org-file-link-context-use-camel-case): Remove option. - (org-camel-regexp): Remove variable. - (org-activate-camels): Remove function. - (org-store-link): Remove Camel stuff. - (org-make-org-heading-camel): Remove function. - (org-open-at-point): Remove camel stuff. - (org-link-search): Remove camel stuff. - (org-camel-to-words): Function removed. - (org-get-agenda-file-buffer): Make sure we prepare the base - buffers, not any indirect buffers. - (org-sort-entries): Sort top-level when not on a headline, and no - active region. - (org-in-regexp): New function. - (org-search-not-self): Rename from `org-search-not-link'. - (org-open-link-marker): New variable. - (org-open-at-point): Set `org-open-link-marker'. - (org-print-icalendar-entries): Fixe bug with excluding DONE - entries from the exported list. - (org-edit-formula-lisp-indent): New command. - (orgtbl-to-texinfo, orgtbl-to-html): New functions. - (orgtbl-to-latex, orgtbl-insert-radio-table) - (orgtbl-toggle-comment, orgtbl-send-table): New functions. - (orgtbl-radio-table-templates): New option. - (org-store-link-props): - (org-remember-templates): More possibilities to insert info - into templates. - (org-remember-apply-template): Make use of the extended - template capabilities. - (org-remember-redo-template): New command. - (org-upgrade-old-links) - (org-table-modify-formulas, org-table-replace-in-formulas) - (org-table-find-dataline) - (org-table-get-vertical-vector): Remove functions. - (org-table-remove-rectangle-highlight) - (org-time-stamp-format, org-toggle-log-option) - (org-table-highlight-rectangle) - (org-table-iterate, org-table-make-reference): - (org-translate-time, org-tree-to-indirect-buffer) - (org-table-field-info, org-table-fix-formulas) - (org-table-force-dataline, org-table-get-descriptor-line) - (org-table-get-range) - (org-skip-comments, org-sort) - (org-sort-entries, org-sublist, org-table-add-rectangle-overlay) - (org-table-current-dline, org-table-current-field-formula) - (org-table-edit-backward-field) - (org-table-edit-formulas-post-command) - (org-table-edit-line-down, org-table-edit-line-up) - (org-agenda-archive) - (org-agenda-clock-cancel) - (org-agenda-clock-out, org-agenda-list-stuck-projects) - (org-agenda-open-link, org-agenda-show-new-time) - (org-agenda-skip-subtree-when-regexp-matches) - (org-agenda-tree-to-indirect-buffer, org-agenda-undo) - (org-at-regexp-p, org-auto-repeat-maybe, org-check-log-option) - (org-do-sort, org-file-image-p, org-find-overlays) - (org-find-row-type, org-get-indirect-buffer, org-get-repeat) - (org-highlight-until-next-command, org-isearch-end) - (org-match-any-p, org-next-link, org-previous-link): - (org-remove-subtree-entries-from-agenda, org-replace-escapes) - (org-rewrite-old-row-references) - (org-isearch-post-command) - (org-table-edit-move, org-table-edit-next-field) - (org-table-edit-scroll, org-table-edit-scroll-down) - (org-set-frame-title, org-show-reference) - (org-unhighlight-once, org-verify-change-for-undo): New functions. - (org-show-variable): Remove command. - (org-add-log-maybe): New arguments STATE, FINDPOS - (org-table-sort-lines): Rewrite from scratch. - (org-link-search): New argument AVOID-POS. - (org-print-icalendar-entries): Remove argument CATEGORY. - (org-run-agenda-series): Remove argument WONDOW. - (org-next-link, org-previous-link): New commands. - (org-agenda-date-format): New option. - (org-table-iterate): New command. - (org-table-modify-formulas) - (org-table-replace-in-formulas): Remove functions. - (org-table-fix-formulas): New function. - (org-table-insert-column, org-table-delete-column) - (org-table-move-column): Use `org-table-fix-formulas'. - (org-follow-gnus-link): Patch from Bastien/Leo. - (org-table-current-field-formula): New function. - (org-file-image-p): New function. - (org-agenda-show-new-time): New function. - (org-agenda-date-later): Call `org-agenda-show-new-time'. - (org-with-remote-undo): New macro. - (org-agenda-undo): New command. - (org-verify-change-for-undo): New function. - (org-time-stamp-format): New function. - (org-agenda-get-timestamps): Skip scheduled if DONE and requested - by user. - (org-match-any-p): New function. - (org-make-tags-matcher): Handle regular expressions for tag and - todo matches. - (org-read-date): Accept "+N" as input for a date relative to the - current date. - (org-remove-subtree-entries-from-agenda): New function. - (org-agenda-archive, org-agenda-kill): - Use `org-remove-subtree-entries-from-agenda'. - (org-do-sort, org-sort-entries): New functions. - (org-sort): New command. - (org-table-sort-lines): Use `org-do-sort'. - (org-fix-decoded-time): New function. - (org-table-number-regexp): Require 0x... to identify as number - in tables. - (org-startup-options): New keywords for note taking. - (org-upgrade-old-links): Remove function. - (org-get-repeat): New function. - (org-show-context): Also show siblings on current level. - (org-show-siblings): New function. - (org-isearch-end, org-isearch-post-command): New functions. - (org-show-siblings): New option. - (org-show-context): Use `org-show-siblings'. - (org-table-maybe-recalculate-line): No longer require `calc-eval' - to be bound, because user may just use elisp. - -2007-02-24 Kim F. Storm - - * emulation/cua-base.el (cua-paste): Handle x-clipboard-yank. - (cua--init-keymaps): Remap x-clipboard-yank to cua-paste. - -2007-02-24 Dan Nicolaescu - - * startup.el (command-line): Also check if the abbrev file is readable. - -2007-02-24 John Paul Wallington - - * net/tls.el (tls-certtool-program): Fix custom type. - - * mail/feedmail.el (feedmail-message-id-generator) - (feedmail-date-generator): Fix custom types. - - * mail/rmail.el (rmail-message-filter): Fix custom type. - -2007-02-24 Eli Zaretskii - - * startup.el (command-line): If simple.el cannot be found, proceed - with a warning message. - -2007-02-24 Kenichi Handa - - * international/utf-8.el (utf-8-pre-write-conversion): Handle the - case that BEG is a string. - -2007-02-24 Chris Moore - - * pgg-pgp5.el (pgg-pgp5-encrypt-region): - * pgg-pgp.el (pgg-pgp-encrypt-region): - * pgg-gpg.el (pgg-gpg-encrypt-region): - Check pgg-encrypt-for-me if no other recipients. - -2007-02-23 Eli Zaretskii - - * mail/rmailedit.el (rmail-cease-edit): Restore the Rmail toolbar. - - * textmodes/sgml-mode.el (sgml-validate): Quote the file name with - shell-quote-argument. - -2007-02-23 Andreas Seltenreich - - * comint.el (comint-read-input-ring): Use comint-input-ring-size - from the comint buffer instead of the temporary one. - -2007-02-23 David Reitter - - * cus-edit.el (custom-save-all): Canonicalize custom-file before - storing it in recentf-exclude. - -2007-02-23 Chong Yidong - - * startup.el (fancy-splash-screens): Make cursor-type buffer-local - in splash screen. - -2007-02-22 J.D. Smith - - * progmodes/idlw-shell.el (idlwave-shell-mode): Clean up pending - commands, for restart. - (idlwave-shell-current-module): Fix handling of module name by type. - (idlwave-shell-break-in): Update type handling. - (idlwave-shell-bp-get): Encode type in BP structure. - (idlwave-shell-set-bp): Fix setting condition/count on disabled BPs. - (idlwave-shell-module-source-query): Query routine info based on type. - Fix path parsing for non-compiled files. - (idlwave-shell-module-source-filter): Don't signal error in filter - if no source found. - (idlwave-shell-set-bp-in-module): Use fallback source to prevent - filter race. - -2007-02-22 Kim F. Storm - - * wid-edit.el (widget-default-create): Undo 2007-02-04 change. - (editable-field): Document need to put some text before the %v - escape in :format string. - -2007-02-19 Stefan Monnier - - * vc-svn.el: Remove the code inherited from CVSREAD and `cvs edit'. - (vc-svn-use-edit): Remove unused config var. - (vc-svn-update, vc-svn-revert): Checkout is always implicit. - - * outline.el (hide-sublevels): Keep empty last line, if available. - - * buff-menu.el (list-buffers-noselect): Use explicit unicode code - rather than the corresponding unicode char, to make the code - more readable. - -2007-02-19 Juanma Barranquero - - * speedbar.el (speedbar-frame-mode, speedbar-frame-width) - (speedbar-show-unknown-files, speedbar-item-info-file-helper) - (speedbar-item-info-tag-helper): Doc fixes. - -2007-02-19 Kenichi Handa - - * international/mule-cmds.el (locale-language-names): - Map "eo" to "Esperanto". - - * language/european.el ("Esperanto"): New language environment. - -2007-02-17 Sven Joachim (tiny change) - - * simple.el (kill-line): Doc fix. - -2007-02-17 Kim F. Storm - - * emacs-lisp/bindat.el (bindat--unpack-u*): Optimize. - (bindat--unpack-item, bindat--length-group, bindat--pack-item) - (bindat--unpack-group, bindat--pack-group): - Handle vectors with optional element type. - -2007-02-17 Daiki Ueno - - * pgg-gpg.el (pgg-gpg-process-region): Make USE-AGENT nil - if PASSPHRASE is given. - -2007-02-17 Chris Moore - - * jka-cmpr-hook.el (jka-compr-compression-info-list): - Recognize backups of bz2 compressed files. - -2007-02-17 Eli Zaretskii - - * info-look.el (info-lookup): Bind Info-fontify-maximum-menu-size - to nil to speed up lookup of the symbol in index nodes. - -2007-02-17 Alin C. Soare (tiny change) - - * emacs-lisp/lisp-mode.el (calculate-lisp-indent): - Add indentation for the constants of Lisp. - -2007-02-16 Stefan Monnier - - * ps-print.el: Use (defvar ) where applicable. - (ps-print-emacs-type): Remove. - (ps-x-frame-property, ps-e-frame-parameter): Remove. - (ps-frame-parameter): Align its call-convention with frame-parameter. - (ps-begin-job): Adjust calls to it appropriately. - (ps-setup): Don't print ps-print-emacs-type. - (ps-e-find-composition, ps-mark-active-p, ps-color-device): - Define in such a way that it's obvious that it's defined. - (ps-prsc, ps-c-prsc, ps-s-prsc): Remove. - (ps-rmail-mode-hook, ps-vm-mode-hook, ps-gnus-summary-setup) - (ps-jts-ps-setup): Use flavor-neutral syntax instead. - -2007-02-15 Alan Mackenzie - - * progmodes/cc-cmds.el (c-indent-new-comment-line): When splitting - an empty one-line C-style comment, post-position point properly. - -2007-02-15 Chris Moore - - * isearch.el (isearch-lazy-highlight-space-regexp): New variable. - (isearch-lazy-highlight-new-loop): Bind it. - (isearch-lazy-highlight-search): Use it. - - * replace.el (replace-highlight): Bind search-whitespace-regexp to nil. - -2007-02-15 Stefan Monnier - - * font-lock.el (font-lock-extend-region-wholelines): - Only return non-nil if the region has really been changed. - Reported by David Hansen - -2007-02-15 Juanma Barranquero - - * play/5x5.el (5x5-crack-xor-mutate): Doc fix. - (5x5-draw-grid-end, 5x5-make-xor-with-mutation, 5x5-mode, 5x5-crack) - (5x5-play-solution, 5x5-y-or-n-p): Fix typos in docstrings. - -2007-02-14 Juanma Barranquero - - * faces.el (color-values): Revert changes to docstring from - 2007-01-31 and 2000-09-07. - - * textmodes/ispell.el (ispell-keep-choices-win, ispell-word) - (ispell-begin-skip-region-regexp): Fix typos in docstrings. - (ispell-dictionary-alist, ispell-process-line): Doc fixes. - (ispell-help): Fix typos in docstring and output message. - -2007-02-14 Kim F. Storm - - * progmodes/grep.el (grep-files-aliases): Add tex and texi aliases. - (lgrep): Add DIR arg to start grep in specific directory, like rgrep. - (grep): Fix lgrep reference. - - * disp-table.el (make-glyph-code, glyph-char, glyph-face): New defuns. - (standard-display-underline): Use make-glyph-code. - - * descr-text.el (describe-char): Use glyph-char and glyph-face. - - * international/latin1-disp.el (latin1-display-char): - Use make-glyph-code. - -2007-02-13 Juanma Barranquero - - * ehelp.el (with-electric-help, electric-help-exit) - (electric-help-retain): Doc fixes. - - * emacs-lisp/bytecomp.el (byte-compile-dest-file) - (byte-compile-file): Doc fixes. - -2007-02-13 YAMAMOTO Mitsuharu - - * term/mac-win.el: Change all uses of - mac-set-font-panel-visibility to mac-set-font-panel-visible-p. - (mac-ae-number): Return integer 0 if coerced result is float 0.0. - (mac-ae-get-url): Call select-frame-set-input-focus. - (mac-dnd-handle-drag-n-drop-event): Don't call - select-frame-set-input-focus. - -2007-02-13 Kenichi Handa - - * international/characters.el: Fix documentation of category `a'. - -2007-02-11 Dan Nicolaescu - - * progmodes/grep.el (grep): Mention lgrep and rgrep in the docstring. - -2007-02-12 Michael Albinus - - * net/tramp.el (tramp-get-ls-command, tramp-get-file-exists-command) - (tramp-get-remote-ln): Handle error case. - Reported by Chris Moore . - -2007-02-11 Kim F. Storm - - * bindings.el (ctl-x-map): Remove register compatibility bindings - C-x /, C-x j, C-x x, and C-x g (deprecated since Emacs 19). - -2007-02-11 Richard Stallman - - * loadhist.el (unload-feature): Handle (t . SYMBOL) entries - in load history. - - * emacs-lisp/lisp-mode.el (indent-sexp): Clean up termination - condition -- don't fail to stop at endpos. - -2007-02-11 Carsten Dominik - - * textmodes/org.el (org-agenda-get-todos) - (org-agenda-get-timestamps, org-agenda-get-closed) - (org-agenda-get-deadlines, org-agenda-get-scheduled) - (org-agenda-get-blocks, org-format-agenda-item) - (org-agenda-change-all-lines, org-scan-tags): Rename text property - from `category' to `org-category'. - -2007-02-11 Kenichi Handa - - * international/titdic-cnv.el (titdic-convert): Force files be written - with Unix-like eol format. Read files under CXTERM-DIC by raw-text. - (miscdic-convert): Force files be written with Unix-like eol format. - -2007-02-11 Juanma Barranquero - - * files.el (change-major-mode-with-file-name): Fix typo in docstring. - - * calculator.el (calculator-prompt): Doc fix. - (calculator-mode-map): Fix typo in menu entry. - -2007-02-10 Jay Belanger - - * calculator.el (calculator): Do more extensive checking for when - 3 lines should be used for the calculator. - -2007-02-10 Eli Zaretskii - - * info-look.el (info-lookup-make-completions): - Bind Info-fontify-maximum-menu-size to nil to speed up lookup of - index nodes. - - * info.el (Info-fontify-maximum-menu-size): Document the effect - of a nil value. - (Info-fontify-node): Make sure Info-fontify-maximum-menu-size is - non-nil before using it as size. - -2007-02-09 Chong Yidong - - * subr.el (insert-for-yank-1): Prevent read-only properties from - interfering with text property operations. - - * image-mode.el (image-mode): Revert 2007-01-30 changes. - - * image.el (image-type-auto-detectable): Don't autodetect x[pb]m. - (image-type-auto-detected-p): Fail if another match is found in - auto-mode-alist. - - * files.el (magic-mode-alist): Call image-mode instead of - image-mode-maybe for autodetected images. - -2007-02-09 Juanma Barranquero - - * mail/smtpmail.el (smtpmail-smtp-service, smtpmail-queue-index-file): - Fix typos in docstrings. - (smtpmail-local-domain, smtpmail-queue-mail): Doc fixes. - -2007-02-09 Kim F. Storm - - * emacs-lisp/float-sup.el: Remove obsolete comment. - -2007-02-08 Stefan Monnier - - * diff-mode.el (diff-sanity-check-hunk): Fix last fix. - -2007-02-08 Karl Fogel - - * simple.el: Revert previous change, at request of RMS: - (fundamental-mode-hook): Remove. - (fundamental-mode): Run after-change-major-mode-hooks manually, - and don't run the now-nonexistent fundamental-mode-hook. - -2007-02-08 Karl Fogel - - * simple.el (fundamental-mode-hook): Declare new hook. - (fundamental-mode): Run the new dedicated hook, and don't run - after-change-major-mode-hooks manually anymore. - -2007-02-07 Stefan Monnier - - * vc-svn.el (vc-svn-merge-news): Understand the new format with two - added columns of chars. Remove support for the "no-meta-info" format. - Prompted by Romain Francoise . - -2007-02-07 Nick Roberts - - * progmodes/gdb-ui.el (gdb-if-arrow): New macro. - (gdb-mouse-until, gdb-mouse-jump): Use it. - -2007-02-07 Nick Roberts - - * progmodes/gdb-ui.el (gdb-mouse-until, gdb-mouse-jump): Make them - work when there is just an assembler buffer (no source buffer). - -2007-02-07 Per Cederqvist (tiny change) - - * diff-mode.el (diff-sanity-check-hunk): Don't reject the hunk - just because the diff was produced using "-p" (--show-c-function). - -2007-02-07 Juanma Barranquero - - * faces.el (frame-set-background-mode): Use `color-values' and - `display-color-p', not `x-color-values' and `x-display-color-p'. - (face-valid-attribute-values): Use `defined-colors' instead of - `x-defined-colors'. - -2007-02-07 Vinicius Jose Latorre - - * ps-print.el: The ps-print commands without face printing should not - print background color. Reported by Leo . - (ps-print-version): New version 6.7.3. - (ps-begin-job): New arg. Fix ps-default-background and - ps-default-foreground initialization. - (ps-face-attributes): Fix doc string. - (ps-face-background, ps-generate-postscript, ps-generate): Fix code. - - * printing.el: Fix ps-print link. - -2007-02-06 Chong Yidong - - * faces.el (face-set-after-frame-default): Compile attributes to - be set by frame parameters before merging in X resources. - -2007-02-06 Juanma Barranquero - - * simple.el (blink-matching-paren-dont-ignore-comments): - (blink-matching-paren-on-screen): Doc fixes. - -2007-02-06 Nick Roberts - - * progmodes/gdb-ui.el (gdb-frames-mode): Truncate lines in stack buffer. - -2007-02-05 Juanma Barranquero - - * loadhist.el (unload-feature): Silently ignore `load-history' entries - of the form `(defface . SYMBOL)', and treat `(autoload . SYMBOL)' - entries like `defun'. Return nil. - -2007-02-05 Kim F. Storm - - * ido.el: Doc fixes. - -2007-02-04 David Kastrup - - * play/mpuz.el (mpuz-random-puzzle): Fix potential lockup when - `mpuz-allow-double-multiplicator' is non-zero, and correct - calculation of `min'. - -2007-02-04 Per Abrahamsen - - * wid-edit.el (widget-default-create): Insert new text at the - :from marker _after_ the marker, not before it. - -2007-02-04 Alan Mackenzie - - * progmodes/cc-cmds.el (c-indent-line): Don't erase ^L when a line - containing it is re-indented. - -2007-02-03 Chong Yidong - - * net/newsticker.el (newsticker--insert-image): Update docstring, - and insert the image directly. - (newsticker--buffer-redraw): Update docstring. - - * emacs-lisp/easy-mmode.el (define-globalized-minor-mode): - Rename from define-global-minor-mode. - - * progmodes/cwarn.el (global-cwarn-mode): - * emacs-lisp/autoload.el (make-autoload): - * hi-lock.el (global-hi-lock-mode): - * font-core.el (global-font-lock-mode): All callers changed. - -2007-02-03 Eli Zaretskii - - * textmodes/texnfo-upd.el (texinfo-menu-copy-old-description): - Don't copy @ignore lines into menu descriptions. - (texinfo-multi-file-update): Goto the @node line before attempting - to pluck the node name. - (texinfo-multiple-files-update): Reverse the optional arguments' - order, as per the doc string and the `interactive' form. - -2007-02-03 Chong Yidong - - * image-mode.el: Use autoload to avoid overriding disabled setting - applied in .emacs. - -2007-02-03 Alan Mackenzie - - * progmodes/cc-engine.el (c-in-knr-argdecl): Slight correction - for, e.g. "void (*hdone)();" in a k&r list. (No WS between - adjacent paren groups). - -2007-02-02 Vinicius Jose Latorre - - * progmodes/ebnf2ps.el: Doc fixes. - (ebnf-eps-buffer, ebnf-eps-region, ebnf-syntax-alist): Doc fixes. - -2007-02-02 Eli Zaretskii - - * dired-x.el (dired-do-relsymlink): Add reference to - dired-do-symlink. Add an autoload cookie. - - * dired-aux.el (dired-do-symlink): Add reference to - dired-do-relsymlink. - -2007-02-02 Doug Maxey (tiny change) - - * mouse.el : - : New bindings. - -2007-02-02 Ulf Jasper - - * net/newsticker.el (newsticker-version): Changed to "1.10". - (newsticker--set-customvar): Doc string. - (newsticker-new-item-face): Doc string. - (newsticker-mode): Initialize `invisibility-spec' with t. - (newsticker-mode-map): Added - `newsticker-mark-all-items-at-point-as-read'. - (newsticker-menu): Added narrow-to-item and narrow-to-feed. - (newsticker-w3m-show-inline-images): Do not call - `w3m-remove-image'. - (newsticker--buffer-after-w3m-insert-image): New advice for - w3m-insert-image to cache images. - (newsticker-next-item-same-feed): New. - (newsticker-mark-all-items-at-point-as-read-and-redraw): New. - (newsticker-mark-all-items-of-feed-as-read): New. - (newsticker-mark-all-items-at-point-as-read): Use new functions. - (newsticker-mark-item-at-point-as-read): Doc string. - (newsticker-mark-item-at-point-as-read): Use new functions. - (newsticker--do-mark-item-at-point-as-read): New, extracted from - `newsticker-mark-item-at-point-as-read'. - (newsticker-hide-entry): Use (t) instead of t for invisibility. - (newsticker--sentinel): Yet another xml-parser workaround. - (newsticker--decode-iso8601-date): Bugfix for datestrings without - days. - (newsticker--buffer-do-insert-text): Fix. - (newsticker--buffer-insert-enclosure): Fix. Length might be missing. - (newsticker--buffer-make-item-completely-visible): - `switch-to-buffer' not necessary. - -2007-02-02 Eli Zaretskii - - * progmodes/ebnf2ps.el (ebnf-eps-buffer, ebnf-eps-region) - (ebnf-syntax-directory, ebnf-syntax-file, ebnf-syntax-region) - (ebnf-style-database, ebnf-apply-style, ebnf-reset-style) - (ebnf-push-style, ebnf-pop-style, ebnf-eps-production-list) - (ebnf-directory, ebnf-file, ebnf-syntax-alist): Doc fixes. - -2007-02-02 Kenichi Handa - - * international/quail.el (quail-show-key): Fix an error message. - -2007-02-01 Juanma Barranquero - - * faces.el (set-face-underline-p, modify-face): Rename arg - UNDERLINE-P to UNDERLINE (it is not a flag). - -2007-02-01 Nick Roberts - - * progmodes/gdb-ui.el (gdb-speedbar-update): Avoid duplication - when adding gdb-speedbar-update to gdb-input-queue. - -2007-02-01 Kenichi Handa - - * international/quail.el (quail-show-key): Signal an error if the - current input method is not using Quail. - -2007-02-01 J.D. Smith - - * progmodes/idlwave.el (idlwave-xml-create-sysvar-alist): - Trim leading whitespace in sysvar names. - -2007-02-01 Juanma Barranquero - - * faces.el (internal-find-face, internal-get-face): Doc fixes. - -2007-01-31 Juanma Barranquero - - * ido.el (ido-set-common-completion): Use `let', not `let*'. - -2007-01-31 Romain Francoise - - * comint.el: Delete extra copy of `comint-copy-old-input' added in - previous change to this file. - -2007-01-31 Jason Rumney - - * files.el (magic-mode-alist): Use image-mode-maybe rather than - image-mode. - - * image-mode.el (image-mode-maybe): Prevent magic-mode-alist from - interfering with attempt to set major mode from modified - auto-mode-alist. - -2007-01-31 Juanma Barranquero - - * faces.el (color-values): Doc fix. - (face-differs-from-default-p): Don't check :foreground twice. - -2007-01-31 J.D. Smith - - * comint.el (comint-mode): Prevent non-keyword fontification by default. - -2007-01-31 Kenichi Handa - - * international/quail.el (quail-store-decode-map-key): Store a - translated character too. - (quail-char-equal-p): New function. - (quail-find-key1): Check character equality by quail-char-equal-p. - (quail-decode-map-generated): New variable. - (quail-find-key): Check quail-decode-map-generated and re-generate - a decode map if necessary. - -2007-01-30 Richard Stallman - - * tutorial.el (tutorial--detailed-help): Make the list of - changed keys look nicer. - -2007-01-30 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-delete-1): New function. - (gdb-var-delete): Use it. - (gdb-var-update-handler-1): Handle value "invalid" for MI field - `in_scope'. - -2007-01-30 Michael Albinus - - * files.el (get-free-disk-space): Return nil for remote directories. - - * net/ange-ftp.el (ange-ftp-ls): In case of wildcards, use "ls" - instead of "dir". - -2007-01-30 Chong Yidong - - * type-break.el (type-break-catch-up-event): New function. - (type-break-demo-hanoi, type-break-demo-life) - (type-break-demo-boring): Use it. - - * image-mode.el (image-mode): Don't automatically view as image. - (image-toggle-display): Add `disabled' property. - -2007-01-29 Juanma Barranquero - - * isearchb.el (isearchb-iswitchb): - * ps-print.el (ps-build-face-reference): - * emacs-lisp/shadow.el (list-load-path-shadows): - * eshell/esh-cmd.el (eshell-rewrite-for-command): - * international/mule.el (find-auto-coding): - * mail/supercite.el (sc-attrib-selection-list): - * progmodes/cc-defs.el (c-emacs-features): - * progmodes/cc-vars.el (c-offsets-alist): - * progmodes/flymake.el - (flymake-init-create-temp-source-and-master-buffer-copy): - Fix typos in docstrings (some suggested by Chris Moore). - - * progmodes/vhdl-mode.el (vhdl-components-package-name) - (vhdl-get-library-unit, vhdl-corresponding-begin) - (vhdl-skip-case-alternative, vhdl-backward-skip-label) - (vhdl-align-region-2, vhdl-electric-dash, vhdl-case-word) - (vhdl-hooked-abbrev, vhdl-hs-forward-sexp-func) - (vhdl-font-lock-match-item): Fix typos in docstrings. - (vhdl-get-library-unit, vhdl-get-block-state, vhdl-sort-alist) - (vhdl-set-offset, vhdl-fix-case-region-1, vhdl-scan-directory-contents) - (vhdl-speedbar-insert-project-hierarchy): - Improve argument/docstring consistency. - -2007-01-29 Kenichi Handa - - * international/titdic-cnv.el (py-converter): Fix previous change. - -2007-01-29 Chong Yidong - - * jka-compr.el (jka-compr-partial-uncompress) - (jka-compr-call-process): Rebind default-directory if it is - invalid. Suggested by Chris Moore. - - * comint.el (comint-insert-input): Handle situation where the - selected buffer is not the clicked buffer. - -2007-01-29 Kenichi Handa - - * international/ja-dic-cnv.el (skkdic-convert): - Add byte-compile-disable-print-circle:t at the head. - - * international/titdic-cnv.el (tit-process-header): - Add byte-compile-disable-print-circle:t at the head. - (miscdic-convert): Likewise. - (py-converter): Skip the header comments. - - * emacs-lisp/bytecomp.el (byte-compile-disable-print-circle): - New variable. - (byte-compile-output-file-form): Bing print-circle to nil if - byte-compile-output-file-form is not nil. - (byte-compile-output-docform): Likewise. - -2007-01-28 Kim F. Storm - - * emulation/cua-base.el (cua-global-keymap, cua--region-keymap): - Declare earlier to avoid byte compiler warnings. - -2007-01-28 Markus Triska - - * speedbar.el (speedbar-make-specialized-keymap): Doc fix. - -2007-01-28 Chong Yidong - - * play/gamegrid.el (gamegrid-kill-timer): Cancel timer directly. - (gamegrid-add-score-with-update-game-score-1): Allow local quits - when calling update-game-score program. Remove unnecessary - save-excursion. - - * play/tetris.el (tetris-new-shape): Stop drawing if game is over. - -2007-01-28 Nick Roberts - - * progmodes/gdb-ui.el (gdb-breakpoint-regexp): Declare earlier to - avoid compiler warning. - (gdb-var-update-handler-1): Consider that the MI field `in_scope' - might have values other than "true" or "false". - -2007-01-28 Richard Stallman - - * textmodes/fill.el (fill-paragraph-function): Doc fix. - (fill-paragraph): Bind fill-paragraph-function to t to avoid recursion. - - * emacs-lisp/pp.el (pp-eval-last-sexp): Don't eval here. - - * image.el (image-type-header-regexps): Make GIF regex more specific. - - * tutorial.el (tutorial--default-keys): Check M-DEL, not `M-backspace'. - Don't check `backspace'. - (tutorial--find-changed-keys): Look up bindings in a temp buffer - in Fundamental mode. - - * startup.el (fancy-splash-text, normal-splash-screen): - Mention C-g. - - * simple.el (eval-expression): Don't use eval-last-sexp-print-value - when inserting in buffer. - - * vc-arch.el (vc-arch-file-id): Move with-current-buffer - inside the if. - -2007-01-27 Richard Stallman - - * obsolete/awk-mode.el (awk-font-lock-keywords): Add "do". - -2007-01-27 Guanpeng Xu - - * add-log.el (add-log-current-defun): Skip the semicolon ``;'' for - enum/union/struct/class definition. - Revert change to call `forward-sexp' multiple times. - -2007-01-27 Chong Yidong - - * files.el (hack-local-variables-confirm): Don't keep trying to - read an event from an empty kbd macro. - -2007-01-27 Eli Zaretskii - - * server.el (server-start): Mention LEAVE-DEAD arg in the doc string. - -2007-01-27 Ben North - - * outline.el (outline-promote, outline-demote): Doc fix. Rename - the arg CHILDREN -> WHICH. - -2007-01-27 Michael Albinus - - * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band): Set - default-directory to a sane value when calling start-process. - -2007-01-27 Eli Zaretskii - - * ls-lisp.el (ls-lisp-use-localized-time-format): New defcustom. - (ls-lisp-format-time-list): Doc fix. Mention - ls-lisp-use-localized-time-format. - (ls-lisp-format-time): Use ls-lisp-format-time-list if - ls-lisp-use-localized-time-format is non-nil, even if a valid - locale is defined. - -2007-01-27 Juanma Barranquero - - * jka-compr.el (jka-compr-shell): Doc fix. - - * jka-cmpr-hook.el (jka-compr-compression-info-list): Doc fix. - -2007-01-26 Vinicius Jose Latorre - - * ps-print.el: Fix background height. - (ps-print-version): New version 6.7.2. - -2007-01-26 Eli Zaretskii - - * makefile.w32-in (finder-data, custom-deps): Depend on - $(lisp)/loaddefs.el. - -2007-01-24 Dan Nicolaescu - - * Makefile.in (custom-deps, finder-data): Add dependency to loaddefs.el. - -2007-01-24 Miles Bader - - * emacs-lisp/bytecomp.el (byte-compile-output-file-form) - (byte-compile-output-docform): Bind `print-circle' to t. - -2007-01-24 Kenichi Handa - - * international/ja-dic-cnv.el (skkdic-convert): Insert a related - file name of the original SKK dictionary file. - -2007-01-24 Kim F. Storm - - * ido.el (ido-initial-position): New variable. - (ido-read-internal): Set it if default item is specified. - (ido-minibuffer-setup): Position cursor accordingly if set. - (ido-edit-input): C-e moves to end of input if not already there. - (ido-magic-backward-char): C-b does like M-b if prev char is /. - Don't switch to buffer mode if repeating C-b at start of input. - (ido-toggle-ignore): C-a only toggles ignore at start or end of - input; else it moves to start of input. - (ido-kill-buffer-at-head, ido-delete-file-at-head): If cursor is - not at end of input, delete rest of input, rather than normal op. - -2007-01-23 Michael Kifer - - * emulation/viper-keym.el (viper-insert-basic-map): - Delete binding for S-TAB. - - * ediff-util.el (ediff-clone-buffer-for-region-comparison): Change text - of message. Activate mark. - (ediff-activate-mark): Set transient-mark-mode to t. - - * ediff.el (ediff-regions-wordwise, ediff-regions-linewise): Doc fix. - -2007-01-23 Martin Rudalics - - * help-fns.el (describe-variable): Don't suppress display of - buffer local value when the value is "large". - -2007-01-22 Kim F. Storm - - * ido.el (ido-active): Add XEmacs test from ido-minibuffer-setup. - (ido-initiate-auto-merge, ido-exhibit, ido-minibuffer-setup) - (ido-tidy): Use ido-active. - -2007-01-22 Chris Moore - - * hexl.el (hexl-mode-exit): Add missing quote. - -2007-01-22 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-keyboard-modifier-mask-alist): New constant. - (mac-ae-keyboard-modifiers): New function. - (mac-handle-toolbar-switch-mode): Use it. - (mac-dnd-handle-drag-n-drop-event): Likewise. Set action to `copy' - if keyboard modifiers on drop contain option key. - (mac-dnd-drop-data): Add optional argument `action'. - (special-event-map): Remove binding for M-drag-n-drop. - -2007-01-21 Guanpeng Xu - - * add-log.el (add-log-current-defun): Use CC Mode functions to - find the beginning and end of a defun. - -2007-01-21 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-create-regexp) - (gdb-var-create-handler): Handle value field in GDB output of - -var-create. - (gdb-max-frames): New variable. - (gdb-stack-buffer, gdb-frames-select): Use it. - (gdb-info-stack-custom): Help user customize gdb-max-frames, - if necessary. - (gdb-get-frame-number): Simplify. - -2007-01-21 Glenn Morris - - * net/tramp.el (tramp-perl-encode, tramp-perl-decode): - Update copyrights. - -2007-01-21 Alan Mackenzie - - * progmodes/cc-cmds.el (c-where-wrt-brace-construct): Correct the - handling of K&R stuff. - -2007-01-21 Roland Winkler - - * textmodes/bibtex.el (bibtex-files): Fix customization type. - -2007-01-21 Vinicius Jose Latorre - - * ps-print.el: Handle frame parameters (background and/or foreground - colors) changing dynamically. Reported by Leo . - (ps-print-version): New version 6.7.1. - (ps-x-frame-property, ps-e-frame-parameter): New aliases. - (ps-frame-parameter): New fun. - (ps-default-fg, ps-default-bg): New default value ('frame-parameter). - Fix doc and customization. - (ps-begin-job): Get frame parameters (background and/or foreground - colors). - (ps-do-despool): Ensure ps-printer-name has a valid value. - -2007-01-21 Nick Roberts - - * progmodes/gdb-ui.el (gdb-debug-log): Rename from gdb-debug-ring. - (gdb-debug-log-max): Rename from gdb-debug-ring-max. - (gud-gdba-marker-filter): Make a value of nil for gdb-debug-ring-max - mean unlimited. - -2007-01-20 Alan Mackenzie - - * progmodes/cc-engine.el (c-in-knr-argdecl): Reformulate to do - much more rigorous analysis of putative K&R regions. - -2007-01-20 Alan Mackenzie - - * progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): - New functions. - -2007-01-20 Alan Mackenzie - - * progmodes/cc-align.el, progmodes/cc-cmds.el, - * progmodes/cc-defs.el, progmodes/cc-engine.el, - * progmodes/cc-langs.el, progmodes/cc-styles.el, - * progmodes/cc-vars.el: Add my name. - -2007-01-20 Chong Yidong - - * files.el (find-alternate-file): Revert query message to Emacs 21 - version. - -2007-01-20 Eric Hanchrow (tiny change) - - * progmodes/cperl-mode.el (cperl-electric-keywords): Document in - the doc string how to use personal abbrevs without electric - keywords. - -2007-01-20 Alin C. Soare (tiny change) - - * emacs-lisp/lisp-mode.el (last-sexp-toggle-display): - Fixed cursor position when toggle abbreviated display. - -2007-01-20 Nick Roberts - - * t-mouse.el: Update copyright following assignment by - Alessandro Rubini. - -2007-01-20 Chong Yidong - - * type-break.el (type-break-demo-hanoi, type-break-demo-life) - (type-break-demo-boring): Call read-event instead of read-char. - -2007-01-19 Daniel Pfeiffer (tiny change) - - * progmodes/compile.el: Add handling for makepplog. - -2007-01-19 Reiner Steib - - * textmodes/ispell.el (ispell-change-dictionary): Ensure that - aspell dictionaries are initialized when called non-interactively. - -2007-01-19 Chong Yidong - - * progmodes/compile.el (compilation-loop): New arg limit. - Handle case where the first error is at point-min. - (compilation-next-error): New arg to compilation-loop call. - -2007-01-18 Bruno Haible (tiny change) - - * info.el (Info-default-dirs): Change default info dir to - share/info. - - * paths.el (Info-default-directory-list): Ditto. - -2007-01-18 Chris Moore - - * hexl.el (hexl-before-revert-hook): New function. - (hexl-mode): Use it. - (hexl-after-revert-hook): Just call hexl-mode. - (hexl-mode-exit): Remove before-revert-hook. - -2007-01-17 Stefan Monnier - - * isearch.el (isearch-no-upper-case-p): Look for [:upper:] as well. - -2007-01-16 Martin Rudalics - - * textmodes/ispell.el (ispell-dictionary-alist-3): Replace "---" - by "-" in francais7 otherchars entry. - (ispell-dictionary-alist-5): Replace "." by "[.]" for polish - otherchars entry. - -2007-01-15 Karl Fogel - - * bookmark.el (bookmark-buffer-file-name): Abbreviate the bookmark - path. Rewrite function in `cond' style for readability. - - Suggested by Stephen Eglen . - (The path shortening, that is, not the rearrangement.) - -2007-01-15 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-ae-quit-application): New function. - (mac-apple-event-map): Bind "quit application" Apple event to it. - -2007-01-14 Stefan Monnier - - * vc-svn.el (vc-svn-parse-status): Trust the filename argument more - than the program's output. - -2007-01-14 Juanma Barranquero - - * kmacro.el (kmacro-insert-counter, kmacro-set-counter) - (kmacro-start-macro-or-insert-counter) - (kmacro-step-edit-prefix-commands): Fix typos in docstrings. - (kmacro-call-ring-2nd, kmacro-call-ring-2nd-repeat): Doc fixes. - - * longlines.el (longlines-show-hard-newlines): - * ruler-mode.el (ruler-mode-ruler): - * emulation/keypad.el (keypad-setup): - * progmodes/antlr-mode.el (antlr-indent-at-bol-alist): - Fix typo in docstring. - -2007-01-13 Mathias Dahl - - * tumme.el (tumme-cmd-rotate-original-options): Add -outfile option. - Remove redirect character ">". - -2007-01-13 Juanma Barranquero - - * replace.el (perform-replace): Remove leftover code. - -2007-01-12 Richard Stallman - - * replace.el (perform-replace): Don't clear NODENT when computing - the replacement string. - -2007-01-11 Michael Albinus - - * net/tramp.el (tramp-handle-file-local-copy): - Set `enable-multibyte-characters' to nil. Reported by Chris Moore - . - -2007-01-11 Stefan Monnier - - * diff-mode.el (diff-sanity-check-context-hunk-half) - (diff-sanity-check-hunk): New functions. - (diff-find-source-location): Use'em to check the hunks are well-formed. - - * hexl.el (hexlify-buffer, dehexlify-buffer): Don't complain and don't - activate undo when undo is not active. - Reported by Chris Moore . - -2007-01-10 Stefan Monnier - - * ffap.el (ffap-next-regexp, ffap-machine-p, ffap-newsgroup-regexp) - (ffap-newsgroup-p, ffap-alist, ffap-string-at-point-mode-alist) - (ffap-url-at-point): Use char-classes rather than "a-z". - -2007-01-10 Juanma Barranquero - - * ediff-init.el (ediff-autostore-merges): - * textmodes/fill.el (fill-region): Doc fix. - -2007-01-10 Stefan Monnier - - * server.el (server-ensure-safe-dir): UIDs may be floats. - -2007-01-10 Richard Stallman - - * battery.el (battery-linux-proc-acpi): Use ignore-errors - around calls to directory-files. - - * subr.el (momentary-string-display): Use save-excursion. - - * emacs-lisp/pp.el (pp-eval-expression): Once again eval the - argument, but read it as `X' does. - -2007-01-09 Juri Linkov - - * info.el (Info-fontify-node): Don't hide node names of index entries. - - * faces.el (momentary): Change :group to basic-faces where all - basic faces belong to. Add :version. - -2007-01-09 Lennart Borgman - - * tutorial.el (tutorial--display-changes): Show M-x sequence if no - keybinding is found. - (tutorial--find-changed-keys): Never treat null keybinding as a - remapping. - -2007-01-09 Martin Rudalics - - * wdired.el (wdired-xcase-word): Skip non-word read-only characters. - -2007-01-09 Kenichi Handa - - * international/mule-cmds.el - (select-safe-coding-system-interactively): Fix message. - -2007-01-09 Michael Albinus - - * net/tramp.el (tramp-process-one-action): Remove `with-timeout'. - (tramp-process-actions): Add optional parameter TIMEOUT. - (tramp-open-connection-telnet, tramp-open-connection-rsh) - (tramp-open-connection-su): Add timeout of 60". - -2007-01-09 Richard Stallman - - * progmodes/compile.el (compile): Doc fix. - -2007-01-09 Markus Triska - - * tumme.el (tumme-display-thumb): Doc fix. - -2007-01-08 Juanma Barranquero - - * battery.el (battery-search-for-one-match-in-files): - * bindings.el (mode-line-minor-mode-help): - * x-dnd.el (x-dnd-types-alist): - * calendar/icalendar.el (icalendar-import-buffer): - * term/mac-win.el (mac-dnd-types-alist): Fix typo in docstring. - - * progmodes/vhdl-mode.el (vhdl-save-caches): Fix typo in error message. - -2007-01-07 Chris Moore - - * replace.el (replace-regexp): Fix typo in docstring. - -2007-01-07 Alan Mackenzie - - * progmodes/cc-langs.el (c-operators, c-filter-ops): - Amend doc-string and comments. - -2007-01-06 Eli Zaretskii - - * files.el (abbreviate-file-name): Doc fix. - -2007-01-06 Markus Triska - - * subr.el (split-string): Remove spurious ")" from doc string. - -2007-01-05 Takaaki Ota - - * textmodes/table.el (table--warn-incompatibility): - Use display-warning instead of momentary-string-display. - -2007-01-05 Richard Stallman - - * image.el (image-type-header-regexps): Recognize xbm more strictly. - - * simple.el (backward-kill-word): Doc fix. - -2007-01-05 Romain Francoise - - * international/mule.el (sgml-html-meta-auto-coding-function): - Ensure that the buffer contains a HTML document. - -2007-01-05 Dan Nicolaescu - - * faces.el (momentary): Move here ... - * subr.el (momentary): ... from here. - -2007-01-05 Nick Roberts - - * progmodes/gdb-ui.el (gdb-max-children): New customizable variable. - (gdb-speedbar-expand-node): Ask user for confirmation before expanding - large structures/arrays. - -2007-01-04 Juanma Barranquero - - * files.el (find-file-noselect-1, set-visited-file-name): - Allow backup-enable-predicate to be nil. - -2007-01-04 Andreas Schwab - - * progmodes/ebrowse.el (ebrowse-global-prefix-key): Fix typo in - last change. - -2007-01-03 Richard Stallman - - * woman.el (woman-decode-buffer): Clarify error message. - -2007-01-03 Alan Mackenzie - - * progmodes/cc-cmds.el (c-mask-paragraph): Fix yesterday's buggy patch. - -2007-01-03 Chris Moore - - * tutorial.el (tutorial--describe-nonstandard-key): Fix typo. - -2007-01-03 Stefan Monnier - - * iswitchb.el (iswitchb-global-map): Use command-remapping if available. - -2007-01-02 Juanma Barranquero - - * emulation/viper.el (viper-custom-file-name, viper-mode): - Fix typos in docstrings. - - * subr.el (momentary-string-display): After moving point, set POS - variable to it to avoid later errors once the buffer is modified. - Doc fix. - -2007-01-02 Alan Mackenzie - - * progmodes/cc-cmds.el (c-mask-paragraph): In a block comment, - check that the "*/" is present before trying to manipulate it. - -2007-01-02 Richard Stallman - - * wid-edit.el (widget-choose): Avoid ugly error for function keys. - - * progmodes/cfengine.el (cfengine-font-lock-syntactic-keywords): - Fix format of value. - - * cus-edit.el (customize-unsaved): Rename from customize-customized. - Change messages accordingly. - (customize-customized): Now alias. - -2007-01-02 Juanma Barranquero - - * files.el (version-control): Doc fix. - -2007-01-01 Alan Mackenzie - - * progmodes/cc-engine.el (c-guess-basic-syntax, case 5N): - Check the format of c-state-cache is valid for an optimisation before - using it. - - * progmodes/cc-engine.el (c-guess-basic-syntax): New case 5Q "we - are at a statement within a macro". Other changes so that only - the first continuation line in a macro gets the symbol - `cpp-define-intro', the others getting `statement', or whatever. - - * progmodes/cc-cmds.el (c-context-line-break): When invoked within - a string, preserve whitespace. Add a backslash only when also in - a macro. - - * progmodes/cc-defs.el: Correct typos. - - * progmodes/cc-cmds.el (c-context-line-break): Don't indent the - new line after an escaped EOL in a string. - - * progmodes/cc-engine.el (c-forward-label): Recognise "foo:" as a - label when it directly follows "else", "do", .... - - * progmodes/cc-engine.el (c-backward-<>-arglist): Tolerate empty - angle brackets (as seen in "explicit specialisations" of C++ - templates). - - * progmodes/cc-vars.el (c-indentation-style): Mention c-file-style - in the doc-string. - - * progmodes/cc-cmds.el (c-mask-paragraph): Fix for C comments, - when the comment ender looks like "=========*/" and is alone on - its line. - - * progmodes/cc-langs.el, progmodes/cc-engine.el: Correct the - spelling of c-opt-op-identiTier-prefix, t -> f. Leave an alias - for the old name. - - * progmodes/cc-mode.el: Bind C-M-a and C-M-e to - c-\(beginning\|end\)-of-defun by default. - - * progmodes/cc-align.el (c-lineup-gnu-DEFUN-intro-cont): - New line-up function, for the DEFUN macro in the Emacs C sources. - Only used in "gnu" style. - - * progmodes/cc-styles.el (c-style-alist): Use this new function in - the "gnu" style. - - * progmodes/cc-cmds.el (c-electric-slash): Extend the handling of - clean-up comment-close-slash also to work when there's a comment - terminator on the line. - (c-beginning-of-defun, c-end-of-defun): Refactor and optimise - these for large arg - only take account of top level {..}, except - for initial and final adjustments. M-- C-M-[ae] now go to the - right defuns when the starting point is between defuns. They use - the four new functions: - (c-in-function-trailer-p, c-where-wrt-brace-construct) - (c-backward-to-nth-BOF-{, c-forward-to-nth-EOF-}): New functions to - support c-\(beginning\|end\)-of-defun. - - * progmodes/cc-engine.el (c-forward-label): Analyze ":" - expressions more rigorously, to exclude bit-field specifiers from - being classed as labels. - (c-forward-label): When analyzing a ":" within a macro, be careful - about using c-forward-syntactic-ws at the macro beginning. - (c-beginning-of-decl-1): Whilst searching for "=" as evidence of a - stmt boundary, check for "operator=", etc. - - * progmodes/cc-mode.el (c-postprocess-file-styles): - Bind inhibit-read-only to t, around the call to - c-remove-any-local-eval-or-mode-variables, so that it works on a - RO file. - - * progmodes/cc-defs.el (c-version): Update the version number to - "5.31.4". - -2007-01-01 Richard Stallman - - * isearch.el (isearch-done): Use FOUND-POINT or FOUND-START - only if we restored isearch-window-configuration. - -2006-12-31 Romain Francoise - - * net/tramp.el (tramp-default-method): Don't use `symbol-function'. - -2006-12-31 Kim F. Storm - - * files.el (auto-mode-case-fold): New defcustom. - (set-auto-mode): If non-nil, perform second case-sensitive pass - through auto-mode-alist if first pass failed. - -2006-12-30 Richard Stallman - - * emacs-lisp/easy-mmode.el (define-global-minor-mode): Doc fix. - -2006-12-30 Ken Manheimer - - * allout.el (allout-encrypt-string): Handle symmetric-key - passphrase caching but leave keypair caching to pgg. - -2006-12-30 Michael Albinus - - Sync with Tramp 2.0.55. - - * net/tramp.el (tramp-completion-mode): Use `wholenump' instead of - `integerp'. `char-equal' could fail else in case of negative - numbers. Reported by Toby Speight . - (top): Check for `font-lock-add-keywords' before calling; it - doesn't exist under XEmacs. - (tramp-yn-prompt-regexp): Fix regexp. Add question from plink. - (tramp-completion-mode): Remove clause (not - tramp-unified-filenames), because the function is called in other - context too, where this check results in wrong results in the - XEmacs case on Windows. - (tramp-touch): UTC handling is not possible for XEmacs. - -2006-12-30 Jan Dj,Ad(Brv - - * scroll-bar.el (previous-scroll-bar-mode): New variable - (set-scroll-bar-mode): Set previous-scroll-bar-mode. - (scroll-bar-mode): Use previous-scroll-bar-mode if set. - - * term/x-win.el: Set scroll bar mode to right if set by X resources. - -2006-12-30 Richard Stallman - - * files.el (make-backup-file-name-1): Precompute abs name - but don't lose the relative name. - - * international/mule-cmds.el (select-safe-coding-system-interactively): - Fix message. - -2006-12-30 Kevin Rodgers (tiny change) - - * files.el (backup-buffer): Show entire backup file name in msg. - -2006-12-30 Juanma Barranquero - - * image.el (image-type-header-regexps, image-type-from-data) - (image-type-from-buffer, image-type-from-file-header): - Revert changes from 2006-12-26. - (image-type-auto-detectable): New variable. - (image-type-auto-detected-p): New function. - - * files.el (magic-mode-alist): Detect image files with - `image-type-auto-detected-p' instead of `image-type-from-buffer'. - -2006-12-29 Nick Roberts - - * dired.el (dired-sort-other): Move test for dired-mode... - (dired-sort-set-modeline): ...to here. - -2006-12-29 Micha,Ak(Bl Cadilhac - - * textmodes/fill.el (fill-comment-paragraph): Document 2006-12-24 - change. Suggested by Stefan Monnier. - -2006-12-29 Kim F. Storm - - * emacs-lisp/bindat.el (bindat--unpack-group, bindat--length-group) - (bindat--pack-group): Let-bind COUNT during repeat block evaluation. - -2006-12-27 Kim F. Storm - - * emacs-lisp/authors.el (authors-aliases): Anchor FSF alias regexp, - so it doesn't accidentally match an fsf.org mail address. - (authors-renamed-files-alist): Add tcover-*.el. - -2006-12-27 Stefan Monnier - - * vc-arch.el (vc-arch-find-version): New function. - - * vc-hooks.el (vc-version-backup-file-name): Revision names may be - composed of arbitrary characters (even /) in some systems. - -2006-12-27 Eli Zaretskii - - * international/mule-cmds.el (select-safe-coding-system-interactively): - Improve the message in the *Warning* buffer. - -2006-12-27 Kim F. Storm - - * ido.el (ido-set-matches-1): Fix last change. If default item is - current buffer, it is ok to be first. - -2006-12-27 Kenichi Handa - - * international/mule-cmds.el (select-safe-coding-system-interactively): - Use face `link' for problematic chars. - -2006-12-27 Kenichi Handa - - * international/mule-cmds.el (select-safe-coding-system-interactively): - Improve the message in *Warning* buffer. - -2006-12-27 Kim F. Storm - - * ido.el (ido-set-matches-1): Never put current buffer first if - there are other matches. - -2006-12-26 Nick Roberts - - * progmodes/gdb-ui.el (gud-watch): Allow duplicate names for watch - expressions. - (gdb-var-delete): Handle duplicate names. Print message for non - root expressions. - (gdb-partial-output-name): Start buffer name with a space. - (gdb-info-breakpoints-custom, gdb-reset): Handle space in above - buffer name. - -2006-12-26 Micha,Ak(Bl Cadilhac - - * mail/footnote.el (Footnote-insert-footnote): Fix the search of the - last footnote when `footnote-spaced-footnotes' is nil. - -2006-12-26 Richard Stallman - - * cus-edit.el (custom-browse-sort-alphabetically) - (custom-buffer-sort-alphabetically) - (custom-menu-sort-alphabetically): Doc fixes. Add autoloads. - - * image.el (image-type-header-regexps): Change element format - to include third item NOT-ALWAYS. - (image-type-from-data): Handle new format. - (image-type-from-buffer): Handle new format. New arg INCLUDE-MAYBES. - (image-type-from-file-header): Pass t for INCLUDE-MAYBES. - -2006-12-26 Guanpeng Xu - - * add-log.el (add-log-current-defun): Call `forward-sexp' - multiple times to pick a member function name defined as - part of nested classes/namespaces. - -2006-12-26 Vinicius Jose Latorre - - * emacs-lisp/easymenu.el (easy-menu-change): New arg MAP to indicate - which keymap should be used to change menu. It does not affect any - existent code. - -2006-12-26 Richard Stallman - - * textmodes/fill.el (fill-paragraph): Check for a minibuffer - rather than for being in a minibuffer window. - -2006-12-25 Daiki Ueno - - * pgg-def.el (pgg-passphrase-coding-system): Default to nil instead of - locale-coding-system. - * pgg-gpg.el (pgg-gpg-process-region): Encode passphrase with eol-type - LF. - -2006-12-25 Michael R. Mauger - - * progmodes/sql.el (sql-mode-abbrev-table): Correct initialization. - (sql-mode-syntax-table): Disable double quoted strings. - (sql-mode-font-lock-object-name): Add TYPE and TYPE BODY. - -2006-12-25 YAMAMOTO Mitsuharu - - * startup.el (fancy-splash-last-input-event): New variable. - (fancy-splash-special-event-action): New function. - (fancy-splash-screens): Temporarily bind special events to it. - Execute command for saved special event before exiting from - recursive editing. - - * term/mac-win.el (mac-keyboard-translate-char, mac-unread-string): - New functions. - (mac-ts-update-active-input-area, mac-ts-unicode-for-key-event): - Use mac-unread-string. - -2006-12-24 Micha,Ak(Bl Cadilhac - - * textmodes/fill.el (fill-comment-paragraph): Prevent the use of - an optimized comment regexp if `comment-start-skip' uses a ^. - * bs.el (bs--up): Remove interactive spec. - -2006-12-24 Chong Yidong - - * woman.el (woman-decode-buffer): Signal error for alien macro sets. - Suggested by James Cloos. - -2006-12-24 Kevin Ryde - - * calendar/cal-dst.el (calendar-dst-starts): Default to second Sunday - in March. - (calendar-dst-ends): Default to first Sunday in November. - -2006-12-24 Ken Manheimer - - * allout.el (allout-encrypt-string): Inhibit use of agent within - body of let form where encryption happens. Acknowledge non-use of - gpg-agent in docstring. - (allout-toggle-subtree-encryption): Acknowledge non-use of - gpg-agent in docstring. - -2006-12-24 Chong Yidong - - * custom.el (custom-add-frequent-value): Alias for custom-add-option. - -2006-12-23 Michael Kifer - - * ediff-diff.el (ediff-diff-options): Clarify docstring. - (ediff-setup-diff-regions): Disallow -u in ediff-diff-options. - - * emulation/viper-cmd.el (viper-post-command-sentinel): - Protect against errors in hooks. - (viper-add-newline-at-eob-if-necessary): Add newline only if we - actually modify buffer; ignore errors if occur. - -2006-12-23 Chong Yidong - - * calendar/calendar.el (calendar-mode-map): Switch < and >. - (calendar-mode-line-format): Use mouse-1 bindings, and tweak - formatting. - -2006-12-23 Richard Stallman - - * simple.el (delete-horizontal-space): Doc fix. - -2006-12-23 Eli Zaretskii - - * makefile.w32-in (bootstrap-clean): Run bootstrap-clean-$(SHELLTYPE) - explicitly in a recursive Make, not implicitly through prerequisites, - since the latter is wrong under parallel builds. - -2006-12-22 Eli Zaretskii - - * w32-fns.el (convert-standard-filename): Wrap in save-match-data. - -2006-12-22 Kevin Rodgers (tiny change) - - * progmodes/sh-script.el (sh-make-vars-local): Fix a typo in - message string. - -2006-12-22 Ben North (tiny change) - - * outline.el (outline-next-visible-heading): Fix the case with a - header at end-of-file with no final newline. - -2006-12-22 Robert Thorpe (tiny change) - - * indent.el (tab-always-indent): Doc fix. - -2006-12-22 Chong Yidong - - * info.el (Info-fontify-maximum-menu-size): Bump to 1000000. - (Info-fontify-node): Do fontify indices. - - * tutorial.el (tutorial--detailed-help): Remove unnecessary link - to the Emacs Lisp reference manual. - (tutorial--tab-map): Remove. All callers changed. - (tutorial--find-changed-keys): New elt QUIET, used to... - (tutorial--display-changes): ...ensure that warning messages are - only issued once per changed key. - (tutorial--remove-remarks): Delete unused code-path. - (lang-strings): Remove extraneous formatting. - (tutorial--save-tutorial): Prompt before saving tutorial state. - -2006-12-21 Chong Yidong - - * tutorial.el: Remove `cl' requirement. Clean up whitespace. - Replace '?\ ' by '?\s' throughout. - (tutorial-warning-face): Inherit font-lock-warning-face. Move to - `help' custom group. - (tutorial--key-description): New function. - (tutorial--display-changes): Remove redundant arg. Scan for all - key sequences to avoid false matches. Cleanup. - (tutorial--saved-dir): Save to a subdirectory in .emacs.d to - reduce homedir pollution. - (help-with-tutorial): Call tutorial--display-changes with no arg. - -2006-12-21 Carsten Dominik - - * textmodes/org.el (org-mode-map): Bind org-complete also to M-\t. - -2006-12-20 Michael Albinus - - * net/tramp.el (tramp-default-method): We still need to check for - `executable-find', because it is not bound under Emacs 20. - (tramp-handle-file-name-completion) - (tramp-completion-handle-file-name-completion): Handle optional - parameter PREDICATE. - (tramp-find-default-method): Add code for default values. - -2006-12-20 Nick Roberts - - * progmodes/gdb-ui.el (gdb-stopped): After attaching to a process - make gud-go send "continue". - -2006-12-19 Juanma Barranquero - - * image.el (image-type-header-regexps): Be more specific detecting `pbm' - and `png' files. Use non-capturing parenthesis for `tiff' regexp. - -2006-12-19 Kim F. Storm - - * bindings.el: Bind sigusr1 and sigusr2 in special-event-map - instead of global-map. - - * files.el (magic-mode-alist): Allow matching file type by - calling a function at bob. Check for image types by calling - image-type-from-buffer. Suggested by Juanma Barranquero. - (set-auto-mode): Do it. - -2006-12-19 Michael Albinus - - * net/tramp.el (tramp-methods): Introduce new method `scpc'. - Remove "ControlMaster" option from the other `scp*' methods. - (tramp-default-method): Check for ssh-agent before setting to `scp'. - -2006-12-18 Carsten Dominik - - * textmodes/org.el (org-mode): Show context after isearch. - (org-show-siblings): New function. - (org-show-context): Use `org-show-siblings'. - -2006-12-18 Stefan Monnier - - * emacs-lisp/syntax.el (syntax-ppss-flush-cache, syntax-ppss): - Use syntax-ppss-toplevel-pos. - -2006-12-18 Carsten Dominik - - * textmodes/org.el (org-current-line): Make sure that lines are - counted from beginning of buffer. - (org-table-copy-region, org-table-paste-rectangle): Make sure that - lines are counted from beginning of buffer. - -2006-12-17 Chong Yidong - - * info.el (Info-build-node-completions): Signal error if tag-table - marker is not found. - - * pgg-gpg.el (pgg-gpg-use-agent): Default to t. - -2006-12-17 Alan Mackenzie - - * emacs-lisp/lisp.el (beginning-of-defun-raw): Optimise (for - speed) the case when open-paren-in-column-0-is-defun-start is nil. - Based on code by Martin Rudalics. - - * progmodes/cc-mode.el (c-basic-common-init): Don't set - open-paren-in-column-0-is-defun-start to nil any more. - -2006-12-17 Richard Stallman - - * simple.el (delete-horizontal-space): Use prefix arg. - - * help-fns.el (describe-variable): Improve blank separator lines. - - * files.el (magic-mode-alist): Mark as risky. - - * files.el (make-backup-file-name-1): - Expand backup-directory explicitly. - -2006-12-17 Michael Albinus - - * net/tramp.el (tramp-default-method): Before setting to "pscp", - check whether package password.el is loaded, or Pageant is running. - -2006-12-17 Ulf Jasper - - * calendar/icalendar.el (icalendar-version): Increase to "0.14". - (icalendar--rris): First try Emacs, then XEmacs. - (icalendar--convert-ical-to-diary): Doc fix. - Insert newline at end of target file. - -2006-12-17 Kim F. Storm - - * outline.el (outline-isearch-open-invisible-function): New defvar. - (outline-flag-region): Use it if non-nil for isearch-open-invisible - overlay property instead of outline-isearch-open-invisible. - -2006-12-16 Kim F. Storm - - * ido.el (ido-completion-help): Build ido-cur-list and ido-matches - if ido-directory-too-big is set on entry. - (ido-toggle-ignore, ido-completion-help): Print message while - reading big directory. - -2006-12-15 Richard Stallman - - * shell.el (shell): Doc fix. - -2006-12-15 Kevin Gallagher - - * emulation/edt.el (edt-xserver): - * emulation/edt-mapper.el (edt-xserver): Replace `/' with a `-', - to fix a problem on Cygwin. - - * emulation/edt.el - * emulation/edt-mapper.el - * emulation/edt-lk201.el - * emulation/edt-pc.el - * emulation/edt-vt100.el: Update maintainer's email address. - -2006-12-15 Simon Marshall - - * progmodes/cc-fonts.el (c-font-lock-declarations): Fix previous change. - -2006-12-15 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-atsu-font-table): Remove defvar. - (mac-handle-font-selection): Use mac-atsu-font-face-attributes - instead of mac-atsu-font-table. - (fontset-default): Specify argument MAXIMUM in x-list-fonts calls. - -2006-12-14 Stephen Leake - - * align.el (align-match-tex-pattern): Fix a rare bug which - hanged Emacs. - -2006-12-14 Richard Stallman - - * startup.el (use-fancy-splash-screens-p): Use frame-height - instead of window-height. Pass frame to image-size. - -2006-12-13 Kenichi Handa - - * international/mule-cmds.el (set-locale-environment): - Set default-sendmail-coding-system too. - -2006-12-12 J.D. Smith - - * progmodes/idlw-help.el: Fix copyright notice. - -2006-12-12 Stefan Monnier - - * emacs-lisp/syntax.el (syntax-ppss-toplevel-pos): New fun. - -2006-12-11 Juanma Barranquero - - * subr.el (unread-command-char): Reformat obsolescence info. - -2006-12-11 Richard Stallman - - * emacs-lisp/cl-macs.el (defstruct): Suppress warnings - about calls to cl-struct-setf-expander. - -2006-12-11 Juanma Barranquero - - * ediff-merg.el (ediff-show-clashes-only): Doc fix. - (ediff-combination-pattern): Fix typo in docstring. - - * textmodes/refer.el (refer-find-entry): Doc fix. - (refer-bib-files-regexp, refer-bib-directory, refer-bib-files) - (refer-cache-bib-files, refer-find-next-entry, refer-yank-key): - Fix tipos in docstrings. - - * progmodes/idlwave.el (idlwave-library-path): Fix typos in docstring. - -2006-12-10 Kim F. Storm - - * ido.el (ido-init-completion-maps): Remap backward-kill-word - instead of binding M-backspace. - -2006-12-10 Juanma Barranquero - - * replace.el (replace-match-data, replace-match-maybe-edit): - * calc/calc-aent.el (calc-eval-error): - * emulation/vi.el (vi-char-argument): - * progmodes/cc-langs.el (c-at-vsemi-p-fn) - (c-vsemi-status-unknown-p-fn): Doc fixes. - -2006-12-10 Chong Yidong - - * menu-bar.el (menu-bar-showhide-menu, menu-bar-tools-menu) - (menu-bar-help-menu): Tooltip fixes. Suggested by Francis Wright. - -2006-12-10 Masatake YAMATO - - * progmodes/ld-script.el (ld-script-keywords): Fix a typo. - -2006-12-09 Chong Yidong - - * mouse-sel.el (mouse-sel-mode): Register mouse-2 as a click type. - - * man.el (Man-xref-button-action): New function. If the - `Man-target-string' button property is a function, assume it - accepts a position argument. - (Man-abstract-xref-man-page): Use it. - (Man-default-man-entry): New optional arg POS. - - * wdired.el (wdired-preprocess-symlinks): Make the spaces after - symlink arrows read-only and non-rear-sticky. - -2006-12-09 Martin Rudalics - - * wdired.el (wdired-change-to-wdired-mode, wdired-finish-edit) - (wdired-search-and-rename): Simplify code. - (wdired-preprocess-files, wdired-preprocess-perms): Make - read-only property of preceding character rear-nonsticky to - avoid that it can be modified. Put old-name and old-link - properties on character preceding name and replace - put-text-property by add-text-properties. - (wdired-get-filename, wdired-get-previous-link): Get old-name - and old-link properties from character preceding name and - simplify code. - (wdired-preprocess-perms, wdired-set-bit, wdired-toggle-bit) - (wdired-perms-to-number): Make local-map property - rear-nonsticky to avoid that text following permissions may be - modified. Use add-text-properties instead of put-text-property - when changing a permission bit. - (wdired-change-to-dired-mode): Remove stickiness properties. - -2006-12-09 Juanma Barranquero - - * international/mule-cmds.el (register-input-method): Doc fix. - -2006-12-09 Masayuki Ataka (tiny change) - - * cmuscheme.el (scheme-start-file): Use `let*', not `let'. - -2006-12-09 Micha,Ak(Bl Cadilhac - - * textmodes/flyspell.el (flyspell-hack-local-variables-hook): New. - Force buffer local defs evaluation on local variables loading. - (flyspell-mode-on, flyspell-mode-off): Use it in - `hack-local-variables-hook'. - -2006-12-09 Eli Zaretskii - - * emacs-lisp/find-func.el (find-variable): Doc fix. - - * help-fns.el (variable-at-point): Doc fix. - - * w32-fns.el (w32-append-code-lines): New function. - -2006-12-09 Romain Francoise - - * comint.el (comint-insert-input): Delete obsolete comment. - -2006-12-08 Stefan Monnier - - * net/browse-url.el (browse-url): Set DISPLAY to the one of the - current frame, in case we're connected to several displays. - -2006-12-08 Juanma Barranquero - - * frame.el (other-frame): Doc fix. - (set-frame-parameter): Fix typo in docstring. - -2006-12-07 Kim F. Storm - - * info.el (Info-index): Strip leading colon from topic. - -2006-12-07 Nick Roberts - - * progmodes/gud.el (gud-speedbar-buttons): Deal with references - to pointers. - -2006-12-05 J.D. Smith - - * progmodes/idlwave.el (idlwave-xml-create-class-method-lists): - Trim out spurious class inheritance "None" entries. - -2006-12-05 Kim F. Storm - - * emulation/cua-base.el (cua-paste-pop-rotate-temporarily): Doc fix. - (cua-paste-pop): Rework last change for - cua-paste-pop-rotate-temporarily, so first M-y and C-y works alike, - pasting the head of the kill-ring, and prefix arg C-u M-y inserts the - text inserted by the last M-y command. - -2006-12-05 Micha,Ak(Bl Cadilhac - - * cmuscheme.el (run-scheme, scheme-start-file): Search the start - file in ~/.emacs.d as `init_SCHEMENAME.scm' instead. - - * shell.el (shell): Search the start file in ~/.emacs.d as - `init_SHELLNAME.sh' instead. - -2006-12-05 Glenn Morris - - * progmodes/cperl-mode.el (cperl-mode) - * progmodes/f90.el (f90-mode-abbrev-table) - * progmodes/fortran.el (fortran-mode-abbrev-table) - * progmodes/octave-mod.el (octave-abbrev-table) - * progmodes/sql.el (sql-mode-abbrev-table): Define abbrevs even - if abbrev-table is non-nil (saved user abbrevs may have been restored). - - * progmodes/vhdl-mode.el (vhdl-mode-abbrev-table-init): Do not - clear abbrev table, else saved abbrevs will not be restored. - -2006-12-04 Juanma Barranquero - - * facemenu.el (facemenu-unlisted-faces): Put obsolescence info in - the call to `make-obsolete-variable', not in the docstring. - -2006-12-04 Chong Yidong - - * facemenu.el (facemenu-unlisted-faces): Define as obsolete variable. - -2006-12-04 Vinicius Jose Latorre - - * progmodes/ebnf-abn.el: - * progmodes/ebnf-bnf.el: - * progmodes/ebnf-dtd.el: - * progmodes/ebnf-ebx.el: - * progmodes/ebnf-iso.el: - * progmodes/ebnf-otz.el: - * progmodes/ebnf-yac.el: - * progmodes/ebnf2ps.el: - * delim-col.el: - * printing.el: - * ps-bdf.el: - * ps-mule.el: - * ps-print.el: Remove 'Time-stamp' comment mark. - - * printing.el (pr-menu-bind): Replace 'easy-menu-change' by - 'easy-menu-add-item' when called in Emacs 21 or higher. - -2006-12-04 Stephen Leake - - * progmodes/ada-xref.el (ada-check-current): Doc fix. - (ada-make-body-gnatstub): Doc fix. Remove redundant `progn'. - -2006-12-04 Kim F. Storm - - * bindings.el (global-map): Bind [signal t] to ignore, to have - user signals ignored by default. - -2006-12-04 Juanma Barranquero - - * descr-text.el (describe-char-unicode-data): Use a hidden buffer for - Unicode data file pointed to by `describe-char-unicodedata-file'. - -2006-12-04 Stefan Monnier - - * textmodes/sgml-mode.el (sgml-font-lock-keywords-1): Fix pathological - O(n^2) regexp-search by anchoring the search. - -2006-12-04 Dan Nicolaescu - - * whitespace.el (whitespace-cleanup-internal): Use current - argument for recursive call. - -2006-12-04 Michael Albinus - - * net/tramp.el (tramp-methods): Add "ControlPath" and - "ControlMaster" to scp, scp1 and scp2 methods. Suggested by - Andreas Schwab . - (tramp-do-copy-or-rename-file-out-of-band) - (tramp-open-connection-rsh): Compute format spec for ?t. - (tramp-process-actions): Trace command parameters. - -2006-12-04 Nick Roberts - - * simple.el (toggle-truncate-lines): Clarify doc string. - - * progmodes/gdb-ui.el (gdb-var-delete-children): New function. - (gdb-speedbar-expand-node): Use it. - -2006-12-04 Richard Stallman - - * progmodes/python.el (python-indent): Add safe-local-variable prop. - - * dired.el (dired-revert): Turn off dired-after-readin-hook - around call to dired-readin. - - * menu-bar.el (menu-bar-make-toggle): Add "globally" - to echo area messages. - : - Add "globally" to Help string. - : MESSAGE arg need not say "globally". - (menu-bar-edit-menu ): Rename from select-and-paste. - -2006-12-03 Liam Healy (tiny change) - - * outline.el (outline-end-of-subtree): Don't leave an empty - line hidden as we would a real next heading. - -2006-12-03 Ken Manheimer - - * allout.el (allout-ascend): Add an optional argument to preserve - original position of point when unsuccessful. Also, fix a - docstring error. - (allout-yank-processing): Fix depth shift of multiple-topic so yanks - work again, using allout-ascend's new option. - (allout-setup-mode-map): Extract from allout-mode to initialize - allout-mode-map. Call it on file load, so the mode docstring - substitutions work even if allout mode has not yet been invoked. - (allout-mode): Use new allout-setup-mode-map to track any keybinding - customizations since the map was last processed. Also, refine the - docstring so it's ship-shape for release. - (allout-default-layout, allout-beginning-of-line-cycles) - (allout-distinctive-bullets-string, allout-use-mode-specific-leader) - (allout-encrypt-unencrypted-on-saves, allout-inhibit-auto-fill) - (allout-version, allout-layout, allout-infer-body-reindent) - (allout-infer-header-lead-and-primary-bullet, allout-view-change-hook) - (allout-init, allout-mode, allout-next-heading, allout-chart-subtree) - (allout-previous-heading, allout-goto-prefix-doublechecked) - (allout-current-bullet-pos, allout-next-sibling-leap) - (allout-pre-command-business, allout-encrypted-type-prefix) - (allout-make-topic-prefix, allout-open-topic, allout-rebullet-heading) - (allout-rebullet-topic, allout-rebullet-topic-grunt) - (allout-flag-region, allout-expose-topic, allout-expose-topic) - (allout-old-expose-topic, allout-listify-exposed) - (allout-process-exposed, allout-latex-verb-quote) - (allout-latex-verbatim-quote-curr-line, allout-adjust-file-variable) - (allout-toggle-current-subtree-encryption) - (allout-toggle-subtree-encryption, allout-bullet-isearch): - Remove extraneous open-paren and close paren string escapes. - -2006-12-03 Juanma Barranquero - - * progmodes/ada-xref.el (is-windows, ada-find-in-src-path): Doc fixes. - (ada-xref-pos-ring-max, ada-xref-project-files, ada-xref-initialize) - (ada-prj-default-comp-cmd, ada-quote-cmd, ada-compile-current): - Fix typos in docstrings. - -2006-12-03 Glenn Morris - - * progmodes/cc-align.el - * progmodes/cc-awk.el - * progmodes/cc-cmds.el - * progmodes/cc-compat.el - * progmodes/cc-defs.el - * progmodes/cc-engine.el - * progmodes/cc-langs.el - * progmodes/cc-menus.el - * progmodes/cc-mode.el - * progmodes/cc-styles.el - * progmodes/cc-vars.el - * progmodes/vhdl-mode.el: Fix Copyright format. - -2006-12-02 Chong Yidong - - * mouse.el (mouse-drag-track): Suppress automatic hscrolling for - initial down event. - -2006-12-02 Kim F. Storm - - * emulation/cua-base.el (cua-toggle-set-mark): Doc fix. - (cua-repeat-replace-region): Make M-v more robust. - (cua-paste-pop-rotate-temporarily): New defcustom. - (cua-paste-pop): Use it. - (cua-auto-mark-last-change): New defcustom. - (cua-pop-to-last-change): New helper function. - (cua-set-mark): Use them. - -2006-12-01 Nick Roberts - - * menu-bar.el (toggle-case-fold-search): Clarify doc/help string and - mini-buffer message. - -2006-12-01 Juanma Barranquero - - * descr-text.el (describe-char-unicodedata-file): Fix typo in docstring. - -2006-12-01 Ben North - - * paren.el: Fix the highlight overlay extension when the user types a - sequence of char very fast just before the open parenthesis. - -2006-12-01 Vinicius Jose Latorre - - * ps-mule.el: Eliminate Emacs 20 compatibility. - - * ps-print.el: Eliminate Emacs 20 & 21 compatibility. - (ps-print-version): New version 6.7. - (ps-print-quote): Replace '?\ ' by '?\s'. - -2006-11-30 Juanma Barranquero - - * hexl.el (hexl-goto-address, hexl-forward-char, hexl-forward-short) - (hexl-forward-word, hexl-previous-line, hexl-beginning-of-1k-page) - (hexl-end-of-1k-page): Doc fixes. - (hexl-address-region, hexl-ascii-region, hexl-highlight-line-range): - Fix typos in docstrings. - -2006-11-30 Micha,Ak(Bl Cadilhac - - * ido.el (ido-local-file-exists-p): New. Tell if a file exists - locally, i.e. without using file name handlers. - (ido-read-internal): Allow mono letter host names, avoiding the - `c:' problem by testing if the file exists locally. - (ido-complete, ido-make-file-list, ido-exhibit): Ditto. - -2006-11-30 Masatake YAMATO - - * hexl.el (hl-line-range-function, hl-line-face): Declare variables - to avoid bytecomp warnings. - (hexl-mode-old-ruler-function): New variable. - (hexl-follow-line): Bind `hexl-mode-old-hl-line-range-function' - and `hl-line-range-function' after `require' hl-line. - Then bind `hl-line-range-function' and `hl-line-face'. - Don't require frame. Don't use `with-no-warnings'. - (hexl-activate-ruler): Store the original value of - `ruler-mode-ruler-function' to `hexl-mode-old-ruler-function'. - (hexl-mode-exit): Restore the original value of - `ruler-mode-ruler-function'. - -2006-11-30 Alin C. Soare (tiny change) - - * hexl.el (hexl-mode-old-hl-line-range-function): New variable. - (hexl-mode-old-hl-line-face): New variable. - (hexl-mode, hexl-mode-exit): Fix the highlighting of the current - line when exit from the hexl-mode. - -2006-11-30 Juanma Barranquero - - * emacs-lisp/bytecomp.el (byte-optimize, byte-compile-warnings): - Doc fixes. - - * international/fontset.el (create-fontset-from-ascii-font) - (create-fontset-from-fontset-spec, x-compose-font-name): Doc fixes. - (fontset-name-p): Fix typo in docstring. - - * progmodes/cc-cmds.el (c-indent-exp): Fix typo in docstring. - -2006-11-30 Vinicius Jose Latorre - - * ps-bdf.el: Fix maintainer email. - - * ps-mule.el: Fix maintainer email. Define functions for Emacs 20 - compatibility. - - * ps-print.el: Fix maintainer email. Define functions for Emacs 20 & - 21 compatibility. - (ps-print-quote): Replace '?\s' by '?\ ' to keep compatibility with - Emacs 20 & 21. - -2006-11-29 J.D. Smith - - * progmodes/idlwave.el (idlwave-auto-fill): - Remove paragraph-start let to prevent auto-fill giving up. - -2006-11-28 Juanma Barranquero - - * vt100-led.el (led-state): Fix typo in previous change. - -2006-11-27 Andreas Seltenreich - - * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): - Fix interactive spec of the functions getting defined to make them - work as documented. - -2006-11-28 Chong Yidong - - * startup.el (fancy-splash-screens): Hide initial splash buffer. - -2006-11-28 Kim F. Storm - - * icomplete.el (icomplete-tidy, icomplete-exhibit): Check that - icomplete-mode is enabled. - -2006-11-28 Carsten Dominik - - * textmodes/org.el (require): Require gnus-sum during compilation - to avoid problem with a macro call. - -2006-11-28 Glenn Morris - - * emacs-lisp/authors.el (authors-aliases): Add new alias. - - * progmodes/fortran.el (fortran-font-lock-keywords-4): Add `min'. - (fortran-window-create-momentarily): Do not need string-to-char. - -2006-11-28 Richard Stallman - - * emacs-lisp/bytecomp.el (byte-compile-get-constant): - Replace incorrect use of assoc-default with a loop. - - * term.el (term-exec-1): Set envvar INSIDE_EMACS. - - * simple.el (next-error-find-buffer): Improve messages. - - * files.el (revert-buffer): Special error message if file - is now not readable. - - * facemenu.el (facemenu-add-new-face): Improve doc strings of - constructed commands. - - * comint.el (comint-exec-1): Provide Emacs version and `comint' - in INSIDE_EMACS. - -2006-11-27 Stefan Monnier - - * diff-mode.el (diff-mode-map): Add a binding for unified->context. - - * server.el: Remove spurious * in docstrings. - (server-process-filter): Exit from recursive editing before processing - a new request. - -2006-11-27 J.D. Smith - - * progmodes/hideshow.el (hs-already-hidden-p): Move to end of - line so hidden blocks will be correctly identified. - -2006-11-27 Juanma Barranquero - - * ledit.el (ledit-save-defun, ledit-mode): - * resume.el (resume-emacs-args-buffer): - * rot13.el (rot13-display-table, rot13-translate-table, rot13) - (rot13-string, rot13-region, rot13-other-window, toggle-rot13-mode): - * vmsproc.el (subprocess-input, start-subprocess, subprocess-command) - (command-send-input, command-kill-line): - * vt100-led.el (led-state, led-on): Fix typos in docstrings. - - * autoarg.el (autoarg-kp-mode): Doc fix. - - * emacs-lock.el (toggle-emacs-lock): Doc fix. Simplify. - (emacs-lock-check-buffer-lock): Doc fix. Use `when'. - (check-emacs-lock): Doc fix. Simplify. - - * iimage.el (iimage-mode-image-regex-alist): Doc fix. - (iimage-mode-buffer): Fix typos in docstring. - - * misc.el (zap-up-to-char): Doc fix. - - * time-stamp.el: Fix comment and obsolescence string for old - functions. Use `dolist' instead of `while'. - - * userlock.el (ask-user-about-lock-help): Fix typos in output message. - - * disp-table.el (standard-display-8bit, standard-display-default): - * ebuff-menu.el (electric-buffer-list): - * ehelp.el (electric-help-command-loop): - * font-core.el (font-lock-mode): - * help-macro.el (make-help-screen): - * help.el (describe-minor-mode-completion-table-for-indicator) - (lookup-minor-mode-from-indicator): - * indent.el (tab-to-tab-stop, move-to-tab-stop): - * info-look.el (info-lookup-guess-custom-symbol): - * locate.el (locate-main-listing-line-p, locate-mode, locate-do-setup): - * longlines.el (longlines-wrap-line): - * macros.el (insert-kbd-macro): - * menu-bar.el (menu-bar-update-buffers): - * misc.el (copy-from-above-command): - * mouse.el (mouse-popup-menubar, mouse-buffer-menu-alist): - * newcomment.el (comment-indent): - * novice.el (disabled-command-function): - * sort.el (sort-fields-syntax-table): - * subr.el (momentary-string-display): - * tar-mode.el (tar-header-block-summarize) - (tar-clear-modification-flags): - * terminal.el (terminal-cease-edit, te-more-break-unwind, te-newline) - (te-clear-rest-of-line, te-clear-rest-of-screen, te-clear-screen) - (te-insert-lines, te-delete-lines, te-delete, te-insert-spaces) - (te-delete-char, te-down-vertically-or-scroll): - * time-stamp.el (time-stamp-string-preprocess): - * tmm.el (tmm-add-one-shortcut): "?\ " -> "?\s". - -2006-11-26 Nick Roberts - - * speedbar.el (speedbar-timer-fn): Revert to old behaviour when not - in GUD mode. - - * progmodes/gud.el (gud-install-speedbar-variables): Remove bindings: - speedbar-expand-line-descendants, speedbar-contract-line-descendants. - -2006-11-26 Jan Dj,Ad(Brv - - * progmodes/cc-vars.el (c-backslash-column): Add . at end of sentence. - -2006-11-26 Stephen Leake - - * progmodes/ada-mode.el (ada-which-compiler): Fix typo in docstring. - (ada-compile-goto-error): Adapt to new argument profile of - compilation-goto-locus in Emacs 22. Don't check if the various - compile functions are defined; we already do "(require 'compile)". - -2006-11-26 Kim F. Storm - - * kmacro.el: Fix commentary. - -2006-11-26 Nick Roberts - - * progmodes/gud.el (gdb): Explain how to run in text command mode - more clearly. Say in error message that multiple debugging - requires restarting GDB. - -2006-11-25 Juanma Barranquero - - * international/fontset.el (create-fontset-from-fontset-spec): Doc fix. - -2006-11-25 Pavel Kobiakov - - * progmodes/flymake.el (flymake-posn-at-point-as-event): New function. - (flymake-popup-menu): Use it instead of posn-at-point. - -2006-11-25 Jan Dj,Ad(Brv - - * progmodes/cc-vars.el (c-backslash-column): - Mention c-backslash-max-column in documentation for c-backslash-column. - -2006-11-24 Lars Hansen - - * net/tramp.el (tramp-default-method): Under Windows, change from - plink to pscp. - (tramp-copy-failed-regexp, tramp-action-copy-failed): Add. - (tramp-actions-copy-out-of-band): - Add pair (tramp-copy-failed-regexp tramp-action-copy-failed). - (tramp-action-out-of-band): Move "Permission denied" handling to - tramp-action-copy-failed. - (tramp-do-copy-or-rename-file-out-of-band): unwind-protect killing of - process buffer. - -2006-11-24 Stefan Monnier - - * pgg-pgp.el (pgg-pgp-process-region): Change `args' from a list of - strings to a single string. Quote `errors-file-name'. - (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region, pgg-pgp-sign-region) - (pgg-pgp-verify-region, pgg-pgp-insert-key, pgg-pgp-snarf-keys-region): - Adjust calls. Use `shell-quote-argument'. - - * international/mule.el (load-with-code-conversion) - (with-category-table): Use with-current-buffer. - (after-insert-file-set-coding): Use restore-buffer-modified-p. - -2006-11-24 Eli Zaretskii - - * mail/smtpmail.el (smtpmail-send-it): - Copy buffer-file-coding-system from the mail buffer. Possibly add a - MIME header for the message encoding. - Bind coding-system-for-write around the call to mail-do-fcc. - Use smtpmail-code-conv-from to encode queued mail messages. - -2006-11-24 Juanma Barranquero - - * tabify.el (tabify-regexp): Doc fix. - - * net/rcirc.el (rcirc-buffer-maximum-lines): - * progmodes/gud.el (jdb): Fix space/tab mixup in docstrings. - - * play/gomoku.el (gomoku-terminate-game, gomoku-human-takes-back) - (gomoku-prompt-for-move, gomoku-human-plays, gomoku-offer-a-draw): - Fix typos in output messages. - (gomoku-vector-length, gomoku-init-board): Fix typos in docstrings. - -2006-11-23 Stefan Monnier - - * hexl.el (hexl-mode): Don't try to guess the max-address: get it from - the horse's mouth. - (hexlify-buffer): Don't re-encode an arg that's already encoded. - -2006-11-23 Michael Kifer - - * ediff-diff.el (ediff-exec-process, ediff-same-file-contents): - Remove condition-case. - -2006-11-23 Glenn Morris - - * progmodes/f90.el (f90-comment-indent): Do not move point in - default case. - -2006-11-21 Romain Francoise - - * emacs-lisp/find-func.el (find-library-name): Don't strip ".el" - from library name (reverts change of 2005-10-25). - -2006-11-21 Lennart Borgman - - * tutorial.el (tutorial--default-keys): Add newline and - delete-backward-char bindings. - (tutorial--detailed-help): Save excursion when finding keys. - Correct warning string for M-x FOO case. - (tutorial--display-changes): Print special keys in tutorial style. - Tweak search regexp for changed keys. - -2006-11-21 Bob Rogers (tiny change) - - * thingatpt.el (thing-at-point-url-at-point): Don't add a - redundant scheme. - -2006-11-21 Diane Murray (tiny change) - - * thingatpt.el (thing-at-point-uri-schemes): Add schemes that - are new to the list at IANA. Also added irc, mms, mmsh. - -2006-11-20 J.D. Smith - - * progmodes/idlw-help.el (idlwave-html-help-location): - Fail gracefully for missing help packages. - (idlwave-help-assistant-open-link): Open full links. - (idlwave-help-assistant-help-with-topic): Direct help link. - - * progmodes/idlwave.el (idlwave-mode): - Set add-log-current-defun-function. - (idlwave-current-routine-fullname): Add, to support add-log. - (idlwave-convert-xml-system-routine-info): Simplify XML parsing - to reflect improvements to xml-parse-file. - (idlwave-mode-menu-def): New binding for help-with-topic. - - * progmodes/idlw-shell.el (idlwave-shell-filter-directory): - Handle extra newlines and spaces. - (idlwave-shell-mode-map): Add help-with-topic. - -2006-11-20 Chong Yidong - - * tutorial.el (tutorial-warning-face): New face. - (tutorial--detailed-help, tutorial--display-changes): Use it. - (tutorial--find-changed-keys): Check ESC-prefix binding specially. - Improve search pattern for occurrences of changed keys. - -2006-11-20 Jan Dj,Ad(Brv - - * term/x-win.el (x-last-cut-buffer-coding): New variable. - (x-select-text): Set it. - (x-cut-buffer-or-selection-value): Check also x-last-cut-buffer-coding - when checking for newness. - -2006-11-19 Juanma Barranquero - - * subr.el (posn-image): - * progmodes/ebnf2ps.el (ebnf-stop-on-error): Fix typos in docstrings. - - * emacs-lisp/regexp-opt.el (regexp-opt): Doc fix. - -2006-11-19 Micha,Ak(Bl Cadilhac - - * progmodes/glasses.el (glasses-separate-parentheses-exceptions): New. - Exceptions to the rule "add a space between an identifier and an - opening parenthesis". Defaulted to the `#define' problem of cpp. - (glasses-parenthesis-exception-p): New. Check if the region is an - exception regarding to that. - (glasses-make-readable): Use it. - (glasses-convert-to-unreadable): Ditto. Modify the file also if - `glasses-convert-on-write-p' and `glasses-separate-parentheses-p' are t. - -2006-11-19 Chong Yidong - - * emacs-lisp/bytecomp.el (byte-compile-if): Revert last change. - -2006-11-19 Stephen Leake - - * progmodes/ada-mode.el (ada-make-body): Fix typo. - - * progmodes/ada-xref.el (ada-make-body-gnatstub): Fix typo. - (ada-xref-initialize): Fix typo. Use add-hook and remove-hook. - -2006-11-18 Chong Yidong - - * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): Check `and' - conditions for function or variable bindings. - - * comint.el (comint-exec-1): Set EMACS and INSIDE_EMACS to t. - - * progmodes/compile.el (compilation-start): Ditto. - -2006-11-18 Michael Albinus - - * net/tramp.el (top): cl and custom are always required. - -2006-11-18 Jan Dj,Ad(Brv - - * term/x-win.el (x-cut-buffer-or-selection-value): Decode text from - cut-buffers with next-selection-coding-system if not nil. - -2006-11-17 Carsten Dominik - - * textmodes/org.el (org-fix-decoded-time): New function. - (org-display-custom-time): Use `org-fix-decoded-time'. - -2006-11-17 Chong Yidong - - * menu-bar.el (menu-bar-games-menu): Remove yow. - -2006-11-17 Carsten Dominik - - * textmodes/org.el (org-scan-tags): Re-align code fixed. - (org-detach-overlay): Rename from `org-detatch-overlay'. - (org-table-convert-region): Insert space after column separator. - (org-agenda-kill): New command. - (org-metaleft): Call `org-outdent-item' on bullets. - (org-metaright): Call `org-indent-item' on bullets. - (org-timestamp-change): Set `org-last-changed-timestamp'. - (org-current-line): Make sure (bolp) returns correct result. - (org-agenda-change-all-lines): Make sure TODO are highlighted. - -2006-11-17 Stefan Monnier - - * pcvs.el (cvs-retrieve-revision): Set buffer-file-coding-system. - -2006-11-16 Chong Yidong - - * mouse.el (global-map): Change 2006-08-16 fix to call - mouse-yank-at-click explicitly, since mouse events are not carried - over into keyboard macros. - -2006-11-16 Kim F. Storm - - * ido.el (ido-file-internal): Use current buffer's file name as default - choice for ido-find-alternate-file. Suggested by Matt Hodges. - -2006-11-15 Ken Manheimer - - * allout.el (allout-doublecheck-at-and-shallower): Clarify docstring. - (allout-inhibit-aberrance-doublecheck): Rename from - allout-during-yank-processing. All callers changed. - (allout-ascend): Provide for unusual case where some topic after - the first in file is at lower depth than the first. - (allout-shift-in): Ensure the offspring of the new containing - topic are exposed. - (allout-encrypt-string): Preserve the coding-system of the text, - according to that of the containing buffer. - (allout-toggle-subtree-encryption): When the text being encrypted - requires a different coding system, offer to preserve the coding - system using a file local var. - -2006-11-15 Simon Marshall - - * progmodes/cc-fonts.el (c-font-lock-declarators): Use c-at-toplevel-p - to recognise "T t()" as a function declaration, rather than a - variable instantiation, iff at the top-level or inside a class - declaration. Suggested by Feng Li . - -2006-11-14 Stephen Leake - - * progmodes/ada-xref.el (ada-parse-prj-file): - Don't delete project buffer; user may want to edit it. - (ada-xref-set-project-field, ada-xref-current-project-file) - (ada-xref-current-project, ada-show-current-project) - (ada-set-main-compile-application): New functions. - (ada-xref-get-project-field, ada-require-project-file): - Normalize use of ada-prj-default-project-file. - (ada-gdb-application, ada-get-ada-file-name, ada-make-body-gnatstub): - Normalize use of ada-require-project-file. - (ada-prj-find-prj-file): Improve doc string, comments. - - * progmodes/ada-mode.el (ada-mode-version): Bump version. - (ada-create-keymap): Add \C-c\C-m 'ada-set-main-compile-application. - (ada-create-menu): Add ada-set-main-compile-application, - ada-show-current-main, ada-show-current-project. - -2006-11-14 Stefan Monnier - - * progmodes/python.el (inferior-python-mode-syntax-table): New var. - (inferior-python-mode): Use it. - -2006-11-14 Andreas Schwab - - * term/xterm.el (terminal-init-xterm): Add more key bindings. - -2006-11-13 Kim F. Storm - - * ido.el (ido-copy-current-word): C-o copies region if active. - -2006-11-13 Carsten Dominik - - * textmodes/org.el (org-emph-face): Fix typo in variable name. - -2006-11-13 Juanma Barranquero - - * ediff.el (ediff-revision): - * files.el (set-visited-file-name): - * mail/rmailout.el (rmail-output-body-to-file): - Use `format', not `message', in `y-or-n-p' call. - -2006-11-13 Carsten Dominik - - * textmodes/org.el (org-metaleft): Call `org-outdent-item' on bullets. - (org-metaright): Call `org-indent-item' on bullets. - (org-timestamp-change): Set `org-last-changed-timestamp'. - (org-current-line): Make sure (bolp) returns correct result. - (org-agenda-change-all-lines): Make sure highlighting TODO always works. - -2006-11-12 Richard Stallman - - * language/european.el (turkish-case-conversion-enable) - (turkish-case-conversion-disable): New functions. - ("Turkish" lang env): Use them. - - * international/characters.el (case table): - Do nothing special for i and I. - - * subr.el (remove-overlays): Fix last change. - - * cus-edit.el (custom-save-all): Use find-file-visit-truename - for visiting the custom file. - -2006-11-12 Markus Triska - - * play/handwrite.el (handwrite): Also process lines not ending - with newline. Replace some position-fiddling with different - logic. Improve performance. - -2006-11-12 Stephen Leake - - * progmodes/ada-xref.el (ada-prj-default-check-cmd): New variable, - replacing deleted variable `ada-check-switch'. - (ada-project-file-extension): Rename to `ada-prj-file-extension'. - (ada-xref-project-files): Improve doc string. - (ada-find-executable): New function. - (ada-initialize-runtime-library): Use `ada-find-executable'. - (ada-xref-set-default-prj-values): In compile commands, don't need - `ada-cd-command'; `compile' does that more portably. - Use ada-prj-default-check-cmd. - (ada-parse-prj-file): Don't set 'debug_post_cmd, 'debug_pre_cmd - properties if not specified in project file. - (ada-goto-declaration): Display useful message for new error - 'error-file-not-found. - (ada-get-ada-file-name, ada-find-in-src-path): Signal new error - 'error-file-not-found. - (ada-get-all-references): Match latest ali syntax. Signal new - error 'error-file-not-found. - (ada-find-in-ali): Match latest ali syntax. - (ada-make-filename-from-adaname): Handle different semantics of - gnatkr in GNAT 3.15p vs later. - - * progmodes/ada-stmt.el (ada-func-or-proc-name): Match changes to - ada-procedure-start-regexp. - (ada-or-accept, ada-or-delay, ada-or-terminate): Improve doc string. - - * progmodes/ada-mode.el: Replace conditional (require 'ispell) - with defvar. - (ada-language-version): Rename ada05 -> ada2005. - (ada-align-region-separate): Add `eval-when-compile'. - (ada-name-regexp): Remove unneeded escapes in regexp character - alternative. - (ada-compile-goto-error-file-linenr-re): New constant. - (ada-matching-start-re): Handle additional cases `declare', - `procedure', `function'. - (ada-compile-goto-error): Handle "... at line nn". - (ada-mode): Clearer syntax, comments for ff-special-constructs. - Delete support for old versions of `align'. - (ada-search-prev-end-stmt): Handle additional keyword `private'. - (ada-check-defun-name): Simplify handling of `declare'. - (ada-goto-matching-start): Handle nested `begin ... end'. - Handle `declare', `protected', `procedure', `function'. - (ada-create-menu): Presence of arm95 is not conditional on using - GNAT compiler. - -2006-11-12 Juanma Barranquero - - * emacs-lisp/re-builder.el (reb-mode): Set `blink-matching-paren' to - nil in the *RE-Builder* buffer (it causes spurious error messages). - - * server.el (server-visit-files): If `minibuffer-auto-raise' has - been set to t, respect it. - -2006-11-11 Stephen Leake - - * progmodes/ada-mode.el: Delete `eval-and-compile' around `require'. - Delete commented out code for old Emacs versions. Autoloading of - "ada-xref", "ada-prj" is useful even if compiler is not GNAT. - (ada-mode-version): Bump version number. - (ada-95-string-keywords, ada-2005-string-keywords) - (ada-2005-keywords, ada-name-regexp): New constant. - (ada-language-version, ada-procedure-start-regexp, ada-mode) - (ada-font-lock-keywords): Add support for Ada 2005 keywords. - (ada-package-start-regexp): Support private packages, include package - name (for ada-set-point-accordingly). - (ada-next-procedure, ada-previous-procedure) - (ada-which-function-are-we-in): Match changes to - ada-procedure-start-regexp. - (ada-make-body): Make non-interactive; not a user function. - (ada-make-subprogram-body): Improve doc string. - -2006-11-11 Romain Francoise - - * progmodes/cperl-mode.el (cperl-mode): Before adding to it, make - `compilation-error-regexp-alist' buffer-local, since we changed - `compilation-error-regexp-alist-alist' locally. - -2006-11-11 Juanma Barranquero - - * server.el (server-visit-files): Bind `minibuffer-auto-raise' - to the value of `server-raise-frame'. - -2006-11-11 Glenn Morris - - * ido.el (ido-enable-prefix) - * ses.el (ses-call-printer-return) - * net/tramp.el (tramp-unified-filenames) - * progmodes/cc-align.el (c-lineup-string-cont) - * progmodes/compile.el (compilation-directory-matcher) - * progmodes/ebnf2ps.el (ebnf-stop-on-error) - * progmodes/vhdl-mode.el (vhdl-reset-active-high) - (vhdl-clock-rising-edge) - * textmodes/org.el (org-export-with-timestamps) - (org-export-remove-timestamps-from-toc) - (org-export-with-tags): Improve previous doc fixes. - -2006-11-11 Richard Stallman - - * textmodes/flyspell.el (flyspell-mode-map): - Bind C-c $ instead of M-RET. - -2006-11-10 Simon Marshall - - * progmodes/cc-fonts.el (c-font-lock-declarations): Don't overwrite - fontification for "case" and "default" keywords. - -2006-11-10 Andreas Schwab - - * calendar/cal-dst.el (calendar-dst-check-each-year-flag): - Avoid starting sentence with "nil". - -2006-11-10 Juanma Barranquero - - * server.el (server-raise-frame): New option. - (server-switch-buffer): Use it. - -2006-11-10 Nick Roberts - - * progmodes/gdb-ui.el (gdb-many-windows): Start doc string - with a capital. - -2006-11-10 Carsten Dominik - - * textmodes/org.el (org-show-hierarchy-above) - (org-show-following-heading): Fix typo in default value. - (org-scan-tags): Make the search case-sensitive. - (org-tags-sparse-tree): Don't overrule - `org-show-following-heading' and `org-show-hierarchy-above'. - (org-reveal): New command. - (org-show-context): Rename from `org-show-hierarchy-above'. - (org-fast-tag-selection-single-key): New option. - (org-fast-tag-show-exit, org-set-current-tags-overlay): New functions. - (org-tags-overlay): New variable. - (org-agenda-todo-ignore-deadlines): New option. - ("session"): Add circular data structure `org-mark-ring' to - exceptions list in session.el. - (org-agenda-window-setup, org-agenda-restore-windows-after-quit): - New options. - (org-agenda-quit): Use `org-agenda-restore-windows-after-quit'. - (org-prepare-agenda, org-agenda-quit): Use `org-agenda-window-setup'. - (org-pre-agenda-window-conf, org-blank-before-new-entry): New vars. - (org-finalize-agenda): Activate bracket links in agenda. - (org-at-timestamp-p, org-at-date-range-p): Additional argument - INACTIVE-OK. - (org-show-hierarchy-above, org-show-following-heading): - List values allowed for fine-tuned configuration. - (org-show-hierarchy-above): New argument CONTEXT, use the - fine-tuned settings in `org-show-hierarchy-above' and - `org-show-following-heading'. - (org-display-custom-time): New function. - (org-toggle-time-stamp-overlays, org-insert-time-stamp): New function. - (org-display-custom-times, org-time-stamp-custom-formats): - (org-maybe-intangible): New macro. - (org-activate-bracket-links, org-hide-wide-columns): - Use `org-maybe-intangible'. - (org-open-file): Use `shell-quote-argument'. - (org-display-internal-link-with-indirect-buffer): New option. - (org-file-remote-p): Get regexp from list. - (org-link-expand-abbrev): New function. - (org-link-abbrev-alist): New option. - (org-open-at-point, org-cleaned-string-for-export): - Call `org-link-expand-abbrev'. - (org-timeline, org-agenda-list, org-todo-list) - (org-tags-view): Remove the KEEP-MODES argument. - (org-finalize-agenda-hook): New hook. - (org-get-alist-option): New function. - (org-follow-timestamp-link): New function. - (org-open-at-point): Call `org-follow-timestamp-link'. - (org-log-note-marker, org-log-note-purpose) - (org-log-note-window-configuration): New variables. - (org-add-log-maybe, org-add-log-note, org-store-log-note): New funs. - (org-log-note-headings): New option. - (org-dblock-write:clocktable): Bug fix, removed infinite loop. - (org-store-link): Support for dired-mode. - (org-open-file): Substitute environment variables into filename. - (org-last): New defsubst. - (org-agenda-re-align-tags): New function. - (org-agenda-align-tags-to-column): New option. - (org-agenda-timeline): Group removed. - (org-prepare-agenda, org-prepare-agenda-buffers) - (org-run-agenda-series, org-timeline, org-agenda-list) - (org-todo-list, org-tags-view): Call `org-agenda-prepare' and set - the text property inticating the agenda type. - (org-agenda-post-command-hook): Get agenda type from text property - at point. - (org-agenda): Handle command sets. Set `org-agenda-last-arguments' - and obey `org-agenda-overriding-arguments'. - (org-agenda-overriding-arguments, org-agenda-last-arguments): New vars. - (org-agenda-goto-today, org-agenda-later, org-agenda-earlier) - (org-agenda-week-view, org-agenda-day-view): - Use `org-agenda-overriding-arguments' to make updating work with - multi-block agendas. - (org-agenda-prefix-format): Allow different formats for the - different agenda entry types. - (org-timeline-prefix-format): Option removed, use - `org-agenda-prefix-format' instead. - (org-prepare-agenda): New function. - (org-select-timeline-window): Option removed, use - `org-select-agenda-window' instead. - (org-respect-restriction): Variable removed. - (org-cmp-tag): New function. - (org-agenda-sorting-strategy, org-entries-lessp): - Implement sorting by last tag. - (org-complete): Better completion in in-buffer option lines. - (org-in-item-p): New function. - (org-org-menu): Add entries for checkboxes. - (org-cycle): Extra brouping in outline-regexp, because it is used - in a search with "^" prepended. - (org-provide-checkbox-statistics): New option. - (org-set-font-lock-defaults): Highlight checkbox statistics. - (org-update-checkbox-count-maybe) - (org-get-checkbox-statistics-face): New functions. - (org-update-checkbox-count): New command. - (org-insert-item, org-toggle-checkbox): - Call `org-update-checkbox-count-maybe'. - (org-export-as-html): XEmacs compatibility for coding system. - (org-force-cycle-archived): New command. - (org-cycle-hide-archived-subtrees): Display message when ARCHIVE - overrules cycling. - (org-fix-position-after-promote): If the line contains only a todo - keyword, add a final space. - (org-promote-subtree, org-demote-subtree): - Call `org-fix-position-after-promote'. - -2006-11-10 Glenn Morris - - * calendar/cal-dst.el: Do not assume DST starts/ends on the same - date in every year. - (calendar-dst-check-each-year-flag): New customizable variable. - (calendar-dst-find-data): New function, extracted from - calendar-current-time-zone. - (calendar-current-time-zone): Use calendar-dst-find-data. - (calendar-dst-transition-cache): New variable. - (calendar-dst-find-startend, calendar-dst-starts) - (calendar-dst-ends): New functions. - (calendar-daylight-savings-starts) - (calendar-daylight-savings-ends): Change value to use - calendar-dst-starts, calendar-dst-ends; respectively. - - * progmodes/f90.el (f90-indent-region): Bind case-fold-search to t. - - * ido.el (ido-enable-prefix) - * ses.el (ses-call-printer-return) - * net/tramp.el (tramp-unified-filenames) - * progmodes/cc-align.el (c-lineup-string-cont) - * progmodes/compile.el (compilation-directory-matcher) - * progmodes/ebnf2ps.el (ebnf-stop-on-error) - * progmodes/gdb-ui.el (gdb-many-windows) - * progmodes/vhdl-mode.el (vhdl-reset-active-high) - (vhdl-clock-rising-edge) - * textmodes/org.el (org-export-with-timestamps) - (org-export-remove-timestamps-from-toc, org-export-with-tags) - (org-read-date): Doc fix (Nil -> nil). - -2006-11-10 Jan Dj,Ad(Brv - - * term/x-win.el (x-select-text, x-cut-buffer-or-selection-value): - Encode/decode text to/from cut buffers to/from iso-latin-1 only. - -2006-11-10 Juanma Barranquero - - * bs.el (bs--window-for-buffer): Remove. - (bs--show-with-configuration): Use `get-window-with-predicate' - instead of `bs--window-for-buffer'. - -2006-11-10 Kenichi Handa - - * files.el (revert-buffer): Fix previous change. - -2006-11-09 Juanma Barranquero - - * bs.el (bs--redisplay): Fix typo in docstring. - (bs--window-config-coming-from): Make frame-local. - (bs--restore-window-config): New function. - (bs-kill, bs-select, bs-select-other-window) - (bs-select-other-frame): Use it. - (bs--window-for-buffer): Return as soon as a matching buffer is found. - (bs--show-with-configuration): Save the window configuration as a - frame local var, and only if *buffer-selection* is not already - visible on this frame. - -2006-11-08 Chong Yidong - - * vc-svn.el (vc-svn-admin-directory): New var. - (vc-svn-registered, vc-svn-responsible-p) - (vc-svn-repository-hostname): Use it. - Suggested by arit93@yahoo.com. - -2006-11-08 Juanma Barranquero - - * ldefs-boot.el: Regenerate. - -2006-11-08 Alan Mackenzie - - * emacs-lisp/lisp.el (beginning-of-defun-raw): Code up the - case (eq open-paren-in-column-0-is-defun-start nil) by searching - for least nested open-paren. - -2006-11-08 Romain Francoise - - * subr.el (remove-overlays): Fix typo in last change. - -2006-11-08 Richard Stallman - - * subr.el (remove-overlays): Call overlay-recenter. - -2006-11-08 Vinicius Jose Latorre - - * printing.el (pr-alist-custom-set, pr-ps-utility-custom-set) - (pr-ps-name-custom-set, pr-txt-name-custom-set): Return back the old - behaviour. - (pr-menu-bind): Act on global-map instead of menu-bar-file-menu - directly. - -2006-11-08 Juanma Barranquero - - * ido.el (ido-ignore-extensions, ido-show-dot-for-dired) - (ido-max-dir-file-cache, ido-decorations) - (ido-rewrite-file-prompt-functions, ido-use-mycompletion-depth) - (ido-magic-backward-char, ido-enter-dired) - (ido-enter-insert-buffer, ido-enter-insert-file, ido-dired) - (ido-list-directory, ido-first-match, ido-only-match) - (ido-subdir, ido-indicator): Fix typos in docstrings. - (ido-buffer-internal, ido-completion-help): Fix typos in messages. - (ido-read-internal): Fix typo in error message. - -2006-11-08 Kenichi Handa - - * international/mule-cmds.el (set-default-coding-systems): - Always set default-file-name-coding-system to utf-8 for Mac Darwin. - -2006-11-08 Juanma Barranquero - - * makefile.w32-in (setwins): Remove. - (WINS_ALMOST): New macro. - (WINS): Use it. - (autoloads): Don't extract autoloads from files in obsolete/. - -2006-11-07 Chong Yidong - - * whitespace.el (whitespace-buffer): Call remove-overlays after - overlay-recenter for performance. Suggested by Martin Rudalics. - -2006-11-07 Michael Albinus - - * net/tramp.el (tramp-default-method): scp is the default method. - -2006-11-07 Juanma Barranquero - - * server.el (server-start): Save also the Emacs pid in the server file. - -2006-11-07 Carsten Dominik - - * textmodes/reftex-cite.el (reftex-pop-to-bibtex-entry): Preserve - point when displaying a bibtex cross reference in the echo area. - -2006-11-06 Juanma Barranquero - - * international/mule.el (make-char): Fix typo in docstring. - (load-with-code-conversion, charsetp): Doc fixes. - - * international/ja-dic-cnv.el (skkdic-convert): - * cus-edit.el (hook): Fix typo in docstring. - -2006-11-06 Chong Yidong - - * cus-edit.el (custom-mode-map): Move defvar above code using it. - (custom-mode-link-map): New variable. - (custom-group-link, custom-manual): Use follow-link. - -2006-11-06 Roland Winkler - - * textmodes/bibtex.el: Fix typo in name of author of bibtex.el, - "Mark Shapiro" -> "Marc Shapiro". Update his email address. - -2006-11-06 Richard Stallman - - * textmodes/flyspell.el (flyspell-correct-word-before-point): - New function broken out of flyspell-correct-word. - (flyspell-mode-map): Bind it to M-RET. - (flyspell-correct-word): Call it. - - * textmodes/fill.el (fill-minibuffer-function): New function. - (fill-paragraph): Bind fill-paragraph-function to - fill-minibuffer-function. - - * ruler-mode.el (ruler-mode-map): Add bindings for up-events - so that they aren't undefined. - - * dired.el (dired-readin): Locally bind file-name-coding-system. - - * bindings.el: Shorten and clarify usual mode line mouse help string. - - * Makefile.in (autoloads): Don't include `obsolete'. - -2006-11-06 Chong Yidong - - * printing.el (pr-alist-custom-set, pr-ps-utility-custom-set) - (pr-ps-name-custom-set, pr-txt-name-custom-set): Don't update the - Printing menu if it's not initialized. - (pr-menu-bind): Act on menu-bar-file-menu directly. - -2006-11-06 Juanma Barranquero - - * help.el (view-emacs-news): Fix typo in error message. - - * menu-bar.el (menu-bar-update-buffers): Fix typo in menu entry. - - * shadowfile.el (shadow-define-regexp-group) - (shadow-literal-groups, shadow-insert-var): Doc fixes. - (shadow-read-files): Fix typo in message. - (shadow-inhibit-overload, shadow-find, shadow-suffix) - (shadow-site-match, shadow-write-todo-file, shadow-insert-var) - (shadow-suffix, shadow-site-match, shadow-expand-file-name) - (shadow-file-match): Fix typos in docstrings. - - * terminal.el (terminal-emulator): Fix typo in message. - - * emacs-lisp/authors.el (authors-fixed-entries): Fix typo. - - * emacs-lisp/lselect.el (x-kill-primary-selection) - (x-delete-primary-selection, x-copy-primary-selection): - Fix typos in error messages. - - * emulation/edt-mapper.el: Fix typo in interactive message. - - * mail/emacsbug.el (report-emacs-bug): Fix typos in output message. - - * textmodes/ispell.el (ispell, ispell-local-dictionary-alist) - (ispell-help): Fix typos in docstrings. - (ispell-help): Fix typo in output message. - - * allout.el (allout-adjust-file-variable) - (allout-passphrase-verifier-string) - (allout-passphrase-hint-string) - (allout-toggle-current-subtree-encryption): - * apropos.el (apropos-synonyms): - * cus-edit.el (hook): - * emacs-lock.el (emacs-lock-from-exiting): - * follow.el (follow-avoid-tail-recenter-p): - * hexl.el (hexl-mode): - * mouse-copy.el (mouse-copy-work-around-drag-bug): - * mouse.el (mouse-set-font): - * resume.el (resume-emacs-args-file): - * rfn-eshadow.el (file-name-shadow-tty-properties): - * t-mouse.el (t-mouse-process, t-mouse-mode): - * emacs-lisp/cust-print.el (custom-print-install) - (custom-print-uninstall, custom-format): - * emacs-lisp/shadow.el (list-load-path-shadows): - * emulation/tpu-edt.el (tpu-help-text) - (tpu-save-all-buffers-kill-emacs, tpu-emacs-replace) - (tpu-reset-control-keys): - * emulation/vip.el (vip-emacs-local-map) - (vip-change-mode-to-emacs): - * emulation/viper.el (viper-mode, viper-set-hooks) - (viper-major-mode-modifier-list): - * emulation/viper-init.el (viper-emacs-state-cursor-color): - * emulation/viper-keym.el (viper-emacs-kbd-map) - (viper-toggle-key): - * mail/feedmail.el (feedmail-queue-reminder) - (feedmail-queue-reminder-alist, feedmail-confirm-outgoing) - (feedmail-confirm-outgoing-timeout, feedmail-nuke-bcc) - (feedmail-nuke-resent-bcc, feedmail-fill-to-cc-fill-column) - (feedmail-sender-line, feedmail-force-binary-write) - (feedmail-from-line, feedmail-deduce-envelope-from) - (feedmail-x-mailer-line, feedmail-message-id-generator) - (feedmail-date-generator, feedmail-fiddle-plex-user-list) - (feedmail-enable-spray, feedmail-spray-this-address) - (feedmail-spray-address-fiddle-plex-list, feedmail-enable-queue) - (feedmail-queue-runner-confirm-global) - (feedmail-ask-before-queue-prompt) - (feedmail-ask-before-queue-reprompt) - (feedmail-prompt-before-queue-standard-alist) - (feedmail-prompt-before-queue-user-alist) - (feedmail-prompt-before-queue-help-supplement) - (feedmail-queue-use-send-time-for-message-id) - (feedmail-queue-default-file-slug, feedmail-queue-fqm-suffix) - (feedmail-mail-send-hook-splitter, feedmail-mail-send-hook) - (feedmail-mail-send-hook-queued) - (feedmail-confirm-addresses-hook-example) - (feedmail-last-chance-hook, feedmail-before-fcc-hook) - (feedmail-queue-runner-mode-setter) - (feedmail-queue-alternative-mail-header-separator) - (feedmail-queue-runner-message-sender) - (feedmail-buffer-eating-function, feedmail-binmail-template) - (feedmail-run-the-queue-no-prompts) - (feedmail-run-the-queue-global-prompt) - (feedmail-queue-subject-slug-maker, feedmail-fiddle-header) - (feedmail-envelope-deducer, feedmail-fiddle-date) - (feedmail-default-message-id-generator) - (feedmail-fiddle-message-id, feedmail-fiddle-x-mailer) - (feedmail-fiddle-spray-address, feedmail-deduce-address-list): - * mail/vms-pmail.el (vms-pmail-save-and-exit, vms-pmail-abort) - (vms-pmail-setup): - * play/dunnet.el (dun-help): - * play/handwrite.el (handwrite): - * play/hanoi.el (hanoi-unix-64): - * progmodes/idlwave.el (idlwave-rescan-asynchronously): - * textmodes/enriched.el (fixed): - * textmodes/org.el (org-file-apps) - (org-emphasis-regexp-components, org-emphasis-alist): - * textmodes/texinfmt.el (batch-texinfo-format): - Fix typos in docstrings. - -2006-11-05 Juanma Barranquero - - * loadhist.el (read-feature): Don't complete features not loaded - from a file (which make `unload-feature' to fail). - -2006-11-05 Reiner Steib - - * add-log.el (add-log-time-zone-rule): Mark as safe-local-variable. - -2006-11-05 Chong Yidong - - * startup.el (command-line-1): Kill emacs if the last frame is - deleted while evaluating the command-line arguments. - -2006-11-05 Richard Stallman - - * startup.el (init-file-had-error): Add doc string. - (fancy-splash-text, fancy-splash-head, fancy-splash-tail): - Use fixed-width font for keyboard key descriptions. - - * cus-edit.el (custom-save-all): Error if saving in .emacs - and it had an error when loaded. - - * dired-aux.el (dired-copy-file-recursive): Catch errors - from recursive copies in the loop, around the recursive call. - -2006-11-05 Micha,Ak(Bl Cadilhac - - * battery.el (battery-linux-proc-acpi): Search an ac_adapter in - `/proc/acpi/ac_adapter/*'. Ditto for the thermometers in - `/proc/acpi/thermal_zone/*'. - (battery-search-for-one-match-in-files): New. Search a regexp in - the content of some files. - -2006-11-05 Martin Rudalics - - * window.el (mouse-autoselect-window-now): Remove variable. - (mouse-autoselect-window-state): New variable. - (mouse-autoselect-window-start, mouse-autoselect-window-cancel) - (mouse-autoselect-window-select, handle-select-window): - Rewritten to make mouse-autoselect-window-timer a one-shot timer. - Suspend delayed autoselection during menu or popup dialog. - - * info-look.el (info-lookup-guess-custom-symbol): New function - for retrieving symbol at point in custom buffers. - (top level) : Add backquote and - comma to ignored characters in regexps of help specifications - for emacs-lisp-mode and lisp-interaction-mode. This permits - looking up symbols in `...' and after a comma. Add help - specifications for custom-mode and help-mode. - -2006-11-04 Eli Zaretskii - - * mail/rmail.el (rmail-redecode-body): New optional argument RAW. - Don't encode body if RAW is non-nil, or if the old encoding is - identical to the new encoding, or if the body contains only - eight-bit-* characters. - -2006-11-04 Yoni Rabkin Katzenell (tiny change) - - * faces.el (faces-sample-overlay, describe-face): Revert last changes. - (faces-sample-overlay): Remove variable. - (describe-face): Insert sample text in the face being described. - -2006-11-04 Martin Rudalics - - * whitespace.el (whitespace-indent-regexp): Make this match any - multiples of eight spaces near the beginning of a line. - (whitespace-buffer): Use `remove-overlays' instead of - `whitespace-unhighlight-the-space' and `overlay-recenter' to - speed up overlay handling. - (whitespace-buffer-leading, whitespace-buffer-trailing): - Make these functions highlight the text removed by - `whitespace-buffer-leading-cleanup' and - `whitespace-buffer-trailing-cleanup' respectively. - (whitespace-buffer-search): Use `with-local-quit'. - Move `format' out of loop to speed up scanning larger buffers. - (whitespace-unhighlight-the-space): Remove `remove-hook' since - that function is never added to a hook. - (whitespace-spacetab-regexp, whitespace-ateol-regexp) - (whitespace-buffer-leading-cleanup) - (whitespace-refresh-rescan-list): Fix docstrings. - -2006-11-03 Ken Manheimer - - * allout.el (allout-during-yank-processing): Cue for inhibiting - aberrance processing during yanks. - (allout-doublecheck-at-and-shallower): Reduce the limit to reduce - the amount of yanked topics that can be aberrant. - (allout-do-doublecheck): Encapsulate this multiply-used recipe in - a function, and supplement with inihibition of doublechecking - during yanks. - (allout-beginning-of-line, allout-next-heading) - (allout-previous-heading, allout-goto-prefix-doublechecked) - (allout-back-to-current-heading, allout-next-visible-heading) - (allout-next-sibling): Use new allout-do-doublecheck function. - (allout-next-sibling): Ensure we made progress when returning - other than nil. - (allout-rebullet-heading): Preserve text property annotations - indicating the text was hidden, if it was. - (allout-kill-line): Remove any added was-hidden annotations. - (allout-kill-topic): Remove any added was-hidden annotations. - (allout-annotate-hidden): Inhibit adding was-hidden text - properties to the undo list. - (allout-deannotate-hidden): New function to remove was-hidden - annotation. - (allout-hide-by-annotation): Use new allout-deannotate-hidden. - (allout-remove-exposure-annotation): Replace by - allout-deannotate-hidden. - (allout-yank-processing): Signal that yank processing is happening - with allout-during-yank-processing. Also, wrap - allout-unprotected's closer to the text changes, for easier - debugging. We need to inhibit-field-text-motion explicitly, in - lieu of the encompassing allout-unprotected. - (outlineify-sticky): Adjust criteria for triggering new outline - decorations to presence or absence of any topics, not just a topic - at the beginning of the buffer. - -2006-11-03 Juanma Barranquero - - * bs.el (bs--show-all, bs--redisplay): - * cus-edit.el (custom-unlispify-menu-entries) - (custom-unlispify-tag-names, custom-prompt-variable): - * expand.el (expand-pos): - * speedbar.el (speedbar-generic-list-tag-p): - * wid-edit.el (widget-image-enable): - * emacs-lisp/checkdoc.el (checkdoc-rogue-space-check-engine): - * emacs-lisp/find-func.el (find-function-noselect) - (find-function, find-variable-noselect, find-variable) - (find-definition-noselect, find-face-definition): - * mail/rmail-spam-filter.el (rsf-scanning-messages-now): - * net/eudc-vars.el (eudc-expansion-overwrites-query): - * progmodes/ada-xref.el (ada-find-in-ali): - * textmodes/flyspell.el (flyspell-check-tex-math-command): - * textmodes/org.el (org-copy-subtree): - * textmodes/table.el (table--row-column-insertion-point-p): - Use "non-nil" in docstrings. - -2006-11-03 Mark Davies - - * sort.el (sort-columns): Set the field separator to tab; on - NetBSD, sort complains if "\n" is used as field separator. - -2006-11-03 NIIMI Satoshi - - * emacs-lisp/pp.el (pp-eval-last-sexp): Evaluate target sexp. - -2006-11-02 Stefan Monnier - - * server.el (server-auth-key): Remove. Replace by a process-property. - (server-start): Don't remove the file of the previous process, but - instead clear out the place for the new file. - (server-start): Set the :auth-key property. - (server-process-filter): Use the :auth-key property. - -2006-11-02 Carsten Dominik - - * textmodes/org.el (org-mode-map): No longer copy - `outline-mode-map' explicitly - this is already done by - `define-derived-mode'. - -2006-11-02 Juanma Barranquero - - * server.el (server-visit-files): Use `when'. - (server-process-filter): When authentication fails, send error - message to client. Wrap `process-send-region' in `ignore-errors' - instead of `condition-case', and remove misleading comment. - -2006-11-01 Juri Linkov - - * simple.el (yank): Doc fix. - -2006-11-01 Stefan Monnier - - * server.el: Try and fit within 80 columns. - (server-start): Make the auth file unreadable by other users. - -2006-10-31 Andreas Seltenreich - - * battery.el (battery-linux-proc-acpi): Prevent range error when - `full-capacity' is 0. - -2006-10-31 Yoni Rabkin Katzenell (tiny change) - - * faces.el (faces-sample-overlay): New defvar. - (faces-sample-overlay): New function to show face sample text. - (describe-face): Use it. - -2006-10-31 Stephen Leake - - * progmodes/ada-stmt.el: Change maintainer, apply - whitespace-cleanup, checkdoc. - (ada-func-or-proc-name): Add doc string. - - * progmodes/ada-prj.el (ada-prj-new): Change maintainer, apply - whitespace-cleanup, checkdoc. Minor improvements to many doc - strings and comments. - (ada-prj-display-page): Change buffer name to more accurately - reflect function. - - * progmodes/ada-xref.el: Change maintainer, apply - whitespace-cleanup, checkdoc. Minor improvements to many doc - strings and comments. Don't look for `gvd' or `ddd' debuggers. - (ada-compile-current): Don't add newlines to commands. - -2006-10-31 Juanma Barranquero - - * server.el: Add support for TCP sockets. - (server-use-tcp, server-host, server-auth-dir): New options. - (server-auth-key): New variable. - (server-ensure-safe-dir): Create nonexistent parent dirs. - Ignore Unix-style file modes on Windows. - (server-start): Crete a TCP or Unix socket according to the value - of `server-use-tcp'. For TCP sockets, create the id/auth file in - `server-auth-dir' directory. - (server-process-filter): Delete process if authentication - fails (which never happens for Unix sockets). - -2006-10-30 David Kastrup - - * subr.el (add-to-list): Don't continue checking if a match has - been found. - -2006-10-30 Chong Yidong - - * tutorial.el: Move defvars to avoid bytecomp warnings. - (tutorial--find-changed-keys): Check if viper-current-state is - bound before using it. - (help-with-tutorial): Check if viper-tutorial is defined before - using it. - -2006-10-30 Lennart Borgman - - * help-fns.el (help-with-tutorial): Move to tutorial.el. - - * tutorial.el: New file. - (help-with-tutorial): Move here from help-fns.el. Add help for - rebound keys. Fix resume of tutorial. - (tutorial--describe-nonstandard-key, tutorial--sort-keys) - (tutorial--find-changed-keys, tutorial--display-changes) - (tutorial--saved-dir, tutorial--saved-file) - (tutorial--save-tutorial): New functions to support the changes in - help-with-tutorial. - -2006-10-30 Kenichi Handa - - * files.el (revert-buffer): If a unibyte buffer is being reverted - with a coding system for multibyte, set buffer multibyte before - calling insert-file-contents. - -2006-10-30 Stefan Monnier - - * server.el (server-select-display): Use a dummy buffer to detect when - the frame is later used. - (server-select-display): New function. - (server-process-filter): Use it to detect unused temp frames. - -2006-10-29 Stephen Leake - - * progmodes/ada-mode.el: Change maintainer, apply - whitespace-clean, checkdoc. Minor improvements to many doc strings. - (ada-mode-version): New function. - (ada-create-menu): Menu operations are available for all supported - compilers. - -2006-10-29 Lars Hansen - - * net/tramp.el (with-parsed-tramp-file-name): Correct debug spec. - Highlight as keyword. - (tramp-do-copy-or-rename-file): Correct data for 'file-already-exists. - Don't call tramp-method-out-of-band-p for local files. - (tramp-touch): Quote file name. - -2006-10-28 Glenn Morris - - * calendar/calendar.el (cal-html-cursor-month) - (cal-html-cursor-year): Add autoloads for this new package. - (calendar-mode-map): Bind cal-html-cursor-month, cal-html-cursor-year. - -2006-10-28 Anna M. Bigatti - - * calendar/cal-html.el: New file. - -2006-10-28 Chong Yidong - - * emacs-lisp/authors.el (authors-aliases): Update. - -2006-10-27 Chong Yidong - - * version.el (emacs-version): Bump version number to 22.0.90. - -2006-10-26 John W. Eaton - - * progmodes/octave-inf.el (inferior-octave-has-built-in-variables): - New defvar. - (inferior-octave-resync-dirs): Check to see whether Octave has - built-in variables and set inferior-octave-has-built-in-variables. - Check inferior-octave-has-built-in-variables to decide whether to - send commands that set built-in variables or call functions to - change Octave's behavior. - Send "disp (pwd ())" to Octave instead of just "pwd". - (inferior-octave-startup): Send "more off" to Octave instead of - "page_screen_output = 0". - -2006-10-26 Chong Yidong - - * emacs-lisp/cl-indent.el (lisp-indent-259): Indent nil's in the - pattern normally. - -2006-10-26 Nick Roberts - - * bindings.el (mode-line-mode-menu): Remove bindings for global - minor modes (line/column number) as they are on the menubar. - -2006-10-25 Juanma Barranquero - - * term/w32-win.el (x-handle-name-switch): Doc fix. - (w32-standard-fontset-spec): Fix typo in docstring. - - * midnight.el (midnight-buffer-display-time): Doc fix. - (clean-buffer-list-kill-never-buffer-names): Add "*server*". - -2006-10-23 Michael Kifer - - * emulation/viper-cmd.el (viper-prefix-arg-com): Define gg as G0. - - * emulation/viper-ex.el (ex-read): Quote file argument. - - * ediff-diff.el (ediff-same-file-contents): Expand file names. - - * ediff-mult.el (ediff-append-custom-diff): Quote shell file arguments. - -2006-10-22 Martin Rudalics - - * textmodes/flyspell.el (flyspell-check-region-doublons): - Fix last fix. - -2006-10-23 Nick Roberts - - * bindings.el (mode-line-mode-menu): List global minor modes - before local ones. - -2006-10-23 Kim F. Storm - - * subr.el (add-to-list): Optimize if compare-fn is `eq' or `eql'. - (sit-for): If last command was a prefix arg, add the read-ahead - event to unread-command-events as (t . EVENT) so it will be added - to this-command-keys by read-key-sequence. - -2006-10-22 Martin Rudalics - - * textmodes/flyspell.el (flyspell-word): Skip past all previous - whitespace when checking doublons. - (flyspell-check-region-doublons): Fix doublon regexp. - (flyspell-highlight-incorrect-region): Highlight doublons using - flyspell-duplicate face. - - * progmodes/cperl-mode.el (cperl-invalid-face): Fix defcustom. - -2006-10-22 John Wiegley - - * progmodes/python.el (python-use-skeletons): python-mode was - auto-inserting templates (for those with abbrev-mode on), not only - by default -- *but without a configuration variable to disable - it*. This rendered python-mode completely useless for me, so I - have added `python-use-skeletons', which is now off by default. - -2006-10-22 Chong Yidong - - * progmodes/cperl-mode.el (cperl-mode): Don't assume - font-lock-multiline is auto-local (it's not). - (cperl-windowed-init): Ensure that cperl-font-lock-multiline is - initialized before calling cperl-init-faces. - -2006-10-22 Nick Roberts - - * progmodes/gdb-ui.el (gdb-info-stack-custom): Don't try to give - gdb-stack-position a value when there is no fringe. - - * bindings.el (mode-line-mode-menu): Disable auto-revert-tail-mode - indicator if not visiting a file. - -2006-10-20 David Kastrup - - * window.el (kill-buffer-and-window): Fix a bug where an aborted - operation would still cause some window to collapse later. - -2006-10-20 Stefan Monnier - - * vc.el (vc-switch-backend): Try to be more careful with unwanted - side-effect due to mixing various backends's file properties. - - * vc-svn.el (vc-svn-parse-status): Remove unused arg `localp'. - Add arg `filename' instead. Don't set vc-backend if `filename' is set. - Return `filename's status if applicable. Update callers. - -2006-10-19 Kenichi Handa - - * international/kkc.el (kkc-region): When a key sequence is not - defined, append (this-single-command-raw-keys) to - unread-input-method-events. - -2006-10-19 Juanma Barranquero - - * progmodes/ada-mode.el (ada-in-string-p): Doc fix. - -2006-10-19 YAMAMOTO Mitsuharu - - * version.el (emacs-version): Use mac-carbon-version-string. - - * term/macterm.el (res-geometry): Apply 2006-10-18 change for x-win.el. - -2006-10-19 Jan Dj,Ad(Brv - - * select.el (ccl-check-utf-8, string-utf-8-p): New functions (by - Kenichi Handa). - (xselect-convert-to-string): Decline requests for UTF8_STRING if - the selection is not UTF-8. - -2006-10-18 Juanma Barranquero - - * progmodes/ada-mode.el (ada-83-string-keywords) - (ada-last-which-function-line ada-no-auto-case, ada-indent-region) - (ada-which-compiler, ada-align-modes, ada-adjust-case-buffer) - (ada-looking-at-semi-private, ada-get-body-name): - Fix typos in docstrings. - (ada-create-case-exception, ada-create-case-exception-substring): - Fix typos in error messages. - (ada-goto-matching-end, ada-narrow-to-defun): Doc fixes. - -2006-10-18 Jan Dj,Ad(Brv - - * term/x-win.el (res-geometry): Don't set geometry from Xresources - to default-frame-alist if default-frame-alist already contains - width/height. - -2006-10-18 Richard Stallman - - * emacs-lisp/pp.el (pp-eval-expression): Use `X' to read value. - Non-interactive arg is the value, not the expression. - - * simple.el (read-expression-map): Just set it, no defvar. - - * subr.el (insert-for-yank-1): If last inserted char has - properties, mark them as rear-nonsticky. - - * recentf.el (recentf-mode): Doc fix. - - * facemenu.el (facemenu-add-new-face): Defend against symbol - that isn't a face name. - - * dired-aux.el (dired-do-copy): Doc fix. - -2006-10-18 Chong Yidong - - * simple.el (line-move-1): Ignore fields when moving to the - beginning of line to avoid getting point stuck. - -2006-10-18 Martin Rudalics - - * textmodes/flyspell.el (flyspell-word-search-backward): - Set inhibit-point-motion-hooks to avoid looping due to intangibile - text. - -2006-10-16 Richard Stallman - - * help-fns.el (describe-function-1): Special case optimization - for self-insert-command. - -2006-10-16 Kim F. Storm - - * ido.el (ido-reread-directory): Work in `dir' mode too. - -2006-10-15 Martin Rudalics - - * textmodes/table.el: Require 'regexp-opt. - -2006-10-15 Lennart Borgman - - * progmodes/flymake.el (flymake-get-project-include-dirs-imp): - Use shell-quote-argument. - - * shell.el (explicit-bash-args): Likewise. - - * progmodes/ada-xref.el (ada-find-in-src-path): Likewise. - Use grep -E rather than egrep. - -2006-10-15 Micha,Ak(Bl Cadilhac - - * ido.el (ido-exhibit): Allow `-', `_', and trailing `$' in user id. - -2006-10-15 Kim F. Storm - - * filesets.el (filesets-run-cmd--repl-fn): Use shell-quote-argument. - -2006-10-14 Lennart Borgman - - * filesets.el (filesets-cmd-shell-command): Quote buffer-file-name - to protect whitespace and metacharacters from the shell. - -2006-10-13 Giorgos Keramidas (tiny change) - - * apropos.el (apropos-pattern-quoted): Fix a typo in a doc string. - -2006-10-13 Eli Zaretskii - - * subr.el (start-process-shell-command): Doc fix. - -2006-10-13 Andrea Russo (tiny change) - - * info-look.el : Allow [0-9] in - the regexp for Maxima symbols. - -2006-10-13 Stefan Monnier - - * vc-hooks.el (vc-ignore-dir-regexp): Make it into a defcustom. - (vc-find-root): Don't walk higher up than ~. - -2006-10-12 Chong Yidong - - * international/utf-8.el (utf-translate-cjk-load-tables): - Avoid clobbering last-coding-system-used during load. - -2006-10-12 Carsten Dominik - - * textmodes/reftex-global.el (reftex-create-tags-file): - Quote file arguments. - -2006-10-12 Richard Stallman - - * files.el (file-name-history): Add defvar. - (save-some-buffers-action-alist): Improve description strings. - -2006-10-12 Andreas Schwab - - * files.el (auto-mode-alist): Match change log file name also with - a dash before a numeric extension. - -2006-10-11 Ilya Zakharevich - - * progmodes/cperl-mode.el: Merge from upstream, upto version 5.22. - After 5.0: - (cperl-add-tags-recurse-noxs-fullpath): New function (for -batch mode). - - After 5.1: Major edit. Summary of most visible changes: - - - Multiple <. - Copyright message updated. - (cperl-init-faces): Work around a bug in `font-lock'. May slow - facification down a bit. - Misprint for my|our|local for old `font-lock' - "our" was not fontified same as "my|local". - Highlight variables after "my" etc even in - a middle of an expression. - Do not facify multiple variables after my etc - unless parentheses are present. - - After 5.5, 5.6 - (cperl-fontify-syntaxically): after-change hook could reset. - (cperl-syntax-done-to) to a middle of line; unwind to BOL. - - After 5.7: - (cperl-init-faces): Allow highlighting of local ($/). - (cperl-problems-old-emaxen): New variable (for the use of DOCSTRING). - (cperl-problems): Remove fixed problems. - (cperl-find-pods-heres): Recognize #-comments in m##x too. - Recognize charclasses (unless delimiter is \). - (cperl-fontify-syntaxically): Unwinding to safe was done in wrong order. - (cperl-regexp-scan): Update docs. - (cperl-beautify-regexp-piece): Use information got from regexp scan. - - After 5.8: - Major user visible changes: - Recognition and fontification of character classes in RExen. - Variable indentation of RExen according to groups. - - (cperl-find-pods-heres): Recognize POSIX classes in REx charclasses. - Fontify REx charclasses in variable-name face. - Fontify POSIX charclasses in "type" face. - Fontify unmatched "]" in function-name face. - Mark first-char of HERE-doc as `front-sticky'. - Reset `front-sticky' property when needed. - (cperl-calculate-indent): Indents //x -RExen accordning to parens level. - (cperl-to-comment-or-eol): Recognize ends of `syntax-type' constructs. - (cperl-backward-to-noncomment): Recognize stringy `syntax-type' - constructs. Support `narrow'ed buffers. - (cperl-praise): Remove a reservation. - (cperl-make-indent): New function. - (cperl-indent-for-comment): Use `cperl-make-indent'. - (cperl-indent-line): Likewise. - (cperl-lineup): Likewise. - (cperl-beautify-regexp-piece): Likewise. - (cperl-contract-level): Likewise. - (cperl-toggle-set-debug-unwind): New function. - New menu entry for this. - (fill-paragraph-function): Use when `boundp'. - (cperl-calculate-indent): Take into account groups when indenting RExen. - (cperl-to-comment-or-eol): Recognize # which end a string. - (cperl-modify-syntax-type): Make only syntax-table property non-sticky. - (cperl-fill-paragraph): Return t: needed for `fill-paragraph-function'. - (cperl-fontify-syntaxically): More clear debugging message. - (cperl-pod2man-build-command): Check (XEmacs) `Man-filter-list'. - (cperl-init-faces): More complicated highlight even on XEmacs (new). - Merge cosmetic changes from XEmacs. - - After 5.9: - (cperl-1+): Move to before the first use. - (cperl-1-): Likewise. - - After 5.10: - - This code may lock Emacs hard!!! Use at your own risk! - - (cperl-font-locking): New internal variable. - (cperl-beginning-of-property): New function. - (cperl-calculate-indent): Use `cperl-beginning-of-property' - instead of `previous-single-property-change'. - (cperl-unwind-to-safe): Likewise. - (cperl-after-expr-p): Likewise. - (cperl-get-here-doc-region): Likewise. - (cperl-font-lock-fontify-region-function): Likewise. - (cperl-to-comment-or-eol): Do not call `cperl-update-syntaxification' - recursively. - Bound `next-single-property-change' via `point-max'. - (cperl-unwind-to-safe): Bound likewise - (cperl-font-lock-fontify-region-function): Likewise. - (cperl-find-pods-heres): Mark as recursive for `cperl-to-comment-or-eol' - Initialization of `cperl-font-lock-multiline-start' could be - missed if the "main" fontification did not run due to the - keyword being already fontified. - (cperl-pod-spell): Return t from do-one-chunk function. - (cperl-map-pods-heres): Stop when the worker returns nil. - Call `cperl-update-syntaxification'. - (cperl-get-here-doc-region): Call `cperl-update-syntaxification'. - (cperl-get-here-doc-delim): Remove unused function. - - After 5.11: - - The possible lockup of Emacs (introduced in 5.10) fixed. - - (cperl-unwind-to-safe): `cperl-beginning-of-property' won't return nil. - (cperl-syntaxify-for-menu): New customization variable. - (cperl-select-this-pod-or-here-doc): New function. - (cperl-get-here-doc-region): Extra argument. - Do not adjust pos by 1. - - New menu entries - (Perl/Tools): Selection of current POD or HERE-DOC section. - (Debugging CPerl:) backtrace on fontification. - - After 5.12: - (cperl-cached-syntax-table): Use `car-safe'. - (cperl-forward-re): Remove spurious argument SET-ST. - Add documentation. - (cperl-forward-group-in-re): New function. - (cperl-find-pods-heres): Find and highlight (?{}) blocks in RExen - (XXXX Temporary (?) hack is to syntax-mark them as comment). - - After 5.13: - (cperl-string-syntax-table): Make { and } not-grouping - (Sometimes they ARE grouping in RExen, but matching them would only - confuse in many situations when they are not) - (beginning-of-buffer): Replace two occurrences with goto-char... - (cperl-calculate-indent): `char-after' could be nil... - (cperl-find-pods-heres): REx can start after "[" too. - Hightlight (??{}) in RExen too. - (cperl-maybe-white-and-comment-rex): New constant - (cperl-white-and-comment-rex): Likewise. - XXXX Not very efficient, but hard to make - better while keeping 1 group. - - After 5.13: - (cperl-find-pods-heres): $foo << identifier() is not a HERE-DOC. - Likewise for 1 << identifier. - - After 5.14: - (cperl-find-pods-heres): Different logic for $foo .= < - - * dnd.el (dnd-handle-one-url): Fix typo in doc-string. - * help-at-pt.el (scan-buf-move-to-region): Likewise. - * longlines.el (longlines-window-change-function): Likewise. - * simple.el (undo-ask-before-discard): Likewise. - * wid-edit.el (widget-field-prompt-internal) - (widget-documentation-link-p): Likewise. - -2006-10-10 Stefan Monnier - - * progmodes/sh-script.el (sh-get-kw): | is not among the allowed chars - for a keyword. - -2006-10-09 Stefan Monnier - - * newcomment.el (comment-valid-prefix-p): Make the check - more thorough. From an idea by Martin Rudalics . - (comment-indent-new-line): Adjust call. - -2006-10-09 Ken Manheimer - - * allout.el (allout-back-to-current-heading): Base on lower-level - routines to get proper disqualification of aberrant topics. - -2006-10-09 Richard Stallman - - * textmodes/two-column.el (2C-two-columns): Doc fix. - -2006-10-09 Kim F. Storm - - * shell.el (explicit-csh-args, explicit-bash-args): Add comment - about implicit use. - -2006-10-08 Richard Stallman - - * textmodes/two-column.el (2C-two-columns): Doc fix. - -2006-10-08 Reiner Steib - - * files.el: Mark `buffer-read-only' as safe-local-variable. - -2006-10-08 Nick Roberts - - * progmodes/gdb-ui.el (gdb-speedbar-expand-node): - Burp if GUD buffer has been killed. - -2006-10-07 Stefan Monnier - - * completion.el (add-completions-from-c-buffer): - Don't presume an error's second element is a string. - Use looking-at rather than buffer-substring + member. - -2006-10-07 Eli Zaretskii - - * mail/rmail.el (rmail-redecode-body): If the old encoding is - `undecided', call find-coding-systems-region to find a proper - non-trivial encoding. - (rmail-mime-charset-pattern): Allow a TAB between "Content-Type" - and "text/plain". - -2006-10-07 Kevin Ryde - - * textmodes/reftex-vars.el (defgroup reftex): Update home page - url-link. - - * strokes.el (defgroup strokes): Remove invalid url-link. - -2006-10-07 Magnus Henoch - - * autoinsert.el (auto-insert-alist): Doc fix. - -2006-10-07 Johan Bockg,Ae(Brd - - * mouse-sel.el (mouse-insert-selection-internal): - Use insert-for-yank, so that yank handlers are run. - -2006-10-07 Kim F. Storm - - * ido.el (ido-file-extension-aux): Fix comparison. - -2006-10-06 Kim F. Storm - - * ido.el (ido-wide-find-dirs-or-files): Use shell-quote-argument. - -2006-10-05 Juanma Barranquero - - * emacs-lisp/advice.el (ad-remove-advice, ad-parse-arglist) - (ad-make-mapped-call): Use `let', not `let*'. - -2006-10-05 Chong Yidong - - * international/mule-cmds.el (coding-system-change-eol-conversion): - Ensure the coding system is initialized before calling - coding-system-eol-type. - -2006-10-04 Carsten Dominik - - * textmodes/org.el (org-rm-props, org-activate-plain-links) - (org-activate-angle-links, org-activate-dates) - (org-activate-target-links, org-activate-camels) - (org-activate-tags): Add `rear-nonsticky' text property to avoid - textproperty keymaps from being active beyond the end of a line. - (org-unfontify-region): Also remove `rear-nonsticky' property. - -2006-10-04 Kenichi Handa - - * international/code-pages.el (next): Table fixed. - -2006-10-04 Stefan Monnier - - * progmodes/sh-script.el (sh-prev-thing): Remove (forward-char 1) now - that it's been made unnecessary by removing narrowing. - -2006-10-03 Stefan Monnier - - * progmodes/sh-script.el (sh-prev-thing): Massage to untangle the - control flow a bit, simplify another bit, and add comments. - -2006-10-03 David Kastrup - - * help.el (describe-mode): For clicks on mode-line, use "@" - interactive argument to get the major mode of the click instead of - the current buffer. - - * isearch.el (isearch-mouse-2): Use new semantics of `key-binding' - in order to better redirect mouse-2 clicks. Also allow default - bindings to apply. - -2006-10-03 Kim F. Storm - - * emacs-lisp/cl.el (pushnew-internal): Remove defvar. - (pushnew): Fix last change. - -2006-10-03 Denis St,A|(Bnkel (tiny change) - - * ibuf-ext.el (eval, view-and-eval) : - Use the interactive spec of `eval-expression'. - -2006-10-02 Michael Welsh Duggan - - * progmodes/sh-script.el (sh-prev-thing): Fix last change. - -2006-10-02 MIYOSHI Masanori (tiny change) - - * mail/smtpmail.el (smtpmail-try-auth-methods): Fix typo in - 2006-09-28 commit. - -2006-10-02 Kenichi Handa - - * international/code-pages.el (iso-8859-6): Table fixed. - -2006-10-01 Chris Moore - - * dired.el (dired-build-subdir-alist): Fix previous change. - -2006-10-01 Johan Bockg,Ae(Brd - - * simple.el (undo-elt-crosses-region): Fix the inequalities. - -2006-10-01 Stefan Monnier - - * emacs-lisp/find-func.el (find-function-regexp): Don't match - "define-button-type". - - * pcvs.el (cvs-update-header): Fix handling of extra newlines so that - they don't keep accumulating. - -2006-10-01 Bob Rogers (tiny change) - - * ffap.el (ffap-rfc-path): Change the address of the RFC - repository to ftp.rfc-editor.org, as ds.internic.net seems to be gone. - -2006-10-01 Stephen Berman - - * allout.el (allout-expose-topic): Rectify implementation of "+" - spec, so that bodies are not exposed with headlines. - -2006-10-01 Ken Manheimer - - * allout.el (allout-current-depth): Do aberrent check only at or - below doublecheck depth. - (allout-chart-subtree): Make it explicit that LEVELS being nil - means unlimited depth. Drop undocumented support for LEVELS value - t meaning unlimited depth. (This is consistent with - allout-chart-to-reveal, but contrary to allout-show-children, - which needs to use nil to default to depth of 1.) - (allout-goto-prefix-doublechecked): Wrap long docstring line. - (allout-chart-to-reveal): Be explicit in docstring about meaning - of nil LEVELS, and drop support for LEVELS value t. - (allout-show-children): Translate the level spec used by this - routine to that used by allout-chart-subtree and - allout-chart-to-reveal. - (allout-show-to-offshoot): Retry once when stuck, after opening - subtree - improvements in discontinuity handling likely will - enable progress. - -2006-09-30 Chong Yidong - - * wid-edit.el (widget-button-click-moves-point): New variable. - (widget-button-click): If widget-button-click-moves-point is - non-nil, set point after performing the button action. - - * cus-edit.el (custom-mode): Set widget-button-click-moves-point. - -2006-09-30 Martin Rudalics - - * files.el (find-file-existing): Modify to not allow wildcards. - -2006-09-30 Johan Bockg,Ae(Brd - - * simple.el (undo-more): When undo information for the region is - exhausted, say "No further undo information FOR REGION". - -2006-09-30 Michael Welsh Duggan - - * progmodes/sh-script.el (sh-prev-thing): - Take `sh-leading-keywords' into account. - -2006-09-29 Glenn Morris - - * custom.el (defcustom): Doc fix. - - * calendar/calendar.el (european-calendar-style): - Call european-calendar or american-calendar as needed when set. - (diary-view-entries, list-calendar-holidays): Move autoloads - before use. - -2006-09-29 Juri Linkov - - * progmodes/cperl-mode.el (cperl-after-expr-p): Don't move point - to nil if there is no previous property change. - -2006-09-29 Micha,Ak(Bl Cadilhac - - * cus-edit.el (custom-save-all): Switch to emacs-lisp mode before - saving anything to be sure that `forward-sexp' behaves correctly. - -2006-09-29 Chong Yidong - - * simple.el (line-move-finish): Ignore field boundaries if the - initial and final points have the same `field' property. - -2006-09-29 Kim F. Storm - - * ido.el (ido-file-internal): Only bind minibuffer-completing-file-name - to t while calling ido-read-internal. - -2006-09-29 Carsten Dominik - - * textmodes/org.el (org-file-remote-p): Get regexp from list. - (org-archive-subtree): Remove erraneous `]' from character list. - -2006-09-28 Jonathan Yavner - - * ses.el (ses-in-print-area, ses-goto-data, ses-load) - (ses-reconstruct-all): Make undo of "insert row" work by keeping - markers for data-area and parameters-area. - -2006-09-28 Stefan Monnier - - * progmodes/make-mode.el (makefile-mode): Don't disable jit-lock. - - * font-lock.el (font-lock-after-change-function): Refontify next line - as well if end is at BOL. - (font-lock-extend-jit-lock-region-after-change): Be more careful to - only extend the region as much as needed. - -2006-09-28 Richard Stallman - - * comint.el (comint-mode): Bind font-lock-defaults non-nil. - - * subr.el (insert-for-yank-1): Handle `font-lock-face' specially. - - * international/mule.el (after-insert-file-set-coding): - If VISIT, don't let set-buffer-multibyte make undo info. - -2006-09-28 Osamu Yamane (tiny change) - - * mail/smtpmail.el (smtpmail-try-auth-methods): Do not break long - lines in base64-encoded authentication response. - -2006-09-26 Vinicius Jose Latorre - - * progmodes/ebnf2ps.el: Doc fix. Implement arrow spacing and scaling. - (ebnf-version): New version 4.3. - (ebnf-arrow-extra-width, ebnf-arrow-scale): New options. - (ebnf-prologue): Adjust PostScript programming. - (ebnf-begin-file, ebnf-insert-ebnf-prologue, ebnf-terminal-dimension1) - (ebnf-repeat-dimension, ebnf-except-dimension): Adjust code. - -2006-09-26 Stefan Monnier - - * jit-lock.el (jit-lock-force-redisplay): Rename from - jit-lock-fontify-again, and undo the mistaken change I've just done. - - * jit-lock.el (jit-lock-fontify-now): Don't fontify the empty text. - (jit-lock-fontify-again): Don't refontify text that's not displayed. - -2006-09-26 Kenichi Handa - - * startup.el (display-splash-screen): Allow a prefix argument. - -2006-09-25 Jason Rumney - - * subr.el (shell-quote-argument): Use DOS logic for Windows - shells with DOS semantics. - -2006-09-24 Richard Stallman - - * progmodes/compile.el (compilation-goto-locus-delete-o): New fn. - (compilation-goto-locus): Use compilation-goto-locus-delete-o - to delete the overlay. Put it on pre-command-hook. - - * emacs-lisp/timer.el (timer-max-repeats): Doc fix. - - * startup.el (fancy-splash-screens, normal-splash-screen): - Call the splash buffer *About GNU Emacs*. - - * simple.el (next-error-highlight, next-error-highlight-no-select): - Default to 0.5. - (yank-excluded-properties): Add `fontified'. - - * font-lock.el (font-lock-compile-keywords): Allow value of - syntax-begin-function to enable paren-column-0 highlighting. - -2006-09-24 Chris Moore - - * dired.el (dired-build-subdir-alist): When file ends in colon, - don't exit the loop, just disregard that file. - -2006-09-24 Chong Yidong - - * simple.el (line-move-finish): Handle corner case for fields in - continued lines. - (line-move-1): Remove flawed test for that case. - -2006-09-24 Ken Manheimer - - * icomplete.el (icomplete-simple-completing-p): Use the correct - name for the new variable, `icomplete-with-completion-tables'. - (file local variables): Remove superfluous setting. - -2006-09-23 Jeff Miller (tiny change) - - * calendar/appt.el (appt-check): Fix typo for appointments just - after midnight. - -2006-09-23 Chong Yidong - - * help.el (describe-key-briefly, describe-key): Don't expect an - extra up event if a down-event is generated by a popup menu. - -2006-09-23 Michal Nazarewicz (tiny change) - - * textmodes/ispell.el (ispell-change-dictionary): Don't check the - local dictionary when changing the global dictionary. - -2006-09-23 Ken Manheimer - - * icomplete.el (icomplete-with-completion-tables): List of - specialized completion tables with which icomplete should - operate. Include the new `internal-complete-buffer', so icomplete - works with interactive buffer-selection. - (icomplete-simple-completing-p): Add acceptance of specialized - completion tables listed in icomplete-with-completion-tables. - -2006-09-23 YAMAMOTO Mitsuharu - - * frame.el (focus-follows-mouse): Set default to nil on Mac. - - * startup.el (command-line): Use `custom-reevaluate-setting' for - `focus-follows-mouse'. - -2006-09-22 Richard Stallman - - * cus-edit.el (custom-buffer-create-internal): In `emacs -q', - explain why Save is not available. - -2006-09-22 Juanma Barranquero - - * woman.el (woman0-so): Use `let*', not `let'. - (woman-horizontal-line): Remove unbalanced parenthesis. - -2006-09-22 Stefan Monnier - - * woman.el: Make sure all the end-of-region markers we use have - a non-nil insertion-type. - (woman0-so): Move things around so we can use copy-marker. - (woman0-roff-buffer, woman2-process-escapes-to-eol, woman2-roff-buffer): - Adjust marker type. - (woman2-process-escapes): Check marker type. - (woman-horizontal-line): Dispense with the use of a marker. - -2006-09-22 Jay Belanger - - * calc/calc-lang.el: Add Greek letters to math-variable-table - property of tex. - -2006-09-22 Chong Yidong - - * files.el (save-some-buffers-action-alist): Display diff in view-mode. - -2006-09-22 Masatake YAMATO - - * add-log.el (add-log-current-defun): Use `forward-sexp' - instead of `forward-word' to pick c++::symbol. - Reported by Guanpeng Xu . - -2006-09-22 Kenichi Handa - - * bindings.el: Fix setting self-insert-command for multibyte - characters in global-map. - -2006-09-21 David Kastrup - - * mouse.el (mouse-posn-property): Fix typo for `event-start' in - doc string. - -2006-09-21 Kenichi Handa - - * language/european.el ("Latin-1"): Add windows-1252 to - coding-priority. - ("German"): Likewise. - -2006-09-21 Kim F. Storm - - * emacs-lisp/cl-macs.el (member*): Use memql instead of complex code. - Suggested by Miles Bader. - - * emacs-lisp/cl.el (pushnew): Rework 2006-09-10 change. Use memql - instead of add-to-list in the simple case. - -2006-09-20 Kenichi Handa - - * isearch.el (isearch-process-search-char): Cancel the previous change. - (isearch-search-string): New function. - (isearch-search): Use isearch-search-string. - (isearch-lazy-highlight-search): Likewise. - -2006-09-20 Vinicius Jose Latorre - - * lpr.el (lpr-page-header-switches): Insert `*' at beginning of doc - string to become an option. - -2006-09-20 Stefan Monnier - - * files.el (find-buffer-visiting): Don't get fooled by a nil inode. - -2006-09-20 Kim F. Storm - - * simple.el (line-move-partial): Call pos-visible-in-window-p with - position t instead of trying both window-end and window-end - 1. - -2006-09-20 Carsten Dominik - - * textmodes/org.el (org-scan-tags): Find end of subtrees also in - hidden trees. - -2006-09-20 David Kastrup - - * mouse.el (mouse-posn-property): Improve doc string. - (mouse-on-link-p): Change buffers for function calls on links. - - * menu-bar.el (clipboard-yank): Bomb out in interactive use if - buffer is read-only. - -2006-09-20 Ken Manheimer - - * allout.el (allout-unprotected): Let inhibit-read-only only when - buffer-read-only isn't set. - (allout-annotate-hidden): Enable topic annotation during copies even - when the buffer is read-only, eg for topic copies. Ensure that the loop - advances, even when the span extends beyond the deletion region. - (allout-toggle-subtree-encryption): Use allout-structure-added-hook - rather than allout-exposure-changed-hook, as a stronger assertion. - (allout-keybindings-list): Add bindings for - allout-copy-line-as-kill and allout-copy-topic-as-kill. - (allout-copy-line-as-kill, allout-copy-topic-as-kill): - Copy wrappers for allout-kill-line and allout-kill-topic. - (allout-listify-exposed): Position correctly to accumulate lines. - -2006-09-19 Chong Yidong - - * simple.el (line-move-1): Escape field boundaries occurring - exactly at point. Update goal column if constrained to a field. - (line-move-finish): Escape field boundaries occurring exactly at point. - -2006-09-19 Stefan Monnier - - * mouse.el (mouse-on-link-p): Tentatively fix last change. - (mouse-drag-vertical-line): Remove unused var `wconfig'. - -2006-09-19 Kim F. Storm - - * help.el (describe-key-briefly, describe-key): Simplify printing - of descriptions by using format and %S. Fix "is undefined" - messages to say "at that spot" for mouse events. - - * simple.el (line-move-partial): Optimize. Try window-line-height - before posn-at-point to get vpos of current line. - -2006-09-18 Michael Kifer - - * emulation/viper.el: Bump up version/date of update to reflect the - substantial changes done in August 2006. - - * emulation/viper-cmd.el (viper-next-line-at-bol): Make sure button-at, - push-button are defined. - - * ediff-util.el (ediff-add-to-history): New function. - - * ediff.el: Use ediff-add-to-history instead of add-to-history. - -2006-09-18 Wolfgang Jenkner (tiny change) - - * textmodes/conf-mode.el (conf-space-mode): Doc fix. - Delete duplicate make-local-variable form. - (conf-space-keywords): Add autoload cookie. - Fix typo (`keywords', not `keyword'). - -2006-09-18 Jan Dj,Ad(Brv - - * cus-start.el (all): Rename x-gtk-show-chooser-help-text to - x-gtk-file-dialog-help-text. Rename x-use-old-gtk-file-dialog - to x-gtk-use-old-file-dialog. - -2006-09-18 Richard Stallman - - * wid-edit.el (widget-button-click): Handle non-mouse-motion events - that might come in during mouse tracking. - -2006-09-18 Kim F. Storm - - * simple.el (line-move-partial): Rework 2006-09-15 change to use - new window-line-height function. Further optimize by not calling - pos-visible-in-window-p for window-end when window-line-height - returns useful information. - -2006-09-16 Richard Stallman - - * textmodes/conf-mode.el (conf-mode-map): Use conf-space-keywords cmd. - (conf-space-mode): Don't handle prefix arg. - Delete conf-space-keywords-override code. - Use add-hook. - (conf-space-keywords): New command. - (conf-space-mode-internal): Be careful with imenu-generic-expression. - Delete conf-space-keywords-override code. - (conf-space-keywords-alist): Doc fix. - (conf-space-font-lock-keywords): Doc fix. - (conf-space-keywords-override): Var deleted. - -2006-09-16 Chong Yidong - - * startup.el (fancy-splash-screens): Don't switch to the scratch - buffer; it may not be the next buffer. - -2006-09-16 Romain Francoise - - * saveplace.el (load-save-place-alist-from-file): Use expanded name - in both messages. - -2006-09-16 Slawomir Nowaczyk - - * progmodes/python.el (python-preoutput-filter): - Fix arg order to string-match. - -2006-09-16 Richard Stallman - - * obsolete/fast-lock.el (fast-lock-cache-data): Provide 2nd arg to - font-lock-compile-keywords. - - * font-lock.el (font-lock-compile-keywords): Rename optional arg - to SYNTACTIC-KEYWORDS and reverse the sense. All callers changed. - -2006-09-16 Jan Dj,Ad(Brv - - * cus-start.el (all): Add x-gtk-show-chooser-help-text. - - * select.el (xselect-convert-to-string): If UTF8_STRING is requested - and the data doesn't look like UTF8, send STRING instead. - -2006-09-16 Agust,Am(Bn Mart,Am(Bn - - * textmodes/flyspell.el (flyspell-check-region-doublons): - New function to detect duplicated words. - (flyspell-large-region): Use it. - -2006-09-16 Chong Yidong - - * simple.el (line-move-to-column): Revert 2006-08-03 change. - -2006-09-16 Eli Zaretskii - - * help.el (describe-prefix-bindings): Use let, not let*. - -2006-09-16 Ken Manheimer - - * allout.el (allout-regexp, allout-line-boundary-regexp) - (allout-bob-regexp): Correct grouping and boundaries to fix - backwards traversal. - (allout-depth-specific-regexp, allout-depth-one-regexp): - New versions that exploit \\{M\\} regexp syntax, to avoid geometric or - worse time in allout-ascend. - (allout-doublecheck-at-and-shallower): Identify depth threshold - below which topics are checked for and disqualified by containment - discontinuities. - (allout-hotspot-key-handler): Correctly handle multiple-key - strokes. Remove some unused variables. - (allout-mode-leaders): Clarify that mode-specific comment-start - will be used. - (set-allout-regexp): Correctly regexp-quote allout regexps to - properly accept alternative header-leads and primary bullets with - regexp-specific characters (eg, C "/*", mathematica "(*"). - Include new regular expressions among those configured. - (allout-infer-header-lead-and-primary-bullet): - Rename allout-infer-header-lead. - (allout-recent-depth): Manifest as a variable as well as a function. - (allout-prefix-data): Simplify into an inline instead of a macro, - assuming current match data rather than being explicitly passed - it. Establish allout-recent-depth value as well as - allout-recent-prefix-beginning and allout-recent-prefix-end. - (allout-aberrant-container-p): True when an item's immediate - offspring discontinuously contained. Useful for disqualifying - unintended topic prefixes, likely at low depths. - (allout-goto-prefix-doublechecked): Elaborate version of - allout-goto-prefix which disqualifies aberrant pseudo-items. - (allout-pre-next-prefix): Layer on top of lower-level routines, to - get disqualification of aberrant containers. - (allout-end-of-prefix, allout-end-of-subtree): Disqualify aberrant - containers. - (allout-beginning-of-current-entry): Position at start of buffer - when in container (depth 0) entry. - (nullify-allout-prefix-data): Invalidate allout-recent-* prefix data. - (allout-current-bullet): Strip text properties. - (allout-get-prefix-bullet): Use right match groups. - (allout-beginning-of-line, allout-next-heading): - Disqualify aberrant containers. - (allout-previous-heading): Disqualify aberrant containers, and - change to regular (rather than inline) function, to allow - self-recursion. - (allout-get-invisibility-overlay): Increment so progress is made - when the first overlay is not the sought one. - (allout-end-of-prefix): Disqualify aberrant containers. - (allout-end-of-line): Cycle something like allout-beginning-of-line. - (allout-mode): Make allout-old-style-prefixes (ie, enabling use with - outline.el outlines) functional again. Change the primary bullet - along with the header-lead - level 1 new-style bullets now work. - Engage allout-before-change-handler in mainline Emacs, not just - XEmacs, to do undo handling. - (allout-before-change-handler): Expose undo changes occurring in - hidden regions. Use allout-get-invisibility-overlay instead of - reimplementing it inline. - (allout-chart-subtree): Use start rather than end of prefix in - charts. Use allout-recent-depth variable. - (allout-chart-siblings): Disqualify aberrant topics. - (allout-beginning-of-current-entry): Position correctly. - (allout-ascend): Use new allout-depth-specific-regexp and - allout-depth-one-regexp for linear instead of O(N^2) or worse - behavior. - (allout-ascend-to-depth): Depend on allout-ascend, rather than - reimplementing an algorithm. - (allout-up-current-level): Depend on allout-ascend, rather than - reimplementing an algorithm. Return to start-point if we fail. - (allout-descend-to-depth): Use allout-recent-depth variable - instead of function. - (allout-next-sibling): On traversal of numerous intervening - topics, resort to economical allout-next-sibling-leap. - (allout-next-sibling-leap): Specialized version of - allout-next-sibling that uses allout-ascend cleverly, to depend on - a regexp search to leap large numbers of contained topics, rather - than arbitrarily many one-by-one traversals. - (allout-next-visible-heading): Disqualify aberrant topics. - (allout-previous-visible-heading): Position consistently when - interactive. - (allout-forward-current-level): Base on allout-previous-sibling - rather than (differently) reimplmenting the algorithm. Remove some - unused variables. - (allout-solicit-alternate-bullet): Present default choice stripped - of text properties. - (allout-rebullet-heading): Use bullet stripped of text properties. - Register changes using allout-exposure-change-hook. - Disregard aberrant topics. - (allout-shift-in): With universal-argument, make topic a peer of - it's former offspring. Simplify the code by separating out - allout-shift-out functionality. - (allout-shift-out): With universal-argument, make offspring peers - of their former container, and its siblings. Implement the - functionality here, rather than inappropriately muddling the - implementation of allout-shift-in. - (allout-rebullet-topic): Respect additional argument for new - parent-child separation function. - (allout-yank-processing): Use allout-ascend directly. - (allout-show-entry): Disqualify aberrant topics. - (allout-show-children): Handle discontinuous children gracefully, - extending the depth being revealed to expose them and posting a - message indicating the situation. - (allout-show-to-offshoot): Remove obsolete and incorrect comment. - Leave cursor in correct position. - (allout-hide-current-subtree): Use allout-ascend directly. - Disqualify aberrant topics. - (allout-kill-line, allout-kill-topic): Preserve exposure layout in - a way that the yanks can restore it, as used to happen. - (allout-yank-processing): Restore exposure layout as recorded by - allout-kill-*, as used to happen. - (allout-annotate-hidden, allout-hide-by-annotation): New routines - for preseving and restoring exposure layout across kills. - (allout-toggle-subtree-encryption): Run allout-exposure-change-hook. - (allout-encrypt-string): Strip text properties. - Rearranged order and outline-headings for some of the - miscellaneous functions. - (allout-resolve-xref): No need to quote the error name in the - condition-case handler section. - (allout-flatten): Classic recursive (and recursively intensive, - without tail-recursion) list-flattener, needed by allout-shift-out - when confronted with discontinuous children. - -2006-09-16 Jason Rumney - - * dnd.el (dnd-open-remote-file-function): Use dnd-open-local-file - on ms-windows. - (dnd-open-unc-file): Remove. - (dnd-open-local-file): Mention in doc string that it also handles - remote files if the system natively supports unc file-names. - -2006-09-15 Kim F. Storm - - * help.el (describe-key): Handle C-h k in *Help* buffer; collect - all necessary information about the event before erasing *Help*. - - * simple.el (line-move-partial): Use window-line-visiblity to - quickly check whether last line is partially visible, and only do - the hard (and slow) part in that case. - -2006-09-15 Jay Belanger - - * COPYING: Replace "Library Public License" by "Lesser Public - License" throughout. - -2006-09-15 Jan Dj,Ad(Brv - - * term/x-win.el (x-menu-bar-open): New function for F10. - -2006-09-15 Chong Yidong - - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Disallow filenames containing " -" to avoid confusion with libtool - compilation messages. Suggested by Stefan Monnier. - -2006-09-15 David Kastrup - - * mouse-sel.el (mouse-sel-follow-link-p): Use event position - instead of buffer position for `mouse-on-link-p'. - - * mouse.el (mouse-posn-property): New function looking up the - properties at a click position in overlays and text properties in - either buffer or strings. - (mouse-on-link-p): Use `mouse-posn-property' to streamline lookup - of both `follow-link' as well as `mouse-face' properties. - (mouse-drag-track): Check `mouse-on-link-p' on event position, not - buffer position. - - * help.el (describe-key-briefly): When reading a down-event on - mode lines or scroll bar, swallow the following up event, too. - Use the new mouse sensitity of `key-binding' for lookup. - (describe-key): The same here. - -2006-09-15 Juanma Barranquero - - * play/life.el (life-patterns): Add a few more interesting patterns. - (life-setup): Force `show-trailing-whitespace' to nil. - -2006-09-14 Richard Stallman - - * startup.el (fancy-splash-text): Change text to improve alignment. - (fancy-splash-screens): Don't set non-standard tab width. - Bind cursor-type temporarily, and make it easy to patch to - preserve the splash buffer. - (normal-splash-screen, fancy-splash-tail): Spell out "Meta-x". - (fancy-splash-screens): Display echo-area message explicitly. - Don't set fancy-splash-help-echo. - - * simple.el (line-number-mode): Group mode-line instead of - editing-basics. - (column-number-mode, size-indication-mode): Likewise. - - * faces.el (mode-line-faces): Group mode-line instead of modeline. - - * time.el (display-time): Group mode-line instead of modeline. - - * cus-edit.el (mode-line): Rename from modeline. All uses changed. - -2006-09-14 Chong Yidong - - * startup.el (fancy-splash-text): Move editing instructions to - fancy-splash-head. - (fancy-splash-head): Issue editing instructions. - (fancy-splash-screens): Fixup whitespace. - -2006-09-14 Stefan Monnier - - * bindings.el (mode-line-buffer-identification-keymap): - Remove duplicate line. - -2006-09-14 Micha,Ak(Bl Cadilhac - - * ido.el (ido-ignore-item-p): Allow any kind of functions in - ignore lists. - -2006-09-14 Kim F. Storm - - * jit-lock.el (jit-lock-fontify-again): New function. - (jit-lock-fontify-now): Use it instead of lambda form. - -2006-09-13 Agustin Martin - - * textmodes/flyspell.el (flyspell-word, flyspell-correct-word) - (flyspell-auto-correct-word): Make ispell-filter local to these - functions. Check that ispell-filter has new stuff before calling - ispell-parse-output. - -2006-09-13 Kim F. Storm - - * simple.el (line-move-partial): Optimize. - -2006-09-13 Richard Stallman - - * thingatpt.el (thing-at-point-bounds-of-url-at-point): - Delete spurious backquote. - -2006-09-07 Ryan Yeske - - * net/rcirc.el (rcirc-print): Fix last change. - -2006-09-12 Jay Belanger - - * calc/calc.el (calc-dispatch): Remove unnecessary `sit-for'. - -2006-09-07 Ryan Yeske - - * net/rcirc.el (rcirc-scroll-show-maximum-output): Rename from - rcirc-show-maximum-output. - (rcirc-mode): Remove window-scroll-function hook. - (rcirc-scroll-to-bottom): Remove function. - (rcirc-print): Recenter so point stays at the bottom of the window - if point was already there. - -2006-09-12 Paul Eggert - - * comint.el (comint-exec-1): Set EMACS to the full name of Emacs, - not to "t". - * progmodes/compile.el (compilation-start): Likewise. - * progmodes/idlwave.el (idlwave-rescan-asynchronously): - Don't use expand-file-name on invocation-directory, since this - might mishandle special characters in invocation-directory. - -2006-09-12 Stefan Monnier - - * pcvs-defs.el: Remove * in defcustom's docstrings. - -2006-09-12 Nick Roberts - - * progmodes/compile.el (compilation-directory-properties): - Doc fix for help-echo. - -2006-09-12 Lars Hansen - - * desktop.el (desktop-read): Add comment. - -2006-09-12 Kim F. Storm - - * simple.el (next-error-highlight, next-error-highlight-no-select): - Fix spelling error. - - * subr.el (sit-for): Rework to use input-pending-p and cond. - Return nil input is pending on entry also for SECONDS <= 0. - (while-no-input): Use input-pending-p instead of sit-for. - -2006-09-11 Richard Stallman - - * simple.el (next-error-highlight, next-error-highlight-no-select): - Fix custom type and doc strings. - -2006-09-11 Stefan Monnier - - * diff-mode.el (diff-apply-hunk-to-backup-file): New var. - (diff-apply-hunk): Use it to ask for confirmation. - -2006-09-11 Reiner Steib - - * emacs-lisp/cl.el (pushnew): Add missing `,'. - -2006-09-11 David Kastrup - - * help.el (string-key-binding, describe-key-briefly) - (describe-key): Remove `string-key-binding' and its callers since - `key-binding' already caters for the proper lookup now. - -2006-09-11 Stefan Monnier - - * progmodes/cfengine.el (cfengine-font-lock-syntactic-keywords): Newvar. - (cfengine-mode): Use it. Fix \ syntax to be like /. - - * bindings.el (mode-line-buffer-identification-keymap): - Move initialization into declaration. - -2006-09-10 Kim F. Storm - - * ido.el (ido-edit-input, ido-complete, ido-take-first-match) - (ido-push-dir-first, ido-kill-buffer-at-head, ido-exhibit) - (ido-delete-file-at-head): Pass head of ido-matches through ido-name - in case of merged directories. Reported by Micha,Ak(Bl Cadilhac. - -2006-09-10 Richard Stallman - - * dired-aux.el: Handle errors in recursive copy usefully. - (dired-create-files-failures): New variable. - (dired-copy-file): Remove condition-case. - (dired-copy-file-recursive): Check for errors on all file - operations, and add them to dired-create-files-failures. - Check file file-date-erorr here too. - (dired-create-files): Check dired-create-files-failures - and report those errors too. - - * emacs-lisp/cl.el (pushnew): Use add-to-list when convenient. - - * subr.el (add-to-list): New argument COMPARE-FN. - -2006-09-10 Reiner Steib - - * filecache.el (file-cache-add-directory) - (file-cache-add-directory-list, file-cache-add-file) - (file-cache-add-directory-using-find) - (file-cache-add-directory-using-locate) - (file-cache-add-directory-recursively): Add autoloads. - -2006-09-09 Richard Stallman - - * textmodes/conf-mode.el (conf-space-mode): - Use hack-local-variables-hook instead of calling hack-local-variables. - (conf-space-keywords-override): New variable. - (conf-space-mode-internal): New subroutine. Reinit Font Lock mode. - (conf-space-mode): Always make conf-space-keywords and - conf-space-keywords-override local. - Call conf-space-mode-internal directly as well as via hook. - -2006-09-09 Slawomir Nowaczyk (tiny change) - - * progmodes/python.el (python-font-lock-keywords): Add `self' and other - quasi-keywords. - -2006-09-09 Stefan Monnier - - * progmodes/python.el: Quieten the compiler about hippie-expand vars. - (python-send-string): Be slightly more careful about adding \n. - - * startup.el (normal-splash-screen): Don't display the buffer if we'll - kill it right away anyway. - -2006-09-09 Eli Zaretskii - - * international/codepage.el (cp850-decode-table): Fix a few codes. - (cp858-decode-table): New variable. - -2006-09-09 Toby Allsopp (tiny change) - - * net/ldap.el (ldap-search-internal): Doc fix. - -2006-09-09 Micha,Ak(Bl Cadilhac - - * play/life.el (life-display-generation): Test for input manually if - `sleeptime' is negative or null. - - * lpr.el (lpr-page-header-switches): Page title switch is one of them. - (print-region-1): Substitute `%s' with the page title. - -2006-09-09 Matt Hodges - - * locate.el (locate-current-search): New variable. - (locate): Set buffer local value. Use current buffer if it is - in Locate mode. - (locate-mode): Disable undo here. - (locate-do-setup): Use locate-current-filter from buffer to be killed. - (locate-update): Use locate-current-search and locate-current-filter. - -2006-09-08 David Kastrup - - * desktop.el (desktop-read): When loading a desktop, disable - saving it while the load progresses, and switch off a pending lazy - load by calling `desktop-lazy-abort'. - -2006-08-27 Martin Rudalics - - * window.el (mouse-autoselect-window-timer) - (mouse-autoselect-window-position) - (mouse-autoselect-window-window) - (mouse-autoselect-window-now): New vars. - (mouse-autoselect-window-cancel) - (mouse-autoselect-window-select) - (mouse-autoselect-window-start): New functions. - (handle-select-window): Call `mouse-autoselect-window-start' when - delayed window autoselection is enabled. - - * cus-start.el (mouse-autoselect-window): Handle delayed window - autoselection. - - * emacs-lisp/eldoc.el: Add `handle-select-window' to the set of - commands after which it is allowed to print in the echo area. - -2006-09-08 Richard Stallman - - * textmodes/fill.el (adaptive-fill-regexp): Don't match `(1)' or `1.' - - * mail/rmail.el (rmail-get-new-mail): Say whether all msgs are spam. - (rmail-convert-to-babyl-format): Don't record undo, leave list empty. - - * emacs-lisp/timer.el (timer-create, timer-activate): Doc fixes. - (cancel-timer-internal): Add doc string. - (cancel-function-timers): Doc fix. - (with-timeout-handler, timer-event-last*): Add doc strings. - - * emacs-lisp/bindat.el (bindat-unpack): Doc fix. - - * files.el (risky-local-variable-p): Match ...-bindat-spec. - - * dired.el (dired-log-summary): Add doc string. - - * cus-edit.el (custom-menu-create): Bind deactivate-mark here. - (custom-group-menu-create): Not here. - -2006-09-08 Carsten Dominik - - * textmodes/org.el (org-dblock-write:clocktable): Avoid infinite loop. - -2006-09-08 YAMAMOTO Mitsuharu - - * term/mac-win.el (show-hide-font-panel): New HI command ID symbol. - (mac-apple-event-map): Define its handler. - -2006-09-07 Toby Allsopp (tiny change) - - * net/ldap.el (ldap-search-internal): Handle `auth' key. - -2006-09-07 Magnus Henoch - - * net/rcirc.el (rcirc-activity-string): Don't quote value in case - clause. - -2006-09-07 Micha,Ak(Bl Cadilhac - - * info.el (Info-index): Bind completion-ignore-case. - -2006-09-07 Stefan Monnier - - * progmodes/prolog.el (inferior-prolog-flavor): New var left out of - previous commit. - (inferior-prolog-guess-flavor): New fun left out of previous commit. - (prolog-consult-region-and-go): Don't hard code "*prolog*" and don't - burp in dedicated windows. - (inferior-prolog-self-insert-command): New command. - (inferior-prolog-mode-map): Use it. - -2006-09-07 Reiner Steib - - * international/latexenc.el (latex-inputenc-coding-alist): Add cp858. - - * international/code-pages.el: Add cp858. - -2006-09-07 Jan Dj,Ad(Brv - - * dnd.el: Fix bootstrapping. - -2006-09-07 Jan Dj,Ad(Brv - - * dnd.el (dnd-protocol-alist): Add what url-handler-mode can handle. - (dnd-open-remote-url): New function. - (dnd-open-remote-file-function): Set to dnd-open-remote-url if - not windows-nt. - -2006-09-07 Jason Rumney - - * dnd.el (dnd-open-remote-file-function): New variable. - (dnd-open-unc-file): New function. - (dnd-open-file): Call dnd-open-remote-file-function if set. - -2006-09-06 Daiki Ueno - - * pgg-gpg.el (pgg-gpg-process-region): Encode passphrase with - pgg-passphrase-coding-system rather than locale-coding-system. - * pgg-def.el (pgg-passphrase-coding-system): New user option. - -2006-09-06 Stefan Monnier - - * progmodes/prolog.el: Remove * in docstrings. - (prolog-program-name): Add SWI prolog. - (prolog-mode-menu): New menu. - (prolog-mode): Set comment-add. - (prolog-indent-line): Simplify. Use indent-line-to. - (inferior-prolog-buffer): New var. - (inferior-prolog-run, inferior-prolog-process): New funs. - (run-prolog, switch-to-prolog): Rewrite, using them. - (prolog-consult-region): Use inferior-prolog-buffer. - (inferior-prolog-load-file): New function. - (prolog-mode-map): Add bindings for load-file and switch-to-prolog. - - * textmodes/fill.el (fill-single-word-nobreak-p): Allow breaking before - last word, if it's not the end of the paragraph. - - * files.el (abbreviate-file-name): Don't mistakenly match newlines in - file name. - -2006-09-06 Ralf Angeli - - * frame.el (display-mm-dimensions-alist): New defcustom. - (display-mm-height, display-mm-width): Use it. - -2006-09-06 Simon Josefsson - - * mail/smtpmail.el (smtpmail-starttls-credentials): Doc fix. - -2006-09-06 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-list-children-regexp) - (gdb-var-list-children-regexp-1): Tweak regexps to catch full - string values. - -2006-09-06 Kim F. Storm - - * simple.el (line-move-partial): New function to do vscrolling for - partially visible images / tall lines. Rewrite based on code - previously in line-move. Simplify backwards vscrolling. - (line-move): Use it. Simplify. - -2006-09-05 Kim F. Storm - - * emulation/cua-base.el (cua--pre-command-handler-1): Rewrite. - -2006-09-05 Chong Yidong - - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Process the `gcc-include' after the `gnu' rule. - -2006-09-05 Kim F. Storm - - * ido.el (ido-visit-buffer): Use buffer name if buffer arg is a buffer. - -2006-09-05 Daiki Ueno - - * pgg.el (pgg-clear-string): Alias to clear-string for backward - compatibility. - - * pgg-gpg.el (pgg-gpg-process-region): Avoid display blinking with - inhibit-redisplay; encode passphrase with locale-coding-system. - -2006-09-04 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Add more C-M- bindings. - -2006-09-05 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-list-children-regexp) - (gdb-var-list-children-regexp): Make type field optional. - - * progmodes/gud.el (gud-speedbar-buttons): Allow for no type - e.g public, protected in C++. - -2006-09-04 John Paul Wallington - - * simple.el (completion-show-help): New defcustom. - (completion-setup-function): Heed it. - -2006-09-04 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Add C-M- bindings. - -2006-09-04 Richard Stallman - - * mail/rmail-spam-filter.el (rsf-scanning-messages-now): Doc fix. - (rsf-min-region-to-spam-list): Doc fix. - (rsf-add-content-type-field): Doc fix. - - * simple.el (kill-region): Explicitly test there is a region. - -2006-09-04 Chong Yidong - - * mail/feedmail.el (feedmail-buffer-to-sendmail): Look for - sendmail in several common directories. - - * mail/sendmail.el (sendmail-program): Moved here from paths.el. - - * paths.el (sendmail-program): Removed. - -2006-09-04 Daiki Ueno - - * pgg-gpg.el (pgg-gpg-process-region): Revert two patches from Satyaki - Das. http://article.gmane.org/gmane.emacs.gnus.general/49947 - http://article.gmane.org/gmane.emacs.gnus.general/50457 - -2006-09-03 Chong Yidong - - * cus-edit.el (custom-group-menu-create): Avoid deactivating the - mark after running the menu filter. - -2006-09-03 Juri Linkov - - * international/quail.el (quail-defrule-internal): Add a check - if a key is a vector. - -2006-09-02 Juri Linkov - - * man.el (Man-topic-history): New variable. - (man): Use it. - - * woman.el (woman-topic-history): Change defvar to defvaralias - for symbol `Man-topic-history'. - - * shell.el (shell-filter-ctrl-a-ctrl-b): Check if - `comint-last-output-start' is a marker by using `markerp' and - check if it has a position by using `marker-position', and use - this position for `goto-char'. - - * international/quail.el (quail-defrule-internal): Add missing - `error' call for null key. - -2006-09-02 Ryan Yeske - - * net/rcirc.el (rcirc-keywords): New variable. - (rcirc-bright-nicks, rcirc-dim-nicks): New variables. - (rcirc-bright-nick-regexp, rcirc-dim-nick-regexp): Remove - variables. - (rcirc-responses-no-activity): New function. - (rcirc-handler-generic): Check for responses in above. - (rcirc-process-command): Add ?: character to arguments of raw - server commands. - (rcirc-format-response-string): Use `rcirc-bright-nicks' and - `rcirc-dim-nicks'. - (rcirc-gray-toggle): Remove unused variable. - (rcirc-print): Remove some tracking logic, which is moved into - markup functions. - (rcirc-activity-types): Was `rcirc-activity-type', now a list of - types. - (rcirc-activity-string): Look for 'keyword in activity-types. - (rcirc-window-configuration-change): Don't erase overlay-arrow - unnecessarily. - (rcirc-add-or-remove): New function. - (rcirc-cmd-ignore): Use it. - (rcirc-message-leader): Remove unused function. - (rcicr-cmd-bright, rcirc-cmd-dim, rcirc-cmd-keyword): New commands. - (rcirc-add-face): New function. - (rcirc-facify): Use rcirc-add-face. - (rcirc-url-regexp): Add parens. - (rcirc-map-regexp): Remove function. - (rcirc-mangle-regexp): Remove function. - (rcirc-markup-text-functions): New variable. - (rcirc-markup-text): New function (replaces `rcirc-mangle-text'). - (rcirc-markup-body-text, rcirc-markup-attributes) - (rcirc-markup-my-nick, rcirc-markup-urls, rcirc-markup-keywords) - (rcirc-markup-bright-nicks): New markup handler functions. - (rcirc-nick-in-message-full-line): New face. - (rcirc-track-nick): Rename from `rcirc-mode-line-nick'. - (rcirc-track-keyword, rcirc-url, rcirc-keyword): New faces. - -2006-09-02 Martin Rudalics - - * cus-start.el (hscroll-margin, hscroll-step) - (mode-line-in-non-selected-windows, mouse-autoselect-window) - (x-use-underline-position-properties): Change version to "22.1" - since they will appear there for the first time. - -2006-09-01 Chong Yidong - - * imenu.el (imenu-update-menubar): Use buffer-chars-modified-tick. - -2006-08-31 Richard Stallman - - * cus-edit.el (custom-save-variables): Slight cleanup. - (Custom-no-edit): Renamed from custom-no-edit. - (Custom-newline): Renamed from custom-newline. - (custom-mode-map): Use new names. - - * emacs-lisp/easy-mmode.el (define-minor-mode): Reference manual - about customization, rather than M-x customize, in the doc string - made for the defcustom. - - * emacs-lisp/trace.el (trace-function-background): Doc fix. - -2006-08-31 Romain Francoise - - * dired-x.el (dired-guess-shell-alist-default): Update. - -2006-08-31 Michael Mauger - - * custom.el (custom-theme-set-variables): Autoload packages before - sorting the variables. - -2006-08-30 Michael Kifer - - * emulation/viper-cmd.el (viper-special-read-and-insert-char): - Convert events to chars if XEmacs. - (viper-after-change-undo-hook): Check if undo-in-progress is bound. - -2006-08-30 Stefan Monnier - - * progmodes/python.el (python-eldoc-function): Re-enable quit while - waiting for process. - -2006-08-30 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-string-to-utxt): If adjustment for MacJapanese - results in ASCII-only string, encode original one directly. - -2006-08-29 Romain Francoise - - * startup.el (normal-splash-screen, fancy-splash-screens): - Make buffer read-only and arrange to enter view mode if necessary. - -2006-08-29 Chong Yidong - - * hl-line.el (hl-line): New face. - (hl-line-face): Use it. - - * image-mode.el (image-mode): Fix last fix. - Suggested by Kim F. Storm. - -2006-08-29 Michael Albinus - - Sync with Tramp 2.0.54. - - * net/tramp.el (tramp-convert-file-attributes): Call `eql' instead - of `=', because `tramp-get-remote-gid' might not always return an - integer when expected. - (tramp-register-file-name-handlers): `partial-completion-mode' is - unknown to XEmacs. - (tramp-time-diff): Don't use `floor', it might fail for large - differences. - (tramp-handle-make-auto-save-file-name): For Emacs 21, set - `tramp-auto-save-directory' if unset in order to guarantee unique - auto-save file names. - -2006-08-28 Chong Yidong - - * image-mode.el (image-mode): Display image as text on a terminal. - -2006-08-28 Stefan Monnier - - * progmodes/python.el (python-send-command): Simplify. - (run-python): Don't generate a new buffer unless `new' was specified. - Make sure we send `import emacs' to the proper process. - - * progmodes/python.el (python-send-command): Don't wait for the command - to terminate. Don't fiddle with compilation-parsing-end. - -2006-08-28 Chong Yidong - - * emacs-lisp/checkdoc.el (checkdoc-file-comments-engine): - Insert commentary after first line summary. - - * woman.el (woman-follow): New function, based on `man-follow'. - (woman-mode-map): Use it. - - * ibuffer.el (ibuffer-do-sort-by-recency): Perform full update - since ibuffer-do-sort-by-recency does not define a sorter. - -2006-08-28 Kim F. Storm - - * find-dired.el (find-dired): Use shell-quote-argument to properly - escape ( and ) args. Also use it on {} and ; args in default - value of find-ls-option string. - (find-grep-dired): Use shell-quote-argument on {} and ; args. - -2006-08-27 Michael Olson - - * emacs-lisp/tq.el: Small grammar fix in comments. - (tq-enqueue): Check for existence of queue rather than the - head queue item's question, which was a no-op. - (tq-filter, tq-process-buffer): Make sure the process buffer - exists before making it the current buffer. - -2006-08-27 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-apple-event-map): Rename hicommand to hi-command. - (mac-dnd-drop-data): Apply 2006-08-22 change for x-dnd-drop-data. - (special-event-map): Apply 2006-08-16 change for x-win.el. - -2006-08-26 Stefan Monnier - - * progmodes/python.el (python-send-receive): Wait in the - process's buffer so as to check the right buffer-local variables. - -2006-08-25 Stefan Monnier - - * emacs-lisp/checkdoc.el: Remove * in defcustoms. - (defgroup checkdoc): Move to beginning. - - * progmodes/python.el (python-preoutput-skip-next-prompt): New var. - (python-preoutput-continuation): Remove. - (python-preoutput-filter): Simplify correspondingly. - Remove handling of _emacs_ok. Make sure we skip _emacs_out's prompts. - Loop around to catch embedded _emacs_out output. - (run-python): Send the import&print command on a single line. - (python-send-command): Send command&print on a single line. - (python-send-string): Only add double \n if needed. - (python-send-receive): Loop until the result comes. - (python-mode-running): Defvar it. - (python-setup-brm): Remove unused var `menu'. - Only bind py-mode-map and `features' around brm-init. - (python-calculate-indentation): Remove unused var `point'. - (python-beginning-of-defun): Remove unused var `def-line'. - -2006-08-25 Richard Stallman - - * kmacro.el (kmacro-repeat-on-last-key): Doc fix. - -2006-08-25 Michael Kifer - - * emulation/viper.el (viper-set-hooks): Use frame bindings for - viper-vi-state-cursor-color. - (viper-non-hook-settings): Don't set default - mode-line-buffer-identification. - - * emulation/viper-util.el (viper-set-cursor-color-according-to-state): - New fun. - (viper-set-cursor-color-according-to-state) - (viper-get-saved-cursor-color-in-replace-mode) - (viper-get-saved-cursor-color-in-insert-mode): Make conditional on - viper-emacs-state-cursor-color. - - * emulation/viper-cmd.el (viper-envelop-ESC-key): Bug fix. - (viper-undo): Use point if undo-beg-posn is nil. - (viper-insert-state-post-command-sentinel, viper-change-state-to-emacs) - (viper-after-change-undo-hook): Don't use - viper-emacs-state-cursor-color by default. - (viper-undo): More sensible positioning after undo. - - * emulation/viper-ex.el (ex-splice-args-in-1-letr-cmd): Get rid of caddr. - (viper-emacs-state-cursor-color): Default to nil, since this feature - doesn't work well yet. - - * ediff-mult.el (ediff-intersect-directories) - (ediff-get-directory-files-under-revision, ediff-dir-diff-copy-file): - always expand filenames. - -2006-08-24 Stefan Monnier - - * tumme.el: Remove * in defcustoms's docstrings. - -2006-08-24 Chong Yidong - - * emacs-lisp/timer.el (timer-set-idle-time, run-with-idle-timer): - Accept internal time format for SECS arg. - (timer-relative-time): Doc fix. - - * jit-lock.el: "Stealth fontification by requeuing timers" patch, - adapted from Martin Rudalics. - (jit-lock-stealth-repeat-timer, jit-lock-stealth-buffers): New vars. - (jit-lock-mode): Create jit-lock-stealth-repeat-timer. - (jit-lock-stealth-fontify): Reschedule as a idle timer instead of - using sit-for. - -2006-08-24 Francesc Rocher - - * cus-start.el (all): Add `overline-margin' and - `x-underline-at-descent-line'. - -2006-08-24 Kim F. Storm - - * progmodes/grep.el (grep-find-use-xargs): Use explicit value `exec' - to mean "use find -exec"; nil now unambiguously means auto-detect. - (grep-compute-defaults): Set grep-find-use-xargs to `exec' if not `gnu'. - Use shell-quote-argument to build grep-find-command and - grep-find-template. - (rgrep): Use shell-quote-argument to properly quote arguments to find. - Reported by Tom Seddon. - -2006-08-23 Chong Yidong - - * startup.el (fancy-splash-head): Give instructions for dismissing - the splash screen for default startup too. - (display-startup-echo-area-message, fancy-splash-screens) - (use-fancy-splash-screens-p): New arg hide-on-input. If nil, show - all splash text at once and keep the splash buffer around. - (command-line-1): Give display-startup-echo-area-message a t arg. - -2006-08-23 Carsten Dominik - - * textmodes/org.el (org-follow-gnus-link): Make sure the dedicated - gnus frame is selected. - -2006-08-23 Nick Roberts - - * progmodes/gdb-ui.el (gdb-starting): Reset gdb-signalled to nil. - -2006-08-22 Kim F. Storm - - * ido.el (ido-set-matches-1): Fix full matching for subdirs. - Add suffix matching for subdirs. - -2006-08-22 Jorgen Schaefer (tiny change) - - * x-dnd.el (x-dnd-drop-data): Don't call goto-char if - mouse-yank-at-point is non-nil. - -2006-08-22 Nick Roberts - - * progmodes/gdb-ui.el (gdb-frame-memory-buffer): Make frame - a bit wider and remove fringes to fit initial output on line. - -2006-08-21 Stefan Monnier - - * frame.el (blink-cursor-end): Only ignore the error we care about. - (blink-cursor-mode): Use blink-cursor-end to simplify the code. - -2006-08-21 Richard Stallman - - * whitespace.el (whitespace-cleanup): Doc fix. - -2006-08-20 Ryan Yeske - - * net/rcirc.el (rcirc-show-maximum-output): New var. - (rcirc-buffer-process): If no buffer argument is supplied, use - current-buffer. - (rcirc-complete-nick): Complete to the last completed nick first. - (rcirc-mode): Preserve the value of `rcirc-urls' across - connections. Setup scroll function. - (rcirc-scroll-to-bottom): New function. - (rcirc-print): Use nick syntax around regexp work. - Notice dim-nicks speaking only if they say our nick. - (rcirc-update-activity-string): Do not show the modeline indicator - if there are no live rcirc processes. - (rcirc-cmd-ignore): Ignore case. - (rcirc-browse-url-at-point): Fix off-by-one error. - -2006-08-20 Stefan Monnier - - * progmodes/python.el: Remove * in defcustom docstrings. - (run-python, python-proc, python-try-complete): Use derived-mode-p. - (python-mode): Set tab-width and indent-tabs-mode. - -2006-08-20 Dave Love - - * progmodes/python.el: Update to Dave Love's latest version. - (python-font-lock-keywords, python-mode): Don't use - font-lock-syntax-table, but match symbol elements explicitly instead. - (python-mode-map): Add help, and a few more key bindings. - (python-skip-comments/blanks): Move out of comments as well. - (python-continuation-line-p): Behave better with unbalanced parens. - (python-blank-line-p): New fun. - (python-open-block-statement-p): Don't use a heuristic. - (python-outdent-p): Better handle blocks-in-the-same-line. - (python-calculate-indentation): Misc improvements. - (python-comment-indent): Remove. - (python-block-pairs): New var. - (python-first-word): New fun. - (python-indentation-levels): Handle more common cases. - (python-indent-line-1): Add `leave' argument. - (python-indent-region): New fun. - (python-skip-out): New fun. - (python-beginning-of-statement, python-end-of-statement): Use it. - (python-next-statement): Return correct count even at eob. - (python-end-of-block): Fix paren-typo. - (python-imenu-create-index): Add module variables. - (run-python): Add `new' arg. - Check we're at a prompt before returning. - (python-send-command): Move to end of buffer. - Wait for prompt to return. - (python-set-proc): New fun. - (python-imports): New var. - (python-describe-symbol): Use it. Adjust to new interface of `ehelp'. - (python-eldoc-function): Try to move out of arg list. - (python-outline-level): Offset by 1. - (python-find-imports): New fun. - (python-symbol-completions): Use python-imports. - (python-module-path, ffap-alist): Add support for ffap. - (python-skeletons, python-mode-abbrev-table, def-python-skeleton) - (python-insert-*, python-default-template, python-expand-template): - Add templates/skeletons. - (python-setup-brm): Support for Bicycle Repair Man. - (python-abbrev-syntax-table): New var. - (python-abbrev-pc-hook, python-pea-hook): New funs. - -2006-08-20 Chong Yidong - - * frame.el (blink-cursor-start): Set timer first. - (blink-cursor-end): Ignore timer cancelling errors. - Suggested by Ken Manheimer. - -2006-08-20 Juanma Barranquero - - * newcomment.el (comment-box): Call `comment-normalize-vars'. - Add autoload cookie. - -2006-08-20 Richard Stallman - - * simple.el (line-number-at-pos): Doc fix. - - * emacs-lisp/timer.el (run-with-idle-timer): Pass t to - timer-activate-when-idle, so timer can run before Emacs becomes - non-idle again. - -2006-08-18 Yoni Rabkin Katzenell (tiny change) - - * whitespace.el (whitespace-cleanup-internal): New optional arg - REGION-ONLY. If it's non-nil, modify the message to the user - accordingly. - (whitespace-cleanup-region): Call whitespace-cleanup-internal with - a non-nil argument. - -2006-08-18 Gustav H,Ae(Bllberg (tiny change) - - * rect.el (spaces-string): Simplify and add doc string. - -2006-08-17 Romain Francoise - - * progmodes/gdb-ui.el (gdb-edit-locals-value): Balance parens. - -2006-08-17 Richard Stallman - - * compare-w.el (compare-windows): lambda's take an arg and pass - it to compare-windows-skip-whitespace. - -2006-08-17 Martin Rudalics - - * jit-lock.el (jit-lock-fontify-now): Protect the modified status of - the right buffer. - -2006-08-17 Stefan Monnier - - * pcvs-parse.el (cvs-parse-table): Accept the new `...' format for - removed files. - -2006-08-17 Nick Roberts - - * progmodes/gdb-ui.el (gdb-locals-watch-map) - (gdb-locals-watch-map-1): Suppress keymap first. - (gdb-edit-locals-map-1): New variable. - (gdb-edit-locals-value): New function. - (gdb-stack-list-locals-handler): Use them. - -2006-08-16 Stefan Monnier - - * mouse.el (global-map): Allow yanking with mouse-2 at a spot whose - cursor would normally be drawn in the fringe. - - * font-lock.el (font-lock-extend-region-wholelines): Fix up typo. - Reported by Martin Rudalics . - -2006-08-16 Richard Stallman - - * term/x-win.el (x-clipboard-yank): Specify * in interactive spec. - (special-event-map): Process drag-n-drop events this way. - - * simple.el (move-beginning-of-line): Test whether fields - would prevent motion back to line's first visible character. - If so, stop where the fields would stop the motion. - - * newcomment.el (comment-indent): Fully update INDENT - before checking to see if it will change the text. - - * cus-edit.el (custom-newline): New function. - (custom-mode-map): Bind newline to custom-newline. - - * compare-w.el (compare-windows): Factor compare-ignore-whitespace - into ignore-whitespace. - Check each buffer for its skip-function. - Handle compare-windows-skip-whitespace special-case test - by returning t from default skip function. - -2006-08-15 Carsten Dominik - - * textmodes/org.el (org-clock-special-range) - (org-clock-update-time-maybe): New functions. - (org-stamp-time-of-day-regexp): Allow weekday to be of word chars, - not only a-z. - (org-agenda-get-blocks): Allow multiple blocks per headline. - (org-timestamp-change): Call `org-clock-update-time-maybe'. - (org-export-html-title-format) - (org-export-html-toplevel-hlevel): New options. - (org-export-language-setup): Add support for Czech. - (org-mode, org-insert-todo-heading, org-find-visible) - (org-find-invisible, org-invisible-p, org-invisible-p2) - (org-back-to-heading, org-on-heading-p, org-up-heading-all) - (org-show-subtree, org-show-entry, org-make-options-regexp): - Remove compatibility support for old outline-mode. - (org-check-occur-regexp): Funtion removed. - (org-on-heading-p, org-back-to-heading): Made defalias. - (org-set-local): New defsubst. - (org-set-regexps-and-options, org-mode) - (org-set-font-lock-defaults, org-edit-agenda-file-list) - (org-timeline, org-agenda-list, org-todo-list, org-tags-view) - (org-remember-apply-template, org-table-edit-field) - (org-table-edit-formulas, orgtbl-mode, org-export-as-ascii) - (org-set-autofill-regexps): Use `org-set-local'. - (org-table-eval-formula): Fix bug with parsing of display flags. - -2006-08-15 Nick Roberts - - * progmodes/gdb-ui.el (gdb-info-stack-custom): Indicate selected - frame with fringe arrow. Suggested by Simon Marshall - . - (gdb-stack-position): New variable. - (gdb-starting, gdb-exited): Reset gdb-stack-position to nil. - (gdb-frames-mode): Set gdb-stack-position to nil. - Add to overlay-arrow-variable-list - (gdb-reset): Delete gdb-stack-position from above list. - -2006-08-14 Jan Dj,Ad(Brv - - * term/x-win.el (menu-bar-edit-menu): Disable paste if buffer is - read only. - -2006-08-13 Romain Francoise - - * cus-theme.el (customize-create-theme) - (custom-theme-visit-theme): End `y-or-n-p' prompt with a space. - - * filesets.el (filesets-add-buffer): Ditto. - - * pcvs.el (cvs-change-cvsroot): Ditto. - -2006-08-13 Nick Roberts - - * progmodes/gdb-ui.el (gdb-frame-separate-io-buffer) - (gdb-use-separate-io-buffer, menu): Avoid using `inferior' in text. - (gdb-memory-mode, gdb-locals-watch-map): Don't quote lambda - expressions. - (gdb-info-breakpoints-custom): Use gdb-breakpoint-regexp. - Only search till end of line. - Add face to function names in case of no filename. - Add face to variable names of watchpoints. - -2006-08-12 Robert Thorpe (tiny change) - - * cus-start.el : Move to the `indent' - customization group. - -2006-08-12 Ken Manheimer - - * allout.el (allout-prior-bindings, allout-added-bindings): - Remove, after long deprecation. - (allout-beginning-of-line-cycles, allout-end-of-line-cycles): - Add customization vars controlling allout-beginning-of-line and - allout-end-of-line conveniences. - (allout-header-prefix, allout-use-mode-specific-leader) - (allout-use-mode-specific-leader, allout-mode-leaders): - Revise docstrings. - (allout-infer-header-lead): Change to be an alias for - allout-infer-header-lead-and-primary-bullet. - (allout-infer-header-lead-and-primary-bullet): New version of - allout-infer-header-lead which assigns the primary bullet to the - same as the header lead, when its being changed. - (allout-infer-body-reindent): Apply regexp-quote instead of - unconditionally prepending "\\", so that all literal - allout-header-prefix and allout-primary-bullet strings are - properly handled. - (allout-add-resumptions): Add optional qualifier for extending or - appending to existing values, rather than replacing them. - (allout-view-change-hook): Clarify docstring. - (allout-exposure-change-hook): Take explicit arguments, via - run-hook-with-args. - (allout-structure-added-hook) - (allout-structure-deleted-hook) - (allout-structure-shifted-hook): New hooks analogous to - allout-exposure-change-hook for other kinds of structural outline - edits. - (allout-encryption-plaintext-sanitization-regexps): New encryption - customization variable, by which cooperating modes can provde - massage of the plaintext without actually being passed it. - (allout-encryption-ciphertext-rejection-regexps) - (allout-encryption-ciphertext-rejection-ceiling): New encryption - customization variables, by which cooperating modes can prohibit - rare but possible ciphertext patterns from fouling their - operation, with actually being passed the ciphertext. - (allout-mode): Run activation and deactivation hooks after the - minor-mode variable has been toggled, to clarify the mode - disposition. The new encryption ciphertext rejection variable is - used to ensure that the ciphertext does not contain text that - would be recognized as outline structural elements by allout. - Substite allout-beginning-of-line and allout-end-of-line for - conventionall beginning-of-line and end-of-line bindings. - If allout-old-style-prefixes is non-nil, don't nullify it on mode - activation! - (allout-beginning-of-line): Respect `allout-beginning-of-line-cycles'. - (allout-end-of-line): Respect `allout-end-of-line-cycles'. - (allout-chart-subtree): Implement new mode, charting only the - visible items in the subtree, when new 'visible' parameter is non-nil. - (allout-end-of-subtree): Properly handle the last item in the buffer. - (allout-pre-command-business, allout-command-counter): - Increment an advertised counter so that cooperating enhancements can - track revisions of items. - (allout-open-topic): Run allout-structure-added-hook with suitable - arguments. - (allout-shift-in): Run allout-structure-shifted-hook with suitable - arguments. - (allout-shift-out): Fix doubling for negative args and ensure call - of allout-structure-shifted-hook by solely using allout-shift-in. - (allout-kill-line, allout-kill-topic): - Run allout-structure-deleted-hook with suitable arguments. - (allout-yank-processing): Run allout-structure-added-hook with - proper arguments. - (allout-yank): Enclose activity in allout-unprotected. - (allout-flag-region): Run allout-exposure-change-hook with - suitable arguments, instead of making the callee infer the arguments. - (allout-encrypt-string): - Support allout-encryption-plaintext-sanitization-regexps, - allout-encryption-ciphertext-rejection-regexps, and - allout-encryption-ciphertext-rejection-ceiling. Indicate correct - en/de cryption mode in symmetric encryption failure message. - (allout-obtain-passphrase): Use copy-sequence to get a distinct - copy of the passphrase, and don't zero it or we'll corrupt the - stashed copy. - (allout-create-encryption-passphrase-verifier) - (allout-verify-passphrase): Respect the new signature for - allout-encrypt-string. - (allout-get-configvar-values): Convenience for getting a - configuration variable value and handling its absence gracefully. - -2006-08-11 Romain Francoise - - * obsolete/zone-mode.el: Delete. - -2006-08-11 Stefan Monnier - - * textmodes/dns-mode.el (dns-mode): Use before-save-hook. - -2006-08-11 Thien-Thi Nguyen - - * emacs-lisp/bindat.el (bindat-ip-to-string): - Use `format-network-address' if possible. - -2006-08-11 Jan Dj,Ad(Brv - - * x-dnd.el (x-dnd-init-frame): Call x-register-dnd-atom. - -2006-08-10 Chong Yidong - - * emacs-lisp/edebug.el (edebug-recursive-edit): Don't save and - restore unread-command-events here. - (edebug-display): Do it here, to detect sit-for interruptions. - -2006-08-10 Romain Francoise - - * textmodes/dns-mode.el: Alias `zone-mode' to `dns-mode'. - (dns-mode-soa-auto-increment-serial): New user option. - (dns-mode-soa-maybe-increment-serial): New function. - (dns-mode): Add the latter to `write-contents-functions'. - - * obsolete/zone-mode.el: Move to obsolete/ from net/. - Delete autoload cookies. - -2006-08-10 John Wiegley - - * eshell/em-glob.el (eshell-glob-chars-list) - (eshell-glob-translate-alist): Add support for [^g] in character globs. - -2006-08-10 Richard Stallman - - * facemenu.el (facemenu-add-face): Pass frame to facemenu-active-faces. - (facemenu-set-face): Doc fix. - (facemenu-listed-faces): Doc fix. - -2006-08-09 Chong Yidong - - * avoid.el (mouse-avoidance-animating-pointer): New var. - (mouse-avoidance-nudge-mouse): Use it. - (mouse-avoidance-banish): Rename from mouse-avoidance-banish-hook. - (mouse-avoidance-exile): Rename from mouse-avoidance-exile-hook - (mouse-avoidance-fancy): Rename from mouse-avoidance-fancy-hook. - Don't activate if currently animating. All callers changed. - -2006-08-09 John Wiegley - - * calendar/timeclock.el (timeclock-use-elapsed): Added a new - variable, which causes timeclock to report elapsed time worked, - instead of just work remaining. - -2006-08-09 Kenichi Handa - - * international/latexenc.el (latexenc-find-file-coding-system): - Fix for the case that the 2nd element of arg-list is a cons. - -2006-08-08 Chong Yidong - - * info.el (Info-fontify-node): Handle preceding `in' for note - reference hiding rules. - -2006-08-08 Stefan Monnier - - * progmodes/sh-script.el (sh-quoted-subshell): Make sure we don't - mistake a closing " for an opening one. - -2006-08-07 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Add more key bindings. - -2006-08-07 Stefan Monnier - - * complete.el (PC-do-completion): Filter out completions matching - completion-ignored-extensions before checking whether there are - multiple completions. - Don't use `list' unnecessarily when building completion tables. - -2006-08-06 Richard Stallman - - * help.el (describe-mode): Make minor mode list more concise. - -2006-08-05 Chong Yidong - - * bindings.el: Give mode-line-format, mode-line-modes, and - mode-line-position `standard-value' properties. - -2006-08-05 Eli Zaretskii - - * buff-menu.el (list-buffers-noselect): For Info buffers, use - "(file)node" instead of the file name. - -2006-08-05 Richard Stallman - - * faces.el (escape-glyph): Doc fix. - -2006-08-04 Kenichi Handa - - * international/mule-diag.el (describe-font): Improve docstring - and error message. Use frame-parameter (not frame-parameters). - -2006-08-03 Stefan Monnier - - * progmodes/gud.el (gdb-script-font-lock-syntactic-keywords): - Correctly mark the end-of-docstring char. - -2006-08-03 Chong Yidong - - * simple.el (line-move-to-column): Constrain move-to-column to - current field. - -2006-08-03 Stefan Monnier - - * font-lock.el (font-lock-beg, font-lock-end) - (font-lock-extend-region-functions): New vars. - (font-lock-extend-region-multiline) - (font-lock-extend-region-wholelines): New functions. - (font-lock-default-fontify-region): Use them. - (font-lock-extend-jit-lock-region-after-change): Only round up - if font-lock-default-fontify-region will do it as well. - - * font-lock.el (font-lock-extend-after-change-region-function): - Rename from font-lock-extend-region-function. - (font-lock-extend-region): Remove by inlining at call sites. - (font-lock-after-change-function): Don't needlessly round up to a whole - number of lines. - (font-lock-extend-jit-lock-region-after-change): Be more careful about - the boundary conditions and the interactions between the various ways - to extend the region. - -2006-08-02 Stefan Monnier - - * jit-lock.el (jit-lock-fontify-now): Preserve the buffer's - modification status when forcing the second redisplay. - -2006-08-03 Kim F. Storm - - * edmacro.el (edmacro-fix-menu-commands): Ignore switch-frame. - -2006-08-02 Stefan Monnier - - * pcvs-util.el (cvs-get-buffer-create): Obey `noreuse' even if `name' - doesn't look like a file name. - - * complete.el (PC-expand-many-files): Avoid signalling an error when - the current directory doesn't exist. Reported by Micha,Ak(Bl Cadilhac. - -2006-08-02 Andreas Schwab - - * bindings.el (mode-line-format): Simplify reference to vc-mode. - -2006-08-02 Nick Roberts - - * bindings.el (map): Make mode-line-buffer-identification-keymap - before defining propertized-buffer-identification. - -2006-08-01 Richard Stallman - - * bindings.el (mode-line-format): Adjust spacing around vc-mode. - -2006-08-02 Nick Roberts - - * progmodes/gdb-ui.el (gdb-find-source-frame): Make nil the - default value. - (gdb-find-source-frame): New function. - (menu): Add to menu bar. - -2006-08-01 Stefan Monnier - - * font-core.el (font-lock-extend-region-function) - (font-lock-extend-region): Move to font-lock.el. - - * font-lock.el (font-lock-extend-region-function) - (font-lock-extend-region): Move from font-core.el. Simplify. - - * jit-lock.el (jit-lock-fontify-now): Cause a second redisplay - if needed. - (jit-lock-start, jit-lock-end): New dynamic scoped vars. - (jit-lock-after-change-extend-region-functions): New hook. - (jit-lock-after-change): Use it instead of hard-coding font-lock code. - - * font-lock.el (font-lock-extend-jit-lock-region-after-change): New fun. - (font-lock-turn-on-thing-lock): Use it. - - * longlines.el (longlines-show-region): Make it work on read-only - buffers as well. - -2006-08-01 Nick Roberts - - * progmodes/gdb-ui.el (gdb-set-hollow): Check for gud-last-last-frame. - -2006-07-31 Richard Stallman - - * progmodes/vhdl-mode.el (vhdl-speedbar-display-directory) - (vhdl-speedbar-display-projects): Update old obsolete - speedbar variable names. - -2006-07-31 Nick Roberts - - * progmodes/gdb-ui.el (gdb-find-source-frame): New option. - (gdb-stopped): Use it. - - * t-mouse.el (t-mouse-mode): Use set-process-query-on-exit-flag. - -2006-07-29 Chong Yidong - - * loadhist.el (unload-feature): Handle new `(t . SYMBOL)' format - for load-history elements. - -2006-07-29 Eli Zaretskii - - * files.el (convert-standard-filename): For Cygwin, replace - characters not allowed in Windows file names. - (make-auto-save-file-name): Add Cygwin to the list of systems - where the auto-save file name needs to be run through - convert-standard-filename. - -2006-07-29 Lennart Borgman - - * window.el (bw-get-tree): Don't integerp subtree if it's nil. - -2006-07-28 Richard Stallman - - * bindings.el (mode-line-frame-identification) - (propertized-buffer-identification): Centralize the code - to initialize the variable. - - * progmodes/grep.el (grep-default-command): Catch errors from - wildcard-to-regexp. - -2006-07-29 Kim F. Storm - - * progmodes/grep.el (grep-tag-default): New function. - (grep-default-command, grep-read-regexp): Use it. - (grep-read-files): Use car of grep-files-history or grep-files-aliases - as default if nothing else applies. - -2006-07-28 Bill Atkins (tiny change) - - * wdired.el (wdired-change-to-wdired-mode, wdired-change-to-dired-mode): - Throw error if buffer is not in Dired and Wdired mode, respectively. - -2006-07-28 Chong Yidong - - * cus-edit.el (custom-no-edit): Revert 2006-07-27 change, so that - self-insert-command keys don't activate buttons. - (custom-mode-map): Just don't bind "\C-m" to `custom-no-edit'. - -2006-07-29 Nick Roberts - - * progmodes/gdb-ui.el (gdb-info-breakpoints-custom): Use different - faces for enable character. - -2006-07-28 Nick Roberts - - * Makefile.in (recompile): Update comment to reflect change - on 2004-04-21. - -2006-07-27 Richard Stallman - - * cus-edit.el (customize-package-emacs-version-alist): Doc fix. - (customize-package-emacs-version): Change msg when pkg has no entry. - (custom-no-edit): On a button, do like widget-button-press. - -2006-07-27 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Fix bindings for C-tab, - S-tab and C-S-tab. - -2006-07-28 Nick Roberts - - * progmodes/which-func.el (which-function): Fix documentation/ - comment typo. - -2006-07-26 Richard Stallman - - * textmodes/ispell.el (ispell-word): If we replace the word, - move point to the end. Insert before deleting. - -2006-07-26 Chong Yidong - - * subr.el (sit-for): Use new SECONDS arg of read-event instead of - a timer. - -2006-07-26 Mathias Dahl - - * tumme.el (tumme-backward-image): Add prefix argument. Add error - when at first image. - (tumme-forward-image): Add prefix argument. Add error when at last - image. - -2006-07-25 Stefan Monnier - - * tabify.el (tabify-regexp): Use more specific regexps. - (tabify): Avoid modifying the buffer unnecessarily. - -2006-07-25 Mathias Dahl - - * tumme.el (tumme-track-original-file): Add `buffer-live-p' check. - (tumme-format-properties-string): Handle empty `buf'. - (tumme-get-comment): Change variable names inside `let'. - Add missing `let' variable that cause font-lock problems. - (tumme-write-comments): Change variable names inside `let'. - Add missing `let' variable that cause font-lock problems. - (tumme-forward-image): Rename from `tumme-forward-char'. - (tumme-backward-image): Rename from `tumme-backward-char'. - -2006-07-25 Masatake YAMATO - - * progmodes/ld-script.el (ld-script-keywords) - (ld-script-font-lock-keywords, ld-script-builtins): Update keywords - and add comments. - -2006-07-25 Nick Roberts - - * progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers) - (gdb-resync, gdb-prompt, gdb-starting, gdb-exited, gdb-stopped) - (gdb-set-gud-minor-mode-existing-buffers-1): Use different faces - for status indicator. - -2006-07-24 Richard Stallman - - * xml.el (xml-parse-file): Clean up, and use with-temp-buffer. - - * subr.el (dolist, dotimes): Use interned symbols for locals. - (--dotimes-limit--, --dolist-tail--): New defvars. - (looking-back): Doc fix. - - * replace.el (replace-match-string-symbols): Handle dotted lists. - -2006-07-24 Mathias Dahl - - * tumme.el (tumme-write-tags): Add. - (tumme-write-comments): Add. - (tumme-tag-files): Change to use `tumme-write-tags'. - (tumme-tag-thumbnail): Change to use `tumme-write-tags'. - (tumme-dired-comment-files): Change to use `tumme-write-comments'. - (tumme-save-information-from-widgets): Change to use - `tumme-write-comments' and `tumme-write-tags'. - (tumme-comment-thumbnail): Change to use `tumme-write-comments'. - (tumme-write-tag): Remove. - (tumme-write-comment): Remove. - (tumme-display-previous-thumbnail-original): Remove empty line. - (tumme-widget-list): Add punctuation. - -2006-07-24 Mathias Dahl - - * tumme.el (tumme-line-up): Add an extra check for end of buffer. - -2006-07-24 Daiki Ueno - - * pgg-def.el (pgg-truncate-key-identifier): Truncate the key ID to 8 - letters from the end. Thanks to "David Smith" - and andreas@altroot.de (Andreas V,Av(Bgele). - -2006-07-23 Thien-Thi Nguyen - - * mouse.el (mouse-on-link-p): Doc fix. - -2006-07-23 Nick Roberts - - * emacs-lisp/find-func.el (find-function-search-for-symbol): - Handle "C-h f `". - -2006-07-22 Dan Nicolaescu - - * ibuffer.el (ibuffer-formats): Use left alignment for the mode - column. - -2006-07-22 Matt Hodges - - * textmodes/table.el: Add move-beginning-of-line and - move-end-of-line to Point Motion Only Group. - -2006-07-22 Eric Hanchrow (tiny change) - - * progmodes/delphi.el (delphi-fill-comment): Use save-restriction. - -2006-07-22 Micha,Ak(Bl Cadilhac - - * startup.el (user-mail-address): Initialize from the `EMAIL' - environment variable first. Document this. - (command-line): Ditto. - -2006-07-22 Nick Roberts - - * help-mode.el (help-function-def, help-variable-def) - (help-face-def): Print a message in the minibuffer. - -2006-07-21 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Fix key bindings - syntax. Bind S-return, C-M-., C-TAB, S-TAB and C-S-TAB. - -2006-07-21 Eli Zaretskii - - * dos-w32.el (find-buffer-file-type-coding-system): Support calls - where `(nth 1 command)' is a cons cell. Doc fix. - - * textmodes/po.el (po-find-charset): Doc fix. - -2006-07-21 Ken Manheimer - - * allout.el (allout-unprotected, allout-e-o-prefix-p) - (allout-beginning-of-current-line, allout-end-of-current-line) - (allout-next-visible-heading, allout-open-topic) - (allout-kill-topic, allout-yank-processing, allout-resolve-xref) - (allout-flag-current-subtree, allout-show-to-offshoot) - (allout-hide-current-entry, allout-show-current-branches) - (allout-hide-region-body, allout-old-expose-topic) - (allout-listify-exposed, allout-latex-verbatim-quote-curr-line) - (allout-mark-topic, allout-adjust-file-variable): Enclose scopes - containing `beginning-of-line' and `end-of-line' with - `inhibit-field-text-motion' t. - -2006-07-21 Eli Zaretskii - - * frame.el (focus-follows-mouse): Document that it doesn't have - any effect on MS-Windows. - -2006-07-20 Stefan Monnier - - * progmodes/sh-script.el (sh-quoted-subshell): Further fix last change. - -2006-07-20 Jay Belanger - - * calc/calc.el (calc-previous-alg-entry): Remove variable. - - * calc/calc-aent.el (calc-alg-entry-history, calc-quick-calc-history): - New variables. - (calc-alg-entry): Use `calc-alg-entry-history'. - (calc-do-quick-calc): Use `calc-quick-calc-history'. - Remove reference to `calc-previous-alg-entry'. - (calcAlg-edit, calcAlg-enter): Remove reference to - `calc-previous-alg-entry'. - (calcAlg-previous): Use `previous-history-element' instead of - `calc-previous-alg-entry'. - (calc-do-alg-entry): Use history when calling `read-from-minibuffer'. - Change keybinding for `calcAlg-plus-minus', add keybindings for - `previous-history-element' and `next-history-element'. - - * calc/calc-rewr.el (calc-match): Remove reference to - `calc-previous-alg-entry'. - - * calc/calc-sel.el (calc-selection-history): New variable. - (calc-enter-selection, calc-sel-mult-both-sides) - (calc-sel-add-both-sides): Use `calc-selection-history'. - - * calc/calc-map.el (calc-get-operator-history): New variable. - (calc-get-operator): Use `calc-get-operator-history'. - - * calc/calcalg3.el (calc-curve-fit-history): New variable. - (calc-curve-fit): Use `calc-curve-fit-history'. - -2006-07-20 Kenichi Handa - - * international/mule-cmds.el (select-safe-coding-system): Fix the - way of deciding eol-type of the coding system. - -2006-07-20 Alan Mackenzie - - * progmodes/cc-langs.el (c-emacs-variable-inits): New variable. - (c-lang-setvar): New macro. - (c-make-init-lang-vars-fun): Use the initialization forms in - c-emacs-variable-inits in addition to those in c-lang-variable-inits. - (comment-start, comment-end, comment-start-skip): Change these from - c-lang-defvar's to c-lang-setvar's. - - * progmodes/cc-mode.el (c-make-emacs-variables-local): New macro, - which calls make-local-variable on the elements of - c-emacs-variable-inits. - (c-init-language-vars-for): Call this new macro. - -2006-07-19 Stefan Monnier - - * progmodes/compile.el (compilation-error-regexp-alist-alist) : - Try to rule out false positives due to time stamps. - (compilation-mode-font-lock-keywords): Remove rules made redundant - because of the above change. Add `segmentation fault' to the known and - highlighted compilation termination messages. - -2006-07-19 Kim F. Storm - - * progmodes/grep.el (grep-find-ignored-directories): - Add .svn and _darcs to list. - -2006-07-19 Mathias Dahl - - * dired.el (dired-mode-map): Add key binding `C-te' for - `tumme-dired-edit-comment-and-tags'. - - * tumme.el (tumme-display-thumbnail-original-image): Make sure - image display buffer is displayed before call to - `tumme-display-image. - (tumme-dired-display-image): Make sure image display buffer is - displayed before call to `tumme-display-image. - (tumme-mouse-display-image): Make sure image display buffer is - displayed before call to `tumme-display-image. - (tumme-widget-list): Add. - (tumme-dired-edit-comment-and-tags): Add. - (tumme-save-information-from-widgets): Add. - -2006-07-19 Stefan Monnier - - * progmodes/sh-script.el (sh-quoted-subshell): Fix last change. - -2006-07-18 Stefan Monnier - - * progmodes/sh-script.el (sh-font-lock-keywords-1): - Revert inadvertently installed patch hunk. - - * progmodes/compile.el (compilation-find-file): Handle the - cases where the user selects a non-existent file. - -2006-07-18 Stefan Monnier - - * bindings.el (minibuffer-local-map): Rebind TAB so it inserts a \t. - -2006-07-17 Chong Yidong - - * subr.el (sit-for): Just sleep-for if noninteractive. - -2006-07-17 Stefan Monnier - - * emacs-lisp/autoload.el (make-autoload): Use new arg. - - * custom.el (custom-autoload): Add `noset' argument. - (custom-push-theme): Don't autoload the variable, let callers do it. - (custom-theme-set-variables): Autoload the variable if necessary. - - * cus-edit.el (custom-variable-state-set): If the variable was - originally set outside custom, but to the same value as the default, - consider it to be standard. - - * Makefile.in (mh-loaddefs.el): Finish setting up the default empty - file *before* telling Emacs to add the autoloads, in case it fails. - - * progmodes/sh-script.el (sh-quoted-subshell): Don't match escaped `. - Use `cond', push', and `dolist'. - -2006-07-17 Richard Stallman - - * image-mode.el (tar-superior-buffer, archive-superior-buffer): - Add defvars to silence warnings. - -2006-07-17 Chong Yidong - - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Don't highlight "Compiling file" messages as error. - - * dired-aux.el (dired-compress-file): Confirm again if gzipped - file already exists. - -2006-07-16 Thien-Thi Nguyen - - * find-file.el (ff-special-constructs): Doc fix. Also, for C/C++ - entry, don't assign to free var; simply return the extracted filename. - (ff-treat-as-special): Incorporate common preamble from callers. - (ff-other-file-name, ff-find-the-other-file): - Update call to ff-treat-as-special. - - * progmodes/ada-mode.el (ada-mode): Rewrite ff-special-constructs init. - -2006-07-16 Mathias Dahl - - * tumme.el (tumme-get-comment): Fix bug. - -2006-07-16 Stefan Monnier - - * files.el: Remove spurious * in docstrings. - -2006-07-14 Ken Manheimer - - * allout.el (allout-run-unit-tests-on-load): Rectify docstring - grammar. - (allout-beginning-of-current-line): Beware beginning of buffer. - Also, a comment is simplified. - (allout-hotspot-key-handler): Only set allout-post-goto-bullet - when appropriate. (This fix enables use for other than - bullet-hotspot operation.) - (allout-hide-current-subtree): While escalating to sibling-close, - make sure to situate on a topic. - -2006-07-14 Kim F. Storm - - * emulation/cua-base.el (cua-delete-selection) - (cua-toggle-set-mark): New defcustoms. - (cua-rectangle-modifier-key): Add `alt' modifier. - (cua-replace-region): Don't delete if cua-delete-selection is nil. - (cua-set-mark): Don't clear mark if cua-toggle-set-mark is nil. - Suggested by Klaus Zeitler . - - * emulation/cua-rect.el (cua-help-for-rectangle): Add `alt' modifier. - -2006-07-14 Ken Manheimer - - * allout.el: Require 'cl during byte-compilation/interactive load, - for the `assert' macro. - (allout-mode-deactivate-hook): New hook, run when allout mode - deactivates. - (allout-developer): New allout customization subgroup. - (allout-run-unit-tests-on-load): New allout-developer - customization variable, when true allout unit tests are run towards - end of file load/eval. - (allout-inhibit-auto-fill): Disable auto-fill activity even during - auto-fill-mode. - (allout-resumptions): Remove, to be replaced by... - (allout-add-resumptions): Register variable settings to be - reinstated by `allout-do-resumptions'. The settings are made - buffer-local, but the locality/globality of the suspended setting - is restored on resumption. - (allout-do-resumptions): Reinstate all settings suspended using - `allout-add-resumptions'. - (allout-test-resumptions): Unit tests (and intermediate variables) - for resumptions. - (allout-tests-globally-unbound, allout-tests-globally-true) - (allout-tests-locally-true): Intermediate variables for - resumptions unit tests. - (allout-overlay-preparations): Replaces `allout-set-overlay-category'. - (allout-exposure-category): Replaces 'allout-overlay-category variable. - (allout-mode): Use `allout-add-resumptions' and `allout-do-resumptions' - instead of retired `allout-resumptions'. For hook functions, use - `local' parameter so hook settings are created and removed as - buffer-local settings. Revise (resumptions) setting - auto-fill-function so it is set only if already active. (The - related fill-function settings are all made in either case, so - that activating auto-fill-mode activity will have the custom - allout-mode behaviors (hanging indent on topics, if configured for it). - Remove all allout-exposure-category overlays on mode deactivation. - (allout-hotspot-key-handler): New function extracted from - `allout-pre-command-business', so the functionality can be used - for other purposes, eg as a binding in an overlay. - (allout-pre-command-business): Use new `allout-hotspot-key-handler'. - (allout-auto-fill): Respect new `allout-inhibit-auto-fill' - customization variable. - (allout-run-unit-tests): Run the (currently quite small) - repertoire of unit tests. Called just before the provide iff user - has customized `allout-run-unit-tests-on-load' non-nil. - -2006-07-14 K,Aa(Broly L$,1 q(Brentey - - * emacs-lisp/authors.el (authors-aliases): Update. - -2006-07-14 Nick Roberts - - * progmodes/gdb-ui.el (gdb-display-buffer): Check for - gdb-source-window. Add dedicated argument. - (gdb-display-separate-io-buffer, gdb-append-to-inferior-io) - (gdb-display-breakpoints-buffer, gdb-display-stack-buffer) - (gdb-display-threads-buffer, gdb-display-memory-buffer) - (gdb-display-locals-buffer): Use it. - - * progmodes/gud.el (gud-display-line): Use gdb-display-buffer. - Set gdb-source-window. - -2006-07-13 Stefan Monnier - - * emacs-lisp/autoload.el (make-autoload): Remove special handling of - minor modes, redundant with the custom-autoload line above. - -2006-07-12 Chong Yidong - - * longlines.el (longlines-post-command-function): Handle open-line too. - -2006-07-12 Richard Stallman - - * progmodes/grep.el (grep-last-buffer): Doc fix. - - * info.el (Info-try-follow-nearest-node): Doc fix. - - * emacs-lisp/edebug.el (edebug-instrument-function): - Err if find-function-noselect gives no position. - - * emacs-lisp/find-func.el (find-function-search-for-symbol): - If can't find definition, return nil for position. - (find-function-do-it): Handle new return value - of find-definition-noselect. - (find-definition-noselect, find-variable-noselect): Doc fix. - (find-function-noselect): Doc fix. - - * help-mode.el (help-variable-def): Handle find-variable-noselect - returning no position. - (help-function-def): Likewise for find-function-search-for-symbol. - (help-face-def): Likewise. - - * help-fns.el (describe-variable): Handle find-variable-noselect - returning no position. - - * files.el (locate-file-completion): Avoid duplicates in result. - - * cus-edit.el (custom-no-edit): New command. - (custom-mode-map): Remap to custom-no-edit instead of - using suppress-keymap. - -2006-07-12 Nick Roberts - - * tumme.el (tumme-create-thumb, tumme-thumbnail-display-external) - (tumme-display-image, tumme-rotate-thumbnail, tumme-rotate-original) - (tumme-set-exif-data, tumme-get-exif-data): Use shell-command-switch. - - * thumbs.el (thumbs-call-convert): Use shell-command-switch. - -2006-07-11 Kim F. Storm - - * ido.el (ido-copy-current-file-name): Use buffer-name if - buffer-file-name is nil. - -2006-07-11 Chong Yidong - - * simple.el (undo-ask-before-discard): Set to nil. - - * vc.el (vc-exec-after): Don't delete process manually. - (vc-print-log): Run log-view-mode in process sentinel inside - inhibit-read-only. Don't shrink window due to timing issues. - - * progmodes/ebrowse.el (ebrowse-display-member-buffer): - Avoid using with-output-to-temp-buffer, which clobbers local vars. - -2006-07-11 Stefan Monnier - - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Fix ambiguity introduced by last change. - (compilation-find-file): Move save-excursion to where it may - make sense. Fix a left over `find-file'. - -2006-07-11 Robert J. Chassell - - * textmodes/texinfmt.el (texinfo-format-separate-node): - Insert a string before point, which fits documentation, not after. - (texinfo-multitable-item): In a multitable row, insert any - additional needed @tabs and spaces. - -2006-07-11 Nick Roberts - - * tumme.el (tumme-create-thumb, tumme-thumbnail-display-external) - (tumme-display-image, tumme-rotate-thumbnail, tumme-rotate-original) - (tumme-set-exif-data, tumme-get-exif-data): Use call-process - instead of shell-command. - (tumme-create-thumbnail-buffer, tumme-create-display-image-buffer) - (tumme-display-thumbs, tumme-modify-mark-on-thumb-original-file) - (tumme-display-image, tumme-get-exif-data): Use with-current-buffer. - (tumme-display-properties-format, tumme-dired-insert-marked-thumbs) - (tumme-thumbnail-set-image-description, tumme-gallery-generate) - (tumme-rotate-original, tumme-get-exif-file-name): Fit to 80 columns. - -2006-07-11 Kim F. Storm - - * subr.el (sit-for): Doc fix. Specify normal arg list using fn-form. - Remove special case for seconds < 0. Use (redisplay t) instead. - -2006-07-10 Chong Yidong - - * progmodes/cc-awk.el (c-awk-escaped-nls*): Use eval-and-compile to - avoid compilation error. - - * subr.el (sit-for): New function. - - * play/hanoi.el (hanoi-sit-for): Check sit-for return value. - -2006-07-10 Richard Stallman - - * ldefs-boot.el (edebug): Update page. - -2006-07-10 Kim F. Storm - - * emacs-lisp/authors.el (authors-ignored-files): Ignore changes - to FOR-RELEASE and TODO. - -2006-07-10 Romain Francoise - - * emacs-lisp/authors.el (authors-aliases): Update. - -2006-07-10 Alan Mackenzie - - * progmodes/cc-awk.el, cc-defs.el, cc-fonts.el, cc-langs.el: - * cc-mode.el: Changes to eradicate eval-after-load. - -2006-07-09 Chong Yidong - - * emacs-lisp/helper.el (Helper-help-scroller): Don't signal error - on non-char events. - -2006-07-09 Romain Francoise - - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Don't highlight start/end markers as compilation messages. - - * isearch.el (isearch-yank-line): Let-bind `inhibit-field-text-motion' - to t. - -2006-07-09 Stefan Monnier - - * textmodes/fill.el (fill-region-as-paragraph): Refine last change. - -2006-07-08 Richard Stallman - - * term/x-win.el (x-handle-display): Add doc string. - - * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix. - - * subr.el (def-edebug-spec): Move here. - * emacs-lisp/edebug.el (def-edebug-spec): Move to subr.el. - - * imenu.el (imenu-choose-buffer-index): Doc fix. - -2006-07-08 Romain Francoise - - * term/x-win.el (x-display-name): Fix typo. - -2006-07-08 Eli Zaretskii - - * hexl.el (hexl-find-file): Doc fix. - - * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix. - -2006-07-07 Chong Yidong - - * term/x-win.el (x-display-name): Doc fix. - -2006-07-07 Stefan Monnier - - * textmodes/fill.el (fill-delete-prefix): Don't ignore excessively - long prefixes. - (fill-region-as-paragraph): Don't round up to a whole line. - (fill-comment-paragraph): Don't include the code-before-the-comment - when calling fill-region-as-paragraph. - - * international/mule.el (make-char): Remove redundancy. - - * emacs-lisp/bytecomp.el (byte-compile-form): The `byte-compile' - property may contain an anonymous function rather than a symbol. - - * pcvs-defs.el (cvs-temp-buffer-name): Fix non-hiddenness. - - * progmodes/compile.el (compilation-error-regexp-alist-alist) : - Use shy regexp. Fix incorrect backref to potentially unmatched group. - - * dirtrack.el (dirtrack-default-directory-function): Remove. - (dirtrack-directory-function): Use file-name-as-directory. - (dirtrack-windows-directory-function): Simplify. - (dirtrack-forward-slash, dirtrack-backward-slash) - (dirtrack-replace-slash): Remove. - (dirtrack-toggle): Adjust comint-preoutput-filter-functions as well. - (dirtrack): Fix wrong parenthesizing; use match-string. - - * progmodes/octave-inf.el: Remove spurious * in docstrings. - (inferior-octave-mode): Only change the buffer-local value of - comint-dynamic-complete-functions. - (inferior-octave-mode-map, inferior-octave-mode-syntax-table): - Move the initialization to the declaration. - (inferior-octave-complete): Remove unused var `filter'. - - * shell.el (shell-mode): Only change the buffer-local value of - comint-dynamic-complete-functions. - -2006-07-07 Carsten Dominik - - * textmodes/org.el (org-agenda-get-todos): Skip subtree also if - entry is skipped because it has been scheduled. - (org-prepare-agenda-buffers): Don't mark buffers as modified when - changing `:org-archived' and `:org-comment' properties. - -2006-07-06 Chong Yidong - - * server.el (server-select-display): Don't make the temp frame - minibuffer-only, in case it's not a temp frame. - (server-process-filter): Don't delete the temp frame if it's the - only one we have on that display. - - * files.el (find-alternate-file): Doc fix. - -2006-07-05 Richard Stallman - - * files.el (abbreviate-file-name): Add save-match-data. - -2006-07-03 Richard Stallman - - * faces.el (read-face-name): Doc fix. - -2006-07-05 Chong Yidong - - * net/goto-addr.el (goto-address): Mark as safe for local evals. - -2006-07-05 Andre Spiegel - - * vc.el (vc-diff-internal): Fix prev change. - -2006-07-05 Thien-Thi Nguyen - - * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Use eval-buffer. - * play/dunnet.el (dun-load-d, dun-eval): Likewise. - -2006-07-04 Stefan Monnier - - * thingatpt.el (symbol-at-point): Don't use `form-at-point' which - fails if the symbol contains chars like ( or '. - (bounds-of-thing-at-point): Remove unused vars `end' and `beg'. - (thing-at-point-bounds-of-url-at-point): Remove unused vars `url' and - `short'. - -2006-07-04 Kenichi Handa - - * international/mule-cmds.el (set-language-info): If LANG-ENV is - the current one, don't call set-language-environment, but call one - of set-language-environment-XXX to make INFO effective now. - (set-language-environment): Call set-language-environment-XXX - functions instead of doing the various setups directly. - (set-language-environment-coding-systems): Delete argument eol-type. - (set-language-environment-input-method) - (set-language-environment-nonascii-translation) - (set-language-environment-charset) - (set-language-environment-fontset) - (set-language-environment-unibyte): New functions. - -2006-07-03 Luc Teirlinck - - * locate.el (locate-update-when-revert): New option. - (locate-update-path): New option (suggested by Michael Albinus). - (locate-prompt-for-command): Whitespace change. - (locate-update): No longer offer to update the locate database by - default. Implement the two new options. - -2006-07-04 Nick Roberts - - * tooltip.el: Move comment about track-mouse... - - * progmodes/gud.el: ...to here. - -2006-07-03 Chong Yidong - - * facemenu.el (facemenu-listed-faces): New var. - (facemenu-unlisted-faces): Variable deleted. - (facemenu-add-new-face): Use facemenu-listed-faces. - - * emulation/viper-init.el, calendar/calendar.el: - * progmodes/make-mode.el: Delete calls to facemenu-unlisted-faces. - -2006-07-03 Carsten Dominik - - * textmodes/org.el (org-mode): Remove no invalid settings for - calc embedded mode. - (org-mode-p): New defsubst. - (org-save-all-org-buffers): New function. - (org-first-headline-recenter): Enclose outline-regexp in group - delimiters. - (org-set-tags): Keep single space after stars. - -2006-07-02 Stefan Monnier - - * window.el (set-window-text-height): Only set window-min-height to - 1 if that's the requested size. - - * diff-mode.el (diff-find-file-name): Obey cvs-pcl-cvs-dirchange-re. - (diff-unified->context, diff-context->unified) - (diff-reverse-direction): Make sure the end marker stays at the end. - (diff-mode): Add the keymap table at the end of docstring. - Use lexical-let rather than constructing a closure manually. - - * files.el (find-file-noselect-1): Remove unused var assignment. - (hack-local-variables-confirm): Print lists of strings as lists of - strings rather than lists of symbols. - (abbreviate-file-name, hack-local-variables-prop-line): - Use match-string. - (hack-one-local-variable): Move `make-local-variable' nearer its use. - (recover-session-finish): Use line-end-position. - -2006-07-02 Michael Albinus - - * net/tramp.el (tramp-handle-shell-command): Preserve current-buffer. - -2006-07-02 Daniel Pfeiffer - - * progmodes/make-mode.el (makefile-macroassign-regex): - Accept preceding keyword. - (makefile-gmake-statements): Reorganize, now that makepp has - "override" and also handle forgotten "override define". - (makefile-makepp-statements): Add new "global", "override export" - and "override global". - -2006-06-30 Juanma Barranquero - - * progmodes/ada-mode.el (ada-which-compiler, ada-mode-menu) - (ada-compile-mouse-goto-error, ada-deactivate-properties) - (ada-no-auto-case): Fix typos in docstrings. - -2006-06-30 Nick Roberts - - * info.el (Info-find-node-2): Search for makeinfo version more - carefully. - -2006-06-29 Carsten Dominik - - * textmodes/org.el (org-prepare-agenda-buffers): - Use `invisible-OK' argument for `org-end-of-subtree'. - (org-export-cleanup-toc-line): Rename from `org-html-cleanup-toc-line'. - (org-beginning-of-item): Fix bug in regular expression for white line. - (org-export-as-html): Enforce space after bullet in plain list items. - (org-set-autofill-regexps): Require space after plain list bullet - for paragraph-start. - (org-ts-regexp3): New constant. - (org-at-timestamp-p): New optional argument ALSO-INACTIVE. - (org-timestamp-up-day, org-timestamp-down-day) - (org-timestamp-change): Work with inactive timestamps. - (org-ts-regexp1): Don't allow brackets in time stamps. - -2006-06-29 Nick Roberts - - * help-mode.el (help-xref-symbol-regexp): Add property as a keyword - for ignoring links. - - * faces.el (read-face-name): Use it. - -2006-06-28 Juri Linkov - - * buff-menu.el (list-buffers-noselect): Compare Info file - with the string "dir" to detect Info directory. - - * complete.el (partial-completion-mode): In lambda for - `choose-completion-string-functions' use full function signature - with 4 args, and move point to the end of the minibuffer only if arg - `mini-p' is non-nil. - -2006-06-28 John Paul Wallington - - * ibuffer.el (ibuffer-mode): Doc fix. - -2006-06-28 Carsten Dominik - - * textmodes/org.el (org-context): New contexts :item-bullet, - :latex-fragment, :latex-preview. - (org-overlays-at, org-overlay-start, org-overlay-end): - New compatibility functions. - (org-inside-LaTeX-fragment-p): More accurate matching, using the - exact regexp that will be used during export. - (org-latex-regexps): New variable. - (org-cdlatex-mode): Improve advice for `texmathp'. - (turn-on-org-cdlatex): New function. - -2006-06-28 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-handle-font-selection): Change keys of - mac-atsu-font-table from strings to numbers. - (mac-ts-caret-position): Use also when cursor-type is nil. - (mac-ts-update-active-input-area): Add Mac OS Classic support. - Relax condition for using overlay strings. - Use mac-ts-caret-position face when cursor-type is nil. - -2006-06-26 Kim F. Storm - - * help.el (view-emacs-news): Declare `res' in the right let* form. - -2006-06-25 Michael Albinus - - * net/rcompile.el (remote-compile): Replace ange-ftp based - implementation by Tramp functions. - Suggested by Marc Abramowitz . - - * net/tramp.el (tramp-unload-tramp): Provide a doc string. - -2006-06-24 Yoshinori Koseki - - * international/fontset.el (setup-default-fontset): Fix a typo in - the "Oriya-Akruti" registry name. - -2006-06-23 Lars Hansen - - * desktop.el (desktop-full-file-name): New function. - (desktop-kill, desktop-save, desktop-remove, desktop-read) - (desktop-revert): Use it. - (desktop-clear, desktop-save, desktop-remove): Add autoload cookie. - (desktop-after-read-hook): Add option list-buffers. - (desktop-locals-to-save): Add tab-width. - (desktop-save-mode, desktop-no-desktop-file-hook, desktop-save-hook): - Fix docstring. - -2006-06-23 Carsten Dominik - - * textmodes/org.el (org-cdlatex-mode-map) - (org-cdlatex-texmathp-advice-is-done): New variables. - (org-cdlatex-mode): New minor mode. - (org-inside-LaTeX-fragment-p, org-try-cdlatex-tab): New functions. - (org-cdlatex-underscore-caret, org-cdlatex-math-modify): New commands. - (org-export-with-archived-trees): New option. - (org-open-file): Remove the call to `convert-standard-filename'. - (org-archive-tag, org-agenda-skip-archived-trees) - (org-cycle-open-archived-trees) - (org-sparse-tree-open-archived-trees): New options. - (org-cycle-hide-archived-subtrees, org-hide-archived-subtrees) - (org-toggle-tag, org-prepare-agenda-buffers, org-agenda-skip): - New functions. - (org-agenda-toggle-archive-tag, org-toggle-archive-tag): New commands. - (org-agenda-mode-map): Add binding of `org-agenda-toggle-archive-tag'. - (org-mode-map): Add binding for `org-toggle-archive-tag'. - (org-timeline, org-agenda-list, org-todo-list, org-tags-view): - Call `org-prepare-agenda-buffers'. - (org-occur, org-scan-tags): Call `org-hide-archived-subtrees'. - (org-file-apps, org-file-apps-defaults-gnu) - (org-file-apps-defaults-macosx, org-file-apps-defaults-windowsnt): - Handle remote files by forcing them to be opened in Emacs. - -2006-06-23 Andre Spiegel - - * vc.el (vc-diff-knows-L): New variable. - (vc-diff-internal): Use it to handle "diff" programs that don't - understand -L. This works automatically, no user action is necessary. - -2006-06-23 Daniel Brockman - - * net/rcirc.el (rcirc-default-user-full-name): Default to - `rcirc-default-user-name' instead of `rcirc-user-name' (which no - longer exists). - (rcirc-process-list): Check `buffer-live-p' before attempting to - switch to a buffer. - -2006-06-23 Ryan Yeske - - * net/rcirc.el (rcirc-mode): Fix initialization of coding systems - based on rcirc-coding-system-alist. - -2006-06-23 Martin Rudalics - - * cus-edit.el (customize-apropos): A better error message. - (top level) : Extend and update the list of - ignored error messages. - -2006-06-23 Michael Ernst - - * complete.el (PC-do-completion): Retain capitalization of user - input, when possible, even if completion-ignore-case is set. - -2006-06-23 Eli Zaretskii - - * generic-x.el (bat-generic-mode): Support .cmd files. - - * dos-w32.el (top level): Use find-file-not-found-functions - instead of the obsolete find-file-not-found-hooks. - -2006-06-22 Kim F. Storm - - * progmodes/grep.el (grep-mode-font-lock-keywords): Correct regexps - to recognize mode name containing submodes, such as Grep/lw. - -2006-06-21 Kim F. Storm - - * simple.el (line-move-1): Check for move-end-of-line instead of - end-of-line when setting temporary-goal-column. - -2006-06-21 Miles Bader - - * play/cookie1.el (cookie): Work properly when there's only one entry. - -2006-06-21 Nick Roberts - - * progmodes/gdb-ui.el (gdb-exited): Ensure overlay arrow gets killed. - (gdb-frame-handler): Generalize frame regexp for templates. - -2006-06-20 Glenn Morris - - * calendar/appt.el (appt-display-format): Default value must be - one of the customize options. - -2006-06-20 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Update key availability info. - Bind C-return. - - * term.el (term-delete-lines, term-insert-lines): Clarify comments. - -2006-06-20 Chong Yidong - - * files.el (hack-local-variables): Run `hack-local-variables-hook' - whether or not a local variables list is defined. - - * msb.el (msb): Move `sit-for' hack here to handle both - "mouse-down and drag" and "mouse-up and select" situations. - (mouse-select-buffer): Move `sit-for' hack to `msb'. - -2006-06-20 Kenichi Handa - - * international/characters.el (word-combining-categories): - Add entries for 2-byte Han characters. - -2006-06-19 Richard Stallman - - * bindings.el (mode-line-format): Save some mode line space. - - * files.el (find-file-noselect): Improve the question wording. - (basic-save-buffer-2): Mask UMASK against 666. - - * mouse.el (mouse-drag-vertical-line-rightward-window): New function. - (mouse-drag-vertical-line): Call it. - - * cus-edit.el (customize-option, customize-option-other-window): - Error if SYMBOL is nil. - -2006-06-19 Carsten Dominik - - * textmodes/org.el: Require noutline, also on XEmacs. - (org-end-of-subtree): Return point. - (org-dblock-start-re, org-dblock-end-re): New constants. - (org-create-dblock, org-prepare-dblock, org-map-dblocks) - (org-dblock-update, org-update-dblock, org-beginning-of-dblock) - (org-update-all-dblocks, org-find-dblock): New functions. - (org-collect-clock-time-entries): New function. - (org-html-handle-time-stamps): Never export CLOCK timeranges. - (org-fixup-indentation): Modify to deal correctly with lines - starting with TAB. Only one argument DIFF now. - (org-demote, org-promote): Call `org-fixup-indentation' with just - one argument, DIFF. - (org-mode): Don't mark buffer as modified when aligning tables. - (org-clock-sum): Don't mark buffer modified when adding time sum - properties. - (org-export-as-html): Add support for a link validation function. - (org-archive-all-done): New function. - (org-archive-subtree): New prefix argument. When set, archive all - done subtrees in this buffer. - (org-remove-clock-overlays) - (org-remove-occur-highlights): Use `org-inhibit-highlight-removal'. - (org-inhibit-highlight-removal): New variable, for dynamic scoping. - (org-put-clock-overlay): Don't swallow last headline character - when displaying overlay. - (org-store-link): Link to `image-mode' with just the file name. - -2006-06-18 Michael Kifer - - * emulation/viper-cmd.el (viper-special-read-and-insert-char): - Use read-key-sequence. - (viper-after-change-undo-hook): Misc enhancements. - (viper-after-change-undo-hook): New hook. - (viper-undo): Use viper-after-change-undo-hook. - (viper-add-newline-at-eob-if-necessary): Widen before making changes. - (viper-next-line-at-bol): If point is on a widget or a button, simulate - clicking on that widget/button. - - * emulation/viper.el (viper-mode): Allow a separate cursor color - in Emacs state. - - * ediff-diff.el (ediff-test-patch-utility): Catch errors. - (ediff-actual-diff-options, ediff-actual-diff3-options): New variables. - (ediff-set-actual-diff-options): New function. - (ediff-reset-diff-options, ediff-toggle-ignore-case): - Use ediff-set-actual-diff-options. - (ediff-extract-diffs): Catch errors. - (ediff-whitespace): Add non-breakable space. - (ediff-same-file-contents): Catch errors. - - * ediff-mult.el (ediff-collect-custom-diffs): - Save coding-system-for-read. - - * ediff-vers.el (ediff-keep-tmp-versions): New variable. - (ediff-vc-internal, ediff-vc-merge-internal): - Use ediff-delete-version-file. - (ediff-delete-version-file): New function. - - * ediff-wind.el (ediff-control-frame-parameters): Set frame fringes. - - * ediff.el (ediff-directories, ediff-directory-revisions) - (ediff-merge-directories, ediff-merge-directories-with-ancestor) - (ediff-directories-internal, ediff-merge-directory-revisions) - (ediff-merge-directory-revisions-with-ancestor) - (ediff-directories3): Use read-directory-name. - -2006-06-18 Ralf Angeli - - * textmodes/tex-mode.el (tex-font-lock-match-suscript): - Remove superfluous part of regexp for brace matching which is handled - by `scan-lists' call. - -2006-06-16 Richard Stallman - - * obsolete/options.el (list-options): Put "obsolete" msg in buffer. - - * files.el (basic-save-buffer-2): For a new precious file, - use the default modes in the return value. - - * facemenu.el (facemenu-color-alist): Doc fix. - - * cus-edit.el (custom-guess-name-alist): Recognize `-flag'. - -2006-06-16 YAMAMOTO Mitsuharu - - * cus-start.el (all): Add mac-ts-script-language-on-focus. - - * term/mac-win.el (mac-text-encoding-ascii): New constant. - (mac-utxt-to-string): Use it. - (mac-ts-update-active-input-area): Use mac-ae-number. - -2006-06-15 Dan Nicolaescu - - * term.el (term-handle-scroll, term-delete-lines) - (term-insert-lines): Fix off by one errors. - -2006-06-15 Katsumi Yamaoka - - * net/tramp.el (tramp-touch): Use UTC to express time. - -2006-06-15 Chong Yidong - - * mail/sendmail.el (mail-send): Search explicitly for - mail-header-separator when checking for corrupted header lines. - -2006-06-15 Nick Roberts - - * progmodes/gdb-ui.el (gdb-same-frame): New option. - (gud-old-arrow, gdb-frame-begin, gdb-printing): New variables. - (gdb-init-1): Initialise them. - (gdb-starting): Reset gdb-printing - (gdb-starting): Save value of gud-overlay-arrow-position. - (gdb-frame-begin): Set gdb-frame-begin, gdb-printing. - (gdb-stopped): Don't look for source if calling procedure e.g "p a ()". - Use gdb-*-gdb-buffer conditionally on gdb-same-frame. - (gdb-frame-gdb-buffer): Keep menu bar, tool bar for GUD buffer. - -2006-06-14 Stefan Monnier - - * pcvs.el (cvs-retrieve-revision): Use decode-coding-inserted-region. - -2006-06-13 Martin J. Reed (tiny change) - - * net/ldap.el (ldap-ldapsearch-args): Default to SASL search. - (ldap-search-internal): Keep error messages, and a regexp fix. - -2006-06-12 Thien-Thi Nguyen - - * files.el (hack-local-variables-confirm): - Display string value using its printed representation. - -2006-06-11 Chong Yidong - - * server.el (server-edit): No-op if no server buffers exist. - -2006-06-11 Robert J. Chassell - - * textmodes/page-ext.el (pages-directory-for-addresses): - Including `pages-directory-address-mode' in the function results - in the message "Buffer in which pages were found is deleted". - -2006-06-10 Carsten Dominik - - * textmodes/org.el (org-agenda-mode-map): Add bindings for - clocking functions. - - (org-agenda-clock-in, org-check-running-clock) - (org-clock-out-if-current, org-remove-clock-overlays) - (org-put-clock-overlay): New functions. - (org-clock-marker, org-clock-file-total-minutes) - (org-clock-overlays): New variables. - (org-clock-display, org-clock-sum, org-clock-cancel) - (org-clock-out, org-clock-in): New commands. - (org-export): New function. - (org-emph-re): New constant. - (org-set-emph-re, org-do-emphasis-faces): New functions. - (org-emphasis-regexp-components, org-emphasis-alist): New options. - (org-set-font-lock-defaults): Call `org-do-emphasis-faces'. - (org-export-html-convert-emphasize): Use the configurable emphasis. - (org-cleaned-string-for-export): Make multiline emphasis visible - to the exporter. New optional argument PARAMETERS. - (org-export-as-html): Specify :emph-multiline parameter to - `org-cleaned-string-for-export'. - -2006-06-10 Richard Stallman - - * help.el (help-for-help-internal): Clean up help text. - -2006-06-10 Andreas Schwab - - * language/ethio-util.el (ethio-fidel-to-java-buffer): Fix quoting - in doc string. - - * progmodes/cperl-mode.el (cperl-short-docs): Likewise. - -2006-06-09 Karl Chen - - * progmodes/make-mode.el (makefile-fill-paragraph): Don't remove - spaces after the comment start. - -2006-06-09 Micha,Ak(Bl Cadilhac - - * play/pong.el (pong-init-buffer): - Fill buffer with spaces instead of ^A. - - * textmodes/ispell.el (ispell-kill-ispell): If ispell has been - launched asynchronously, delete its process instead of being cool. - (ispell-async-processp): Check for `delete-process' existence - instead of `kill-process' one for consistency. - -2006-06-09 Nick Roberts - - * progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers-1) - (gdb-prompt, gdb-set-gud-minor-mode-existing-buffers): Show status - in mode line at startup. - -2006-06-08 Kim F. Storm - - * ido.el (ido-take-first-match, ido-push-dir-first): New commands. - (ido-init-completion-maps): Bind them to M-SPC and M-v. - (ido-copy-current-file-name): Repeating C-w inserts whole file name. - (ido-file-internal): Pass full file name to write-file. - (ido-read-internal): Only pop stack elements automatically if they - actually match an existing directory or file name. - -2006-06-07 Kenichi Handa - - * international/mule.el (find-auto-coding): Don't handle the short - name `char-trans'. - - * files.el (hack-local-variables-prop-line) - (hack-local-variables): Cancel the previous change. - -2006-06-06 Jesper Harder - - * ediff-diff.el (ediff-test-utility): Protect against file-error. - -2006-06-06 Chong Yidong - - * diff-mode.el (diff-mode): Set buffer-read-only to t when - diff-default-read-only is non-nil. - (diff-hunk-kill, diff-file-kill, diff-split-hunk) - (diff-refine-hunk): Set inhibit-read-only to t. - - * diff.el (diff-sentinel, diff): Set inhibit-read-only to t when - modifying the *Diff* buffer. - (diff-process-filter): New filter function for diff process that - sets inhibit-read-only to t when modifying the *Diff* buffer. - -2006-06-06 Carsten Dominik - - * textmodes/org.el (org-archive-subtree): Use end-of-subtree as - insertion point and control the number of empty lines. - (org-paste-subtree): Limit the number of empty lines at the end of - the inserted tree. - (org-agenda): Use buffer name of current file for narrowing. - (org-export-as-xml): Command removed. - (org-export-xml-type): Option removed. - (org-mode-map): Call `org-export-as-xoxo' directly. - (org-get-indentation): New optional argument LINE. - (org-fix-indentation, org-remove-tabs): New functions. - (org-export-as-ascii, org-ascii-level-start): Determine and apply - correct indentation for headlines that are converted it items. - (org-skip-comments): Remove table lines that contain narrowing - cookies but no other non-empty fields. - (org-set-tags): Allow groups of mutually exclusive tags. - (org-cmp-time): Sort 24:21 before items without time. - (org-get-time-of-day): Fix the interpretation of 12pm and 12am. - (org-open-at-point): Require double colon also for numbers. - -2006-06-06 Kim F. Storm - - * ido.el (ido-default-file-method, ido-default-buffer-method): - Make choice values consistent with corresponding command names. - (ido-visit-buffer): Update accordingly. Default to selected-window. - -2006-06-06 Nick Roberts - - * progmodes/gud.el (gud-running): Fix doc string. - (gud-menu-map): Use :visible instead fo :enable for debugger test. - (gud-tooltip-modes): Add python-mode. - (gud-tooltip-print-command): Add pdb. Remove perldb. - -2006-06-05 Eli Zaretskii - - * makefile.w32-in (bootstrap, $(lisp)/mh-e/mh-loaddefs.el): - Quote $(EMACS). - -2006-06-05 Richard Stallman - - * faces.el (defined-colors): Doc fix. - -2006-06-05 Thien-Thi Nguyen - - * vc.el (vc-process-filter): Inhibit undo info collection around - call to insert. - (vc-setup-buffer): Likewise for call to erase-buffer. - (vc-do-command): Likewise for call to process-file. - -2006-06-05 Nick Roberts - - * progmodes/gud.el (gud-menu-map): Use a conditional help echo - for gud-go. - (gud-common-init): Other debuggers may trigger error. - -2006-06-05 Kenichi Handa - - * international/mule.el (find-auto-coding): - Handle enable-character-translation in file header. - -2006-06-04 Kim F. Storm - - * emacs-lisp/authors.el (authors-aliases): Add mode aliases. - (authors-fixed-entries): Fix spelling. - (authors-canonical-file-name): Don't report error for wildcards. - - * help.el (view-emacs-news): Rewrite to support new NEWS, - NEWS.major, and NEWS.1-17 file naming. Add more intelligence, - e.g. version 10 matches 1.10, and don't be confused by version 1.1 - being a prefix of 1.12 (etc). A numeric prefix arg also works. - -2006-06-03 Vivek Dasmohapatra - - * progmodes/sh-script.el (sh-quoted-exec): New face for quoted - exec constructs like `foo bar`. - (sh-quoted-subshell): New helper function to search for a possibly - nested subshell (like `` or $()) within a "" quoted string. - (sh-font-lock-keywords-var): Add sh-quoted-exec for Bash. - (sh-apply-quoted-subshell): Flag quote characters inside a - subshell, which is itself already in a quoted region, as - punctuation, since this is the closest to what they actually are. - (sh-font-lock-syntactic-keywords): Add sh-quoted-subshell and - sh-apply-quoted-subshell. - (sh-font-lock-syntactic-face-function): Apply the new face for - text inside `` instead of the old font-lock-string-face. - -2006-06-03 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-ts-active-input-overlay): Add defvar. - (mac-ae-number, mac-ae-frame, mac-ae-script-language) - (mac-bytes-to-text-range, mac-ae-text-range-array) - (mac-ts-update-active-input-buf, mac-split-string-by-property-change) - (mac-replace-untranslated-utf-8-chars, mac-ts-update-active-input-area) - (mac-ts-unicode-for-key-event): New functions. - (mac-handle-toolbar-switch-mode): Use mac-ae-frame. - (mac-handle-font-selection): Use mac-ae-number. - (mac-ts-active-input-buf, mac-ts-update-active-input-area-seqno): - New variables. - (mac-ts-caret-position, mac-ts-raw-text, mac-ts-selected-raw-text) - (mac-ts-converted-text, mac-ts-selected-converted-text) - (mac-ts-block-fill-text, mac-ts-outline-text) - (mac-ts-selected-text, mac-ts-no-hilite): New faces. - (mac-ts-hilite-style-faces): New constant. - (mac-apple-event-map): Bind text input events. - (mac-dispatch-apple-event): Use command-execute instead of - call-interactively. - (global-map): Don't bind mac-apple-event. - (special-event-map): Bind mac-apple-event. - -2006-06-02 Eli Zaretskii - - * makefile.w32-in (EMACS): Remove quotes from the Emacs executable - file name. - (emacs): Enclose the value of $(EMACS) in quotes. - -2006-06-02 Juri Linkov - - * international/mule.el (sgml-html-meta-auto-coding-function): - Remove the condition `(search-forward " - - * files.el (hack-local-variables-prop-line): Ignore `char-trans' - as well as `coding'. - (hack-local-variables): Likewise. - - * international/mule.el (enable-character-translation): - Put permanent-local and safe-local-variable properties. - (find-auto-coding): Handle char-trans: tag. - -2006-06-02 Juri Linkov - - * international/mule.el (sgml-html-meta-auto-coding-function): - Limit the search by the end of the HTML header (if any). - -2006-06-01 Richard Stallman - - * subr.el (with-current-buffer): Doc fix. - -2006-06-02 Masatake YAMATO - - * progmodes/compile.el (compilation-error-regexp-alist-alist::gcov-*): - Almost rewrite. Underlines over all lines of gcov output are too - uncomfortable to read. Suggested by Dan Nicolaescu. - -2006-06-01 Luc Teirlinck - - * progmodes/inf-lisp.el (inferior-lisp-mode): Doc fixes. - - * shell.el (shell-mode): Use shell-mode-map in docstring. - - * comint.el (comint-send-input): Do not add help-echo and - mouse-face to input if `comint-use-prompt-regexp' is non-nil. - -2006-06-01 Jan Dj,Ad(Brv - - * term/x-win.el: Change x-menu-bar-start to menu-bar-open. - -2006-06-01 Nick Roberts - - * progmodes/gdb-ui.el (gdb-look-up-stack): New variable. - (gdb-stopped, gdb-info-stack-custom): If there is no source info - look up the stack and pop up GUD buffer if necessary. - (gdb-frames-select): Remove redundant call to gud-display-frame. - (gdb-info-threads-custom): Keep point at start of buffer. - (gdb-find-file-hook): Make it work for pre-GDB 6.4. - -2006-05-31 Juri Linkov - - * replace.el (query-replace-read-from, query-replace-read-to): - Bind `history-add-new-input' to nil. Call `add-to-history'. - -2006-05-31 Takaaki Ota - - * textmodes/table.el: Convert all HTML tags to lower case for - XHTML compatibility. - -2006-05-31 Masatake YAMATO - - * progmodes/compile.el: - (compilation-error-regexp-alist-alist::gcov-called-line): - Don't put face on `-' lines in gcov file. Suggested by Dan Nicolaescu. - -2006-05-31 Nick Roberts - - * progmodes/gud.el (gud-query-cmdline, gud-common-init): - Revert inadvertent changes made with last commit. - -2006-05-30 Reiner Steib - - * textmodes/flyspell.el (turn-on-flyspell, turn-off-flyspell): - New functions. - - * textmodes/text-mode.el (text-mode-hook): Use turn-on-flyspell. - -2006-05-30 Carsten Dominik - - * textmodes/org.el (org-agenda-highlight-todo): Make sure regexp - only matches in the right place. - (org-upcoming-deadline): New face. - (org-agenda-get-deadlines): Use new face `org-upcoming-deadline'. - (org-export-ascii-underline): Rename constant `org-ascii-underline' - and make it an option. - (org-export-ascii-bullets): New option. - (org-export-as-html): Many changes to emit valid XHTML. - (org-par-open): New variable. - (org-open-par, org-close-par-maybe, org-close-li-maybe): New functions. - (org-html-do-expand, org-section-number): Fix case in `replace-match'. - (org-timeline): Pass `org-timeline-show-empty-dates' to - `org-get-all-dates'. Interpret empty dates returned by - `org-get-all-dates'. - (org-get-all-dates): New argument EMPTY. Add dates without - entries to the list, mark large ranges of empty dates. - (org-point-in-group, org-context): New functions. - -2006-05-30 Nick Roberts - - * progmodes/gud.el (gud-stop-subjob): Make it work in all buffers. - - * progmodes/gdb-ui.el: Move gdb-mouse-toggle-breakpoint-* to - C-mouse-1. Move gdb-mouse-until to mouse-3, gdb-mouse-jump - to C-mouse-3 (for 2 button mice). - (gdb-send): Do the right thing for C-d. - - * speedbar.el (speedbar-detach): Delete. - (speedbar-easymenu-definition-trailer): Remove speedbar-detach as - it breaks things. - (speedbar-reconfigure-keymaps): Always add extra items to pop up menu. - -2006-05-30 Daniel Pfeiffer - - * files.el (auto-mode-alist): Add makepp suffix and optional mk on - Makeppfile. - - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Add makepp diagnostic. - -2006-05-29 Richard Stallman - - * window.el (fit-window-to-buffer): Doc fix. - - * help.el (temp-buffer-max-height): Doc fix. - - * subr.el (with-current-buffer): Doc fix. - -2006-05-29 Jan Dj,Ad(Brv - - * term/x-win.el: Bind F10 to menu-bar-start if available. - -2006-05-28 Dan Nicolaescu - - * term.el (term-if-xemacs, term-ifnot-xemacs): Delete, replace - uses with a simple test. - (term-set-escape-char, term-mode, term-check-kill-echo-list) - (term-send-raw-string, term-send-raw, term-mouse-paste) - (term-char-mode, term-line-mode, term-exec, term-sentinel) - (term-handle-exit, term-read-input-ring) - (term-previous-matching-input-string) - (term-previous-matching-input-string-position) - (term-previous-matching-input-from-input) - (term-replace-by-expanded-history, term-send-input) - (term-skip-prompt, term-bol, term-send-invisible) - (term-kill-input, term-delchar-or-maybe-eof) - (term-backward-matching-input, term-check-source) - (term-proc-query, term-emulate-terminal) - (term-handle-colors-array, term-process-pager, term-pager-line) - (term-pager-bob, term-unwrap-line, term-word) - (term-dynamic-complete-filename) - (term-dynamic-complete-as-filename) - (term-dynamic-simple-complete): Replace one arm ifs with whens or - unlesses. - -2006-05-29 Stefan Monnier - - * files.el (hack-one-local-variable-eval-safep): Don't burp if used - during bootstrapping. - - * emacs-lisp/ewoc.el (ewoc--current-dll): Remove. - Basically undo the change of 2006-05-26: use extra arguments instead of - dynamic scoping. - (ewoc-locate): Remove unused var `footer'. - -2006-05-28 Stefan Monnier - - * emacs-lisp/ewoc.el (ewoc--insert-new-node): Use ewoc--refresh-node. - - * emacs-lisp/autoload.el (no-update-autoloads): Declare. - (generate-file-autoloads): Obey it. Return whether autoloads were - added at point or not. - (update-file-autoloads): Use this new return value. - Remove redundant test for the presence of an autoload cookie. - - * emacs-lisp/autoload.el (autoload-find-file): New fun. - This one calls hack-local-variables. - (generate-file-autoloads, update-file-autoloads): Use it. - - * textmodes/bibtex.el (bibtex-autokey-name-case-convert-function) - (bibtex-sort-entry-class): Add safe-local-variable predicate. - (bibtex-sort-entry-class-alist): Don't set the global value. - (bibtex-init-sort-entry-class-alist): New fun. - (bibtex-sort-buffer, bibtex-prepare-new-entry): Call it to compute - bibtex-init-sort-entry-class-alist from the buffer-local value (if any) - of bibtex-init-sort-entry-class. - -2006-05-28 Richard Stallman - - * subr.el (load-history-regexp): If FILE is relative, insist - entire last name component must match it. - (load-history-filename-element, load-history-regexp): Doc fixes. - -2006-05-29 Kim F. Storm - - * emacs-lisp/bindat.el (bindat-idx, bindat-raw): Rename dynamic vars - `pos' and `raw-data' for clarity, as eval forms may access these. - -2006-05-28 Kim F. Storm - - * emacs-lisp/bindat.el (bindat--unpack-u8): Use aref also for strings. - -2006-05-28 Stefan Monnier - - * progmodes/make-mode.el (makefile-browser-map) - (makefile-mode-syntax-table): Move initialization inside declaration. - (makefile-fill-paragraph): Use the default comment-filling code. - -2006-05-28 Chong Yidong - - * replace.el (query-replace-defaults): New variable. - (query-replace-read-from): Use `query-replace-defaults' for - default value, instead of history list. - (query-replace-read-to): Update `query-replace-defaults'. - -2006-05-27 Chong Yidong - - * msb.el (mouse-select-buffer): Minor fix to make popup menu work - with no X toolkit. - -2006-05-28 Nick Roberts - - * tumme.el (tumme-show-all-from-dir-max-files): Fix typo. - (tumme-show-all-from-dir): Add autoload. - -2006-05-27 Mathias Dahl - - * tumme.el: Change a lot of `(if .. (progn ..)' to `(when ..)'. - (tumme-remove-tag): Fix bug. - -2006-05-27 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc--create): No longer take HEADER and - FOOTER args. Update unique caller. - (ewoc-delete): Compute last node once before looping. - (ewoc--node-branch): Merge into unique caller. - (ewoc--node): Don't define constructor make-ewoc--node for this - structure. - (ewoc): Add member `hf-pp' to this structure. - (ewoc--wrap): New func. - (ewoc-create): Take additional arg NOSEP. If nil, wrap node and - header/footer pretty-printers. Save header/footer pretty-printer. - (ewoc-set-hf): Use ewoc's header/footer pretty-printer. - - * pcvs.el (cvs-make-cvs-buffer): Specify NOSEP to `ewoc-create'. - -2006-05-27 Mathias Dahl - - * dired.el (dired-mode-map): Change `tumme-tag-remove' to - `tumme-delete-tag'. Rename `Remove Image Tag' to `Delete Image - Tag'. Change "Compare directories..." to "Change Directories...". - Move tumme commands to Operate, Regexp and Immediate menus. - Change "Add Comment" to "Add Image Comment". Change "Add Image - Tag" to "Add Image Tags". - - * tumme.el (tumme-delete-tag): Rename from `tumme-tag-remove'. - (tumme-setup-dired-keybindings): Change `tumme-add-remove' to - `tumme-delete-tag'. - -2006-05-26 Luc Teirlinck - - * shell.el (shell-mode): Call shell-dirtrack-mode after - list-buffers-directory is made a local variable, to avoid setting - the default value. - -2006-05-26 Kevin Ryde - - * info.el (Info-index-next): Use where-is-internal to report - actual binding of Info-index-next, rather than hard-coded `,'. - -2006-05-26 Eli Zaretskii - - * menu-bar.el (menu-bar-apropos-menu): Move "Find Key in Manual" - and "Find Command in Manual" to here. - - * buff-menu.el (list-buffers-noselect): For Info buffers, use - Info-current-file as the file name. - -2006-05-26 Jonathan Yavner - - * ses.el (defadvice undo-more): Delete this defadvice. The undo - overrides will now be done a different way. - (ses-set-parameter): Reapply this function for undo. - (ses-set-header-row): Reconstruct header row during undo. - (ses-widen): New function. - (ses-goto-data, ses-reconstruct-all): Use new function. - (ses-command-hook): Widen buffer during undo, before unupdating - the cells. - (ses-insert-row, ses-delete-row): Widen buffer during undo. - (ses-load, ses-header-row): Permit empty (zero-row) spreadsheets. - (ses-read-cell): Avoid stupid warning for RET RET on a cell whose - formula hasn't been executed yet. - -2006-05-26 Reiner Steib - - * comint.el (comint-kill-whole-line): Rename arg to count. - Fix doc string. - -2006-05-26 Chong Yidong - - * files.el (backup-buffer-copy): Remove deleted MUSTBENEW argument - to copy-file. - -2006-05-26 Reiner Steib - - * simple.el (toggle-truncate-lines): Make arg optional for - backward compatibility. - -2006-05-26 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc--current-dll): New var. - (ewoc--node-next, ewoc--node-prev, ewoc--node-nth): Don't take - DLL arg. Instead, use ewoc--current-dll. Update all callers. - (ewoc--set-buffer-bind-dll-let*): Bind ewoc--current-dll, not `dll'. - (ewoc--adjust): Use ewoc--current-dll. - (ewoc-next, ewoc-prev, ewoc-nth): Bind ewoc--current-dll. - -2006-05-26 Carsten Dominik - - * textmodes/org.el (org-next-item, org-previous-item): Emit more - compact error message. - (org-tags-view): Refresh category table in each file. - (org-table-justify-field-maybe): Remove superfluous arguments to - `format'. - (org-export-as-html): Insert "

" before postamble. - (org-paste-subtree, org-kill-is-subtree-p): Check for empty kill ring. - -2006-05-26 Kenichi Handa - - * textmodes/po.el (po-find-charset): Pay attention to the case - FILENAME is a cons (NAME . BUFFER). - (po-find-file-coding-system-guts): Likewise. - - * arc-mode.el (archive-set-buffer-as-visiting-file): - Call find-operation-coding-system with (FILENAME . BUFFER). - - * tar-mode.el (tar-extract): Call find-operation-coding-system - with (FILENAME . BUFFER). - - * international/mule.el (decode-coding-inserted-region): - Call find-operation-coding-system with (FILENAME . BUFFER). - -2006-05-25 Chong Yidong - - * image-mode.el (image-toggle-display): Use buffer contents to - generate image for a remote file. - -2006-05-25 Juri Linkov - - * replace.el (query-replace-read-from, query-replace-read-to): - Remove 8th arg KEEP-ALL in read-from-minibuffer. - -2006-05-25 Rajesh Vaidheeswarran - - * whitespace.el (whitespace-cleanup): Change to cleanup - region if one is active. - * whitespace.el (whitespace-cleanup-internal): New internal method. - -2006-05-25 Mathias Dahl - - * dired.el (dired-mode-map): Add help-echo strings to tumme - commands. Bind `tumme-dired-display-image' to C-t i. - - * tumme.el (tumme-display-image): Change documentation string slightly. - (tumme-dired-display-image): Add call to `display-buffer'. - -2006-05-25 Thien-Thi Nguyen - - * emacs-lisp/bindat.el (bindat-unpack, bindat-pack): - Signal error if RAW-DATA is a multibyte string. - -2006-05-24 Richard Stallman - - * subr.el (with-local-quit): When handling `quit' signal, - make a chance for quit-flag to cause a quit. - - * emacs-lisp/advice.el (ad-enable-advice, ad-activate) - (ad-disable-advice): Add autoloads. - - * subr.el (read-passwd): Copy PROMPT before changing its properties. - -2006-05-25 Mathias Dahl - - * dired.el (dired-mode-map): Change menu items for tumme as per - suggestions in emacs-devel. - -2006-05-25 Nick Roberts - - * dired.el (dired-mode-map): Fix breakage. - -2006-05-25 Mathias Dahl - - * tumme.el (tumme-display-dired-image): Rename to... - (tumme-dired-display-image): ...this. - (tumme-track-movement): Change default value to t. - (tumme-display-thumbs): Add new optional parameter DO-NOT-POP, - used from `tumme-next-line-and-display' and similar commands. - - * dired.el (dired-mode-map): Add Thumbnail submenu under the - Immediate menu. Add some tumme commands there. - -2006-05-24 Luc Teirlinck - - * loadup.el ("jka-cmpr-hook"): Load it before it is needed. - -2006-05-24 Chong Yidong - - * menu-bar.el, international/mule-cmds.el: Remove tooltips for - menu entries that open submenus. - -2006-05-24 Alan Mackenzie - - * startup.el (command-line): For names of preloaded files, don't - append ".elc" (now done in Fload), and call file-truename on the - lisp directory. - - * subr.el (eval-after-load): Fix the doc-string. Allow FILE to - match ANY loaded file with the right name, not just those in - load-path. Put a regexp matching the file name into - after-load-alist, rather than the name itself. - - * subr.el (load-history-regexp, load-history-filename-element) - (do-after-load-evaluation): New functions. - - * international/mule.el (load-with-code-conversion): Do the - eval-after-load stuff by calling do-after-load-evaluation. - -2006-05-25 Nick Roberts - - * progmodes/gud.el (gud-sentinel): Condition on GUD buffer if it - has not been killed. - -2006-05-24 YAMAMOTO Mitsuharu - - * term/mac-win.el: Set idle timer to clean up expired Apple events. - (mac-ae-get-url): Redispatch Apple event on unknown scheme. - (mac-dispatch-apple-event): Resume Apple event if it is suspended. - Optionally set error message in reply. - -2006-05-24 Carsten Dominik - - * textmodes/org.el (org-open-at-point): Use renamed variable - `org-confirm-shell-link-function'. - (org-confirm-shell-link-function): Rename from - `org-confirm-shell-links'. - (org-export-directory): New function. - (org-export-as-ascii, org-export-as-html, org-export-as-xoxo) - (org-export-icalendar): Use `org-export-directory'. - (org-indent-item): Keep cursor position. - (org-link-file-path-type): New option. - (org-export-as-html): Fix bug with plain lists starting in - column 0. - (org-export-as-html): Remove deadline formatting, this happens - now already in `org-html-handle-time-stamps'. - (org-export-html-style): Deadline class removed. - (org-insert-labeled-timestamps-at-point): New option. - (org-cycle, org-occur, org-scan-tags): Use `org-overview' instead - of `hide-sublevels 1', in case the first headline is not level 1. - (org-overview, org-content): New fuction. - (org-cycle-global-status, org-cycle-subtree-status): Make these - variables buffer-local. - (org-global-cycle): New command. - (org-shifttab): Use `org-global-cycle'. - (org-insert-heading, org-insert-item): Go to end of new - headline/item after creating it. - (org-export-visible): Rename from `org-export-copy-visible'. - Now creates a temporary org-file and applies an exporting command - to it. - (org-table-eval-formula): Support for lisp forms. - (org-agenda-todo-ignore-scheduled): New option. - (org-agenda-get-todos): Use new option - `org-agenda-todo-ignore-scheduled'. - (org-export-html-inline-images): New value `maybe'. - (org-export-as-html): Inlining of images dependent on link description. - (org-archive-subtree): Check for end-of-buffer before trying - `kill-line'. - (org-agenda-follow-mode): New option. - (org-export-with-tags, org-export-with-timestamps): New options. - (org-html-handle-time-stamps): New function. - (org-keyword-time-regexp): New variable. - (org-agenda-get-todos): Use `org-agenda-todo-list-sublevels'. - (org-agenda-todo-list-sublevels): New option. - (org-html-level-start): When TITLE is nil, just close all levels. - (org-parse-key-lines, org-parse-export-options): Remove functions, - replaced by `org-infile-export-plist'. - (org-combine-plists, org-infile-export-plist) - (org-default-export-plist): New functions. - (org-export-html-preamble, org-export-html-postamble) - (org-export-html-auto-preamble, org-export-html-auto-postamble): - New variables. - (org-export-publishing-directory): New option. - (org-export-as-html, org-export-as-ascii): Use the new property - lists for settings. - (org-export-copy-visible, org-export-as-xoxo): - Respect `org-export-publishing-directory'. - (org-link-search, org-store-link, org-file-apps): Support for - links to BibTeX database entries.. - (org-get-current-options, org-set-regexps-and-options): - Implement logging as a startup option. - (org-store-link): Make sure context string is never empty - (org-insert-link): Use relative path when possible. - (org-at-item-checklet-p): New function. - (org-shifttab, org-shiftmetaleft, org-shiftmetaright) - (org-shiftmetaup, org-shiftmetadown, org-metaleft) - (org-metaright, org-metaup, org-metadown, org-shiftup) - (org-shiftdown, org-shiftright, org-shiftleft) - (org-ctrl-c-ctrl-c, org-cycle, org-return, org-meta-return): - Dispatch using `call-interactively'. - (org-call-with-arg): New defsubst. - (org-tag-alist, org-use-fast-tag-selection): New options. - (org-complete): Use `org-tag-alist'. - (org-fast-tag-insert, org-fast-tag-selection): New functions. - (org-next-item, org-previous-item): New commands. - (org-beginning-of-item, org-end-of-item): Add (interactive) to - make command. - (org-shiftup, org-shiftdown): Accommodate the item-navigation commands. - -2006-05-23 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc-delete): New function. - (ewoc-filter): Use `ewoc-delete'. - - * emacs-lisp/bindat.el (bindat-pack): Doc fix. - -2006-05-22 Stefan Monnier - - * textmodes/bibtex.el (bibtex-format-entry, bibtex-clean-entry): - Signal more user-friendly error messages. - - * complete.el (PC-do-completion): Undo the addition of implicit - wildcards if they did not lead to finding any match. - (read-file-name-internal): Don't add the final > if the completion is - not finished. - -2006-05-22 Reiner Steib - - * textmodes/bibtex.el (bibtex-maintain-sorted-entries): - Quote safe-local-variable predicate. - -2006-05-22 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc-set-data): New function. - -2006-05-21 Roland Winkler - - * textmodes/bibtex.el (bibtex-maintain-sorted-entries): Mark as safe. - - * progmodes/make-mode.el (makefile-special-targets-list) - (makefile-macro-table, makefile-target-table): Mark as risky. - (makefile-query-one-target-method): Make this the alias for the - following variable. - (makefile-query-one-target-method-function): Make this the real name. - - * textmodes/artist.el (artist-text-renderer): Make this the alias - for the following variable. - (artist-text-renderer-function): Make this the real name. - - * textmodes/flyspell.el (flyspell-generic-check-word-p): Make this - the alias for the following variable. - (flyspell-generic-check-word-predicate): Make this the real name. - - * textmodes/ispell.el (ispell-format-word): Make this the alias - for the following variable. - (ispell-format-word-function): Make this the real name. - (ispell-message-text-end): Mark as risky. - - * skeleton.el (skeleton-transformation, skeleton-filter) - (skeleton-pair-filter): Make these the aliases for the following - variables. - (skeleton-transformation-function, skeleton-filter-function) - (skeleton-pair-filter-function): Make these the real names. - - * progmodes/sh-script.el (sh-mode): Use skeleton-filter-function - and skeleton-pair-filter-function. - - * textmodes/sgml-mode.el (sgml-transformation): Make this the - alias for the following variable. - (sgml-transformation-function): Make this the real name. - (sgml-tag-alist): Mark as risky. - -2006-05-21 Richard Stallman - - * simple.el (kill-region): Interactively, pass point, then mark. - -2006-05-22 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc-create): Add autoload cookie. - -2006-05-21 Romain Francoise - - * dired-x.el (dired-mode-map): Don't bind M-g. - -2006-05-20 Richard Stallman - - * dired.el (dired-mode-map): Put dired-goto-file on j, not M-g. - (dired-goto-file): Doc fix. - -2006-05-21 Kim F. Storm - - * emulation/cua-base.el: Mention customizing cua-mode as alternative - way to enable built-in cua-mode if user loads older CUA-mode package. - - * ido.el (ido-read-file-name): Bind ido-show-dot-for-dired to nil - if default-filename is specified. - -2006-05-20 Eli Zaretskii - - * menu-bar.el (menu-bar-manuals-menu) : New menu item. - - * info.el (info-apropos): Make sure current-file and current-node - have non-nil values. Speed up by using add-to-list instead of - manual consing. - -2006-05-20 Micha,Ak(Bl Cadilhac - - * progmodes/make-mode.el (makefile-mode): Doc fix. - -2006-05-20 Eli Zaretskii - - * dired-aux.el (dired-do-shell-command): Doc fix. - -2006-05-20 Kevin Ryde - - * info-xref.el (info-xref-check-all-custom): Skip :tag part of - ``(custom-manual :tag "Foo" "(foo)Node")''. - -2006-05-20 Karl Chen - - * progmodes/cc-vars.el (c-backslash-column): Mark as safe if its - value is an integer. - -2006-05-20 Eli Zaretskii - - * mail/rmail.el (rmail-mime-charset-pattern): Add "?:" before - "format". - (rmail-convert-to-babyl-format): Undo the change from 2006-04-19. - -2006-05-20 Martin Rudalics - - * progmodes/hideif.el (show-ifdef-block): Fix bug where parts of - a hidden block remained hidden if `hide-ifdef-lines' is non-nil. - -2006-05-20 Stefan Monnier - - * progmodes/gud.el (gdb-script-font-lock-keywords): Use a stricter - regexp for keywords. - -2006-05-20 Masayuki FUJII (tiny change) - - * dnd.el (dnd-get-local-file-name): Specify LITERAL in - replace-regexp-in-string. - - * term/w32-win.el (w32-drag-n-drop): Substitute '/' for '\', - encode, and escape file name on conversion to URL. - -2006-05-20 YAMAMOTO Mitsuharu - - * dnd.el (dnd-handle-one-url): Change 3rd arg ARG to URL. - Don't unescape URL. - (dnd-get-local-file-name): Unescape URL on conversion to file name. - - * x-dnd.el (x-dnd-handle-file-name): Encode and escape file names - on conversion to URLs. - - * net/browse-url.el (browse-url-file-url): Encode file name on - conversion to URL. - - * term/mac-win.el (mac-ae-open-documents): Escape file name on - conversion to URL. - -2006-05-19 Eli Zaretskii - - * progmodes/cc-styles.el (c-style-alist): Doc fix. - -2006-05-19 YAMAMOTO Mitsuharu ++ * vc-bzr.el (vc-bzr-log-view-mode, vc-bzr-annotate-command) ++ (vc-bzr-annotate-time, vc-bzr-annotate-extract-revision-at-line): ++ Revision numbers can include ".". + - * term/mac-win.el (mac-bytes-to-digits): Remove function. - (mac-handle-toolbar-switch-mode): Use coercion instead of it. ++ * diff-mode.el (diff-end-of-hunk): Be careful not to overlook trailing ++ "+" lines not accounted for by counting "-" and context lines. + -2006-05-19 Glenn Morris ++2008-04-05 YAMAMOTO Mitsuharu + - * calendar/diary-lib.el (diary-bahai-date) - (list-bahai-diary-entries, mark-bahai-diary-entries) - (mark-bahai-calendar-date-pattern): Not interactive. - (add-to-diary-list): New optional arg LITERAL. Doc fix. - (diary-entries-list): Change format of 4th element in each entry. - (diary-list-entries): Use add-to-diary-list. - (diary-goto-entry): Handle the case where the buffer visiting the - diary has been killed. - (fancy-diary-display): Add 'locator to button rather than 'marker. - Only generate temp-face when there are marks to apply. - (list-sexp-diary-entries): Pass literal to add-to-diary-list. - (diary-fancy-date-pattern): New variable. - (diary-time-regexp): Doc fix. - (diary-anniversary, diary-time): New faces. - (fancy-diary-font-lock-keywords): Use diary-fancy-date-pattern and - diary-time-regexp. Add font-lock-multiline property where needed. - Use new faces diary-anniversary and diary-time. - (diary-fancy-font-lock-fontify-region-function): New function, to - handle multiline font-lock pattern in fancy diary. - (fancy-diary-display-mode): Set font-lock-fontify-region-function. - (diary-font-lock-keywords): Tweak time regexp. Use new face - diary-time. ++ * term/mac-win.el (mac-service-open-file): Use file URL instead of ++ file name string. + -2006-05-19 Alexander Shopov (tiny change) ++2008-04-05 Stefan Monnier + - * international/code-pages.el (mik): Table corrected. ++ * vc-bzr.el (vc-bzr-annotate-command): Preserve line alignment. ++ (vc-bzr-annotate-time): Accept space used to preserve alignment. + -2006-05-18 Kim F. Storm ++2008-04-05 Richard Stallman + - * progmodes/grep.el (grep-find): Don't check grep-find-command - before running command (breaks non-interactive usage). ++ * emacs-lisp/advice.el (defadvice): Add usage pattern. + -2006-05-18 Thien-Thi Nguyen ++2008-04-05 Nick Roberts + - * emacs-lisp/ewoc.el (ewoc--adjust): New func. - (ewoc--insert-new-node): Don't insert trailing newline. - Instead, adjust successor nodes's start markers. - (ewoc--refresh-node): Delete all text from current node's start - marker to the next one's; adjust successor nodes's start markers. - (ewoc--create): Doc fixes. - (ewoc--refresh): Don't insert newline. - (ewoc--set-hf): Use `ewoc--set-buffer-bind-dll-let*'. - * pcvs.el (cvs-make-cvs-buffer): - Specify extra newline for ewoc's header and footer. - (cvs-update-header): Update initial header recognition. - Append newline to final header and footer values. - * pcvs-info.el (cvs-fileinfo-pp): Insert trailing newline. ++ * progmodes/gdb-ui.el: Add advice about using Cygwin GDB (from a ++ thread in [h-e-w]). + -2006-05-17 Richard Stallman +2008-04-05 Juanma Barranquero + + * files.el (abort-if-file-too-large): Fix typo in docstring. + +2008-04-05 Stefan Monnier + + * subr.el (functionp): Return nil for special forms. + +2008-04-05 Glenn Morris + + * emacs-lisp/autoload.el (autoload-ensure-default-file): + Provide a feature. + * calendar/calendar.el, calendar/diary-lib.el, calendar/holidays.el: + Require loaddef file rather than loading it. + * Makefile.in ($(lisp)/mh-e/mh-loaddefs.el): Simplify rule now that + autoload-ensure-default-file provides a feature. + + * Makefile.in (LOADDEFS): Add mh-loaddefs.el. + (AUTOGENEL): mh-loaddefs is in $LOADDEFS now. + (compile, compile-always, recompile): Use $LOADDEFS. + (cal-autoloads): Remove. + + * calendar/cal-x.el (calendar-dedicate-diary): Use get-buffer rather + than buffer-live-p. Reported by David Koppelman . + + * calendar/calendar.el (hebrew-holidays-1, hebrew-holidays-2) + (hebrew-holidays-3, hebrew-holidays-4): Don't autoload obsolescence. + + * calendar/calendar.el (diary-hebrew-entry-symbol): + Rename hebrew-diary-entry-symbol. Keep old name as alias. + (diary-islamic-entry-symbol): Rename islamic-diary-entry-symbol. + Keep old name as alias. + (diary-bahai-entry-symbol): Rename bahai-diary-entry-symbol. + Keep old name as alias. + * calendar/cal-bahai.el: Update for rename bahai-diary-entry-symbol + to diary-bahai-entry-symbol. + * calendar/cal-hebrew.el: Update for rename hebrew-diary-entry-symbol + to diary-hebrew-entry-symbol. + * calendar/cal-islam.el: Update for rename islamic-diary-entry-symbol + to diary-islamic-entry-symbol. + * calendar/diary-lib.el: Update for diary-entry-symbol renames. + + * calendar/solar.el (diary-sabbath-candles-minutes) + (diary-sabbath-candles): Move to cal-hebrew. + * calendar/cal-hebrew.el (diary-hebrew-sabbath-candles-minutes) + (diary-hebrew-sabbath-candles): Move here from solar.el and rename. + Doc fix. Keep old name as alias. + (diary-hebrew-sabbath-candles): Simplify. + (solar-setup, solar-sunrise-sunset, calendar-latitude) + (calendar-longitude, calendar-time-zone): Declare for compiler. + * calendar/diary-lib.el (list-sexp-diary-entries): Update doc for + rename. + + * calendar/cal-coptic.el (calendar-coptic-month-name-array): + Rename coptic-calendar-month-name-array. Update callers. + (calendar-coptic-epoch): Rename coptic-calendar-epoch. Update callers. + (calendar-coptic-name): Rename coptic-name. Update callers. + (calendar-coptic-leap-year-p): Rename coptic-calendar-leap-year-p. + Update callers. + (calendar-coptic-last-day-of-month): + Rename coptic-calendar-last-day-of-month. Update callers. + (calendar-coptic-to-absolute): Rename calendar-absolute-from-coptic. + Keep old name as alias, update callers. + (calendar-coptic-print-date): Rename calendar-print-coptic-date. + Keep old name as alias, update callers. + (calendar-coptic-goto-date): Rename calendar-goto-coptic-date. + Keep old name as alias. + (calendar-ethiopic-month-name-array): + Rename ethiopic-calendar-month-name-array. Update callers. + (calendar-ethiopic-epoch): Rename ethiopic-calendar-epoch. + Update callers. + (calendar-ethiopic-name): Rename ethiopic-name. Update callers. + (calendar-ethiopic-to-absolute): Rename calendar-absolute-from-ethiopic. + Keep old name as alias, update callers. + (calendar-ethiopic-print-date): Rename calendar-print-ethiopic-date. + Keep old name as alias, update callers. + (calendar-ethiopic-goto-date): Rename calendar-goto-ethiopic-date. + Keep old name as alias. + + * calendar/cal-french.el (calendar-french-epoch): + Rename french-calendar-epoch. Update callers. + (calendar-french-month-name-array): Rename variable and function + french-calendar-month-name-array. Update callers. + (calendar-french-multibyte-month-name-array): + Rename french-calendar-multibyte-month-name-array. Update callers. + (calendar-french-day-name-array): Rename variable and function + french-calendar-day-name-array. Update callers. + (calendar-french-special-days-array): Rename variable and function + french-calendar-special-days-array. Update callers. + (calendar-french-multibyte-special-days-array): + Rename french-calendar-multibyte-special-days-array. Update callers. + (calendar-french-accents-p): Rename french-calendar-accents. + Update callers. + (calendar-french-leap-year-p): Rename french-calendar-leap-year-p. + Update callers. + (calendar-french-last-day-of-month): + Rename french-calendar-last-day-of-month. Update callers. + (calendar-french-to-absolute): Rename calendar-absolute-from-french. + Keep old name as alias, update callers. + (calendar-french-print-date): Rename calendar-print-french-date. + Keep old name as alias, update callers. + (calendar-french-goto-date): Rename calendar-goto-french-date. + Keep old name as alias. + + * calendar/cal-menu.el, calendar/calendar.el: + Update for Coptic and French name changes. + + * calendar/cal-china.el (calendar-chinese): Rename custom group + from chinese-calendar. Update users. + (calendar-chinese-time-zone): Rename chinese-calendar-time-zone. + Keep old name as alias, update users. + (calendar-chinese-location-name): Rename chinese-calendar-location-name. + Keep old name as alias. + (calendar-chinese-daylight-time-offset): + Rename chinese-calendar-daylight-time-offset. Keep old name as alias, + update users. + (calendar-chinese-standard-time-zone-name): + Rename chinese-calendar-standard-time-zone-name. + Keep old name as alias, update users. + (calendar-chinese-daylight-saving-start): + Rename chinese-calendar-daylight-savings-starts. + Keep old name as alias, update users. + (calendar-chinese-daylight-saving-end): + Rename chinese-calendar-daylight-savings-ends. Keep old name as alias, + update users. + (calendar-chinese-daylight-saving-start-time): + Rename chinese-calendar-daylight-savings-starts-time. + Keep old name as alias, update users. + (calendar-chinese-daylight-saving-end-time): + Rename chinese-calendar-daylight-savings-ends-time. + Keep old name as alias, update users. + (calendar-chinese-celestial-stem): Rename + calendar-chinese-celestial-stem. Keep old name as alias, update users. + (calendar-chinese-terrestrial-branch): + Rename calendar-chinese-terrestrial-branch. Keep old name as alias, + update users. + (calendar-chinese-zodiac-sign-on-or-after): + Rename chinese-zodiac-sign-on-or-after. Update callers. + (calendar-chinese-new-moon-on-or-after): + Rename chinese-new-moon-on-or-after. Update callers. + (calendar-chinese-month-list): Rename chinese-month-list. + Update callers. + (calendar-chinese-number-months): Rename number-chinese-months. + Update callers. + (calendar-chinese-compute-year): Rename compute-chinese-year. + Update callers. + (calendar-chinese-year-cache): Rename chinese-year-cache. Update users. + (calendar-chinese-year): Rename chinese-year. Update callers. + (calendar-chinese-year-cache-init): Rename chinese-year-cache-init. + (calendar-chinese-to-absolute): Rename calendar-absolute-from-chinese. + Keep old name as alias, update callers. + (calendar-chinese-print-date): Rename calendar-print-chinese-date. + Keep old name as alias, update callers. + (calendar-chinese-months-to-alist): + Rename make-chinese-month-assoc-list. Update callers. + (calendar-chinese-months): Rename chinese-months. Update callers. + (calendar-chinese-goto-date): Rename calendar-goto-chinese-date. + Keep old name as alias, update callers. + + * cal-hebrew.el (calendar-hebrew-leap-year-p): + Rename hebrew-calendar-leap-year-p. Update callers. + (calendar-hebrew-last-month-of-year): + Rename hebrew-calendar-last-month-of-year. Update callers. + (calendar-hebrew-elapsed-days): Rename hebrew-calendar-elapsed-days. + Update callers. + (calendar-hebrew-days-in-year): Rename hebrew-calendar-days-in-year. + Update callers. + (calendar-hebrew-long-heshvan-p): Rename hebrew-calendar-long-heshvan-p. + Update callers. + (calendar-hebrew-short-kislev-p): Rename hebrew-calendar-short-kislev-p. + Update callers. + (calendar-hebrew-last-day-of-month): + Rename hebrew-calendar-last-day-of-month. Update callers. + (calendar-hebrew-to-absolute): Rename calendar-absolute-from-hebrew. + Keep old name as alias, update callers. + (calendar-hebrew-print-date): Rename calendar-print-hebrew-date. + Keep old name as alias, update callers. + (calendar-hebrew-yahrzeit): Rename hebrew-calendar-yahrzeit. + Keep old name as alias, update callers. + (calendar-hebrew-goto-date): Rename calendar-goto-hebrew-date. + Keep old name as alias. + (holiday-hebrew-rosh-hashanah): Rename holiday-rosh-hashanah-etc. + Keep old name as alias. + (holiday-hebrew-hanukkah): Rename holiday-hanukkah. + Keep old name as alias. + (holiday-hebrew-passover): Rename holiday-passover-etc. + Keep old name as alias. + (holiday-hebrew-tisha-b-av): Rename holiday-tisha-b-av-etc. + Keep old name as alias, update callers. + (diary-hebrew-list-entries): Rename list-hebrew-diary-entries. + Keep old name as alias. + (calendar-hebrew-mark-date-pattern): + Rename mark-hebrew-calendar-date-pattern. Keep old name as alias, + update callers. + (diary-hebrew-mark-entries): Rename mark-hebrew-diary-entries. + Keep old name as alias. + (diary-hebrew-insert-entry): Rename insert-hebrew-diary-entry. + Keep old name as alias. + (diary-hebrew-insert-monthly-entry): + Rename insert-monthly-hebrew-diary-entry. Keep old name as alias. + (diary-hebrew-insert-yearly-entry): + Rename insert-yearly-hebrew-diary-entry. Keep old name as alias. + (calender-hebrew-list-yahrzeits): Rename list-yahrzeit-dates. + Keep old name as alias. + (diary-hebrew-omer): Rename diary-omer. Keep old name as alias. + (diary-hebrew-yahrzeit): Rename diary-yahrzeit. Keep old name as alias. + (diary-hebrew-rosh-hodesh): Rename diary-rosh-hodesh. + Keep old name as alias. + (calendar-hebrew-parashiot-names): + Rename hebrew-calendar-parashiot-names. Update callers. + (calendar-hebrew-parasha-name): Rename hebrew-calendar-parasha-name. + (calendar-hebrew-year-Saturday-incomplete-Sunday): + Rename hebrew-calendar-year-Saturday-incomplete-Sunday. + (calendar-hebrew-year-Saturday-complete-Tuesday): + Rename hebrew-calendar-year-Saturday-complete-Tuesday. + (calendar-hebrew-year-Monday-incomplete-Tuesday): + Rename hebrew-calendar-year-Monday-incomplete-Tuesday. + (calendar-hebrew-year-Monday-complete-Thursday): + Rename hebrew-calendar-year-Monday-complete-Thursday. + (calendar-hebrew-year-Tuesday-regular-Thursday): + Rename hebrew-calendar-year-Tuesday-regular-Thursday. + (calendar-hebrew-year-Thursday-regular-Saturday): + Rename hebrew-calendar-year-Thursday-regular-Saturday. + (calendar-hebrew-year-Thursday-complete-Sunday): + Rename hebrew-calendar-year-Thursday-complete-Sunday. + (calendar-hebrew-year-Saturday-incomplete-Tuesday): + Rename hebrew-calendar-year-Saturday-incomplete-Tuesday. + (calendar-hebrew-year-Saturday-complete-Thursday): + Rename hebrew-calendar-year-Saturday-complete-Thursday. + (calendar-hebrew-year-Monday-incomplete-Thursday): + Rename hebrew-calendar-year-Monday-incomplete-Thursday. + (calendar-hebrew-year-Monday-complete-Saturday): + Rename hebrew-calendar-year-Monday-complete-Saturday. + (calendar-hebrew-year-Tuesday-regular-Saturday): + Rename hebrew-calendar-year-Tuesday-regular-Saturday. + (calendar-hebrew-year-Thursday-incomplete-Sunday): + Rename hebrew-calendar-year-Thursday-incomplete-Sunday. + (calendar-hebrew-year-Thursday-complete-Tuesday): + Rename hebrew-calendar-year-Thursday-complete-Tuesday. + (diary-hebrew-parasha): Rename diary-parasha. Keep old name as alias. + Update for above name changes of constants. + + * calendar/cal-menu.el, calendar/calendar.el: + Update for chinese and hebrew name changes. + * diary-lib.el: Update for hebrew name changes. + +2008-04-05 Stefan Monnier + + * subr.el (keymap-canonicalize): Correct thinko. + + * server.el: Undo part of the multi-tty change, which is only + needed if server.el is preloaded, and broke server-running-p. + (server-socket-dir): Initialize in the defvar, as before. + (server-start): Remove initialization of server-socket-dir. + +2008-04-05 Eli Zaretskii + + * ls-lisp.el (ls-lisp-format): Support inodes that are 2- or + 3-member cons cells. + +2008-04-05 Chong Yidong + + * cus-face.el (custom-face-attributes): Handle roman slant. + + * faces.el (default): Ensure the face-defface-spec property is set. + +2008-04-05 Adrian Robert + + * files.el (abort-if-file-too-large): New function. + (find-file-noselect, insert-file-1): Use it. + +2008-04-05 Reto Zimmermann + + * progmodes/vhdl-mode.el (vhdl-mode-map-init): + Replace C-c[a-zA-Z] key bindings. + +2008-04-05 Stefan Monnier + + * progmodes/hideif.el (hif-token-alist): New var. + (hif-token-regexp, hif-tokenize): Use it. + (hif-mathify-binop): New macro. + (hif-plus, hif-minus, hif-notequal, hif-greater, hif-less) + (hif-greater-equal, hif-less-equal): Use it. + (hif-logior, hif-logand): New functions. + (hif-math): Accept | and & as well. + + * progmodes/etags.el: Fix problem with completion for buffer-local + tables. Reported by Radey Shouman . + (tags-complete-tag): Remove. + (tags-lazy-completion-table): New function to replace it. + (find-tag-tag, complete-tag): Update users. + +2008-04-04 Dan Nicolaescu + + * vc-rcs.el (vc-rcs-dir-status): + * vc-sccs.el (vc-sccs-dir-status): New function. + + * outline.el (outline-mode-menu-bar-map): + * term.el (terminal-signal-menu): Add :help. + + * net/eudc.el (eudc-mode-map): Declare and define in one step. + (eudc-tail-menu, eudc-server-menu, eudc-tools-menu): Add :help. + + * emacs-lisp/re-builder.el (reb-mode-map): + * textmodes/nroff-mode.el (nroff-mode-map): Add menus. + + * diff-mode.el (diff-file-junk-re): Recognize the git format for + new files, deleted files and for changing permissions. + (diff-mode): Set beginning-of-defun-function and + end-of-defun-function. - * files.el (file-name-extension): Doc fix. + * vc-bzr.el (vc-bzr-state): Use when instead of if. -2006-05-17 Stefan Monnier + * vc.el (vc-default-status-fileinfo-extra): New function. + (vc-status-mark-buffer-changed): Use it. + (vc-update-vc-status-buffer): Allow for partial updates. - * shell.el (shell-dirtrack-mode): Make it into a proper minor mode, so - we can explicitly enable/disable rather than toggle. - (shell-mode): Use it. - (shell-cd): Don't try to reproduce what `cd' does. +2008-04-04 Stefan Monnier -2006-05-17 Kim F. Storm + * net/tramp.el (after-init-hook): Don't wrap a lambda around + tramp-register-completion-file-name-handler. - * ido.el (ido-read-internal): Use only nondirectory part of - default item. + * subr.el (keymap-canonicalize): New function. + * mouse.el (mouse-menu-non-singleton): Use it. + (mouse-major-mode-menu): Remove hack made unnecessary. -2006-05-17 Thien-Thi Nguyen + * simple.el (set-fill-column): Prompt rather than error by default. - * emacs-lisp/ewoc.el (ewoc-data): Add docstring. - (ewoc-nth): Doc fix. +2008-04-04 Andreas Schwab - (ewoc-map, ewoc-invalidate): Compute PP before looping. + * calendar/cal-dst.el (calendar-time-zone-daylight-rules): + Reset new-rules after each round. -2006-05-16 Eli Zaretskii + * Makefile.in (cal-autoloads): New target. + (compile, compile-always, recompile): Depend on it. + ($(lisp)/calendar/cal-loaddefs.el) + ($(lisp)/calendar/diary-loaddefs.el) + ($(lisp)/calendar/hol-loaddefs.el): Depend on calendar/*.el. - * international/mule.el (auto-coding-alist): Add .lha to files - read with no-conversion. +2008-04-04 Michael Kifer - * files.el (auto-mode-alist): Add .lha files to archive file - extensions. + * ediff*.el: Replace load with require in eval-when-compile. - * arc-mode.el (archive-arc-summarize, archive-lzh-summarize): - Convert csize to integer when computing offsets within the - compressed archive file. + * ediff-hook: Delete all invocations of (autoload ...). -2006-05-16 Kim F. Storm + * ediff-util.el (ediff-setup): Make window-min-height a local variable + in ediff control window, and set its min height to 2. + (ediff-setup-control-buffer): Dedicate the control window. + (ediff-toggle-multiframe): Undedicate control window. + Work directly with ediff-setup-windows-multiframe and + ediff-setup-windows-plain. - * subr.el (add-to-history): Add KEEP-ALL arg and align functionality - with read-from-minibuffer. + * ediff-wind (ediff-choose-window-setup-function-automatically): + New function. + (ediff-window-setup-function): Change initialization. + (ediff-setup-windows-automatic): Delete. + (ediff-setup-windows-plain-merge): Make control window dedicated. + (ediff-destroy-control-frame): Do not skip frames if working in a + single frame. -2006-05-16 Reiner Steib + * emulation/viper-ex.el: Move provide's forward, prevent recursion in + eval-when-compile. - * emacs-lisp/bytecomp.el (byte-compile-warnings-safe-p): New function. - (byte-compile-warnings): Fix safe-local-variable property. + * emulation/viper-util.el: Move provide's forward, prevent recursion in + eval-when-compile. -2006-05-16 Ken Manheimer +2008-04-04 Glenn Morris + + * calendar/cal-bahai.el (calendar-bahai-to-absolute): Rename + calendar-absolute-from-bahai. Update callers, keep old name as alias. + + * calendar/cal-islam.el (calendar-islamic-leap-year-p): + Rename islamic-calendar-leap-year-p. Update callers. + (calendar-islamic-last-day-of-month): + Rename islamic-calendar-last-day-of-month. Update callers. + (calendar-islamic-day-number): + Rename islamic-calendar-day-number. Update callers. + (calendar-islamic-to-absolute): Rename calendar-absolute-from-islamic. + Update callers, keep old name as alias. + (calendar-islamic-print-date): Rename calendar-print-islamic-date. + Update callers, keep old name as alias. + (calendar-islamic-goto-date): Rename calendar-goto-islamic-date. + Keep old name as alias. + (diary-islamic-list-entries): Rename list-islamic-diary-entries. + Update callers, keep old name as alias. + (calendar-islamic-mark-date-pattern): + Rename mark-islamic-calendar-date-pattern. Update callers, keep old + name as alias. + (diary-islamic-insert-entry): Rename insert-islamic-diary-entry. + Keep old name as alias. + (diary-islamic-insert-monthly-entry): + Rename insert-monthly-islamic-diary-entry. Keep old name as alias. + (diary-islamic-insert-yearly-entry): + Rename insert-yearly-islamic-diary-entry. Keep old name as alias. + + * calendar/cal-iso.el (calendar-iso-to-absolute): Rename + calendar-absolute-from-iso. Update callers, keep old name as alias. + (calendar-iso-print-date): Rename calendar-print-iso-date. + Update callers, keep old name as alias. + (calendar-iso-goto-date): Rename calendar-goto-iso-date. + Keep old name as alias. + (calendar-iso-goto-week): Rename calendar-goto-iso-week. + Keep old name as alias. + + * calendar/cal-julian.el (calendar-julian-to-absolute): Rename + calendar-absolute-from-julian. Update callers, keep old name as alias. + (calendar-julian-print-date): Rename calendar-print-julian-date. + Update callers, keep old name as alias. + (calendar-julian-goto-date): Rename calendar-goto-julian-date. + Update callers, keep old name as alias. + (calendar-astro-to-absolute): Rename calendar-absolute-from-astro. + Update callers, keep old name as alias. + (calendar-astro-print-day-number): + Rename calendar-print-astro-day-number. Update callers, keep old + name as alias. + (calendar-astro-goto-day-number): Rename calendar-goto-astro-day-number. + Update callers, keep old name as alias. + + * calendar/cal-mayan.el (calendar-mayan-string-from-long-count): + Rename calendar-string-to-mayan-long-count. Update callers. + (calendar-mayan-print-date): Rename calendar-print-mayan-date. + Update callers, keep old name as alias. + (calendar-mayan-read-haab-date): Rename calendar-read-mayan-haab-date. + Update callers. + (calendar-mayan-read-tzolkin-date): + Rename calendar-read-mayan-tzolkin-date. Update callers. + (calendar-mayan-next-haab-date): Rename calendar-next-haab-date. + Keep old name as alias. + (calendar-mayan-previous-haab-date): Rename calendar-previous-haab-date. + Keep old name as alias. + (calendar-mayan-next-tzolkin-date): Rename calendar-next-tzolkin-date. + Keep old name as alias. + (calendar-mayan-previous-tzolkin-date): + Rename calendar-previous-tzolkin-date. Keep old name as alias. + (calendar-mayan-next-round-date): + Rename calendar-next-calendar-round-date. Keep old name as alias. + (calendar-mayan-previous-round-date): + Rename calendar-previous-calendar-round-date. Keep old name as alias. + (calendar-mayan-long-count-to-absolute): Rename + calendar-absolute-from-mayan-long-count. Keep old name as alias. + (calendar-mayan-goto-long-count-date): + Rename calendar-goto-mayan-long-count-date. Keep old name as alias. + + * calendar/cal-persia.el (calendar-persian-month-name-array): + Rename persian-calendar-month-name-array. Update callers. + (calendar-persian-epoch): Rename persian-calendar-epoch. + Update callers. + (calendar-persian-leap-year-p): Rename persian-calendar-leap-year-p. + Update callers. + (calendar-persian-last-day-of-month): + Rename persian-calendar-last-day-of-month. Update callers. + (calendar-persian-to-absolute): Rename calendar-absolute-from-persian. + Update callers, keep old name as alias. + (calendar-persian-print-date): Rename calendar-print-persian-date. + Update callers, keep old name as alias. + (calendar-persian-goto-date): Rename calendar-goto-persian-date. + Keep old name as alias. + + * calendar/cal-china.el, calendar/cal-coptic.el, calendar/cal-islam.el: + * calendar/cal-persia.el, calendar/holidays.el, calendar/lunar.el: + * calendar/solar.el: Update for cal-julian name changes. + + * calendar/cal-dst.el: Update for persian name changes. + + * calendar/cal-menu.el, calendar/calendar.el: + Update for islamic, iso, julian, mayan, persian name changes. + + * calendar/diary-lib.el: Update for islamic name changes. + + * calendar/calendar.el (calendar-hebrew-all-holidays-flag): + Rename all-hebrew-calendar-holidays. Update callers, keep old name + as alias. + (calendar-christian-all-holidays-flag): + Rename all-christian-calendar-holidays. Update callers, keep old + name as alias. + (calendar-islamic-all-holidays-flag): + Rename all-islamic-calendar-holidays. Update callers, keep old + name as alias. + (calendar-bahai-all-holidays-flag): Rename all-bahai-calendar-holidays. + Update callers, keep old name as alias. + * calendar/cal-bahai.el, calendar/cal-hebrew.el, calendar/holidays.el: + Update for the above name changes. + +2008-04-04 Juanma Barranquero + + * hilit-chg.el (global-highlight-changes-mode) + (highlight-changes-passive-string, highlight-changes-active-string): + Mark as obsolete since 23.1, not 22.1. + +2008-04-03 Juanma Barranquero + + * hilit-chg.el (highlight-changes-visibility-initial-state) + (hilit-chg-update, highlight-changes-mode-turn-on): + Fix typos in docstrings. - * allout.el (allout-show-bodies, allout-old-style-prefixes) - (allout-stylish-prefixes, allout-numbered-bullet) - (allout-file-xref-bullet, allout-use-hanging-indents): Use simple - predicates to qualify `safe-local-variable' property, when - available, else use equivalent lambda. - (allout-current-topic-collapsed-p): Do the right thing regarding - trailing blank lines. +2008-04-03 Stephen Berman -2006-05-16 Stefan Monnier + * newcomment.el (comment-enter-backward): Be careful to restore + position changed during narrowing. - * server.el (server-start): Only create a directory if needed. - (server-edit, server-unload-hook): server-start => server-mode. - (kill-emacs-hook): Cleanup upon exit. +2008-04-03 Giuliano Procida (tiny change) -2006-05-15 Stefan Monnier + * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords): + Recognize `sub ($$)'. + +2008-04-03 Richard Sharman + + * hilit-chg.el (highlight-changes-mode): Rename from + highlight-changes; no longer uses sub-modes active and passive; + implemented by define-minor-mode. + (highlight-changes-toggle-visibility): New function, to replace + the old passive/active submodes of global-highlight-changes-mode; + implemented by define-minor-mode. + (global-highlight-changes-mode): Rename from global-highlight-changes; + rewrite using define-globalized-minor-mode. + (hilit-chg-major-mode-hook, hilit-chg-check-global) + (hilit-chg-post-command-hook, hilit-chg-check-global) + (hilit-chg-update-all-buffers, hilit-chg-turn-off-maybe): Remove due + to use of define-globalized-minor-mode. + (highlight-changes-global-initial-state): Change to be boolean. + (highlight-changes-visible-string, highlight-changes-invisible-string): + Rename from highlight-changes-active-string and + highlight-changes-passive-string. + (hilit-chg-update, hilit-chg-set): Use them. + (global-highlight-changes-mode): Rename from global-highlight-changes. + (hilit-chg-map-changes, hilit-chg-display-changes): Add arguments to + docstring. + (hilit-chg-hide-changes): Rewrite to use dolist. + (hilit-chg-set-face-on-change, hilit-chg-update) + (highlight-changes-rotate-faces): Use highlight-changes-visible-mode + variable instead of testing highlight-changes-mode. + (highlight-markup-buffers): Add reuire ediff-util; argument on calls + to highlight-changes-mode changed. + (highlight-compare-with-file): Fix problems with interactive + call giving invalid default file. - * hexl.el (hexlify-buffer): Encode process arguments manually. +2008-04-03 Nick Roberts -2006-05-16 Nick Roberts + * progmodes/gdb-ui.el (gdb-mouse-set-clear-breakpoint): + Fix in disassembly buffer (regression in 22.2). - * progmodes/gud.el (gud-tooltip-tips): Add missing argument to - call to gdb-tooltip-print. +2008-04-03 Michael Kifer -2006-05-15 Romain Francoise + * emulation/viper-macs.el (viper-read-fast-keysequence): + Use viper-read-event instead of viper-read-key. - * dired-x.el (dired-guess-shell-gnutar): On GNU and GNU/Linux - systems, default to "tar" since those systems probably have GNU tar. + * emulation/viper.el (viper-mode): Move the check for fundamental mode. -2006-05-14 Lars Hansen + * emulation/viper-utils.el (viper-get-saved-cursor-color-in-insert-mode) + (viper-get-saved-cursor-color-in-replace-mode): Get rid of redundant + let-statements. - * desktop.el (desktop-missing-file-warning): Fix docstring. - (desktop-restore-file-buffer): Correct question asked on missing file. + * emulation/viper-ex.el, emulation/viper-macs.el: + * emulation/viper-mous.el: + Replace load with require in eval-when-compile. -2006-05-14 Kim F. Storm +2008-04-03 Stefan Monnier - * progmodes/cc-subword.el (c-forward-subword, c-backward-subword): - Add CUA move property. + * files.el (auto-mode-alist): Use archive-mode for Debian packages. -2006-05-13 Chong Yidong + * arc-mode.el (archive-mode-map): Obey mouse-1-click-follows-link. + (archive-try-jka-compr): New function. + (archive-set-buffer-as-visiting-file): Use it. - * custom.el (custom-push-theme): Load the variable before checking - its `standard-value'. + * tar-mode.el (tar-mode-map): Obey mouse-1-click-follows-link. -2006-05-13 Lars Hansen +2008-04-03 Chong Yidong - * desktop.el (desktop-save): Use with-temp-buffer. + * simple.el (handle-shift-selection): New arg. -2006-05-12 Glenn Morris +2008-04-03 Stefan Monnier - * calendar/cal-menu.el (calendar-mode-map, calendar-mouse-3-map): - * calendar/calendar.el (calendar-mode-map): - * calendar/diary-lib.el (include-other-diary-files, diary-mail-entries): - * calendar/appt.el (appt-check, appt-make-list): Refer to - diary-view-entries, diary-list-entries, diary-show-all-entries - rather than obsolete aliases. + * emacs-lisp/cl-macs.el (defsetf): Accept a lambda for the 2-arg form. -2006-05-12 Chong Yidong + * vc-bzr.el (vc-bzr-previous-revision, vc-bzr-next-revision): New funs. - * simple.el (line-move-finish): Avoid calling point motion hooks - while processing intangibility. +2008-04-03 Chong Yidong -2006-05-12 Dan Nicolaescu + * shell.el (shell-dynamic-complete-filename): New fun. + (shell-dynamic-complete-functions): Use it. - * term/xterm.el (terminal-init-xterm): Fix typo. + * help-fns.el (describe-variable): Undo 2008-02-25 change. -2006-05-12 Ken Manheimer +2008-04-03 Kenichi Handa - * allout.el (allout-view-change-hook): Mark as being deprecated, - to be replaced by `allout-exposure-change-hook'. - (allout-exposure-change-hook): New, replacing - `allout-view-change-hook'. - (allout-flag-region): Run new hook `allout-exposure-change-hook', - in addition to `allout-view-change-hook'. - (allout-show-bodies, allout-old-style-prefixes) - (allout-stylish-prefixes, allout-use-hanging-indents): Quote the - lambda forms to prevent their showing up in variable help - presentations as inscrutable byte-compiled code. - (allout-numbered-bullet, allout-file-xref-bullet, allout-layout): - Use string-or-null-p to qualify safe-local-variable values. - (allout-reindent-bodies): Use memq to qualify matches against - valid safe-local-variable values. Also, quote the lambda as above. - (allout-use-mode-specific-leader): Add missing candidate-value - symbols, use memq, and quote the lambda. - (allout-overlay-interior-modification-handler): Remove unused - variables `msg' and 'opened'. - (allout-hidden-p): Constrain invisibility consideration to allout's - invisibility spec, disregarding invisibility for other reasons. + * international/fontset.el (create-fontset-from-x-resource): + Handle the error of X resource more gracefully. -2006-05-12 Reiner Steib + * international/latin1-disp.el (latin1-display): Don't use make-char. + Fix the argument to set-char-table-range. + (latin1-display-identities): Don't use make-char. + (latin1-display-reset): Use map-charset-chars instead of directly + calling standard-display-default. + (latin1-display-check-font): Don't use make-char. + (latin1-display-setup): Likewise. + (latin1-display-ucs-per-lynx): Likewise. - * files.el (version-control): Correct safe values. +2008-04-03 Stefan Monnier -2006-05-12 Thien-Thi Nguyen + * emacs-lisp/timer.el (timer): Define as a defstruct, so we can + name the fields, to make the code clearer. + Rewrite all `aset' and `aref' using the defined accessors. + (timer--time): New pseudo-field. + (timer-set-time, timer-set-idle-time, timer-inc-time) + (timer-set-time-with-usecs, with-timeout-suspend): Use it. + (timer--time-less-p): New function. + (timer--activate): New function, extracted from timer-activate. + (timer-activate-when-idle, timer-activate): Use it. + (cancel-function-timers): Use dolist. - * emacs-lisp/ewoc.el (ewoc-refresh): Compute PP once before looping. +2008-04-03 Glenn Morris - (ewoc--node-enter-before, ewoc--create-node): Delete funcs. - (ewoc--insert-new-node): New func. - Update callers of deleted funcs to use it, instead. + * add-log.el (c-beginning-of-defun, c-end-of-defun): + Remove declarations; no longer used. + (c-cpp-define-name, c-defun-name): Declare as functions. -2006-05-11 Glenn Morris + * calendar/cal-bahai.el (holiday-fixed): Autoload it. + (holiday-bahai-new-year, holiday-bahai-ridvan): New functions. - * calendar/calendar.el (diary-show-all-entries): Do not refer to - obsolete alias `show-all-diary-entries'. - (make-diary-entry): Not interactive. - (cal-tex-cursor-month, cal-tex-cursor-month-landscape) - (cal-tex-cursor-day, cal-tex-cursor-week, cal-tex-cursor-week2) - (cal-tex-cursor-week-iso, cal-tex-cursor-week-monday) - (cal-tex-cursor-filofax-2week, cal-tex-cursor-filofax-week) - (cal-tex-cursor-year-landscape, cal-tex-cursor-filofax-year) - (cal-tex-cursor-filofax-daily, cal-tex-cursor-year): Interactive. + * calendar/cal-hebrew.el (holiday-rosh-hashanah-etc) + (holiday-passover-etc, holiday-hanukkah): Doc fix. + Add optional argument. Simplify. + (holiday-tisha-b-av-etc): Use memq rather than unless. + (holiday-julian): Autoload it. + (holiday-hebrew-misc): New function. -2006-05-11 Johan Bockg,Ae(Brd + * calendar/cal-islam.el (holiday-islamic-new-year): New function. - * calendar/calendar.el (calendar-french-date-string) - (calendar-mayan-date-string, calendar-chinese-date-string) - (calendar-astro-date-string, calendar-iso-date-string) - (calendar-islamic-date-string, calendar-bahai-date-string) - (calendar-hebrew-date-string, calendar-coptic-date-string) - (calendar-ethiopic-date-string, calendar-persian-date-string): - These functions are not interactive. + * calendar/calendar.el (hebrew-holidays-1, hebrew-holidays-2) + (hebrew-holidays-3, hebrew-holidays-4): Make obsolete. + (hebrew-holidays-2): Just use holiday-hanukkah now it respects + all-hebrew-calendar-holidays. + (hebrew-holidays, christian-holidays, islamic-holidays, bahai-holidays): + Simplify using new functions. + (calendar-holidays): Doc fix. + (generate-calendar-window): Use bound-and-true-p. -2006-05-11 Luc Teirlinck + * calendar/diary-lib.el (diary-mail-addr): Use bound-and-true-p. - * files.el: Balance parentheses. + * calendar/holidays.el (calendar-holiday-list): Fix previous change. + (holiday-filter-visible-calendar): Doc fix. Use mapcar. + (holiday-easter-etc): Fix nesting of result. Tweak holiday order. + Use calendar-date-is-visible-p, not holiday-filter-visible-calendar. -2006-05-11 Reiner Steib + * net/tramp.el (tramp-drop-volume-letter): Move definition before use. - * files.el, newcomment.el, outline.el, simple.el, - * emacs-lisp/bytecomp.el, progmodes/cc-compat.el, - * progmodes/cc-vars.el, progmodes/compile.el: - Move `safe-local-variable' declarations to the respective files. +2008-04-03 Stefan Monnier - * help-fns.el (describe-variable): Don't print safe-var if it is - byte-code. Improve wording as suggested by Luc Teirlinck. + * vc-mtn.el (vc-mtn-command): Avoid localization of messages. -2006-05-11 Nick Roberts + * vc-bzr.el (vc-bzr-checkout): Simplify. - * progmodes/gdb-ui.el (gdb-reset): Update speedbar if necessary. - (gdb-var-evaluate-expression-handler, gdb-var-update-handler): - Use a token for pending-triggers to ensure gdb-var-update - gets called once per user input again for pre-GDB 6.4. - (gdb-var-delete): Match on more complex expressions. - (gdb-var-list-children-handler, gdb-var-create-handler): - Use a token for consistency. + * image-mode.el (image-mode-fit-frame): New command. -2006-05-11 Carsten Dominik + * simple.el (beginning-of-buffer, end-of-buffer, goto-line, undo) + (copy-region-as-kill, kill-ring-save, use-region-p, mark-word) + (keyboard-escape-quit): Check region-active-p i.s.o transient-mark-mode. - * textmodes/org.el (org-read-date, org-goto-calendar) - (org-agenda-goto-calendar): - Bind `view-calendar-holidays-initially' to nil. +2008-04-02 Alan Mackenzie -2006-05-11 Thien-Thi Nguyen + * progmodes/cc-cmds.el (c-defun-name, c-cpp-define-name): + New optimised functions to get the name of the current defun/macro. - * emacs-lisp/ewoc.el (ewoc--refresh-node): No longer save-excursion. - Update all callers to do it there, instead. + * add-log.el (add-log-current-defun): Move the functionality which + gets the current function name for C like modes to cc-cmds.el, + thus optimising for speed. -2006-05-10 Glenn Morris +2008-04-02 Chong Yidong - * calendar/calendar.el (calendar-basic-setup): Set day to 1 in - prefix arg case, to avoid view-diary-entries-initially error. - Reported by Stephen Berman . - (calendar-date-is-legal-p): Handle dates with no day part. + * simple.el (deactivate-mark): When the mark is temporarily + active, restore the original value of transient-mark-mode. + (set-mark-command): First deactivate the mark if was temporarily active. + (exchange-point-and-mark): Reactivate the mark if it was + temporarily active. + (handle-shift-selection): New fun. + (transient-mark-mode): Move var documentation here from buffer.c. + (next-line, previous-line, backward-word, move-end-of-line) + (move-beginning-of-line, forward-to-indentation) + (backward-to-indentation, back-to-indentation) + (beginning-of-buffer, end-of-buffer): Add ^ interactive spec. -2006-05-11 Nick Roberts + * mouse.el (mouse-set-region-1): Save the old value of + transient-mark-mode. + (mouse-drag-track): Ignore the now-obsolete value `identity' for + transient-mark-mode. - * comint.el (comint-insert-input): Just make it when - comint-use-prompt regexp is nil (default) and with the mouse. - (comint-copy-old-input): Reinstate from 2004-06-23. - (comint-mode-map): Bind C-c C-m to it. + * textmodes/paragraphs.el (forward-paragraph) + (backward-paragraph, forward-sentence, backward-sentence): Add ^ + interactive spec. -2006-05-10 J.D. Smith + * emulation/cua-base.el (cua-mode): Turn off shift-select-mode. - * progmodes/idlw-shell.el (idlwave-shell-move-or-history): - Remove spurious move to point-max (new comint behavior fixes). +2008-04-02 Michael Albinus - * progmodes/idlwave.el (idlwave-push-mark): Removed obsolete - compatibility function (Emacs 18/19). - (idlwave-is-continuation-line): Always return point at start of - previous non-blank continuation line. - (keyword-parameters): Fix continued comment font-lock matcher. - (idlwave-font-lock-fontify-region): Written, use as - font-lock-fontify-region-function, to fix continued keyword - fontification issues. + * net/tramp.el (tramp-make-tramp-temp-file): + Use `tramp-drop-volume-letter' for the local file name part. -2006-05-10 YAMAMOTO Mitsuharu +2008-04-02 Dan Nicolaescu - * term/mac-win.el (mac-font-panel-mode): Doc fix. - (mac-service-selection, mac-service-open-file) - (mac-service-open-selection, mac-service-mail-selection) - (mac-service-mail-to, mac-service-insert-text): Rename from - mac-services-*. All uses changed. - (mac-apple-event-map): Rename event symbol `services' to `service'. + * progmodes/sh-script.el (sh-mode-map): Rename the menu. Add :help. + Add menu entries corresponding to all the key bindings. -2006-05-10 Thien-Thi Nguyen + * emacs-lisp/debug.el (debugger-mode-map): + * textmodes/conf-mode.el (conf-mode-map): Add a menu. + (conf-align-assignments): Only work on the region if it is active. + (conf-quote-normal): Use when instead of if. Remove redundant test. - * emacs-lisp/ewoc.el (ewoc--dll-create, ewoc--node-delete) - (ewoc--node-enter-first, ewoc--node-enter-last) - (ewoc--delete-node-internal): Merge funcs into unique callers. + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add menu entries + for tracing and re-builder. -2006-05-09 Chong Yidong +2008-04-02 Glenn Morris - * emacs-lisp/crm.el (completing-read-multiple): Properly handle - return value of read-from-minibuffer for empty input. + * calendar/appt.el (appt-disp-window-function): Doc fix. + (appt-display-message): Move beep before display. + (appt-check): Make interactive. Reduce the number of lets. + Use string-equal to compare mode-line strings. + (appt-disp-window): Pluralize "minute" as needed. Make appt buffer + read-only. + (appt-select-lowest-window, appt-make-list): Reduce the number of lets. + (appt-delete): Simplify. -2006-05-09 Miles Bader + * calendar/cal-china.el (holiday-chinese-new-year): Use a single let. - * comint.el (comint-insert-input): Remove redundant calls to setq - and goto-char. + * calendar/cal-dst.el (calendar-time-zone-daylight-rules): Simplify. -2006-05-10 Nick Roberts + * calendar/cal-hebrew.el (list-yahrzeit-dates): + * calendar/cal-tex.el (cal-tex-insert-blank-days-at-end) + (cal-tex-last-blank-p, cal-tex-daily-page): Expand calendar-for-loops. - * comint.el (comint-insert-input): Make it work when - comint-use-prompt-regexp is t. + * calendar/calendar.el (diary-entry-marker, calendar-today-marker) + (calendar-holiday-marker, mark-visible-calendar-date): + * calendar/diary-lib.el (fancy-diary-display): + Check for font-lock-mode before using faces. -2006-05-10 Miles Bader + * calendar/calendar.el (hebrew-holidays-3, generate-calendar-month) + (calendar-gregorian-from-absolute): Reduce the number of lets. + (hebrew-holidays-4, generate-calendar-window): Simplify. + (calendar-for-loop): Make obsolete. + (calendar-nth-named-day): Doc fix. - * subr.el (field-at-pos): New function. + * calendar/diary-lib.el (diary-list-entries, fancy-diary-display) + (print-diary-entries, mark-sexp-diary-entries, calendar-mark-complex) + (calendar-mark-1, list-sexp-diary-entries, diary-remind): + Reduce the number of lets. + (mark-sexp-diary-entries, calendar-mark-complex): + Expand calendar-for-loops. - * comint.el (comint-insert-input): Use it. +2008-04-01 Chong Yidong -2006-05-09 Juri Linkov + * find-dired.el (find-dired-filter): Fix last patch to handle + multi-line process input. Pad link numbers too. - * battery.el (battery-linux-proc-acpi): Also try - `/proc/acpi/thermal_zone/THR2/temperature'. +2008-04-01 Jari Aalto - * files.el : Remove `eval' and `let' binding - for now unused lambda `string-or-null'. + * find-dired.el (find-dired-filter): Align columns by padding file sizes. - * add-log.el (change-log-default-name): Put `string-or-null-p' - instead of lambda on `safe-local-variable' property. +2008-04-01 Jason Rumney - * diff-mode.el (diff-context->unified): Use `region-beginning' and - `region-end' instead of `mark' and `point'. - (diff-unified->context, diff-reverse-direction, diff-fixup-modifs): - Operate on region in Transient Mark mode when the mark is active. - Use `region-beginning' and `region-end' instead of `mark' and - `point'. - (diff-hunk-text, diff-goto-source): Doc fix. + * international/characters.el (script-list): Add phonetic script, + covering IPA (previously Latin), Phonetic Extensions and + Phonetic Extensions Supplement (both previously unassigned). - * startup.el (fancy-splash-screens, normal-splash-screen): Use - face `mode-line-buffer-id' for mode-line buffer face instead of - hard-coded `(:weight bold)'. + * international/fontset.el (setup-default-fontset): Use unicode fonts + that cover bopomofo script for bopomofo. + Likewise for braille and mathematical. + Use unicode scripts that cover the phonetic script for IPA. - * arc-mode.el (archive-set-buffer-as-visiting-file): Bind - buffer-undo-list to t (undo-ask is reproducible by visiting - nested archives). +2008-04-01 Johan Bockgård -2006-05-09 Kim F. Storm + * emacs-lisp/cl-macs.el (frame-parameter) : Make it + return the assigned value. - * progmodes/grep.el (rgrep): Set default directory of *grep* - buffer if we start M-x rgrep in the *grep* buffer and choose - a different base directory. +2008-04-01 Stefan Monnier -2006-05-09 Michael Albinus + * abbrev.el (abbrev-mode): Use define-minor-mode. - * net/tramp.el (tramp-register-file-name-handlers): Enable Tramp - completion also when ido is loaded. + * mouse.el (mouse-major-mode-menu-prefix): Remove. Remove uses. + (mouse-menu-non-singleton): Rename from mouse-major-mode-menu-1. + Use map-keymap. + (minor-mode-menu-from-indicator): Use it. Simplify. -2006-05-09 Masatake YAMATO + * bindings.el (mode-line-mode-menu): Move before (new) first use. + (mode-line-major-mode-keymap, mode-line-minor-mode-keymap): + Bind the key directly to the menu. + (mode-line-mode-menu-1, mode-line-mode-menu): Remove functions. - * font-lock.el (cpp-font-lock-keywords-source-directives): Addded - "warning" and "import". - (cpp-font-lock-keywords): Added "warning". +2008-04-01 Daiki Ueno -2006-05-08 Dan Nicolaescu + * epa.el (epa-decrypt-region): Explain the reason why this + function should not be used in Lisp programs. + (epa-decrypt-armor-in-region): Ditto. + (epa-verify-region): Ditto. + (epa-verify-cleartext-in-region): Ditto. + (epa-sign-region): Ditto. + (epa-encrypt-region): Ditto. - * term/xterm.el (terminal-init-xterm): Add more key bindings. + * epg.el (epg-start-receive-keys): Fix typo in docstring. -2006-05-08 Stefan Monnier + * epa.el (epa-select-keys): Show menu even if there is no key in + GnuPG's keyring. - * mwheel.el (mwheel-scroll): Make sure that when scrolling multiple - pages at a time, if we signal the end, we should indeed reach that end. +2008-04-01 Glenn Morris -2006-05-08 David Reitter + * calendar/calendar.el (calendar-make-temp-face): New function. + (mark-visible-calendar-date): + * calendar/diary-lib.el (fancy-diary-display): Use it. - * emacs-lisp/easy-mmode.el (define-minor-mode): Only preserve messages - output during execution of the body. + * vc-hooks.el (vc-responsible-backend): Declare as function. -2006-05-08 Kim F. Storm + * calendar/calendar.el (calendar-nongregorian-visible-p): New function. + * calendar/cal-hebrew.el (calendar-hebrew-date-is-visible-p): + * calendar/cal-julian.el (holiday-julian): Use it. - * progmodes/grep.el (lgrep, rgrep): Doc fixes. + * calendar/cal-hebrew.el (hebrew-calendar-elapsed-days): Doc fix. + (calendar-hebrew-date-is-visible-p): Extract some common code into + separate function. + (holiday-hebrew, mark-hebrew-calendar-date-pattern): Use it. -2006-05-08 Thien-Thi Nguyen + * calendar/cal-menu.el (cal-menu-holidays-menu): + * calendar/calendar.el (calendar-mode-map): Use calendar-mark-holidays + rather than obsolete alias. - * emacs-lisp/ewoc.el (ewoc--set-buffer-bind-dll-let*): - Use with-current-buffer. + * calendar/calendar.el (mark-visible-calendar-date): Also use overlay + for mark characters. + (calendar-unmark): Unmark by removing all overlays, rather than + redrawing. + (calendar-starred-day): Remove. + (calendar-mode): Disable undo. Don't make calendar-starred-day local. + (calendar-cursor-to-date): No need for special star handling now + using overlays. + (calendar-star-date): Use overlays. -2006-05-07 Kim F. Storm + * calendar/cal-french.el (calendar-goto-french-date): + * calendar/cal-hebrew.el (calendar-hebrew-from-absolute) + (holiday-hanukkah, mark-hebrew-calendar-date-pattern): + * calendar/cal-move.el (calendar-forward-month, calendar-end-of-month): + * calendar/cal-persia.el (calendar-persian-date-string): + * calendar/cal-tex.el (cal-tex-cursor-month-landscape) + (cal-tex-cursor-month, cal-tex-LaTeXify-string): + * calendar/lunar.el (lunar-phase-list, lunar-new-moon-on-or-after): + * calendar/solar.el (solar-equinoxes-solstices): + Reduce nesting of some lets. - * subr.el (add-to-history): Remove keep-dups arg. + * calendar/cal-mayan.el (calendar-string-to-mayan-long-count): + (calendar-goto-mayan-long-count-date): Simplify. - * kmacro.el (kmacro-push-ring): Let-bind history-delete-duplicates - to nil around call to add-to-history. + * calendar/holidays.el (calendar-holiday-list, holiday-easter-etc): + Simplify by using mapcar. + (calendar-list-holidays): Return holiday-list. + (list-holidays): Use let rather than let*. Remove un-needed locals + `d', `never'. + (calendar-check-holidays): Return result from dolist. + (holiday-float): Use a single let*. Simplify if-and to and. + (holiday-sexp, holiday-advent, holiday-greek-orthodox-easter): Use a + single let*. -2006-05-07 Stefan Monnier +2008-04-01 Jay Belanger - * emacs-lisp/syntax.el (syntax-ppss): Flush the cache before rather - than after a buffer modification. + * calc/calc.el: Autoload `calc-yank'. + (calc-mode-map): Add keybindings for `calc-yank'. + * calc/calc-ext.el (calc-init-extensions): Remove keybinding + assignments for `calc-yank'. -2006-05-08 Nick Roberts +2008-03-31 Dan Nicolaescu - * progmodes/gdb-ui.el (gdb-var-create-handler): Move speedbar - call to... - (gud-watch): ...here so speedbar is raised for already watched - expressions. - (gdb-speedbar-refresh): Delete function. - (gdb-speedbar-update, gdb-speedbar-timer-fn): New functions. - Use speedbar-timer-fn instead of speedbar-refresh (reverting - earlier change). - (gdb-var-evaluate-expression-handler) - (gdb-var-list-children-handler-1, gdb-var-update-handler-1): Use it. + * vc.el (vc-status-add-entry): Assume ENTRY is a list, not a cons. + (vc-status-mark-buffer-changed): Handle the extra field. - * speedbar.el (speedbar-timer-fn): Remove save-window-excursion. - Update localized contents for all buffers except ignored modes. + * vc-bzr.el (vc-bzr-after-dir-status): + * vc-cvs.el (vc-cvs-after-dir-status): + * vc-hg.el (vc-hg-after-dir-status): + * vc-svn.el (vc-svn-after-dir-status): Return a list, not a cons. -2006-05-07 YAMAMOTO Mitsuharu +2008-03-31 Stefan Monnier - * term/mac-win.el (mac-utxt-to-string): Use `eq' instead of `='. - (mac-atsu-font-table, mac-font-panel-mode): Add defvars. - (mac-bytes-to-digits, mac-handle-toolbar-switch-mode) - (mac-handle-font-panel-closed, mac-handle-font-selection): + * doc-view.el: Compute displayed pages first (in PDF). + (doc-view-current-converter-processes): Rename from + doc-view-current-converter-process. Update users. + (doc-view-sentinel): Test buffer's liveness. + (doc-view-pdf/ps->png-sentinel): Remove. + (doc-view-start-process): New function. + (doc-view-dvi->pdf, doc-view-pdf/ps->png, doc-view-pdf->txt) + (doc-view-ps->pdf): Use it. + (doc-view-pdf->png-1, doc-view-pdf->png, doc-view-active-pages): New functions. - (mac-font-panel-mode): New minor mode. - (mac-apple-event-map): Add bindings for toolbar toggle button and - font panel. - (menu-bar-showhide-menu): Add mac-font-panel-mode. - -2006-05-07 John Paul Wallington - - * ibuffer.el (ibuffer-compressed-file-name-regexp): - Avoid `regexp-opt'; simplify regexp for readability. - -2006-05-06 Eli Zaretskii - - * ldefs-boot.el (dired-do-redisplay, dired-maybe-insert-subdir): - * files.el (buffer-stale-function): - * dired-aux.el (dired-do-redisplay, dired-maybe-insert-subdir): - * autorevert.el (global-auto-revert-non-file-buffers): Point Info - links to the main manual, not to emacs-xtra. - -2006-05-06 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-utxt-to-string): Don't make adjustment for - MacJapanese if text is ASCII-only. - -2006-05-06 Nick Roberts - - * progmodes/gdb-ui.el (gdb-goto-breakpoint): Use or instead of - unless so nil isn't returned. - (gdb-setup-windows, gdb-restore-windows): Reset gdb-source-window. - -2006-05-06 Kim F. Storm - - * subr.el (add-to-history): New function. - - * ediff.el (ediff-files, ediff-files3, ediff-merge-files) - (ediff-merge-files-with-ancestor): - * env.el (setenv): - * isearch.el (isearch-update-ring): - * server.el (server-visit-files): - * progmodes/grep.el (lgrep, rgrep): - * progmodes/vhdl-mode.el (vhdl-generate-makefile-1): - * progmodes/xscheme.el (xscheme-insert-expression): - Use add-to-history. - - * kmacro.el (kmacro-push-ring): Use add-to-history. - (kmacro-ring-length): Remove unused defun. - (kmacro-start-macro): Use kmacro-push-ring. - -2006-05-06 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el (ewoc-create, ewoc-set-hf): Use `insert' - directly instead of a lambda expression that calls it. - -2006-05-06 Kim F. Storm - - * avoid.el (mouse-avoidance-point-position): Use posn-at-point - instead of compute-motion. - -2006-05-05 Dan Nicolaescu - - * ibuffer.el (ibuffer-compressed-file-name-regexp): Undo previous - change. - -2006-05-05 Reiner Steib - - * startup.el (command-line-1): Refer to "Pure Storage" on - pure-space-overflow. - -2006-05-05 Martin Rudalics - - * emacs-lisp/re-builder.el (reb-update-overlays): Cycle through - provided faces once they all have been used up. - -2006-05-05 Eli Zaretskii - - * startup.el (normal-splash-screen, fancy-splash-screens-1): Add a - reference to the Lisp manual to the warning about pure space - overflow. - -2006-05-05 Micha,Ak(Bl Cadilhac - - * textmodes/ispell.el (ispell-buffer-local-dict): Add a `no-reload' - argument to avoid the call to `ispell-internal-change-dictionary' - when not needed. - (ispell-change-dictionary): Use this argument and call - `ispell-internal-change-dictionary' after the possible change - to `ispell-local-dictionary'. - (ispell-internal-change-dictionary): Check for a change in - personal dictionary use too. - -2006-05-05 Eli Zaretskii - - * startup.el (command-line): On MS-Windows, probe "~", not - "~USER", for warning about non-existent home directory. - - * arc-mode.el (archive-l-e): New optional argument `float' means - generate a float value. - (archive-arc-summarize, archive-lzh-summarize) - (archive-zip-summarize, archive-zoo-summarize): Invoke archive-l-e - with 3rd argument non-nil when file's size is being computed. - Format the file sizes with %8.0f instead of %8d. - -2006-05-05 YAMAMOTO Mitsuharu - - * cus-start.el (all): Add mac-dnd-known-types. - - * term/mac-win.el (mac-utxt-to-string, mac-string-to-utxt) - (mac-TEXT-to-string, mac-string-to-TEXT, mac-furl-to-string) - (mac-TIFF-to-string): New functions. - (x-get-selection, x-selection-value) - (mac-select-convert-to-string): Use them. - (mac-text-encoding-mac-japanese-basic-variant): New constant. - (mac-dnd-types-alist): New customization variable. - (mac-dnd-handle-furl, mac-dnd-handle-hfs, mac-dnd-insert-utxt) - (mac-dnd-insert-TEXT, mac-dnd-insert-TIFF, mac-dnd-drop-data) - (mac-dnd-handle-drag-n-drop-event): New functions. - (mac-drag-n-drop): Remove function. - (global-map): Bind drag-n-drop and M-drag-n-drop to - mac-dnd-handle-drag-n-drop-event. - -2006-05-04 Karl Chen - - * progmodes/perl-mode.el (perl-beginning-of-function): - Skip anonymous subs. - -2006-05-04 Dan Nicolaescu - - * ibuffer.el (ibuffer-compressed-file-name-regexp): Avoid loading - regexp-opt at run time. - - * term.el (term-handle-ansi-escape): Fix off by one error. - -2006-05-04 Nick Roberts - - * progmodes/gdb-ui.el (gdb-force-update): Delete variable... - (gdb-init-1, gdb-post-prompt): ...and references to it. - (gdb-frame-handler): Strip directory name from filename if present. - - * progmodes/gud.el (gdb-force-update): Delete defvar - (gud-speedbar-buttons): ...and references to it. Use window-start - to try to keep positon in watch expression. - -2006-05-03 Richard Stallman - - * simple.el (next-history-element, previous-history-element): Doc fix. - - * isearch.el (isearch-update-ring): Doc fix. - -2006-05-03 Dan Nicolaescu - - * isearch.el (isearch-update-ring): Take history-delete-duplicates - into consideration. Replace one arm ifs with whens. - -2006-05-03 Nick Roberts - - * progmodes/gdb-ui.el (gud-watch): Let user select an expression. - (menu): Fix typo. - -2006-05-02 Miles Bader - - * replace.el (occur-engine): Bind `inhibit-field-text-motion' to t. - -2006-05-02 Jay Belanger - - * calc/calc-embed.el (calc-override-minor-modes-map) - (calc-override-minor-modes): New variables. - (calc-do-embedded): Make sure that Calc keystrokes aren't - overwritten by minor modes. - -2006-05-02 Chong Yidong - - * msb.el (msb): If EVENT is a down event, read and discard the up event. - -2006-05-02 Reiner Steib - - * startup.el (command-line-1): Refer to Lisp manual when - pure-space-overflow occurs. - - * files.el (byte-compile-dynamic, byte-compile-dynamic-docstrings) - (byte-compile-warnings, find-file-visit-truename, indent-tabs-mode) - (left-margin, no-byte-compile, no-update-autoloads, truncate-lines) - (version-control): Don't use `t' for safe-local-variable declarations. - -2006-05-01 Richard Stallman - - * diff-mode.el (diff-mode-shared-map): Don't bind M-W, M-U, M-C, - M-r, M-R, M-A, M-SPC or M-DEL. - (diff-mode-map): diff-refine-hunk now on C-c C-w - (diff-mode-map): Bind C-c C-e, C-c C-n, C-c C-r, C-c C-u. - - * help-mode.el (help-mode): view-exit-action calls delete-window - only when it is safe and possible. - - * simple.el (undo-outer-limit-truncate): Put quotes around buffer name - in messages. + (doc-view-convert-current-doc, doc-view-goto-page): Use them. + (doc-view-mode): Kill the processes when leaving the mode. - * emacs-lisp/warnings.el (display-warning, lwarn): Doc fixes. +2008-03-31 Juanma Barranquero - * tool-bar.el (tool-bar-setup): Put Help and Preferences items - in the default tool-bar-map. + * emacs-lisp/bytecomp.el (byte-compile-warnings-safe-p): + Use `byte-compile-warning-types'. Add docstring. -2006-05-01 Michael Albinus +2008-03-31 Stefan Monnier - * net/tramp.el (tramp-completion-file-name-handler-alist) - (tramp-run-real-handler, tramp-completion-run-real-handler) - (tramp-completion-handle-file-name-all-completions) - (tramp-completion-handle-file-name-completion): Autoload them. - (tramp-completion-handle-file-exists-p) - (tramp-completion-handle-file-name-directory) - (tramp-completion-handle-file-name-nondirectory) - (tramp-completion-handle-expand-file-name): Remove them. - (tramp-handle-file-name-directory): Return the real directory name. - Returning "/" only doesn't need to be necessary any longer. - (tramp-file-name-handler): Make special attention when in hostname - completion mode. - (tramp-completion-file-name-handler): Revert patch from 2006-04-28. - (tramp-register-file-name-handlers): - Register `tramp-completion-file-name-handler' only when - `partial-completion-mode' is enabled. - (tramp-completion-handle-file-name-all-completions): - Delete directory part from results. - (tramp-get-completion-methods, tramp-get-completion-user-host): - Discard deleting "/", it doesn't work after the change of - `tramp-handle-file-name-directory' above. + * smerge-mode.el (smerge-apply-resolution-patch): New fun. + (smerge-resolve): Add various resolution heuristics. -2006-05-01 Kim F. Storm + * smerge-mode.el (smerge-refine): Allow highlighting other subparts + in 3-way conflicts. - * progmodes/grep.el (grep-expand-template): Use save-match-data - and symbol-value. +2008-03-31 Glenn Morris -2006-05-01 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-ae-open-documents, mac-drag-n-drop): - Use select-frame-set-input-focus instead of raise-frame. - (global-map): Bind M-drag-n-drop to mac-drag-n-drop. - -2006-05-01 Nick Roberts - - * progmodes/gud.el (gud-def): Add %c case. - (gud-speedbar-buttons): Don't bind case-fold-search unnecessarily. - (gud-format-command): Make match case sensitive. Match on %F. - -2006-04-30 Glenn Morris - - * calendar/cal-tex.el (cal-tex-preamble-extra): New variable. - (cal-tex-preamble): Use cal-tex-preamble-extra. - (cal-tex-list-diary-entries): Refer to `diary-list-entries' rather - than alias `list-diary-entries'. - -2006-04-29 Dan Nicolaescu - - * help-fns.el (describe-variable): Add info about safe local variables. - -2006-04-29 Richard Stallman - - * bindings.el (mode-line-format): help-echo doc fixes. - - * net/tramp.el (tramp-file-name-handler-alist): Delete - expand-file-name and other operations that can cause spurious loading. - -2006-04-29 Stefan Monnier - - * files.el (safe-local-variable-p): Remove support for the special - value t. - - * textmodes/paragraphs.el (sentence-end-without-space): - Fix safety predicate. - (sentence-end-double-space, sentence-end-without-period) - (paragraph-ignore-fill-prefix): - * textmodes/fill.el (colon-double-space): - * abbrev.el (abbrev-mode): Tighten the safety predicate. - - * subr.el (booleanp): New fun. - - * textmodes/reftex-vars.el (reftex-guess-label-type): - Tighten the safety predicate. - -2006-04-28 Kim F. Storm - - * progmodes/grep.el (defgroup grep): Doc fix. - (grep-auto-highlight): Remove. - (grep-template): New defcustom. - (grep-find-template): Rename from grep-tree-template. - (grep-files-aliases): Rename from grep-tree-files-aliases. - Remove "all" alias, add "l" alias. - (grep-tree-ignore-case, grep-tree-ignore-CVS-directories): Remove. - (grep-find-ignored-directories): New defcustom to replace - grep-tree-ignore-CVS-directories, to facilitate ignoring - subdirectories for multiple version control systems. - (grep-mode-map): Add Recursive grep item to GREP menu. - (grep-regexp-history, grep-files-history): New defvars. - (grep-probe): New helper function. - (grep-compute-defaults): Use it to simplify code. - Adapt to name changes. - Use `.' as base in grep-find-template rather than . - (grep): Remove superfluous highlight-regexp arg. Fix doc. - Call grep-compute-defaults unconditionally. - (grep-expand-keywords): New defconst. - (grep-expand-template): Rename from grep-expand-command-macros. - Simplify via grep-expand-keywords. Look at case-fold-search instead - of grep-tree-ignore-case to add -i option. - Bind case-fold-search to nil while matching keywords. - (grep-tree-last-regexp, grep-tree-last-files): Remove. - (grep-read-regexp, grep-read-files): New helper functions. - (rgrep): Rename from grep-tree. Rework to use proper histories. - Adapt to changes in defcustoms and functions above. - (lgrep): New command, as grep, but using same interactive UI as rgrep. - -2006-04-28 Michael Albinus - - * net/tramp.el (tramp-completion-file-name-handler): - Disable Tramp's functionality while loading Tramp itself. - (tramp-register-file-name-handlers): That's a defsubst now. - Code from `tramp-repair-jka-compr' moved here. Apply it via - `after-init-hook'. - (tramp-repair-jka-compr): Remove. - -2006-04-27 Jay Belanger - - * calc/calc-embed.el (calc-embedded-make-info): Use `math-read-expr' to - read expression when `math-read-big-expr' doesn't work. - -2006-04-27 Reiner Steib - - * startup.el (command-line-1): Display warning when - pure-space-overflow is non-nil. - -2006-04-26 Roland Winkler - - * textmodes/bibtex.el (bibtex-user-optional-fields): Mark as - risky. - -2006-04-26 Roland Winkler - - * textmodes/bibtex.el (bibtex-url): New optional arg no-browse. - Return the URL or nil if none can be generated. + * calendar/cal-bahai.el (diary-bahai-mark-entries): + * calendar/cal-hebrew.el (mark-hebrew-diary-entries): + * calendar/cal-islam.el (mark-islamic-diary-entries): + Fix argument order in call to diary-mark-entries-1. -2006-04-27 Nick Roberts + * calendar/cal-bahai.el (calendar-bahai-date-string): Avoid an error for + pre-Bahai dates. + (holiday-bahai): Use an algorithm actually relevant to this calendar + system. - * progmodes/gud.el (gud-comint-buffer): Move forward to stop - byte compiler warnings. - (gud-basic-call, gud-find-expr): Let user select an expression - for printing. Print expression as well as value in GUD buffer. + * calendar/cal-china.el (holiday-chinese-new-year): Doc fix. -2006-04-17 Ken Manheimer + * calendar/cal-islam.el (holiday-islamic): Remove un-needed let. + Use and. - * allout.el: Remove local autoload declaration for - pgg-gpg-symmetric-key-p, since that's now done in pgg-gpg.el. - (allout-show-bodies, allout-header-prefix, allout-primary-bullet) - (allout-plain-bullets-string, allout-distinctive-bullets-string) - (allout-use-mode-specific-leader, allout-old-style-prefixes) - (allout-stylish-prefixes, allout-numbered-bullet) - (allout-file-xref-bullet, allout-presentation-padding) - (allout-use-hanging-indents, allout-reindent-bodies): Mark as - safe-local-variable with suitable value spec, and add autoload - cookie for loaddefs inclusion. We now use an explicit spec everywhere. - (move-beginning-of-line, move-end-of-line): Repair so these compat - functions now actually resituate the point, when appropriate. + * calendar/cal-julian.el (holiday-julian): Fix a problem with holidays + in the last fortnight in Julian October. -2006-04-26 Stefan Monnier + * calendar/calendar.el (increment-calendar-month): Optionally handle + systems without 12 months per year. - * progmodes/cc-subword.el (c-subword-mode-map): Use command remapping. + (calendar-date-is-visible-p): Doc fix. Simplify. - * add-log.el (add-log-iso8601-time-zone): Make parameter optional. - (add-log-iso8601-time-string): Fix call to format-time-string. + * calendar/holidays.el (holiday-filter-visible-calendar): Return result + from dolist. -2006-04-26 Kim F. Storm +2008-03-30 Juanma Barranquero - * subr.el (posn-string, posn-image, posn-object): Doc fix. + * hi-lock.el (hi-lock-mode): Fix typos in docstring. + (hi-lock-unload-function): New function. -2006-04-26 Masatake YAMATO +2008-03-30 Michael Albinus - * progmodes/asm-mode.el (asm-mode, asm-mode-syntax-table): - Add support for "//" style comments. Remove `b' flag - from ?* in `asm-mode-syntax-table'. + * net/tramp.el (tramp-do-copy-or-rename-file): Fix check for + overwriting when NEWNAME is a local file. -2006-04-26 Stefan Monnier + * net/trampver.el: Update release number. - * follow.el: Use (featurep 'xemacs) everywhere. - (follow-mode): Use define-minor-mode. - (follow-mode-map): Move initialization into the declaration. - Use command remapping. - (follow-emacs-version-xemacs-p): Remove. - (follow-submit-feedback): Remove. +2008-03-30 Alexandre Julliard - * allout.el (allout-layout, allout-passphrase-verifier-string) - (allout-passphrase-hint-string): Tighten up a bit the safety predicate. + * vc-git.el: Make vc-status display information about copies, + renames and permission changes. + (vc-git-extra-fileinfo): New defstruct. + (vc-git-escape-file-name, vc-git-file-type-as-string) + (vc-git-rename-as-string, vc-git-permissions-as-string) + (vc-git-status-printer): New functions. + (vc-git-after-dir-status-stage2): Also return vc-git-extra-fileinfo. + (vc-git-after-dir-status-stage1): Look for copies, renames and + permission changes. + (vc-git-after-dir-status-stage1-empty-db): Set permissions. + (vc-git-dir-status): Ask for staged files and renames. - * textmodes/reftex-vars.el (reftex-vref-is-default) - (reftex-fref-is-default, reftex-guess-label-type): - Tighten up a bit the safety predicate. +2008-03-30 Dan Nicolaescu - * textmodes/paragraphs.el (sentence-end-double-space) - (sentence-end-without-period, sentence-end-without-space) - (page-delimiter, paragraph-ignore-fill-prefix): - Tighten up a bit the safety predicate. + * vc.el: Allow backends to display backend specific information in + the vc-status listing. + (vc-status-fileinfo): Add a field for backend specific information. + (vc-status-printer): Rename to ... + (vc-default-status-printer): ... this. + (vc-status-printer): New function. + (vc-update-vc-status-buffer): Set the backend specific file info + if provided. - * textmodes/fill.el (colon-double-space): Tighten up the safety pred. +2008-03-30 Stefan Monnier - * progmodes/python.el (python-continuation-line-p) - (python-beginning-of-statement): syntax-ppss may return - a negative depth. - (python-mode): Don't forcefully enable font-lock. + * textmodes/remember.el (remember-diary-convert-entry): Revert last + change (ill-conceived). - * time-stamp.el (time-stamp-start, time-stamp-end) - (time-stamp-inserts-lines): Tighten up a bit the safety predicate. +2008-03-29 Glenn Morris - * add-log.el: Remove spurious * in docstrings. - (add-log-time-zone-rule): Rename from change-log-time-zone-rule. - (add-change-log-entry): Use it here, since it's not specific - to iso8601. - (add-log-iso8601-time-string): Don't use it here any more. - (change-log-indent-text, change-log-indent): Rename from add-log-*. + * calendar/cal-hebrew.el (holiday-hebrew): Simplify. + * calendar/cal-julian.el (holiday-julian): Simplify. - * abbrev.el (abbrev-mode): Tighten up a bit the safety predicate. + * calendar/holidays.el (list-holidays): Use or. -2006-04-25 Ryan Yeske +2008-03-29 Juri Linkov - * net/rcirc.el (rcirc-print): Revert last change with ignored nicks. - (rcirc-toggle-low-priority): Doc fix. - (rcirc-handler-NOTICE): Remove beginning of line anchor in - ChanServ regexp. - (rcirc-startup-channels-alist): Connect to #rcirc by default, not - #emacs. - (rcirc-bright-nick-regexp, rcirc-dim-nick-regexp): Add variables. - (rcirc-decode-coding-system): Use utf-8 as the default. - (rcirc-multiline-minor-mode): Set the fill-column. - (rcirc-format-response-string): Display bright and dim nicks. - (rcirc-browse-url): Update interactive spec to fill ARG. - (rcirc-bright-nick, rcirc-dim-nick): Add faces. - (rcirc-print): Ignore dim-nick messages wrt modeline-activity. + * window.el (split-window-preferred-horizontally): New function. -2006-04-24 J.D. Smith + * cus-start.el (split-window-preferred-function): + Set choice for "vertically" to nil instead of split-window. + Set choice for "horizontally" to split-window-preferred-horizontally + instead of lambda. - * textmodes/bibtex.el (bibtex-find-entry): Don't demand matching - case for @Article, etc. +2008-03-29 Juri Linkov -2006-04-23 Michael Albinus + * simple.el (minibuffer-default-add-function): New variable with + the default to minibuffer-default-add-completions. + (minibuffer-default-add-done): New variable. Make it buffer-local. + (minibuffer-default-add-completions): New function. + (goto-history-element): Set minibuffer-default-add-done to t and + call a function in minibuffer-default-add-function when the + specified absolute history position is greater than the length of + the minibuffer-default list and minibuffer-default-add-done is nil. + Change "^End of history; no next item$" to "^End of defaults; + no next item$". - * net/tramp.el (tramp-register-file-name-handlers): New defun. - Added with autoload cookie. - (tramp-unload-file-name-handlers): Rename from - `tramp-unload-file-name-handler-alist'. + * bindings.el (debug-ignored-errors): Change "^End of history; + no next item$" to "^End of defaults; no next item$". -2006-04-23 Romain Francoise +2008-03-29 Stefan Monnier - * comint.el (comint-match-partial-filename): Doc fix. + * subr.el (with-temp-buffer): Assume kill-buffer can change cur-buf. -2006-04-21 Glenn Morris + * textmodes/remember.el (remember-diary-convert-entry): Prefer boundp + to with-no-warnings. - * calendar/cal-menu.el (calendar-mode-map): Refer to - `diary-view-entries' rather than alias `view-diary-entries'. - * calendar/diary-lib.el (view-other-diary-entries): Ditto. +2008-03-29 Michael Albinus -2006-04-21 Luc Teirlinck + Sync with Tramp 2.1.13. - * progmodes/antlr-mode.el (antlr-default): - * cus-edit.el (custom-documentation): - * faces.el (scroll-bar, border, cursor, mouse): Avoid nil spec - in defface. + * net/tramp-ftp.el: Require 'cl when byte-compiling. -2006-04-21 Kim F. Storm + * net/trampver.el: Update release number. - * image.el (image-type): New defun split out of create-image. - (create-image): Use it. +2008-03-29 Dan Nicolaescu + + * vc-hooks.el (vc-menu-map-filter): Be more careful when finding + the current backend. + + * vc.el (vc-status-menu-map, vc-status-mode-map): Bind vc-revert. + (vc-status-refresh): Create a temporary buffer and call the + `dir-status' backend function from that buffer. + + * vc-bzr.el (vc-bzr-dir-status): Don't create a buffer. + (vc-bzr-after-dir-status): Don't kill the buffer. + + * vc-cvs.el (vc-cvs-dir-status): Don't create a buffer. + (vc-cvs-after-dir-status): Don't kill the buffer. + + * vc-git.el (vc-git-dir-status): Don't create a buffer. + (vc-git-after-dir-status-stage2): Don't kill the buffer. + + * vc-hg.el (vc-hg-dir-status): Don't create a buffer. + (vc-hg-after-dir-status): Don't kill the buffer. + + * vc-svn.el (vc-svn-dir-status): Don't create a buffer. + (vc-svn-after-dir-status): Don't kill the buffer. + +2008-03-29 Glenn Morris + + * calendar/calendar.el (diary-file, american-date-diary-pattern) + (european-date-diary-pattern, european-calendar-display-form) + (american-calendar-display-form, diary-display-hook): Doc fixes. + (european-calendar-style): Doc fix. Use calendar-set-date-style for + custom :set. Mark as obsolete. + (calendar-date-style, iso-date-diary-pattern) + (iso-calendar-display-form): New user variables. + (diary-date-forms, calendar-date-display-form): Set using + calendar-date-style. Doc fix. + (calendar-set-date-style): New command. + (european-calendar, american-calendar): Use calendar-set-date-style. + Mark as obsolete. + + * calendar/diary-lib.el (number): Move declaration where needed. + (diary-mail-entries, list-sexp-diary-entries): Doc fixes. + (diary-make-date): New function. + (diary-date, diary-block, diary-anniversary, diary-cyclic): Doc fix. + Use diary-make-date. + (diary-date-display-form, diary-insert-entry-1): New functions. + (insert-monthly-diary-entry, insert-yearly-diary-entry): + Use diary-insert-entry-1. + (insert-anniversary-diary-entry, insert-block-diary-entry) + (insert-cyclic-diary-entry): Use diary-date-display-form. + + * calendar/cal-bahai.el, calendar/cal-hebrew.el, calendar/cal-islam.el: + Autoload diary-insert-entry-1. + * calendar/cal-bahai.el (diary-bahai-insert-entry) + (diary-bahai-insert-monthly-entry, diary-bahai-insert-yearly-entry): + * calendar/cal-hebrew.el (insert-hebrew-diary-entry) + (insert-monthly-hebrew-diary-entry, insert-yearly-hebrew-diary-entry) + * calendar/cal-islam.el (insert-islamic-diary-entry) + (insert-monthly-islamic-diary-entry, insert-yearly-islamic-diary-entry): + Use diary-insert-entry-1. + + * calendar/cal-hebrew.el (diary-make-date): Autoload it. + (diary-yahrzeit): Doc fix. Use diary-make-date. + + * calendar/icalendar.el (icalendar--datetime-to-american-date): + New name for icalendar--datetime-to-noneuropean-date. Make old name + obsolete alias. + (icalendar--datetime-to-iso-date): New function. + (icalendar--datetime-to-diary-date): Doc fix. Respect + calendar-date-style if bound. -2006-04-21 Carsten Dominik + * textmodes/remember.el (remember-diary-convert-entry): + Respect calendar-date-style if bound. - * textmodes/org.el (org-mode-map): Catch conflict with old allout.el. - (org-open-at-point): Remove the "...done" message to keep output - in the echo area visible. - (org-export-as-xoxo): Fix call to `indent-region'. +2008-03-29 Stefan Monnier -2006-04-21 Kevin Ryde + * xt-mouse.el (xterm-mouse-mode): Use delete-terminal-functions. + (xterm-mouse-handle-delete-frame): Delete. - * international/mule.el (keyboard-coding-system): defcustom - info-link fixes: "Specify Coding" has been split, keyboard now in - "Terminal Coding", and "Single-Byte Character Support" is now - "Unibyte Mode". + * term/xterm.el (terminal-init-xterm): Use delete-terminal-functions. + (xterm-turn-on-modify-other-keys, xterm-turn-off-modify-other-keys) + (xterm-remove-modify-other-keys): Lookup terminal rather than frame + in xterm-modify-other-keys-terminal-list. -2006-04-21 Nick Roberts + * vc-bzr.el (vc-bzr-state-heuristic): Fix last change for when there + are conflicts. - * progmodes/gdb-ui.el (gdb-data-list-register-values-handler): - Use font-lock-warning-face for any errors e.g. no stack. - (gdb-stack-list-locals-handler): Display any errors e.g. no stack. +2008-03-29 Dan Nicolaescu -2006-04-20 Dan Nicolaescu + * vc.el (vc-update): Check if the buffer is unsaved only if it + actually exists. + (vc-status-mode-map, vc-status-menu-map): Bind vc-update and + vc-print-log. - * progmodes/sh-script.el (sh-shell): Mark as safe. +2008-03-28 Magnus Henoch - * newcomment.el (comment-start, comment-start-skip) - (comment-end-skip, comment-end): Mark as safe. + * net/dns.el (dns-write): Use set-buffer-multibyte. -2006-04-20 Carsten Dominik +2008-03-28 Stefan Monnier - * textmodes/org.el (org-deadline-announce): Face removed. - (org-level-faces, org-n-levels): Convert to constant. - (org-compatible-face): New function. - (org-hide, org-level-1, org-level-2, org-level-3, org-level-4) - (org-level-5, org-level-6, org-level-7, org-level-8) - (org-special-keyword, org-warning, org-headline-done, org-link) - (org-date, org-tag, org-todo, org-done, org-table, org-formula) - (org-scheduled-today, org-scheduled-previously, org-time-grid): - Face definition revised for better color tty support. - (org-bold-re, org-italic-re, org-underline-re): New constants. - (org-set-font-lock-defaults): Use the new constants. - (org-agenda-highlight-todo): New function. - (org-agenda-todo): Fix bug with point at end of line. - (org-agenda-change-all-lines, org-finalize-agenda-entries): - Fontify TODO keywords. - (org-insert-link): Preserve relative path in ../ links. - (org-export-as-html): Convert links pointing to .org files into - links that will work beteen the exported HTML files. - (org-todo-list): Fix bug when arg=0. - (org-insert-heading): More fine-tuning. + * vc-bzr.el (vc-bzr-sha1): New fun. + (vc-bzr-state-heuristic): New fun, extracted from vc-bzr-registered. + (vc-bzr-registered): Use it. -2006-04-19 Romain Francoise +2008-03-28 Dan Nicolaescu - * mail/rmail.el (rmail-convert-to-babyl-format): Use second group - from `rmail-mime-charset-pattern'. + * vc.el (vc-status-kill-dir-status-process): Simplify. + (vc-status-refresh): Make sure the buffer is live. + (ring): Don't require it, not used. -2006-04-18 Dan Nicolaescu +2008-03-28 Wilson Snyder - * progmodes/python.el (python-mode): Fix typo. + * progmodes/verilog-mode.el (verilog-auto-inout-module): + Add optional regular expression to AUTOINOUTMODULE. + (verilog-inject-auto, verilog-auto-arg, verilog-auto-inst) + (verilog-auto-inst-param, verilog-auto-reg) + (verilog-auto-reg-input, verilog-auto-wire, verilog-auto-output) + (verilog-auto-output-every, verilog-auto-input) + (verilog-auto-inout, verilog-auto-sense, verilog-auto-tieoff) + (verilog-auto-unused, verilog-auto): Update documentation to use + more obvious instance module names versus cell names. -2006-04-18 J.D. Smith +2008-03-28 Jan Djärv - * comint.el (comint-previous-input): Don't clobber input line - when moving off either end of the input history ring. - (comint-delete-input): New function, used by - `comint-previous-input' and others. - (comint-previous-matching-input): - Use `coming-delete-input'. Save the partial input if leaving the - edit line. Goto point-max before deleting input to avoid - partial input fragments hanging around. - (comint-restore-input): New function, used by `comint-previous-input'. + * progmodes/compile.el (compilation-mode-tool-bar-map): Only enable + kill if a process is running. -2006-04-18 Luc Teirlinck + * progmodes/grep.el (grep-mode-tool-bar-map): The same. - * imenu.el (imenu--index-alist): Balance parentheses. +2008-03-28 Dan Nicolaescu -2006-04-18 Dan Nicolaescu + * vc.el: Add new backend function 'status-extra-headers. + (vc-default-status-extra-headers): New function. + (vc-status-headers): Call 'status-extra-headers. Add colors. - * progmodes/python.el (python-mode): Add support for hs-minor-mode. + * vc-git.el (vc-git-status-extra-headers): New function. -2006-04-19 Reiner Steib +2008-03-28 Glenn Morris - * abbrev.el (read-abbrev-file): Use abbrev-file-name if optional - file is nil. + * calendar/cal-menu.el (cal-menu-holidays-menu) + (cal-menu-list-holidays-year, cal-menu-list-holidays-following-year) + (cal-menu-list-holidays-previous-year): Simplify now that 2nd arg of + holiday-list is optional. + (calendar-mouse-holidays): Remove un-needed local `l'. -2006-04-18 Richard Stallman + * calendar/cal-move.el (calendar-cursor-to-nearest-date): + Remove un-needed local `date'. + (calendar-cursor-to-visible-date): Use let rather than let*. + Remove un-needed local `first-of-month-weekday'. - * tooltip.el (tooltip-mode, tooltip-use-echo-area): Doc fixes. + * calendar/calendar.el (abbreviated-calendar-year): Move to diary-lib. - * imenu.el (imenu-create-index-function, imenu--index-alist) - (imenu--last-menubar-index-alist, imenu--make-index-alist) - (imenu-default-create-index-function, imenu--generic-function): + * calendar/diary-lib.el (print-diary-entries-hook, diary-list-entries): Doc fixes. + (abbreviated-calendar-year): Move here from calendar.el. Doc fix. + (diary-header-line-flag, diary-header-line-format): Declare. + (diary-pull-attrs): Check for multiple matches. + (diary-list-entries-2): Simplify finding start of date. + (diary-show-all-entries, make-diary-entry): Respect non-nil values of + pop-up-frames. + (diary-mark-entries-1): Re-use offset in abbreviated-year case. + (mark-sexp-diary-entries): Remove superfluous call to diary-pull-attrs. - * image-mode.el (image-toggle-display): Handle tar and arc subfiles. - - * help-mode.el (help-mode): Set view-exit-action to delete window. - - * env.el (setenv): Get rid of arg UNSET. Interactive unsetting - now works by passing nil as arg. - - * apropos.el (apropos-print): Don't do where-is on self-insert-command. - - * abbrev.el (edit-abbrevs-redefine): Temporarily widen. - (read-abbrev-file): Provide default when reading filename. - - * files.el (enable-local-variables): Allow :all as value. - (hack-local-variables): Implement that value. - (safe-local-variable-values, safe-local-eval-forms) - (enable-local-variables): Mark as risky. - (find-file-visit-truename, kept-old-versions): Mark safe. - - * time-stamp.el (time-stamp-format, time-stamp-line-limit) - (time-stamp-start, time-stamp-end, time-stamp-inserts-lines) - (time-stamp-count, time-stamp-pattern): Add safe-local-variable prop. - -2006-04-18 Stefan Monnier - - * progmodes/tcl.el (tcl-send-string, tcl-send-region): - Use forward-line so as to get to BOL even in the presence of fields. - (tcl-eval-region): Strip surrounding space to avoid multiple prompts - in return. - (inferior-tcl): Tell tclsh to work in interactive mode. - - * complete.el (partial-completion-mode): - Use 'choose-completion-string-functions to make sure that - choose-completion fills the minibuffer properly. - - * complete.el (PC-old-read-file-name-internal): Remove. - (PC-read-include-file-name-internal): Remove. Turn it into an advice - of read-file-name-internal. - (partial-completion-mode): Enable/disable this advice. - -2006-04-18 Juanma Barranquero - - * net/tramp.el (tramp-completion-file-name-handler): Revert change - of 2006-04-17. +2008-03-27 Dan Nicolaescu -2006-04-18 Carsten Dominik + * vc-hg.el (vc-hg-state, vc-hg-dir-state): Deal with 'missing files. - * textmodes/org.el (org-insert-heading): Insert heading before - current if at beginning of line. - (org-todo, org-date): New faces. - (org-table-align): Make sure tooltip window contains full text. - (org-no-properties): New defsubst. - (org-set-font-lock-defaults): Use new faces. + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Fix predicate. -2006-04-18 Nick Roberts +2008-03-27 Stefan Monnier - * progmodes/gud.el (gud-speedbar-item-info): Display frame address - for root variables. + * vc-hooks.el (vc-before-save): Don't prevent saving the file. - * progmodes/gdb-ui.el (gdb-pc-address): Rename from gdb-frame-address. - (gdb-frame-address): Re-use to identify frame for watch expression. - (gdb-var-list, gdb-var-create-handler): Add frame address for root - variables. - (gdb-init-1, gdb-source, gdb-post-prompt) - (gdb-assembler-custom, gdb-invalidate-assembler): Use gdb-pc-address. - (gdb-frame-handler): Get gdb-frame-address. - -2006-04-17 Michael Albinus + * image-mode.el (image-mode-reapply-winprops): Fix last change. - Sync with Tramp 2.0.53. +2008-03-27 Kenichi Handa - * net/tramp.el (tramp-completion-mode): ?\t has event-modifier - 'control. Reported by Matthias F,Av(Brste . - (tramp-completion-file-name-handler): Add autoload cookie for - adding to `file-name-handler-alist'. + * international/mule-conf.el (define-iso-single-byte-charset): + Don't make latin-iso8859-* supplementary. + (#'set-charset-priority): Don't change the priority of charsets + `unicode' and `emacs'. - * net/tramp-smb.el (tramp-smb-wait-for-output): Wait always for - the prompt. If it returns earlier (when detecting an error - message), the rest of the output will merge accidently with the - output of the next command. Reported by M Jared Finder - . +2008-03-27 Stefan Monnier - * net/tramp-vc.el (vc-user-login-name): Wrap defadvice with a test - for `process-file', in order to let it work for older Emacsen too. + * vc.el (vc-do-command): Don't pop to the buffer if it's an internal + temp buffer. -2006-04-17 Ralf Angeli +2008-03-27 Glenn Morris - * textmodes/tex-mode.el (tex-font-lock-match-suscript): New function. - (tex-font-lock-keywords-3): Use it. + * calendar/cal-bahai.el (diary-bahai-list-entries): + * calendar/cal-hebrew.el (list-hebrew-diary-entries): + * calendar/cal-islam.el (list-islamic-diary-entries): Doc fix. -2006-04-16 Stefan Monnier + * calendar/calendar.el (diary-file): Doc fix. - * newcomment.el (comment-add): New function. - (comment-region-default, comment-dwim): Use it. + * calendar/diary-lib.el (diary-face-attrs): Fix `height' regexp. + (list-diary-entries-hook, mark-diary-entries-hook) + (include-other-diary-files, diary-mail-entries) + (mark-included-diary-files, list-sexp-diary-entries): Doc fixes. + (diary-set-header): New function. + (diary-header-line-flag, diary-header-line-format): + Use diary-set-header for custom :set function. + (diary-set-maybe-redraw): Use symbol-value rather than eval. + (diary-attrtype-convert): Use intern-soft rather than read. + (diary-display-no-entries): New function. + (simple-diary-display, fancy-diary-display): Use it. + (fancy-diary-display): Doc fix. Remove unneeded local entry-list. + (diary-mark-entries-1): Fix position offsets in non-gregorian case. -2006-04-15 Michael Olson + * calendar/holidays.el (list-holidays): Doc fix. - * emacs-lisp/tq.el: Improve comments. - (tq-queue-head-question): New accessor function. - (tq-queue-head-regexp, tq-queue-head-closure, tq-queue-head-fn): - Update for modified queue structure. - (tq-queue-add): Accept `question' argument. - (tq-queue-pop): If a question is pending, send it. - (tq-enqueue): Accept new optional argument `delay-question'. - If this is non-nil, and at least one other question is pending a - response, queue the question rather than sending it immediately. +2008-03-26 Jay Belanger -2006-04-15 Roland Winkler + * calc/calc-store.el (calc-read-var-name-history): New variable. + (calc-read-var-name): Use `calc-read-var-name-history'. - * calendar/appt.el (appt-add): Check whether an appointment is - already present in appt-time-msg-list. Simplify code. +2008-03-26 Stefan Monnier -2006-04-14 Stefan Monnier + * image-mode.el (image-mode-reapply-winprops): Simplify now that + window-configuration-change-hook works buffer-locally. - * progmodes/cc-langs.el (c-mode-menu): - Don't presume c-subword-mode is bound. +2008-03-26 Johan Bockgård -2006-04-13 Bill Wohler + * emacs-lisp/lisp-mnt.el (lm-with-file): Use mode and syntax table + for Emacs Lisp, not Lisp. - * cus-edit.el (customize-package-emacs-version-alist): Update docstring. - (customize-package-emacs-version): Use cdr instead of cadr now - that alists use dotted pairs. +2008-03-26 Juanma Barranquero - * custom.el (defcustom): Fix docstring for :package-version. + * help-fns.el (describe-function-1, describe-variable): + If CURRENT-NAME is nil, don't end obsolescence info with semicolon. -2006-04-13 Michael Albinus + * emacs-lisp/bytecomp.el (byte-compile-obsolete): If no + replacement is provided, don't print "use nil instead". - * net/tramp.el (tramp-display-shell-command-buffer): New defvar. - (tramp-handle-shell-command): Display output buffer only when - `tramp-display-shell-command-buffer' is true. - (tramp-handle-process-file): Set `tramp-display-shell-command-buffer'. +2008-03-26 Johan Bockgård -2006-04-13 Carsten Dominik + * complete.el (PC-do-completion): Use regexp-quote. - * textmodes/org.el (org-set-autofill-regexps): Set only the local - values of `adaptive-fill-regexp' and `adaptive-fill-function'. +2008-03-26 Dan Nicolaescu -2006-04-13 Romain Francoise + * vc-cvs.el (vc-cvs-parse-status, vc-cvs-after-dir-status): + Detect missing files. - * pcvs-parse.el (cvs-parse-table): Use `with-temp-buffer' to avoid - leaving temporary .cvsignore buffers behind. + * vc-git.el (vc-git-extra-menu-map): New key map. + (vc-git-extra-menu, vc-git-extra-status-menu, vc-git-grep): + New functions. -2006-04-13 Carsten Dominik + * vc-hooks.el (vc-default-mode-line-string): Deal with 'removed + and 'missing files. - * textmodes/org.el (org-set-regexps-and-options) - (org-get-current-options): Better names for the startup folding - options. +2008-03-26 Stefan Monnier -2006-04-13 Thien-Thi Nguyen + * calendar/holidays.el (list-holidays): Make Y2 optional. - * vc.el (vc-annotate): Arrange for point to end up at the same - line number as in the original, but only when using a new buffer. + * calendar/appt.el (appt-buffer-name): Don't use a leading space for + buffers shown to the user. + (appt-disp-window): Disable undo explicitly now that the leading space + is gone. -2006-04-12 Stuart Herring (tiny change) + * simple.el (activate-mark): New function. + (set-mark-command): Use it with region-active-p to clean up the code. + (exchange-point-and-mark): Invert the meaning of C-u when + transient-mark-mode is active. - * files.el (hack-one-local-variable-eval-safep): - Recognize `edebug-form-spec' for `put', but only if it passes - `edebug-basic-spec'. Generalize `put' handling. + * dired-aux.el (dired-create-files): Use dolist. - * emacs-lisp/edebug.el (edebug-basic-spec): New function for - vetting file-local form specs. + * bindings.el (mode-line-change-eol): Use with-selected-window. - * allout.el (allout-layout): Autoload its `safe-local-variable' - property. + * apropos.el (apropos-command): Include macros. -2006-04-13 Carsten Dominik +2008-03-26 Glenn Morris - * textmodes/org.el (org-ctrl-c-ctrl-c): Improve documentation string. - (org-agenda-mouse-1-follows-link) - (org-mouse-1-follows-link): New options. - (org-format-agenda-item): Fix bug if TAGS is nil. - (org-agenda-get-scheduled): Quote `priority' symbol in plist. + * calendar/cal-bahai.el: Require calendar, not cal-julian. + (calendar-bahai-epoch): Doc fix. -2006-04-13 Nick Roberts + * calendar/cal-china.el: Explicitly require calendar. - * progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers): - GDB 6.1+ gives full filename for "info sources" so use - file-name-nondirectory. + * calendar/cal-coptic.el, calendar/cal-islam.el, calendar/cal-persia.el: + Require calendar rather than cal-julian. + Autoload calendar-absolute-from-julian. + * calendar/cal-coptic.el (coptic-calendar-epoch): + * calendar/cal-islam.el (calendar-islamic-epoch): + * calendar/cal-persia.el (persian-calendar-epoch): Set when compiling. -2006-04-12 Romain Francoise + * calendar/cal-islam.el (calendar-islamic-epoch): Doc fix. - * subr.el (read-passwd): Bind `message-log-max' to nil. + * calendar/cal-dst.el: Don't require cal-persia. + (calendar-absolute-from-persian): Autoload it. + (dst-adjust-time): Doc fix. -2006-04-12 Stefan Monnier + * calendar/cal-menu.el (cal-menu-diary-menu): Remove menu headings that + cause cal-bahai, cal-islam, cal-hebrew to be loaded on starting the + calendar. - * progmodes/perl-mode.el (perl-indent-new-calculate): - Recompute parse-start after jumping backward by a whole sexp. + * calendar/cal-menu.el: Require calendar rather than declaring + functions. + * calendar/calendar.el: Provide calendar before requiring cal-menu. -2006-04-11 Stefan Monnier + * calendar/cal-x.el (calendar-after-frame-setup-hook): New name for + calendar-after-frame-setup-hooks. Update callers, make old name an + obsolete alias. Doc fix. + (calendar-frame-1): Doc fix. - * vc.el (vc-ensure-vc-buffer): Only change current-buffer, not the - window configuration. - (vc-annotate-display-select): Select the buffer so that current-buffer - (and selected-window) is the output buffer at the end of vc-annotate. + * calendar/calendar.el (solar-holidays): Simplify holiday-sexp calls. -2006-04-11 J.D. Smith + * calendar/calendar.el (oriental-holidays, solar-holidays): + * calendar/holidays.el (list-holidays): Assume atan always bound. - * vc.el (vc-annotate-color-map): Add custom TTY color map for - 8-color terminals, to use all of the colors in a sensible order. - 256-color terminals work well with the standard map. - (vc-annotate-lines): Only strip the first color character if it - is "#", to allow for terminal-style named colors. - (vc-annotate-warp-version): Pass buf to `goto-line' to ensure - the correct buffer is scrolled. + * calendar/lunar.el, calendar/solar.el: Remove floating-point check. + Explicitly require calendar, not cal-julian. + * calendar/lunar.el: Explicitly require cal-dst. -2006-04-11 Richard Stallman +2008-03-26 Stefan Monnier - * emacs-lisp/bytecomp.el (byte-compile-file): - Bind enable-local-variables to :safe, and make normal-mode obey it. + * autorevert.el (auto-revert-buffers): Use buffer-live-p. - * files.el (enable-local-variables): Allow value :safe. - (normal-mode): Doc fix. - (hack-local-variables): Implement enable-local-variables = :safe. - (hack-local-variables-confirm): Don't prevent quitting. + * help-fns.el (describe-function-1, describe-variable): If no + replacement is provided, don't print "use nil instead". -2006-04-11 Stefan Monnier +2008-03-25 Roland Winkler - * loadhist.el (unload-feature): A bit of sanity check of - load-history entries. Cancel timer-vars before unbinding them. + * proced.el: New file. - * hexl.el (hexl-isearch-search-function): Fix regexp-building code to - quote special chars, and make the trick work on the hex part of the - buffer as well. - (hexl-mode, hexl-save-buffer, hexl-mode-exit) - (hexl-maybe-dehexlify-buffer): Use restore-buffer-modified-p. +2008-03-25 Tetsurou Okazaki (tiny change) - * startup.el (normal-splash-screen): Fix last change so we don't wait - 2 minutes if we don't show the splash screen. + * emacs-lisp/byte-opt.el (side-effect-free-fns): Fix typo. -2006-04-11 Carsten Dominik +2008-03-25 Juri Linkov - * textmodes/org.el (org-export-plain-list-max-depth) - (org-table-spaces-around-separators) - (org-radio-targets, org-activate-camels) - (org-table-spaces-around-invisible-separators): Options removed. - (org-time-stamp-rounding-minutes, org-remember-templates) - (org-ellipsis, org-activate-links, org-descriptive-links): - New options. - (org-remember-apply-template, org-current-time) - (org-finish-edit-table-field) - (org-link-unescape, org-link-escape) - (org-string-width, org-table-clean-line, org-html-do-expand) - (org-edit-agenda-file-list, org-store-new-agenda-file-list) - (org-read-agenda-file-list): New functions. - (org-table-edit-field) - (org-table-create-or-convert-from-region): New commands - (org-table-toggle-vline-visibility): Command removed. - (org-table-convert-region): Made a command. - (orgtbl-deleta-backward-char, orgtbl-delete-char): Remove commands. - Replace with the normal org- functions. - (org-self-insert-command): Don't trigger realign unnecessarily - when blanking a field that is not full. - (org-mode): `Set buffer-invisibility-spec' for links. - (org-activate-links2): Hide link part and only show descriptive - part of the link. - (org-insert-link): Modify for new linking system. - (org-store-link): Store description separately, for use by - `org-insert-link'. - (org-table-align): Use `org-string-width'. - (defgroup): Completely new group structure for custom variables. - (org-agenda-files): Option: Single file name allowed. Function: - Optional argument unrestrited means ignore any restricitons. - (org-install-agenda-files-menu): Find a buffer in Org-mode before - trying to modify the menu. Use generalized access to - `org-agenda-files.' - (org-agenda-list, org-todo-list, org-cycle-agenda-files) - (org-agenda-file-to-front, org-remove-file, org-diary) - (org-tags-view, org-export-icalendar-all-agenda-files) - (org-export-icalendar-combine-agenda-files): Use generalized - access to `org-agenda-files'. - (org-remember-handler): Correctly preserve heading if present. - (org-table-insert-row, org-table-insert-hline): Deal with - invisible characters. - -2006-04-10 J.D. Smith - - * vc.el (vc-annotate-display-mode): Made default 'fullscale. - (vc-annotate-color-map): New 18 element constant - value/saturation, rotating hue colormap, from red->blue. - (vc-annotate-mode-menu): "Default" -> "By Color Map Range". - (vc-annotate-display-select): Switch to annotate-mode elsewhere. - (vc-annotate): To avoid killing the required local variables, - set them before the end of `with-output-to-temp-buffer', and - after first switching to annotate-mode. - (vc-annotate-warp-version): Add buffer argument in goto-line to - ensure annotation, not source, is scrolled. - -2006-04-10 Bill Wohler - - * custom.el (defcustom, custom-handle-keyword): - Add :package-version keyword. - (custom-add-package-version): New function. Sets value of new - property 'custom-package-version from :package-version keyword. - (defcustom): Create Common Keywords section in docstring. - (defface, defgroup): Replace definitions of a select few keywords - with a reference to the Common Keywords in defcustom. - (defcustom, defface, defgroup): Replace reference to Customization - chapter in manual with hyperlink. - - * cus-edit.el (customize-package-emacs-version-alist): New variable. - (customize-changed-options): Add check for custom-package-version. - (customize-package-emacs-version): New function to look up Emacs - version corresponding to the given package version. - - * emacs-lisp/find-func.el (find-function-regexp): Allow dashes in - defun name, in similar fashion to find-variable-regexp. - -2006-04-10 Eli Zaretskii - - * international/mule-cmds.el (set-locale-environment): Fix last - change for when the locale's preferences don't specify any encoding. - -2006-04-10 Stefan Monnier - - * emacs-lisp/find-func.el (find-function-search-for-symbol): Fix regexp - so the defined var/fun doesn't need to be quoted. - -2006-04-10 Richard Stallman - - * finder.el (finder-mode-map): Add n and p bindings. - -2006-04-10 Nick Roberts - - * progmodes/gdb-ui.el (gdb-init-1): Re-initialise gdb-main-file to nil. - (gdb-get-version): Make it work for pre "interpreter mi" (GDB 5.3?). - (gdb-setup-windows): Put something in source window if we can't find - the source file. - (gdb-frame-handler): Make it work again with just assembly. - (gdb-data-list-register-values-handler): Make it work when there is - no stack. - -2006-04-09 Richard Stallman - - * mail/rmail.el (rmail-mime-charset-pattern): Ignore format and delsp - specs while looking for charset. - - * textmodes/picture.el (picture-mode-exit): Run picture-mode-exit-hook. - - * play/landmark.el (lm-font-lock-face-O, lm-font-lock-face-X): - Make them faces. - (lm-font-lock-keywords): Update appropriately. - -2006-04-10 Kim F. Storm - - * simple.el (filter-buffer-substring): Add NOPROPS arg, so - it can also replace buffer-substring-no-properties. - - * emulation/cua-base.el (cua-delete-region, cua-paste) - (cua-repeat-replace-region): Use filter-buffer-substring. - - * emulation/cua-gmrk.el (cua-copy-region-to-global-mark) - (cua-cut-region-to-global-mark): Likewise. - - * emulation/cua-rect.el (cua--extract-rectangle) - (cua-incr-rectangle, cua--rectangle-aux-replace): Likewise. - -2006-04-09 Roland Winkler - - * textmodes/bibtex.el (bibtex-entry-update): New optional arg - entry-type. Add field delimiters to numerical fields if they are - not present. - -2006-04-09 Roland Winkler - - * textmodes/bibtex.el (bibtex-find-text-internal): Add new element - string-const to return value. - (bibtex-remove-delimiters): Use it. - -2006-04-08 Stefan Monnier - - * emacs-lisp/bytecomp.el (byte-compile-form): Don't call - cl-byte-compile-compiler-macro unless it exists. - -2006-04-08 Eli Zaretskii - - * files.el (hack-local-variables-confirm) : - Clarify message text. Suggested by Ralf Angeli. - -2006-04-08 Micha,Ak(Bl Cadilhac - - * rect.el (kill-rectangle): Don't barf if `kill-read-only-ok' is set. - (delete-extract-rectangle-line): Use `filter-buffer-substring' - instead of `buffer-substring' and `delete-region'. (Most of the - code actually copied from `kill-region'.) + * battery.el: Add file cookie coding:iso-8859-1 for the degree sign + in battery-mode-line-format. -2006-04-08 Ryan Yeske + * bindings.el (minibuffer-local-map): For the command + file-cache-minibuffer-complete replace keymap minibuffer-local-map + with map which is already locally bound to minibuffer-local-map. - * net/rcirc.el (rcirc-default-server): Rename from rcirc-server. - (rcirc-default-port): Rename from rcirc-port. - (rcirc-default-nick): Rename from rcirc-nick. - (rcirc-default-user-name): Rename from rcirc-user-name. - (rcirc-default-user-full-name): Rename from rcirc-user-full-name. - (rcirc-low-priority-flag): New variable. - (rcirc-decode-coding-system): New defcustom. - (rcirc-encode-coding-system): New defcustom. - (rcirc-coding-system-alist): New defcustom. - (rcirc-multiline-major-mode): New defcustom. - (rcirc-nick): New internal variable. - (rcirc-process): Remove variable. - (rcirc-server-buffer): New variable. - (rcirc): Update to use rcirc-default-* variables above. - (rcirc-connect): Do not add window-configuration-hook-here. - (rcirc-server): New internal variable. - (rcirc-connect): Do not send keepalive pings if - rcirc-keepalive-seconds is nil. - (with-rcirc-server-buffer): New macro. - (rcirc-send-string): Encode with rcirc-encode-coding-system. - (rcirc-server-name): Rename from rcirc-server. - (rcirc-buffer-process): New function. - (rcirc-buffer-nick): New function. - (rcirc-buffer-target): Remove function. - (set-rcirc-decode-coding-system, set-rcirc-encode-coding-system): - New commands. - (rcirc-mode-map): Change binding of C-c C-l to - rcirc-toggle-low-priority. - (rcirc-mode): Initialize coding system based on - rcirc-coding-system-alist. New change-major-mode-hook to part the - channel on a mode change. Make kill-buffer-hook buffer-local. - (rcirc-change-major-mode-hook): New function. - (rcirc-clean-up-buffer): Rename from rcirc-kill-buffer-hook-1. - (rcirc-last-post-time): New variable. - (rcirc-process-message): Store the last time user posted a message - to this target. - (rcirc-multiline-minor-mode): New mode. - (rcirc-multiline-minor-mode-map): New mode map. - (rcirc-edit-multiline): Put multiline-edit buffer in - rcirc-multiline-major-mode along with rcirc-multiline-minor-mode. - (rcirc-print): Ignore any line starting with an ignored nick. - (rcirc-print): Decode using rcirc-decode-coding-system. - (rcirc-track-minor-mode): Update global-mode-string when disabling - this mode. - (minor-mode-alist): Add LowPri indicator. - (rcirc-toggle-low-priority): New function. - (rcirc-last-non-irc-buffer): Prefix arg now no means switch to - next lowpriority buffer with activity. - (rcirc-record-activity): Sort buffers in rcirc-activity by the - last time the user posted a message in to the target. - (rcirc-update-activity-string): New formatting for low priority - buffers. - (rcirc-split-activity): New function. - (rcirc-handler-PART, rcirc-handler-KICK) - (rcirc-handler-PART-or-KICK): Kick responses are printed properly. - (rcirc-nick-away-alist): New variable. - (rcirc-handler-301): New handler. Away messages are printed once - per change. +2008-03-25 Stefan Monnier -2006-04-08 Eli Zaretskii + * subr.el (map-keymap-sorted): Rename from map-keymap-internal. + Remove `sort-first' argument. - * info.el (Info-follow-nearest-node): Doc fix. + * subr.el (redisplay-end-trigger-functions) + (window-redisplay-end-trigger, set-window-redisplay-end-trigger) + (process-filter-multibyte-p, set-process-filter-multibyte): + Mark as obsolete. - * international/mule-cmds.el (set-locale-environment): Make sure - the coding-system preferred by the locale's language has the same - EOL conversion type as the original buffer-file-coding-system. - (locale-language-names): Add a few MS Windows language codes. +2008-03-25 Juanma Barranquero -2006-04-07 Richard Stallman + * emacs-lisp/re-builder.el (reb-mode-common): Remove reference to + bogus variable `reb-kill-buffer'; don't make hooks buffer-local, + use the LOCAL arg of `add-hook'. + (reb-blink-delay, reb-mode-hook, reb-re-syntax, reb-auto-match-limit): + Remove spurious * from defcustom docstrings. + (reb-next-match, reb-prev-match, reb-enter-subexp-mode): + Fix typos in messages. + (reb-mode-buffer-p): New function. + (re-builder, reb-kill-buffer): Use `reb-mode-buffer-p'. Use `when'. + (top, reb-show-subexp, reb-auto-update, reb-auto-update) + (reb-delete-overlays, reb-cook-regexp, reb-update-regexp) + (reb-update-overlays): Use `unless', `when'. + (re-builder-unload-function): New function. - * simple.el (eval-expression): Doc fix. +2008-03-25 Dan Nicolaescu - * emacs-lisp/lisp-mode.el (eval-print-last-sexp, eval-last-sexp) - (eval-defun): Doc fixes. + * vc-hooks.el (vc-state): Add documentation for 'missing. -2006-04-07 Reiner Steib +2008-03-25 Wilson Snyder - * pgg-gpg.el: Revert to revision 1.8 to allow the use of gpg-agent. + * progmodes/verilog-mode.el (verilog-auto-output) + (verilog-auto-input, verilog-auto-inout, verilog-auto) + (verilog-delete-auto): Add optional regular expression to + AUTOINPUT/AUTOOUTPUT/AUTOINOUT. + (verilog-signals-matching-regexp): New internal function for + signal matching. -2006-04-07 Nick Roberts +2008-03-25 Johan Bockgård - * progmodes/gdb-ui.el (gdb-init-2): Set current filename using - GDB list command without argument for greater generality. + * info.el (Info-isearch-search): Always return point. -2006-04-06 Reiner Steib +2008-03-25 Stefan Monnier + + * diff-mode.el (diff-remembered-defdir): New var. + (diff-find-file-name): Use it to flush diff-remembered-files-alist. + +2008-03-25 Glenn Morris + + * calendar/cal-bahai.el (calendar-bahai-read-date): New name for + calendar-bahai-prompt-for-date. Update callers, make old name an + obsolete alias. Doc fix. + * calendar/cal-coptic.el (calendar-coptic-read-date): New name for + coptic-prompt-for-date. Update callers, make old name an + obsolete alias. Doc fix. + * calendar/cal-hebrew.el (calendar-hebrew-read-date): New name for + calendar-hebrew-prompt-for-date. Update callers. Doc fix. + * calendar/cal-islam.el (calendar-islamic-read-date): New name for + calendar-islamic-prompt-for-date. Update callers. Doc fix. + * calendar/cal-iso.el (calendar-iso-read-date): New name for + calendar-iso-read-args. Update callers, make old name an obsolete + alias. + * calendar/cal-persia.el (calendar-persian-read-date): New name for + persian-prompt-for-date. Update callers, make old name an + obsolete alias. Doc fix. Move definition before use. + + * calendar/cal-x.el (diary-frame-parameters) + (calendar-frame-parameters, calendar-and-diary-frame-parameters): + (calendar-frame-1): Doc fixes. + (make-fancy-diary-buffer): Remove declaration. + (calendar-dedicate-diary): Replace call to deleted function + make-fancy-diary-buffer. + (calendar-frame-setup): New function. + (calendar-one-frame-setup, calendar-only-one-frame-setup) + (calendar-two-frame-setup): Call calendar-frame-setup to do the actual + work, and mark as obsolete. + (special-display-buffer-names): Don't mess with this; it's not our + business. + (cal-x-load-hook): Defvar it, and mark as obsolete. + + * calendar/calendar.el (calendar-remove-frame-by-deleting): + Default to t. Add to 'calendar group. + (calendar): Doc fix. Use calendar-frame-setup. + (calendar-basic-setup): Doc fix. Add optional NODISPLAY argument. + (generate-calendar-window): Doc fix. + +2008-03-24 Stefan Monnier + + * vc-bzr.el (vc-bzr-print-log, vc-bzr-diff): Do it asynchronously. + +2008-03-24 Drew Adams + + * finder.el (finder-mode-syntax-table, finder-font-lock-keywords): + New variables. + (finder-mode): Use finder-mode-syntax-table. Set font-lock-defaults. + (finder-exit): Ignore errors rather than avoiding them. + Kill *Finder-package* buffer also. - * subr.el (string-or-null-p): New function. +2008-03-24 Andreas Schwab - * textmodes/paragraphs.el (sentence-end): Use string-or-null-p. + * xt-mouse.el (xterm-mouse-event): Avoid error with buttons > 5. - * textmodes/ispell.el (ispell-local-dictionary): Use string-or-null-p. +2008-03-24 Dan Nicolaescu - * files.el: Update comment about safe-local-variable declarations. + * vc-hg.el (vc-hg-after-dir-status): + * vc-bzr.el (vc-bzr-after-dir-status): Detect missing files. -2006-04-06 J.D. Smith + * vc-cvs.el (vc-cvs-after-dir-status, vc-cvs-parse-status): + Detect removed files. - * progmodes/idlwave.el: Updated to IDLWAVE version 6.0. - See idlwave.org. + * vc.el (vc-status-printer): Use a different face for missing files. + (vc-status-hide-up-to-date): Rename from + vc-status-remove-up-to-date. Update all callers. + (vc-status-mode-map): Bind C-m. - * progmodes/idlw-shell.el: Updated to IDLWAVE version 6.0. - See idlwave.org. Includes code to obsolete idlw-rinfo.el. +2008-03-24 Alexandre Julliard - * progmodes/idlw-help.el: Updated to IDLWAVE version 6.0. - See idlwave.org. + * vc-git.el (vc-git-after-dir-status-stage1): Move state matching + code ... + (vc-git--state-code): ... to this new function. + (vc-git-state): Use it. - * progmodes/idlw-complete-structtag.el: Updated to IDLWAVE - version 6.0 (minimal changes). See idlwave.org. +2008-03-24 Trent Buck (tiny change) - * progmodes/idlw-toolbar.el: Updated to IDLWAVE version - 6.0 (minimal changes). See idlwave.org. + * textmodes/remember.el (remember-mail-date) + (remember-store-in-mailbox): Write date and From line in such a + way that Mutt can read it. - * progmodes/idlw-rinfo.el: File obsoleted and removed. +2008-03-23 Chong Yidong -2006-04-06 Romain Francoise + * simple.el (transient-mark-mode): Turn on by default. - * pgg-gpg.el: Sync back with Gnus 5.10, reverting changes that add - symmetric encryption features and a new asynchronous interface to - GnuPG. This new version is version 1.4, plus whitespace changes. +2008-03-23 Dan Nicolaescu -2006-04-06 Reiner Steib + * vc-bzr.el (vc-bzr-state): Return 'removed for removed files and + 'unregistered for unregistered files. - * files.el: Move some `safe-local-variable' declarations to the - respective files. + * vc-hg.el (vc-hg-state): Return 'removed for removed files. - * textmodes/ispell.el (ispell-check-comments) - (ispell-local-dictionary): Mark as safe. + * bindings.el (standard-mode-line-modes): Avoid duplicating a string. - * abbrev.el (abbrev-mode): Mark as safe. + * vc-cvs.el (vc-cvs-parse-status): Note there are problems with + subdirectories. - * add-log.el (change-log-default-name): Mark as safe. + * vc.el (vc-status-prepare-status-buffer): Fix thinko. + (vc-status-menu-map): Add binding for vc-status-kill-dir-status-process. + Add :enable for vc-status-refresh. + (vc-status-menu-map-filter): Remove vc-ignore-menu-filter test. + (vc-status-tool-bar-map): Add binding for + vc-status-kill-dir-status-process. + Don't test display-graphic-p and don't bind vc-ignore-menu-filter. + (vc-update-vc-status-buffer, vc-status-kill-dir-status-process): + Reset vc-status-process-buffer. + (vc-status-refresh): Don't run two refreshes at a time. + (vc-status): If the buffer is already in vc-status-mode only refresh. + (vc-status-mark-buffer-changed): Add an optional file parameter. + (vc-resynch-buffer): Use it. + (vc-delete-file): Expand the file name before using it. + Be careful to not create a new buffer with the old file contents. + Update the VC state after performing the operation. - * textmodes/reftex-vars.el (reftex-vref-is-default) - (reftex-fref-is-default, reftex-level-indent) - (reftex-guess-label-type): Mark as safe. +2008-03-23 Andreas Schwab - * textmodes/fill.el (colon-double-space): Mark as safe. + * menu-bar.el (menu-bar-showhide-fringe-ind-menu) [mixed]: + Fix radio button condition. + [box]: Likewise. + [customize]: Add radio button. - * textmodes/paragraphs.el (paragraph-start, paragraph-separate) - (sentence-end-double-space, sentence-end-without-period) - (sentence-end-without-space, sentence-end, sentence-end-base) - (page-delimiter, paragraph-ignore-fill-prefix): Mark as safe. +2008-03-23 Jay Belanger -2006-04-06 Kim F. Storm + * calc/calc.el (calc-was-keypad-mode, calc-full-mode) + (calc-user-parse-tables, calc-gnuplot-default-device) + (calc-gnuplot-default-output, calc-gnuplot-print-device) + (calc-gnuplot-print-output, calc-gnuplot-geometry) + (calc-graph-default-resolution, calc-graph-default-resolution-3d) + (calc-invocation-macro, calc-trail-pointer, calc-trail-overlay) + (calc-undo-list, calc-redo-list, calc-main-buffer) + (calc-trail-buffer, calc-why, calc-last-kill, calc-dollar-values) + (calc-dollar-used, calc-hashes-used, calc-quick-prev-results) + (calc-said-hello, calc-executing-macro, calc-any-selections) + (calc-help-phase, calc-full-help-flag, calc-refresh-count) + (calc-display-dirty, calc-embedded-info, calc-embedded-active) + (calc-standalone-flag, var-EvalRules, math-expr-function-mapping) + (math-expr-variable-mapping, calc-mode-map, calc-digit-map) + (calc-dispatch-map, calc-do-dispatch, calc-read-key-sequence) + (calc-create-buffer, calc-quit): Add docstrings. - * ido.el (ido-mode): Remove ido-ignore-unc-host-regexps from - the :set-after list. - (ido-downcase-unc-hosts): New user option. Default on. - (ido-ignore-unc-host-regexps): Don't reset ido-unc-hosts-cache - when it is set, as regexps are now applied on the fly. - (ido-unc-hosts): Keep all known hosts in ido-unc-hosts-cache. - Make C-a DTRT--filter hosts through ido-ignore-unc-host-regexps - on the fly, but only when ido-process-ignore-lists is set. - Do case insensitive filtering if ido-downcase-unc-hosts is set. - Only downcase names if ido-downcase-unc-hosts is set. +2008-03-23 Juanma Barranquero -2006-04-06 Juanma Barranquero + * makefile.w32-in (WINS_ALMOST): Add org. - * ido.el (ido-unc-hosts-cache): Fix typo in docstring. +2008-03-23 Dan Nicolaescu - * woman.el (WoMan-xref-man-page): Fix call to `substring'. + * vc-cvs.el (vc-cvs-after-dir-status, vc-cvs-dir-status): + New functions to implement vc-status support. -2006-04-05 Kim F. Storm +2008-03-22 Dan Nicolaescu - * ido.el (ido-mode): Set after ido-unc-hosts and - ido-ignore-unc-host-regexps. - (ido-save-history): Save ido-unc-hosts-cache. - (ido-load-history): Load ido-unc-hosts-cache. - (ido-reread-directory): Refresh unc hosts cache in // dir. + * vc.el (vc-status-prepare-status-buffer): New function. + (vc-status): Use it. - * startup.el (fancy-splash-screens): Set emulation-mode-map-alists - to nil while displaying slash screen. + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add ... where + appropriate. -2006-04-05 Daiki Ueno +2008-03-22 Alexandre Julliard - * pgg-gpg.el (pgg-gpg-encrypt-region, pgg-gpg-sign-region): - Wait for BEGIN_SIGNING too, new in GnuPG 1.4.3. + * vc-git.el (vc-git--empty-db-p) + (vc-git-after-dir-status-stage1-empty-db): New functions. + (vc-git-dir-status, vc-git-after-dir-status-stage1, vc-git-state): + Add support for empty repositories. -2006-04-05 Kenichi Handa +2008-03-22 Dan Nicolaescu - * international/characters.el: Setup cases of Latin, Greek, and - Cyrillic characters in CJK charsets. + * vc-git.el (vc-git-annotate-extract-revision-at-line): + Allow "^" in a version name. -2006-03-29 Daiki Ueno + * vc-mtn.el (vc-mtn-state): Support the added state. - * pgg-gpg.el (pgg-gpg-start-process): Don't bind - default-enable-multibyte-characters. This reverts the change from - revision 6.17 which is no longer necessary because the passphrase - is sent separately now. GnuPG messages are unreadable under - multibyte locales with default-enable-multibyte-characters set to nil. +2008-03-22 Carsten Dominik -2006-04-04 Andreas Schwab + * org: New directory for Org-mode. - * files.el: Mark `left-margin', `byte-compile-dynamic-docstrings' - and `byte-compile-warnings' as `safe-local-variable'. + * org/org-export-latex.el: Moved from lisp/texmodes. -2006-04-04 Dan Nicolaescu + * org/org-irc.el: Moved from lisp/texmodes. - * man.el (Man-mode-map): Restore the \r binding. - (Man-abstract-xref-man-page): If Man-target-string is a function, - call it. - (Man-highlight-references): Use Man-default-man-entry to get the - target. Deal with xrefs too. - (Man-highlight-references0): Don't call the target function. + * org/org-mac-message.el: Moved from lisp/texmodes. - * woman.el (WoMan-xref-man-page): Strip the section number, woman - cannot deal with it. + * org/org-mouse.el: Moved from lisp/texmodes. -2006-04-04 Daiki Ueno + * org/org-publish.el: Moved from lisp/texmodes. - * pgg-gpg.el: Clean up process buffers every time gpg processes - complete. +2008-03-21 Juri Linkov -2006-04-04 Kenichi Handa + * comint.el (comint-dynamic-simple-complete): + Use variable `stub' for the second arg `common-substring' + of `comint-dynamic-list-completions'. + (comint-dynamic-list-filename-completions): + Use variable `filenondir' for the second arg `common-substring' + of `comint-dynamic-list-completions'. + (comint-dynamic-list-completions): Add new optional arg + `common-substring'. Add `common-substring' as the second arg of + the call to `display-completion-list'. Doc fix. - * sort.el (sort-build-lists): Don't bind inhibit-field-text-motion - here. - (sort-lines, sort-numeric-fields, sort-fields, sort-columns): - Temporarily bind inhibit-field-text-motion to t. + * comint.el (comint-dynamic-complete-as-filename) + (comint-dynamic-list-filename-completions) + (comint-dynamic-simple-complete): Use `minibuffer-message' + to display message "No completions of %s" when a command + is called in the minibuffer. + (comint-dynamic-simple-complete): Don't display other + completion messages when a command is called in the minibuffer. + (comint-dynamic-list-completions): Use `minibuffer-message' + to display message " [Type space to flush ...]" when a command + is called in the minibuffer. -2006-04-03 Stefan Monnier + * shell.el (shell-dynamic-complete-command) + (shell-dynamic-complete-environment-variable): Don't display + completion messages when command is called in the minibuffer. - * startup.el (normal-splash-screen): Only set mode-line-format in the - splash buffer, so as not to interfere when debugging the code. - Ignore errors when switching buffer. + * emacs-lisp/lisp.el (lisp-complete-symbol): + Use `minibuffer-message' to display message "No completions of %s" + when this command is called in the minibuffer. -2006-04-03 Romain Francoise + * bindings.el (standard-mode-line-modes): Put special help-echo + tooltip on recursive edit %[ %] mode-line constructs. - * dired.el (dired-dnd-protocol-alist): Fix typo. + * dabbrev.el (debug-ignored-errors): Remove $ from the end of + "^No dynamic expansion for .* found$" to allow error messages like + "No dynamic expansion for \"%s\" found in this-buffer". -2006-04-03 Reiner Steib +2008-03-21 Michael Albinus - * savehist.el (savehist): Add :version. - (savehist-ignored-variables): New variable. - (savehist-minibuffer-hook): Don't save variables listed in - `savehist-ignored-variables'. + * net/tramp.el (tramp-methods): Fix tramp-copy-args of "pscp" and + "psftp". - * dired.el (dired-dnd-protocol-alist): Mention that change does - only apply to new buffers in doc string. +2008-03-21 Stefan Monnier -2006-04-03 Lennart Borgman (tiny change) + * vc-hooks.el (vc-default-mode-line-string): Add case for added files. + * vc.el (vc-default-dired-state-info): Use just "modified". + * vc-cvs.el (vc-cvs-state-heuristic): Turn rev 0 into `added'. + (vc-cvs-mode-line-string): Make use of the better default. + (vc-cvs-parse-entry): Use the new `added'. + (vc-cvs-dired-state-info): Remove. + * vc-svn.el (vc-svn-dired-state-info): Remove. + * vc-hg.el (vc-hg-dired-state-info): Remove. + * vc-git.el (vc-git-dired-state-info): Remove. - * recentf.el (recentf-open-files-item): Include newline in button - field, so opening a file will work, when the point is at the end - of the file name. Allow, for example, to [i]search a file by - extension and just push RET to open it. +2008-03-21 Dan Nicolaescu -2006-04-03 Daiki Ueno + * vc-git.el (vc-git-status-result): New variable. + (vc-git-dir-status): Split out ... + (vc-git-after-dir-status-stage1, vc-git-after-dir-status-stage2): + ... these new functions and work asynchronously. - * pgg-gpg.el (pgg-gpg-process-filter) - (pgg-gpg-wait-for-completion): Check if buffer is alive. +2008-03-21 Alexandre Julliard - * pgg-gpg.el (pgg-gpg-process-sentinel): Don't remove GNUPG: - lines, temporary fix. + * vc-git.el (vc-git-after-dir-status): Remove. + (vc-git-dired-state-info): Reimplement. -2006-04-02 Dan Nicolaescu +2008-03-21 Dan Nicolaescu - * ibuf-macs.el (define-ibuffer-column): Document the new parameter. + * replace.el (occur-mode-map): Add :help. -2006-04-02 Richard Stallman + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add menu entry + for disassemble. - * progmodes/compile.el (compilation-message-face): Make it defcustom. + * vc.el (vc-status-mark-buffer-changed): Better deal with files in + the 'added state. + (vc-status-remove-up-to-date): New function. + (vc-status-mode-map, vc-status-menu-map): Bind it. + (vc-status-printer): Use a different face up-to-date files. + (vc-resynch-buffer): Update the vc-status buffer if it exists. + (Todo): Remove solved entries. -2006-04-02 Dan Nicolaescu + * vc-hg.el (vc-hg-state): + * vc-git.el (vc-git-state): + * vc-cvs.el (vc-cvs-parse-status): + * vc-bzr.el (vc-bzr-state): Return 'added when the file is in that + state. - * ibuf-macs.el (define-ibuffer-column): Add a new key: - header-mouse-map. +2008-03-20 Stefan Monnier - * ibuffer.el (ibuffer-name-header-map, ibuffer-size-header-map) - (ibuffer-mode-header-map): New keymaps. - (ibuffer-update-title-and-summary): Enable mouse face highlighting - and keybindings for column headers. - (name, size, mode) : Add a header-mouse-map - property. + * progmodes/compile.el (compile): + * progmodes/grep.el (grep, grep-find): Use read-shell-command. -2006-04-02 Drew Adams + * simple.el (minibuffer-local-shell-command-map): New var. + (minibuffer-complete-shell-command, read-shell-command): New funs. + (shell-command, shell-command-on-region): Use them. - * speedbar.el (speedbar-after-create-hook): Doc fix. +2008-03-20 Dan Nicolaescu -2006-04-02 Michael Ernst + * vc.el (vc-status-mark-buffer-changed): New function to implement + updating of the *vc-status* buffer when a buffer is saved. + (vc-status-mode): Use it for after-change-hook. + (vc-add-to-vc-status-buffer): Rename to ... + (vc-status-add-entry): ... this. + (Todo): Add new entry. - * shell.el (shell-directory-tracker) - (shell-dynamic-complete-command): Doc fixes. +2008-03-20 Stefan Monnier -2006-04-01 Matt Hodges + * sort.el (sort-reorder-buffer): Preserve the buffer's multibyteness. - * pcomplete.el (pcomplete-show-completions): Recognize TAB on text - terminals. +2008-03-20 Juanma Barranquero -2006-04-01 Kim F. Storm + * icomplete.el (icomplete-prospects-length, icomplete-max-delay-chars) + (icomplete-show-key-bindings, icomplete-minibuffer-setup-hook): + Remove spurious * from defcustom docstrings. + (icomplete-compute-delay): Fix docstring and remove spurious *. + (icomplete-delay-completions-threshold): Fix typo in docstring and + remove spurious *. + (icomplete-completions): While collecting the list of prospective + candidates, don't overshoot `icomplete-prospects-length'. - * ido.el (ido-unc-hosts-cache): New defvar. - (ido-unc-hosts): If value of defcustom is a function, call it to - get list of UNC hosts. Add function-item choices to specify - ido-unc-hosts-net-view or user function. - (ido-ignore-unc-host-regexps): New defcustom. - (ido-unc-hosts-net-view, ido-unc-hosts): New functions. - (ido-is-unc-root, ido-is-unc-host, ido-file-name-all-completions) - (ido-exhibit): Call ido-unc-hosts to get list of UNC hosts. +2008-03-20 Dan Nicolaescu -2006-03-13 Stefan Monnier + * textmodes/refbib.el: + * textmodes/reftex.el: + * textmodes/reftex-global.el: + * textmodes/reftex-vars.el: + * textmodes/reftex-toc.el: Don't use eval-and-compile for byte + compiler pacifying defvars. + (reftex-toc-mode): Only make zmacs-regions local on XEmacs. + * textmodes/reftex-index.el (zmacs-regions): Remove pacifier, + not needed. - * pcvs-util.el (cvs-insert-strings): Fix bug with strings longer than - wwidth. +2008-03-20 Wilson Snyder -2006-03-31 Juanma Barranquero + * progmodes/verilog-mode.el (verilog-easy-menu-filter): New function. + (verilog-stmt-menu, verilog-menu): Add :help and filter it. + (verilog-customize, verilog-font-customize) + (electric-verilog-backward-sexp, electric-verilog-forward-sexp) + (verilog-mode): Update documentation strings to match tool tips. + (verilog-auto-search-do, verilog-auto-re-search-do) + (verilog-skip-forward-comment-or-string): Fix verilog-auto + expansion when a .* appears inside a string. + (verilog-re-search-forward, verilog-re-search-backward): + Add comment to recall how this works. + (verilog-read-decls): Fix AUTOINPUT/AUTOOUTPUT mis-including genvars. - * ido.el (ido-cache-unc-host-shares-time, ido-report-no-match) - (ido-max-work-file-list, ido-switch-buffer) - (ido-read-file-name-as-directory-commands): - Fix typos in docstrings. +2008-03-20 Glenn Morris -2006-03-30 YAMAMOTO Mitsuharu + * calendar/calendar.el (calendar-other-dates): New function. + (calendar-print-other-dates): Use calendar-other-dates. + * calendar/cal-menu.el (calendar-other-dates): Declare it, and removes + the declarations it replaces. + (calendar-mouse-print-dates): Use calendar-other-dates. - * term/mac-win.el (mac-system-coding-system): Define and use after - Mac-specific coding systems are ready. + * calendar/cal-bahai.el (calendar-bahai-leap-year-p) + (calendar-bahai-leap-base, calendar-bahai-from-absolute): Doc fixes. + (calendar-absolute-from-bahai): Fix the leap-year case. + (calendar-bahai-from-absolute): Re-use the Gregorian month. + (calendar-bahai-date-string, calendar-bahai-print-date): + Handle pre-Bahai dates. -2006-03-27 Romain Francoise + * calendar/cal-china.el (chinese-calendar-celestial-stem) + (chinese-calendar-terrestrial-branch): Make defcustoms. - * net/rcirc.el (rcirc-connect): Add autoload cookie. + * calendar/cal-menu.el (calendar-mouse-holidays): Re-use the title. + (calendar-mouse-view-diary-entries): Use or. + (calendar-mouse-chinese-date): Remove unused command. + (cal-menu-load-hook): Mark as obsolete. - * ldefs-boot.el: Update. + * calendar/solar.el (calendar-location-name, calendar-latitude) + (calendar-longitude, solar-arctan, sunrise-sunset) + (solar-mean-equinoxes/solstices): Use the appropriate equality test. -2006-03-27 Daiki Ueno +2008-03-20 Jay Belanger - * pgg-gpg.el: Invoke gpg asynchronous, to avoid querying for - passphrases when it is not needed. - (pgg-gpg-use-agent): Add, to hard code that pgg shouldn't wait for - passphrase stuff from gpg, should only be necessary when you use - gpg with a smartcard. + * calc/calc.el: Remove outdated comments. + (defcalcmodevar, calc-mode-var-list-restore-default-values) + (calc-mode-var-list-restore-saved-values, calc-autorange-units): + Add docstrings. -2006-03-27 Nick Roberts +2008-03-19 Jason Rumney - * comint.el (comint-dynamic-list-completions): Allow user to - select *Completions* buffer. + * w32-fns.el (x-alternatives-map): Add S-tab mapping. -2006-03-27 Carsten Dominik +2008-03-19 Reiner Steib - * textmodes/org.el (org-get-level-face): Fix bug with level counting. + * net/tls.el (open-tls-stream): Reindent. -2006-03-26 Andreas Schwab +2008-03-19 Michael Albinus - * progmodes/gud.el (gdb): Only complain about multiple debugging - when the gdb process is still running. + * net/tramp.el (tramp-let-maybe): Removed. + (tramp-drop-volume-letter): Don't use `replace-regexp-in-string'. + It does not exist under XEmacs. + (tramp-handle-file-truename, tramp-handle-expand-file-name) + (tramp-completion-file-name-handler): Let-bind + `directory-sep-char'. -2006-03-25 Eli Zaretskii + * net/tramp-fish.el (tramp-fish-handle-expand-file-name): Let-bind + `directory-sep-char'. - * mail/rmail.el (tool-bar-map): Defvar it. - (rmail-tool-bar-map): Tool-bar buttons for Rmail. - (rmail-perm-variables): Make rmail-tool-bar-map a local variable. +2008-03-19 Stefan Monnier -2006-03-25 Sven Joachim (tiny change) + * help-fns.el (describe-function-1): Don't signal "missing arglist" + for autoloaded keymaps. - * help.el (print-help-return-message): Suggest to use - display-buffer instead of switch-to-buffer-other-window to restore - the previous window without selecting it. + * progmodes/verilog-mode.el (verilog-syntax-ppss): New function. + (electric-verilog-terminate-line, verilog-in-struct-region-p) + (verilog-backward-ws&directives, verilog-forward-ws&directives) + (verilog-in-comment-p, verilog-in-star-comment-p) + (verilog-in-slash-comment-p, verilog-skip-backward-comments) + (verilog-parenthesis-depth, verilog-skip-backward-comment-or-string) + (verilog-skip-forward-comment-or-string, verilog-in-paren) + (verilog-skip-forward-comment-p): Use it. -2006-03-25 YAMAMOTO Mitsuharu +2008-03-19 Juanma Barranquero - * frame.el (select-frame-by-name): Call x-focus-frame also when - window-system is mac. + * textmodes/org.el (org-link-store, org-link-follow, org-latex) + (org-remember-templates, org-time-stamp-rounding-minutes) + (org-back-over-empty-lines, org-find-base-buffer-visiting) + (org-columns-new): Fix typos in docstrings. - * term/mac-win.el: Adjust Courier font specifications in - x-fixed-font-alist. - (mac-select-convert-to-string): Use utf-16be-mac or utf-16le-mac - when directly encoding to UTF-16 in native byte order, no BOM. +2008-03-19 Glenn Morris -2006-03-25 Kim F. Storm + * net/tramp.el (tramp-drop-volume-letter): Evaluate when compiling. + (tramp-handle-shell-command): Use condition-case rather than + ignore-errors. - * emulation/cua-base.el (cua-rectangle-mark-key): New defcustom. - (cua--init-keymaps): Use it instead of fixed C-return. - (cua-mode): Set after it. +2008-03-19 Dan Nicolaescu - * emulation/cua-rect.el (cua--init-rectangles): - Use cua-rectangle-mark-key instead of fixed C-return. + * diff-mode.el (diff-header): Make the color louder. + (diff-refine-change): Tone the color down. -2006-03-25 Nick Roberts +2008-03-19 Juanma Barranquero - * progmodes/gdb-ui.el (gdba): Revert 2006-03-10 change for case of - "run" in .gdbinit. - (gdb-var-create-regexp): Remove "^done" prefix for gdb-mi.el. + * descr-text.el (describe-char): When `describe-char-unidata-list' + is set to show all properties, list them in the right order. -2006-03-24 Romain Francoise +2008-03-19 Stefan Monnier - * files.el (ctl-x-5-map): Really bind C-x 5 C-o to - `display-buffer-other-frame'. + * international/mule.el (load-with-code-conversion): Avoid setting + default-enable-multibyte-characters. -2006-03-24 Kim F. Storm +2008-03-19 Gustav Hållberg (tiny change) - * apropos.el (apropos-synonyms): Add selection => region. + * vc.el (vc-annotate-background): Fix custom type. -2006-03-24 Nick Roberts +2008-03-19 Stefan Monnier - * progmodes/gdb-ui.el (gdb-var-create-regexp) - (gdb-var-list-children-regexp, gdb-var-update-regexp) - (gdb-var-list-children-regexp-1, gdb-var-update-regexp-1) - (gdb-data-list-register-values-regexp) - (gdb-stack-list-locals-regexp, gdb-stack-list-locals-handler): - Future proof against new fields being added to MI output. - (gdb-send): Don't treat backslashes for program input as - continuations. - (gdb-assembler-handler): Don't use window-start for this handler. - (gdb-frame-handler): Don't change to hollow arrow if overlay - arrow doesn't move to new frame. + * descr-text.el (describe-char-unidata-list): Allow specifying + just all properties. + (describe-char): Handle that new value. -2006-03-24 Nick Roberts + * emulation/cua-base.el (cua-paste): Signal an error in read-only buf. - * progmodes/gdb-ui.el (gdb-continuation): Declare earlier to - prevent compiler warnings. - (gdb-stopped): Check for gud-last-last-frame (case: signal). - (breakpoint-disabled): Make lighter for contrast with overlay arrow. - (gdb-assembler-custom): Use hollow-right-triangle for assembler - buffer too. +2008-03-18 Tassilo Horn -2006-03-23 Reiner Steib + * doc-view.el (doc-view-initiate-display): Use doc-view-doc-type + instead of file name extension to make docs with uncommon + extensions work. - * pgg-gpg.el (pgg-gpg-update-agent): Check for - make-network-process, so we can use the same code in Gnus v5-10 - too and have this file fully synchronized with that release. +2008-03-18 Tassilo Horn -2006-03-23 Romain Francoise + * doc-view.el (require): Require cl at compile time because + `assert' needs it. - * ibuf-ext.el (ibuffer-read-filter-group-name): - Use `ibuffer-generate-filter-groups' to make completion list match - the filter groups that are really displayed in the Ibuffer buffer. - (ibuffer-generate-filter-groups): Add new args noempty, nodefault. +2008-03-18 Glenn Morris -2006-03-23 Kenichi Handa + * calendar/calendar.el (initial-calendar-window-hook) + (today-visible-calendar-hook): Doc fixes. - * international/mule-cmds.el (sort-coding-systems): Describe that - the argument is modified in docstring. +2008-03-17 Michael Albinus -2006-03-22 Sascha Wilde + * net/tramp.el (tramp-root-regexp): Simplify. + (tramp-completion-file-name-regexp-separate): Don't insist on + leading "[". This prevents method or user or host completion. + (tramp-let-maybe): Autoload it. + (tramp-drop-volume-letter): Don't autoload. When not on W32, it + is an alias for `identity'. + (tramp-handle-write-region): Protect `last-coding-system-used' + over the trailing statements. + (tramp-completion-file-name-handler-post-function): Remove. + (tramp-completion-file-name-handler): Let-bind `directory-sep-char' + instead of calling `tramp-drop-volume-letter'. - * pgg-gpg.el (pgg-gpg-use-agent): Disable by default. - (pgg-gpg-update-agent): New function. - (pgg-gpg-use-agent-p): New function. - (pgg-gpg-process-region, pgg-gpg-encrypt-region) - (pgg-gpg-encrypt-symmetric-region, pgg-gpg-decrypt-region) - (pgg-gpg-sign-region): Use it. + * net/tramp.el: + * net/tramp-uu.el: + * net/trampver.el: Move coding cookie at the end. + +2008-03-17 Stefan Monnier + + * net/tramp.el (tramp-completion-mode-p): Don't use char-equal for + elements which may be something else than characters. + +2008-03-17 Dan Nicolaescu + + * vc-bzr.el (vc-bzr-dir-status, vc-bzr-after-dir-status): + New functions to implement vc-status support. + + * vc.el (vc-default-extra-status-menu) + (vc-add-to-vc-status-buffer): New functions. + + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add menu entries + for eldoc and ielm. + +2008-03-17 Glenn Morris + + * calendar/cal-x.el (diary-frame-parameters) + (calendar-frame-parameters, calendar-and-diary-frame-parameters): + Fix custom type; add options. + (calendar-frame, diary-frame): Doc fixes. + (calendar-dedicate-diary, calendar-frame-1): Extract common code into + new functions. + (calendar-one-frame-setup, calendar-two-frame-setup): Doc fixes. + Use calendar-frame-1 and calendar-dedicate-diary. + (calendar-one-frame-setup): Also handle only-one-frame case. + (calendar-only-one-frame-setup): Doc fix. Just call + calendar-one-frame-setup. + + * calendar/diary-lib.el: Re-order some definitions before their use. + (nongregorian-diary-listing-hook, nongregorian-diary-marking-hook) + (diary-list-entries): Doc fixes. + (make-fancy-diary-display): Remove function. + + * calendar/calendar.el (calendar-today-marker) + (initial-calendar-window-hook, today-visible-calendar-hook) + (today-invisible-calendar-hook, diary-file, calendar-basic-setup): + (calendar-star-date, calendar-mark-today): Doc fixes. + (today-visible-calendar-hook): Add options. + (calendar-in-read-only-buffer): New macro. + (calendar-basic-setup): Adapt for change in calendar-read-date. + Place holiday let inside if. + (calendar-day-name-array, calendar-month-name-array): Make defcustoms. + (calendar-read-date): Set day to 1 rather than nil in the NODAY case. + (calendar-print-other-dates): Use one let rather than many. + + * calendar/calendar.el (calendar-in-read-only-buffer): New macro. + (calendar-print-other-dates): + * calendar/cal-hebrew.el (list-yahrzeit-dates): + * calendar/diary-lib.el (simple-diary-display, fancy-diary-display): + * calendar/holidays.el (calendar-list-holidays, list-holidays) + (calendar-cursor-holidays): + * calendar/lunar.el (calendar-phases-of-moon): Use + calendar-in-read-only-buffer to replace previous code and disable undo. -2006-03-21 Chong Yidong +2008-03-16 Juri Linkov - * cus-edit.el (custom-face-set): Call custom-push-theme before - face-spec set so that `changed' theme is correctly saved. - (custom-face-reset-standard): Reset to recalculated face rather - than defface spec. + * isearch.el (isearch-edit-string): Use search-ring-yank-pointer + and regexp-search-ring-yank-pointer for the HISTPOS argument of + read-from-minibuffer to provide the correct initial minibuffer + history position in isearch-edit-string when it is called from + isearch-ring-adjust. - * custom.el (custom-push-theme): Only save `changed' theme if the - current face does not match the defface specs. + * menu-bar.el (kill-this-buffer): Use menu-bar-non-minibuffer-window-p + to check if the current buffer is the minibuffer, and in this case + call abort-recursive-edit to kill the minibuffer. Doc fix. + (kill-this-buffer-enabled-p): Allow this function to return non-nil + when the current buffer is the minibuffer. -2006-03-21 Simon Josefsson + * simple.el (goto-line): Leave mark at previous position. Doc fix. - * pgg-gpg.el: Ideas below based on patch from Sascha Wilde - . - (pgg-gpg-use-agent): New variable. - (pgg-gpg-process-region): Use it. - (pgg-gpg-encrypt-region): Likewise. - (pgg-gpg-encrypt-symmetric-region): Likewise. - (pgg-gpg-decrypt-region): Likewise. - (pgg-gpg-sign-region): Likewise. - (pgg-gpg-possibly-cache-passphrase): Don't cache a nil password. +2008-03-16 Tassilo Horn -2006-03-21 Carsten Dominik + * doc-view.el (doc-view-doc->txt, doc-view-convert-current-doc): + Use non-nil PARENTS attribute of make-directory instead of + explicitly checking existence the current cache directory. - * textmodes/org.el (org-open-at-point): Fix bug in wiki-style - bracket links. +2008-03-16 Daiki Ueno -2006-03-21 Kim F. Storm + * epa-file.el (epa-file-select-keys): Fix bug with C-x C-s after + M-x epa-file-select-keys. - * progmodes/gdb-ui.el (gdb-reset): Set buffer local value of - fringe-indicator-alist instead of modifying global value. - (gdb-frame-handler): Likewise. +2008-03-16 Kenichi Handa -2006-03-21 Nick Roberts + * international/mule.el (auto-coding-alist): + Use no-conversion-multibyte for archive files. - * diff-mode.el (diff-function): Make it inherit from diff-header - instead of diff-context. +2008-03-16 Glenn Morris - * progmodes/gdb-ui.el (hollow-right-triangle): Define as fringe - bitmap. - (gdb-info-stack-custom): Rename from gdb-info-frames-custom and - change names in macro above for consistency. - (gdb-frame-handler): Use hollow-right-triangle for all selected - frames which except the innermost (where execution has stopped). - (gdb-reset): Reset buffer-local values of overlay-arrow. + * calendar/diary-lib.el (calendar-mark-complex, calendar-mark-1): + New functions. + * calendar/cal-bahai.el (calendar-mark-1): Autoload it. + (calendar-bahai-mark-date-pattern): Add optional argument `color'. + Use calendar-mark-1. + * calendar/cal-hebrew.el (calendar-mark-complex): Autoload it. + (mark-hebrew-calendar-date-pattern): Add optional argument `color'. + Use calendar-mark-complex. + * calendar/cal-islam.el (calendar-mark-1): Autoload it. + (mark-islamic-calendar-date-pattern): Add optional argument `color'. + Use calendar-mark-1. + + * calendar/calendar.el (calendar-mod): Remove. + * calendar/cal-china.el (calendar-chinese-from-absolute) + (calendar-chinese-date-string): Expand calendar-mod calls. + * calendar/cal-mayan.el (calendar-mayan-tzolkin-from-absolute): + Expand calendar-mod calls. + + * calendar/cal-bahai.el (calendar-bahai-date-string): Use a single let. + (diary-bahai-insert-entry, diary-bahai-insert-monthly-entry) + (diary-bahai-insert-yearly-entry): Use let rather than let*. + Move obsolete aliases after the functions that replaced them. + + * calendar/cal-hebrew.el (calendar-absolute-from-hebrew) + (hebrew-calendar-yahrzeit, insert-hebrew-diary-entry) + (insert-monthly-hebrew-diary-entry, insert-yearly-hebrew-diary-entry): + Use let rather than let*. + (calendar-hebrew-prompt-for-date): New function. + (calendar-goto-hebrew-date): Use calendar-hebrew-prompt-for-date. + (holiday-tisha-b-av-etc): Use unless, let. + + * calendar/cal-islam.el (calendar-islamic-prompt-for-date): New func. + (calendar-goto-islamic-date): Use calendar-islamic-prompt-for-date. + + * calendar/cal-mayan.el (calendar-mayan-haab-to-string): Simplify. + + * calendar/calendar.el (calendar-for-loop): Add indent spec. + + * calendar/diary-lib.el (diary-remind-message, mark-sexp-diary-entries) + (list-sexp-diary-entries, diary-font-lock-sexps): Use format rather + than concat. + (diary): Remove un-needed let. + (view-other-diary-entries): Rename argument. + (diary-list-entries-2): New function. + (diary-list-entries-1, diary-list-entries): Use diary-list-entries-2. + (print-diary-entries): Use unless. + (diary-mark-entries-1): Change argument order, make all but + markfunc optional. Handle the standard (Gregorian) case. + Use match-string-no-properties. Handle marks. + (mark-diary-entries): Use diary-mark-entries-1. + (diary-font-lock-keywords-1): New macro. + (diary-font-lock-keywords): Use diary-font-lock-keywords-1. + +2008-03-16 Ulf Jasper + + * icalendar.el (icalendar-version): Increase to 0.18. + (icalendar-export-hidden-diary-entries): New variable. + (icalendar-export-region): Use icalendar-export-hidden-diary-entries. + In case of error, insert full error-val. + (icalendar-first-weekday-of-year): Remove `offset' argument. Doc fix. + Use calendar-day-of-week. Return the day number. + (icalendar--convert-weekly-to-ical): Use funcall rather than apply. + +2008-03-16 Craig Markwardt + + * icalendar.el (icalendar-recurring-start-year): New variable. + (icalendar--diarytime-to-isotime): Fix treatment of 12:00pm - 12:59pm. + (icalendar-export-region): Ignore hidden diary entries. + (icalendar--convert-ordinary-to-ical): Fix case where event + spans across midnight boundary. + (icalendar-first-weekday-of-year): New function. + (icalendar--convert-weekly-to-ical): Allow user-selectable start + year for recurring events (Mozilla calendars do not propagate + recurring events forever, so year 2000 start date was not working). + (icalendar--convert-yearly-to-ical): Remove extra spaces in + formatting of BYMONTH and BYMONTHDAY (not allowed by ical spec). + +2008-03-15 Michael Albinus + + * net/tramp.el (tramp-root-regexp): New defconst. + (tramp-completion-file-name-regexp-unified) + (tramp-completion-file-name-regexp-separate) + (tramp-completion-file-name-regexp-url): Use it. + (tramp-do-copy-or-rename-file-via-buffer): + Set `enable-multibyte-characters' to nil. Set `jka-compr-inhibit' to + t for `insert-file-contents-literally'. + (tramp-drop-volume-letter): Rewrite, using `tramp-root-regexp'. + Autoload it. + (tramp-completion-file-name-handler-post-function): New defconst. + (tramp-completion-file-name-handler): Use it. + (tramp-maybe-open-connection): Update calls to + `tramp-flush-connection-property' for removed 2nd argument. + +2008-03-15 Stefan Monnier + + * vc-bzr.el (vc-bzr-diff): Use a faster invocation when possible. + (vc-bzr-complete-with-prefix, vc-bzr-revision-completion-table): + New functions. -2006-03-20 Richard Stallman +2008-03-15 Glenn Morris - * simple.el (set-mark-command): Doc fix. + * calendar/diary-lib.el (diary-list-entries-1, diary-mark-entries-1): + New functions. + * calendar/cal-bahai.el (number, original-date, add-to-diary-list) + (diary-name-pattern, mark-calendar-days-named): Remove declarations. + (diary-list-entries-1, diary-mark-entries-1): Autoload. + (diary-bahai-list-entries): Use diary-list-entries-1. + (diary-bahai-mark-entries): Doc fix. Use diary-mark-entries-1. + * calendar/cal-hebrew.el (number, original-date, add-to-diary-list) + (diary-name-pattern, mark-calendar-days-named): Remove declarations. + (diary-list-entries-1, diary-mark-entries-1): Autoload. + (list-hebrew-diary-entries): Use diary-list-entries-1. + (mark-hebrew-diary-entries): Doc fix. Use diary-mark-entries-1. + * calendar/cal-islam.el (number, original-date, add-to-diary-list) + (diary-name-pattern, mark-calendar-days-named): Remove declarations. + (diary-list-entries-1, diary-mark-entries-1): Autoload. + (list-islamic-diary-entries): Use diary-list-entries-1. + (mark-islamic-diary-entries): Doc fix. Use diary-mark-entries-1. + + * calendar/appt.el (appt-check, appt-delete, appt-make-list): Use caar. + + * calendar/cal-bahai.el (calendar-bahai-epoch): Doc fix. + + * calendar/cal-china.el (number-chinese-months) + (calendar-chinese-from-absolute): Use nth, caar. + + * calendar/cal-coptic.el (coptic-calendar-epoch): Doc fix. + + * calendar/cal-french.el (french-calendar-accents): Doc fix. + + * calendar/cal-hebrew.el (calendar-hebrew-month-name-array-common-year) + (calendar-hebrew-month-name-array-leap-year) + (hebrew-calendar-parashiot-names): Make constants. + (diary-parasha): Move definition after constants it uses. + + * calendar/cal-html.el (cal-html-insert-link-yearpage) + (cal-html-htmlify-list): Doc fix. + (cal-html-htmlify-entry): Use nth. + + * calendar/cal-islam.el (calendar-islamic-month-name-array) + (calendar-islamic-epoch): Make constants. + (calendar-islamic-epoch): Doc fix. + + * calendar/cal-menu.el (cal-menu-goto-menu): Use "Go To". + + * calendar/cal-tex.el (cal-tex-hook, cal-tex-insert-preamble) + (cal-tex-month-name): Doc fix. + (cal-tex-last-blank-p): Use zerop. + + * calendar/calendar.el (european-calendar-style, calendar-for-loop) + (calendar-sum, calendar-insert-indented, mouse-calendar-other-month) + (calendar-cursor-to-date): Doc fix. + (hebrew-holidays-1, hebrew-holidays-4): Simplify. + (extract-calendar-day, extract-calendar-year): Use cadr, nth. + (calendar-day-number): Use when. + (generate-calendar-month): Use dotimes. + (exit-calendar, calendar-print-other-dates): Use let rather than let*. + (calendar-set-mark): Reverse conditional. + (calendar-make-alist): Move definition before use. + + * calendar/diary-lib.el (diary-face-attrs) + (diary-glob-file-regexp-prefix, diary-selective-display) + (number-of-diary-entries, diary-list-entries, diary-goto-entry): + (list-sexp-diary-entries, diary-date, diary-block, diary-float) + (diary-anniversary, diary-cyclic) + (diary-fancy-font-lock-fontify-region-function): Doc fixes. + (diary-header-line-format): Change wording. + (diary-list-entries): Set `date-start' in let. + (include-other-diary-files, mark-included-diary-files): Use format. + (simple-diary-display, fancy-diary-display): Use cadr, unless. + (mark-diary-entries): Use 1+. + (mark-sexp-diary-entries, list-sexp-diary-entries): Use when. + (mark-calendar-month): Use dotimes. + + * calendar/holidays.el (displayed-month, displayed-year): + Move declarations where needed. + (calendar-list-holidays): Doc fix. + + * calendar/parse-time.el (parse-time-string): Simplify. + + * calendar/solar.el (solar-n-hemi-seasons, solar-s-hemi-seasons): + Make constants. + (solar-sunrise-sunset): Rename some local variables for clarity. + (sunrise-sunset): Use zerop. + (solar-mean-equinoxes/solstices): Doc fix. + + * calendar/timeclock.el (timeclock-time-to-seconds, timeclock-log-data): + Use nth. + (timeclock-completing-read, timeclock-generate-report): Use zerop. + (timeclock-mean, timeclock-generate-report): Use dolist. + + * calendar/todo-mode.el (todo-add-category): Simplify. + (todo-more-important-p, todo-delete-item, todo-file-item): + Use unless, when. + (todo-top-priorities): Use zerop. + +2008-03-14 Nick Roberts + + * buff-menu.el (list-buffers-noselect): Display buffer name in + tooltip instead of mouse binding when it doesn't fit in the list. + +2008-03-14 Dan Nicolaescu + + * faces.el (xw-defined-colors): + * simple.el (widget-convert, shell-mode): Declare as functions + instead of autoloading. + + * abbrev.el: + * button.el: + * cus-face.el: + * ediff-hook.el: + * emacs-lisp/backquote.el: + * emacs-lisp/timer.el: + * facemenu.el: + * faces.el: + * menu-bar.el: + * simple.el: + * subr.el: + * textmodes/fill.el: + * textmodes/paragraphs.el: Remove autoloads, redundant when the + files are preloaded. - * files.el (display-buffer-other-frame): New command. - (ctl-x-4-map): Bind C-x 5 C-o to it. +2008-03-14 Stefan Monnier -2006-03-20 Stefan Monnier + * desktop.el (desktop-create-buffer): Don't catch errors if + debug-on-error is set. - * jit-lock.el (jit-lock-function): Check for the actual defer-timer - rather than just defer-time, in case defer-time has been changed but - the timer isn't running yet. - (jit-lock-deferred-fontify): Correspondingly let-bind defer-timer. +2008-03-14 Eli Zaretskii -2006-03-19 Luc Teirlinck + * makefile.w32-in ($(lisp)/calendar/cal-loaddefs.el) + ($(lisp)/calendar/diary-loaddefs.el) + ($(lisp)/calendar/hol-loaddefs.el): New targets. + (LOADDEFS): New macro. + (autoloads): Depend on $(LOADDEFS). - * help-mode.el (help-follow-symbol): New function. - Essentially identical to the old `help-follow', but do not let - `push-button' do the work when on an xref. - (help-mode-map): Bind `help-follow-symbol' to "C-c C-c". +2008-03-14 Dan Nicolaescu -2006-03-19 Richard Stallman + * font-lock.el (featurep): Remove test, not useful anymore. + (facemenu-keymap): Move key binding ... + * facemenu.el (facemenu-keymap): ... here. - * help-mode.el (help-xref-symbol-regexp): Make no xref for symbol - preceded by the word `program'. - (help-follow-mouse, help-follow): Throw error if not on xref. - Delete no longer used args. + * vc-bzr.el (vc-bzr-print-log): Insert a file marker. Run the log + for each file in the list. + (vc-bzr-log-view-mode): Recognize the file marker. -2006-03-20 Nick Roberts + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add menu entries + for checkdoc and profiling. + +2008-03-14 Bastien Guerry + + * textmodes/flyspell.el (nxml-mode): Add the right + `flyspell-mode-predicate'. + + * wid-edit.el (link): Use 'mouse-face for :follow-link. + +2008-03-14 Glenn Morris + + * calendar/solar.el: Reorder so that functions are defined before use. + (displayed-month, displayed-year): Move declarations where needed. + (solar-get-number): Move definition before use. Use unless. + (solar-equatorial-coordinates): Simplify. + (solar-sunrise-and-sunset): Use let rather than let*. + (solar-longitude, solar-equinoxes-solstices): Use cadr, nth + + * startup.el (command-line-1): Rename -internal-script back to + -scriptload (reverts previous change). + + * calendar/cal-bahai.el (calendar-bahai-month-name-array) + (calendar-bahai-leap-base): Add doc strings. + (calendar-bahai-prompt-for-date, calendar-bahai-mark-date-pattern): + Move definition before use. + (calendar-bahai-goto-date, diary-bahai-list-entries): Doc fix. + (diary-bahai-list-entries, diary-bahai-mark-entries): Move some constant + variables outside the loop. Use dolist. + (holiday-bahai, calendar-bahai-mark-date-pattern): Use unless. + + * calendar/cal-china.el: Re-order so that functions are defined before + use. + (displayed-month, displayed-year): Move declarations where needed. + (chinese-calendar-time-zone, calendar-goto-chinese-date): Doc fix. + (chinese-calendar-celestial-stem, chinese-calendar-terrestrial-branch): + Add doc strings. + (chinese-year-cache): Recenter on 2010. Doc fix. + (chinese-year, number-chinese-months, calendar-absolute-from-chinese): + Doc fix. Simplify. + (chinese-year-cache-init): New function. + (compute-chinese-year, holiday-chinese-new-year) + (calendar-chinese-date-string, calendar-goto-chinese-date) + (make-chinese-month-assoc-list): Use cadr, nth. + (chinese-months): Remove un-needed let. + + * calendar/cal-coptic.el (coptic-calendar-month-name-array): + (ethiopic-calendar-month-name-array, ethiopic-name): Add doc strings. + (coptic-prompt-for-date): Move definition before use. + + * calendar/cal-dst.el (calendar-time-zone-daylight-rules): Simplify. + (calendar-dst-find-data, calendar-daylight-time-offset) + (calendar-standard-time-zone-name, calendar-daylight-time-zone-name) + (calendar-daylight-savings-starts-time) + (calendar-daylight-savings-ends-time): Use cadr, nth. + + * calendar/cal-french.el (french-calendar-epoch) + (calendar-goto-french-date): Doc fix. + (french-calendar-month-name-array) + (french-calendar-multibyte-month-name-array) + (french-calendar-day-name-array, french-calendar-special-days-array): + Add doc strings. + + * calendar/cal-hebrew.el (displayed-month, displayed-year) + (original-date): Move declarations where needed. + (calendar-goto-hebrew-date, list-hebrew-diary-entries, diary-yahrzeit): + Doc fix. + (list-hebrew-diary-entries, mark-hebrew-diary-entries): Move some + constant variables outside the loop. Use dolist. + + * calendar/cal-islam.el (displayed-month, displayed-year) + (original-date): Move declarations where needed. + (islamic-calendar-day-number): Remove unused local variable `day'. + (calendar-goto-islamic-date): Doc fix. + (holiday-islamic): Use unless. + (list-islamic-diary-entries, mark-islamic-diary-entries): Move some + constant variables outside the loop. Use dolist. + (mark-islamic-calendar-date-pattern): Move definition before use. + Use unless. + (mark-islamic-diary-entries): Doc fix. + (insert-islamic-diary-entry, insert-monthly-islamic-diary-entry) + (insert-yearly-islamic-diary-entry): Use let rather than let*. + + * calendar/cal-julian.el (calendar-absolute-from-julian): + Move definition before use. Remove un-needed local `day'. + (calendar-goto-julian-date, calendar-goto-astro-day-number): Doc fix. + + * calendar/cal-mayan.el (calendar-mayan-haab-month-name-array) + (calendar-mayan-tzolkin-names-array): Add doc strings. + (calendar-mayan-long-count-from-absolute): Use a single let. + (calendar-string-to-mayan-long-count): Simplify. + (calendar-next-haab-date, calendar-previous-haab-date) + (calendar-next-tzolkin-date, calendar-previous-tzolkin-date) + (calendar-previous-calendar-round-date) + (calendar-goto-mayan-long-count-date, calendar-mayan-date-string): + Doc fix. + (calendar-mayan-tzolkin-haab-on-or-before): Use zerop. + (calendar-mayan-date-string, calendar-print-mayan-date) + (calendar-read-mayan-haab-date, calendar-read-mayan-tzolkin-date) + (calendar-mayan-long-count-common-era): Move definitions before use. - * progmodes/gdb-ui.el (gdb-stopped): Even when there is no source - annotation ensure gud-overlay-arrow-position is redisplayed. + * calendar/cal-menu.el (displayed-year): Move declaration where needed. + (calendar-event-to-date, cal-tex-mouse-week, cal-tex-mouse-week-iso): + Doc fix. + (calendar-mouse-goto-date): Move definition before use. + + * calendar/cal-move.el (calendar-cursor-to-nearest-date): Use or, when. + Move definition before use. + (calendar-cursor-to-visible-date): Move definition before use. + (calendar-scroll-left): Use unless and zerop. Combine lets into one, + and place inside the conditional. + (calendar-forward-day): Simplify. + (calendar-end-of-month): Use unless. + (calendar-goto-day-of-year): Doc fix. + Relocate obsolete aliases after their replacements. + + * calendar/cal-persia.el (calendar-goto-persian-date): Doc fix. + + * calendar/diary-lib.el (mark-diary-entries): Move some constant + variables outside the diary-date-forms loop. + + * calendar/calendar.el (diary-file): Doc fix. + (calendar-buffer-list): Return buffers rather than strings (fixes + previous change). + (hebrew-holidays-4): Fix typo. + + * calendar/holidays.el (displayed-month, displayed-year): + Move declarations where needed. + (calendar-holiday-list, calendar-list-holidays) + (holiday-filter-visible-calendar): Move definitions before use. + (list-holidays): Use cadr. + Relocate obsolete aliases after their replacements. + + * calendar/lunar.el (date, displayed-month, displayed-year): + Move declarations where needed. + (lunar-phase-list): Move definition after functions it uses. + (calendar-phases-of-moon, diary-phases-of-moon) + (lunar-new-moon-on-or-after): Use cadr, nth. + (lunar-new-moon-on-or-after): Doc fix. + + * textmodes/org-irc.el (top-level): CL not required when compiling. + (org-irc-visit-erc): Replace runtime CL functions. + + * textmodes/org-publish.el (declare-function): Add compatibility stub. + (org-publish-delete-dups): Declare as function. + +2008-03-14 Dan Nicolaescu + + * vc-bzr.el (vc-bzr-log-view-mode): "." can be part of a revno. + (vc-bzr-show-log-entry): Make regexp match more cases. + (vc-diff-switches-list): Remove autoload, not needed. -2006-03-19 Roland Winkler +2008-03-14 Juri Linkov - * textmodes/bibtex.el (bibtex-include-OPTkey) - (bibtex-entry-field-alist, bibtex-generate-url-list): Mark as risky. - (bibtex-autokey-name-case-convert) - (bibtex-autokey-titleword-case-convert): Make these the aliases - for the following two variables. - (bibtex-autokey-name-case-convert-function) - (bibtex-autokey-titleword-case-convert-function): Make these the - real names. - (bibtex-font-lock-keywords): Make bibtex-font-lock-url and - bibtex-font-lock-crossref sublists. - (bibtex-mode): Revert 2005-12-30 change (which made - completion-ignore-case buffer-local). - (bibtex-url): Simplify. + * isearch.el (isearch-edit-string): Remove one call to + `isearch-push-state' not to push an inconsistent state, + but keep another correct call to `isearch-push-state'. + (isearch-ring-adjust): Call `isearch-push-state' only when + `search-ring-update' is non-nil since `isearch-edit-string' + already pushes its state. + (isearch-message): Improve matching the failed part by checking + if the original message starts with the last successful message. -2006-03-19 Kim F. Storm + * dired.el (dired-warn-writable): Rename to `dired-perm-write'. + (dired-perm-write): Rename from `dired-warn-writable'. + Change parent face from `font-lock-warning-face' to + `font-lock-comment-delimiter-face'. + (dired-warn-writable-face): Rename to `dired-perm-write-face'. + (dired-perm-write-face): Rename from `dired-warn-writable-face'. + (dired-font-lock-keywords): Replace `dired-warn-writable-face' + with `dired-perm-write-face'. - * emulation/cua-rect.el (cua--highlight-rectangle): Set overlay - cursor property value to 2 (to align with C level change). +2008-03-13 Tassilo Horn + + * doc-view.el (doc-view-doc->txt, doc-view-convert-current-doc): + Create cache dir only if it doesn't already exist. + +2008-03-13 Stefan Monnier + + * progmodes/sh-script.el (sh-font-lock-quoted-subshell): Fix handling + of \ and '. + +2008-03-13 Johan Bockgård + + * net/browse-url.el (browse-url-text-xterm): + Unquote browse-url-text-browser. + +2008-03-13 Carsten Dominik + + * textmodes/org-mouse.el: Version number change. + + * textmodes/org-publish.el (org-publish-expand-components): + Remove null projects from the list of components. + (org-publish-attachment): Bugfix: handle mandatory argument pub-dir. + Remove unused retrieval of the :publishing-directory property. + (org-publish-file): Bugfix: when using a relative directory as the + publishing directory, convert it to a directory filename. + (org-publish-project): New alias. + (org-publish-get-files): Protect against empty p. + (org-publish-file): Send an error when file is not part of any project. + (org-publish-file): Offer to refresh the list of files in known + project when the current file is not part of any project. + (org-publish-before-export-hook) + (org-publish-after-export-hook): New hooks. + (org-publish-org-to): Use new hooks and kill buffers. + (org-publish-file): Remove the code for killing buffers. + (org-publish-initialize-files-alist): Use interactive. + (org-publish-file): If the publishing function creates a new + buffer, kill it after publishing. + (org-publish-timestamp-filename): Protect ":" in file name path + under windows. + + * textmodes/org-export-latex.el (org-export-as-latex): Revert the + change that killed the LaTeX buffer. + + * textmodes/org.el (org-ctrl-c-star): Implement a missing branch + in the decision tree. + (org-select-remember-template): Clean the code. + (org-prepare-dblock): Add the extra :content parameter. + (org-write-agenda): New output type ".ics" files. + (org-write-agenda): Call `org-icalendar-verify-function', both for + time stamps and for TODO entries. + (org-agenda-collect-markers, org-create-marker-find-array) + (org-check-agenda-marker-table): New functions. + (org-agenda-marker-table): New variable. + (org-export-as-html): Revert the change that killed the html + buffer. Side effects first need to be studied carefully. + (org-get-tags-at): Fix the structure of the condition-case statement. + (org-ts-regexp0, org-repeat-re, org-display-custom-time) + (org-timestamp-change): Fix regulear expressions to swallow the + extra character for repeat-shift control. + (org-auto-repeat-maybe): Implement the new repeater mechanisms. + (org-get-legal-level): Alias to `org-get-valid-level'. + (org-dblock-write:clocktable): Add a :link parameter, linking + headlines to their location in the Org agenda files. + (org-get-tags-at): Bugfix: prevent `org-back-to-heading' from + throwing an error when getting tags before headlines. + (org-timestamp-change, org-modify-ts-extra) + (org-ts-regexp1): Fix timestamp editing. + (org-agenda-custom-commands-local-options): New constant. + (org-agenda-custom-commands): + Use `org-agenda-custom-commands-local-options' to improve customize + type. "htmlize": Removed hack to fix face problem with htmlize, + it no longer seem necessary. + (org-follow-link-hook): New hook. + (org-agenda-custom-commands): Add "Component" as a tag for each + item in a command serie. + (org-open-at-point): Run `org-follow-link-hook'. + (org-agenda-schedule): Bugfix: don't display marker type when it + is nil. + (org-store-link): org-irc required. + (org-set-regexps-and-options): Parse the new logging options. + (org-extract-log-state-settings): New function. + (org-todo): Handle the new ways of recording state change stuff. + (org-local-logging): New function. + (org-columns-open-link): Fix bug with opening link in column view. + (org-local-logging): New function + (org-todo): Make sure that LOGGING properties are honoured. + (org-todo-keywords): Improve docstring. + (org-startup-options): Cleanup startup options. + (org-set-regexps-and-options): Process the "!" markers. + (org-todo): Respect the new logging stuff. + (org-log-note-how): New variable. + (org-add-log-maybe): New parameter HOW that defines how logging + should be done and also overrides PURPOSE. Add a docstring. + (org-add-log-note): Check if we really need to ask for a note. + (org-get-current-options): Digest the new keyword. + (org-agenda-reset-markers): Rename from + `org-agenda-maybe-reset-markers'. Remove FORCE argument. + (org-diary, org-agenda-quit, org-prepare-agenda): Call the renamed + function, without force argument. + (org-buffer-property-keys): Bind local variables s and p. + (org-make-tags-matcher): Allow "" to match an empty or + non-existent property value. + (org-export-as-html): Join unsorted lists when they directly + follow each other. Such lists may be created by headlines that + are converted to lists. + (org-nofm-to-completion): New function. + (org-export-as-html): Use :html-extension instead of + org-export-html-extension. + (org-store-link): Support for links from `rmail-summary-mode'. + (org-columns-new, org-complete, org-set-property): Set the + `include-columns' argument in the call to + `org-buffer-property-keys'. + (org-buffer-property-keys): New argument `include-columns', to + include properties expected by any of the COLUMS formats in the + current buffer. + (org-cleaned-string-for-export): Get rid of drawers first, so that + they will be removed also in the text before the first headline. + (org-clock-report): Show the clocktable when found. + (org-refile): Fix positioning bug when `org-reverse-note-order' is nil. + (org-version): With prefix argument, insert `org-version' at point. + (org-agenda-goto): Recenter the window after finding the target + location, to make sure the correct position will be displayed. + (org-agenda-get-deadlines): Don't scale priority with the warning + period. + (org-insert-heading): Don't break line in the middle of the line. + (org-agenda-get-deadlines): Allow `org-deadline-warning-days' to + be 0. + (org-update-checkbox-count): Revamp to deal with hierarchical + beckboxes. This was a patch from Miguel A. Figueroa-Villanueva. + (org-remove-timestamp-with-keyword): New function. + (org-schedule, org-deadline): + Use `org-remove-timestamp-with-keyword' to make sure all such time + stamps are removed. + (org-mode): Support for `align'. + (org-agenda-get-deadlines): Make sure priorities increase as the + due date approaches and is passed. + (org-remember-apply-template): Fix problem with tags that + contain "_" or "@". + (org-make-link-regexps): Improve the regular expression for plain links. + (org-agenda-get-closed): List each clocking entry. + (org-set-tags): Only tabify before tags if indent-tabs-mode is t. + (org-special-ctrl-k): New option. + (org-kill-line): New function. + (org-archive-all-done): Fix incorrect number of stars in regexp. + (org-refile-get-location): New function. + (org-refile-goto-last-stored): New function. + (org-global-tags-completion-table): Add the value of org-tag-alist + in each buffer, to make sure that also unused tags will be + available for completion. + (org-columns-edit-value) + (org-columns-next-allowed-value): Only update if not in agenda. + (org-clocktable-steps): New function. + (org-dblock-write:clocktable): Call `org-clocktable-steps'. + (org-archive-subtree): Add the outline tree context as a property. + (org-closest-date): New optional argument `prefer'. + (org-goto-auto-isearch): New option. + (org-goto-map, org-get-location): Implement auto-isearch. + (org-goto-local-auto-isearch-map): New variable. + (org-goto-local-search-forward-headings) + (org-goto-local-auto-isearch): New functions + +2008-03-13 Philip Jackson + + * textmodes/org-irc.el: New file. + +2008-03-13 John Wiegley + + * textmodes/org-mac-message.el: New file. + +2008-03-13 Dan Nicolaescu -2006-03-19 Bill Wohler + * font-lock.el (font-lock-comment-face): Set the foreground for + the light background 8 colors case. - * image.el (image-load-path-for-library): Shorten first line in - docstring. +2008-03-13 Glenn Morris + + * font-lock.el (lisp-font-lock-keywords-1): Support wider range of + generate-autoload-cookie patterns. + + * startup.el (command-line-1): Rename -scriptload to -internal-script. + + * Makefile.in ($(lisp)/loaddefs.el): Remove this target. + (MH_E_SRC): Remove variable. + ($(lisp)/mh-e/mh-loaddefs.el): Remove $MH_E_SRC dependency. + Simplify file header. Use $@ for generated-autoload-file. + + * Makefile.in (LOADDEFS): New variable. + (AUTOGENEL): Use $LOADDEFS. + (autoloads): Remove $(lisp)/loaddefs.el dependency; add $LOADDEFS. + ($(lisp)/calendar/cal-loaddefs.el, $(lisp)/calendar/diary-loaddefs.el): + ($(lisp)/calendar/hol-loaddefs.el): New targets. + * calendar/cal-bahai.el, calendar/cal-china.el, calendar/cal-coptic.el: + * calendar/cal-french.el, calendar/cal-hebrew.el, calendar/cal-html.el: + * calendar/cal-islam.el, calendar/cal-iso.el, calendar/cal-julian.el: + * calendar/cal-mayan.el, calendar/cal-move.el, calendar/cal-persia.el: + * calendar/cal-tex.el, calendar/cal-x.el, calendar/diary-lib.el: + * calendar/holidays.el, calendar/lunar.el, calendar/solar.el: + Add calendar-specific autoload cookies, and remove any setting of + generated-autoload-file. + * calendar/calendar.el: Remove explicit autoloads now in cal-loaddefs. + * calendar/diary-lib.el: Replace explicit autoloads with reading of + diary-loaddefs. + * calendar/holidays.el: Replace explicit autoloads with reading of + hol-loaddefs. + + * calendar/calendar.el (cal-hebrew-yahrzeit-buffer): New constant. + (calendar-buffer-list): Simplify. + (generate-calendar-window): Use calendar-mark-holidays rather than + obsolete alias. -2006-03-18 Richard Stallman + * calendar/cal-hebrew.el (list-yahrzeit-dates): + Use cal-hebrew-yahrzeit-buffer. - * mail/rmail.el (rmail-reply-regexp): Undo previous change. + * calendar/cal-x.el (calendar-only-one-frame-setup) + (calendar-two-frame-setup): Doc fixes. + (special-display-buffer-names): Use cal-hebrew-yahrzeit-buffer. -2006-03-18 Ben North (tiny change) + * calendar/appt.el (appt-mode-string): Mark as risky. + (appt-check): Apply mode-line-emphasis face to appt-mode-string. - * isearch.el (isearch-other-meta-char): Handle user bindings for - shifted control characters. + * calendar/cal-html.el (diary-list-entries): + * calendar/cal-tex.el (calendar-holiday-list, diary-list-entries) + (calendar-iso-from-absolute): Fix autoloads. -2006-03-18 Agustin Martin + * calendar/cal-iso.el (calendar-absolute-from-iso) + (calendar-iso-read-args): Simplify. + (calendar-iso-date-string, calendar-iso-read-args) + (calendar-goto-iso-date, calendar-goto-iso-week): Doc fixes. - * textmodes/ispell.el (ispell-skip-region-alist): Add "_+" to the - part that matches email addresses, file names, etc. + * calendar/cal-julian.el (calendar-julian-from-absolute): Use zerop. + (displayed-month, displayed-year): Move declarations where needed. + (calendar-print-astro-day-number): Doc fix. -2006-03-18 Eli Zaretskii + * calendar/cal-persia.el (persian-calendar-month-name-array) + (persian-calendar-epoch, calendar-persian-date-string): Doc fixes. + (persian-prompt-for-date): Remove local variable `today'. - * term/w32-win.el (mouse-set-font): - Mention w32-list-proportional-fonts in the doc string. + * calendar/diary-lib.el (mark-calendar-month): Use zerop. -2006-03-18 Kim F. Storm + * calendar/solar.el (solar-moment, solar-exact-local-noon) + (solar-sunrise-sunset, solar-sunrise-sunset-string) + (solar-ephemeris-time, solar-date-next-longitude, solar-sidereal-time): + (diary-sabbath-candles, solar-equinoxes/solstices) + (solar-equinoxes-solstices): Use cadr, cdar, nth, zerop. + (solar-time-equation, solar-date-to-et): Simplify. - * ido.el (ido-cache-ftp-work-directory-time): Doc fix. - (ido-unc-hosts): New user option to explicitly define list of know - UNC-style hosts for completion. - (ido-cache-unc-host-shares-time): New user option. - (ido-is-unc-root, ido-is-unc-host, ido-cache-unc-valid): - New helper functions for UNC file-name support. - (ido-may-cache-directory): Check for UNC host. Simplify. - (ido-wash-history): Clean out old UNC hosts. - (ido-nonreadable-directory-p): UNC hosts are always readable. - (ido-directory-too-big-p): UNC hosts are never too big. - (ido-set-current-directory): Handle UNC root path. - (ido-file-name-all-completions): Complete UNC host names from - ido-unc-hosts list. Cache UNC host shares. - (ido-make-file-list-1): Don't filter UNC root. - (ido-exhibit): Check for // in root directory, and switch to UNC - mode by setting ido-current-directory to //. + * mail/supercite.el: Remove the `function' in `(function (lambda'. + Replace `(car (cdr' with cadr'. -2006-03-17 Luc Teirlinck + * progmodes/f90.el (f90-font-lock-n): New function. + (f90-font-lock-1, f90-font-lock-2, f90-font-lock-3, f90-font-lock-4): + Use f90-font-lock-n. + (f90-indent-region, f90-indent-subprogram, f90-match-end): Use cadr. - * cus-edit.el (customize-changed-options): Mention explicit - version number as default in prompt. + * progmodes/f90.el (f90-mode-abbrev-table): + * progmodes/fortran.el (fortran-mode-abbrev-table): + Use newer form of define-abbrev, where supported. No need to bind + abbrevs-changed for system abbrevs. -2006-03-17 Bill Wohler +2008-03-13 Stefan Monnier - * image.el (image-load-path-for-library): Minor docstring fix. + * term/xterm.el (terminal-init-xterm): delete-frame-hook -> + delete-frame-functions. -2006-03-17 Carsten Dominik + * bookmark.el (Info-current-node): Remove. - * textmodes/org.el (org-read-date): Include subgroup 5 into - replacement text. - (org-popup-calendar-for-date-prompt): Fix customization type. +2008-03-12 Juri Linkov -2006-03-17 Nick Roberts + * help.el (describe-project): Remove defaliases for view-todo and + describe-project that are now unnecessary after the merge from + emacs--rel--22 that added define-obsolete-function-alias. - * progmodes/gdb-ui.el (gud-watch): Provide completion. - (gdb-continuation): New variable. - (gdb-send): Deal with continuation lines. + * startup.el (inhibit-startup-screen): Revert incomplete + 2008-03-10 merge from emacs--rel--22 that partly reverted + 2008-02-28 change that added initial message to *scratch* buffer + regardless of the value of `inhibit-startup-screen'. + Now keep this change in the trunk, but not in the 22 branch. - * progmodes/gud.el (gud-gdb-complete-command) - (gud-gdb-run-command-fetch-lines): Adapt for use with watch - expressions. - (gud-tooltip-mode): Use buffer-local value. +2008-03-12 Stefan Monnier -2006-03-16 Kim F. Storm + * international/quail.el (quail-setup-completion-buf, quail-help): + * mail/binhex.el (binhex-decode-region-internal): + * mail/uudecode.el (uudecode-decode-region-internal): + * net/dns.el (dns-read-string-name, dns-read, dns-read-type, query-dns): + * sha1.el (sha1-string-external): Use set-buffer-multibyte rather than + setting default-enable-multibyte-characters. - * ido.el (ido-edit-input): Use selected match, if any. + * emulation/viper-util.el (viper-file-remote-p): Remove, unused. -2006-03-16 Bill Wohler + * comint.el: Fix up indentation and comment style. Remove `function'. - * image.el (image-load-path-for-library): Prefer user's images in - image-load-path. + * international/mule-cmds.el (reset-language-environment) + (set-language-environment-nonascii-translation): + Don't set-unibyte-charset. -2006-03-16 Martin Rudalics + * doc-view.el: Remove all cb-args, use closures instead. + (doc-view-sentinel): Merge doc-view-dvi->pdf-sentinel, + doc-view-ps->pdf-sentinel, and doc-view-pdf->txt-sentinel (which was + doing an incorrect check). Update all callers to use the new name. + (doc-view-doc->txt): Add missing `txt' argument. - * mouse.el (mouse-drag-vertical-line): Use window-inside-edges - when checking for attempt to drag leftmost or rightmost scrollbar. +2008-03-12 Tassilo Horn -2006-03-16 Nick Roberts + * doc-view.el (doc-view-current-cache-dir): Set buffer used for + md5 sum calculation to single-byte. - * progmodes/gdb-ui.el (gdb-inferior-status): New variable. - (gdb-force-mode-line-update): New function. - (gdb-resync, gdb-starting, gdb-signal, gdb-exited, gdb-stopped) - (gdb-exited): Use them. - (gdb-signal): New function. - (gdb-annotation-rules): Provide a rule for it. +2008-03-12 Stefan Monnier -2006-03-16 Kenichi Handa + * doc-view.el (doc-view-new-window-function): Add assertion. + (doc-view-doc-type): New var. + (doc-view-convert-current-doc, doc-view-doc->txt): Use it. + (doc-view-intersection): New fun. + (doc-view-mode): Use it to set the new var. - * international/mule.el (auto-coding-regexp-alist): Add entries - for Unicode BOM. +2008-03-12 Tassilo Horn - * sort.el (sort-build-lists): Temporarily bind - inhibit-field-text-motion to t. + * doc-view.el (doc-view-doc->txt, doc-view-open-text) + (doc-view-already-converted-p): New functions. + (doc-view-clear-cache): Don't recreate doc-view-cache-directory. + (doc-view-mode-map): Bind C-c C-t to doc-view-open-text. + (doc-view-dvi->pdf-sentinel, doc-view-dvi->pdf) + (doc-view-pdf->txt-sentinel, doc-view-pdf->txt) + (doc-view-ps->pdf-sentinel, doc-view-ps->pdf) + (doc-view-convert-current-doc): Don't hardwire the functions the + sentinels call. Now they're provided by two args CALLBACK and + CB-ARGS to the functions. + (doc-view-search): Use doc-view-doc->txt. + (doc-view-initiate-display): Use doc-view-already-converted-p. + Mention new binding C-c C-t if doc-view-mode doesn't work. -2006-03-15 Luc Teirlinck +2008-03-12 Dan Nicolaescu - * locate.el (locate-command, locate-make-command-line) - (locate-fcodes-file, locate-update-command) - (locate-prompt-for-command, locate, locate-with-filter) - (locate-get-file-positions): Doc fixes. - (locate-buffer-name, locate-header-face): Remove leading `*' in - defcustom. - (locate-filter-output): Use `keep-lines' instead of its alias - `delete-non-matching-lines'. - (locate-get-filename, locate-get-dirname): Add introductory comment. - (locate-find-directory-other-window): Give appropriate error - message if used outside main listing. + * diff-mode.el (diff-refine-change): Adjust colors to be more visible. -2006-03-15 Stefan Monnier +2008-03-12 Stefan Monnier - * font-lock.el (font-lock-lines-before): Delete variable, subsumed by - the new extend-region feature. - (font-lock-after-change-function): Update correspondingly. - * jit-lock.el (jit-lock-after-change): Update correspondingly. - * progmodes/grep.el (font-lock-lines-before): Don't disable. + * textmodes/sgml-mode.el (sgml-font-lock-syntactic-keywords): + Mark " outside of tags as punctuation. -2006-03-15 Bill Wohler +2008-03-11 Stefan Monnier - * image.el (image-load-path-for-library): Fix example by not - recommending that one binds image-load-path. Just defvar it to - placate compiler and only use it if previously defined. + * menu-bar.el (minibuffer-local-map): Use the same command for the + "Quit" menu as used for the C-g key, so the shortcut displayed is C-g. + Prefer RET over C-j for exit-minibuffer. -2006-03-15 Carsten Dominik + * files.el (display-buffer-other-frame): Eliminate problematic code. - * textmodes/org.el (org-insert-centered): Use `string-width' to - make underlining work for wide characters. - (org-goto-map, org-agenda-mode-map, org-mode-map): Explicitly bind - TAB to `org-cycle', to make sure that no binding in - `outline-mode-map' can supercede it. + * menu-bar.el (menu-bar-update-buffers-maxbuf): Remove. + (menu-bar-select-buffer): Remove. + (menu-bar-select-frame): Make non-interactive and take a frame arg. + (menu-bar-update-buffers): Don't use buffer-names or frame names as events. -2006-03-14 Ken Manheimer +2008-03-11 Juanma Barranquero - * allout.el: Increment version to 2.2.1 in file commentary. + * icomplete.el (icomplete-completions): Remove obsolete code. - (allout-version): Increment to 2.2.1. + * net/net-utils.el (iwconfig-program-options): Doc fix. + (net-utils-run-program, run-network-program): Define as functions. - (allout-default-layout): New customization variable, used when the - file lacks a specific allout-layout. Uses allout-layout-type for - recursively nested definition. +2008-03-11 Dan Nicolaescu - (allout-layout-type): Widget defining allout layouts, necessary for - self-recursive definition. + * emacs-lisp/lisp-mode.el (lisp-interaction-mode-map): Fix typo. - (allout-mode): Incorporate allout-default-layout as fallback for - allout-layout. +2008-03-11 Glenn Morris - (allout-layout): Mark as 'safe-local-variable', and refer mention - fallback to `allout-default-layout' in absence of a specified value. - (allout-passphrase-verifier-string) - (allout-passphrase-hint-string): Mark as 'safe-local-variable'. + * faces.el (mode-line-emphasis): New face. + * vc.el (vc-set-mode-line-busy-indicator): Use mode-line-emphasis face. - (allout-file-passphrase-verifier-string): Obsolete variable, removed. + * calendar/calendar.el (top-level): Load cal-loaddefs when compiling. - (allout-get-encryption-passphrase-verifier): Use correct name of - passphrase verifier in docstring. +2008-03-11 Chong Yidong -2006-03-15 Nick Roberts + * simple.el (set-mark-command): Doc fix. - * progmodes/gdb-ui.el (gdb-var-list): Change order of first two - elements. - (gdb-find-watch-expression): Make it work for arrays too. - Follow change to gdb-var-list. - (gud-watch): Allow the user to enter variable name with a prexix - arg. Create keybindings. - (gdb-var-create-handler, gdb-var-evaluate-expression-handler) - (gdb-var-list-children-handler, gdb-var-update-handler) - (gdb-var-delete, gdb-edit-value, gdb-speedbar-expand-node) - (gdb-var-list-children-handler-1, gdb-var-update-handler-1): - Follow change to gdb-var-list. - (gdb-starting): Don't show the overlay arrows when program is running. +2008-03-10 Stefan Monnier - * progmodes/gud.el (gud-speedbar-buttons): Follow change to - gdb-var-list. + * Makefile.in (bootstrap-prepare): Don't chmod cal-loaddefs.el. -2006-03-14 Bill Wohler + * emacs-lisp/autoload.el (autoload-find-destination): + Don't force raw-text. - * image.el (image-load-path-for-library): Pass value of path - rather than symbol. Always return list of directories. - Guarantee that image directory comes first. + * calendar/calendar.el ("cal-loaddefs"): Load, rather than require. + * calendar/cal-loaddefs.el: Don't version control. -2006-03-14 Alan Mackenzie +2008-03-10 Dan Nicolaescu - * font-core.el (font-lock-extend-region\(-function\)?.): - New function/variable. + * progmodes/make-mode.el (makefile-mode-abbrev-table): Add menu + entries and add :help to the existing ones. - * font-lock.el (font-lock-after-change-function): - Call font-lock-extend-region. Obey font-lock-lines-before. - (font-lock-default-fontify-region): Remove reference to - font-lock-lines-before. +2008-03-10 Glenn Morris - * jit-lock.el (jit-lock-after-change): - Call font-lock-extend-region. Obey font-lock-lines-before. + * calendar/cal-hebrew.el (date, entry, number): Move declarations + to where they are needed. -2006-03-14 David Ponce + * calendar/calendar.el (diary-file, hebrew-holidays-1) + (hebrew-holidays-2, hebrew-holidays-3, hebrew-holidays-4) + (calendar, calendar-basic-setup, calendar-mode-map, calendar-set-mark) + (calendar-version): Doc fixes. + (calendar-absolute-from-gregorian): Use zerop. + (calendar-mode-line-format): Make it a defcustom. - * tree-widget.el (tree-widget-themes-load-path) - (tree-widget-themes-directory, tree-widget-theme): Doc fix. + * calendar/diary-lib.el (diary-face-attrs): Fix custom :type. + (diary-face-attrs, diary-glob-file-regexp-prefix, diary-unknown-time) + (diary-pull-attrs, diary-header-line-flag, diary-list-entries) + (diary-unhide-everything, include-other-diary-files, diary-goto-entry) + (mark-included-diary-files, mark-calendar-days-named) + (mark-calendar-date-pattern, mark-calendar-month, diary-entry-compare) + (diary-remind, insert-diary-entry, insert-weekly-diary-entry) + (insert-monthly-diary-entry, insert-yearly-diary-entry) + (insert-anniversary-diary-entry, insert-block-diary-entry) + (insert-cyclic-diary-entry, fancy-diary-font-lock-keywords) + (diary-font-lock-sexps): Doc fixes. + (diary-remind-message, mark-calendar-month): Use zerop. + (diary-attrtype-convert, diary-pull-attrs): Simplify. + (diary-list-entries): Revert let to let* (previous change). -2006-03-13 Ryan Yeske + * Makefile.in (bootstrap-prepare): Also chmod cal-loaddefs.el. - * net/rcirc.el (rcirc) : Add link to manual. - (rcirc-print): Mark the start of text at the end of the prompt. - (rcirc-track-minor-mode): Add autoload cookie. - (rcirc-update-activity-string): Add space to front of mode-line - indicator. +2008-03-10 Kim F. Storm -2006-03-13 Miles Bader + * help.el (view-emacs-todo, describe-gnu-project): Define obsolete + function aliases for the old names. - * net/rcirc.el (rcirc-nick-abbrevs): Remove variable. - (rcirc-abbrev-nick): Remove function. - (rcirc-format-response-string): Don't call `rcirc-abbrev-nick'. +2008-03-10 Juanma Barranquero -2006-03-13 David Ponce + * iswitchb.el (iswitchb-use-faces): Doc fix. + (iswitchb-buffer-ignore, iswitchb-read-buffer): + Fix typos in docstrings. - * tree-widget.el: Handle themes across all occurrences of the main - themes sub-directory found in tree-widget-themes-load-path. - (tree-widget-themes-directory, tree-widget-theme): Doc fix. - (tree-widget--locate-sub-directory): Return all occurrences. - (tree-widget-themes-path): New function. - Replace tree-widget-themes-directory, and return a list of directories. - (tree-widget-set-parent-theme) - (tree-widget-lookup-image): Use it. +2008-03-10 Dan Nicolaescu -2006-03-13 Carsten Dominik + * progmodes/verilog-mode.el (verilog-highlight-grouping-keywords): + Fix typo. + (verilog-type-font-keywords): Reindent. - * textmodes/org.el (org-link-search): Avoid self-matching of - links, allow target text to be distributed over several lines. - (org-search-not-link): New function. - (org-set-regexps-and-options, org-get-current-options): - New startup options. - (org-export-as-html): Take odd-level setting from local variable. - (org-fontify-emphasized-text): New option. - (org-set-font-lock-defaults): Include emphasized text. - (org-follow-mhe-link): Allow folder-only links, fix folder name. - (org-font-lock): Customize group renamed from `org-faces'. +2008-03-10 Michael McNamara -2006-03-13 John Paul Wallington + * verilog-mode.el (verilog-font-grouping-keywords): Fix bug in the + grouping-keyword regular expression. + (verilog-font-lock-keywords): Allow users to toggle special + highlight of grouping-keywords. + (verilog-highlight-grouping-keywords): The toggle for special + highlighting of grouping keywords. - * ibuf-ext.el (ibuffer-never-show-predicates): Add `require' - keyword; require `ibuf-ext' feature. Thanks to Zhang Wei. +2008-03-10 Juri Linkov -2006-03-12 Luc Teirlinck + * startup.el: Revert 2008-02-28 change that adds initial message + to *scratch* buffer regardless of the value of + `inhibit-startup-screen'. - * cus-start.el (all): Delete :version keyword for members of the - fringe group, since the entire group is new in 22.1. +2008-03-10 Dan Nicolaescu -2006-03-13 Nick Roberts + * textmodes/css-mode.el (css-indent-offset, css-electric-keys): + * textmodes/bibtex-style.el (bibtex-style-indent-basic): + * progmodes/verilog-mode.el (verilog-mode): + * net/socks.el (socks): + * vc-mtn.el (vc-mtn-mode-line-rewrite): Add :version. - * progmodes/gdb-ui.el (gdb-stack-list-locals-handler): Add local - map if value is hexadecimal (an address). - (gud-watch): Only search roots for existing watch expressions. - (gdb-speedbar-refresh): Bind speedbar-shown-directories to nil to - prevent caching problems with speedbar-update-directory-contents. +2008-03-09 Stefan Monnier + + * doc-view.el (bookmark-buffer-file-name, bookmark-prop-get): Declare. + (doc-view-bookmark-make-record): Use them. + (doc-view-bookmark-jump): Use them. Fix find-file ->find-file-noselect. + (bookmark-get-filename, bookmark-get-bookmark-record): Remove. + + * bookmark.el (bookmark-make-record-function): Change expected return + value to include a suggested bookmark name. + (bookmark-make): Split into bookmark-make-record and bookmark-store. + Fix reversed `overwrite' semantics. + (bookmark-set): Call bookmark-make-record before prompting the user. + Then pass the result to bookmark-store later on. + (bookmark-make-name-function): Remove. + (bookmark-buffer-file-name, bookmark-buffer-name): Don't use it. + * info.el (bookmark-make-name-function): Remove. + (Info-mode): Don't set it. + (Info-bookmark-make-name): Remove. + (Info-bookmark-make-record): Use Info-current-node as suggested default + bookmark name. + + * bookmark.el (bookmark-set): Make bookmark before reading annotations. + I.e. use bookmark-edit-annotation rather than bookmark-read-annotation. + (bookmark-read-annotation-mode-map, bookmark-annotation-paragraph) + (bookmark-annotation-buffer, bookmark-annotation-file) + (bookmark-annotation-point, bookmark-send-annotation) + (bookmark-read-annotation-mode, bookmark-read-annotation): Remove. + (bookmark-edit-annotation-text-func): Rename from + bookmark-read-annotation-text-func. Keep old name as an obsolete alias. + (bookmark-edit-annotation-mode-map): Move initialization into + declaration. + + * bookmark.el: Remove spurious * in docstrings. + (bookmark-minibuffer-read-name-map): New var. + (bookmark-set): Use it. Also pass the default value as it should. + (bookmark-send-edited-annotation): Take no chances with text properties. + (bookmark-insert-current-bookmark): Inline bookmark-insert-buffer-name. + (bookmark-insert-buffer-name): Remove. + (bookmark-buffer-file-name): Signal an error rather than returning nil. + +2008-03-09 Thomas Hühn (tiny change) + + * tutorial.el (tutorial--default-keys): Update `C-l' binding. + +2008-03-09 Dan Nicolaescu + + * diff-mode.el (diff-mode-menu): Add :help. + +2008-03-09 Glenn Morris + + * calendar/calendar.el (general-holidays, oriental-holidays) + (local-holidays, other-holidays, hebrew-holidays-1, hebrew-holidays-2) + (hebrew-holidays-3, hebrew-holidays-4, hebrew-holidays) + (christian-holidays, islamic-holidays, bahai-holidays, solar-holidays) + (calendar-holidays): Restore autoload cookies, because people are + used to using these variables without loading calendar.el. + + * calendar/cal-islam.el (diary-islamic-date): Move to end. + (date, number): Declare where needed. + + * calendar/diary-lib.el (nongregorian-diary-marking-hook) + (list-sexp-diary-entries): Doc fixes. + (diary-list-entries): Doc fix. Remove free variable `entry'. + (fancy-diary-display): Use dolist, bobp. Remove free variable `entry'. + Simplify setting of `date-holiday-list'. + (mark-diary-entries): Remove free variable `entry'. + (diary-list-entries, include-other-diary-files, fancy-diary-display): + Use let where let* is not needed. + +2008-03-09 Stefan Monnier + + * bookmark.el (bookmark-make): Don't pass the `annotation' to the + make-record function, instead paste it in afterwards. + (bookmark-make-record-for-text-file): + * doc-view.el (doc-view-bookmark-make-record): + * info.el (Info-bookmark-make-record): Don't mess with annotations. + +2008-03-08 Glenn Morris + + * calendar/diary-lib.el (entry): Declare for compiler part-way through. + +2008-03-08 Stefan Monnier + + * calendar/diary-lib.el (diary-list-entries) + (include-other-diary-files, mark-diary-entries) + (mark-sexp-diary-entries, mark-included-diary-files) + (diary-entry-time, list-sexp-diary-entries): Remove the special + handling of ^M that dates back to the use of selective-display. + (simple-diary-display): Obey setting of pop-up-frames. + (body, entry): Remove unnecessary declarations. + + * bookmark.el (bookmark-prop-get, bookmark-prop-set): New funs. + (bookmark-get-annotation, bookmark-set-annotation) + (bookmark-get-filename, bookmark-set-filename, bookmark-get-position) + (bookmark-set-position, bookmark-get-front-context-string) + (bookmark-set-front-context-string, bookmark-get-rear-context-string) + (bookmark-set-rear-context-string, bookmark-get-handler): Use them. + * info.el (Info-bookmark-make-record): Don't bother recording point. + (bookmark-get-filename, bookmark-get-front-context-string) + (bookmark-get-rear-context-string, bookmark-get-position): + Don't declare any more. + (bookmark-get-info-node): Remove. + (bookmark-prop-get): Declare. + (Info-bookmark-jump): Use it. + +2008-03-08 Johan Bockgård -2006-03-12 Juri Linkov + * subr.el (while-no-input): Don't splice BODY directly into the + `or' form. - * battery.el (battery-linux-proc-acpi): Check `capacity' for non-nil - before comparing with `low' and `warn'. +2008-03-08 Dan Nicolaescu + + * diff-mode.el (diff-ignore-whitespace-hunk): + Bind inhibit-read-only before trying to change the buffer. + +2008-03-08 Glenn Morris + + * calendar/appt.el (appt): Move custom group here from calendar.el. + (appt-disp-window, appt-convert-time): Doc fixes. + + * calendar/cal-bahai.el (calendar-bahai-prompt-for-date) + (calendar-bahai-mark-date-pattern): + * calendar/cal-hebrew.el (mark-hebrew-calendar-date-pattern): + * calendar/cal-islam.el (mark-islamic-calendar-date-pattern): + * calendar/cal-julian.el (calendar-absolute-from-julian): + * calendar/cal-persia.el (persian-prompt-for-date): Use zerop. + + * calendar/cal-china.el (chinese-calendar): Move custom group here from + calendar.el. + (chinese-calendar-celestial-stem, chinese-calendar-terrestrial-branch): + Make constants. + (chinese-calendar-time-zone, chinese-calendar-daylight-time-offset) + (chinese-calendar-daylight-savings-starts) + (chinese-calendar-daylight-savings-ends) + (chinese-calendar-daylight-savings-starts-time) + (chinese-calendar-daylight-savings-ends-time) + (chinese-zodiac-sign-on-or-after, chinese-new-moon-on-or-after): + Doc fixes. - * info.el (Info-dir-remove-duplicates): Move point to the - beginning of the current line after deleting the entries from - redundant heading. Use marker for `limit' and compare it with - point before calling `re-search-forward'. + * calendar/cal-coptic.el (coptic-name): Add doc string. + + * calendar/cal-french.el (french-calendar-month-name-array) + (french-calendar-day-name-array, french-calendar-special-days-array): + Add doc strings. + + * calendar/cal-bahai.el (diary-bahai-mark-entries) + (diary-bahai-insert-entry, diary-bahai-insert-monthly-entry) + (diary-bahai-insert-yearly-entry): + * calendar/cal-dst.el (calendar-next-time-zone-transition) + (calendar-time-zone): + * calendar/cal-hebrew.el (hebrew-calendar-leap-year-p) + (hebrew-calendar-elapsed-days, hebrew-calendar-long-heshvan-p) + (hebrew-calendar-short-kislev-p, mark-hebrew-diary-entries) + (insert-hebrew-diary-entry, insert-monthly-hebrew-diary-entry) + (insert-yearly-hebrew-diary-entry, diary-yahrzeit): + * calendar/cal-islam.el (islamic-calendar-leap-year-p) + (list-islamic-diary-entries, mark-islamic-diary-entries) + (insert-islamic-diary-entry, insert-monthly-islamic-diary-entry) + (insert-yearly-islamic-diary-entry): + * calendar/cal-iso.el (calendar-iso-read-args): + * calendar/cal-mayan.el (calendar-string-to-mayan-long-count) + (calendar-mayan-haab-to-string, calendar-mayan-tzolkin-to-string) + (calendar-read-mayan-haab-date, calendar-read-mayan-tzolkin-date) + (calendar-next-calendar-round-date) + (calendar-mayan-long-count-common-era): + * calendar/cal-menu.el (cal-menu-holiday-window-suffix) + (cal-menu-x-popup-menu, calendar-mouse-holidays) + (calendar-mouse-view-diary-entries, calendar-mouse-print-dates) + (calendar-mouse-goto-date): + * calendar/cal-move.el (calendar-scroll-left, calendar-scroll-right): + * calendar/holidays.el (holidays): + * calendar/lunar.el (phases-of-moon, lunar-new-moon-on-or-after): + * calendar/time-date.el (date-to-time, time-subtract, time-add) + (safe-date-to-time): Doc fixes. + + * calendar/cal-persia.el (persian-calendar-month-name-array) + (persian-calendar-epoch): Make constants. + + * calendar/cal-tex.el (calendar-tex): Move custom group here from + calendar.el. + + * calendar/cal-x.el (diary-frame-parameters) + (calendar-frame-parameters, calendar-and-diary-frame-parameters) + (calendar-after-frame-setup-hooks): Make defcustoms. + (calendar-one-frame-setup, calendar-only-one-frame-setup) + (calendar-two-frame-setup): Doc fix. + + * calendar/cal-loaddefs.el: New file. + + * calendar/cal-bahai.el, calendar/cal-china.el, calendar/cal-coptic.el: + * calendar/cal-french.el, calendar/cal-html.el: + * calendar/cal-islam.el, calendar/cal-iso.el, calendar/cal-julian.el: + * calendar/cal-mayan.el, calendar/cal-move.el, calendar/cal-persia.el: + * calendar/cal-tex.el, calendar/cal-x.el: + Unquote lambda functions. Add autoload cookies to functions formerly + autoloaded in calendar.el. Set `generated-autoload-file' to + "cal-loaddefs.el". + + * calendar/calendar.el: Move many autoloads to separate file, + cal-loaddefs.el. Move defcustoms to start and re-order. + (calendar-month-name-array, calendar-starred-day): No need to + declare for compiler. + (cal-loaddefs): Require it. + (appt, chinese-calendar, calendar-tex): Move custom groups to the + appropriate file. + (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): + Reverse logic. + (diary-face, diary-file-name-prefix-function, diary-include-string) + (diary-glob-file-regexp-prefix, diary-face-attrs) + (diary-file-name-prefix, sexp-diary-entry-symbol) + (print-diary-entries-hook, list-diary-entries-hook) + (nongregorian-diary-listing-hook, mark-diary-entries-hook) + (nongregorian-diary-marking-hook, diary-list-include-blanks): + Move to diary-lib. + (all-christian-calendar-holidays, all-islamic-calendar-holidays) + (all-bahai-calendar-holidays): Doc fix. + (calendar-insert-indented): Doc fix. Use when rather than if. + (exit-calendar): Use mapc rather than mapcar. + (calendar-cursor-to-date): Use zerop. + (calendar-mark-ring): Add doc-string. + (calendar-starred-day): Defvar it. + (calendar-mode): Make calendar-starred-day local. + (calendar-star-date): No need to make calendar-starred-day local. + + * calendar/diary-lib.el: Move defcustoms to start. + (diary-include-string, diary-list-include-blanks) + (diary-glob-file-regexp-prefix, diary-face, diary-face-attrs) + (diary-file-name-prefix, diary-file-name-prefix-function) + (sexp-diary-entry-symbol, list-diary-entries-hook) + (mark-diary-entries-hook, nongregorian-diary-listing-hook) + (nongregorian-diary-marking-hook, print-diary-entries-hook): + Move here from calendar.el. + (diary-file-name-prefix-function): Use 'identity. + (diary-face): Make it a defcustom, and mark as obsolete. + (top-level): No need to require cal-hebrew, cal-islam when compiling. + (calendar-hebrew-month-name-array-leap-year) + (calendar-islamic-month-name-array, calendar-bahai-month-name-array): + Define for compiler. + (diary-font-lock-keywords): Use format rather than concat. + Add bahai-diary-entry-symbol. + + * calendar/cal-hebrew.el, calendar/holidays.el, calendar/lunar.el: + * calendar/solar.el: Unquote lambda functions. + + * calendar/solar.el (calendar-location-name, calendar-latitude) + (calendar-longitude, solar-setup, solar-sin-degrees) + (solar-cosine-degrees, solar-tangent-degrees, solar-xy-to-quadrant) + (solar-degrees-to-quadrant, solar-atn2, solar-arccos) + (solar-sunrise-and-sunset, solar-moment, solar-daylight) + (solar-exact-local-noon, solar-julian-ut-centuries) + (solar-ephemeris-time, solar-date-next-longitude) + (solar-horizontal-coordinates, solar-equatorial-coordinates) + (solar-ecliptic-coordinates, solar-data-list, solar-longitude) + (solar-ephemeris-correction, solar-sidereal-time, solar-date-to-et) + (sunrise-sunset, solar-seasons-data, solar-equinoxes/solstices): + Doc fixes. + (solar-horizontal-coordinates, solar-equatorial-coordinates) + (solar-ecliptic-coordinates): Rename argument `for-sunrise-sunset'. + (solar-ecliptic-coordinates): Use unless. + (calendar-sunrise-sunset, diary-sunrise-sunset, diary-sabbath-candles): + Use or. -2006-03-11 Luc Teirlinck + * calendar/timeclock.el: Add doc-strings to all functions. + (timeclock-workday, timeclock-in, timeclock-completing-read): Doc fixes. + (timeclock-entry-list-length, timeclock-entry-list-projects) + (timeclock-day-list-projects, timeclock-day-list): Use dolist. - * simple.el (yank): Fix typo in docstring. + * calendar/todo-mode.el: Remove un-needed eval-when-compile. -2006-03-11 Ryan Yeske + * textmodes/org.el (list-diary-entries-hook): Declare for compiler. + (org-get-entries-from-diary): Require diary-lib. - * mail/rmailsum.el (rmail-summary-next-msg): Skip deleted - messages, where "D" is the 6th character. +2008-03-08 Juanma Barranquero -2006-03-11 Eli Zaretskii + * info.el (bookmark-make-name-function, bookmark-get-bookmark-record): + Pacify byte-compiler. - * simple.el (yank): Fix last change. +2008-03-07 Alan Mackenzie -2006-03-11 David Ponce + * progmodes/cc-engine.el (c-in-knr-argdecl): Limit number of + paren/bracket pairs parsed, to solve performance problem. - * textmodes/ispell.el (ispell-find-aspell-dictionaries): Add aliases - before merging elements from the standard ispell-dictionary-alist. - (ispell-aspell-add-aliases): Add aliases to the passed dictionary - alist, and return the new alist. +2008-03-07 Bastien Guerry -2006-03-11 Richard Stallman + * bookmark.el (bookmark-set): Don't check for + `bookmark-make-name-function' since `bookmark-buffer-file-name' + already takes care of this. + (bookmark-buffer-name, bookmark-buffer-file-name): + Remove Info-mode specific code. - * mail/rmail.el (rmail-ignored-headers): Discard DomainKey-Signature. + * info.el (bookmark-get-info-node): Define this function in + info.el, not in bookmark.el. + (Info-mode): Set `bookmark-make-name-function' to + `Info-bookmark-make-name' locally. + (Info-bookmark-make-name): New function. - * eshell/eshell.el (eshell-prefer-to-shell): Variable deleted; - the way it is implemented is too unclean. + * bookmark.el (bookmark-make-name-function): New variable. - * simple.el (kill-region, yank): Doc fix. +2008-03-07 Karl Fogel - * battery.el (battery-echo-area-format): Doc fix. - (battery-mode-line-format): Likewise. - (battery-linux-proc-apm, battery-linux-proc-acpi): Likewise. - (battery-linux-proc-acpi): Ignore batteries that say "charged". + * bookmark.el (bookmark-set): Make `bookmark-make-record-function' + buffer-local, not `bookmark-make-cell-function' (the old name). -2006-03-11 Kurt Hornik +2008-03-07 Tassilo Horn - * progmodes/octave-mod.el (octave-indent-for-comment): - Behave according to do string. + * doc-view.el (doc-view-bookmark-make-record): + * image-mode.el (image-bookmark-make-record): + * info.el (Info-bookmark-make-record): Delete obsolete second arg. -2006-03-11 Agustin Martin +2008-03-07 Jan Djärv - * textmodes/ispell.el (ispell-menu-map-needed) [ispell-message]: - Be visible only if major mode is Mail Mode. + * vc.el (vc-status-menu-map-filter): Return orig-binding if + boundp 'vc-ignore-menu-filter. + (vc-status-tool-bar-map): Make it defvar. + (vc-status-mode): vc-status-tool-bar-map now variable. + (vc-status-toggle-mark): toggle-mark-file => vc-status-toggle-mark-file. - * textmodes/flyspell.el (flyspell-external-point-words) - (flyspell-process-localwords): Fix last changes. +2008-03-07 Karl Fogel -2006-03-11 Eli Zaretskii + Give a better name to part of the bookmark interface. - * calendar/holidays.el (list-holidays): Doc fix. + This was originally a much larger change, but halfway through I + updated and discovered that Stefan Monnier had done the rest. + It looks like he anticipated the new name too, because he used + `the-record' instead of `the-cell' for some internal variable names. - * international/mule.el (auto-coding-alist): Add .odt - (OpenOffice's open document) files. + * bookmark.el (bookmark-make-record-function): Was + `bookmark-make-cell-function'. + (bookmark-make, bookmark-send-annotation): Update for above. + (bookmark-make-record-for-text-file): + Was `bookmark-make-cell-for-text-file'. Fix doc string re 2008-03-07T05:00:18Z!monnier@iro.umontreal.ca. - * files.el (auto-mode-alist): Add .odt (OpenOffice's open - document) files. Mention in the doc string the need to sync with - auto-coding-alist. + * info.el: Adjust accordingly. + (Info-bookmark-make-record): Was `Info-bookmark-make-cell'. -2006-03-10 Chong Yidong + * image-mode.el: Adjust accordingly. + (image-bookmark-make-record): Was `image-bookmark-make-cell'. - * files.el (hack-local-variables-confirm): Don't prompt for ! if - enable-local-variables is set to always query, or there is no - savable variable. + * doc-view.el: Adjust accordingly. + (doc-view-bookmark-make-record): Was `doc-view-bookmark-make-cell'. -2006-03-10 Bill Wohler +2008-03-07 Stefan Monnier - * image.el (image-load-path-for-library): Merge at least three - functions from Gnus and MH-E into this one function that can now - be shared. + * bookmark.el (bookmark-map, bookmark-read-annotation-mode-map): + Move initialization into declaration. + (bookmark-get-info-node, bookmark-set-info-node): Remove. + (bookmark-make, bookmark-make-cell-for-text-file): Remove info-node arg. + (bookmark-info-current-node): Remove. + (bookmark-jump-noselect): Rename from bookmark-jump-internal. + Add relocation fallback. Set bookmark-current-bookmark. + (bookmark-default-handler): Rename from bookmark-jump-noselect. + Remove relocation fallback. Don't set bookmark-current-bookmark. + (bookmark-set): Let it be used even if there's no buffer-file-name + as long as there is a bookmark-make-cell-function. + * info.el (Info-bookmark-jump): Remove relocation fallback. + Don't set bookmark-current-bookmark. + +2008-03-07 Glenn Morris + + * calendar/appt.el (appt-issue-message) + (appt-message-warning-time, appt-audible, appt-visible) + (appt-msg-window, appt-display-mode-line, appt-display-duration) + (appt-display-diary): Remove autoload cookies. + + * calendar/cal-china.el, calendar/timeclock.el, calendar/todo-mode.el: + Remove leading `*' from defcustom doc-strings. + + * calendar/cal-dst.el (calendar-dst): New custom group. + (calendar-daylight-savings-starts, calendar-daylight-savings-ends) + (calendar-time-zone, calendar-daylight-time-offset) + (calendar-standard-time-zone-name, calendar-daylight-time-zone-name) + (calendar-daylight-savings-starts-time) + (calendar-daylight-savings-ends-time): Convert from defvar to defcustom. + (calendar-daylight-savings-starts, calendar-daylight-savings-ends): + Move to start. + + * calendar/cal-menu.el (holidays-in-diary-buffer): Declare for compiler. + + * calendar/calendar.el (calendar-version): Use emacs-version and + make it obsolete. Move to end. + (calendar-offset, view-diary-entries-initially) + (mark-diary-entries-in-calendar, calendar-remove-frame-by-deleting) + (view-calendar-holidays-initially, all-hebrew-calendar-holidays) + (all-christian-calendar-holidays, all-islamic-calendar-holidays) + (all-bahai-calendar-holidays, calendar-load-hook) + (initial-calendar-window-hook, today-visible-calendar-hook) + (today-invisible-calendar-hook, calendar-move-hook) + (diary-nonmarking-symbol, hebrew-diary-entry-symbol) + (islamic-diary-entry-symbol, bahai-diary-entry-symbol) + (diary-include-string, sexp-diary-entry-symbol) + (abbreviated-calendar-year, american-date-diary-pattern) + (european-date-diary-pattern, european-calendar-display-form) + (american-calendar-display-form, print-diary-entries-hook) + (list-diary-entries-hook, diary-hook, diary-display-hook) + (nongregorian-diary-listing-hook, mark-diary-entries-hook) + (nongregorian-diary-marking-hook, diary-list-include-blanks) + (holidays-in-diary-buffer, general-holidays, oriental-holidays) + (local-holidays, other-holidays, hebrew-holidays-1) + (hebrew-holidays-2, hebrew-holidays-3, hebrew-holidays-4) + (hebrew-holidays, christian-holidays, islamic-holidays) + (bahai-holidays, solar-holidays, calendar-setup) + (calendar-week-start-day): Remove autoload cookies. + (diary-glob-file-regexp-prefix): Doc fix. + (calendar-goto-info-node): Use `info' rather than `Info-find-node'. + (Info-find-emacs-command-nodes, Info-find-node): Remove declarations. + (calendar-week-start-day, calendar-debug-sexp): Move to start. + + * calendar/solar.el: Remove leading `*' from defcustom doc-strings. + (calendar-time-display-form, calendar-latitude) + (calendar-longitude, solar-equinoxes-solstices): Remove autoload + cookies. + (calendar-latitude, calendar-longitude): Move functions after + variables. + (diary-sabbath-candles-minutes): Move to start. + (solar-setup): Use or rather than if. + (solar-sin-degrees, solar-cosine-degrees, solar-tangent-degrees): + Remove condition-case. + (solar-atn2): Use zerop. + (solar-equinoxes-solstices): Doc fix. -2006-03-11 Nick Roberts + * mail/supercite.el: Remove leading `*' from defcustom doc-strings. + (sc-mode-map-prefix): Doc fix. Make it a defcustom. - * progmodes/gdb-ui.el (gdb-remove-text-properties): Rename from - gdb-remove-mouse-face and remove help-echo too. - (gdb-enqueue-input): Correct conditional clause. + * textmodes/org.el (org-agenda-sunrise-sunset): Require solar. + (calendar-longitude, calendar-latitude, calendar-location-name): + Declare for compiler. -2006-03-10 Glenn Morris +2008-03-06 Stefan Monnier - * calendar/calendar.el (calendar-holidays): Doc fix. - * calendar/holidays.el (list-holidays): Doc fix. + * arc-mode.el (archive-ar-file-header-re): New const. + (archive-ar-summarize, archive-ar-extract): New funs. + (archive-find-type): Recognize ar archives. -2006-03-10 Nick Roberts + * vc-bzr.el (vc-bzr-resolve-when-done, vc-bzr-find-file-hook): + New functions. - * progmodes/gdb-ui.el (gdba): Don't call gdb-init-1 explicitly as - it gets called in gdb-prompt anyway. - (gdb-use-separate-io-buffer): Only restore window arrangement for - gdb-many-windows. - (gdb-enqueue-input): Make it harder to send GDB input when program - is running. - (gdb-buffer-list): New variable. - (gdb-remove-mouse-face): New function. - (gdb-starting): Use it when GDB input won't get sent. + * info.el (Info-bookmark-make-cell): Don't use the info-node argument. -2006-03-08 Juanma Barranquero +2008-03-06 Lennart Borgman - * help.el (view-lossage): Remove trailing whitespace before - inserting "\n". + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): + Replace :enable (mark-active) with :enable mark-active. -2006-03-07 Chong Yidong +2008-03-06 Juanma Barranquero - * files.el (hack-local-variables-confirm): - Set coding-system-for-read to nil before writing to .emacs. + * vms-patch.el (make-legal-file-name): New obsolete alias. + (make-valid-file-name): Rename from `make-legal-file-name'. + (make-auto-save-file-name): Use it. - * arc-mode.el (archive-extract): Check if an existing buffer name - comes from a different archive. + * calendar/calendar.el (calendar-date-is-legal-p): New obsolete alias. + (calendar-date-is-valid-p): Rename from `calendar-date-is-legal-p'. + (calendar-date-is-visible-p, mark-visible-calendar-date): Use it. - * help.el (describe-key-briefly): If KEY is a down event, read and - discard the up event. + * textmodes/org.el (org-export-html-style): Doc fix. + (org-get-legal-level): New obsolete alias. + (org-get-valid-level): Rename from `org-get-legal-level'. + (org-promote, org-demote, org-archive-subtree) + (org-remember-handler, org-refile, org-put-clock-overlay): Use it. -2006-03-07 Nick Roberts +2008-03-06 Jan Djärv - * progmodes/gud.el (gud-speedbar-buttons): Allow pointers to - be edited and use font-lock-warning-face for any changes. + * term/x-win.el (x-gtk-stock-map): Add bookmark_add. - * progmodes/gdb-ui.el (gdb-edit-value-handler): New function. - (gdb-edit-value): Use it to report any errors. + * vc.el (vc-status-tool-bar-map, vc-status-toggle-mark-file) + (vc-status-toggle-mark): New functions. + (vc-status-mode): Set tool bar map. -2006-03-07 Juanma Barranquero +2008-03-05 Chong Yidong - * help.el (describe-key): Remove leftover test code. + * emacs-lisp/lisp.el (parens-require-spaces): Doc fix. + Reported by Drew Adams . -2006-03-07 Carsten Dominik +2008-03-05 Kenichi Handa - * textmodes/org.el: Move defvars out of eval-when-compile. - Use buffer-file-name variable. - (org-agenda-file-to-end, org-agenda-file-to-front): Remove unused - arg `file'. - (org-level-faces): Remove startup dependency. - (org-cycle, org-map-tree, org-scan-tags) - (org-remember-handler): Don't call `outline-level' directly. - (org-mhe-search-all-folders): New option. - (org-mhe-get-message-folder-from-index) - (org-mhe-get-message-folder): Fix indexing search. - (org-format-agenda-item): Handle nil TAGS argument. - (org-cleaned-string-for-export, org-activate-target-links) - (org-make-target-link-regexp): Deal with empty radio target list. - (org-tag): New face. - (org-get-level-face): New function. - (org-set-font-lock-defaults): Simplify setup for headlines. - (org-complete): Pass common substring to `display-completion-list'. + * subr.el (read-quoted-char): Resolve modifers of the character + event. -2006-03-06 David Ponce + * comint.el (comint-exec-1): Don't change the coding-system for + decoding to dos-like EOL. + (comint-carriage-motion): Fully rewrite. - * tree-widget.el: Update Commentary header. - (tree-widget-theme-name): Ignore parent themes. - (tree-widget-set-parent-theme): New function. - (tree-widget-set-theme): Use it. - (tree-widget-set-image-properties): Move definition. Does nothing - if image properties have already been set. - (tree-widget-image-properties): Move definition. Receive an image - name. Set the :pointer property. - (tree-widget-lookup-image): Doc fix. Search in parent themes. - Don't set the :pointer image property. - (tree-widget-convert-widget): New function. Handle :dynargs - compatibility here. - (tree-widget): Use it to :convert-widget. Add the :expander-p - predicate to control when the :expander function is entered. - Thanks to Ken Manheimer for the idea. - (tree-widget-value-create): Handle :expander-p. widget-apply - :expander. - (tree-widget-expander-p): New function. Default value of the - :expander-p property. +2008-03-05 Juanma Barranquero -2006-03-06 Chong Yidong + * epg.el (epg-context-include-certs): Reflow docstring. + (epg-start-sign-keys, epg-sign-keys, epg-context-armor) + (epg-context-signers, epg-context-sig-notations, epg-context-set-armor) + (epg-context-set-signers, epg-context-set-sig-notations) + (epg-make-import-status, epg-make-import-result) + (epg-start-delete-keys): Fix typos in docstrings. + (epg-start-sign-keys, epg-sign-keys): + Fix typos in obsolescence declarations. - * help.el (describe-key): Properly handle the return value of - read-key-sequence when grabbing an up-event. Cleanup mouse-1 - remaps. Handle string and vector `follow-link' values. + * iswitchb.el: Don't check for `cadr' and `last'. + (iswitchb-define-mode-map, iswitchb-default-keybindings): + Add obsolescence declaration and remove redundant info from docstring. + (iswitchb-set-common-completion, iswitchb-set-matches) + (iswitchb-get-matched-buffers, iswitchb-visit-buffer): Use `let'. + (recentf-list, most-len, most-is-exact): + Don't wrap defvars within `eval-when-compile'. -2006-03-06 Stefan Monnier +2008-03-05 Glenn Morris - * complete.el (PC-expand-many-files): Try be more careful when parsing - the shell's output. + * ediff-hook.el (ediff-cond-compile-for-xemacs-or-emacs): Remove. + * ediff-init.el (ediff-cond-compile-for-xemacs-or-emacs): Remove. + * ediff-diff.el, ediff-help.el, ediff-hook.el, ediff-init.el: + * ediff-mult.el, ediff-util.el, ediff-wind.el: Expand all + ediff-cond-compile-for-xemacs-or-emacs calls to a featurep test. -2006-03-05 Stefan Monnier + * ediff-hook.el (ediff-window-setup-function): Don't autoload + declaration for compiler. + (ediff-xemacs-init-menus): Use when rather than if. - * outline.el (hide-sublevels): Provide better interactive default. + * ediff-init.el (top-level, ediff-frame-iconified-p): Simplify + if+and to just and. + (ediff-read-event, ediff-overlayp, ediff-make-overlay) + (ediff-delete-overlay): Move the XEmacs test inside the definition. -2006-03-06 Kenichi Handa + * ediff-mult.el (ediff-get-meta-info): Use or and unless rather than if. - * international/fontset.el (create-fontset-from-fontset-spec): - Fix regexp for paring FONTSET-SPEC (allow spaces after `:'). + * ediff-util.el (ediff-kill-bottom-toolbar): Place (ediff-use-toolbar-p) + test inside XEmacs test. + (ediff-make-bottom-toolbar): Place whole cond inside XEmacs test, + since it was doing nothing on Emacs. + (ediff-make-bullet-proof-overlay): Use when rather than if. -2006-03-05 Luc Teirlinck + * ediff-wind.el (ediff-select-lowest-window): Use when rather than if. + (ediff-setup-control-frame): Remove + ediff-cond-compile-for-xemacs-or-emacs, since it is already inside + a (featurep 'xemacs) test. - * progmodes/gud.el (gud-jdb-marker-filter): Quote `[' with two - backslashes instead of one in regexp. - (gud-tooltip-dereference): Add missing optional argument. +2008-03-05 Jay Belanger -2006-03-04 John Paul Wallington + * calc/calc-ext.el (calc-extended-command-history): New variable. + (calc-exectute-extended-command): Use `calc-extended-command-history'. - * wdired.el (toplevel): Require `cl' at compile-time. +2008-03-05 Dan Nicolaescu -2006-03-04 Andreas Schwab + * bindings.el (mode-line-remote): Add mouse-face. Improve tooltip. + (standard-mode-line-position): Add mouse-face. - * server.el (server-process-filter): Handle errors during - evaluation of the argument. + * progmodes/compile.el (compilation-menu-map): + (compilation-mode-map): + * progmodes/grep.el (grep-mode-map): Add :help. -2006-03-03 John Paul Wallington + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Define and + initialize in one step. Add :help. Use :enable to activate menu + items. Show the key binding for edebug-defun. + (lisp-interaction-mode-map): Add a menu. - * t-mouse.el (t-mouse-drag-start, t-mouse-swap-alt-keys): Doc fix; - escape parentheses at beginning of line. - (t-mouse-tty, t-mouse-make-event): Doc fix; use imperative. - (t-mouse-mode): Remove period from end of error message. + * term.el (term-mode-map): Define and initialize in one step. -2006-03-03 Agustin Martin + * ediff-init.el (ediff-color-display-p): Simplify. + (Xor): Remove unused function. + (ediff-with-syntax-table): Simplify for Emacs. - * textmodes/flyspell.el (flyspell-process-localwords): - Be case-sensitive. + * ediff-hook.el (menu-bar-ediff-menu): Don't depend on the + menu-bar being loaded, it always is. -2006-03-03 Martin Rudalics +2008-03-05 Glenn Morris - * cus-edit.el (custom-quote): Remove function, since it has been - moved to custom.el. + * textmodes/tex-mode.el (tex-mode): Suppress warning about + multiple definitions when compiling. - * font-lock.el (lisp-font-lock-keywords-2) - * emacs-lisp/rx.el (rx-check-any, rx-check-not) - * generic-x.el (reg-generic-mode): Quote "]"s in regexps when - they have no special meaning. +2008-03-04 Alan Mackenzie - * midnight.el (clean-buffer-list): Handle case where base-buffer of - indirect buffer gets killed before indirect buffer. Use dolist. + * progmodes/cc-mode.el (c-neutralize-syntax-in-CPP): Fix coding bug. -2006-03-03 Ken Manheimer + * progmodes/cc-langs.el (c-before-font-lock-function): Fix bug in + doc-string, "c-old-LEN" -> "c-old-END". - * emacs-lisp/edebug.el (edebug-display): Use `edebug-sit-for-seconds' - value instead of a literal constant (1) on more pauses. +2008-03-04 Jason Rumney -2006-03-03 Slawomir Nowaczyk (tiny change) + * nxml/rng-nxml.el (rng-preferred-prefix-alist): Add dublin core + namespaces. - * textmodes/flyspell.el (flyspell-external-point-words): - Be case-sensitive. +2008-03-04 Glenn Morris -2006-03-03 Ryan Yeske + * textmodes/tex-mode.el (tex-cmd-bibtex-args): Add :version and :group. - * net/rcirc.el (rcirc-url-regexp): Match entire url when it starts - with "www". + * ediff-init.el (ediff-clear-fine-diff-vector): Use mapc rather + than mapcar. -2006-03-03 Ken Manheimer +2008-03-03 Stefan Monnier - * allout.el: Restablish intermediate missing comment header to - preserve outline structure. - (allout-beginning-of-current-entry): Skip invisible text. - (allout-open-topic): Fix opening a topic at end-of-buffer. - (allout-minor-mode): Move nearer to allout-mode function. + * emacs-lisp/byte-opt.el (byte-compile-trueconstp) + (byte-compile-nilconstp): Can't use recursion in a defsubst. -2006-03-02 Carsten Dominik + * textmodes/tex-mode.el (latex-mode): Remove % from paragraph-separate + so that M-q can fill comments. + (tex-executable-exists-p, tex-compile): Extend with special syntax for + commands implemented in elisp. + (tex-compile-commands): Add an entry to use doc-view for pdf files. + (tex-format-cmd): New function. + (tex-compile): Use it to let the user specify default arguments. + (tex-cmd-bibtex-args): New var. + (tex-cmd-doc-view): New function. - * textmodes/org.el (org-paste-subtree): Remove (debug) form. +2008-03-03 Juanma Barranquero -2006-03-02 Nick Roberts + * faces.el (face-spec-set): Fix typos in docstring. - * dframe.el (dframe-frame-mode): Don't burp when menu-bar-lines - is nil. +2008-03-03 Dan Nicolaescu - * progmodes/gud.el (gud-speedbar-menu-items): - Use buffer-local-value and add missing :visible keyword. - - * progmodes/gdb-ui.el (gdb-speedbar-refresh): Quieten speedbar-refresh. - -2006-03-01 Carsten Dominik - - * textmodes/reftex-index.el (reftex-index-map): `follow-mouse' - must be `follow-link'. - - * textmodes/reftex-toc.el (reftex-toc-map): Likewise. - - * textmodes/org.el (org-export-as-html): Fix bugs in HTML - formatting: No nested anchors. - (org-all-targets): Fix bug with XEmacs compatibility. - (org-read-date): Add (require 'parse-time). - (org-set-tags): Fix bug with extra inserted space. - (org-export-html-style): Define a style class for targets. - (org-agenda-keymap, org-mouse-map): Add a binding for `follow-link'. - (org-hide-leading-stars): New option. - (org-hide): New face. - (org-set-font-lock-defaults): Allow to hide leading stars. - (org-get-legal-level, org-tr-level): New functions. - (org-odd-levels-only): New option. - (org-level-faces, org-paste-subtree, org-convert-to-odd-levels) - (org-demote, org-promote): Deal with double-star levels. - (org-convert-to-odd-levels): New command. - -2006-03-01 Nick Roberts - - * speedbar.el (speedbar-update-localized-contents): Try to - preserve window-start. - (speedbar-update-directory-contents): Try to preserve window-start - and window-point. - (speedbar-update-special-contents): Don't move back to start of window. - - * progmodes/gdb-ui.el (gdb-speedbar-refresh): Rename from - gdb-speedbar-timer-fn. Use speedbar-refresh instead of - speedbar-timer-fn. - (gdb-var-update-handler, gdb-var-update-handler-1): Use it. - (gdb-speedbar-expand-node): Use speedbar-delete-subblock - instead of gdb-speedbar-timer-fn. - -2006-02-28 Jay Belanger - - * calc/calccomp.el (math-compose-tex-matrix): Add a latex option. - (math-compose-expr): Use latex option when calling - `math-compose-tex-matrix' for latex mode. - -2006-02-28 Nick Roberts - - * speedbar.el: Re-instate comments about developing for speedbar - [this is what info and gdb-ui use even if better methods exist now]. - - * t-mouse.el: New file. - (t-mouse-tty): Use with-temp-buffer. Add more terminal types. - (t-mouse-lispy-buffer-posn-from-coords): Remove. - (t-mouse-make-event-element): Use posn-at-x-y instead. - (t-mouse-make-event): Deal with Fedora Core 3. - (t-mouse-make-event): Don't sink the `stupid text mode menubar'. - (t-mouse-mouse-position-function): New function. Use it instead - of advising mouse-position. - (t-mouse-mode): New minor mode. - (t-mouse-stop, t-mouse-run): Remove. Use t-mouse-mode instead. - -2006-02-27 Glenn Morris - - * calendar/calendar.el (calendar-holidays): Doc fix. - -2006-02-27 Nick Roberts - - * progmodes/gdb-ui.el (gdb-source-window): New variable. - Re-introduce the concept of a source window. - (gdb-get-buffer-create): Rename from gdb-get-create-buffer for - consistency with get-buffer-create. - (def-gdb-auto-update-handler, gdb-info-locals-handler) - (gdb-data-list-register-values-handler) - (gdb-stack-list-locals-handler): Try to preserve window-start as - well as window-point. - (gdb-display-source-buffer): New function (old concept). - (gdb-goto-breakpoint): Use it. - - * progmodes/gud.el (gud-display-line): Use gdb-display-source-buffer - for gdb-ui/gdb-mi (old concept). - -2006-02-27 Carsten Dominik - - * textmodes/reftex-index.el (reftex-index-map): Add `follow-mouse' - binding. - - * textmodes/reftex-toc.el (reftex-toc-map): Add `follow-mouse' binding. - - * textmodes/reftex-sel.el (reftex-select-label-map) - (reftex-select-bib-map): Add `follow-mouse' binding. - -2006-02-26 Luc Teirlinck - - * jka-cmpr-hook.el (jka-compr-compression-info-list) - (jka-compr-mode-alist-additions, jka-compr-load-suffixes): - Give :set functions to provide automatic updating. - Update docstring. Give compiler defvars early in the file - and move the defcustoms to a later spot where all called functions - are defined. - (jka-compr-file-name-handler-entry): Doc fix. - (jka-compr-compression-info-list--internal) - (jka-compr-mode-alist-additions--internal) - (jka-compr-load-suffixes--internal): New variables. - (jka-compr-install): Set the three above variables. - Update `load-file-rep-suffixes' instead of `load-suffixes'. - (jka-compr-update, jka-compr-set): New functions. - (auto-compression-mode): Doc fix. - - * jka-compr.el (jka-compr-uninstall): Replace `mapcar' with `mapc'. - Update `load-file-rep-suffixes' instead of `load-suffixes'. - Use jka-compr-compression-info-list--internal, - jka-compr-mode-alist-additions--internal and - jka-compr-load-suffixes--internal. - - * files.el (load-library): - * loadhist.el (file-loadhist-lookup): - * startup.el (command-line): - * subr.el (locate-library): - * emacs-lisp/autoload.el (update-directory-autoloads): - * emacs-lisp/find-func.el (find-library-suffixes): - Use `get-load-suffixes' instead of `load-suffixes'. + * bindings.el (mode-line-column-line-number-mode-map): New variable. + (standard-mode-line-position): Use it to add a menu for toggling + column number and line number display. - * subr.el (locate-library): - * emacs-lisp/find-func.el (find-library-name): - Use `load-file-rep-suffixes' instead of '(""). +2008-03-03 Stefan Monnier -2006-02-26 Kim F. Storm + * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): + Remove optimization that was working around the form-code-walker bug. - * ido.el (ido-save-history, ido-load-history): Simplify. - Don't use find-file-noselect to avoid interference from other modes. + * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): + Walk into the body of lambdas after byte-compile-unfold-lambda. -2006-02-25 Thien-Thi Nguyen +2008-03-03 Glenn Morris - * progmodes/sh-script.el (sh-mode): Fix bug: Arrange - to use the default shell if filename is not available. - Reported by Giorgos Keramidas. + * emulation/viper-util.el (viper-frame-value): Prefer buffer-local + value, if set, over frame value. -2006-02-25 John Williams (tiny change) + * simple.el (transient-mark-mode): Don't turn on by default. - * progmodes/etags.el (tags-completion-table): Do completion from - all the tables in the current list, as documented in the manual. + * net/tls.el (open-tls-stream): Restore the 2007-11-04 change + accidentally removed by the 2007-12-05 merge from Gnus. -2006-02-24 Alan Mackenzie +2008-03-02 Dan Nicolaescu - * CC Mode Update to 5.31.3. + * progmodes/compile.el (compilation-menu-map): Add menu entries + for useful options. -2006-02-24 Alan Mackenzie +2008-03-01 Dan Nicolaescu + Glenn Morris - * progmodes/cc-mode.el (c-postprocess-file-styles): - Bind inhibit-read-only to t, around the call to - c-remove-any-local-eval-or-mode-variables, so that it works on a - RO file. + * emacs-lisp/bytecomp.el (byte-recompile-directory) + (byte-compile-file, batch-byte-compile, batch-byte-compile-file): + Give a `bytecomp-' prefix to local variables with common names. -2006-02-24 Alan Mackenzie +2008-03-01 Glenn Morris - * progmodes/cc-awk.el: Correct a typo. + * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): Restore + code commented out 2007-11-10. -2006-02-24 Alan Mackenzie + * emulation/edt.el (zmacs-region-stays): Define for compiler once only. - * progmodes/cc-cmds.el, cc-mode.el: Rename c-hungry-backspace to - c-hungry-delete-backwards, at the request of RMS. Leave the old - name as an alias. + * emulation/viper-init.el (viper-cond-compile-for-xemacs-or-emacs): + Delete macro. + * emulation/viper-cmd.el, emulation/viper-ex.el: + * emulation/viper-init.el, emulation/viper-keym.el: + * emulation/viper-mous.el, emulation/viper-util.el: + * emulation/viper.el: + Expand all viper-cond-compile-for-xemacs-or-emacs calls to a + featurep test. -2006-02-24 Alan Mackenzie + Replace obselete frame-local variables with frame-parameters. + * emulation/viper-init.el (viper-replace-overlay-cursor-color) + (viper-insert-state-cursor-color, viper-emacs-state-cursor-color) + (viper-vi-state-cursor-color): Only call make-variable-frame-local + on XEmacs. + * emulation/viper-util.el (viper-frame-value): New macro. + * emulation/viper-cmd.el (viper-insert-state-post-command-sentinel) + (viper-R-state-post-command-sentinel) + (viper-replace-state-post-command-sentinel) + (viper-change-state-to-insert, viper-change-state-to-emacs): + * emulation/viper-util.el (viper-set-cursor-color-according-to-state) + (viper-save-cursor-color, viper-get-saved-cursor-color-in-replace-mode) + (viper-get-saved-cursor-color-in-insert-mode) + (viper-get-saved-cursor-color-in-emacs-mode, viper-set-replace-overlay): + Use viper-frame-value for viper-replace-overlay-cursor-color, + viper-emacs-state-cursor-color, viper-insert-state-cursor-color, and + viper-vi-state-cursor-color values. + + * emulation/viper-cmd.el (zmacs-region-stays): + * emulation/viper-util.el (zmacs-region-stays): No need to define + for compiler. + + * emulation/viper-keym.el (viper-add-keymap): Use mapc rather than + mapcar on Emacs. + + * emulation/viper-mous.el (viper-counting-clicks-p): Only define + on XEmacs. + + * emulation/viper-util.el (viper-set-minibuffer-overlay): Use when + rather than if. + +2008-03-01 Vinicius Jose Latorre + + * whitespace.el: New version 9.3. As the glyph code generation was + fixed, it is possible now to use character code above ?\x1FFFF in the + display table. Fix `whitespace-indentation-regexp' to not include an + extra ending character. Reported by Michael Welsh Duggan + . Added hook actions when buffer is written or killed as + the original whitespace package had. Suggested by Eric Cooper + . Doc fix. + (whitespace-action): New option. + (whitespace-display-mappings): Changed default newline visualization to + display downwards arrow, as the glyph code generation was fixed. + (whitespace-unload-function): Assure that all local whitespace mode is + turned off. + (whitespace-global-modes): Fix type customization. + (whitespace-mode, global-whitespace-mode, whitespace-cleanup-region) + (whitespace-insert-option-mark, whitespace-help-on, whitespace-turn-on) + (whitespace-turn-off, whitespace-color-on, whitespace-display-char-on): + Fix code. + (whitespace-buffer): Command removed. + (whitespace-trailing-regexp, whitespace-mark-x) + (whitespace-display-window, whitespace-action-when-on) + (whitespace-add-local-hook, whitespace-remove-local-hook) + (whitespace-write-file-hook, whitespace-kill-buffer-hook) + (whitespace-action): New funs. + (whitespace-report-list, whitespace-report-text) + (whitespace-report-buffer-name): New consts. + (whitespace-report, whitespace-report-region): New commands. - * progmodes/cc-mode.el: Correct a typo. +2008-03-01 Juanma Barranquero -2006-02-24 Alan Mackenzie + * disp-table.el (make-glyph-code): Don't test the result of + `face-id', which already signals an error for invalid faces. + (glyph-face): Simplify. - * progmodes/cc-defs.el: Update the version number to 5.31.3. + * desktop.el (desktop-read): Set `desktop-dirname' to nil before + running `desktop-not-loaded-hook' to allow modifying it. + Don't show warning message if `desktop-dirname' was modified. -2006-02-24 Alan Mackenzie +2008-03-01 Stefan Monnier - * progmodes/cc-cmds.el (c-electric-brace): Fix clean-up - brace-else-brace (error due to mbeg, mend being undefined). + * diff-mode.el (diff-sanity-check-hunk): Only accept an empty line if + we still expect more lines. -2006-02-24 Alan Mackenzie + * textmodes/fill.el (fill-comment-paragraph): Don't try to do + comment-paragraph filling if the commark doesn't match + comment-start-skip. - * progmodes/cc-mode.el: File Local variables: Solve the problem - where both `mode' and c-file-offsets are specified: `mode' will - overwrite c-f-o's settings: - (c-remove-any-local-eval-or-mode-variables): New function. - (c-postprocess-file-styles): Call the above new function, within - c-tentative-buffer-change, to splat `mode' and `eval' before the - second hack-local-variables. +2008-03-01 Daiki Ueno -2006-02-24 Alan Mackenzie + * international/utf-7.el (utf-7-encode): Never skip the trailing - for + the `imap' variant. - * progmodes/cc-mode.el: - [Supersedes patch to cc-engine.el 2005-12-16T20:07:49Z!monnier@iro.umontreal.ca] - (c-after-change): Protect the match data with save-match-data. - It was getting corrupted by c-after-change-check-<>-operators. +2008-03-01 Jason Rumney - * progmodes/cc-defs.el: [Supersedes patch V1.38]: - (top level): Check for a buggy font-lock-compile-keywords ONLY in - XEmacs. GNU Emacs 22 now has a check which would throw an error here. + * files.el (make-auto-save-file-name): Encode more characters in + non-file buffer names. Use url-encoding. - * progmodes/cc-awk.el (c-awk-after-change): Protect the match data - with save-match-data. It was being corrupted when Font Lock was - not enabled. +2008-03-01 Juanma Barranquero -2006-02-24 Alan Mackenzie + * net/net-utils.el (ftp-program): Fix typo in docstring. + (ifconfig-program-options, netstat-program-options) + (arp-program-options, route-program-options, nslookup-program-options) + (ftp-program-options, smbclient-program-options) + (dns-lookup-program-options, arp, route): Doc fixes. - * progmodes/cc-langs.el (c-mode-menu): Add menu items for Electric - Mode and Subword Mode. + * progmodes/gdb-ui.el (gdb-pc-address, gdb-source-file-list) + (gdb-cpp-define-alist-program, gdb-mouse-jump, gdb-get-buffer-create) + (gdb-set-gud-minor-mode-existing-buffers-1, gdb-debug-log): + Fix typos in docstrings. + (gdb-pending-triggers): Reflow docstring. + (gdb, gdb-init-1): Fix typos in docstrings of gud-def definitions. - * progmodes/cc-engine.el (c-beginning-of-statment-1): Distinguish - real labels ("case 1:" or "foo:") from non-labels ("public:"). - (c-forward-objc-directive): Replace c-forward-token-2 with crude - coding; c-f-t-2 doesn't move over a token at EOB. +2008-03-01 Alan Mackenzie - * progmodes/cc-defs.el (c-version): Update version number to 5.31.2. + * progmodes/cc-mode.el (c-neutralize-syntax-in-CPP): Fix a bug on + typing "#" at EOB. - * progmodes/cc-cmds.el, cc-mode.el, cc-engine.el - (c-update-modeline): Concatenate the minor mode indicators - directly onto mode-name, removing c-submode-indicators. - Sometimes, c-s-i got separated from the mode name on the mode line. +2008-03-01 Juanma Barranquero - * progmodes/cc-cmds.el (c-electric-brace, c-electric-semi&comma) - (c-electric-colon): Correct doc-strings: "/ln" -> "/la". + * emulation/cua-base.el (cua-remap-control-z): Fix typo in docstring. -2006-02-24 Martin Stjernholm +2008-02-29 Kim F. Storm - * progmodes/cc-langs.el (c-make-init-lang-vars-fun): Improve the - error message when there's an evaluation error to show whether - it's loaded from source or not. - (c-filter-ops): Make it available at runtime too to work when - `c-make-init-lang-vars-fun' needs to evaluate from source. + * emulation/cua-base.el (cua-remap-control-v) + (cua-remap-control-z): New defcustoms. + (cua-mode): Add them to set-after property. + (cua--init-keymaps): Use them. + Add C-x/C-c home, end, next, and prior to cua--prefix-repeat-keymap. -2006-02-24 Juanma Barranquero + * help.el (view-emacs-todo): Rename from view-todo. + (describe-gnu-project): Rename from describe-project. Users changed. + (view-help-file): New helper function. + (describe-distribution, describe-copying, describe-gnu-project) + (view-todo, view-order-manuals, view-emacs-problems): Use it. + (view-emacs-debugging, view-external-packages): New commands. + (help-map): Move describe-distribution to C-h C-o (ordering). + Move view-emacs-problems to C-h C-p (problems). + Bind view-emacs-debugging to C-h C-d (debugging). + Bind view-external-packages to C-h C-e (extras). + (help-for-help-internal): Cleanup and align descriptions. + Remove command names to reduce clutter. - * help.el (help): Revert last part of 2006-02-23 change (deletion - of the `provide' call). +2008-02-29 Nick Roberts -2006-02-23 Juri Linkov + * vc.el (vc-set-mode-line-busy-indicator): Use shorter message + and quieter face (not a warning). - * compare-w.el (compare-windows-highlight): Add new value - `persistent' and change :type from `boolean' to `choice'. - (compare-windows-overlays1, compare-windows-overlays2): - New internal variables. - (compare-windows-highlight): If compare-windows-highlight is - `persistent', add current overlays to compare-windows-overlays[12] - instead of adding compare-windows-dehighlight to pre-command-hook. - (compare-windows-dehighlight): Delete all overlays from - compare-windows-overlays[12]. +2008-02-29 Dan Nicolaescu - * info.el (Info-search): Don't bind search-spaces-regexp to - Info-search-whitespace-regexp in non-regexp isearch mode. + * vc.el (vc-status-crt-marked): New variable. + (vc-status-mode): Make it local. + (vc-status-refresh): Use it to save the marked files. + (vc-update-vc-status-buffer): Use it to restore the marked files. -2006-02-23 Stefan Monnier + * vc-svn.el (vc-svn-after-dir-status): + * vc-hg.el (vc-hg-after-dir-status): Clean up the temporary buffer. - * help.el (describe-mode): Pass `mode-name' to format-mode-line. +2008-02-29 Glenn Morris -2006-02-23 Juanma Barranquero + * allout.el (allout-topic-encryption-bullet) + (allout-passphrase-verifier-handling, allout-passphrase-hint-handling) + (allout-encrypt-unencrypted-on-saves): Change defcustom :version + from 22.0 to 22.1. - * textmodes/org.el (org-xemacs-p) - (org-export-html-show-new-buffer, org-table-may-need-update) - (org-insert-item, org-mhe-get-message-real-folder) - (org-mhe-get-message-folder-from-index) - (org-mhe-get-message-folder, org-mhe-get-message-num) - (org-mhe-get-header, org-make-org-heading-search-string) - (org-make-org-heading-camel, org-table-sort-lines) - (org-format-org-table-html, org-format-table-table-html): - Fix typos in docstrings. + * net/imap.el (imap-ping-server): + * net/tls.el (tls-checktrust, tls-untrusted, tls-hostmismatch): + Change defcustom :version from 23.0 to 23.1. -2006-02-23 Carsten Dominik - - * textmodes/org.el (org-cleaned-string-for-export) - (org-solidify-link-text): New function. - (org-add-hook): Use `add-local-hook' instead of `make-local-hook' for - XEmacs, just to silence the compiler. - (org-export-as-ascii, org-export-as-html-and-open): - Use `org-cleaned-string-for-export' and create internal links. - (org-follow-mhe-link): Require mh-e, use folder. - -2006-02-23 Nick Roberts - - * progmodes/gud.el (gud-speedbar-buttons): Use shadow face properly. - - * progmodes/gdb-ui.el (gdb-debug-ring-max): Rename from - gdb-debug-log-length. - (gdb-debug-ring): Rename from gdb-debug-log-ring. Don't make - it a real ring but... - (gud-gdba-marker-filter): ...make it work like mark-ring. - (gdb-enable-debug): Rename from gdb-enable-debug-log. - (gdb-mouse-jump): New function. Add bindings. - -2006-02-23 Nick Roberts - - * progmodes/gdb-ui.el (gdb-signalled): New variable and function. - (gdb-debug-log-ring): Rename from gdb-debug-log and make a ring. - (gdb-send, gdb-send-item, gud-gdba-marker-filter): Use it. - (gdb-debug-log-length): Customize it's length. - (gud-watch, gdb-var-create-handler): Display function::var format - but don't use to create variable object. - (gdb-var-create-handler): Use message-box in place of message. - (gdb-stopped): Call gdb-exited if signalled. - -2006-02-22 Carsten Dominik - - * textmodes/reftex.el (reftex-locate-file): Remove duplicate function. - - * textmodes/reftex-vars.el (reftex-try-all-extensions): New option. - - * textmodes/reftex.el (reftex-locate-file): Search all extensions - if `reftex-try-all-extensions' is set. - - * textmodes/reftex-dcr.el (reftex-view-crossref): New argument to - fail silently when there is no valid argument at point. - (reftex-view-crossref-when-idle): Call `reftex-view-crossref' with - `fail-silently' argument. From a patch by David Reiter. - - * textmodes/org.el (org-mark-ring-push, org-mark-ring-goto): - New commands. - (org-mark-ring): New variable. - (org-mark-ring-length): New option. - (org-open-at-point, org-goto, org-open-file): Push old position - onto the mark ring. - (org-add-hook): New function. - (org-export-table-remove-special-lines): New option. - (org-skip-comments, org-format-org-table-html): Respect new - option `org-export-table-remove-special-lines'. - (org-open-file): Allow special command configuration for - directory link. - (org-file-apps): Fix bugs in customize type, added setting - for directories. - (org-activate-tags, org-format-agenda-item, org-complete) - (org-get-tags-at, org-scan-tags, org-make-tags-matcher) - (org-get-tags, org-get-buffer-tags, org-open-at-point) - (org-link-search, org-make-org-heading-search-string) - (org-make-org-heading-camel): Allow @ and 0-9 as tags characters. - (org-radio-targets, org-file-link-context-use-camel-case) - (org-activate-camels): New options. - (org-update-radio-target-regexp, org-all-targets) - (org-make-target-link-regexp, org-activate-target-links): - New functions. - (org-make-org-heading-search-string): New function. - (org-store-link, org-insert-link): Use new option - `org-file-link-context-use-camel-case'. - (org-activate-camels): Use new option `org-activate-camels'. - (org-link-regexp): Add mhe prefix. - (org-open-at-point, org-store-link): Support for mhe links. - (org-mhe-get-message-real-folder, org-mhe-get-message-folder) - (org-mhe-get-message-folder-from-index, org-mhe-get-message-num) - (org-mhe-get-header, org-follow-mhe-link): New functions. - (org-remove-angle-brackets, org-add-angle-brackets): - New functions. - (org-bracket-link-regexp): New constant. - (org-read-date): Fix bug that was rejecting all typed dates. - (org-link-search): Make hierarchy above visible after a match. - (org-follow-bbdb-link): Inhibit electric mode for BBDB. - (org-store-link): Fix bug with link creation when cursor is in - an empty line. - (org-open-at-point): Fix bug with matching a link. - Fixed buggy argument sequence in call to `org-view-tags'. - (org-compile-prefix-format): Set `org-prefix-has-tag'. - (org-prefix-has-tag): New variable. - (org-format-agenda-item): Remove tags from headline - if appropriate. - (org-agenda-remove-tags-when-in-prefix): New option. +2008-02-29 Juanma Barranquero -2006-02-21 Michael Kifer + * desktop.el (desktop-save): Save the buffer name if the + uniquified base name is empty. - * ediff-diff.el (ediff-setup-diff-regions, ediff-setup-diff-regions3): - Fix the regular expressions. +2008-02-29 Nick Roberts -2006-02-21 Richard M. Stallman + * progmodes/gdb-ui.el (gdb-info-stack-custom): Apply function-name-face + correctly when user has "set print address off". - * progmodes/sh-script.el (sh-mode): Set shell type based on file name - if there's no other specific basis. +2008-02-28 Juanma Barranquero - * emacs-lisp/unsafep.el (unsafep): Don't treat &rest or &optional - as variables at all. - (unsafep-variable): Rename arg; doc fix. + * cus-edit.el (custom-mode, custom-mode-hook): Use 23.1 as + version number of the next major Emacs release, not 23.0. - * abbrevlist.el (list-one-abbrev-table): Add autoload. + * longlines.el (longlines-unload-function): New function. - * calendar/appt.el (diary-selective-display): Add defvar. +2008-02-28 Juri Linkov - * sort.el (sort-columns): Use Posix arg syntax for `sort'. + * startup.el (normal-splash-screen): Add argument `concise'. + Remove unused binding `prev-buffer'. Let-bind `splash-buffer' + to the created buffer. If `concise' is non-nil, call + `display-buffer', otherwise `switch-to-buffer'. Doc fix. + (display-startup-screen): Add argument `concise' to the call to + `normal-splash-screen'. - * isearch.el (search-whitespace-regexp): Fix custom type. +2008-02-28 Kim F. Storm - * help.el (describe-key-briefly): Compute interactive args - in same was as before previous change. + * startup.el (startup-echo-area-message): Check for about-emacs. - * files.el (enable-local-variables): Doc fix. +2008-02-28 Juri Linkov -2006-02-21 Kim F. Storm + * startup.el: Always add initial message to *scratch* buffer if + `initial-scratch-message' is non-nil regardless of the value of + `inhibit-startup-screen'. + (inhibit-startup-screen, initial-scratch-message): Doc fix. + (command-line-1): Move code that inserts `initial-scratch-message' + up before the if-form that checks for `inhibit-startup-screen'. + Suggested by Jonathan Rockway . - * fringe.el: Cleanup as file is now pre-loaded. - (fringe-bitmaps): Initialize unconditionally. - (fringe-mode, set-fringe-style): Remove autoload cookies. +2008-02-28 Juri Linkov -2006-02-21 Giorgos Keramidas (tiny change) + * cus-edit.el (custom-mode-map, custom-mode-link-map): + Rename `custom-mode' to `Custom-mode' in docstrings. + (custom-buffer-create-internal, customize-browse): + Rename `custom-mode' to `Custom-mode'. + (custom-mode-hook): Rename to `Custom-mode-hook'. + (Custom-mode-hook): Renamed from `custom-mode-hook'. + (custom-mode): Rename to `Custom-mode'. + (Custom-mode): Renamed from `custom-mode'. Doc fix. + (custom-mode): Add backward-compatible non-interactive variant of + `Custom-mode' that simply calls `Custom-mode'. Mark it obsoleted. + (custom-mode-hook): Mark it as obsolete alias of `Custom-mode-hook'. - * fringe.el (fringe-bitmaps): Rename `horisontal-bar' to - `horizontal-bar'. - (fringe-cursor-alist): Use `horizontal-bar'. + * info-look.el: Rename `custom-mode' to `Custom-mode'. -2006-02-20 Kim F. Storm + * emulation/viper.el (viper-emacs-state-mode-list): + Rename `custom-mode' to `Custom-mode'. - * fringe.el (fringe-bitmaps): Update to new bitmap names. - (fringe-indicator-alist, fringe-cursor-alist): Initialize. + * menu-bar.el (menu-bar-search-menu, menu-bar-replace-menu): + Capitalize "Tagged Files". + (minibuffer-local-map): Add menu items for next/previous + history elements and isearch history forward/backward. - * loadup.el: Load "fringe" on window systems. + * progmodes/hideshow.el (hs-minor-mode-menu): Compare + `hs-isearch-open' with t instead of `comment' in :selected + for "Code and Comment blocks" menu item. -2006-02-20 Nick Roberts +2008-02-28 Stefan Monnier - * progmodes/gud.el (gud-speedbar-buttons): Use shadow face for all - out of scope components. + * uniquify.el (uniquify-buffer-base-name): Undo last change. + Should be done in desktop.el instead. - * progmodes/gdb-ui.el (gdb-speedbar-auto-raise): Don't enable by - default. +2008-02-28 Glenn Morris -2006-02-20 Chong Yidong + * autoinsert.el (auto-insert-alist): Update to FDL 1.2. - * custom.el (customize-mark-to-save, customize-mark-as-set): - Load the symbol first. + * emacs-lisp/byte-run.el (make-obsolete): Doc fix. -2006-02-20 Juanma Barranquero + * mail/emacsbug.el: Remove leading `*' from defcustom doc-strings. + (Info-menu, Info-goto-node): Remove declarations. + (report-emacs-bug-info): Use info rather than Info-goto-node. - * buff-menu.el (list-buffers-noselect): Turn also "\n" into a - strech spec so it doesn't display as "^J" on the header line - when `Buffer-menu-use-header-line' is t. + * progmodes/idlwave.el (Info-goto-node): Remove declaration. + (idlwave-convert-xml-system-routine-info): Don't require xml. + (idlwave-show-commentary, idlwave-shell-show-commentary): + Don't require finder. + (idlwave-info): Don't require info. Use info rather than + Info-goto-node. -2006-02-20 Nick Roberts + * textmodes/org.el (Info-goto-node): Remove declaration. + (org-info): Use info rather than Info-goto-node. - * speedbar.el (speedbar-make-button): Keep text properties - of string arguments if desired. + * textmodes/reftex.el (reftex-show-commentary): Don't require finder. + (reftex-info): Don't require info. Use info rather than Info-goto-node. - * progmodes/gud.el (gud-speedbar-buttons): Fontify watch - expessions. +2008-02-28 Dan Nicolaescu - * progmodes/gdb-ui.el (gdb-speedbar-expand-node): Force update - of speedbar. + * progmodes/hideshow.el (hs-minor-mode-menu): Add some options to + the menu. -2006-02-19 Ryan Yeske + * vc.el (vc-deduce-fileset, vc-next-action, vc-start-entry) + (vc-finish-logentry): Check for vc-status-mode, not only for + vc-dired-mode. - * ffap.el (ffap-read-file-or-url): Bind `completion-ignore-case' - to value of `read-file-name-completion-ignore-case'. +2008-02-28 Kenichi Handa -2006-02-19 Chong Yidong + * isearch.el (isearch-printing-char): Don't check + keyboard-coding-system. + Call isearch-process-search-multibyte-characters only when + current-input-method is non-nil. - * custom.el (customize-mark-as-set): Push to `user' theme. +2008-02-27 Kim F. Storm - * cus-edit.el (custom-save-variables): Allow unthemed values. - (customize-set-variable): Push setting to `user' theme. + * disp-table.el (make-glyph-code): Encode as cons if face id > 63. + (glyph-char, glyph-face): Handle cons encoding. -2006-02-19 Nick Roberts +2008-02-27 Juanma Barranquero - * progmodes/gud.el: Don't require font-lock as it's now - automatically loaded. - (gud-speedbar-buttons): Replace gdb-var-changed with - gdb-force-update. + * uniquify.el (uniquify-buffer-base-name): If the base name is an + empty string, return nil to allow the caller to default to the + buffer name. Reported by Martin Fischer . - * progmodes/gdb-ui.el (gdb-force-update): Rename from - gdb-var-changed. - (gdb-post-prompt): Use it. - (gdb-var-create-handler, gdb-var-evaluate-expression-handler) - (gdb-var-update-handler, gdb-var-delete) - (gdb-speedbar-expand-node, gdb-var-list-children-handler-1) - (gdb-var-update-handler-1): Don't set gdb-var-changed, just set - gdb-force-update in gdb-post-prompt. - (gdb-reset): Clear watch expressions from speedbar when quitting. + * tool-bar.el (tool-bar-setup): Doc fix. -2006-02-19 Michael Kifer + * mail/supercite.el (sc-describe): + Fix typos in obsolescence declaration. - * emulation/viper-cmd.el (viper-insert-state-post-command-sentinel) - (viper-change-state-to-vi, viper-change-state-to-emacs): - Make aware of cursor coloring in the Emacs state. - (viper-special-read-and-insert-char): Use read-char-exclusive. - (viper-minibuffer-trim-tail): Workaround for fields in minibuffer. +2008-02-27 Glenn Morris - * emulation/viper-init.el (viper-emacs-state-cursor-color): - New variable. + * autoinsert.el (auto-insert-alist): Change permission text to + match FSF's GPLv3 form. - * emulation/viper-util.el (viper-save-cursor-color) - (viper-get-saved-cursor-color-in-replace-mode) - (viper-get-saved-cursor-color-in-insert-mode) - (viper-restore-cursor-color): Make aware of the cursor color - in Emacs state. - (viper-get-saved-cursor-color-in-emacs-mode): New function. + * mail/supercite.el (sc-cite-original): Doc fix. + (sc-version): Make obsolete. + (sc-describe): Show the SC info page. Make obsolete. - * ediff-diff.el (ediff-ignore-case, ediff-ignore-case-option) - (ediff-ignore-case-option3, ediff-actual-diff-options) - (ediff-actual-diff3-options): New variables to control case sensitivity. - (ediff-make-diff2-buffer, ediff-setup-fine-diff-regions) - (ediff-setup-diff-regions3): Make aware of case-sensitivity. - (ediff-toggle-ignore-case): New function. - (ediff-extract-diffs, ediff-extract-diffs3): Preserve point in buffers. +2008-02-26 Stefan Monnier - * ediff-help.el (ediff-long-help-message-narrow2) - (ediff-long-help-message-compare2, ediff-long-help-message-compare3) - (ediff-long-help-message-word-mode): Add ignore-case command. - (ediff-help-for-quick-help): Add ignore-case command. + * simple.el (set-mark-command): Deactivate mark on second C-SPC C-SPC + when using transient-mark-mode. + (default-indicate-unused-lines): Remove unused var. - * ediff-merg.el: Move provide to the end. +2008-02-26 Jan Djärv - * ediff-ptch.el: Move provide to the end. + * progmodes/grep.el (grep-mode-tool-bar-map): Change place on next + and previous. - * ediff-wind.el: Move provide to the end. + * progmodes/compile.el (compilation-mode-tool-bar-map): The same. - * ediff-mult.el: Move provide to the end. - (ediff-set-meta-overlay): Enable follow-link. +2008-02-26 Glenn Morris - * ediff.el: Move provide to the end. - Break recursive load cycle in eval-when-compile. - (ediff-patch-buffer): Better heuristics. + * net/net-utils.el (top-level): Don't require comint when compiling. + (nslookup-font-lock-keywords): Don't require font-lock. + Use font-lock faces rather than variables. + (nslookup, ftp, smbclient, network-service-connection): + Don't require comint. + (comint-prompt-regexp, comint-input-autoexpand) + (comint-input-ring): Declare for compiler. + (comint-mode, ffap-string-at-point, comint-exec): Autoload. + (dns-lookup-host): Don't require ffap. Remove `with-no-warnings'. - * ediff-util.el: Move provide to the end. - Break recursive load cycle in eval-when-compile. - (ediff-setup-keymap): Add binding for #c. Replace some defsubsts with - defuns. - (ediff-submit-report): Pass the values of ediff-diff3-program, - ediff-diff3-options. - -2006-02-19 Juanma Barranquero - - * help-fns.el (help-do-arg-highlight): Recognize also ARG- followed by - the opening bracket of the following bracketing pairs: {}, [], (), <>, - `' (for example, in the docstring of `windmove-default-keybindings'). - -2006-02-19 Nick Roberts - - * progmodes/gud.el (gud-speedbar-buttons): Update properly for - shadow face. Don't provide binding to edit variable when it is - out of scope. - - * progmodes/gdb-ui.el (gdb-var-evaluate-expression-handler) - (gdb-var-update-handler): Detect out of scope variables with pre - GDB 6.4 too. - (gdb-post-prompt): Revert change from 2006-02-17 (force update). - Reset status of variable objects to nil in update handlers. - (gdb-var-update-handler-1): Detect when a variable object comes - in scope. setcar on var changes gdb-var-list directly. - -2006-02-17 Juri Linkov - - * ffap.el (ffap) : Add explicit face declaration. - (ffap-highlight): Use face `ffap' directly instead of checking - for its existence. - - * icomplete.el (icomplete-get-keys): Use `t' for the second arg - `visible-ok' of `other-buffer' to find the right original buffer. - - * info.el (Info-search): Skip `Local Variables' node. - -2006-02-17 Juri Linkov - - * info.el (Info-find-file): Check for symbols `apropos', `history', - `toc' in the input filename, and return these symbols as is. - (Info-find-node-2): Set Info-current-file to symbols `apropos', - `history', `toc' instead of strings. - (Info-set-mode-line): For non-string Info-current-file use the - symbol's name inside **. - (Info-isearch-push-state): Add quote before Info-current-file and - Info-current-node. - (Info-isearch-pop-state): Use `equal' instead of `string='. - (Info-extract-pointer, Info-following-node-name): Use - `match-string-no-properties' instead of `match-string'. - (Info-up): Check `old-file' for `stringp'. - (Info-history): Use `equal' instead of `string-equal'. - Check `file' for `stringp'. - (Info-history): Use symbol `history' instead of string as first arg - of `Info-find-node'. - (Info-toc): Check `Info-current-file' for `stringp'. Use symbol - `toc' instead of string. - (Info-extract-menu-node-name): Use `buffer-substring-no-properties' - instead of `buffer-substring', and `match-string-no-properties' - instead of `match-string'. - (Info-index-nodes): Check for symbols `apropos', `history', `toc' - instead of strings. - (info-apropos): Use `Info-find-node' instead of `Info-goto-node'. - Use symbol `apropos' instead of string. - (Info-copy-current-node-name): Check `Info-current-file' for - `stringp' and construct a command with `Info-find-node' from it. - (Info-fontify-node): Use `match-string-no-properties' instead of - `match-string' and check file names for `stringp'. - (Info-desktop-buffer-misc-data): Check for symbols `apropos', - `history', `toc' instead of strings. - -2006-02-17 Chong Yidong - - * files.el: Rearrange functions and variables in the file local - variables section. - -2006-02-17 Reiner Steib - - * files.el: Add truncate-lines, ispell-check-comments and - ispell-local-dictionary as safe local variables. - -2006-02-18 Nick Roberts - - * progmodes/gud.el (gud-speedbar-buttons): Use shadow face for - out of scope variables. - (gud-speedbar-buttons): Use unless. - - * progmodes/gdb-ui.el (gdb-var-list): Update doc string. - (gdb-init-1, gdb-var-changed): Set gdb-var-changed to t initially. - (gdb-show-changed-values): Also use for out of scope variables. - (gdb-var-update-handler-1): Note if variable goes out of scope. - -2006-02-17 Ryan Yeske - - * net/rcirc.el (rcirc-connect): Make all arguments optional, and - default to global variable values for unsupplied args. - (rcirc-get-buffer-create): Fix bug with setting the target. - (rcirc-any-buffer): Rename from rcirc-get-any-buffer, and include - test for rcirc-always-use-server-buffer-flag here. - (rcirc-response-formats): Add %N, which is a facified nick. %n - uses the default face. Change the ACTION format string. If the - "nick" is the server, don't print anything for that field. - Comment fixes. - (rcirc-target-buffer): Don't test - rcirc-always-use-server-buffer-flag here. - (rcirc-print): Squeeze extra spaces out of the text before message. - (rcirc-put-nick-channel): Strip potential "@" char from nick - before adding them to nick table. - (rcirc-url-regexp): Improve to match address like "foo.com". - -2006-02-17 Eli Zaretskii - - * allout.el (allout-hidden-p): Move this defsubst before - allout-overlay-interior-modification-handler, where it is first - used. - -2006-02-17 Ken Manheimer - - * allout.el: Use allout invisible-text overlays instead of - selective display for concealed text. Also, lots of general - cleanup, and improved compatibility code. - - (allout-version): Incremented, corrected, revised, and refined - module commentary. - - (provide 'allout): Moved to the bottom, added a require of overlay. - - (allout-encrypt-unencrypted-on-saves): Defaults to t instead of - `except-current'. - (allout-write-file-hook-handler): Minimize delay. - (count-trailing-whitespace-region): New function so - auto-encryption of current topic can resituate cursor exactly. - PGP/GPG encryption trims trailing whitespace from lines, which - must be accounted for across encryption then decryption. - - (allout-command-prefix): Now defaults to "\C-c" rather than - just plain "\C-c", to avoid intruding on user's keybinding space. - - (allout-toggle-current-subtree-encryption): Pass along fetch-pass - parameter, so user request to provide a new password is done. - - (allout-outside-normal-auto-fill-function, allout-auto-fill): - Refined mechanism for auto-filling behavior while in allout mode. - - (allout-mode): Explicitly specify the mode map in the docstring. - Clarify provision for various write-file hook var names. - Adjusted for invisible-text overlays instead of selective-display. - - (allout-depth): Really return 0 if not within any topic. This - rectifies `allout-beginning-of-level' and sequence numbering - errors that occur when cutting and pasting numbered topics. - Changed from a in-line subst to a regular function, as well. - - (allout-pre-next-prefix): Renamed from allout-pre-next-preface. - - (allout-end-of-subtree, allout-end-of-subtree) - (allout-end-of-entry, allout-end-of-current-heading) - (allout-next-visible-heading, allout-open-topic, allout-show-entry) - (allout-show-children, allout-show-to-offshoot) - (allout-hide-current-entry, allout-show-current-entry): Rectified - handling of trailing blank lines between items. - - (allout-line-boundary-regexp, set-allout-regexp, allout-depth) - (allout-current-depth, allout-unprotected, allout-hidden-p) - (allout-on-current-heading-p, allout-listify-exposed) - (allout-chart-subtree, allout-goto-prefix) - (allout-back-to-current-heading, allout-get-body-text) - (allout-snug-back, allout-flag-current-subtree, allout-show-all) - (allout-hide-region-body, allout-toggle-subtree-encryption) - (allout-encrypt-string, allout-encrypted-key-info) - (allout-next-topic-pending-encryption, allout-encrypt-decrypted) - (allout-file-vars-section-data): Adjusted for use with - invisible-text overlays instead of selective-display. - - (allout-kill-line, allout-kill-topic, allout-yank-processing): - Reworked for use with invisible text overlays. - - (allout-current-topic-collapsed-p): New function. - - (allout-hide-current-subtree): Use allout-current-topic-collapsed-p - to know when to close the containing topic. - - (allout-pre-command-business, allout-post-command-business): - Simplify undo-batching and dynamic isearch exposure. - - (allout-set-overlay-category): New for invisible-text overlays. - Sets properties of allout-overlay-category, used by - allout-flag-region to set invisible-text overlay properties. - (allout-get-invisibility-overlay): Get the first qualifying - invisibility overlay, so we can find the extent of it. - (allout-back-to-visible-text): Get to just before the beginnining - of the current invisibility overlay, if any. - - (allout-overlay-insert-in-front-handler) - (allout-overlay-interior-modification-handler) - (allout-before-change-handler, allout-isearch-end-handler): New - functions to handle extraordinary actions affecting concealed - text. - - (allout-flag-region): Use overlays instead of selective-display - for invisible text - by inheritence from the properties of - allout-overlay-category in mainline Emacs, and applied - property-by-property in XEmacs, some recent versions of which - don't inherit the properties from the category. Provisions to - respond to concealed-text edits simplified drastically. - - (allout-isearch-rectification, allout-isearch-was-font-lock) - (allout-isearch-expose, allout-enwrap-isearch) - (allout-isearch-abort, allout-pre-was-isearching) - (allout-isearch-prior-pos, allout-isearch-did-quit) - (allout-isearch-dynamic-expose) - (allout-hide-current-entry-completely): Functions deleted. - - (allout-undo-aggregation): Explicit undo aggregation no longer - necessary due to transition away from selective-display. - - (set-allout-regexp, allout-up-current-level) - (allout-next-visible-heading, allout-forward-current-level) - (allout-open-topic, allout-reindent-body, allout-rebullet-topic) - (allout-kill-line, allout-yank-processing, allout-show-children) - (allout-expose-topic, allout-old-expose-topic) - (allout-listify-exposed, allout-insert-latex-header) - (allout-toggle-subtree-encryption, allout-encrypt-string) - (remove-from-invisibility-spec, allout-hide-current-subtree): - Ditched unused variables. - -2006-02-17 Agustin Martin - - * textmodes/ispell.el (ispell-change-dictionary): Call - ispell-buffer-local-dict instead of - ispell-accept-buffer-local-defs. - (ispell-local-dictionary-alist): Accept as valid any coding-system - supported by Emacs. - (ispell-dictionary-alist-3): Esperanto dictionary's coding system - changed to iso-8859-3. - -2006-02-17 Nick Roberts - - * speedbar.el (speedbar-frame-width): Make an inline function - instead of a macro. Use frame-width. - (speedbar-try-completion, speedbar-update-contents) - (speedbar-timer-fn): Use consp. - (speedbar-update-localized-contents): Try to preserve point. - - * progmodes/gdb-ui.el (gdba, gdb-var-list): Improve doc strings. - (menu): Re-order menu items. - (gdb-var-update-regexp, gdb-var-update-regexp-1): Match "in_scope" - field. - (gdb-var-update-handler-1): Use it for GDB 6.4+. - (gdb-post-prompt): Speed things by not forcing update. - -2006-02-16 Chong Yidong - - * wid-edit.el (widget-button-click): For mouse-1, cancel button - press and perform default action if we get a mouse movement event. - -2006-02-16 Juanma Barranquero - - * calendar/icalendar.el (icalendar--get-event-property) - (icalendar--get-event-property-attributes): Fix typos in - docstrings. - - * progmodes/flymake.el (flymake-fix-file-name): Fix typo in - docstring. + * ibuffer.el (ibuffer-do-toggle-read-only): Don't use `iff' in + doc-string. -2006-02-15 Juanma Barranquero +2008-02-26 Stefan Monnier - * bs.el (bs-mode): Use `buffer-disable-undo'. - (bs--get-file-name): Simplify. - (bs-show-in-buffer): Mark the buffer as not modified. + * doc-view.el (doc-view-current-page): Add a `win' argument. -2006-02-14 Chong Yidong +2008-02-25 Stefan Monnier - * wid-edit.el (widget-keymap): Bind down-mouse-1 to - widget-button-click. + * doc-view.el (doc-view-conversion-buffer): Give it an internal name. + Demote it to plain defvar. + (doc-view-conversion-refresh-interval): Reduce interval. + (doc-view-goto-page): Allow moving to pages not yet rendered. + (doc-view-goto-page): Construct a file name rather than extracting it + from doc-view-current-files. + (doc-view-kill-proc): Ignore errors from kill-process. + (doc-view-pdf/ps->png-sentinel): Die gracefully if the buffer is dead. + (doc-view-insert-image): Use appropriate text if the page hasn't been + rendered yet. Adjust scrolling so the text is displayed. + (doc-view-display): Detect not just that a page is available, but also + that it wasn't available before, so as to avoid refreshing all pages + repeatedly. + (doc-view-mode): Make doc-view-cache-directory if needed. - * cus-edit.el (custom-mode-map): Remove mouse-1 binding. - (custom-mode): Update docstring. +2008-02-25 Roland Winkler - * cus-theme.el (custom-new-theme-mode-map): Remove mouse-1 - binding. + * ibuffer.el (ibuffer-do-toggle-read-only): New optional arg as in + toggle-read-only. - * files.el (hack-local-variables-confirm): Allow scrolling if the - file variable list is too long. Kill temp buffer after use. + * textmodes/bibtex.el (bibtex-format-entry): Handle error message + refering to a missing required field with the OPT prefix. + Make unwindform more robust. -2006-02-15 Nick Roberts + * textmodes/bibtex.el: Remove support for hideshow minor mode as + it duplicates the bibtex support in progmodes/hideshow.el. + * progmodes/hideshow.el (hs-special-modes-alist): Allow bibtex + entries that do not start at the beginning of a line. - * progmodes/gud.el (gdb): Improve doc string. - (gdb-script-font-lock-keywords): Expand allowed character set. +2008-02-25 Chong Yidong - * progmodes/gdb-ui.el (gdb-use-separate-io-buffer) - (gdb-display-separate-io-buffer, gdb-frame-separate-io-buffer) - (gdb-separate-io-interrupt, gdb-separate-io-quit) - (gdb-separate-io-stop, gdb-separate-io-eof): - Rename from gdb-inferior-* to gdb-separate-*. - (gdb-set-gud-minor-mode-existing-buffers-1): Improve doc string. + * files.el (shell-quote-wildcard-pattern): Quote ' and " as well. -2006-02-14 Jay Belanger +2008-02-25 Robert J. Chassell - * calc/calc-arith.el (math-check-known-scalarp): Make sure - expression is a symbol before checking that it is bound. + * help-fns.el (describe-variable): Add phrases about + initialization file with and without customization; + use new button type help-info-variable. - * calc/calcalg2.el (math-integrate-by-parts): Do a more careful - test to see if equation can be solved. + * help-mode.el (help-info-variable): + New button able to read Info files for help-fns.el. -2006-02-14 Chong Yidong +2008-02-25 Jan Djärv - * wid-edit.el (widget-button-click): Use :pressed-face property - for overlay face, if it exists. + * progmodes/grep.el (grep-mode-tool-bar-map): New variable. + (grep-mode): Use grep-mode-tool-bar-map. - * cus-edit.el (custom-manual, custom-add-see-also) - (custom-add-parent-links, custom-group-link): Add :pressed-face - property to links. + * progmodes/compile.el (tool-bar): Require tool-bar. + (compilation-mode-tool-bar-map): New variable. + (compilation-mode): Use compilation-mode-tool-bar-map. - * files.el (hack-local-variables): Remove ignored variables before - checking if any variables need setting. + * term/x-win.el (x-gtk-stock-map): Add cancel. Remove extensions. -2006-02-14 Jan Dj,Ad(Brv +2008-02-25 Glenn Morris - * cus-start.el (all): Add x-gtk-whole-detached-tool-bar. + * vc-sccs.el (vc-sccs-diff): Fix setting of oldvers and newvers. -2006-02-14 Juanma Barranquero +2008-02-25 Stefan Monnier - * help.el (where-is): Fix message for remapped commands. + * diff-mode.el (diff-file-junk-re): New const. + (diff-beginning-of-file-and-junk): Use it. + (diff-file-kill): Make sure we were really inside a file diff. - * mwheel.el (mouse-wheel-click-event, mouse-wheel-mode): - Fix typos in docstrings. + * diff-mode.el: Make it more robust in the presence of empty context + lines in unified hunks. + (diff-valid-unified-empty-line): New var. + (diff-unified->context, diff-sanity-check-hunk): Obey it. + (diff-end-of-hunk): Obey it. New arg `donttrustheader'. + (diff-fixup-modifs, diff-post-command-hook): Use this new arg. + (diff-hunk-header-re-unified): New const. + (diff-font-lock-keywords, diff-hunk-header-re, diff-split-hunk) + (diff-fixup-modifs, diff-unified->context, diff-next-complex-hunk) + (diff-sanity-check-hunk): Use it. -2006-02-13 Chong Yidong - - * files.el (safe-local-variable-values): New option. - (hack-local-variables-prop-line): Return a list of variable-value - pairs if MODE-ONLY is non-nil. - (hack-local-variables): Construct list of variable-value pairs, - and apply or reject them in one go. Ask for confirmation if - variables are not known safe. - (hack-local-variables-confirm): Complete rewrite. Support - `safe-local-variable-values'. - (enable-local-variables): Update docstring to reflect new - behavior. - (ignored-local-variables): Ignore ignored-local-variables and - safe-local-variable-values. - (safe-local-variable-p): New function. - (risky-local-variable-p): `safe-local-variable' property check - moved to safe-local-variable-p. - (hack-one-local-variable): Checks moved to hack-local-variables. - - (byte-compile-dynamic, c-basic-offset, c-file-style) - (c-indent-level, comment-column, fill-column, fill-prefix) - (indent-tabs-mode, kept-new-versions, no-byte-compile) - (no-update-autoloads, outline-regexp, page-delimiter) - (paragraph-start, paragraph-separate, sentence-end) - (sentence-end-double-space tab-width, version-control): - Add `safe-local-variable' property. + * diff-mode.el (diff-beginning-of-file-and-junk): If we're on the + Index: line, don't search backward for the previous one. - * find-lisp.el: Delete nonexistent `autocompile' file variable. +2008-02-25 Kenichi Handa - * icomplete.el, play/landmark.el: Change nonexistent - `outline-layout' file variable to `allout-layout'. + * international/fontset.el (setup-default-fontset): Add non-OTF + lao font for lao script. -2006-02-14 Nick Roberts + * language/tibetan.el: Register tibetan-composition-function in + composition-function-table. - * progmodes/gdb-ui.el (gud-watch, gdb-invalidate-registers-1) - (gdb-get-changed-registers): Test value of gud-minor-mode relative - to gud-comint-buffer. - (gdb-speedbar-expand-node, gdb-locals-mode): Use functions in - gdb-ui.el for gdb-mi.el. - (gdb-post-prompt, gdb-get-changed-registers): Move test for - registers buffer to gdb-get-changed-registers. - (gdb-breakpoint-regexp): New regexp. Allow toggling and - deletion of catchpoints (throw and catch). - (gdb-toggle-breakpoint, gdb-delete-breakpoint) - (gdb-goto-breakpoint): Use it for both gdb-ui and gdb-mi. - (gdb-find-file-hook, gdb-set-gud-minor-mode-existing-buffers-1) - (gdb-var-list-children-1, gdb-info-breakpoints-custom) - (gdb-var-update-1, gdb-invalidate-locals-1): Use also for gdb-mi. + * language/tibet-util.el (tibetan-composition-function): + Adjust for the new calling way (argument changed). Try font-shape-text + if possible. -2006-02-13 Jay Belanger + * language/lao.el: Register lao-composition-function in + composition-function-table. - * calc/calc-arith.el (math-check-known-matrixp): Make sure - expression is a symbol before checking that it is bound. + * language/lao-util.el (lao-composition-function): Adjust for the new + calling way (argument changed). Try font-shape-text if possible. -2006-02-13 Richard M. Stallman +2008-02-25 Jason Rumney - * mouse.el (mouse-drag-mode-line-1): Use mouse-drag-move-window-bottom - for the minibuffer too, but not if resize-mini-windows will interfere. + * files.el (file-name-invalid-regexp): Fix octal/decimal confusion. - * help.el (describe-key-briefly, describe-key): Do all arg-reading - inside `interactive' spec. - (describe-key-briefly-internal, describe-key-internal): - Functions merged back into their callers. +2008-02-25 Juri Linkov -2006-02-13 Martin Rudalics + * isearch.el (isearch-fail): Use "RosyBrown1" for a light + background, "red4" for a dark background, "red" for 16 and + 8 colors, "grey" for grayscale, and inverse video otherwise. + Add :version tag. + (isearch-message): Keep the original isearch-message intact, and + add text properties to it where necessary. Add `isearch-error' to + the condition that checks if isearch is unsuccessful. - * info.el (info-xref-visited): Inherit from info-xref too. - (Info-set-mode-line): Replace occurrences of `%' by `%%' - when propertizing Info-current-file and Info-current-node. +2008-02-24 Juri Linkov -2006-02-13 Juri Linkov + * progmodes/compile.el (compilation-handle-exit): + Use compilation-error face instead of font-lock-warning-face. + Display the same message in the minibuffer as is inserted + at the end of the compilation buffer. - * tumme.el (tumme-thumbnail-storage): Fix docstring. - (tumme-thumb-name): Fix per-directory format. +2008-02-24 Glenn Morris -2006-02-13 Juanma Barranquero + * vc-cvs.el (vc-cvs-register): Fix registering of directories in + multiple file case. - * subr.el (substitute-key-definition): Doc fix (hide internal arg). + * vc-mcvs.el (vc-mcvs-register): Fix let-binding (for use of `file'). -2006-02-12 Miles Bader + * vc-rcs.el (vc-rcs-register): Fix treatment of directories in + multiple file case. Use a single `let' rather than two. - * net/rcirc.el (rcirc-format-response-string): Fix small bugs. +2008-02-24 Dan Nicolaescu -2006-02-13 Mathias Dahl + * progmodes/compile.el (compilation-start): Specify a face for + mode-line-process. + (compilation-handle-exit): Specify a face and a tooltip for + mode-line-process. - * tumme.el: Remove history section. If someone needs the it, it - can always be found in CVS. +2008-02-24 Stefan Monnier -2006-02-12 Mathias Dahl + * hilit-chg.el: Remove spurious * in defcustom docstrings. + (hilit-chg-make-ov): Simplify. + (hilit-chg-fixup): Use remove-overlays. + (hilit-chg-set-face-on-change): Remove redundant call to + `remove-text-properties'. - * tumme.el (tumme-thumbnail-storage): Update docstring. Add info - about the Thumbnail Managing Standard option. + * dired.el (dired-mark-prompt): Don't count/display the t element. + Reported by Carsten Blaauw . -2006-02-12 Richard M. Stallman +2008-02-24 Dan Nicolaescu - * subr.el (substitute-key-definition): Doc fix. + * progmodes/verilog-mode.el (eval-when-compile): Don't define + add-submenu. + (verilog-xemacs-menu): Add :keys for C-M-a, C-M-e and C-M-h. + Remove. Move contents to the only use ... + (verilog-menu): ... here. + (verilog-statement-menu): Remove. Move contents to the only use ... + (verilog-stmt-menu): ... here. + (verilog-mark-defun): Simply call mark-defun for emacs. + (occur-pos-list): Declare for byte compiler. + (mode-popup-menu): Don't defvar. + (verilog-add-statement-menu): Remove. + (verilog-mode-hook): Don't add verilog-add-statement-menu. + (verilog-mode): Call easy-menu-add and set mode-popup-menu for XEmacs. - * simple.el (blink-matching-paren-dont-ignore-comments): Doc fix. +2008-02-24 Michael McNamara - * files.el (magic-mode-alist): Don't use `\\s ' in regexps. + * progmodes/verilog-mode.el (verilog-xemacs-menu): Remove XEmacs + conditional. + (verilog-font-grouping-keywords-face): Make the begin..end + keywords standout more than other verilog keywords. + (verilog-type-font-keywords): Move the begin..end out of this list + to facilitate making them to (potentially) stand out more. + (verilog-backward-token): Fix indent of bare always{_*}?, initial, + function & task blocks. + (verilog-behavioral-block-beg-re): Fix indent of bare always{_*}?, + initial, function & task blocks. + (verilog-forward-sexp): Handle the new "disable fork" statement of + IEEE-1800 Verilog. + (verilog-beg-block-re-ordered): Handle the new "disable fork" + statement of IEEE-1800 Verilog. + (verilog-calc-1): Handle the new "disable fork" statement of + IEEE-1800 Verilog. + (verilog-disable-fork-re): Add const to help handle the new + "disable fork" statement of IEEE-1800 Verilog. + (verilog-declaration-core-re): Add port directions by themselves, + with no qualification, as base item of a declaration. + (verilog-pretty-declarations): Add new flag to ask it to refrain + from printing to the message buffer. + (verilog-pretty-expr): Add a QUIET flag to ask it to refrain from + printing to the message buffer. Improve handling of the many + types of expression line up. + (verilog-just-one-space): Remove printing of an empty message. + (verilog-get-lineup-indent): Rework to support the better handling + of expression lineup for verilog-pretty-expr. + (verilog-auto-wire): Pass the quiet flag to verilog-pretty-expr. - * info.el (Info-mode): Doc fix. +2008-02-24 Alan Mackenzie - * progmodes/ebrowse.el (ebrowse-global-prefix-key): Change to C-c C-m. + * progmodes/cc-mode.el (c-extend-region-for-CPP): Bug fix from + yesterday's commit. -2006-02-12 Michael Albinus +2008-02-24 Nick Roberts - * net/tramp.el (tramp-remote-path): Add "/usr/xpg4/bin" on top, - because on Solaris a POSIX compatible "id" is needed. Reported by - Magnus Henoch . + * progmodes/gdb-ui.el (gdb-mouse-set-clear-breakpoint): Fall back + to mouse-set-point in buffers that aren't associated with files. -2006-02-12 Juri Linkov + * progmodes/gud.el: Rename menu item to "Show GUD tooltips". - * tumme.el: Remove todo item about Thumbnail Managing Standard. - (tumme) : Change :group to `multimedia'. - (tumme-thumbnail-storage): Add choice `standard' for Thumbnail - Managing Standard. - (tumme-cmd-create-thumbnail-options): Use %w and %h instead of %s. - Fix dostring. - (tumme-cmd-create-temp-image-options): Use %w and %h instead of %x - and %y. Fix docstring. - (tumme-cmd-pngnq-program, tumme-cmd-pngcrush-program) - (tumme-cmd-create-standard-thumbnail-command): New user options. - (tumme-thumb-size): Set default to 128 if tumme-thumbnail-storage - is `standard'. Fix docstring. - (tumme-thumb-width, tumme-thumb-height): New user options. - (tumme-external-viewer): Try to find various viewers. - (tumme-get-thumbnail-image): Use `create-image' instead of - constructing the `image' structure. - (tumme-insert-thumbnail): Use `png' if tumme-thumbnail-storage is - `standard'. - (tumme-thumb-name): Add file name generation for standard storage. - Simplify code for other storages. - (tumme-thumb-name): Use width %w and height %h instead of size %s. - Add modification time %m and thumbnail-nq8 %q. - Use `tumme-cmd-create-standard-thumbnail-command' if - tumme-thumbnail-storage is `standard'. - (tumme-dired-insert-marked-thumbs): New autoload command. - (tumme-dired-after-readin-hook): New function. - (tumme-line-up-dynamic): Use `tumme-thumb-width' instead of - `tumme-thumb-size'. - (tumme-display-image): Replace size-x %x and size-y %y with - width %w and height %h. +2008-02-24 Alan Mackenzie - * dired.el (dired-mode-map): Bind `\C-t\C-t' to - `tumme-dired-insert-marked-thumbs'. + Set of changes so that "obtrusive" syntactic elements in a + C/C++/ObjC preprocessor line (e.g. an unbalanced string quote or + unmatched paren) don't interact syntactically with stuff outside + the CPP line. -2006-02-12 Mathias Dahl + * progmodes/cc-awk.el (c-awk-beyond-logical-line, c-awk-old-ByLL): + Replace c-awk-end-of-logical-line and c-awk-old-EoLL to solve an + off-by-one bug. + (c-awk-record-region-clear-NL): Replaces c-awk-before-change, with + a bit of refactoring. + (c-awk-extend-and-syntax-tablify-region): Takes some of the + functionality of c-awk-advise-fl-for-awk-region, which has been + refactored away. - * tumme.el (tumme-write-tag): Fix small bug (file name did not - include path). - (tumme-mark-tagged-files): Fix bug in regexp used to find rows - matching tag. + * progmodes/cc-defs.el (c-clear-char-property-with-value-function) + (c-clear-char-property-with-value): New function and macro which + remove text-properties `equal' to a supplied value. -2006-02-12 Miles Bader + * progmodes/cc-engine.el: Comment about text properties amended. - * net/rcirc.el (rcirc-nick-abbrevs, rcirc-response-formats): - New variables. - (rcirc-abbrev-nick): New function. - (rcirc-format-response-string): Rewrite to use the formats in - `rcirc-response-formats' and expand escape sequences therein. - A text-property `rcirc-text' is added over the actual response - text to make easy to find inside the returned string. - (rcirc-print): When filling, just look for the `rcirc-text' - text-property to find the appropriate fill prefix, instead of - using hardwired patterns. + * progmodes/cc-fonts.el (c-cpp-matchers): Make it put regexp + parens around "error\\|warning". -2006-02-11 Mathias Dahl + * progmodes/cc-langs.el (c-get-state-before-change-function) + (c-before-font-lock-function, c-anchored-cpp-prefix): + New language variables. + (c-cpp-message-directives): Handle "#warning" in C, C++ and ObjC. - * tumme.el: Enhance some docstrings. Add todo item about Thumbnail - Managing Standard. + * progmodes/cc-mode.el (c-basic-common-init): C and ObjC now use + syntax-table text properties. + (c-common-init): Call language specific before/after-change + functions at mode initialisation. + (c-new-BEG, c-new-END, c-old-BOM, c-old-EOM): New variables. + (c-extend-region-for-CPP, c-neutralize-CPP-line) + (c-neutralize-syntax-in-CPP): New functions. + (c-before-change, c-after-change): Call the new language specific + change functions defined in cc-langs.el. + (c-advise-fl-for-region): New macro. + (awk-mode): Remove AWK specific stuff which has been refactored + into language independent stuff. -2006-02-11 Kim F. Storm +2008-02-24 Nick Roberts - * ido.el (ido-buffer-internal): Set mark for ido-insert-buffer. - Don't use insert-buffer; do insert-buffer-substring directly. - (ido-file-internal): Set mark for ido-insert-file. Use insert-file-1. + * progmodes/gdb-ui.el (gdba): Recreate as an alias for gdb. + (gdb): (Re)set gdb-flush-pending-output to nil here... + (gdb-init-1): ...instead of here (before gdb-prompt). -2006-02-11 Martin Rudalics +2008-02-24 Stefan Monnier - * files.el (revert-buffer, recover-file): Replace buffer-read-only - with inhibit-read-only. Suggested by Stefan Monnier. - (revert-buffer): Let insert-file-contents discard - buffer-undo-list. Simplify code. - (find-file, find-file-existing, revert-buffer): Doc-string fixes. + * progmodes/ada-mode.el (ada-font-lock-syntactic-keywords): + Recognize ''' just like any other char-constant. -2006-02-11 Eli Zaretskii +2008-02-24 Stefan Monnier - * menu-bar.el (menu-bar-select-yank): Add a doc string. + * vc-hooks.el (vc-find-root): Remove initial loop because it's not + careful enough. Detect the uid-change all within the main loop. - * help.el (describe-key-briefly): Now a wrapper for - describe-key-briefly-internal. Bind enable-disabled-menus-and-buttons - to t. Populate yank-menu if empty. - (describe-key-briefly-internal): Renamed from describe-key-briefly. - (describe-key): Now a wrapper for describe-key-internal. Bind - enable-disabled-menus-and-buttons to t. Populate yank-menu if empty. - (describe-key-internal): Renamed from describe-key. +2008-02-24 Stefan Monnier -2006-02-11 Milan Zamazal + * textmodes/sgml-mode.el (sgml-mode): Fix comment syntax. - * progmodes/glasses.el (glasses-separator): Doc fix. - (glasses-original-separator): New defcustom. - (glasses-make-readable, glasses-convert-to-unreadable): Use it. +2008-02-24 Stefan Monnier -2006-02-11 Martin Rudalics + * hilit-chg.el (highlight-save-buffer-state): New macro. + (highlight-save-buffer-state, hilit-chg-set-face-on-change) + (hilit-chg-clear): Use it to preserve the modified-p flag. + (highlight-changes-rotate-faces): Don't mess with the undo-list. - * mwheel.el (mouse-wheel-up-event): Doc fix. +2008-02-24 Stefan Monnier -2006-02-11 Mathias Dahl + * font-lock.el (font-lock-set-defaults): Unset previously set variables + when needed. - * tumme.el (tumme-dir): Change default value to "~/.emacs.d/tumme/". - (tumme-dir): New function. Copied from thumbs.el. +2008-02-24 Ævar Arnfjörð Bjarmason (tiny change) -2006-02-10 Juanma Barranquero + * net/rcirc.el (rcirc-url-regexp): Replace definition by copying + from gnus-button-url-regexp. - * desktop.el (desktop-outvar): Fix typo. - (desktop-save-buffer-p): Doc fix. +2008-02-24 Eli Zaretskii - * subr.el (substitute-key-definition): Fix typo. + * progmodes/compile.el (compilation-next-error): Doc fix. + (compilation-find-file): Doc fix. -2006-02-10 YAMAMOTO Mitsuharu +2008-02-24 Glenn Morris - * frame.el (select-frame-set-input-focus): Call x-focus-frame also - when window-system is mac. + * net/net-utils.el (ipconfig-program, ipconfig-program-options): + Add obsolete aliases to the old names. - * term/mac-win.el (fontset-standard): Rename from "fontset-mac". +2008-02-24 Richard Stallman -2006-02-10 Kim F. Storm + * net/net-utils.el (ifconfig): Rename from ipconfig. + (ipconfig): Alias to ifconfig. + (ifconfig-program): Rename from ipconfig-program. + (ifconfig-program-options): Rename from ipconfig-program-options. - * subr.el (substitute-key-definition-key): Pass t for NOERROR to - indirect-function instead of using condition-case. +2008-02-24 Michael McNamara -2006-02-10 Mathias Dahl + * progmodes/verilog-mode.el (verilog-declaration-core-re): + Add port directions by themselves, with no qualification, as base + item of a declaration. + (verilog-pretty-declarations): Add new flag that inhibits printing + to the message buffer. + (verilog-pretty-expr): Add new flag that inhibits printing to the + message buffer. Improve handling of the many types of expression + line up. + (verilog-just-one-space): Don't print an empty message. + (verilog-get-lineup-indent): Rework to support the better handling + of expression lineup for verilog-pretty-expr. + (verilog-auto-wire): Pass the quiet flag to verilog-pretty-expr. + (verilog-mode-version, verilog-mode-release-date): Update. - * tumme.el (tumme-copy-with-exif-file-name): Try to make docstring - less `colloquial'... +2008-02-24 Stefan Monnier -2006-02-09 Mathias Dahl + * subr.el (cancel-change-group): Don't move point. - * tumme.el: Add a couple of todo items. +2008-02-23 Markus Triska -2006-02-09 Lars Hansen + * linum.el (linum-after-config): Update all visible windows. - * hilit-chg.el: Add highlight-changes-mode to desktop-locals-to-save. - (highlight-changes-mode): Don't change desktop-locals-to-save. +2008-02-23 Glenn Morris -2006-02-09 Chong Yidong + * menu-bar.el (menu-bar-games-menu): Add Bubbles and Pong. + Add :help for Solitaire and Tetris. - * image-mode.el (image-toggle-display): Clear image cache if using - filename. + * tree-widget.el (tree-widget-lookup-image): Let-bind `file'. -2006-02-09 Masatake YAMATO + * mail/smtpmail.el: Remove leading `*' from defcustom doc-strings. + (smtpmail-code-conv-from): Doc fix. Fix custom type. + (smtpmail-queue-index-file): Make it a defcustom. + (smtpmail-queue-index): Delete. + (smtpmail-send-it, smtpmail-send-queued-mail): + Use smtpmail-queue-index-file and smtpmail-queue-dir rather than + smtpmail-queue-index. - * dired-x.el (dired-guess-shell-alist-default): Add .man as - a `dired-man' target. + * net/net-utils.el (iwconfig-program, iwconfig-program-options): + Add :version. - * progmodes/autoconf.el (autoconf-font-lock-keywords): Check start - boundary of symbols. +2008-02-23 Yoni Rabkin (tiny change) -2006-02-08 Peter Doornbosch (tiny change) + * net/net-utils.el (iwconfig-program, iwconfig-program-options): + New variables. + (iwconfig): New function. - * vc-svn.el (vc-svn-print-log): Show recent commits as well. +2008-02-23 Dan Nicolaescu -2006-02-09 Juanma Barranquero + * vc.el (vc-find-revision): Make vc-parent-buffer local before + setting it. + (vc-status-menu-map): Do not define using easy-menu. + (vc-status-menu-map): New defalias. + (vc-status-mode-map): Hook up the menu. + (top-level): Update TODO. - * hilit-chg.el (hilit-chg-update-all-buffers): Use `mapc' instead of - `mapcar'; return nil. + * vc-hg.el (vc-hg-extra-status-menu): Return a keymap. -2006-02-08 Chong Yidong + * vc-bzr.el (vc-bzr-init-version): Rename to ... + (vc-bzr-init-revision): ... this. - * mouse.el (mouse-drag-track): Don't change window if we rebind to - some other event. +2008-02-23 Jason Rumney -2006-02-08 Ryan Yeske + * makefile.w32-in (WINS_ALMOST): Remove term. + (WINS): Add term here. + (custom-deps, finder-data): Use WINS_ALMOST. - * net/rcirc.el (rcirc-startup-channels-alist): - Add irc.freenode.net and #emacs as defaults. - (rcirc-ignore-all-activity-flag): Remove variable. - (rcirc-authinfo): New variable. - (rcirc-authinfo-filename): Remove variable. - (rcirc-always-use-server-buffer-flag): New flag. - (rcirc): M-x rcirc will automatically connect without prompting. - C-u M-x rcirc will prompt. Use rcirc-connect to create a - connection in lisp. - (rcirc-process-server-response-1): Remove everything but the nick - portion of the sender so it doesn't need to be done everywhere - else. Update related code. - (global-map): Remove global keybindings. - (rcirc-get-buffer-create): Make sure rcirc-topic is set. - (rcirc-send-input): Split into several functions. - (rcirc-process-input-line, rcirc-process-message) - (rcirc-process-command): New functions. - (rcirc-target-buffer): New function to determine where to route - messages. - (rcirc-user-nick): Save match data. - (rcirc-toggle-ignore-buffer-activity) - (rcirc-update-activity-string): Remove global ignore functionality, - which can be done now by toggling rcirc-track-minor-mode. - (rcirc-track-minor-mode-map): New keymap. - (rcirc-track-minor-mode): New minor-mode. - (ignore): Make the ignore output nicer. Always print it when - adding or removing nicks. - (rcirc-url-regexp): Improve. - (rcirc-mangle-text): Remove properties before using text in the - modeline. - (rcirc-authenticate): Authentication data comes from - rcirc-authinfo, not the file pointed to by rcirc-authinfo-file. - (rcirc-server-prefix): Inherit from rcirc-server. +2008-02-22 Juanma Barranquero -2006-02-08 Mathias Megyei (tiny change) + * faces.el (font-weight-table): Fix value of `semi-light'. - * Makefile.in (compile): Append "|| true" to the end of the `find' - command, like compile-always does. +2008-02-22 Stefan Monnier -2006-02-08 Sam Steingold + * faces.el (font-weight-table, font-slant-table, font-swidth-table): + Make those tables bijective. - * net/tramp.el (tramp-maybe-open-connection): Do not wait for - output from a dead connection. +2008-02-22 Ken Manheimer -2006-02-07 Mathias Dahl + Finish pdbtrack integration cleanup, settling missing-functions + byte compiler warnings appropriately. - * dired.el (dired-mode-map): Add more bindings for tumme. + * progmodes/python.el (python-point): Remove this - beginning-of-line + was all that was necessary for `python-pdbtrack-overlay-arrow'. + (python-end-of-def-or-class, python-beginning-of-def-or-class) + (python-goto-initial-line): Drop these - they were only needed for + python-point. + (python-comint-output-filter-function): Use condition-case and + beginning-of-line directly, instead of python-mode.el functions + which require all sorts of baggage. + (point-safe): Unnecessary - we're using condition-case directly, + instead. + (python-execute-file): Include for python-shell, which I'm leaving + in keeping despite it being unnecessary for pdb tracking. -2006-02-07 Stefan Monnier +2008-02-22 Peter Danenberg (tiny change) - * wdired.el (wdired-mode-map): Use remap. - (wdired-get-filename): Massage. - (wdired-perm-mode-map): Don't copy bindings from wdired-mode-map. - (wdired-preprocess-perms, wdired-set-bit, wdired-toggle-bit): Use the - `keymap' property rather than `local-map'. - -2006-02-07 Mathias Dahl - - * tumme.el (tumme-get-thumbnail-image): New utility function. - Suggested by from Chong Yidong. - (tumme-dired-with-window-configuration): Rename from - `tumme-dired'. Add code to save window configuration. - (tumme-restore-window-configuration): New command to restore the - window configuration that `tumme-dired-with-window-configuration' - saves before it changes the window configuration. - (tumme-show-all-from-dir): New command to display thumbnails for - all files in a directory entered by the user, like M-x thumbs. - (tumme-display-thumbs): Call `pop-to-buffer' after all thumbnails - have been created. - (tumme-display-thumbnail-original-image): Call `display-buffer'. - (obsolete-tumme-display-thumbnail-original-image-and-buffer): - Remove obsolete test function. - -2006-02-07 Juanma Barranquero - - * vc.el (small-temporary-file-directory): Remove defvar; there's - a defcustom for it in files.el. - - * tumme.el (tumme-get-thumbnail-image): Add missing arg to `error'. - Fix typo in message. - (tumme-gallery-generate): Fix typo in `error' message. - (tumme-display-window-height-correction) - (tumme-display-window-width-correction, tumme-line-up-dynamic) - (tumme-line-up-interactive): Dox fixes. - (tumme-cmd-rotate-original-options, tumme-display-properties-format) - (tumme-restore-window-configuration, tumme-format-properties-string) - (tumme-create-thumbs, tumme-display-previous-thumbnail-original): - Fix typos in docstrings. + * progmodes/scheme.el (scheme-font-lock-keywords-2): + Add SRFI 11 support. + (let-values, let*-values): Specify scheme-indent-function. -2006-02-07 Chris Moore +2008-02-22 Dan Nicolaescu - * wdired.el (wdired-get-filename): Fix bug: Don't re-normalize OLD. + * vc.el (vc-exec-after): Move setting mode-line-process in the + busy case ... + (vc-set-mode-line-busy-indicator): ... in this new function. + (vc-status-refresh): Call vc-set-mode-line-busy-indicator. + (vc-update-vc-status-buffer): Reset mode-line-process. + (vc-status-mark-all-files, vc-status-unmark-all-files): Change to + mark/unmark all the files with the same state as the current one. + With a prefix argument mark/unmark all files. + (vc-status-mode-menu): Adjust strings. + (vc-update-vc-status-buffer): Only do something when the argument + is not nil. + (vc-status-kill-dir-status-process): New function. + (vc-status-mode-map): Bind it. + (vc-status-process-buffer): New variable. + (vc-status-mode): Make it local. + (vc-status-refresh): Set it. -2006-02-07 Nick Roberts + * vc-hg.el (vc-hg-dir-status): + * vc-git.el (vc-git-dir-status): + * vc-svn.el (vc-svn-dir-status): Return the buffer in which the + command is run. - * progmodes/gud.el (gud-tooltip-mode): Remove autoload cookie. - User should use hook if desired. +2008-02-22 Glenn Morris - * progmodes/gdb-ui.el (gdb-post-prompt): Regenerate breakpoints - buffer if necessary. - (gdb-delete-frame-or-window): New function. - (gdb-breakpoints-mode-map): Bind "q" to it. + * json.el (top-level): No need to require thingatpt. + (json-read-keyword): Use thing-at-point rather than word-at-point. -2006-02-06 Stefan Monnier + * time.el (top-level): No need to require time-date when compiling. - * textmodes/nroff-mode.el: Clean up name space. - (nroff-mode-syntax-table): Remove spurious `1' in the syntax of \n. - (nroff-mode): Obey the global setting of nroff-electric-mode. - (nroff-electric-mode): Use define-minor-mode and derived-mode-p. + * emacs-lisp/copyright.el (copyright-update-year): + Fix subexpression numbering for the case when years are split over + lines, and for the replace case. - * calendar/calendar.el (calendar-increment-month): Typo in last change. + * emulation/tpu-edt.el (tpu-have-ispell): Doc fix. Make obsolete. + (tpu-caar, tpu-cadr): Delete functions. + (zmacs-regions): No need to declare for compiler. + (tpu-goto-breadcrumb): Use cadr rather than tpu-cadr. + (tpu-spell-check): Rewrite, and handle mark after point. + (tpu-special-insert): Use or rather than if. -2006-02-06 Thien-Thi Nguyen + * emulation/vip.el (vip-special-prefix-com): Use ispell-region + rather than spell-region. - * vc-svn.el (vc-svn-previous-version, vc-svn-next-version): New funcs. + * textmodes/spell.el (spell-buffer, spell-word): Suppress compiler + warnings about spell-region. -2006-02-06 Lars Hansen +2008-02-22 Kenichi Handa - * generic-x.el (etc-fstab-generic-mode): Add file system types - cifs and usbdevfs. Allow special chars in file names. + * ldefs-boot.el: Regenerated. -2006-02-05 Jay Belanger + * loadup.el: Don't load language/devanagari, language/kannanda, + language/malayalam, and language/tamil. Load language/sinhala. - Update copyright notices of the files in lisp/calc. + * language/indian.el (indian-font-foundry) + (indian-script-language-alist, indian-font-char-index-table) + (indian-font-char, indian-font-char-range, indian-script-table) + (indian-default-script, indian-composable-pattern): Delete them. + ("Devanagari", "Kannada", "Malayalam", "Tamil"): Definitions of + language environments moved to here. + ("Bengali", "Punjabi", "Gujarati", "Oriya", "Telugu"): + New language environments. -2006-02-05 Romain Francoise + * language/devanagari.el, language/devan-util.el, + * language/kannanda.el, language/knd-util.el, language/malayalam.el, + * language/mlm-util.el, language/tamil.el, language/tml-util.el: + Delete them. - Update copyright notices of all files in the lisp/play directory. + * language/sinhala.el: New file. -2006-02-04 Luc Teirlinck +2008-02-21 Ken Manheimer - * ldefs-boot.el: Regenerate. + Update Nick Robert's port of pdb tracking from python-mode.el. - * emacs-lisp/find-func.el (find-definition-noselect): Minor doc fix. + * progmodes/python.el (python-pdbtrack-toggle-stack-tracking): + Clarify docstring. + (python-pdbtrack-minor-mode-string): A sign indicating that pdb + tracking is happening. + (python-pdbtrack-stack-entry-regexp): Better recognize stack traces. + (python-pdbtrack-input-prompt): Better recognize PDB prompts. + (comint-output-filter-functions): Add python-pdbtrack-track-stack-file. + Tracking is plugged in to all comint buffers once python.el is loaded. + (python-pdbtrack-overlay-arrow): Toggle activation of + `python-pdbtrack-minor-mode-string' in addition to the overlay arrow. + (python-pdbtrack-track-stack-file): Use new + `python-pdbtrack-get-source-buffer' for more flexible access to + debugging source files. + (python-pdbtrack-get-source-buffer): Identify debugging target buffer + according to pdb stack trace, optionally using new + `python-pdbtrack-grub-for-buffer' if file is not locally available. + (python-pdbtrack-grub-for-buffer): Find most recent python-mode + named buffer, or having function with indicated name. + (python-shell): Remove comint-output-filter-functions hook + addition, it's being done elsewhere. Wrap long line. + +2008-02-21 Michael Olson + + * json.el: Replace XEmacs compatibility code to get rid of + compiler warnings. + + * time.el: Fix compiler warning. + +2008-02-21 Edward O'Connor + + * json.el: New file (JavaScript Object Notation parser / generator). + +2008-02-21 Dave Love + + * progmodes/sym-comp.el: New file. + + * progmodes/python.el: Merge from Dave Love's 2008-01-20 version. + Require sym-comp. Add Python buffer to same-window-buffer-names. + Fixup whitespaces. + (python-font-lock-keywords): Add highlighting for Python builtins. + (python-font-lock-syntactic-keywords): Rewrite. + (python-quote-syntax): Use syntax-ppss-context instead of parsing + ppss directly. + (python-mode-map): Add binding for python-find-function. + (python-calculate-indentation): Clean up the logic. + (python-beginning-of-defun): Explicitly set return value. + (python-beginning-of-statement): Stop looping if we get stuck + going backwards. + (python-next-statement): Stop looping if we somehow end up inside + a string while advancing. + (python-preoutput-continuation, python-version-checked): New vars. + (python-check-version): New function. + (run-python): Set default command to python-command instead of + python-python-command. + (run-python): Use python-check-version. Give PYTHONPATH + precedence over data-directory in the process environment. + Load function definitions in python process after. + (python-check-comint-prompt): New function. + (python-send-command, python-send-receive): Use it. + (python-complete-symbol, python-try-complete): Functions deleted. + Use symbol-complete instead of python-complete-symbol throughout. + (python-fill-paragraph): Further refine the fenced-string regexp. + (def-python-skeleton): Expand to the original abbrev instead if in + a comment or string. Tweak skeletons for `if', `while', `for', + `try/except', `try/finally', `name'. + (python-pea-hook, python-abbrev-pc-hook): New functions. + (python-abbrev-syntax-table): New var. + (python-mode): Add python-pea-hook to pre-abbrev-expand-hook. + Use symbol-completion-try-complete for hippie expansion. + Turn on font lock unconditionally. + (python-mode-hook): Defcustom it. No need to use make-local + variable on indent-tabs-mode in "Turn off Indent Tabs mode" + option, since it's buffer-local. -2006-02-05 Kim F. Storm +2008-02-21 Juanma Barranquero - * files.el (magic-mode-regexp-match-limit): New defvar. - (set-auto-mode): Use it to limit magic-mode-alist matching. + * play/hanoi.el (hanoi-internal): Set `show-trailing-whitespace' to nil. -2006-02-04 Eli Zaretskii +2008-02-21 Drew Adams - * info.el (Info-index, Info-mode): Improve the description of the - `i' command. + * mouse.el (minor-mode-menu-from-indicator): Create a menu with a + "Turn off" and a "Help" entry when the minor mode has no menu. - * ldefs-boot.el: Regenerate. +2008-02-21 Dan Nicolaescu -2006-02-03 Werner Lemberg + * vc.el (vc-status-mark, vc-status-unmark): New functions. + (vc-status-mode-map, vc-status-mode-menu): Bind them instead of + vc-status-mark-file and vc-status-unmark-file. + (vc-status-mark-unmark): New function. + (vc-status-previous-line, vc-status-next-line): No longer interactive. - * textmodes/nroff-mode.el (nroff-font-lock-keywords): Don't be - greedy to find the closing bracket in \*[...] and similar - expressions. This is a first rough fix -- many additional - refinements are necessary to make nroff mode really usable with groff. +2008-02-21 Glenn Morris -2006-02-03 Jens Petersen (tiny change) + * composite.el (encode-composition-rule): Fix typo in error message. + (composition-function-table, auto-composition-mode): Doc fixes. - * international/mule-cmds.el (set-locale-environment): - Add "/usr/share/X11/locale/locale.alias" to search list for xorg-x11 - libX11. + * subr.el (sit-for): Fix obsolete form for nil second argument. -2006-02-03 Joe Wells (tiny change) + * textmodes/spell.el (spell-buffer, spell-word, spell-region) + (spell-string): Make obsolete, in favor of ispell. - * arc-mode.el (archive-maybe-copy): Fix the way directories in the - archive are created in archive-tmpdir. +2008-02-21 Kenichi Handa -2006-02-02 John Paul Wallington + * language/devanagari.el: Don't setup composition-function-table + here. + ("Devanagari"): Change charset, coding-system, coding-priority to + Unicode-based ones. Don't require the feature devan-util. - * ibuffer.el (ibuffer-compressed-file-name-regexp): New defcustom. - (ibuffer-fontification-alist): Use it. - (ibuffer-mode-map): Bind `ibuffer-mark-compressed-file-buffers' - to "* z" and the Ibuffer Mark menu. + * composite.el (compose-chars-after): Fix arguments for a function + in composition-function-table. + (auto-compose-region): Likewise. - * ibuf-ext.el (ibuffer-mark-compressed-file-buffers): New command. + * ps-mule.el (ps-mule-font-info-database-bdf): Use ethio16f-uni.bdf + for Ethiopic. + (ps-mule-plot-string): Ignore glyph-string based compositions. -2006-02-02 Stefan Monnier +2008-02-21 Stefan Monnier - * textmodes/table.el (*table--cell-describe-mode) - (*table--cell-describe-bindings): Undo last change since - print-help-return-message is not obsoleted by anything at all. + * doc-view.el: Allow different windows to show different pages. + (doc-view-current-page, doc-view-current-slice, doc-view-current-info) + (doc-view-current-image, doc-view-current-overlay): Remove variables, + add them back as macros instead, using image-mode-winprops instead. + Update all users of those variables. + (doc-view-new-window-function): New function to create a new overlay + for each new window. + (doc-view-mode): Use it and image-mode-setup-winprops. + (doc-view-clone-buffer-hook): Rewrite accordingly. -2006-02-02 Luc Teirlinck + * image-mode.el: Extend [hv]scroll support to per-window properties. + (image-mode-current-vscroll, image-mode-current-hscroll): Remove. + (image-mode-winprops-alist): New var to replace them. + (image-mode-new-window-functions): New hook. + (image-mode-winprops, image-mode-window-get, image-mode-window-put): + New funs. + (image-set-window-vscroll, image-set-window-hscroll): Use them. + Remove the `window' argument, update callers. + (image-mode-reapply-winprops): Rename image-reset-current-vhscroll. + Use the new functions. + (image-mode-reapply-winprops): New fun. + (image-mode): Use it. - * emulation/cua-base.el (cua-mode): Doc fix. +2008-02-20 Jay Belanger -2006-02-02 Juanma Barranquero + * calc/calc-math.el (math-sin-raw): Add optional argument + to keep track of original argument. + (math-cos-raw): Use optional argument when calling math-sin-raw. + (math-sin-raw-2, math-cos-raw-2): Check for a zero argument + with close to original precision. - * dframe.el (dframe-handle-make-frame-visible) - (dframe-handle-iconify-frame, dframe-get-focus) - (dframe-select-attached-frame, dframe-power-click) - (dframe-frame-mode): Fix typos in docstrings. +2008-02-20 Roland Winkler - * ezimage.el (ezimage-mail, ezimage-object-out-of-date) - (ezimage-insert-image-button-maybe, ezimage-insert-over-text): - Fix typos in docstrings. + * textmodes/bibtex.el (bibtex-convert-alien): Do not use optional + args in calls of sit-for. - * hi-lock.el (hi-lock-mode, hi-lock-line-face-buffer) - (hi-lock-face-buffer, hi-lock-font-lock-hook) - (hi-lock-archaic-interface-message-used) - (hi-lock-file-patterns-range): Fix typos in docstrings. - - * savehist.el (savehist-loaded, savehist-load, savehist-install) - (savehist-autosave, savehist-trim-history): Fix typos in docstrings. - - * mail/mailclient.el (mailclient-place-body-on-clipboard-flag): - Fix typo in docstring. - - * net/newsticker.el (newsticker--decode-iso8601-date) - (newsticker--set-customvar, newsticker--buffer-insert-item) - (newsticker--do-run-auto-mark-filter) - (newsticker--parse-generic-feed): Doc fixes. - (newsticker--retrieval-timer-list, newsticker-url-list) - (newsticker-hide-immortal-items-in-echo-area) - (newsticker-hide-obsolete-items-in-echo-area) - (newsticker-new-item-face, newsticker--enclosure) - (newsticker-buffer-update, newsticker-w3m-show-inline-images) - (newsticker--parse-atom-0.3, newsticker--parse-rss-1.0) - (newsticker--parse-generic-feed, newsticker--cache-contains) - (newsticker--stat-num-items, newsticker-download-enclosures): - Fix typos in docstrings. +2008-02-20 Juanma Barranquero - * net/rcirc.el (rcirc-debug): Doc fix. - (rcirc-fill-column, rcirc-receive-message-hooks) - (rcirc-browse-url-map, rcirc-read-only-flag, rcirc-prompt) - (rcirc-mode, rcirc-generate-new-buffer-name) - (rcirc-startup-channels, rcirc-ignore-update-automatic) - (rcirc-cmd-ignore, rcirc-browse-url, rcirc-url-regexp): - Fix typos in docstrings. - (rcirc-print): "?\ " -> "?\s". - (rcirc-cmd-join): Improve argument/docstring consistency. + * vc-svn.el (vc-svn-program): Fix typo in docstring. + (vc-svn-checkin): Fix typo in error message. -2006-02-01 Mark A. Hershberger + * help-mode.el: Require easymenu when compiling. - * xml.el (xml-parse-region): Move save-excursion and set-buffer up - before narrow-to-region. +2008-02-20 Dan Nicolaescu -2006-02-01 Richard M. Stallman + * help-mode.el (help-mode-menu): New menu. - * simple.el (move-beginning-of-line): Scan properly for invis change. +2008-02-20 Glenn Morris - * replace.el (multi-occur-in-matching-buffers): Fix prev change. + * mail/rmail.el (rmail-autodetect): Add .exe extension to movemail + on Windows. -2006-02-01 Michael Albinus +2008-02-20 Kenichi Handa - * net/tramp.el (tramp-convert-file-attributes): Set file's gid - change bit only when id-format is 'integer. Reported by Matt - Hodges . + * ps-mule.el (ps-mule-encode-region): Return a single string. + (ps-mule-plot-string): Adjust for the above change. + (ps-mule-encode-header-string): Likewise. -2006-02-01 Juanma Barranquero + * international/latin1-disp.el (latin1-display): Don't use + ucs-mule-8859-to-mule-unicode. Fix the way of resetting + standard-display-table. + (latin1-display-identities): Adjust for the change of what is + returned by (get-language-info charset 'charset). - * hilit-chg.el (highlight-changes-initial-state) - (highlight-changes-global-initial-state): Doc fixes. - (highlight-changes-global-modes, global-highlight-changes): - Fix typos in docstrings. + * international/mule-util.el (char-displayable-p): Fix for Latin-1 + characters and terminal case. -2006-02-01 Kim F. Storm +2008-02-19 Ken Manheimer - * emulation/cua-base.el (cua-mode): Mention that CUA enables - transient-mark-mode in doc string. + Minor Adaptions by Nick Roberts for Emacs. -2006-01-31 Richard M. Stallman + * progmodes/python.el: Also require comint when loading. + (python-mode-map): Bind python-pdbtrack-toggle-stack-tracking. + Replace python-shell with run-python on menu bar. + (python-shell-map): New map. + (python-default-interpreter, python-python-command-args) + (python-jython-command-args, python-pdbtrack-do-tracking-p): + New options. + (python-which-shell, python-which-args, python-which-bufname): + New buffer local variables. + (python-file-queue, python-pdbtrack-is-tracking-p): New variables. - * replace.el (multi-occur): Doc fix. - (multi-occur-in-matching-buffers): Rename from - multi-occur-by-filename-regexp. Prefix arg says match - buffer names instead of file names. + * progmodes/python.el (python-pdbtrack-stack-entry-regexp) + (python-pdbtrack-input-prompt, python-pdbtrack-track-range): + New constants. -2006-01-31 Juanma Barranquero + Pdbtrack features: - * bs.el: Allow non-default values of `bs-header-lines-length'. - (bs--running-in-xemacs): Remove (not needed anymore). - (bs--set-window-height): Simplify by using `fit-window-to-buffer' - instead of `shrink-window', thus avoiding having to compute the - height of the window. - (bs--up): Wrap around even when there's no header. - (bs--down): Use `forward-line' instead of `next-line'. + (python-point, python-end-of-def-or-class) + (python-beginning-of-def-or-class, python-goto-initial-line) + (python-comint-output-filter-function) + (python-pdbtrack-overlay-arrow) + (python-pdbtrack-track-stack-file, python-toggle-shells) + (python-shell, python-pdbtrack-toggle-stack-tracking) + (turn-on-pdbtrack, turn-off-pdbtrack, python-sentinel): + New functions. -2006-01-30 Chong Yidong +2008-02-19 Katsumi Yamaoka - * image-mode.el (image-toggle-display): Use file name if possible, - instead of unnecessarily allocating a (possibly huge) lisp string. + * net/ange-ftp.el (ange-ftp-quote-string): Return the null string + when the argument is nil. -2006-01-30 John Paul Wallington +2008-02-19 Dan Nicolaescu - * subr.el (toplevel): Define `cl-assertion-failed' condition here - because the `assert' macro signals it at runtime. + * vc.el (dir-status): Add a brief description. - * emacs-lisp/cl.el (toplevel): Remove definition of - `cl-assertion-failed' condition. +2008-02-19 Thien-Thi Nguyen -2006-01-30 Nick Roberts + * vc-hooks.el (vc-find-root): Take optional arg INVERT. + If non-nil, reverse the sense of the check. - * thumbs.el (thumbs-marked-list): Make buffer-local and - permanent-local. - (thumbs-insert-thumb): Make help-echo non-sticky. - (thumbs-file-alist): Use eolp as check for (non)-image. + * vc-rcs.el (vc-rcs-root): New func. + * vc-cvs.el (vc-cvs-root): New func. + * vc-svn.el (vc-svn-root): New func. + * vc-sccs.el (vc-sccs-root): New func. -2006-01-30 Juanma Barranquero +2008-02-18 Kenichi Handa - * ediff-mult.el (ediff-meta-buffer-keymap-setup-hook) - (ediff-before-session-group-setup-hooks) - (ediff-default-filtering-regexp, ediff-meta-mark-equal-files): - Fix typos in docstrings. + * language/japan-util.el (setup-japanese-environment-internal): + Call use-cjk-char-width-table. - * window.el (bw-dir, bw-eqdir, balance-windows) - (split-window-keep-point): Fix typos in docstrings. - - * textmodes/org.el (org-allow-space-in-links, org-closed-string) - (org-quote-string, org-calendar-to-agenda-key) - (org-agenda-sorting-strategy, org-agenda-use-time-grid) - (org-show-following-heading, org-tags-column) - (org-use-tag-inheritance, org, org-allow-space-in-links) - (org-usenet-links-prefer-google, org-file-apps-defaults-gnu) - (org-enable-table-editor, org-calc-default-modes) - (org-table-allow-automatic-line-recalculation) - (org-export-html-style, org-export-with-fixed-width) - (org-export-with-sub-superscripts, org-special-keyword) - (org-formula, org-time-grid, org-table-may-need-update) - (org-mode, org-goto-ret, org-goto-left, org-goto-right) - (org-goto-quit, org-get-indentation, org-end-of-item) - (org-move-item-down, org-move-item-up) - (org-renumber-ordered-list, org-todo, org-log-done, org-occur) - (org-remove-occur-highlights, org-read-date, org-goto-calendar) - (org-agenda, org-agenda-day-view, org-agenda-previous-date-line) - (org-agenda-log-mode, org-agenda-toggle-diary) - (org-agenda-toggle-time-grid, org-agenda-cleanup-fancy-diary) - (org-agenda-file-to-end, org-agenda-no-heading-message) - (org-agenda-get-closed, org-format-agenda-item) - (org-cmp-priority, org-cmp-category, org-cmp-time) - (org-agenda-change-all-lines, org-agenda-diary-entry) - (org-scan-tags, org-after-todo-state-change-hook, org-tags-view) - (org-link-search, org-camel-to-words, org-open-file) - (org-remember-handler, org-table-convert-region) - (org-table-move-row-down, org-table-move-row-up) - (org-table-copy-region, org-table-wrap-region) - (org-table-toggle-vline-visibility) - (org-table-get-vertical-vector, org-table-modify-formulas) - (org-table-get-specials, org-recalc-commands) - (org-table-rotate-recalc-marks, org-table-eval-formula) - (orgtbl-make-binding, org-in-invisibility-spec-p, org-cycle) - (org-level-color-stars-only, org-insert-heading): - Fix typos in docstrings. - (last-arg): Add defvar. + * language/japanese.el ("Japanese"): Set exit-function to + use-default-char-width-table. - * makefile.w32-in (WINS): Add erc. - (MH_E_SRC): Update (copied from lisp/Makefile.in). + * international/characters.el: Delete occurrences of non-Unicode + tibetan and ethiopic characters. + (cjk-char-width-table): New variable. + (use-cjk-char-width-table, use-default-char-width-table): + New functions. -2006-01-29 Bill Wohler +2008-02-19 Dan Nicolaescu - * Makefile.in (MH_E_SRC): Add mh-compat.el, mh-folder.el, - mh-letter.el, mh-limit.el, mh-scan.el, mh-show.el, mh-thread.el, - mh-tool-bar.el, mh-xface.el. Remove mh-customize.el, mh-init.el. - (mh-autoloads): Don't use comments on otherwise empty lines. + * vc.el (vc-status-menu, vc-status-menu-map-filter): New functions. + (vc-status-mode-menu): Add a :filter. + (vc-status-printer): Add faces. -2006-01-29 Edward O'Connor + * vc-hg.el (vc-hg-extra-status-menu): New function. + (vc-hg-dir-status): Clean up the buffer before using it. - * emulation/viper.el (viper-major-mode-modifier-list): - Add insert-state and vi-state entries for erc-mode. - (viper-go-away, viper-set-hooks): Add and remove - viper-comint-mode-hook from erc-mode-hook as appropriate. +2008-02-19 Stefan Monnier - * emulation/viper.el (viper-insert-state-mode-list): Add erc-mode. + * progmodes/gdb-ui.el (gdb-output-sink): Define with an invalid value. + (gdb): Initialize it here instead. -2006-01-29 Juanma Barranquero + * files.el (locate-dominating-file): Fix thinko in last change. + Reported by Bruce Stephens . - * bs.el (bs--format-aux): Implement `middle' alignment as - described in the docstring for `bs-attributes-list'. - (bs--get-name): Simplify. Don't pad the buffer name. +2008-02-18 Dan Nicolaescu -2006-01-27 Agustin Martin + * vc.el (vc-status-mode-menu): New menu for vc-status. - * textmodes/ispell.el (ispell-find-aspell-dictionaries): If no - English aspell dictionary is installed, use the first entry of - ispell-dictionary-alist-1. +2008-02-18 Juanma Barranquero -2006-01-27 Kevin Rodgers (tiny change) + * progmodes/verilog-mode.el (customize): Fix typo in error message. + (verilog-mode, verilog-mode-indent, verilog-mode-actions) + (verilog-mode-auto, verilog-indent-level-module) + (verilog-minimum-comment-distance, verilog-library-flags) + (verilog-library-directories, verilog-library-files) + (verilog-auto-reset-widths, verilog-imenu-generic-expression) + (verilog-xemacs-menu, verilog-set-compile-command) + (verilog-set-compile-command, verilog-mode-syntax-table, verilog-mode) + (verilog-get-expr, verilog-strip-comments, verilog-one-line) + (verilog-lint-off, verilog-batch-auto, verilog-batch-delete-auto) + (verilog-batch-inject-auto, verilog-batch-indent) + (verilog-continued-line, verilog-type-keywords) + (verilog-read-sub-decls-sig, verilog-read-sub-decls-line) + (verilog-read-inst-pins, verilog-read-arg-pins) + (verilog-read-auto-template, verilog-read-signals, verilog-getopt-file) + (verilog-add-list-unique, verilog-symbol-detick, verilog-modi-filename) + (verilog-auto-star, verilog-auto-inst, verilog-auto-wire) + (verilog-enum-ascii, verilog-sk-begin, verilog-sk-fork) + (verilog-sk-datadef, verilog-colorize-include-files-buffer) + (verilog-mode-version, verilog-mode-release-date) + (verilog-mode-release-emacs, verilog-linter, verilog-coverage) + (verilog-simulator, verilog-compiler) + (verilog-auto-sense-defines-constant, verilog-company) + (verilog-project, verilog-mark-defun, verilog-submit-bug-report): + Fix typos in docstrings. + (verilog-set-auto-endcomments, verilog-calculate-indent) + (verilog-inject-auto, verilog-auto-arg, verilog-auto-inout-module): + Reflow docstrings. + (verilog-tab-always-indent, verilog-highlight-p1800-keywords) + (verilog-auto-star-save, verilog-auto-inst-vector, verilog-mode-hook) + (electric-verilog-forward-sexp, verilog-in-case-region-p) + (verilog-in-struct-region-p, verilog-in-generate-region-p) + (verilog-leap-to-head, verilog-current-indent-level) + (verilog-case-indent-level, verilog-cpp-keywords) + (verilog-defun-keywords, verilog-block-keywords, verilog-tf-keywords) + (verilog-case-keywords, verilog-separator-keywords, verilog-completion) + (verilog-signals-not-in, verilog-symbol-detick-text) + (verilog-modi-cache-preserve-tick, verilog-modi-cache-preserve-buffer) + (verilog-forward-close-paren, verilog-backward-open-paren) + (verilog-backward-open-bracket): Doc fixes. - * textmodes/flyspell.el (flyspell-incorrect, flyspell-duplicate): - Doc fix. + * progmodes/gud.el (gud-def, gud-last-speedbar-stackframe): Doc fixes. + (gud-symbol, gud-expansion-speedbar-buttons, gud-speedbar-buttons) + (gud-gdb-run-command-fetch-lines, gud-dbx-use-stopformat-p) + (gud-jdb-classpath, gud-jdb-find-source-using-classpath, jdb) + (gud-find-class, gdb-script-mode, gud-tooltip-event, gud-tooltip-tips): + Fix typos in docstrings. -2006-01-27 Michael Albinus + * w32-vars.el (w32-system-shells): Add TCC (new name for 4NT). - * net/tramp-vc.el (vc-user-login-name): Wrap defadvice with a test - for `process-file', in order to let it work for older Emacsen too. +2008-02-18 Bastien Guerry -2006-01-27 Eli Zaretskii + * info.el (Info-read-node-name): Removed unused `default' arg. - * international/latexenc.el: Add a suitable `coding:' tag. - (latexenc-find-file-coding-system): Undo last change. +2008-02-18 Thien-Thi Nguyen -2006-01-27 Arne J,Ax(Brgensen + * vc-git.el (vc-git-after-dir-status, vc-git-dir-status): New funcs. - * international/latexenc.el (latexenc-find-file-coding-system): - Make sure latexenc-main-file is a regular file and is readable. +2008-02-18 Stefan Monnier -2006-01-27 Andre Spiegel + * image-mode.el (image-get-display-property): New fun. + (image-forward-hscroll, image-next-line, image-eol, image-eob) + (image-mode, image-minor-mode, image-toggle-display-text) + (image-toggle-display): Use it. - * vc-rcs.el (vc-rcs-fetch-master-state, vc-rcs-consult-headers): - Pass FILE to vc-user-login-name. +2008-02-18 Jason Rumney - * vc-sccs.el (vc-sccs-state): Pass FILE to vc-user-login-name. + * international/mule.el (xml-find-file-coding-system): Don't warn + about utf-16 with BOM. -2006-01-27 Nick Roberts + * nxml/nxml-mode.el (nxml-mode): Don't add a write-contents-hook. - * thumbs.el (thumbs-do-thumbs-insertion): Suppress message when - there are no more images to display. - (thumbs-mark, thumbs-unmark): Revert change so that they move to - the next image. + * international/mule.el (sgml-xml-auto-coding-function): Detect and + warn if file encoding is not utf-8 and encoding not specified. + (xml-find-file-coding-system): New function. + * international/mule-conf.el (file-coding-system-alist): Use it. -2006-01-26 Richard M. Stallman +2008-02-17 Glenn Morris - * cus-edit.el (custom-mode): Doc: Use advertised-widget-backward. + * international/mule-cmds.el (set-locale-environment): + Pass `frame' to getenv for LC_MESSAGES. - * wid-edit.el (advertised-widget-backward): New alias. - (widget-keymap): Use advertised-widget-backward for S-TAB. +2008-02-17 Juri Linkov - * tumme.el: Correct the keywords. - (tumme-dir-max-size): Use defvar. - (tumme-setup-dired-keybindings, tumme-dired): Add autoload cookie. + * time.el (emacs-init-time): Use format instead of format-seconds. - * simple.el (move-beginning-of-line): Take account of fields. - (clone-indirect-buffer-other-window): Take args like - clone-indirect-buffer, and work like it. +2008-02-17 Roland Winkler - * help-fns.el (describe-function): Don't pass `nil' as default. + * textmodes/bibtex.el (bibtex-search-entry): Rename from + bibtex-find-entry. Add autoload cookie. + (bibtex-find-entry): Alias for bibtex-search-entry. + (bibtex-search-crossref): Rename from bibtex-find-crossref. + (bibtex-find-crossref): Alias for bibtex-search-crossref. + (bibtex-clean-entry): atomic-change-group removed. + (bibtex-format-entry): Use atomic-change-group. Use unwind-protect + to locate buffer location where error occurred. + Make error messages more specific. + (bibtex-parse-keys): Only parse if buffer uses bibtex-mode. - * files.el (risky-local-variable-p): Follow var aliases. +2008-02-17 Dan Nicolaescu - * subr.el (lazy-completion-table): Doc fix. + * progmodes/hideshow.el (hs-minor-mode-map): Move menu creation to + top level. - * mail/rmailsum.el (rmail-make-summary-line-1): Don't set - global binding of `line'. + * simple.el (transient-mark-mode): Add an :init-value. -2006-01-25 Andre Spiegel + * startup.el (command-line): Use custom-reevaluate-setting for + transient-mark-mode. - * vc-hooks.el (vc-user-login-name): Rewritten to handle access via - Tramp. +2008-02-17 Michaël Cadilhac - * vc.el (vc-default-dired-state-info): Pass FILE to - vc-user-login-name. - (vc-default-update-changelog): Don't use vc-user-login-name, we - don't need it here. + * wdired.el (wdired-allow-to-change-permissions): Fix typo. - * net/tramp-vc.el (vc-user-login-name): Comment out defadvice, it is - no longer necessary. +2008-02-16 Juri Linkov -2006-01-25 Kenichi Handa + * startup.el (after-init-time): New variable. + (command-line): Set `after-init-time' to the current time. - * international/mule.el (decode-char): Avoid the overhead of - calling utf-lookup-subst-table-for-decode if - utf-translate-cjk-mode is nil. - (encode-char): Avoid the overhead of calling - utf-lookup-subst-table-for-encode if utf-translate-cjk-mode is - nil. + * time.el (emacs-init-time): New function. -2006-01-22 Kenichi Handa +2008-02-16 Stefan Monnier - * international/mule.el (make-subsidiary-coding-system): Reset - `coding-system-define-form' property of subsidiaries to nil. - Avoid duplicated entry in coding-system-alist. - (make-coding-system): Avoid duplicated entry in - coding-system-alist. - (define-coding-system-alias): Likewise. + * files.el (locate-dominating-file): Remove initial loop because it's + not careful enough. Detect the uid-change all within the main loop. -2006-01-24 Luc Teirlinck +2008-02-16 Lawrence Mitchell (tiny change) - * completion.el: Minor fixes in introductory comment. - (completion-def-wrapper): Fix alist. + * ielm.el (ielm-is-whitespace-or-comment): Docstring fix. -2006-01-25 Nick Roberts +2008-02-16 Dan Nicolaescu - * thumbs.el (thumbs-new-image-size): New function. - (thumbs-increment-image-size-element) - (thumbs-decrement-image-size-element, thumbs-increment-image-size) - (thumbs-decrement-image-size): Delete. - (thumbs-resize-image-1): Rename from thumbs-resize-image. Keep old - temp files and use to resize. - (thumbs-resize-image): Rename from thumbs-resize-image-interactive. - Use increment argument to enlarge/shrink. Preserve point. - (thumbs-shrink-image): Rename from thumbs-resize-image-size-down. - (thumbs-enlarge-image): Rename from thumbs-resize-image-size-up - (thumbs-show-thumbs-list): Set thumbs-buffer to current-buffer. - (thumbs-mark, thumbs-unmark): Preserve point. - (thumbs-modify-image): Keep old temp files and use to modify. - Cleanup old temp files at load time. Preserve point. - (thumbs-view-image-mode-map): Use new command names. + * vc.el (vc-annotate): Add new argument. + (vc-annotate-warp-revision): Pass the current line to vc-annotate. -2006-01-24 Stefan Monnier + * progmodes/hideshow.el: Remove the minor-mode bookkeeping. + Move make-variable-buffer-local code after the corresponding defvar. + (hs-minor-mode-map): Define and initialize in one step. + (hs-minor-mode): Change from defun to define-minor-mode. - * log-view.el (log-view-minor-wrap): First rev is the one at point. +2008-02-16 Nick Roberts - * calendar/cal-menu.el: Avoid macros from calendar.el so as to break - the nastiest part of the cyclic dependency. - (cal-menu-update): Use dotimes and calendar-increment-month. + * progmodes/gud.el (gud-gdb): Don't reset gdb-ready. + (gdb-ready): Move declaration... - * calendar/calendar.el: Remove unnecessary leading stars in docstrings. - (calendar-week-start-day): Add an :initializer. - (calendar-mode-map): Use suppress-keymap, and command remapping. - (describe-calendar-mode): Setup xref-stack info for the back button. - (calendar-star-date): Insert before delete. - (calendar-set-mode-line): Add file-modified info if applicable. - (calendar-increment-month): New function. + * progmodes/gdb-ui.el (gdb-ready): ...to here. + (gdb-early-user-input): New variable. + (gdb): Reset gdb-flush-pending-output to nil and set + comint-input-sender here (before gdb-prompt), instead of... + (gdb-init-1): ...here. + (gdb-send): If Emacs is not ready, defer user input to... + (gdb-prompt): ...here. -2006-01-24 Tobias C. Rittweiler (tiny change) +2008-02-16 Glenn Morris - * font-lock.el (lisp-font-lock-keywords-2): - Recognize "& keywords" only at word boundaries. + * nxml/test.invalid.xml, nxml/test.valid.xml: Move to etc/nxml. -2006-01-24 Nick Roberts + * startup.el (emacs-startup-time): Rename to `before-init-time'. + (before-init-time): New name for `emacs-startup-time'. + (command-line): Use before-init-time rather than emacs-startup-time. + * time.el (emacs-uptime): Use before-init-time rather than + emacs-startup-time. - * thumbs.el (thumbs-extra-images): New variable. Make it buffer-local - and permanent-local. - (thumbs-max-image-number): New variable. - (thumbs-do-thumbs-insertion): Use them. - (thumbs-per-line): Change default to 4. - (thumbs-marked-list): Rename from thumbs-markedL. - (thumbs-cleanup-thumbsdir, thumbs-delete-images) - (thumbs-rename-images): Use -list instead of L for internal variables. - (thumbs-call-convert): Use call-process instead of shell-command. - (thumbs-insert-thumb): Add filename as help-echo to each image. - (thumbs-show-from-dir): Rename from thumbs-show-all-from-dir. - Give dir to thumbs-show-thumbs-list. - (thumbs-show-thumbs-list): Set default-directory to that of images. - (thumbs-dired-show): Rename from thumbs-dired-show-all. - (thumbs-display-thumbs-buffer, thumbs-show-more-images): New functions. - (thumbs-mode-map): Bind "+" to thumbs-show-more-images. - (thumbs-view-image-mode-map): Bind "^" to thumbs-display-thumbs-buffer. + * composite.el (composition-function-table): Doc fix. -2006-01-23 Stefan Monnier + * calendar/time-date.el (format-seconds): Remove `nonzero' argument + in favor of `%z' specifier. + (emacs-uptime): Move to time.el. + * time.el (emacs-uptime): Move here from time-date.el. Add optional + `format' argument. Doc fix. Use `%z' rather than removed `nonzero' + argument of format-seconds. - * ses.el (ses-read-cell): Provide a default value. - -2006-01-23 Juanma Barranquero - - * term/w32-win.el (image-library-alist): Add additional names for - GIF library. - -2006-01-23 Arne J,Ax(Brgensen +2008-02-16 Dan Nicolaescu - * international/latexenc.el (latexenc-find-file-coding-system): - Add file-regular-p check. + * bindings.el (mode-line-mule-info): Make the tooltips more explicit. -2006-01-22 Stefan Monnier +2008-02-15 Lawrence Mitchell (tiny change) - * simple.el (clone-buffer): Don't show the new buffer in the same - window. + * ielm.el (ielm-is-whitespace): Remove. + (ielm-is-whitespace-or-comment): New function. + (ielm-eval-input): Use it. -2006-01-23 Juri Linkov +2008-02-15 Jason Rumney - * faces.el (link, link-visited): New faces based on default values - of `info-xref' and `info-xref-visited'. + * term/mac-win.el: Fix coding tag. - * info.el (info-xref): Inherit from `link'. - (info-xref-visited): Inherit from `link-visited'. +2008-02-15 Dan Nicolaescu - * cus-edit.el (custom-buffer-create-internal): Use widget type - `custom-manual' instead of `info-link' and don't set properties - `button-face' and `mouse-face' explicitly. - (custom-browse-group-tag, custom-browse-variable-tag) - (custom-browse-face-tag): Inherit from widget class - `custom-group-link' instead of `push-button'. - (custom-button-unraised): Inherit from `underline' face. - (custom-link): Inherit from `link' face. Fix doc and group. - (custom-add-parent-links, custom-group-value-create): Don't set - properties `button-face' and `mouse-face' explicitly for - `custom-group-link' widget. - (custom-group-link): Add properties `button-face' and `mouse-face' - to widget definition. - (custom-field-keymap): New variable. Put `custom-field-keymap' to - editable-field's :keymap property. - (custom-mode): Fix docstring: substitute keybindings for - `widget-forward' and `widget-backward' from `widget-keymap', - `widget-complete' from `custom-field-keymap', replace old - `Custom-move-and-invoke' with `widget-move-and-invoke'. Untabify. + * vc-hooks.el (vc-menu-map): + * bindings.el (mode-line-mode-menu): Add tooltips. - * desktop.el (desktop-load-file): Check for `fboundp' before - calling `symbol-function'. + * bindings.el (help-echo): Add more tooltips. Use a less + telegraphic style for existing tooltips. - * simple.el (clone-buffer, clone-indirect-buffer) - (clone-indirect-buffer-other-window): Use `read-buffer' instead of - `read-string'. Fix prompts. +2008-02-14 Stefan Monnier - * play/doctor.el (doctor-mode-map): Rename from `doc-mode-map'. + * frame.el (frame-notice-user-settings): Distinguish explicit parent-id + from the auto-generated one. -2006-01-23 Nick Roberts +2008-02-14 Glenn Morris - * thumbs.el (thumbs-file-alist): Avoid creating duplicate entries. + * mail/rmail-spam-filter.el (rmail-spam-filter): + Let-bind message-spam-status. -2006-01-22 Luc Teirlinck + * mail/smtpmail.el (password-cache-add): Declare as function. - * startup.el (inhibit-splash-screen, initial-scratch-message): - Doc fixes. +2008-02-14 Justus Piater (tiny change) -2006-01-22 Michael Albinus + * mail/smtpmail.el: Use password-cache. - Sync with Tramp 2.0.52. +2008-02-14 Juanma Barranquero - * net/tramp.el, net/tramp-ftp.el, net/tramp-util.el, - * net/tramp-vc.el: Add code for unloading Tramp. See comment before - `tramp-unload-tramp' for checklist. + * uniquify.el (uniquify-buffer-base-name): New function. + Suggested by Stefan Monnier . - * net/tramp.el: Require `timer-funcs' instead of `timer' if in - XEmacs. Contributed by Steve Youngs . - (tramp-unload-file-name-handler-alist) - (tramp-unload-tramp): New defuns. - (tramp-advice-PC-expand-many-files): New defadvice. - (tramp-save-PC-expand-many-files, tramp-setup-complete): Defuns - removed. - (tramp-handle-expand-file-name): Remove double slash. - (tramp-handle-file-attributes-with-ls): Return t as 9th attribute. - It doesn't matter, because it will be converted later on. - (tramp-handle-file-ownership-preserved-p): Rewritten. The old - implementation was just heuristic. - (tramp-post-connection): Set uid and gid properties. - (tramp-convert-file-attributes): Set file's gid change bit. - (tramp-get-remote-uid, tramp-get-remote-gid): New defuns. - (tramp-handle-expand-file-name): Use "~root" for tilde expansion - in case of su(do)? methods. The home directory of the local user - will be taken else. - (tramp-open-connection-telnet) - (tramp-open-connection-rsh, tramp-open-connection-su) - (tramp-open-connection-multi): Set PS1 to "$ ". Otherwise, a - local shell prompt could hurt. Reported by Romain Francoise - . - (tramp-let-maybe): Add `edebug-form-spec' property. - (tramp-handle-expand-file-name): Bind `default-directory' locally - to "/" in order to avoid problems with UNC shares or Cygwin - mounts. - (tramp-md5-function): Fix typo in error message. + * desktop.el (uniquify-managed): Don't defvar. + (desktop-buffer-info): Use `uniquify-buffer-base-name', not + `uniquify-managed'. Return also the buffer's base name. + (desktop-save): When saving the buffer info, filter out the base name, + and save it as buffer name if the buffer is managed by uniquify. + (uniquify-item-base): Don't declare; not called anymore. - * net/tramp-ftp.el (tramp-ftp-enable-ange-ftp): New defun. +2008-02-14 Dan Nicolaescu - * net/tramp-util.el (top): Apply `ignore' instead of `identity' - for byte-compiler pacification. + * vc.el (vc-annotate-find-revision-at-line): New function. + (vc-annotate-mode-map): Bind it. + (vc-annotate-mode-menu): Add a menu entry for it. Add :help for + some entries. -2006-01-22 Andre Spiegel +2008-02-14 Glenn Morris - * vc-rcs.el (vc-rcs-state-heuristic): Use file-attributes with - ID-FORMAT `string'. This allows us to get rid of - `vc-user-login-name UID'. + * calendar/time-date.el (format-seconds): New function. + (emacs-uptime): Use format-seconds. - * vc-sccs.el (vc-sccs-state-heuristic): Likewise. + * Makefile.in (custom-deps, finder-data, autoloads, recompile): + Remove `LC_ALL=C', since it's included in $(emacs) now. -2006-01-22 John Paul Wallington +2008-02-14 Zhang Wei - * hl-line.el (hl-line-highlight, hl-line-move): Doc fixes. + * textmodes/org-publish.el (org-publish-timestamp-filename): + Replace colon characters in filename too. -2006-01-21 Martin Rudalics +2008-02-13 Bastien Guerry - * emacs-lisp/find-func.el (find-definition-noselect) - (find-variable-noselect): Search variables in C source code too. - (find-function-C-source, find-function-noselect, find-function) - (find-function-other-frame, find-variable-noselect, find-variable) - (find-variable-other-frame, find-variable-at-point): - Fix docstrings. + * mail/rmail.el (rmail-header-name): New face. + (rmail-font-lock-keywords): Use rmail-header-name. -2006-01-21 Francesco Potort,Al(B + * mail/rmail-spam-filter.el (rsf-definitions-alist): Allow check + against X-Spam-Status header field. + (rmail-spam-filter): Also check X-Spam-Status header field. - * mail/rmailout.el (rmail-output): Don't use content-type if it is nil. +2008-02-14 Mark A. Hershberger -2006-01-21 Agustin Martin + * progmodes/flymake.el (flymake-allowed-file-name-masks): + Add support for .pm files and .php files. + (flymake-err-line-patterns): Add pattern for PHP errors. + (flymake-php-init): New function. PHP support for flymake. - * textmodes/flyspell.el (flyspell-emacs-popup, flypell-xemacs-popup): - Default to disabling the "Save affix" question. + * progmodes/compile.el (compilation-error-regexp-alist-alist): + Add regular expression for PHP errors. -2006-01-21 Marien Zwart (tiny change) +2008-02-13 Michael Albinus - * progmodes/python.el (python-mode) : Pass nil as - the first arg to run-python. + * net/ange-ftp.el (ange-ftp-quote-string): Use `shell-quote-argument'. + This DTRT even on w32 machines. + (ange-ftp-cf1): Quote FILENAME. -2006-01-21 Eli Zaretskii +2008-02-13 Stefan Monnier - * startup.el (command-line-1): Handle --no-desktop if desktop.el - is not loaded. + * smerge-mode.el (smerge-auto-combine-max-separation): New var. + (smerge-auto-combine): New fun. -2006-01-20 Jay Belanger +2008-02-12 Juri Linkov - * calc/calcalg2.el (calc-sum-rec): Fix the sum when the lower - limit is 0. + * startup.el (fancy-startup-screen, normal-splash-screen): + Set default-directory to command-line-default-directory. - * calc/calc-arith.el (math-add-symb-fancy): Check the length of - the correct variable. + * desktop.el (after-init-hook): Set inhibit-startup-screen to t + after reading the desktop. -2006-01-20 Carsten Dominik + * progmodes/compile.el (compilation-auto-jump): + Call compile-goto-error only when compilation-auto-jump-to-first-error + is non-nil. + (compilation-scroll-output): Replace :type 'boolean with a choice + that has three options including a third option `first-error'. + Doc fix. + (compilation-start, compilation-forget-errors): Add an alternate + condition comparing compilation-scroll-output with `first-error' + in addition to compilation-auto-jump-to-first-error (to call + compilation-auto-jump in the proper place). - * textmodes/org.el (org-open-at-point): Fixed bug with matching a - link. Fixed buggy argument sequence in call to `org-view-tags'. - (org-compile-prefix-format): Set `org-prefix-has-tag'. - (org-prefix-has-tag): New variable. - (org-format-agenda-item): Remove tags from headline if - appropriate. - (org-agenda-remove-tags-when-in-prefix): New option. - (org-get-tags-at): New function. +2008-02-12 Stefan Monnier -2006-01-20 Nick Roberts + * international/mule.el (sgml-html-meta-auto-coding-function): + Make sure the search limit is ahead. - * thumbs.el (thumbs-buffer): New variable. Make it buffer local. - (thumbs-find-image): Move image name and number from buffer name - to mode name. Set thumbs-buffer. Preserve point so that large - images remain visible. - (thumbs-file-alist): Construct list in thumbs-buffer and reverse - order. - (thumbs-show-image-num): Get image from thumbs-file-alist. Set - mode name. - (thumbs-next-image, thumbs-previous-image): Make them work. + * tar-mode.el: Fix broken indentation. + (tar-mouse-extract, tar-extract, tar-subfile-save-buffer): + Use with-current-buffer. -2006-01-19 Luc Teirlinck +2008-02-12 Juanma Barranquero - * cus-edit.el (custom-buffer-create-internal): State in the text above - the whole buffer buttons that they do not operate on hidden items. - (custom-face-menu): Use `custom-face-save' instead of - `custom-face-save-command'. - (custom-face-save-command): Make it an alias for `custom-face-save' - and declare it obsolete. - (custom-face-save): Doc fix. + * hexl.el (hexl-mode): Don't make `font-lock-defaults' buffer-local; + it is already automatically buffer-local. - * dired.el (dired-no-confirm): Add quote. - (dired-subdir-alist-pre-R): Add quote in - `make-variable-buffer-local' form and remove unbalanced parenthesis. +2008-02-11 Drew Adams -2006-01-19 Stefan Monnier + * help.el (describe-key): Join some split lines to facilitate filling. + * help-fns.el (describe-function-1): Fill text of overlong lines. - * textmodes/table.el (table-mode-indicator): Typo in last change. +2008-02-12 Kenichi Handa -2006-01-19 Richard M. Stallman + * emacs-lisp/bytecomp.el (byte-compile-lapcode): + Use unibyte-string instead of string-make-unibyte. - * outline.el (hide-leaves): Don't call outline-end-of-heading. - Fixes bug reported in Nov 2005. + * Makefile.in (AUTOGENEL): Remove charprop.el and uni-*.el. - * isearch.el (isearch-forward): Doc fix. +2008-02-12 Stefan Monnier - * dired.el (dired-move-to-filename-regexp): Define as alias. - (dired-no-confirm): Use defcustom. - (dired-subdir-alist-pre-R): Put defvar at top level. + * doc-view.el (doc-view-display): Change file arg to buffer arg, so it + works also for buffers w/o buffer-file-name. Update callers. + (doc-view-clone-buffer-hook): New fun. + (doc-view-mode): Use it for indirect clones. Mark the overlays with + the `doc-view' property so they can be recognized. - * battery.el (battery-linux-proc-acpi): Handle "last full capacity". + * simple.el (clone-indirect-buffer-hook): New hook. + (clone-indirect-buffer): Run it. - * textmodes/bibtex.el (bibtex-strings, bibtex-reference-keys): - Mark as risky. +2008-02-11 Daiki Ueno - * simple.el (set-mark-command): Doc fix. - (clone-indirect-buffer-other-window): - Read arg like clone-indirect-buffer. - (move-beginning-of-line): Skip invisible newlines. + * epa.el (epa-menu-mode): Merge into epa-mode. + (epa-menu-items): Rename the label "EasyPG Assistant" to + "Encryption/Decryption". -2006-01-19 Masatake YAMATO + * epa-dired.el: Define a new minor-mode epa-dired-mode for dired. + (epa-dired-mode-map): Rename from epa-dired-map. + (epa-global-dired-mode): Rename the global minor mode. - * progmodes/cpp.el (cpp-edit-load): Make the order of - listed conditions in a base C code buffer and its associate - CPP Edit buffer the same. +2008-02-11 Drew Adams -2006-01-19 Kenichi Handa + * isearch.el (isearch-fail): New face. + (isearch-message): Highlight failure part of input. - * mail/rmail.el (rmail-enable-mime): Docstring fixed. - (rmail-mime-feature): Likewise. - (rmail-require-mime-maybe): Use display-warning to show a warning - message. +2008-02-11 Stefan Monnier - * international/mule.el (auto-coding-regexp-alist-lookup): New fun. - (find-auto-coding): Use auto-coding-regexp-alist-lookup. + * ibuffer.el (ibuffer-header-line-format): New var. + (ibuffer-mode): Set it instead of header-line-format. + (ibuffer-update): Use it to set header-line-format. -2006-01-18 Stefan Monnier + * international/mule-cmds.el (ucs-insert): Inherit surrounding + properties like self-insert-command. - * array.el: Move defvars out of eval-when-compile. - (array-make-template): Replace undeclared global var with a local one. - (array-mode): Inline initialization functions. - (array-init-local-variables, array-init-max-row) - (array-init-max-column, array-init-columns-per-line) - (array-init-field-width, array-init-rows-numbered) - (array-init-line-length, array-init-lines-per-row): Remove. - - * play/doctor.el: Move defvars out of eval-when-compile. Use dolist. - (doc-mode-map): Define explicitly. - (doctor-txtype): Use mapc. +2008-02-11 Drew Adams - * textmodes/table.el: Move defvars out of eval-when-compile. - Remove harmful code meant to avoid byte-compiler warnings. - (table-fixed-mode-indicator): Remove. Use a more complex mode-line - specification that checks table-fixed-width-mode directly. - (table-recognize-region, table-recognize-cell): - Use restore-buffer-modified-p. - (table-fixed-width-mode): Remove code that refreshes - table-fixed-mode-indicator. - (*table--cell-describe-bindings, *table--cell-describe-mode): - Avoid obsolete name print-help-return-message. - (table--test-cell-list): Don't use replace-regexp from elisp. - (table--point-entered-cell-function, table--point-left-cell-function): - Don't set table-fixed-mode-indicator, use force-mode-line-update. + * progmodes/etags.el: Add many doc strings. - * textmodes/org.el: Move defvars out of eval-when-compile. Move code - that was after the end of file. Use buffer-file-name variable. - (org-timestamp-change): Use with-current-buffer. - (org-todo-list): Don't unnecessarily define a new buffer-local var. - (org-agenda-file-to-end, org-agenda-file-to-front): Remove unused arg - `file'. +2008-02-11 Jason Rumney - * progmodes/fortran.el: Move defvars out of eval-when-compile. - (fortran-break-line): Remove unused var `opoint'. - (fortran-abbrev-start): Obey help-event-list. - -2006-01-18 Jesper Harder - - * mail/smtpmail.el (smtpmail-send-it): Use insert-buffer-substring. - -2006-01-18 Masatake YAMATO - - * progmodes/make-mode.el (makefile-imake-mode): New mode - derived from makefile-mode. - (makefile-imake-mode-syntax-table): New syntax table - derived from makefile-mode-syntax-table. - (makefile-mode): Write about makefile-imake-mode in doc string. - (makefile-mode-map): Bind "\C-c\C-m\C-i" to makefile-imake-mode. - (makefile-imake-font-lock-keywords): New font lock keywords. - - * files.el (auto-mode-alist): Add Imakefile. + * ldefs-boot.el: Regenerated. -2006-01-17 Agustin Martin +2008-02-11 Glenn Morris - * textmodes/flyspell.el (ispell-kill-ispell-hook): Add to the hook when - loading the file rather than when turning on flyspell-mode. + * progmodes/compile.el (compilation-error-regexp-alist-alist): + Shorten some names. -2006-01-16 Luc Teirlinck + * ffap.el (ffap-rfc-directories): Add :version. - * cus-edit.el (customize-rogue): Minor doc fix. +2008-02-11 Chris Moore -2006-01-17 Juri Linkov + * jka-cmpr-hook.el (jka-compr-compression-info-list): Handle .sifz + files, and backup files of same. - * dired-aux.el (dired-diff): Use dired-dwim-target-directory - instead of the file at the mark as default if the file at the mark - is the same as the file at point or if dired-dwim-target-directory - is not the same as the current directory and the mark is not active. +2008-02-11 Kevin Ryde - * log-view.el (log-view-minor-wrap): Use the same logic to get - revisions as `log-view-diff'. + * ffap.el (ffap-rfc-directories): New variable. + (ffap-rfc): Look in those dirs before offering ffap-rfc-path. - * info.el (Info-revert-find-node): Check for Info-current-file - before preserving new-history. + * info.el (Info-next-reference, Info-prev-reference) + (Info-try-follow-nearest-node): Move to and follow https:// links too. - * man.el (Man-heading-regexp): Add `/'. + * simple.el (completion-list-mode): Show full completion-list-mode-map + in the docstring. - * textmodes/sgml-mode.el: Add `coding: iso-2022-7bit' cookie. - (html-mode): Set `sentence-end-base' instead of `sentence-end'. +2008-02-11 Sam Steingold -2006-01-16 Juri Linkov + * vc-hooks.el (vc-prefix-key): Remove (undo 2008-02-06 patch). - * faces.el (mode-line-faces): New defgroup. - (mode-line-highlight): Move definition after new defgroup. - (mode-line, mode-line-inactive, mode-line-highlight): - Replace :group `modeline' with `mode-line-faces'. - (mode-line-buffer-id): New face. - (modeline-buffer-id): New face alias. - (vertical-border): Remove :group `modeline'. +2008-02-11 Glenn Morris - * bindings.el (propertized-buffer-identification): Use face - `mode-line-buffer-id' instead of `Buffer-menu-buffer'. - (mode-line-next-buffer, mode-line-previous-buffer): New functions. - (mode-line-buffer-identification-keymap): For mouse-1 replace - `mode-line-unbury-buffer' with `mode-line-previous-buffer'. - Replace `mode-line-bury-buffer' with `mode-line-next-buffer' for - mouse-3. + * startup.el (emacs-startup-time): New variable. + (command-line): Set emacs-startup-time. - * buff-menu.el (buffer-menu-buffer) : Renamed from - Buffer-menu-buffer. Doc fix. - (Buffer-menu-buffer): Face alias to buffer-menu-buffer. - (list-buffers-noselect): Use `buffer-menu-buffer' face instead of - `Buffer-menu-buffer'. + * calendar/time-date.el (emacs-uptime): New function. - * info.el (Info-mode-line-node-keymap): New defvar. - (Info-set-mode-line): Use `stringp' to check Info-current-file. - Propertize Info-current-node with `mode-line-buffer-id' and - `mode-line-highlight' faces and `Info-mode-line-node-keymap'. - - * time.el (display-time-mail-face): Replace :group `faces' with - `mode-line-faces'. +2008-02-10 Bastien Guerry -2006-01-16 Kenichi Handa + * mail/rmail.el (rmail-nonignored-headers): Allow to be nil. + (rmail-clear-headers): Don't check `rmail-nonignored-headers' when + it is nil. - * international/code-pages.el: Add autoload cookies for cp125[0345678]. +2008-02-10 Daiki Ueno - * language/european.el (cp1252): New alias for windows-1252. + * epg-config.el: Expand the contents of epg-package-info.el. + (epg-package-name): New constant. + (epg-version-number): New constant. + (epg-bug-report-address): New constant. - * international/mule.el (autoload-coding-system): Prepare for EOL - variants. + * epa-mail.el (epa-mail-mode): Add autoload cookie. + (epa-global-mail-mode): New global minor mode. -2006-01-15 Dan Nicolaescu + * epa-file.el (epa-file-mode): New global minor mode. - * term.el (term-raw-map): Add mapping for insert. - (term-send-insert): New. - (term-mode): Make variables local here instead of doing it in - `term-emulate-terminal'. - (term-emulate-terminal): Delete incorrect optimization for cr+lf. - Scroll reverse needs to take into account the scroll region. - Saving and restoring the cursor should save the color attributes too. - (term-reset-terminal): Reset the scroll region. - (term-handle-ansi-escape): Cursor up and down should take into - account the scroll region. - (term-set-scroll-region): Rename from `term-scroll-region'. - Move to 0,0 after setting the region. - (term-handle-scroll): Handle scroll up. - (term-down): Fix off by one error. - (term-delete-lines): Do not delete outside the scroll region. - (term-insert-lines): Take into account the scroll region. + * epa-dired.el (epa-dired-mode): New global minor mode. -2006-01-15 Stefan Monnier + * epa.el (epa-menu): New variable. + (epa-menu-items): New variable. + (epa-menu-mode): New global minor mode. + (epa-global-minor-modes): New user option. + (epa-mode): New global minor mode. - * textmodes/ispell.el (ispell-internal-change-dictionary) - (ispell-change-dictionary): Undo most of last change of 2006-01-13. - (start, end): Move declaration outside of eval-when-compile. +2008-02-10 Michael Albinus - * textmodes/flyspell.el (flyspell-kill-ispell-hook): New fun. - (flyspell-mode-on): Use it. + * net/dbus.el: Remove `no-byte-compile' cookie. + (dbus-call-method, dbus-register-signal, dbus-debug) + (dbus-registered-functions-table): Declare them with + `declare-function' or `defvar', respectively. + (top): Don't assert any longer. Require 'cl when compiling. + Apply `ignore-errors' but `dbus-ignore-errors'. - * textmodes/ispell.el (ispell-kill-ispell): Run new hook - ispell-kill-ispell-hook. +2008-02-10 Dan Nicolaescu -2006-01-14 Luc Teirlinck + * diff-mode.el (diff-add-change-log-entries-other-window): + Use add-change-log-entry. - * cus-edit.el (Custom-set, Custom-save, Custom-reset-current) - (Custom-reset-saved): Do not ask for confirmation in single option - buffers. +2008-02-09 Jason Rumney -2006-01-13 Richard M. Stallman + * button.el (button-map): + * wid-edit.el (widget-keymap): Avoid line-end confusion in autoloads. + * ldefs-boot.el: Regenerate. - * font-lock.el (lisp-font-lock-keywords-1): Minor rearrangement. +2008-02-09 Dan Nicolaescu -2006-01-13 Romain Francoise + * epa.el (epa-faces, epa): + * epa-file.el (epa-file): + * epg-config.el (epg): Add :version. - * add-log.el (add-change-log-entry, change-log-merge): - Conditionally use `hard-newline'. +2008-02-09 Thien-Thi Nguyen -2006-01-13 Martin Rudalics + * vc.el (vc-exec-after): Append CODE to previous fragments. + (vc-diff-finish): Take BUFFER directly, not BUFFER-NAME; + take MESSAGES instead of VERBOSE; use it when non-nil. + (vc-diff-internal): Compute messages once; use them; + update call to vc-diff-finish. - * wid-edit.el (widget-field-end): If the overlay is no longer - associated with a buffer, behave as if the overlay didn't exist. +2008-02-09 Michael Olson - * cus-edit.el (custom-add-see-also, custom-add-parent-links): - Make sure the links use the `custom-link' face. + * net/tramp.el (tramp-process-sentinel): Avoid error when process + buffer has been killed, such as by + `tramp-cleanup-all-connections'. -2006-01-13 Stefan Monnier +2008-02-09 Miles Bader - * progmodes/ld-script.el (auto-mode-alist): Use \' rather than $. - (ld-script-mode): Don't set indent-line-function since we don't - have one. - -2006-01-13 Carsten Dominik - - * textmodes/org.el (org-open-file): Use mailcap for selecting an - application. - (org-file-apps-defaults-gnu): Use mailcap as the default for - selecting an application on a UNIX system. - (org-agenda-show-tags): New command. - (org-table-insert-hline): Keep cursor in current table line. - (org-table-convert): Offset effect of modifying - `org-table-insert-hline'. - (org-format-agenda-item): New optional argument TAG. - (org-compile-prefix-format): Handle %T format for the tag. - (org-expand-wide-chars): New function. - (org-table-insert-row, org-table-insert-hline): - Use `org-expand-wide-chars'. - (org-open-file): Fix bug in program launch. - (org-get-time-of-day): Fix bug with times before 1am. - (org-agenda-menu): Add tags commands. + * net/rcirc.el (rcirc-omit-mode): Suppress invisibility ellipsis. -2006-01-13 Agustin Martin +2008-02-08 Stefan Monnier - * textmodes/ispell.el (ispell-init-process): Include the used - dictionary in ispell process start message. - (ispell-internal-change-dictionary): When flyspell-mode is active - and dictionary is changed, make sure ispell process is restarted - and flyspell word cache cleared out for the current buffer. - (ispell-change-dictionary): Make sure flyspell word cache is - cleared out in all buffers with active flyspell mode when - dictionary is globally changed. - Call ispell-internal-change-dictionary after dictionary change. + * diff-mode.el (diff-add-change-log-entries-other-window): Avoid the + splitter in context hunks. -2006-01-13 Eli Zaretskii +2008-02-08 Kenichi Handa - * emacs-lisp/bytecomp.el (batch-byte-recompile-directory): Doc fix. + * international/fontset.el (setup-default-fontset): Fix arabic otf + font specification. - * makefile.w32-in (MH_E_SRC): Synchronize with Makefile.in. - (pre-mh-loaddefs.el-SH, pre-mh-loaddefs.el-CMD): Update Copyright - years. Fix small differences wrt Makefile.in. - (recompile): Use --eval '(batch-byte-recompile-directory 0)', like - Makefile.in does. +2008-02-08 Daiki Ueno -2006-01-12 Bill Wohler + * epa-dired.el: + * epa-file.el: + * epa-mail.el: + * epa-setup.el: + * epa.el: + * epg-config.el: + * epg-package-info.el: + * epg.el: Initial check-in of EasyPG. - * Makefile.in (MH_E_SRC): Replace mh-index.el and mh-pick.el with - mh-search.el. +2008-02-08 Glenn Morris -2006-01-12 Masatake YAMATO + * woman.el (woman-locale): New defcustom. + (woman-expand-locale, woman-manpath-add-locales): New functions. + (woman-manpath): Call woman-manpath-add-locales. Bump :version. - * progmodes/ld-script.el: Update copyright year. + * international/mule-cmds.el (locale-translate): New function, + with old code extracted from set-locale-environment. + (set-locale-environment): Use locale-translate. Set woman-locale. -2006-01-12 Chong Yidong + * cus-start.el (selection-coding-system): Remove, since it's now + defined in select.el rather than in xselect.c. + * select.el (selection-coding-system): Make it a defcustom, and + add the properties from cus-start.el. Bump :version. - * cus-theme.el (custom-theme-add-variable, custom-theme-add-face): - Don't add widget if setting undefined. + * custom.el (custom-theme-set-variables): Sort symbols that are + dependencies before symbols that depend on them. + (custom-enabled-themes): Set after custom-theme-directory. -2006-01-12 John Paul Wallington + * pcmpl-unix.el (top-level): Move provide statement to end. + (pcmpl-unix-group-file, pcmpl-unix-passwd-file): Remove leading + `*' from doc-string. Allow to be nil. + (pcmpl-ssh-known-hosts-file): Convert comment into expanded doc-string. + Allow to be nil. Add :version. + (pcmpl-ssh-hosts): Move definition before use. Handle lines + without hostnames, and multiple hostnames per line. - * help-fns.el (describe-variable): Remove newlines from void - variable output. + * term/x-win.el (x-handle-parent-id): Remove free variable `parent-id'. -2006-01-13 Nick Roberts +2008-02-08 Phil Hagelberg - * wdired.el (wdired-mode-map): Add help echo for - wdired-abort-changes. + * pcmpl-unix.el (pcmpl-ssh-known-hosts-file): New defcustom. + (pcomplete/ssh, pcomplete/scp, pcmpl-ssh-hosts): New functions. - * man.el (Man-file-name-regexp): Adjust for a list of files. +2008-02-07 Timo Savola -2006-01-12 Masatake YAMATO + * startup.el (command-line-x-option-alist): Add --parent-id. - * progmodes/ld-script.el (auto-mode-alist): Support - suffix conventions used in netbsd and eCos. + * term/x-win.el (x-handle-parent-id): New function. -2006-01-11 Luc Teirlinck +2008-02-07 Chris Moore - * cus-edit.el (custom-reset-menu, custom-buffer-create-internal) - (custom-variable-menu, custom-face-menu, custom-group-menu) - (Custom-mode-menu): Change names of menu items. (As discussed on - emacs-devel.) - (custom-face-menu): Add "Undo Edits" item. + * mouse.el (x-fixed-font-alist): Use consistent capitalization for + "Font Menu". - * startup.el (init-file-user): defcustom -> defvar. +2008-02-06 Michael Albinus - * tooltip.el (tooltip-mode): Doc fix. + * net/dbus.el (dbus-interface-peer): New defconst. + (dbus-ping): New defun. -2006-01-11 Stefan Monnier +2008-02-06 Sam Steingold - * reveal.el (reveal-post-command): window-buffer signals an error on - dead windows rather than returning nil. - (reveal-open-new-overlays): An overlay might die while we open others. + * vc-hooks.el (vc-prefix-key): New user-customizable variable. -2006-01-11 Bill Wohler +2008-02-06 Stefan Monnier - * cus-dep.el (generated-custom-dependencies-file): Fix typo and - phrasing in docstring. + * net/ange-ftp.el (ange-ftp-unhandled-file-name-directory): + Just return nil and let the C code provide a fallback. - * Makefile.in (MH_E_SRC): Rename from MH-E-SRC since the dashes - can give some systems gas. Add new file mh-buffers.el. +2008-02-05 Glenn Morris -2006-01-06 Masatake YAMATO + * net/tramp-cmds.el (tramp-cleanup-connection): Update calls to + tramp-flush-connection-property for removed 2nd argument. - * font-lock.el (cpp-font-lock-keywords): Font lock keywords for - C preprocessor forward ported from GNU Emacs 21.2. +2008-02-05 Stefan Monnier - * progmodes/asm-mode.el (asm-font-lock-keywords): - Use `cpp-font-lock-keywords'. + * diff-mode.el (diff-add-change-log-entries-other-window): + Rename from diff-create-changelog. Change users. + Minor change to hopefully work with plain diffs. + (diff-mode-map): Add binding for it. - * progmodes/ld-script.el (ld-script-font-lock-keywords): Ditto. +2008-02-04 Dan Nicolaescu - * progmodes/ld-script.el (auto-mode-alist): Use \\> instead - of $ for "\\.ld[s]?". + * diff-mode.el: Add new TODO entry. + (diff-create-changelog): New function. + (diff-mode-menu): Bind it. -2006-01-10 Stefan Monnier +2008-02-04 Kenichi Handa - * progmodes/tcl.el (tcl-indent-command): Use indent-for-tab-command. - (tcl-indent-line): Return `noindent' if inside a string. + * international/mule-diag.el (print-fontset-element): Handle the + case of inhibiting the fallback fonts. - * progmodes/flymake.el (flymake-split-string): Remove more than one - empty string at beg/end of the result. - (flymake-find-buildfile, flymake-find-possible-master-files): - Use expand-file-name. - (flymake-fix-file-name): Don't replace \ with / and don't remove ./ - since expand-file-name does it for us. Use directory-file-name. - (flymake-ler-get-full-file, flymake-ler-get-file, flymake-ler-get-line) - (flymake-ler-get-type, flymake-ler-get-text) - (flymake-ler-make-ler): Remove. Replace by defstruct. Update callers. - (flymake-current-line-no): Remove spurious interactive spec. - (flymake-delete-temp-directory): Remove unused var `slash-pos'. - (flymake-check-include): Remove arg inc-path merged into inc-name. - (flymake-check-patch-master-file-buffer): Fit in 80 columns. - Arg regexp-list replaced by a simple regexp. - (flymake-master-make-header-init, flymake-master-tex-init): - Correspondingly replace regexp-list with a regexp. Fix regexp. +2008-02-04 Kim F. Storm -2006-01-10 Simon Josefsson + * ido.el (ido-magic-forward-char, ido-magic-backward-char) + (ido-magic-delete-char): Use prefix arg. - * mail/smtpmail.el (smtpmail-try-auth-methods): Add comment - describing AUTH PLAIN fix. +2008-02-03 Juanma Barranquero -2006-01-10 Thien-Thi Nguyen + * term/w32-win.el (image-library-alist): Prefer libpng12 to libpng13, + because the latter is in fact a 1.2.8 build distributed with GTK+ (as + of today, the most recent libpng is 1.2.24). - * mail/emacsbug.el (report-emacs-bug-text-prompt): Delete var. - (report-emacs-bug): Don't record initial prompt text. - Instead, add text properties to prompting text. - (report-emacs-bug-hook): Delete prompting text. +2008-02-03 Michael Albinus -2006-01-09 Stefan Monnier + * ediff-util.el (ediff-compute-custom-diffs-maybe): Handle remote files. - * progmodes/flymake.el (flymake-find-buildfile): Remove invariant arg - `dirs'. Adjust callers. + * net/dbus.el (top): Check (featurep 'dbusbind). -2006-01-09 John Paul Wallington + * net/tramp.el (tramp-process-sentinel): New defun. + (tramp-do-copy-or-rename-file-out-of-band) + (tramp-maybe-open-connection): Use it as process sentinel. + (tramp-handle-delete-directory): Don't use the "-f" option; it + isn't portable. + (tramp-handle-start-file-process): Echo `tramp-end-of-output' + after the command. + (tramp-handle-shell-command): Set `mode-line-process' in the + asynchronous case. - * cus-edit.el (custom-comment) : Add TTY definitions. + * net/tramp-cache.el (tramp-flush-connection-property): Remove EVENT. -2006-01-09 Stefan Monnier + * net/tramp-fish.el (tramp-fish-maybe-open-connection): + * net/tramp-smb.el (tramp-smb-maybe-open-connection): + Use `tramp-process-sentinel' as process sentinel. - * reveal.el (reveal-open-new-overlays): New extracted fun. - (reveal-close-old-overlays): Idem. Check overlays's liveness before - using them. Simplify the code. - (reveal-post-command): Use them. Fix up obsolete windows in - reveal-open-spots. +2008-02-02 Juanma Barranquero - * progmodes/flymake.el: Use `require' rather than autoload for - XEmacs's overlays. - (flymake-get-common-file-prefix, flymake-build-relative-filename): - Delete. Use file-relative-name instead. - (flymake-get-syntax-check-program-args, flymake-perl-init): - Simplify the resulting code. + * whitespace.el (global-whitespace-mode): Revert last change. + (whitespace-unload-function): Force `global-whitespace-mode' + to deactivate local modes in a slightly less intrusive way. - * log-view.el (log-view-file-re, log-view-message-re): Add support - for DaRCS output. +2008-02-02 Eli Zaretskii -2006-01-09 Alex Schroeder + * view.el (kill-buffer-if-not-modified): Add an autoload cookie. - * mail/rmail.el (rmail-reply-regexp): Also ignore mailing list - identifiers sometimes added in square brackets at the beginning of - subject lines. +2008-02-02 Glenn Morris -2006-01-07 Richard M. Stallman + * international/latin1-disp.el (latin1-display): + * progmodes/fortran.el (fortran-comment-indent-char): + * progmodes/idlw-shell.el (top-level): + * term/mac-win.el (mac-keyboard-translate-char): + * whitespace.el (whitespace-char-valid-p): + * wid-edit.el (widget-key-sequence-read-event): + Use characterp rather than char-valid-p. - * cus-edit.el (Custom-set, Custom-save): Doc fix. - (Custom-reset-current, Custom-reset-saved): Change question text. - (Custom-reset-standard): Likewise. - (custom-variable-reset-saved): Doc fix. + * progmodes/cap-words.el (capitalized-next-word-boundary): Rename + to capitalized-find-word-boundary. Doc fix. Update callers. + (capitalized-next-word-boundary-function-table): Rename to + capitalized-find-word-boundary-function-table. Doc fix. Update users. -2006-01-07 Eli Zaretskii + * ps-bdf.el (bdf-read-font-info): Use string-to-number rather than + string-to-int. - * startup.el (init-file-user): Doc fix. + * ps-def.el (declare-function): Add compatibility definition. + (ps-plot-with-face, ps-plot-string): Declare as functions. + (ps-bold-faces, ps-italic-faces): Declare variables. -2006-01-07 Alex Schroeder + * ps-print.el (ps-mule-initialize, ps-mule-begin-job) + (ps-mule-end-job): Declare as functions. - * mail/rmail.el (rmail-current-subject): New function. - (rmail-current-subject-regexp): New function. - (rmail-next-same-subject): Use it. + * wid-edit.el (widget-string-complete): Use assoc-string rather + than assoc-ignore-case. - * mail/rmailsum.el (rmail-summary-by-topic): - Use rmail-current-subject and rmail-current-subject-regexp. - (rmail-summary-next-same-subject): Ditto. +2008-02-01 Chong Yidong - * net/rcirc.el (rcirc-send-input): No longer check whether the - process is open, since not all commands need an open process. - (rcirc-send-string): Check whether the process is open before - sending anything. - (rcirc-ignore-list): New option. - (rcirc-ignore-list-automatic): New variable. - (rcirc-print): Take rcirc-ignore-list into account. - (rcirc-cmd-ignore): New command. - (rcirc-ignore-update-automatic): New function. - (rcirc-handler-PART, rcirc-handler-QUIT): Use it to maintain the - list if ignored nicks. - (rcirc-handler-NICK): Ditto, and also ignore the new nick. + * progmodes/etags.el (next-file): Improve revert message. -2006-01-06 David Reitter +2008-02-01 Andreas Schwab - * mail/emacsbug.el (report-emacs-bug): Let explanations correctly - reflect the address to which the report will be sent. + * loadup.el: Load language/burmese instead of language/myanmar. -2006-01-06 Eli Zaretskii +2008-02-01 Richard Stallman - * progmodes/ld-script.el (auto-mode-alist): Recognize linker - scripts whose file-name extensions are "\.x[bdsru]?[cn]?$". + * language/burmese.el: Rename from myanmar.el. + ("Burmese"): Rename from "Myanmar". -2006-01-01 Michael Ernst (tiny changes) +2008-02-01 Kenichi Handa - * textmodes/tildify.el: Fix typos (misspellings) in the commentary. + * international/fontset.el (script-representative-chars): Add cham + and tai-viet. + (setup-default-fontset): Add iso10646-1 font for latin and ipa. + Add fontconfig spec for cjk-misc. Explicitly specify font font + for U+E000..U+F8FF. - * emacs-lisp/find-func.el (find-definition-noselect): Fix typo in - the doc string: "functoin" => "function". - * ldefs-boot.el: Likewise. + * international/characters.el (script-list): Add cham. - * textmodes/bibtex.el (bibtex-validate-globally): Fix typo in a - message text: "Duplicat" => "Duplicate". + * language/cham.el: New file. -2006-01-06 Sven Joachim (tiny change) +2008-02-01 Mark A. Hershberger - * files.el (basic-save-buffer-2): If backing-up failed, reset - buffer-backed-up to nil. + * xml.el (xml-escape-string): Don't do any encoding changes on the + string. -2006-01-06 Nick Roberts +2008-02-01 Kenichi Handa - * progmodes/gud.el (gdb-script-skip-to-head) - (gdb-script-calculate-indentation): Indent for breakpoint command - lists also. + * language/ind-util.el (in-is13194-post-read-conversion): + Delete unnecessary call of indian-compose-region. -2006-01-05 Bill Wohler +2008-02-01 Vinicius Jose Latorre - * Makefile.in (compile-always): Add mh-autoloads dependency. - (bootstrap): Remove mh-autoloads dependency, as compile dependency - provides it. - (updates): Remove mh-autoloads dependency, since it probably has - already run recently (via recompile). + * ps-print.el: Some face attributes (like :strike-through) were not + being recognised. Reported by Leo . + (ps-print-version): New version 7.3.2. + (ps-screen-to-bit-face): Fix code. Call ps-face-strikout-p, + ps-face-overline-p and ps-face-box-p functions. -2006-01-05 Stefan Monnier + * ps-def.el (ps-face-strikout-p, ps-face-overline-p, ps-face-box-p): + New functions. - * textmodes/flyspell.el (flyspell-accept-buffer-local-defs): Add an - argument `force' to disable the flyspell-last-buffer optimization. - (flyspell-mode-on): Use it. +2008-02-01 Kenichi Handa - * progmodes/flymake.el (flymake-get-cleanup-function): Default to - flymake-simple-cleanup. - (flymake-allowed-file-name-masks): Use this new default. - All the functions are now called in the right buffer rather than - passing the buffer as argument. - (flymake-process-sentinel): Switch to buffer before calling cleanup. - (flymake-parse-err-lines): Remove redundant buffer arg. - (flymake-get-program-dir): Comment out unused function. - (flymake-start-syntax-check, flymake-start-syntax-check-process): - Remove redundant buffer argument. - (flymake-get-real-file-name, flymake-simple-java-cleanup) - (flymake-simple-cleanup, flymake-master-cleanup): Remove buffer arg. + * international/fontset.el (font-encoding-alist): Add an entry for + iso8859-16. + (setup-default-fontset): Add iso8859-16 to latin. -2006-01-05 Richard M. Stallman + * descr-text.el (describe-char-display): Convert a GLYPH-CODE to a + hexadigit string. + (describe-char): Adjust for the above change. - * info.el (Info-find-node): Don't record previous node if have none. - (info): Go to directory only if history is empty. +2008-02-01 Kenichi Handa - * simple.el (mark): Doc fix. + * international/fontset.el (font-encoding-alist): Don't set the + repertory of GB18030 fonts. -2006-01-05 YAMAMOTO Mitsuharu +2008-02-01 Kenichi Handa - * term/mac-win.el (mac-ae-parameter): Don't coerce data if it is - already of desired type. - (mac-ae-list): Coerce parameter to "list" type. - (mac-dispatch-apple-event): Replace cadr part of event with a - dummy position so that event-start returns it. + * language/indian.el: Set font-shape-text for all Indic characters + in composition-function-table. -2006-01-05 Carsten Dominik + * language/khmer.el: New file. - * textmodes/org.el (org-end-of-subtree): New function. - (org-cycle, org-subtree-end-visible-p, org-scan-tags): - Use `org-end-of-subtree'. - (org-agenda, org-agenda-convert-date): Protect calls to - `fit-window-to-buffer'. - (org-tags-view): Force matching of sublevels when doing a - todo-only search. Define the correct redo command, including the - arguments. - (org-agenda-redo): Display message. - (org-check-for-org-mode): New function. - (org-agenda-type): New variable. - (org-timeline, org-agenda-list, org-todo-list, org-tags-view): - Set `org-agenda-type'. - (org-agenda-check-type): New function. - (org-agenda-goto-today, org-agenda-later, org-agenda-earlier) - (org-agenda-week-view, org-agenda-day-view) - (org-agenda-next-date-line, org-agenda-previous-date-line) - (org-agenda-log-mode, org-agenda-toggle-diary) - (org-agenda-toggle-time-grid, org-agenda-date-later) - (org-agenda-date-prompt, org-agenda-diary-entry) - (org-agenda-execute-calendar-command, org-agenda-goto-calendar) - (org-agenda-convert-date, org-agenda-menu): - Use `org-agenda-check-type'. - (org-make-overlay, org-delete-overlay) - (org-detatch-overlay, org-move-overlay, org-overlay-put): - New compatibility functions. - (org-calendar-select-mouse): New command. - -2006-01-04 Chong Yidong - - * cus-edit.el (Custom-reset-current, Custom-reset-saved) - (Custom-reset-standard): Fix y-or-n-p messages. - (custom-link): New face for links. - (custom-buffer-create-internal, custom-manual): Use it. - (custom-face-save): Push to theme-face before setting face spec. - - * wid-edit.el (widget-default-mouse-face-get): New function. - (widget-specify-button): Handle mouse-face like button-face. - - * custom.el (load-theme): Clear old theme settings if reloading. - -2006-01-03 Luc Teirlinck - - * cus-edit.el (custom-buffer-create-internal): Move whole buffer - "Erase Customization" button back to same position it occupies in - the individual State menus. - -2006-01-04 Kim F. Storm - - * wid-edit.el (key-sequence): Rework widget to read key binding - using `kbd' syntax. Use C-q to insert literal key, event, or code. - (widget-key-sequence-default-value): Default value for empty sequence. - (widget-key-sequence-map): New map for reading key binding. Bind C-q. - (widget-key-sequence-read-event): New command for C-q. - (widget-key-sequence-validate, widget-key-sequence-value-to-internal) - (widget-key-sequence-value-to-external): New functions. - -2006-01-03 Stefan Monnier - - * progmodes/flymake.el (flymake-create-temp-with-folder-structure): - Use expand-file-name. - (flymake-delete-temp-directory): Use expand-file-name, - file-name-directory, and directory-file-name. - (flymake-strrchr): Delete. - (flymake-start-syntax-check): Don't pass the redundant buffer argument - to the init-f function. - (flymake-save-buffer-in-file, flymake-init-create-temp-buffer-copy) - (flymake-init-find-buildfile-dir) - (flymake-init-create-temp-source-and-master-buffer-copy) - (flymake-simple-make-init-impl, flymake-simple-make-init) - (flymake-master-make-init, flymake-master-make-header-init) - (flymake-simple-make-java-init, flymake-simple-ant-java-init) - (flymake-perl-init, flymake-simple-tex-init, flymake-master-tex-init) - (flymake-xml-init): Remove corresponding redundant buffer argument. - (flymake-allowed-file-name-masks): Remove last elems that are equal to - the default anyway. Clean up regexps. - - * progmodes/flymake.el (flymake-temp-source-file-name) - (flymake-master-file-name, flymake-temp-master-file-name) - (flymake-base-dir): New buffer-local vars. - (flymake-buffer-data, flymake-get-buffer-value) - (flymake-set-buffer-value): Replace those hash-tables by the new - buffer-local vars. Update callers. - - * progmodes/flymake.el (flymake-check-start-time) - (flymake-check-was-interrupted, flymake-err-info, flymake-is-running) - (flymake-last-change-time, flymake-new-err-info, flymake-timer): - Move definition, so we can remove redundant earlier declaration. - (flymake-replace-regexp-in-string, flymake-split-string) - (flymake-get-temp-dir): Use defalias. - (flymake-popup-menu): Remove `pos' argument. Use posn-at-point. - (flymake-xemacs-window-edges): Remove unused function. - (flymake-get-point-pixel-pos): Move. - (flymake-pid-to-names, flymake-reg-names) - (flymake-get-source-buffer-name, flymake-unreg-names): Remove. - Replace by a simple list flymake-processes and by process-buffer. - Update callers. Other than simplify the code, it uses buffers rather - than buffer-names so it doesn't get confused by uniquify. - (flymake-buffer-data): The global value should just be nil. - - * emacs-lisp/bytecomp.el (byte-compile-file-form-defalias): - Optimize the body of a defalias like any other code. - - * font-lock.el (font-lock-fontify-buffer, font-lock-fontify-region): - Make sure we've setup font-lock's vars. It may influence which - function we then call. - (font-lock-default-fontify-buffer): Don't bother calling set-defaults - here since it's too late anyway. - -2006-01-03 Romain Francoise - - * startup.el (fancy-splash-tail, normal-splash-screen): - Update copyright year. - -2006-01-02 J.D. Smith - - * mouse.el (mouse-drag-track): Rename, from - `mouse-drag-region-1'. Includes optional argument required to - enable post-drag event processing (e.g. delete region keys). - Can be used without this argument to track a mouse region and operate - on it as soon as the drag completes. - (mouse-drag-region): Use `mouse-drag-track'. - -2006-01-02 Chong Yidong - - * cus-edit.el (custom-guess-name-alist, custom-guess-doc-alist): - Move to `custom-buffer' group. - - * cus-theme.el: Rewrite the Custom New Theme Mode interface. - (custom-new-theme-mode-map, custom-theme-insert-variable-marker) - (custom-theme-insert-face-marker, custom-theme-variable-menu) - (custom-theme-face-menu): New variables. - (custom-theme-add-variable, custom-theme-variable-action) - (custom-variable-reset-theme, custom-theme-delete-variable) - (custom-face-reset-theme, custom-theme-face-action) - (custom-theme-delete-face, custom-theme-merge-theme) - (custom-theme-add-face, custom-theme-visit-theme): New functions. - -2006-01-01 Chong Yidong - - * custom.el: Move Custom Themes commentary to start of theme code. - (custom-known-themes): Rename `standard' theme to `changed'. - (custom-push-theme): Caller no longer specifies what theme to use - when doing `reset'---the setting is simply removed from the theme. - Delete MODE from `theme-value' and `theme-settings' properties. - (custom-declare-theme): Ignore &rest args since we don't use them. - - (custom-loaded-themes): Delete variable. - (custom-theme-load-themes, custom-theme-loaded-p) - (custom-theme-value): Delete functions. - - (custom-declare-theme): Signal error on invalid theme names. - (provide-theme): custom-loaded-themes was deleted. - (load-theme): Load the file unconditionally. - (enable-theme): Call `load-theme' if theme is undefined. - (custom-enabled-themes): Only update value for successful loads. - (disable-theme): Complete from enabled themes when interactive. - (custom-variable-theme-value): Calculate theme value directly. - - (custom-theme-reset-variables, custom-reset-variables): Mark as - XEmacs compatibility functions. We don't actually use these. - - * cus-edit.el (custom-variable-state-set): - Use custom-variable-theme-value instead of custom-theme-value. - (custom-face-state-set): Rename `standard' theme to `changed'. - (custom-save-variables, custom-save-faces): Delete unneeded - references to custom-reset-variables. - (custom-save-resets): Delete function. - (custom-save-variables, custom-save-faces): MODE argument deleted. - (custom-save-variables, custom-save-faces): Ignore theme values. - - * cus-face.el (custom-theme-reset-faces): Mark as XEmacs - compatibility function. + * language/myanmar.el: New file. -2006-01-01 Richard M. Stallman + * loadup.el: Load "language/khmer" and "language/myanmar". - * cus-edit.el (Custom-set, Custom-save): Ask for confirmation. - (Custom-reset-current, Custom-reset-saved): Likewise. - (Custom-reset-standard): Show message if aborted. - (custom-mode): Doc fix, describing those commands. +2008-02-01 Kenichi Handa - * mouse.el (mouse-drag-region-1): When following link via mouse-2, - put on event-kind property. + * international/fontset.el (setup-default-fontset): Fix lao OTF + script name. -2005-12-31 Chong Yidong +2008-02-01 Kenichi Handa - * custom.el (provide-theme): Ban `user' theme name. - (custom-enabling-themes): New variable. - (enable-theme): Don't enable user if custom-enabling-themes is t. - (custom-enabled-themes): Make it a defcustom. - (custom-theme-recalc-face): No-op if face is undefined. + * composite.el (terminal-composition-modification): Delete it. - * cus-edit.el (custom-button-mouse): New variable. - (custom-button-mouse): New face. - (custom-raised-buttons, custom-mode): Use it. +2008-02-01 Kenichi Handa - * cus-theme.el (custom-new-theme-mode): Use custom-button-mouse. + * international/fontset.el (x-complement-fontset-spec): + Complement size too. -2005-12-31 Eli Zaretskii +2008-02-01 Kenichi Handa - * progmodes/gud.el (gud-display-line): Support hl-line in the - source buffer. + * international/fontset.el (font-encoding-charset-alist): + Initialize it. + (otf-script-alist): Fix typo of canadian-aboriginal. + (setup-default-fontset): Specify font-specs for many more scripts. + (x-complement-fontset-spec): Change the first argument to a + font-spec object. + (create-fontset-from-fontset-spec): Adjust for the above change. -2005-12-31 Lennart Borgman (tiny change) +2008-02-01 Kenichi Handa - * mouse.el (mouse-drag-window-above): Verify that the found window - overlaps with the given window in the horizontal dimension. + * language/devanagari.el: Register font-shape-text in + composition-function-table. -2005-12-31 Eli Zaretskii + * language/tibetan.el: Register font-shape-text in + composition-function-table. - * Makefile.in (cvs-update): New target. + * language/thai-util.el (thai-composition-function): Fix arguments. - * makefile.w32-in (cvs-update): Ditto. + * language/tamil.el: Register font-shape-text in + composition-function-table. -2005-12-30 Chong Yidong + * language/malayalam.el: Register font-shape-text in + composition-function-table. - * cus-theme.el (custom-new-theme-mode): Use cus-edit faces. - (custom-new-theme-mode-map): New variable. + * language/lao.el: Register font-shape-text in + composition-function-table. -2005-12-30 Richard M. Stallman + * language/kannada.el: Register font-shape-text in + composition-function-table. - * custom.el (custom-load-themes): Function deleted. + * language/european.el (diacritic-composition-function): Fix arguments. - * cus-edit.el (custom-save-loaded-themes): Function deleted. - (custom-save-variables): Don't delete or add custom-load-themes call. + * language/ethio-util.el (ethio-composition-function): Fix arguments. -2005-12-30 Stefan Monnier + * language/tv-util.el (tai-viet-composition-function): Fix arguments. - * cus-start.el: Add `visible-cursor'. + * composite.el (composition-function-table): Fix docstring. + (terminal-composition-function): Fix arguments. + (auto-compose-current-font): Delete it. + (auto-compose-chars): Adjust for the change of + composition-function-table. - * progmodes/flymake.el (flymake-copy-buffer-to-temp-buffer): Simplify. - (flymake-parse-output-and-residual): Remove `source-buffer' argument. - (flymake-process-filter): Switch to buffer before calling it instead. - (flymake-post-syntax-check, flymake-highlight-err-lines) - (flymake-delete-own-overlays, flymake-parse-err-lines) - (flymake-start-syntax-check, flymake-start-syntax-check-process) - (flymake-count-lines, flymake-parse-residual): - Remove constant buffer argument. - (flymake-start-syntax-check-for-current-buffer): Remove. - Update callers to use flymake-start-syntax-check instead. - (flymake-display-err-menu-for-current-line): - Remove unused var `mouse-pos'. - (flymake-restore-formatting): Comment out unused function. - (flymake-report-status, flymake-report-fatal-status): Remove buffer - argument, use current-buffer instead. Update callers. +2008-02-01 Kenichi Handa -2005-12-30 Roland Winkler + * international/fontset.el (font-encoding-alist): Add the entry of + "unicode-bmp". - * textmodes/bibtex.el (bibtex-mode): Make completion-ignore-case - buffer-local because choose-completion-delete-max-match requires - that we set completion-ignore-case (i.e., binding via let is not - sufficient). - (bibtex-complete): Always set completion-ignore-case and - choose-completion-string-functions. The latter is needed because - choose-completion-string-functions keeps its value if we quit the - *Completions* buffer without requesting a completion. +2008-02-01 Kenichi Handa -2005-12-30 Andreas Schwab + * composite.el (auto-compose-chars): Be sure to calculate + composition at least at POS. - * progmodes/cc-defs.el: Ignore errors from font-lock-compile-keywords. +2008-02-01 Vinicius Jose Latorre -2005-12-30 Eli Zaretskii + * printing.el: Fix pr-interface-map initialization code. + (pr-version): New version 6.9.3. + (pr-f-set-keymap-parents): Replace by pr-set-keymap-parents. + (pr-f-set-keymap-name): Replace by pr-set-keymap-name. + (pr-f-read-string): Replace by pr-read-string. + (pr-set-keymap-parents, pr-set-keymap-name, pr-read-string): + New function name. + (pr-interactive-n-up, pr-interactive-regexp): Code fix. - * jit-lock.el (jit-lock-chunk-size): Doc fix. +2008-02-01 Kenichi Handa -2005-12-30 Juri Linkov + * language/tv-util.el (tai-viet-re): Include '-'. + (tai-viet-glyph-info): Handle '-'. - * locate.el (locate-fcodes-file, locate-header-face) - * progmodes/delphi.el (delphi-other-face) - * progmodes/glasses.el (glasses-face): Add tag "None" to const nil. +2008-02-01 Kenichi Handa - * paren.el (show-paren-match, show-paren-mismatch): Use existing - group `paren-showing-faces'. + * descr-text.el (describe-char): Handle a composition of the new + format. Show font name. - * net/goto-addr.el (goto-address-highlight-keymap): Fix docstring. - (goto-address): Fix docstring. +2008-02-01 Kenichi Handa - * net/webjump.el (webjump-sample-sites): Update URLs. + * language/tibet-util.el (tibetan-composition-function): Use + font-shape-text if auto-compose-current-font is non-nil. - * textmodes/fill.el (fill-single-word-nobreak-p): Use `sentence-end'. + * language/tibetan.el: Fix the range for recording + tibetan-composition-function in composition-function-table. - * subr.el (cancel-change-group): Add listp around pending-undo-list. + * language/mlm-util.el (malayalam-composition-function): Use + font-shape-text if auto-compose-current-font is non-nil. -2005-12-29 Stefan Monnier + * international/mule-conf.el: Flag many charsets as supplementary. - * font-lock.el (font-lock-compile-keywords): Signal an error when - font-lock-set-defaults hasn't been called. + * international/mule.el (define-charset): Update the docstring for + :supplementary-p. -2005-12-29 Luc Teirlinck + * international/fontset.el (setup-default-fontset): Add OpenType + fonts for malayalam and tibetan. - * subr.el (noreturn, 1value): Doc fixes. +2008-02-01 Kenichi Handa -2005-12-29 Roland Winkler + * international/fontset.el (x-complement-fontset-spec): Use font-spec. - * textmodes/bibtex.el (bibtex-text-in-field-bounds): Handle case - that assoc-string returns nil. +2008-02-01 Kenichi Handa -2005-12-29 Roland Winkler + * international/fontset.el (otf-script-alist): Make all otf tags + 4-letters. + (setup-default-fontset): Add OpenType fonts for devanagari and tamil. - * textmodes/bibtex.el (bibtex-entry-type-whitespace) - (bibtex-entry-type-str, bibtex-empty-field-re) - (bibtex-search-backward-string, bibtex-preamble-prefix) - (bibtex-search-entry, bibtex-enclosing-entry-maybe-empty-head): Remove. - (bibtex-any-valid-entry-type): New variable. - (bibtex-parse-field-name): Simplify. - (bibtex-parse-string, bibtex-search-forward-string): New arg empty-key. - (bibtex-preamble-prefix): Include left delimiter. - (bibtex-search-forward-field, bibtex-search-backward-field): - Allow unbounded search past entry boundaries (required by bibtex-pop). - (bibtex-text-in-field-bounds): Use push. - (bibtex-text-in-field): Do not use bibtex-narrow-to-entry. - (bibtex-parse-preamble, bibtex-valid-entry) - (bibtex-beginning-first-field): New functions. - (bibtex-skip-to-valid-entry): Use bibtex-valid-entry. Fix regexp. - (bibtex-map-entries): Fix docstring. - (bibtex-flash-head): New arg prompt. Simplify. - (bibtex-enclosing-field): Include code of bibtex-inside-field. - (bibtex-insert-kill): Simplify. Always insert text past the - current field or entry. - (bibtex-format-entry): Use bibtex-parse-field. - (bibtex-pop): Use bibtex-beginning-of-entry and - bibtex-end-of-entry to initiate the search. Insert empty field if - we found ourselves. - (bibtex-print-help-message): New args field and comma. - Handle entry keys. - (bibtex-make-field): Use bibtex-beginning-of-entry. - (bibtex-end-of-entry): Use bibtex-valid-entry. Recognize any - invalid entry. - (bibtex-validate): Use bibtex-valid-entry and bibtex-parse-string. - Handle preambles. Simplify code for thorough test. - (bibtex-next-field, bibtex-find-text, bibtex-find-text-internal): - New arg comma. Handle entry heads. - (bibtex-remove-OPT-or-ALT, bibtex-remove-delimiters) - (bibtex-kill-field, bibtex-copy-field-as-kil, bibtex-empty-field): - New arg comma. - (bibtex-kill-entry): Use bibtex-any-entry-maybe-empty-head. - (bibtex-fill-field): Simplify. - (bibtex-fill-entry): Use bibtex-beginning-first-field and - bibtex-parse-field. - (bibtex-convert-alien): Do not wait before calling bibtex-validate. - (bibtex-complete): Use bibtex-parse-preamble. + * language/tml-util.el (tamil-composition-function): Use + font-shape-text if auto-compose-current-font is non-nil. -2005-12-29 Nick Roberts + * language/devan-util.el (devanagari-composition-function): Use + font-shape-text if auto-compose-current-font is non-nil. - * progmodes/gdb-ui.el (gdb-tooltip-print, gdb-tooltip-print-1): - Display name of expression instead of convenience variable. - (gdb-post-prompt): Only call gdb-get-changed-registers if needed. + * composite.el (auto-compose-chars): Change argument font-object + to window. - * progmodes/gud.el (gud-tooltip-dereference): Rename from - toggle-gud-tooltip-dereference. - (gud-tooltip-print-command): Move concatenation of "*" to expr to... - (gud-tooltip-tips): ...here when dereferencing. +2008-02-01 Vinicius Jose Latorre -2005-12-28 Bill Wohler + * ps-print.el (ps-lpr-switches): Docstring fix. + (ps-string-list): New function. + (ps-do-despool): Code fix. - * simple.el (mh-e-user-agent): Move to mh-e/mh-comp.el and autoload. +2008-02-01 Kenichi Handa -2005-12-28 Stefan Monnier + * international/utf-7.el (utf-7-imap-post-read-conversion) + (utf-7-imap-pre-write-conversion): New functions. - * vc.el (vc-annotate-display): Replace optional arg `color-map' with - compulsory arg `ratio'. Inline body of vc-annotate-time-span. - (vc-annotate-display-autoscale): Adjust call. - (vc-annotate-display-default): Adjust call. Make arg compulsory. - Fix interactive spec. - (vc-annotate-time-span): Remove. - (vc-annotate-oldest-in-map): Rename from vc-annotate-car-last-cons. - (vc-annotate-mode-menu, vc-annotate-display-autoscale) - (vc-annotate-display-select): Use new name. + * international/mule-conf.el (utf-7-imap): New coding system. - * vc.el (vc-annotate-mode-map): Remove obsolete binding. - (vc-annotate-mode-menu): Remove left-over redundant declaration. - Correct the construction of span entries. Simplify. - (vc-annotate-display-select): Fix the nil case. - (vc-annotate): Remove obsolete (and now broken) code. - (vc-annotate-extract-revision-at-line): Remove obsolete code. - (vc-annotate-time-span): Remove unused arg `quantize'. Simplify. +2008-02-01 Kenichi Handa -2005-12-28 Luc Teirlinck + * term/x-win.el (x-selection-value): If x-select-request-type is + nil, try also STRING at last. + (x-select-request-type): Doc fix for the change of x-selection-value. - * subr.el (lazy-completion-table): Correct typo in docstring. + * select.el (selection-coding-system, next-selection-coding-system): + Move declarations from xselect.c. + (x-get-selection): Decode by selection-coding-system if it is non-nil. + If it is nil, decode by a proper coding system. Handle C_STRING. + (ccl-check-utf-8, string-utf-8-p): Delete them. + (xselect-convert-to-string): Fix determining data-type in the case + that TEXT is requested. Don't use selection-coding-system if it's + not proper for the data-type. - * startup.el (command-line): Use `custom-reevaluate-setting' for - `send-mail-function'. +2008-02-01 Kenichi Handa - * mail/sendmail.el (send-mail-function): Autoload the standard-value. + * term/x-win.el (x-selection-value): If x-select-request-type is + nil, simply try UTF8_STRING and COMPOUND-TEXT in this order. -2005-12-05 Ralf Angeli +2008-02-01 Jason Rumney - * mail/smtpmail.el (smtpmail-try-auth-methods): - Send credentials together with "AUTH PLAIN" command. + * term/w32-win.el (w32-initialize-window-system): Use t, not nil + to signify default fontset. -2005-12-27 Richard M. Stallman +2008-02-01 Kenichi Handa - * mouse.el (mouse-drag-region-1): When remapping mouse-1 to - mouse-2, go back to previously selected window, so it's selected - when mouse-2 command runs. + * international/mule-cmds.el (describe-language-environment): + Check if the specified input method exists or not. -2005-12-27 Juri Linkov +2008-02-01 Vinicius Jose Latorre - * descr-text.el (describe-text-sexp): Use square brackets for - button [Show] to distinguish it from the property value `show'. - (describe-property-list): Use `insert-text-button' with - `help-face' type instead of putting face in quotes, because button - is not created automatically for a list of faces. - (describe-text-properties-1): Put button-type value in quotes to - distinguish from plain text "button". - (describe-char): Display code point values in hex. Don't use - `symbol-name' for `current-input-method' because it is a string. - Use `insert-text-button' with `help-face' type instead of putting - hardcoded face in quotes, because button is not created automatically. + * ps-print.el (ps-begin-job): Error if ps-lpr-switches is not a list. + (ps-face-background-name): Remove this function. It's already defined + in ps-def.el file. -2005-12-27 Richard M. Stallman +2008-02-01 Vinicius Jose Latorre - * progmodes/glasses.el (glasses-face): More specific custom type. + * ps-print.el: Eliminate the check if ps-print was running on Lucid or + Epoch emacsen. - * files.el (set-visited-file-name): Doc fix. +2008-02-01 Vinicius Jose Latorre - * textmodes/flyspell.el (flyspell-external-point-words): - Use local var buffer-scan-pos to advance scan for next misspelling. - Advance it only after we find the misspelling. + * ps-print.el: Now detect if text foreground and background colors are + equals and replace the foreground color by another color, so the text + becomes visible. Doc fix. + (ps-print-version): New version 7.3. + (ps-default-fg, ps-default-bg): Docstring fix. + (ps-fg-list, ps-fg-validate-p): New options. + (ps-foreground-list): New variable. + (ps-generate-header-line): Replace fboundp by functionp. + (ps-setup, ps-begin-job, ps-plot-region): Fix code. -2005-12-27 Agustin Martin +2008-02-01 Vinicius Jose Latorre - * textmodes/flyspell.el (flyspell-external-point-words): - New criteria for finding the misspelling in the buffer. + * printing.el: Pacify byte compiler, that is, no compiler warnings. + Move (again) some variable definitions before use, define some + function aliases, no code change. + (pr-version): New version 6.9.2. + (pr-path-style, pr-auto-region, pr-menu-char-height) + (pr-menu-char-width, pr-menu-lock, pr-ps-printer-alist) + (pr-txt-printer-alist, pr-ps-utility-alist): Options declaration + via (defvar VAR). + (pr-menu-lookup, pr-menu-lock, pr-menu-alist, pr-even-or-odd-pages) + (pr-menu-get-item, pr-menu-set-item-name, pr-menu-set-utility-title) + (pr-menu-set-ps-title, pr-menu-set-txt-title, pr-region-active-p) + (pr-do-update-menus, pr-update-mode-line, pr-f-read-string) + (pr-f-set-keymap-parents, pr-keep-region-active): Function aliases. + (pr-menu-print-item, pr-ps-printer-menu-modified) + (pr-txt-printer-menu-modified, pr-ps-utility-menu-modified) + (pr-even-or-odd-alist): Move variable definitions. -2005-12-27 Nick Roberts +2008-02-01 Kenichi Handa - * help-mode.el (help-insert-string): Set help-xref-stack-item - rather than call help-setup-xref. + * language/chinese.el (cp936): Delete duplicated alias. - * descr-text.el (describe-char): Revert previous changes for - optional buffer argument. + * international/mule-diag.el (list-block-of-chars): Don't insert + non-Unicode characters. -2005-12-27 Juri Linkov +2008-02-01 Jason Rumney - * help-mode.el (help-insert-string): New function. Save buffer - contents in cases where it is impossible to recompute the old contents. + * loadup.el [windows-nt]: Don't load code-pages and ccl. + * term/w32-win.el: Don't require code-pages. - * descr-text.el (describe-char): Set help-xref-stack-item - explicitly after buffer has been generated. +2008-02-01 Stefan Monnier -2005-12-27 Jan Dj,Ad(Brv + Fix up multi-tty merge. - * cus-start.el (all): Add x-gtk-show-hidden-files. + * version.el (emacs-version): Bump to 23.0.60. -2005-12-26 Richard M. Stallman + * term/x-win.el (x-initialize-window-system): Don't try to create + a fontset from a font-specification anymore. This was removed on the + unicode branch and mistakenly re-added by the multi-tty merge. - * replace.el (perform-replace): Calculate match-again - before skipping read-only matches. + * term/w32-win.el: Remove duplicate code that's now in + w32-initialize-window-system. + (w32-initialize-window-system): Don't try to create a fontset from + a font-specification anymore. This was removed on the unicode branch + and mistakenly re-added by the multi-tty merge. - * paren.el (paren-showing-faces): New group. - (show-paren-match, show-paren-mismatch): Move to that group. + * term/mac-win.el: Remove duplicate top-level code. - * button.el (button): Put into group `basic-faces'. + * language/ethio-util.el: + * international/characters.el: Use utf-8 rather than utf-8-emacs + since it works as well and has the advantage of working with + non-unicode versions of Emacs. - * progmodes/make-mode.el: Remove faces from group `faces'. + * international/encoded-kb.el (encoded-kbd-setup-display): Use the new + multi-tty code, which includes the previous local change. - * apropos.el (apropos, apropos-value): Doc fix. - (apropos-documentation): Doc fix. +2008-02-01 Vinicius Jose Latorre -2005-12-26 Stefan Monnier + * ps-print.el (ps-print-version): New version 7.2.5. + (ps-background, ps-begin-file, ps-build-reference-face-lists): + Use `mapc' rather than `mapcar'. - * subr.el (lazy-completion-table): Remove argument `args'. +2008-02-01 Kenichi Handa - * textmodes/bibtex.el (bibtex-strings, bibtex-reference-keys): - Don't use the `args' argument of lazy-completion-table. + * skeleton.el (skeleton-internal-1): Use integerp and stringp + instead of char-or-string-p to catch -1. -2005-12-26 Nick Roberts +2008-02-01 Kenichi Handa - * descr-text.el (describe-char): Add optional argument for buffer. - Set buffer appropriately. Call help-setup-xref. - Suggested by Stefan Monnier. + * international/mule-cmds.el (inactivate-input-method): + Set input-method-function to nil before calling + inactivate-current-input-method-function. -2005-12-26 Juri Linkov +2008-02-01 Kenichi Handa - * descr-text.el: Require `help-fns' at runtime. Don't require - `button' for byte compilation. - (describe-text-widget): Add `help-echo' for first button. - Use `help-info' for second. - (describe-property-list): Use `help-argument-name' instead of `italic'. - (describe-text-category): Add prompt to interactive spec. - Call `help-setup-xref'. - (describe-char): Use `help-character-set'. Add `help-echo' for - code point. Use `help-input-method'. Remove superfluous insert. + * play/gamegrid.el (gamegrid-setup-default-font): Calculate a font + height that doesn't exceed the requested height by rounding off. -2005-12-25 Richard M. Stallman +2008-02-01 Andreas Schwab - * progmodes/cc-defs.el (c-emacs-features): Do parse-partial-sexp - at point, in case of narrowing. + * international/mule-diag.el (print-fontset-element): + Use fontp only if defined. - * progmodes/delphi.el (delphi-other-face): Allow nil in type. +2008-02-01 Vinicius Jose Latorre - * locate.el (locate-header-face): Allow nil in type. + * ps-mule.el (ps-mule-prepare-font, ps-mule-encode-region) + (ps-mule-plot-composition, ps-mule-encode-header-string): Docstring fix. + (ps-mule-prologue-generated): Code fix. - * progmodes/cpp.el (cpp-face-none-list): Use cpp-face instead of face. +2008-02-01 Kenichi Handa -2005-12-25 Romain Francoise + * dnd.el (dnd-get-local-file-name): Call replace-regexp-in-string + with FIXEDCASE t. - * battery.el (battery-linux-proc-acpi): Also try - `/proc/acpi/thermal_zone/THM0/temperature'. +2008-02-01 Kenichi Handa -2005-12-24 Chong Yidong + * international/mule-diag.el (print-fontset-element): Fix for the + format change of a fontset element for font-backend feature. - * custom.el (custom-push-theme): Fix docstring. +2008-02-01 Kenichi Handa - * cus-edit.el (custom-variable-set, custom-variable-save) - (custom-variable-save): Custom-quote widget values. - (customize-save-variable): Fix custom-push-theme call. + * descr-text.el (describe-char): Fix for the case that a component + character is TAB. -2005-12-24 Eli Zaretskii +2008-02-01 Kenichi Handa - * w32-fns.el (w32-batch-update-autoloads): New function. + * international/mule-cmds.el (select-safe-coding-system-interactively): + Fix printing of rejected and unsafe coding-systems. - * makefile.w32-in (autoloads, $(lisp)/mh-e/mh-loaddefs.el): - Use w32-batch-update-autoloads, and don't setq generated-autoload-file - from the command line. + * international/fontset.el (setup-default-fontset): Add tai-viet. -2005-12-23 Chong Yidong + * international/characters.el: Setup syntax/category table for Tai Viet. + (script-list): Add tai-viet. - * custom.el (custom-push-theme): Clarify docstring. VALUE nil for - reset means to remove setting from theme entirely. Don't keep - expanding theme-settings list; delete old entries if necessary. + * loadup.el: Load "language/tai-viet". - * cus-edit.el (custom-buffer-create-internal): Move "Erase - customization" button one line up. - (custom-themed): New face. - (custom-magic-alist): New value, THEMED, for theme settings. - (custom-variable-state-set, custom-face-state-set): - Check theme-value instead of saved-value. - (custom-variable-reset-standard, custom-face-reset-standard): - Remove theme setting entirely. Recalculate new values. - (custom-variable-set, custom-variable-set) - (custom-variable-reset-saved, custom-variable-reset-backup) - (custom-face-set, custom-face-reset-saved): Update `user' theme. - (custom-variable-save): Fix typos. + * language/tai-viet.el: New file. -2005-12-23 Juri Linkov + * language/tv-util.el: New file. - * emacs-lisp/edebug.el (edebug-all-defs, edebug-all-forms): - Add autoload cookies. - (edebug-outside-d-c-i-n-s-w): New variable. - (edebug-display, edebug-outside-excursion): Use it to save the - original value of default-cursor-in-non-selected-windows. - Set default-cursor-in-non-selected-windows to t while Edebug - is active. - (edebug-mode, edebug-eval-mode): Doc fix. - - * mouse.el (mouse-choose-completion): Replace `buffer-substring' - with `buffer-substring-no-properties' to remove common substring - highlighting. - - * info.el (info-other-window, info): Rename function argument - `file' to `file-or-node'. - (Info-complete-menu-item): Use local variable `complete-nodes' to - keep the global value of `Info-complete-nodes' unchanged for - subsequent completions. - (info-tool-bar-map): Put `Info-index' icon just before `Info-search'. - - * simple.el (get-next-valid-buffer, last-buffer) - (next-error-buffer-p, next-error-find-buffer) - (minibuffer-history-sexp-flag): Doc fix. - - * savehist.el (savehist-mode-hook): Add `:group'. - - * log-view.el: Call autoload for vc-find-version. - (log-view-current-file): Adjust subgroup numbers. - (log-view-current-tag): Add `length'. - -2005-12-23 Richard M. Stallman - - * vc.el (vc-annotate-car-last-cons): Defn moved up. - -2005-12-23 Juri Linkov - - * hi-lock.el (hi-lock-archaic-interface-message-used) - (hi-lock-archaic-interface-deduce, hi-lock-mode): Doc fix. - (hi-lock-mode): Display "Hi" in the mode line only when - hi-lock-interactive-patterns or hi-lock-file-patterns is non-nil. - (hi-lock-write-interactive-patterns): - Use hi-lock-file-patterns-prefix instead of hard-coded "Hi-lock". - (hi-lock-set-pattern, hi-lock-set-file-patterns) - (hi-lock-font-lock-hook): Set 3rd arg `how' of - font-lock-add-keywords to t. - -2005-12-23 David Koppelman - - * hi-lock.el (hi-lock-highlight-range): New variable. - (hi-lock-mode, hi-lock-unface-buffer): Call font-lock-fontify-buffer - only if font-lock-fontified is non-nil. Remove overlays. - (hi-lock-set-pattern): Call font-lock-fontify-buffer if - font-lock-fontified is non-nil, otherwise use overlays (instead of - text properties). - (hi-lock-string-serialize-hash, hi-lock-string-serialize-serial): - New variables. - (hi-lock-string-serialize): New function. - -2005-12-23 Jan Dj,Ad(Brv - - * menu-bar.el (menu-find-file-existing): New function. - (menu-bar-file-menu): Use menu-find-file-existing for Open. +2008-02-01 Jason Rumney - * tool-bar.el (tool-bar-setup): Open changed to menu-find-file-existing. + * faces.el (font-weight-table): Use defaults on w32 that match + LOGFONT.lfWeight. -2005-12-22 Stefan Monnier + * term/w32-win.el: Don't create fontset from command-line font. - * vc.el: Remove unnecessary leading * in docstrings. - (vc-annotate-mode-map): Move initialization into declaration. - (vc-static-header-alist): Nitpick on the regexp. - (vc-default-init-version): New fun. - (vc-register): Use it. - (vc-insert-headers): Use dolist. - (vc-annotate-get-backend): Remove unused function. - (vc-annotate-add-menu): Remove. Build the menu directly at toplevel. - (vc-annotate-mode): Remove corresponding call. - (vc-annotate-car-last-cons): Simplify. - (vc-annotate-buffers): Remove var. - (vc-annotate-backend): Make it buffer-local. - (vc-annotate): Move the interaction to the interactive spec. - Add a `buf' argument. - (vc-annotate-warp-version): Use this new `buf' argument to avoid - killing&creating a vc-annotate buffer, which is very disruptive when - the buffers are shown in dedicated frames. +2008-02-01 Juanma Barranquero -2005-12-23 Nick Roberts + * international/mule-cmds.el (toggle-enable-multibyte-characters) + (sort-coding-systems, search-unencodable-char): Doc fixes. + (default-input-method, input-method-verbose-flag) + (input-method-highlight-flag): Remove * in defcustom's docstrings. + (exit-language-environment-hook, set-default-coding-systems) + (coding-system-change-eol-conversion, prefer-coding-system) + (find-multibyte-characters, leim-list-entry-regexp) + (set-input-method, input-method-exit-on-first-char, princ-list) + (locale-language-names, locale-charset-language-names) + (define-char-code-property): Fix typos in docstrings. - * descr-text.el: Add FSF as maintainer. - (describe-text-mode, describe-text-mode-map) - (describe-text-mode-hook, describe-text-done): Delete. Use normal - help-mode. - (describe-text-widget, describe-text-sexp) - (describe-property-list, describe-text-category) - (describe-text-properties, describe-text-properties-1) - (describe-char): Use help buttons instead of widgets. - (describe-char-unicodedata-file): Make URL link in doc string. +2008-02-01 Kenichi Handa -2005-12-22 Richard M. Stallman + * disp-table.el (make-glyph-code, glyph-char, glyph-face): + Fix for a new character code space (22-bit). - * cus-edit.el (custom-variable-prompt): Say "variable" in prompt. - (custom-buffer-create-internal): Reword the top-of-buffer help intro. - Don't include buttons that write a file when there's no file. - (custom-variable-menu, custom-face-menu, custom-group-menu): - Don't include commands that write a file when there's no file. - (customize-browse): Reword the top-of-buffer help intro. - (custom-buffer-create-internal): Fix previous change. - (customize-changed-options-previous-release): Prev release is 21.1. - (customize-changed-options): Doc fix. - (customize-changed): New alias. - (custom-reset-menu, custom-magic-alist, Custom-mode-menu): - Say "standard values". - (Custom-reset-standard): Doc fix. - (custom-face-reset-standard): Doc fix. +2008-02-01 Juanma Barranquero -2005-12-22 Stefan Monnier + * printing.el (pr-ps-fast-fire): Fix typos in docstring. - * font-lock.el (font-lock-default-fontify-buffer): Try and set-defaults - even if font-lock-mode is non-nil since it may be t without having - turned on font-lock-mode-internal. - (font-lock-choose-keywords): Minor optimization. - (font-lock-add-keywords, font-lock-remove-keywords) - (font-lock-set-defaults): Don't call make-local-variable on a variable - that we know to already be local. +2008-02-01 Kenichi Handa -2005-12-22 Katsumi Yamaoka + * international/characters.el: Add more cases/syntaxes from Latin + characters. - * emacs-lisp/lisp.el (lisp-complete-symbol): Don't print progress - messages if in the minibuffer. +2008-02-01 Vinicius Jose Latorre -2005-12-21 Stefan Monnier + * ps-def.el (installation-directory): Must be initialized when defining + it in XEmacs. + (coding-system-for-read): Eliminate duplicated definition. - * textmodes/flyspell.el (flyspell-check-word-p): Don't quote - in a RE. - (tex-mode-flyspell-verify, flyspell-get-word) - (flyspell-external-point-words): Don't use point-min/max uselessly. +2008-02-01 Vinicius Jose Latorre - * emacs-lisp/lisp.el (lisp-complete-symbol): Mostly undo the change - by Kevin Rodgers. Instead, just hide the completions buffer if we - don't need to show it. + * ps-print.el: Replace some (defvar VAR) by (defvar VAR nil). -2005-12-21 Luc Teirlinck +2008-02-01 Vinicius Jose Latorre - * wid-edit.el (file, directory): Doc fixes for the `define-widget's. + * ps-print.el: Replace (defvar VAR nil) by (defvar VAR). + (ps-print-emacs-type): Eliminate variable. + (ps-setup): Remove ps-print-emacs-type. Print which Emacsen is + running ps-print package. -2005-12-21 Stefan Monnier + * ps-def.el: Replace (defvar VAR nil) by (defvar VAR). + (ps-frame-parameter): Replace defun by defalias. + (mark-active): Eliminate defvar. - * emacs-lisp/lisp.el (lisp-complete-symbol): Don't call - delete-windows-on with an inexistent buffer. + * ps-samp.el (ps-prsc, ps-c-prsc, ps-s-prsc): Eliminate macros. + (ps-rmail-mode-hook, ps-vm-mode-hook, ps-gnus-summary-setup) + (ps-jts-ps-setup): Replace macros by vector key definition. + +2008-02-01 Vinicius Jose Latorre + + * progmodes/ebnf-abn.el (ebnf-abn-skip-comment): + * progmodes/ebnf-bnf.el (ebnf-bnf-skip-comment): + * progmodes/ebnf-dtd.el (ebnf-dtd-skip-comment): + * progmodes/ebnf-ebx.el (ebnf-ebx-skip-comment): + * progmodes/ebnf-iso.el (ebnf-iso-skip-comment): + * progmodes/ebnf-yac.el (ebnf-yac-skip-comment): New version. + New command actions for EPS header and EPS footer. + + * progmodes/ebnf2ps.el: New command actions for EPS header and EPS + footer. Fix some problems with one-or-more, zero-or-more and + alternative constructions generation. Some implementation of log + messages. Doc fix. + (ebnf-version): New version 4.4. + (ebnf-eps-header-font, ebnf-eps-header, ebnf-eps-footer-font) + (ebnf-eps-footer, ebnf-log): New options. + (ebnf-find-style, ebnf-eps-header-footer, ebnf-eps-header) + (ebnf-eps-footer, ebnf-eps-string, ebnf-eps-header-footer-comment) + (ebnf-eps-header-footer-p, ebnf-eps-header-comment) + (ebnf-eps-footer-comment, ebnf-eps-header-footer-file) + (ebnf-eps-header-footer-set, ebnf-log-header, ebnf-log): New functions. + (ebnf-style-custom-list, ebnf-style-database): Put new values. + (ebnf-print-directory, ebnf-print-file, ebnf-print-buffer) + (ebnf-print-region, ebnf-spool-directory, ebnf-spool-file) + (ebnf-spool-buffer, ebnf-spool-region, ebnf-eps-directory) + (ebnf-eps-file, ebnf-eps-buffer, ebnf-eps-region) + (ebnf-syntax-directory, ebnf-syntax-file, ebnf-syntax-buffer) + (ebnf-syntax-region, ebnf-parse-and-sort, ebnf-begin-job) + (ebnf-dimensions, ebnf-production-dimension, ebnf-terminal-dimension) + (ebnf-non-terminal-dimension, ebnf-special-dimension) + (ebnf-terminal-dimension1, ebnf-repeat-dimension) + (ebnf-except-dimension, ebnf-alternative-dimension) + (ebnf-optional-dimension, ebnf-one-or-more-dimension) + (ebnf-zero-or-more-dimension, ebnf-sequence-dimension): + Insert log message function. + (ebnf-setup, ebnf-generate-one-or-more, ebnf-generate-zero-or-more) + (ebnf-begin-job, ebnf-begin-file, ebnf-eps-finish-and-write) + (ebnf-insert-ebnf-prologue, ebnf-production-dimension) + (ebnf-terminal-dimension1, ebnf-alternative-dimension) + (ebnf-one-or-more-dimension, ebnf-zero-or-more-dimension) + (ebnf-eps-add-context, ebnf-eps-add-production): Fix code. + (ebnf-eps-filename, ebnf-trim-right): Replace `?\s' by `?\ ' to keep + compatibility with Emacs 20 & 21. + (ebnf-eps-header-comment, ebnf-eps-footer-comment) + (ebnf-eps-file-alist, ebnf-basic-width-extra) + (ebnf-basic-empty-height): New variables. + (ebnf-prologue): Fix PostScript code. + (ebnf-make-empty, ebnf-make-terminal1, ebnf-make-or-more1) + (ebnf-make-production, ebnf-make-alternative, ebnf-make-optional) + (ebnf-make-except, ebnf-make-repeat, ebnf-make-sequence) + (ebnf-make-dup-sequence, ebnf-token-alternative): Add comments. + +2008-02-01 Vinicius Jose Latorre + + * printing.el: Group together all XEmacs/Emacs definitions. + (pr-version): New version 6.9. + (pr-global-menubar, pr-menu-char-height, pr-menu-char-width): + New functions. + (pr-menu-char-height, pr-menu-char-width): Fix initialization code. + (pr-menu-bind): Fix code. + (pr-e-frame-char-height, pr-e-frame-char-width) + (pr-e-mouse-pixel-position, pr-x-add-submenu, pr-x-event-function) + (pr-x-event-object, pr-x-find-menu-item, pr-x-font-height) + (pr-x-font-width, pr-x-get-popup-menu-response, pr-x-make-event) + (pr-x-misc-user-event-p, pr-x-relabel-menu-item, pr-x-event-x-pixel) + (pr-x-event-y-pixel): Eliminate aliases. + (pr-xemacs-global-menubar): Move macro. + (current-menubar, current-mouse-event, zmacs-region-stays) + (deactivate-mark, pr-menu-position, pr-menu-state, pr-ps-name-old) + (pr-txt-name-old, pr-ps-utility-old, pr-even-or-odd-old, pr-temp-menu): + Move variables. + (pr-region-active-p, pr-menu-position, pr-menu-lookup, pr-menu-lock) + (pr-update-mode-line, pr-do-update-menus, pr-menu-alist) + (pr-relabel-menu-item, pr-menu-set-ps-title, pr-menu-set-txt-title) + (pr-menu-set-utility-title, pr-even-or-odd-pages) + (pr-f-set-keymap-parents, pr-f-set-keymap-name, pr-f-read-string) + (pr-keep-region-active, pr-menu-get-item, pr-menu-set-item-name): + Move functions. + +2008-02-01 Vinicius Jose Latorre -2005-12-22 Nick Roberts + * ps-print.el: The ps-print commands without face printing should not + print background color. Reported by Leo . + (ps-print-version): New version 7.2.2. + (ps-begin-job): New arg. Fix ps-default-background and + ps-default-foreground initialization. + (ps-face-attributes): Fix doc string. + (ps-face-background, ps-generate-postscript, ps-generate): Fix code. - * progmodes/gud.el (gud-tooltip-modes, gud-tooltip-display): - Delete defcustom variable :tag names. + * printing.el: Fix ps-print link. -2005-12-20 Stefan Monnier +2008-02-01 Kenichi Handa + + * international/mule-diag.el (list-character-sets-2): Don't print width. + +2008-02-01 Vinicius Jose Latorre + + * ps-print.ps: Fix background height. + (ps-print-version): New version 7.2.1. + +2008-02-01 Vinicius Jose Latorre + + * ps-print.el: Split XEmacs/Emacs definitions and sample setup code + into separate files. + (ps-print-version): New version 7.2. + (ps-postscript-code-directory): Fix XEmacs initialization. + (ps-generate-postscript-with-faces): + Call ps-generate-postscript-with-faces1 (new function). + (ps-color-format, ps-float-format): Move variables to ps-def.el. + (ps-xemacs-color-name, ps-mapper, ps-extent-sorter) + (ps-xemacs-face-kind-p, ps-mark-active-p, ps-face-foreground-name) + (ps-face-background-name, ps-frame-parameter, ps-color-device) + (ps-color-values, ps-face-bold-p, ps-face-italic-p): + Move functions to ps-def.el. + (ps-prsc, ps-c-prsc, ps-s-prsc, ps-rmail-mode-hook) + (ps-rmail-print-message-from-summary, ps-print-message-from-summary) + (ps-article-subject, ps-article-author, ps-gnus-article-prepare-hook) + (ps-vm-mode-hook, ps-gnus-print-article-from-summary) + (ps-vm-print-message-from-summary, ps-gnus-summary-setup, ps-info-file) + (ps-info-node, ps-info-mode-hook, ps-jts-ps-setup, ps-jack-setup): + Move functions to ps-samp.el. + + * ps-bdf.el (installation-directory, coding-system-for-read): + Move variables to ps-def.el. + + * ps-mule.el (leading-code-private-22): Move variables to ps-def.el. + (charset-bytes, charset-dimension, charset-id, charset-width) + (find-charset-region, char-width, chars-in-region, forward-point) + (decompose-composite-char, encode-coding-string, coding-system-p) + (ccl-execute-on-string, define-ccl-program, multibyte-string-p) + (string-make-multibyte, encode-char): Move functions to ps-def.el. + + * ps-def.el: New file. XEmacs/Emacs definitions. + (ps-generate-postscript-with-faces1): New function. + (ps-color-format, ps-float-format): Move variables from ps-print.el. + (ps-xemacs-color-name, ps-mapper, ps-extent-sorter) + (ps-xemacs-face-kind-p, ps-mark-active-p, ps-face-foreground-name) + (ps-face-background-name, ps-frame-parameter, ps-color-device) + (ps-color-values, ps-face-bold-p, ps-face-italic-p): + Move functions from ps-print.el. + (installation-directory, coding-system-for-read): + Move variables from ps-bdf.el. + (leading-code-private-22): Move variable from ps-mule.el. + (charset-bytes, charset-dimension, charset-id, charset-width) + (find-charset-region, char-width, chars-in-region, forward-point) + (decompose-composite-char, encode-coding-string, coding-system-p) + (ccl-execute-on-string, define-ccl-program, multibyte-string-p) + (string-make-multibyte, encode-char): Move functions from ps-mule.el. + + * ps-samp.el: New file. Sample setup code. + (ps-prsc, ps-c-prsc, ps-s-prsc, ps-rmail-mode-hook) + (ps-rmail-print-message-from-summary, ps-print-message-from-summary) + (ps-article-subject, ps-article-author, ps-gnus-article-prepare-hook) + (ps-vm-mode-hook, ps-gnus-print-article-from-summary) + (ps-vm-print-message-from-summary, ps-gnus-summary-setup, ps-info-file) + (ps-info-node, ps-info-mode-hook, ps-jts-ps-setup, ps-jack-setup): + Move functions from ps-print.el. + +2008-02-01 Vinicius Jose Latorre - * log-view.el (log-view-file-re, log-view-message-re): Use shy groups. - (log-view-font-lock-keywords): Ajust subgroup numbers. - (log-view-current-tag): Don't hard code the number of subgroups. - -2005-12-20 Juri Linkov - - * tooltip.el (tooltip): Move defgroup before define-minor-mode. - (tooltip-x-offset, tooltip-y-offset): Doc fix. - - * menu-bar.el (menu-bar-menu-frame-live-and-visible-p) - (menu-bar-non-minibuffer-window-p): Instead of checking - display-multi-frame-p, use selected-frame when menu-updating-frame - is nil. + * ps-print.el: Handle frame parameters (background and/or foreground + colors) changing dynamically. Reported by Leo . + (ps-print-version): New version 7.1. + (ps-x-frame-property, ps-e-frame-parameter): New aliases. + (ps-frame-parameter): New function. + (ps-default-fg, ps-default-bg): New default value ('frame-parameter). + Fix doc and customization. + (ps-begin-job): Get frame parameters (background and/or foreground + colors). + (ps-do-despool): Ensure ps-printer-name has a valid value. -2005-12-20 Stuart Herring (tiny change) +2008-02-01 Vinicius Jose Latorre - * align.el (align-rules-list): Use [ \t] instead of \s- - for column separators in text mode. + * progmodes/ebnf-abn.el: + * progmodes/ebnf-bnf.el: + * progmodes/ebnf-dtd.el: + * progmodes/ebnf-ebx.el: + * progmodes/ebnf-iso.el: + * progmodes/ebnf-otz.el: + * progmodes/ebnf-yac.el: + * progmodes/ebnf2ps.el: + * delim-col.el: + * printing.el: + * ps-bdf.el: + * ps-mule.el: + * ps-print.el: Remove 'Time-stamp' comment mark. -2005-12-20 Nick Roberts + * printing.el (pr-menu-bind): Replace 'easy-menu-change' by + 'easy-menu-add-item' when called in Emacs 21 or higher. - * help-mode.el (help-customize-variable, help-customize-face): - Don't pop help-xref-stack as help-follow no longer pushes - anything on to it. +2008-02-01 Vinicius Jose Latorre -2005-12-20 Carsten Dominik + * ps-print.el : Fix doc. + (ps-print-version): New version 7.0. - * textmodes/org.el (org-agenda-custom-commands): New option. - (org-agenda): Offer custom commands on splash screen. - (org-make-tags-matcher): Parser for Boolean logic added. - (org-agenda-set-tags): New command. - (org-agenda-menu, org-agenda-mode-map): Add `org-agenda-set-tags'. - (org-set-tags): Efficiency improvements. - (org-auto-align-tags): New option. - (org-todo, org-demote, org-promote): Realign tags. - (org-tags-completion-function): Use also "&" and "|" as separators. - (org-org-menu): Agenda commands simplified. +2008-02-01 Kenichi Handa -2005-12-19 Luc Teirlinck + * mail/emacsbug.el (report-emacs-bug): Insert also the value of + XMODIFIERS. - * cus-edit.el (customize-apropos, customize-apropos-options): - Docstring changes. +2008-02-01 Vinicius Jose Latorre - * font-lock.el (font-lock): Add tags to the links in the defgroup. + * ps-print.el: Fix maintainer email. Eliminate function declaration + that kept compatibility with older Emacs version. + (ps-print-version): New version 6.7. -2005-12-19 Chong Yidong +2008-02-01 Kenichi Handa - * longlines.el (longlines-mode): Wrap while widened. - (longlines-decode-region, longlines-encode-region): Compute max - just once. + * international/quail.el (quail-get-translations): + Make quail-current-key multibyte if not yet done. -2005-12-19 YAMAMOTO Mitsuharu +2008-02-01 Zhang Wei - * cus-edit.el (mac): New group. + * language/chinese.el ("Chinese-GBK"): Add tutorial. + ("Chinese-GB18030"): Add sample-text and tutorial. - * cus-start.el (all): Add user options in macterm.c. Add test for - Mac-related built-ins. Fix test for GTK-related built-ins. + * international/fontset.el (font-encoding-alist) + (setup-default-fontset): Add gb18030. + (x-pixel-size-width-font-regexp, vertical-centering-font-regexp) + (charset-script-alist): Add gbk and gb18030. - * term/mac-win.el (mac-handle-language-change) - (mac-ae-open-documents, mac-ae-get-url, mac-services-open-file) - (mac-services-open-selection, mac-services-mail-selection) - (mac-services-mail-to, mac-services-insert-text) - (mac-dispatch-apple-event): Add docstrings. - (x-get-selection, mac-select-convert-to-string): Select coding - system from `utf-16be' and `utf-16le' using `byteorder'. + * international/characters.el: Put property + preferred-coding-system on gbk and gb18030. -2005-12-18 Stefan Monnier + * international/mule-cmds.el (locale-language-names): Add an entry + for "zh_CN.UTF-8" and change "chs" to "Chinese-GBK". - * subr.el (lazy-completion-table): Don't be fooled if the var holds - a "list" (lambda ...) rather than a real completion list. + * faces.el (face-font-registry-alternatives): Add gb18030. - * emacs-lisp/cl-extra.el (cl-macroexpand-all): Fix code-walk for - lexical-let when encountering ((lambda (...) ...) ...). +2008-02-01 Vinicius Jose Latorre -2005-12-17 Chong Yidong + * ps-mule.el: Fix maintainer email. - * progmodes/sh-script.el (sh-mode): - * language/ethio-util.el (ethio-fidel-to-sera-mail-or-marker): - * textmodes/picture.el (picture-mode): Update docstrings. +2008-02-01 Kenichi Handa -2005-12-17 Eli Zaretskii + * international/quail.el (quail-insert-kbd-layout): Check the + length of (cdr translation). + (quail-get-current-str): Check the length of (cdr def). - * makefile.w32-in (autoloads, custom-deps): Warn that parts of - commands enclosed in $(ARGQUOTE)s should not be split between two - lines, as that will break with GNU Make >3.80, when sh.exe is used - and arg quoting is with '..'. - (autoloads): Don't break the quoted --eval expression between - several lines. +2008-02-01 Kenichi Handa -2005-12-17 Chong Yidong + * ruler-mode.el (ruler-mode-ruler): Make the string `ruler' multibyte. - * emacs-lisp/edebug.el (edebug-safe-prin1-to-string): - Capture error from printing circular structures. +2008-02-01 Kenichi Handa -2005-12-17 Martin Rudalics + * international/mule-cmds.el (ucs-insert): Re-implement. - * wid-edit.el (widget-checkbox-action): Clear undo info. +2008-02-01 Kenichi Handa -2005-12-16 Bill Wohler + * composite.el (terminal-composition-modification): New function. + (terminal-composition-function): Create composition with the above + modification function. - * menu-bar.el (kill-this-buffer): Set a good example by using menu - bar, not menubar in comment. +2008-02-01 Zhang Wei -2005-12-16 Stefan Monnier + * international/characters.el: Add more full-width characters in + char-width-table. - * progmodes/cc-engine.el (c-after-change-check-<>-operators): - After-change-functions should not clobber the match data. +2008-02-01 Kenichi Handa -2005-12-16 Juri Linkov + * international/fontset.el (create-fontset-from-fontset-spec): + Fix script name handling. - * simple.el (choose-completion): Use `buffer-substring-no-properties' - instead of `buffer-substring'. - (completion-common-substring): Doc fix. - (completion-setup-function): Use minibuffer-completion-contents - instead of minibuffer-contents. Don't set common-string-length - initially. Remove special handling of partial-completion-mode. - Move computation of completion-base-size into one cond. - Call completion-base-size-function in mainbuf. In computation of - completion-base-size for file name completion don't move point to - the end of the minibuffer. Move computation of common-string-length - into one cond. Start putting faces only when common-string-length>=0. - Add condition to put completions-common-part when - common-string-length>0. +2008-02-01 Kenichi Handa - * complete.el (PC-do-completion): Remove `(equal (point) beg)' to - place point at the first different character in the minibuffer - even if this position is at the beginning of the minibuffer. + * composite.el (terminal-composition-function): New function. + (terminal-composition-function-table): New variable. + (auto-compose-chars): If running on a terminal, use + terminal-composition-function-table. - * info.el (Info-read-node-name-1): In completion-base-size-function's - lambda return 1 if common-substring or minibuffer-completion-contents - starts with (, and 0 otherwise. + * loadup.el: Load "composite" after "international/characters". - * emacs-lisp/crm.el (crm-minibuffer-completion-help): - Use `crm-current-element' for second arg of `display-completion-list'. + * international/characters.el: Delete codes for setting up charset + property nospace-between-words. Fix setting up of + char-width-table. Don't make ethiopic and tibetan double column. -2005-12-16 Klaus Zeitler + * textmodes/fill.el (fill-find-break-point-function-table): + Don't set it up in defvar. + (fill-nospace-between-words-table): New variable. + (fill-delete-newlines): Check fill-nospace-between-words-table + instead of charset property nospcae-between-words. - * files.el (set-auto-mode): Look for an interpreter specified on - the first line also if search for mode specification succeeded, - but the mode is not known. +2008-02-01 Kenichi Handa -2005-12-16 Carsten Dominik + * composite.el (global-auto-composition-mode): Make the initial + value not depend on emacs-basic-display. - * textmodes/org.el (org-tags-match-list-sublevels): New option. - (org-open-at-point): Implement tag searches as links. - (org-fit-agenda-window, org-get-buffer-tags, org-get-tags) - (org-make-tags-matcher, org-scan-tags, org-activate-tags): New funs. - (org-tags-sparse-tree, org-tags-view, org-set-tags) - (org-agenda-dispatch): New commands. - (org-use-tag-inheritance, org-tags-column): New options. - (org-tab-follows-link, org-return-follows-link): New options. - (org-tags): New customize group. - (org-start-icalendar-file): Get local time zone. - (org-tags-completion-function): New function. - (org-set-font-lock-defaults): Make sure links will also be - highlighted inside headlines. - -2005-12-16 Mark Plaksin (tiny change) - - * term.el (term-emulate-terminal): - Let term-handle-ansi-terminal-messages override what Bash says about - its current directory. - -2005-12-16 K,Aa(Broly L$,1 q(Brentey - - * bindings.el (last-buffer): Move to simple.el. - * simple.el (last-buffer): Move here. - (get-next-valid-buffer): New function. - (next-buffer): Use frame-local buffer list, maintain buried buffer list. - (prev-buffer): Ditto. Rename to `previous-buffer'. - - * menu-bar.el (menu-bar-update-buffers): Update uses of `prev-buffer'. - * bindings.el (global-map): Ditto. - -2005-12-15 Luc Teirlinck - - * cus-edit.el: Introductory comment change. - (custom-magic-alist): Change message string for the `rogue' state. - -2005-12-15 Richard M. Stallman - - * tooltip.el: Delete defcustom variable :tag names. - - * complete.el (partial-completion-mode): Doc fix. - - * textmodes/flyspell.el (flyspell-external-point-words): - Use save-excursion to ensure we don't move backward in the - search loop, not even one character. - (flyspell-delete-all-overlays): Use remove-overlays directly. - - * textmodes/ispell.el (ispell-current-personal-dictionary): New var. - (ispell-start-process): Set that variable. - Clear ispell-buffer-local-name. - (ispell-internal-change-dictionary): - Set ispell-current-dictionary after killing process. - (ispell-buffer-local-dict): - Don't set spell-personal-dictionary after killing process. - (ispell-buffer-local-words): Don't clear out ispell-buffer-local-name. - (ispell-tex-skip-alists, ispell-html-skip-alists) - (ispell-skip-region-alist): Mark as risky. - - * net/newsticker.el (newsticker--retrieval-timer-list) - (newsticker--display-timer, newsticker-running-p) - (newsticker-ticker-running-p): Definitions moved up. - -2005-12-16 Nick Roberts - - * progmodes/gdb-ui.el (gdb-many-windows): Echo new state in minibuffer. - -2005-12-15 David Ponce - - * recentf.el (recentf-dialog-goto-first): Fix missing error condition. - (recentf-edit-list, recentf-open-files): Signal an error when - there is no recent file. - -2005-12-14 Lennart Borgman - - * textmodes/texinfmt.el (texinfo-format-region): Set buffer to - read-only except for texinfo-format-region evaluation. - -2005-12-14 Richard M. Stallman - - * vc.el (vc-default-previous-version, vc-default-next-version) - (vc-do-command): Doc fixes. - -2005-12-14 Roland Winkler - - * textmodes/bibtex.el (bibtex-expand-strings) - (bibtex-autokey-expand-string, bibtex-name-part) - (bibtex-entry-type-whitespace, bibtex-entry-type-str) - (bibtex-any-entry-maybe-empty-head, bibtex-string-type) - (bibtex-preamble-prefix, bibtex-string-empty-key): New variables. - (bibtex-entry-type, bibtex-entry-head): Match only valid entries. - (bibtex-entry-postfix, bibtex-known-entry-type-re) - (bibtex-valid-entry-re, bibtex-any-valid-entry-re) - (bibtex-valid-entry-whitespace-re, bibtex-empty-field-re) - (bibtex-field-name-for-parsing, bibtex-remove-delimiters-string) - (bibtex-beginning-of-last-entry): Remove. - (bibtex-parse-field-name): Use bibtex-field-name. Issue error - message if comma is missing but buffer is read-only. - (bibtex-parse-field-text): Handle whitespaces at the end of field - text. Return 3-element list with beginning and end of field text - and end of field. - (bibtex-end-of-text-in-field, bibtex-end-of-field): Change accordingly. - (bibtex-parse-field): Remove arg name. Use bibtex-field-name. - (bibtex-search-forward-field, bibtex-search-backward-field): - Search always delimited by limits of entry. Use more efficient - search algorithms. - (bibtex-name-in-field): Use bibtex-start-of-name-in-field and - bibtex-end-of-name-in-field. - (bibtex-text-in-field-bounds): Handle BibTeX strings when - extracting the content of a field. - (bibtex-text-in-field): Use search limits. - (bibtex-parse-string-prefix): Handle empty string keys based on - bibtex-string-empty-key. - (bibtex-parse-string): Fix docstring. - (bibtex-text-in-string): Use bibtex-text-in-field-bounds. - (bibtex-preamble-prefix, bibtex-strings): New functions. - (bibtex-skip-to-valid-entry): Include preceding whitespace in - BibTeX entries (consistent with other BibTeX functions). - (bibtex-map-entries): Use bibtex-skip-to-valid-entry. - (bibtex-search-entry): Fix docstring. Simplify. - (bibtex-flash-head, bibtex-complete-string-cleanup) - (bibtex-count-entries, bibtex-sort-buffer): Simplify. - (bibtex-beginning-of-first-entry): Use bibtex-skip-to-valid-entry. - (bibtex-parse-entry): New optional arg content. - (bibtex-format-entry, bibtex-autofill-entry, bibtex-url): Use it. - Use bibtex-text-in-field-bounds. - (bibtex-print-help-message): Handle BibTeX strings and preambles. - (bibtex-end-of-entry): Use bibtex-preamble-prefix and - bibtex-parse-string-postfix. - (bibtex-find-text-internal): New function. - (bibtex-remove-delimiters): Use it. - (bibtex-find-text): Use it. New optional arg help. - (bibtex-complete): Handle BibTeX string and preamble entries. - (bibtex-Preamble): Fix order of closing delimiters. + * textmodes/fill.el: Don't use charset property + `fill-find-break-point-function'. + (fill-find-break-point-function-table): New variable. + (fill-find-break-point): Lookup fill-find-break-point-function-table. -2005-12-14 Stefan Monnier +2008-02-01 Kenichi Handa - * vc.el (vc-default-revert): New fun. + * international/mule.el (coding-system-list): Be sure to exclude + subsidiary coding systems. - * vc-mcvs.el (vc-mcvs-revert): Fix call to vc-default-revert. +2008-02-01 Kenichi Handa -2005-12-14 Romain Francoise - - * font-lock.el (font-lock-keywords-alist): Rename `append' to `how'. - (font-lock-add-keywords, font-lock-update-removed-keyword-alist): - (font-lock-remove-keywords): Likewise. - -2005-12-14 Juri Linkov - - * log-view.el (log-view-diff): Doc fix. - - * isearch.el (isearch-query-replace): Use (mark) instead of - isearch-opoint if mark is active in transient-mark-mode. + * composite.el (auto-composition-after-change) + (toggle-auto-composition): Remove `auto-composed' property instead + of setting it to nil. -2005-12-14 Aaron S. Hawley +2008-02-01 Kenichi Handa - * isearch.el (isearch-query-replace): Check for isearch-other-end. + * language/misc-lang.el (iso-8859-6): New coding system. -2005-12-14 Per Abrahamsen +2008-02-01 Kenichi Handa - * progmodes/cpp.el (cpp-face): New widget. - (cpp-known-face, cpp-unknown-face, cpp-edit-list): Use it. + * dnd.el (dnd-get-local-file-name): Give a unibyte string to + replace-regexp-in-string as replacement. -2005-12-14 Juri Linkov +2008-02-01 Kenichi Handa - * help-macro.el (make-help-screen): Bind `inhibit-read-only' to t - around `erase-buffer' and `insert'. - - * descr-text.el (describe-text-properties): Replace buffer name - "*Help-2*" with "*Help*<2>". - (describe-char): Add functions print-help-return-message, - toggle-read-only. Use help-setup-xref with nil to not store - describe-char in help-xref-stack. Use help-make-xrefs to - make [back] button. - - * desktop.el (desktop-minor-mode-table): Add vc-dired-mode with nil. - - * wdired.el (wdired-old-point): New internal variable. - (wdired-change-to-wdired-mode): Set it buffer-locally. - (wdired-abort-changes): Restore point after aborting changes. - -2005-12-13 Stefan Monnier - - * vc.el (vc-do-command): Add a new value t for okstatus. - - * vc-svn.el (vc-svn-registered): Use it to avoid popping up a spurious - frame in case of errors. - -2005-12-13 Jan Dj,Ad(Brv - - * menu-bar.el (menu-bar-showhide-fringe-menu): Move "On the Right" - so it comes after "On the Left" in the menu. - -2005-12-12 Luc Teirlinck + * international/fontset.el (otf-script-alist): Add byzm, math, + musc, and nko. - * cus-edit.el (customize-apropos, customize-apropos-options) - (customize-apropos-faces, customize-apropos-groups): Doc fixes. + * international/characters.el (script-list): Add nko, + byzantine-musical-symbol, musical-symbol, and mathematical. -2005-12-12 Bill Wohler +2008-02-01 Kenichi Handa - * vc-svn.el (vc-svn-registered): Fix problem of visiting - non-writable Subversion-controlled files by saving window - configuration before calling vc-do-command. vc-do-command calls - pop-to-buffer on error which is unexpected during registration. + * composite.el (auto-compose-current-font): New variable. + (auto-compose-chars): New arg FONT-OBJECT. -2005-12-12 Jay Belanger +2008-02-01 Kenichi Handa - * calc/README: Update the summary of changes. + * international/characters.el: Modify category-table and + script-table for new Ethiopic character range. -2005-12-12 Stefan Monnier +2008-02-01 Kenichi Handa - * descr-text.el (describe-char): Rework last fix to solve the problem - is the same way it's solved for everything else in that function - (i.e. by extracting the info before setting up the *Help* buffer). + * international/mule-cmds.el (set-language-environment-fontset): + Delete it. -2005-12-12 Kim F. Storm +2008-02-01 Kenichi Handa - * subr.el (version-regexp-alist): Allow space as separator before - non-numeric part, e.g. "1.0 alpha". - (version-to-list): Interpret .X.Y version as 0.X.Y version. + * international/fontset.el (otf-script-alist): Set it. -2005-12-12 Carsten Dominik +2008-02-01 Kenichi Handa - * textmodes/org.el (org-agenda, org-timeline, org-todo): - Implement Logging and the keep-modes setting. - (org-get-category): Make sure a string is returned. - (org-log-done): New function. - (org-log-done, org-closed-string): New options. + * international/fontset.el (font-encoding-alist): + Fix for "ethiopic-unicode". -2005-12-12 Jan Dj,Ad(Brv +2008-02-01 Kenichi Handa - * tooltip.el (tooltip-y-offset): Change default to 20. + * international/fontset.el (script-representative-chars): + Add an entry for latin script. -2005-12-12 Richard M. Stallman +2008-02-01 Kenichi Handa - * mouse.el (mouse-drag-vertical-line): Use adjust-window-trailing-edge. + * faces.el (font-weight-table): Treat regular and normal as the + same as medium. + (font-slant-table): Add (roman . 100). - * frame.el (display-hourglass): Doc fix. +2008-02-01 Kenichi Handa - * help.el (help-for-help-internal): Simplify entry for `a'. + These changes are for the new font handling codes. - * info.el (Info-on-current-buffer): Doc fix. - (info-insert-file-contents): Don't test (featurep 'jka-compr). + * faces.el (font-weight-table, font-slant-table) + (font-swidth-table): New customizable variables. - * startup.el (inhibit-splash-screen): Make this the real name. - (inhibit-startup-message): Make this the alias. - (command-line): Find only simple.el, and use its directory - to fill in other preloaded files' names. - (command-line): Deactivate the mark if deactivate-mark is set. + * international/fontset.el (font-encoding-alist): Add koi8-4. + (script-representative-chars): Set the default value. + (create-fontset-from-x-resource): Delete `message'. - * international/mule.el (load-with-code-conversion): - Bind deactivate-mark. +2008-02-01 Kenichi Handa - * progmodes/compile.el (compilation-error-regexp-alist): Doc fix. + * tar-mode.el (tar-untar-buffer, tar-summarize-buffer): + Call set-buffer-multibyte with arg `to'. -2005-12-11 Luc Teirlinck +2008-02-01 Kenichi Handa - * cus-edit.el (customize-apropos): Avoid listing an option more - than once under different aliases. No longer list user options - that are not defined with defcustom (unless a prefix arg is given). - Doc fix. - (customize-apropos-options): Doc fix. + * info.el (Info-fontify-node): Check if already fontified or not + by next-single-property-change. -2005-12-11 Juri Linkov +2008-02-01 Kenichi Handa - * frame.el (set-background-color, set-foreground-color) - (set-cursor-color, set-mouse-color, set-border-color): - Add explicit prompts to read colors by `facemenu-read-color'. - (show-trailing-whitespace, blink-cursor-delay) - (blink-cursor-interval, display-hourglass, hourglass-delay): - Remove tags. - (display-hourglass, hourglass-delay): Doc fix. - (cursor-in-non-selected-windows): Capitalize words in tag. + * international/mule.el (ctext-pre-write-conversion): Produce + extra designation sequence for ASCII at the end off extended segment. - * faces.el (frame-background-mode): Replace `choice-item' keywords - with `const' to not make [default] button. Change default value tag - from `default' to `automatic'. Doc fix. - (trailing-whitespace) : Change group `whitespace' to - `whitespace-faces'. +2008-02-01 Kenichi Handa -2005-12-11 Richard M. Stallman + * international/mule.el (ctext-non-standard-encodings-table): + Reverse the returning list. + (ctext-pre-write-conversion): Fix encoding with extended segments. - * buff-menu.el (Buffer-menu-sort-column): Not a user variable. + * international/mule-conf.el (compound-text) + (compound-text-with-extensions): Add long-form in :flags. -2005-12-11 YAMAMOTO Mitsuharu +2008-02-01 Kenichi Handa - * term/mac-win.el: Create keymap for mac-apple-event-map. + * international/fontset.el (create-fontset-from-fontset-spec): Fix + regexp for paring FONTSET-SPEC (allow spaces after `:'). -2005-12-11 Nick Roberts +2008-02-01 Kenichi Handa - * tooltip.el (tooltip-mode): Move to start of file so that it - appears at top of customize buffer. + * international/fontset.el (create-fontset-from-fontset-spec): Fix + for the case that a charset is specified as target. - * progmodes/gud.el (gud-tooltip-modes, gud-tooltip-display): - Add the gud groupname. - (gud-tooltip-mode): Add the tooltip groupname. - (gud-tooltip-echo-area): Add the gud groupname. Remove tag to - avoid conflict with tooltip-use-echo-area. +2008-02-01 Kenichi Handa -2005-12-10 Romain Francoise + * international/ccl.el (ccl-embed-string): Check string length. + Set special flag for multibyte character sequence. + (ccl-compile-write-string, ccl-compile-write-repeat): Don't make + str unibyte. + (ccl-compile-write): If the character code doesn't fit in 22-bit + (ccl-dump-write-const-string): Check special flag for multibyte + character sequence. - * help.el (help-for-help-internal): Add `r' in doc string. +2008-02-01 Kenichi Handa -2005-12-10 Johan Bockg,Ae(Brd + * ps-mule.el (ps-mule-eight-bit-char): Delete this function. + (ps-mule-encode-region, ps-mule-plot-composition): Don't use + ps-mule-eight-bit-char. - * align.el (align-regexp, align-highlight-rule): - Use region-beginning and region-end instead of point and mark, so that - repetition (with `repeat-complex-command') recomputes the region - bounds. +2008-02-01 Kenichi Handa -2005-12-10 Lennart Borgman + * language/chinese.el ("Chinese-BIG5"): + Set ctext-non-standard-encodings property to "big5-0". - * window.el (bw-get-tree, bw-get-tree-1, bw-find-tree-sub) - (bw-find-tree-sub-1, bw-l, bw-t, bw-r, bw-b, bw-dir, bw-eqdir) - (bw-refresh-edges, bw-adjust-window, bw-balance-sub): New functions. - (balance-windows): Rewrite using the above new functions. + * international/mule.el (ctext-non-standard-encodings): + Initialize to nil. + (ctext-non-standard-encodings-alist): Set charset `big5' in the + entry for "big5-0". + (ctext-non-standard-encodings-table): Return a list instead of + char-table. + (ctext-pre-write-conversion): Adjust for the above change. -2005-12-10 David Koppelman +2008-02-01 Zhang Wei - * hi-lock.el (hi-lock-mode): Rename from hi-lock-buffer-mode; - react if global-hi-lock-mode seems intended. - (global-hi-lock-mode): Renamed from hi-lock-mode. - (hi-lock-archaic-interface-message-used) - (hi-lock-archaic-interface-deduce): New variables. - (turn-on-hi-lock-if-enabled, hi-lock-line-face-buffer) - (hi-lock-face-buffer, hi-lock-face-phrase-buffer) - (hi-lock-find-patterns, hi-lock-font-lock-hook): - Replace hi-lock-buffer-mode with hi-lock-mode. + * international/mule.el (ctext-non-standard-encodings-alist): + Add an entry for gbk-0. + (ctext-post-read-conversion): Use multibyt-char-to-unibyte to read + a row 8-bit. -2005-12-10 Kevin Rodgers (tiny change) + * language/chinese.el ("Chinese-GBK"): + Set ctext-non-standard-encodings property to "gbk-0". + Add sample-text property. - * emacs-lisp/lisp.el (lisp-complete-symbol): Regenerate the - completion list, even after a partial completion has been - inserted in the current buffer. If there are more than 1 - completion, redisplay the *Completions* buffer; if the - completion is unique, delete the *Completions* window. +2008-02-01 Kenichi Handa -2005-12-10 Eli Zaretskii + * international/kkc.el (kkc-region): Use + this-single-command-raw-keys on pushing back an unhandled key sequence. - * mail/rmail.el (rmail-next-same-subject): Handle multiple "Re: " - strings and long subject lines that were broken into multiple - lines at arbitrary places. Handle subjects that have "Re: " in - the middle. +2008-02-01 Kenichi Handa -2005-12-10 John W. Eaton + * international/encoded-kb.el (encoded-kbd-mode): + Check saved-input-mode on turning off Encoded Kbd mode. - * progmodes/octave-mod.el (octave-electric-space): Don't indent - comments or strings if octave-auto-indent is nil. + * composite.el (auto-composition-after-change): Use save-buffer-state. + (turn-on-auto-composition-if-enabled): Don't turn on + auto-composition-mode in a unibyte buffer. -2005-12-10 YAMAMOTO Mitsuharu +2008-02-01 Kenichi Handa - * term/mac-win.el: Require url when compiling. - Call mac-process-deferred-apple-events after loading init files. - (mac-apple-event-map): New defvar. Define event handlers in it. - (core-event, internet-event): New Apple event class symbols. - (open-application, reopen-application, open-documents) - (print-documents, open-contents, quit-application) - (application-died, show-preferences, autosave-now, get-url): - New Apple event ID symbols. - (about): New HICommand ID symbol. - (mac-event-spec, mac-event-ae): New macros. - (mac-ae-parameter, mac-ae-list, mac-bytes-to-integer) - (mac-ae-selection-range, mac-ae-text-for-search) - (mac-ae-open-documents, mac-ae-text, mac-ae-get-url): New functions. - (mac-application-menu-map): Remove keymap. Handlers for HICommand - and Services menu events are now defined in mac-apple-event-map. - (mac-drag-n-drop): Remove selection range handling. + * startup.el (command-line): Use custom-reevaluate-setting for + global-auto-composition-mode. -2005-12-10 Kenichi Handa + * composite.el (auto-composition-function): Make it buffer local. + (auto-composition-mode): New minor mode. + (turn-on-auto-composition-if-enabled): New function. + (global-auto-composition-mode): New global minor mode. - * simple.el (zap-to-char): - * isearch.el (isearch-process-search-char): Translate CHAR by - translation-table-for-input. +2008-02-01 Kenichi Handa -2005-12-09 Chong Yidong + * descr-text.el (describe-char): Use insert-text-button instead of + widget-create for "customize what to show" button. - * foldout.el (foldout-exit-fold): Properly hide subtree. +2008-02-01 Naoto Takahashi -2005-12-09 Reiner Steib + * language/ethiopic.el: Fix copyright. + (composition-function-table): Support a new character in Unicode 4.1. - * files.el (save-buffer): - * international/ucs-tables.el (ucs-set-table-for-input): - * mail/mail-extr.el (mail-extract-address-components): - * mail/sendmail.el (mail-mode): Reformat doc string. + * language/ethio-util.el (ethio-fidel-to-tex-buffer) + (ethio-tex-to-fidel-buffer, ethio-composition-function) + ("ethiopic-tex"): Support new characters in Unicode 4.1. -2005-12-09 Juri Linkov - - * isearch.el (isearch-highlight): Change main overlay priority - from 1 to 1001. Simplify. - (isearch-lazy-highlight-update): Change lazy overlay priority - from 0 to 1000. +2008-02-01 Kenichi Handa - * replace.el (replace-highlight): Change overlay priority from - 1 to 1001. + * international/characters.el: Register characters in + auto-fill-chars. Put nospace-between-words to more charsets. - * textmodes/ispell.el (ispell-highlight-spelling-error-overlay): - Change overlay priority from 1 to 1001. Reuse existing overlay. +2008-02-01 Zhang Wei - * compare-w.el (compare-windows-highlight): Change overlay - priority from 1 to 1000. + * international/mule-cmds.el (locale-language-names): Add entries + for zh_CN.GB2312, zh_CN.GBK, and zh_CN.GB18030. + (locale-preferred-coding-systems): Fix entries for Chinese locales. - * menu-bar.el (menu-bar-edit-menu): Add listp around - pending-undo-list to disable menu item "undo" when pending - undo list is empty. +2008-02-01 Kenichi Handa - * locate.el (locate): Disable undo in *Locate* buffer. + * international/utf-7.el: Delete the definition of utf-7. + (utf-7-post-read-conversion, utf-7-pre-write-conversion): + Add autoload cookies. -2005-12-09 Kim F. Storm +2008-02-01 YAMAMOTO Mitsuharu - * mail/smtpmail.el (smtpmail-via-smtp): Disable undo in SMTP buffer. + * term/mac-win.el: Delete the code to create a fontset from the X + resource "Font". -2005-12-09 David Ponce +2008-02-01 Naoto Takahashi - * recentf.el: Improvement of the menu code. - (recentf-enabled-p): Move before first use. Use `kill-emacs-hook' - instead of menu hook. - (recentf-show-menu, recentf-hide-menu): New functions. - (recentf-menu-customization-changed, recentf-mode): Use them. - (recentf-menu-action, recentf-max-menu-items) - (recentf-menu-open-all-flag, recentf-menu-append-commands-flag) - (recentf-arrange-by-rule-others) - (recentf-arrange-by-rules-min-items) - (recentf-arrange-by-rule-subfilter): Don't use - `recentf-menu-customization-changed'. - (recentf-arrange-rules): Likewise. Accept functions to compute - sub-menu titles. - (recentf-menu-filter): Likewise. Doc fix. - (recentf-menu-value-shortcut): Doc fix. - (recentf-dump-variable): Quote atom value. - (recentf-make-menu-items): Update to use it as a menu filter. - (recentf-match-rule): New function. - (recentf-arrange-by-rule): Use it. - (recentf-indirect-mode-rule): New function. - (recentf-build-mode-rules): Use it. - (recentf-dir-rule): New function. - (recentf-arrange-by-dir): Use it. - (recentf-filter-changer-current): Rename from - `recentf-filter-changer-state'. All references updated. - (recentf-filter-changer-alist): Update filter names. - (recentf-filter-changer-select): New function. - (recentf-filter-changer): Use it. Make a sub-menu from filters - available in `recentf-filter-changer-alist'. - (recentf-data-cache, recentf-clear-data) - (recentf-update-menu): Remove. All references updated. - (recentf-match-rule-p, recentf-build-dir-rules) - (recentf-filter-changer-goto-next) - (recentf-filter-changer-get-current) - (recentf-filter-changer-get-next): Remove. + * international/robin.el (robin-define-package): Be sure to call + put-char-code-property. -2005-12-08 Luc Teirlinck +2008-02-01 Kenichi Handa - * cus-edit.el (custom-buffer-create-internal): Relabel the whole - buffer "Reset" button to "Reset to Current" for consistency with - the State buttons. + * language/korean.el (iso-2022-kr): Set :suitable-for-keyboard + property to 1. -2005-12-08 John Paul Wallington + * international/mule-conf.el (cp1125): Set :ascii-compatible-p + property to t. - * ibuf-ext.el (define-ibuffer-filter filename): - If `dired-directory' is a list then really use its car. + * international/mule.el (coding-system-get): + Check `ascii-incompatible' for backward compatiblity. + (set-file-name-coding-system): Signal an error for a coding system + not suitable for file name. + (set-keyboard-coding-system): Signal an error for a coding system + not suitable for keyboard. -2005-12-08 Kim F. Storm + * language/chinese.el (iso-2022-cn, iso-2022-cn-ext): + Set :suitable-for-keyboard property to 1. - * emulation/cua-rect.el (cua--rectangle-aux-replace): - Fix indention of text on right side of replaced rectangle. + * language/japanese.el (iso-2022-jp, iso-2022-jp-2) + (iso-2022-jp-2004): Set :suitable-for-keyboard property to 1. -2005-12-09 Nick Roberts + * language/vietnamese.el (vietnamese-viscii, vietnamese-vscii) + (vietnamese-tcvn): Set :suitable-for-file-name property to t. - * progmodes/gud.el (gud-speedbar-buttons, gud-tooltip-tips): - No need to check gud-comint-buffer is bound. - (gdb): Prevent multiple debugging when first session uses gdba. +2008-02-01 Naoto Takahashi -2005-12-08 Alan Mackenzie + * international/robin.el (robin-define-package): Delete redundant code. + (robin-add-rule): Allow N-1 reverse conversion. - CC Mode update to 5.31. +2008-02-01 Naoto Takahashi - * progmodes/cc-subword.el: Add a dummy `c-subword-mode' for - Emacsen which lack `define-minor-mode'. (Currently Emacs <21. - We might do this function properly in the future). + * international/robin.el (robin-define-package): Make the + expanded form shorter. - * progmodes/cc-cmds.el, cc-defs.el, cc-styles.el, cc-vars.el: - New macros c-sentence-end and c-default-value-sentence end, to cope - with Emacs 22's new function `sentence-end'. +2008-02-01 Zhang Wei -2005-12-08 Martin Stjernholm + * language/chinese.el (chinese-iso-8bit): Fix mime-charset of + chiense-iso-8bit. - * progmodes/cc-cmds.el (c-show-syntactic-information): Solve the - compat issue using `c-put-overlay' and `c-delete-overlay'. +2008-02-01 Kenichi Handa - * progmodes/cc-defs.el (c-put-overlay, c-delete-overlay): - New compat macros to handle overlays/extents. + * loadup.el: If we are byte-compiling unidata-gen.el or running + unidata-ge-files, set purify-flag to nil. -2005-12-08 Alan Mackenzie +2008-02-01 Kenichi Handa - * progmodes/cc-fix.el: Add definitions of the macros push and pop - (for GNU Emacs 20.4). + * loadup.el: Load international/charprop.el with NOERROR t. - * progmodes/cc-defs.el - (i): Load cc-fix.elc for `push' and `pop' (for GNU Emacs 20.4). + * Makefile.in (AUTOGENEL): Add charprop.el and uni-*.el. - * progmodes/cc-cmds.el (c-show-syntactic-information): Change the - highlighting mechanism so it will work in XEmacs too. +2008-02-01 Kenichi Handa - * progmodes/cc-defs.el: Insert c-int-to-char. + * term/mac-win.el (mac-centraleurroman, mac-cyrillic): + New charsets and coding systems. + (mac-symbol, mac-dingbats): New charsets. - * progmodes/cc-langs.el (c-nonsymbol-token-char-list): Insert a - call to the new macro c-int-to-char. This solves XEmacs's - regarding characters as different from integers. +2008-02-01 Kenichi Handa -2005-12-08 Martin Stjernholm + * international/characters.el: Set syntax of NBSP to punctuation. - * progmodes/cc-fonts.el (c-make-syntactic-matcher): - New internal helper. +2008-02-01 Kenichi Handa - (c-cpp-matchers, c-basic-matchers-before): Use the `eval' - construct to make the indirect face lookup work in XEmacs. + * international/mule-cmds.el: Don't require wid-edit. - (c-cpp-matchers): Append the negation char face to the existing - fontification, so that the cpp face doesn't disappear. - Use `c-make-syntactic-matcher' to avoid negation chars in comments - and strings. +2008-02-01 Naoto Takahashi - * progmodes/cc-fonts.el (c-negation-char-face-name): New variable - to map to `font-lock-negation-char-face' in emacsen where it exists. + * international/robin.el: New file. -2005-12-08 Alan Mackenzie + * language/ethiopic.el: Change encoding to utf-8-emacs. + Register ethio-composition-function in composition-function-table. + ("Ethiopic"): Change coding-systems to utf-8-emacs. - * progmodes/cc-mode.el: Bind c-subword-mode to C-c C-w. + * language/ethio-util.el: Change encoding to utf-8-emacs. + Rewrite all transliteration functions to use robin.el. + (ethio-fidel-to-sera-map, ethio-fidel-to-tex-map) + (ethio-sera-to-fidel-table, ethio-implicit-period-conversion) + (ethio-prefer-ascii-punctuation): Delete variables. + (ethio-char-to-ethiocode, ethio-convert-digit) + (ethio-ethiocode-to-char, ethio-fidel-to-sera-mail) + (ethio-fidel-to-sera-mail-or-marker, ethio-lone-consonant-p) + (ethio-sera-to-fidel-english, ethio-sera-to-fidel-ethio) + (ethio-sera-to-fidel-mail, ethio-sera-to-fidel-mail-or-marker) + (ethio-tilde-escape, ethio-toggle-punctuation): Delete functions. + (ethio-adjust-robin, ethio-composition-function) + (ethio-get-consonant, ethio-prefer-amharic, ethio-process-digits) + (ethio-sera-to-fidel-region-ethio) + (ethio-sera-to-fidel-region-noethio) + (ethio-use-colon-for-colon, ethio-use-three-dot-question): + New functions. - * progmodes/cc-subword.el, cc-cmds.el, cc-mode.el: - Rename "c-subword-move-mode" as "c-subword-mode". +2008-02-01 Miles Bader - * progmodes/cc-mode.el: Added tty suitable bindings for C-c - and C-c C-. (To the c-hungry- delete functions). + * international/mule.el (auto-coding-regexp-alist) + (ctext-pre-write-conversion): Replace embedded control characters + with octal escapes; this prevents diff from thinking the file is binary. -2005-12-08 Martin Stjernholm +2008-02-01 Miles Bader - * progmodes/cc-mode.el: Added autoload directive for - `c-subword-move-mode' for use in older emacsen. + * descr-text.el (describe-char-unidata-list): + * emacs-lisp/bytecomp.el (byte-compile-fix-header) + (byte-compile-insert-header): + * international/mule.el (charset-list, set-coding-priority) + (ignore-relative-composition): + * international/mule-util.el (detect-coding-with-priority): + * international/mule-diag.el: + * international/mule-cmds.el (language-info-custom-alist): + * international/codepage.el (codepage-setup): + Replace references to Emacs version "22" with "23". + +2008-02-01 Kenichi Handa + + * Makefile.in (DONTCOMPILE): Include charprop.el and uni-*.el. + + * international/fontset.el (font-encoding-alist): Add an entry for + microsoft-cp1251. + (setup-default-fontset): Add entries for microsoft-cp1251 and + koi8-r for cyrillic. + + * international/mule-cmds.el (char-code-property-alist): New variable. + (define-char-code-property): New function. + (get-char-code-property, put-char-code-property): Handle a + char-table registerd in char-code-property-alist. + (set-language-environment): Check :ascii-compatible-p property of + nonascii charset instead of its dimension. + + * international/uni-bidi.el, international/uni-category.el: + * international/uni-combining.el, international/uni-comment.el: + * international/uni-decimal.el, international/uni-decomposition.el: + * international/uni-digit.el, international/uni-lowercase.el: + * international/uni-mirrored.el, international/uni-name.el: + * international/uni-numeric.el, international/uni-old-name.el: + * international/uni-titlecase.el, international/uni-uppercase.el: + * international/charprop.el: New files automatically generated by + admin/unidata/Makefile. + + * loadup.el: Load internationnal/charprop.el. + + * descr-text.el (describe-char-unidata-list): New variable. + (describe-char-unicode-data): Use char-code-property-description. + (describe-char): Add lines for describing Unicode-based character + properties. -2005-12-08 Alan Mackenzie +2008-02-01 Kenichi Handa - * progmodes/cc-mode.el: - (i): Insert a binding for C-c C-backspace into - c-bind-special-erase-keys which works in TTYs. - (ii): Make sure that when file styles are used, any explicitly - given style variables take priority over those in the style. - Do this by calling `hack-local-variables' a second time. + * textmodes/ispell.el: These changes are to fix the code merged + from trunk for the change on 2008-02-01. + (ispell-unified-chars-table): Delete it. + (ispell-get-decoded-string): Don't check ispell-unified-chars-table. - * progmodes/cc-vars.el: Add language specific customization - widgets for AWK to c-doc-comment-style, c-require-final-newline - and c-default-style. Add a defcustom for awk-mode-hook. - Give c-syntactic-element and c-syntactic-context doc-strings by - directly setting their `variable-documentation' propery. - This allows Emacs 22.1 to read these with C-h v. +2008-02-01 Kenichi Handa - * progmodes/cc-awk.el: Apply a tidy-up patch (from Stefan Monnier). + * international/mule-util.el (char-displayable-p): Check + :charset-list property of CODING. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-fonts.el, cc-vars.el - (gtkdoc-font-lock-doc-comments, gtkdoc-font-lock-doc-protection) - (gtkdoc-font-lock-keywords): GtkDoc patterns contributed by - Masatake YAMATO. + * international/mule-cmds.el (select-safe-coding-system-interactively): + Change 'mime-charset to :mime-charset. + (select-safe-coding-system): Use above. + (set-language-environment): Delete unnecessary code for handling + overriding-fontspec. - (c-doc-comment-style): Made GtkDoc default in C mode. +2008-02-01 Kenichi Handa - * progmodes/cc-mode.el: Fixed key bindings for C-c C- - and C-c C-. + * international/mule-conf.el: New coding system aliases unix, dos, + and mac. - (c-bind-special-erase-keys): New function for use on - `normal-erase-is-backspace-hook' to bind C-c C- correctly. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el (c-hungry-delete): New function to fix - key behavior in XEmacs according to `delete-forward-p'. - C.f. `c-electric-delete'. + * international/titdic-cnv.el (tit-process-header): Fix embedded + coding tag. + (titdic-convert): Bind coding-system-for-write to the coding + system specfied in the map file. Remove `charset' property after + decoding. + (miscdic-convert): Bind coding-system-for-write to the coding + system specfied for the map file. Fix LANGUAGE arg to + quail-define-package. + (batch-miscdic-convert): Check if a file is directory or not. -2005-12-08 Alan Mackenzie +2008-02-01 Kenichi Handa - * progmodes/cc-mode.el: Give c-hungry-backspace and - c-hungry-delete-forward permanent key bindings. + * international/mule.el (coding-system-equal): Move from mule-util.el. - * progmodes/cc-cmds.el (c-electric-semi&comma): - Bind c-syntactic-context for calls to "criteria functions", for - consistency with other calls to user functions. + * international/mule-util.el (coding-system-equal): Move to mule.el. - * progmodes/cc-cmds.el (c-indent-command): Expunge use of - `current-prefix-arg', since this might be the prefix arg to a - command which calls c-indent-command as a function. Change the - interactive spec from "p" to "P". +2008-02-01 Kenichi Handa - * progmodes/cc-styles.el: Amend the doc-string of c-set-style, in - reponse to a report from Joseph Kiniry that it - was difficult to understand. + * international/encoded-kb.el (encoded-kbd-decode-code-list): + New function. + (encoded-kbd-self-insert-charset, encoded-kbd-setup-keymap): + Support multibyte charsets. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-on-identifier): Fix bug when at the - first char of an identifier. + * language/china-util.el (hz-set-msb-table): Turn chars beyond 128 + to eight-bit chars. - * progmodes/cc-engine.el (c-on-identifier): Handle the "operator - +" syntax in C++. + * international/mule-conf.el: Don't define coding system + `undecided' here. -2005-12-08 Alan Mackenzie +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el (c-mask-paragraph): Correct, so that - auto-fill doesn't split a c-comment's last word from a hanging - "*/" when a space is typed between them after fill-column. + * international/mule-cmds.el (locale-language-names): Fix for + gb18030 and gdk. - * progmodes/cc-defs.el: New macro c-delete-and-extract-region. +2008-02-01 Kenichi Handa - * progmodes/cc-styles.el (c-set-style) - (c-setup-paragraph-variables): Abort the command if we're not in a - CC Mode buffer. + * international/fontset.el (font-encoding-alist): Add gbk. + (charset-script-alist): Add chinese-gbk. - * progmodes/cc-align.el (c-lineup-C-comments): Correct indentation - with blank comment-prefix, and a blank line as the comment's - second line. +2008-02-01 Kenichi Handa -2005-12-08 Martin Stjernholm + * language/chinese.el (chinese-gbk): Include ascii in charset-list. - * progmodes/cc-fonts.el (c-cpp-matchers, c-basic-matchers-before): - Incorporate the patterns added in the Emacs development branch - for the new Emacs 22 face `font-lock-negation-char-face'. +2008-02-01 Kenichi Handa - * progmodes/cc-fonts.el (c-invalid-face-name): Use "red1" instead - of "red" since it stands out better in xterms and DOS terminals. + * language/japanese.el ("Japanese"): Fix ordering of charsets. - * progmodes/cc-engine.el (c-literal-faces): - Add `font-lock-comment-delimiter-face' which is new in Emacs 22. +2008-02-01 Kenichi Handa -2005-12-08 Alan Mackenzie + * international/encoded-kb.el (encoded-kbd-self-insert-charset) + (encoded-kbd-self-insert-utf-8, encoded-kbd-setup-keymap) + (encoded-kbd-mode): Adjust code merged from trunk for unicode branch. - * progmodes/cc-cmds.el: Make C-c C-a (`c-toggle-auto-newline') - forcibly enable c-electric-flag. +2008-02-01 Kenichi Handa - * progmodes/cc-vars.el, cc-cmds.el: New clean-up - `comment-close-slash' on c-electric-slash: if enabled, typing `/' just - after the comment-prefix of a C-style comment will close that comment. + * descr-text.el (describe-char): Fix for the case CODE is a cons + of integers. -2005-12-08 Martin Stjernholm +2008-02-01 Steven Tamm - * progmodes/cc-fonts.el (c-basic-matchers-before) - (c-complex-decl-matchers): Fix the "not-arrow-prefix" regexp used - in Pike. + * term/mac-win.el: Use mac-standard-fontset-spec to create fontset-mac. + (mac-standard-fontset-spec): Create. - * progmodes/cc-langs.el (c-other-op-syntax-tokens): Only C++ has - digraphs. +2008-02-01 Kenichi Handa - * progmodes/cc-fonts.el, cc-langs.el, cc-engine.el - (c-cpp-message-directives, c-cpp-include-directives) - (c-opt-cpp-macro-define, c-opt-cpp-macro-define-start) - (c-cpp-expr-directives): Introduce new language constants to - control cpp syntax in a cleaner way. + * international/mule-diag.el (unicode-data): + Call find-file-noselect with NOWARN t. - (c-cpp-expr-functions): Rename from c-cpp-defined-fns. +2008-02-01 Kenichi Handa - (c-cpp-matchers, c-forward-to-cpp-define-body): Use them. + * international/mule-conf.el (cp932-2-byte): Fix :code-space. - * progmodes/cc-langs.el, cc-fonts.el (c-string-escaped-newlines) - (c-multiline-string-start-char): New language constants and - variables to specify how newlines in string literals work. +2008-02-01 Kenichi Handa - (c-font-lock-invalid-string): Use them. + * international/characters.el: Give more CJK characters the + category `|'. - * progmodes/cc-cmds.el (c-try-one-liner): Robustness fix if an - unbalanced close brace is entered. Optimization by avoiding going - back over arbitrarily large blocks. Removed hints that this - function only would be relevant/useful in AWK. + * descr-text.el (describe-char): Make it work on *Help* buffer. + Suppress auto-composition on a region describing about composition. - (c-electric-brace): Indent syntactically after the cleanups since - lineup functions might do it differently then. + * language/european.el (diacritic-compose-region) + (diacritic-compose-string, diacritic-composition-function): + Compose diacritical marks only with a character whose syntax is + word constituent. + (diacritic-post-read-conversion): Delete it. - * progmodes/cc-engine.el, cc-langs.el - (c-opt-op-identifier-prefix): New language constant and variable. +2008-02-01 Kenichi Handa - (c-just-after-func-arglist-p, c-after-special-operator-id) - (c-search-decl-header-end, c-inside-bracelist-p): Use it. + * composite.el (auto-compose-chars): Execute the main code in + condition-case. - * progmodes/cc-align.el, cc-engine.el - (c-after-special-operator-id): New helper to handle C++ operator - identifiers. +2008-02-01 Kenichi Handa - (c-lineup-topmost-intro-cont, c-just-after-func-arglist-p) - (c-guess-basic-syntax): Handle C++ operator identifiers in - declarations. + * international/fontset.el (x-complement-fontset-spec): + Don't change CHARSET_REGISTRY and CHARSET_ENCODING fields. - * progmodes/cc-langs.el (c-assignment-operators): Add the - trigraph version of ^= too. +2008-02-01 Kenichi Handa - * progmodes/cc-langs.el (c-assignment-operators): Add the - trigraph version of |= in C++. + * international/characters.el (next-word-boundary-kana): + Handle half-width kana. - * progmodes/cc-fonts.el (c-font-lock-declarators): - Handle `c-decl-hangon-kwds' after the identifier name. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-guess-basic-syntax): When deciding - whether an arglist is "nonempty", ignore a comment after the open - paren if it isn't followed by a non-comment token on the same line. + * international/mule-conf.el (indian-1-column): Fix :emacs-mule-id. - * progmodes/cc-engine.el (c-guess-basic-syntax): Case 4: - Enable heuristics below the point to cope with classes inside special - brace lists in Pike. +2008-02-01 Kenichi Handa -2005-12-08 Alan Mackenzie + * language/japanese.el (japanese-iso-8bit): Fix order of :charset-list. - * progmodes/cc-cmds.el: Amend c-point-syntax to handle macros. + * mail/rmail.el (rmail-decode-babyl-format): + Use with-coding-priority instead of detect-coding-with-priority. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-guess.el (cc-guess-install): New function to - install an already guessed style in another buffer. + * international/mule.el (make-translation-table) + (make-translation-table-from-vector): Set the second extra slot of + the char table to 1. + (make-translation-table-from-alist): Fix handling of multiple entries. - * progmodes/cc-defs.el (c-tentative-buffer-changes): No longer - sets `inhibit-read-only' - `c-save-buffer-state' should be used - anyway if the change always is undone. +2008-02-01 Kenichi Handa -2005-12-08 Alan Mackenzie + * language/japanese.el (jisx0213-to-unicode, unicode-to-jisx0213): + New translation tables. - Implement togglable electricity: + * international/mule.el (make-translation-table-from-alist): + New function. - * progmodes/cc-defs.el: Enhance c-save-buffer-state's doc-string, - saying when it should be used. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el: Add the new buffer-local variable, - c-electric-flag. + * international/mule.el (translate-region): Re-implement it here. + Make it interactive. - * progmodes/cc-langs.el: Change the name of c-toggle-auto-state to - c-toggle-auto-newline. +2008-02-01 Kenichi Handa - * progmodes/cc-mode.el: Rename c-toggle-auto-state to - c-toggle-auto-newline. Remove the binding for - c-toggle-auto-hungry-state. Add the binding C-c C-l for the new - c-toggle-electric-state. + * ps-mule.el (ps-mule-font-info-database): Doc fix. - * progmodes/cc-vars.el: Make c-syntactic-indentation buffer local. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el: Add `c-bytecomp-defun's for - c-\(forward\|backward\)-subword. - (c-update-modeline): Add the new modeline flag `l' for - `c-electric-flag'. Make the auto-newline flag `a' dependent on `l'. - (c-toggle-auto-state): Rename it to `c-toggle-auto-newline'. - Make the old name an alias of the new name. - (c-toggle-electric-state): New function. - (c-electric-\(pound\|brace\|slash\|star\|semi&comma\|colon\|lt-gt\|paren\|continued-statement\)): - Adapt these functions to do electric things only when - c-electric-flag is non-nil. - (c-point-syntax, c-brace-newlines, c-try-oneliner): Extract these - new functions from c-electric-brace. - (c-point-syntax): Add a check for "virtual semicolons" in AWK - mode, so that the tentative extra newline doesn't change the - syntax of the following brace. - (c-electric-brace): Restructure by extracting the above functions. - Tidy up the coding somewhat. - (c-electric-semi&comma, c-electric-colon, c-electric-paren): - restructure a bit. + * international/mule-conf.el (chinese-cns11643-15): New charset. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el (c-show-syntactic-information): Show the - anchor position(s) using faces. Thanks to Masatake YAMATO for the idea. + * international/fontset.el (font-encoding-alist): Add entries for + variations of cns11643 fonts. + (setup-default-fontset): Add cns11643 fonts as fallback fonts. - * progmodes/cc-mode.el, cc-cmds.el, cc-defs.el, cc-engine.el - (c-submode-indicators): Change name from `c-auto-hungry-string' - since it's now used to track another submode. +2008-02-01 Kenichi Handa - (c-update-modeline): Convert to function and extended to check - `c-subword-move-mode'. + * international/mule-diag.el (list-charset-chars): Put charset + text property. - (c-forward-into-nomenclature, c-backward-into-nomenclature): - Convert to compat aliases for `c-forward-subword' and - `c-backward-subword'. + * international/fontset.el (setup-default-fontset): Delete the + entry for symbol script, add JISX0213 to kana script, specify + fallback fonts. - * progmodes/cc-subword.el: New functions and minor mode to handle - SillyCapsedStyleIndentifiers, contributed by Masatake YAMATO: +2008-02-01 Kenichi Handa - (c-forward-subword, c-backward-subword, c-mark-subword) - (c-kill-subword, c-backward-kill-subword, c-transpose-subwords) - (c-capitalize-subword, c-downcase-subword, c-upcase-subword): - Functions corresponding to the standard word handling functions. + * international/fontset.el (setup-default-fontset) + (font-encoding-alist): Register "JISX0213.2004-1". - (c-subword-move-mode): Minor mode that replaces all the standard - word handling functions with their subword equivalences. + * international/mule-diag.el (list-character-sets): Fix the first + line message. + (sort-listed-character-sets): Adjust for the change of + list-characters-sets-1. + (list-character-sets-1): List supplementary character sets in a + different section. + (list-charset-chars): Validate charset at early stage. -2005-12-08 Alan Mackenzie + * international/characters.el: Fix `han' script range. - * progmodes/cc-vars.el (c-cleanup-list): Insert a customization - entry for one-liner-defun. + * international/mule-conf.el (japanese-jisx0213.2004-1): + Specify :code-space. + (cp932-2-byte): Fix :code-space. + (unicode-smp, unicode-sip, unicode-ssp): New charsets. - * progmodes/cc-defs.el: Give c-tentative-buffer-changes its own - name in its def-edebug-spec. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el (c-electric-brace): Make the - one-liner-defun clean-up work with empty-defun-braces. o-l-d now - compacts space before a comment, if this will make things fit on - one line. + * international/mule-conf.el (japanese-jisx0213.2004-1): + Specify :dimension 2. - Introduce an "awk" style, mainly for auto-newline and clean-ups. + * language/japanese.el (iso-2022-jp): Exclude japanese-jisx0212. + (iso-2022-jp-2004, euc-jis-2004, japanese-shift-jis-2004): + New coding systems. + (iso-2022-jp-3, euc-jisx0213, shift_jis-2004): New coding system + aliases. + ("Japanese"): Add new charsets and coding systems. - * progmodes/cc-align.el: New function c-snug-1line-defun-close. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el: In c-electric-brace, add code for new - clean-up one-liner-defun. + * language/japanese.el (japanese-ucs-cp932-to-jis-map): + Rename from japanese-ucs-cp932-map. + (japanese-ucs-jis-to-cp932-map): Rename from japanese-ucs-jis-map. + (japanese-ucs-glibc-map): Delete this translation table. + (japanese-ucs-glibc-to-jis-map, japanese-ucs-jis-to-glibc-map): + New translation tables. - * progmodes/cc-styles.el: Add the new "awk" style. +2008-02-01 Kenichi Handa - * progmodes/cc-vars.el: Add description of one-liner-defun to - c-cleanup-list's doc-string. New user options, - c-max-one-liner-length. In c-default-style, set the default style - for AWK to "awk". + * cus-start.el: Handle charset-map-path, not charset-map-directory. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-forward-label): Fix fontification of - macros inside labels. + * term/x-win.el (x-selection-value): Optimize for ASCII only case. - * progmodes/cc-engine.el (c-looking-at-bos): Obsolete in favor of - `c-at-statement-start-p' and `c-at-expression-start-p'. +2008-02-01 Kenichi Handa - * progmodes/cc-defs.el (c-tnt-chng-record-state): Don't signal an - error if the mark isn't set. + * language/japanese.el: Add map #x00A6 <-> #xFFE4 to translation + tables japanese-ucs-*-map. - * progmodes/cc-engine.el (c-guess-continued-construct) - (c-guess-basic-syntax): Use `c-forward-decl-or-cast-1' to more - accurately detect functions inside functions. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-at-expression-start-p): New function - like `c-at-statement-start-p' that additionally recognizes commas - and expression parentheses as delimiters. + * international/eucjp-ms.el: New file (automatically generated by + admin/charsets/Makefile). - * progmodes/cc-engine.el (c-looking-at-inexpr-block): Add flag - to avoid heuristics that doesn't work for unclosed blocks. - (c-at-statement-start-p): New function. + * international/cp51932.el: New file (automatically generated by + admin/charsets/Makefile). - * progmodes/cc-engine.el, cc-fonts.el: Fixes in handling of - Objective-C directives, e.g. directives spanning lines should work - reasonably well now. + * language/japanese.el: Load cp51932 and eucjp-ms. + (japanese-ucs-cp932-map, japanese-ucs-jis-map) + (japanese-ucs-glibc-map): New translation tables. + (eucjp-ms): New coding system. - (c-put-c-type-property, c-clear-c-type-property): New helpers. + * international/mule.el (coding-system-put): Delete it. + It's implemented in C now. - (c-forward-objc-directive): New function to move over any ObjC - directive. + * international/mule-conf.el (katakana-sjis): Fix :superset to :subset. + (japanese-jisx0213-a): New supplementary charset. + (japanese-jisx0213.2004-1): New charset. - (c-just-after-func-arglist-p, c-guess-basic-syntax) - (c-basic-matchers-before): Use it. +2008-02-01 Kenichi Handa - (c-font-lock-objc-iip-decl): Remove. + * language/japanese.el (japanese-cp932): New coding system. + (cp932): New alias of it. - * progmodes/cc-engine.el (c-guess-basic-syntax): Some improvement - in the template arglist recognition. + * international/mule-conf.el (katakana-sjis, cp932-2-byte) + (cp932): New charsets. - * progmodes/cc-styles.el (c-style-alist): Fix several - inconsistencies in the Whitesmith style. + * international/mule.el (define-charset): If :code-space is not + given, generate it from :dimension. - * progmodes/cc-align.el (c-lineup-after-whitesmith-blocks): - New lineup function to get lines after Whitesmith style blocks - correctly indented. +2008-02-01 Kenichi Handa - (c-lineup-whitesmith-in-block): Back out the compensation for - opening parens since it's done using `add' lists in the style - definition instead. Don't use the anchor position since it varies - too much between the syntactic symbols. :P + * composite.el (reference-point-alist): Doc fix. + (encode-composition-rule, decode-composition-rule): + Handle a rule (GREF NREF XOFF YOFF). - * progmodes/cc-vars.el (c-valid-offset): Update. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-evaluate-offset): Extend to handle - lists where the offsets are combined according to several - different methods: `first', `min', `max', and `add'. - Report offset evaluation errors with `c-benign-error' so that some kind - of reindentation still is done. + * language/european.el (diacritic-composition-function): Fix for + the case that POS is at the head. Allow combining with more characters. - * progmodes/cc-engine.el (c-guess-basic-syntax): - Anchor `arglist-intro' the same way as `arglist-cont-nonempty' and - `arglist-close'. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-guess-basic-syntax): Fix similar - situations for `arglist-cont-nonempty' and `arglist-close'. + * descr-text.el (describe-char): Check `charset' property. + Show the code point in the charset in hexadigits. - * progmodes/cc-langs.el (c-opt-identifier-concat-key-depth): New const. + * international/mule-diag.el (stretches-for-character-list): + Delete it. + (list-block-of-chars): Use tabs instead of `display' property for + aligning characters. + (print-fontset-element): Fix the printing of XLFD. - * progmodes/cc-defs.el: Use `cc-bytecomp-fboundp' and - cc-bytecomp-boundp' in a number of places. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-beginning-of-statement-1): Fix a - macro related issue. + * international/encoded-kb.el (encoded-kbd-self-insert-utf-8): + New function. + (encoded-kbd-setup-keymap, encoded-kbd-mode): Add code for + handling utf-8. -2005-12-08 Alan Mackenzie +2008-02-01 Kenichi Handa - * progmodes/cc-awk.el: Change the terminology of regexps: A char - list is now [asdf], a char class [:alpha:]. - Include code for char classes. - Set c-awk-NL-prop on lines ending in open strings. (Bug fix.) - Add character classes (e.g. "[:alpha:]") into AWK Mode's regexps. + * faces.el (read-face-font): Include fontsets in the completion list. - Remove (nearly all of) the cruft associated with AWK Mode's former - concept of "virtual semicolons": + * international/mule-cmds.el (set-locale-environment): + Insert locale-translation-file-name in a unibyte buffer. - Adapt c-beginning-of-statement, c-end-of-statement (together with - subfunctions) to use the new notion of "virtual semicolon" in - place of the old awkward special handling for AWK. There remains - much cruft in cc-awk.el, cc-cmds.el and cc-engine.el to clear out. - * progmodes/cc-cmds.el: - (c-ascertain-adjacent-literal): In the backwards direction, now - recognises AWK regexp delimiters as string delimiters. - (c-after-statement-terminator-p): Adapt for virtual semicolons; - check more rigorously for "end of macro". - (c-back-over-illiterals, c-forward-over-illiterals): Adapt for - virtual semicolons; - (c-beginning-of-statement): Adapt for virtual semicolons; Separate - out the code for forward movement into ... - (c-end-of-statement): Now contains the code for forward movement, - adapted for virtual semicolons. + * international/characters.el: Fix setting of category `|'. - * progmodes/cc-engine.el: - (c-ws*-string-limit-regexp): New regexp. - (c-forward-single-comment, c-backward-single-comment): Comment out - the (now redundant) "special" AWK stuff. +2008-02-01 Kenichi Handa - * progmodes/cc-styles.el, cc-vars.el: Change the settings of - c-string-par-start, c-string-par-separate to be more like Text - Mode than Fundamental Mode. + * language/chinese.el (chinese-gb18030): Fix :charset-list. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-fonts.el (c-font-lock-declarations): Always narrow - to the fontified region so that fontification doesn't occur - outside it (could happen e.g. when fontifying a line with an - unfinished declaration). + * international/mule-cmds.el (select-safe-coding-system): Fix for + the case that the first element of default-coding-system is t. + Fix a message when some coding systems are rejected. -2005-12-08 Alan Mackenzie +2008-02-01 Kenichi Handa - * progmodes/cc-awk.el: Move regexps for analysing AWK code to near the - start of the file. ^L now separate sections of the file. - (c-awk-non-eol-esc-pair-re, c-awk-blank-or-comment-line-re) - (c-awk-one-line-possibly-open-string-re) - (c-awk-regexp-one-line-possibly-open-char-class-re) - (c-awk-one-line-possibly-open-regexp-re) - (c-awk-one-line-non-syn-ws*-re): New defonsts. - (c-awk-at-vsemi-p, c-awk-vsemi-status-unknown-p): New functions. + * international/mule-cmds.el (set-language-environment): Put + higher priority to charsets listed in `charset' property of the + language environment. - Amend the concept of "virtual semicolons" (in the indentation - engine) for languages like AWK, such that they are now - conceptually attached to end of the last token of a statement, not - the end of the line. (In AWK Mode, however, the pertinent text - property is still physically set on the EOL.) Remove the specific - tests for awk-mode, thus facilitating the introduction of other - language modes where EOLs can end statements. - (Note: The funtionality in cc-cmds.el, specifically - c-beginning/end-of-statement has yet to be amended.) +2008-02-01 Kenichi Handa - * progmodes/cc-defs.el (c-at-vsemi-p, c-vsemi-status-unknown-p): - New macros. + * composite.el (auto-compose-chars): Don't do unnecessary + save-exclusion and save-restriction. - * progmodes/cc-langs.el: Added `#' into AWK Mode's value of - c-stmt-delim-chars. New c-lang-defvars: c-at-vsemi-p-fn, - c-vsemi-status-unknown-p-fn (in a new page). +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el: In c-beginning-of-statement-1, - c-crosses-statement-barrier-p, c-guess-basic-syntax, replace - numerous awkward forms like - (if (c-major-mode-is 'awk-mode) (c-awk-prev-line-incomplete-p)) - with (c-at-vsemi-p). Fix a few typos. In c-guess-basic-syntax, new - variable before-ws-ip, the place just after char-before-ip appears. + * international/mule-conf.el (ctext-no-compositions): + Remove garbage arguments. - * progmodes/cc-mode.el: Fix what's almost a semantic ambiguity in - a comment. + * international/mule.el (make-coding-system): Fix generation of + properties. -2005-12-08 Martin Stjernholm + * international/fontset.el (setup-default-fontset): Specify fonts + for `symbol' script. - * progmodes/cc-cmds.el (c-electric-brace): Clean up using - `c-tentative-buffer-changes'. + * international/characters.el (script-list): Include `currency' + in `symbol'. - * progmodes/cc-defs.el (c-region-is-active-p): Simplify and - convert to macro to choose between Emacs and XEmacs at compile time. +2008-02-01 Alex Schroeder - (c-set-region-active): New set counterpart to `c-region-is-active-p'. + * timezone.el (timezone-parse-date): Fix style 8 to accept ISO + 8601 format (a capital T between the date and the time). - (c-tentative-buffer-changes): New macro to handle temporary buffer - changes in a convenient way. +2008-02-01 Kenichi Handa - (c-tnt-chng-record-state, c-tnt-chng-cleanup): Internal helpers - for `c-tentative-buffer-changes'. + * international/mule.el (private-char-area-1-min) + (private-char-area-1-max, private-char-area-2-min) + (private-char-area-2-max, emacs-mule-charset-table): New variables. + (convert-define-charset-argument): New function. + (define-charset): Handle the old calling style. + Update emacs-mule-charset-table. + (make-char-internal): New function. - * progmodes/cc-engine.el (c-looking-at-inexpr-block): Tighten up - the checks for paren sexps between the point and the keyword, to - avoid some false alarms. +2008-02-01 Jason Rumney - * progmodes/cc-engine.el, cc-langs.el (c-looking-at-inexpr-block): - Fixed a situation where an error could be thrown for unbalanced - parens. Changed to make use of c-keyword-member' to avoid some - repeated regexp matches. + * w32-charset-info-alist: Define iso10646-1 always. - (c-opt-lambda-key, c-opt-inexpr-block-key, c-opt-inexpr-class-key): - These language variable are no longer necessary. +2008-02-01 Kenichi Handa - (c-block-stmt-kwds): New language constant used by - c-looking-at-inexpr-block'. + * composite.el (compose-region): Doc fix (delete duplicated line). - (c-guess-basic-syntax): Remove an optional check that looked at - the existence of the now removed language variables. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-fdoc-shift-type-backward) - (c-forward-decl-or-cast-1): Fix invalid recognition of C++ style - object instantiation expressions as declarations in some contexts. - This bug only affected languages where the declarator can't be - enclosed in parentheses. + * international/characters.el: Fix syntax for Ethiopic. - * progmodes/cc-styles.el (c-style-alist): Fix the GNU style to - insert newlines before and after substatement braces. +2008-02-01 Jason Rumney - * progmodes/cc-engine.el: Improved the heuristics for recognizing - function declaration headers and the handling of C++ style member - init lists. + * w32-fns.el (w32-charset-info-alist): Accept more charset aliases. - (c-just-after-func-arglist-p): Rewritten to use - `c-forward-decl-or-cast-1'. Now behaves a bit differently too. + * makefile.w32-in (DONTCOMPILE): Remove old languages. + Add international/latin1-disp.el. + (LC_ALL): Define as C. - (c-beginning-of-member-init-list): Remove since it isn't used anymore. +2008-02-01 Jason Rumney - (c-guess-basic-syntax): Adapt case 5B for the new - `c-just-after-func-arglist-p'. Merge cases 5B.1 and 5B.3. - Remove cases 5D.1 and 5D.2 since they aren't trigged anymore (case 5B.1 - covers all cases now). + * term/w32-win.el: Don't set fontsets to use sjis. - * progmodes/cc-defs.el (c-point): Add `bosws' and `eosws'. +2008-02-01 Kenichi Handa -2005-12-08 Alan Mackenzie + * language/japanese.el (iso-2022-jp, iso-2022-jp-2) + (japanese-iso-8bit): Fix the order of charsets in :charset-list. - * progmodes/cc-cmds.el, cc-styles.el, cc-vars.el: New variables - c-string-par-start/separate c-sentence-end-with-esc-eol, - initialised in c-setup-paragraph-variables, used in string - scanning subroutines of c-beginning-of-statement. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el (c-electric-brace): Don't delete a comment - which precedes the newly inserted `{'. + * composite.el (auto-composition-chunk-size): Delete variable. + (auto-compose-chars): Always stop after processing a newline. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el, cc-langs.el: Rewrote the recognition - function for declaration level blocks. It should now cope with - templates better and also be a lot more comprehensible. + * international/mule.el (define-coding-system): Fix attribute + name :for-unibyte. - (c-looking-at-decl-block): The new function. +2008-02-01 Kenichi Handa - (c-search-uplist-for-classkey): The old one. It's now a wrapper - for compatibility. + * ps-bdf.el: Largely re-write. - (c-add-class-syntax, c-guess-continued-construct) - (c-guess-basic-syntax): Adapt for `c-looking-at-decl-block'. + * ps-mule.el: Largely re-write. - (c-decl-block-key): Change to tell apart ambiguous and - unambiguous keywords. Pike specials are now handled directly in - the code instead. + * ps-print.el (ps-generate-string-list): Delete function. + (ps-rh-cache, ps-lf-cache, ps-rf-cache): Delete variables. + (ps-header-footer-string): Delete function. + (ps-encode-header-string-function): New variable. + (ps-generate-header-line): Call ps-encode-header-string-function. + (ps-basic-plot-string-function): New variable + (ps-begin-job): Set ps-basic-plot-string-function and + ps-encode-header-string-function. For setting up headers and + footers, don't use caches such as ps-rh-cache. Don't call + ps-mule-begin-page. + (ps-basic-plot-str, ps-basic-plot-string, ps-control-character): + Don't call ps-mule-prepare-ascii-font. + (ps-plot-region): Don't pay attention to composition and + non-ASCII characters. + (ps-generate): Call ps-mule-end-job. + (ps-mule-prepare-ascii-font, ps-mule-set-ascii-font) + (ps-mule-plot-string, ps-mule-begin-page): Delete autoload. + (ps-mule-end-job): Declare autoload. - (c-block-prefix-disallowed-chars, c-block-prefix-charset): - New language constants and variables to make the backward skip in - `c-looking-at-decl-block' as tight as possible. + * composite.el (auto-compose-region): New function. - (c-nonsymbol-token-char-list): New language constant. +2008-02-01 Dave Love - * progmodes/cc-engine.el (c-backward-<>-arglist): New function to - find balanced template arglists backwards. + * international/mule-util.el + (detect-coding-with-language-environment): Doc fix. - * progmodes/cc-defs.el (c-make-bare-char-alt): New helper for - making char classes for `c-syntactic-skip-backward'. + * composite.el: Doc fixes. + (auto-compose-chars): Use functionp, not fboundp. - * progmodes/cc-engine.el (c-guess-basic-syntax): Simplify case - 16D - can't be a class-close at that point. + * international/mule-diag.el (list-charset-chars): Set buffer file + coding system. - * progmodes/cc-engine.el (c-guess-basic-syntax) - (c-add-class-syntax): Don't narrow out the enclosing declaration - level. This makes everything a lot easier, and it was actually - only four small places that needed it to work. Some places that - previously did `widen' are removed now, which has the effect that - `c-guess-basic-syntax' never will look at things outside the - current narrowment now. The anchor position for `topmost-intro' - is affected by this, but it was so bogus it was basically useless - before, and now it's equally bogus but in a slightly different way. + * progmodes/cap-words.el (capitalized-words-mode): Add autoload + cookie. Doc fix. - (c-narrow-out-enclosing-class): Gone. +2008-02-01 Dave Love - (c-most-enclosing-brace, c-least-enclosing-brace): Don't filter to - the narrowed region. + * international/mule-diag.el (list-charset-chars): Set buffer file + coding system. - (c-least-enclosing-brace): Remove silly optional argument. + * progmodes/cap-words.el (capitalized-words-mode): Add autoload + cookie. Doc fix. - * progmodes/cc-engine.el (c-beginning-of-decl-1): Fix bug where - the point could be left directly after an open paren when finding - the beginning of the first decl in the block. + * textmodes/tex-mode.el (tex-font-lock-syntactic-face-function): + * progmodes/sh-script.el (sh-font-lock-syntactic-face-function): + * progmodes/perl-mode.el (perl-font-lock-syntactic-face-function): + * eshell/esh-opt.el (eshell-process-option): + * emulation/keypad.el (keypad-setup): + * emacs-lisp/lisp-mode.el (prin1-char): + * emacs-lisp/generic.el (generic-mode-set-comments): + * edmacro.el (edmacro-parse-keys): + * disp-table.el (standard-display-default): Use characterp. - * progmodes/cc-engine.el, cc-fonts.el (c-forward-keyword-clause): - Specify which submatch to use. +2008-02-01 Kenichi Handa - * progmodes/cc-langs.el (c-symbol-start): Include `@' in ObjC. + * international/mule-conf.el (utf-16-be): Make it an alias of + utf-16be-with-signature. + (utf-16-le): Make it an alias of utf-16le-with-signature. + (utf-16-be-with-signature, utf-16-le-with-signature): Remove these + coding system aliases. - (c-decl-start-re): No longer any need for special treatment of - ObjC due to the above. + * international/utf-7.el (utf-7-decode, utf-7-encode): + Use utf-16be, not utf-16-be. - (c-other-block-decl-kwds): Handle "extern" in ObjC too since it - presumably follows C in that regard. +2008-02-01 Kenichi Handa - * progmodes/cc-langs.el (c-identifier-ops, c-after-id-concat-ops): - New language constants to specify operator tokens inside - identifiers in a more high level way. + * international/mule.el (coding-system-category): New function. + (set-coding-priority): Re-write. + (make-translation-table): Re-write. - (c-opt-identifier-prefix-key): New internal language constant. + * international/mule-cmds.el (universal-coding-system-argument): + Check the coding system type `undecided', not `t'. + (sort-coding-systems): Fix for iso-2022 coding systems. + (find-multibyte-characters): Fix for eight-bit chars. + (set-language-environment): Set charset priorities according to + the charsets supported by the coding systems of higher priorities. - (c-opt-identifier-concat-key, c-opt-after-id-concat-key) - (c-identifier-start, c-identifier-key): Now completely calculated - from other constants. +2008-02-01 Kenichi Handa - (c-identifier-last-sym-match): Decommission since it's no longer used. + * font-lock.el + (font-lock-match-c-style-declaration-item-and-skip-to-next): + Check (match-end 2) before going there. - (c-operators): Use `c-identifier-ops'. Document `postfix-if-paren'. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-forward-name): Remove the - optimization when c-identifier-key is equal to c-symbol-key since - it doesn't work in byte compiled files. Don't record empty - regions as identifiers. + * international/mule.el (ctext-non-standard-designations-alist): + Exclude entries for iso8859-1[03456]. Fix docstring. + (ctext-pre-write-conversion): Make it work for the case that FROM + is a string. Don't do unnecessary save-restriction and + narrow-to-region. - * progmodes/cc-langs.el (c-filter-ops): New helper function to - simplify access to `c-operators' and its likes. +2008-02-01 Kenichi Handa - (c-operator-list, c-all-op-syntax-tokens) - (c-nonsymbol-token-regexp, c-<>-multichar-token-regexp) - (c-<-op-cont-regexp, c->-op-cont-regexp, c-expr-kwds) - (c-primary-expr-regexp, c-cast-parens): Use it. + * international/mule.el (ctext-non-standard-encodings-alist): + Rename from non-standard-icccm-encodings-alist. + (ctext-non-standard-encodings-regexp): New variable + (ctext-post-read-conversion): Full rewrite. + (ctext-non-standard-designations-alist): Rename from + non-standard-designations-alist. + (ctext-pre-write-conversion): Full rewrite. + (define-coding-system): Doc fix (escape '"' by '\'). - * progmodes/cc-defs.el (c-lang-const): Fixes to allow use without - an explicit language in functions. +2008-02-01 Dave Love - * progmodes/cc-defs.el (c-make-keywords-re): Add an appendable - variant of adornment. + * international/mule-conf.el (utf-16le, utf-16be-16be) + (utf-16le-with-signature, utf-16be-with-signature, utf-16): + Define :mime-text-unsuitable. Rename `utf-16{b,l}e...' from + `-16-{b,l}e-' and define aliases for the old names. - * progmodes/cc-langs.el (c-any-class-key): Remove unused language - variable. + * international/mule.el (define-coding-system): Doc fix. - (c-type-decl-prefix-key): Remove some now unnecessary cruft from - the Pike value. +2008-02-01 Dave Love - * progmodes/cc-engine.el (c-on-identifier) - (c-simple-skip-symbol-backward): Small fix for handling "-" - correctly in `skip-chars-backward'. Affected the operator lfun - syntax in Pike. + * international/utf-7.el: New file. - * progmodes/cc-langs.el (c-make-init-lang-vars-fun): Disable the - diagnostic message about precompiled language vars not being used. + * international/mule-conf.el (utf-7): New. - * progmodes/cc-langs.el (c-paren-nontype-kwds): The GCC keyword - "__attribute__" is followed by a parenthesis. +2008-02-01 Kenichi Handa - (c-type-start-kwds, c-prefix-spec-kwds, c-prefix-spec-kwds-re) - (c-specifier-key, c-not-decl-init-keywords): Some cleanup using new - language constants `c-type-start-kwds' and `c-prefix-spec-kwds'. + * international/mule-conf.el (utf-16): Add :endian 'big. - * progmodes/cc-fonts.el, cc-langs.el, cc-engine.el: - Internal cleanups to properly detect the declared identifiers in - various declarations. + * international/mule.el (define-coding-system): Fix docstring + about :bom and :endian. - (c-decl-start-kwds): New language constant to recognize - declarations that can start anywhere. Used for class declarations - in Pike. +2008-02-01 Dave Love - (c-specifier-key, c-not-decl-init-keywords) - (c-decl-prefix-or-start-re, c-find-decl-prefix-search) - (c-find-decl-spots): Implement `c-decl-start-kwds'. + * international/mule-diag.el (describe-character-set): + Fix printing dimensions. Use `×', not `x'. - (c-other-decl-kwds, c-postfix-decl-spec-kwds, c-decl-hangon-kwds) - (c-decl-hangon-key, c-forward-decl-or-cast-1): Separate the - handling of the compiler specific extension keywords into a new - language constant `c-decl-hangon-kwds' that defines keyword - clauses to be ignored in declarations. +2008-02-01 Kenichi Handa - (c-forward-id-comma-list, c-forward-keyword-clause): Don't skip - past unrecognized tokens when handling `c-colon-type-list-kwds'. - Necessary to stop at the declared identifier in e.g. IDL valuetype - declarations. + * international/fontset.el: Register CDAC fonts in + face-font-rescale-alist instead of face-resizing-fonts. - (c-typedef-decl-kwds, c-typeless-decl-kwds, c-type-list-kwds) - (c-prefix-spec-kwds-re, c-postfix-spec-kwds) - (c-after-suffixed-type-decl-key, c-opt-postfix-decl-spec-key) - (c-forward-decl-or-cast-1): Recognize the declared identifier in - class and enum declarations as such and not as part of the type. +2008-02-01 Kenichi Handa - (c-forward-decl-or-cast-1, c-forward-label): Relax the - interpretation of PRECEDING-TOKEN-END when there's no preceding token. + * international/mule-conf.el (utf-16-le): Rename from utf-16-le-nosig. + (utf-16-be): Rename from utf-16-be-nosig. + (utf-16-le-with-signature): Rename from utf-16-le. + (utf-16-be-with-signature): Rename from utf-16-be. + (utf-16): Set :bom to (utf-16-le-with-signature . + utf-16-be-with-signature). - (c-forward-decl-or-cast-1): Don't disregard sure signs of - declarations when there's some syntax error later on. +2008-02-01 Dave Love - (c-complex-decl-matchers): Did away with a reference to - `c-specifier-key'. + * language/georgian.el (georgian-ps, georgian-academy): New coding + system. - * progmodes/cc-engine.el (c-maybe-labelp): Provide no default - value - this variable is always dynamically bound. + * language/chinese.el (chinese-big5-hkscs): New coding system. + (big5-hkscs, cn-big5-hkscs): New aliases. - * progmodes/cc-engine.el, cc-fonts.el, cc-langs.el, cc-menus.el - * cc-mode.el, cc-styles.el, cc-vars.el, cc-align.el, cc-awk.el - * cc-cmds.el, cc-defs.el: Change the policy for marking up - functions that might do hidden buffer changes: All such internal - functions are now marked instead of those that don't. + * international/mule-conf.el (big5-hkscs, georgian-academy): + New charset. + (ibm1047): Doc fix. + (pt154): Add mime-charset. + (ptcp154, cp154): New aliases. - (c-beginning-of-macro, c-end-of-macro, c-(forward|backward)-comments) - (c-(forward|backward)-single-comment, c-parse-state, c-on-identifier) - (c-(fast-|slow-|)in-literal, c-literal-limits, c-collect-line-comments) - (c-literal-type): Allow these functions to make hidden buffer changes, - so that they are free to use text property caching later on. +2008-02-01 Dave Love - (c-electric-backspace, c-electric-delete-forward, c-electric-pound) - (c-electric-brace, c-electric-slash, c-electric-star) - (c-electric-semi&comma, c-electric-colon, c-electric-lt-gt) - (c-electric-paren, c-electric-continued-statement, c-indent-command) - (c-indent-region, c-mask-paragraph, c-indent-new-comment-line) - (c-context-line-break): Add `c-save-buffer-state' calls to comply - with the changed semantics of the functions above. + * international/mule.el (charset-iso-final-char, define-coding-system): + Doc fix. - * progmodes/cc-engine.el (c-beginning-of-statement-1): Fix a bug - when macros occur in obscure places. Optimized the sexp movement - a bit. +2008-02-01 Kenichi Handa -2005-12-08 Alan Mackenzie + * international/ccl.el (define-ccl-program): Fset charset-id + to charset-id-internal temporarily. - Enhancements for c-beginning-of-statement to work in AWK Mode: +2008-02-01 Kenichi Handa - * progmodes/cc-awk.el: Supersede c-awk-NL-prop value `;' - (completed statement) with `}' (statement completed by closing - brace or semicolon) and `$' (statement completed by EOL). + * international/mule-diag.el (list-block-of-chars): + Use decode-char instead of make-char. - (c-awk-virtual-semicolon-ends-prev-line-p) - (c-awk-virtual-semicolon-ends-line-p) - (c-awk-skip-semantic-ws-forward, c-awk-skip-semantic-ws-backward) - (c-awk-at-statement-end-p): New functions. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el: Simplify the structure of functions - c-forward-over-illiterals, c-back-over-illiterals. Enhance these - two functions and c-beginning-of-statement to handle AWK Mode. + * international/fontset.el: Enable the default fontset to use + unicode fonts for ASCII characters. + (x-decompose-font-name): Don't try to resolve PATTERN by + x-resolve-font-name. + (x-complement-fontset-spec): Never prepend an ASCII font. + (create-fontset-from-fontset-spec): If a fontset of the same name + already exists, override it instead of signalling an error. Don't + turn `ascii' into `latin'. Don't update fontset-alias-alist here. - * progmodes/cc-engine.el: Enhance c-forward-single-comment, - c-backward-single-comment for AWK mode. Attempt to clarify their - doc-strings. - - * progmodes/cc-mode.el: Put M-a and M-e into awk-mode-map. + * international/mule-conf.el (unicode-bmp): Delete duplicated + definition. Give it :code-offset 0. -2005-12-08 Martin Stjernholm + * international/mule-diag.el (print-fontset-element): New function. + (print-fontset): Use print-fontset-element to print the elements + of a fontset. Use it also to print fonts fallen back to the + default fontsets. - * progmodes/cc-engine.el, cc-fonts.el, cc-langs.el: Cleaned up the - label handling. Labels are now recognized in a uniform and more - robust way, regardless of context. Text properties are put on all - labels to recognize the following declarations better. - Multiword labels are handled both in indentation and fontification for - the benefit of language extensions like Qt. For consistency, keywords - in labels are now fontified with the label face instead. - That also applies to "case" and "default". + * term/x-win.el: Delete the code to create a fontset from the X + resource "Font". - (c-beginning-of-statement-1): Fix some bugs in the label - handling. Disregard `c-nonlabel-token-key' in labels that begin - with `c-label-kwds'. +2008-02-01 Kenichi Handa - (c-find-decl-spots): Support that the callback adds more - `c-decl-end' spots to find. + * international/mule-diag.el (print-fontset): Insert proper + newline and indentation spaces. - (c-forward-decl-or-cast-1): Don't treat a list of plain - identifiers followed by a colon as a declaration. +2008-02-01 Dave Love - (c-forward-label): New function to recognize labels. + * emacs-lisp/byte-opt.el (side-effect-free-fns): Add langinfo, + multibyte-char-to-unibyte. - (c-guess-basic-syntax): Replace uses of `c-label-key' with - `c-forward-label'. Moved the label recognition cases (14 and 15) - earlier since they aren't so context sensitive now. Handle labels - on the top level gracefully. Moved access label recognition to - the generic label case (CASE 15) - removed CASE 5E. + * emacs-lisp/cl-macs.el (cl-make-type-test): Use characterp. - (c-font-lock-declarations): Add recognition of labels in the - same round since we need to handle labels in parallell with other - declarations to recognize both accurately. It should also improve - speed. + * international/mule-cmds.el (find-coding-systems-for-charsets): + Use coding-system-type, coding-system-charset-list. + (standard-keyboard-coding-systems): Delete. + (set-locale-environment): Maybe set keyboard coding system. + Avoid typical warning about codeset in C locale. - (c-simple-decl-matchers, c-basic-matchers-after): - Move `c-font-lock-labels' so that it only is used on decoration level 2 - since `c-font-lock-declarations' handles it otherwise. +2008-02-01 Kenichi Handa - (c-complex-decl-matchers): Remove the simplistic recognition of - access labels. + * international/fontset.el (x-complement-fontset-spec): If a + fontname doesn't conform to XLFD format, try to get XLFD name by + x-list-fonts. - (c-decl-prefix-re): Remove the kludges that was necessary to cope - with labels earlier. +2008-02-01 Dave Love - (c-decl-start-re): New language variable to make - `c-font-lock-declarations' stop for the special protection labels - in Objective-C that start with `@'. + * international/mule-conf.el (mik, pt154): New charsets. - (c-label-key): Remove since it's no longer used. + * language/cyrillic.el (mik, pt154): New coding systems. - (c-recognize-colon-labels, c-label-prefix-re): New language - constants to support recognition of generic colon-terminated labels. +2008-02-01 Dave Love - (c-type-decl-end-used): `c-decl-end' is now used whenever there - are colon terminated labels. + * international/characters.el: Move parts around so that syntax + definitions aren't overwritten wrongly. - * progmodes/cc-align.el (c-lineup-arglist): Fix bug when the - first argument starts with a special brace list. + * international/mule-diag.el (unicode-data): Fix treatment of + numeric-value fields. - * progmodes/cc-engine.el, cc-fonts.el (c-forward-decl-or-cast-1) - (c-font-lock-declarations): Break out the declaration and cast - recognition from `c-font-lock-declarations' to a new function, so - that it can be used in the indentation engine. +2008-02-01 Dave Love - * progmodes/cc-engine.el (c-find-decl-spots): Fix bug in backing - up to the start of the literal. Fixed bug with the point on the - wrong side of the search limit that could happen when the start - position is inside a literal. + * progmodes/cap-words.el: New file. - * progmodes/cc-engine.el (c-parse-state) - (c-invalidate-state-cache): Modify the use of `c-state-cache-end' - so that it's kept a little bit back to increase the hit rate. +2008-02-01 Kenichi Handa - (c-parse-state): Change the macro handling and fixed some - glitches. Macro context is checked more often than necessary now, - but otoh less garbage conses are generated. + The following changes are to make character composition happen + automatically on displaying. - * progmodes/cc-engine.el (c-parse-state) - (c-invalidate-state-cache): Cache the last position where - `c-state-cache' applies. This can speed up refontification quite - a bit in blocks where there are many non-brace parens before the point. + * composite.el: Remove all autoload cookies. + (composition-function-table): Move variable declaration from + composite.c. Change format. + (save-buffer-state): Copy from font-lock.el. + (auto-composition-chunk-size): New variable. + (auto-compose-chars): New function. Set + auto-composition-function to it. + (toggle-auto-composition): New function. - (c-state-cache-end): New variable for this. + * international/characters.el: Make all chararacters in the + charset tibetan to tibetan script. - (c-guess-basic-syntax, c-debug-parse-state): Adapt for the new - cache variable. + * international/mule-conf.el (tibetan): Fix :code-space property. + (tibetan-1-column): Delete :superset property, add :code-offset + property. - * progmodes/cc-engine.el (c-find-decl-spots): Take more care to - get close initial continue positions when the start position is - inside a literal or macro. Do not call the callback for spots - before the start position (which can happen e.g. for `c-decl-end' - spots inside comments). Optimize better in special cases when the - region is a single line inside a literal or macro (typically when - the current line is refontified). + * international/quail.el (quail-input-string-to-events): Don't + generate compose-chars-after events. - * progmodes/cc-engine.el (c-guess-basic-syntax): Simplify calls - to `c-add-stmt-syntax' - there's no need to explicitly whack off - entries from the paren state. + * language/devanagari.el: Register devanagari-composable-function + in composition-function-table for Devanagari characters. - * progmodes/cc-engine.el (c-add-stmt-syntax): Narrow down the - special case for "else if" clauses. + * language/devan-util.el: Register devanagari-composable-pattern + in indian-composable-pattern. + (devanagari-composition-function): Add autoload cookie. Change + arguments to conform to composition-function-table. - * progmodes/cc-engine.el (c-looking-at-inexpr-block) - (c-add-stmt-syntax): Use `c-recognize-paren-inexpr-blocks'. + * language/european.el: Register combining characters in + composition-function-table. + (diacritic-composition-function): Change arguments to conform to + composition-function-table. - * progmodes/cc-langs.el (c-recognize-paren-inexpr-blocks): - New language variable to recognize the gcc extension with statement - blocks inside expressions. + * language/indian.el (indian-composable-pattern): New variable. - * progmodes/cc-engine.el (c-add-stmt-syntax): Restructure to make - it somewhat more comprehensible. The argument AT-BLOCK-START is - no longer used and hence removed. + * language/ind-util.el (indian-compose-region): Don't call + compose-chars-after, instead call a function registered in + composition-function-table. - (c-guess-continued-construct, c-guess-basic-syntax): Update calls - to `c-add-stmt-syntax'. + * language/lao.el: Register lao-composition-function in + composition-function-table for Lao vowels and tones. + (lao): Don't use lao-post-read-conversion. - * progmodes/cc-engine.el (c-backward-to-decl-anchor): - Use `c-beginning-of-statement-1' instead of duplicating parts of it. - This fixes bogus label recognition. + * language/lao-util.el (lao-post-read-conversion): Delete this function. + (lao-composition-function): Change arguments to conform to + composition-function-table. - * progmodes/cc-engine.el (c-add-type, c-check-type) - (c-forward-name, c-forward-type): Improve storage of template - types in `c-found-types' so that they can be recognized better. + * language/thai.el: Register thai-composition-function in + composition-function-table for Thai vowels and tones. + (thai-tis620): Don't use thai-post-read-conversion. - (c-syntactic-content): Add option to skip past nested parens. + * language/thai-util.el (thai-post-read-conversion): Delete function. + (thai-composition-function): Change arguments to conform to + composition-function-table. - * progmodes/cc-engine.el (c-forward-name): - Set `c-last-identifier-range' all the time. It's less work that way. - Handle that there might not be an identifier to store in - `c-last-identifier-range'. + * language/tibetan.el: Register tibetan-composition-function in + composition-function-table for Tibetan characters. - (c-forward-type): Handle that `c-last-identifier-range' might be - nil from `c-forward-name'. + * language/tibet-util.el (tibetan-composition-function): + Change arguments to conform to composition-function-table. - * progmodes/cc-defs.el (c-safe-scan-lists) - (c-(go-)?(up|down)-list-(forward|backward)): Add limit arguments. + * loadup.el: Load composite. - * progmodes/cc-defs.el (c-save-buffer-state): Use `unwind-protect' - to work even if the form fails. +2008-02-01 Dave Love - * progmodes/cc-engine.el (c-parse-state): Speedup when moving far - down in a large file in one go. + * international/mule-diag.el (unicode-data): Find unicodedata-file + literally. - (c-get-fallback-start-pos): New helper function for `c-parse-state'. +2008-02-01 Dave Love - * progmodes/cc-align.el (c-lineup-assignments): New lineup - function which is like `c-lineup-math' but returns nil instead of - `c-basic-offset' when it doesn't match. + * international/fontset.el: Doc fixes. + ("fontset-default"): Add iso8859-15. - (c-lineup-math): Change to use `c-lineup-assignments'. +2008-02-01 Kenichi Handa -2005-12-08 Alan Mackenzie + * international/fontset.el ("fontset-default"): Add an entry for + `indian-is13194' charset. - * progmodes/cc-cmds.el: Fix some bugs in subfunctions of - c-beginning-of-statement. New subfunctions - c-in-comment-line-prefix-p, c-narrow-to-comment-innards. + * international/mule-conf.el (indian-is13194): Delete :unify-map + property. Don't unify this charset. + (indian-2-column): Delete :superset property, add :code-offset property. -2005-12-08 Martin Stjernholm + * language/devan-util.el: Delete the superfluous autoload cookie + near the head of the file. + (devanagari-compose-region): Add autoload cookie. - * progmodes/cc-fonts.el, cc-langs.el: Use `c-simple-ws' instead of - hardcoded char classes whereever possible. Changed a couple of - places to use skip by syntax instead of skip by char class. + * language/ind-util.el (indian-2-column-to-ucs-region): + Add autoload cookie. - * progmodes/cc-langs.el (c-unterminated-block-comment-regexp): - Fix a bug in the regexp that caused extreme backtracking. +2008-02-01 Kenichi Handa - * progmodes/cc-langs.el (c-block-comment-starter) - (c-block-comment-ender): New language constants to specify in a - single place how block comments look. + * international/fontset.el ("fontset-default"): Add an entry for + `devanagari' script and `malayalam-glyph' charset. + (face-resizing-fonts): Register CDAC fonts. - (c-comment-start-regexp, c-block-comment-start-regexp) - (comment-start, comment-end, comment-start-skip) - (c-syntactic-ws-start, c-syntactic-ws-end, c-nonwhite-syntactic-ws) - (c-syntactic-ws, c-nonempty-syntactic-ws) - (c-single-line-syntactic-ws, c-syntactic-eol): Now built from - `c-line-comment-starter', `c-block-comment-starter' and - `c-block-comment-ender'. + * international/mule-conf.el (malayalam-glyph): New charset. - (c-block-comment-regexp, c-unterminated-block-comment-regexp): - New language constants to break up things a bit. +2008-02-01 Dave Love - (c-simple-ws): New language constant for simple whitespace. + * term/x-win.el: Fix typo in loop setting x-keysym-table. - * progmodes/cc-defs.el (c-concat-separated): New convenience function. +2008-02-01 Dave Love - * progmodes/cc-defs.el (c-make-keywords-re): Add kludge for bug - in `regexp-opt' in Emacs 20 and XEmacs when strings contain - newlines. Allow and ignore nil elements in the list. + * international/mule-conf.el (utf-8-emacs): Delete :mime-charset. -2005-12-08 Alan Mackenzie + * term/x-win.el: Remove some ancient compatibility code. Populate + x-keysym-table. - * progmodes/cc-cmds.el: Comment out a (n almost certainly - superfluous) check, (eq here (point-max)) in c-beginning-of-statement. + * international/mule-cmds.el (wid-edit): Require when compiling. + (set-locale-environment): Check locale against coding system + aliases too. - * progmodes/cc-cmds.el: Tidy up the comments in - c-beginning-of-statement and subfunctions. +2008-02-01 Kenichi Handa - * progmodes/cc-awk.el: Replace calls to put-text-property to the - more flexible c-put-char-property and c-clear-char-properties. - Add the author's email address. + * language/indian.el (in-is13194-devanagari): + Fix :post-read-conversion and :pre-write-conversion. - * progmodes/cc-langs.el (c-block-comment-start-regexp): New variable. +2008-02-01 Dave Love - * progmodes/cc-cmds.el: Fix bug with M-e, when point is inside the - closing "*/" of a block comment. + * international/mule-cmds.el (charset): Supply doc, :tag. - * progmodes/cc-cmds.el: Tidy c-beginning-of-sentence (and - subfunctions) so that it works at BOB and EOB. +2008-02-01 Kenichi Handa - * progmodes/cc-cmds.el, cc-vars.el: More updating of - c-beginning-of-statement, including new variable - c-block-comment-start-regexp. + * emacs-lisp/bytecomp.el (byte-compile-lapcode): Be sure to + return a unibyte string. -2005-12-08 Martin Stjernholm +2008-02-01 Kenichi Handa - * progmodes/cc-langs.el (c-known-type-key): Optimize simple - symbols from `*-font-lock-extra-types' so that there's no need to - use `regexp-opt' on those lists. + * international/mule-cmds.el (set-locale-environment): + Delete superfluous ')'s at the tail. - * progmodes/cc-langs.el (c-type-decl-suffix-key): Fix when - `c-type-modifier-kwds' is empty. +2008-02-01 Kenichi Handa - * progmodes/cc-fonts.el (c-font-lock-invalid-string): Fix when - there are several strings on the same line. + * international/mule.el (define-coding-system): Fix typo; + "docode" -> "decode". - * progmodes/cc-engine.el (c-literal-limits): Remove the - compatibility function for older emacsen. `c-literal-limits-fast' - has now taken the place of this function. +2008-02-01 Dave Love - * progmodes/cc-vars.el (c-emacs-features): Remove compatibility - with older emacsen: We now require `pps-extended-state'. + * emacs-lisp/byte-opt.el (side-effect-free-fns): + Add string-make-unibyte string-make-multibyte string-to-multibyte + string-as-multibyte string-as-unibyte. -2005-12-08 Alan Mackenzie +2008-02-01 Dave Love - * progmodes/cc-cmds.el: New function c-beginning-of-sentence, - which obviates the need to hack sentence-end. This now handles - escaped newlines in strings correctly. Correct minor bugs in - c-move-over-sentence and in c-beginning-of-statement. + * language/english.el (ibm1047, cp1047): New. - * progmodes/cc-cmds.el (c-beginning-of-statement (and - subfunctions)): Adapt c-\(back\|forward\)-over-illiterals such - that movement over macros and code are rigorously separated from - eachother. Correct a few incidental bugs. + * international/mule-conf.el (alternativnyj): Use new table. + (cp866): Define standalone, not as alias. + (ibm866): Change alias. + (ibm1047): New. - * progmodes/cc-cmds.el: Restructure c-beginning-of-statement: - Improve its doc-string. Improve the handling of certain specific cases. + * language/cyrillic.el (cyrillic-alternativnyj): + Remove mime-charset. Use alternativnj charset. + (cp866): Remove alias. Define standalone. -2005-12-08 Martin Stjernholm +2008-02-01 Dave Love - * progmodes/cc-engine.el, cc-fonts.el, cc-langs.el - (c-guess-basic-syntax): Change the way class-level labels are - recognized; they can now contain essentially any symbols. + * language/european.el ("Latin-2", "Latin-5"): Doc fix. - (c-opt-extra-label-key): New language variable to cope with the - special protection label syntax in Objective-C. + * language/cyrillic.el ("Bulgarian"): Fix input method and charset. + ("Tajik", "Belarusian"): Fix charset. - (c-opt-access-key): Remove; this is now handled better by - `c-nonlabel-token-key' and `c-opt-extra-label-key'. + * international/mule-cmds.el (describe-language-environment): + Be case-insensitive when looking for input methods. + (locale-name-match): Doc fix. + (locale-charset-match-p): New. + (set-locale-environment): Warn if coding system doesn't agree + with system locale. - (c-complex-decl-matchers): Update to handle that - `c-opt-access-key' no longer exists. +2008-02-01 Kenichi Handa - * progmodes/cc-engine.el (c-guess-basic-syntax): Make use of the - improved label recognition in `c-beginning-of-statement-1'. + * international/mule-cmds.el (select-safe-coding-system): If + :mime-charset property of a coding system is not equal to that + coding system, don't show that :mime-charset name. - * progmodes/cc-engine.el (c-beginning-of-member-init-list): - Recognize bitfields better. +2008-02-01 Dave Love - * progmodes/cc-engine.el (c-beginning-of-inheritance-list): - Remove some cruft and fixed a bug that could cause it to go to a - position further down. + * international/quail.el (quail-help): Fix underlining. - * progmodes/cc-langs.el, cc-engine.el - (c-beginning-of-statement-1): Improve detection of labels in - declaration contexts. + * language/chinese.el (chinese-gb18030, gb18030) + ("Chinese-GB18030"): New. - (c-beginning-of-decl-1): Use it. + * international/mule-cmds.el (locale-language-names): Add GB18030. - (c-nonlabel-token-key): New language constant and variable needed - by `c-beginning-of-statement-1'. + * international/swedish.el: Don't require latin-1. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug that - manifested itself due to the correction in `c-forward-sexp'. +2008-02-01 Dave Love - * progmodes/cc-defs.el (c-forward-sexp, c-backward-sexp): - Make these behave as documented when used at the buffer limits. + * language/czech.el ("Czech"): + * language/slovak.el ("Slovak"): + * language/romanian.el ("Romanian"): Remove unibyte-syntax property. - * progmodes/cc-mode.el, cc-engine.el, cc-langs.el - (c-type-decl-end-used): Made this a language variable. + * language/greek.el ("Greek"): Remove unibyte-syntax property. + (cp737): New coding system. - * progmodes/cc-mode.el (c-after-change): Widen the buffer to work - correctly when `combine-after-change-calls' is used together with - temporary narrowings. + * language/european.el: Remove unibyte-syntax properties. + Augment some coding-system properties. - * progmodes/cc-engine.el (c-beginning-of-statement-1): - Report labels correctly when the start point is immediately after the - colon. + * international/mule-cmds.el (set-language-environment): + Check for charset property of environment. + (language-info-alist): Doc fix. - * progmodes/cc-defs.el (c-parse-sexp-lookup-properties): - Remove since it isn't used anymore. + * Makefile.in (DONTCOMPILE): Remove latin-N.el. - * progmodes/cc-cmds.el (c-electric-lt-gt): Detect and mark angle - bracket arglists such as template parens in C++. + * international/characters.el: Add Latin-1. - * progmodes/cc-engine.el (c-syntactic-skip-backward): Fix a bug - in the last check-in. Some optimization. + * international/latin-1.el, international/latin-2.el, + * international/latin-3.el, international/latin-4.el, + * international/latin-5.el, international/latin-8.el, + * international/latin-9.el: Delete. - * progmodes/cc-engine.el (c-syntactic-skip-backward): Fix bug - where it could stop at the same level in a preceding sexp when - PAREN-LEVEL is set. + * loadup.el: Remove international/latin-N.el. - * progmodes/cc-mode.el (c-basic-common-init): Turn on syntax-table - text property lookup only when it's needed. + * case-table.el (set-case-syntax-charset, set-case-syntax-1) + (set-case-syntax-delims, set-case-syntax-pair, set-case-syntax): + Undo last changes. - * progmodes/cc-langs.el, cc-engine.el, cc-fonts.el, cc-mode.el: - Change the policy for paren marked angle brackets to be more - persistent; once marked they remain marked even when they're found - to be unbalanced in the searched region. This should keep the - paren syntax around even when individual lines are refontified in - multiline template arglists. + * international/mule-diag.el (unicode-data): Check that + `unicodedata-file' exists. - (c-parse-and-markup-<>-arglists): New dynamically bound variable - to control markup so that incorrect angle bracket arglists aren't - marked in contexts where the correct value for - `c-disallow-comma-in-<>-arglists' isn't known. +2008-02-01 Kenichi Handa - (c-forward-<>-arglist, c-forward-<>-arglist-recur): The reparse - argument has become `c-parse-and-markup-<>-arglists'. + * international/fontset.el (charset-script-alist): Fix script names. - (c-remove-<>-arglist-properties): Remove - no longer used. +2008-02-01 Kenichi Handa - (c-after-change-check-<>-operators): New function used on - `after-change-functions' to avoid that "<" and ">" characters that - are part of longer operators have paren syntax. + * international/latin-1.el: Bind set-case-syntax-charset to + iso-8859-1. Never provide latin-1. - (c-<>-multichar-token-regexp): New language variable used by - `c-after-change-check-<>-operators'. + * international/latin-2.el: Bind set-case-syntax-charset to + iso-8859-2. Never provide latin-2. - (c-after-change): Call `c-after-change-check-<>-operators'. + * international/latin-3.el: Bind set-case-syntax-charset to + iso-8859-3. Never provide latin-3. - (c-font-lock-<>-arglists): Use the context properties set by - `c-font-lock-declarations' to set `c-disallow-comma-in-<>-arglists' - correctly to avoid doing invalid markup. + * international/latin-4.el: Bind set-case-syntax-charset to + iso-8859-4. Never provide latin-4. - (c-font-lock-declarations): Remove code that undoes the invalid - markup done by `c-font-lock-<>-arglists'. + * international/latin-5.el: Bind set-case-syntax-charset to + iso-8859-9. Never provide latin-5. - (c-complex-decl-matchers): `c-font-lock-<>-arglists' now runs - after `c-font-lock-declarations'. + * international/latin-8.el: Bind set-case-syntax-charset to + iso-8859-14. Never provide latin-8. - * progmodes/cc-engine.el (c-syntactic-skip-backward): - Add paren-level feature. + * international/latin-9.el: Bind set-case-syntax-charset to + iso-8859-15. Never provide latin-9. - (c-guess-basic-syntax): Improve the anchor position for - `template-args-cont' in nested template arglists. There's still - much to be desired in this area, though. + * case-table.el (set-case-syntax-set-multibyte): Delete variable. + (set-case-syntax-charset): New variable. + (set-case-syntax-1): New function. + (set-case-syntax-delims, set-case-syntax-pair, set-case-syntax): + Call set-case-syntax-1 on arguments. -2005-12-08 Alan Mackenzie + * international/mule-cmds.el (set-language-environment): Delete + unnecessary setup of syntax/case for unibyte case. - * progmodes/cc-cmds.el, cc-engine.el, cc-langs.el, cc-vars.el: - Make the "Text Filling and Line Breaking" commands work for AWK buffers. +2008-02-01 Kenichi Handa -2005-12-08 Martin Stjernholm + * international/fontset.el (generate-fontset-menu): Exclude the + default fontset. - * progmodes/cc-defs.el, cc-engine.el (c-mode-is-new-awk-p): - Removed; (c-major-mode-is 'awk-mode) can be used instead now. + * faces.el (describe-face): Describe :fontset property too. - * progmodes/cc-mode.el: Always set up AWK mode since emacsen where - it doesn't work no longer are supported. +2008-02-01 Dave Love - * progmodes/cc-mode.el, cc-styles.el, cc-vars.el, cc-defs.el - * cc-engine.el, cc-fonts.el, cc-langs.el, cc-cmds.el: CC Mode now - requires support for the syntax-table' text property, which rules - out Emacs 19 and XEmacs < 21.4. Removed various compatibility - cruft associated with those versions. + * international/characters.el: Don't set char width of CJK + charsets generally. Add some non-word syntax cases. + (korean-ksc5601): Fix ranges with symbol syntax. - * progmodes/cc-defs.el, cc-fix.el: CC Mode now requires support - for the `syntax-table' text property, which rules out Emacs 19 and - XEmacs < 21.4. Removed various compatibility cruft associated - with those versions. +2008-02-01 Dave Love - * progmodes/cc-vars.el (c-emacs-features): CC Mode now requires - support for the `syntax-table' text property. + * Makefile.in (DONTCOMPILE): Add indian.el. - * progmodes/cc-fonts.el (c-nonbreakable-space-face): Remove the - variable and use an extra quoted face name instead. All the - emacsen flavors handle that correctly. + * language/ind-util.el: + (ucs-bengali-to-is13194-alist, ucs-assamese-to-is13194-alist) + (ucs-gurmukhi-to-is13194-alist, ucs-gujarati-to-is13194-alist) + (ucs-oriya-to-is13194-alist, ucs-tamil-to-is13194-alist) + (ucs-telugu-to-is13194-alist, ucs-malayalam-to-is13194-alist): + Remove declarations and let-bind them in re-written top-level loop + over scripts, including ucs-devanagari-to-is13194-alist. - * progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare) - (c-font-lock-declarators, c-font-lock-declarations) - (c-complex-decl-matchers, c-basic-matchers-after): Use a text - property to mark the items in in declarator lists to handle - refontification inside multiline declarations better. +2008-02-01 Dave Love - * progmodes/cc-fonts.el (c-font-lock-declarations): Recognize a - construct like "a * b = c;" as a declaration. + * international/mule-cmds.el (charset): Move. + (language-info-custom-alist): Move. Alter :set. + (find-coding-systems-for-charsets): Check charset type before + getting :charset-list. -2005-12-08 Kim F. Storm + * language/ind-util.el (iscii-to-ucs-region): Fix typo. - * emulation/cua-base.el (cua-use-hyper-key): Replace by ... - (cua-rectangle-modifier-key): ... this. New defcustom. Can now - select either meta, hyper, or super modifier for rectangle commands. - (cua--rectangle-modifier-key): New defvar. - (cua--M/H-key): Use it. Remove special case for `space'. - (cua--init-keymaps): Initialize it from cua-rectangle-modifier-key - on X, to meta otherwise. Always bind C-return to toggle - rectangle. Pass ?\s instead of `space' to cua--M/H-key. +2008-02-01 Dave Love - * emulation/cua-rect.el (cua-help-for-rectangle): - Use cua--rectangle-modifier-key. Handle super modifier too. - (cua--init-rectangles): Always bind C-return to toggle rectangle. - Pass ?\s instead of `space' to cua--M/H-key and cua--rect-M/H-key. + * wid-edit.el (widget-string-complete): New. + (widget-coding-system-prompt-value-history): Delete. + (coding-system): Use coding-system-value-history. - * ido.el: Move Acknowledgements and History after Commentary. - Minor changes to Commentary. - - * emulation/cua-base.el (cua--select-keymaps): Enable repeat - keymap if cua--prefix-override-timer is `shift'. - (cua--shift-control-prefix): New function; emulate "type prefix - key twice" functionality to handle shifted prefix key override. - (cua--shift-control-c-prefix, cua--shift-control-x-prefix): - New commands. - (cua--init-keymaps): Bind them to S-C-c and S-C-x. - -2005-12-08 Carsten Dominik - - * textmodes/org.el (org-insert-heading): Try to do items before - headings. - (org-agenda-mode): Quote `org-agenda-mode-hook'. - (org-insert-item): New function. - (org-renumber-ordered-list): Don't skip to higher level lists. - -2005-12-08 Juri Linkov - - * info.el (Info-mode-map): Bind M-TAB to `Info-prev-reference'. - - * button.el (button-buffer-map): Bind M-TAB to `backward-button'. + * international/mule-cmds.el (charset): New widget. + (language-info-custom-alist): Use it. + (default-input-method): Modify :type. - * wid-edit.el (widget-keymap): Bind M-TAB to `widget-backward'. +2008-02-01 Dave Love - * pcvs.el (defun-cvs-mode): Put `definition-name' property on - the constructed function name fun-1. + * language/ind-util.el (ucs-devanagari-to-is13194-alist) + (indian-glyph-char, indian-char-glyph): Delete. + (is13194-default-repertory): Rename from is13194-default-repartory. + (iscii-to-ucs-region): Hoist evals from loop. - * cus-edit.el (custom-add-parent-links): Filter out custom-group-link, - because such links don't lead to parent documentation. - -2005-12-08 Kenichi Handa - - * descr-text.el (describe-char): Use *Help-2* buffer if the - current buffer is *Help*. Call describe-text-properties while - setting the original buffer. - -2005-12-07 Bill Wohler - - * files.el (auto-mode-alist): Remove mh-letter-mode. Unnecessary, - and causes problems with non-MH users (such as Gnus users). - -2005-12-08 Nick Roberts - - * progmodes/gdb-ui.el (gdb-find-file-unhook): Delete variable. - (gdb-set-gud-minor-mode, gdb-set-gud-minor-mode): Delete functions. - (gdb-set-gud-minor-mode-existing-buffers, gdb-init-2): Use GDB - command "info sources". Move calls to GDB command "list". - (gdb-find-file-hook): Just use gdb-source-file-list. - (gdb-source-file-regexp): Use regexp for pre-GDB 6.4. - (gdb-source-file-regexp-1): New regexp for GDB 6.4+ only. - (gdb-set-gud-minor-mode-existing-buffers-1): Use it. - (gdb-data-list-register-values-handler): Use correct trigger name. - -2005-12-07 Kim F. Storm - - * ido.el (ido-completion-map): Rename from ido-mode-map. - (ido-common-completion-map, ido-file-completion-map) - (ido-file-dir-completion-map, ido-buffer-completion-map): - Rename from ido-mode-....-map. - (ido-init-completion-maps): Rename from ido-init-mode-maps. - (ido-setup-completion-map): Rename from ido-define-mode-map. - (ido-read-internal): Bind minibuffer-local-filename-completion-map - to ido-completion-map. - -2005-12-07 Kenichi Handa - - * international/mule-cmds.el - (set-display-table-and-terminal-coding-system): If the coding - system specified in `unibyte-display' property is different from - the arg coding-system, don't setup standard-display-table. - -2005-12-06 Stefan Monnier - - * emacs-lisp/edebug.el (edebug-skip-whitespace): read1:lread.c says - that comments end at \n, regardless of selective-display. - -2005-12-07 Nick Roberts - - * progmodes/gdb-ui.el (gdb-error-regexp, gdb-first-post-prompt) - (gdb-version): New variables. - (gdb-source-file-list, gdb-register-names) - (gdb-changed-registers): New variables for use with GDB 6.4+. - (gdb-ann3): Replace with... - (gdb-init-1, gdb-init-2): ...two new functions. - (gdba, gdb-prompt): Call gdb-init-1. - (gdb-get-version): New function. Call gdb-init-2 from here. - (gud-watch): Make it work with mouse events too. - (gdb-post-prompt): Don't add to queue until GDB version is known. - (gdb-speedbar-expand-node, gdb-post-prompt, gdb-registers-mode) - (gdb-locals-mode): Use gdb-version. - (gdb-memory-format-map, gdb-memory-unit-map) - (gdb-locals-watch-map): Rename from gdb-*-*-keymap. - (gdb-locals-font-lock-keywords-1) - (gdb-locals-font-lock-keywords-2): New variables. - (gdb-find-file-hook): Make it work with GDB 6.4+ too. - (gdb-set-gud-minor-mode-existing-buffers-1) - (gdb-var-list-children-1, gdb-var-list-children-handler-1) - (gdb-var-update-1, gdb-var-update-handler-1) - (gdb-data-list-register-values-handler) - (gdb-data-list-register-values-custom) - (gdb-get-changed-registers, gdb-get-changed-registers-handler) - (gdb-stack-list-locals-handler, gdb-get-register-names): - New functions for use with GDB 6.4+. - (gdb-locals-watch-map-1): New variable for use with GDB 6.4+. - (gdb-source-file-regexp, gdb-var-list-children-regexp-1) - (gdb-var-update-regexp-1, gdb-data-list-register-values-regexp) - (gdb-stack-list-locals-regexp) - (gdb-data-list-register-names-regexp): New regexps for use with - GDB 6.4+. - -2005-12-06 Stefan Monnier - - * progmodes/cc-defs.el (c-emacs-features): Don't assume point-min==1. - -2005-12-06 Nozomu Ando - - * mail/smtpmail.el (smtpmail-try-auth-methods): Make password - prompts work for AUTH PLAIN. Also reported by Steve Allan - . - -2005-12-06 K,Aa(Broly L$,1 q(Brentey - - * frame.el (set-frame-parameter): Add doc string. - -2005-12-06 Carsten Dominik - - * textmodes/org.el (org-occur-highlights): New variable. - (org-highlight-new-match, org-remove-occur-highlights): New functions. - (org-highlight-sparse-tree-matches): New option. - (org-do-occur): New function. - (org-get-heading): Make it work also at beginning of line. - (org-category-table): New variable. - (org-get-category-table, org-get-category) - (org-camel-to-words, org-link-search): New functions. - (org-select-this-todo-keyword): New variable. - (org-todo-list): New command. - (org-shiftright, org-shiftleft): New commands. - (org-agenda-todo): Add prefix argument. - (org-show-hierarchy-above): New option. - (org-show-todo-tree): Numerical prefix creates tree for specific - TODO keyword. - (org-outline-level): New function, to assign a level to plain - lists items. - (org-cycle-include-plain-lists): New option. - (org-mode): Use `org-outline-level' as value of `outline-level'. - (org-cycle): Temporarily switch `outline-regexp' if - `org-cycle-include-plain-lists' is non-nil. - (org-start-icalendar-file): Fix format bug. - (org-agenda-get-day-entries): Create category table. - (org-agenda-get-todos, org-agenda-get-timestamps) - (org-agenda-get-deadlines, org-agenda-get-scheduled) - (org-agenda-get-blocks): Use `org-get-category'. - (org-context-in-file-links): Rename from - `org-line-numbers-in-file-links'. - -2005-12-06 Romain Francoise - - * window.el (balance-windows): Delete extraneous third arg in call - to `enlarge-window'. - -2005-12-06 Kenichi Handa - - * international/kinsoku.el (kinsoku-longer): Check eolp, not eobp. - -2005-12-06 Nick Roberts - - * progmodes/gdb-ui.el (gdb-var-create-handler) - (gdb-var-evaluate-expression-handler, gdb-frame-handler) - (gdb-var-list-children-handler, gdb-var-update-handler): - Current buffer is already gdb-partial-output-buffer, don't - make it current again. - -2005-12-05 Luc Teirlinck - - * buff-menu.el (Buffer-menu-use-frame-buffer-list): New user option. - (list-buffers-noselect): Use it. - -2005-12-05 Stefan Monnier - - * mail/sendmail.el: Remove unnecessary leading-star in docstrings. - (mail-yank-ignored-headers): Use regexp-opt. - (mail-mode-map): Move initialization into declaration. - (mail-sent-via): Remove unused shadowed var `to-line'. - (mail-mailer-swallows-blank-line): Use with-temp-buffer. - (mail-bury, sendmail-send-it, mail-do-fcc): Use with-current-buffer. - (mail-do-fcc): Use dolist and push. - (mail-mode-fill-paragraph): Pass the arg to fill-region-as-paragraph. - (mail-yank-ignored-headers): Don't autoload. - -2005-12-05 Kenichi Handa - - * international/mule-cmds.el (set-language-info-internal): New fun. - (set-language-info): Call set-language-info-internal to update - language-info-alist. If LANG-ENV is the current one, call - set-language-environment to make INFO effective now. - (set-language-info-alist): Likewise. - (locale-language-names): With locale "en", use English - lang. env. but set the default codings to iso-8859-1. - -2005-12-04 Nick Roberts - - * progmodes/gdb-ui.el (gdb-use-inferior-io-buffer) - (gdb-speedbar-auto-raise): Echo new state in minibuffer. - (gdb-var-create-handler, gdb-assembler-custom): Use search-forward - for plain strings. - (gdb-frames-mode): Remove redundant call to font-lock-mode. - (gdb-all-registers): Rename from toggle-gdb-all-registers. - Create registers buffer if necessary. Echo new state in minibuffer. - (gdb-registers-mode-map, gdb-registers-mode): Use gdb-all-registers. + * language/devan-util.el (dev-charseq): Avoid indian-glyph-char. -2005-12-03 Chong Yidong + * language/indian.el (indian-script-table) + (ccl-encode-indian-glyph-font): Delete. - * info.el (Info-fontify-node): Match external links using - non-directory part of filename. - -2005-12-04 Juri Linkov - - * font-core.el (global-font-lock-mode): Use define-global-minor-mode - instead of easy-mmode-define-global-mode. Add `:group font-lock'. - (font-lock-mode): Replace `:group font-lock' with `nil nil nil' - because there is no customization option for it. - - * font-lock.el (lisp-font-lock-keywords-1): - Add define-global-minor-mode. - - * emacs-lisp/autoload.el (make-autoload): Add define-global-minor-mode. - - * emacs-lisp/derived.el (define-derived-mode): Put `definition-name' - properties on the constructed variable names. + * international/mule-cmds.el (language-info-custom-alist): New. + (input-method-activate-hook, input-method-inactivate-hook) + (input-method-after-insert-chunk-hook) + (input-method-use-echo-area, set-language-environment-hook) + (exit-language-environment-hook): Customize. + (find-coding-systems-for-charsets): Rewrite. + (default-input-method): Add :link. - * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): - Put `definition-name' properties on the constructed function names - next-sym and prev-sym. +2008-02-01 Dave Love - * emacs-lisp/find-func.el (find-function-regexp): - Add define-global-minor-mode. Replace `easy-mmode-define-global-mode' - with `easy-mmode-define-[a-z-]+'. Add easy-menu-define. - (find-variable-regexp): Add easy-mmode-defmap, easy-mmode-defsyntax - and easy-menu-define. + * international/mule-conf.el (eight-bit): Add :docstring, + :short-name properties. + (cp851): Doc fix. + (unicode-bmp): New. - * emacs-lisp/lisp-mode.el: Put `doc-string-elt' property on - easy-mmode-define-global-mode and define-global-minor-mode. - (lisp-imenu-generic-expression): Add define-global-minor-mode. + * case-table.el (set-case-syntax-pair): Remove check on byte lengths. - * progmodes/cwarn.el (global-cwarn-mode): Use define-global-minor-mode - instead of easy-mmode-define-global-mode. + * language/european.el (cp858): New. + ("Turkish"): Add special case rules. - * progmodes/idlw-shell.el (idlwave-shell-electric-debug-mode): - Use define-minor-mode instead of easy-mmode-define-minor-mode. +2008-02-01 Dave Love - * cus-edit.el (customize-group, customize-group-other-window): - Filter out autoloaded options from the group completion list by - using heuristics that autoloaded groups don't have `custom-autoload' - property on their symbols (they have only `custom-loads'). + * international/characters.el: Make Ÿ and ÿ a case pair. - * simple.el (completion-setup-function): Put completions-common-part - face on complete completion string too (i.e. completion string - without completions-first-difference face). +2008-02-01 Kenichi Handa - * man.el (Man-section-regexp): Add 0-9 to support "3X11" sections. + * international/mule-conf.el: Don't define the charset iso-8859-1 + here, just setup its properties. -2005-12-03 Eli Zaretskii +2008-02-01 Kenichi Handa - * view.el (view-mode): Doc fix. + * international/mule-conf.el (utf-8): Give :mime-charset property. - * disp-table.el (standard-display-european): Add to the warning - message a reference to the doc string. +2008-02-01 Kenichi Handa - * play/yow.el (apropos-zippy): Call print-help-return-message, - similar to other Help and Apropos commands. + * international/characters.el: Remove duplicated case setting for + Cyrillic and Greek letters. Don't setup printable-chars here. - * help.el (print-help-return-message): If pop-up-frames is - non-nil, set up help-return-method to delete the help window and, - possibly, its frame as well, and don't display message about - scrolling the help window. Doc fix. - (help-return-method): Doc fix. + * case-table.el (describe-buffer-case-table): Handle the case + that KEY is a cons within map-char-table. -2005-12-03 Martin Rudalics +2008-02-01 Kenichi Handa - * emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Fix bug - whereby names of length one or names starting with a - symbol-constituent character would not be returned. + * international/characters.el: Fix categories ?A and ?C. + Treat ASCII characters as `latin' script. -2005-12-03 Johan Bockg,Ae(Brd +2008-02-01 Kenichi Handa - * subr.el (atomic-change-group): Add edebug and indentation spec. + * international/fontset.el (fontset-plain-name): If the fontset + name doesn't ends with "-fontset-*", use family name as the first + part of the plain name. + (create-fontset-from-ascii-font): If "fontset-startup" is not yet + created, use that name for the fontset. Fix arguments to + subst-char-in-string. -2005-12-02 Stefan Monnier +2008-02-01 Dave Love - * completion.el (save-completions-file-name): Fix typo in last change. + * term.el (term-char-mode): Remove generic-character-list code. -2005-12-02 Jan Dj,Ad(Brv + * ruler-mode.el (ruler-mode-character-validate): Use characterp. - * info.el: Move back/forward history to the beginning of the tool bar. + * wid-edit.el (character): Use characterp. -2005-12-02 Ken Manheimer + * international/mule-diag.el (describe-coding-system): Add utf-16 case. - * allout.el (eval-when-compile): Remove unnecessary load of cl. - Add fset of allout-real-isearch-abort during compile to fix - byte-compilation warnings. - (allout-mode-p): Move definition of this macro above all uses, or - byte compilation in barren Emacs (eg, during Emacs build) will - lack the definition. - (allout-mode): Move this variable above any uses, or byte - compilation will fail. - (allout-resolve-xref): Remove use of personal file-reference function. - (allout-toggle-current-subtree-encryption): Do the current (ie, - visible containing) topic, rather than nearest around point. Doc fix. - (allout-toggle-subtree-encryption): New function, workhorse that - works on nearest topic containing point. - (allout-encrypt-string): Signal requirement for newer version of pgg. - (allout-resumptions): Doc fix. + * language/viet-util.el (viet-encode-viscii-char): Use encode-char. -2005-12-02 Eli Zaretskii + * language/cyrillic.el ("Tajik", "Bulgarian", "Belarusian"): + Add charset. + ("Ukrainian"): New. - * international/latexenc.el (latex-inputenc-coding-alist): Doc fix. + * language/georgian.el (georgian-ps): New coding system. -2005-12-02 Agustin Martin +2008-02-01 Kenichi Handa - * textmodes/flyspell.el (flyspell-external-point-words): - Consider a misspelling as found in the string search if: (a) misspelling - and found string lengths match, or (b) misspelling is found as - element in a boundary-chars separated longer string, or (c) - ispell-program-name is really ispell and misspelling is found as - part of a TeX string. After successful match move beginning of - search region to end of match. Warn about not found misspellings - once the process is done. - (flyspell-large-region): Do not set ispell-parser to tex if in TeX mode. + * international/mule-cmds.el (reset-language-environment): + Don't set nonascii-translation-table and nonascii-insert-offset. + Call set-unibyte-charset, not set-primary-charset. + (nonascii-translation-table, nonascii-insert-offset): + Declare these variable as obsolete ones. + (set-language-environment): Call set-unibyte-charset, not + set-primary-charset. Call set-charset-priority with `charset' + info of the language environment. -2005-12-02 Nick Roberts +2008-02-01 Kenichi Handa - * progmodes/gud.el (gud-menu-map): Put gud-finish back on the - tool bar (removed inadvertently). + * international/characters.el (next-word-boundary-han): + Don't treat katakana following han characters as a part of a word. -2005-12-02 Juri Linkov +2008-02-01 Kenichi Handa - * log-view.el (log-view-diff): Clarify doc string. + * international/characters.el: Call map-charset-chars on big5 (not + chinese-big5-1/2) to set categories `c', `C', and `|'. + (next-word-boundary-han, next-word-boundary-kana): New function. + Register it in next-word-boundary-function-table. -2005-12-01 Bill Wohler +2008-02-01 Kenichi Handa - * Makefile.in (mh-loaddefs.el): Reinsert Change Log as its absence - triggers lm-verify errors. + * arc-mode.el (archive-file-name-coding-system): New variable. + Make it permanent-local. + (byte-after, bref, insert-unibyte): New function. Change most of + char-after, aref, insert to them respectively. + (archive-mode): Set archive-file-name-coding-system. + (archive-summarize): Don't change the buffer's multibyteness. + (archive-extract): Inherit archive-file-name-coding-system from + archive-superior-buffer. Bind coding-system-for-write to + archive-file-name-coding-system. + (archive-*-write-file-member): Encode ENAME by + archive-file-name-coding-system. Bind coding-system-for-write to + no-conversion. + (archive-rename-entry): Encode the filename by + archive-file-name-coding-system. + (archive-mode-revert): Don't change the buffer's multibyteness. + (archive-arc-summarize, archive-lzh-summarize) + (archive-zoo-summarize): Don't change the buffer's multibyteness. + Decode filenames by archive-file-name-coding-system. + (archive-arc-rename-entry, archive-zip-chmod-entry): Don't change + the buffer's multibyteness. + + * tar-mode.el (tar-file-name-coding-system): New variable. + Make it permanent-local. + (tar-header-block-tokenize): Decode filename and linkname by + tar-file-name-coding-system. + (tar-header-block-checksum): Call multibyte-char-to-unibyte to get + the byte value of eight-bit chars. + (tar-summarize-buffer): Call set-buffer-multibyte with METHOD + `to'. Delete unnecessary call of position-bytes. + (tar-mode): Set tar-file-name-coding-system. Delete unnecessary + call of position-bytes. + (tar-extract): Simplify by calling decode-coding-region with + DESTINATION argument. Don't toggle multibyteness of tar buffer. + (tar-copy, tar-expunge): Don't toggle multibyteness of tar buffer. + (tar-clear-modification-flags): Delete unnecessary call of + position-bytes. + (tar-rename-entry): Call tar-alter-one-field with encoded new name. + (tar-alter-one-field): Don't toggle multibyteness of tar buffer. + Convert new-data-string by string-to-multibyte before inserting it. + (tar-subfile-save-buffer): Don't toggle multibyteness of tar + buffer. Simplify by calling encoding-coding-region with + DESTINATION argument. + (tar-mode-write-file): Delete unnecessary call of byte-to-position. + +2008-02-01 Dave Love + + * international/titdic-cnv.el (quail-cxterm-package-ext-info): Doc fix. + + * emacs-lisp/copyright.el (copyright-regexp): Remove redundancy. + +2008-02-01 Kenichi Handa + + * international/characters.el: Setup char-script-table. + + * international/fontset.el: Setup the default fontset by the new + script-based way. + (x-complement-fontset-spec): Change the format of arg FONTLIST to + an alist of charsets vs font name lists. + (charset-script-alist): New variable. + (create-fontset-from-fontset-spec): Allow script name in + FONTSET-SPEC. If charset is specified in FONTSET-SPEC, change it + to the corresponding script name. + (create-fontset-from-ascii-font): Slight tuning. + + * international/mule-conf.el (devanagari-glyph): New charset. + Unify these charsets: korean-ksc5601, ipa, tibetan, ethiopic, + japanese-jisx0208, japanese-jisx0212, japanese-jisx0213-1, + japanese-jisx0213-2. + + * international/mule-diag.el (print-fontset): Use describe-vector + to handle a char table returned by fontset-info. + + * language/indian.el: Don't register ccl-encode-indian-glyph-font + and ccl-encode-unicode-font in font-ccl-encoder-alist. + +2008-02-01 Kenichi Handa -2005-12-01 Luc Teirlinck + * international/mule-util.el (detect-coding-with-priority): + Fix the place of using `,' marker in backquote form. - * simple.el (transient-mark-mode, line-number-mode) - (column-number-mode, size-indication-mode): Remove `:require nil'. +2008-02-01 Dave Love -2005-12-01 Nick Roberts + * international/mule-conf.el (mule-unicode-e000-ffff): Set :max-code. - * progmodes/gdb-ui.el (gdb-ann3): Bind mouse-2 to gdb-mouse-until - in the margin also. - (gdb-breakpoints-mode-map): Use D instead of d for - gdb-delete-breakpoint. - (gdb-get-frame-number): Require a number to match on. - (gdb-threads-mode-map): Add follow-link binding. + * international/mule-util.el (with-coding-priority): Fix. -2005-11-30 Jason Rumney + * international/mule.el (set-coding-priority): Fix obsolete spec. - * isearch.el (isearch-mode-map): Avoid exiting search on - language-change event. +2008-02-01 Dave Love -2005-11-30 Romain Francoise + * international/mule-cmds.el (leim-list-header): Add coding tag. - * speedbar.el (speedbar-default-position): New defcustom. - (speedbar-frame-reposition-smartly): Use it. +2008-02-01 Dave Love - * dframe.el (dframe-reposition-frame-emacs): Fix position - computation for `left' location. - Update copyright year. + * international/mule-cmds.el (find-coding-systems-region) + (language-info-alist, reset-language-environment, princ-list): Doc fix. + (input-method-verbose-flag): Fix :type. -2005-11-30 Stefan Monnier +2008-02-01 Dave Love - * help.el (help-map): Move initialization into declaration. + * international/mule.el (set-char-table-default): Make obsolete. - * emacs-lisp/autoload.el (make-autoload): Handle defgroup specially. +2008-02-01 Dave Love - * help-fns.el (help-argument-name): Don't autoload. - It's useless and triggers a bug in cus-dep.el causing ldefs-boot - to be re-loaded when customizing the `help' group. + * language/devanagari.el ("Devanagari"): Fix coding-system, + coding-priority. -2005-11-30 John Paul Wallington + * international/mule-diag.el (describe-char-after): Modify display + list processing. + (unicodedata-file, unicodedata-find): New. - * help-fns.el (describe-function-1): Fill arglist output. +2008-02-01 Dave Love -2005-11-30 Kim F. Storm + * emacs-lisp/bytecomp.el (batch-byte-compile-if-not-done): Add + autoload cookie. - * emulation/cua-rect.el (cua--rectangle-overlays): Make permanent-local. - (cua--rectangle-post-command): Cleanup overlays and deactivate mark - after revert-buffer (or anything else which kills all local variables). + * international/ja-dic-cnv.el (skkdic-convert): Add coding tag. - * apropos.el (apropos-parse-pattern): Doc fix. - Set apropos-regexp directly, rather than expecting callers to do so. - (apropos-command, apropos, apropos-value, apropos-documentation): - Simplify calls to apropos-parse-pattern. +2008-02-01 Dave Love -2005-11-29 Chong Yidong + * international/mule-util.el (detect-coding-with-priority): Rewrite. - * hi-lock.el (hi-lock-line-face-buffer, hi-lock-face-buffer) - (hi-lock-face-phrase-buffer): Use hi-yellow face. - (hi-lock-write-interactive-patterns): Use comment-region. +2008-02-01 Dave Love - * longlines.el (longlines-mode): Add mail-setup-hook. + * composite.el (compose-string): Doc fix. - * mail/mailheader.el, mail/sendmail.el: Revert 2005-11-17 changes. + * language/georgian.el ("Georgian"): Delete code-pages feature, + add nonascii-translation. - * simple.el (sendmail-user-agent-compose, next-line): - Conditionally use hard-newline. + * language/european.el ("German", "French", "Spanish"): + Add latin-9 as alternative coding system. + ("Slovenian", "Polish"): Add windows-1250 as alternative coding system. + ("Dutch"): Add latin-9 as alternative coding system. Add input method. + ("Turkish"): Add windows-1254 and latin-3 as alternative coding systems. + ("Lithuanian", "Latvian"): Add windows-1257 as alternative coding + system. -2005-11-29 Reiner Steib + * emacs-lisp/byte-opt.el (side-effect-free-fns): Add decode-char, + encode-coding-char. + (side-effect-and-error-free-fns): Add charsetp, max-char, + primary-charset. - * international/latexenc.el (latex-inputenc-coding-alist): - Reword doc string. + * simple.el: Don't require cl when compiling. -2005-11-29 Chong Yidong + * Makefile.in (DONTCOMPILE): Fix duplicates. - * help.el (describe-key-briefly, describe-key): Recognize default - bindings. + * emacs-lisp/bytecomp.el (byte-compile-insert-header): Fix typo. -2005-11-29 Romain Francoise + * international/mule.el: Doc fixes. + (load-with-code-conversion): Fix coding-system-type test. - * view.el (view-inhibit-help-message): New defcustom. - (view-mode-enter): Use it. + * international/mule-cmds.el (sort-coding-systems): Comment out + iso-2022 case. + (encoded-string-description): Fix coding-system-type test. -2005-11-29 Michael Kifer +2008-02-01 Dave Love - * ediff-wind.el (ediff-setup-control-frame, ediff-make-wide-display): - Preserve user position. + * international/characters.el: Make korean-ksc5601 double-width. -2005-11-28 Luc Teirlinck + * international/mule.el (auto-coding-regexp-alist): + Recognize Emacs 20/1 byte-compiled files. - * font-lock.el: Throw error if facemenu is not loaded to prevent - accidental change of loading order in loadup.el. (Suggested by RMS.) + * international/mule-conf.el (file-coding-system-alist): + Change .elc to utf-8-emacs. - * loadup.el: Add comment explaining why facemenu must be loaded - before font-lock. + * emacs-lisp/bytecomp.el (byte-compile-fix-header): Adjust for use + of utf-8-emacs. + (byte-compile-insert-header): Update magic number. Add ballast. + (map-char-table): Use byte-compile-funarg-2. -2005-11-28 Jay Belanger +2008-02-01 Dave Love - * calc/calc.el: Change global keybinding for calc-dispatch to "\C-x*". - (calc-dispatch-map): Add more keys for `calc-same-interface'. + * language/cyrillic.el ("Belarusian"): Doc fix. + (cp1125, koi8-t): Doc fix. - * calc/calc-misc.el (calc-dispatch-help): Update docstring. + * international/mule-cmds.el (find-multibyte-characters): Doc fix. + (find-multibyte-characters): Don't test for charset `unknown'. + (locale-language-names): Change or add: be, bs, cy, mk, ru.koi8, + ru, sr_YU, tg, wa, zh.gbk. + (locale-language-names): Change sp to Cyrillic. + (locale-charset-language-names): Match @euro after utf-8. - * calc/calc-embed.el (calc-do-embedded): Update help message. +2008-02-01 Dave Love - * calc/calc-prog.el (calc-user-define-invokation): Update help message. + * language/chinese.el (chinese-gbk, gbk, cp936, windows-936): + New coding systems. + ("Chinese-GBK"): New environment. -2005-11-28 Stefan Monnier + * language/thai-util.el: Remove redundant unicodes in category-setting. - * log-edit.el (log-edit-insert-cvs-rcstemplate): Ignore stderr. + * language/lao-util.el: Remove redundant unicodes in category-setting. - * emacs-lisp/elp.el (elp-not-profilable): Replace interactive-p with - called-interactively-p. - (elp-profilable-p): Rename from elp-not-profilable-p. - Invert result and take into account macros and autoloaded functions. - (elp-instrument-function): Update call. - (elp-instrument-package): Update call. Add completion. - (elp-pack-number): Use match-string. - (elp-results-jump-to-definition-by-mouse): Merge into - elp-results-jump-to-definition and then remove. - (elp-output-insert-symname): Make help echo text single-line. + * international/mule-conf.el (japanese-jisx0213-1) + (japanese-jisx0213-2): Add unify-map. - * replace.el (query-replace-map): Move initialization into declaration. - (occur-engine): Use with-current-buffer. - (occur-mode-goto-occurrence): Make it work for mouse-clicks as well. - (occur-mode-mouse-goto): Replace with an alias. +2008-02-01 Kenichi Handa -2005-11-28 Juri Linkov + * international/quail.el (quail-update-leim-list-file): + Force writing the file by iso-2022-7bit. - * simple.el (quoted-insert): Let-bind input-method-function to nil. + * international/titdic-cnv.el (miscdic-convert): Force writing the + file by iso-2022-7bit. - * term/w32-win.el: Bind [S-tab] to [backtab]. + * international/mule.el (define-charset): Change the attribute + :parents to :subset or :superset. - * info.el (Info-fontify-node): Set 2nd arg `noerror' of - `Info-find-file' to t. + * international/mule-conf.el: Adjust for the change of + define-charset (:parent -> :subset or :superset). - * replace.el (occur-mode-mouse-goto): Pop, don't switch. - (occur-mode-goto-occurrence): Let-bind same-window-buffer-names - and same-window-regexps. - (occur-next-error): Don't move point for arg 0. + * international/characters.el: Fix the last change. -2005-11-28 Chong Yidong +2008-02-01 Dave Love - * replace.el (occur-mode-goto-occurrence): Pop, don't switch. + * language/cyril-util.el (cyrillic-encode-koi8-r-char) + (cyrillic-encode-alternativnyj-char): Fix. + (standard-display-cyrillic-translit): Remove redundant unicodes. -2005-11-28 Stefan Monnier +2008-02-01 Dave Love - * log-edit.el (log-edit-changelog-use-first): New var. - (log-edit-changelog-ours-p): Use it. - (log-edit-insert-changelog): Set it with new arg `use-first'. - (log-edit-insert-cvs-rcstemplate, log-edit-insert-filenames): New funs. - (log-edit-hook): Add them to the list of suggested options. + * language/cyrillic.el ("Tajik", "Bulgarian", "Belarusian"): + New environments. - * textmodes/flyspell.el (flyspell-last-buffer): New var. - (flyspell-accept-buffer-local-defs): Use it to avoid doing silly - redundant work. - (flyspell-mode-on): Use add-hook for after-change-functions. - (flyspell-mode-off): Use remove-hook for after-change-functions. - (flyspell-changes): Make it buffer-local. - (flyspell-after-change-function): Make it non-interactive. Use push. - (flyspell-post-command-hook): Check input-pending-p while processing - the potentially long list of buffer changes. + * international/mule-conf.el (control-1): New charset. + (eight-bit-control, eight-bit-graphic): Redefine to use raw-bytes space. + (korean-ksc5601): Redefine to use code-offset and unify-map. -2005-11-28 K,Aa(Broly L$,1 q(Brentey +2008-02-01 Dave Love - * buff-menu.el (list-buffers-noselect): Display the selected - frame's buffer list, not the global one. + * international/mule-conf.el (tcvn-5712): New charset. -2005-11-28 Nick Roberts + * language/vietnamese.el (vietnamese-tcvn, tcvn): New coding system. + ("Vietnamese"): Doc fix. - * xt-mouse.el (xterm-mouse-event): Set last-input-event so - that (list last-input-event) works as in interactive spec. +2008-02-01 Dave Love -2005-11-27 Luc Teirlinck + * international/mule-conf.el (windows-936): New alias. - * loadup.el ("facemenu"): Load facemenu before font-lock, because - `facemenu-keymap' needs to be defined when font-lock is loaded. - Otherwise, `M-o M-o' is not bound to `font-lock-fontify-block'. + * cus-start.el: Add scalable-fonts-allowed. -2005-11-27 Stefan Monnier + * international/characters.el: Reinstate various CJK syntax and + category setup. Remove obsolete syntax setting in Greek section. + Optimize the char tables. - * completion.el: Remove useless leading * in defcustom docstrings. - (save-completions-file-name): Use ~/.emacs.d if available. - (completion-standard-syntax-table): Rename from - cmpl-standard-syntax-table and fold initialization into declaration, - thus removing cmpl-make-standard-completion-syntax-table. - (completion-lisp-syntax-table, completion-c-syntax-table) - (completion-fortran-syntax-table, completion-c-def-syntax-table): Idem. - (cmpl-saved-syntax, cmpl-saved-point): Remove. - (symbol-under-point, symbol-before-point) - (symbol-under-or-before-point, symbol-before-point-for-complete) - (add-completions-from-c-buffer): Use with-syntax-table. - (make-completion): Don't return a list of completion entries. - Update callers. - (cmpl-prefix-entry-head, cmpl-prefix-entry-tail): Use defalias. - (completion-initialize): Rename from initialize-completions. - (completion-find-file-hook): Rename from cmpl-find-file-hook. - (kill-emacs-save-completions): Collect stats here. - (save-completions-to-file, load-completions-from-file): - Use with-current-buffer. - (completion-def-wrapper): Rename from def-completion-wrapper. Make it - into a function. Move all calls to toplevel. - (completion-lisp-mode-hook): New fun. - (completion-c-mode-hook, completion-setup-fortran-mode): - Set the syntax-table here. Use local-set-key. - (completion-saved-bindings): New var. - (dynamic-completion-mode): Make it into a proper minor mode. - (load-completions-from-file): Remove unused var `num-uses'. + * language/thai.el ("Thai"): Add cp874, iso-8859-11 coding systems. - * emacs-lisp/cl-macs.el (defstruct): Don't define the default - constructor if it is explicitly overridden. + * language/vietnamese.el ("Vietnamese"): Add windows-1258 coding system. - * complete.el (PC-completion-as-file-name-predicate): - Use minibuffer-completing-file-name. - (partial-completion-mode): Use find-file-not-found-functions. - (PC-lisp-complete-symbol): Use with-syntax-table. - (PC-look-for-include-file): Remove dead setq. - (PC-look-for-include-file, PC-expand-many-files, PC-do-completion) - (PC-complete): Use with-current-buffer. + * language/greek.el ("Greek"): Add windows-1253, cp851, cp869 + coding systems. - * progmodes/sh-script.el (sh-font-lock-syntactic-keywords): \ doesn't - escape single quotes. + * language/romanian.el ("Romanian"): Add iso-latin-10 coding system. -2005-11-27 Luc Teirlinck +2008-02-01 Kenichi Handa - * dabbrev.el (dabbrev-completion): Simplify code, by getting rid - of `if' whose condition always returned nil. Doc fix. + * international/characters.el (printable-chars): Setup correctly. - * buff-menu.el (Buffer-menu-revert-function): Make the selected - window's buffer the current buffer around the call to - `list-buffers-noselect'. This is necessary to mark that buffer - with a `.' in the Buffer Menu when called from Lisp, for instance - by Auto Revert Mode. +2008-02-01 Dave Love -2005-11-28 Nick Roberts + * cus-start.el: Add selection-coding-system. - * progmodes/gdb-ui.el (gdb-stopped): Detect child process when - attaching to it. - (gdb-pre-prompt): Make sure gdb-error is reset. + * language/hebrew.el ("Hebrew"): Add windows-1255, cp862 coding systems. - * progmodes/gud.el (gud-gdb-marker-filter): When GDB is invoked - with a child process, detect it. - (gud-speedbar-buttons): Match regexp more carefully. + * language/china-util.el (post-read-decode-hz) + (pre-write-encode-hz): Move from chinese.el. + (big5-to-flat-code, flat-code-to-big5, euc-to-flat-code) + (flat-code-to-euc, expand-euc-big5-alist, big5-to-cns): Delete. -2005-11-27 Richard M. Stallman + * language/chinese.el (post-read-decode-hz) + (pre-write-encode-hz): Move to china-util.el. - * mouse.el (mouse-drag-move-window-bottom): - Use adjust-window-trailing-edge. + * case-table.el (set-case-syntax-pair): Test again for equal byte + lengths of the pair. -2005-11-27 Luc Teirlinck + * international/characters.el: Add Vietnamese category to + equivalent unicodes. - * simple.el (blink-matching-open): Ignore - `blink-matching-paren-on-screen' if `show-paren-mode' is enabled. - (blink-matching-paren-on-screen): Update docstring. +2008-02-01 Dave Love - * paren.el (show-paren-mode): No longer change - `blink-matching-paren-on-screen'. + * international/mule-conf.el (chinese-sisheng, ipa) + (indian-is13194, tibetan, ethiopic): Add :unify-map. -2005-11-27 John Paul Wallington + * international/mule-diag.el (describe-character-set): Account for + more than two dimensions of possibly different size. + (describe-current-coding-system): Add selection-coding-system. - * progmodes/gdb-ui.el (gdb-goto-breakpoint, gdb-frames-select) - (gdb-threads-select, gdb-edit-register-value): - Use `posn-set-point' instead of `mouse-set-point' because the - latter is not fbound when configured without X. + * international/mule-cmds.el (unify-8859-on-encoding-mode) + (unify-8859-on-decoding-mode): Move from mule.el. -2005-11-27 Kim F. Storm + * international/mule.el (unify-8859-on-encoding-mode) + (unify-8859-on-decoding-mode): Remove :init-value. + (charset-chars): Add optional dimension arg. + (unify-8859-on-encoding-mode, unify-8859-on-decoding-mode): + Move to mule-cmds.el. - * emulation/cua-rect.el (cua--highlight-rectangle): Preserve - existing face when partially highlighting a TAB in a rectangle. +2008-02-01 Kenichi Handa -2005-11-26 Kim F. Storm + * international/fontset.el: Change registry for japanese-jisx0208 + to "JISX0208*" in the default fontset. + (font-encoding-alist): Add an entry for "JISX0208.1983" and + "ISO10646.indian-1". - * ido.el (ido-mode-map): Doc fix. - (ido-mode-common-map, ido-mode-file-map) - (ido-mode-file-dir-map, ido-mode-buffer-map): New keymaps. - (ido-define-mode-map): Rewrite. Select one of the new maps as - parent for ido-mode-map instead of building from scratch. - (ido-init-mode-maps): New defun to initialize new maps. - (ido-mode): Call it. - (ido-switch-buffer): Doc fix -- use \. - (ido-find-file): Doc fix -- use \. +2008-02-01 Kenichi Handa -2005-11-26 John Paul Wallington + * language/japanese.el (japanese-iso-7bit-1978-irv): + Add `designation' to :flags, `ascii' to :charset-list. - * arc-mode.el (archive-extract): Use `posn-set-point' instead of - `mouse-set-point' because the latter is not fbound when configured - without X. + * international/mule.el (define-charset): New args :min-code and + :max-code. + (coding-system-iso-2022-flags): Add use-roman, use-oldjis. -2005-11-26 Thien-Thi Nguyen + * international/mule-conf.el (chinese-gbk): Change :code-offset to + #x160000. + (gb18030-2-byte, gb18030-4-byte-bmp, gb18030-4-byte-smp) + (gb18030-4-byte-ext-1, gb18030-4-byte-ext-2, gb18030): New charsets. - * files.el (file-relative-name): Doc fix. +2008-02-01 Dave Love -2005-11-26 Kurt Hornik + * language/thai.el (iso-8859-11): New coding system. - * progmodes/octave-inf.el (inferior-octave-startup): Force a - non-empty string for secondary prompt PS2. + * international/mule-conf.el: Doc fixes. + (iso-8859-11): New. -2005-11-25 Chong Yidong +2008-02-01 Dave Love - * progmodes/compile.el (compilation-setup): Fix last change. + * cus-start.el (scalable-fonts-allowed): Add. -2005-11-26 Nick Roberts +2008-02-01 Dave Love - * progmodes/gdb-ui.el (gdb-info-breakpoints-custom) - (gdb-mouse-toggle-breakpoint-margin) - (gdb-mouse-toggle-breakpoint-fringe, gdb-threads-select): - Add gdb-server-prefix to keep out of command history. - (gdb-edit-register-value): New function. - (gdb-registers-mode-map): Bind mouse-2 and RET to it. - (gdb-info-registers-custom): Use above map. + * international/mule.el (unify-8859-on-encoding-mode) + (unify-8859-on-decoding-mode): Dummy versions. -2005-11-25 Chong Yidong + * international/ucs-tables.el: Remove. - * custom.el (enable-theme): Signal error if argument is not a - theme. Don't recalculate a face if it's not loaded yet. + * Makefile.in (DONTCOMPILE): Add language/chinese.el, + language/japanese.el. - * cus-face.el (custom-theme-set-faces): Don't change saved-face if - the `user' theme is in effect. + * international/mule-conf.el: Doc fixes. + (cp936): New alias. + (cp720, cp858): New charsets. - * info.el (Info-on-current-buffer): Record actual filename in - Info-current-file, instead of t, or a fake filename if a non-file - buffer. Make autoload. - (Info-find-node, Info-revert-find-node): No need to check for - Info-current-file nil. - (Info-set-mode-line, Info-up, Info-copy-current-node-name): - Info-current-file is now never `t'. - (Info-fontify-node): Many simplifications due to Info-current-file - always being valid. Use Info-find-file to find node filename. + * mail/sendmail.el (mail-recover-1, mail-recover): Use utf-8-emacs + coding system, not emacs-mule. -2005-11-25 David Kastrup + * files.el (revert-buffer, recover-file): Likewise. - * longlines.el (longlines-wrap-line): Reorder wrapping to "insert - new character, then delete" in order to preserve markers. + * desktop.el (desktop-save): Likewise. -2005-11-25 David Ponce +2008-02-01 Dave Love - * recentf.el (recentf-arrange-by-rule): Handle a special - `auto-mode-alist'-like "strip suffix" rule. - (recentf-build-mode-rules): Handle second level auto-mode entries. + * international/mule.el (with-category-table): Use make-symbol. + (coding-system-list): Use coding-system-aliases. + (make-translation-table): Don't deal with generic characters. -2005-11-25 Michael Kifer + * international/mule-util.el (coding-system-post-read-conversion) + (coding-system-pre-write-conversion) + (coding-system-translation-table-for-decode) + (coding-system-translation-table-for-encode): Get the right properties. + (with-coding-priority): New macro. + (detect-coding-with-language-environment): Use it. + (coding-system-equal): Use coding-system-plist. - * emulation/viper-keym.el (viper-ESC-key): Use different values - in terminal and window modes. + * international/encoded-kb.el (encoded-kbd-setup-keymap) : + Use :valid property. - * emulation/viper.el (viper-emacs-state-mode-list): Delete mail-mode, - add jde-javadoc-checker-report-mode. + * international/mule-cmds.el (encode-coding-char): + Use find-coding-systems-string. Don't use make-char. + (describe-language-environment): Use coding-system-aliases. + (prefer-coding-system): Doc fix. - * ediff-wind.el (ediff-make-wide-display): Slight simplification. + * international/mule-diag.el (describe-current-coding-system): + Fix aliases listing. + (print-iso-2022-flags): Delete. + (print-designation): Partial re-write. + (describe-coding-system): Deal with iso-2022 designations, flags. + Fix shift_jis case. + (describe-char-after): Use characterp. Print explicit unicode. + Remove some obsolete code. + (print-coding-system-briefly): Fix printing aliases. + (print-coding-system): Use coding-system-aliases. + (mule-diag): Don't list coding categories. - * ediff.el (ediff-date): Change the date of last update. + * international/mule-conf.el: Doc fixes. Remove redundant :long-name properties. + Re-order charset priorities. + (binary): New alias. + (iso-8859-16): Fix nickname. + (define-iso-single-byte-charset): Un-define after use. -2005-11-24 Chong Yidong +2008-02-01 Dave Love - * hi-lock.el (hi-lock-buffer-mode): Renamed from `hi-lock-mode'. - Use define-minor-mode, and make it a local mode. Turn on font-lock. - (hi-lock-mode): New global minor mode. - (turn-on-hi-lock-if-enabled): New function. - (hi-lock-line-face-buffer, hi-lock-face-buffer, hi-lock-set-pattern): - Change arguments to regexp and face instead of a font-lock pattern. - Directly set face property, instead of refontifying. - (hi-lock-font-lock-hook): Check if font-lock is being turned on. - (hi-lock-find-patterns): Use line-number-at-pos. + * international/characters.el: Additional double width specifications. - (hi-lock-face-phrase-buffer): Call hi-lock-buffer-mode. Use new - arguments for hi-lock-set-pattern. - (hi-lock-unface-buffer, hi-lock-set-file-patterns): - Call font-lock-fontify-buffer. - (hi-lock-find-file-hook, hi-lock-current-line) - (hi-lock-refontify, hi-lock-set-patterns): Delete unused functions. + * international/mule-diag.el (print-coding-system): Incomplete updates. + (describe-character-set): List more properties. + (print-fontset): Fix case of vector font-spec. + (describe-current-coding-system): Fix iso-7, iso-7-else. - (hi-lock-font-lock-hook): Turn off hi-lock when font lock is - turned off. + * international/mule-conf.el (ibm866): Fix alias. + (iso-8859-16): Fix nickname. - * progmodes/compile.el (compilation-setup): Don't fiddle with - font-lock-defaults. +2008-02-01 Dave Love -2005-11-25 Nick Roberts + * language/ind-util.el: Avoid decode-char. + (indian--puthash-char, indian--puthash-c, indian--puthash-cv): + Use characterp, not char-valid-p. - * progmodes/gdb-ui.el (gdb-var-create-handler) - (gdb-var-list-children-handler): Find values for all variable - objects. gud-speedbar-buttons decides whether to display them. + * language/devan-util.el: Add coding tag, avoid decode-char. -2005-11-24 Romain Francoise + * international/titdic-cnv.el: Add coding tag. + (tit-process-header): Add coding tag to output. - * info.el (Info-speedbar-fetch-file-nodes): Prefix temporary - buffer name with a space. + * language/thai.el (cp874, ibm874): New coding systems. -2005-11-24 Carsten Dominik + * emacs-lisp/byte-opt.el : + Add character-p. - * textmodes/org.el (org-export-plain-list-max-depth): Rename from - `org-export-local-list-max-depth'. Change default value to 3. - (org-auto-renumber-ordered-lists) - (org-plain-list-ordered-item-terminator): New options. - (org-at-item-p, org-beginning-of-item, org-end-of-item) - (org-get-indentation, org-get-string-indentation) - (org-maybe-renumber-ordered-list, org-renumber-ordered-list): - New functions. - (org-move-item-down, org-move-item-up): New commands. - (org-export-as-html): New classes for CSS support. Bug fix in - regular expression detecting fixed-width regions. Respect - `org-local-list-ordered-item-terminator'. - (org-set-autofill-regexps, org-adaptive-fill-function): "1)" is - also a list item. - (org-metaup, org-metadown, org-shiftmetaup, org-shiftmetadown): - New item moving functions. + * language/european.el (cp852, ibm852, cp857, ibm857, cp860) + (ibm860, cp861, ibm861, cp863, cp865, ibm865, cp437, ibm437): + New coding systems. + : Avoid decode-char. -2005-11-24 Juri Linkov + * language/hebrew.el (cp862, ibm862): New coding systems. - * isearch.el (isearch-repeat): With empty search ring set - `isearch-error' to the error string instead of signaling error - with the function `error'. + * language/greek.el (cp851, ibm851, cp869, ibm869): New coding systems. -2005-11-24 YAMAMOTO Mitsuharu + * language/cyrillic.el (cp855, ibm855): New coding systems. - * term/mac-win.el: Make modifier `ctrl' an alias for `control'. + * international/mule-conf.el: Avoid decode-char in top-level code + for self-inserting multibyte chars. + (cp437, cp737, cp775, cp851, cp852, cp855, cp857, cp855, cp857) + (cp860, cp861, cp862, cp863, cp864, cp865, cp869, cp874): + New charsets. -2005-11-24 Nick Roberts + * international/characters.el: Various simplifications and additions. - * progmodes/gdb-ui.el (gdb-speedbar-auto-raise): New function - and variable. - (gdb-var-create-handler, gdb-var-list-children-handler): - Don't match on "char **...". - (gdb-var-update-handler): Find values for all variable objects. - (gdb-info-frames-custom): Identify frames by leading "#". +2008-02-01 Dave Love - * progmodes/gud.el (gud-speedbar-menu-items): Add - gdb-speedbar-auto-raise as radio button. - (gud-speedbar-buttons): Raise speedbar if requested. - Don't match on "char **...". - (gud-speedbar-buttons): Add (pointer) value for non-leaves. - Make it editable. + * international/mule-conf.el (code-pages): Provide, for compatibility. -2005-11-23 Chong Yidong + * international/code-pages.el: Remove. - * info.el (Info-fontify-node): Handle the case where - Info-current-file is t. +2008-02-01 Kenichi Handa -2005-11-23 Stefan Monnier + * Makefile.in: Cancel the 2008-02-01 change of mine. - * simple.el (blink-matching-open): Fix off-by-one in last change. + * international/fontset.el: Add setting for unicode font at the + end of the default fontset. -2005-11-23 YAMAMOTO Mitsuharu +2008-02-01 Dave Love - * term/mac-win.el: Don't change default directory. + * international/mule-conf.el (adobe-standard-encoding, symbol): + Adjust :code-space. + (ibm850): Add :ascii-compatible-p. -2005-11-22 Luc Teirlinck +2008-02-01 Kenichi Handa - * cus-edit.el (Custom-reset-standard): Make it handle Custom group - buffers correctly. (It used to throw an error in such buffers.) - Make it ask for confirmation in group buffers and other Custom - buffers containing more than one customization item. + * international/mule-conf.el (vietnamese-viscii-lower) + (vietnamese-viscii-upper): Supply them :code-offset, then unify by + mapping table. -2005-11-22 John Paul Wallington +2008-02-01 Dave Love - * net/goto-addr.el (goto-address-fontify): Put `follow-link' - property on mail and url overlays. - (goto-address-at-point): Use `posn-set-point' instead of - `mouse-set-point' because the latter is not fbound when configured - without X. + * cus-start.el: Add charset-map-directory. -2005-11-22 Lars Hansen + * international/fontset.el (font-encoding-alist): Add adobe-symbol. - * ls-lisp.el (ls-lisp-parse-symlink): Delete. - (ls-lisp-classify, ls-lisp-format): Delete call to - ls-lisp-parse-symlink. - (ls-lisp-handle-switches): Handle symlinks to directories as - directories when ls-lisp-dirs-first in non-nil. + * format.el (format-alist): Remove ibm, mac, hp entries (available + natively). -2005-11-21 Luc Teirlinck + * language/romanian.el (iso-latin-10): Add :mime-charset. + ("Romanian"): Add doc. - * startup.el (command-line): Make sure that loaddefs.el is handled - correctly in load-history. + * international/mule-conf.el (iso-8859-10, symbol) + (adobe-standard-encoding, ibm850): New charsets. + (iso-8859-13): Fix IR number, final char. + (file-coding-system-alist): Add .xml. -2005-11-22 Nick Roberts + * language/european.el (iso-latin-6, iso-8859-10, latin-6) + (iso-latin-7, iso-8859-13, latin-7, hp-roman8, roman8) + (adobe-standard-encoding, cp850, ibm850): New coding systems. + ("Latin-6", "Latin-7"): New language environments. - * progmodes/gdb-ui.el (gdb-locals-watch-keymap): New local map. - (gdb-struct-string, gdb-array-string): New constants. - (gdb-info-locals-handler): Use them. - (gdb-reset): Reset gdb-var-list to nil. +2008-02-01 Dave Love -2005-11-21 Stefan Monnier + * Makefile.in (DONTCOMPILE): Remove ucs-tables, utf-8, + utf-8-subst; add vietnamese, cyrillic, czech. - * progmodes/sh-script.el (sh-font-lock-paren): Handle continued lines - in patterns. + * language/romanian.el (iso-latin-10): New coding system. -2005-11-21 Juri Linkov + * international/mule-conf.el (emacs-mule): Set :charset-list, + consistent with coding-system-charset-list doc. + (iso-8859-16): New charset. - * custom.el (defcustom): Update link types in docstring. + * international/mule-diag.el (describe-coding-system): Avoid error + for iso-2022, emacs-mule. -2005-11-20 Martin Rudalics +2008-02-01 Dave Love - * custom.el (defgroup): Add doc-string-elt info. + * international/codepage.el: Remove or comment out most of code. + (codepage-setup): Re-write as trivial, obsolete function. - * widget.el (define-widget): Don't use declare for the doc-string-elt. + * language/utf-8-lang.el ("UTF-8"): Use utf-8, not mule-utf-8. + Remove setup function. -2005-11-20 Stefan Monnier + * language/english.el (ebcdic-us, ebcdic-uk): New coding systems. - * newcomment.el (comment-enter-backward): Fix last fix. + * Makefile.in (DONTCOMPILE): Add language/vietnamese.el, + language/cyrillic.el, language/czech.el. - * simple.el (blink-matching-open): - * paren.el (show-paren-function): Allow new paren-class info. + * language/vietnamese.el (windows-1258, cp1258): New coding systems. + (font-ccl-encoder-alist): Remove viscii, vscii. -2005-11-20 Chong Yidong + * language/hebrew.el (windows-1255, cp1255): New coding systems. - * faces.el: Revert 2005-11-17 change. :ignore-defface is now - handled automagically. + * language/european.el (windows-1254, cp1254, windows-1257) + (cp1257, next, iso-latin-7, iso-8859-13, latin-7): New coding systems. + ("Latin-7", "Lithuanian", "Latvian"): Don't require code-pages. -2005-11-20 Andreas Schwab + * language/greek.el (windows-1253, cp1253): New coding systems. - * descr-text.el (describe-char): When copying overlays put them - over the full char description instead of just the first character - of it. + * international/mule-conf.el (ebcdic-us, ebcdic-uk): Change map + file name. + (windows-1253, windows-1254, windows-1255, windows-1256) + (windows-1257, windows-1258, next): New charsets. -2005-11-20 Juri Linkov + * international/utf-8.el, international/utf-8-subst.el: Remove. - * simple.el (what-cursor-position): - * descr-text.el (describe-char): Use Lisp-readable syntax - for octal and hex. Reorder decimal, octal and hex values. - Remove excess whitespace in the output. Use `=' in `column=' - like in `point=' and `Hscroll='. + * international/mule.el: Doc fixes. + (charset-list, generic-char-p, set-coding-priority): Make obsolete. + (coding-system-get): Try to convert old-style symbol to keyword. + (define-charset): Purecopy strings in property list. + (define-coding-system): Purecopy docstring. - * international/mule-cmds.el (encoded-string-description): - Use Lisp-readable syntax for hex. + * international/mule-diag.el (list-character-sets-2): Avoid + charset-bytes. + (list-iso-charset-chars, list-non-iso-charset-chars): Delete. + (list-block-of-chars): Re-write. + (describe-character-set): Show more properties. + (describe-char-after): Correct codepoint display. + (print-coding-system): Use symbolic types. -2005-11-19 Stefan Monnier +2008-02-01 Kenichi Handa - * newcomment.el (comment-enter-backward): Handle the case where the - comment is closed by EOB. + * Makefile.in: Be sure also to run emacs with LANG=C. -2005-11-19 Chong Yidong +2008-02-01 Dave Love - * longlines.el (longlines-before-revert-hook) - (longlines-after-revert-hook): New functions. - (longlines-mode): Turn off longlines temporarily when reverting. - Add a message-setup-hook. - (longlines-decode-buffer): New function. - (longlines-wrap-line): Preserve marker positions. + * international/mule-diag.el: Doc fixes. + (sort-charset-list, charset-multibyte-form-string): Remove. + (list-character-sets, list-character-sets-1) + (list-character-sets-2): Re-write. + (non-iso-charset-alist): Set to nil and made obsolete. + (decode-codepage-char): Re-write and made obsolete. + (read-charset): Don't use non-iso-charset-alist. + (describe-coding-system): Use keyword properties. + (describe-character-set): Re-write. -2005-11-19 Andreas Schwab + * international/mule-conf.el (koi8-u, koi8-t, georgian-ps) + (windows-1250, windows-1251, windows-1252, cp1125, ebcdic-us) + (ebcdic-uk): New charsets. - * emacs-lisp/shadow.el: Handle compressed files. + * language/cyrillic.el (koi8-u, koi8-t, windows-1251, cp1125): + New coding systems. -2005-11-19 Romain Francoise + * language/european.el (windows-1252): New coding system. - * net/browse-url.el (browse-url-default-browser): Signal an error - if no usable browser can be found, rather than try to load w3. +2008-02-01 Kenichi Handa -2005-11-16 Ryan Yeske + * Makefile.in: By sure to run emacs with LC_ALL=C. - * net/rcirc.el (rcirc-mangle-text): Add bold face property without - replacing existing properties. - (rcirc-my-nick, rcirc-other-nick, rcirc-server) - (rcirc-nick-in-message, rcirc-prompt): Use min-colors and remove - tty specs. - (rcirc-server-prefix, rcirc-server): New faces. - (rcirc-url-regexp): Generate with rx macro. - (rcirc-last-server-message-time): New variable. - (rcirc-filter): Record time of last message. - (rcirc-keepalive): Kill processes that did not send a message - since the last ping. - (rcirc-mode): Give rcirc-topic a local binding here. + * international/encoded-kb.el (encoded-kbd-handle-8bit): Call + encoded-kbd-self-insert-iso2022-8bit with argument 1. + (encoded-kbd-self-insert-charset): New function. + (encoded-kbd-setup-keymap, encoded-kbd-mode): Handle a + coding-system of type charset. -2005-11-19 Micha,Ak(Bl Cadilhac +2008-02-01 Dave Love - * subr.el (read-passwd): Fontify the prompt as we do with other - prompts. + * international/mule-cmds.el (set-locale-environment): Comment out + set-keyboard-coding-system stuff. -2005-11-19 Ryan Yeske +2008-02-01 Kenichi Handa - * ffap.el (ffap-menu-rescan): Use inhibit-read-only instead of - binding buffer-read-only to nil. + * international/mule.el (define-coding-system): Doc fix; + sjis->shift-jis. -2005-11-19 Eli Zaretskii + * international/mule-conf.el: Use decode-char instead of make-char. - * complete.el (partial-completion-mode): - Mention completion-auto-help in the doc string. + * international/encoded-kb.el (encoded-kbd-self-insert-iso2022-8bit): + New arg ARG. Directly call self-insert-command. This is a + temporary workaround to make it work with latin-1. + (encoded-kbd-mode): Change `sjis' to `shift-jis'. - * man.el (Man-highlight-references): Doc fix. Reformat code in a - more Lisp-ish way. + * international/characters.el: Setup char-width-table for CJK + characters. -2005-11-19 Slawomir Nowaczyk (tiny change) +2008-02-01 Kenichi Handa - * ls-lisp.el (ls-lisp-format-file-size): Format file size with 9 - digits, not 8, to avoid misalignment for files larger than 100MB. + * international/ja-dic-utl.el (skkdic-jisx0208-hiragana-block): + Fix the initial value to specify character range of + japanese-jisx0208, not unicode. -2005-11-19 Eli Zaretskii + * international/characters.el: Set syntax/category for + japanese-jisx0208. - * menu-bar.el (menu-bar-describe-menu) : - Mention "keyboard shortcuts" in the help text. +2008-02-01 Dave Love -2005-11-19 YAMAMOTO Mitsuharu + * mail/sendmail.el (sendmail-send-it): Use :mime-charset, not + mime-charset. - * startup.el (fancy-splash-default-action): Discard only - mouse-down and succeeding mouse-up events in the splash screen - window so that drag-n-drop event can be processed. + * language/vietnamese.el, language/korean.el, language/japanese.el: + * language/hebrew.el, language/greek.el, language/chinese.el: + Fix :mime-charset properties. -2005-11-18 Chong Yidong + * language/cyrillic.el (cyrillic-iso-8bit, cyrillic-koi8) + (cyrillic-alternativnyj): Fix :mime-charset. + (cp878, cp866): New alias. - * longlines.el (longlines-mode): Add hacks for mail-mode and - message-mode. + * language/european.el: Fix mime-charset properties. -2005-11-18 Carsten Dominik + * international/mule-cmds.el (sort-coding-systems) + (select-safe-coding-system, select-message-coding-system): Use + :mime-charset, not 'mime-charset. - * textmodes/org.el (org-table-sort-lines): New command. - (org-tbl-menu): Add entry for `org-table-sort-lines'. - (org-add-file): Command removed, use `org-agenda-file-to-front' - instead. - (org-export-icalendar): Use `org-icalendar-combined-name'. - (org-cycle-agenda-files, org-agenda-file-to-end) - (org-agenda-file-to-front): New commands. - (org-table-tab-jumps-over-hlines, org-export-html-style): - New options. - (org-table-next-field): Use `org-table-tab-jumps-over-hlines'. - (org-at-table.el-p, org-set-autofill-regexps, org-html-protect): - New functions. - (org-fill-paragraph): Call `org-table-align' in tables. - (org-mode): Call `org-set-autofill-regexps'. - (org-export-as-html): Support for local handformatted lists. - Modified to produce valid HTML 4.0. Use `org-export-html-style'. - (org-export-local-list-max-depth): New option. - (org-html-expand): Use `org-html-protect'. - -2005-11-18 Nick Roberts - - * progmodes/gud.el (gud-install-speedbar-variables): Bind gud-pp - to "p". - (gdb): Move definition of gud-pp to... - - * progmodes/gdb-ui.el (gdb-ann3): ...here. Make it work in the - speedbar. - (gdb-find-watch-expression): New function. - -2005-11-17 Chong Yidong - - * faces.el (face-attribute, set-face-attribute): Mention existence - of `:ignore-defface' setting in docstring. - -2005-11-17 Stefan Monnier - - * simple.el (completion-setup-function): Fix last change. - -2005-11-17 John Paul Wallington - - * ibuf-ext.el (ibuffer-interactive-filter-by-mode): - Use `posn-set-point' instead of `mouse-set-point' because the - latter is not fbound when configured without X. - - * comint.el (comint-insert-input): Likewise. - -2005-11-17 Chong Yidong - - * simple.el (hard-newline): New variable. - (sendmail-user-agent-compose, next-line): Use it. - - * mail/sendmail.el (mail-setup, mail-send, mail-insert-from-field) - (sendmail-send-it, mail-do-fcc, mail-cc, mail-bcc, mail-fcc) - (mail-mail-reply-to, mail-mail-followup-to) - (mail-position-on-field, mail-signature, mail-yank-original) - (mail-attach-file): Likewise. - - * mail/mailheader.el (mail-header-format) - (mail-header-format-function): Likewise. - - * add-log.el (add-change-log-entry, change-log-merge): Likewise. - -2005-11-17 Juri Linkov - - * font-lock.el (font-lock-faces): Rename this defgroup from - `font-lock-highlighting-faces'. - (font-lock-comment-face, font-lock-comment-delimiter-face) - (font-lock-string-face, font-lock-doc-face) - (font-lock-keyword-face, font-lock-builtin-face) - (font-lock-function-name-face, font-lock-variable-name-face) - (font-lock-type-face, font-lock-constant-face) - (font-lock-warning-face, font-lock-negation-char-face) - (font-lock-preprocessor-face) - (font-lock-regexp-grouping-backslash) - (font-lock-regexp-grouping-construct): Rename :group from - `font-lock-highlighting-faces' to `font-lock-faces'. - - * cus-edit.el (lisp, c, tex): - * progmodes/ada-mode.el (ada): - * progmodes/asm-mode.el (asm): - * progmodes/cperl-mode.el (cperl-faces): - * progmodes/cpp.el (cpp): - * progmodes/dcl-mode.el (dcl): - * progmodes/f90.el (f90): - * progmodes/fortran.el (fortran): - * progmodes/icon.el (icon): - * progmodes/idlwave.el (idlwave-misc): - * progmodes/m4-mode.el (m4): - * progmodes/make-mode.el (makefile): - * progmodes/meta-mode.el (meta-font): - * progmodes/modula2.el (modula2): - * progmodes/octave-mod.el (octave): - * progmodes/pascal.el (pascal): - * progmodes/perl-mode.el (perl): - * progmodes/prolog.el (prolog): - * progmodes/ps-mode.el (PostScript-edit): - * progmodes/scheme.el (scheme): - * progmodes/sh-script.el (sh-script): - * progmodes/simula.el (simula): - * progmodes/tcl.el (tcl): - * textmodes/nroff-mode.el (nroff): - * textmodes/reftex-vars.el (reftex-fontification-configurations): - * textmodes/sgml-mode.el (sgml): - * textmodes/texinfo.el (texinfo): - Add :link (custom-group-link font-lock-faces) to defgroup. - - * hi-lock.el (hi-lock): Rename this defgroup from - `hi-lock-interactive-text-highlighting'. Change parent group from - `faces' to `font-lock'. Add link to the manual. - (hi-lock-mode, hi-lock-file-patterns-range) - (hi-lock-exclude-modes, hi-lock-faces): Rename :group from - `hi-lock-interactive-text-highlighting' to `hi-lock'. - (hi-lock-faces): Add :group `faces'. - - * cus-edit.el (custom-variable-prompt): Clarify the code. - - * faces.el (face-read-string): Set the default value arg of - completing-read. - -2005-11-16 Luc Teirlinck - - * rfn-eshadow.el (file-name-shadow-properties) - (file-name-shadow-tty-properties, file-name-shadow-mode): - Remove autoloads, because the file is now preloaded. - -2005-11-16 Stefan Monnier - - * printing.el (easy-menu-intern): Don't define. - (pr-get-symbol): Use easy-menu-intern only if defined. - - * simple.el (blink-matching-open): Simplify a bit. - (completion-setup-function): Fix the case of partial-completion-mode - when the minibuffer's contents start with "-". - Obey completion-base-size-function even when - minibuffer-completing-file-name is non-nil. - -2005-11-16 Richard M. Stallman + * international/mule-conf.el: Add various :mime-charset properties. - * net/eudcb-ph.el (eudc-ph-open-session): - Use set-process-query-on-exit-flag. +2008-02-01 Dave Love - * mail/smtpmail.el (smtpmail-send-it): Use insert-buffer-contents. + * international/encoded-kb.el (encoded-kbd-self-insert-ccl): Fix + getting decoder. + (encoded-kbd-mode): Fix code for coding system type and designations. - * international/ucs-tables.el (ucs-set-table-for-input): - Use make-local-variable, not make-variable-buffer-local. + * international/mule-conf.el: Spelling fixes. - * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): - Improve warning message text. +2008-02-01 Kenichi Handa - * savehist.el (savehist-save-hook): Add :group. + * international/fontset.el (fontset-plain-name): Handle the case + that size, weight, slant are not specified in the fontset name. - * menu-bar.el (menu-bar-help-menu): - Rename Find Extra Packages to External Packages. +2008-02-01 Yong Lu - * cus-edit.el (Custom-reset-standard): Verify that - :custom-standard-value prop exists before calling it. + * language/greek.el (greek-iso-8bit): Fix typo. - * apropos.el (apropos-calc-scores): Use apropos-pattern. +2008-02-01 Kenichi Handa -2005-11-16 Martin Rudalics + * language/chinese.el (chinese-big5): Change :coding-type to `charset'. - * wid-edit.el (color): Enclose %t in %{...%}. +2008-02-01 Kenichi Handa - * cus-edit.el (face): Enclose %t in %{...%}. + * international/characters.el: Change encoding to utf-8-emacs. + Remove apparent duplicate codes. -2005-11-16 Hrvoje Niksic +2008-02-01 Kenichi Handa - * savehist.el (savehist-mode-hook): Re-add the var. - (savehist-mode): Use it. + * international/fontset.el: Change the registry for + chinese-gb2312 and add the registry for chinese-gbk. -2005-11-16 Stefan Monnier + * international/mule.el (charset-chars): Fix typo. - * textmodes/flyspell.el: Fix commenting convention. - Remove unnecessary leading * in custom docstrings. - (flyspell-emacs): Remove unused var. - (flyspell-delete-region-overlays): Use remove-overlays. - (flyspell-accept-buffer-local-defs): Use save-current-buffer. - (flyspell-debug-signal-no-check, flyspell-debug-signal-changed-checked) - (flyspell-debug-signal-pre-word-checked, flyspell-post-command-hook) - (flyspell-debug-signal-word-checked): Use with-current-buffer. - (make-flyspell-overlay): Don't locally reuse a global name. - (flyspell-highlight-incorrect-region) - (flyspell-highlight-duplicate-region): Use flyspell-unhighlight-at. - (flyspell-check-previous-highlighted-word): Use flyspell-overlay-p. - (flyspell-notify-misspell): Remove unused args `start' and `end'. - (flyspell-word): Adjust call accordingly. Use ispell-send-string. - Wrap calls to accept-process-output inside with-local-quit since it's - often called from a post-command-hook. - (flyspell-correct-word, flyspell-auto-correct-word): - Use ispell-send-string. - (flyspell-xemacs-popup): Remove unused arg `event'. Update call. + * international/mule-conf.el (chinese-gbk): New charset. - * calendar/diary-lib.el (diary-list-entries): Also hide the - terminating newline. + * international/titdic-cnv.el (titdic-convert): Read into a + unibyte buffer then make the buffer multibyte. -2005-11-16 Carsten Dominik +2008-02-01 Kenichi Handa - * textmodes/reftex.el (reftex-use-fonts): Remove the check for - window-system, to allow fonts on tty. + * international/mule-conf.el (utf-16-le, utf-16-be): Use :bom attribute + instead of :signature. -2005-11-17 Nick Roberts +2008-02-01 Kenichi Handa - * progmodes/gud.el (gud-speedbar-item-info): New function. - (gud-install-speedbar-variables): Use it to display data type - of watch expression as a tooltip in speedbar. + * language/czech.el ("Czech"): Set `iso-8859-2' for + `nonascii-translation'. -2005-11-15 Luc Teirlinck + * language/romanian.el ("Romanian"): Likewise. - * font-core.el (global-font-lock-mode): Add :version keyword, - because default was changed. + * language/slovak.el ("Slovak"): Likewise. - * jka-cmpr-hook.el (auto-compression-mode): Ditto. + * international/characters.el: Optimize calls of modify-category-entry. - * startup.el (command-line): Use `custom-reevaluate-setting' for - `file-name-shadow-mode'. +2008-02-01 Kenichi Handa - * loadup.el: Preload rfn-eshadow. + * bindings.el: Don't bind multibyte characters to + self-insert-command here. It's done in mule-conf.el. - * rfn-eshadow.el (file-name-shadow-mode): Set :init-value to t. - Add :version keyword. - (file-name-shadow-properties, file-name-shadow-tty-properties) - (file-name-shadow): Add :version keyword. + * case-table.el (set-case-syntax-offset): Delete variable. + (set-case-syntax-1): Delete function. Change callers. + (set-case-syntax-delims): Don't check byte length of characters. - * cus-edit.el (custom-add-parent-links): Fix bug whereby, for - instance, `(fringe custom-face)' shadowed `(fringe custom-group)' - in the custom-group property of the symbol frames and the fringe - group got no link to its parent group frames. - Doc fix. + * isearch.el (isearch-mode-map): Call set-char-table-range to bind + characters to isearch-printing-char. -2005-11-16 Nick Roberts + * loadup.el: Don't load "international/utf-8". Don't call + update-coding-systems-internal. Bind coding-system-for-write to + `utf-8' while writing fns-XXX.el. Call clear-charset-maps before + dumping. - * progmodes/gud.el (gud-stop-subjob): New function. - (gud-menu-map, gud-tool-bar-map): Use it. + * emacs-lisp/regexp-opt.el (regexp-opt-charset): Adjust for the + change of map-char-table. -2005-11-16 Kim F. Storm + * eshell/esh-mode.el: Adjust for the change of map-char-table. - * progmodes/gud.el (gud-menu-map): Let [stop] stop program rather - than kill it. - (gud-tool-bar-map): Likewise. Move cont/until/finish buttons - to a more useful/logical place. + * international/characters.el: Adjust for the deletion of + generic characters. -2005-11-16 Nick Roberts + * international/code-pages.el (cp-make-translation-table) + (cp-valid-codes, cp-fix-safe-chars): Delete. Change caller. + (cp-make-coding-system): Call define-coding-system. - * progmodes/gud.el (gud-menu-map): Make visibility of stop and - go buttons complementary. + * international/fontset.el: Rewrite most code. -2005-11-15 Stefan Monnier + * international/ja-dic-cnv.el (skkdic-get-kana-compact-codes): + Call encode-char instead of split-char. - * rfn-eshadow.el (rfn-eshadow-regexp): Remove. - (rfn-eshadow-sifn-equal): New function. - (rfn-eshadow-update-overlay): Rewrite to use substitute-in-file-name. + * international/ja-dic-utl.el (skkdic-jisx0208-hiragana-block): + Change value. + (skkdic-lookup-key): Call encode-char instead of split-char. -2005-11-15 Michael Kifer + * international/titdic-cnv.el (titdic-convert): Bind + coding-system-for-write to 'iso-2022-7bit. Don't work on unibyte + buffer. - * emulation/viper-util.el (viper-non-word-characters-reformed-vi): - Quote `-' in string. + * international/latin-1.el: Don't bind set-case-syntax-offset. - * emulation/viper.el (viper-emacs-state-mode-list): Ensure that - rcirc-mode buffers come up in Emacs state. + * international/latin-2.el: Don't bind set-case-syntax-offset. - * ediff-util.el (ediff-make-temp-file): Use proper file-name-handler - operation. + * international/latin-3.el: Don't bind set-case-syntax-offset. -2005-11-15 Dan Nicolaescu + * international/latin-4.el: Don't bind set-case-syntax-offset. - * term.el (term-termcap-format): Fix typos. - (term-down): Fix the negative argument case. + * international/latin-5.el: Don't bind set-case-syntax-offset. -2005-11-16 Nick Roberts + * international/latin-8.el: Don't bind set-case-syntax-offset. - * progmodes/gdb-ui.el: Remove face-alias left over from change on - 2005-08-15. - (gdb-ann3): New command gud-go. - (menu): Accomodate gdb-mi.el. - (gdb-assembler-custom): Make buffer of selected window current - so that set-window-point works. + * international/latin-9.el: Don't bind set-case-syntax-offset. - * progmodes/gud.el (gud-menu-map, gud-tool-bar-map): Re-define - buttons and include new ones. + * international/mule-cmds.el: Don't use coding category. + Call set-coding-system-priority instead of set-coding-priority. + (sort-coding-systems, select-safe-coding-system): + Call coding-system-priority-list to get the most preferred one. + (reset-language-environment): Order of coding system priority + changed. Set primary charset to iso-8859-1. + (set-language-environment-coding-systems): + Call set-coding-system-priority instead of set-coding-priority. + (get-charset-property, put-charset-property): Move to mule.el. -2005-11-16 Kim F. Storm + * international/mule-conf.el: Ful re-write. - * progmodes/gud.el (gud-tool-bar-item-visible-no-fringe): New function. - (gud-menu-map): Use it. + * international/mule-diag.el (print-designation): Change arguments. + (print-iso-2022-flags): New function. + (describe-coding-system, describe-current-coding-system): + Adjust for the new structure of coding system. -2005-11-14 Luc Teirlinck + * international/mule.el (char-valid-p): Make it an alias of characterp. + (define-charset): Full re-design. + (charset-quoted-standard-p): Delete. + (charsetp): Move to charset.c. + (charset-info, charset-id, charset-bytes, charset-width) + (charset-directioin, charset-iso-graphic-plane) + (charset-reverse-charset): Delete. + (charset-dimension, charset-chars, charset-iso-final-char) + (charset-description, charset-short-name, charset-long-name): + Call charset-plist instead of charset-info. + (charset-plist, set-charset-plist): Move to charset.c. + (get-charset-property, put-charset-property): Move from + mule-cmds.el. Call charset-plist and set-charset-plist. + (make-char): Delete. + (generic-char-p): Make it always return nil. + (decode-char, encode-char): Move to charset.c. + (coding-spec-XXX-idx): Delete variables. + (coding-system-iso-2022-flags): New variable. + (define-coding-system): New function. + (transform-make-coding-system-args, make-coding-system): Delete. + (set-coding-priority): Make it obsolete. + (after-insert-file-set-buffer-file-coding-system) + (find-new-buffer-file-coding-system): Adjust for the new coding + system structure. - * jka-cmpr-hook.el (auto-compression-mode): Enable it in a way - that works correctly for Custom and that does not override a user - who disables it. + * language/chinese.el, language/cyrillic.el, language/european.el: + * language/greek.el, language/hebrew.el, language/indian.el: + * language/japanese.el, language/korean.el, language/lao.el: + * language/thai.el, language/tibetan.el, language/vietnamese.el: + Call define-coding-system instead of make-coding-system. + Delete all CCL program. - * help-mode.el (help-make-xrefs, help-xref-on-pp) - (help-xref-interned, help-follow): Make hyperlinks for variables - that are unbound, but have a non-nil variable-documentation property. + * textmodes/sgml-mode.el (sgml-mode-map): Use encode-char instead + of make-char. + (sgml-char-names-table): Fix iteration limit. - * emacs-lisp/derived.el (define-derived-mode): Remove defvar for - mode hook. (It conflicted with defcustoms for some mode hooks.) - Use the `variable-documentation' property to give the mode hook a - docstring and expand that docstring. + * term/mac-win.el: Delete unnecessary calls of set-fontset-font. + (ccl-encode-mac-roman-font): Delete. -2005-11-14 Hrvoje Niksic + * Makefile.in (DONTCOMPILE): Add latin1-disp.el, ucs-tables.el, + utf-8.el, and utf-8-subst.el as they can't be bytecompiled + currently. This is just a temporary workaround. - * savehist.el (savehist-mode): Don't bother with - `custom-set-minor-mode'. - (savehist-coding-system): Check XEmacs version. - (history-length): Declare also at run time. - (savehist-mode): Don't emit a message. Don't run the minor mode hook. - Don't set the customize state. - (savehist-minibuffer-hook): Special case for when - minibuffer-history-variable is equal to t. +2008-02-01 Vinicius Jose Latorre + + * whitespace.el (global-whitespace-mode): Use `find-file-hook' instead + of `find-file-hooks'. + (global-whitespace-toggle-options): Doc fix. -2005-11-14 Stefan Monnier +2008-02-01 Juanma Barranquero - * files.el (write-file): Refresh VC status. + * whitespace.el (whitespace): Set :version tag to 23.1. + (whitespace-turn-off, whitespace-toggle-options): Fix typos. + (whitespace-style, whitespace-chars, whitespace-space) + (whitespace-hspace, whitespace-tab, whitespace-newline) + (whitespace-trailing, whitespace-line, whitespace-space-before-tab) + (whitespace-indentation, whitespace-empty, whitespace-space-after-tab) + (whitespace-hspace-regexp, whitespace-space-regexp) + (whitespace-tab-regexp, whitespace-trailing-regexp) + (whitespace-space-before-tab-regexp, whitespace-indentation-regexp) + (whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp) + (whitespace-space-after-tab-regexp, whitespace-line-column) + (whitespace-display-mappings, global-whitespace-toggle-options) + (whitespace-cleanup, whitespace-cleanup-region) + (whitespace-interactive-char): Doc fixes. - * calendar/diary-lib.el (diary-list-entries, diary-show-all-entries) - (mark-diary-entries, make-diary-entry): Check default-major-mode rather - than fundamental-mode to see if the mode was set. +2008-02-01 Juanma Barranquero -2005-11-14 Romain Francoise + * whitespace.el (global-whitespace-mode): Fix modeline lighter. + When turning off the global mode, turn off the local modes too + if whitespace is being unloaded. + (whitespace-unload-function): New function. - * dired-x.el: If `vm-visit-folder' doesn't exist, define it as a - dummy function in `eval-when-compile' to avoid compiler warning. - Require `man' at compile time. +2008-02-01 Thien-Thi Nguyen -2005-11-14 Jay Belanger + * vc.el (vc-update): Fix bug: Specify branch tip as + vc-checkout REVISION. Reported by Dan Nicolaescu. - * calc/calc-alg.el (calcFunc-write-out-power): Rename it to - calcFunc-powerexpand. - (math-write-out-power): Rename it to math-powerexpand; have it - handle negative exponents. - (calc-writeoutpower): Rename it to calc-powerexpand. +2008-02-01 Glenn Morris - * calc/calc-ext.el: Change calcFunc-writeoutpower and - calc-writeoutpower to calcFunc-powerexpand and calc-powerexpand in - autoloads. - Add calcFunc-ldiv to autoloads. + * info.el (bookmark-make-cell-function, bookmark-search-size) + (bookmark-current-bookmark): Declare variables for compiler. + (bookmark-buffer-file-name, bookmark-get-filename) + (bookmark-get-front-context-string) + (bookmark-get-rear-context-string, bookmark-get-position) + (bookmark-get-info-node, bookmark-file-or-variation-thereof) + (bookmark-jump-noselect): Declare functions for compiler. + (Info-bookmark-make-cell): Fix argument list to match example of + `bookmark-make-cell-for-text-file'. + (Info-bookmark-jump): Don't require info inside info.el. - * calc/calc-arith.el (calcFunc-ldiv): New function. +2008-02-01 Dan Nicolaescu - * calc/calc.el (calc-left-divide): New function. + * progmodes/verilog-mode.el (verilog-sk-prompt-msb) + (verilog-sk-module, verilog-sk-function, verilog-sk-begin) + (verilog-sk-if, verilog-sk-wire, verilog-sk-for) + (verilog-sk-state-machine): Quote all calls to + "auxiliary skeleton"s to prevent infloops. -2005-11-14 Juri Linkov +2008-02-01 Jason Rumney - * cus-edit.el (custom-variable-prompt): Set the default value arg - of completing-read. + * w32-fns.el: Partially revert 2007-11-10 change. - * cus-dep.el (custom-make-dependencies): Reverse the list of - found dependencies. +2008-02-01 Martin Rudalics -2005-11-14 Dan Nicolaescu + * mail/rmail.el (rmail-highlight): Fix specification. + Reported by pod . - * menu-bar.el (menu-bar-options-menu): Delete "Syntax - Highlighting" entry, it is on by default now. - (menu-bar-options-save): Do not save global-font-lock-mode. +2008-02-01 Stefan Monnier -2005-11-13 Richard M. Stallman + * image-mode.el (image-mode-current-vscroll) + (image-mode-current-hscroll): Make buffer-local. + (image-set-window-vscroll, image-set-window-hscroll): Simplify. + (image-reset-current-vhscroll): Use the latest setting when displaying + for the first time in a window. Apply to all windows in the frame. + (image-mode): Don't make image-mode-current-[vh]scroll buffer-local. - * textmodes/flyspell.el (flyspell-large-region): - Call flyspell-accept-buffer-local-defs. + * progmodes/grep.el (grep-compute-defaults): + Don't mix up defaults for different connections to the same host. -2005-11-13 Agustin Martin +2008-01-31 Vinicius Jose Latorre - * textmodes/flyspell.el (flyspell-notify-misspell): - Fix misspelling of "Misspelling". - (flyspell-process-localwords): New function. - (flyspell-large-region): Call flyspell-process-localwords and - flyspell-delete-region-overlays. - (flyspell-delete-region-overlays): New function. - (flyspell-delete-all-overlays): Call that. + * blank-mode.el: Rename to whitespace.el. -2005-11-13 Richard M. Stallman + * obsolete/whitespace.el: Rename to obsolete/old-whitespace.el. - * help.el (help-for-help-internal): Improve doc of C-h a. - (describe-key): Improve prompt; doc fix. +2008-01-31 Stefan Monnier -2005-11-13 Stefan Monnier + * net/rcompile.el (remote-compile): Remove broken code. - * vc-svn.el (vc-svn-registered): Catch all errors. +2008-01-31 Jason Rumney - * cus-dep.el (custom-make-dependencies): Typo. + * term/w32-win.el (image-library-alist): Prefer libxpm.dll. -2005-11-13 Michael Albinus +2008-01-31 Juanma Barranquero - * net/tramp-util.el (top): Fix compilation warning. + * linum.el (linum-unload-function): New function. -2005-11-13 Kim F. Storm +2008-01-30 Nick Roberts - * help.el (help-for-help-internal): Fix `a' entry. Add `d' entry. + * progmodes/gdb-ui.el (gdb-var-set-format-regexp): New constant. + (gdb-var-set-format-handler): New function. + (gdb-var-set-format): Use it. -2005-11-13 Nick Roberts +2008-01-30 Juanma Barranquero - * progmodes/gud.el (gud-menu-map): Move parentheses (again). - (gud-speedbar-buttons): Match on "const char *" too. + * emacs-lisp/check-declare.el (check-declare-directory): + * emacs-lisp/authors.el (authors): Use `find-program' and + `grep-program' instead of hardcoded program names. - * progmodes/gdb-ui.el (gdb-var-create-handler) - (gdb-var-list-children-handler): Match on "const char *" too. - (gdb-var-evaluate-expression-handler): Match on empty string. - (gdb-var-update-handler): Only call - gdb-var-evaluate-expression-handler when required. + * emacs-lisp/cl-loaddefs.el: Update. -2005-11-13 Nick Roberts +2008-01-30 Tassilo Horn - * progmodes/gud.el (gud-menu-map): Revert to window-fringes for - selected window. This still doesn't work for speedbar. - (gud-speedbar-buttons): Handle string expressions properly. + * info.el (Info-bookmark-make-cell, Info-bookmark-jump): New functions. + Implement bookmark support the new make-cell/handler way. + (Info-mode): Bind bookmark-make-cell-function to + Info-bookmark-make-cell buffer locally. - * progmodes/gdb-ui.el (gdb-var-evaluate-expression-handler) - (gdb-var-create-handler): Handle string expressions properly. - (gdb-var-list-children-regexp, gdb-var-list-children-handler): - Handle string expressions properly. Move "type" field into regexp. +2008-01-30 Richard Stallman -2005-11-12 Karl Fogel + * progmodes/etags.el (tags-query-replace): Delete unused optional args. + Doc fix. - * bookmark.el (bookmark-maybe-message): New function to reduce - code duplication: invokes `message' iff baud-rate is high enough. - (bookmark-write-file): Use above instead of an inline conditional. - (bookmark-load): Same. + * files.el (hack-local-variables): Don't query about fake variables. -2005-11-12 Karl Fogel +2008-01-30 Markus Triska - * bookmark.el (bookmark-write-file): Don't visit the destination - file, just write the data to it using write-region. This is - similar to saveplace.el at 2005-05-29T08:36:26Z!rms@gnu.org, but with an additional - change to avoid visiting the file in the first place. - -2005-11-12 Chong Yidong - - * hi-lock.el (hi-lock-mode): Set the default value of - font-lock-defaults. - -2005-11-11 Luc Teirlinck + * linum.el: New file. - * find-lisp.el (find-lisp-find-dired-insert-file): Pass `string' - arg to `file-attributes'. - (find-lisp-format): The UID and GID can now be strings. +2008-01-29 Michael Albinus -2005-11-12 Kim F. Storm + * net/tramp.el (tramp-methods): Use "-H" option for "sudo". + Suggested by Trent W. Buck . Make ("%h") + a single element in "plinkx". + (tramp-handle-shell-command): Reuse "*Async Shell Command*" or + "*Shell Command Output*" buffers. Check, whether there is already + an asynchronous process running. Display always the buffer of the + asynchronous process. + (tramp-compute-multi-hops): Adapt error message. - * help.el (help-map): Bind C-h d to apropos-documentation. +2008-01-29 Alan Mackenzie - * simple.el (what-cursor-position): Print (EOB) instead of (100%) - when point is at end-of-buffer. + * progmodes/cc-langs.el (c-specifier-key): Exclude "template" + from this regexp; part of same fix as next change to cc-engine.el. - * apropos.el (apropos-match-face): Doc fix. - (apropos-sort-by-scores): Add new choice `verbose'. - (apropos-documentation-sort-by-scores): New defcustom. - (apropos-pattern): Now contains the pattern entered by the user. - (apropos-pattern-quoted): New defvar. - (apropos-regexp): New defvar, containing the regexp corresponding - to apropos-pattern. - (apropos-all-words-regexp): Rename from apropos-all-regexp. - (apropos-read-pattern): New defun. Use it to read pattern arg in - interactive calls; returns list of words for a word list, and - string for a regexp. - (apropos-parse-pattern): Rename from apropos-rewrite-regexp. Now - parses a list of words or regexp as returned by apropos-read-pattern. - (apropos-calc-scores): Return nil if apropos-regexp doesn't match. - (apropos-score-doc): Return a very high score if the string - entered by the user matches literally. - (apropos-variable): Doc fix. Use apropos-read-pattern. - (apropos-command): Doc fix. Use apropos-read-pattern and - apropos-parse-pattern. Call apropos-print with nosubst=t. - (apropos, apropos-value): Doc fix. Use apropos-read-pattern and - apropos-parse-pattern. - (apropos-documentation): Doc fix. Use apropos-read-pattern and - apropos-parse-pattern. Locally bind apropos-sort-by-scores to - apropos-documentation-sort-by-scores. Call apropos-print with - nosubst=t. - (apropos-documentation-internal): Pass doc string through - substitute-key-definition before adding text properties. - Highlight substring matching literal user input if possible. - (apropos-documentation-check-doc-file): Remove locals beg and end. - Fix calculation of score (as added twice). Pass doc string through - substitute-key-definition before adding text properties. - (apropos-documentation-check-elc-file): Pass doc string through - substitute-key-definition before adding text properties. - Highlight substring matching literal user input if possible. - (apropos-print): Add new arg NOSUBST; if set, command and variable - doc strings have already been passed through substitute-key-definition. - Add code to handle apropos-accumulator items without score element - for backwards compatibility (e.g. with woman package). - Only show scores if apropos-sort-by-scores is `verbose'. - -2005-11-10 Stefan Monnier - - * jka-cmpr-hook.el (jka-compr-install): Use push and dolist. - Add jka-compr-load-suffixes to load-suffixes. - - * jka-compr.el: Require jka-cmpr-hook. - (jka-compr-info-compress-message, jka-compr-info-compress-program) - (jka-compr-info-compress-args, jka-compr-info-uncompress-message) - (jka-compr-info-uncompress-program, jka-compr-info-uncompress-args) - (jka-compr-info-can-append, jka-compr-info-strip-extension) - (jka-compr-info-file-magic-bytes, jka-compr-get-compression-info) - (jka-compr-info-regexp): Remove. Provided by jka-cmpr-hook. - (jka-compr-uninstall): Remove entries from - jka-compr-added-to-file-coding-system-alist after they are used. - (jka-compr-error): Remove unused var `curbuf'. - (jka-compr-file-local-copy): Remove unused var `notfound'. - -2005-11-10 Romain Francoise - - * apropos.el (apropos-calc-scores): Use `apropos-pattern'. - -2005-11-11 Nick Roberts - - * progmodes/gud.el (gud-menu-map): Move parentheses. - (gdb): New command gud-pv. - -2005-11-10 Stefan Monnier - - * tar-mode.el: Remove spurious or unnecessary leading stars - in docstrings. - (tar-header-block-tokenize): Also obey default-file-name-coding-system. - (tar-parse-octal-integer-safe): Use mapc. - (tar-header-block-summarize): Remove unused var `ck'. - (tar-summarize-buffer): Don't clear the modified-p bit if it wasn't - cleared before. Obey default-enable-multibyte-characters. - Use mapconcat. Simplify setting of tar-header-offset. - (tar-mode-map): Move initialization inside delcaration. - (tar-flag-deleted): Use `abs'. - (tar-expunge-internal): Remove unused var `line'. - (tar-expunge-internal): Don't hardcode point-min==1. - (tar-expunge): Widen while doing set-buffer-multibyte. - (tar-rename-entry): Use file-name-coding-system. - (tar-alter-one-field): Don't hardcode point-min==1. - (tar-subfile-save-buffer): string-as-unibyte works on unibyte strings. - (tar-pad-to-blocksize): Don't hardcode point-min==1. Clarify the code. - -2005-11-10 Masatake YAMATO - - * add-log.el (add-log-current-defun): Handle class::method - notation of c++. Fix incorrect comment. - -2005-11-10 Alan Mackenzie - - * help-fns.el (describe-variable): Make C-h v work when a variable - has variable documentation yet is unbound. - -2005-11-10 Masatake YAMATO - - * man.el (Man-highlight-references): Set an empty - string to `Man-arguments' if it is nil. - Suggested by Reiner Steib . - -2005-11-09 Stefan Monnier - - * Makefile.in (mh-loaddefs.el, loaddefs.el): Better follow the - commenting conventions. + * progmodes/cc-engine.el (c-guess-basic-syntax, CASE 5A.5): + Anchor the "{" of a template function correctly on "template", not the + following "<". - * cus-dep.el (custom-make-dependencies): Simplify. - Better follow the commenting conventions. + * progmodes/cc-defs.el (c-version): Increase to 5.31.5. -2005-11-09 Richard M. Stallman +2008-01-29 Tassilo Horn - * apropos.el (apropos-pattern): Rename from apropos-regexp. - (apropos-orig-pattern): Rename from apropos-orig-regexp. - All uses changed. - (apropos-rewrite-regexp): Doc fix. - (apropos-variable, apropos-command, apropos, apropos-value): - Change prompt; carry through the argument renaming. + * doc-view.el (doc-view-mode): Adapt to image-mode-current-vscroll + and image-mode-current-hscroll being alists now. -2005-11-09 Luc Teirlinck + * image-mode.el (image-mode-current-vscroll) + (image-mode-current-hscroll): Add doc strings. + (image-set-window-vscroll, image-set-window-hscroll) + (image-reset-current-vhscroll, image-mode): Adapt to + image-mode-current-vscroll and image-mode-current-hscroll being + alists now. - * find-lisp.el: Require dired. - (find-lisp-find-dired-internal): Do not call - `abbreviate-file-name' on DIR. +2008-01-29 Martin Rudalics -2005-11-10 Nick Roberts + * emacs-lisp/find-func.el (find-function-search-for-symbol): + Strip extension from .emacs.el to make sure symbol is searched + in .emacs too. - * progmodes/gud.el (gdb): Make gud-pp use user-defined command pp1. +2008-01-29 Tassilo Horn -2005-11-09 Nick Roberts + * doc-view.el (doc-view-mode): Use facilities below to + restore [vh]scroll when switching buffers. - * progmodes/gud.el (gud-menu-map): Ensure tool-bar is constant - when using the speedbar. - (gdb): New command gud-pp. - (gud-menu-map, gud-tool-bar-map): Put it on the tool bar. + * image-mode.el (image-mode-current-vscroll) + (image-mode-current-hscroll): New variables. + (image-set-window-hscroll, image-set-window-vscroll): New functions. + (image-forward-hscroll, image-next-line, image-bol, image-eol) + (image-bob, image-eob): Use them. + (image-reset-current-vhscroll): New function. + (image-mode): Make new variables buffer-local and reset [vh]scroll + on window configuration changes. -2005-11-09 Juri Linkov +2008-01-27 Nick Roberts - * replace.el (occur-excluded-properties): New defcustom. - (occur-1, occur-engine, occur-accumulate-lines): Use it. + * progmodes/gdb-ui.el (gdb-create-define-alist): Don't call + gdb-cpp-define-alist-program if file is nil (currently only + " *partial-output-..."). -2005-11-08 Jay Belanger +2008-01-27 Richard Stallman - * calc/calc-units.el (math-convert-units): Replace any composite - unit by its definition. + * allout.el: Many doc fixes. + (allout-encrypt-string): Fix error message. -2005-11-08 Lars Hansen +2008-01-26 Eli Zaretskii - * emacs-lisp/autoload.el (update-directory-autoloads): - Add obsolete function alias. + * progmodes/etags.el (tags-query-replace): Doc fix. -2005-11-07 Stefan Monnier +2008-01-25 Juanma Barranquero - * emacs-lisp/lisp-mode.el (lisp-mode-variables): Don't set - comment-indent-function. - (lisp-comment-indent): Replace by an alias for comment-indent-default. + * allout.el (allout-unload-function): New function. - * reveal.el (reveal-post-command): Rework the handling of - reveal-open-spots, so as to be more reliable. There were several - tricky corner cases where an open spot might be lost, or where - a closed spot might end up on the list of open spots. - Only reveal text that's ellipsised. +2008-01-25 Juanma Barranquero -2005-11-07 Carsten Dominik + * allout.el (allout-prefix-data): Doc fix. + (allout-show-current-subtree): Reflow docstring. + (allout-use-mode-specific-leader, allout-use-hanging-indents) + (produce-allout-mode-map, allout-overlay-interior-modification-handler) + (allout-next-heading, allout-previous-heading, allout-rebullet-heading) + (allout-rebullet-topic, allout-rebullet-topic-grunt, allout-kill-topic) + (allout-copy-topic-as-kill, allout-listify-exposed) + (allout-process-exposed, allout-encrypted-key-info) + (allout-update-passphrase-mnemonic-aids) + (allout-next-topic-pending-encryption) + (allout-tests-globally-true): Fix typos in docstrings. - * textmodes/org.el (org-export-as-html): Remove bogus (debug) form. +2008-01-23 Jason Rumney -2005-11-07 John Paul Wallington + * lpr.el (printer-name): Do not set on MS Windows. - * ibuffer.el (ibuffer): Search iconified frames too when - getting Ibuffer buffer's window. +2008-01-28 Michael Albinus -2005-11-06 Richard M. Stallman + * net/tramp.el (tramp-handle-shell-command): Use "/bin/sh -c" for + the command. - * progmodes/compile.el (compilation-internal-error-properties): - save-excursion around the computation of MARKER. +2008-01-28 Vinicius Jose Latorre -2005-11-06 Piet van Oostrum + * whitespace.el: Moved to obsolete dir. - * textmodes/flyspell.el (flyspell-external-point-words): - flyspell-get-word returns a list, not just a string. + * blank-mode.el: New version 9.2. Replace whitespace functions by + aliases in blank-mode. + (whitespace-buffer): New fun. + (whitespace-region): Alias for whitespace-buffer, because there is no + blank-region fun. + (whitespace-cleanup): Alias for blank-cleanup. + (whitespace-cleanup-region): Alias for blank-cleanup-region. -2005-11-06 John Paul Wallington +2008-01-27 Juanma Barranquero - * ibuffer.el (ibuffer): Search all visible frames when getting - Ibuffer buffer's window. + * server.el (server-log-time-function): Doc fix. + (server-buffer): Fix typo in docstring. -2005-11-07 Masatake YAMATO +2008-01-27 Martin Rudalics - * man.el (Man-reference-regexp): Accept spaces between - `Man-name-regexp' and `Man-section-regexp'. - (Man-apropos-regexp): New variable. - (Man-abstract-xref-man-page): Use value for `Man-target-string' - if available. - (Man-highlight-references, Man-highlight-references0): - Handle the case when `Man-arguments' includes "-k". - (Man-highlight-references0): Rename the argument `TARGET-POS' to - `TARGET'. `TARGET' can be a number, function or nil. + * view.el (view-buffer): Explain in doc-string why exit-action + should not be set to kill-buffer. -2005-11-06 Nick Roberts + * arc-mode.el (archive-extract): + * tar-mode.el (tar-extract): Use kill-buffer-if-not-modified as + exit-action when viewing the buffer. - * progmodes/gdb-ui.el (gdb-var-create-handler, gdb-var-delete) - (gdb-edit-value, gdb-speedbar-expand-node, gdb-get-create-buffer) - (gdb-breakpoints-mode, gdb-toggle-breakpoint, gdb-delete-breakpoint) - (gdb-goto-breakpoint, gdb-frames-mode, gdb-registers-mode) - (gdb-locals-mode, gdb-find-file-hook): Use buffer-local-value. - (gdb-send-item): Use buffer-local-value and simplify. +2008-01-27 Dan Nicolaescu -2005-11-05 Luc Teirlinck + * add-log.el (change-log-search-file-name): Work harder to find + the correct file name. + (change-log-find-file): Fix typo. + (change-log-start-entry-re): Move definition earlier. - * startup.el (command-line): Use `custom-reevaluate-setting' for - `global-font-lock-mode'. +2007-01-27 Jan Nieuwenhuizen - * font-core.el (global-font-lock-mode): Enable `global-font-lock-mode' - by default, except in batch mode or when the -D option is given. + * add-log.el (change-log-search-file-name, change-log-find-file): + New function. + (change-log-font-lock-keywords): Move file name matching ... + (change-log-file-names-re): ... here. New defconst. + (change-log-mode-map): New binding C-c C-f to change-log-find-file. - * emacs-lisp/easy-mmode.el (define-global-minor-mode): Pass all - specified keyword args on to `define-minor-mode'. Update docstring. +2008-01-27 Alan Mackenzie -2005-11-05 Romain Francoise + * progmodes/cc-awk.el, progmodes/cc-engine.el: Correct typos, + enhance comments. - * replace.el (occur-engine): Add marker at end of line, too. +2008-01-27 Michael Albinus -2005-11-04 Ken Manheimer + * net/tramp.el (tramp-compute-multi-hops): In case of su(do)? + methods, the host name must be a local host. - * pgg-pgp.el (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region) - (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric) - (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt) - (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE - argument to all these routines, so the passphrase can be managed - externally and passed in to the system. - (pgg-pgp-decrypt-region, pgg-pgp-sign-region): Use new name for - pgg-add-passphrase-to-cache function. +2008-01-27 Dan Nicolaescu - * pgg-pgp5.el (pgg-pgp5-encrypt-region, pgg-pgp5-decrypt-region) - (pgg-pgp5-encrypt-symmetric-region, pgg-pgp5-encrypt-symmetric) - (pgg-pgp5-encrypt, pgg-pgp5-decrypt-region, pgg-pgp5-decrypt) - (pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional PASSPHRASE - argument to all these routines, so the passphrase can be managed - externally and passed in to the system. - (pgg-pgp5-sign-region): Use new name of pgg-add-passphrase-to-cache - function. + * vc.el: Add TODO item about not defaulting to RCS. -2005-11-04 Dan Nicolaescu - - * font-lock.el: Don't deal with font-lock-face-attributes here, - move the code ... - - * startup.el (command-line): ... here. Use face-spec-set instead - of custom-declare-face. - - * faces.el (face-spec-set): Reset the face if spec is not nil. - -2005-11-04 Stefan Monnier - - * newcomment.el (comment-region-internal): Box more tightly in the - common case where there's no TAB in the boxed text. - -2005-11-04 Jan Dj,Ad(Brv - - * info.el (info-tool-bar-map): Use images prev-node, next-node and - up-node. - -2005-11-04 Ulf Jasper - - * net/newsticker.el: Commentary updated. Code formatting changed. - (newsticker-version): Change to "1.9". - (newsticker, newsticker-feed): Doc fix. - (newsticker-url-list): Doc fix. Add option "Weekly". - (newsticker-retrieval-interval): Add option "Weekly". - (newsticker-headline-processing): Doc fix. - (newsticker-auto-mark-filter): Remove. - (newsticker-auto-mark-filter-list): New. - (newsticker-layout, newsticker-sort-method): Doc fix. - (newsticker-hide-old-items-in-newsticker-buffer) - (newsticker-heading-format, newsticker-item-format) - (newsticker-desc-format): Doc fix. - (newsticker-show-all-rss-elements): Remove. - (newsticker-show-all-news-elements): New. - (newsticker-faces, newsticker-ticker): Doc fix. - (remove-from-invisibility-spec): Code formatting. - (newsticker--process-ids): New. - (newsticker-mode): Doc fix. - (newsticker-mode): Change mode-line-format. - (newsticker-start): Remove debug output. - (newsticker-start-ticker): Doc fix. Add autoload cookie. - (newsticker-w3m-show-inline-images): Code formatting. - (newsticker-next-item): Call `force-mode-line-update'. - (newsticker-previous-item): Call `force-mode-line-update'. - (newsticker-next-feed): Call `force-mode-line-update'. - (newsticker-previous-feed): Call `force-mode-line-update'. - (newsticker-mark-all-items-at-point-as-read): Code formatting. - (newsticker-show-old-items): Do not show descs. - (newsticker-hide-entry): Hide too much. - (newsticker-hide-entry, newsticker-show-entry) - (newsticker-toggle-auto-narrow-to-feed): Code formatting. - (newsticker-set-auto-narrow-to-feed): Update buffer immediately. - (newsticker-toggle-auto-narrow-to-item): Code formatting. - (newsticker-set-auto-narrow-to-item): Update buffer immediately. - (newsticker-running-p, newsticker-ticker-running-p): Autoload cookie. - (newsticker-get-news): Call `force-mode-line-update'. - Collect process ids. - (newsticker--sentinel): Change coding system handling. - Move image retrieval to new functions newsticker--get-logo-url-*. - Move feed parsing to new functions newsticker--parse-*. - Update list of process ids. - (newsticker--get-logo-url-atom-1.0, newsticker--get-logo-url-atom-0.3) - (newsticker--get-logo-url-rss-2.0, newsticker--get-logo-url-rss-1.0) - (newsticker--get-logo-url-rss-0.92, newsticker--get-logo-url-rss-0.91) - (newsticker--parse-atom-0.3, newsticker--parse-atom-1.0) - (newsticker--parse-rss-0.91, newsticker--parse-rss-0.92) - (newsticker--parse-rss-1.0, newsticker--parse-rss-2.0) - (newsticker--parse-generic-feed, newsticker--parse-generic-items): New. - (newsticker--decode-coding-string): Remove. - (newsticker--decode-numeric-entities): Check input. Format code. - (newsticker--remove-whitespace): Check input. - (newsticker--do-forget-preformatted): Doc fix. - (newsticker--decode-rfc822-date): Allow for missing time. - (newsticker--update-process-ids): New. - (newsticker--image-sentinel): Change comment. - (newsticker--image-read): Change error message. - (newsticker--imenu-goto): Doc fix. Show headline title. - (newsticker--buffer-set-uptodate): Call `force-mode-line-update'. - (newsticker--buffer-do-insert-text): Clean whitespace in - html-rendered headline title. Code formatting. - Call `newsticker--buffer-print-extra-elements'. - (newsticker--buffer-print-extra-element): Remove. - (newsticker--buffer-print-extra-elements): New. - (newsticker--buffer-do-print-extra-element): New. - (newsticker--buffer-insert-enclosure): Doc fix. Use MBytes for - large sizes. - (newsticker--run-auto-mark-filter) - (newsticker--do-run-auto-mark-filter): - Use `newsticker-auto-mark-filter-list'. - -2005-11-04 Ryan Yeske - - * net/rcirc.el: Use split-string OMIT-NULLS argument. - (rcirc-print): Force redisplay before running hooks. Do long - buffer truncation after making new text read-only. Deal with nil - text when decoding strings. If TARGET is nil, use either the - currently selected buffer, if it is an rcirc buffer and of the - same process or the process buffer. - (rcirc-mode): Remove header-line. Recompute short buffer names. - Initialize rcirc-buffer-alist here instead of rcirc-get-buffer-create. - (rcirc-short-buffer-name): Add variable. - (rcirc-kill-buffer-hook): Recompute short buffer names. - Remove nick from private channel. - (rcirc-send-input): Send command text to current-buffer. - Don't clear overlay arrow here. - (rcirc-short-buffer-name): Return a short buffer name. - (rcirc-update-short-buffer-names, rcirc-abbreviate) - (rcirc-rebuild-tree, rcirc-make-trees): Add functions to generate - buffer-name abbreviations. - (rcirc-kill-buffer-hook-1): Split to make debugging easier. - Do not touch nick-table when killing a parted channel. - (rcirc-window-configuration-change): Rename from rcirc-update-activity. - Clear arrow from current buffer if it is now hidden. - (rcirc-current-buffer): Add variable. - (rcirc-my-nick, rcirc-other-nick, rcirc-server) - (rcirc-nick-in-message, rcirc-prompt, rcirc-mode-line-nick): - Remove -face from names. - (rcirc-update-activity-string): Print "DND" when globally ignoring - activity. - (rcirc-ignore-buffer-activity-flag): Rename from - rcirc-ignore-channel-activity. - (rcirc-ignore-all-activity-flag): Doc fix. - (rcirc-channels): Remove variable. - (rcirc-kill-buffer-hook): - (rcirc-get-buffer-create): Add nick to private channel. - (rcirc-multiline-edit-submit): Remove tabs. - (rcirc-put-nick-channel, rcirc-channel-nicks): Look up nicks case - folded. - (rcirc-remove-nick-channel): Bug fix. - (rcirc-toggle-ignore-buffer-activity): Rename from - rcirc-toggle-ignore-channel-activity. - (rcirc-record-activity): Add buffers to the front of the list. - (rcirc-update-activity): Remove killed buffers from list. - (rcirc-process-server-response-1): Remove last argument if it is - null before calling handler. - (rcirc): Add "rcirc" defcustom prefix. - (rcirc-prompt): Simplify default prompt. - Use custom-initialize-default. - (rcirc-private-chats): Remove variable. - (rcirc-prompt): Change initialization. - (rcirc-version): Remove function. - (rcirc-id-string): Add constant. - (rcirc-last-buffer): Remove variable. - (rcirc-buffer-alist): Add variable. - (rcirc-connect): Update variable setup. - (rcirc-sentinel, rcirc-update-prompt): Use `rcirc-buffer-alist'. - (rcirc-trap-errors-flag): Rename from `rcirc-trap-errors' change - default. - (rcirc-handler-generic): Trigger activity. - (rcirc-send-message): Create the buffor of the target. - (rcirc-generate-new-buffer-name): Rename from `rcirc-get-buffer-name'. - (rcirc-get-buffer): Just return nil if there is no matching buffer. - (rcirc-multiline-edit-cancel): Remove function. - (rcirc-set-last-buffer): Remove function. - (rcirc-get-any-buffer): Add function. - (rcirc-join-channels): Don't print /join text. - (rcirc-toggle-ignore-channel-activity): Add and update echo area - messages. - (rcirc-cmd-ctcp): Use rcirc-send-string to send request. - (rcirc-handler-NOTICE): Recognize CTCP responses. - (rcirc-handler-332, rcirc-handler-332): Use a temp buffer for - constructing TOPIC string for buffers we are not JOINed. - (rcirc-handler-CTCP-response): Add handler. - (rcirc-multiline-edit-submit): Restore the window-configuration - before adjusting point. - (rcirc): Add customization group. - (rcirc-server, rcirc-port, rcirc-nick, rcirc-user-name) - (rcirc-user-full-name, rcirc-startup-channels-alist) - (rcirc-fill-flag, rcirc-fill-column, rcirc-fill-prefix) - (rcirc-ignore-all-activity-flag, rcirc-time-format) - (rcirc-input-ring-size, rcirc-read-only-flag) - (rcirc-buffer-maximum-lines, rcirc-authinfo-file-name) - (rcirc-auto-authenticate-flag, rcirc-prompt, rcirc-print-hooks): - Change defvar to defcustom. - (rcirc-update-prompt): Add optional ALL arg, which will update - prompts in all rcirc buffers. Regexp quote replacement text. - (rcirc-fill-column): Accept frame-width as a value. - (rcirc-set-changed): Add function. - (rcirc-next-active-buffer): Write more meaningful messages. - (rcirc-faces): Add customization group. - (rcirc-my-nick-face, rcirc-other-nick-face, rcirc-server-face) - (rcirc-nick-in-message-face, rcirc-prompt-face) - (rcirc-mode-line-nick-face): Move into rcirc-faces group. - (with-rcirc-process-buffer): Move before first usage. - (rcirc-debug-buffer): Rename from `rcirc-log-buffer'. - (rcirc-debug-flag): Rename from `rcirc-log-p'. - (rcirc-debug): Rename from `rcirc-log'. - (rcirc-format-response-string): Do not print `-' chars for a - NOTICE with no sender. Simplify output of server responses. - -2005-11-04 Henrik Enberg - - (rcirc-browse-url-map, rcirc-browse-url-at-point) - (rcirc-browse-url-at-mouse, rcirc-mangle-text): - Make urls mouse and RET clickable. - -2005-11-04 Henrik Enberg - - * mail/rmailout.el (rmail-output-to-rmail-file, rmail-output): Doc fix. - -2005-11-04 Ken Manheimer - - * pgg-pgp.el (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region) - (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric) - (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt) - (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE - argument to all these routines, so the passphrase can be managed - externally and passed in to the system. - (pgg-pgp-decrypt-region, pgg-pgp-sign-region): Use new name for - pgg-add-passphrase-to-cache function. - - * pgg-pgp5.el (pgg-pgp5-encrypt-region, pgg-pgp5-decrypt-region) - (pgg-pgp5-encrypt-symmetric-region, pgg-pgp5-encrypt-symmetric) - (pgg-pgp5-encrypt, pgg-pgp5-decrypt-region, pgg-pgp5-decrypt) - (pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional PASSPHRASE - argument to all these routines, so the passphrase can be managed - externally and passed in to the system. - (pgg-pgp5-sign-region): Use new name of pgg-add-passphrase-to-cache - function. + * server.el (server-process-filter): Check for non-nil before + calling file-directory-p. -2005-11-04 Edward O'Connor (tiny change) +2008-01-27 Alan Mackenzie - * net/goto-addr.el (goto-address-url-regexp): Remove `data:' URLs - from goto-address-url-regexp. + * progmodes/cc-vars.el (c-hanging-braces-alist): New element for + arglist-cont-nonempty. -2005-11-04 Carsten Dominik + * progmodes/cc-cmds.el (c-brace-newlines): Determine the newlines + for a brace with syntax arglist-cont-nonempty. - * textmodes/org.el (org-read-date, org-goto-calendar) - (org-recenter-calendar, org-agenda-goto-calendar): - Temporarily clear `calendar-move-hook'. + * progmodes/cc-styles.el (c-style-alist): Add elements for + arglist-cont-nonempty into 5 styles (gnu, ellemtel, linux, python, awk). -2005-11-04 Michael Kifer +2008-01-27 Thien-Thi Nguyen - * ediff-merg.el (ediff-merge-region-is-non-clash): - Return t, if not merging. + * button.el (define-button-type): Clarify type of NAME in docstring. - * ediff-util.el (ediff-previous-difference): Don't skip regions that - have merge clashes. +2008-01-26 Stefan Monnier -2005-11-04 YAMAMOTO Mitsuharu + * server.el (server-buffer): New const. + (server-log): New var. + (server-log): Use them. + (server-process-filter): (Try to) run the continuation in the same cwd + as the client's. - * mwheel.el (mouse-wheel-down-event, mouse-wheel-up-event): - Undo previous change. +2008-01-26 Alan Mackenzie - * startup.el (command-line): Use `custom-reevaluate-setting' for - mouse-wheel-down-event and mouse-wheel-up-event. Don't call - tty-register-default-colors on Mac. + * progmodes/cc-defs.el (c-save-buffer-state): + Bind buffer-file-name and buffer-file-truename to nil, to prevent + primitives generating "buffer is read only" messages. -2005-11-04 Nick Roberts +2008-01-20 Ulf Jasper - * progmodes/gdb-ui.el (gdb-buffer-type): Remove duplicate declaration. - (gdb-buffer-type): Make it automatically buffer local... - (gdb-get-create-buffer): ...and set it accordingly. - (gdb-frame-gdb-buffer, gdb-display-gdb-buffer): Make these - actually work. + * calendar/icalendar.el (icalendar-version): Increase to "0.17". + (icalendar-import-format): Doc fix. Allow function type. + (icalendar--read-element): Doc fix. + (icalendar--parse-summary-and-rest): Doc fix. Handle function + type icalendar-import-format. Make regexps non-greedy. + (icalendar--format-ical-event): Handle function type + icalendar-import-format. + (icalendar-import-format-sample): New function. -2005-11-03 Dan Nicolaescu +2008-01-26 Thien-Thi Nguyen - * font-lock.el (font-lock-warning-face): Use the more vivid red1, - not red. + * vc.el (vc-exec-after): For mode-line-process highlighting, if + `compile' is not available, fall back to font-lock-warning-face. -2005-11-04 Nick Roberts +2008-01-26 Phil Sung (tiny change) - * progmodes/gdb-ui.el (gud-watch): Use save-selected-window in - case GUD buffer is not visible. - (gdb-goto-breakpoint): Try to force display in source buffer. - (gdb-frame-gdb-buffer): Copy other similar functions. - (gdb-restore-windows): Don't display source if not asked for. - (gdb-assembler-buffer-name): Don't capitalise. + * wdired.el (wdired-get-filename): Change `(1+ beg)' to `beg' so + that the filename end is found even when the filename is empty. + Fixes error and spurious newlines when marking files for deletion. -2005-11-03 Richard M. Stallman +2008-01-26 Martin Rudalics - * wid-edit.el (key-sequence): New widget type. + * subr.el (find-tag-default): Simplify using exclusively + skip-syntax-backward/-forward. - * simple.el (set-mark-command-repeat-pop): New variable. - (set-mark-command): Only interpret plan C-@ after a pop as a pop - if set-mark-command-repeat-pop is true. +2008-01-26 Michael Albinus - * info.el (Info-fontify-node): Don't display extra "see" if there - already is one here. + * vc.el (vc-directory, vc-update-change-log): Remove check for + Tramp. Both functions work for it, though pretty slow + (`vc-directory'). Maybe the implementation can be optimized. - * mouse.el: Fix special handling of DEL after dragging a region: - (mouse-drag-region-1): Treat mouse-set-region like mouse-set-point. - (mouse-region-delete-keys): Change to defcustom. Add [backspace]. + * net/tramp.el (tramp-dissect-file-name): Raise an error when + Tramp 2.0 syntax is used. + Suggested by Trent W. Buck . - * mail/feedmail.el: Use insert-buffer-substring, not insert-buffer. +2008-01-26 Eli Zaretskii - * textmodes/ispell.el (ispell-command-loop): Change `i' description - not to assume it pertains to an affix. + * ls-lisp.el (ls-lisp-insert-directory): If -n switch is used, + invoke directory-files-and-attributes with last argument `integer' + instead of `string'. + (insert-directory): Add -n to the list of supported switches + mentioned in the doc string. - * textmodes/flyspell.el (flyspell-post-command-hook): - Bind deactivate-mark to prevent deactivation. +2008-01-26 Vinicius Jose Latorre -2005-11-03 Lars Hansen + * blank-mode.el: New version 9.1. Handle "long" line tail + visualization. Doc fix. + (blank-line-length): Rename to blank-line-column. + (blank-chars-value-list, blank-toggle-option-alist, blank-help-text): + Initialization fix. + (blank-replace-spaces-by-tabs): New fun. + (blank-cleanup, blank-cleanup-region, blank-color-on): Code fix. - * dired-x.el: Add menu bindings for dired-do-find-marked-files, - dired-do-relsymlink, dired-flag-extension, dired-mark-extension, - dired-mark-omitted, dired-do-relsymlink-regexp, dired-omit-mode. +2008-01-25 Richard Stallman -2005-11-03 Romain Francoise + * subr.el (add-hook): Implement `permanent-local-hook' property. - * net/eudcb-mab.el: Now part of GNU Emacs. Update FSF's address. - Update copyright years. + * loadhist.el (file-provides, file-requires): Push the filename right. -2005-11-03 Sam Steingold +2008-01-25 Martin Rudalics - * mwheel.el (mouse-wheel-down-event, mouse-wheel-up-event): - Use system-type instead of window-system because window-system is not - correctly defined during loadup. + * emacs-lisp/find-func.el (find-library): Wrap search for + library name in condition-case to avoid reporting a scan-error. -2005-11-02 Mark A. Hershberger +2008-01-25 Juanma Barranquero - * xml.el (xml-syntax-table): Allow xml.el to compile in XEmacs. - (xml-parse-tag): Join strings separated by a comment properly. + * server.el (server-process-filter): Don't force + the authentication string to be followed by "\n". -2005-11-02 Andreas Schwab +2008-01-25 Vinicius Jose Latorre - * emacs-lisp/byte-opt.el (byte-optimize-pure-func): Fix last fix. + * blank-mode.el: New version 9.0. New commands to clean up some blank + problems like trailing blanks. New faces and regexp for visualizing + the blank problems. Doc fix. + (blank-chars, blank-global-modes, blank-chars-value-list) + (blank-toggle-option-alist, blank-help-text): Initialization fix. + (blank-indentation, blank-empty, blank-space-after-tab): New faces. + (blank-indentation, blank-empty, blank-space-after-tab) + (blank-indentation-regexp, blank-empty-at-bob-regexp) + (blank-empty-at-eob-regexp, blank-space-after-tab-regexp): New options. + (blank-cleanup, blank-cleanup-region): New commands. + (blank-color-on): Code fix. -2005-11-02 Stefan Monnier +2008-01-25 Dan Nicolaescu - * emacs-lisp/byte-opt.el (string-to-syntax): Mark it as pure. - (byte-optimize-pure-func): Quote the eval'd value. + * ibuffer.el (ibuffer-default-sorting-mode): Add option to sort by + file name. + (ibuffer-mode-map): Add binding to sort by file name. + (ibuffer-filename/process-header-map): New variable. + (filename-and-process): Add a header that sorts by file name. + (ibuffer-mode): Mention sorting by file name. - * progmodes/perl-mode.el (perl-font-lock-special-syntactic-constructs): - Rename from perl-font-lock-syntactic-face-function. - Change the calling convention so it can be used as a font-lock MATCHER. - Do the parse-partial-sexp loop outselves. - (perl-font-lock-syntactic-keywords): Use it. - (perl-mode): Don't set font-lock-syntactic-face-function any more. + * ibuf-ext.el (filename/process): New sorter. -2005-11-02 Nick Roberts +2008-01-25 Sven Joachim - * progmodes/gdb-ui.el (gdb-mouse-until): Make it work in the - disassembly buffer too. - (gdb-exited): Remove overlay arrows when execution has finished. - (gdb-info-frames-custom, gdb-info-threads-custom) - (gdb-info-registers-custom): Don't add inappropriate text - properties if inferior is not active. + * view.el (kill-buffer-if-not-modified): Don't pass t to + buffer-modified-p. -2005-11-02 Glenn Morris +2008-01-24 Michael Albinus - * progmodes/fortran.el (fortran-blink-match): - Use `blink-matching-delay'. + * net/tramp.el (tramp-do-copy-or-rename-file): Flush the cache of + the source file in case of `rename'. + Reported by Pete Forman . -2005-11-02 John Mongan (tiny change) +2008-01-24 Ken Manheimer - * progmodes/f90.el (f90-match-end): Use `blink-matching-delay'. + * allout.el (allout-keybindings-list): In initial setting, express + meta-prefixed allout keys as vectors instead of strings, since the + string form is interpreted in some cases as composed key + modifiers, eg, accented keys. -2005-11-02 Lars Hansen + (allout-line-boundary-regexp): Clarify description. - * net/tramp.el (tramp-action-out-of-band): Handle scp message - "Permission denied". + (set-allout-regexp): Repair the expressions so that the formfeed + part is identified as one of the top-level groups, and is + included in all the forms, not just the -line-boundary-regexp one. -2005-11-01 Richard M. Stallman + (allout-prefix-data): Incorporate information from the various + allout regexp's formfeed alternative group, when present. - * textmodes/flyspell.el (flyspell-external-point-words): - Pass nil to flyspell-get-word. + (allout-write-file-hook-handler): Rectify mangling of the error + handling. It was broken in 2007-12-06T19:56:41Z!deego@gnufans.org, where an `error' + condition-case handler was apparently reformatted as if it was a + call to the error function. An apparent repair attempt in version + 1.101 situated the original body of the error handling code as + bogus condition-case handlers. I've returned to just about the + working code that was originally there, removing an unnecessary - + but benign - enclosing 'progn'. \(Automated or cursory code fixes + often aren't.) -2005-11-02 Kim F. Storm + (allout-region-active-p): Fallback to value of mark-active if + neither use-region-p nor region-active-p are present, for + compatability with current and recent emacs major releases. - * menu-bar.el (menu-bar-options-menu): Show "Shift Movement (CUA)" - item instead of "C-x/C-c/C-v (CUA)" if cua-enable-cua-keys is nil. +2008-01-24 Dan Nicolaescu -2005-11-01 Stefan Monnier + * textmodes/reftex-toc.el (reftex-toc-next, reftex-toc-previous) + (reftex-toc-restore-region): + * textmodes/reftex-index.el (reftex-index-initialize-phrases-buffer) + (reftex-index-phrases-apply-to-region): + * textmodes/ispell.el (ispell-word): + * progmodes/vhdl-mode.el (vhdl-keep-region-active): + * progmodes/pascal.el (pascal-mark-defun): + * progmodes/f90.el (f90-mark-subprogram, f90-indent-region) + (f90-fill-region): + * emulation/tpu-edt.el (tpu-set-mark): + * emulation/crisp.el (crisp-region-active): + * winner.el (winner-active-region): + * ansi-color.el (ansi-color-set-extent-face): Use featurep instead + of bound tests in order to resolve conditionals at compile time. - * calendar/cal-menu.el (date, event): Don't declare as dynamic-var. - (calendar-mouse-holidays, calendar-mouse-view-diary-entries) - (calendar-mouse-print-dates): Add optional `event' argument. - Update interactive-spec. - (calendar-mouse-cal-tex-menu, cal-tex-mouse-filofax): - Use `calendar-event-to-date' instead of `event'. +2008-01-24 Juanma Barranquero -2005-11-02 Masatake YAMATO + * delsel.el (delsel-unload-function): Don't use `remprop'; it is + not autoloaded, and we wouldn't want to load CL just to unload + delsel.el anyway. Suggested by Martin Rudalics . - * progmodes/ld-script.el (ld-script-builtins): - Add more words: "DATA_SEGMENT_ALIGN", "DATA_SEGMENT_END", - "DATA_SEGMENT_RELRO_END", "LENGTH", "ORIGIN", and "SEGMENT_START". - (auto-mode-alist): Accept .ld, .lds, ld.in and .lds.in. +2008-01-24 Martin Rudalics -2005-11-01 Romain Francoise + * delsel.el (delete-selection-pre-hook): Avoid clearing out + pre-command-hook when text is read-only. - * vc-sccs.el: Update copyright year. - * ezimage.el: Likewise. +2008-01-24 Thien-Thi Nguyen -2005-11-01 KOBAYASHI Yasuhiro (tiny change) + * vc.el (vc-process-filter): Do nothing if buffer not live. + (vc-diff-finish): Rename from vc-diff-sentinel. + No longer take REV1-NAME and REV2-NAME. + Instead, take BUFFER-NAME. Do nothing if buffer not live. + Don't do window resize if no window displays buffer. + (vc-diff-internal): Use vc-diff-finish. - * info.el (Info-fontify-node): Use `string-width' for fontifying - underlined titles. + * vc.el (vc-next-action): Fix two instances of "free-var file" bug: + In both cases, convert single call to one wrapped in dolist. -2005-11-01 Juri Linkov +2008-01-24 Dan Nicolaescu - * info.el (Info-fontify-node): Downcase node header keywords Node, - Prev, Next, Up before comparison. - (Info-history): Insert absolute directory name, and put invisible - property on it. + * vc.el: Add a TODO item about missing files. + (vc-exec-after): Add a tooltip to the new mode-line item. -2005-11-01 Juri Linkov +2008-01-24 Glenn Morris - * info.el (Info-file-supports-index-cookies): New variable. - (Info-find-node-2): Check makeinfo version for index cookie support. - (Info-index-nodes): Search for nodes with index cookies only when - Info-file-supports-index-cookies is t. Otherwise, search nodes - with "Index" in the node name. - (Info-index-node): Search index cookie in the current node only when - Info-file-supports-index-cookies is t. Otherwise, check the word - "Index" in the node name. - (Info-find-emacs-command-nodes): Remove code that searches nodes - with "Index" node name in the top menu. + * t-mouse.el (gpm-mouse-start): Declare as a function. -2005-11-01 Stefan Monnier +2008-01-23 Michael Albinus - * progmodes/scheme.el (scheme-mode-variables): Use the default - comment-indent-function. + * net/tramp.el (tramp-remote-process-environment): Set "LC_ALL=C". + (tramp-end-of-output): Add `tramp-rsh-end-of-line' into the regexp. + (tramp-find-shell, tramp-open-connection-setup-interactive-shell): + Don't send `tramp-rsh-end-of-line' additionally, when setting the + prompt. + (tramp-wait-for-output): Distinguish different prompt formats. + (tramp-get-test-nt-command): Don't check for "\n" in the prompt. + (tramp-local-host-p): Check whether temp directory is writable. - * faces.el (face-attribute): Handle the case where a face inherits from - a non-existent face. +2008-01-23 Dan Nicolaescu - * simple.el (eval-expression-print-format): Use lisp-readable syntax - for octal and hexa output, and merge the char into the paren. - (kill-new): Use push. - (copy-to-buffer): Use with-current-buffer. - (completion-setup-function): Move code in loop to remove redundancy. - (minibuffer-local-must-match-map): Don't add bindings that duplicate - those inherited from minibuffer-local-completion-map. + * vc.el: Add TODO items. - * savehist.el (savehist-mode) : - Use custom-set-minor-mode if available. - (savehist-mode) : Run the minor mode hook, set the custom state - and emit a message if applicable. +2008-01-23 Carsten Dominik -2005-11-01 Hrvoje Niksic + * replace.el (occur-mode-find-occurrence-hook): New hook that can + be used to reveal or highlight the location of a match. + (occur-mode-goto-occurrence, occur-mode-goto-occurrence-other-window) + (occur-mode-display-occurrence): Run `occur-mode-find-occurrence-hook'. - * savehist.el: Sync up to version 19. - (savehist-mode): New minor mode. - (savehist-file): Use ~/.emacs.d or ~/.xemacs if available. - (savehist-length): Remove (use history-length instead). - (savehist-file-modes): Rename from savehist-modes. - (savehist-save-hook, savehist-loaded): New vars. - (savehist-load): Use savehist-mode. Try to smooth up transition from - old format to new format. - (savehist-install): Allow savehist-autosave-interval to be nil. - (savehist-save): Run the new hook. Be more careful to only trim the - history variables. - (savehist-trim-history): New fun. Replaces savehist-process-for-saving. - (savehist-printable): Print into a buffer rather than char-by-char. +2008-01-23 Martin Rudalics -2005-11-01 John Wiegley + * progmodes/hideif.el (hide-ifdef-shadow): Add version number + for defcustom. + (hide-ifdef-shadow): Add version number for defface. - * iswitchb.el (iswitchb-define-mode-map): Re-enable the - toggle-ignore keybinding (C-a). The author said it had been - disabled much earlier due to a possible incompatibility, but after - many months of usage I have encountered no problems (and it is a - rather useful option, especially for switching to " *temp*"). +2008-01-23 Glenn Morris - * net/eudcb-mab.el (eudc-mab-query-internal): Add backend - support for OS/X's AddressBook, by calling out to the open source - program "contacts" (installable through Fink). + * textmodes/org.el (org-export-latex-cleaned-string): Fix declaration. - * net/eudc.el (eudc-expand-inline): If the - `eudc-multiple-match-handling-method' is set to `all', delete the - query string before inserting the query result. +2008-01-23 Dan Nicolaescu - * eshell/em-ls.el (eshell-do-ls): Add no-op support for --dired - flag, to prevent Eshell from using the system ls when - `eshell-ls-insert-directory' is in used. - (eshell-ls-insert-directory): Disable font-lock in directory - buffer so that Eshell's own fontification is seen. This broke - recently due to changes in font-lock, so this goes back to version - 21 behavior. + * progmodes/sh-script.el (sh-basic-offset): + * progmodes/cc-vars.el (c-syntactic-indentation) + (c-syntactic-indentation-in-macros): Mark as safe. -2005-11-01 Nick Roberts +2008-01-23 Richard Stallman - * progmodes/gdb-ui.el (gdb-use-inferior-io-buffer): New function. - (menu, toggle-gdb-use-inferior-io-buffer): Get rid of defadvice. - (gdb-many-windows): Doc fix. + * icomplete.el (icomplete-get-keys): + Look up KEYS using all maps in proper buffer. -2005-10-31 Romain Francoise +2008-01-23 Juanma Barranquero - * help-fns.el (describe-simplify-lib-file-name): Add autoload cookie. + * frame.el (display-mm-height, display-mm-width): + * whitespace.el (whitespace-check-leading-whitespace) + (whitespace-check-trailing-whitespace) + (whitespace-check-spacetab-whitespace) + (whitespace-check-indent-whitespace) + (whitespace-check-ateol-whitespace): + * progmodes/ada-xref.el (ada-convert-file-name): Fix typo in docstring. -2005-10-31 Dan Nicolaescu +2008-01-23 Dan Nicolaescu - * loadup.el: Load emacs-lisp/syntax, font-lock and jit-lock so - that global-font-lock-mode can be enabled by default. + * vc-arch.el (vc-arch-delete-rej-if-obsolete): Remove the + after-save-hook so that it is not called multiple times. - * font-lock.el (font-lock-keywords, font-lock-mode-internal) - (font-lock-add-keywords, font-lock-remove-keywords) - (font-lock-fontify-buffer): Remove autoload cookies. + * vc-svn.el (vc-svn-resolve-when-done): Likewise. - * jit-lock.el (jit-lock-register): Likewise. +2008-01-23 Eli Zaretskii - * emacs-lisp/syntax.el (syntax-ppss): Likewise. + * view.el (view-file-other-window, view-file-other-frame): + Don't kill the buffer if it is modified. Doc fixes. + (kill-buffer-if-not-modified): New function. + (view-file): Don't kill the buffer if it is modified. -2005-10-31 Nick Roberts + * progmodes/ebrowse.el (ebrowse-view-file-other-window): Delete. + (ebrowse-view/find-file-and-search-pattern): + Call view-file-other-window instead of ebrowse-view-file-other-window. + (ebrowse-view-file-other-frame): Don't call + current-window-configuration. Fix second argument in the call to + view-mode-enter. Doc fix. - * progmodes/gdb-ui.el (gdb-many-windows): Leave window configuration - intact if there is no gud-comint-buffer. +2008-01-23 Richard Stallman -2005-10-31 Luc Teirlinck + * subr.el (atomic-change-group): Prevent undo list truncation. - * progmodes/gud.el (gud-filter): Use comint-update-fence to delete - old prompt comint-prompt-read-only is t and GDB commands are - issued from tool bar etc. +2008-01-23 Dan Nicolaescu -2005-10-31 Masatake YAMATO + * files.el (safe-local-eval-forms): + Mark (add-hook 'write-file-hooks 'time-stamp) as safe. - * vc.el (vc-directory-exclusion-list): Add "{arch}". +2008-01-23 Nick Roberts -2005-10-30 Chong Yidong + * comint.el (comint-insert-input): Set point first. - * thumbs.el (thumbs-thumbsdir): Default to ~/.emacs.d/thumbs. - (thumbs-thumbsdir): Make .emacs.d if it does not exist. + * progmodes/gdb-ui.el (gdb-dequeue-input): Make doubly sure + session doesn't hang because gdb-pending-triggers is non-nil. + (gdb-frame-handler): Use buffer-file-name instead of + buffer-name in case of duplicate file names. -2005-10-30 Michael Albinus - - * net/tramp.el (tramp-chunksize): Escape parentheses in docstring - starting at beginning of line. Fontification is messed up when - `open-paren-in-column-0-is-defun-start' set to t. - Reported by John Paul Wallington . - -2005-10-30 Luc Teirlinck - - * comint.el (comint-send-input): Call `comint-update-fence' when - `comint-process-echoes' and `comint-prompt-read-only' are both - non-nil, to avoid leftover read-only newline. - -2005-10-30 Richard M. Stallman - - * textmodes/flyspell.el (flyspell-external-point-words): - Detect when WORD can't be checked properly because - flyspell-get-word finds just part of it, and move on. - - * textmodes/ispell.el (ispell-dictionary-alist-5): Add . as - boundarychar for Polish. - (ispell-dictionary-alist-4): Add . as boundarychar for Italian. - (ispell-dictionary-alist-3): Add . and @ as boundarychars for French. +2008-01-23 Dan Nicolaescu -2005-10-31 Nick Roberts + * progmodes/verilog-mode.el (verilog-mode-map): Don't bind C-M-a, + C-M-e and C-M-h for emacs, they work by default. + (verilog-emacs-features): Remove. + (verilog-setup-dual-comments, verilog-populate-syntax-table): + Remove. Move syntax table initialization ... + (verilog-mode-syntax-table): ... here. + (verilog-mode): Don't initialize the syntax table here. + (verilog-mark-defun): Only do something useful for XEmacs, Emacs + does not need it. - * progmodes/gdb-ui.el (gdb-tooltip-print-1): Fix regexp. - (gdb-registers-font-lock-keywords): Delete. - (gdb-registers-mode): Don't fontify. - (gdb-info-registers-custom): Use text properties instead as, in - future, changed register values will use font-lock-warning-face. - (gdb-local-font-lock-keywords): Rename to... - (gdb-locals-font-lock-keywords): ...for consistency. +2008-01-23 Wilson Snyder -2005-10-30 Andre Spiegel + * progmodes/verilog-mode.el (verilog-booleanp): New function for + backward compatibility. Replace all uses of booleanp with + verilog-booleanp. - * vc.el (vc-switch-backend): Better error message if the buffer is - not visiting a file under version control. +2008-01-23 Dan Nicolaescu - * vc-cvs.el (vc-cvs-delete-file): Commit the file after removing it. + * vc-hg.el (vc-hg-diff): Don't pass an empty string. -2005-10-29 Chong Yidong +2008-01-23 Wilson Snyder - * startup.el (command-line): Use ~/.emacs.d/init.el instead of - ~/.emacs.d/.emacs. + * progmodes/verilog-mode.el (top-level): Fix spacing. + (verilog-mode-version, verilog-mode-release-date): + Update version number. + (verilog-mode-release-emacs): New variable. + (compile-command, reporter-prompt-for-summary-p): + Define for byte compiler. + (verilog-startup-message-lines, verilog-startup-message-displayed) + (verilog-display-startup-message): Remove. + (verilog-highlight-p1800-keywords): Improve docstring. + (sigs-in, sigs-out, got-sig, got-rvalue, uses-delayed) + (vector-skip-list): Only defvar at compile time. + (verilog-highlight-translate-off, verilog-indent-level) + (verilog-indent-level-module, verilog-indent-level-declaration) + (verilog-indent-declaration-macros, verilog-indent-lists) + (verilog-indent-level-behavioral, verilog-indent-level-directive) + (verilog-cexp-indent, verilog-case-indent, verilog-auto-newline) + (verilog-auto-indent-on-newline, verilog-tab-always-indent) + (verilog-tab-to-comment, verilog-indent-begin-after-if) + (verilog-align-ifelse, verilog-minimum-comment-distance) + (verilog-auto-lineup, verilog-highlight-p1800-keywords) + (verilog-auto-endcomments, verilog-auto-read-includes) + (verilog-auto-star-expand, verilog-auto-star-save) + (verilog-library-flags, verilog-library-directories) + (verilog-library-files, verilog-library-extensions) + (verilog-active-low-regexp, verilog-auto-sense-include-inputs) + (verilog-auto-sense-defines-constant, verilog-auto-reset-widths) + (verilog-assignment-delay, verilog-auto-inst-vector) + (verilog-auto-inst-template-numbers, verilog-auto-input-ignore-regexp) + (verilog-auto-inout-ignore-regexp, verilog-auto-output-ignore-regexp) + (verilog-auto-unused-ignore-regexp, verilog-typedef-regexp): + Add safe-local-variable properties. + (verilog-statement-menu, verilog-company, verilog-re-search-forward) + (verilog-re-search-backward, verilog-error-regexp-add) + (verilog-end-block-re, verilog-emacs-features) + (verilog-populate-syntax-table, verilog-setup-dual-comments) + (verilog-type-font-keywords, verilog-inside-comment-p) + (electric-verilog-backward-sexp, verilog-backward-sexp) + (verilog-forward-sexp, verilog-font-lock-init, verilog-mode) + (electric-verilog-terminate-line, electric-verilog-semi) + (electric-verilog-tab, verilog-insert-1, verilog-insert-indices) + (verilog-generate-numbers, verilog-comment-region, verilog-label-be) + (verilog-beg-of-statement, verilog-in-case-region-p) + (verilog-in-struct-region-p, verilog-in-generate-region-p) + (verilog-in-fork-region-p, verilog-backward-case-item) + (verilog-set-auto-endcomments, verilog-get-expr) + (verilog-expand-vector-internal, verilog-surelint-off) + (verilog-batch-execute-func, verilog-calculate-indent) + (verilog-calc-1, verilog-calculate-indent-directive) + (verilog-leap-to-head, verilog-continued-line) + (verilog-backward-token, verilog-backward-syntactic-ws) + (verilog-forward-syntactic-ws, verilog-backward-ws&directives) + (verilog-forward-ws&directives, verilog-at-constraint-p) + (verilog-skip-backward-comments, verilog-indent-line-relative) + (verilog-do-indent, verilog-indent-comment, verilog-more-comment) + (verilog-pretty-declarations, verilog-pretty-expr) + (verilog-just-one-space, verilog-indent-declaration) + (verilog-get-completion-decl, verilog-goto-defun, verilog-showscopes) + (verilog-header, verilog-signals-combine-bus, verilog-read-decls) + (verilog-read-always-signals-recurse, verilog-read-instants) + (verilog-read-auto-template, verilog-set-define) + (verilog-read-defines, verilog-read-signals, verilog-getopt) + (verilog-is-number, verilog-expand-dirnames, verilog-modi-lookup) + (verilog-modi-cache-results, verilog-insert-one-definition) + (verilog-make-width-expression, verilog-delete-autos-lined) + (verilog-auto-save-check, verilog-auto-arg, verilog-auto-inst-port) + (verilog-auto-inst, verilog-auto-inst-param, verilog-auto-reg) + (verilog-auto-reg-input, verilog-auto-wire, verilog-auto-output) + (verilog-auto-output-every, verilog-auto-input, verilog-auto-inout) + (verilog-auto-inout-module, verilog-auto-sense, verilog-auto-reset) + (verilog-auto-tieoff, verilog-auto-unused, verilog-auto-ascii-enum) + (verilog-auto, verilog-sk-define-signal, verilog-mode-mouse-map) + (verilog-load-file-at-mouse, verilog-load-file-at-point) + (verilog-library-files): Cleanup spacing of )'s they should not be + on unique lines. Fix checkdoc warnings. -2005-10-29 Richard M. Stallman +2008-01-22 Glenn Morris - * replace.el (occur-mode-mouse-goto): Always go to other window. - (occur-mode-goto-occurrence): Always switch in same window. + * progmodes/hideif.el (hide-ifdef-initially, hide-ifdef-read-only) + (hide-ifdef-lines, hide-ifdef-shadow): Remove autoload cookies + from defcustoms. + (hide-ifdef-shadow): Remove autoload cookie from defface. - * simple.el (undo): Display message at end, not at start. + * vc.el (vc-diff-sentinel): Do not write a footer if there were + differences. - * emacs-lisp/timer.el (timer-activate, timer-activate-when-idle): - New arg REUSE-CELL. - (cancel-timer-internal): New function. - (timer-event-handler): Use cancel-timer-internal, - and pass the cell it returns to timer-activate... +2008-01-21 Reiner Steib + + * pcvs-defs.el (cvs-menu): Improve cvs-mode-find-file, + cvs-mode-find-file-other-window. Add cvs-mode-diff-yesterday and + manual entry. + +2008-01-21 Michael Albinus + + * net/dbus.el (dbus-ignore-errors): New macro. + (dbus-unregister-object): New defun. Moved from dbusbind.c. + (dbus-handle-event, dbus-list-activatable-names, dbus-list-names) + (dbus-list-queued-owners, dbus-get-name-owner, dbus-introspect) + (dbus-get-signatures): Apply `dbus-ignore-errors'. + +2008-01-21 Martin Rudalics + + * outline.el (outline-up-heading): Fix check for top level to + avoid infinite looping in hide-other. + +2008-01-21 Thien-Thi Nguyen + + * vc.el (vc-process-sentinel): After calling the previous + sentinel, do nothing if the process' buffer is not live. + +2008-01-21 Vinicius Jose Latorre + + * blank-mode.el: Fix a problem of cleaning blank faces when turning off + blank-mode in some buffers (like *info* buffers). Reported by Juanma + Barranquero . Eliminate `-face' suffix of all + blank-mode faces. Doc fix. New version 8.1. + (blank-turn-on, blank-turn-off): Replace (and CONDITION BODY) by (when + CONDITION BODY). + (blank-space-face): Face/option name replaced by blank-space. + (blank-hspace-face): Face/option name replaced by blank-hspace. + (blank-tab-face): Face/option name replaced by blank-tab. + (blank-newline-face): Face/option name replaced by blank-newline. + (blank-trailing-face): Face/option name replaced by blank-trailing. + (blank-line-face): Face/option name replaced by blank-line. + (blank-space-before-tab-face): Face/option name replaced by + blank-space-before-tab. + (blank-color-on, blank-color-off, blank-display-char-on): Fix code. + +2008-01-21 Juanma Barranquero + + * blank-mode.el (blank-style, blank-chars, blank-hspace-regexp) + (blank-space-regexp, blank-tab-regexp, blank-trailing-regexp) + (blank-space-before-tab-regexp, blank-global-modes, blank-mode) + (global-blank-mode): Doc fixes. + (blank, blank-space-face, blank-hspace-face, blank-tab-face) + (blank-newline-face, blank-trailing-face, blank-line-face) + (blank-space-before-tab-face, blank-display-mappings) + (blank-chars-value-list, blank-style-value-list, blank-toggle-options) + (global-blank-toggle-options, blank-help-text, blank-interactive-char) + (blank-turn-on, blank-turn-off, blank-color-on, blank-color-off): + Fix typos in docstrings. - * jit-lock.el (jit-lock-function, jit-lock-stealth-fontify) - (jit-lock-deferred-fontify, jit-lock-context-fontify) - (jit-lock-after-change): Test memory-full. +2008-01-21 Juanma Barranquero -2005-10-29 Ken Manheimer + * server.el (server-log-time-function): New variable. + (server-log): Use it. - * pgg-gpg.el (pgg-gpg-select-matching-key): Fix: look at the right - part of the decoded armor to find the key-identifier. - (pgg-gpg-lookup-key-owner): New function to return the - human-readable identifier of a key owner. - (pgg-gpg-lookup-id-from-key-owner): Make it easy to identify the - key itself. - (pgg-gpg-decrypt-region): Prompt with the key owner (rather than - the key value) if we have a key and can match it against a secret - key. Also, added a note pointing out fact that the prompt only - indicates the first matching key. - - * pgg.el (pgg-decrypt): Passing along PASSPHRASE in call to - pgg-decrypt-region. - (pgg-pending-timers): A new hash for tracking the passphrase cache - timers, so that new ones supercede old ones. - (pgg-add-passphrase-to-cache): Rename from - `pgg-add-passphrase-cache' to reduce confusion (all callers - changed). Modified to cancel old timers when new ones are added. - (pgg-remove-passphrase-from-cache): Rename from - `pgg-remove-passphrase-cache' to reduce confusion (all callers - changed). Modified to cancel old timers when their keys are - removed from the cache. - (pgg-cancel-timer): In Emacs, an alias for cancel-timer; in - XEmacs, an indirection to delete-itimer. - (pgg-read-passphrase-from-cache, pgg-read-passphrase): - Extract pgg-read-passphrase-from-cache from pgg-read-passphrase so - users can only check cache without risk of prompting. Correct bug in - notruncate behavior. - (pgg-read-passphrase-from-cache, pgg-read-passphrase) - (pgg-add-passphrase-cache, pgg-remove-passphrase-cache): - Add informative docstrings. - (pgg-decrypt): Convey provided passphrase in subordinate call to - pgg-decrypt-region. - - * pgg.el (pgg-encrypt-region, pgg-encrypt-symmetric-region) - (pgg-encrypt-symmetric, pgg-encrypt, pgg-decrypt-region) - (pgg-decrypt, pgg-sign-region, pgg-sign): Add optional - `passphrase' argument, so the passphrase can be managed externally - and then passed in to the system. - - * pgg.el (pgg-read-passphrase, pgg-add-passphrase-cache) - (pgg-remove-passphrase-cache): Add optional NOTRUNCATE argument, - so the passphrase cache can be used reliably with identifiers - besides a pgp packet's key id. - - * pgg-gpg.el (pgg-pgp-encrypt-region) - (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric) - (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt) - (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE - argument to all these routines, so the passphrase can be managed - externally and passed in to the system. - - * pgg-gpg.el (pgg-gpg-possibly-cache-passphrase): Add optional - `notruncate' argument, so the passphrase cache can be used - reliably with identifiers besides a pgp packet's key id. - -2005-10-29 Sascha Wilde - - * pgg-gpg.el (pgg-gpg-encrypt-symmetric-region): New function for - symmetric encryption. - (pgg-gpg-symmetric-key-p): New function to check for an symmetric - encrypted session key. - (pgg-gpg-decrypt-region): When decrypting a symmetric encrypted - message ask for the passphrase in a proper way. - - * pgg.el (pgg-encrypt-symmetric, pgg-encrypt-symmetric-region): - New user commands for symmetric encryption. - -2005-10-29 Roland Winkler - - * textmodes/conf-mode.el (conf-assignment-sign) - (conf-assignment-regexp): Fix docstrings. - (conf-mode-initialize): New function. - (conf-mode): Remove optional args. Use delay-mode-hooks to - recognize recursive calls. - (conf-unix-mode, conf-windows-mode, conf-javaprop-mode) - (conf-space-mode, conf-colon-mode, conf-ppd-mode) - (conf-xdefaults-mode): Use define-derived-mode and - conf-mode-initialize. - -2005-10-29 Romain Francoise - - * help-fns.el (describe-simplify-lib-file-name): Fix regexp. - -2005-10-29 Ken Manheimer - - * pgg-gpg.el (pgg-gpg-select-matching-key): Fix: look at the right - part of the decoded armor to find the key-identifier. - (pgg-gpg-lookup-key-owner): New function to return the - human-readable identifier of a key owner. - (pgg-gpg-lookup-id-from-key-owner): Make it easy to identify the - key itself. - (pgg-gpg-decrypt-region): Prompt with the key owner (rather than - the key value) if we have a key and can match it against a secret - key. Also, added a note pointing out fact that the prompt only - indicates the first matching key. - - * pgg.el (pgg-decrypt): Passing along PASSPHRASE in call to - pgg-decrypt-region. - (pgg-pending-timers): A new hash for tracking the passphrase cache - timers, so that new ones supercede old ones. - (pgg-add-passphrase-to-cache): Rename from - `pgg-add-passphrase-cache' to reduce confusion (all callers - changed). Modified to cancel old timers when new ones are added. - (pgg-remove-passphrase-from-cache): Rename from - `pgg-remove-passphrase-cache' to reduce confusion (all callers - changed). Modified to cancel old timers when their keys are - removed from the cache. - (pgg-cancel-timer): In Emacs, an alias for cancel-timer; in - XEmacs, an indirection to delete-itimer. - (pgg-read-passphrase-from-cache, pgg-read-passphrase): - Extract pgg-read-passphrase-from-cache from pgg-read-passphrase so - users can only check cache without risk of prompting. Correct bug in - notruncate behavior. - (pgg-read-passphrase-from-cache, pgg-read-passphrase) - (pgg-add-passphrase-cache, pgg-remove-passphrase-cache): - Add informative docstrings. - (pgg-decrypt): Convey provided passphrase in subordinate call to - pgg-decrypt-region. - -2005-10-20 Ken Manheimer - - * pgg.el (pgg-encrypt-region, pgg-encrypt-symmetric-region) - (pgg-encrypt-symmetric, pgg-encrypt, pgg-decrypt-region) - (pgg-decrypt, pgg-sign-region, pgg-sign): Add optional - `passphrase' argument, so the passphrase can be managed externally - and then passed in to the system. - - * pgg.el (pgg-read-passphrase, pgg-add-passphrase-cache) - (pgg-remove-passphrase-cache): Add optional NOTRUNCATE argument, - so the passphrase cache can be used reliably with identifiers - besides a pgp packet's key id. +2008-01-21 Glenn Morris - * pgg-gpg.el (pgg-pgp-encrypt-region) - (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric) - (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt) - (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE - argument to all these routines, so the passphrase can be managed - externally and passed in to the system. + * progmodes/hideif.el: Move defcustoms and defface to start of file. - * pgg-gpg.el (pgg-gpg-possibly-cache-passphrase): Add optional - `notruncate' argument, so the passphrase cache can be used - reliably with identifiers besides a pgp packet's key id. + * textmodes/org.el (org-entry-properties): Let-bind `clocksum'. -2005-10-29 Sascha Wilde +2008-01-21 Juanma Barranquero - * pgg-gpg.el (pgg-gpg-encrypt-symmetric-region): New function for - symmetric encryption. - (pgg-gpg-symmetric-key-p): New function to check for an symmetric - encrypted session key. - (pgg-gpg-decrypt-region): When decrypting a symmetric encrypted - message ask for the passphrase in a proper way. + * textmodes/org.el (org-unmodified, org-cycle-emulate-tab) + (org-descriptive-links, org-link-file-path-type) + (org-remember-use-refile-when-interactive) + (org-agenda-skip-timestamp-if-done, org-agenda-scheduled-leaders) + (org-export-ascii-bullets, org-agenda-deadline-faces) + (turn-on-orgstruct++, orgtbl-to-texinfo, org-mhe-get-header) + (org-batch-agenda, org-batch-agenda-csv, org-fix-agenda-info) + (org-kill-note-or-show-branches): Fix typos in docstrings. - * pgg.el (pgg-encrypt-symmetric, pgg-encrypt-symmetric-region): - New user commands for symmetric encryption. +2008-01-20 Thien-Thi Nguyen -2005-10-28 Bill Wohler + * vc.el (vc-process-sentinel): Set mode-line-process. + (vc-exec-after): Likewise, for the `run' process status. - * help-mode.el (help-url): New button type. Calls browse-url. - (help-xref-url-regexp): New regexp to recognize URLs in docstring. - Similar to Info nodes: URL `url'. - (help-make-xrefs): Create help-url buttons for - help-xref-url-regexp matches. +2008-01-20 Stefan Monnier -2005-10-29 Nick Roberts + * ibuffer.el (ibuffer-mode): Fix last change. - * tool-bar.el (tool-bar-add-item-from-menu) - (tool-bar-local-item-from-menu): Fix doc strings. +2008-01-20 Dan Nicolaescu -2005-10-28 Romain Francoise + * vc-hg.el (vc-hg-registered): + * vc-svn.el (vc-svn-registered): Make it work for non-existent files. - * ldefs-boot.el: Update. +2008-01-20 Martin Rudalics - * subr.el (locate-library): Move from help-fns.el. - * help-fns.el (locate-library): Move to subr.el. + * repeat.el (repeat-undo-count): New variable. + (repeat): For self-insertions make undo boundary only after 20 + repetitions. Inhibit point recording unless repeat-repeat-char is nil. -2005-10-28 Richard M. Stallman +2008-01-19 Reiner Steib - * net/tramp.el (tramp-completion-mode): defvar moved up. + * net/imap.el (imap-ping-server): New variable. + (imap-opened): On add extra ping if imap-ping-server is non-nil. + (imap-ping-server): Minor doc string fixes. - * emacs-lisp/easymenu.el (easy-menu-change): Doc fix. +2008-01-19 Knut Anders Hatlen (tiny change) - * tool-bar.el (tool-bar-mode): Delete autoload cookie. + * net/imap.el (imap-ping-server): New function. + (imap-opened): Call imap-ping-server. - * files.el (find-file-noselect): Use %d to format large file size. +2008-01-20 Glenn Morris - * bindings.el (mode-line-format): Add %e. + * progmodes/python.el: Quote all calls to "auxiliary skeleton"s to + prevent infloops. - * loadup.el ("facemenu"): Load unconditionally. - ("image", "international/fontset", "dnd", "mwheel", "tool-bar"): - ("x-dnd"): Load, when appropriate. +2008-01-20 Martin Svenson (tiny change) - * startup.el (command-line): Call before-init-hook earlier. - Warn about some bad characters in -u user name. + * progmodes/python.el (python-imports): Default to "None". - * textmodes/flyspell.el (flyspell-large-region): Pass -t if Tex file. - (flyspell-external-point-words): Error if misspelled word is not found. - Set flyspell-large-region-beg at end of word. +2008-01-19 Tom Tromey + + * vc-svn.el (vc-svn-after-dir-status): New function. + (vc-svn-dir-status): Run svn asynchronously. + +2008-01-19 Martin Rudalics + + * progmodes/hideif.el (hide-ifdef-shadow): New option. + (hide-ifdef-shadow): New face. + (hide-ifdef-toggle-shadowing): New function to toggle between + shadowing and making code invisible. + (hide-ifdef-mode-submap): Add binding for hide-ifdef-toggle-shadowing. + (hide-ifdef-mode-menu): Add entry for hide-ifdef-toggle-shadowing. + (hide-ifdef-region-internal): Give new overlay hide-ifdef + property. Shadow text when hide-ifdef-shadow is non-nil. + (hif-show-ifdef-region): Remove overlays with hide-ifdef property set. + (hif-hide-line): Use when instead of if. + (hide-ifdef-initially, hide-ifdef-read-only, hide-ifdef-lines): + Remove unneeded * from doc-strings. + +2008-01-19 Stefan Monnier + + * doc-view.el (doc-view-goto-page): Don't move point any more, now that + the hscroll behavior was fixed. + (doc-view-mode): Disable auto-hscroll-mode. + +2008-01-18 Tom Tromey + + * vc-svn.el (vc-svn-dir-status): New function. + +2008-01-18 Dan Nicolaescu + + * vc.el: Make vc-status asynchronous. + (vc-update-vc-status-buffer): New function broken out of ... + (vc-status-refresh): ... here. Pass vc-update-vc-status-buffer to + the dir-status backend function. + + * vc-hg.el (vc-hg-dir-status): Compute the status asynchronously. + Move the output processing to ... + (vc-hg-after-dir-status): ... here. Call the function passed as + an argument with the results. + +2008-01-18 Stefan Monnier + + * doc-view.el (doc-view-pdf/ps->png): Make sure we a have a valid cwd. + (doc-view-insert-image): Do something if the image is missing. + (doc-view-mode): Don't use file-remote-p. + +2008-01-18 Bastien Guerry + + * textmodes/org-export-latex.el (org-export-latex-cleaned-string): Fix. + (org-export-latex-special-chars): Convert "..." in \ldots + and skip tables. + (org-export-latex-fontify-headline): Change parameter name. + (org-export-as-latex): Handle export of subtrees. + (org-export-latex-make-header): New argument TITLE. + (org-export-latex-content): New argument EXCLUDE-LIST. + (org-list-parse-list): New name for org-export-latex-parse-list. + (org-export-latex-make-header): New name for + org-export-latex-make-preamble. + (org-list-to-generic): New name of org-export-list-to-generic. + (org-list-to-latex): New name of org-export-list-to-latex. + (org-list-item-begin, org-list-end, org-list-insert-radio-list) + (org-list-send-list, org-list-to-texinfo) + (org-list-to-html): New functions. + (org-export-latex-tables-column-borders) + (org-export-latex-default-class, org-export-latex-classes) + (org-export-latex-classes-sectioning) + (org-list-radio-list-templates): New options. + (org-export-latex-header): New variable. + (org-latex-entities): New constant. + (org-export-latex-default-sectioning, org-export-latex-preamble) + (org-export-latex-prepare-text-option) + (org-export-latex-get-sectioning): Remove. + +2008-01-18 Carsten Dominik + + * textmodes/org-publish.el (org-publish-current-project): + Fix bug with forcing publication. + + * textmodes/org.el (org-export-with-special-strings): New option. + (org-export-html-convert-special-strings): New function. + (org-html-do-expand): `org-export-html-convert-special-strings' + added to the list of conversion. + (org-infile-export-plist, org-get-current-options): Add support + for "-" in the #+OPTION line to let user switch on/off special + strings conversion. + (org-export-plist-vars): New :html-table-tag property. + (org-export-as-html, org-format-org-table-html) + (org-format-table-table-html) Use the :html-table-tag property + instead of the `org-export-html-table-tag' global value. + (org-additional-option-like-keywords): Add "TBLFM". + (org-entry-properties): Include the CLOCKSUM special property. + (org-columns-edit-value): Do not allow to edit the special + CLOCKSUM property. + (org-flag-drawer): Use the original value of `outline-regexp'. + (org-remember-handler): Add invisible-ok flag to call to + `org-end-of-subtree'. + (org-agenda-highlight-todo): Respect + `org-agenda-todo-keyword-format'. + (org-agenda-todo-keyword-format): New option. + (org-infile-export-plist): No restriction while searching for options. + (org-remember-handler): Remove comments at the end of the buffer. + (org-remember-use-refile-when-interactive): New option. + (org-table-sort-lines): Make sure sorting works on link + descritions only, and ignores the link. + (org-sort-entries-or-items): Make sure the end of the subtree is + included. + (org-refile-use-outline-path): New allowed values `file' and + `full-file-path'. + (org-get-refile-targets): Respect new values for + `org-refile-use-outline-path'. + (org-agenda-get-restriction-and-command): DEL goes back to initial list. + (org-export-as-xoxo): Restore point when done. + (org-open-file): Allow multiple %s in command. + (org-clock-in-switch-to-state): New option. + (org-first-list-item-p): New function. + (org-last-remember-storage-locations): New variable. + (org-get-refile-targets): Interpret the new maxlevel setting. + (org-refile-targets): New option `:maxlevel'. + (org-copy-subtree): Include empty lines before but not after subtree. + (org-back-over-empty-lines, org-skip-whitespace): New functions. + (org-move-item-down, org-move-item-up): Include empty lines before + but not after item. + (org-first-sibling-p): New function. + (org-remember-apply-template): Defaults, completions and history + for template prompts. Also, interpret new `%!' escape. + (org-context-choices): New constant. + (org-bound-and-true-p): New macro. + (org-imenu-depth): New option. + (org-imenu-markers): New variable. + (org-imenu-new-marker, org-imenu-get-tree) + (org-speedbar-set-agenda-restriction): New functions. + (org-agenda-set-restriction-lock) + (org-agenda-remove-restriction-lock) + (org-agenda-maybe-redo): New functions. + (org-agenda-restriction-lock): New face. + (org-agenda-restriction-lock-overlay) + (org-speedbar-restriction-lock-overlay): New variables. + (org-open-at-point): Remove obsolete way to do redirection in + shell links. + (org-imenu-and-speedbar): New customization group. + (org-entry-properties): Return keyword-less time strings. + (org-clock-heading-function): New option. + (org-clock-in): Use `org-clock-heading-function'. + (org-calendar-holiday): Try to use `calendar-check-holidays' + instead of the obsolete `check-calendar-holidays'. + (org-export-html-special-string-regexps): New constant. + (org-massive-special-regexp): New variable. + (org-compute-latex-and-specials-regexp) + (org-do-latex-and-special-faces): New functions. + (org-latex-and-export-specials): New face. + (org-highlight-latex-fragments-and-specials): New option. + (org-link-escape-chars): Use characters instead of strings. + (org-link-escape-chars-browser, org-link-escape) + (org-link-unescape): Use characters instead of strings. + (org-export-html-convert-sub-super, org-html-do-expand): Check for + protected text. + (org-emphasis-alist): Additional `verbatim' flag. + (org-set-emph-re): Handle the verbatim flag and compute + `org-verbatim-re'. + (org-cleaned-string-for-export): Protect verbatim elements. + (org-verbatim-re): New variable. + (org-hide-emphasis-markers): New option. + (org-additional-option-like-keywords): Add new keywords. + (org-get-entry): Rename from `org-get-cleaned-entry'. + (org-icalendar-cleanup-string): New function for quoting icalendar text. + (org-agenda-skip-scheduled-if-done): New option. + (org-agenda-get-scheduled, org-agenda-get-blocks): Use + `org-agenda-skip-scheduled-if-done'. + (org-prepare-agenda-buffers): Allow buffers as arguments. + (org-entry-properties): Add CATEGORY as a special property. + (org-use-property-inheritance): Allow a list of properties as a value. + (org-eval-in-calendar): No longer update the prompt. + (org-read-date-popup-calendar): Rename from + `org-popup-calendar-for-date-prompt'. + (org-read-date-display-live): New variable. + (org-read-date-display): New function. + (org-read-date-analyze): New function. + (org-remember-apply-template): Define `remember-finalize' if it is + not yet defined. + (org-remember-insinuate): New function. + (org-read-date-prefer-future): New option. + (org-read-date): Respect the setting of + `org-read-date-prefer-future'. Use `org-read-date-analyze'. + (org-set-font-lock-defaults): Use `org-archive-tag' instead of a + hardcoded string. + (org-remember-apply-template): Use `remember-finalize' instead of + `remember-buffer'. + (org-columns-compute, org-column-number-to-string) + (org-columns-uncompile-format, org-columns-compile-format) + (org-columns-compile-format): Handle printf format specifier. + (org-columns-new, org-column-number-to-string) + (org-columns-uncompile-format, org-columns-compile-format): + Support for new currency summary type. + (org-tree-to-indirect-buffer): Do not kill old buffer when + `org-indirect-buffer-display' is `new-frame'. + (org-indirect-buffer-display): Document that `new-frame' leads to + indiret buffer proliferation. + (org-agenda-list): Use `org-extend-today-until'. + (org-extend-today-until): New option. + (org-format-org-table-html): Use lower-case for tag. + (org-agenda-execute): New command. + (org-agenda-mode-map): Keybindings of "g" "G", "e" modified. + (org-select-remember-template): New function. + (org-remember-apply-template): Use `org-select-remember-template'. + (org-go-to-remember-target): New function. + +2008-01-18 Dan Nicolaescu + + * vc.el: Add a TODO note about vc-state. + (vc-next-action): Register 'unregistered and 'ignored files. + Use when and unless instead of if where appropriate. + (vc-start-entry): Fix typo. + (vc-status): Autoload it. + +2008-01-18 Glenn Morris + + * ffap.el (ffap-alist): Remove space from RFC regexp. -2005-10-28 Andreas Schwab +2008-01-18 Richard Stallman - * view.el (View-revert-buffer-scroll-page-forward): - Use view-page-size-default. + * custom.el (custom-theme-recalc-face): Use face-spec-set rather + than face-spec-recalc. + +2008-01-18 Glenn Morris + + * ibuffer.el (ibuffer-mode): Fix typo in previous change. + +2008-01-17 Vinicius Jose Latorre + Miles Bader + + * blank-mode.el: New file. Minor mode to visualise (HARD) SPACE, + TAB, NEWLINE. Miles Bader wrote the original code + for handling display table (via visws.el package), his code was + modified, but the main idea was kept. + +2008-01-17 Glenn Morris + + * ibuf-ext.el (ibuffer-auto-mode, ibuffer-save-filter-groups) + (ibuffer-save-filters): Remove calls to deleted + ibuffer-update-mode-name. + +2008-01-16 Martin Rudalics + + * longlines.el (longlines-mode, longlines-show-region) + (longlines-unshow-hard-newlines): Bind buffer-file-name and + buffer-file-truename to nil while modifying buffer. + + * cus-edit.el (custom-reset-standard-variables-list) + (custom-reset-standard-faces-list): New variables. + (custom-reset-standard-save-and-update): New function. + (Custom-save): Apply custom-mark-to-save before and + custom-state-set-and-redraw after saving options. + (Custom-reset-standard): Apply custom-mark-to-reset-standard to + options and call custom-reset-standard-save-and-update. + (custom-variable, custom-face, custom-group): Provide new + entries for custom-mark-to-save, custom-mark-to-reset-standard, + and custom-state-set-and-redraw. + (custom-variable-mark-to-save) + (custom-variable-state-set-and-redraw) + (custom-variable-mark-to-reset-standard) + (custom-face-mark-to-save, custom-face-state-set-and-redraw) + (custom-face-mark-to-reset-standard) + (custom-group-mark-to-save, custom-group-state-set-and-redraw) + (custom-group-mark-to-reset-standard): New functions. + (custom-variable-save): Move save, state-set, and redraw + functionality to custom-variable-mark-to-save. + (custom-face-save): Move save, state-set, and redraw + functionality to custom-face-mark-to-save. + (custom-group-save): Move save, state-set, and redraw + functionality to custom-group-mark-to-save. + (custom-variable-reset-standard, custom-face-reset-standard) + (custom-group-reset-standard): Move save, state-set, and redraw + functionality to custom-reset-standard-save-and-update. + + (custom-buffer-create-internal): Fix text in verbose help. + (custom-face-value-create): Indent doc-strings of faces like + those of variables. + +2008-01-16 Stefan Monnier + + * server.el (server-process-filter): Replace lineno and columnnno + which defaulted to 1&0 with filepos which defaults to nil. + (server-goto-line-column): Only receive the filepos. + Only move if filepos is non-nil. + (server-visit-files): Slight restructure to consolidate two calls to + server-goto-line-column into just one. + + * nxml/nxml-mode.el (nxml-mode): Use mode-line-process to indicate + the use of degraded mode. + (nxml-degrade): Don't change mode-name. + + * nxml/rng-nxml.el (rng-nxml-mode-init): + Don't overwrite mode-line-process. + + * ibuffer.el (mode): Pass the buffer to format-mode-line. + (ibuffer-update-mode-name): Remove. + (ibuffer-redisplay, ibuffer-update, ibuffer-mode): Don't call it. + (ibuffer-mode): Use mode-line-process instead. + + * ibuf-ext.el (ibuffer-auto-update-changed, ibuffer-auto-mode): + Use derived-mode-p. + (ibuffer-mark-by-mode-regexp): Pass the buffer to format-mode-line. + + * help.el (describe-mode): Pass the right buffer to format-mode-line. -2005-10-28 Juri Linkov +2008-01-16 Glenn Morris - * international/quail.el (quail-get-current-str): Translate last - raw character for deterministic input methods. + * comint.el (comint-regexp-arg): Fix no-input case. -2005-10-27 Jay Belanger +2008-01-16 Dan Nicolaescu - * calc/calc-ext.el: Add functions to autoloads. - (math-identity-matrix-p, math-ident-row-p): New functions. + * smerge-mode.el (smerge-start-session): Rename from smerge-auto. + * pcvs.el (cvs-revert-if-needed): + * vc.el (vc-maybe-resolve-conflicts): Rename callers. - * calc/calc-arith.el (calc-mul-symb-fancy): Add checks for - multiplication by an identity matrix; don't turn multiplication by - an inverse matrix into division. - (math-div-symbol-fancy): Replace division by matrices with - multiplication by inverse. + * vc-svn.el (vc-svn-find-file-hook): + * vc-arch.el (vc-arch-find-file-hook): Undo previous change. - * calc/calc-misc.el (calcFunc-inv): Check for symbolic matrices. +2008-01-16 Ulf Jasper - * calc/calc-alg.el (calcFunc-writeoutpower, math-write-out-power) - (calc-writeoutpower): New functions. + * calendar/icalendar.el (icalendar-version): Increase to 0.16. + (icalendar-export-file, icalendar-import-file): + Restore significant trailing whitespace in `interactive' prompts. -2005-10-27 Romain Francoise +2008-01-16 Tom Tromey - * replace.el (occur-engine): Include colon in mouse-face highlight. + * calendar/icalendar.el (icalendar--convert-tz-offset) + (icalendar--parse-vtimezone, icalendar--convert-all-timezones) + (icalendar--find-time-zone): New functions. + (icalendar--decode-isodatetime): Add `zone' argument, passed to + `decode-time'. Doc fix. + (icalendar--convert-ical-to-diary): Compute zone-map. + Pass timezone to icalendar--decode-isodatetime. - * dired-x.el: Change Maintainer field. +2008-01-16 Alan Mackenzie -2005-10-26 Chong Yidong + * progmodes/cc-vars.el (c-constant-symbol): Put this defun inside + an eval-and-compile, so as to permit byte-compiling (e.g. in + bootstrap). - * longlines.el (longlines-mode): Bind after-change-functions to - nil during initial decoding and final encoding. +2008-01-15 Stefan Monnier -2005-10-26 Dan Nicolaescu + * emacs-lisp/easymenu.el (easy-menu-avoid-duplicate-keys): New var. + (easy-menu-create-menu, easy-menu-convert-item-1): Use it to avoid + using the same key for different menu entries. - * term.el (term-emulate-terminal, term-handle-colors-array) - (term-handle-ansi-escape): Specify the terminfo capabilities - implemented. + * smerge-mode.el (smerge-refine): Also work on "same change conflicts". + (smerge-makeup-conflict): New command. -2005-10-26 Richard M. Stallman +2008-01-15 Thien-Thi Nguyen - * info.el (Info-fontify-node): Fix detection of sentence-break - before *Note. + * log-edit.el (log-edit): Doc fix. -2005-10-26 Romain Francoise +2008-01-15 Glenn Morris - * smerge-mode.el: Add `tools' to file keywords. + * diff-mode.el (diff-end-of-hunk): Revert 2008-01-08 change. -2005-10-26 Nick Roberts +2008-01-14 Alan Mackenzie - * progmodes/gud.el (gud-menu-map): Only display gud-until icon - when the fringe is not available. + * progmodes/cc-vars.el (c-constant-symbol): New function which + supersedes c-const-symbol. During a customize-.. call it enables + an element of (e.g.) c-hanging-braces alist to have its name + displayed, even when the default value of c-h-b etc. doesn't + include the elemnt. Replace uses of the old function by the new. - * progmodes/gdb-ui.el (def-gdb-auto-updated-buffer) - (def-gdb-auto-update-trigger): Simplify construction. - (gdb-locals-buffer): Use def-gdb-auto-update-trigger instead of - def-gdb-auto-updated-buffer as gdb-info-locals-handler is - defined explicitly. - (gdb-assembler-buffer): Use def-gdb-auto-update-handler instead of - def-gdb-auto-updated-buffer as gdb-invalidate-assembler is - defined explicitly. - (gdb-info-locals-custom): Remove as it's a no-op. + * progmodes/cc-vars.el (c-hanging-braces-alist): Remove the + obscure non-working fragment ":value c-". -2005-10-25 Chong Yidong +2008-01-14 Stefan Monnier - * longlines.el (longlines-mode): Remove narrowing before - performing the initial decoding or final encoding. + * abbrev.el (clear-abbrev-table): Can't pass a symbol to intern. -2005-10-25 Romain Francoise +2008-01-14 Michael Albinus - * emacs-lisp/find-func.el (find-library-name): Also strip - extension if library name ends in .el, to take advantage of - `find-library-suffixes'. + * net/tramp.el (tramp-local-host-p): Use `tramp-file-name-host' + instead of `tramp-file-name-real-host'. -2005-10-25 Richard M. Stallman + * net/trampver.el: Update release number. - * menu-bar.el (menu-bar-help-menu): Say which kind of therapist. +2008-01-14 Alan Mackenzie -2005-10-25 Juri Linkov + * progmodes/cc-engine.el (c-guess-basic-syntax): Prevent a macro + call inside a struct being recognised as a K&R argument. - * textmodes/texinfo.el (texinfo-mode): Change charset of one - quotation mark from [mule-unicode-0100-24ff] to [japanese-jisx0208]. +2008-01-14 Stefan Monnier -2005-10-25 Stefan Monnier + * progmodes/compile.el (compilation-error-regexp-alist-alist): + Accept "fatal error" from MSFT. + Reported by Jared Finder . - * play/blackbox.el (blackbox-mode-map): Move init into declaration. - (blackbox-redefine-key): Add argument `map'. +2008-01-14 Dan Nicolaescu - * jit-lock.el (jit-lock-fontify-now): Be careful not to skip multiline - regions when moving the jit-lock-context-unfontify-pos boundary. + * smerge-mode.el (smerge-auto): New function. + * vc-svn.el (vc-svn-find-file-hook): + * vc-arch.el (vc-arch-find-file-hook): + * pcvs.el (cvs-revert-if-needed): + * vc.el (vc-maybe-resolve-conflicts): Use it instead of vc-mode. + (top-level): Add a Todo list. -2005-10-25 Reiner Steib +2008-01-13 Dan Nicolaescu - * net/browse-url.el (browse-url-of-buffer): Add ".html" to filename. + * vc.el (vc-update): Resolve conflicts if necessary instead of + just updating the buffer. -2005-10-25 Masatake YAMATO + * vc-cvs.el (vc-cvs-merge-news): Ignore the error status of the + update command so that we can parse the output. - * dired-x.el (dired-virtual): Don't use `dired-insert-headerline'. +2008-01-13 Martin Rudalics -2005-10-25 Micha,Ak(Bl Cadilhac + * mail/rmail.el (rmail-convert-to-babyl-format): + Remove save-excursion to avoid infinite looping. + Reported by dnz . - * play/blackbox.el (blackbox-redefine-key): New function. - (blackbox-mode-map): Use it to remap existing bindings for cursor - motion instead of binding literal keys. +2008-01-12 Glenn Morris -2005-10-25 Glenn Morris + * woman.el (woman-parse-numeric-arg): Change handling of `==': + can be interned without a function definition. - * calendar/diary-lib.el (diary-list-entries): Prevent infloop when - diary does not end in a newline. Do not assume a blank line at - the start of the diary file. +2008-01-12 Jason Rumney -2005-10-25 Kenichi Handa + * nxml/nxml-mode.el (nxml-enable-unicode-char-name-sets) + (rng-nxml-mode-init): Declare. - * international/quail.el (quail-translate-key): If the input - method is deterministic and failed to handle the last key, restart - the key handling loop from an appropriate key. +2008-01-11 Jason Rumney -2005-10-25 Michael Albinus + * nxml/rng-nxml.el (rng-preferred-prefix-alist): Add some defaults. + (rng-preferred-prefix-alist-default): Remove. - * vc.el (vc-dired-mode): Extend comment for binding of - `directory-listing-before-filename-regexp'. + * nxml/nxml-uchnm.el (nxml-internal-unicode-char-name-sets-enabled): + Rename from nxml-enable-unicode-char-name-sets-flag. + (nxml-enable-unicode-char-name-sets-1): Merge into + nxml-enable-unicode-char-name-sets. + (nxml-enable-unicode-char-name-sets): Don't unconditionally set + nxml-char-name-ignore-case here. -2005-10-25 Stefan Monnier + * nxml/nxml-mode.el (nxml-mode): Call rng-nxml-mode-init directly. + Update doc string and commentary. + (nxml-char-name-ignore-case): Change default value. + (nxml-mode): Call nxml-enable-unicode-char-name-sets directly. - * textmodes/texinfo.el (texinfo-mode): - * textmodes/paragraphs.el (sentence-end-base): Use real chars, so as - not to unnecessarily expose emacs-mule's internal char codes. +2008-01-11 Martin Rudalics -2005-10-25 Nick Roberts + * cus-start.el (all): Add missing version entries. - * progmodes/gdb-ui.el (gdb-put-breakpoint-icon): Correct help-echo. - Display hand pointer and help-echo on disabled icon too. - (gdb-mouse-until): New function. - (gdb-ann3): Bind it to mouse-2 and drag-mouse-1 in left fringe. +2008-01-11 Glenn Morris -2005-10-24 Chong Yidong + * language/china-util.el (big5-to-flat-code, flat-code-to-big5) + (euc-to-flat-code, flat-code-to-euc): + * textmodes/org.el (elmo-msgdb-overview-get-entity) + (wl-summary-buffer-msgdb): Declare as funtions. - * menu-bar.el (menu-bar-help-menu): Rename "psychiatrist", in line - with 2005-10-23 change to doctor.el. +2008-01-10 Martin Rudalics - * finder.el (finder-mode-map): Add follow-link binding. + * progmodes/ada-mode.el (ada-set-syntax-table-properties): + Bind buffer-file-name and buffer-file-truename. -2005-10-25 Kim F. Storm + * fringe.el (fringe-mode-explicit): New variable. + (set-fringe-mode): Don't alter default-frame-alist when just + loading this file. - * progmodes/gdb-ui.el (gdb-ann3): Bind mouse-3 in left fringe - to gdb-mouse-toggle-breakpoint-fringe. - (gdb-mouse-toggle-breakpoint-margin): Rename from - gdb-mouse-toggle-breakpoint. Fix doc. - (gdb-mouse-toggle-breakpoint-fringe): New defun. - (gdb-put-string): Add optional SPROPS arg. Add props to string. - (gdb-put-breakpoint-icon): Add gdb-bptno and gdb-enabled - string properties also for fringe breakpoint bitmaps. +2008-01-10 Tassilo Horn -2005-10-24 Carsten Dominik + * doc-view.el (doc-view-buffer-file-name): New variable. + (doc-view-convert-current-doc, doc-view-search) + (doc-view-current-cache-dir, doc-view-initiate-display) + (doc-view-mode): Use it. + (doc-view-bookmark-make-cell): Use variable buffer-file-name + instead of function. - * textmodes/org.el (org-start-icalendar-file): Fix format form. +2008-01-10 Dan Nicolaescu -2005-10-25 Masatake YAMATO + * vc-svn.el (vc-svn-registered): Return the correct value for + ignored and unregistered files. - * simple.el (completion-common-substring): - Use `completion-common-substring' prior to `completion-base-size'. +2008-01-10 Tassilo Horn -2005-10-24 Hrvoje Niksic + * doc-view.el (tramp): Require tramp because we use tramp-tramp-file-p. - * savehist.el: Require CL while compiling. - (savehist-history-variables): Remove. - (savehist-save-minibuffer-history, savehist-additional-variables) - (savehist-minibuffer-history-variables): New vars. - (savehist-save): Use them. - (savehist-uninstall, savehist-minibuffer-hook): New funs. - (savehist-install): New fun, extracted from savehist-load. - (savehist-load): Use them. +2008-01-10 Tom Tromey -2005-10-24 Stefan Monnier + * vc.el (vc-status-unmark-all-files): New function. + (vc-status-unmark-all-files): Likewise. + (vc-status-mode-map): Add bindings. - * emacs-lisp/lisp-mode.el (easy-mmode-define-global-mode): Don't add - a dummy doc-string-elt property. - (defalias, defvaralias, define-category): Add a docstring property. +2008-01-10 Michael Kifer - * image.el (defimage): - * widget.el (define-widget): - * custom.el (defface, defcustom): Add `doc-string' declaration. + * ediff*.el: Uncomment declare-function. - * emacs-lisp/advice.el (ad-make-advised-definition): Fix arg-order. - (defadvice): Add `doc-string' declaration. + * emulation/viper*.el: Uncomment declare-function. - * emacs-lisp/byte-run.el (macro-declaration-function): - Handle `doc-string' declarations. - (define-obsolete-function-alias, define-obsolete-variable-alias): - Add `doc-string' declaration. +2008-01-09 Tassilo Horn -2005-10-24 Kenichi Handa + * doc-view.el (doc-view-mode): Support tramp, compressed files and + files inside archives uniformly. - * international/utf-7.el (utf-7): Add autoload cookie. +2008-01-09 Eric S. Raymond - * term/x-win.el: Register more Cyrillic characters in x-keysym-table. + * textmodes/sgml-mode.el (sgml-tag-syntax-table): Initialize this + constant with a computation on sgml-specials rather than a literal + list. Without this change the syntax table is generated + incorrectly, and the mode will think it's in a comment following + any instance of the string "--". -2005-10-24 Eli Zaretskii +2008-01-09 Tassilo Horn - * makefile.w32-in (autoloads): Use "." instead of $(lisp) in the - list of directories passed to batch-update-autoloads. Add "." to - the list of the echoed directories. + * doc-view.el (doc-view-mode-p): Add EPS as supported type. + (doc-view-mode): Support document files inside archives. - * pgg-def.el: - * pgg-gpg.el: - * pgg-parse.el: - * pgg-pgp.el: - * pgg-pgp5.el: - * pgg.el: Moved here from the gnus subdirectory. +2008-01-09 Dan Nicolaescu -2005-10-24 Nick Roberts + * vc.el (vc-deduce-fileset): Return the currently selected file if + no files are selected when using vc-status. - * progmodes/gud.el (gud-filter): Bind inhibit-read-only to t - in case comint-prompt-read-only is set to t. +2008-01-09 Michael Kifer - * progmodes/gdb-ui.el (gdb-send): Bind inhibit-read-only to t - in case comint-prompt-read-only is set to t. + * ediff*.el: Comment out declare-function. "make bootstrap" + stops with an error and Emacs does not compile with those things in. + Besides, declare-function is not defined in XEmacs. -2005-10-24 Ulf Jasper + * ediff-util (eqiff-quit): Autoraise minibuffer. - * calendar/icalendar.el (icalendar-version): Increase to 0.13. - Now a string. - (icalendar-import-format): Handle CLASS, STATUS, URL. - Rename `subject' to `summary'. - (icalendar-import-format-summary): Rename from - `icalendar-import-format-subject'. - (icalendar-import-format-url, icalendar-import-format-status) - (icalendar-import-format-class): New variables. - (icalendar--rris): Take variable argument list. - (icalendar--datestring-to-isodate): Remove unnecessary - calendar-style check when converting dates with explicit month names. - (icalendar-export-region): Change return type of conversion - subroutines. Bury current buffer unless error occurred. - (icalendar--convert-to-ical) - (icalendar--parse-summary-and-rest): New functions. - (icalendar--convert-ordinary-to-ical) - (icalendar--convert-weekly-to-ical) - (icalendar--convert-yearly-to-ical) - (icalendar--convert-block-to-ical) - (icalendar--convert-cyclic-to-ical) - (icalendar--convert-anniversary-to-ical): Change return type. - Strip trailing blanks from subject. - (icalendar--convert-sexp-to-ical): Change return type. - Strip trailing blanks from subject. Handle simple sexp - entries as generated by icalendar.el. - (icalendar--convert-float-to-ical) - (icalendar--convert-date-to-ical): Strip trailing blanks from subject. - (icalendar-import-file): Doc fix. - (icalendar--format-ical-event): Handle CLASS, STATUS, URL. - Correct call to icalendar--rris. - (icalendar--convert-ical-to-diary): Doc fix. Rename `subject' to - `summary'. - (icalendar--add-diary-entry): Rename `subject' to `summary'. + * ediff-diff.el (ediff-convert-fine-diffs-to-overlays): Make it a defun. -2005-10-24 Romain Francoise + * emulation/viper*.el: Comment out declare-function -- not defined + in XEmacs. - * server.el (server-sentinel): Set query-on-exit flag to nil on - new client processes (it isn't inherited from the server process). + * emulation/viper-ex.el (viper-info-on-file): + Take care of indirect buffers. - * replace.el (occur-engine): Rearrange text properties. + * emulation/viper.el (viper-set-hooks, set-cursor-color): + Set viper-vi-state-cursor-color. -2005-10-23 Stefan Monnier +2008-01-09 Tom Tromey - * emacs-lisp/debug.el (debugger-make-xrefs): Don't assume - case-fold-search is nil. - (debug-help-follow): Use help-xref-interned directly. + * vc.el (vc-status-headers): Rename from vc-status-insert-headers. + Just return header. + (vc-status-move-to-goal-column): New function. + (vc-status-mode-map): Define more keys. + (vc-status-mode): Use vc-status-refresh. Now 'special. + (vc-status-refresh): New function. + (vc-status-next-line): Likewise. + (vc-status-previous-line): Likewise. + (vc-status-mark-file): Use vc-status-next-line. + (vc-status-unmark-file): Use vc-status-previous-line. + (vc-status-unmark-file-up): New function. + (vc-status-register): Likewise. + (vc-status-find-file): Likewise. + (vc-status-find-file-other-window): Likewise. + (vc-status-current-file): Likewise. + (vc-ensure-vc-buffer): Understand vc-status mode. -2005-10-23 Chong Yidong + * vc-hg.el (vc-hg-dir-status): Don't pass -A to "hg status". - * thumbs.el (thumbs-image-type): Add .pbm. +2008-01-09 Glenn Morris -2005-10-23 Richard M. Stallman + * ffap.el (ffap-string-at-point-mode-alist): Add `\' to file + entry, for Windows. - * faces.el (inhibit-face-set-after-frame-default): New variable. - (set-face-attribute): Bind it. - (face-set-after-frame-default): Test it. +2008-01-09 Tom Tromey - * help-fns.el (describe-simplify-lib-file-name): New function. - (describe-function-1, describe-variable): Use it. + * play/blackbox.el (blackbox-mode-map): Add `q' and [return] bindings. - * faces.el (describe-face): Use describe-simplify-lib-file-name. +2008-01-09 Stefan Monnier - * tooltip.el (tooltip-x-offset, tooltip-y-offset): Change defaults. - Eliminate nil as possible value. - (tooltip-hide-delay): Reduce internal-border-width. - - * menu-bar.el (menu-bar-file-menu) : Change help-echo string. - (menu-bar-file-menu) : Likewise. - - * simple.el (line-move-finish): Ignore fields computing LINE-END. - - * international/mule.el (load-with-code-conversion): - Pass full file name to `eval-buffer' unless preloading. - - * textmodes/flyspell.el (flyspell-large-region): - Call ispell-check-version. - - * textmodes/ispell.el (ispell-local-dictionary-overridden): - Fix the make-variable-buffer-local call that was supposed - to be for this variable. - (ispell-aspell-supports-utf8): Doc fix. - (ispell-find-aspell-dictionaries): Preserve elements of - ispell-dictionary-alist for dictionaries that aspell doesn't report. - (ispell-aspell-find-dictionary): Return nil on error. - - * play/doctor.el (doctor-doc): Don't say "psychiatrist". - (doctor-symptoms): Likewise. - - * add-log.el (add-log-current-defun): Clean up handling of DEFUNs. - -2005-10-23 Chong Yidong - - * cus-edit.el (custom-button, custom-button-pressed): New vars. - (custom-raised-buttons): Add :set spec. - (custom-button-unraised, custom-button-pressed-unraised): - New faces, so that custom-raised-buttons actually does something. - (custom-mode): Use custom-button and custom-button-pressed. - - * wid-edit.el (widget-specify-button): Don't ignore - widget-mouse-face on graphic terminals. - (widget-move-and-invoke): Cleanup. - -2005-10-23 Thien-Thi Nguyen + * ffap.el (ffap-read-file-or-url): Don't use let-binding to temporarily + add a file-name handler. - * whitespace.el (whitespace-cleanup): Doc fix. +2008-01-08 Roland Winkler -2005-10-23 Romain Francoise + * textmodes/bibtex.el (bibtex-initialize): New autoloaded command. + Rename from function bibtex-files-expand. New optional arg select. + (bibtex-flash-head): Allow blink-matching-delay being zero. + (bibtex-clean-entry): Use atomic-change-group. + (bibtex-format-entry): Check presence of required fields only + after formatting of fields. Use member-ignore-case. Do not use + bibtex-parse-entry. Do not use booktitle field to set a missing title. + (bibtex-autofill-entry): Do not call undo-boundary. + (bibtex-lessp): Handle crossref keys that point to another bibtex file. + (bibtex-sort-buffer, bibtex-prepare-new-entry, bibtex-validate): + Parse keys if necessary. - * emulation/viper.el (viper-set-hooks): Quote forms passed to - `eval-after-load' to avoid evaluating their result. +2008-01-08 Nick Roberts -2005-10-23 Michael Albinus + * progmodes/gdb-ui.el (gdb-var-list-children-1): Put varnum in + quotes in case of spaces, e.g. STL containers (not pretty). - * files.el (directory-listing-before-filename-regexp): - New defvar. Replaces `dired-move-to-filename-regexp' from dired.el. +2008-01-08 Nick Roberts - * dired.el (dired-move-to-filename-regexp): Remove. - All occurrences replaced by `directory-listing-before-filename-regexp'. + * progmodes/gdb-ui.el (gud-gdb-command-name): + Explain "--annotate=3" option is necessary for the Graphical Interface. - * dired-x.el, locate.el, vc.el: - Replace `dired-move-to-filename-regexp' by - `directory-listing-before-filename-regexp'. In vc.el it is - overwritten locally; maybe this can be handled in files.el too. +2008-01-08 Nick Roberts - * net/ange-ftp.el (ange-ftp-date-regexp): Remove. All occurrences - replaced by `directory-listing-before-filename-regexp'. + * progmodes/hideif.el (hide-ifdef-mode-menu): Put hide-ifdef commands + on menu bar. -2005-10-23 Andreas Schwab +2008-01-08 Michael Albinus - * font-lock.el (lisp-font-lock-keywords-2): Add eval-at-startup - and eval-next-after-load. + * ffap.el (ffap-read-file-or-url): Let-bind + `file-name-handler-alist' due to `rfn-eshadow-update-overlay'. -2005-10-23 MIYOSHI Masanori (tiny change) +2008-01-08 Sven Joachim - * mouse.el (mouse-drag-region): If the *Messages* buffer doesn't - exist, create it. + * vc-bzr.el: Fix typo in header. -2005-10-23 Ken Manheimer +2008-01-08 Eli Zaretskii - * allout.el: Remove autoloads for mailcrypt and crypt++. - Require pgg, pgg-gpg during compilation. - (allout-version): Increment version number to 2.1, and use a literal - rather than RCS Id. - (allout-default-encryption-scheme): Remove. - (allout-passphrase-verifier-handling) - (allout-passphrase-verifier-string) - (allout-file-passphrase-verifier-string) - (allout-passphrase-hint-string): Rename -key- to -passphrase-. - (allout-passphrase-hint-handling): Rename and simplify. - (allout-init): Use `find-file-hook' if available, otherwise - `find-file-hooks'. - (allout-mode): Use `write-file-functions' if available, otherwise - `local-write-file-hooks' and, instead of making auto-save-hook - buffer local, make the write-file-hook activity contingent to - allout-mode. - (allout-mode): Use key-binding substitution in the docstring. - (allout-kill-line): Spell-out kill ring data structure mutation - instead of using byte-compiler-complaint-provoking `pop'. - (allout-insert-listified): Use `insert' rather than `insert-string' - (allout-toggle-current-subtree-encryption): Update docstring, adjust - to new gpp-based encryption, use new `allout-encrypted-topic-p'. - (allout-encrypt-string): Totally revamped vis new underlying - encryption facilities. - (allout-mc-activate-passwd): Remove. - (allout-obtain-passphrase): New, more or less replaces - allout-mc-activate-passwd. - (allout-encrypted-key-info): More or less replaces - allout-encrypted-text-type. - (outlineify-sticky, outlinify-sticky): Add autoload cookie. - (my-mark-marker): Use `(featurep 'xemacs)'. + * Makefile.in (custom-deps, finder-data): Depend on autoloads + instead of loaddefs.el. -2005-10-23 Lars Hansen +2008-01-08 Stefan Monnier - * emacs-lisp/bytecomp.el (byte-compile-lambda): New arg add-lambda. - (byte-compile-file-form-defmumble, byte-compile-defun) - (byte-compile-defmacro): Use it. - (byte-compile-form): Don't call byte-compile-set-symbol-position - when a byte-compile handler is called. + * vc-cvs.el (vc-cvs-annotate-time): Don't move backward when text + gets inserted out-of-order. -2005-10-22 Romain Francoise +2008-01-08 Riccardo Murri - * savehist.el (savehist-history-variables): Add `grep-find-history'. + * vc-bzr.el: Copyright and version headers update. + Remove some outdated comments through the whole file. + (vc-bzr-program-args): Remove because unused. + (vc-bzr-log-switches): New customization option. + (vc-bzr-command): Use LC_MESSAGES=C instead of LC_ALL=C. No longer + use `vc-bzr-program-args'. + (vc-bzr-register): Fix for working with both 22.1 and CVS version of + `vc-find-root' (patch by Andreas Hoenen). + (vc-bzr-status): Update regex to match latest Bzr output. + Remove redundant test. + (vc-bzr-init-version): New function. + (vc-bzr-unregister): Must not delete file. + (vc-bzr-find-version): New function. + (vc-bzr-checkout): Argument `rev' is explicit revision only if it's + a non-empty string, otherwise take head revision. + (vc-bzr-print-log): Pass `vc-bzr-log-switches' to "bzr log". + (vc-bzr-diff): Simpler build of the revision spec string. + (vc-annotate-convert-time, vc-bzr-annotate-difference): + Remove: compatibility hacks for Emacs21, not needed in Emacs 22. + (vc-bzr-dir-state): Add code comments. Removed redundant statement. + (vc-bzr-dired-state-info): Only provide custom strings for + overloaded VC state 'edited; otherwise fallback to + `vc-default-dired-state-info'. - * subr.el (eval-after-load): Convert library name to an absolute - file name using locate-library, since load-history no longer has - library names in it. +2008-01-08 Richard Stallman -2005-10-22 Richard M. Stallman + * delsel.el (delete-selection-mode): Doc fix. - * files.el (make-temp-file): Move from subr.el. - * subr.el (make-temp-file): Move to files.el. +2008-01-08 Nick Roberts - * window.el (get-buffer-window-list): Move from subr.el. - * subr.el (get-buffer-window-list): Move to window.el. + * progmodes/gud.el (gud-def): Do nothing if gud-running is t. + (gud-speedbar-menu-items): Add item for gdb-var-set-format below. - * image.el (image-load-path): Use eval-at-startup to initialize. + * progmodes/gdb-ui.el (gdb-var-set-format): Set the output format + of watch expressions (only works fully with GDB 6.7 or later). - * subr.el (eval-at-startup): New macro. +2008-01-08 Dan Nicolaescu - * subr.el: Much rearrangement of functions and division - into pages. No code changes. + * time-stamp.el (time-stamp-time-zone): + * whitespace.el (whitespace-check-buffer-leading) + (whitespace-check-buffer-trailing, whitespace-check-buffer-indent) + (whitespace-check-buffer-spacetab, whitespace-check-buffer-ateol): + * progmodes/sh-script.el (sh-indentation): + * textmodes/ispell.el (ispell-local-pdict): + Add safe-local-variable properties. -2005-10-22 Kenichi Handa +2008-01-08 Michael Albinus - * tar-mode.el (tar-extract): Be sure to call - find-operation-coding-system if set-auto-coding doesn't find a - coding system. + * vc-git.el (vc-git--call): Apply `process-file' instead of + `call-process'. -2005-10-22 Kim F. Storm + * net/tramp.el (tramp-remote-process-environment): Add "LC_CTYPE=C". + Reported by Pete Forman . + (tramp-perl-encode, tramp-perl-decode): Update copyrights. + (tramp-handle-process-file): Handle the case where DESTINATION is + a consp with t as car. + (tramp-wait-for-output): We shall remove exactly what has been + find by the search. - * image.el (image-type-header-regexps): Rename from image-type-regexps. - Change users. - (image-type-file-name-regexps): New defconst. - (image-type-from-data): Simplify loop. - (image-type-from-buffer): New defun. - (image-type-from-file-header): Use it instead of image-type-from-data. - Use image-search-load-path instead of only looking in data-directory. - (image-type-from-file-name): New defun. - (image-search-load-path): Change `pathname' to `filename'. - Make PATH arg optional, default to image-load-path. +2008-01-08 Kevin Ryde -2005-10-21 Richard M. Stallman + * progmodes/compile.el (compilation-error-regexp-alist-alist): + For perl, allow "during global destruction" at end. Add entry for + two-arg form of the Test module ok() func. - * textmodes/texinfo.el (texinfo-mode): Set sentence-end-base. +2008-01-08 Glenn Morris - * textmodes/paragraphs.el (sentence-end-base): New variable. - (sentence-end): Use sentence-end-base. + * diff-mode.el (diff-end-of-hunk): Don't match empty lines in + unified format. -2005-10-21 Stefan Monnier + * mouse.el (mouse-major-mode-menu): Suppress duplicate menus. - * font-lock.el (font-lock-default-fontify-region): Check the multiline - property independently from the font-lock-multiline variable. +2008-01-08 Ralf Angeli -2005-10-21 Richard M. Stallman + * textmodes/reftex-toc.el (reftex-make-separate-toc-frame): + Simplify selection of frame focusing function. - * emacs-lisp/find-func.el (find-library-name): Doc fix. +2008-01-08 Michael Olson - * startup.el (command-line): Convert library names - in `load-history' to absolute file names. + * textmodes/remember.el (remember-region): Fix typo in docstring. - * subr.el (symbol-file): Doc fix. +2008-01-08 Lennart Borgman - * loadhist.el (file-loadhist-lookup): Call locate-library - instead of find-library-name. Don't try converting - abs file names to library names, since load-history no longer - has library names in it. - (file-dependents, file-provides, file-requires): Doc fixes. + * textmodes/remember.el (remember): If there is a visible region + [that is, the mark is active and transient mark mode is enabled] + then use this region for the initial contents of the *Remember* + buffer. Use `region-beginning' and `region-end' instead of + `point' and `mark'. -2005-10-21 Juri Linkov +2008-01-07 Dan Nicolaescu - * progmodes/etags.el (tags-table-mode): New function. - (tags-verify-table): Replace initialize-new-tags-table with - tags-table-mode. + * vc-hg.el (vc-hg-dir-state, vc-hg-dir-status): Pass the dir + argument to vc-hg-command. + (vc-hg-log-view-mode): Handle the user field better. - * desktop.el (desktop-buffers-not-to-save): Remove TAGS from the - default value. - (desktop-modes-not-to-save): Add tags-table-mode to the - default value. +2008-01-06 Stefan Monnier - * info.el (Info-index-next): Add total number of index - alternatives to the message. + * vc.el (vc-ensure-vc-buffer): Check liveness of vc-parent-buffer. - * textmodes/fill.el (fill-nobreak-p): Fix first two rules to skip - backward only space (instead of space and period) before looking - at sentence end. +2008-01-06 Dan Nicolaescu - * simple.el (set-variable): Use user-variable-p instead of symbolp. - Add the old variable value as 4th default-value arg of read-string. + * vc.el (vc-status-fileinfo): New defstruct. + (vc-status): New defvar. + (vc-status-insert-headers, vc-status-printer, vc-status) + (vc-status-mode-map, vc-status-mode, vc-status-mark-file) + (vc-status-unmark-file, vc-status-marked-files): New functions. -2005-10-21 YAMAMOTO Mitsuharu + * vc-hg.el (vc-hg-dir-status): New function. - * cus-face.el (custom-declare-face): Make face from X resources - also on Mac. +2008-01-06 Martin Rudalics - * disp-table.el (standard-display-g1, standard-display-graphic): - Refuse to use string glyphs also on Mac. - (standard-display-european): Don't set terminal coding system also - on Mac. + * cus-edit.el (custom-tool-bar-map): Move initialization of this + keymap from here ... + (custom-mode): ... to here. Reported by Reiner Steib. - * frame.el (display-screens): Use x-display-screens also on Mac. +2008-01-06 Dan Nicolaescu -2005-10-21 Romain Francoise + * obsolete/x-apollo.el: Remove file for unsupported system. - * net/rcirc.el: Now part of GNU Emacs. Update FSF's address. + * term/x-win.el (vendor-specific-keysyms): Remove reference to + Apollo. -2005-10-21 Stefan Monnier + * progmodes/gud.el (gud-dgux-p): Remove. + (dbx): Remove reference to dgux. - * progmodes/sh-script.el (sh-font-lock-syntactic-keywords): Make $@ - and $? into sexps. + * progmodes/ps-mode.el (ps-mode-print-function): + * ps-print.el (ps-lp-system): + * paths.el (rmail-spool-directory): + * ls-lisp.el (ls-lisp-emulation): + * lpr.el (lpr-lp-system): + * dired.el (dired-chown-program): Remove references to dgux. - * font-lock.el (font-lock-compile-keywords): Add a help-echo to the - warning face on open-paren-in-column-0. +2008-01-05 Stefan Monnier - * emacs-lisp/syntax.el (syntax-ppss-flush-cache): Fix corner - boundary case. Fix typo. - Suggested by Martin Rudalics . + * vc.el (vc-process-sentinel): Fix apparent typo. + (vc-do-command): Forcefully kill any left over process. + Use start-file-process. + (vc-annotate-get-time-set-line-props): Check we don't move backward. -2005-10-21 Carsten Dominik +2008-01-04 Michael Albinus - * textmodes/org.el (org-combined-agenda-icalendar-file) - (org-icalendar-include-todo, org-icalendar-combined-name): New options. - (org-export-icalendar-this-file) - (org-export-icalendar-all-agenda-files) - (org-export-icalendar-combine-agenda-files): New commands. - (org-export-icalendar, org-print-icalendar-entries) - (org-start-icalendar-file, org-finish-icalendar-file) - (org-ical-ts-to-string): New functions. - (org-read-date, org-goto-calendar) - (org-agenda-goto-calendar): Inhibit displaying diary entries by - call to `calendar'. - (orgtbl-setup): Remove the :keys arguments from the menu description. - (org-after-save-iCalendar-file-hook): New variable. + * net/dbus.el (dbus-list-hash-table) + (dbus-name-owner-changed-handler): Replace "signal" by "member". + (dbus-check-event): Add serial number to event. + (dbus-handle-event): Apply return message if needed. + (dbus-event-serial-number): New defun. + (dbus-event-service-name, dbus-event-path-name) + (dbus-event-interface-name, dbus-event-member-name): + Adapt implementation to serial number. -2005-10-21 Kenichi Handa +2008-01-04 Juanma Barranquero - * language/vietnamese.el (tcvn-5712): Make it an alias of - vietnamese-tcvn coding-system. + * bs.el (bs--get-mode-name): Fix typo in previous change. -2005-10-20 Michael Albinus +2008-01-04 Dan Nicolaescu - * net/ange-ftp.el (ange-ftp-date-regexp): Handle also the case no - group id is given. + * mouse.el (mouse-popup-menubar): Fix typo. -2005-10-20 Stefan Monnier + * emacs-lisp/bytecomp.el (byte-compile-from-buffer): Move one more + form inside with-current-buffer. - * progmodes/sh-script.el (sh-escaped-line-re): New var. - (sh-here-doc-open-re, sh-font-lock-close-heredoc): Use it. - (sh-font-lock-open-heredoc): Try to properly handle heredoc starters - whose line is either continued or ends with a comment. + * progmodes/antlr-mode.el (provide): Move to the end of file. + (require): Don't require font-lock and compile. + (outline-level, imenu-use-markers, imenu-create-index-function): + Move declarations to top level. + (cond-emacs-xemacs-macfn): Declare for compiler. -2005-10-20 Romain Francoise + * vc-bzr.el (vc-bzr-root): + * vc-arch.el (vc-arch-root): Only set a property if the file is + managed by this backend. - * net/rcirc.el (with-rcirc-process-buffer): Move above its first user. + * vc-hg.el (vc-hg-state): Support the new status code for up-to-date. - * replace.el (occur-engine): Add follow-link property. +2008-01-04 Tassilo Horn - * font-core.el (font-lock-mode): Doc fix. + * doc-view.el (doc-view-scroll-up-or-next-page) + (doc-view-scroll-down-or-previous-page): Don't scroll to the + top/bottom again when on the first/last page. -2005-10-20 Richard M. Stallman + * doc-view.el (doc-view-scroll-up-or-next-page) + (doc-view-scroll-down-or-previous-page): Use image-scroll-up and + image-scroll-down instead of the non-image equivalents. + Don't rely on a signalled condition but switch pages when scrolling + doesn't change the vertical position anymore. + (doc-view-mode-map): Remap scroll-{up,down} to + image-scroll-{up,down}. - * net/rcirc.el: New file. +2008-01-04 Rob Riepel -2005-10-20 Bryan Henderson (tiny change) + * emulation/tpu-edt.el (tpu-load-xkeys): Recommend to run the + tpu-mapper command rather than load the tpu-mapper package. - * term.el (term-term-name): Initialize to "eterm-color". + * emulation/tpu-mapper.el (tpu-mapper): New command. + Contains all the code previously at top-level. -2005-10-20 Ken Manheimer +2008-01-04 Stefan Monnier - * allout.el: Add autoloads of crypt++ and mailcrypt routines, all - for encryption functionality. - Move allout customization subgroup from `editing' to `outlines' group. - Fix commentary keywords to legitimate ones. - Update author info (using my current email address, obscurified). - (allout-encrypt-string, allout-encryption-produce-work-buffer) - (allout-encrypted-topic-p, allout-encrypted-text-type) - (allout-mc-activate-passwd, allout-create-encryption-key-verifier) - (allout-situate-encryption-key-verifier) - (allout-get-encryption-key-verifier, allout-verify-key) - (allout-next-topic-pending-encryption) - (allout-encrypt-decrypted, allout-encrypted-type-prefix): New funcs. - (outline-topic-encryption-bullet, outline-default-encryption-scheme) - (outline-key-verifier-handling, outline-key-hint-handling) - (outline-encrypt-unencrypted-on-saves): New defcustoms. - (allout-file-key-verifier-string, allout-encryption-scheme) - (allout-key-verifier-string, allout-key-hint-string) - (allout-after-save-decrypt): New variables. - (allout-write-file-hook-handler, allout-auto-save-hook-handler) - (allout-after-saves-handler): New hook functions. - (allout-post-command-business): Do allout-after-save-decrypt. - (allout-enable-file-variable-adjustment): Custom var to enable - mechanism for adding and adjusting settings of Emacs file variables. - (allout-adjust-file-variable, allout-file-vars-section-data): - New functions, implement the mechanism. - (outlineify-sticky): Use the file vars mechanism. - (allout-inhibit-protection, allout-during-write-cue) - (allout-override-protect, allout-before-change-protect): Remove. - (allout-flag-region, allout-open-topic): Adjust read-only text. - (allout-open-line-not-read-only): Add to facilitate read-only - text based protection. - (allout-kill-line): Revise to adjust read-only text, clue the - user about the inhibition. - (allout-unprotected): Use unwind-protect. - (allout-shift-in, allout-shift-out): Disallow manually shifting a - topic deeper than the offspring depth of the previous topic - - avoiding confusing "containment discontinuities". - (allout-reindent-bodies): Fix retention of body relative hanging - indent during promotion of collapsed bodies. - (allout-open-topic): Make it easy to open new topic with same - bullet as current topic - topic creation functions provided with - any universal argument provokes now prompt for bullet, defaulting - to the bullet of the previous topic. - (allout-plain-bullets-string, allout-distinctive-bullets-string): - Plain bullet alternates `.' period and `,' comma only. All other - bullets are relegated to special status (but customizable). - (allout-end-of-entry): Rename from allout-end-of-current-entry - since it actually operates w.r.t. most immediately containing - entry, visible or not. - (allout-hide-current-entry, allout-show-current-entry): Use the - revised version. - (allout-old-expose-topic): Solidify deprecation. - (allout-end-of-subtree): Add so we can span concealed as well - as visible topics. - (allout-end-of-current-subtree): Use `allout-end-of-subtree'. - (allout-end-of-current-heading): Tweak to just respect the first line. - (allout-get-body-text): Add. - (allout-ascend-to-depth, allout-ascend): Position at end of prefix - when invoked interactively. - (allout-up-current-level): Use `interactive-p'. - (allout-mode, allout-init): Miscellaneous docstring and - operational refinements, as well as hookups of new encryption stuff. - (allout-beginning-of-current-entry): Now works as advertised. - (allout-end-of-current-entry): Remove of superfluous allout-show-entry. - (allout-isearch-rectification): Refine condition for isearching. - (allout-isearch-abort, allout-enwrap-isearch) - (allout-flag-region, my-region-active-p): Relocate some macros. - (allout-title): Fallback title is (buffer-name), not - non-existing (current-buffer-name). - (subst-char-in-string): Define if absent (for some XEmacs versions). - -2005-10-20 Jari Aalto - - * mail/sendmail.el (mail-setup-hook, mail-aliases) - (mail-yank-prefix, mail-indentation-spaces, mail-yank-hooks) - (mail-citation-prefix-regexp, mail-signature-file) - (mail-default-headers, mail-bury-selects-summary) - (mail-send-nonascii): Add autoload cookies. - -2005-10-20 Emanuele Giaquinta (tiny change) - - * frame.el (blink-cursor-mode): Add `mac' to the list of - window-system's that support blinking cursor. - -2005-10-20 Reiner Steib - - * textmodes/org.el (org-level-color-stars-only): Fix typo in docstring. - -2005-10-20 Eli Zaretskii - - * makefile.w32-in ($(lisp)/mh-e/mh-loaddefs.el): - Bind find-file-suppress-same-file-warnings to t, to avoid warnings due - to different drive letter case in D:/foo/bar.el vs d:/foo/bar.el. - -2005-10-20 Kim F. Storm - - * ido.el (ido-is-tramp-root): Simplify regexp matching tramp root. - (ido-set-current-directory): Don't add / after final @. - (ido-file-name-all-completions-1): Adapt to fixed tramp completion. - Explicitly handle ange-ftp completion oddities. - (ido-make-file-list): Don't rotate list at tramp root to avoid - triggering tramp file handler for expand-file-name via get-file-buffer. - -2005-10-19 Stefan Monnier - - * savehist.el (savehist-coding-system): Revert to checking XEmacs. - -2005-10-19 Jay Belanger - - * calc/calc-units.el (math-standard-units): Add units, adjust - symbols and update values. - (math-unit-prefixes): Add more prefixes. - -2005-10-19 Romain Francoise - - * bookmark.el (bookmark-menu-heading): New face. - (bookmark-bmenu-list): Use it. - Don't fiddle with `baud-rate' at top-level. - -2005-10-18 Chong Yidong - - * image.el (create-image, find-image): Mention max-image-size in - docstring. + * bs.el (bs--sort-by-mode, bs--get-mode-name): + * imenu.el (imenu-add-to-menubar): + * makesum.el (make-command-summary): + * mouse.el (mouse-major-mode-menu, mouse-popup-menubar) + (mouse-buffer-menu): + * msb.el (msb--mode-menu-cond): + * calc/calc-embed.el (calc-do-embedded): + * emacs-lisp/helper.el (Helper-describe-mode): + * mail/emacsbug.el (report-emacs-bug): + * progmodes/hideshow.el (hs-grok-mode-type): + * textmodes/sgml-mode.el (sgml-mode-facemenu-add-face-function): + * textmodes/table.el (*table--cell-describe-mode): + Pass mode-name through format-mode-line. -2005-10-18 Stefan Monnier +2008-01-04 Stefan Monnier - * savehist.el (savehist-load): Revert to checking XEmacs. + * progmodes/ada-xref.el (ada-prj-find-prj-file): + * progmodes/ada-mode.el (comment-region): + * calendar/todo-mode.el (todo-insert-item): + * bookmark.el (bookmark-buffer-name): + Test major-mode rather than mode-name. - * textmodes/conf-mode.el: Don't use font-lock-defaults-alist. - Various docstring and line-width fixups. - (conf-mode): Use cond. - Set font-lock-defaults. Don't set comment-use-syntax. +2008-01-04 Richard Stallman -2005-10-18 David Ponce + * emacs-lisp/bytecomp.el (byte-compile-from-buffer): + Call byte-compile-warn-about-unresolved-functions outside + the with-current-buffer. + (byte-compile-insert-header): Use with-current-buffer. - * tree-widget.el (tree-widget-button-click): New function. - (tree-widget-button-keymap): Use it. +2008-01-04 Glenn Morris -2005-10-18 Romain Francoise + * startup.el (fancy-about-screen): Remove reference to deleted + `fancy-splash-help-echo' variable. - * bookmark.el (bookmark-insert-location, bookmark-bmenu-list) - (bookmark-bmenu-hide-filenames): Add follow-link property. - Improve help-echo text. + * version.el (emacs-copyright): Update to 2008. - * ffap.el (find-file-at-point): Doc fix. + * net/tramp-smb.el (tramp-smb-handle-insert-directory): Use mapc + rather than mapcar. -2005-10-18 YAMAMOTO Mitsuharu + * progmodes/cc-vars.el (defcustom-c-stylevar): Revert previous + change (merge mistake). - * mouse.el (mouse-set-region): Don't do sit-for on a mac frame. + * doc-view.el (doc-view-search-internal): Don't use `incf'. -2005-10-18 Masatake YAMATO + * doc-view.el (bookmark-make-cell-function, bookmark-get-filename) + (bookmark-get-bookmark-record): + * image-mode.el (bookmark-make-cell-function) + (bookmark-get-filename, bookmark-get-bookmark-record) + (bookmark-get-position): + * log-view.el (vc-modify-change-comment): + * progmodes/grep.el (find-name-arg): Declare for compiler. - Install to the CVS repository what I forgot to install in my - 2005-10-16 changes. +2008-01-04 Juanma Barranquero - * progmodes/python.el (python-complete-symbol): Pass the common - prefix substring of completion to `display-completion-list'. + * savehist.el (savehist-coding-system): Default to a variant coding + system with explicit unix end-of-line conversion, which is safer. - * textmodes/org.el (org-complete): Ditto. +2008-01-03 Stefan Monnier -2005-10-18 Masatake YAMATO + * ibuf-ext.el (mode-name sorter, ibuffer-mark-by-mode-regexp): + * ibuffer.el (mode column): Use format-mode-line. - Fix a bug reported by Sven Joachim . + * server.el (server-create-window-system-frame): Remove workaround for + a bug that has been fixed. - * woman.el (WoMan-xref-man-page): New button type derived - from `Man-abstract-xref-man-page'. - (woman-mode): Pass `WoMan-xref-man-page' to `Man-highlight-references'. +2008-01-03 Magnus Henoch - * man.el (Man-abstract-xref-man-page): New button type. - (Man-xref-man-page): Make it derived from `Man-abstract-xref-man-page'. - (Man-highlight-references): Add new optional argument `xref-man-type'. + * net/dbus.el (dbus-name-owner-changed-handler): + Use dbus-unregister-object instead of dbus-unregister-signal. -2005-10-18 Nick Roberts +2008-01-03 Drew Adams - * progmodes/gud.el (gud-menu-map): Correct condition for fringe. + * frame.el (frame-geom-value-cons, frame-geom-spec-cons): New fns. -2005-10-17 Chong Yidong +2008-01-03 Richard Stallman - * cus-edit.el (Custom-move-and-invoke): Delete. - (custom-mode-map): Bind mouse-1 to widget-move-and-invoke. + * replace.el (occur-context-lines): New subroutine, + broken out of occur-engine. + (occur-engine): Call it. - * wid-edit.el (widget-move-and-invoke): New function, from - Custom-move-and-invoke. +2008-01-03 Alexandre Julliard -2005-10-17 Bill Wohler + * vc-git.el (vc-git--ls-files-state): New function. + (vc-git-dir-state): Use it instead of processing the status + results here. - Move all remaining images from lisp/toolbar to etc/images, move - lisp/toolbar/tool-bar to lisp and "delete" lisp/toolbar. Place - the low resolution images in their own directory (low-color). +2008-01-02 Eric S. Raymond - * toolbar/attach.*, toolbar/cancel.*, toolbar/close.* - * toolbar/copy.*, toolbar/cut.*, toolbar/diropen.*, toolbar/exit.* - * toolbar/help.*, toolbar/home.*, toolbar/index.*, toolbar/info.* - * toolbar/mail.*, toolbar/new.*, toolbar/open.*, toolbar/paste.* - * toolbar/preferences.*, toolbar/print.*, toolbar/save.* - * toolbar/saveas.*, toolbar/search.*, toolbar/search-replace.* - * toolbar/spell.*, toolbar/undo.*: Move to etc/images. + * progmodes/grep.el (grep-find-ignored-directories): + Initialize from the value of vc-directory-exclusion-list. - * toolbar/lc-copy.*: Move to etc/images/low-color/copy.*. - * toolbar/lc-cut.*: Move to etc/images/low-color/cut.*. - * toolbar/lc-help.*: Move to etc/images/low-color/help.*. - * toolbar/lc-home.*: Move to etc/images/low-color/home.*. - * toolbar/lc-index.*: Move to etc/images/low-color/index.*. - * toolbar/lc-new.*: Move to etc/images/low-color/new.*. - * toolbar/lc-open.*: Move to etc/images/low-color/open.*. - * toolbar/lc-paste.*: Move to etc/images/low-color/paste.*. - * toolbar/lc-preferences.*: Move to etc/images/low-color/preferences.*. - * toolbar/lc-print.*: Move to etc/images/low-color/print.*. - * toolbar/lc-save.*: Move to etc/images/low-color/save.*. - * toolbar/lc-saveas.*: Move to etc/images/low-color/saveas.*. - * toolbar/lc-search.*: Move to etc/images/low-color/search.*. - * toolbar/lc-spell.*: Move to etc/images/low-color/spell.*. - * toolbar/lc-undo.*: Move to etc/images/low-color/undo.*. + * vc-hooks.el (vc-directory-exclusion-list): Include "_darcs", + even though we don't have a back end for darcs yet. - To conform with convention, replace the underscore (_) in the - following image names with dash (-) or (/) as appropriate. +2008-01-02 Karl Fogel - * toolbar/back_arrow.*: Move to etc/images/back-arrow.*. - * toolbar/fld_open.*: Move to etc/images/fld-open.*. - * toolbar/fwd_arrow.*: Move to etc/images/fwd-arrow.*. - * toolbar/jump_to.*: Move to etc/images/jump-to.*. - * toolbar/left_arrow.*: Move to etc/images/left-arrow.*. - * toolbar/right_arrow.*: Move to etc/images/right-arrow.*. - * toolbar/up_arrow.*: Move to etc/images/up-arrow.*. - * toolbar/lc-back_arrow.*: Move to etc/images/low-color/back-arrow.*. - * toolbar/lc-fwd_arrow.*: Move to etc/images/low-color/fwd-arrow.*. - * toolbar/lc-jump_to.*: Move to etc/images/low-color/jump-to.*. - * toolbar/lc-left_arrow.*: Move to etc/images/low-color/left-arrow.*. - * toolbar/lc-right_arrow.*: Move to etc/images/low-color/right-arrow.*. - * toolbar/lc-up_arrow.*: Move to etc/images/low-color/up-arrow.*. - * toolbar/mail_compose.*: Move to etc/images/mail/compose.*. - * toolbar/mail_send.*: Move to etc/images/mail/send.*. + Change a return type, for greater extensibility. + See http://lists.gnu.org/archive/html/emacs-devel/2007-12/msg01077.html + and its thread for discussion leading to this change. - * info.el (info-tool-bar-map): Replace underscores in image names - with dashes. + * bookmark.el (bookmark-jump-noselect): + Return an alist instead of a dotted pair. + (bookmark-jump, bookmark-jump-other-window, bookmark-insert) + (bookmark-bmenu-2-window, bookmark-bmenu-other-window) + (bookmark-bmenu-switch-other-window): Adjust accordingly. + (bookmark-make-cell-function): Adjust documentation accordingly. - * makefile.w32-in (WINS): Remove toolbar. + * image-mode.el (image-bookmark-jump): + Adjust return type accordingly; document. - * menu-bar.el: Replace toolbar/tool-bar.el with tool-bar.el in comment. + * doc-view.el (doc-view-bookmark-jump): + Adjust return type accordingly; document. - * tool-bar.el: Move to lisp from toolbar. Now that - toolbar is empty, it should be deleted when folks run "cvs up -P". +2008-01-02 Miles Bader -2005-10-18 Jay Belanger + * net/rcirc.el (rcirc-log-filename-function): New variable. + (rcirc-log): Use `rcirc-log-filename-function' to generate the + log-file name. Don't log anything if it returns nil. + (rcirc-log-write): Use `expand-file-name' when merging the + log-file name from the alist with rcirc-log-directory; this does + the right thing if the name in the alist already an absolute + filename. Make the log-file directory if necessary. - * calc/calc-store.el (calc-store-into): Get the proper variable name - to display in message. +2007-12-29 Richard Stallman -2005-10-18 Nick Roberts + * font-lock.el (font-lock-prepend-text-property) + (font-lock-append-text-property): Canonicalize the face and + font-lock-face properties. - * progmodes/gdb-ui.el (gdb-var-create-handler): Make watch - expressions display in speedbar for all buffers when debugging. - (gdb-speedbar-expand-node): Ensure node contraction is always updated. + * faces.el (facep): Doc fix. - * speedbar.el (speedbar-set-mode-line-format): Indent properly. - (speedbar-insert-button, speedbar-make-button): - Use add-text-properties. - (speedbar-update-localized-contents) - (speedbar-update-directory-contents) - (speedbar-update-special-contents): Use dolist. - (speedbar-buffer-easymenu-definition): Add a menu separator. + * startup.el (fancy-startup-tail, fancy-about-text) + (fancy-startup-text): Regularize format of face property. -2005-10-17 Jason Rumney + * facemenu.el (list-colors-print): Use :background and :foreground + instead of background-color and foreground-color. - * makefile.w32-in: Use $(lisp) consistently. - (pre-mh-loaddefs.el-SH, pre-mh-loaddefs.el-CMD): New targets - for shell specific generation of mh-autoloads. +2007-12-29 Drew Adams -2005-10-17 Richard M. Stallman + * cus-edit.el (custom-add-parent-links): + Fill the "Parent documentation" text. - * textmodes/tex-mode.el (tex-font-lock-keywords-2): Undo prev change. +2007-12-29 Eli Zaretskii -2005-10-17 Stefan Monnier + * textmodes/ispell.el (ispell-grep-command): Use "grep" on + MS-Windows and MS-DOS. + (ispell-grep-options): Use "-Ei" on MS-Windows and MS-DOS. - * jit-lock.el (jit-lock-fontify-now): - Move jit-lock-context-unfontify-pos to avoid wasted work. +2008-01-02 Eric S. Raymond -2005-10-17 Michael Albinus + * vc-svn.el (vc-svn-modify-change comment): New function. - * net/tramp.el (tramp-completion-mode): New defvar. Used in - `tramp-completion-mode' for checking if we are in completion mode. - (tramp-completion-handle-file-name-all-completions): Reorder code - in order to complete for file names only in case there are no - method/user/host completions. This is necessary for cooperation - with ido. Reported by Kim F. Storm . +2008-01-01 Dan Nicolaescu -2005-10-16 Chong Yidong + * vc-git.el (vc-git-dir-state): Set the vc-backend property. + Do not disable undo, with-temp-buffer does it by default. - * longlines.el (longlines-search-forward) - (longlines-search-backward): Match any number of spaces. +2008-01-01 Eric S. Raymond -2005-10-16 Thien-Thi Nguyen + * vc-svn.el (vc-svn-parse-status): Set the `unregisted' property + correctly. - * diff-mode.el (diff-mode): Doc fix. + * vc.el (vc-dired-hook): Speed tuning. Replace a vc-backend call + with vc-state. + (vc-next-action): Fix vc-transfer-file call. -2005-10-16 David Reitter +2007-12-31 Tom Tromey - * mail/sendmail.el (send-mail-function): Use mailclient-send-it - as default on darwin and windows systems. + * emacs-lisp/elp.el (elp-results): Use header-line-format for header. + Move point to the start of the buffer. -2005-10-16 Sven Joachim (tiny change) +2007-12-31 Dan Nicolaescu - * arc-mode.el (archive-zip-extract): Doc fix. + * vc-cvs.el (vc-cvs-parse-entry): Set the vc-backend property. -2005-10-16 Romain Francoise + * vc.el: State that dir-state is required to set the vc-state and + vc-backend properties. - * mouse.el (mouse-1-click-follows-link): Doc fix. +2007-12-31 Martin Rudalics -2005-10-16 Stefan Monnier + * man.el (Man-default-man-entry): Make this a defun. + Improve guessing mechanism and handling of section numbers. - * savehist.el: Don't require CL at runtime. - (savehist-xemacs): Remove. - (savehist-coding-system): Use utf-8 if present, regardless of religion. - (savehist-no-conversion): Use (featurep 'xemacs). - (savehist-load): Check existence of start-itimer rather than XEmacs. - Use an idle timer. - (savehist-process-for-saving): Replace use of CL funs `subseq' and - `delete-if-not'. +2007-12-31 Richard Stallman -2005-10-16 Hrvoje Niksic + * faces.el (face-all-attributes): If FRAME is nil, return defaults. - * savehist.el: Newer version. - (savehist-autosave-interval, savehist-coding-system, savehist-timer) - (savehist-last-checksum, savehist-no-conversion): New vars. - (savehist-autosave, savehist-process-for-saving, savehist-printable): - New functions. - (savehist-load, savehist-save): Use them. - (savehist-delimit): Remove. +2007-12-31 Jay Belanger -2005-10-16 Stefan Monnier + * calc/calc-units.el (calc-convert-temperature): Ensure that units + are on the result even when the result is zero. - * progmodes/compile.el (compilation-goto-locus): Display the - compilation buffer first and the source buffer second, in case they're - in overlapping frames. Don't raise the compilation frame if it was the - selected window upon entry. Pass the `other-window' arg to - pop-to-buffer. +2007-12-30 Michael Albinus - * info.el (Info-fontify-node): Use dolist. - Change add-text-properties to put-text-property. + * net/dbus.el (dbus-name-owner-changed-handler): Make the function + resistent towards wrong parameters. + (dbus-handle-event): Propagate D-Bus errors only in the debug case. -2005-10-16 Roland Winkler +2007-12-30 Richard Stallman - * textmodes/bibtex.el (bibtex-font-lock-url): Catch when point past - bound of search. + * faces.el (face-all-attributes): New function. -2005-10-16 Masatake YAMATO + * faces.el (face-differs-from-default-p): Compute list of attr names + from face-attribute-name-alist. - * dabbrev.el (dabbrev-completion): Pass the common - prefix substring of completion to `display-completion-list'. + * cus-edit.el (custom-face-set): Call `face-spec-set' with FOR-DEFFACE. + (custom-face-save): Likewise. + (custom-face-reset-saved, custom-face-reset-standard): Likewise. - * filecache.el (file-cache-minibuffer-complete) - (file-cache-complete): Ditto. + * cus-face.el (custom-declare-face): Per frame, use `face-spec-set-2'. + (custom-theme-set-faces): Clear `face-override-spec' property. + Call `face-spec-set' with FOR-DEFFACE. - * tempo.el (tempo-display-completions): Ditto. + * custom.el (custom-theme-recalc-face): Simply call `face-spec-recalc'. - * wid-edit.el (widget-file-complete, widget-color-complete): Ditto. + * faces.el (face-spec-set): Third arg is now FOR-DEFFACE. + Use of frame as third arg is deprecated. + Handle `face-override-spec' property. + (face-spec-recalc): New function. + (face-spec-set-2): New function. + (frame-set-background-mode): Handle `face-override-spec' property. + Use `face-spec-recalc'. + (face-set-after-frame-default): Use `face-spec-recalc'. - * emacs-lisp/lisp.el (lisp-complete-symbol): Ditto. +2007-12-29 Nick Roberts - * eshell/em-hist.el (eshell-list-history): Ditto. + * thumbs.el (thumbs-conversion-program): Add comment for Windows XP. - * mail/mailabbrev.el (mail-abbrev-complete-alias): Ditto. +2007-12-29 Dan Nicolaescu - * mail/mailalias.el (mail-complete): Ditto. + * vc-hg.el (vc-hg-dir-state): Set the vc-backend property. - * progmodes/etags.el (complete-tag): Ditto. +2007-12-29 Eric S. Raymond - * progmodes/make-mode.el (makefile-complete): Ditto. + * vc-svn.el (vc-svn-parse-status): Recognize 'unregistered, + 'added, 'removed. - * progmodes/meta-mode.el (meta-complete-symbol): Ditto. + * vc.el (header coment): Better description of dir-state. + (vc-compatible-state): New function. Checks whether two states + can be in the same changeset; used with 'edited it can test whether + the next action for a state should be commit. + (vc-default-dired-state-info): Display 'removed state. + (vc-dired-hook): Turn off undo, this is a speed tweak. - * progmodes/octave-mod.el (octave-complete-symbol): Ditto. + * vc-bzr.el (vc-bzr-dir-state): Recognize 'added. - * progmodes/pascal.el (pascal-complete-word) - (pascal-show-completions): Ditto. + * vc-hg.el (vc-bzr-hg-state): Recognize 'added and 'removed. + Cope with the possibility that the 'C' status flag might change + in 0.9,6. - * textmodes/bibtex.el (bibtex-complete-internal): Ditto. + * vc-git.el (vc-bzr-dir-state): Recognize 'removed. - * simple.el (completion-common-substring): New variable. - (completion-setup-function): Use `completion-common-substring' - to put faces. +2007-12-29 Thien-Thi Nguyen -2005-10-16 YAMAMOTO Mitsuharu + * files.el (cd-absolute): Fix omission bug: + Make `list-buffers-directory' buffer-local. - * term/mac-win.el: Apply 2005-10-09 change for term/x-win.el. - (x-get-selection, mac-select-convert-to-string): Convert from/to - UTF-16 clipboard data as in native byte order, no BOM. +2007-12-29 Dan Nicolaescu -2005-10-16 Nick Roberts + * vc-hg.el (vc-hg-dir-state): Deal with the up-to-date state. - * progmodes/gud.el (gud-tool-bar-map): Rename the images - appropriately (gud/next, gud/nexti, gud/step, gud/stepi). - (gud-sentinel): Use speedbar-frame to check for speedbar. +2007-12-29 Jay Belanger -2005-10-15 Richard M. Stallman + * calc/calc-aent.el (math-read-token): Fix misplaced parentheses. - * savehist.el: New file. + * calc/calc-lang.el (calc-yacas-language, calc-maxima-language) + (calc-giac-language, math-yacas-parse-Sum, math-yacas-compose-sum) + (math-yacas-compose-deriv, math-yacas-compose-taylor) + (math-maxima-parse-subst, math-maxima-parse-taylor) + (math-maxima-compose-taylor, math-maxima-compose-subst) + (math-maxima-compose-if, math-lang-switch-args) + (math-lang-compose-switch-args, math-read-giac-subscr): + New functions. + (calc-lang-allow-underscores, calc-lang-allow-percentsigns) + (calc-lang-brackets-are-subscripts, calc-lang-c-type-hex): + Add languages. + (math-vector-brackets, math-complex-format, math-variable-table) + (math-parse-table, math-oper-table, math-function-table) + (math-special-function-table, math-compose-subscr): + Add values for new languages. -2005-10-14 Karl Chen + * calc/calccomp.el (math-compose-expr): Add new languages. - * textmodes/tex-mode.el (tex-font-lock-keywords-2): - Fix bug in \bf fontification. + * calc/calc.el (calc-language): Add languages to docstring. -2005-10-15 Stefan Monnier + * calc/calc-ext.el (calc-init-extensions): Add keybindings + for new languages. Autoload commands to change languages. - * pcvs.el (cvs-edit-log-files): New var. - (cvs-mode-edit-log): New arg `file'. - (cvs-edit-log-minor-wrap): Don't set the ignore-marks property. - Instead force the use of the original file and nothing else. - (cvs-edit-log-filelist): Don't use the cvs-mode-* function unless - the cvs-minor-wrap-function is set. - (cvs-do-edit-log): Obey the vars set in cvs-edit-log-minor-wrap. + * calc/calc-help.el (calc-d-prefix-help): Add new languages. -2005-10-14 Bill Wohler + * calc/calc-menu.el (calc-modes-menu): Add new languages. + (calc-arithmetic-menu, calc-scientific-function-menu) + (calc-algebra-menu, calc-graphics-menu, calc-vectors-menu) + (calc-units-menu, calc-variables-menu, calc-stack-menu): + Add :active keywords. - * toolbar/gud-break.*: Moved to etc/images/gud/break.*. - * toolbar/gud-cont.*: Moved to etc/images/gud/cont.*. - * toolbar/gud-down.*: Moved to etc/images/gud/down.*. - * toolbar/gud-finish.*: Moved to etc/images/gud/finish.*. - * toolbar/gud-ni.*: Moved to etc/images/gud/ni.*. - * toolbar/gud-n.*: Moved to etc/images/gud/n.*. - * toolbar/gud-print.*: Moved to etc/images/gud/print.*. - * toolbar/gud-pstar.*: Moved to etc/images/gud/pstar.*. - * toolbar/gud-remove.*: Moved to etc/images/gud/remove.*. - * toolbar/gud-run.*: Moved to etc/images/gud/run.*. - * toolbar/gud-si.*: Moved to etc/images/gud/si.*. - * toolbar/gud-s.*: Moved to etc/images/gud/s.*. - * toolbar/gud-until.*: Moved to etc/images/gud/until.*. - * toolbar/gud-up.*: Moved to etc/images/gud/up.*. - * toolbar/gud-watch.*: Moved to etc/images/gud/watch.*. +2007-12-28 Dan Nicolaescu - * progmodes/gud.el (gud-tool-bar-map): Rename the images - appropriately (for example, gud-break to gud/break). + * vc-hg.el (vc-hg-registered): Return the false when vc-hg-state + returns 'ignored or 'unregistered. + (vc-hg-state): Pass "-A" to the status command and deal with the + output. + (vc-hg-dir-state): Pass "-A" to the status command. -2005-10-14 Chong Yidong +2007-12-29 Richard Stallman - * longlines.el (longlinges-search-function) - (longlines-search-forward, longlines-search-backward): New functions. - (longlines-mode): Set isearch-search-fun-function to - longlinges-search-function. + * progmodes/compile.el (compilation-start): Set initial visible + point properly even when compilation buffer already current. - * mouse.el (mouse-drag-region-1): Handle the case where a - double-click event is bound to an arbitrary function. +2007-12-29 Richard Stallman -2005-10-14 David Ponce + * files.el (conf-mode-maybe): New function. + (auto-mode-alist): Use conf-mode-maybe for .conf etc. - * recentf.el (recentf-track-opened-file) - (recentf-track-closed-file, recentf-update-menu) - (recentf-used-hooks, recentf-enabled-p): Move before dialog stuff. - (recentf-dialog-mode-map): Map follow-link to RET, so dialogs obey - mouse-1-click-follows-link. +2007-12-29 Martin Rudalics -2005-10-13 Jan Dj,Ad(Brv + * textmodes/fill.el (fill-find-break-point): Fix doc-string typo. - * toolbar/diropen.xpm, toolbar/diropen.pbm: New versions made from - Gnome file-manager.png. Suggested by - Joachim Nilsson . +2007-12-29 Dan Nicolaescu - * toolbar/README: Add diropen.xpm. + * progmodes/asm-mode.el (asm-mode-map): Add a major mode menu. -2005-10-13 Bill Wohler +2007-12-29 Richard Stallman - * makefile.w32-in (MH_E_SRC): Rename from MH-E-SRC per NMAKE - restrictions. Suggested by David Robinow . + * comint.el (comint-mode-map): Explicitly bind `delete' and `kp-delete' + so they never do EOF. -2005-10-13 Stefan Monnier +2007-12-29 Richard Stallman - * progmodes/mixal-mode.el (mixal-operation-codes-alist): - Don't waste the byte-compiler's time on constant data. + * faces.el (copy-face): Create the new face explicitly if it + does not exist already. -2005-10-13 Kenichi Handa +2007-12-29 Eli Zaretskii - * international/utf-8.el (utf-8-compose): Display an invalid UTF-8 - byte with `escape-glyph' face. + * simple.el (minibuffer-history, shell-command-history) + (set-variable-value-history): + * replace.el (regexp-history): + * international/mule-cmds.el (input-method-history): + * files.el (file-name-history): Add reference to history-length in + the doc string. - * international/fontset.el (ccl-encode-unicode-font): - Lookup utf-subst-table-for-encode, not ucs-mule-cjk-to-unicode. - Handle the case that ucs-mule-to-mule-unicode translates a character to - ASCII (usually for IPA characters). +2007-12-29 Richard Stallman -2005-10-12 Stefan Monnier + * comint.el (comint-password-prompt-regexp): Match `Enter Password'. - * info.el (Info-fontify-node): Don't be fooled by a lone "...". - Don't hide the underline of titles if font-lock-mode is disabled. +2007-12-29 Jason Rumney -2005-10-12 Bill Wohler + * find-dired.el (find-name-arg): New custom variable. + (find-name-dired): Use it. + (find-dired-find-program): Remove. + (find-dired): Use find-program. + (find-grep-dired): Use grep-program. - * makefile.w32-in (MH-E-SRC): New. Used by mh-autoloads. - (mh-autoloads): New. Builds mh-e/mh-loaddefs.el. Rebuilds if any - files in MH-E-SRC have been updated. - (updates, compile, recompile, bootstrap): Depend on mh-autoloads. + * progmodes/grep.el (rgrep): Use find-name-arg. -2005-10-12 Stefan Monnier +2007-12-29 Thien-Thi Nguyen - * progmodes/mixal-mode.el (mixal-operation-codes): Remove. - (mixal-mode-syntax-table): Add \n as end-comment. - (mixal-operation-codes-alist): Immediately initialize to full value. - (mixal-add-operation-code): Remove. - (mixal-describe-operation-code): Make the arg non-optional. - Use the interactive spec instead. - Use mixal-operation-codes-alist rather than mixal-operation-codes. - (mixal-font-lock-keywords): Don't highlight comments here any more. - (mixal-font-lock-syntactic-keywords): New var. - (mixal-mode): Use it. Fix comment-start-skip. + * progmodes/cc-vars.el (defcustom-c-stylevar): + Revert to pre-2007-12-12 version. -2005-10-12 Jan Dj,Ad(Brv +2007-12-29 Richard Stallman - * startup.el (command-line-x-option-alist): -nb => -nbi. + * emacs-lisp/find-func.el (find-function-after-hook): Add :type. -2005-10-12 Kim F. Storm + * info.el (Info-clone-buffer): Rename from Info-clone-buffer-hook. + Use changed. - * startup.el (fancy-splash-default-action): Discard mouse click in - the splash screen window, as it has no sensible meaning in the - next window to be selected. Fixes error reported by Jan D. + * startup.el (fancy-splash-help-echo): Var deleted. + (fancy-splash-insert): Get help-echo from (startup-echo-area-message). + (fancy-about-screen): Don't display fancy-splash-help-echo. -2005-10-12 Reiner Steib + * menu-bar.el (menu-bar-describe-menu): Remove dots from menu text. - * desktop.el (desktop-load-file): Do nothing when FUNCTION is nil. +2007-12-28 Eric S. Raymond -2005-10-11 Stefan Monnier + * vc-hooks.el, vc.el: Move vc-directory-exclusion-list from vc.el + to vc-hooks.el so it will be available to other modes, such as + speedbar.el. Also, teach it to recognize monotone state directories. - * progmodes/mixal-mode.el: Sync with version in the GNU MDK project. - Try to fix up minor layout issues like indentation, line break, etc... - (mixal-mode-syntax-table): Don't try to specify comment syntax, - because it doesn't work. - (mixal-operation-codes): Add some more codes. - (mixal-font-lock-keywords): Process comments here. - (mixal-mode): mixasm no longer needs -g option. + * speedbar.el: Remove this mode's fragile assumptions about + version-control systems. Instead, make it use logic from + vc-hooks.el so it will become smarter whenever VC mode does. -2005-10-11 Sven Joachim (tiny change) + * vc-hooks.el: 'added is a real state, not a future hypothetical one. + Fix the documentation. - * progmodes/sh-script.el (sh-tmp-file): - Use mktemp -t. Finish support for es and rc shells. + * vc-bzr.el, vc-cvs.el, vc-git.el, vc-hg.el, vc-mcvs.el, vc-svn.el: + Modify all instances of the dir-state back-end method to suppress + keeping undo lists on the buffers holding status output, which + can get extremely large. -2005-10-11 Jay Belanger + * vc-cvs.el, vc-svn.el: Simplify backend dired-state-info functions + so they don't do work that the default one can do instead. - * calc/calcalg2.el (calc-integral): With an argument, compute the - definite integral. + * vc-hooks.el (vc-state): Document new 'ignored and 'unregistered + states, and the new return-value convention. These are not + actually used yet, just set. -2005-10-11 Chong Yidong + * vc-svn.el (vc-svn-parse-status): Set 'ignored and 'unregistered + states when appropriate. - * mouse.el (mouse-drag-region-1): Don't try to catch a - double-click when doing follow-link (it's overridden anyway). + * vc-hg.el (vc-hg-state, vc-hg-dir-state): Set 'ignored and + 'unregistered when appropriate. -2005-10-11 Juanma Barranquero + * vc-git.el: Document that we don't set the new states yet. - * emacs-lisp/autoload.el (update-directory-autoloads): Doc fix. - (autoload-print-form-outbuf): Add docstring. + * vc.el (vc-dired-state-info): Display 'added, 'unregistered and + 'ignored states. -2005-10-11 Juri Linkov + * vc-cvs.el (vc-cvs-parse-status): Set the 'ignored state when + appropriate. - * info.el (Info-mode-menu): Delete menu item "Edit". - (Info-mode): Delete description of Info-edit from docstring, - and rearrange descriptions of Info commands in the order - they are documented in the Info manual. + * vc-bzr.el (vc-bzr-dir-state): Set 'ignored and 'unregistered + when appropriate. -2005-10-11 Stefan Monnier +2007-12-28 Nick Roberts - * calendar/appt.el (appt-check): Use diary-selective-display var. + * thumbs.el (thumbs-call-convert): Use call-process directly + with thumbs-conversion-program instead of through shell-file-name + for better error reporting. -2005-10-10 Richard M. Stallman +2007-12-27 Jay Belanger - * net/newsticker.el (newsticker-start, newsticker-show-news): - Add autoload cookies. + * calc/calc-aent.el (math-remove-percentsigns): + * calc/calccomp.el (math-to-percentsigns): Change placeholder + for percent signs. -2005-10-10 Emanuele Giaquinta +2007-12-27 Eric S. Raymond - * progmodes/sh-script.el (sh-tmp-file): Use mktemp. + * vc.el (vc-dired-ignorable-p, vc-dired-hook): Speed optimization; + use completion-ignored-extensions to detect files that should be + ignorted in VC-Dired listings, heading off lots of expensive calls + to (vc-state). -2005-10-10 Karl Chen + * vc.el (vc-dired-hook): Show unregistered file status as "?" in + non-terse mode. + (vc-dired-ignorable-p): Ignore Makefile when it has a peer named + Makefile.in or Makefile.am. - * jka-cmpr-hook.el (jka-compr-handler): Fix typo in `operations' prop. +2007-12-27 Vinicius Jose Latorre -2005-10-10 Jay Belanger + * ps-print.el (ps-mark-active-p): Fun returned back. + (ps-print-preprint-region): Use `ps-mark-active-p' instead of + `region-active-p' for error checking. - * calc/calc-arith.el (math-check-known-scalarp) - (math-check-known-matrixp): Check the values of arguments that are - variables. - (math-check-known-square-matrixp): New function. - (math-known-square-matrixp): Use math-check-known-square-matrixp. - (math-super-types): Add sqmatrix type. +2007-12-27 Eric S. Raymond - * calc/calc-mode.el (calc-matrix-mode, math-get-modes-vec): Change the - mode name `square' to `sqmatrix'. + * vc.el, vc-sccs.el, vc-rcs.el, vc-cvs.el, vc-mcvs.el: + Put new machinery in place to support editing of change comments + with 'e' in a log-view buffer. Not documented yet as this + only works for SCCS, RCS, and maybe CVS if you have admin + privileges. When we have backend support for Subversion and + more modern systems it will be time to write this up. - * calc/calc.el (calc-matrix-mode, calc-set-mode-line): Change the - mode name `square' to `sqmatrix'. +2007-12-27 Kenichi Handa -2005-10-10 Stefan Monnier + * international/mule-cmds.el (select-safe-coding-system): + When a buffer is modified, cancel the writing. - * progmodes/etags.el (select-tags-table-mode): Don't use - selective-display. - (tags-select-tags-table): Pass `button' to the action function. - (select-tags-table): Place the side-info on button properties rather - than in hidden text. Abbreviate file names. - (select-tags-table-mode-map): Inherit rather than copy buttom-map. - (select-tags-table-select): Add `button' argument. - Get side-info from the button property rather than from hidden text. +2007-12-26 Eric S. Raymond -2005-10-11 Nick Roberts + * log-view.el: Add Subversion and Mercurial log format samples. - * progmodes/gud.el (gud-install-speedbar-variables): Add more bindings. - (gud-speedbar-buttons): Preserve point if possible. - (gud-sentinel): Restore previous speedbar display type. + * vc.el (vc-dired-hook): Significantly speed up by arranging for + it to call the backend dir-state hook (if it exists) + exactly *once*, rather than once per each subdirectory (with + dired-state-info calls on all toplevel files slowing it down even + further). For this to work, backend dir-state methods have to + recurse to subdirectories. Most of them already did anyway; a few + needed *non*-recursion switches removed. This change mostly + removed code that was perversely bad and should have been shot + through the head years ago. - * progmodes/gdb-ui.el (gdba): Improve diagram. - (def-gdb-auto-update-handler, gdb-info-locals-handler) - (gdb-put-breakpoint-icon, gdb-remove-breakpoint-icons): - Call get-buffer-window once. + * vc-bzr.el (vc-bzr-dir-state): + * vc-cvs.el (vc-cvs-dir-state): + * vc-mcvs.el (vc-mcvs-dir-state): + * vc-svn.el (vc-svn-dir-state): Recurse in subdirectories. -2005-10-10 Stefan Monnier + * vc-svn.el (vc-svn-print-log): svn log doesn't actually accept + multiple arguments, so generate logs sequentially when we get them. + * vc-hg.el (vc-hg-print-log): Gives this CVS-like "Working file:" + headers so the various log bindings can do the right thing. + * vc-cvs.el (vc-cvs-print-log): Fix a misleading comment. - * progmodes/pascal.el (pascal-mode-map): Move init into declaration. - (pascal-mode-syntax-table): Make (* *) markers same class as { ... }. - (pascal-indent-command): Remove unused var `ind'. - (pascal-indent-case): Remove unused var `oldpos'. - (pascal-outline-map): Don't inherit from pascal-mode-map anymore, - since it's now used as a proper minor mode map. - (pascal-outline): Rename to pascal-outline-mode. - (pascal-outline-mode): Use define-minor-mode. - (pascal-outline-mode, pascal-outline-change): Use overlays rather than - selective-display. +2007-12-26 Andreas Schwab -2005-10-10 Andreas Schwab + * font-lock.el (save-buffer-state): Make sure the state of the + buffer is always restored. - * textmodes/tex-mode.el (tex-font-lock-keywords-2): Adjust match - number. Reported by Karl Chen . +2007-12-26 Jay Belanger - * Makefile.in ($(lisp)/mh-e/mh-loaddefs.el): Fix for building - outside source directory. + * calc/calc.el (calc-lang-allow-percentsigns): New variable. -2005-10-10 Carsten Dominik + * calc/calc-lang.el (calc-lang-allow-percentsigns): Declare as + a variable. - * textmodes/org.el (org-mode-map): Explicit definition of `C-c - C-x' as a prefix. - (orgtbl-mode-map): Full keymap instead of sparse, because all - `self-insert-command' keys are redefined in this map. - (org-export-as-html): Specify charset for HTML file, by taking it - from the coding system. + * calc/calccomp.el (math-to-percentsigns): New function. + (math-compose-var): Handle variables with percent signs. + (math-compose-expr): Handle function names with percent signs. -2005-10-10 Kenichi Handa + * calc/calc-aent.el (math-to-percentsigns): Declare as function. + (math-read-exprs): Handle percent signs in languages that + allow them. + (math-restore-underscores): Remove function. + (math-remove-percentsigns, math-restore-placeholders): + New functions. - * textmodes/flyspell.el (flyspell-check-word-p): - If unread-command-events is non-empty, don't call sit-for. +2007-12-26 Vinicius Jose Latorre -2005-10-09 Richard M. Stallman + * ps-print.el (ps-print-preprint-region): Use `region-active-p' instead + of `mark' for error checking. - * font-lock.el (font-lock-syntactic-keywords) - (font-lock-keywords): Doc fixes. +2007-12-26 Tassilo Horn - * textmodes/flyspell.el (flyspell-external-point-words): - Simplify logic, and don't try to check for consecutive appearances - of one incorrect word. + * image-mode.el (image-bookmark-make-cell, image-bookmark-jump): + New functions. + (image-mode): Set bookmark-make-cell-function appropriately. -2005-10-10 Nick Roberts + * doc-view.el (doc-view-bookmark-jump): Correct misspelled arg name. - * speedbar.el (speedbar-buffer-easymenu-definition): Add menu - separator. + * bookmark.el (bookmark-make-cell-function): New variable. + (bookmark-make): Call bookmark-make-cell-function's function + instead of bookmark-make-cell. + (bookmark-get-handler, bookmark-jump-internal): New functions. + (bookmark-jump, bookmark-jump-other-window, bookmark-insert) + (bookmark-bmenu-2-window, bookmark-bmenu-other-window): + Use bookmark-jump-internal. + (bookmark-make-cell-for-text-file): Rename from bookmark-make-cell. - * progmodes/gud.el (gud-last-speedbar-buffer): Remove. - (gud-install-speedbar-variables): Add GUD to speedbar "Displays" list. - (gud-expansion-speedbar-buttons): New function. - (gud-speedbar-buttons): Check for gud-comint-buffer. + * doc-view.el (doc-view-bookmark-make-cell) + (doc-view-bookmark-jump): New functions. + (doc-view-mode): Set bookmark-make-cell-function buffer-locally. -2005-10-09 Bill Wohler +2007-12-25 Miles Bader - * Makefile.in (updates): Add mh-loaddefs dependency. + * indent.el (indent-for-tab-command): Rigidly indent the following + sexp along with the current line when a prefix arg is given in the + non-active-region case. Specify raw prefix in interactive spec. + Simplify main indentation logic to get rid of the conditional call + to `indent-according-to-mode' (it just ended up calling + `indent-line-function' in all cases anyway, which can be done more + simply here). Remove unnecessary test of ARG in active region case. -2005-10-09 Chong Yidong +2007-12-25 Richard Stallman - * speedbar.el (speedbar-file-key-map): Fix typo. + * allout.el (allout-region-active-p): Rename from my-region-active-p. + Use `use-region-p'. + (allout-write-file-hook-handler): Simplify code. -2005-10-09 Daniel Brockman + * ps-print.el (ps-mark-active-p): Function deleted. + (ps-print-preprint-region): Use (mark) for the error check. - * cus-start.el (line-spacing): Add custom spec. + * tooltip.el (tooltip-region-active-p): Use `use-region-p'. -2005-10-09 Romain Francoise + * winner.el (winner-active-region): Use `mark-active' if it's defined. - * textmodes/ispell.el (ispell-check-version): Fix last change. + * progmodes/ada-mode.el (ada-region-selected): Use `use-region-p'. -2005-10-09 Jan Dj,Ad(Brv + * textmodes/org.el (org-region-active-p): Use `use-region-p'. - * term/x-win.el: Remove -i, --icon-type from comment. + * progmodes/idlwave.el (idlwave-region-active-p): Use `use-region-p'. - * startup.el (command-line-x-option-alist): Remove options -i, - -itype, --icon-type, added -nb, --no-bitmap-icon. + * textmodes/reftex.el (reftex-region-active-p): Use `use-region-p'. -2005-10-09 Nick Roberts + * progmodes/cc-defs.el (c-region-is-active-p): + Use `mark-active' if it's defined. - * progmodes/gud.el (gud-speedbar-menu-items): Use :visible - instead of :active. + * progmodes/cc-cmds.el (c-indent-line-or-region): + Pass prefix arg to `c-indent-command'. Use `use-region-p'. -2005-10-08 Eric Hanchrow (tiny change) + * simple.el (select-active-regions): New option. + (set-mark): Obey it. + (yank-pop-change-selection): New option. + (current-kill): Obey it. - * textmodes/ispell.el (ispell-check-version): - Ignore hyphen, and all that follows, in aspell's version text. + * simple.el (use-region-p): Rename from `region-active-p'. + (region-active-p): New function. -2005-10-08 Jay Belanger +2007-12-25 David Golden (tiny change) - * calc/calc-arith.el (math-known-square-matrixp): New function. - (math-pow-fancy): Check for matrices before distributing exponent - across products. + * term/x-win.el (x-select-enable-primary): New option. + (x-select-text, x-cut-buffer-or-selection-value): Obey it. - * calc/calc-keypd.el (calc-do-keypad): Widen keypad window for - fullscreen keypad. Suggested by Luc Teirlinck. - (calc-keypad-show-input): Add space for formatting. + * mouse.el (mouse-yank-primary): New function (almost same + as mouse-yank-secondary). - * calc/calc-mode.el (calc-matrix-mode, math-get-modes-vec): - Add square matrix option. +2007-12-25 Dan Nicolaescu - * calc/calc-poly.el (math-expand-term): Check for matrices instead - of checking calc-matrix-mode when deciding how to expand. + * calculator.el: + * dframe.el: + * iswitchb.el: + * whitespace.el: + * winner.el: + * emacs-lisp/checkdoc.el: + * mail/feedmail.el: + * net/quickurl.el: + * obsolete/fast-lock.el: + * play/5x5.el: + * progmodes/delphi.el: + * progmodes/idlw-shell.el: + * progmodes/idlwave.el: + * textmodes/artist.el: + * textmodes/ispell.el: + * textmodes/texinfmt.el: + * textmodes/texinfo.el: Remove obsolete definitions of backward + compatibility macros for defcustom, defgroup, defface, when, + unless, with-current-buffer and with-temp-message. + +2007-12-24 Nick Roberts + + * progmodes/verilog-mode.el: Reformat parts to 80 columns. + +2007-12-23 Stefan Monnier + + * server.el (server-save-buffers-kill-terminal): Check the `proc' is + indeed a process. - * calc/calc.el (calc-set-mode-line): Add square matrix option. +2007-12-23 Richard Stallman -2005-10-08 Lars Hansen + * simple.el (region-active-p): New function. + (use-empty-active-region): New variable. - * net/tramp.el (tramp-perl-directory-files-and-attributes): - Add error handling. - (tramp-handle-directory-files-and-attributes): Handle perl error msg. + * dired-aux.el (dired): Load dired.el at run time too. -2005-10-08 Michael Albinus +2007-12-23 Juri Linkov - Sync with Tramp 2.0.51. + * man.el (Man-follow-manual-reference): Fill the minibuffer's + default list with a full list of references. - * net/tramp.el (tramp-handle-set-visited-file-modtime) - (tramp-handle-insert-file-contents, tramp-handle-write-region): - Insert special handling for `last-coding-system-used', again - it still seems to be necessary (unlike stated before). - Reported by Toshinori Sugita . - (tramp-password-prompt-regexp): There might be other words before - trailing ":". Reported by Kurt Steinkraus . - (tramp-chunksize): Improve docstring. - (tramp-set-auto-save-file-modes): Octal integer code #o600 breaks - Emacs 20. Use `tramp-octal-to-decimal' therefore. Reported by - Christian Joergensen . + * files.el (auto-mode-alist): Add \\' to doc-view files regexp. -2005-10-07 Glenn Morris +2007-12-23 Andreas Schwab - * progmodes/f90.el (f90-keywords-re, f90-mode): Doc fix. - (f90-font-lock-keywords-2, f90-mode-abbrev-table): Add `double - precision'. + * files.el (switch-to-buffer-other-frame): Return the buffer + switched to. -2005-10-07 Romain Francoise +2007-12-23 Michael Albinus - * ibuf-ext.el (ibuffer-do-shell-command-pipe) - (ibuffer-do-shell-command-pipe-replace) - (ibuffer-do-shell-command-file, ibuffer-do-eval) - (ibuffer-do-view-and-eval, ibuffer-do-rename-uniquely) - (ibuffer-do-revert, ibuffer-do-replace-regexp) - (ibuffer-do-query-replace, ibuffer-do-query-replace-regexp) - (ibuffer-do-print, ibuffer-filter-by-mode, ibuffer-filter-by-used-mode) - (ibuffer-filter-by-name, ibuffer-filter-by-filename) - (ibuffer-filter-by-size-gt, ibuffer-filter-by-size-lt) - (ibuffer-filter-by-content, ibuffer-filter-by-predicate - (ibuffer-do-sort-by-major-mode, ibuffer-do-sort-by-mode-name) - (ibuffer-do-sort-by-alphabetic, ibuffer-do-sort-by-size): - Autoload file sans suffix. + Sync with Tramp 2.1.12. - * emulation/cua-base.el (cua-toggle-global-mark): Likewise. + * net/tramp.el: New todo item. -2005-10-07 David Ponce + * net/tramp-smb.el (tramp-smb-handle-insert-directory): Handle "-F" + switch. Reported by Mark T. Kennedy . - * recentf.el (recentf-menu-open-all-flag): New option. - (recentf-digit-shortcut-command-name): New function. - (recentf--shortcuts-keymap): New variable. - (recentf-menu-shortcuts): New variable. - (recentf-make-menu-items): Initialize it. Replace the "More..." - menu item by "All...", if `recentf-menu-open-all-flag' is non-nil. - (recentf-menu-value-shortcut): New function. - (recentf-make-menu-item): Use it. No more in-lined. - (recentf-dialog-mode-map): Base on `recentf--shortcuts-keymap'. - (recentf-open-most-recent-file): Rename from - `recentf-open-file-with-key'. Don't depend on key binding. - (recentf-mode-map): New variable. - (recentf-mode): Use it. + * net/trampver.el: Update release number. -2005-10-06 Bill Wohler +2007-12-22 Richard Stallman - * mh-e/mh-loaddefs.el: Remove. Now generated automatically. + * newcomment.el (comment-region-default): Don't triple the + comment starter if the first region line isn't indented enough. - * Makefile.in (AUTOGENEL): Add mh-e/mh-loaddefs.el. - (MH-E-SRC): New. Used by mh-autoloads. - (mh-autoloads): New. Builds mh-e/mh-loaddefs.el. Rebuilds if any - files in MH-E-SRC have been updated. - (compile, recompile, bootstrap): Depend on mh-autoloads. +2007-12-21 Teodor Zlatanov -2005-10-07 Nick Roberts + * net/imap.el (imap-authenticate): Use current-buffer instead of + buffer, for the cases where imap-authenticate is called with a nil + buffer parameter. - * progmodes/gud.el (gud-menu-map): Only display un-intuitive - gud-break and gud-remove icons when the fringe is not available. +2007-12-21 Martin Rudalics - * progmodes/gdb-ui.el (gdb-fringe-width -> gdb-buffer-fringe-width): - Typo. + * autoinsert.el (auto-insert-alist): Remove nonsensical precision + specifier from format-string. Reported by Ye Wenbin. -2005-10-06 Micha,Ak(Bl Cadilhac +2007-12-20 Jason Rumney + + * nxml/nxml-mode.el (nxml-faces): Rename from nxml-highlighting-faces. + Parent group is font-lock-faces. + (nxml-light-blue-color, nxml-dark-blue-color, nxml-green-color) + (nxml-sky-blue-color, nxml-dark-green-color, nxml-light-green-color): + (nxml-version): Remove. + (nxml-delimited-data, nxml-name, nxml-ref, nxml-delimiter) + (nxml-text, nxml-comment-content, nxml-comment-delimiter) + (nxml-processing-instruction-delimiter) + (nxml-processing-instruction-target) + (nxml-processing-instruction-content, nxml-cdata-section-delimiter) + (nxml-cdata-section-CDATA, nxml-cdata-section-content) + (nxml-char-ref-number, nxml-char-ref-delimiter, nxml-entity-ref-name) + (nxml-entity-ref-delimiter, nxml-tag-delimiter, nxml-tag-slash) + (nxml-element-prefix, nxml-element-colon, nxml-element-local-name) + (nxml-attribute-prefix, nxml-attribute-colon) + (nxml-attribute-local-name, nxml-namespace-attribute-xmlns) + (nxml-namespace-attribute-colon, nxml-namespace-attribute-prefix) + (nxml-attribute-value, nxml-attribute-value-delimiter) + (nxml-namespace-attibute-value) + (nxml-namespace-attribure-value-delimiter) + (nxml-prolog-literal-delimiter, nxml-prolog-literal-content) + (nxml-prolog-keyword, nxml-markup-declaration-delimiter, nxml-hash) + (nxml-glyph): Rename, removing -face suffix. + Inherit from existing font-lock faces. + (nxml-apply-fontify-rule, nxml-char-ref-display-extra): + Use new face names. + + * nxml/nxml-outln.el (nxml-heading, nxml-outline-indicator) + (nxml-outline-active-indicator, nxml-outline-ellipsis): + Rename, removing -face suffix. + (nxml-highlighted-less-than, nxml-highlighted-greater-than) + (nxml-highlighted-colon, nxml-highlighted-slash) + (nxml-highlighted-ellipsis, nxml-highlighted-inactive-minus) + (nxml-highlighted-active-minus, nxml-highlighted-active-plus) + (nxml-highlighted-qname, nxml-outline-display-heading): + Use new face names. + + * nxml/rng-valid.el (rng-error): Rename from rng-error-face. + + * nxml/rng-nxml.el (rng-nxml-easy-menu): Remove nxml-version. - * play/zone.el (zone): Wrap body with save-window-excursion. +2007-12-19 Martin Rudalics -2005-10-06 Stefan Monnier + * cus-start.el (all): Use correct group name for members of + mode-line group. - * calendar/cal-menu.el (calendar-mouse-view-diary-entries): - Use the new `list-only' arg to diary-list-entries. - - * calendar/diary-lib.el: Use overlays rather than selective-display. - (diary-selective-display): New var. - (diary-header-line-format): Use it. - (diary-list-entries): Add argument `list-only'. - Put the buffer in diary-mode. Don't add \^M at beg and end. - Replace \^M by invisible overlays. - (diary-unhide-everything): Replace \^M by invisible overlays. - (print-diary-entries): Look for overlays rather than \^M. - Add a space to the temp buffer name. - (diary-show-all-entries, mark-diary-entries, make-diary-entry): - Put the buffer in diary-mode. - (list-sexp-diary-entries): Replace \^M by invisible overlays. - (diary-anniversary): Make the year arg optional. - (diary-time-regexp): New const. - (diary-font-lock-keywords): Use it to accept a few more time formats. - - * pcvs.el (cvs-sentinel): Make sure we do re-enable undo. - -2005-10-06 Thien-Thi Nguyen - - * textmodes/artist.el (artist-ellipse-mirror-quadrant): - Fix bug introduced 2005-07-03: Use (car (last ...)) - to faithfully reproduce replaced artist-last. - (artist-set-arrow-points-for-poly): Likewise. - Suggested by Johan Bockg,Ae(Brd. - -2005-10-06 Juanma Barranquero - - * dframe.el (x-pointer-hand2, x-pointer-top-left-arrow): - * wid-edit.el (widget): - * progmodes/gdb-ui.el (gdb-buffer-fringe-width): - * progmodes/vhdl-mode.el (speedbar-attached-frame): Add defvars. + * man.el (Man-default-man-entry): When looking for default man + entry title search text preceding point. Use when instead of if. -2005-10-06 Kenichi Handa + * indent.el (indent-for-tab-command): Fix doc-string typo. - * international/mule-cmds.el (set-language-environment): - Fix setting up of case-table for unibyte mode. - - * simple.el (what-cursor-position): If the character is displayed - by some `display' text property, show that. Don't use - single-key-description for eight-bit characters in multibyte mode. - -2005-10-06 Nick Roberts - - * progmodes/gdb-ui.el (gdb-fringe-width): New variable. - (gdb-ann3): Set it. - (gdb-put-breakpoint-icon): Don't take fringe-width from speedbar frame. - (gdb-info-frames-custom): Use inverse-video for first five - characters of selected frame only. - (gdb-get-frame-number): Select frame even when point is on frame - number. - -2005-10-06 Masatake YAMATO - - * progmodes/gdb-ui.el (gdb-info-breakpoints-custom): - Put `font-lock-function-name-face'. - (gdb-info-frames-custom): Put `font-lock-function-name-face' - and `font-lock-variable-name-face' - (gdb-registers-font-lock-keywords): New font lock keywords definition. - (gdb-registers-mode): Use `gdb-registers-font-lock-keywords`. - (gdb-memory-font-lock-keywords): New font lock keywords definition. - (gdb-memory-mode): Use `gdb-memory-font-lock-keywords'. - (gdb-local-font-lock-keywords): New font lock keywords definition. - (gdb-locals-mode): Use `gdb-local-font-lock-keywords' - (gdb-threads-font-lock-keywords): New font lock keywords definition. - (gdb-threads-mode): Use `gdb-threads-font-lock-keywords'. - -2005-10-05 Michael Kifer - - * ediff-merg.el (ediff-merge-region-is-non-clash): New defsubst. - (ediff-merge-region-is-non-clash-to-skip): Previously called - ediff-merge-region-is-non-clash. - - * ediff-mult.el (ediff-append-custom-diff, ediff-meta-show-patch): - Use insert-buffer-substring. - - * ediff-ptch.el (ediff-fixup-patch-map): Use better heuristics for - selecting files to patch. Also bug fixes. - - * ediff-util.el (ediff-setup): Bug fix. - (ediff-next-difference): Never skip clashes that differ in white - space only. - - * ediff-wind.el (ediff-setup-control-frame) - (ediff-destroy-control-frame): Check the menubar feature. - - * emulation/viper-cmd.el (viper-normalize-minor-mode-map-alist) - (viper-refresh-mode-line): Use make-local-variable to localize - some vars instead of make-variable-buffer-local. Suggested by - Stefan Monnier. - - * emulation/viper-init.el (viper-make-variable-buffer-local): - Delete alias. - (viper-restore-cursor-type, viper-set-insert-cursor-type): - Use make-local-variable instead of make-variable-buffer-local. - Suggested by Stefan Monnier. - - * emulation/viper.el (viper-mode): Don't use - viper-make-variable-buffer-local. - (viper-comint-mode-hook): Use make-local-variable on - require-final-newline. - (viper-non-hook-settings): Don't use make-variable-buffer-local. - -2005-10-05 Stefan Monnier - - * progmodes/scheme.el (scheme-mode-syntax-table): Mark ; as being - also the second char of a comment-start sequence. - (scheme-sexp-comment-syntax-table): New var. - (lambda, define): Set their scheme-doc-string-elt property. - (scheme-font-lock-syntactic-face-function): Handle sexp-comments. - Use lisp-font-lock-syntactic-face-function now that it properly - handles |...| symbols. - (scheme-mode-variables): Set lisp-doc-string-elt-property, - parse-sexp-lookup-properties and font-lock-extra-managed-props. - - * emacs-lisp/lisp-mode.el (lisp-mode-syntax-table): Move the nesting - bit from # to |. - (lisp-font-lock-syntactic-face-function): Distinguish |...| symbols. - - * emacs-lisp/lisp-mode.el (lambda): Add its doc-string-elt property. - (lisp-doc-string-elt-property): New var. - (lisp-font-lock-syntactic-face-function): Use it. - Rewrite to recognize docstrings even for forms not at toplevel. - - * progmodes/scheme.el (scheme-mode-syntax-table): Put the nested - annotation on the | part of #| rather than on the # part. - (scheme-font-lock-syntactic-face-function): New function, to - distinguish strings from |...| symbols. - (scheme-mode-variables): Use it. Also fix up the font-lock-time - syntax-table so that #|...|# is properly highlighted. - - * emacs-lisp/lisp-mode.el (lisp-font-lock-syntactic-face-function): - Don't mark as docstring the 3rd elem of an unknown toplevel form. - -2005-10-04 Stefan Monnier - - * bindings.el (global-map): Resync [home] and [end] bindings with C-a - and C-e. - - * emacs-lisp/eldoc.el: Move comments into docstrings. - (eldoc-message-commands): Initialize in its declaration. - Add move-beginning-of-line and move-end-of-line. - (eldoc-add-command, eldoc-add-command-completions) - (eldoc-remove-command, eldoc-remove-command-completions): Simplify. - - * outline.el (outline-mark-subtree): Activate the mark. - - * calendar/appt.el (appt-time-regexp): New var. - (appt-add, appt-make-list): Use it. - (appt-convert-time): Clean up. + * vc.el (vc-ensure-vc-buffer): Avoid infinite looping when + vc-parent-buffer is the current buffer. - * textmodes/tex-mode.el (tex-font-lock-syntactic-face-function): - Don't set any syntax-table property here. - (tex-font-lock-verb): New function. Do it here. - (tex-font-lock-syntactic-keywords): Use it. + * info-look.el (info-lookup, info-lookup-setup-mode) + (info-lookup-make-completions): Avoid clobbering Info-history and + Info-history-list. -2005-10-04 Richard M. Stallman +2007-12-19 Glenn Morris - * wid-edit.el (widget-file-complete): Get the widget start point - the right way. Default directory to `/' if file has none. + * progmodes/verilog-mode.el (top-level): Don't require compile. + (compilation-error-regexp-alist, compilation-last-buffer): + Define for compiler. + (verilog-insert-1): New function. + (verilog-insert-indices, verilog-generate-numbers): Doc fixes. + Use verilog-insert-1. + (verilog-surelint-off): Use next-error-last-buffer if bound. + Check compile buffer is live. - * x-dnd.el (x-dnd-drop-data): Check for dedicated windows. +2007-12-19 John J Foerch (tiny change) - * textmodes/flyspell.el (flyspell-mode-on): - Call ispell-maybe-find-aspell-dictionaries. + * progmodes/compile.el (compilation-start): Don't pass a FRAME + argument to display-buffer. - * textmodes/ispell.el (ispell-word, ispell-region): - Call ispell-maybe-find-aspell-dictionaries. - (ispell-accept-buffer-local-defs): - Don't call ispell-maybe-find-aspell-dictionaries. +2007-12-19 Jason Rumney -2005-10-04 Richard M. Stallman + * nxml/rng-maint.el (rng-format-manual): Do not autoload. + (rng-autoload-modules, rng-update-autoloads, rng-compile-modules) + (rng-byte-compile-load, rng-write-version): Remove. - * iswitchb.el (iswitchb-buffer-ignore): Label it risky. + * nxml/rng-loc.el (rng-schema-locating-files-default) + (rng-schema-locating-file-schema-file): Use files in etc/schemas. + (rng-schema-loader-alist): Use rng-c-load-schema to load rnc files. -2005-10-04 Emilio C. Lopes +2007-12-18 Michael Albinus - * iswitchb.el (iswitchb-ignore-buffername-p): Use `functionp' - instead of `fboundp' in order to allow for anonymous functions. + * files.el (cd-absolute): Set `list-buffers-directory' in order to + show correct path in buffer list. -2005-10-04 Chong Yidong + * net/tramp.el (tramp-open-connection-setup-interactive-shell) + (tramp-find-shell): Send only single prompt setting commands, in + order to avoid double-prompt. - * info.el (Info-next, Info-prev, Info-up): Select info buffer, in - case the user clicks on the link while another window is selected. - (Info-speedbar-hierarchy-buttons): Use speedbar-current-frame. + * net/tramp-compat.el (top): Require cl only when compiling. + Reported by Glenn Morris . - * dframe.el (dframe-update-keymap): Use mouse-1-click-follows-link - functionality. - (dframe-help-echo): Save point in case mouse tracking is off. +2007-12-18 Thien-Thi Nguyen -2005-10-04 Thien-Thi Nguyen + * progmodes/cc-vars.el (defcustom-c-stylevar): Eval VAL. + (c-comment-continuation-stars): No longer declare with + cc-bytecomp-obsolete-var and cc-bytecomp-defvar. + (c-block-comment-prefix): Use symbol-value to + access c-comment-continuation-stars. + * progmodes/cc-mode.el (c-initialize-cc-mode): + Use symbol-value to access c-comment-continuation-stars. - * net/ange-ftp.el (ange-ftp-ls): Fix typo introduced in last change. +2007-12-18 Mark A. Hershberger -2005-10-03 Stefan Monnier + * xml.el (xml-escape-string): New function. Escape string using + xml-entity-alist. + (xml-debug-print-internal): Use xml-escape-string to escape + characters in attributes and in text children of elements. - * progmodes/cc-styles.el (c-setup-paragraph-variables): Make sure we do - not change the global value of those vars. +2007-12-18 Glenn Morris - * progmodes/cc-mode.el (c-basic-common-init): Remove calls to - make-local-variable which we do not need any more. + * progmodes/cc-subword.el (c-subword-mode): Drop support for + systems without define-minor-mode. -2005-10-03 Chong Yidong + * progmodes/cc-vars.el (defcustom-c-stylevar): Remove debugging message. - * speedbar.el (speedbar-ignored-path-regexp, speedbar-line-path) - (speedbar-ignored-path-expressions, speedbar-buffers-line-path) - (speedbar-add-ignored-path-regexp, speedbar-buffers-line-path) - (speedbar-path-line): Define obsolete aliases. - (speedbar-line-directory): Doc fix. + * progmodes/verilog-mode.el: Replace all instances of + string-to-int with string-to-number, insert-string with insert, + and read-input with read-string. + (top-level): No need to require imenu, reporter, dinotrace, vc, + font-lock when compiling. Always require compile. Relegate remaining + compatibility cruft to XEmacs. Don't require font-lock. + (verilog-version): Remove superfluous concat. + (dinotrace-unannotate-all, zmacs-activate-region, customize-apropos): + No need to define. + (verilog-regexp-opt): On Emacs, just make it an alias for regexp-opt. + (verilog-font-lock-keywords, verilog-font-lock-keywords-1) + (verilog-font-lock-keywords-2, verilog-font-lock-keywords-3) + (verilog-startup-message-displayed): These are variables, not constants. + (verilog-batch-execute-func, verilog-auto-inst) + (verilog-auto-inst-param): Use mapc rather than mapcar. + (sigs-in, sigs-inout, sigs-out): Define for compiler rather than + actually defining. + (verilog-modi-get-decls, verilog-modi-get-sub-decls) + (verilog-modi-get-outputs, verilog-modi-get-inouts) + (verilog-modi-get-inputs, verilog-modi-get-wires) + (verilog-modi-get-regs, verilog-modi-get-assigns) + (verilog-modi-get-consts, verilog-modi-get-gparams) + (verilog-modi-get-sub-outputs, verilog-modi-get-sub-inouts) + (verilog-modi-get-sub-inputs): Move inline functions earlier in + the file. + (sigs-in, sigs-out): Don't declare multiple times. + (got-sig, got-rvalue, uses-delayed): Define for compiler with just + `defvar'. + (verilog-auto): Call dinotrace-unannotate-all only if bound. + (verilog-module-inside-filename-p): No need to wrap fboundp test + in condition-case. + (reporter-submit-bug-report): Autoload it. + (verilog-mark-defun): Call zmacs-activate-region only if bound. + (verilog-font-customize): Call customize-apropos only if bound. + (verilog-getopt-flags, verilog-auto-reeval-locals): + Use make-local-variable rather than make-variable-buffer-local. + (verilog-company, verilog-project, verilog-modi-cache-list): + Move make-variable-buffer-local calls to top-level. + (font-lock-defaults-alist): Don't define it. + (verilog-need-fld): Remove. + (verilog-font-lock-init): Don't set font-lock-defaults-alist. + (verilog-mode): Only call make-local-hook on XEmacs. + Set font-lock-defaults rather than using verilog-font-lock-init. - * progmodes/vhdl-mode.el (vhdl-speedbar-initialize) - (vhdl-speedbar-rescan-hierarchy): Call speedbar-line-directory - instead of speedbar-line-path. +2007-12-17 Andreas Schwab -2005-10-03 Jan Dj,Ad(Brv + * progmodes/sh-script.el (sh-font-lock-syntactic-keywords): + Fix comment typo. - * x-dnd.el (x-dnd-drop-data): Don't set dnd-open-file-other-window - to nil if dropping on a window. Handle dropping on a minibuffer window - like dropping on a non-window part of Emacs. +2007-12-16 Michael Albinus -2005-10-03 Stefan Monnier + * net/dbus.el (dbus-name-owner-changed-handler): + Use `dbus-unregister-signal' for removing old rules. + Obey new structure of `dbus-registered-functions-table'. - * net/ange-ftp.el: Use with-current-buffer. - (ange-ftp-insert-directory): Do not follow symlinks any more. +2007-12-12 Thien-Thi Nguyen - * textmodes/ispell.el (ispell-find-aspell-dictionaries): - Remove interactive spec. + * progmodes/cc-vars.el (defcustom-c-stylevar): Rewrite. -2005-10-03 Kim F. Storm +2007-12-11 Dan Nicolaescu - * ido.el (ido-mode): Use custom-initialize-set. + * progmodes/verilog-mode.el (set-buffer-menubar): Remove unused + function. + (add-submenu): Only define for XEmacs. + (verilog-regexp-words): Revert previous change, keep the other + definition. -2005-10-02 Richard M. Stallman +2007-12-09 Dan Nicolaescu - * progmodes/ebnf2ps.el (ebnf-eps-production-list): - Use insert-buffer-substring. + * progmodes/perl-mode.el (perl-continued-statement-offset) + (perl-continued-brace-offset, perl-brace-offset) + (perl-brace-imaginary-offset, perl-label-offset): + * progmodes/cperl-mode.el (cperl-brace-offset) + (cperl-continued-brace-offset, cperl-label-offset) + (cperl-continued-statement-offset) + (cperl-extra-newline-before-brace, cperl-merge-trailing-else): + Add safe-local-variable properties. - * net/tramp.el: Pacify byte compiler warnings in pacification code. - (tramp-handle-file-local-copy): Use insert-buffer-substring. +2007-12-08 Dan Nicolaescu -2005-10-02 Stefan Monnier + * progmodes/verilog-mode.el (verilog-mode-map) + (verilog-template-map, verilog-mode-mouse-map): Fix typos. + (verilog-colorize-include-files): Use only overlay functions so + that it can work on both emacs and XEmacs. + (set-extent-keymap): Remove unused defun. + (verilog-kill-existing-comment, verilog-insert-date) + (verilog-insert-year): Rename in order not to pollute the global + namespace from kill-existing-comment, insert-date and + insert-year, respectively. + (verilog-set-auto-endcomments, verilog-header): Update callers. - * net/ange-ftp.el (ange-ftp-insert-directory): Undo unintended part - in last change. - (ange-ftp-insert-directory): Fix up the search for the case where - `file' is absolute. + * files.el (auto-mode-alist): Recognize verilog files. -2005-10-02 Romain Francoise + * progmodes/verilog-mode.el (verilog-string-replace-matches) + (verilog-string-remove-spaces, verilog-re-search-forward) + (verilog-re-search-backward, verilog-re-search-forward-quick) + (verilog-re-search-backward-quick, verilog-get-beg-of-line) + (verilog-get-end-of-line, verilog-within-string): Move definitions + before first use. No code changes. - * progmodes/compile.el (compile-goto-error): Delete extra paren. +2007-12-08 Dan Nicolaescu -2005-10-02 Andreas Schwab + * progmodes/verilog-mode.el (verilog-mode-version) + (verilog-mode-release-date): Don't use expanding keywords. + (provide): Move to the end of file. + (fboundp): Don't check if eval-when-compile is bound, it is used + later in the file without checking. + (when, unless): Copy definitions from subr.el. + (char-before, defcustom, defface, customize-group) + (verilog-batch-error-wrapper): Don't use old style backquotes. + (verilog-regexp-opt): Avoid using the cl function case. + (verilog-regexp-words): Remove duplicated definition. + (verilog-mode-abbrev-table): Remove, duplicate. + (verilog-mode-map, verilog-template-map, verilog-mode-mouse-map): + Declare and initialize in one step. + (verilog-declaration-prefix-re, verilog-declaration-re) + (verilog-end-of-statement, verilog-indent-declaration) + (verilog-get-lineup-indent): Remove trailing whitespace. + (verilog-mode): Fix autoload cookie. + Set beginning-of-defun-function and end-of-defun-function. Use when + instead of if. + (verilog-emacs-features, verilog-auto-ascii-enum) + (verilog-insert-indices): Escape braces in doc strings. - * ediff-ptch.el (ediff-fixup-patch-map): Handle file names without - directory component in the session info. +2007-12-08 Michael McNamara + Wilson Snyder -2005-10-01 Richard M. Stallman + * progmodes/verilog-mode.el: New file. - * comint.el (comint-redirect-subvert-readonly): Doc fix. +2007-12-08 Eli Zaretskii - * simple.el (next-error-internal): New function. + * international/latexenc.el (latexenc-find-file-coding-system): + If both coding-system-for-write and buffer-file-coding-system of + latex-main-file are nil, use `undecided'. - * progmodes/compile.el (compilation-buffer-name): New arg MODE-COMMAND. - (compilation-start): Pass new arg to compilation-buffer-name. - (compile-goto-error): Use next-error-internal. +2007-12-06 Jason Rumney -2005-10-01 Chong Yidong + * mouse.el (mouse-buffer-menu-alist): Keep buffer names left aligned. - * speedbar.el: Remove RCS tag. - (speedbar-check-read-only): Handle non-existent files. +2007-12-12 Yoni Rabkin Katzenell (tiny change) - * dframe.el, ezimage.el, sb-image.el: Remove RCS tags. + * files.el (revert-buffer): Docstring fix. - * info.el (Info-speedbar-hierarchy-buttons) - (Info-speedbar-goto-node): Call speedbar-select-attached-frame. +2007-12-11 Glenn Morris -2005-10-01 Roland Winkler + * emacs-lisp/check-declare.el (check-declare-verify): Handle deffoo. - * textmodes/bibtex.el (bibtex-valid-entry-whitespace-re): - Do not match newline. - (bibtex-realign): Do not use bibtex-valid-entry-whitespace-re. - (bibtex-summary): Remove unnecessary save-excursion. - (bibtex-fill-field-bounds): Use fill-region-as-paragraph. +2007-12-11 Jay Belanger -2005-10-01 YAMAMOTO Mitsuharu + * calc/calc-aent.el (math-restore-underscores) + (math-string-restore-underscores): New functions. + (math-read-factor): Properly check variable names with underscores + for entries in `math-expr-variable-mapping'. - * term/mac-win.el: Add charset info for "iso10646-1". - Modify default fontset to use ATSUI-compatible fonts for some charsets - if available. + * calc/calc-lang.el (math-lang-name): New property name. -2005-10-01 Chong Yidong + * calc/calc.el (calc-set-mode-line): Use `math-lang-name' + to set language name. - * speedbar.el: Re-apply arch tag. - (speedbar-version): Rename to version 1.0. Suggested by Eric - M. Ludlam. - Reapply two changes from Emacs CVS' version of speedbar lost - during the merge: - (speedbar-use-imenu-flag): Avoid unnecessary use of locate-library. - (speedbar-frame-parameters): Improve customize type. +2007-12-10 Katsumi Yamaoka -2005-09-30 Stefan Monnier + * pgg.el (pgg-run-at-time, pgg-cancel-timer): Use eval-and-compile. - * net/ange-ftp.el (ange-ftp-gwp-start): Use with-current-buffer. - (ange-ftp-file-directory-p): Fix the symlink case. - (ange-ftp-insert-directory): When listing a single file, get a list of - the parent buffer and extract the relevant line. Inspired from a patch - by Katsumi Yamaoka . - (ange-ftp-file-name-sans-versions): Simplify. +2007-12-10 Stefan Monnier -2005-09-30 Bill Wohler + * server.el (server-select-display): Fix important typo. + (server-process-filter): Turn a "" display into nil. - Move MH-E image files from toolbar and mail directories into - etc/images. +2007-12-09 Juri Linkov - * mail/reply2.*: Move to etc/images/mail/reply*. + * replace.el (keep-lines, flush-lines, how-many): Doc fix. + Check search-upper-case before calling isearch-no-upper-case-p + to set case-fold-search. + (occur): Doc fix. + (occur-1, perform-replace): Check search-upper-case before calling + isearch-no-upper-case-p to set case-fold-search. - * toolbar/execute.*, toolbar/highlight.*, toolbar/mh-logo.xpm: - * toolbar/page-down.*, toolbar/show.*, toolbar/widen.*: Move to - etc/images. + * isearch.el (search-upper-case): Doc fix. + (isearch-mode-map): Bind `M-s o' to isearch-occur. + (isearch-query-replace): Doc fix. Let-bind search-upper-case to nil. + (isearch-query-replace-regexp): Doc fix. + (isearch-occur): New function. - * toolbar/alias.*, toolbar/refile.*, toolbar/repack.*: - * toolbar/reply*: Move to etc/images/mail. +2007-12-09 Reiner Steib - * toolbar/rescan.*: Move and rename to etc/images/refresh.*. + * pgg.el, pgg-parse.el (declare-function): Add new no-op macro for + backward compatibility. -2005-09-30 Eric M. Ludlam + * net/imap.el (imap-string-to-integer): New function. - * speedbar.el: New version 1.0pre3. +2007-12-09 David Kastrup - Frame management code (including timer, and mouse click specifics) - moved to dframe.el: - (speedbar-attached-frame): Removed. Use dframe-attached-frame. - (speedbar-timer): Removed. Use dframe-timer. - (speedbar-close-frame): Removed. Use dframe-close-frame. - (speedbar-activity-change-focus-flag): Removed. Use - dframe-activity-change-focus-flag. - (speedbar-update-speed, speedbar-navigating-speed): Obsolete. Use - dframe-update-speed. + * emacs-lisp/lisp-mnt.el (lm-verify): Make it work with + directories. Not sure anybody uses this anymore, though. - (speedbar-current-frame): New macro. Use this instead of the - variable speedbar-frame. +2007-12-09 Glenn Morris - (speedbar-use-images, speedbar-expand-image-button-alist) - (speedbar-insert-image-button-maybe): Moved to sb-image.el. + * emulation/viper-init.el (top-level): Use dolist rather than mapc + in make-variable-frame-local call. - (speedbar-find-image-on-load-path): Removed. Replaced by - defezimage in ezimage.el. - (speedbar-expand-image-button-alist): Removed. Replaced by - ezimage-expand-image-button-alist in ezimage.el. +2007-12-08 Dan Nicolaescu - (speedbar-ignored-directory-regexp) - (speedbar-add-ignored-directory-regexp) - (speedbar-ignored-directory-expressions) - (speedbar-line-directory, speedbar-buffers-line-directory) - (speedbar-directory-line, speedbar-buffers-line-directory): - Renamed, replacing `path' with `directory'. + * mail/hashcash.el (declare-function): + * net/imap.el (declare-function): New no-op macro for backward + compatibility. - (speedbar-create-directory, speedbar-expand-line-descendants) - (speedbar-toggle-line-expansion) - (speedbar-contract-line-descendants): New commands. +2007-12-08 Eli Zaretskii - (speedbar-query-confirmation-method, speedbar-select-frame-method) - (speedbar-use-tool-tips-flag): New options. + Sync makefile.w32-in with Makefile.in. - (speedbar-check-read-only, speedbar-require-version) - (speedbar-insert-separator, speedbar-buffers-tail-notes) - (speedbar-handle-delete-frame, speedbar-try-completion) - (speedbar-update-localized-contents): New functions. + * makefile.w32-in (check-declare): New target. + (BYTE_COMPILE_EXTRA_FLAGS): New variable. + (.el.elc, compile-CMD, compile-SH, compile-always-CMD) + (compile-always-SH, compile-calc-CMD, compile-calc-SH) + ($(lisp)/progmodes/cc-mode.elc): Use it. + ($(lisp)/progmodes/cc-mode.elc): New rule. - (speedbar-incompatible-version, speedbar-ro-to-do-point) - (speedbar-object-read-only-indicator): New variables. +2007-12-08 Reiner Steib - (speedbar-visiting-tag-hook, speedbar-before-visiting-file-hook): - New hooks. + * indent.el (tab-stop-list): Mark as safe-local-variable. - (speedbar-separator-face): New face. + * generic-x.el (etc-sudoers-generic-mode): New mode. + (generic-unix-modes): Add it. - (speedbar-supported-extension-expressions): Add `.g' and `.ma?k'. - (speedbar-ignored-modes): Add fundamental-mode. - (speedbar-directory-unshown-regexp): Add . directories. +2007-12-08 Michael Albinus - (speedbar-key-map): Remove old SPC and DEL page up/down keys. - (speedbar-file-key-map): Add SPC to toggle node expansion, `[' and - `]' for full expand/close. - (speedbar-buffers-key-map): Add SPC to toggle node expansion. + * net/dbus.el (dbus-hash-table=): Remove function. We cannot + apply wildcards in a hash table key; there is no usable hash code then. + (dbus-registered-functions-table): Use `equal' as test function. + (dbus-name-owner-changed-handler): Rewrite due to new hash table + structure. - (speedbar-check-vc): Support hidden files. - (speedbar-vc-check-dir-p): Use vc-state if available for CVS. - (speedbar-this-file-in-vc): Use vc-state if available. If VC - state is nil, it is not checked out. +2007-12-08 Martin Rudalics + + * progmodes/cc-cmds.el (c-mask-paragraph): Avoid invalid search + bound error in block comment branch. + +2007-12-08 David Kastrup + + * textmodes/reftex.el (reftex-select-with-char): + * textmodes/reftex-toc.el (reftex-toc-do-promote) + (reftex-toc-visit-location, reftex-toc-find-section): + * textmodes/reftex-index.el (reftex-index-show-entry): + * textmodes/org.el (org-cycle-hide-archived-subtrees) + (org-table-rotate-recalc-marks, org-mark-ring-push) + (org-follow-info-link, org-mhe-get-message-folder-from-index) + (org-auto-repeat-maybe, org-store-log-note, org-delete-property) + (org-evaluate-time-range, org-edit-agenda-file-list): + * textmodes/artist.el (artist-select-next-op-in-list) + (artist-select-prev-op-in-list): + * term/mac-win.el (mac-service-insert-text): + * startup.el (fancy-about-screen): + * progmodes/vhdl-mode.el (vhdl-decision-query): + * progmodes/idlwave.el (idlwave-template) + (idlwave-scroll-completions, idlwave-display-completion-list): + * progmodes/ebrowse.el (ebrowse-show-progress): + * progmodes/cperl-mode.el (cperl-find-pods-heres): + * progmodes/antlr-mode.el (antlr-insert-option-do): + * play/mpuz.el (mpuz-close-game): + * net/rcirc.el (rcirc-next-active-buffer): + * mail/reporter.el (reporter-update-status): + * kmacro.el (kmacro-display): + * international/ja-dic-cnv.el (skkdic-set-okuri-nasi): + * emulation/viper-util.el (viper-save-setting): + * emacs-lisp/lisp-mnt.el (lm-verify): + * emacs-lisp/edebug.el (edebug-set-mode): + * emacs-lisp/checkdoc.el (checkdoc-rogue-spaces, checkdoc-defun): + * calendar/calendar.el (calendar-print-day-of-year): + * calc/calcalg3.el (calc-curve-fit): + * calc/calcalg2.el (math-integral): + * calc/calc.el (calc-read-key-sequence, calc-version): + * calc/calc-mode.el (calc-set-simplify-mode): + * calc/calc-ext.el (calc-fancy-prefix): Fix buggy call to `message'. + +2007-12-07 D. Goel + + * progmodes/idlw-shell.el (idlwave-shell-display-line) + * progmodes/ada-xref.el (ada-find-file, ada-get-all-references) + (ada-xref-find-in-modified-ali, ada-find-in-src-path) + * mail/uce.el (uce-reply-to-uce) + * progmodes/vhdl-mode.el (vhdl-template-modify) + * mail/feedmail.el (feedmail-dump-message-to-queue): Improve calls + to `error' (as suggested by RMS.) + +2007-12-07 Glenn Morris + + * allout.el (allout-write-file-hook-handler): + * textmodes/reftex.el (reftex-TeX-master-file): + * textmodes/reftex-parse.el (reftex-short-context): + Revert previous change. + +2007-12-07 Michael Albinus + + * net/dbus.el (dbus-hash-table=): Fix for new hash table key structure. + (dbus-list-hash-table, dbus-name-owner-changed-handler): New defuns. + (dbus-check-event, dbus-handle-event, dbus-event-bus-name) + (dbus-event-service-name, dbus-event-path-name) + (dbus-event-interface-name, dbus-event-member-name): Fix for new + event structure. + (dbus-list-activatable-names, dbus-list-names) + (dbus-list-queued-owners, dbus-get-name-owner, dbus-introspect): + Reorder `dbus-call-method' arguments. + +2007-12-06 D. Goel + + * allout.el (allout-write-file-hook-handler): + * textmodes/reftex.el (reftex-TeX-master-file): + * textmodes/org.el (org-paste-subtree): + * progmodes/vhdl-mode.el (vhdl-template-modify): + * progmodes/idlw-shell.el (idlwave-shell-send-command) + (idlwave-shell-display-line): + * progmodes/ada-xref.el (ada-find-file, ada-get-all-references) + (ada-xref-find-in-modified-ali, ada-find-in-src-path): + * net/trampver.el (x): + * mail/uce.el (uce-reply-to-uce): + * mail/rmailout.el (rmail-output): + * mail/feedmail.el (feedmail-dump-message-to-queue): + * whitespace.el (whitespace-write-file-hook): + * wdired.el (wdired-check-kill-buffer): + * vc.el (vc-update): + * vc-mcvs.el (vc-mcvs-checkin): + * vc-cvs.el (vc-cvs-checkin): + * man.el (Man-bgproc-sentinel, Man-goto-see-also-section): + * ibuffer.el (ibuffer-current-buffer): + * dired.el (dired-move-to-end-of-filename): + * bindings.el (complete-symbol): + * textmodes/org-publish.el (org-publish-file): + (org-publish-current-project): + * textmodes/reftex-parse.el (reftex-short-context): + * textmodes/texinfmt.el: Fix buggy calls to `error'. - (speedbar-line-text, speedbar-line-token): Support expand buttons - with no text. - (speedbar-refresh): Universal argument acts as power-click. - (speedbar-fetch-dynamic-tags): If a buffer is in Emacs, switch to - that buffer to get variable values. +2007-12-06 Stefan Monnier - And many other bugfixes. + * doc-view.el (doc-view-dvi->pdf-sentinel) + (doc-view-pdf/ps->png-sentinel, doc-view-pdf->txt-sentinel) + (doc-view-ps->pdf-sentinel, doc-view-display): Don't change buffer + within a sentinel or timer. + (doc-view-display): Don't try to display before the requested page + is available, unless told to do so explicitly. + (doc-view-pdf/ps->png-sentinel, doc-view-initiate-display): + Force display even if the requested page is not available. - * dframe.el, ezimage.el, sb-image.el: New files. +2007-12-06 Richard Stallman - * sb-*.xpm: Remove files. New image files installed into - etc/images/ezimage. + * help-fns.el (describe-function-1): Call ad-get-advice-info + only on symbols. -2005-09-30 Kenichi Handa +2007-12-06 Glenn Morris - * ps-mule.el (ps-mule-show-warning): If a character is in - ps-print-translation-table, don't treat it as non-printable. + * progmodes/antlr-mode.el (antlr-keyword, antlr-syntax) + (antlr-ruledef, antlr-tokendef, antlr-ruleref-face) + (antlr-tokenref, antlr-literal): Inherit from standard font-lock + faces in non-light-background case. -2005-09-30 David Ponce + * add-log.el, dired-aux.el, font-lock.el, help-fns.el, ido.el: + * informat.el, emacs-lisp/bytecomp.el, emacs-lisp/gulp.el: + * emacs-lisp/tcover-ses.el, emacs-lisp/timer.el, emulation/edt.el: + * emulation/vi.el, emulation/viper-cmd.el: + * international/titdic-cnv.el, mail/emacsbug.el, progmodes/dcl-mode.el: + * progmodes/prolog.el, progmodes/ps-mode.el, progmodes/python.el: + * textmodes/fill.el: Remove directory part from filenames in + function declarations. - * tree-widget.el (tree-widget-themes-load-path): New variable. - (tree-widget-themes-directory): Doc fix. - (tree-widget-image-formats) [Emacs]: Doc fix. - (tree-widget--locate-sub-directory): New function. - (tree-widget-themes-directory): Use it. + * dired-aux.el (mailcap-mime-info): Update declaration. - * recentf.el (recentf-filename-handlers): Rename from - `recentf-filename-handler'. Allow a list of functions. - (recentf-menu-items-for-commands): Fix :help strings. - (recentf-apply-filename-handlers): New function. - (recentf-expand-file-name): Use it. - (recentf-cleanup): Remove duplicates too. +2007-12-05 Richard Stallman -2005-09-29 Juri Linkov + * wid-edit.el (widget-type): Doc fix. - * faces.el: Rearrange face definitions to be in the same order as - their face descriptions in "(emacs)Standard Faces". +2007-12-05 Stefan Monnier - * isearch.el (isearch, lazy-highlight): Add group `basic-faces'. + * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords): + Don't match "sub { (...) ... }". - * tooltip.el (tooltip): Add group `basic-faces'. +2007-12-05 Richard Stallman - * buff-menu.el (Buffer-menu-buffer): Remove group - `font-lock-highlighting-faces'. + * international/mule-cmds.el (toggle-input-method-active): New var. + (toggle-input-method): Bind toggle-input-method-active to t. + Error if it was already non-nil. - * progmodes/compile.el (compilation-error, compilation-warning) - (compilation-info, compilation-line-number, compilation-column-number): - Change group from `font-lock-highlighting-faces' to `compilation'. +2007-12-05 Reiner Steib - * progmodes/vhdl-mode.el (vhdl-font-lock-prompt-face) - (vhdl-font-lock-attribute-face, vhdl-font-lock-enumvalue-face) - (vhdl-font-lock-function-face, vhdl-font-lock-directive-face) - (vhdl-font-lock-reserved-words-face) - (vhdl-font-lock-translate-off-face, syntax-alist): Remove group - `font-lock-highlighting-faces'. + * net/tls.el (tls-hostmismatch, open-tls-stream): Checkdoc cleanup. - * cus-edit.el (custom-buffer-sort-alphabetically): Default to nil. +2007-12-05 Elias Oltmanns -2005-09-28 Kim F. Storm + * net/tls.el (open-tls-stream): Actually consult tls-checktrust to + see if certs should be verified and what is to be done in the + event of a verification failure. - * emulation/cua-base.el: Set CUA move property on additional commands: - up-list, down-list, backward-up-list, end-of-defun beginning-of-defun, - forward-sexp, backward-sexp, forward-list, backward-list. +2007-12-05 Reiner Steib -2005-09-28 Romain Francoise + * net/tls.el (tls-program): Provide more custom choices from + `tls-checktrust'. Refer to `tls-checktrust' in doc string. + (tls-process-connection-type, tls-success): Remove "*" in doc string. + (tls-checktrust, tls-hostmismatch, tls-untrusted): Add custom + version. Minor improvement to doc strings. + (tls-program): Add comment. - * comint.el (comint-show-output): Really set point at the - beginning of the output when not using `comint-use-prompt-regexp'. +2007-12-05 Elias Oltmanns -2005-09-27 Jay Belanger + * net/tls.el (tls-certtool-program, tls-hostmismatch): New variables. + (tls-checktrust): New variable. Check if GNU TLS complained about a + mismatch between the hostname provided in the certificate and the name + of the host connnecting to. + (open-tls-stream): Use them. Check certificates against trusted root + certificates. - * calc/calc-lang.el (math-oper-table): Raise the precedence of "/" - in TeX mode. +2007-12-05 Nathan J. Williams (tiny change) -2005-09-26 Juanma Barranquero + * net/imap.el (imap-mailbox-status-asynch): Upcase STATUS items. + (imap-parse-status): Upcase status-att for broken servers that sends + them lower-case (e.g., MS Exchange 2007). - * textmodes/org.el (org-table-sum): Fix format string. +2007-12-05 D. Goel - * textmodes/tex-mode.el (tex-insert-quote, latex-indent): - Quote face names. + * simple.el (undo): + * image-dired.el (image-dired-display-thumb-properties): + (image-dired-modify-mark-on-thumb-original-file): + (image-dired-dired-display-properties): + * help.el (help-window-display-message): + * files.el (hack-local-variables-confirm): + * ediff.el (ediff-version): + * complete.el (pc-chunk-after, PC-temp-minibuffer-message): + `message' and `error': Ensure that first arg is a format string. -2005-09-26 Romain Francoise + * emacs-lisp/find-func.el (find-library-name): Prefer files with + ".el" suffix over "". - * isearch.el (isearch-forward-regexp): Close doc string. +2007-12-05 Michael Albinus -2005-09-25 Richard M. Stallman + * net/dbus.el (dbus-hash-table=): Allow nil as wildcard in the + interface and member fields. - * simple.el (blink-matching-open): Don't no-op when point is BEGV+1. +2007-12-05 Glenn Morris - * isearch.el (isearch-forward, isearch-forward-regexp): Doc fixes. + * eshell/em-alias.el (pcomplete-stub): Define for compiler. + (pcomplete-here): Autoload it. - * progmodes/compile.el (compilation-error-properties): - When getting the file from the previous error message, - correctly decode the new data format. + * eshell/em-basic.el (print-func): No need to define for compiler. - * progmodes/cc-cmds.el (c-electric-paren): - Call old-blink-paren only for close-paren. + * eshell/esh-cmd.el (eshell-debug-command): + * eshell/esh-io.el (eshell-print): Move definitions before use. -2005-09-24 Andreas Schwab + * eshell/esh-module.el (eshell-load-defgroups): Eval and compile. - * term/rxvt.el (rxvt-register-default-colors): Delete redundant - condition. + * eshell/esh-util.el (top-level): Don't require pp. + Use condition-case rather than ignore-errors. -2005-09-25 Romain Francoise + * eshell/eshell.el (eshell-buffer-name): Define for compiler. - * dired-aux.el (dired-copy-file-recursive): - * dired.el (dired-delete-file): - * ediff-mult.el (ediff-dir-diff-copy-file): - * ediff-util.el (ediff-test-save-region): - * forms.el (forms-mode): - * ido.el (ido-file-internal, ido-delete-file-at-head): - * log-edit.el (log-edit-done): - * ses.el (ses-yank-resize): - * play/gomoku.el (gomoku-human-plays, gomoku) - (gomoku-human-resigns, gomoku-prompt-for-other-game) - (gomoku-offer-a-draw): - * play/landmark.el (lm-human-resigns, lm): - * net/eudcb-ldap.el (eudc-ldap-check-base): - * play/mpuz.el (mpuz-offer-abort, mpuz-try-letter, mpuz-close-game): - * progmodes/ebrowse.el (ebrowse-find-pattern): - * progmodes/idlw-shell.el (idlwave-shell-set-bp-check): - * textmodes/reftex-index.el (reftex-index-initialize-phrases-buffer): - End `yes-or-no-p' and `y-or-n-p' prompts with question mark and space. - - * vc.el (vc-delete-file): - * play/gomoku.el (gomoku-terminate-game, gomoku) - (gomoku-prompt-for-move, gomoku-human-takes-back): - * play/landmark.el (lm-human-takes-back, lm-prompt-for-move) - (lm-start-robot, lm-human-plays): Remove extraneous spaces in messages. - -2005-09-24 Dan Nicolaescu - - * term/rxvt.el (rxvt-register-default-colors): Add support for 255 - color rxvt terminals by using the code xterm.el used to use before - 2005-04-09 in order to match the colors used by rxvt. - -2005-09-24 Emanuele Giaquinta (tiny change) - - * term/rxvt.el (rxvt-register-default-colors): Add support for 88 - colors rxvt-unicode terminals by using the same code as xterm.el. - -2005-09-24 Stefan Monnier - - * textmodes/tex-mode.el (tex-font-lock-append-prop) - (tex-font-lock-suscript, tex-insert-quote, latex-indent): Adjust to the - new symbol used for the tex-verbatim face. - -2005-09-24 Emilio C. Lopes - - * woman.el (woman-file-name): - * wid-edit.el (widget-file-prompt-value) - (widget-coding-system-prompt-value): - * w32-fns.el (set-w32-system-coding-system): - * vc.el (vc-version-diff, vc-annotate): - * textmodes/reftex-auc.el (reftex-arg-cite) - (reftex-arg-index-tag): - * textmodes/refer.el (refer-get-bib-files): - * textmodes/artist.el (artist-figlet-choose-font): - * terminal.el (terminal-emulator): - * replace.el (occur-read-primary-args): - * rect.el (string-rectangle, string-insert-rectangle): - * ps-print.el (ps-print-preprint): - * progmodes/pascal.el (pascal-goto-defun): - * progmodes/etags.el (visit-tags-table, visit-tags-table-buffer): - * progmodes/compile.el (compilation-find-file): - * printing.el (pr-interactive-n-up): - * play/animate.el (animate-birthday-present): - * net/rcompile.el (remote-compile): - * man.el (man, Man-goto-section, Man-follow-manual-reference): - * mail/rmailsum.el (rmail-summary-search-backward) - (rmail-summary-search): - * mail/rmailout.el (rmail-output-read-rmail-file-name) - (rmail-output-read-file-name): - * mail/rmail.el (rmail-search, rmail-search-backwards): - * mail/mailabbrev.el (merge-mail-abbrevs, rebuild-mail-abbrevs): - * locate.el (locate): - * international/quail.el (quail-show-keyboard-layout): - * international/mule.el (set-buffer-file-coding-system) - (revert-buffer-with-coding-system, set-file-name-coding-system) - (set-terminal-coding-system, set-keyboard-coding-system) - (set-next-selection-coding-system): - * international/mule-diag.el (describe-coding-system) - (describe-font, describe-fontset): - * international/mule-cmds.el (universal-coding-system-argument) - (search-unencodable-char, describe-input-method) - (set-language-environment, describe-language-environment): - * international/codepage.el (codepage-setup): - * international/code-pages.el (codepage-setup): - * info.el (Info-search, Info-follow-reference) - (Info-search-backward): - * emacs-lisp/advice.el (ad-read-advised-function) - (ad-read-advice-class, ad-clear-cache, ad-activate) - (ad-deactivate, ad-update, ad-unadvise, ad-read-advice-name) - (ad-enable-advice, ad-disable-advice, ad-remove-advice) - (ad-read-regexp): - * ediff-util.el (ediff-toggle-regexp-match): - * ediff-ptch.el (ediff-prompt-for-patch-file): - * dired-aux.el (dired-diff): - * diff.el (diff): - * cus-edit.el (custom-variable-prompt): - * calendar/timeclock.el (timeclock-ask-for-project): - * calc/calcalg3.el (calc-get-fit-variables): - * calc/calc-store.el (calc-edit-variable) - (calc-permanent-variable): - * vc-mcvs.el (vc-mcvs-register): - * shadowfile.el (shadow-define-literal-group): - * woman.el (woman-file-name): - * vc.el (vc-version-diff, vc-merge): - * textmodes/reftex-index.el (reftex-index-complete-tag): - * format.el (format-decode-buffer, format-decode-region): - * emulation/viper-cmd.el (viper-read-string-with-history): - * emacs-lisp/debug.el (cancel-debug-on-entry): - * emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine): - * ediff.el (ediff-merge-revisions) - (ediff-merge-revisions-with-ancestor, ediff-revision): - * completion.el (interactive-completion-string-reader): - * calc/calc-prog.el (calc-user-define-formula): - Follow convention for reading with the minibuffer. - -2005-09-24 Steven Huwig (tiny change) - - * progmodes/python.el (python-describe-symbol): Add globals() and - locals() to the arguments of emacs.ehelp. - -2005-09-24 Magnus Henoch - - * textmodes/ispell.el (ispell-maybe-find-aspell-dictionaries): - New function, code extracted from ispell-valid-dictionary-list. - (ispell-valid-dictionary-list, ispell-accept-buffer-local-defs): - Call it. - -2005-09-24 Eli Zaretskii - - * subr.el (version-regexp-alist): Extend valid syntax for version - strings: allow any of the characters -,_,+ to separate the - alpha/beta/rc part from the version part. Doc fix. - (version-to-list): Doc fix. Bind case-fold-search to t, as advertised. - -2005-09-23 David Reitter - - * mail/mailclient.el: New file. - -2005-09-23 Richard M. Stallman - - * textmodes/flyspell.el (flyspell-highlight-incorrect-region) - (flyspell-incorrect-hook, flyspell-highlight-duplicate-region): - Doc fixes. + * eshell/em-alias.el, eshell/em-banner.el, eshell/em-basic.el + * eshell/em-cmpl.el, eshell/em-dirs.el, eshell/em-glob.el + * eshell/em-hist.el, eshell/em-ls.el, eshell/em-pred.el + * eshell/em-prompt.el, eshell/em-rebind.el, eshell/em-script.el + * eshell/em-smart.el, eshell/em-term.el, eshell/em-unix.el + * eshell/em-xtra.el, eshell/esh-cmd.el, eshell/esh-test.el + * eshell/esh-util.el, eshell/eshell.el: Require individual files + if needed when compiling, rather than esh-maint. Collect any + require statements. Move provide statement to end. Move any + commentary to start. + + * eshell/esh-arg.el, eshell/esh-ext.el, eshell/esh-io.el: + * eshell/esh-mode.el, eshell/esh-module.el, eshell/esh-opt.el: + * eshell/esh-proc.el, eshell/esh-var.el: + Require individual files if needed when compiling, rather than + esh-maint. Collect any require statements. Leave provide at start. + Move any commentary to start. + + * emacs-lisp/bytecomp.el (byte-compile-declare-function): + Remove declared function from byte-compile-noruntime-functions. + + * ediff-util.el (ediff-version): + * progmodes/python.el (compilation-shell-minor-mode): + * textmodes/org.el (Info-goto-node, calendar-astro-date-string) + (calendar-bahai-date-string, calendar-check-holidays) + (calendar-chinese-date-string, calendar-coptic-date-string) + (calendar-ethiopic-date-string, calendar-forward-day) + (calendar-french-date-string, calendar-goto-date) + (calendar-goto-today, calendar-hebrew-date-string) + (calendar-islamic-date-string, calendar-iso-date-string) + (calendar-julian-date-string, calendar-mayan-date-string) + (calendar-persian-date-string, gnus-summary-last-subject) + (parse-time-string, rmail-show-message): Declare as functions. + +2007-12-05 Michael Olson + + * textmodes/remember.el: Merge contents of remember-diary.el here, + updating header. Add autoload cookie so that byte-compilation + works without warning. + (remember-diary-file): Default to nil, since diary might not yet + be loaded at this point, which would deny us access to diary-file. + (remember-diary-extract-entries): If remember-diary-file is nil, + then use diary-file instead. + + * textmodes/remember-diary.el: Remove, due to the issue of needing + the first 8 characters of a filename to be unique. + +2007-12-04 Michael Albinus + + * net/dbus.el (dbus-hash-table=): New defun. + (dbus-hash-table-test): New hash table test function, used in + `dbus-registered-functions-table'. + (dbus-check-event, dbus-handle-event, dbus-event-bus-name) + (dbus-event-service-name, dbus-event-path-name) + (dbus-event-interface-name, dbus-event-member-name): + Rewrite, due to new structure of `dbus-event'. - * progmodes/cc-mode.el (c-font-lock-init): - Specify font-lock-lines-before. +2007-12-04 Juanma Barranquero -2005-09-23 Stefan Monnier + * ido.el (ido-save-history): Set the `coding' local + variable in the first line of the file. - * smerge-mode.el (smerge-remove-props): Cause re-highlighting of the - whole conflict. +2007-12-04 Glenn Morris -2005-09-23 Carsten Dominik + * password-cache.el: Move here from gnus/password.el. + (top-level): Don't require cl when compiling. + (password-read-and-add): Doc fix. Make obsolete. - * textmodes/org.el (org-mode-map, orgtbl-mode-map): - Move keybindings with `C-c C-h' prefix to `C-c C-x' prefix. Make use - of `remap' feature when available. Additional key bindings for - better tty support. - (org-mode-restart, org-force-self-insert): New commands. - (org-time-stamp-inactive): New command. - (org-remap): New function. - (org-table-auto-blank-field, org-level-color-stars-only): New options. - (org-enable-fixed-width-editor): Move to `org-structure' - customization group. - (org-self-insert-command, orgtbl-self-insert-command): Modify to - blank field after field motion commands. + * net/tramp.el: Require password-cache or password. -2005-09-23 Kenichi Handa + * emulation/cua-base.el (top-level): Move (provide 'cua-base) to end. + No longer provide 'cua. Don't require cua-rect, cua-gmrk when + compiling. + (cua-set-rectangle-mark): Add doc string to autoload. + (cua--rectangle, cua--last-killed-rectangle) + (cua--global-mark-active): Always define for compiler. + (cua-copy-rectangle, cua-cut-rectangle, cua--rectangle-left) + (cua--delete-rectangle, cua--insert-rectangle) + (cua--rectangle-corner, cua--rectangle-assert) + (cua--insert-at-global-mark, cua--global-mark-post-command): + Declare as functions. - * international/mule-cmds.el (set-language-environment): - Don't check utf-translate-cjk-lang-env is nil or not on deciding if we - have to call utf-translate-cjk-load-tables. + * emulation/cua-gmrk.el (top-level): Move provide to end. -2005-09-22 Stefan Monnier + * emulation/cua-rect.el (top-level): Move provide to end. + Don't require cua-gmrk when compiling. + (cua--cut-rectangle-to-global-mark) + (cua--copy-rectangle-to-global-mark): Declare as functions. - * mouse.el (mouse-move-drag-overlay): Fix last change. + * emulation/viper-init.el (viper-replace-overlay-cursor-color) + (viper-insert-state-cursor-color, viper-emacs-state-cursor-color) + (viper-vi-state-cursor-color): + Consolidate make-variable-frame-local calls. -2005-09-22 David Ponce + * net/eudcb-bbdb.el (bbdb-address-streets): Declare as a function. + (eudc-bbdb-extract-addresses): Use bbdb-address-streets rather + than bbdb-address-street1,2,3. - * tree-widget.el (tree-widget-value-create): Fix previous change. + * textmodes/reftex-toc.el (reftex-make-separate-toc-frame): + Try x-focus-frame before focus-frame. Only try focus-frame on XEmacs. -2005-09-21 Dan Nicolaescu +2007-12-03 Karl Fogel - * term/xterm.el (terminal-init-xterm): Fix loading rxvt at run time. + * saveplace.el (save-place-quiet): Remove, reverting 2007-12-02T19:54:46Z!kfogel@red-bean.com. + (save-place-alist-to-file, load-save-place-alist-from-file): + Don't print non-error messages at all, there's really no need. + Do print if there's a problem, and clarify message in that case. -2005-09-21 Stefan Monnier +2007-12-03 Dan Nicolaescu - * mouse.el (mouse-move-drag-overlay): New function. - (mouse-drag-region-1): Use it. - Try to simplify a bit the state handling. Handle clicks on links - inside intangible areas. - (mouse-save-then-kill): Minor simplification. - (mouse-secondary-overlay): Make it always non-nil instead of - recreating it each time. - (mouse-start-secondary, mouse-set-secondary, mouse-drag-secondary) - (mouse-kill-secondary, mouse-secondary-save-then-kill): - Simplify accordingly. + * ediff-diff.el (ediff-prepare-error-list): + * ediff-util.el (ediff-setup): Disable undo for ediff-error-buffer. -2005-09-21 Dan Nicolaescu +2007-12-03 Tassilo Horn - * term/rxvt.el (rxvt-standard-colors): Fix some colors. + * doc-view.el (doc-view-initiate-display): Use `doc-view-mode-p'. + (doc-view-current-overlay, doc-view-pending-cache-flush): + Add doc string. -2005-09-20 Michael Kifer +2007-12-03 Richard Stallman - * ediff-ptch.el (ediff-prompt-for-patch-file): More intuitive prompt. - (ediff-file-name-sans-prefix): Treat nil as an empty string. - (ediff-fixup-patch-map): Better heuristic for intuiting the file names - to patch. + * subr.el (declare-function): Move from byte-run.el. - * ediff-util.el: Use insert-buffer-substring. + * emacs-lisp/byte-run.el (declare-function): Move to subr.el. - * ediff-vers.el (cvs-run-ediff-on-file-descriptor): Bug fix. + * window.el (recenter-top-bottom): Don't use `ecase'. - * emulation/viper-cmd.el (viper-change-state): Don't move over the - field boundaries in the minibuffer. - (viper-set-minibuffer-style): Add viper-minibuffer-post-command-hook. - (viper-minibuffer-post-command-hook): New hook. - (viper-line): Don't move cursor at bolp. +2007-12-02 Karl Fogel - * emulation/viper-ex.el (ex-pwd, viper-info-on-file): Fix message. + * saveplace.el (save-place-alist-to-file): + Set coding-system-for-write once and refer to it throughout. + Suggested by David Reitter . - * emulation/viper-init.el: Add alias to make-variable-buffer-local to - avoid compiler warnings. +2007-12-02 Karl Fogel - * emulation/viper-macs.el (ex-map): Better messages. + * saveplace.el (save-place-alist-to-file): Use `utf-8' coding + system when writing, and set it in the first-line file variables. + Suggested by David Reitter and + Juanma Barranquero. - * emulation/viper-util.el (viper-beginning-of-field): New function. +2007-12-02 Glenn Morris - * emulation/viper.el: Replace make-variable-buffer-local with - viper-make-variable-buffer-local everywhere, to avoid warnings. + * emacs-lisp/bytecomp.el (byte-compile-declare-function): + Reverse branches of if statement. -2005-09-19 Stefan Monnier + * emulation/viper-cmd.el (top-level): Don't require advice. + Don't load viper-util, viper-keym, viper-mous, viper-macs, + viper-ex when compiling. - * mouse.el (mouse-drag-mode-line-1, mouse-drag-vertical-line): - Delete unused var `old-selected-window'. - (mouse-drag-region-1): Delete unused vars `start-frame', `end-of-range'. - (mouse-drag-secondary): Delete unused var `start-frame'. + * emulation/viper-ex.el (top-level): Don't load viper-util, + viper-keym when compiling. -2005-09-19 Emanuele Giaquinta (tiny change) + * emulation/viper-init.el (top-level): Move provide statement to end. - * term/rxvt.el (terminal-init-rxvt): Add entry for [end]. + * emulation/viper-keym.el (top-level): Don't load viper-util when + compiling. Move provide statement to end. -2005-09-19 Stefan Monnier + * emulation/viper-macs.el (top-level): Don't load viper-util, + viper-keym, viper-mous when compiling. - * calendar/calendar.el (mark-visible-calendar-date): Save excursion. - Re-indent within 80 columns. Use inhibit-read-only. + * emulation/viper-mous.el (top-level): Don't load viper-util when + compiling. -2005-09-19 Romain Francoise + * emulation/viper-util.el (top-level): Don't load viper-init when + compiling. - * calendar/diary-lib.el (mark-diary-entries): Revert last change. + * emulation/viper.el (top-level): Don't require ring. + Don't load viper-init, viper-cmd when compiling. -2005-09-19 Stefan Monnier + * net/sasl-cram.el, net/sasl-digest.el, net/sasl-ntlm.el, net/sasl.el: + Move here from gnus/. - * font-lock.el (font-lock-default-fontify-region): Don't add a line - unconditionally, since the after-change-function already did it. +2007-12-02 Karl Fogel -2005-09-19 Miles Bader + Offer option for saveplace to be quiet about loading and saving. + Suggested by David Reitter . - * net/newsticker.el: Get rid of CVS keyword. + * saveplace.el (save-place-quiet): New customizable boolean. + (save-place-alist-to-file, load-save-place-alist-from-file): Use it + to determine whether to print loading/saving messages. -2005-09-19 Johan Bockg,Ae(Brd +2007-12-02 Glenn Morris - * dired-aux.el (dired-handle-overwrite): Don't use `format' here. - The prompt is formatted later. + * mail/binhex.el: Move here from gnus/. + (binhex): New custom group. + (binhex-decoder-program, binhex-decoder-switches) + (binhex-use-external): Move to the binhex custom group. -2005-09-19 David Ponce + * mail/uudecode.el: Move here from gnus/. + (uudecode): New custom group. + (uudecode-decoder-program, uudecode-decoder-switches) + (uudecode-use-external): Move to the uudecode custom group. - * tree-widget.el (tree-widget-value-create): Save the converted - tree :node widget. + * net/netrc.el (top-level): Don't load `encrypt' features. + (netrc-parse): Don't use encrypt. + (netrc-find-service-name, netrc-find-service-number): Don't use caddr. -2005-09-19 Juanma Barranquero + * progmodes/python.el (top-level): Don't require cl when compiling. - * progmodes/sh-script.el (sh-blink): Fix spurious reference to - variable `message'. +2007-12-02 Agustín Martín -2005-09-18 Michael Albinus + * textmodes/flyspell.el (flyspell-large-region): Explicitly set + encoding for aspell process and for communication with it. + Only add "-d" option if not already present. + Use ispell-current-dictionary and ispell-current-personal-dictionary. + General reorganization. - * net/tramp.el (tramp-login-prompt-regexp): Expand regexp in order - to cover prompts like "login as:". Reported by Slawomir Nowaczyk - . + * textmodes/ispell.el (ispell-aspell-find-dictionary): Do not set + encoding here. + (ispell-start-process): Explicitly set encoding here if using aspell. -2005-09-18 Chong Yidong +2007-12-02 Dan Nicolaescu - * image.el (image-load-path): Use symbol `data-directory' instead - of its value, for backward compatibility with packages that bind - it during `find-image'. Suggested by Katsumi Yamaoka. - (image-search-load-path): Handle symbols whose values are strings. + * pcvs.el (cvs-mode-commit, cvs-mode-edit-log): Also pass a diff + function to log-edit. -2005-09-18 Romain Francoise +2007-12-02 Michael Albinus - * calendar/diary-lib.el (mark-diary-entries): Rearrange to wrap - with-current-buffer form in save-excursion. + * net/dbus.el: New file. -2005-09-18 Deepak Goel +2007-12-02 Jay Belanger - * apropos.el (apropos-command): Fix `message' call: first arg - should be a format spec. In this and all other cases that appear - below and elsewhere in the source code, I made a change only when - two conditions were satisfied: [1] I can think of a possibility - that the arguments would cause an error, for example, the code in - question relies on external variables such as filenames. [2] I - was sure that the arg to `message' could not have been nil in the code. + * calc/calc.el (calc-lang-slash-idiv, calc-lang-allow-underscores) + (calc-lang-c-type-hex, calc-lang-brackets-are-subscripts) + (calc-lang-parens-are-subscripts): New variables. + (math-expr-special-function-mapping): Remove variable. + (math-eqn-ignore-words, math-tex-ignore-words) + (math-latex-ignore-words): Move to calc-lang.el. - * textmodes/tildify.el (tildify-region): Ditto. + * calc/calc-lang.el (math-compose-vector, math-compose-var) + (math-tex-expr-is-flat): Declare as functions. + (calc-lang-slash-idiv, calc-lang-allow-underscores) + (math-comp-left-bracket, math-comp-right-bracket) + (math-comp-comma, math-comp-vector-prec): Declare as variables. + (math-var-formatter, math-matrix-formatter) + (math-lang-adjust-words, math-lang-read-symbol, math-land-read) + (math-punc-table, math-compose-subscr, math-dots) + (math-func-formatter): New property names to store language + specific information. + (math-compose-tex-var, math-compose-tex-intv) + (math-compose-maple-intv, math-compose-eqn-intv) + (math-compose-tex-sum, math-compose-tex-func) + (math-compose-tex-intv): New functions. + (math-eqn-ignore-words, math-tex-ignore-words) + (math-latex-ignore-words): Move from calc.el. + (math-special-function-table): Add entries for tex. + (calc-lang-slash-idiv, calc-lang-allows-underscores): + New variables. + (math-compose-latex-frac): Rename from `math-latex-print-frac'. + (math-compose-tex-matrix, math-compose-eqn-matrix) + (math-eqn-special-functions): Move from calccomp.el. + + * calc/calccomp.el (math-compose-var): New function. + (math-compose-expr): Allow more special functions to be used. + Change test for formatting fractions. Use variables and property + names to help with language specific formatting. + (math-compose-tex-matrix, math-compose-eqn-matrix) + (math-eqn-special-functions): Move to calc-lang.el. + (math-compose-rows): Use property names to help with language + specific formatting. + + * calc/calc-aent.el (math-read-factor): Turn multiple subscripts + into nested subscripts. + (math-read-token): Use variables and property names to help with + language specific parsing. + (math-read-expression-level): Use variables to help with language + specific parsing. + +2007-12-02 Stefan Monnier + + * arc-mode.el (archive-find-type): Add recognition of rar-exe format. + (archive-rar-summarize): Allow the file name to be passed as argument. + Remove unused vars `header' and `footer'. + (archive-rar-exe-summarize, archive-rar-exe-extract): New functions. - * textmodes/reftex-index.el (reftex-index-change-entry) - (reftex-index-phrase-selection-or-word, reftex-query-index-phrase): - * textmodes/reftex-dcr.el (reftex-echo-ref, reftex-echo-cite): - * textmodes/org.el (org-complete, org-deadline, org-schedule) - (org-priority, org-table-sum): - * textmodes/ispell.el (ispell-check-version, ispell-parse-output): - * textmodes/flyspell.el (flyspell-mode-on, flyspell-notify-misspell) - (flyspell-word, flyspell-display-next-corrections): - * textmodes/bibtex.el (bibtex-print-help-message): - * textmodes/artist.el (artist-key-set-point-poly): - * term/mac-win.el (mac-services-insert-text): - * progmodes/vhdl-mode.el (vhdl-warning, vhdl-print-warnings) - (vhdl-hooked-abbrev, vhdl-template-insert-fun) - (vhdl-port-paste-testbench, vhdl-compose-new-component) - (vhdl-compose-configuration): - * progmodes/sh-script.el (sh-blink, sh-show-indent) - (sh-set-indent, sh-learn-line-indent): - * progmodes/ps-mode.el (ps-mode-target-column): - * progmodes/idlwave.el (idlwave-make-tags) - (idlwave-scan-library-catalogs): - * progmodes/idlw-shell.el (idlwave-shell-parse-stack-and-display): - * progmodes/gud.el (gud-jdb-analyze-source): - * progmodes/flymake.el (flymake-log): - * progmodes/ebnf2ps.el (ebnf-generate-region): - * progmodes/cmacexp.el (c-macro-expansion): - * progmodes/ada-xref.el (ada-treat-cmd-string): - * progmodes/ada-mode.el (ada-create-case-exception-substring) - (ada-justified-indent-current, ada-batch-reformat): - * play/zone.el (zone): - * play/landmark.el (lm-move): - * play/decipher.el (decipher-show-alphabet): - * net/newsticker.el (newsticker--display-jump) - (newsticker--display-scroll): - * mail/rmail-spam-filter.el (rsf-add-subject-to-spam-list) - (rsf-add-sender-to-spam-list, rsf-add-region-to-spam-list): - * mail/feedmail.el (feedmail-dump-message-to-queue): - * eshell/esh-proc.el (eshell-remove-process-entry): - * emulation/ws-mode.el (ws-last-error): - * emulation/viper-macs.el (ex-map-read-args, ex-unmap-read-args) - (viper-record-kbd-macro): - * emulation/viper-ex.el (ex-pwd, viper-info-on-file): - * emacs-lisp/lisp-mnt.el (lm-report-bug): - * emacs-lisp/find-func.el (find-function-noselect): - * calendar/timeclock.el (timeclock-status-string) - (timeclock-workday-remaining-string, timeclock-workday-elapsed-string) - (timeclock-when-to-leave-string): - * calendar/icalendar.el (icalendar--convert-ical-to-diary): - * calc/calc-units.el (calc-enter-units-table): - * calc/calc-mode.el (calc-mode-record-mode): - * woman.el (woman-mini-help): - * wdired.el (wdired-change-to-wdired-mode): - * vc.el (vc-retrieve-snapshot): - * strokes.el (strokes-read-stroke, strokes-read-complex-stroke): - * startup.el (display-startup-echo-area-message): - * simple.el (set-goal-column): - * ses.el (ses-command-hook, ses-recalculate-cell): - * server.el (server-process-filter): - * printing.el (pr-interface-txt-print, pr-interface-printify) - (pr-interface-ps): - * pcvs.el (cvs-help): - * log-edit.el (log-edit, log-edit-mode-help): - * iswitchb.el (iswitchb-possible-new-buffer): - * isearch.el (isearch-edit-string): - * image-mode.el (image-mode, image-minor-mode): - * ibuf-macs.el (define-ibuffer-filter): - * hi-lock.el (hi-lock-find-patterns): - * files.el (toggle-read-only): - * ediff-util.el (ediff-copy-diff) - (ediff-write-merge-buffer-and-maybe-kill): - * echistory.el (Electric-history-undefined): - * dnd.el (dnd-insert-text): - * dired-aux.el (dired-query): - * desktop.el (desktop-restore-file-buffer, desktop-lazy-create-buffer): - * bookmark.el (bookmark-bmenu-locate): - * obsolete/fast-lock.el (@top-level) : - Fix `message' calls to ensure first arg is a format string. - The change was made only when these two conditions were satisfied: - [1] when there is a possibility that the arguments would cause an error - for example, if the code in question relies on external variables - such as filenames, and - [2] if the arg to `message' could not have been nil in the code. - - * pcomplete.el (pcomplete--help): Fix `message' format spec. - Not having a %s would be weird, though not technically wrong. - -2005-09-18 YAMAMOTO Mitsuharu - - * term/mac-win.el (mac-add-charset-info): Doc fix. - -2005-09-17 Romain Francoise - - * shell.el (shell-resync-dirs): Handle echoing processes more - reliably. Don't insert resync command if `comint-process-echoes' - is non-nil. +2007-12-01 Dan Nicolaescu -2005-09-17 Magnus Henoch + * log-edit.el (log-edit-show-diff): New function. + (log-edit-mode-map, log-edit-menu): Bind it. + (log-edit-diff-function): New variable. + (log-edit): Change the 3rd param to be an alist and accept a + function that computes a diff for the files involved. + + * vc.el (vc-log-edit): Add a diff function parameter to log-edit. + +2007-12-01 Martin Rudalics + + * play/blackbox.el (bb-up, bb-down): Revert 2007-10-21 change and + wrap next-/previous-line in with-no-warnings. + +2007-12-01 Glenn Morris + + * format-spec.el, hex-util.el, sha1.el: Move here from gnus/. + + * net/dig.el: Move here from gnus/. + (dig-mode): Replace gnus-run-mode-hooks with equivalent expansion. + + * net/dns.el: Move here from gnus/. + (top-level): Don't require mm-util, or cl when compiling. + (dns-write-name, dns-read, dns-read-type, query-dns): + Replace mm-with-unibyte-buffer with its expansion. + (query-dns): Replace decf and ignore-errors with non-cl equivalents. + + * progmodes/gdb-ui.el (gud-remove, gud-break): + * progmodes/gud.el (gdb-create-define-alist) + (gdb-restore-windows, gdb-reset, global-hl-line-highlight) + (hl-line-highlight, gdb-display-source-buffer) + (gdb-display-buffer, c-langelem-sym, c-langelem-pos) + (syntax-symbol, syntax-point, gdb-enqueue-input): Declare as functions. + +2007-11-30 Dan Nicolaescu + + * textmodes/org-export-latex.el (org-export-latex-cleaned-string): + Move args on defun line. + + * textmodes/org.el (org-calendar-holiday): + Use calendar-check-holidays instead of the obsolete + check-calendar-holidays. + (add-to-diary-list, table--at-cell-p, Info-find-node, bbdb) + (bbdb-company, bbdb-current-record, bbdb-name) + (bbdb-record-getprop, bbdb-record-name) + (bibtex-beginning-of-entry, bibtex-generate-autokey) + (bibtex-parse-entry, bibtex-url, cdlatex-tab) + (dired-get-filename, gnus-article-show-summary, mh-display-msg) + (mh-find-path, mh-get-header-field, mh-get-msg-num) + (mh-header-display, mh-index-previous-folder) + (mh-normalize-folder-name, mh-search, mh-search-choose, mh-show) + (mh-show-buffer-message-number, mh-show-header-display) + (mh-show-msg, mh-show-show, mh-visit-folder) + (org-export-latex-cleaned-string, remember) + (remember-buffer-desc, rmail-narrow-to-non-pruned-header) + (rmail-what-message, elmo-folder-exists-p) + (elmo-message-entity-field, elmo-message-field) + (vm-beginning-of-message, vm-follow-summary-cursor) + (vm-get-header-contents, vm-isearch-narrow, vm-isearch-update) + (vm-select-folder-buffer, vm-su-message-id, vm-su-subject) + (vm-summarize, wl-folder-get-elmo-folder) + (wl-summary-goto-folder-subr) + (wl-summary-jump-to-msg-by-message-id, wl-summary-line-from) + (wl-summary-line-subject, wl-summary-message-number) + (wl-summary-redisplay): Declare as functions. + +2007-11-30 Martin Rudalics + + * longlines.el (longlines-show-hard-newlines): Remove handling of + buffer-undo-list and buffer-modified status. + (longlines-show-region, longlines-unshow-hard-newlines): + Handle buffer-undo-list, buffer-modified status, inhibit-read-only, and + inhibit-modification-hooks here to avoid that a buffer appears + modified when toggling visibility of hard newlines. + +2007-11-30 Glenn Morris + + * nxml/rng-maint.el (rng-do-some-validation): Fix declaration. + + * progmodes/idlw-complete-structtag.el + (idlwave-sintern-structtag): + * progmodes/idlw-help.el (idlwave-sintern-sysvar) + (idlwave-sintern-sysvartag): + * progmodes/idlwave.el (idlwave-sintern-class-tag) + (idlwave-sintern-sysvar, idlwave-sintern-sysvartag): Declare as + functions. + +2007-11-30 Dan Nicolaescu + + * textmodes/reftex-index.el (texmathp): + * textmodes/reftex-auc.el (TeX-argument-insert) + (TeX-argument-prompt, multi-prompt, LaTeX-add-index-entries) + (LaTeX-add-labels, LaTeX-bibitem-list, LaTeX-index-entry-list) + (LaTeX-label-list): + * nxml/rng-maint.el (rng-clear-cached-state, rng-clear-overlays) + (rng-clear-conditional-region, rng-do-some-validation): Declare as + functions. + (rng-error-count, rng-validate-up-to-date-end): Pacify byte compiler. + +2007-11-30 Glenn Morris + + * emacs-lisp/byte-run.el (declare-function): Add optional fourth + argument and document it. + + * emacs-lisp/bytecomp.el (byte-compile-declare-function): + Third argument to declare-function must be a list to specify arglist. + + * emacs-lisp/check-declare.el (check-declare-scan): Doc fix. + Handle declare-function third argument `t' and fourth argument. + (check-declare-verify): Doc fix. Handle `fileonly' case. + Use progn rather than prog1. + + * desktop.el (uniquify-item-base): + * term/mac-win.el (url-type): Declare as functions. + + * net/eudcb-bbdb.el (bbdb-phone-location, bbdb-record-phones) + (bbdb-address-city, bbdb-address-state, bbdb-address-zip) + (bbdb-address-location, bbdb-record-addresses): Pass non-nil + fourth arg to declare-function. + + * play/dunnet.el: Don't require cl when compiling. + (byte-compile-warnings): Set via file local variables. + (dun-parse): Let-bind `beg' and `line'. + +2007-11-29 Alexandre Julliard - * textmodes/ispell.el (ispell-aspell-supports-utf8): New variable. - (ispell-check-version): Set ispell-aspell-supports-utf8 to t for - aspell versions >= 0.60. - (ispell-valid-dictionary-list): Call ispell-find-aspell-dictionaries - only if ispell-aspell-supports-utf8 is non-nil. + * vc-git.el (vc-git-dir-state): Fix the git command arguments. -2005-09-17 Johan Bockg,Ae(Brd +2007-11-29 Ari Roponen (tiny change) - * progmodes/scheme.el (scheme-mode-variables): Use setq to assign - buffer-local value to lisp-indent-function. + * calendar/time-date.el (encode-time-value): Doc fix. -2005-09-17 Milan Zamazal +2007-11-29 Glenn Morris - * progmodes/glasses.el (glasses-make-readable): If - glasses-separator differs from underscore, put appropriate - overlays over underscore characters. - (glasses-convert-to-unreadable): If glasses-separator differs from - underscore, try to convert glasses-separator characters to - underscores. + * calendar/time-date.el (with-decoded-time-value): Doc fix. -2005-09-16 Stefan Monnier + * textmodes/css-mode.el (prog-mode): Remove. + (css-mode): Derive from fundamental-mode rather than prog-mode. - * calendar/diary-lib.el (mark-diary-entries): Don't move point. - Use with-syntax-table and dolist. + * emacs-lisp/byte-run.el (declare-function): Doc fix. -2005-09-16 Carsten Dominik + * emacs-lisp/check-declare.el (check-declare-locate) + (check-declare-verify): Handle `external' files. + (check-declare-errmsg): New function. + (check-declare-verify, check-declare-file, check-declare-directory): + Use check-declare-errmsg to report the number of problems. - * textmodes/reftex-auc.el: - * textmodes/reftex-cite.el: - * textmodes/reftex-dcr.el: - * textmodes/reftex-global.el: - * textmodes/reftex-parse.el: - * textmodes/reftex-ref.el: - * textmodes/reftex-sel.el: - * textmodes/reftex-toc.el: - * textmodes/reftex-vars.el: - * textmodes/reftex.el: Small changes to remove compiler warnings. + * ffap.el (w3-view-this-url) + * mail/mspools.el (vm-visit-folder) + * net/browse-url.el (w3-fetch-other-window, w3-fetch) + * net/eudcb-bbdb.el (bbdb-phone-location, bbdb-phone-string) + (bbdb-record-phones, bbdb-address-city, bbdb-address-state) + (bbdb-address-zip, bbdb-address-location, bbdb-record-addresses) + (bbdb-records) + * net/eudc-export.el (bbdb-parse-phone-number, bbdb-string-trim) + * net/imap.el (sasl-find-mechanism, sasl-mechanism-name) + (sasl-make-client, sasl-next-step, sasl-step-data) + (sasl-step-set-data) + * net/newsticker.el (w3m-toggle-inline-image, htmlr-reset) + (htmlr-step): Declare as functions. - * textmodes/reftex-index.el: Likewise. - (reftex-query-index-phrase): More efficient use of markers. + * net/eudcb-bbdb.el (eudc-bbdb-extract-addresses): + Use bbdb-address-zip rather than bbdb-address-zip-string. -2005-09-15 Chong Yidong +2007-11-28 Richard Stallman - * image.el (image-load-path): New variable. - (image-search-load-path): New function. - (find-image): Search for images in `image-load-path'. + * md4.el, net/hmac-def.el, net/hmac-md5.el, net/ntlm.el: + Move here from gnus/. -2005-09-15 Richard M. Stallman +2007-11-28 Martin Rudalics - * follow.el: Change Maintainer field. + * newcomment.el (comment-region-internal): Fix newline insertion + in `block' case. -2005-09-15 David Ponce +2007-11-28 Stefan Monnier - * recentf.el (recentf-save-file-modes): New option. - (recentf-save-list): Use it. + * pcvs-parse.el (cvs-parse-table): Adjust regexp for resurrections. -2005-09-15 Nick Roberts +2007-11-28 Glenn Morris - * bindings.el (mode-line-eol-desc, mode-line-coding-system-map) - (mode-line-mule-info, mode-line-modified): Move bindings from - mouse-3 to mouse-1. + * Makefile.in (maintainer-clean): Depend on bootstrap-clean to + delete .elc files. -2005-09-15 Chong Yidong + * nxml/char-name/unicode: Move to etc/nxml/. + * nxml/nxml-uchnm.el (top-level): Adapt for moved unicode files. - * simple.el (sendmail-user-agent-compose): Revert last change. + * nxml/nxml-enc.el (xmltok-get-declared-encoding-position): + Declare as a function. -2005-09-14 Stefan Monnier + * nxml/nxml-maint.el (nxml-create-unicode-char-name-sets): + * nxml/nxml-mode.el (nxml-get-char-name, nxml-insert-named-char): + * nxml/xsd-regexp.el (xsdre-gen-categories): Change mapcar -> mapc. - * net/ange-ftp.el (ange-ftp-process-filter): Revert to ^#+$. - Use with-current-buffer. - (ange-ftp-gwp-start): Remove unused var `gw-user'. - (ange-ftp-guess-hash-mark-size): Remove unused var `result'. - (ange-ftp-insert-directory): Remove unused var `short'. - (ange-ftp-file-name-sans-versions): Remove unused var `host-type'. + * nxml/nxml-outln.el (nxml-token-start-tag-p) + (nxml-token-end-tag-p): Move definitions before use. - * pcvs-defs.el (cvs-version): Recognize CVSNT version string. - (cvs-execute-single-dir): Change default: cvs-1.9 is ancient. + * nxml/nxml-rap.el (nxml-prolog-regions): Declare for compiler. - * calendar/cal-menu.el: Don't require easymenu, since we don't use it. - (check-calendar-holidays, diary-list-entries): Autoload. - Otherwise `emacs -q' followed by "mouse-2 -> diary entries" burps. - (calendar-mouse-holidays, calendar-mouse-view-diary-entries): Simplify. - - * calendar/diary-lib.el (diary-show-all-entries): Fix last change, - which mistakenly removed a call to display-buffer. - -2005-09-14 Juanma Barranquero - - * obsolete/iso-insert.el: Move to obsolete/ from international/. - -2005-09-14 Thien-Thi Nguyen + * nxml/nxml-uchnm.el (top-level) + (nxml-enable-unicode-char-name-sets-1): Use mapc rather than mapcar. + (nxml-enabled-unicode-blocks): Add custom group. - * progmodes/hideshow.el - (hs-hide-comments-when-hiding-all): Remove autoload cookie. - (hs-allow-nesting): New user var. - (hs-discard-overlays): Skip "internal" overlays if nesting allowed. - (hs-hide-block-at-point): When nesting allowed, - if there is already an overlay in place, delete it. - (hs-safety-is-job-n): Delete func; remove call sites. - (hs-hide-level-recursive): Don't pre-clean if nesting allowed. - (hs-overlay-at): New func. - (hs-already-hidden-p, hs-show-block): Use it. - (hs-hide-all): Don't pre-clean if nesting allowed. - (hs-show-all): Temporarily disallow - nesting around call to `hs-discard-overlays'. + * nxml/xmltok.el (xmltok-scan-char-ref, xmltok-char-number): + Use string-to-number rather than string-to-int. -2005-09-14 Chong Yidong + * dired-x.el (dired-omit-old-add-entry): Declare as function. + Move definition before use. + (dired-old-find-buffer-nocreate): Declare as function. - * mouse.el (mouse-major-mode-menu): Make `prefix' optional. - Delete unused local var. + * emacs-lisp/check-declare.el (check-declare-locate): Reflow doc. + (check-declare-verify): Handle fset. -2005-09-13 Juanma Barranquero + * emulation/edt.el (edt-user-emulation-setup): + Test edt-setup-user-bindings is bound before calling. - * help-fns.el (describe-categories): "?\ " -> "?\s". - (help-do-arg-highlight): Recognize also ARG-n, as in - `move-to-left-margin' (ARG+n is already recognized). Simplify. + * emulation/tpu-edt.el: Don't require cl when compiling. + (tpu-emacs-search, tpu-emacs-rev-search): Declare as functions. + (tpu-edt-off): Use condition-case rather than ignore-errors. + Use with-no-warnings. - * international/codepage.el (dos-unsupported-char-glyph): - * net/newsticker.el (tool-bar-map, w3-mode-map) - (w3m-minor-mode-map): - * progmodes/vhdl-mode.el (conf-alist, conf-entry, conf-key) - (ent-alist): - * textmodes/reftex-vars.el (reftex-tables-dirty): Add defvars. + * eshell/esh-util.el (top-level): Use require rather than load for + ange-ftp. + + * mail/supercite.el (sc-version): Redefine as an alias for + emacs-version. + (sc-help-address): Remove. + (sc-version): Use emacs-version rather than sc-version. + (sc-submit-bug-report): Redefine as an alias for report-emacs-bug. + + * net/socks.el (socks-original-open-network-stream): Declare as + function. Move definition before use. + +2007-11-28 Jay Belanger + + * calc/calc-ext.el (math-sqrt-raw, math-map-vec) + (math-make-frac): Declare as functions. + +2007-11-27 Dan Nicolaescu + + * progmodes/cperl-mode.el (compilation-error-regexp-alist): + Pacify byte compiler. + (cperl-mode): Use with-no-warnings for setting vc-header-alist. + + * progmodes/idlwave.el (idlwave-shell-get-path-info) + (idlwave-shell-temp-file, idlwave-shell-is-running) + (widget-value, comint-dynamic-complete-filename, Info-goto-node): + * progmodes/idlw-help.el (idlwave-prepare-structure-tag-completion) + (idlwave-all-method-classes, idlwave-all-method-keyword-classes) + (idlwave-beginning-of-statement, idlwave-best-rinfo-assoc) + (idlwave-class-found-in, idlwave-class-or-superclass-with-tag) + (idlwave-completing-read, idlwave-current-routine) + (idlwave-downcase-safe, idlwave-entry-find-keyword) + (idlwave-expand-keyword, idlwave-find-class-definition) + (idlwave-find-inherited-class, idlwave-find-struct-tag) + (idlwave-get-buffer-visiting, idlwave-in-quote) + (idlwave-make-full-name, idlwave-members-only) + (idlwave-popup-select, idlwave-routine-source-file) + (idlwave-routines, idlwave-sintern-class) + (idlwave-sintern-keyword, idlwave-sintern-method) + (idlwave-sintern-routine-or-method) + (idlwave-substitute-link-target, idlwave-sys-dir) + (idlwave-this-word, idlwave-what-module-find-class) + (idlwave-where): + * progmodes/idlw-complete-structtag.el (idlwave-shell-buffer): + * mail/uce.el (rmail-msg-is-pruned) + (rmail-maybe-set-message-counters, rmail-msgbeg, rmail-msgend) + (rmail-toggle-header): + * mail/sendmail.el (dired-view-file, dired-get-filename): + * mail/rmailkwd.el (rmail-maybe-set-message-counters) + (rmail-display-labels, rmail-msgbeg) + (rmail-set-message-deleted-p, rmail-message-labels-p) + (rmail-show-message, mail-comma-list-regexp) + (mail-parse-comma-list): + * mail/rmail.el (rmail-spam-filter, rmail-summary-goto-msg) + (rmail-summary-mark-undeleted, rmail-summary-mark-deleted) + (rfc822-addresses, mail-abbrev-make-syntax-table) + (mail-sendmail-delimit-header, mail-header-end): + * mail/hashcash.el (message-narrow-to-headers-or-head) + (message-fetch-field, message-goto-eoh) + (message-narrow-to-headers): + * vc.el (view-mode-exit): Declare as functions. + + * mail/vms-pmail.el: + * vmsproc.el: + * vms-patch.el: Don't byte compile these files, they don't work. + +2007-11-27 Glenn Morris + + * calc/calc-ext.el (math-read-big-rec): + * calc/calc-nlfit.el (math-map-binop): + * calc/calc.el (math-normalize-nonstandard): Fix declarations. + + * eshell/eshell.el (eshell-report-bug): Add version number of + obsolescence. + + * emulation/viper.el, emulation/viper-util.el, + emulation/viper-macs.el, emulation/viper-keym.el, + emulation/viper-ex.el, emulation/viper-cmd.el: + Load viper-*.el files silently. + + * ediff-diff.el, ediff-help.el, ediff-merg.el, ediff-mult.el, + ediff-ptch.el, ediff-util.el, ediff-vers.el, ediff-wind.el, ediff.el: + Load ediff-*.el files silently. + + * ediff.el: Load dired silently. Don't load info, pcl-cvs when + compiling. + (Info-goto-node): Declare as a function. + + * ediff-init.el: Don't load ange-ftp when compiling. + * ediff-util.el: Don't load reporter when compiling. + + * ediff-wind.el (ediff-display-pixel-width) + (ediff-display-pixel-height): + * generic-x.el (ini-generic-mode): + * ps-print.el (ps-mule-encode-header-string, ps-mule-begin-page) + (ps-mule-prepare-ascii-font, ps-mule-set-ascii-font) + (ps-mule-initialize, ps-mule-begin-job): + * calendar/cal-bahai.el (add-to-diary-list, diary-name-pattern) + (mark-calendar-days-named): + * calendar/cal-hebrew.el (holiday-filter-visible-calendar) + (add-to-diary-list, diary-name-pattern) + (mark-calendar-days-named): + * calendar/cal-islam.el (add-to-diary-list, diary-name-pattern) + (mark-calendar-days-named): + * calendar/cal-x.el (make-fancy-diary-buffer): + * calendar/holidays.el (calendar-absolute-from-julian): + * calendar/todo-mode.el (calendar-current-date): + * calendar/cal-menu.el (calendar-increment-month) + (calendar-month-name, extract-calendar-year) + (calendar-cursor-to-date, holiday-list, calendar-sunrise-sunset) + (calendar-current-date, calendar-cursor-holidays) + (calendar-date-string, insert-diary-entry, calendar-set-mark) + (cal-tex-cursor-day, cal-tex-cursor-week, cal-tex-cursor-week2) + (cal-tex-cursor-week-iso, cal-tex-cursor-week-monday) + (cal-tex-cursor-filofax-daily, cal-tex-cursor-filofax-2week) + (cal-tex-cursor-filofax-week, cal-tex-cursor-month) + (cal-tex-cursor-month-landscape, cal-tex-cursor-year) + (cal-tex-cursor-filofax-year, cal-tex-cursor-year-landscape) + (calendar-day-of-year-string, calendar-iso-date-string) + (calendar-julian-date-string, calendar-astro-date-string) + (calendar-absolute-from-gregorian, calendar-hebrew-date-string) + (calendar-persian-date-string, calendar-bahai-date-string) + (calendar-islamic-date-string, calendar-chinese-date-string) + (calendar-coptic-date-string, calendar-ethiopic-date-string) + (calendar-french-date-string, calendar-mayan-date-string) + (calendar-print-chinese-date, calendar-goto-date): + Declare as functions. + + * calendar/calendar.el (nongregorian-diary-listing-hook): Doc fix. + (Info-find-emacs-command-nodes, Info-find-node): Declare as functions. + + * ffap.el (ffap-bug, ffap-submit-bug): Redefine as obsolete + aliases for report-emacs-bug. + (gnus-summary-select-article, gnus-configure-windows): Declare as + functions. + + * pgg-parse.el (pgg-parse-24, pgg-parse-crc24-string): Declare for + compiler. -2005-09-13 Chong Yidong + * pgg.el (pgg-clear-string): Declare as a function. + (pgg-run-at-time-1): Wrap whole definition in (featurep 'xemacs) test. + (pgg-run-at-time, pgg-cancel-timer): Move definitions before use. + + * emacs-lisp/check-declare.el (check-declare-locate): + Handle compressed files. + (check-declare-verify): Handle define-generic-mode, + define-global(ized)-minor-mode, define-obsolete-function-alias. + +2007-11-27 Jay Belanger + + * calc/calc-menu.el (calc-modes-menu): Add normal and incomplete + algebraic modes. + + * calc/calc-aent.el (calc-refresh-evaltos, calc-execute-kbd-macro) + (math-is-true, calc-explain-why, calc-alg-edit) + (math-composite-inequalities, math-flatten-lands) + (math-multi-subst, calcFunc-vmatches, math-simplify) + (math-known-matrixp, math-parse-fortran-subscr, math-to-radians-2) + (math-read-string, math-read-brackets, math-read-angle-brackets): + Declare as functions. + + * calc/calcalg3.el (calc-fit-s-shaped-logistic-curve) + (calc-fit-bell-shaped-logistic-curve) + (calc-fit-hubbert-linear-curve, calc-graph-add-curve) + (calc-graph-lookup, calc-graph-set-styles, math-min-list) + (math-max-list): Declare as functions. + (math-map-binop): New function. + (calc-curve-fit): Replace `mapcar*' by `math-map-binop'. + + * calc/calc.el (calc-set-language, calc-edit-finish) + (calc-edit-cancel, calc-do-quick-calc, calc-do-calc-eval) + (calc-do-keypad, calcFunc-unixtime, math-parse-date) + (math-lessp, calc-embedded-finish-command) + (calc-embedded-select-buffer, calc-embedded-mode-line-change) + (calc-push-list-in-macro, calc-replace-selections) + (calc-record-list, calc-normalize-fancy, calc-do-handle-whys) + (calc-top-selected, calc-sel-error, calc-pop-stack-in-macro) + (calc-embedded-stack-change, calc-refresh-evaltos) + (calc-do-refresh, calc-binary-op-fancy, calc-unary-op-fancy) + (calc-delete-selection, calc-alg-digit-entry, calc-alg-entry) + (calc-dots, calc-temp-minibuffer-message, math-read-radix-digit) + (calc-digit-dots, math-normalize-fancy, math-normalize-nonstandard) + (math-recompile-eval-rules, math-apply-rewrites, calc-record-why) + (math-dimension-error, calc-incomplete-error, math-float-fancy) + (math-neg-fancy, math-zerop, calc-add-fractions) + (math-add-objects-fancy, math-add-symb-fancy, math-mul-zero) + (calc-mul-fractions, math-mul-objects-fancy, math-mul-symb-fancy) + (math-reject-arg, math-div-by-zero, math-div-zero, math-make-frac) + (calc-div-fractions, math-div-objects-fancy, math-div-symb-fancy) + (math-compose-expr, math-comp-width, math-composition-to-string) + (math-stack-value-offset-fancy, math-format-flat-expr-fancy) + (math-adjust-fraction, math-format-binary, math-format-radix) + (math-group-float, math-mod, math-format-number-fancy) + (math-format-bignum-fancy, math-read-number-fancy) + (calc-do-grab-region, calc-do-grab-rectangle, calc-do-embedded) + (calc-do-embedded-activate, math-do-defmath) + (calc-load-everything): Declare as functions. + + * calc/calc-ext.el (math-clip, math-round, math-simplify) + (math-simplify-extended, math-simplify-units, calc-set-language) + (calc-flush-caches, calc-save-modes, calc-embedded-modes-change) + (calc-embedded-var-change, math-mul-float, math-arctan-raw) + (math-sqrt-float, math-exp-minus-1-raw, math-normalize-polar) + (math-normalize-hms, math-normalize-mod, math-make-sdev) + (math-make-intv, math-normalize-logical-op, math-possible-signs) + (math-infinite-dir, math-calcFunc-to-var) + (calc-embedded-evaluate-expr, math-known-nonzerop) + (math-read-expr-level, math-read-big-rec, math-read-big-balance) + (math-format-date, math-vector-is-string, math-vector-to-string) + (math-format-radix-float, math-compose-expr, math-abs) + (math-format-bignum-binary, math-format-bignum-octal) + (math-format-bignum-hex, math-format-bignum-radix) + (math-compute-max-digits): Declare as functions. + (math-provably-realp): Fix typo. + + * calc/calc-forms.el (calendar-current-time-zone) + (calendar-absolute-from-gregorian, dst-in-effect): Declare as + functions. + + * calc/calc-help.el (Info-goto-node, Info-last): Declare as functions. + + * calc/calc-lang.el (math-read-factor, math-read-expr-level): + Declare as functions. + + * calc/calc-macs.el (math-zerop, math-negp, math-looks-negp) + (math-posp, math-compare, math-bignum, math-compare-bignum): + Declare as functions. + + * calc/calc-misc.el (calc-do-keypad, calc-inv-hyp-prefix-help) + (calc-inverse-prefix-help, calc-hyperbolic-prefix-help) + (calc-explain-why, calc-clear-command-flag) + (calc-roll-down-with-selections, calc-roll-up-with-selections) + (calc-last-args, calc-is-inverse, calc-do-prefix-help) + (math-objvecp, math-known-scalarp, math-vectorp, math-matrixp) + (math-trunc-special, math-trunc-fancy, math-floor-special) + (math-floor-fancy, math-square-matrixp, math-matrix-inv-raw) + (math-known-matrixp, math-mod-fancy, math-pow-of-zero) + (math-pow-zero, math-pow-fancy): Declare as functions. + + * calc/calc-mode.el (calc-embedded-save-original-modes): + Declare as a function. + + * calc/calc-nlfit.el (calc-get-fit-variables, math-map-binop): + Declare as functions. + (math-nlfit-make-matrix, math-nlfit-find-qmax, math-nlfit-fit) + (math-nlfit-fit-curve, calc-fit-hubbert-linear-curve): + Replace `mapcar*' by `math-map-binop'. + (math-nlfit-make-matrix): Replace `copy-list' with `copy-sequence'. + + * calc/calc-prog.el (edmacro-format-keys, edmacro-parse-keys) + (math-read-expr-level): Declare as functions. + + * calc/calc-vec.el (math-read-expr-level): Declare as a function. + +2007-11-26 Stefan Monnier + + * emacs-lisp/lisp.el (end-of-defun): Restructure so that + end-of-defun-function is called consistently, even for negative + arguments. + (end-of-defun-function): Default to forward-sexp. - * custom.el (custom-push-theme): Handle the case where a symbol is - bound but face properties have not yet been assigned. +2007-11-26 Juanma Barranquero - * mail/sendmail.el (mail): Use new buffer if `noerase' is `new'. - Fix behavior if noerase is `t' and there is no mail buffer. + * emacs-lisp/bytecomp.el (batch-byte-recompile-directory): Doc fix. - * simple.el (sendmail-user-agent-compose): Use a new mail buffer - if `continue' is nil, rather than signal an error. +2007-11-26 Glenn Morris -2005-09-12 Richard M. Stallman + * calendar/cal-menu.el (cal-menu-holidays-menu): Use :label rather + than :suffix. - * font-lock.el (font-lock-keywords): Add autoload. + * emacs-lisp/easymenu.el (easy-menu-define): Doc fix. - * help-fns.el (describe-variable): Rearrange to put source link - in a predictable place. +2007-11-26 Simon Josefsson - * net/newsticker.el: New file. + * net/imap.el: Move from ../gnus. -2005-09-12 Stefan Monnier +2007-11-25 Reiner Steib - * calendar/calendar.el (calendar-for-loop): Add edebug info. - (calendar-basic-setup): Use the new nil arg. - (number-of-diary-entries): Move to diary-lib.el. + * doc-view.el (doc-view-mode-p): New function. - * calendar/diary-lib.el: Use with-current-buffer, match-string. - (diary-list-entries): Use with-syntax-table and dolist. - Rename from list-diary-entries. - Use number-of-diary-entries if `number' is nil. - (diary, diary-view-entries): Use this new name and new nil arg value. - (number-of-diary-entries): Move from calendar.el. - (diary-unhide-everything): New function. - (include-other-diary-files, fancy-diary-display) - (diary-show-all-entries, make-diary-entry): Use it. - (diary-mail-entries): Use buffer-string. - (mark-diary-entries): Fix long standing paren typo. - (diary-sexp-entry): Use count-lines. - (make-diary-entry): Avoid `previous-line'. - (diary-mode-map): New var. - (diary-mode): Redraw cal after saving. Setup header-line. - (fancy-diary-display-mode): Use local-set-key. +2007-11-25 Dan Nicolaescu - * startup.el (command-line): Try calling various terminal-init-foo-bar - functions by stripping hyphenated suffixes from $TERM. + * mail/mspools.el (rmail-get-new-mail): + * mail/reporter.el (mail-position-on-field, mail-text): + * mail/rmail.el (mail-position-on-field, mail-text-start) + (rmail-update-summary): + * mail/rmailedit.el (rmail-summary-disable, rmail-summary-enable): + * mail/rmailmsc.el (rmail-parse-file-inboxes, rmail-show-message): + * mail/rmailout.el (rmail-update-summary): + * mail/rmailsort.el (rmail-update-summary): + * mail/sendmail.el (dired-move-to-filename, dired-get-filename) + (dired-view-file): + * mail/uce.el (mail-strip-quoted-names): + * mail/undigest.el (rmail-update-summary): + * mail/unrmail.el (mail-strip-quoted-names): + * ediff.el (diff-latest-backup-file): Declare as functions. - * files.el (normal-mode): Check boundness of font-lock-keywords. + * obsolete/mlsupport.el (ml-previous-page): Fix typo. + (kill-to-end-of-line): + * obsolete/rnews.el (news-set-minor-modes): + Remove non working functions. -2005-09-12 Richard M. Stallman +2007-11-25 Glenn Morris - * progmodes/compile.el: Don't decide a file's directory - until the user actually tries to go there. - (compilation-next-error-function): - Pass compilation-find-file the directory from the file-struct. - (compilation-internal-error-properties): Separate local FILE-STRUCT - from FILE. Doc the args better. Rename arg FMT to FMTS. - (compilation-find-file): Arg DIR renamed to DIRECTORY. - Expand it, and if nil, use default-directory. - (compilation-get-file-structure): Don't mix specified directory - with default directory. Put specified directory into - file-struct. Don't make the file name absolute. + * eshell/esh-maint.el (top-level): Use require with NOERROR for + pcomplete. Don't mess with load-path. - * progmodes/compile.el (compilation-error-regexp-alist): Doc fix. - (compile-command): Add autoload. - (compilation-disable-input): Add autoload. + * eshell/eshell.el (eshell-report-bug-address): Remove. + (eshell-report-bug): Redefine as an alias for report-emacs-bug. -2005-09-11 Stephen Gildea +2007-11-24 Glenn Morris - * time-stamp.el: Mention variable `time-stamp-pattern' in doc - strings of the variables it can override. - (time-stamp): New (as yet undocumented) time-stamp-format escapes - %Q and %q, for fully-qualified domain name and unqualified host name. + * calendar/appt.el: Remove leading `*' from defcustom doc-strings. + (appt-disp-window): Don't require electric. + Simplify minibuffer-avoidance code. + (appt-select-lowest-window): Avoid minibuffer. -2005-09-11 Kim F. Storm + * eshell/eshell.el: Remove leading `*' from defcustom doc-strings. + (esh-mode): Require it. + (esh-util): Use require rather than featurep and load. + (eshell): No need to test if eshell-mode is bound; remove obsolete + reference to eshell-auto. + (eshell-command, eshell-command-result): Don't require esh-mode + now that the file does. + (top-level): Move provide statement to the end of the file. + Re-order and update commentary. - * emacs-lisp/authors.el (authors-aliases): Update list. - (authors-fixed-entries): Update mldrag.el entry. +2007-11-24 Thien-Thi Nguyen -2005-09-10 Alan Mackenzie + * vc.el (vc-annotate-mode): Frob buffer invisibility spec. + (vc-annotate-toggle-annotation-visibility): New command. + (vc-annotate-mode-map): Bind "V" to it. + (vc-annotate-mode-menu): Add entry for it. + (vc-annotate-get-time-set-line-props): New func. + (vc-annotate-display-autoscale) + (vc-annotate-display-difference): Use it. - * textmodes/page.el (narrow-to-page): Exclude _entire_ multi-line - delimiter from the region narrowed to. + * vc-git.el (vc-git-annotate-time): Handle optional field FILENAME. + Also, match one space at end of annotation text, after last paren. -2005-09-10 Magnus Henoch +2007-11-24 Michael Albinus - * textmodes/ispell.el (ispell-check-version): Signal an error if - aspell version is less than 0.60. + * ido.el (ido-file-name-all-completions-1): Check for fboundp of + `tramp-completion-mode-p' as it is in Tramp 2.1. Let-bind + `tramp-completion-mode'. -2005-09-10 Pascal Dupuis (tiny change) +2007-11-24 Thien-Thi Nguyen - * progmodes/octave-inf.el (inferior-octave-startup): - Resync current dir at the end. + * vc-git.el (vc-git-show-log-entry): New func. -2005-09-10 Emilio C. Lopes + * vc-git.el (vc-git--call, vc-git--out-ok): New funcs. + (vc-git-state): Use vc-git--call. + (vc-git-registered, vc-git-working-revision) + (vc-git-previous-revision, vc-git-next-revision) + (vc-git--run-command-string, vc-git-symbolic-commit): + Use vc-git--out-ok. - * woman.el (woman-topic-at-point-default): - Rename to woman-use-topic-at-point-default. - (woman-topic-at-point): Rename to woman-use-topic-at-point. - (woman-file-name): Reflect renames above. Automatically use the - word at point as topic if woman-use-topic-at-point is non-nil. - Otherwise offer it as default but don't insert it in the - minibuffer. Also use `test-completion' instead of `assoc' as - suggested by Stefan Monnier. +2007-11-24 Glenn Morris -2005-09-10 Andre Spiegel + * emacs-lisp/byte-run.el (declare-function): Doc fix. - * vc.el (vc-directory, vc-update-change-log): Throw an error on - the attempt to do it over Tramp. This is not yet supported. +2007-11-24 Kenichi Handa -2005-09-10 Eli Zaretskii + * international/ucs-tables.el (ucs-8859-7-alist): Update the table. - * menu-bar.el (menu-bar-menu-frame-live-and-visible-p) - (menu-bar-non-minibuffer-window-p): New functions. - ("Split Window", "Save As..."): Use them. - ("Postscript Print Buffer (B+W)", "Postscript Print Buffer") - ("Print Buffer", "Truncate Long Lines in this Buffer"): - Use menu-bar-menu-frame-live-and-visible-p. - ("Save Buffer", "Insert File", "Open Directory...") - ("Open File...", "Visit New File..."): - Use menu-bar-non-minibuffer-window-p. - (kill-this-buffer-enabled-p, dired ): - Use menu-bar-non-minibuffer-window-p. +2007-11-23 David Kastrup -2005-09-09 Eli Zaretskii + * server.el (server-process-filter): Use `command-line-args-left'. - * cus-start.el (all): Don't complain about fringe-related - built-ins if fringes are not supported. Ditto about - selection-related built-ins. Fix the test for GTK-related built-ins. +2007-11-23 Stefan Monnier - * menu-bar.el ("Split Window", "Postscript Print Buffer (B+W)") - ("Postscript Print Buffer", "Print Region", "Save As...") - ("Save", "Insert File...", "Open Directory...") - ("Open File...", "Visit New File..."") - ("Truncate Long Lines in this Buffer"): Don't look at - menu-updating-frame if this display does not support multiple frames. + * nxml/subdirs.el, nxml/char-data/subdirs.el, nxml/rng-auto.el: Remove. -2005-09-09 Frederik Fouvry +2007-11-23 Dan Nicolaescu - * mail/sendmail.el (default-sendmail-coding-system): Doc fix. + * vc.el (vc-deduce-fileset): Also look for a fileset in the parent + buffer if the parent buffer is in vc-dired-mode. -2005-09-09 Emilio C. Lopes +2007-11-23 Mark A. Hershberger - * woman.el: Format- and whitespace-related changes. + * nxml: Initial merge of nxml. Kept nxml/char-name subdir for now. -2005-09-09 Eli Zaretskii +2007-11-23 Juri Linkov - * woman.el: Fix my email address. + * dired.el (dired-read-dir-and-switches): For C-x d, set the + value for M-n to the visited file name of the current buffer. + Use minibuffer-with-setup-hook to set minibuffer-default to + buffer-file-name inside read-file-name. -2005-09-08 Richard M. Stallman + * man.el (Man-getpage-in-background): Don't disregard user option + `Man-width' on non-window systems. Remove test for `window-system' + around setting envvar "COLUMNS" depending on the value of `Man-width'. - * progmodes/sh-script.el (sh-skeleton-pair-default-alist): New var. - (sh-mode): Locally set skeleton-pair-default-alist. + * progmodes/grep.el (grep-process-setup): Set envvar "TERM" to + "emacs-grep". Set envvar "GREP_OPTIONS" to "--color=auto" instead + of "--color=always". - * progmodes/make-mode.el (makefile-add-log-defun): Trim the result. +2007-11-22 Stefan Monnier - * progmodes/flymake.el: Require `compile' unconditionally. + * emacs-lisp/lisp.el (beginning-of-defun-raw): Pass `arg' down to + beginning-of-defun-function. - * mail/sendmail.el (send-mail-function): Add Mailclient alternative. +2007-11-22 Reiner Steib - * woman.el (woman-file-name): Provide a default, not initial input. + * mail/hashcash.el: Move from ../gnus. Add hashcash payments to email. - * smerge-mode.el (smerge-resolve): Pass args to smerge-remove-props. +2007-11-22 Glenn Morris - * font-lock.el (font-lock-support-mode): Doc fix. + * emulation/cua-base.el (x-clipboard-yank): Fix declaration. - * descr-text.el (describe-property-list): Handle non-symbol prop names. + * emacs-lisp/check-declare.el (check-declare-locate): New function. + (check-declare-scan): Use check-declare-locate. + (check-declare-verify): No longer adjust fnfile, now + check-declare-locate does it. -2005-09-08 Richard M. Stallman + * emacs-lisp/byte-run.el (declare-function): Doc fix. - * simple.el (blink-matching-open): Get rid of text props from - the string shown in echo area. Don't permanently set point. - Some rearrangements. +2007-11-22 Stefan Monnier -2005-09-08 Reiner Steib + * subr.el (posn-col-row): Make the `default-value' use explicit. - * recentf.el (recentf-filename-handler): Add custom choice - `abbreviate-file-name'. + * window.el (balance-windows): Remove unused var `counter'. + (bw-balance-sub): Remove unused var `lastchild'. + (split-window-vertically): Remove unused var `switch'. + (recenter-top-bottom): Remove unused vars `bottom', `current', `total'. - * msb.el (msb--very-many-menus): Fix typo. + * emacs-lisp/bytecomp.el + (byte-compile-file-form-custom-declare-variable): Simplify. - * disp-table.el (standard-display-european): Don't set - enable-multibyte-characters to nil. +2007-11-22 Juanma Barranquero -2005-09-08 David Ponce + * cus-edit.el (custom-mode): Define with `define-derived-mode'. + Set `show-trailing-whitespace' to nil. - * recentf.el (recentf-show-file-shortcuts-flag): New option. - (recentf-expand-file-name): Doc fix. - (recentf-dialog-mode-map): Define digit shortcuts. - (recentf--files-with-key): New variable. - (recentf-show-digit-shortcut-filter): New function. - (recentf-open-files-items): New function. - (recentf-open-files): Use it. - (recentf-open-file-with-key): New command. + * dired.el (make-symbolic-link): + * dired-aux.el (mailcap-parse-mailcaps, mailcap-parse-mimetypes) + (mailcap-extension-to-mime, mailcap-mime-info, make-symbolic-link): + * dired-x.el (make-symbolic-link): + * frame.el (x-initialize-window-system): + * menu-bar.el (x-menu-bar-open): + * select.el (x-get-cut-buffer-internal, x-rotate-cut-buffers-internal) + (x-store-cut-buffer-internal): + * wdired.el (make-symbolic-link): + * x-dnd.el (x-register-dnd-atom, x-get-atom-name) + (x-send-client-message): + * emulation/cua-base.el (x-clipboard-yank): Declare as functions. -2005-09-08 Chong Yidong +2007-11-22 Jan Djärv - * buff-menu.el (Buffer-menu-sort-by-column): New function. - Suggested by Kim F. Storm. - (Buffer-menu-sort-button-map): Global keymap for sort buttons. - (Buffer-menu-make-sort-button): Use global keymap. + * term/x-win.el (x-gtk-map-stock): Check if FILE is a string. -2005-09-07 Michael Albinus +2007-11-22 Glenn Morris - * woman.el (top): Remap `man' command by `woman' in `woman-mode-map'. - (Man-getpage-in-background-advice): Remove defadvice; it isn't - necessary any longer with the remapped command. - (Man-bgproc-sentinel-advice): Remove defadvice which counts - formatting time only. + * dos-fns.el (int86): + * term/mac-win.el (mac-font-panel-mode): Fix declarations. - * net/tramp.el (tramp-action-password) - (tramp-multi-action-password): Compile the password prompt from - `method', `user' and `host'. Sometimes it isn't obvious which - password to enter, for example with remote files offered by - recentf.el, or with multiple steps. Suggested by Robert Marshall - . + * calendar/cal-menu.el (cal-menu-holidays-menu): Fix holiday-list call. -2005-09-07 Stefan Monnier + * calendar/holidays.el (holiday-list): Add autoload cookie. - * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords): - Fix regexp for when "s///" is at the beginning of line. + * emacs-lisp/check-declare.el (check-declare-scan): Expand .c + files relative to src/ directory. + (check-declare-verify): Handle .c files. Warn if could not find + an arglist to check. -2005-09-07 Jay Belanger + * emacs-lisp/byte-run.el (declare-function): Doc fix. - * calc/calc-poly.el (math-expand-term): Multiply out any powers - when in matrix mode. +2007-11-22 Dan Nicolaescu -2005-09-06 Stefan Monnier + * replace.el (occur-mode-map): Add a major mode menu with entries + for all occur operations. - * buff-menu.el (Buffer-menu-make-sort-button): Add docstrings, use - non-anonymous functions. + * international/titdic-cnv.el (dos-8+3-filename): + * obsolete/fast-lock.el (msdos-long-file-names): + * frame.el (msdos-mouse-p): + * files.el (msdos-long-file-names, w32-long-file-name): + * term/mac-win.el (mac-code-convert-string, mac-coerce-ae-data) + (mac-resume-apple-event, mac-font-panel-mode) + (mac-atsu-font-face-attributes, mac-ae-set-reply-parameter) + (mac-clear-font-name-table): + * term/pc-win.el (msdos-remember-default-colors) + (w16-set-clipboard-data, w16-get-clipboard-data): + * term/w32-win.el (w32-send-sys-command, w32-select-font) + (set-message-beep): + * net/browse-url.el (w32-shell-execute): + * w32-fns.el (set-message-beep, w32-get-clipboard-data) + (w32-get-locale-info, w32-get-valid-locale-ids) + (w32-set-clipboard-data): + * dos-fns.el (int86, msdos-long-file-names): + * dos-w32.el (default-printer-name): Declare as functions. -2005-09-06 Chong Yidong +2007-11-21 Jason Rumney - * buff-menu.el (Buffer-menu-make-sort-button): Allow mouse-1 clicks - when using a header line. Otherwise, use mouse-1-click-follows-link. + * emacs-lisp/byte-run.el (declare-function): Return nil. - * mouse.el (mouse-drag-header-line): Do nothing if the header-line - can't be moved; don't signal an error. +2007-11-21 Stefan Monnier -2005-09-05 Chong Yidong + * progmodes/sh-script.el (sh-mode): Set defun-prompt-regexp. - * cus-theme.el (custom-theme-write-faces): Save the current face - spec, not the defface spec. +2007-11-21 Juanma Barranquero - * custom.el (custom-known-themes): Clarify meaning of "standard". - (custom-push-theme): Save old values in the standard theme. - (disable-theme): Correct typo. - (custom-face-theme-value): Deleted unused function. - (custom-theme-recalc-face): Rewritten to treat enable/disable properly. + * w32-fns.el: Undo 2007-11-21 change by Dan Nicolaescu. -2005-09-05 Stefan Monnier - - * progmodes/compile.el (compilation-goto-locus): Take into account - iconified frames when determining whether the buffer is - already visible. - Don't reset window height if the window already existed. - -2005-09-04 Chong Yidong - - * custom.el (load-theme): Rename from require-theme. - Add interactive spec. - (enable-theme): Rename from custom-enable-theme. - Add interactive spec. - (disable-theme): Rename from custom-disable-theme. - Add interactive spec. - (custom-make-theme-feature): Doc fix. - (custom-theme-directory): Doc fix. - (provide-theme): Call enable-theme. - -2005-09-02 Stefan Monnier - - * obsolete/lazy-lock.el (lazy-lock-mode): - * obsolete/fast-lock.el (fast-lock-mode): Don't try to turn on - font-lock-mode if it's off. Print a warning instead. - - * progmodes/compile.el (compilation-start): Ignore errors if the - process died before we get to send-eof. - - * textmodes/tex-mode.el (tex-send-tex-command, tex-bibtex-file): - Undo last change. Enclosing the result in quotes broke things on Unix - since tex-send-command passes it through shell-quote-argument. - (tex-send-command): Pass `file' through convert-standard-filename - when possible. - (tex-uptodate-p): Handle the case where TeX hasn't put additional - info in a transcript. - -2005-09-02 Dan Nicolaescu - - * term/xterm.el (terminal-init-xterm): Add eval-when-compile to - fix compilation warning. Reorder the key definitions to group - together keys emitted by the current version of xterm. - - * progmodes/vhdl-mode.el (vhdl-highlight-faces) - (vhdl-speedbar-entity-face, vhdl-speedbar-entity-selected-face): - Reorder predicates to correct min-color usage. - -2005-09-01 Chong Yidong - - * longlines.el (longlines-mode): Inhibit read-only when encoding. - Kill local variables when longlines-mode is turned off. - -2005-09-01 Stefan Monnier - - * international/mule-cmds.el (set-locale-environment): Soothe compiler. - - * obsolete/lazy-lock.el (lazy-lock) : Move from font-lock.el. - - * obsolete/fast-lock.el (fast-lock) : Move from font-lock.el. - - * font-lock.el (fast-lock, lazy-lock) : Remove. - (font-lock-lines-before): Change default to being inactive. - (font-lock-default-fontify-region): Obey font-lock-lines-before. - (font-lock-after-change-function): Don't handle f-l-lines-before here. - -2005-08-31 Michael Albinus - - * net/tramp.el (tramp-handle-make-auto-save-file-name): - Deactivate temporarily advice if active (not needed for Emacs 22, - but for backwards compatibility). - (tramp-exists-file-name-handler): Rewrite. First implementation - was too simple. - (tramp-advice-make-auto-save-file-name): - Call `tramp-handle-make-auto-save-file-name' (again, just for - backwards compatibility). - -2005-08-31 Reto Zimmermann - - * progmodes/vhdl-mode.el - (vhdl-update-sensitivity-list): Handle multi-dimensional array access. - (vhdl-end-p): Fix indentation bug "else" after "-- when". - (vhdl-set-default-project): New function (easier setting of default). - (vhdl-port-copy): Handle extended identifiers for generics. - (vhdl-compiler-alist): Better description for error message regexp. - (vhdl-make): Query for target, use previous as default. - (vhdl-port-copy): Fix port copy for port names starting with "signal". - (vhdl-font-lock-keywords-2): Fix fontification for record - el. assign. - (vhdl-speedbar-make-subpack-line): Add package body link. - (vhdl-generate-makefile-1): Not include itself as dependency. - (vhdl-font-lock-init): Highlight c-preprocessor directives. - (vhdl-*ward-syntactic-ws): Skip c-preprocessor directives. - (vhdl-get-syntactic-context): Handle c-preprocessor directives. - (vhdl-update-sensitivity-list): Start scan at opening parenthesis. - (vhdl-fixup-whitespace-region): Fix jumping point (infinite loop). - (vhdl-update-sensitivity-list-buffer): Add string argument for `error'. - (vhdl-import-project): Add string argument for `error'. - (vhdl-compose-configuration) - (vhdl-compose-configuration-architecture): Add configuration - declaration generation. - (vhdl-scan-directory-contents): Scan for block/generate hierarchy. - (vhdl-trailer-re): Add "record" keyword (better indentation). - (vhdl-fixup-whitespace-region): "[^ \t\"-]+" instead of - "[^ \t-\"]+". - (vhdl-font-lock-keywords-2): Not highlight formal parameter after `|'. - (vhdl-testbench-entity-file-name) - (vhdl-testbench-architecture-file-name): Allow separate - customization of testbench file names. - (vhdl-beginning-of-block): Handle optional subprogram parameter list. - (vhdl-get-visible-signals): Allow newline within alias declaration. - (vhdl-update-sensitivity-list): Signal read only on certain attributes. - (vhdl-fixup-whitespace-region): Fix bug with strings (double quotes). - (member-ignore-case): Alias for missing function in XEmacs. - (vhdl-compiler-alist): Add unit-to-file name mapping for Cadence NC. - (vhdl-update-sensitivity-list): Ignore case on read signals. - (vhdl-replace-string): Adjust case only for file names. - (vhdl-update-sensitivity-list): Fix search for read signals. - (vhdl-update-sensitivity-list): Exclude formal parameters. - (vhdl-get-visible-signals): Include aliases of signals. - (vhdl-get-visible-signals): Fix signal name searching. - (vhdl-port-flatten, vhdl-port-reverse-direction): Better message. - (vhdl-fixup-whitespace-region): Fix for character - literals (e.g. `:'). - -2005-08-31 Juanma Barranquero - - * ansi-color.el (comint-last-output-start): - * bs.el (font-lock-verbose): - * diff-mode.el (add-log-buffer-file-name-function): - * dired-x.el (vm-folder-directory): - * faces.el (help-xref-stack-item): - * files.el (font-lock-keywords): - * find-lisp.el (dired-buffers, dired-subdir-alist): - * ido.el (cua-inhibit-cua-keys): - * log-view.el (cvs-minor-wrap-function): - * outline.el (font-lock-warning-face): - * simple.el (compilation-current-error): - * speedbar.el (ange-ftp-path-format, efs-path-regexp) - (font-lock-keywords, x-pointer-hand2, x-pointer-top-left-arrow): - * tooltip.el (comint-prompt-regexp): - * w32-fns.el (explicit-shell-file-name): - * term/mac-win.el (mac-charset-info-alist) - (mac-services-selection, mac-system-script-code): - * term/tty-colors.el (msdos-color-values): - * term/w32-win.el (xlfd-regexp-registry-subnum): - * term/x-win.el (x-keysym-table, x-selection-timeout) - (x-session-id, x-session-previous-id): - * textmodes/ispell.el (mail-yank-prefix): - * textmodes/makeinfo.el (tex-end-of-header, tex-start-of-header): - * textmodes/org.el (calc-embedded-close-formula) - (calc-embedded-open-formula) - (font-lock-unfontify-region-function): - * textmodes/reftex-global.el (isearch-next-buffer-function) - (TeX-master): - * textmodes/reftex.el (font-lock-keywords): - * textmodes/tex-mode.el (font-lock-comment-face) - (font-lock-doc-face): - * textmodes/texinfo.el (outline-heading-alist): - Add defvars. - - * textmodes/artist.el (x-pointer-crosshair): Add defvar. - (artist-spray-chars, artist-mode-init, artist-replace-string) - (artist-select-erase-char, artist-vap-find-endpoints-horiz) - (artist-vap-find-endpoints-vert, artist-vap-find-endpoints-swne) - (artist-vap-find-endpoints-nwse): "?\ " -> "?\s". - - * textmodes/conf-mode.el (outline-heading-end-regexp): Add defvar. - (conf-align-assignments): "?\ " -> "?\s". - - * textmodes/reftex-index.el (TeX-master): Add defvar. - (reftex-index-phrases-marker): Move up defvar. - - * textmodes/reftex-toc.el (zmacs-regions): Add defvar. - (reftex-toc-include-labels-indicator) - (reftex-toc-include-index-indicator) - (reftex-toc-max-level-indicator): Move up declarations. - - * net/tramp.el (tramp-handle-make-auto-save-file-name): Pass list - of args to `tramp-run-real-handler', even if it's empty in this case. - -2005-08-31 YAMAMOTO Mitsuharu - - * dired.el (dired-move-to-filename-regexp): Add date format for - Mac OS X 10.3 in East Asian locales. - -2005-08-31 Michael Albinus - - * files.el (make-auto-save-file-name): Add file name handler call - if applicable. - - * net/tramp.el (tramp-file-name-handler-alist) - (tramp-file-name-for-operation): Add `make-auto-save-file-name'. - (tramp-handle-make-auto-save-file-name): Rename from - `tramp-make-auto-save-file-name'. - (tramp-exists-file-name-handler): New defun. - (tramp-advice-make-auto-save-file-name): Make defadvice only when - `make-auto-save-file-name' is not a magic file name operation. - -2005-08-30 Richard M. Stallman - - * files.el (risky-local-variable-p): - Match `-predicates' and `-commands. - - * cus-edit.el (custom-buffer-sort-alphabetically): Default to t. - (custom-save-all): Visit the file if necessary; - kill the buffer if we created it. - (custom-save-delete): Don't visit file or kill buffer here. - -2005-08-30 Carsten Dominik - - * textmodes/org.el (org-special-keyword): New face. - (org-table-copy-down, org-table-eval-formula) - (org-table-recalculate, org-init-section-numbers): - Use `string-to-number' instead of `string-to-int'. - (org-get-location): Use `insert-buffer-substring' instead of - `insert-buffer'. - (org-modify-diary-entry-string): New function. - (org-get-entries-from-diary): Set the hook for `add-to-diary-list'. - (org-disable-agenda-to-diary): Rename from `org-disable-diary'. - (org-toggle-fixed-width-section): Use QUOTE keyword if there is no - active region. - (org-export-as-html): Handle QUOTE keyword. - (org-quote-string): New option. - (org-bookmark-jump-unhide): New function, used for - `bookmark-after-jump-hook'. - (org-diary-default-entry): Apply only when not called through - `org-agenda'. - -2005-08-30 Juanma Barranquero - - * net/eudc.el (mode-popup-menu): - * play/handwrite.el (ps-printer-name, ps-lpr-command): - * progmodes/ada-mode.el (compile-auto-highlight) - (skeleton-further-elements): - * progmodes/autoconf.el (font-lock-syntactic-keywords): - * progmodes/cmacexp.el (msdos-shells): - * progmodes/compile.el (font-lock-extra-managed-props) - (font-lock-keywords, font-lock-maximum-size) - (font-lock-support-mode): - * progmodes/grep.el (font-lock-lines-before): - * progmodes/idlw-complete-structtag.el (idlwave-completion-help-info): - * progmodes/mixal-mode.el (compile-command): - * progmodes/perl-mode.el (font-lock-comment-face) - (font-lock-doc-face, font-lock-string-face): - * progmodes/prolog.el (comint-prompt-regexp): - * progmodes/sh-script.el (font-lock-comment-face) - (font-lock-set-defaults, font-lock-string-face): - * progmodes/sql.el (font-lock-keyword-face) - (font-lock-set-defaults, font-lock-string-face): - * progmodes/vhdl-mode.el (compilation-file-regexp-alist) - (itimer-version, lazy-lock-defer-contextually) - (lazy-lock-defer-on-scrolling, lazy-lock-defer-on-the-fly): - Add defvars. - - * progmodes/cperl-mode.el (cperl-electric-lbrace) - (cperl-electric-keyword, cperl-electric-pod) - (cperl-electric-backspace, cperl-forward-re) - (cperl-fix-line-spacing, cperl-fill-paragraph): "?\ " -> "?\s". - (vc-rcs-header, vc-sccs-header): Add defvars. - - * progmodes/fortran.el (fortran-indent-to-column): "?\ " -> "?\s". - (font-lock-syntactic-keywords, gud-find-expr-function): - Add defvars. - - * progmodes/gdb-ui.el (tool-bar-map): Add defvar. - (gdb-frame-parameters): Declare before use. - - * progmodes/gud.el (gdb-active-process, gdb-define-alist) - (gdb-macro-info, gdb-server-prefix, gdb-show-changed-values) - (gdb-var-changed, gdb-var-list, tool-bar-map): Add defvars. - (gud-expr-compound-sep, gud-expr-compound): "?\ " -> "?\s". - - * progmodes/idlw-help.el (browse-url-generic-args): Add defvar. - (idlwave-help-with-source): Use `insert-buffer-substring', not - `insert-buffer'. - -2005-08-29 Juri Linkov - - * outline.el (hide-entry, hide-leaves, outline-toggle-children): - Put outline-back-to-heading function call inside save-excursion. - -2005-08-29 Juanma Barranquero - - * man.el (Man-init-defvars, Man-translate-references) - (Man-support-local-filenames, Man-highlight-references): - * progmodes/sql.el (sql-interactive-mode): - * shell.el (shell-mode, shell-resync-dirs): Fix typos in docstrings. - - * emacs-lisp/checkdoc.el (compilation-error-regexp-alist) - (compilation-mode-font-lock-keywords): Add defvars. - (checkdoc-interactive-loop): "?\ " -> "?\s". - - * emacs-lisp/lisp-mode.el (font-lock-comment-face) - (font-lock-doc-face, font-lock-string-face) - (font-lock-keywords-case-fold-search): Add defvars. - (emacs-lisp-mode-syntax-table): "?\ " -> "?\s". - - * obsolete/sun-fns.el (mouse-select-or-drag-move-point): - Don't pass X and Y (they are ignored anyway). - (mouse-set-mark, mouse-select-window, mouse-delete-other-windows) - (mouse-delete-window): Make arguments optional. - - * obsolete/rnews.el (news-add-news-group): Don't use `end-of-line'. - (caesar-translate-table, minor-modes, news-buffer-save) - (news-group-name, news-minor-modes): Add defvars. - - * emacs-lisp/lselect.el (mouse-highlight-priority) - (x-lost-selection-functions, zmacs-regions): - * emacs-lisp/pp.el (font-lock-verbose): - * emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function): - * emacs-lisp/tcover-ses.el (ses-initial-global-parameters) - (ses-mode-map): - * emacs-lisp/tcover-unsafep.el (safe-functions): - * international/mule-cmds.el (mac-system-coding-system) - (mac-system-locale): - * language/ethio-util.el (rmail-current-message) - (rmail-message-vector): - * language/thai-util.el (thai-auto-composition-mode): - * mail/metamail.el (rmail-current-message, rmail-message-vector): - * mail/mspools.el (rmail-inbox-list, vm-crash-box) - (vm-folder-directory, vm-init-file, vm-init-file-loaded) - (vm-primary-inbox, vm-spool-files): - * mail/rmail.el (deleted-head, font-lock-fontified) - (mail-abbrev-syntax-table, mail-abbrevs, messages-head) - (rmail-use-spam-filter, rsf-beep, rsf-sleep-after-message) - (total-messages): - * mail/rmail-spam-filter.el (bbdb/mail_auto_create_p) - (rmail-summary-mode-map): - * mail/rmailkwd.el (rmail-buffer, rmail-current-message) - (rmail-last-label, rmail-last-multi-labels) - (rmail-summary-vector, rmail-total-messages): - * mail/rmailmsc.el (rmail-current-message, rmail-inbox-list): - * mail/rmailsum.el (msgnum): - * mail/uce.el (gnus-original-article-buffer, mail-reply-buffer) - (rmail-current-message): - * obsolete/fast-lock.el (font-lock-face-list): - * obsolete/rnewspost.el (mail-reply-buffer): - * obsolete/scribe.el (compile-command): - * obsolete/x-menu.el (x-process-mouse-hook): Add defvars. - -2005-08-28 John Paul Wallington - - * ibuf-ext.el (ibuffer-auto-update-changed): - Use `frame-or-buffer-changed-p' to check whether we need to update. - (ibuffer-auto-mode): Don't advise `get-buffer-create' and - `kill-buffer'. Initialise `ibuffer-auto-buffers-changed' - as a `frame-or-buffer-changed-p' state vector instead. - -2005-08-27 Romain Francoise - - * textmodes/makeinfo.el (makeinfo-compile): - Use `compilation-start'. Set `next-error-function' according to - `disable-errors'. - (makeinfo-next-error): New function. - (makeinfo-region): Adjust to new `makeinfo-compile' prototype. - (makeinfo-buffer): Likewise. - - * progmodes/compile.el (compilation-start): Add autoload cookie. - - * progmodes/antlr-mode.el: Don't autoload `compilation-start'. - * textmodes/sgml-mode.el: Likewise. - * progmodes/python.el: Likewise. - -2005-08-27 Eli Zaretskii - - * simple.el (blink-matching-paren-distance): Document the meaning - of nil value, and allow to customize to nil. - - * eshell/esh-ext.el (eshell-windows-shell-file): Look for - command.com, not command.exe. - -2005-08-26 John Wiegley - - * eshell/esh-cmd.el (eshell-rewrite-named-command): Change the - code around a bit so that an extraneous nil argument is not added - to a command when no args are given. - - * eshell/esh-arg.el (eshell-parse-double-quote): If a - double-quoted argument resolves to nil, return it as an empty - string rather than as nil. This made it impossible to pass "" to - a shell script as a null string argument. - -2005-08-26 Stefan Monnier - - * outline.el (outline-invent-heading): New fun. - (outline-promote, outline-demote): Use it. - (outline-move-subtree-down): Remove unused vars `re' and `txt'. - (outline-end-of-subtree): Remove unused var `opoint'. - -2005-08-26 David Reitter - - * menu-bar.el (truncate-lines, write-file, print-buffer) - (ps-print-buffer-faces, ps-print-buffer, split-window): - Disable menu items when the frame they refer to is invisible, or when - they refer to a buffer and the minibuffer is selected. - -2005-08-26 Pavel Kobiakov - - * progmodes/flymake.el (flymake-highlight-err-lines): - Use save-excursion around flymake-highlight-line to preserve point. - -2005-08-26 Eli Zaretskii - - * progmodes/octave-mod.el: Change Author and Maintainer address. - (octave-maintainer-address): Change Kurt's email address. - * progmodes/octave-inf.el: Change Author and Maintainer address. - * progmodes/octave-hlp.el: Change Author and Maintainer address. - -2005-08-26 Kim F. Storm - - * subr.el (version-list-<, version-list-<=, version-list-=): - Rename from integer-list-*. - (version-list-not-zero): Likewise. Fix while loop. - (version=): Use version-list-= instead of string-equal. +2007-11-21 Glenn Morris -2005-08-26 Richard M. Stallman + * emacs-lisp/check-declare.el (check-declare-verify): Skip C files + for now. Handle define-minor-mode, and defalias (with no argument + checking). - * outline.el (outline-promote): Try shortening the heading. - As last resort, read the heading to use. - (outline-demote): As last resort, read the heading to use. +2007-11-21 Dan Nicolaescu -2005-08-26 Romain Francoise + * frame.el (msdos-mouse-p): + * files.el (msdos-long-file-names, w32-long-file-name): + * term/mac-win.el (mac-code-convert-string, mac-coerce-ae-data) + (mac-resume-apple-event, mac-font-panel-mode) + (mac-atsu-font-face-attributes, mac-ae-set-reply-parameter) + (mac-clear-font-name-table): + * term/pc-win.el (msdos-remember-default-colors) + (w16-set-clipboard-data, w16-get-clipboard-data): + * term/w32-win.el (w32-send-sys-command, w32-select-font) + (set-message-beep): + * net/browse-url.el (w32-shell-execute): + * dos-fns.el (int86, msdos-long-file-names): + * dos-w32.el (default-printer-name): Undo previous change. - * progmodes/compile.el (compilation-start): Doc fix. +2007-11-21 Eli Zaretskii - * progmodes/antlr-mode.el (antlr-default): Fix defface form. - (antlr-font-lock-additional-keywords): Fix reference to - `antlr-font-lock-literal-regexp' erroneously changed during the - mass face rename. - (antlr-run-tool): Use `compilation-start'. + * international/mule-cmds.el (set-locale-environment): + Set default-file-name-coding-system _after_ keyboard and terminal + coding systems. This fixes last change. - * textmodes/sgml-mode.el (sgml-validate): Use `compilation-start' - instead of the obsolete `compile-internal'. + * mail/rmail.el (rmail-current-subject-regexp): Allow more than + one space after "Subject:". -2005-08-26 Juanma Barranquero +2007-11-21 Stefan Monnier - * calendar/cal-bahai.el (date, displayed-month, displayed-year) - (number, original-date): - * calendar/cal-china.el (date): - * calendar/cal-coptic.el (date): - * calendar/cal-french.el (date): - * calendar/cal-hebrew.el (date, entry, number, original-date): - * calendar/cal-islam.el (date, number, original-date): - * calendar/cal-iso.el (date): - * calendar/cal-julian.el (date): - * calendar/cal-mayan.el (date): - * calendar/cal-menu.el (date, event): - * calendar/cal-persia.el (date): - * calendar/lunar.el (date): - * calendar/solar.el (date): Add defvars. + * pcvs-parse.el (cvs-parse-table): Ignore errors when looking up files + in order to determine if there's a conflict. - * emerge.el: - * ibuffer.el: - * info-xref.el: - * obsolete/bg-mouse.el: - * obsolete/sun-curs.el: - * obsolete/swedish.el: Move the `defvar's to the top level. +2007-11-21 Richard Stallman - * smerge-mode.el (smerge-refined-change): Add :group. + * bindings.el (esc-map): Bind C-M-l here; moved from reposition.el. -2005-08-25 Stefan Monnier + * reposition.el (reposition-window): + Binding C-M-l moved to bindings.el. - * smerge-mode.el (smerge-remove-props): Make the args non-optional. - (smerge-keep-n): Remove props. - (smerge-keep-base, smerge-keep-other, smerge-keep-mine) - (smerge-keep-current, smerge-kill-current): Don't remove props anymore - now that it's done in smerge-keep-n. - (smerge-refined-change): New face. - (smerge-refine-chopup-region, smerge-refine-highlight-change) - (smerge-refine): New funs. - (smerge-basic-map): Bind smerge-refine. + * bindings.el (ctl-x-4-map): Bind C-x 4 a here; moved from add-log.el. -2005-08-25 Juri Linkov + * add-log.el (add-change-log-entry-other-window): + Key binding C-x 4 a moved to bindings.el. - * progmodes/grep.el (grep, grep-mode): Make buffer-local variables - compilation-process-setup-function and compilation-disable-input - in grep-mode instead of let-bindings in grep. + * bindings.el (minibuffer-local-map): Bind C-tab here; moved + from filecache.el. - * menu-bar.el (menu-bar-options-menu, menu-bar-options-save): - Delete "Automatic File De/compression" (auto-compression-mode). + * filecache.el: Minibuffer map bindings moved to bindings.el. -2005-08-25 Juanma Barranquero +2007-11-21 Jason Rumney - * obsolete/bg-mouse.el: Move to obsolete/ from term/. - Silence warning about non-existent variable. + * international/mule-cmds.el (set-locale-environment): + Set default-file-name-coding-system from system defaults on Windows. -2005-08-25 Richard M. Stallman +2007-11-21 Jason Rumney + + * term/w32console.el: New term init file for w32 console. + + * w32-fns.el (x-alternatives-map): Copy from term/x-win.el. + (x-setup-function-keys): Likewise, replacing top-level key definitions. + (w32-tty-standard-colors): Move to term/w32console.el. + + * term/w32-win.el (x-setup-function-keys): Remove. + + * term/tty-colors.el (tty-register-default-colors): Remove special + case for w32. + +2007-11-21 Dan Nicolaescu + + * frame.el (msdos-mouse-p): + * generic-x.el (w32-shell-name): + * files.el (msdos-long-file-names, w32-long-file-name) + (dired-get-filename, dired-unmark, dired-do-flagged-delete) + (dos-8+3-filename, vms-read-directory, view-mode-disable): + * term/mac-win.el (mac-code-convert-string, mac-coerce-ae-data) + (mac-resume-apple-event, mac-font-panel-mode) + (mac-atsu-font-face-attributes, mac-ae-set-reply-parameter) + (mac-clear-font-name-table): + * term/pc-win.el (msdos-remember-default-colors) + (w16-set-clipboard-data, w16-get-clipboard-data): + * term/w32-win.el (w32-send-sys-command, w32-select-font) + (set-message-beep): + * w32-fns.el (set-message-beep, w32-get-clipboard-data) + (w32-get-locale-info, w32-get-valid-locale-ids) + (w32-set-clipboard-data): + * help-fns.el (ad-get-advice-info): + * font-lock.el (fast-lock-after-fontify-buffer) + (fast-lock-after-unfontify-buffer, fast-lock-mode) + (lazy-lock-after-fontify-buffer) + (lazy-lock-after-unfontify-buffer, lazy-lock-mode): + * net/browse-url.el (w32-shell-execute): + * dos-fns.el (int86, msdos-long-file-names): + * dos-w32.el (default-printer-name): Declare as functions. - * menu-bar.el (menu-bar-describe-menu): Delete "What's New". - Rename "Describe Key" to "Describe Key or Mouse Operation". +2007-11-21 Juanma Barranquero - * mail/mailalias.el (build-mail-aliases): Delete comments - from the contents before processing them. + * textmodes/paragraphs.el (forward-sentence): Doc fix. + Reported by Drew Adams . - * isearch.el (isearch-edit-string): Erase the Search prompt - if user enters an empty string and there is no default. +2007-11-20 Jason Rumney - * comint.el (comint-file-name-prefix): Add autoload. + * term/w32-win.el (x-setup-function-keys): Protect against + multiple calls on the same terminal. -2005-08-25 Joe Corneli +2007-11-20 Dan Nicolaescu - * subr.el (play-sound): Rearrange to avoid warning. + * term/mac-win.el (x-setup-function-keys): Only setup + local-function-key-map if it has not been setup already for the + current frame. Move the suspend-emacs processing here. -2005-08-25 Carsten Dominik +2007-11-20 Juanma Barranquero - * calendar/diary-lib.el (diary-modify-entry-list-string-function): - New hook. - (add-to-diary-list): Call `diary-modify-entry-list-string-function'. + * progmodes/grep.el (xargs-program): New variable. + (grep-compute-defaults): Use it. + (grep-default-command): Doc fix. + (grep, lgrep, rgrep): Reflow docstrings. -2005-08-24 Stefan Monnier +2007-11-20 Dan Nicolaescu - * emacs-lisp/easy-mmode.el (define-minor-mode): Simplify. + * vc.el (vc-find-revision): Set the parent buffer. + Use when instead of if. - * custom.el (custom-theme-set-variables): Sort minor modes last. + * progmodes/python.el (info-lookup-maybe-add-help): + * progmodes/ps-mode.el (doc-view-minor-mode): + * mail/emacsbug.el (Info-menu, Info-goto-node): + * emulation/viper-keym.el (viper-ex) + (viper-normalize-minor-mode-map-alist, viper-set-mode-vars-for): + * emulation/viper-cmd.el (widget-type, widget-button-press) + (viper-set-hooks): + * emacs-lisp/tcover-unsafep.el (unsafep-function): + * emacs-lisp/tcover-ses.el (ses-set-curcell, ses-update-cells) + (ses-load, ses-vector-delete, ses-create-header-string) + (ses-read-cell, ses-read-symbol, ses-command-hook, ses-jump): + * emacs-lisp/gulp.el (mail-subject, mail-send): Declare as functions. -2005-08-24 Vinicius Jose Latorre +2007-11-20 Stefan Monnier - * subr.el (version-separator, version-regexp-alist): New vars used by - version comparison funs. - (integer-list-<, integer-list-=, integer-list-<=) - (integer-list-not-zero): New funs for integer list comparison. - (version-to-list, version=, version<, version<=): New funs for version - comparison. - -2005-08-24 Juanma Barranquero - - * emerge.el (merge-begin, merge-end, template, A-begin, A-end) - (B-begin, B-end, diff, diff-vector, valid-diff): Defvar at compile - time to silence the byte-compiler. - - * ibuffer.el (ibuffer-compile-make-eliding-form) - (ibuffer-check-formats): Use `with-no-warnings' to hide references - to `ibuffer-elide-long-columns' (which is defined on ibuffer.el, - so it's silly to get warnings for it). - (ibuffer-auto-mode, ibuffer-cached-filter-formats) - (ibuffer-compiled-filter-formats, ibuffer-filter-format-alist) - (ibuffer-filter-group-kill-ring, ibuffer-filter-groups) - (ibuffer-filtering-qualifiers, ibuffer-hidden-filter-groups) - (ibuffer-inline-columns, ibuffer-show-empty-filter-groups) - (ibuffer-tmp-hide-regexps, ibuffer-tmp-show-regexps): - Defvar at compile time. - (ibuffer-compiled-formats, ibuffer-cached-eliding-string) - (ibuffer-cached-formats, ibuffer-cached-elide-long-columns): - Declare them before use. - - * info-xref.el (info-xref-xfile-alist, info-xref-filename-heading) - (info-xref-good, info-xref-bad): Defvar at compile time. + * pcvs.el (cvs-revert-if-needed): Fix copy&paste typo. - * obsolete/mlsupport.el (filter-region, execute-monitor-command): - Use `let*' instead of `let'. +2007-11-20 Glenn Morris - * obsolete/sun-curs.el (icon-edit, *mouse-window*, *mouse-x*) - (*mouse-y*, menu, char): Defvar at compile time. - (sc::menu): Declare it before use. - (sc::pack-one-line): Use `let', not `let*'. + * emacs-lisp/check-declare.el (check-declare-verify): Tweak regexp + for end of function-name. Handle define-derived-mode. - * obsolete/swedish.el (news-inews-hook, news-group-hook-alist) - (mail-send-hook): Defvar at compile time. +2007-11-20 Dan Nicolaescu - * term/bg-mouse.el (bg-mouse-x, bg-mouse-y, bg-cursor-window): - Defvar at compile time. + * progmodes/idlw-help.el: Require browse-url unconditionally, it + is available by default. + (idlwave-help-browse-url-available): Change default to t. - * term/sun-mouse.el (current-global-mousemap) - (current-local-mousemap): Declare them before use. + * emulation/edt.el (defgroup, defcustom): Remove definition. + (eval-when-compile): Remove. + (c-mark-function): + * textmodes/reftex-dcr.el (bibtex-beginning-of-entry): + * textmodes/fill.el (comment-search-forward) + (comment-string-strip): + * progmodes/prolog.el (comint-mode, comint-send-string) + (comint-send-region, comint-send-eof): + * progmodes/dcl-mode.el (imenu-default-create-index-function): + * emulation/viper-util.el (viper-forward-Word): + * emulation/vi.el (c-mark-function): + * emulation/edt-vt100.el (vt100-wide-mode): + * emacs-lisp/timer.el (diary-entry-time): Declare as functions. -2005-08-24 Carsten Dominik +2007-11-19 Michael Albinus - * bookmark.el (bookmark-after-jump-hook): New hook. - (bookmark-jump): Run `bookmark-after-jump-hook'. + * net/tramp.el (tramp-open-connection-setup-interactive-shell): + Still some tuning in case of an echoing shell. + (tramp-send-command): Connection property "remote-echo" is not + persistent; cache key is the process therefore. -2005-08-23 Juri Linkov +2007-11-19 Juanma Barranquero - * faces.el (minibuffer-prompt): Doc fix. + * replace.el (map-query-replace-regexp): Doc fix (revert part of + 2000-05-21T17:04:47Z!fx@gnu.org made on 2000-05-21 with no ChangeLog entry). -2005-08-23 Juanma Barranquero +2007-11-19 Dan Nicolaescu - * progmodes/xscheme.el: Trivial changes to silence warnings. - (xscheme-previous-mode, xscheme-previous-process-state): - Add defvars. - (xscheme-last-input-end, xscheme-process-command-line) - (xscheme-process-name, xscheme-buffer-name) - (xscheme-expressions-ring-max, xscheme-expressions-ring) - (xscheme-expressions-ring-yank-pointer, xscheme-running-p) - (xscheme-control-g-synchronization-p) - (xscheme-control-g-disabled-p, xscheme-string-receiver) - (default-xscheme-runlight, xscheme-runlight) - (xscheme-runlight-string, xscheme-process-filter-state) - (xscheme-allow-output-p, xscheme-prompt, xscheme-mode-string): - Move to beginning of file. - (scheme-interaction-mode-commands-alist) - (scheme-interaction-mode-map, scheme-debugger-mode-map): - Declare them before use. Note: the initialization code for the - variables has not been moved because it uses functions that reference - the variables. - (xscheme-control-g-message-string, xscheme-process-filter-alist) - (xscheme-prompt-for-expression-map): Declare them before use. - (scheme-debugger-mode-commands): "?\ " -> "?\s". + * progmodes/octave-mod.el (inferior-octave-send-list-and-digest): + * play/yow.el (doctor-ret-or-read): + * vc-hooks.el (vc-dired-resynch-file): + * vc-hg.el (log-view-get-marked): + * smerge-mode.el (ediff-cleanup-mess): + * pcvs.el (vc-editable-p, vc-checkout): + * pcomplete.el (comint-bol): + * informat.el (texinfo-format-refill): + * ido.el (tramp-tramp-file-p): + * ibuffer.el (ibuffer-mark-on-buffer, ibuffer-format-qualifier) + (ibuffer-generate-filter-groups, ibuffer-format-filter-group-data): + * add-log.el (c-beginning-of-defun, c-end-of-defun): Declare as + functions. -2005-08-23 Ed Swarthout (tiny change) + * textmodes/ispell.el (ispell-int-char): Make it a defalias + instead of fset. + (ispell-message): Use with-no-warnings for sc-cite-regexp call. - * hexl.el (hexl-print-current-point-info): Fix simple spelling error. + * ido.el (ido-file-internal): Move with-no-warnings to include the + ffap-string-at-point call. -2005-08-22 Juri Linkov + * pcomplete.el (pcomplete-executables): Move defsubst before first use. - * faces.el (set-face-underline): Delete this duplicate function - and make an obsolete alias to set-face-underline-p. - (set-face-underline-p): Use docstring of set-face-underline. - (describe-face): Create hyperlink to parent face. + * vc-hg.el (vc-hg-revision-table): Fix last change. - * info.el (Info-insert-dir): Use save-excursion around - insert-buffer-substring. - (Info-isearch-search): Use LITERAL arg of replace-regexp-in-string. - (Info-escape-percent): Delete function. - (Info-fontify-node): Replace Info-escape-percent by - replace-regexp-in-string with REP arg set to lambda that - duplicates `%' and preserves text properties. +2007-11-19 Martin Rudalics - * progmodes/compile.el (compilation-disable-input): Doc fix. - (define-compilation-mode): Doc fix and refill. - (kill-compilation): Use `mode-name' in the error message. - (compilation-find-file): Use `compilation-error' in the - read-file-name's prompt. + * menu-bar.el (top-level): Deactivate clipboard-kill-region and + clipboard-yank when the buffer is read-only. -2005-08-22 Stefan Monnier + * cus-edit.el (custom-field-keymap): Move to other Custom mode + keymaps such that it's before the definition of Custom-mode-menu. + (Custom-mode-menu): Show it for custom-field-keymap too. - * smerge-mode.el (smerge-basic-map): Bind smerge-combine-with-next. - (smerge-auto-leave): Make undo re-enable the mode. - (debug-ignored-errors): Add the user-error of impossible resolution. - (smerge-resolve): Move things around a bit, in preparation for later. - (smerge-diff): Don't fail if the buffer has no associated file. - (ediff-ancestor-buffer, ediff-quit-hook): Quieten byte-compiler. - (smerge-conflict-overlay): New function. - (smerge-match-conflict): Don't add text properties here. - (smerge-find-conflict): Instead, add an overlay here. - Also check for the case where we're inside a conflict already, so as to - obviate the need for font-lock-multiline, which is unbearably slow with - large conflicts and ciomplex font-lock patterns. - (smerge-remove-props): Remove overlay rather than text-properties. - (smerge-mode): Don't set font-lock-multiline. - Remove overlays when turned off. +2007-11-19 Nick Roberts -2005-08-21 Kim F. Storm + * progmodes/gdb-ui.el: Update commentary. - * ido.el (ido-ignore-item-p): Use save-match-data. - Bind case-fold-search to ido-case-fold locally. +2007-11-18 Dan Nicolaescu -2005-08-20 Richard M. Stallman + * net/tramp.el (tramp-terminal-type): Remove duplicated definition. - * files.el (normal-mode): If font lock is on, turn it off and on. +2007-11-19 Glenn Morris - * subr.el (replace-regexp-in-string): Doc fix. + * emacs-lisp/check-declare.el (check-declare-verify): If fnfile + does not exist, try adding `.el' extension. Also search for defsubsts. - * startup.el (command-line-1): Don't suppress startup screen - due to existing processes. + * cus-edit.el (recentf-expand-file-name): + * dired.el (dired-relist-entry): + * subr.el (w32-shell-dos-semantics): + * emacs-lisp/bytecomp.el (compilation-forget-errors): + Declare as functions. - * progmodes/grep.el (grep): Bind compilation-disable-input to t. +2007-11-18 Stefan Monnier - * progmodes/compile.el (compilation-disable-input): Default to nil. + * abbrev.el (kill-all-abbrevs, insert-abbrevs) + (prepare-abbrev-list-buffer): Use dolist. + (clear-abbrev-table): Preserve properties. -2005-08-20 Kevin Rodgers (tiny change) +2007-11-18 Shigeru Fukaya (tiny change) - * progmodes/compile.el (compilation-disable-input): New defcustom. - (compilation-start): If compilation-disable-input is non-nil, send - EOF to the compilation process. + * textmodes/texinfmt.el (texinfo-format-printindex): + Collect combined indexes using texinfo-short-index-format-cmds-alist. + Reported on . -2005-08-20 Eli Zaretskii +2007-11-18 Michael Albinus - * textmodes/tex-mode.el (tex-bibtex-file, tex-send-tex-command): - Run the argument of tex-shell-cd-command through - convert-standard-filename, to get the correct style of slashes on - Windows, and enclose the result in quotes, in case the file name - includes whitespace or other special characters. + * net/tramp.el (tramp-completion-reread-directory-timeout): + New defcustom. + (tramp-handle-file-name-all-completions): Flush directory contents + from cache regularly. + (tramp-set-auto-save-file-modes): Check also for `buffer-modified-p'. + (tramp-open-connection-setup-interactive-shell): + Call `tramp-cleanup-connection' via funcall. -2005-08-19 Andreas Schwab + * net/tramp-ftp.el (tramp-ftp-file-name-handler): Temp file is already + created when copying. - * progmodes/gud.el (gud-kill-buffer-hook): Don't kill unrelated - process. +2007-11-17 Dan Nicolaescu -2005-08-18 Luc Teirlinck + * eshell/esh-util.el (eshell-under-xemacs-p): Remove. + * eshell/esh-mode.el (eshell-mode-syntax-table, command-running-p): + * eshell/esh-ext.el (eshell-external-command): + * eshell/esh-cmd.el (require): + * eshell/em-unix.el (eshell-plain-locate-behavior): + * eshell/em-cmpl.el (eshell-cmpl-initialize): + Replace eshell-under-xemacs-p with (featurep 'xemacs). + * eshell/esh-mode.el (characterp, char-int): Remove unused + conditional defaliases. - * cus-start.el (minibuffer-prompt-properties): Correct typo. + * pcomplete.el (pcomplete-event-matches-key-specifier-p): + Rename from event-matches-key-specifier-p, define unconditionally. + (event-basic-type): Remove unused defalias. + (pcomplete-show-completions): + Use pcomplete-event-matches-key-specifier-p. -2005-08-18 Kim F. Storm +2007-11-17 Eli Zaretskii - * scroll-lock.el: Fix errors due to incorrect line wrapping. + * eshell/esh-module.el (eshell-load-defgroups): Don't make backups + when saving esh-groups.el. -2005-08-18 Richard M. Stallman +2007-11-17 Martin Rudalics - * scroll-lock.el: New file. + * wid-edit.el (widget-default-complete): + * progmodes/flymake.el (flymake-goto-file-and-line): + Fix typo in (doc-)string. -2005-08-18 Thien-Thi Nguyen +2007-11-17 Glenn Morris - * dired.el (dired-move-to-end-of-filename): - Handle fifo as rendered by "ls -lF": Don't include trailing "|". + * emacs-lisp/byte-run.el (declare-function): New macro. + * emacs-lisp/bytecomp.el (byte-compile-declare-function): + New function, byte-hunk-handler for declare-function. + (byte-compile-callargs-warn): Handle declared functions. -2005-08-18 Kim F. Storm + * emacs-lisp/check-declare.el: New file. + * Makefile.in (check-declare): New target. - * ido.el (ido-everywhere): Fix defcustom :set function to disable - rather than toggle mode when custom value is nil. - (ido-everywhere): Fix defun doc string. + * progmodes/fortran.el (gud-find-c-expr): Declare as a function. -2005-08-17 Richard M. Stallman + * subr.el (process-lines): Move here from ../admin/admin.el. + * emacs-lisp/authors.el (authors-process-lines): Remove. + (authors): Use process-lines rather than authors-process-lines. - * cus-start.el (minibuffer-prompt-properties): Use "Don't Enter" - as tag instead of "Inviolable". + * progmodes/compilation-perl.el, progmodes/compilation-weblint.el: + Remove these files. -2005-08-17 Kim F. Storm +2007-11-17 Juanma Barranquero - * windmove.el (windmove-coordinates-of-position): Remove. - (windmove-coordinates-of-window-position): Remove. - (windmove-reference-loc): Use posn-at-point instead. + * emacs-lisp/backquote.el (backquote): + Improve argument/docstring consistency. - * subr.el (insert-for-yank-1): Doc fix. + * emacs-lisp/ring.el (ring-size, ring-p, ring-insert) + (ring-length, ring-empty-p): Use c[ad]dr. + (ring-plus1): Use `1+'. + (ring-minus1): Use `zerop'. + (ring-remove): Use c[ad]dr. Use `when'. + (ring-copy): Use c[ad]dr. Use `let', not `let*'. + (ring-ref): Use `let', not `let*'. + (ring-insert-at-beginning): Use c[ad]dr. Doc fix. + (ring-insert+extend): Use c[ad]dr. Fix typo in docstring. + (ring-member): Simplify. Doc fix. + (ring-convert-sequence-to-ring): Simplify. - * ido.el (ido-enter-matching-directory): Rename from - ido-enter-single-matching-directory. Change `slash' choice to - `only'. Add `first' choice. - (ido-exhibit): Adapt to above changes. +2007-11-17 Juri Linkov -2005-08-16 Luc Teirlinck + * dired-aux.el (dired-create-directory): Allow creating + a directory of an arbitrary depth. Add a loop to find the topmost + nonexistent parent dir `new', and call `dired-add-file' on it. + Set the `PARENTS' arg of `make-directory' to t. - * Makefile.in: Expand comment about building loaddefs.el. +2007-11-16 Jay Belanger -2005-08-16 Nick Roberts + * calc/calc-aent.el (calc-last-user-lang-parse-table): New variable. + (math-build-parse-table): Get parse information from math-parse-table. - * progmodes/gdb-ui.el (toggle-gdb-use-inferior-io-buffer): - Comment use of defadvice. +2007-11-16 Stefan Monnier - * progmodes/gud.el (gud-jump): Rework for gdb-ui. + * window.el (recenter-last-op): New var. + (recenter-top-bottom): New command. + (global-map): Bind it to C-l. -2005-08-15 Dan Nicolaescu + * abbrev.el (abbrev--write): Fix error in transcription from C. - * buff-menu.el, compare-w.el, emacs-lisp/testcover.el, - * play/gomoku.el, play/mpuz.el, progmodes/flymake.el, - * progmodes/gdb-ui.el, progmodes/idlw-help.el, - * progmodes/idlw-shell.el, progmodes/ld-script.el, - * progmodes/which-func.el, ruler-mode.el, strokes.el, - * textmodes/sgml-mode.el, textmodes/table.el: Do not use face-alias - for backward compatibility for faces that did not appear in the - previous Emacs release. + * emulation/pc-select.el (pc-select-shifted-mark): Remove. + (pc-select-ensure-mark): Set mark-active to a special value instead. + Rename from ensure-mark. Update call callers. + (pc-select-maybe-deactivate-mark): Rename from maybe-deactivate-mark. + Rewrite. Update all callers. + (pc-selection-mode): Remove redundant var declaration. - * simple.el (next-error-follow-minor-mode): Fix init value and lighter. +2007-11-16 Tassilo Horn -2005-08-15 Kim F. Storm + * doc-view.el (doc-view-search-backward, doc-view-search): + Fix assignment to free variable bug. - * emulation/cua-base.el (cua-delete-region): Return t if - deleted region was non-empty. - (cua-replace-region): Inhibit overwrite-mode for - self-insert-command if replaced region was non-empty. - (cua--explicit-region-start, cua--status-string): Make them - buffer-local at top-level... - (cua-mode): ...rather than when mode is enabled. +2007-11-16 Martin Pohlack (tiny change) -2005-08-15 Thien-Thi Nguyen + * emulation/pc-select.el (pc-select-shifted-mark): New var. + (ensure-mark): Set it. + (maybe-deactivate-mark): New fun. + Use it everywhere instead of (setq mark-active nil). - * progmodes/vhdl-mode.el (vhdl-emacs-21): - Set t for Emacs 21, 22, and so on. +2007-11-16 Dan Nicolaescu -2005-08-15 David Ponce + * textmodes/reftex-dcr.el (reftex-start-itimer-once): + Add check for XEmacs. - * tree-widget.el: Update Commentary header. - (tree-widget-theme): Doc fix. - (tree-widget-space-width): New option. - (tree-widget-image-properties): Look up in the default theme too. - (tree-widget--cursors): Only for images with arrow pointer shape. - (tree-widget-lookup-image): Pointer shape is hand by default. - (tree-widget-icon): Rename generic icon widget from - `tree-widget-control'. - (tree-widget-*-icon): Rename from `tree-widget-*-control' and - derive from `tree-widget-icon'. - (tree-widget-handle): Improve default look and feel of the text - representation. - (tree-widget): Rename :*-control properties to :*-icon properties. - Add :action and :help-echo properties. - (tree-widget-after-toggle-functions): Move. - (tree-widget-close-node, tree-widget-open-node): Remove. - (tree-widget-before-create-icon-functions): New hook. - (tree-widget-value-create): Update to allow customization of icons - and nodes at run-time via that new hook. - (tree-widget-icon-create, tree-widget-leaf-node-icon-p) - (tree-widget-icon-action, tree-widget-icon-help-echo) - (tree-widget-action, tree-widget-help-echo): New functions. + * calc/calc-menu.el (calc-mode-map): Pacify byte compiler. -2005-08-15 Kim F. Storm + * doc-view.el (doc-view-resolution): Add missing :group. - * ido.el (ido-buffer-internal): Use with-no-warnings. - (ido-make-merged-file-list): Use while-no-input. +2007-11-16 Juanma Barranquero -2005-08-15 Richard M. Stallman + * subr.el (make-variable-frame-local): + Fix typo in obsolescence declaration. - * textmodes/flyspell.el (flyspell-mark-duplications-flag): Doc fix. - (flyspell-large-region): Fix doc and custom type. +2007-11-16 Werner Lemberg -2005-08-14 Richard M. Stallman + * files.el (set-auto-mode-1): Check second line for -*- if file + starts with '\" (which is used by man pages to identify needed + troff preprocessors). - * files.el (interpreter-mode-alist): Doc fix. +2007-11-16 Glenn Morris - * mail/rmail.el (rmail-nonignored-headers): New variable. - (rmail-clear-headers): Use it. - (rmail-reply): Better handling of mail-followup-to header. + * mail/mail-extr.el (mail-extr-all-top-level-domains): Update domains. - * progmodes/sh-script.el (sh-font-lock-keywords-var): - Rename variable from sh-font-lock-keywords. In the `shell' entry, - don't try to refer to executable-font-lock-keywords. - (sh-font-lock-keywords-var-1): Rename from sh-font-lock-keywords-1. - (sh-font-lock-keywords-var-2): Rename from sh-font-lock-keywords-2. - (sh-font-lock-keywords): Append executable-font-lock-keywords here. - (sh-mode): Set comment-start-skip, local-abbrev-table, - imenu-case-fold-search. - (sh-set-shell): Don't set them here. - (sh-feature): Simplify. Get rid of the eval-a-variable feature. - Don't cache the results in the original alist; don't ever modify - that alist. +2007-11-16 Jay Belanger - * textmodes/flyspell.el (flyspell-mode): Autoload a defvar. + * calc/calc-lang.el (math-oper-table): Fix typo. + Reduce precedence of "/" for TeX. - * textmodes/ispell.el (lookup-words): Cope with case where ARGS is - empty. + * calc/calc-menu.el (calc-modes-menu): Add Languages submenu. -2005-08-15 Andreas Schwab +2007-11-16 Juri Linkov - * desktop.el: Put autoload cookie at risky-local-variable declarations. + * dired-aux.el (dired-read-shell-command-default): New function. + (dired-read-shell-command): Use its return value for DEFAULT arg. - * dired.el, info.el, mail/rmail.el: Revert last change. + * replace.el (keep-lines-read-args, occur-read-primary-args): + Use a list of default values for DEFAULT arg of read-from-minibuffer. -2005-08-14 Thien-Thi Nguyen + * man.el (Man-heading-regexp): Add 0-9. + (Man-first-heading-regexp): Remove leading space [ \t]* before NAME. - * dired.el: Fix dependency bug: Wrap `desktop-buffer-mode-handlers' - modification in `eval-after-load' form. - * info.el: Likewise. - * mail/rmail.el: Likewise. +2007-11-15 Stefan Monnier -2005-08-14 Juri Linkov - - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Remove highlighting of "Compilation started". Highlight only - the word "finished" in "Compilation finished". Add highlighting - of "interrupt", "killed", "terminated" and the exit code. - (compilation-start): Add newline after header. Use exactly the - same time stamp format as the finishing message. - (compilation-mode-map): Add ellipsis to "Search Files (grep)". + * doc-view.el (doc-view-ghostscript-options): Remove resolution arg. + (doc-view-resolution): New custom var. + (doc-view-pdf/ps->png): Use it. + (doc-view-shrink-factor): New var. + (doc-view-enlarge, doc-view-shrink): New commands. + (doc-view-mode-map): Use them. - * progmodes/grep.el (grep-mode-map): Add ellipsis to "Another grep". - (grep-mode-font-lock-keywords): Don't highlight "Grep started". - Add highlighting of "interrupt", "killed", "terminated". - - * delsel.el (delete-selection-pre-hook): If overwrite-mode is - enabled and the current command is self-insert-command, call it - explicitly with overwrite-mode bound to nil, to not allow it - to delete the character after the selected region. +2007-11-15 Juanma Barranquero -2005-08-12 Matt Hodges + * ediff-wind.el (ediff-window-setup-function): + * simple.el (normal-erase-is-backspace): + * eshell/em-unix.el (eshell/info): + * progmodes/cc-engine.el (c-crosses-statement-barrier-p): + Fix typos in docstrings. - * emacs-lisp/eldoc.el: Add move-beginning-of-line, - move-end-of-line, end-of-line, and beginning-of-line to the list - of commands after which the echo area is updated. + * emulation/cua-base.el (cua--keymaps-initialized): + Rename from `cua--keymaps-initalized'. Callers changed. + (cua-highlight-region-shift-only): Doc fix. + (cua-paste-pop): Fix typo in docstring. -2005-08-12 Eli Zaretskii +2007-11-15 Stefan Monnier - * cus-edit.el (custom-save-all, custom-save-delete): - Bind recentf-exclude to exclude custom-file. - -2005-08-12 Ehud Karni - - * mail/rmailsum.el (rmail-summary-end-of-message): New command - to go to the bottom of the mail message. Added to - `rmail-summary-mode-map' with key "/". - (rmail-summary-show-message): New (internal) function for use by - both `rmail-summary-beginning/end-of-message'. - (rmail-summary-beginning-of-message): Change to use - rmail-summary-show-message. + * emulation/cua-base.el (cua--pre-command-handler-1): + Use input-decode-map instead of function-key-map. + Use event-modifiers now that it works reliably. - * mail/rmail.el (rmail-end-of-message): New command to go to the - end of the current message. Added to `rmail-mode-map' with key "/". - (rmail-beginning-of-message): Fix to work as documented. - (rmail-mode): Change documentation. + * vc.el (vc-diff-internal): Pop-to-buffer later. - * progmodes/compile.el (compilation-start): Add the line - "Compilation started" with compilation start time. - (compilation-mode-font-lock-keywords): Add `started' to keywords. + * subr.el (event-modifiers): Use internal-event-symbol-parse-modifiers. -2005-08-11 Luc Teirlinck + * pcvs.el (cvs-revert-if-needed): Ignore `unknown' files, since cvs + did not touch them. - * menu-bar.el (menu-bar-options-menu): Standardize capitalization - of menu items. +2007-11-15 Jay Belanger -2005-08-11 Richard M. Stallman + * calc/calc-menu.el: New file. + * calc/calc.el (calc-mode): Require calc-menu. - * simple.el (pop-global-mark): Reverse test of widen-automatically. +2007-11-14 Juanma Barranquero - * battery.el (battery-status-function): Don't use ignore-errors. + * isearch-multi.el (isearch-buffers-next-buffer-function): Doc fix. -2005-08-11 Lute Kamstra +2007-11-14 Nick Roberts - * emacs-lisp/generic.el (generic-font-lock-defaults): Declare with - define-obsolete-variable-alias. + * progmodes/gdb-ui.el (gdb-parent-bptno-enabled): New variable. + (gdb-breakpoint-regexp, gdb-mouse-toggle-breakpoint-margin) + (gdb-mouse-toggle-breakpoint-fringe, gdb-delete-breakpoint) + (gdb-goto-breakpoint): Generalise for breakpoints with multiple + locations. + (gdb-info-breakpoints-custom, gdb-assembler-custom) + (gdb-toggle-breakpoint): Update for new gdb-breakpoint-regexp. + (gdb-put-breakpoint-icon): Only display icon for parent breakpoint. -2005-08-11 Stefan Monnier - - * net/ange-ftp.el: Use \\` and \\' instead of ^ and $ in regexps. - (ange-ftp-send-cmd): Revert last change, and expand - the comment explaining the problem. +2007-11-13 Noah Friedman -2005-08-10 Luc Teirlinck + * calc/calc.el: Add `backward-delete-char-untabify' to the list of + bindings to remap when `calc-scan-for-dels' is non-nil. - * ldefs-boot.el: Update. +2007-11-13 Stefan Monnier - * menu-bar.el (menu-bar-showhide-menu): Rename "Date, Time and Mail" - item to "Time, Load and Mail". Change help echo text. + * emacs-lisp/byte-opt.el (byte-compile-trueconstp): Handle more + constant forms. + (byte-compile-nilconstp): New function. + (byte-optimize-cond): Kill subsequent branches when a branch is + know to be taken or not taken. + (byte-optimize-if): Use byte-compile-nilconstp instead of hand coding. - * time.el (display-time-use-mail-icon, display-time-format) - (display-time-string-forms): Shorten first line of docstrings. +2007-11-13 Dan Nicolaescu -2005-08-10 Lars Hansen + * vc.el (vc-register): Allow registering a file passed as a + parameter instead of just the current buffer. - * desktop.el (desktop-buffer-mode-handlers): - Make non-customizable. Add autoload cookie. Change initial value to - nil; add elements in respective modules instead. Fix doc string. - (desktop-load-file): New function. - (desktop-minor-mode-handlers): New autoloaded variable. - (desktop-create-buffer): Call minor mode handlers. - Use desktop-load-file to load major and minor mode modules prior to - checking for a handler. - (desktop-save): Don't add nil to desktop-minor-modes for minor - modes with nil function in desktop-minor-mode-table. Don't delete - desktop file before rewriting it. - (desktop-locals-to-save): Add autoload cookie. Don't make - automatically buffer-local. Add variables column-number-mode, - size-indication-mode, indent-tabs-mode, - indicate-buffer-boundaries, indicate-empty-lines and - show-trailing-whitespace. - (desktop-clear): Allow desktop-clear-preserve-buffers to contain - regexps. Don't use desktop-clear-preserve-buffers-regexp. - (desktop-clear-preserve-buffers-regexp): Delete. - (desktop-clear-preserve-buffers): Update initial value and docstring. - (desktop-save-buffer): Fix doc string. +2007-11-12 Michael Albinus - * hilit-chg.el: Add handler to desktop-minor-mode-handlers. - (hilit-chg-desktop-restore): New function. - (highlight-changes-mode): Add highlight-changes-mode to - desktop-locals-to-save. + * net/tramp.el (tramp-open-connection-setup-interactive-shell): + Check whether the output of "uname -sr" has been changed. - * dired.el: Add handler to desktop-buffer-mode-handlers. - (dired-restore-desktop-buffer): Remove autoload cookie. - (dired-mode): Add autoload cookie. +2007-11-12 Vinicius Jose Latorre - * info.el: Add handler to desktop-buffer-mode-handlers. - (Info-restore-desktop-buffer): Remove autoload cookie. - (Info-mode): Add autoload cookie. + * progmodes/compile.el (compilation-error-regexp-alist-alist): Insert + patterns from compilation-perl.el and compilation-weblint.el files. - * mh-e/mh-e.el: Add handler to desktop-buffer-mode-handlers. - (mh-restore-desktop-buffer): Remove autoload cookie. - (mh-folder-mode): Add autoload cookie. +2007-11-12 Dan Nicolaescu - * mail/rmail.el: Add handler to desktop-buffer-mode-handlers. - (rmail-restore-desktop-buffer): Remove autoload cookie. + * progmodes/compilation-perl.el: + * progmodes/compilation-weblint.el: Disable autoloads, they cause + a bootstrap failure. -2005-08-11 Masatake YAMATO + * vc-cvs.el (vc-cvs-diff): If backup files exist, diff them + instead of doing "cvs diff" in order to avoid accessing the repository. - * hexl.el (hexl-address-region): - (hexl-ascii-region, hexl-font-lock-keywords): - (hexl-highlight-line-range): Use the term "region" - instead of "area" for consistency with the other symbols - defined in hexl.el. - -2005-08-09 Luc Teirlinck - - * menu-bar.el (menu-bar-options-save): Move `display-time-mode' to - correct group: it is set with `menu-bar-make-mm-toggle' (pointed - out by Juri Linkov). Add `display-battery-mode'. +2007-11-12 Kevin Ryde -2005-08-09 Juri Linkov + * progmodes/compilation-perl.el: + * progmodes/compilation-weblint.el: New files. - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Remove `-text' from face variable names. - (compilation-error-file-name, compilation-warning-file-name) - (compilation-info-file-name): Delete faces. - (compilation-line-number, compilation-column-number): - Remove face underlining. - (compilation-message-face): Set to `underline' value by default. - (compilation-error-face, compilation-warning-face) - (compilation-info-face): Remove `-file-name' from face names. - (compilation-error-text-face, compilation-warning-text-face) - (compilation-info-text-face): Delete face variables. - (compilation-text-face): Delete function. +2007-11-11 Juanma Barranquero - * progmodes/grep.el (grep-regexp-alist): Use `.+?' instead of `[^:\n]+'. - (grep-mode-font-lock-keywords): Use `.+?' instead of `[^\n-]+'. - (grep-error-face): Set to `compilation-error' instead of - `compilation-error-face' (which is redefined to `grep-hit-face' in - grep buffers). - (grep-mode-font-lock-keywords): Remove `-text' from face variable - names. Use `grep-error-face' instead of `compilation-error-text-face'. - - * dired-aux.el (dired-do-query-replace-regexp): - Use `query-replace-read-args'. - - * replace.el (query-replace-read-from, query-replace-read-to) - (query-replace-read-args): Rename arg `string' to `prompt'. - - * menu-bar.el (menu-bar-showhide-menu): Add `showhide-battery'. - -2005-08-09 Katsumi Yamaoka - - * net/ange-ftp.el (ange-ftp-send-cmd): Make it work properly with - uploading files. - (ange-ftp-canonize-filename): Handle file names beginning with ~ - correctly. + * international/iso-cvt.el (iso-translate-conventions): Doc fix. + (iso-aggressive-german-trans-tab, iso-conservative-german-trans-tab) + (iso-tex2iso-trans-tab, iso-gtex2iso-trans-tab): Reflow docstring. + (iso-spanish, iso-german, iso-iso2tex, iso-tex2iso, iso-gtex2iso) + (iso-iso2gtex, iso-iso2duden, iso-iso2sgml, iso-sgml2iso): + Rewrite in active voice. -2005-08-09 Juanma Barranquero +2007-11-11 Tassilo Horn - * textmodes/fill.el (canonically-space-region) - (fill-context-prefix, fill-french-nobreak-p) - (fill-delete-newlines, fill-comment-paragraph) - (justify-current-line): "?\ " -> "?\s". + * doc-view.el: Add comments about isearch support. -2005-08-09 Ben North (tiny change) +2007-11-11 Dan Nicolaescu - * textmodes/fill.el (fill-nonuniform-paragraphs): - Improve argument/docstring consistency. + * vc.el (vc-start-entry): Fix setting the in the case the function + is called from vc-dired. Use when instead of if where appropriate. -2005-08-09 Richard M. Stallman +2007-11-11 Vinicius Jose Latorre - * textmodes/ispell.el (ispell-word): More fboundp checks. + * ps-print.el (ps-do-despool): Do not force ps-lpr-switches + to be a list. + (ps-begin-job): Error if ps-lpr-switches is not a list. - * files.el (find-file-noselect): Don't call set-buffer-major-mode. - (find-file-noselect-1): Call it here, only if RAWFILE. - (normal-mode): Always set some major mode. - (save-some-buffers-action-alist): Change some explanation strings. - (file-name-non-special): In the `quote' method, use unwind-protect. +2007-11-11 YAMAMOTO Mitsuharu -2005-08-09 Magnus Henoch + * faces.el (face-normalize-spec): Remove function. + (frame-set-background-mode): Undo last change. - * textmodes/ispell.el (ispell-find-aspell-dictionaries): New command. - (ispell-have-aspell-dictionaries): New variable. - (ispell-aspell-data-dir, ispell-aspell-dict-dir): New variables. - (ispell-get-aspell-config-value): New function. - (ispell-aspell-find-dictionary): New function. - (ispell-aspell-add-aliases): New function. - (ispell-valid-dictionary-list): Call ispell-find-aspell-dictionaries if - appropriate. Don't look for ispell dictionaries if we use aspell. - (ispell-menu-map): Don't build a submenu of dictionaries. +2007-11-10 Jason Rumney -2005-08-09 Richard M. Stallman + * w32-fns.el: Sync charset names with setup-default-fontset. + Append "-1" where second part missing. - * progmodes/sql.el (sql-interactive-mode-map): Use fboundp. - (sql-read-passwd): Use read-passwd. +2007-11-10 Juri Linkov - * progmodes/idlw-toolbar.el (idlwave-toolbar) - (idlwave-toolbar-is-possible): Add defvars. + * isearch.el (isearch-mode-end-hook, isearch-mode-end-hook-quit): + Fix docstring. Reported by Leo . - * progmodes/idlw-shell.el (idlwave-xemacs-hack-mouse-track): - Avoid warnings. + * custom.el (custom-note-var-changed): Remove the `interactive' + spec from this new non-interactive function. - * progmodes/idlw-rinfo.el (idlwave-system-variables-alist) - (idlwave-system-class-info, idlwave-executive-commands-alist): - Use defvar. +2007-11-10 Tassilo Horn - * progmodes/cc-engine.el (c-guess-basic-syntax): Add autoload. + * doc-view.el (doc-view-mode-map, doc-view-menu) + (doc-view-pdf->txt-sentinel): Adapt to new search UI. + (doc-view-search-backward): New function. + (doc-view-search): Query new regexp if prefix arg is given, else + jump to next/previous match. + (doc-view-mode): Handle compressed files. + (jka-compr): Required for compressed files. - * mail/supercite.el (sc-ask, sc-no-blank-line-or-header): - Avoid warnings. +2007-11-10 Paul Pogonyshev - * mail/rmail.el (rmail-ignored-headers): Don't hide mime-version: - and content-type: headers. + * replace.el (query-replace-show-replacement): New defcustom. + (perform-replace): Use `match-substitute-replacement' if + `query-replace-show-replacement' is non-nil. - * eshell/eshell.el (eshell): Avoid warnings about eshell-mode. +2007-11-10 David Kastrup - * emacs-lisp/map-ynp.el (map-y-or-n-p): Reorder the options - and rename some of them to be more self-explanatory. + * subr.el (match-substitute-replacement): New function. - * calendar/calendar.el (calendar-mode-map): Bind < and > usefully. +2007-11-10 Carsten Dominik - * startup.el (command-line-1): Implement -scriptload. + * files.el (auto-mode-alist): Select org-mode for files with the + extension ".org". - * replace.el (occur-engine): Initial *Occur* output not undoable. +2007-11-10 Martin Rudalics - * menu-bar.el (menu-bar-file-menu): Rename some menu items - and improve help strings. + * help.el (help-window, help-window-point-marker): New variables. + (help-window-select): New option. + (with-help-window): New macro for displaying help windows. + (help-window-display-message, help-window-setup-finish) + (help-window-setup): New functions used for setting up help windows. + (print-help-return-message): Reset help-window to nil. + (view-lossage): Use with-help-window instead of + with-output-to-temp-buffer and move help-window-point-marker after + inserted text. + (describe-bindings, describe-key, describe-mode): Use + with-help-window instead of with-output-to-temp-buffer. - * isearch.el (isearch-repeat): When changing direction, - mark search successful. + * help-mode.el (help-mode): Set view-exit-action to bury the + buffer instead of fiddling with windows. Simplify code. + (help-mode-finish): When help-window eqs t set it to the selected + window and have with-help-window set up view-return-to-alist. + (help-buffer): Add autoload cookie. - * ediff-init.el: Use (featurep 'xemacs). + * view.el (view-remove-frame-by-deleting): Change default value to t. + Add autoload cookie. + (view-exit-action, view-file, view-file-other-window) + (view-file-other-frame, view-buffer, view-buffer-other-window) + (view-buffer-other-frame): Rewrite doc strings. + (view-return-to-alist-update): New function to remove stale entries + from view-return-to-alist. + (view-mode-enter): Rewrite doc string and simplify code. + (view-mode-exit): Handle new case 'keep-frame. Don't reset + view-exit-action to nil. Simplify code and rewrite doc string. + + * apropos.el (apropos-describe-plist): + * descr-text.el (describe-char): + * disp-table.el (describe-display-table): + * faces.el (list-faces-display, describe-face): + * facemenu.el (list-colors-display): + * help-fns.el (describe-function, describe-variable) + (describe-syntax, describe-categories): + Use with-help-window instead of with-output-to-temp-buffer. + +2007-11-10 Dan Nicolaescu + + * emacs-lisp/byte-opt.el (byte-optimize-featurep): + Optimize (featurep 'emacs) to t. + + * emacs-lisp/bytecomp.el (byte-compile-find-bound-condition): + New function. + (byte-compile-maybe-guarded): Use it to also look for bound + symbols inside `and' forms. Comment out non-working code that was + trying to avoid warnings for XEmacs code. - * comint.el (send-invisible): Identify buffer, if not selected. + * vc.el (vc-diff-internal): Make the *vc-diff* buffer read only. - * align.el: Delete autoload for c-guess-basic-syntax. + * vc-svn.el (vc-svn-print-log, vc-svn-diff): + * vc-mcvs.el (vc-mcvs-print-log, vc-mcvs-annotate-command): + * vc-cvs.el (vc-cvs-print-log, vc-cvs-diff) + (vc-cvs-annotate-command): + * vc-arch.el (vc-arch-diff): Remove test to check if start-process + is bound, it always is. -2005-08-09 Juanma Barranquero +2007-11-10 Jason Rumney - * textmodes/refbib.el (r2b-convert-record, r2b-convert-buffer): - Improve argument/docstring consistency. Doc fixes. - (r2b-variables, r2bv-address, r2bv-annote, r2bv-author) - (r2bv-booktitle, r2bv-date, r2bv-decade, r2bv-editor) - (r2bv-entry-kind, r2bv-institution, r2bv-journal, r2bv-keywords) - (r2bv-kn, r2bv-month, r2bv-note, r2bv-number, r2bv-ordering) - (r2bv-organization, r2bv-pages, r2bv-primary-author) - (r2bv-publisher, r2bv-school, r2bv-title, r2bv-title-first-word) - (r2bv-tr, r2bv-type, r2bv-volume, r2bv-where, r2bv-year): - Defvar at compile time. + * term/w32-win.el (w32-initialize-window-system): Move SJIS font + setup here from global scope. -2005-08-09 Juri Linkov +2007-11-10 Juanma Barranquero - * info.el: Replace `info' with upper-case `Info' where appropriate. - (info-title-1, info-title-2, info-title-3, info-title-4) - (info-menu-header): Move up face definitions. - (info-menu-star): Rename from `info-menu-5'. - (Info-fontify-node): Replace `info-menu-5' with `info-menu-star'. - (Info-fontify-visited-nodes): Fix docstring. - (Info-hide-note-references): Fix docstring. - (Info-up, Info-next-reference, Info-prev-reference): Put cursor on - menu items in the same way as on cross-references. - (info-apropos): Fix sorting order and formatting to be like in the - stand-alone Info browser. Display error messages for 1 sec. - (Info-mode-map): Move down `c' key binding. Bind `^' to `Info-up'. - (Info-mode-menu): Remove item for `Info-search-case-sensitively' - from the menu bar. - (Info-insert-dir): Restore point after calling - `insert-buffer-substring'. + * ido.el (ido-save-history): Save the history file in UTF-8, not + the current filename coding system. -2005-08-08 Richard M. Stallman +2007-11-09 Stefan Monnier - * emacs-lisp/lmenu.el (lucid-menubar-map, lucid-failing-menubar) - (recompute-lucid-menubar): Add defvars. + * simple.el (interprogram-cut-function, interprogram-paste-function): + Don't make them frame-local any more. - * mail/sendmail.el (mail-yank-original): Use with-no-warnings. + * faces.el (x-create-frame-with-faces, tty-create-frame-with-faces): + Don't set interprogram-(cut|paste)-function on each frame. - * mail/reporter.el (reporter-dump-state): Use insert-buffer-substring. + * term/x-win.el (x-select-text, x-cut-buffer-or-selection-value): + Make them work in tty frames. + (interprogram-cut-function, interprogram-paste-function): + Set them globally. - * net/net-utils.el (run-dig): Rename from `dig'. +2007-11-09 Juanma Barranquero - * play/gametree.el (gametree-mode): Use make-local-variable, - not make-variable-buffer-local. + * international/iso-cvt.el (iso-spanish, iso-german, iso-iso2tex) + (iso-tex2iso, iso-gtex2iso, iso-iso2gtex, iso-iso2duden): Doc fixes. + (iso-iso2duden-trans-tab): Add docstring. - * progmodes/ada-prj.el (ada-prj-display-page): Use with-no-warnings. +2007-11-09 Stefan Monnier - * ansi-color.el (ansi-color-make-extent) - (ansi-color-set-extent-face): Use fboundp, not functionp. + * abbrev.el (define-abbrev-table): Record the variable definition. - * autorevert.el (auto-revert-tail-mode): Use make-local-variable, - not make-variable-buffer-local. + * emacs-lisp/bytecomp.el (byte-compile-file-form-define-abbrev-table): + New function. - * bookmark.el (Info-current-file): Add defvar. - (bookmark-jump-noselect): Use with-no-warnings. +2007-11-09 Vinicius Jose Latorre - * completion.el (c-mode-map, fortran-mode-map): Add defvars. + * ps-print.el: Clean the code for checking suitable Emacs version. + (ps-do-despool): If ps-lpr-switches is not a list, force it to be one. + (ps-print-version): New version 6.8.1. - * ebuff-menu.el (Helper-return-blurb): Add defvar. +2007-11-09 Juanma Barranquero - * ffap.el (gnus-summary-buffer, gnus-article-buffer): Add defvars. + * files.el (enable-local-variables): Doc fix. - * find-file.el (ada-procedure-start-regexp) - (ada-package-start-regexp): Add defvars. +2007-11-09 Nick Roberts - * info.el (Info-insert-dir): Use insert-buffer-substring. + * progmodes/gud.el (gud-gdb): Remove vestigial gdba doc and code. - * xml.el (xml-att-def-re): Add defvar. +2007-11-09 Sven Joachim - * icomplete.el (icomplete-exhibit): Adapt to new while-no-input - calling convention. - - * subr.el (while-no-input): Return t if there is input. - -2005-08-08 Luc Teirlinck + * dired-aux.el (dired-copy-file-recursive): + Preserve directory permissions. - * cus-start.el (all): Add `overflow-newline-into-fringe'. +2007-11-09 Juanma Barranquero -2005-08-08 Juanma Barranquero - - * cmuscheme.el (inferior-scheme-mode-hook, inferior-scheme-mode) - (scheme-prev-l/c-dir/file): Fix typos in docstrings. - -2005-08-08 Emilio C. Lopes - - * cmuscheme.el (scheme-start-file): Replace reference to - `user-emacs-directory' by "~/.emacs.d/". - -2005-08-08 Thien-Thi Nguyen - - * info.el (Info-dir-remove-duplicates): Avoid case folding - in loop; instead, keep downcased strings for comparison. - Suggested by Helmut Eller. - -2005-08-07 Michael Albinus - - Sync with Tramp 2.0.50. - - * net/tramp.el: Remove defvar of `last-coding-system-used' in the - XEmacs case; not necessary anymore. - (tramp-user-regexp): Allow "@" as part of user name. - (tramp-handle-set-visited-file-modtime) - (tramp-handle-insert-file-contents) - (tramp-handle-write-region): No special handling for - `last-coding-system-used, because this is done in - `tramp-accept-process-output' now. - (tramp-accept-process-output): New defun. - (tramp-process-one-action, tramp-process-one-multi-action) - (tramp-wait-for-regexp, tramp-wait-for-output) - (tramp-discard-garbage-erase-buffer): Call it. Reported by David - Howells . - (clear-visited-file-modtime): Defadvice removed. The check for - unset buffer's modtime does not need to be based on - `tramp-buffer-file-attributes'. Suggested by RMS. - (tramp-message): Insert "\n" if not being at beginning of line. - (tramp-find-shell): Use `tramp-barf-if-no-shell-prompt' for code - sequence with same logic. - (tramp-completion-handle-expand-file-name): Discard call of - `tramp-drop-volume-letter'. It is not necessary, and there have - been problems with (expand-file-name "~/.netrc" "/") in ange-ftp. - Reported by Richard G. Bielawski . - (tramp-do-copy-or-rename-file-out-of-band): Transfer message - should always be visible. - (tramp-handle-insert-directory, tramp-setup-complete) - (tramp-set-process-query-on-exit-flag) - (tramp-append-tramp-buffers): Pacify byte-compiler. - (tramp-bug): Delete non-existing variables from list. - Apply `tramp-load-report-modules' as pre-hook. - Mask `tramp-password-prompt-regexp', `tramp-shell-prompt-pattern' and - `shell-prompt-pattern' because of non-7bit characters. - Reported by Sebastian Luque . - (tramp-reporter-dump-variable, tramp-load-report-modules): New defuns. - (tramp-match-string-list): Remove function. - (tramp-wait-for-regexp): Remove call of that function. - Suggested by Kim F. Storm . - (tramp-set-auto-save-file-modes): Use octal integer code #o600 - instead of octal character code ?\600. The latter resulted in a - syntax error with XEmacs. - - * net/tramp-smb.el: Remove defvar of `last-coding-system-used' in the - XEmacs case; not necessary anymore. - (tramp-smb-handle-write-region): No special handling for - `last-coding-system-used, because this is done in - `tramp-accept-process-output' now. - (tramp-smb-wait-for-output): Call `tramp-accept-process-output'. - -2005-08-06 Luc Teirlinck - - * wid-edit.el (widget-choice-value-create): - Unconditionally respect user choice. Set :explicit-choice back to nil - when no longer needed. - (widget-choice-action): Unconditionally respect user choice. - Eliminate :explicit-choice-value. - - * fringe.el (set-fringe-indicators-1, fringe-indicators): Delete. - - * menu-bar.el (menu-bar-options-save): Replace `fringe-indicators' - with `indicate-empty-lines' and `indicate-buffer-boundaries'. - (menu-bar-showhide-fringe-menu): Add new item "Empty line indicators" - running new function `toggle-indicate-empty-lines'. - Rename "Customize" item to "Customize fringe". - Rename "Indicators" item to "Buffer boundaries" and change help echo. - (menu-bar-showhide-fringe-ind-menu): Change several help echos. - Add `menu-bar-showhide-fringe-ind-customize' as "Other (customize)". - Delete "Empty lines only" item. - (menu-bar-showhide-fringe-ind-customize): New function. - (menu-bar-showhide-fringe-ind-mixed) - (menu-bar-showhide-fringe-ind-box) - (menu-bar-showhide-fringe-ind-right) - (menu-bar-showhide-fringe-ind-left) - (menu-bar-showhide-fringe-ind-none): Use `indicate-buffer-boundaries' - instead of `fringe-indicators'. - -2005-08-06 Michael Kifer + * whitespace.el (whitespace-write-file-hook): Remove interactive spec. + (whitespace-unload-function): New-style unload function. When run, + unintern `whitespace-unload-hook' and call `unload-feature' recursively + to stop the old hook from messing with the unloading. - * emulation/viper.el (viper-emacs-state-mode-list): - Add recentf-dialog-mode. Change the date of last update. +2007-11-09 Juanma Barranquero -2005-08-06 Michael Kifer + * emacs-lisp/elp.el (elp-report-limit, elp-restore-all) + (elp-unset-master, elp-results): Fix typos. + (elp-sort-by-function, elp-use-standard-output, elp-recycle-buffers-p): + Doc fixes. - * emulation/viper-cmd.el (viper-harness-minor-mode, viper-exec-delete) - (viper-exec-yank, viper-put-back): Don't display modification msg - if in the minibuffer. + * msb.el (msb--many-menus): Remove variable. + (msb-max-menu-items, msb--add-to-menu): Doc fixes. + (msb-menu-cond, msb-item-handling-function, msb--create-function-info) + (msb--toggle-menu-type): Fix typos in docstrings. - * emulation/viper-init.el (viper-replace-overlay-cursor-color) - (viper-insert-state-cursor-color, viper-vi-state-cursor-color): - Make variables frame local. - - * emulation/viper-util.el (viper-append-filter-alist): - Use append instead of nconc. - - * emulation/viper.el (viper-vi-state-mode-list) - (viper-emacs-state-mode-list): Move help-mode and - completion-list-mode from the first list to the second. - (viper-mode): Docstring. - (viper-go-away, viper-non-hook-settings): Don't localize - minor-mode-alist in newer Emacsen. Add advice to - set-cursor-color. Don't bind "\C-c\\". - -2005-08-06 Emilio C. Lopes - - * cmuscheme.el (scheme-trace-command, scheme-untrace-command) - (scheme-macro-expand-command): New user options. - (scheme-trace-procedure, scheme-expand-current-form): New commands. - (scheme-form-at-point, scheme-start-file) - (scheme-interactively-start-process): New functions. - (scheme-get-process): New function, extracted from `scheme-proc'. - (run-scheme): Call `scheme-start-file' to get start file, and pass - it to `make-comint'. - (switch-to-scheme, scheme-proc): - Call `scheme-interactively-start-process' if no Scheme buffer/process - is available. - -2005-08-06 Juri Linkov - - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Use `compilation-text-face', `compilation-info-text-face' and - `compilation-error-text-face' instead of `font-lock-keyword-face'. - (compilation-error): New face. - (compilation-error-file-name): Inherit from - `compilation-error' instead of `font-lock-warning-face'. - (compilation-warning-file-name): Inherit from - `compilation-warning' instead of `font-lock-warning-face'. - (compilation-info, compilation-error-file-name) - (compilation-warning-file-name, compilation-info-file-name) - (compilation-line-number, compilation-column-number): Doc fix. - (compilation-error-text-face, compilation-warning-text-face) - (compilation-info-text-face): New face variables. - (compilation-line-face, compilation-column-face) - (compilation-enter-directory-face) - (compilation-leave-directory-face): Doc fix. - (compilation-text-face): New function. - - * progmodes/grep.el (grep-regexp-alist): Set 5th arg `TYPE' to 0 - instead of 1 to display binary file names as info file links. - (grep-error-face): Use `compilation-error-face' instead of - `font-lock-keyword-face'. - (grep-mode-font-lock-keywords): Use `compilation-info-text-face' - and `compilation-warning-text-face' instead of - `font-lock-keyword-face'. Use `compilation-error-text-face' - instead of `grep-error-face'. - -2005-08-05 Kenichi Handa - - * international/code-pages.el: Add autoload cookies for all coding - systems. - -2005-08-04 Luc Teirlinck - - * cus-start.el (all): Put undo.c where it alphabetically belongs. - -2005-08-04 Juri Linkov - - * progmodes/compile.el (compilation-mode-map): - * progmodes/grep.el (grep-mode-map): - Bind TAB to `compilation-next-error' and [backtab] to - `compilation-previous-error'. - - * progmodes/grep.el (grep-regexp-alist): Replace complex regexp - matching line numbers, column numbers and their ranges with regexp - matching only line numbers. - (grep-context-face): New face variable. - (grep-mode-font-lock-keywords): Use it. - - * faces.el (read-face-name): Delete duplicate faces. - -2005-08-02 Juanma Barranquero - - * thumbs.el (thumbs-find-image): Don't make variables - automatically buffer local. - (thumbs-current-tmp-filename, thumbs-current-image-filename) - (thumbs-image-num): Make automatically buffer local. - (thumbs-show-thumbs-list): Use `make-local-variable', not - `make-variable-buffer-local'. - (thumbs-insert-image): Make `thumbs-current-image-size' buffer-local. - - * play/doctor.el (doctor-type-symbol): "?\ " -> "?\s". - (**mad**, *debug*, *print-space*, *print-upcase*, abuselst) - (abusewords, account, afraidof, arerelated, areyou, bak, beclst) - (bother, bye, canyou, chatlst, continue, deathlst, describe) - (drnk, drugs, eliza-flag, elizalst, famlst, feared, fears) - (feelings-about, foullst, found, hello, history, howareyoulst) - (howdyflag, huhlst, ibelieve, improve, inter, isee, isrelated) - (lincount, longhuhlst, lover, machlst, mathlst, maybe, moods) - (neglst, obj, object, owner, please, problems, qlist) - (random-adjective, relation, remlst, repetitive-shortness) - (replist, rms-flag, schoollst, sent, sexlst, shortbeclst) - (shortlst, something, sportslst, stallmanlst, states, subj) - (suicide-flag, sure, things, thlst, toklst, typos, verb, want) - (whatwhen, whereoutp, whysay, whywant, zippy-flag, zippylst): - Defvar at compile time. - - * progmodes/ada-mode.el (ada-mode): Use `make-local-variable', - not `make-variable-buffer-local'. - -2005-08-02 Kim F. Storm - - * emulation/cua-rect.el (cua--highlight-rectangle): Only show - rectangle overlay in selected window. - -2005-08-01 Luc Teirlinck - - * cus-start.el (all): Put `indicate-empty-lines' in fringe group - instead of display group. Make `indicate-buffer-boundaries' - customizable through Custom. - -2005-08-01 Juanma Barranquero - - * progmodes/gdb-ui.el (gdb-frame-address, gdb-var-changed) - (gdb-output-sink, gdba, gdb-cpp-define-alist-program) - (gdb-set-gud-minor-mode, gdb-exited, gdb-setup-windows) - (gdb-put-string): Fix typos in docstrings. - -2005-08-01 Nick Roberts - - Update copyright notices of files in progmodes directory for - release of Emacs 22.1. - - * progmodes/gdb-ui.el (gdb-enable-debug-log): Add autoload cookie. - - * progmodes/gud.el (gud-tooltip-mode): Add autoload cookie. - Don't barf if the GUD buffer has been killed. - -2005-08-01 Kim F. Storm - - * textmodes/table.el (table-yank-handler): Change defcustom to defvar. - -2005-07-29 Stefan Monnier - - * simple.el (next-error-follow-minor-mode): - make-variable-buffer-local -> make-local-variable. + * shadowfile.el (shadow-inhibit-overload, shadow-remove-from-todo) + (shadow-insert-var): Doc fixes. + (shadow-file-match, shadow-define-cluster, shadow-define-regexp-group): + Reflow docstrings. + (shadow-parse-fullname, shadow-read-files): Fix typos in docstrings. - * emacs-lisp/cl-extra.el: Require CL also when compiling. - - * emacs-lisp/bytecomp.el (byte-compile-make-variable-buffer-local) - (byte-compile-form-make-variable-buffer-local): New functions to warn - about misuses of make-variable-buffer-local where make-local-variable - was meant. +2007-11-09 Juanma Barranquero -2005-07-29 Juanma Barranquero + * ediff-hook.el (ediff, ediff-files, ediff-buffers, ebuffers, ediff3) + (ediff-files3, ediff-buffers3, ebuffers3, erevision, ediff-revision): + Fix typos in autoload docstrings. - * bs.el (bs-attributes-list): Doc fix. - (bs): Update url-link. +2007-11-09 Richard Stallman - * desktop.el (desktop-save-buffer): Fix typos in docstring. - (desktop-load-default): Simplify. + * savehist.el (savehist-save): Obey savehist-ignored-variables. - * ibuffer.el (ibuffer-columnize-and-insert-list) - (ibuffer-mouse-toggle-mark, ibuffer-count-marked-lines) - (ibuffer-unmark-all, ibuffer-toggle-marks) - (ibuffer-unmark-forward, ibuffer-unmark-backward) - (ibuffer-compile-make-format-form, ibuffer-format-column) - (ibuffer-current-buffers-with-marks) - (ibuffer-update-title-and-summary): "?\ " -> "?\s". - (ibuffer): Doc fix. - (ibuffer-mode): Fix typo in docstring. - (ibuffer-hooks, ibuffer-mode-hooks): Make obsolete and declare - with `define-obsolete-variable-alias'. - (ibuffer-elide-long-columns): Mark as obsolete. Doc fix. - -2005-07-29 Kenichi Handa - - * international/mule-cmds.el (select-message-coding-system): - Be sure to use LF for end-of-line. If no coding system is decided, - return iso-8859-1-unix. - -2005-07-28 Stefan Monnier - - * net/ange-ftp.el (ange-ftp-gateway-fatal-msgs) - (ange-ftp-pending-error-line): New vars. - (ange-ftp-process-handle-line, ange-ftp-process-filter): Use them - to handle the non-fatal no-route-to-host messages. - (internal-ange-ftp-mode): Make the no-match regexp more efficient. - -2005-07-28 Juanma Barranquero +2007-11-09 Nick Roberts - * isearch.el (isearch-mode-map, isearch-other-meta-char) - (isearch-quote-char, isearch-printing-char) - (isearch-text-char-description): "?\ " -> "?\s". - (isearch-lazy-highlight-cleanup) - (isearch-lazy-highlight-initial-delay) - (isearch-lazy-highlight-interval) - (isearch-lazy-highlight-max-at-a-time) - (isearch-lazy-highlight-face, isearch-lazy-highlight-cleanup): - Declare with define-obsolete-*-alias macros. - (isearch-forward): Fix typo in docstring. - (search-invisible, search-ring-yank-pointer) - (regexp-search-ring-yank-pointer): Doc fixes. + * progmodes/gdb-ui.el (gdb-delete-out-of-scope): New option. + (gdb-var-update-handler-1): Use it. - * recentf.el (recentf-menu-append-commands-p): Declare with - `define-obsolete-variable-alias'. - (recentf-max-saved-items, recentf-menu-filter) - (recentf-arrange-by-rule-subfilter): Doc fixes. - (recentf-menu-append-commands-flag) - (recentf-initialize-file-name-history, recentf-expand-file-name) - (recentf-clear-data): Fix typos in docstrings. +2007-11-09 Juanma Barranquero -2005-07-28 Nick Roberts + * loadhist.el (unload-feature): Remove erroneous check for the + FEATURE-unload-function variable; check the existence of the + function (that's what the docstring says, and it makes more sense). - * progmodes/gdb-ui.el: Smarten comments. - (gdb-info-breakpoints-custom): Use nowarn when finding file. + * follow.el (follow-unload-function): Add docstring. + (follow-unload-function): Remove variable. -2005-07-27 Dan Nicolaescu + * server.el (server-unload-function): Remove variable. + (server-unload-function): Unbind `server-edit' from `C-x #'. - * term/apollo.el (terminal-init-apollo): New function containing - all former top level forms in the file. - * term/bobcat.el (terminal-init-bobcat): - * term/cygwin.el (terminal-init-cygwin): - * term/iris-ansi.el (terminal-init-iris-ansi): - * term/linux.el (terminal-init-linux): - * term/news.el (terminal-init-news): - * term/rxvt.el (terminal-init-rxvt): - * term/sun.el (terminal-init-sun): - * term/tvi970.el (terminal-init-tvi970): - * term/vt100.el (terminal-init-vt100): - * term/vt102.el (terminal-init-vt102): - * term/vt125.el (terminal-init-vt125): - * term/vt200.el (terminal-init-vt200): - * term/vt201.el (terminal-init-vt201): - * term/vt220.el (terminal-init-vt220): - * term/vt240.el (terminal-init-vt240): - * term/vt300.el (terminal-init-vt300): - * term/vt320.el (terminal-init-vt320): - * term/vt400.el (terminal-init-vt400): - * term/vt420.el (terminal-init-vt420): - * term/wyse50.el (terminal-init-wyse50): - * term/xterm.el (terminal-init-xterm): Likewise. + * ses.el (ses-unload-function): New function. - * term/README: Describe the terminal-init-* functionality. +2007-11-09 Juanma Barranquero - * startup.el (command-line): After loading the terminal initialization - file call the corresponding terminal initialization function. + * emacs-lisp/unsafep.el (unsafep, unsafep-function) + (unsafep-progn, unsafep-let): Fix typos in docstrings. -2005-07-27 Kenichi Handa + * uniquify.el (uniquify-maybe-rerationalize-w/o-cb): Define it + before use to avoid a warning in packages that require uniquify. + (uniquify-unload-function): New function and var. - * ps-bdf.el (bdf-read-font-info): Ignore glyphs whose ENCODING is - negative. +2007-11-09 Dan Nicolaescu + + * ediff-init.el (ediff-xemacs-p, ediff-emacs-p): Remove. + (ediff-has-face-support-p, ediff-BAD-INFO, ediff-check-version) + (ediff-current-diff-A, ediff-current-diff-B) + (ediff-current-diff-C, ediff-fine-diff-C, ediff-fine-diff-A) + (ediff-fine-diff-B, ediff-fine-diff-Ancestor, ediff-even-diff-A) + (ediff-even-diff-B, ediff-even-diff-C, ediff-even-diff-Ancestor) + (ediff-odd-diff-A, ediff-odd-diff-B, ediff-odd-diff-C) + (ediff-odd-diff-Ancestor, ediff-reset-mouse): + * ediff-wind.el (ediff-narrow-control-frame-leftward-shift) + (ediff-setup-windows-plain-merge) + (ediff-setup-windows-plain-compare, ediff-setup-control-frame) + (ediff-refresh-control-frame, ediff-get-visible-buffer-window): + * ediff-util.el (ediff-setup-keymap, ) + (ediff-toggle-wide-display, ediff-toggle-multiframe) + (ediff-toggle-use-toolbar, ediff-really-quit) + (ediff-good-frame-under-mouse) + (ediff-highlight-diff-in-one-buffer) + (ediff-remove-flags-from-buffer, ediff-place-flags-in-buffer1) + (ediff-make-bullet-proof-overlay): + * ediff-mult.el (ediff-setup-meta-map, ediff-emacs-p) + (ediff-set-meta-overlay): + * ediff-help.el (ediff-help-region-map, ediff-set-help-overlays): + * ediff.el (ediff-documentation): Replace ediff-xemacs-p and + ediff-emacs-p with their former definitions. + + * emulation/viper-init.el (viper-xemacs-p, viper-emacs-p): Remove. + (viper-has-face-support-p, viper-inactivate-input-method) + (viper-activate-input-method) + (viper-use-replace-region-delimiters, viper-restore-cursor-type): + * emulation/viper-mous.el (viper-multiclick-timeout) + (viper-surrounding-word, viper-mouse-click-insert-word) + (viper-mouse-click-search-word, viper-parse-mouse-key): + * emulation/viper-macs.el (viper-char-array-to-macro): + * emulation/viper.el (viper-go-away, viper-set-hooks) + (viper-non-hook-settings): + * emulation/viper-util.el (viper-get-saved-cursor-color-in-replace-mode) + (viper-get-saved-cursor-color-in-insert-mode) + (viper-get-saved-cursor-color-in-emacs-mode) + (viper-check-version, viper-get-visible-buffer-window) + (viper-file-checked-in-p, viper-set-replace-overlay) + (viper-set-replace-overlay-glyphs, viper-set-minibuffer-overlay) + (viper-check-minibuffer-overlay, viper-read-key-sequence) + (viper-key-to-emacs-key): Replace viper-xemacs-p and viper-emacs-p + with their former definitions. + (viper-eventify-list-xemacs): Only do work for XEmacs. + (viper-set-unread-command-events): Only do work for Emacs. + (viper-overlay-p, viper-make-overlay, viper-overlay-live-p) + (viper-move-overlay, viper-overlay-start, viper-overlay-end) + (viper-overlay-get, viper-overlay-put, viper-read-event) + (viper-characterp, viper-int-to-char, viper-get-face) + (viper-color-defined-p, viper-iconify): New defaliases replacing + the old fsets. + + * progmodes/fortran.el (comment-region-function) + (uncomment-region-function): Pacify byte compiler. + + * vc.el (vc-diff-internal): Remove code for an old version of gnus. + +2007-11-08 Michael Albinus + + * net/tramp.el (tramp-maybe-open-connection): Use a local copy of + `process-environment'. - * ps-mule.el (ps-mule-bitmap-prologue): Fix arguments to setcharwidth. - (ps-mule-composition-prologue): Fix for the case that - RelativeCompose is false. +2007-11-08 David Hansen (tiny change) -2005-07-26 Stefan Monnier + * eshell/em-dirs.el (eshell-expand-multiple-dots): Change regexp to + match dir like "a...b". - * smerge-mode.el (smerge-ediff): Use insert-buffer-substring. +2007-11-08 Stefan Monnier - * descr-text.el (describe-char): Handle the case where the list of - chars is displayed in a separate frame. - Be a bit more discriminating when looking for the char. + * smerge-mode.el (smerge-refine-subst): Pass "-d" to diff. -2005-07-26 Juanma Barranquero +2007-11-07 Michael Albinus - * bookmark.el (bookmark-automatically-show-annotations) - (bookmark-read-annotation-text-func): Doc fixes. - (bookmark-save): Improve argument/docstring consistency. - (bookmark-get-bookmark, bookmark-get-bookmark-record) - (bookmark-alist-from-buffer) - (bookmark-upgrade-file-format-from-0) - (bookmark-grok-file-format-version) - (bookmark-maybe-upgrade-file-format, bookmark-kill-line) - (bookmark-read-annotation-mode) - (bookmark-insert-current-bookmark, bookmark-jump) - (bookmark-exit-hook): Fix typos in docstrings. - (bookmark-exit-hooks): Define as obsolete alias. - (bookmark-exit-hook-internal): Run `bookmark-exit-hook', - not `bookmark-exit-hooks'. Fix docstring. - (bookmark-bmenu-select): "?\ " -> "?\s". + * net/tramp.el (tramp-handle-substitute-in-file-name): + Don't expand the remote connection identification. + (tramp-find-shell, tramp-open-connection-setup-interactive-shell): + Set also $PS2 and $PS3 when setting $PS1. Check for shell echoing + before calling stty. -2005-07-25 Ari Roponen (tiny change) + * net/tramp-cache.el (tramp-cache-print) + (tramp-dump-connection-properties): Fix docstring. + (tramp-list-connections): Rename from `tramp-cache-list-connections'. - * startup.el (command-line): Fix typo. + * net/tramp-cmds.el (tramp-cleanup-connection): Apply it. -2005-07-24 Richard M. Stallman + * net/tramp-ftp.el (tramp-ftp-file-name-handler): Don't expand the + remote connection identification when setting connection property. - * tooltip.el (tooltip-mode): Test emacs-basic-display, - not emacs-quick-startup. + * net/tramp-smb.el (tramp-smb-handle-substitute-in-file-name): + "//" substitutes only in the local filename part. -2005-07-24 Juanma Barranquero +2007-11-07 David Hansen - * emacs-lisp/re-builder.el (reb-with-current-window): Delete. - (reb-next-match, reb-show-subexp): Use `with-selected-window' - instead of `reb-with-current-window'. - (reb-prev-match): Likewise. Also, don't move left if the search - was unsuccessful. - (reb-initialize-buffer): New function. - (re-builder, reb-change-syntax): Use it. + * eshell/em-glob.el (eshell-extended-glob): Sort matches. - * man.el (Man-goto-page): Make second argument NOERROR optional. +2007-11-07 Glenn Morris -2005-07-23 Richard M. Stallman + * emulation/tpu-mapper.el (tpu-map-key): Use unless rather than cond. + Remove superfluous concats. Move final set-buffer to + non-emacs-specific code. - * man.el (Man-bgproc-sentinel): Check here for failure to find - any man page in the output, and report the error here. - (Man-arguments): Make it permanent local. - (Man-goto-page): New arg NOERROR. Never kill the current buffer. - (Man-mode): Pass t for NOERROR. +2007-11-07 Rob Riepel - * progmodes/grep.el (grep-error-face): Use font-lock-keyword-face. - (grep-mode-font-lock-keywords): - Don't use compilation-...-face for messages that are not file names. + * emulation/tpu-mapper.el (tpu-map-key): Remove un-needed cond branch. - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Don't use compilation-...-face for messages that are not file names. +2007-11-07 Johan Bockgård -2005-07-22 Juri Linkov + * eshell/esh-mode.el (eshell-output-filter): + * eshell/esh-proc.el (eshell-insertion-filter, eshell-sentinel): + Use `with-current-buffer'. - * startup.el (normal-splash-screen): Update menu name. +2007-11-07 Andreas Schwab - * tempo.el (tempo-insert-template): Fix 2005-07-16 change. + * server.el (server-start): Only register cleanup after server was + started. -2005-07-22 Dan Nicolaescu +2007-11-06 Michael Albinus - * term/xterm.el: Load term/rxvt if the terminal is actually an - rxvt terminal. - (xterm-rxvt-set-background-mode): Remove, not used anymore. + * net/tramp.el (top): Don't autoload `tramp-cache-print'. - * term/rxvt.el (function-key-map): Use substitute-key-definition - to bind {C,S,C-S}-{f1-f10}. Add a few missing key bindings. + * net/tramp-cache.el (tramp-cache-print): Move down. + (tramp-cache-list-connections): New defun. - * term/cygwin.el: New file. + * net/tramp-cmds.el (tramp-cleanup-connection): Use it. -2005-07-22 Kim F. Storm +2007-11-06 Juanma Barranquero - * image-file.el (insert-image-file, image-file-yank-handler): - Fix last change to maintain a (unique) yank-handler on yanked images. + * ido.el (ido-save-history): Write the history file in the current + filename coding system, and add `coding' file-local variable. -2005-07-22 Eduardo Mu,Aq(Boz (tiny change) +2007-11-06 Carsten Dominik - * dired.el (dired-move-to-filename-regexp): Recognize the B suffix - of the file size (as in "177B" for 177 bytes). This happens with - "ls -lh" on FreeBSD. + * textmodes/org.el (org-table-formula-substitute-names): + Remove forgotten temporary debugging code. -2005-07-22 Juanma Barranquero +2007-11-05 Michael Albinus - * hilit-chg.el (highlight-changes-global-initial-state) - (highlight-compare-buffers, hilit-chg-turn-on-maybe) - (hilit-chg-fixup, highlight-changes-mode): - Fix typos in docstrings. - (highlight-changes-global-modes, highlight-changes-rotate-faces): - Doc fixes. + * net/tramp.el (tramp-wait-for-output): Ignore escape sequences in + the prompt. -2005-07-21 Luc Teirlinck +2007-10-05 Chris Moore - * emacs-lisp/easy-mmode.el (define-minor-mode): Never call the - mode function using `eval-after-load'. + * wdired.el (wdired-use-dired-vertical-movement): Doc fix. -2005-07-21 Kim F. Storm +2007-11-05 Simon Josefsson - * mail/emacsbug.el (report-emacs-bug): Request that backtraces are - included when reporting an Emacs crash, and tell about the DEBUG file. + * net/tls.el (tls-end-of-info): Doc fix. - * image-file.el (insert-image-file): Add yank-handler. - (image-file-yank-handler): Yank handler to make unique copies of - images when they are yanked into a buffer next to each other. +2007-11-05 Kenichi Handa -2005-07-21 Juanma Barranquero + * international/utf-7.el (utf-7-imap): New coding system. + (utf-7-imap-post-read-conversion): New function. + (utf-7-imap-pre-write-conversion): New function. - * comint.el (comint-use-prompt-regexp, comint-send-input) - (comint-source-default, comint-extract-string) - (comint-get-source, comint-word, comint-completion) - (comint-source, comint-prompt-read-only, comint-update-fence): - Fix typos in docstrings. - (comint-use-prompt-regexp-instead-of-fields, comint-kill-output): - Declare with define-obsolete-*-alias macros. - (comint-previous-matching-input-from-input) - (comint-next-matching-input-from-input) - (comint-previous-matching-input, comint-next-matching-input) - (comint-forward-matching-input): - Improve argument/docstring consistency. +2007-11-05 Stefan Monnier - * desktop.el (desktop-clear-preserve-buffers-regexp): - Also preserve the *server* buffer. - - * simple.el (clone-indirect-buffer): Doc fix. - (fixup-whitespace, just-one-space) - (backward-delete-char-untabify, lambda): "?\ " -> "?\s". - (next-error, next-error-highlight) - (next-error-highlight-no-select, next-error-last-buffer) - (next-error-buffer-p, next-error-find-buffer, next-error) - (previous-error, next-error-no-select, previous-error-no-select) - (open-line, split-line, minibuffer-prompt-width, kill-new) - (binary-overwrite-mode): Fix typos in docstrings. - (set-fill-column): Fix typo in message. - - * skeleton.el (skeleton-proxy-new): Doc fix. - - * strokes.el (strokes-load-hook): Doc fix. - (strokes-grid-resolution, strokes-get-grid-position) - (strokes-renormalize-to-grid, strokes-read-stroke) - (strokes-read-complex-stroke, strokes-file, strokes-last-stroke) - (strokes-global-map): Fix typos in docstrings. - (strokes-help): Doc fix. Fix help message and pass it through - `substitute-command-keys'. - - * tempo.el (tempo-insert-prompt, tempo-interactive) - (tempo-show-completion-buffer, tempo-tags, tempo-match-finder) - (tempo-insert-string-functions, tempo-local-tags) - (tempo-define-template, tempo-insert-template) - (tempo-insert-prompt-compat, tempo-is-user-element) - (tempo-insert-mark, tempo-find-match-string, tempo-complete-tag): - Fix typos in docstrings. + * abbrev.el (abbrev--write): Fix up typo. - * vcursor.el (vcursor-other-window, vcursor-bind-keys) - (vcursor-key-bindings, vcursor-use-vcursor-map) - (vcursor-find-window, vcursor-scroll-down) - (vcursor-disable, vcursor-beginning-of-buffer) - (vcursor-end-of-buffer): Fix typos in docstrings. - (vcursor-relative-move, vcursor-get-char-count): - Improve argument/docstring consistency. +2007-11-04 Juanma Barranquero - * version.el: "?\ " -> "?\s". + * abbrev.el (define-abbrev-table): Doc fix. - * wid-edit.el (widget-default-create, widget-after-change) - (widget-default-format-handler, widget-checklist-add-item) - (widget-radio-add-item, widget-choose, widget-specify-secret) - (widget-field-value-create, widget-field-value-get) - (widget-editable-list-format-handler) - (widget-editable-list-entry-create, widget-group-value-create) - (widget-documentation-link-add) - (widget-documentation-string-value-create): "?\ " -> "?\s". - (widget-convert-text): Doc fix. - (widget-narrow-to-field, widget-field-find) - (widget-url-link-action, widget-emacs-library-link-action) - (widget-color-notify): Fix typos in docstrings. +2007-11-04 Thien-Thi Nguyen - * w32-fns.el (w32-shell-name): Use `bound-and-true-p'. - (x-select-text, set-w32-system-coding-system) - (w32-add-charset-info): Fix typos in docstrings. + * info.el (Info-revert-buffer-function): New func. + (Info-mode): Arrange to use it for reverting. + (Info-copy-current-node-name): Add space between filename and nodename. - * emulation/cua-base.el (cua-mode, cua-enable-register-prefix) - (cua-enable-cua-keys, cua-use-hyper-key) - (cua-virtual-rectangle-edges): Fix typos in docstrings. - (cua--M/H-key, cua--init-keymaps): "?\ " -> "?\s". +2007-11-04 Stefan Monnier - * net/tramp.el (tramp-handle-load): Fix typo in error message. + * abbrev.el (expand-abbrev): Move point back to expansion's end. - * emacs-lisp/re-builder.el (regexp-builder): Declare with - `defalias' instead of faking it. +2007-11-04 Glenn Morris - * eshell/em-ls.el (eshell-ls-decorated-name): Doc fix. - (eshell-ls-missing, eshell-ls-dired-initial-args) - (eshell-ls-use-in-dired): Fix typos in docstrings. + * net/tls.el: Don't require rx when compiling. + (tls-end-of-info): Rewrite without using rx. + (open-tls-stream): Use with-current-buffer. -2005-07-20 Kim F. Storm +2007-11-04 Riccardo Murri - * emulation/cua-base.el (cua-mode): Improve doc string. + * net/tls.el: Require rx when compiling. + (tls-end-of-info): New variable. + (open-tls-stream): Keep reading input until `tls-end-of-info' is + matched. -2005-07-20 Juanma Barranquero +2007-11-03 Sean O'Rourke - * abbrev.el (expand-region-abbrevs): Doc fix. - (inverse-add-mode-abbrev, inverse-add-global-abbrev): - Improve argument/docstring consistency. + * register.el (append-to-register, prepend-to-register): + Don't signal error on empty register; use the text, instead. - * arc-mode.el (archive-get-descr, archive-alternate-display): - Doc fixes. - (archive-l-e): Improve argument/docstring consistency. - (archive-tmpdir, archive-unixdate, archive-unixtime) - (archive-chmod-entry): Fix typos in docstrings. - (archive-unflag, archive-unflag-backwards) - (archive-unmark-all-files): "?\ " -> "?\s". - - * buff-menu.el (Buffer-menu-unmark): Doc fix. - (Buffer-menu-not-modified, Buffer-menu-execute) - (Buffer-menu-toggle-read-only, Buffer-menu-buffer+size) - (list-buffers-noselect, Buffer-menu-select): "?\ " -> "?\s". - - * composite.el (compose-string, encode-composition-rule) - (compose-last-chars): Fix typos in docstrings. - - * desktop.el (desktop-enable, desktop-basefilename): - Declare with `define-obsolete-variable-alias'. - (desktop-internal-v2s): Don't quote keywords. - (desktop-clear): "?\ " -> "?\s". - - * dired.el (dired-align-file, dired-flag-backup-files) - (dired-change-marks, dired-unmark-all-files): "?\ " -> "?\s". - (dired-listing-switches, dired-ls-F-marks-symlinks) - (dired-dwim-target, dired-load-hook, dired-mode-hook) - (dired-directory, dired-faces, dired, dired-revert) - (dired-mode, dired-summary, dired-view-file) - (dired-copy-filename-as-kill, dired-delete-file) - (dired-no-confirm, dired-unmark-all-marks) - (dired-sort-by-date-regexp, dired-sort-by-name-regexp) - (dired-sort-inhibit, dired-sort-other): Fix typos in docstrings. - (dired-undo, dired-get-file-for-visit, dired-sort-toggle-or-edit): - Fix typos in message strings. - - * dired-x.el (virtual-dired): Declare with `defalias'. - (dired-mark-unmarked-files, dired-local-variables-file) - (dired-omit-here-always): Doc fix. - (dired-omit-mode, dired-find-subdir) - (dired-enable-local-variables, dired-clean-up-buffers-too) - (dired-extra-startup, dired-mark-extension, dired-jump) - (dired-jump-other-window, dired-omit-localp, dired-virtual-mode) - (dired-smart-shell-command, dired-guess-shell-alist-user) - (dired-man, dired-initial-position, dired-x-hands-off-my-keys) - (dired-x-bind-find-file, dired-x-submit-report): - Fix typos in docstrings. - (dired-mark-unmarked-files): "?\ " -> "?\s". +2007-11-03 Michael Olson - * dirtrack.el (dirtrack-list): Fix typos in docstring. + * textmodes/remember.el (remember-buffer): + Use define-obsolete-function-alias rather than defalias. - * faces.el (describe-face): "?\ " -> "?\s". - (read-all-face-attributes, read-face-font, modify-face) - (face-attr-construct, italic): Fix typos in docstrings. - (frame-update-face-colors): Declare with - `define-obsolete-function-alias'. +2007-11-03 Ulrich Mueller (tiny change) - * files.el (find-file-noselect, recode-file-name): Doc fixes. - (insert-directory, kill-some-buffers): "?\ " -> "?\s". - (magic-mode-alist, buffer-file-numbers-unique) - (write-file-functions, get-free-disk-space): - Fix typos in docstrings. - (find-file-not-found-hooks, find-file-hooks, write-file-hooks) - (write-contents-hooks, write-file-hooks): - Declare with `define-obsolete-variable-alias'. - - * forms-d2.el (arch-rj): Fix typo in docstrings. - (arch-tocol): Likewise. "?\ " -> "?\s". - - * frame.el (set-frame-font, cursor-in-non-selected-windows): - Fix typo in docstring. - (set-screen-width, set-screen-height): Delete redundant info in - doctrings. - (new-frame, screen-height, screen-width): Declare with - `define-obsolete-function-alias'. - (delete-frame-hook, blink-cursor): Declare with - `define-obsolete-variable-alias'. - - * paths.el (prune-directory-list): Fix typos in docstring. - - * pcvs-util.el (cvs-flags-query, cvs-strings->string) - (cvs-prefix-get): Fix typos in docstrings. - - * ps-print.el (ps-extend-face-list, ps-extend-face) - (ps-print-background-image): Fix typos in docstrings. - (ps-default-fg, ps-default-bg): Doc fixes. - - * s-region.el (s-region-bind): Doc fix. - (s-region-move-p1, s-region-move-p2): Fix typos in docstrings. - - * textmodes/org.el (org-table-formula-substitute-names) - (org-table-get-vertical-vector): Doc fixes. - (org-table-recalculate): Remove unused argument to `message'. - -2005-07-19 Carsten Dominik - - * textmodes/org.el (org-table-column-names) - (org-table-column-name-regexp) - (org-table-named-field-locations): New variables. - (org-archive-subtree): Protect `this-command' when calling - `org-copy-subtree' and `org-cut-subtree', to avoid appending to - the kill buffer. - (org-complete): Remove fixed-formula completion. - (org-edit-formulas-map): New variable. - (org-table-edit-formulas): New command. - (org-finish-edit-formulas, org-abort-edit-formulas) - (org-show-variable, org-table-get-vertical-vector): New functions. - (org-table-maybe-eval-formula): Handle `:=' fields. - (org-table-get-stored-formulas, org-table-store-formulas) - (org-table-get-formula, org-table-modify-formulas) - (org-table-replace-in-formulas): Handle named field formulas. - (org-table-get-specials): Store locations of named fields. - -2005-07-19 Juri Linkov - - * progmodes/grep.el (grep-regexp-alist) - (grep-mode-font-lock-keywords, grep-process-setup): - Use default GNU grep match color "01;31m" instead of "01;41m". - (grep-regexp-alist, grep-mode-font-lock-keywords): - Use `\\[[0-9]*m' instead of `\\[00m'. - (grep-regexp-alist): Move `\\(?:\033\\[K\\)?' from sgr_end to - sgr_start where its handling is more important. Use the real - length of sgr_start instead of constant 8. - (grep-mode-font-lock-keywords): Don't delete `\\(?:\033\\[K\\)?' - specially. Delete all remaining escape sequences. - (grep-process-setup): Set "GREP_COLORS" for GNU grep 2.5.1-cvs. - (grep-regexp-alist): Make hyperlink only for binary file name - instead of the whole line. - (grep-mode-map): Bind `backtab' to `compilation-previous-file'. - (grep-mode): Add autoload. - - * emacs-lisp/find-func.el (find-function-regexp): - Add `define-compilation-mode'. - -2005-07-19 Juri Linkov - - * compare-w.el (compare-ignore-whitespace, compare-windows-sync) - (compare-windows-sync-string-size, compare-windows-recenter) - (compare-windows-highlight, compare-windows): Add version 22.1. - (compare-windows) : Inherit from lazy-highlight instead - of duplicating its default value. - - * cus-edit.el (custom-mode-map): Bind `C-c C-c' to `Custom-set'. - (Custom-mode-menu): Use `info' instead of `Info-goto-node'. - - * descr-text.el (describe-char): Create link buttons for `charset' - and `code point'. Add the current input method name with a link - button to `to input' field. Print face names of display table - characters in `The display table entry is displayed by' section - instead of printing face-id in the `display' field. - Guess hardcoded faces and create a link button for them. - Skip empty fields when calculating max-width. - Treat `widget-create' specially while inserting strings from the - collected field list. - (describe-char-after): Made obsolete in version 22.1, not 21.5. - - * diff-mode.el (diff-file-header): Change foreground color from - yellow to green on light backgrounds. - (diff-context): Inherit from `shadow' only for color/grayscale - with more than 88 colors. - (diff-indicator-removed, diff-indicator-added) - (diff-indicator-changed): New faces. - (diff-font-lock-keywords): Use new faces. Regroup rules. - Add "^---$" for `normal' diff format. Fontify `#' lines with - font-lock-comment-delimiter-face and font-lock-comment-face. - Add `#' to ^[^...] in the rule for `diff-context-face'. - - * faces.el (mode-line-highlight): Replace RoyalBlue4 with - a button-like box. Inherit from `highlight' on low colors. - (shadow): Use shades of gray only for color/grayscale with - more than 88 colors. Use green for light backgrounds with - 8 colors, and yellow for dark backgrounds with 8 colors. - - * font-lock.el (font-lock-regexp-grouping-backslash): - Don't inherit from escape-glyph (use bold for all cases). - - * info.el (info-xref-visited): Use light foreground color `violet' - for dark backgrounds instead of dark color `magenta3'. - (info-title-1): Use `yellow' color for dark backgrounds. - - * isearch.el (isearch): Use not-too-dark magenta3 instead of - too-light magenta2. - - * replace.el (match): Use slightly more light RoyalBlue3 instead - of dark RoyalBlue4. - - * wid-edit.el (widget-inactive): Inherit from `shadow'. - -2005-07-19 Juanma Barranquero - - * novice.el (disabled-command-hook): Declare it with - `define-obsolete-variable-alias'. - - * desktop.el (desktop-enable, desktop-buffer-modes-to-save) - (desktop-buffer-misc-functions, desktop-buffer-handlers) - (desktop-load-default): Add release to obsolescence info. - (desktop-globals-to-clear, desktop-buffer-mode-handlers) - (desktop-append-buffer-args, desktop-read): - Fix typos in docstrings. - (desktop-kill): Fix typo in message. - (desktop-save): Doc fix. - -2005-07-19 Michael Kifer - - * emulation/viper-cmd.el (viper-escape-to-state): Bug fix. - (viper-envelop-ESC-key): Change the definition of fast - keysequence so it'll work with keyboard macros. - - * ediff.el (ediff-patch-buffer): Change the docstring. - -2005-07-19 Kenichi Handa - - * international/mule-cmds.el (select-safe-coding-system): Try to - use an auto-coding (if any) before anything else. If the found - auto-coding is invalid, show a warning message. - - * international/mule.el (find-auto-coding): New function created - by modifying the body of set-auto-coding. - (set-auto-coding): Use find-auto-coding to find a coding. - -2005-07-18 Richard M. Stallman - - * allout.el (allout-isearch-expose): Use isearch-mode-end-hook-quit, - not isearch-mode-end-hook-error. - (allout-before-change-protect): Fix error message. - -2005-07-18 Juri Linkov - - * allout.el (allout-mode): - * calculator.el (calculator-copy): - * custom.el (custom-known-themes): - * dired.el (dired-desktop-buffer-misc-data) - (dired-restore-desktop-buffer): - * dired-x.el (dired-omit-marker-char): - * files.el (basic-save-buffer): - * font-core.el (font-lock-mode): - * calendar/calendar.el (calendar-goto-hebrew-date) - (calendar-goto-coptic-date, calendar-goto-ethiopic-date) - (calendar-goto-persian-date): - * language/ethio-util.el (ethio-sera-to-fidel-region): - * textmodes/picture.el (picture-mode): - Delete duplicate duplicate words. - -2005-07-18 Juri Linkov - - * isearch.el (isearch-mode-map): Remove key bindings for regexp - chars * ? } |. - (isearch-fallback): Don't call `isearch-process-search-char'. - (isearch-*-char, isearch-}-char, isearch-|-char): Remove functions. - (isearch-process-search-char): Call `isearch-fallback' for regexp - chars * ? } |. - (isearch-return-char): Make obsolete with `make-obsolete' instead - of simply documenting it as obsolete in the docstring. - (isearch-fallback): Refill docstring. - - * international/isearch-x.el - (isearch-process-search-multibyte-characters): Remove unneeded - `concat'. Add intermediate values to `junk-hist' instead of - `minibuffer-history'. Test the length of `str'. - -2005-07-18 Juanma Barranquero - - * allout.el (allout-resolve-xref): Fix typos in error strings. - (allout-before-change-protect): Remove unneeded `concat'. - - * array.el (array-mode, array-reconfigure-rows) - (untabify-backward): Fix typos in docstrings. - (array-reconfigure-rows): Use `insert-buffer-substring', not - `insert-buffer'. - - * calendar/icalendar.el (icalendar--get-unfolded-buffer): - * progmodes/ada-mode.el (ada-make-body): - Use `insert-buffer-substring' and `goto-char', not `insert-buffer'. - - * dired.el (dired-log): - * tar-mode.el (tar-subfile-save-buffer): - * play/zone.el (zone-pgm-stress-destress): - Use `insert-buffer-substring', not `insert-buffer'. + * simple.el (bad-packages-alist): Anchor semantic regexp. -2005-07-17 Simon Josefsson +2007-11-03 Glenn Morris - * mail/smtpmail.el (smtpmail-auth-supported): Prefer PLAIN over LOGIN. + * newcomment.el (comment-dwim): Call comment-insert-comment-function, + if defined, for blank lines. Doc fix. -2005-07-16 Jose E. Marchesi + * progmodes/fortran.el (fortran-mode-map): Don't bind M-;. + (fortran-mode): Set values for comment-region-function, + uncomment-region-function and comment-insert-comment-function. + (fortran-uncomment-region): New function. - * mail/smtpmail.el (smtpmail-auth-supported): Add plain auth method. - (smtpmail-try-auth-methods): Add AUTH PLAIN dialog. + * textmodes/nroff-mode.el (nroff-mode): + Set comment-insert-comment-function rather than indent-line-function. + (nroff-indent-line-function): Remove. + (nroff-insert-comment-function): New function. -2005-07-17 Kim F. Storm +2007-11-02 Michael Kifer - * ido.el (dired-other-window): Add ido property. + * ediff-vers.el (ediff-vc-working-revision): Add a quote. -2005-07-16 Juanma Barranquero +2007-11-02 Michael Kifer - * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): - Fix typo in docstring. - (byte-compile-interactive-only-functions): Add `insert-buffer' and - `insert-file-literally'. + * emulation/viper-ex.el (viper-ex): Do not ignore the region. - * emacs-lisp/edebug.el (def-edebug-form-spec): Add obsolescence - info and delete redundant message. Doc fix. - (edebug-install-custom-print-funcs, edebug-reset-print-funcs) - (edebug-uninstall-custom-print-funcs): Define as obsolete aliases. + * emulation/viper-cmd.el (viper-prev-destructive-command) + (viper-insert-prev-from-insertion-ring): Use ring-copy instead of + copy-sequence. -2005-07-16 Richard M. Stallman + * ediff-util.el (ediff-make-current-diff-overlay): Do not use face-name. + Got rid of ediff-copy-list. - * emacs-lisp/bytecomp.el (byte-compile-and-recursion): New function. - (byte-compile-and): Use byte-compile-and-recursion. - (byte-compile-or-recursion): New function. - (byte-compile-or): Use that. - (byte-compile-if): Guard the else-clause too. - (byte-compile-maybe-guarded): Handle (not (featurep 'emacs)). + * ediff-diff.el (ediff-set-fine-diff-properties-in-one-buffer): Do not + use face-name. + (ediff-test-utility, ediff-diff-mandatory-option) + (ediff-reset-diff-options): Remove to simplify the mandatory option + handling on Windows. + (ediff-set-diff-options): Add. + (ediff-diff-options): Set "--binary" option as default in some cases. - * isearch.el (isearch-mode-end-hook-quit): New variable. - (isearch-done): Bind it. - (isearch-mode-end-hook): Doc fix. + * ediff-vers.el (ediff-vc-internal): Use ediff-vc-revision-other-window. + (ediff-vc-merge-internal): Use ediff-vc-revision-other-window and + ediff-vc-working-revision. Require vc-hooks. - * allout.el (allout-isearch-did-quit): Variable deleted. - (allout-real-isearch-abort): Function name no longer used. - (allout-mode): Do allout-enwrap-isearch whenever feature is wanted. - (allout-isearch-rectification): isearch-mode always exists. - Don't set allout-isearch-did-quit. - (allout-isearch-expose): Check isearch-mode-end-hook-error, not - allout-isearch-did-quit. - (allout-enwrap-isearch): Just add the hook. - (allout-isearch-abort): Function deleted. - (allout-pre-command-business): Avoid warning. +2007-11-02 Drake Wilson (tiny change) - * progmodes/pascal.el (pascal-outline-map): Use fboundp, not boundp. - Correctly avoid warnings. - (pascal-outline): Likewise. + * files.el (hack-local-variables): Fix membership tests to avoid + treating all variables as safe if `enable-local-variables' is + set to :safe (CVE-2007-5795). - * progmodes/f90.el (f90-abbrev-start): Avoid warning. +2007-11-02 Glenn Morris - * progmodes/asm-mode.el (asm-comment): Use with-no-warnings. + * newcomment.el (comment-indent): Let comment-insert-comment-function, + if defined, do all the work of inserting a new comment. - * play/tetris.el (tetris-mode): Avoid warning. + * progmodes/etags.el (tags-table-mode): Disable undo. - * play/snake.el (snake-mode): Avoid warning. + * simple.el (bad-packages-alist): Revert previous change. - * play/gamegrid.el (gamegrid-shared-game-dir): Add defvar. - (gamegrid-set-display-table): Avoid warning. - (gamegrid-set-timer): Likewise. - (gamegrid-make-mono-tty-face): Use set-face-inverse-video-p. - (gamegrid-add-score-with-update-game-score-1): Take FILE - as argument. - (gamegrid-add-score-with-update-game-score): Pass that argument. - Rename have-shared-game-dir to gamegrid-shared-game-dir. +2007-11-02 Dan Nicolaescu - * net/eudc-hotlist.el (eudc-hotlist-mode): Avoid warnings. + * emacs-lisp/lselect.el: Move to obsolete/lselect.el. - * net/eudc-bob.el (eudc-jump-to-event): Avoid warning. - (eudc-bob-display-jpeg, eudc-bob-can-display-inline-images): Likewise. + * obsolete/lselect.el: Do not warn about unknown functions. - * mail/uce.el (uce-reply-to-uce): Replace beginning-of-buffer - and insert-file. +2007-11-02 Michael Olson - * mail/supercite.el (sc-no-blank-line-or-header): Avoid warning. - (sc-ask): Avoid warnings. + * textmodes/remember.el (remember-buffer): Make this an alias of + remember-finalize, because Org uses it. - * eshell/em-hist.el (eshell-rebind-keys-alist): Add defvar. - (eshell-hist-initialize): Use that var the natural way. +2007-11-01 Michael Olson - * emulation/viper-init.el (viper-activate-input-method): Avoid warning. + * textmodes/remember.el: Improve documentation in heading. + (remember-before-remember-hook): Turn into a customizable option. + (remember): Document INITIAL argument. + (remember-region): Remove autoload cookie. Improve docstring to + mention that it is called from the *Remember* buffer, and does not + have any functional overlap with the `remember' function. + (remember-finalize): Remove autoload cookie. Rename from + remember-buffer to emphasize that this does not have any + functional overlap with the `remember' function. + (remember-destroy): Remove autoload cookie. + (remember-mode-map): Define and initialize in one step. + (remember-mode): Improve docstring. + (remember-annotation-functions): Default to just '(buffer-file-name), + and don't try to take the default value from Planner. - * emacs-lisp/re-builder.el (reb-cook-regexp): - Avoid warning calling lre-compile-string. - (reb-color-display-p): Avoid warning. +2007-11-01 Glenn Morris - * calculator.el (calculator-last-input): Guard uses - of event-key and key-press-event-p. - (event-key, key-press-event-p): Delete definitions. + * doc-view.el (doc-view-cache-directory): Remove superfluous concat. - * emacs-lisp/find-gc.el (find-gc-unsafe-list) - (find-gc-source-directory, find-gc-subrs-callers) - (find-gc-noreturn-list, find-gc-source-files) - (find-gc-subrs-called): Vars renamed and defvar'd. + * simple.el (bad-packages-alist): Add an entry for standalone vc-svn. - * emacs-lisp/checkdoc.el (checkdoc-make-overlay) - (checkdoc-overlay-put, checkdoc-delete-overlay) - (checkdoc-overlay-start, checkdoc-overlay-end) - (checkdoc-mode-line-update, checkdoc-char=): - Define such that compiler knows they are defined. - (checkdoc-call-eval-buffer): Delete. Use eval-buffer directly. - (checkdoc-read-event): Delete. Use read-event directly. + * emacs-lisp/authors.el (authors-scan-change-log) + (authors-scan-el): Don't enable local eval; enable only safe local + variables, without querying. - * whitespace.el (whitespace-make-overlay) - (whitespace-overlay-put, whitespace-delete-overlay) - (whitespace-overlay-start, whitespace-overlay-end): - Define such that compiler knows they are defined. - (whitespace): Move conditional inside. + * mail/footnote.el (footnote-numeric-regexp) + (footnote-english-upper-regexp, footnote-english-lower-regexp) + (footnote-roman-lower-regexp, footnote-roman-upper-regexp): + Match multi-character footnotes. - * tempo.el (tempo-insert-template): Suppress warning. + * textmodes/nroff-mode.el (nroff-mode): Set indent-line-function. + (nroff-indent-line-function): New function. + (nroff-count-text-lines): Use nroff-forward-text-line rather than + obsolete alias. - * ediff-diff.el (longlines-mode): Add defvar. +2007-11-01 Ryan Yeske -2005-07-16 Gary Howell (tiny change) + * net/rcirc.el (rcirc-last-quit-line, rcirc-last-line) + (rcirc-elapsed-lines): New argument PROCESS. Update callers. + (rcirc-print): Only update the line count when not marking the + line as omittable. + (rcirc-log-write): Specify coding system when writing logfile. + (rcirc-markup-fill): Make sure ellipsis does not cause line to wrap. - * server.el: Bind "C-x #" in a way that works even if C-x is - redefined to a command key, not a prefix key. +2007-11-01 Dan Nicolaescu -2005-07-16 Johan Bockg,Ae(Brd (tiny change) + * printing.el (printing): Fix :version, printing.el was included + for in emacs-22.1. + (pr-path-style, pr-path-alist, pr-txt-name) + (pr-txt-printer-alist, pr-ps-name, pr-ps-printer-alist) + (pr-temp-dir, pr-ps-temp-file, pr-file-modes, pr-gv-command) + (pr-gs-command, pr-gs-switches, pr-gs-device, pr-gs-resolution) + (pr-print-using-ghostscript, pr-file-tumble, pr-auto-region) + (pr-auto-mode, pr-mode-alist, pr-ps-utility) + (pr-ps-utility-alist, pr-menu-char-height, pr-menu-char-width) + (pr-setting-database, pr-visible-entry-list) + (pr-delete-temp-file, pr-list-directory, pr-buffer-name) + (pr-buffer-name-ignore, pr-buffer-verbose): Remove incorrect :version. - * emacs-lisp/cl-macs.el (cl-make-type-test): Defer evaluation of - cl-make-type-test till execution time. + * ediff-util.el (ediff-nuke-selective-display): Move definition to + top level, make it dependent on the emacs flavor. -2005-07-16 Markus Rost + * play/gamegrid.el (gamegrid-kill-timer, gamegrid-start-timer): + Test for XEmacs not for itimer. - * dired-x.el (dired-do-relsymlink-regexp): Add missing optional - arg ARG and use it. + * term/sun-mouse.el: + * obsolete/sun-fns.el: + * obsolete/sun-curs.el: Remove files. -2005-07-16 Johan Bockg,Ae(Brd (tiny change) + * term/sun.el (select-previous-complex-command): Remove obsolete code. - * emacs-lisp/cl-macs.el (cl-make-type-test): Add `atom' type. +2007-10-31 Tassilo Horn -2005-07-15 Luc Teirlinck + * doc-view.el (doc-view-cache-directory): Fix bug where an integer + was given to concat. - * emacs-lisp/easy-mmode.el (define-minor-mode): Avoid constructing - a defcustom with two :set or :type keywords. +2007-10-31 Stefan Monnier -2005-07-15 Richard M. Stallman + * doc-view.el (doc-view-mode-map): Bind doc-view-goto-page to the keys + used normally for goto-line. Change `g' to revert the buffer. + Add redundant `r' binding for buffer-revert. - * emacs-lisp/lisp-mode.el (emacs-lisp-mode-syntax-table): - Don't give ^M comment-end syntax. + * mail/mailabbrev.el (mail-abbrevs-mode): Use define-minor-mode. + (mail-abbrevs-setup): Use abbrev-expand-functions. + (build-mail-abbrevs): Use with-temp-buffer. + (define-mail-abbrev): Simplify. + (mail-abbrev-expand-wrapper): Rename sendmail-pre-abbrev-expand-hook. + Change it for use on abbrev-expand-functions. + (mail-abbrev-complete-alias): Use with-syntax-table. -2005-07-16 Nick Roberts +2007-10-31 Michael Albinus - * progmodes/gdb-ui.el (gdb-var-update, gdb-var-update-handler): - Don't consider gdbmi (gdb-mi.el has its own update functions). - (gdb-var-delete): Make it work for gdbmi as well. - (gdb-speedbar-expand-node): Move var-update here for gdbmi. + * net/tramp.el (tramp-handle-shell-command): Call `start-file-process' + directly. Fix bug in deleting temp file. - * progmodes/gud.el (etags, sdb): Only require etags when needed. - (gud-speedbar-menu-items): Correct logic for enabling items. +2007-10-31 Stefan Monnier -2005-07-15 Kim F. Storm + * progmodes/python.el (python-mode-abbrev-table): Use :regexp. + Merge defvar and define-abbrev-table. + (def-python-skeleton): Use :case-fixed and :enable-function. + (python-abbrev-pc-hook, python-abbrev-syntax-table, python-pea-hook): + Remove. + (python-mode): Don't modify pre-abbrev-expand-hook. - * ido.el: Fix commentary. - (ido-define-mode-map): Move ido-next-work-file to C-M-o. - Use with-no-warnings around ffap-guesser. - (ido-file-internal, ido-read-file-name, ido-read-directory-name): - Let bind minibuffer-completing-file-name to t. +2007-10-31 Dan Nicolaescu -2005-07-15 Juanma Barranquero + * ediff-util.el (ediff-file-checked-out-p) + (ediff-file-checked-in-p): Only call vc-locking-user for XEmacs. - * startup.el (site-run-file, keyboard-type): Doc fixes. - (command-line): Check for "--basic-display" argument; also for - "--quick", not "--bare-bones" (which was renamed). - (fancy-splash-text): Add missing item "Getting New Versions". - (normal-splash-screen): Fix typos and improve consistency with - `fancy-splash-text'. Update copyright year. +2007-10-31 Stefan Monnier - * hexl.el (hexl-mode-map): Recognize also `ehelp-command' as a - valid binding for `help-char'. + * abbrev.el (abbrev-symbol): Correct let->let*. + (abbrev--before-point): Only use abbrev-start-location if before point. - * emacs-lisp/derived.el (derived-mode-hook-name): Doc fix. +2007-10-31 Juanma Barranquero -2005-07-14 Dan Nicolaescu + * strokes.el (strokes-alphabetic-lessp): Simplify. Doc fix. + (strokes-unload-hook): Remove function and variable. + (strokes-unload-function): New-style unload function, adapted + from `strokes-unload-hook'. - * term.el (term-mode): Disable cua-mode for term buffers. + * emacs-lisp/cl.el (cl-cannot-unload): Remove function. + (cl-unload-hook): Remove variable. + (cl-unload-function): New-style unload function, adapted + from `cl-cannot-unload'. -2005-07-14 Juanma Barranquero + * emacs-lisp/elp.el (elp-unload-hook): Remove function and variable. + (elp-unload-function): New-style unload function, adapted + from `elp-unload-hook'. - * add-log.el (add-log-mailing-address, change-log-merge): - Doc fixes. - (change-log-get-method-definition): Fix typo in docstring. +2007-10-31 Sean O'Rourke -2005-07-14 Kim F. Storm + * emacs-lisp/find-func.el (find-library): Use library at + point as default interactive argument. - * emulation/cua-base.el: - (cua--pre-command-handler-1, cua--pre-command-handler) - (cua--post-command-handler-1, cua--post-command-handler): - Split in two. Check (buffer local) value of cua-mode. - (cua-selection-mode): New command. +2007-10-31 Juanma Barranquero -2005-07-13 Luc Teirlinck + * shadowfile.el (shadow-join): Remove. + (shadow-shadows): Use `mapconcat' instead of `shadow-join'. + (shadow-initialize): Use `write-file-functions', not `write-file-hooks'. + (shadowfile-unload-hook): Remove function and variable. + (shadowfile-unload-function): New-style unload function, adapted + from `shadowfile-unload-hook'. - * custom.el (custom-initialize-safe-set) - (custom-initialize-safe-default): Doc fixes. +2007-10-31 Dan Nicolaescu - * frame.el (blink-cursor-mode): Use `custom-initialize-safe-default' - and simplify :init-value again. + * progmodes/mixal-mode.el (mixal-run, mixal-debug): Call mixvm + only if it is bound. - * tooltip.el (tooltip-mode): Use `custom-initialize-safe-default' - and simplify :init-value again. Delete autoload. + * textmodes/reftex.el: Move autoloads for before all uses. + (reftex-make-overlay, reftex-overlay-put, reftex-move-overlay) + (reftex-delete-overlay): Move to the top level with the condition + in the body. - * startup.el (command-line): Use `custom-reevaluate-setting' again - for tooltip-mode. + * progmodes/simula.el: Use when instead of if. - * emacs-lisp/easy-mmode.el (define-minor-mode): Avoid constructing - a defcustom with two :initialize keywords. + * iimage.el (iimage-locate-file): Define unconditionally. -2005-07-13 Juanma Barranquero + * mail/mailabbrev.el (mail-abbrev-next-line): + * emulation/vip.el (vip-enlarge-region, vip-line) + (vip-next-line-at-bol, vip-previous-line) + (vip-previous-line-at-bol, vip-find-char, vip-put-back, ex-read): + Wrap with-no-warnings around uses of next-line and previous-line. - * allout.el (my-mark-marker, allout-isearch-prior-pos) - (allout-unprotected, allout-undo-aggregation, allout-snug-back) - (allout-post-command-business, allout-flag-region) - (isearch-reenable-font-lock, allout-yank) - (allout-insert-latex-header, allout-insert-latex-trailer) - (allout-latex-verbatim-quote-curr-line, allout-latexify-exposed) - (allout-latex-verb-quote): Fix typos in docstrings. - (allout-enwrap-isearch, regexp-sans-escapes): Doc fixes. - (allout-unprotected, allout-prefix-data): - Improve argument/docstring consistency. - (allout-chart-subtree): Fix argument spec. - (allout-open-topic): Rename `use_sib_bullet' argument to - `use-sib-bullet'. Doc fix. + * ediff.el (run-ediff-from-cvs-buffer): + * ediff-vers.el (cvs-run-ediff-on-file-descriptor): + Remove function not used by pcl-cvs anymore. + (noninteractive, generic-sc-get-latest-rev) + (ediff-generic-sc-internal, ediff-generic-sc-merge-internal): + Delete support for long obsolete generic-sc.el. - * whitespace.el (whitespace-check-buffer-leading) - (whitespace-check-buffer-trailing) - (whitespace-check-buffer-indent) - (whitespace-check-buffer-spacetab) - (whitespace-check-buffer-ateol, whitespace-highlighted-space) - (whitespace-check-leading-whitespace) - (whitespace-check-trailing-whitespace) - (whitespace-check-spacetab-whitespace) - (whitespace-check-indent-whitespace) - (whitespace-check-ateol-whitespace, whitespace-abort-on-error) - (whitespace-modes): Fix typos in docstrings. - (defgroup, defcustom): Doc fixes. - - * winner.el (winner-mode, winner-boring-buffers) - (winner-pending-undo-ring): Doc fixes. - (winner-ring): Remove unneeded `progn'. - (winner-equal): `defsubst' it. - (winner-redo): Fix message. - -2005-07-13 Kim F. Storm - - * simple.el (line-move-1): Always use vertical-motion to - do the last (or only) line move to ensure some movement. - Undo 2005-06-23 change--don't check for overlays. - -2005-07-13 YAMAMOTO Mitsuharu - - * term/mac-win.el (ccl-encode-mac-roman-font) - (ccl-encode-mac-centraleurroman-font) - (ccl-encode-mac-cyrillic-font, ccl-encode-mac-symbol-font): - (ccl-encode-mac-dingbats-font): Remove check for ASCII. - Change charset-id boundary of dimension to ?\xef. - (mac-char-fontspec-list): New constant. - (fontset-add-mac-fonts): Use it. Accept non-string `base-family' - argument. Nil uses itself as family in font-spec. Previous - behavior for nil is now provided by non-nil non-string argument. - All callers changed. Add font-specs for Mac fonts to - "fontset-default" unless iso8859-1 fonts are installed. - -2005-07-13 Stefan Monnier - - * progmodes/sh-script.el (sh-get-indent-info): Only indent - a continuation line if the \ is preceded by SPC or TAB. - (sh-get-indent-info): Simplify. - (sh-mark-init, sh-learn-buffer-indent, sh-add-completer): - Use with-current-buffer. +2007-10-31 Glenn Morris - * font-lock.el (font-lock-fontify-keywords-region): Avoid inf-loops - when the matched text is empty. + * cvs-status.el: No longer require pcvs when compiling. -2005-07-12 Luc Teirlinck + * doc-view.el (doc-view-conversion-refresh-interval) + (doc-view-dvi->pdf, doc-view-pdf/ps->png, doc-view-pdf->txt) + (doc-view-reset-slice): Doc fixes. + (doc-view-menu): Remove deleted function doc-view-edit-doc. - * startup.el (command-line): Revert to previous handling of - tooltip-mode. Explain in comment why the complexity is needed. +2007-10-31 Juanma Barranquero - * tooltip.el (tooltip-mode): Revert to previous implementation of - its defcustom. + * help-at-pt.el (help-at-pt-unload-hook): Remove. + Timers are automatically canceled by `unload-feature'. - * frame.el (blink-cursor-mode): Revert to previous implementation - of its defcustom. Update comment. + * delsel.el (delsel-unload-hook): Remove function and variable. + (delsel-unload-function): New-style unload function, adapted + from `delsel-unload-hook'. -2005-07-12 Lars Hansen + * msb.el (msb-unload-hook): Remove function and variable. + (msb-unload-function): New-style unload function, adapted from + `msb-unload-hook'. - * desktop.el: Update e-mail address. +2007-10-30 Juanma Barranquero -2005-07-12 YAMAMOTO Mitsuharu + * desktop.el (uniquify-managed): Pacify byte compiler. + (desktop-buffer-info): If the buffer name is managed by uniquify, + save the base name, not the uniquified one. + (desktop-create-buffer): Allow `rename-buffer' to generate a new + name in case of conflict. - * term/mac-win.el (mac-services-mail-selection) - (mac-services-mail-to): New functions. - (mac-application-menu-map): Bind them. +2007-10-30 Stefan Monnier + + * doc-view.el: Use expand-file-name rather than concat. + (doc-view-cache-directory): Add the UID so multiple users won't clash. + (doc-view-current-overlay, doc-view-pending-cache-flush): New vars. + (doc-view-goto-page, doc-view-insert-image, doc-view-buffer-message) + (doc-view-toggle-display): Use an overlay over the whole buffer so as + not to have to touch the buffer's content. + (doc-view-initiate-display): New function, extracted from doc-view-mode. + (doc-view-mode): Use it. Don't mark as a special mode. + Put the page numbers in the modeline. + Set up the overlay. Hide the cursor. Run the mode hook. + Use after-revert-hook rather than revert-buffer-function. + (doc-view-search-internal): Fix typo. + (doc-view-convert-current-doc, doc-view-insert-image): Delay the + image-cache flush. + (doc-view-reconvert-doc): Don't reset the whole mode. + (doc-view-make-safe-dir): New function. + (doc-view-current-cache-dir): Use it. + +2007-10-30 Jason Rumney + + * time.el (display-time-world-list): Test for zoneinfo support. + +2007-10-30 Michael Albinus + + * net/tramp.el (tramp-maybe-open-connection): Set $LC_ALL to "C". + + * net/tramp-cache.el (tramp-flush-file-function): Check also + `default-directory' if `buffer-file-name' does not return a + string. Added to `eshell-pre-command-hook'. + +2007-10-30 Stefan Monnier + + * doc-view.el (doc-view-current-doc): Remove. + Replace all uses by buffer-file-name. + (doc-view-menu): New menu. + (doc-view-reconvert-doc): Don't bind inhibit-read-only and remove + unused var `doc'. + (doc-view-sort): Simplify. + (doc-view-buffer-message): Don't change buffer-modified-p. + (doc-view-mode): Change it here instead. + Tighten scoping of prev-major-mode. Don't re-insert the file's content. + Don't modify the global value of revert-buffer-function. + + * image-mode.el (image-forward-hscroll, image-next-line, image-eol) + (image-eob, image-mode, image-minor-mode, image-toggle-display-text) + (image-toggle-display): Take overlays into account and don't assume + point-min==1. + +2007-10-30 Thien-Thi Nguyen + + * vc.el (vc-annotate): Fix omission bug: + Specify value for vc-sentinel-movepoint. + +2007-10-30 Michael Olson + + * textmodes/remember.el (remember-mode-hook) + (remember-handler-functions, remember-annotation-functions): + Add additional items as options, including some Org functions. + +2007-10-30 Tassilo Horn + + * doc-view.el: Remove cl-dependency. + (doc-view-buffer-message): Mention new binding K. + (doc-view-convert-current-doc): Use function d-v-current-cache-dir + instead of variable. + (doc-view-current-cache-dir): Better cache dir naming. + (doc-view-current-display): Remove variable. + (doc-view-edit-doc, doc-view-display-maybe): Remove functions. + (doc-view-kill-proc): Set converter process to nil. + (doc-view-minor-mode): New minor mode. + (doc-view-minor-mode-map): New keymap. + (doc-view-mode): Remove text/image switching code. Use plain defun. + (doc-view-mode-map): New binding K kills converter process. + Remove C-c C-e binding. + (doc-view-mode-text-map): Remove keymap. + (doc-view-pdf/ps->png): Timer calls d-v-display instead of + d-v-display-maybe. + (doc-view-previous-major-mode): New variable. + (doc-view-ps->pdf): Resort args to make ps2pdf happy. + (doc-view-remove-if): New function. + (doc-view-search-next-match, doc-view-search-previous-match): Use it. + (doc-view-toggle-display): Toggle modes instead of display styles. + (doc-view-reconvert-doc): Adapt to new way of doing things. + + * progmodes/ps-mode.el (ps-mode-map): Enable doc-view-minor-mode. + +2007-10-30 Glenn Morris + + * dirtrack.el (dirtrack-mode): Doc fix. -2005-07-12 wulei (tiny change) + * shell.el (shell-dirtrack-verbose, shell-mode) + (shell-directory-tracker, shell-dirtrack-mode): Doc fix. - * progmodes/gdb-ui.el: Add note about buffering with Windows. + * emacs-lisp/bytecomp.el (byte-compile-disable-warning) + (byte-compile-enable-warning): Doc fix. + + * emulation/tpu-mapper.el (tpu-map-key): Use with-no-warnings to + suppress byte-opt warning. + +2007-10-30 Dan Nicolaescu + + * emulation/edt.el (edt-emacs19-p, edt-x-emacs19-p) + (edt-gnu-emacs19-p): Remove. + (edt-emacs-variant, edt-window-system): Use feature 'emacs. + (edt-xserver, edt-page-backward, edt-beginning-of-line) + (edt-end-of-line-forward, edt-end-of-line-backward) + (edt-one-word-forward, edt-one-word-backward, edt-character) + (edt-line-forward, edt-next-line, edt-previous-line, edt-top) + (edt-find-forward, edt-find-backward, edt-find-next-forward) + (edt-find-next-backward, edt-reset, edt-advance, edt-backup) + (edt-define-key, edt-bottom-check, edt-sentence-forward) + (edt-sentence-backward, edt-paragraph-forward) + (edt-paragraph-backward, edt-restore-key, edt-window-top) + (edt-window-bottom, edt-scroll-window-forward-line) + (edt-scroll-window-backward-line, edt-line-to-bottom-of-window) + (edt-line-to-top-of-window, edt-paragraph-backward) + (edt-restore-key, edt-window-top, edt-window-bottom) + (edt-scroll-window-forward-line) + (edt-scroll-window-backward-line, edt-line-to-bottom-of-window) + (edt-line-to-middle-of-window, edt-goto-percentage) + (edt-display-the-time, edt-remember, edt-split-window) + (edt-emulation-on, edt-emulation-off) + (edt-default-emulation-setup, edt-user-emulation-setup) + (edt-select-default-global-map, edt-select-user-global-map): + Replace uses of edt-x-emacs19-p and edt-gnu-emacs19-p with feature + tests. + + * textmodes/reftex-index.el (reftex-index-selection-or-word): + Use feature test instead of boundp test so it can be resolved at + compile time. + + * net/newsticker.el (replace-regexp-in-string): Only define for XEmacs. + +2007-10-30 Stefan Monnier + + * abbrev.el: Rename `count' and `system-flag' to :count and :system. + Update all users. + (abbrev-get, abbrev-put): Simplify. + (define-abbrev): Don't store the `force' value in the :system property. + (abbrev--before-point): Obey the :enable-function of the abbrev as well. + +2007-10-30 Michael Olson + + * desktop.el (desktop-minor-mode-table): Add line for ERC. + + * textmodes/remember.el: New file that implements a mode for + quickly jotting down things to remember. + + * textmodes/remember-diary.el: A backend for remember.el that + implements saving notes to a Diary file. + +2007-10-29 Ken Manheimer + + * allout.el (allout-command-prefix, allout-inhibit-auto-fill): + Relocate in file. + (allout-doublecheck-at-and-shallower): Increase to include + slightly greater depths, since yank interaction is now ok. + Also, elaborate the docstring to explain the situation. + (produce-allout-mode-map, allout-hotspot-key-handler): Use vconcat + instead of concat, so we accommodate key sequences expressed as + vectors as well as strings and lists. + (allout-flag-region, allout-hide-by-annotation): Make the + hidden-text overlays 'front-advance. + (allout-overlay-insert-in-front-handler): Correct docstring's grammar. + (allout-aberrant-container-p, allout-on-current-heading-p) + (allout-e-o-prefix-p, allout-next-heading) + (allout-previous-heading, allout-goto-prefix) + (allout-end-of-prefix, allout-next-sibling-leap) + (allout-next-visible-heading, allout-auto-fill) + (allout-rebullet-heading, allout-kill-line, allout-kill-topic) + (allout-yank-processing, allout-resolve-xref) + (allout-current-topic-collapsed-p, allout-hide-region-body) + (allout-latex-verbatim-quote-curr-line, allout-encrypt-string) + (allout-encrypted-topic-p, allout-next-topic-pending-encryption) + (count-trailing-whitespace-region): Preserve match data, so allout + outline navigation doesn't disrupt other Emacs operations. + (allout-beginning-of-line): Retreat to the beginning of the hidden + text, so fields are respected (for submodes that care). + (allout-end-of-line): Preserve mark activation status when jumping. + (allout-open-topic): Account for opening after a child that + contains a hidden trailing newline. Preserve match data. + Run allout-structure-added-hook + (allout-encrypt-decrypted): Preserve match data. + (allout-toggle-current-subtree-exposure): Add new interactive + function for toggle subtree exposure - suggested by tassilo. + (move-beginning-of-line, move-end-of-line): Don't use + line-move-invisible-p, it's obsolete - substitute the code, instead. + +2007-10-29 Dan Nicolaescu + + * textmodes/flyspell.el (message-signature-separator): + * longlines.el (message-indent-citation-function): Pacify byte + compiler. -2005-07-11 Luc Teirlinck + * emacs-lisp/cl-loaddefs.el: + * ldefs-boot.el: Regenerate. - * custom.el (custom-reevaluate-setting): Doc fix. + * Makefile.in (BYTE_COMPILE_EXTRA_FLAGS): New variable. + (.el.elc, compile, compile-always, compile-calc) + ($(lisp)/progmodes/cc-mode.elc): Use it. + + * ps-print.el (ps-xemacs-color-name, ps-xemacs-face-kind-p): + Only do work for XEmacs. + (ps-xemacs-mapper): Rename from ps-mapper, only work on XEmacs. + (ps-xemacs-extent-sorter): Rename from ps-extent-sorter, only work + on XEmacs. + (ps-x-color-instance-p, ps-x-color-instance-rgb-components) + (ps-x-color-name, ps-x-color-specifier-p) + (ps-x-copy-coding-system, ps-x-device-class) + (ps-x-extent-end-position, ps-x-extent-face) + (ps-x-extent-priority, ps-x-extent-start-position) + (ps-x-face-font-instance, ps-x-find-coding-system) + (ps-x-font-instance-properties, ps-x-make-color-instance) + (ps-x-map-extents, ps-e-face-bold-p, ps-e-face-italic-p) + (ps-e-next-overlay-change, ps-e-overlays-at, ps-e-overlay-get) + (ps-e-overlay-end, ps-e-x-color-values, ps-e-color-values): + (ps-generate-postscript-with-faces): Delete defaliases. + (ps-face-foreground-name, ps-face-background-name) + (ps-color-values, ps-face-bold-p, ps-face-italic-p): + Move definitions to top level, make the body conditional on the Emacs + flavor. Replace uses of deleted aliases and renamed functions. + (ps-generate-postscript-with-faces, ps-color-device): Replace uses + of deleted aliases and renamed functions. + + * calc/calc.el (calc-emacs-type-lucid): Remove. + (calc-digit-map, calcDigit-start, calc-read-key) + (calc-clear-unread-commands): + * calc/calc-ext.el (calc-user-key-map): Replace uses of + calc-emacs-type-lucid with (featurep 'xemacs) + + * emulation/tpu-mapper.el: Replace tpu-lucid-emacs19-p with + (featurep 'xemacs). + (tpu-lucid-emacs19-p): Remove. + (tpu-map-key): Make it a function instead of using fset. Inline + tpu-emacs-map-key and tpu-lucid-map-key. Use featurep 'xemacs. + (tpu-emacs-map-key, tpu-lucid-map-key): Remove. + + * ielm.el: Use featurep 'xemacs. + + * progmodes/cperl-mode.el (cperl-xemacs-p): Remove. + (condition-case, cperl-can-font-lock, cperl-singly-quote-face) + (cperl-define-key, cperl-mode-map, cperl-mode, cperl-init-faces) + (cperl-write-tags, cperl-tags-hier-init, cperl-perldoc): Replace + cperl-xemacs-p with (featurep 'xemacs). + (font-lock-cache-position): Pacify byte compiler. + +2007-10-29 Drew Adams + + * faces.el (read-color): New function. + (face-at-point, foreground-color-at-point) + (background-color-at-point): New functions. + +2007-10-28 Richard Stallman + + * net/browse-url.el (browse-url-text-xterm): Rename from + browse-url-lynx-xterm and made generic. + (browse-url-text-emacs): Likewise. + (browse-url-text-browser): New variable. + (browse-url-text-emacs-args): Rename from browse-url-lynx-emacs-args. + (browse-url-text-input-field, browse-url-text-input-attempts) + (browse-url-kde-program): Likewise. + +2007-10-29 Glenn Morris + + * textmodes/org-publish.el (org-publish-get-plist-from-filename): + Use mapc rather than mapcar (reinstall change deleted without log + entry 2007-10-22). + +2007-10-29 Martin Rudalics + + * wdired.el (wdired-next-line, wdired-previous-line): + Use next-line and previous-line wrapped in with-no-warnings. + +2007-10-29 Ryan Yeske + + * net/rcirc.el (rcirc-server-alist): Use keywords for parameter names. + (rcirc-recent-quit-alist): New function. + (rcirc): Print a better message when there is only one connected server. + (rcirc-complete-nick): Do not update the nick table here. + (rcirc-mode-map): Add M-o. + (rcirc-current-line): Add variable. + (rcirc-mode): Setup variables for line based omit. + (rcirc-edit-multiline): Strip text properties. + (rcirc-omit-responses): Add NICK. + (rcirc-omit-threshold): Add variable. + (rcirc-last-quit-line, rcirc-last-line, rcirc-elapsed-lines): + Add functions. + (rcirc-print): Keep track of current line. Do not fill text if + `rcirc-fill-flag' is null. Only omit text if the last activity + from the sender is more than `rcirc-omit-threshold' lines ago. + (rcirc-put-nick-channel, rcirc-handler-PRIVMSG): Track line + numbers instead of time. + (rcirc-channel-nicks): Sort by line numbers instead of time. + (rcirc-omit-mode): Add `...' when omitting text and recenter. + (rcirc-handler-JOIN): Restore the joiners linestamp. + (rcirc-maybe-remember-nick-quit): Add function. + (rcirc-handler-QUIT): Record sender in table of recently quit nicks. -2005-07-11 Jay Belanger +2007-10-29 Juanma Barranquero - * calc/calc.el (calc-embedded-announce-formula-alist) - (calc-embedded-open-close-plain-alist) - (calc-embedded-open-close-mode-alist): Add checks for additional - major modes (due to Robert J. Chassell ). + * loadhist.el (unload-feature-special-hooks): + Add `delete-frame-functions' and `suspend-tty-functions'. -2005-07-11 Juanma Barranquero + * server.el (server-unload-function): Rename from `server-unload-hook' + and adapt to new `unload-feature' functionality. Remove hook from + `kill-buffer-hook' buffer-locally. + (server-unload-hook): Remove. + (server-unload-function): New var; replaces `server-unload-hook'. - * custom.el (custom-enable-theme): Don't add theme to - `custom-enabled-themes' with `push' because there is no - setf-method for `delq'. +2007-10-29 Glenn Morris + + * dirtrack.el (dirtrack-debug): Doc fix. + (dirtrack-mode, dirtrack-debug-mode): New names for + dirtrack-toggle and dirtrack-debug-toggle. Use define-minor-mode. + (dirtrack-toggle, dirtrack-debug-toggle, dirtrackp, dirtrack-debug): + Make obsolete. + (dirtrack-debug-message): Only print message if + dirtrack-debug-mode is non-nil. Use with-current-buffer. + (dirtrack): Doc fix. Use dirtrack-mode rather than dirtrackp. + Remove dirtrack-debug checks now that dirtrack-debug-message does this. + +2007-10-28 Glenn Morris + + * emacs-lisp/bytecomp.el (byte-compile-warnings): Document `not'. + (byte-compile-warnings-safe-p): Handle `not'. + (byte-compile-warning-enabled-p, byte-compile-disable-warning) + (byte-compile-enable-warning): New functions. + (byte-compile-eval-before-compile) + (byte-compile-file-form-require): Use byte-compile-disable-warning. + (byte-compile-close-variables): Locally bind byte-compile-warnings, + but do not modify it. + (byte-compile-eval, byte-compile-obsolete) + (byte-compile-warn-about-unresolved-functions) + (byte-compile-file-form-defvar) + (byte-compile-file-form-custom-declare-variable) + (byte-compile-file-form-require) + (byte-compile-file-form-defmumble, byte-compile-lambda) + (byte-compile-form, byte-compile-normal-call) + (byte-compile-variable-ref, byte-compile-defvar) + (byte-compile-make-variable-buffer-local): + Use byte-compile-warning-enabled-p. + * emacs-lisp/advice.el (ad-compile-function): + Use byte-compile-disable-warning. + * emacs-lisp/cl.el: Move local variables to end of file, and set + byte-compile-warnings to `(not cl-functions)'. + * emacs-lisp/cl-compat.el: Add a local variables section, and set + byte-compile-warnings to `(not cl-functions)'. + * emacs-lisp/cl-macs.el: Unify local variable section, and set + byte-compile-warnings to `(not cl-functions)'. + (cl-do-proclaim): Use byte-compile-disable-warning and + byte-compile-enable-warning. + * emacs-lisp/cl-seq.el: Unify local variable section, and set + byte-compile-warnings to `(not cl-functions)'. + * progmodes/cc-bytecomp.el (cc-bytecomp-ignore-obsolete): + Use byte-compile-disable-warning. + +2007-10-28 Dan Nicolaescu + + * cus-edit.el (custom-browse-insert-prefix): + * emulation/edt.el (edt-x-emacs19-p): Use featurep 'xemacs. + +2007-10-28 Juanma Barranquero + + * server.el (server-process-filter): Fix typo in docstring. + (server-log): Reflow docstrings. + (server-delete-client, server-kill-emacs-query-function): Doc fixes. + (server-goto-line-column): Use `when'. + +2007-10-28 Juri Linkov + + * isearch.el (isearch-other-meta-char): Call `isearch-edit-string' + when mouse is clicked on the isearch message. + (isearch-resume): Call `isearch-update' at the end. + Rename argument `search' to `string' to conform to the + isearch terminology. + +2007-10-28 Stefan Monnier + + Rewrite abbrev.c in Elisp. + * abbrev.el (abbrev-mode): Move custom group from cus-edit.el. + (abbrev-table-get, abbrev-table-put, abbrev-get) + (abbrev-put, make-abbrev-table, abbrev-table-p, clear-abbrev-table) + (define-abbrev, abbrev--check-chars, define-global-abbrev) + (define-mode-abbrev, abbrev--active-tables, abbrev-symbol) + (abbrev-expansion, abbrev--before-point, expand-abbrev) + (unexpand-abbrev, abbrev--write, abbrev--describe) + (insert-abbrev-table-description, define-abbrev-table): + New funs, largely transcribed from abbrev.c. + (abbrev-with-wrapper-hook): New macro. + (abbrev-table-name-list, global-abbrev-table) + (abbrev-minor-mode-table-alist, fundamental-mode-abbrev-table) + (abbrevs-changed, abbrev-all-caps, abbrev-start-location) + (abbrev-start-location-buffer, last-abbrev, last-abbrev-text) + (last-abbrev-location, pre-abbrev-expand-hook, abbrev-expand-function): + New vars, largely transcribed from abbrev.c. + * cus-edit.el (abbrev-mode): Remove. Move to abbrev.el. + * cus-start.el: Remove abbrev-all-caps and pre-abbrev-expand-hook. + * loadup.el: Load "abbrev.el" before "lisp-mode.el". + +2007-10-27 Glenn Morris + + * shell.el (shell-dirtrack-verbose, shell-directory-tracker): Doc fix. + (shell-dirtrack-toggle): Mark as obsolete. + (dirtrack-toggle, dirtrack-mode): No longer alias to + shell-dirtrack-mode. -2005-07-11 Richard M. Stallman +2007-10-27 Jay Belanger - * custom.el (custom-declare-variable): Doc fix. + * calc/calc.el (math-standard-opers): Lower the precedence + of negation. + * calc/calc-lang.el (math-oper-table): Lower precedence of + negation for C, TeX, and eqn. - * dired-aux.el (dired-compare-directories): Remove "." and ".." - from the alists. +2007-10-27 Dan Nicolaescu - * emacs-lisp/edebug.el (edebug-slow-after, edebug-slow-before): - Do nothing if edebug-active. + * progmodes/cc-defs.el: Reorder conditions to avoid warnings. - * emacs-lisp/edebug.el (edebug-enter): Don't with-timeout-suspend here. - (edebug-display): Do it here instead. +2007-10-27 Juanma Barranquero -2005-07-10 Richard M. Stallman + * desktop.el (desktop-load-locked-desktop, desktop-base-lock-name) + (desktop-not-loaded-hook): Fix :version tags. - * cus-face.el (custom-theme-set-faces): Make it work. - (custom-reset-faces): Doc fix. - (custom-theme-reset-internal-face, custom-theme-face-value): - Functions deleted. +2007-10-27 Michael Albinus - * custom.el (custom-push-theme): Maintain list of the settings - of a given theme in its theme-settings property. - Maintain position of old settings in the theme-value - or theme-face property. - (custom-enabled-themes): New variable. - (custom-theme-enabled-p): New function. - (provide-theme): Update custom-enabled-themes. - Disable and reenable the `user' theme. - (require-theme): Doc fix. - (custom-do-theme-reset, custom-remove-theme): Functions deleted. - (custom-theme-value, custom-theme-variable-value): Likewise. - (custom-theme-reset-internal): Likewise. - (custom-theme-load-themes): Fix bugs and use custom-disable-theme. - (custom-enable-theme, custom-disable-theme): New functions. - (custom-variable-theme-value, custom-face-theme-value): Likewise. - (custom-theme-recalc-variable, custom-theme-recalc-face): Likewise. - (custom-theme-reset-variables): Simplify. - (deftheme, custom-declare-theme, custom-make-theme-feature): - Definitions moved. + * net/tramp.el (tramp-wrong-passwd-regexp): Tune regexp. + (tramp-get-remote-tmpdir): New defun. + (tramp-make-tramp-temp-file): Use it. + (tramp-local-call-process): New defun. Replace all calls of + `call-process' by this when appropriate. + (tramp-handle-write-region): Replace calls of `file-attributes' by + `tramp-compat-file-attributes'. + (tramp-find-shell, tramp-open-connection-setup-interactive-shell): + Make the first command a `tramp-send-command' call, with let-bind + of `tramp-end-of-output'. + (tramp-version, tramp-bug, tramp-reporter-dump-variable) + (tramp-load-report-modules, tramp-append-tramp-buffers): + Move to tramp-cmds.el. -2005-07-10 Chong Yidong + * net/tramp-fish.el (tramp-fish-handle-copy-file) + (tramp-fish-do-copy-or-rename-file) + (tramp-fish-do-copy-or-rename-file-directly): + * net/tramp-smb.el (tramp-smb-handle-copy-file): + Add parameter PRESERVE-UID-GID. - * longlines.el (longlines-show-region) - (longlines-unshow-hard-newlines): Recognize hard newlines by - non-nil hard property, instead of t. +2007-10-27 Eli Zaretskii -2005-07-10 Michael Kifer + * time.el (zoneinfo-style-world-list, legacy-style-world-list): + New defcustoms. + (display-time-world-list): Use them as appropriate for the current + value of `system-type'. - * emulation/viper-cmd.el (viper--key-maps): New variable. - (viper-normalize-minor-mode-map-alist): Use viper--key-maps and - emulation-mode-map-alists. - (viper-envelop-ESC-key): Use viper-subseq. - (viper-search-forward/backward/next): Disable debug-on-error. +2007-10-26 Dan Nicolaescu - * emulation/viper-keym.el (viper-toggle-key, viper-quoted-insert-key) - (viper-ESC-key): New defcustoms. + * emulation/pc-select.el (next-line-mark, next-line-nomark) + (previous-line-mark, previous-line-nomark): Wrap with-no-warnings + around uses of previous-line and next-line. - * emulation/viper-macs.el (ex-map-read-args): Use viper-subseq. + * diff.el (diff-old-file, diff-new-file, diff-extra-args): + New defvars. - * emulation/viper-util.el (viper-key-to-emacs-key): Use viper-subseq. - (viper-subseq): Copy of subseq from cl.el. + * textmodes/css-mode.el (comment-continue): + * net/browse-url.el (url-handler-regexp): + * progmodes/idlw-help.el (idlwave-system-routines): + Pacify byte-compiler. - * emulation/viper.el (viper-go-away, viper-set-hooks): Use - emulation-mode-map-alists, advise self-insert-command, add-minor-mode. + * textmodes/fill.el (fill-nobreak-p): Replace obsolete alias + line-move-invisible-p with its former definition: invisible-p. + line-move-invisible-p was removed on 2007-08-29. - * emulation/viper-mous.el (viper-current-frame-saved): Use defvar. +2007-10-26 Juanma Barranquero - * emulation/viper-init.el: Get rid of -face in face names. + * files.el (kill-emacs-query-functions): Doc fix; + `save-buffers-kill-emacs' is no longer bound to a key. - * ediff-diff.el (ediff-extract-diffs, ediff-extract-diffs3): - Make it work with longlines mode. +2007-10-26 Richard Stallman - * ediff-mult.el (ediff-meta-mode-hook): New variable. + * isearch-multi.el (isearch-buffers-multi): New option. + (isearch-buffers-search-fun): Test it. - * ediff-ptch.el (ediff-file-name-sans-prefix): Quote regexp. + * progmodes/ps-mode.el (ps-mode-map): Delete C-c v binding. + Put ps-run-clear on C-c C-l. - * ediff-init.el: Get rid of -face in face names. + * newcomment.el (comment-styles): New style indent-or-triple. + (comment-style): Make that the default. + (comment-add defvar): Doc fix. + (comment-add): Delete arg EXTRA. + (comment-region-default): Open code call to comment-add. + Handle indent-or-triple style which uses `multi-char' for INDENT. -2005-07-10 Richard M. Stallman +2007-10-26 Juanma Barranquero - * emacs-lisp/edebug.el (edebug-enter): Call with-timeout-suspend - and with-timeout-unsuspend. + * eshell/em-unix.el (nil-blank-string): Doc fix. - * emacs-lisp/debug.el (debug): Call with-timeout-suspend - and with-timeout-unsuspend. +2007-10-26 John Wiegley - * emacs-lisp/timer.el (with-timeout-timers): New variable. - (with-timeout): Bind that variable to record timers. - (with-timeout-suspend, with-timeout-unsuspend): New functions. + * eshell/em-unix.el (eshell/diff): Before calling the `diff' + function, ensure that the third argument is turned into a nil if + the string is otherwise completely empty (either no characters, or + all tabs/spaces). This fixes a bug from a user who found himself + unable to customize `diff-switches' and still use Eshell's diff + command. - * emacs-lisp/debug.el (debug-help-follow): New function. - (debugger-mode-map): Use that instead of help-follow. - (debugger-setup-buffer): Use eval-buffer-list - to handle eval-buffer frames. +2007-10-26 Glenn Morris -2005-07-10 N. Raghavendra (tiny change) + * emacs-lisp/bytecomp.el (byte-compile-warnings): Autoload the + safe-local-variable property. - * timezone.el (timezone-parse-date): Change first regexp - so it will not mistakenly match dates with no time zone. +2007-10-26 Gwern Branwen (tiny change) -2005-07-10 Jeff Dwork (tiny change) + * net/browse-url.el (browse-url-browser-function): Delete grail. + (browse-url-grail): Function and variable deleted. + (browse-url-browser-function): Delete IXI Mosaic. + (browse-url-default-browser): Don't try IXI Mosaic. + (browse-url-iximosaic): Function deleted. + (browse-url-browser-function): Delete MMM. + (browse-url-default-browser): Don't try MMM. + (browse-url-mmm): Function deleted. - * facemenu.el (facemenu-read-color): Do case-insensitive matching. +2007-10-26 Drew Adams -2005-07-10 Luc Teirlinck + * custom.el (custom-note-var-changed): New function. - * custom.el (custom-initialize-safe-set) - (custom-initialize-safe-default): New functions. +2007-10-25 Dan Nicolaescu - * frame.el (blink-cursor-mode): Use `custom-initialize-safe-default' - and simplify :init-value. + * emulation/edt-mapper.el (edt-emacs-variant): Replace the only + use with the definition. Remove. - * tooltip.el (tooltip-mode): Use `custom-initialize-safe-default' - and simplify :init-value. Delete obsolete comment. + * add-log.el (change-log-start-entry-re): New defconst. + (change-log-sortable-date-at): Use it. + (change-log-beginning-of-defun, change-log-end-of-defun): + New functions. + (change-log-mode): Use them for beginning-of-defun-function and + end-of-defun-function. - * startup.el (command-line): Use `custom-reevaluate-setting' to - handle `tooltip-mode'. Delete obsolete comment. +2007-10-25 Jonathan Yavner - * files.el (set-visited-file-name): Avoid calling - `file-name-nondirectory' with a nil argument. + * ses.el: Make `ses--symbolic-formulas' a safe local variable. + (ses-mode-print-map): Add `c' and `t' (suggested by Gareth Rees). + (ses-recalculate-cell): Deal with point being just beyond end of + data area (why does this happen?) + (ses-set-curcell): Ditto. + (ses-column-letter): Handle columns beyond 702. Code written by + Gareth Rees. -2005-07-09 Richard M. Stallman +2007-10-25 Carsten Dominik - * emacs-lisp/debug.el (debugger-setup-buffer): When eval-buffer - was called with nil for the buffer, handle the read position right. - Handle read position for eval-region, too. + * textmodes/org.el (org-agenda-get-restriction-and-command): + Use `mapc' instead of `mapcar'. + (org-agenda-list): Numeric prefix argument can specify the number + of days. + (remember-register, remember-buffer): Prevent byte compiler from + complaining. + (org-todo): Save and restore match data. + (org-no-warnings): New macro. + (org-columns-eval): Use `org-no-warnings'. -2005-07-09 Juri Linkov +2007-10-25 Chris Moore - * fringe.el (fringe-mode): Add period in docstring. - (fringe-query-style): Build prompt depending on `all-frames' arg. + * comint.el (comint-password-prompt-regexp): + Handle `[sudo] password'-style prompt. - * dired.el (dired-marker-char): Avoid quotations for `do' and `mark' - to not create links to unrelated functions in the Help buffer. +2007-10-25 Glenn Morris - * progmodes/compile.el (compilation-mode-hook, compilation-mode): - Doc fix. + * custom.el (custom-declare-variable): Add :risky and :safe keywords. + (defcustom): Doc fix. + + * progmodes/f90.el (f90-keywords-re, f90-keywords-level-3-re): + Add `non_intrinsic'. + (f90-constants-re): Add ieee modules. + (f90-typedef-matcher, f90-typedec-matcher) + (f90-imenu-type-matcher): New functions. + (f90-font-lock-keywords-1): Give module procedures function-name face. + Use `f90-typedef-matcher' for derived types. Fix `abstract interface'. + Add `use, intrinsic'. + (f90-font-lock-keywords-2): Use `f90-typedec-matcher' for derived types. + Move start of `enum' blocks to separate entry. + (f90-start-block-re): Fix `type', `abstract interface'. + (f90-imenu-generic-expression): Use `f90-imenu-type-matcher' for + derived types. + (f90-mode-abbrev-table): Add `abstract interface', `asynchronous', + `elemental', change `enumerator'. + (f90-no-block-limit): Fix `abstract interface'. - * simple.el (next-error-hook): New variable. - (next-error): Use it. Doc fix. + * progmodes/f90.el (f90-indented-comment-re) + (f90-directive-comment-re, f90-break-delimiters): + * progmodes/fortran.el (fortran-comment-line-start-skip) + (fortran-directive-re): + * textmodes/conf-mode.el (conf-space-keywords): Mark these regexps + as safe if they are strings. - * textmodes/ispell.el (ispell-command-loop): Add current - dictionary name and program name to mode-line-format. - (ispell-region, ispell-process-line): Add current dictionary name - and program name to messages. +2007-10-25 Stefan Monnier -2005-07-08 Jay Belanger + * startup.el (window-system): Remove. Don't make it frame-local. - * calc/calc.el (calc-embedded-announce-formula-alist) - (calc-embedded-open-close-formula-alist) - (calc-embedded-open-close-word-alist) - (calc-embedded-open-close-plain-alist) - (calc-embedded-open-close-new-formula-alist) - (calc-embedded-open-close-mode-alist) - (calc-embedded-new-buffer-hook, calc-embedded-new-formula-hook) - (calc-embedded-mode-hook): New variables. +2007-10-24 Richard Stallman - * calc/calc-embed.el (calc-embedded-firsttime) - (calc-embedded-firsttime-buf, calc-embedded-firsttime-formula): - New variables. - (calc-do-embedded): Use calc-embedded-firsttime, - calc-embedded-firsttime-buf and calc-embedded-firsttime-formula to - determine whether or not to run hooks. - (calc-embedded-make-info): Set calc-embedded-firsttime-buf and - calc-embedded-firsttime-formula appropriately. - Set calc-embedded delimiter variables according to mode. + * savehist.el (savehist-save): Omit unreadable elements. -2005-07-08 Richard M. Stallman + * loadhist.el (unload-function-defs-list): Rename from + unload-function-features-list. + (unload-feature-special-hooks, unload-feature): Doc fixes. - * emacs-lisp/checkdoc.el (checkdoc-proper-noun-list): - Check for "emacs", etc., as entire symbol, not just as word. - (checkdoc-file-comments-engine): Use regexp-quote on FN. + * indent.el (indent-to-left-margin): If point's in the indentation, + move to the end of the indentation. - * files.el (set-visited-file-name): Report the error - for "empty filename" earlier. - (kill-some-buffers): Ignore buffers already dead. + * cus-edit.el (customize-changed-options): Make arg optional. - * fringe.el (fringe-mode): Doc fix. +2007-10-24 Juanma Barranquero - * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): - Check for (featurep 'xemacs) and turn off warnings in what it guards. - Use unwind-protect to ensure byte-compile-unresolved-functions - is updated. + * bs.el (bs-select, bs-select-other-window): Fix typos in docstrings. - * whitespace.el (whitespace-buffer-leading-cleanup): - Simplify w/ skip-chars-forward. - (whitespace-buffer-trailing-cleanup): Simplify w/ skip-chars-backward. +2007-10-24 Dan Nicolaescu - * mail/rmail.el (rmail-only-expunge): Fix paren error. - Unconditionally try to leave point at the same old place. + * textmodes/org-publish.el (org-publish-attachment): Re-install + accidentally deleted change. -2005-07-08 Ralf Angeli (tiny change) +2007-10-24 Stefan Monnier - * comint.el (comint-postoutput-scroll-to-bottom) - (comint-show-maximum-output): Take scroll-margin into consideration. + * term/iris-ansi.el (iris-function-map): Move init into declaration. -2005-07-08 Kim F. Storm +2007-10-24 Juanma Barranquero - * ido.el (ido-use-filename-at-point): New choice `guess'. - (ido-file-internal): Try ffap-guesser if selected. + * buff-menu.el (Buffer-menu-sort-column): Doc fix. + (Buffer-menu-mode-map): Initialize in the declaration. + (Buffer-menu-mode): Define with `define-derived-mode'. + +2007-10-24 Carsten Dominik + + * textmodes/org.el (org-version): Change to 5.13e. + (org-agenda-file-regexp): Fix typo in docstring. + (org-add-planning-info): Fix bug in parenthesis settings. + (org-scan-tags): Catch the case of indirect buffers with no filename. + (org-fast-tag-selection, org-export-as-ascii, org-export-as-html): + Re-install switch to mapc, had been removed by accident. + (org-columns-map): New binding `C-c C-o'. + (org-columns-menu): Change menu text and added new entry. + (org-columns-eval): Document the use of `next-line'. + (org-columns-open-link): New function. + (org-columns-follow-link): Remove function. + (org-open-link-from-string): New function. + (org-read-date-get-relative): Fix typo in docstring. + (org-read-date-get-relative): Leading +/- is not optional. + (org-agenda-get-restriction-and-command): Always resize window on + first loop cycle. + (org-agenda-open-link): Make sure the link abbreviations are + present in the agenda buffer. + (org-agenda-copy-local-variable): New function. + +2007-10-24 Stefan Monnier + + * vc.el (vc-update-changelog-rcs2log): Remove incorrect `backend' arg. + +2007-10-24 Stefan Monnier + + * simple.el (reindent-then-newline-and-indent): Use a `move after + insert' kind of marker in the save-excursion. - * ido.el (ido-before-fallback-functions): New hook. - (ido-buffer-internal, ido-file-internal, ido-read-buffer) - (ido-read-file-name): Run it. +2007-10-23 Stefan Monnier -2005-07-07 Stefan Monnier + * textmodes/css-mode.el: Require CL. + (comment-continue): Declare. - * progmodes/hideif.el (hide-ifdef-use-define-alist): Pass a list of - strings rather than a list of symbols to the completion function. + * subr.el (make-variable-frame-localizable): Remove. + (make-variable-frame-local): Mark obsolete. -2005-07-07 Jay Belanger +2007-10-23 Stefan Monnier - * calc/calc-units.el (math-apply-units): Change the places in - which units are simplified. + * textmodes/tex-mode.el (tex-uptodate-p): Don't signal an error if one + of the subdirs is unreadable. -2005-07-07 Luc Teirlinck +2007-10-23 Michael Albinus - * cus-edit.el (customize-option, customize-option-other-window): - Make them handle aliases. + * net/tramp.el (tramp-set-file-uid-gid): Protect `call-process' + when we are local. - * custom.el (custom-variable-p): Make it recursively follow - aliases. Mention that in the docstring. +2007-10-23 Stefan Monnier -2005-07-07 Richard M. Stallman + * progmodes/python.el (python-current-defun): Remove left-over + assignment to `start'. - * cus-start.el (exec-path): Use `directory' instead of `file'. - Fix tag for nil. +2007-10-23 Juanma Barranquero -2005-07-07 Juanma Barranquero + * ibuf-ext.el (ibuffer-auto-update-changed): Use `dolist' rather + than `mapcar'; return value is not used. - * replace.el (occur-rename-buffer): Use `generate-new-buffer' also - when called non-interactively. Doc fix. +2007-10-23 Dan Nicolaescu -2005-07-07 Lute Kamstra + * progmodes/gud.el (gdb-source-window, gud-tooltip-mode) + (hl-line-mode, hl-line-sticky-flag): Pacify byte compiler. - * elide-head.el (elide-head-headers-to-hide): Recognize the FSF's - new address as well. +2007-10-23 Juanma Barranquero -2005-07-07 Kenichi Handa + * ibuf-ext.el (ibuffer-switch-to-saved-filters) + (ibuffer-switch-to-saved-filter-groups): Doc fixes. - * international/mule.el (make-coding-system): - Describe `ascii-incompatible' property in the docstring. - (set-file-name-coding-system): Signal an error if coding-system is - ascii-incompatible. - (set-keyboard-coding-system): Likewise. +2007-10-23 Dan Nicolaescu - * international/mule-cmds.el (set-default-coding-systems): - Don't set default-file-name-coding-system and - default-keyboard-coding-system if coding-system is ASCII-incompatible. + * term/xterm.el (terminal-init-xterm): Experiment with a longer timeout. - * international/utf-16.el: Declare that all UTF-16-based coding - systems are ASCII-incompatible. +2007-10-23 Katsumi Yamaoka -2005-07-07 Nick Roberts + * emacs-lisp/advice.el (ad-make-advised-docstring): + Add ad-advice-info text property to doc string. - * progmodes/gud.el: Require font-lock for displaying errors. - Used by gdb-ui.el. +2007-10-23 Glenn Morris -2005-07-07 Juanma Barranquero + * progmodes/f90.el (f90-do-indent, f90-if-indent) + (f90-type-indent, f90-program-indent, f90-associate-indent) + (f90-continuation-indent, f90-comment-region) + (f90-beginning-ampersand, f90-smart-end) + (f90-break-before-delimiters, f90-auto-keyword-case) + (f90-leave-line-no, f90-mode-hook): + Give an appropriate safe-local-variable property. - * hi-lock.el (hi-lock-find-patterns): Protect also against invalid - values for the pattern lists which are `read'able but not - `append'able (like symbols). + * progmodes/fortran.el (fortran-tab-mode-default) + (fortran-tab-mode-string, fortran-do-indent, fortran-if-indent) + (fortran-structure-indent, fortran-continuation-indent) + (fortran-comment-indent, fortran-comment-line-extra-indent) + (fortran-comment-line-start) + (fortran-minimum-statement-indent-fixed) + (fortran-minimum-statement-indent-tab) + (fortran-comment-indent-char, fortran-line-number-indent) + (fortran-check-all-num-for-matching-do) + (fortran-blink-matching-if, fortran-continuation-string) + (fortran-comment-region, fortran-electric-line-number) + (fortran-column-ruler-fixed, fortran-column-ruler-tab) + (fortran-analyze-depth, fortran-break-before-delimiters): + Give an appropriate safe-local-variable property. -2005-07-06 Richard M. Stallman +2007-10-23 Dan Nicolaescu - * progmodes/flymake.el (flymake-float-time): Instead of - with-no-warnings, test for XEmacs. - (flymake-replace-regexp-in-string): Test fboundp of replace-in-string - to avoid warning. + * printing.el: Move variable definitions before use. + (pr-menu-char-width, pr-menu-char-height): Pacify byte compiler. -2005-07-06 Juanma Barranquero +2007-10-22 Stefan Monnier - * w32-vars.el (w32-fixed-font-alist): Fix typo in `defcustom' tag. + * emulation/tpu-edt.el (tpu-edt-old-global-values): New var. + (tpu-edt-off): Use it. + (tpu-edt-on): Set it. Make sure the tpu-global-map is not already on + the global-map before adding it to global-map. -2005-07-05 Lute Kamstra + * menu-bar.el (global-buffers-menu-map): New var. + (global-map, menu-bar-update-buffers): Use it. + * msb.el (msb-menu-bar-update-buffers): Use it. + (msb-sort-by-directory, msb--choose-menu, msb--mode-menu-cond) + (msb--most-recently-used-menu, msb--create-buffer-menu-2): + Use with-current-buffer. - * battery.el: Add support for Darwin (with much debugging help - from Samuel Lauber ). - (battery-status-function, battery-echo-area-format) - (battery-mode-line-format): Add support for pmset on Darwin. - (battery-load-low, battery-load-critical): New user options. - (battery-pmset): New function. +2007-10-22 Juri Linkov -2005-07-05 Lute Kamstra + * isearch-multi.el: New file. - Update FSF's address in GPL notices. + * isearch.el (isearch-search-string): After finding the next + occurrence switch to buffer isearch-buffers-current-buffer when + isearch-buffers-next-buffer-function is non-nil and + isearch-buffers-current-buffer is live. - * textmodes/page-ext.el: Update FSF's address. + * add-log.el (change-log-mode): Make and set buffer-local variable + isearch-buffers-next-buffer-function to change-log-next-buffer. + Call isearch-buffers-minor-mode. + (change-log-next-buffer): New function. -2005-07-04 Stefan Monnier +2007-10-22 Bastien Guerry - * emacs-lisp/lisp-mode.el (lisp-mode-variables): Prevent adaptive - filling from using prefix when filling a single-line docstring. + * textmodes/org-export-latex.el (org-export-latex-protect-string): + Renaming of `org-latex-protect'. + (org-export-latex-emphasis-alist): By default, don't protect + any emphasis formatter from further conversion. + (org-export-latex-tables): Honor column grouping for tables. + (org-export-latex-title-command): New option. + (org-export-latex-treat-backslash-char): Use \textbackslash{} to + export backslash character. - * progmodes/flymake.el: Remove useless eval-when-compile. +2007-10-22 Carsten Dominik - * arc-mode.el (archive-lzh-ogm): Reorder save excursion/restriction. + * textmodes/org.el (org-read-date-get-relative): New function. + (org-agenda-file-regexp): New variable. + (org-agenda-files): Allow directories in the variable. + (org-agenda-get-restriction-and-command): New function. + (org-agenda): Use `org-agenda-get-restriction-and-command'. + (org-todo-blocker-hook, org-todo-trigger-hook): New hooks. + (org-entry-is-todo-p, org-entry-is-done-p, org-get-todo-state): + New functions. + (org-entry-add-to-multivalued-property) + (org-entry-remove-from-multivalued-property) + (org-entry-member-in-multivalued-property): New functions. + (org-remember-apply-template): Catch C-g and make sure window + configuration is restored. + (org-agenda-open-link): Make it work with several links in the line. + (org-drawers, org-set-regexps-and-options) + (org-get-current-options): Add support for a DRAWERS in-buffer option. + (org-agenda-window-frame-fractions): New option. + (org-fit-agenda-window): Use `org-agenda-window-frame-fractions'. + (org-columns-cleanup-item, org-find-entry-with-id) + (org-insert-columns-dblock, org-listtable-to-string) + (org-dblock-write:columnview, org-columns-capture-view) + (org-edit-headline): New functions. + (org-agenda-to-appt): Require calendar. + (org-entry-get-with-inheritance): Widen for search. + (org-columns-display-here): Don't mark buffer as modified when + adding space characters to accomodate column overlays. + (org-export-as-html): Better formatting of tags in the toc. + (org-columns-display-here): Make the ITEM column as compact as possible. + (org-remember-templates): Customization interface improved. + (org-export-with-property-drawer): Variable removed. + (org-export-with-drawers): New option. + (org-complex-heading-regexp): New variable. + (org-sort-entries): Rewrite using `sort-subr'. + (org-set-property): More appropriate completion during interactive use. + (org-sort-entries): Allow sorting by property. + (org-additional-option-like-keywords): Add more values. + (org-sort-entries-or-items): Rename from `org-sort-entries'. + +2007-10-22 Carsten Dominik + + * textmodes/org.el (org-get-date-from-calendar): New function. + (org-at-timestamp-p, org-timestamp-change) + (org-remember-templates): First element of each entry is now a + name for the template. + (org-store-log-note): Check for `org-note-abort'. + (org-kill-note-or-show-branches): New command. + (org-fontify-priorities): New option. + (org-fontify-priorities): New function. + (org-cut-subtree, org-copy-subtree): New argument N to + act on N sequential subtrees. + (org-paste-subtree): Fix the level at which a tree is pasted. + (org-fit-agenda-window): Limitations on window size removed. + (org-agenda-find-same-or-today-or-agenda): Rename from + `org-agenda-find-today-or-agenda'. + (org-scheduled-past-days): New option. + (org-agenda-scheduled-leaders) + (org-agenda-deadline-leaders): New options. + (org-agenda-get-deadlines): Use `org-agenda-deadline-leaders'. + (org-agenda-get-scheduled): Use `org-agenda-scheduled-leaders'. + (org-export-with-tags, org-export-plist-vars) + (org-infile-export-plist): New "tags" option. + (org-use-property-inheritance): New option. + (org-cached-entry-get): Use `org-use-property-inheritance'. + (org-remember-apply-template): Fix typo. + +2007-10-22 Michael Albinus + + * net/tramp.el (tramp-find-shell) + (tramp-open-connection-setup-interactive-shell): Improve sending + initial commands. + (tramp-action-terminal): Send debug message. + (tramp-wait-for-shell-prompt, tramp-send-command-internal): Remove. + (tramp-barf-if-no-shell-prompt): Insert code of + `tramp-wait-for-shell-prompt'. -2005-07-04 Richard M. Stallman +2007-10-22 Stefan Monnier - * textmodes/org.el (org-file-apps-defaults-gnu): - Rename from org-file-apps-defaults-linux. - (org-default-apps): Don't test system-type for `linux'. - (org-file-apps): Doc fix. - -2005-07-04 David Ponce - - * tree-widget.el: Improve header Commentary section. - (tree-widget) [defgroup] - (tree-widget-image-enable, tree-widget-themes-directory) - (tree-widget-theme, tree-widget-image-properties-emacs) - (tree-widget-image-properties-xemacs, tree-widget-create-image) - (tree-widget-image-formats, tree-widget-control) - (tree-widget-empty-control, tree-widget-leaf-control - (tree-widget-guide, tree-widget-end-guide, tree-widget-no-guide) - (tree-widget-handle, tree-widget-no-handle, tree-widget-p) - (tree-widget-keep, tree-widget-after-toggle-functions) - (tree-widget-open-node, tree-widget-close-node): Doc fix. - (tree-widget-open-control, tree-widget-close-control): Fix doc and - :help-echo message. - (tree-widget-set-theme): Doc fix. Use `string-equal'. - (tree-widget-image-properties): Doc fix. Clearer implementation. - (tree-widget--cursors): New constant. - (tree-widget-lookup-image): New function split from - `tree-widget-find-image'. Clearer implementation. - (tree-widget-find-image): Use it. - (tree-widget-button-keymap): Use `set-keymap-parent'. - (tree-widget) [define-widget]: Use `widget-children-value-delete'. - Define the sub-widgets here. - (tree-widget-node): Check that :node is not a tree-widget. - (tree-widget-get-super, tree-widget-open-control) - (tree-widget-close-control, tree-widget-empty-control) - (tree-widget-leaf-control, tree-widget-guide) - (tree-widget-end-guide, tree-widget-no-guide, tree-widget-handle) - (tree-widget-no-handle, tree-widget-value-delete) - (tree-widget-map): Remove. - (tree-widget-children-value-save): Doc fix. Simplified. - (tree-widget-value-create): Update according to previous changes. - -2005-07-04 Carsten Dominik - - * textmodes/org.el: Leading space replaced by TABS. - (org-recalc-marks, org-table-rotate-recalc-marks) - (org-table-get-specials): Treat "^" and "_" marks. - (org-table-justify-field-maybe): Optional argument NEW. - (org-table-eval-formula): Parsing of the format simplified. - New modes C,I. Honor the %= parameter in the current table. - Avoid unnecessary re-align by using the NEW argument to - `org-table-justify-field-maybe'. - (org-calc-default-modes): Default for date-format mimicks org-mode. - (org-agenda, org-timeline): Quote argument in org-agenda-redo-command. - -2005-07-03 Luc Teirlinck - - * cus-face.el (custom-theme-set-faces): Make it handle face - aliases whose alias declarations are pre- or autoloaded. - -2005-07-04 Juri Linkov - - * faces.el (read-face-name): Put the code for getting a face name - from the buffer before adding the faces from the `face' property. - Use `completing-read-multiple' instead of `completing-read'. - Require `crm'. Add default value and post-process the returned - list of faces. - - * emacs-lisp/crm.el (crm-find-current-element) - (crm-minibuffer-complete-and-exit): Handle minibuffer prompt. - - * emacs-lisp/lisp-mode.el (eval-defun-1): - * emacs-lisp/edebug.el (edebug-eval-defun): - Remove unnecessary quotes. - -2005-07-04 Juanma Barranquero - - * progmodes/prolog.el (prolog-eof-string): Doc fixes. - (prolog-indent-level): Fix typo in docstring. - - * info.el (Info-history, Info-history-forward) - (Info-history-list, Info-speedbar-fetch-file-nodes): Doc fixes. - - * add-log.el (add-change-log-entry): - * comint.el (comint-dynamic-list-input-ring) - (comint-dynamic-list-completions): - * dabbrev.el (dabbrev-expand): - * delim-col.el (delimit-columns-rectangle-line): - * diff-mode.el (diff-context->unified, diff-reverse-direction) - (diff-unified->context): - * ediff-init.el (ediff-abbrev-jobname): - * ediff-mult.el (ediff-replace-session-status-in-meta-buffer) - (ediff-replace-session-activity-marker-in-meta-buffer): - * info.el (Info-summary): - * lpr.el (printify-region): - * printing.el (pr-create-interface): - * ps-print.el (ps-print-quote): - * ses.el (ses-column-widths, ses-print-cell) - (ses-adjust-print-width, ses-center): - * shell.el (shell-file-name-quote-list): - * strokes.el (strokes-read-stroke, strokes-read-complex-stroke) - (strokes-fill-current-buffer-with-whitespace) - (strokes-xpm-for-stroke, strokes-list-strokes) - (strokes-xpm-char-bit-p, strokes-xpm-for-compressed-string): - * term.el (term-dynamic-list-input-ring) - (term-dynamic-list-completions): - * calc/calc.el (math-format-stack-value): - * emacs-lisp/edebug.el (edebug-display-freq-count): - * progmodes/delphi.el (delphi-indent-line, delphi-fill-comment) - (delphi-new-comment-line): - * progmodes/ebnf2ps.el (ebnf-eps-filename, ebnf-trim-right): - * progmodes/executable.el (executable-set-magic): - * progmodes/python.el (inferior-python-mode): - * progmodes/scheme.el (scheme-mode-syntax-table): - * progmodes/sh-script.el (sh-maybe-here-document): - * progmodes/sql.el (sql-copy-column): - * progmodes/tcl.el (tcl-comment-indent, tcl-quote): - * textmodes/bibtex.el (bibtex-mode): - * textmodes/sgml-mode.el (html-imenu-index, sgml-attributes) - (sgml-auto-attributes): - * textmodes/table.el (table-insert, table-shorten-cell) - (table--generate-source-scan-lines, table-delete-row) - (*table--cell-delete-char, table--spacify-frame) - (table--horizontally-shift-above-and-below) - (table--cell-insert-char, table--cell-blank-str) - (table--fill-region-strictly): - * textmodes/tex-mode.el (tex-insert-quote, latex-find-indent): - * textmodes/texinfo.el (texinfo-insert-quote): "?\ " -> "?\s". - - * add-log.el (change-log): - * apropos.el (apropos): - * comint.el (comint-completion, comint-source): - * dabbrev.el (dabbrev): - * delim-col.el (columns): - * diff-mode.el (diff-mode): - * ediff.el (ediff): - * ediff-diff.el (ediff-diff): - * ediff-init.el (ediff-highlighting, ediff-merge, ediff-hook): - * ediff-mult.el (ediff-mult): - * ediff-ptch.el (ediff-ptch): - * ediff-wind.el (ediff-window): - * facemenu.el (facemenu): - * indent.el (indent): - * info.el (info): - * jka-cmpr-hook.el (compression, jka-compr): - * lpr.el (lpr): - * outline.el (outlines): - * pcmpl-cvs.el (pcmpl-cvs): - * pcmpl-rpm.el (pcmpl-rpm): - * printing.el (printing): - * ps-print.el (postscript, ps-print, ps-print-horizontal) - (ps-print-vertical, ps-print-headers, ps-print-font) - (ps-print-color, ps-print-face, ps-print-n-up, ps-print-zebra) - (ps-print-background, ps-print-printer, ps-print-page) - (ps-print-miscellany): - * ses.el (ses): - * shell.el (shell, shell-directories, shell-faces): - * startup.el (initialization): - * strokes.el (strokes): - * term.el (term): - * uniquify.el (uniquify): - * w32-vars.el (w32): - * calc/calc.el (calc): - * emacs-lisp/bytecomp.el (bytecomp): - * emacs-lisp/cl-indent.el (lisp-indent): - * emacs-lisp/edebug.el (edebug): - * emacs-lisp/elp.el (elp): - * emacs-lisp/testcover.el (testcover): - * emacs-lisp/trace.el (trace): - * emulation/viper-ex.el (viper-ex): - * emulation/viper-mous.el (viper-mouse): - * mail/mailalias.el (mailalias): - * mail/supercite.el (supercite, supercite-frames) - (supercite-attr, supercite-cite, supercite-hooks): - * net/rcompile.el (remote-compile): - * net/rlogin.el (rlogin): - * obsolete/ooutline.el (outlines): - * progmodes/delphi.el (delphi): - * progmodes/ebnf2ps.el (postscript, ebnf2ps, ebnf-special) - (ebnf-except, ebnf-repeat, ebnf-terminal, ebnf-non-terminal) - (ebnf-production, ebnf-shape, ebnf-displacement, ebnf-syntactic) - (ebnf-optimization): - * progmodes/etags.el (etags): - * progmodes/executable.el (executable): - * progmodes/idlwave.el (idlwave): - * progmodes/pascal.el (pascal): - * progmodes/prolog.el (prolog): - * progmodes/python.el (python): - * progmodes/scheme.el (scheme): - * progmodes/sh-script.el (sh, sh-script): - * progmodes/sql.el (SQL): - * progmodes/tcl.el (tcl): - * textmodes/bibtex.el (bibtex, bibtex-autokey): - * textmodes/enriched.el (enriched): - * textmodes/makeinfo.el (makeinfo): - * textmodes/sgml-mode.el (sgml): - * textmodes/table.el (table-hooks): - * textmodes/tex-mode.el (tex-file, tex-run, tex-view): - * textmodes/texinfo.el (texinfo): - * textmodes/two-column.el (two-column): - Finish `defgroup' description with period. - - * emacs-lisp/cl-indent.el (lisp-indent-maximum-backtracking): - * eshell/esh-var.el (eshell-var): - * progmodes/vhdl-mode.el (vhdl-testbench): - * textmodes/org.el (org): Fix typos in docstrings. - - * emacs-lisp/timer.el (with-timeout): Improve argument/docstring - consistency. - - * progmodes/flymake.el (flymake-find-file): Remove. - (flymake-float-time): Use `with-no-warnings'. - (flymake-check-start-time, flymake-check-was-interrupted) - (flymake-err-info, flymake-is-running, flymake-last-change-time) - (flymake-new-err-info): `defvar' at compile time. - -2005-07-03 Juanma Barranquero - - * replace.el (occur-hook): Doc fix. - (occur-1): Don't call `occur-hook' if there are no matches. - -2005-07-03 Richard M. Stallman - - * emulation/tpu-edt.el (tpu-original-global-map): Don't copy - global-map, save the same map. - (global-map): Don't alter it at top level. - (tpu-edt-on): Save global map in tpu-original-global-map, then copy. - Then alter it here instead. - (tpu-edt-off): Set global-map to the saved one. - - * emulation/tpu-edt.el (tpu-emacs19-p): Var deleted. - All references simplified. - (tpu-lucid-emacs-p): Rename from tpu-lucid-emacs19-p. Uses changed. - (zmacs-regions): Add defvar. - (repeat-complex-command-map): Everything about that deleted. - - * textmodes/artist.el (artist-key-is-drawing) - (artist-key-endpoint1, artist-key-poly-point-list) - (artist-key-shape, artist-key-draw-how, artist-popup-menu-table) - (artist-key-compl-table, artist-rb-save-data) - (artist-arrow-point-1, artist-arrow-point-2): Move defvars up. - Don't put them in eval-when-compile. - (artist-set-arrow-points-for-poly): Use `last', not `artist-last'. - - * progmodes/ebrowse.el (ebrowse-revert-tree-buffer-from-file): - Use with-no-warnings. + * term/AT386.el (terminal-init-AT386): Use input-decode-map. - * net/browse-url.el (dos-windows-version): Add defvar. + * term/vt200.el (terminal-init-vt200): + * term/vt201.el (terminal-init-vt201): + * term/vt220.el (terminal-init-vt220): + * term/vt240.el (terminal-init-vt240): + * term/vt300.el (terminal-init-vt300): + * term/vt320.el (terminal-init-vt320): + * term/vt400.el (terminal-init-vt400): + * term/vt420.el (terminal-init-vt420): Use input-decode-map. - * mail/supercite.el (filladapt-prefix-table): Add defvar. + * term/wyse50.el (wyse50-terminal-map): New var. + (terminal-init-wyse50): Use it and input-decode-map. + (enable-arrow-keys): Emasculate. - * mail/rmailsum.el (rmail-summary-redo): Add defvar. - (rmail-summary-mode-map, rmail-summary-overlay): Defvars moved up. - (rmail-new-summary-line-count): Rename from new-summary-line-count. - Add defvar. - (rmail-summary-beginning-of-message): Use with-no-warnings. - (rmail-summary-first-message, rmail-summary-last-message): Likewise. + * term/tvi970.el (tvi970-terminal-map): New var. + (terminal-init-tvi970): Use it and input-decode-map. + (tvi970-keypad-numeric): Remove. + (tvi970-set-keypad-mode): Use a terminal-parameter rather than var. - * emulation/vip.el (vip-replace-string, ex-map, ex-read): - Use with-no-warnings. + * term/sun.el (sun-raw-prefix): Fill as part of declaration. + (terminal-init-sun): Use it and input-decode-map. - * emulation/vi.el (vi-mark-region): Use c-mark-function. - (c-mark-function): Add point-moving-unit property. - (vi-goto-line): Use with-no-warnings. + * term/news.el (terminal-init-news): + * term/lk201.el (terminal-init-lk201): + * term/iris-ansi.el (terminal-init-iris-ansi): Use input-decode-map. + +2007-10-22 Sean O'Rourke + + * complete.el (PC-expand-many-files): Remove. + (PC-do-completion): Call file-expand-wildcards instead of + PC-expand-many-files. + + * net/tramp.el (tramp-handle-expand-many-files): Remove. + (PC-expand-many-files): Remove advice. + +2007-10-22 Glenn Morris + + * progmodes/f90.el: Remove leading "*" from defcustom doc-strings. + Add some support for Fortran 2003 syntax: + (f90-type-indent): Now also applies to `enum'. + (f90-associate-indent): New user option. + (f90-keywords-re, f90-keywords-level-3-re, f90-procedures-re): + Add some F2003 keywords. + (f90-constants-re): New constant. + (f90-font-lock-keywords-1): Add `associate' blocks, and `abstract + Interface'. + (f90-font-lock-keywords-2): Add `enumerator', `generic', `procedure', + `class'. Arguments for `type'/`class' may have spaces. Add a new + element for functions with specified types. Add `end enum' and + `select type'. Add `implicit enumerator' and `procedure'. + Add `class default' and `type is', `class is'. Fix `go to' regexp. + (f90-font-lock-keywords-3): Add `asynchronous' attribute. + (f90-font-lock-keywords-4): Add `f90-constants-re'. + (f90-blocks-re): Add `enum' and `associate'. + (f90-else-like-re): Add `class is', `type is', and `class default'. + (f90-end-type-re): Add `enum'. + (f90-end-associate-re, f90-typeis-re): New constants. + (f90-end-block-re): Add `enum' and `associate'. Change from + optional whitespace to end-of-word, to avoid `enumerator'. + (f90-start-block-re): Add `select type', `abstract interface', and + `enum'. Avoid `type is', and `type (sometype)'. + (f90-mode-abbrev-table): Add `enumerator', `protected', and `volatile'. + (f90-mode): Doc fix. + (f90-looking-at-select-case): Doc fix. Add `select type'. + (f90-looking-at-associate): New function. + (f90-looking-at-type-like): Avoid `type is' and `type (sometype)'. + Add `enum' and `abstract interface'. + (f90-no-block-limit): Add `select type' and `abstract interface'. + (f90-get-correct-indent, f90-calculate-indent) + (f90-end-of-block, f90-beginning-of-block, f90-next-block) + (f90-indent-region, f90-match-end): Handle `associate' blocks. - * emulation/edt.el (edt-last-copied-word): Add defvar. - (zmacs-region-stays): Likewise. - (edt-mark-section-wisely): Use c-mark-function for C. - Use makr-defun for Fortran. - (time-string): defvar deleted. - (edt-display-the-time): Don't set time-string. +2007-10-22 Martin Rudalics - * emacs-lisp/macroexp.el (macroexp-accumulate): Rename arg to var+list. + * progmodes/fortran.el (fortran-mode-map, fortran-window-create): + Use window-full-width-p. - * emacs-lisp/bytecomp.el (byte-compile-nogroup-warn): - Don't warn when name is not constant - or for defining the group `emacs'. +2007-10-22 Dan Nicolaescu - * tooltip.el (gud-tooltip-mode): Add defvar. + * mail/vms-pmail.el (insert-signature): Don't use end-of-buffer. - * startup.el (default-frame-background-mode): Add defvar. + * tooltip.el: Use featurep 'xemacs. - * smerge-mode.el (smerge-mode): Add duplicate defvar near top. + * printing.el: Move variable definitions before use, no code change. - * info.el (tool-bar-map): Add defvar. +2007-10-22 Juri Linkov - * dired.el (dnd-protocol-alist): Add defvar. + * simple.el (goto-history-element): Allow minibuffer-default to be + a list of default values accessible by typing M-n in the minibuffer. - * dired-aux.el (dired-query): Display question with answer, when - the user answers. + * dired-x.el (dired-guess-shell-command): Put all guesses to the + minibuffer default value list instead of pushing them temporarily + to the history list. - * custom.el (custom-add-option): Doc fix. +2007-10-21 Dan Nicolaescu - * bookmark.el (Info-current-node, Info-suffix-list): Add defvars. + * hexl.el (hexl-menu): New major mode menu. -2005-07-03 Eli Zaretskii +2007-10-21 Stefan Monnier - * font-lock.el (font-lock-regexp-grouping-construct): Fix the - bogus name from the last change. + * emacs-lisp/byte-opt.el (byte-optimize-featurep): Fix paren typo. -2005-07-02 Luc Teirlinck +2007-10-21 Dan Nicolaescu - * custom.el (custom-declare-variable): Fix typos in comment. - (custom-known-themes): Doc fix. - (custom-theme-directory): New defcustom. - (require-theme): Make it check `custom-theme-directory'. + * w32-fns.el (w32-quote-process-args): + * dos-w32.el (print-region-function, lpr-headers-switches) + (ps-print-region-function): Pacify byte-compiler. + + * emulation/edt-mapper.el (function-key-map): + (edt-map-key): Make it a function instead of using fset. + Inline edt-gnu-map-key and edt-lucid-map-key. Use featurep 'xemacs. + (edt-gnu-map-key, edt-lucid-map-key): Remove. + (edt-x-emacs-p): Remove. + (edt-emacs-variant, edt-window-system, edt-xserver): + Use featurep 'xemacs. + + * net/eudc.el: Use (featurep 'xemacs) instead of the string test. + Replace eudc-xemacs-p with its definition. + (eudc-xemacs-p, eudc-emacs-p, eudc-xemacs-mule-p) + (eudc-emacs-mule-p): Remove. + (eudc-install-menu, eudc-mode): Replace eudc-emacs-p and + eudc-xemacs-p with feature tests. + + * net/eudc-bob.el (eudc-bob-generic-menu, eudc-bob-mail-keymap) + (eudc-bob-url-keymap, eudc-bob-sound-keymap) + (eudc-bob-generic-keymap, eudc-bob-popup-menu) + (eudc-bob-toggle-inline-display): + * net/eudc-hotlist.el (eudc-hotlist-emacs-menu): + Replace eudc-emacs-p and eudc-xemacs-p with feature tests. - * cus-theme.el (custom-new-theme-mode): New function. - (custom-theme-name, custom-theme-variables, custom-theme-faces) - (custom-theme-description): Add compiler defvars. - (customize-create-theme): Add doc to the "*New Custom Theme*" - buffer. Use `custom-new-theme-mode'. - (custom-theme-write): Put the created buffer in emacs-lisp-mode - and save it to the `custom-theme-directory'. Make this the - default directory of the buffer. + * net/eudcb-ph.el (eudc-ph-open-session): + Replace eudc-xemacs-mule-p with its former definition. + + * progmodes/octave-mod.el (octave-xemacs-p): Remove. + (octave-abbrev-start): Replace octave-xemacs-p with (featurep 'xemacs). + + * progmodes/vera-mode.el (vera-xemacs): Remove. + (vera-mode-syntax-table): Replace vera-xemacs with (featurep 'xemacs). + + * progmodes/vhdl-mode.el (vhdl-xemacs): Remove. + (vhdl-doc-mode, vhdl-doc-variable, vhdl-compile-init) + (vhdl-speedbar-initialize, vhdl-ps-print-init) + (vhdl-forward-comment, vhdl-mode-map-init, vhdl-show-messages) + (vhdl-emacs-22, vhdl-emacs-21): Replace vhdl-xemacs + with (featurep 'xemacs). + + * progmodes/antlr-mode.el (cond-emacs-xemacs-macfn, defunx) + (save-buffer-state-x): + * obsolete/fast-lock.el (fast-lock-verbose): + * emulation/viper-init.el (viper-xemacs-p) + (viper-cond-compile-for-xemacs-or-emacs): + * emacs-lisp/checkdoc.el (checkdoc-minor-mode-map): + * ps-print.el (case-fold-search): + * ediff-hook.el (ediff-cond-compile-for-xemacs-or-emacs): + * calculator.el (calculator-help): Use featurep 'xemacs. + + * progmodes/prolog.el: Undo previous change. + (comint-prompt-regexp, comint-process-echoes): Pacify byte-compiler. + + * progmodes/dcl-mode.el: + * play/yow.el: + * calendar/todo-mode.el: + * calendar/cal-hebrew.el: + * vc-hg.el: Undo previous change. + + * vms-patch.el: Likewise. + (print-region-function): Pacify byte-compiler. + +2007-10-21 Michael Albinus + + * files.el (backup-buffer-copy): Call `copy-file' with non-nil + preserve-uid-gid. + + * net/ange-ftp.el (ange-ftp-copy-file): Add PRESERVE-UID-GID for + compatibility. It is not used, though. + + * net/tramp.el (top): Put load of all tramp-* files into a dolist. + Require tramp-cmds.el. + (tramp-make-tramp-temp-file): We can get rid of DONT-CREATE. + (tramp-handle-file-name-all-completions): Expand DIRECTORY. + (tramp-do-copy-or-rename-file-directly): Make more rigid checks. + (tramp-do-copy-or-rename-file-out-of-band) + (tramp-maybe-open-connection): Use `make-temp-name'. This is + possible, because we don't need to create the temporary file, but + we need a prefix for ssh, which has its own temporary file handling. + (tramp-handle-delete-directory): Add "-f" to rmdir. + (tramp-handle-dired-recursive-delete-directory): Call "rm -rf". + (tramp-handle-insert-file-contents): Don't raise a tramp-error but + a signal, in order to give the callee a chance to suppress. + (tramp-handle-write-region): Set owner also in case of short + track. Don't use compatibility calls for `write-region' anymore. + (tramp-clear-passwd): Add parameter VEC. Adapt all callees. + (tramp-append-tramp-buffers): Apply `tramp-list-tramp-buffers'. + + * net/tramp-cmds.el: New file. + + * net/tramp-gw.el (tramp-gw-basic-authentication): Apply VEC to + `tramp-clear-passwd'. -2005-07-02 David Hunter (tiny change) + * net/trampver.el: Update release number. - * progmodes/flymake.el (flymake-mode, flymake-mode-off): - Fix unbalanced parentheses. +2007-10-21 Dan Nicolaescu -2005-07-02 Stefan Monnier + * progmodes/gud.el (gud-target-name): Move definition before use. - * progmodes/flymake.el (flymake-mode-on, flymake-mode-off): Move body - into flymake-mode and delegate to flymake-mode. + * progmodes/dcl-mode.el: Require imenu at compile time. - * find-file.el (ff-which-function-are-we-in): Clean up. + * progmodes/cc-engine.el (c-maybe-stale-found-type): + Pacify byte-compiler. -2005-07-02 Juanma Barranquero + * obsolete/fast-lock.el: Use featurep test instead of string-match. - * replace.el (occur-rename-buffer): Fix docstring. + * eshell/esh-mode.el (eshell-handle-ansi-color): + Require ansi-color at compile time too. - * emulation/edt.el (*EDT-keys*, edt-default-global-map) - (edt-last-copied-word, edt-learn-macro-count) - (edt-orig-page-delimiter, edt-orig-transient-mark-mode) - (edt-rect-start-point, edt-user-global-map, rect-start-point) - (time-string, zmacs-region-stays): - * emulation/edt-mapper.el (edt-save-function-key-map) - (EDT-key-name): `defvar' to silence the byte-compiler. + * eshell/em-unix.el (eshell/info): Require info at compile time too. -2005-07-02 Martin Rudalics + * w32-fns.el: Require w32-vars. - * font-lock.el (font-lock-regexp-grouping-backslash): Rename from - font-lock-regexp-backslash. Doc fix. - (font-lock-regexp-backslash-grouping-construct): Rename from - font-lock-regexp-backslash-construct. Doc fix. - (lisp-font-lock-keywords-2): Fix highlighting of Elisp regexp - grouping constructs. + * diff-mode.el (diff-refine-hunk): Require smerge-mode at compile + time too. -2005-07-02 Eli Zaretskii +2007-10-21 Stefan Monnier - * makefile.w32-in (bootstrap): Remove the $(EMACS) binary after - updating all the prerequisites. + * double.el ([ignore]): Use `ignore'. + (double-setup): Inline into double-mode. + (double-mode): Use define-minor-mode. -2005-07-01 Juanma Barranquero +2007-10-21 Dan Nicolaescu - * textmodes/org.el (org-agenda-start-on-weekday) - (org-calendar-to-agenda-key, org-agenda-sorting-strategy) - (org-agenda-use-time-grid, org-archive-location) - (org-allow-space-in-links, org-usenet-links-prefer-google) - (org-enable-table-editor, org-export-default-language) - (org-export-html-show-new-buffer, org-fill-paragraph) - (org-cycle, org-goto-ret, org-goto-left, org-goto-right) - (org-goto-quit, org-occur, org-eval-in-calendar) - (org-agenda-cleanup-fancy-diary, org-agenda-no-heading-message) - (org-agenda-diary-entry, org-remember-help) - (org-table-convert-region, org-at-table-p) - (org-table-move-row-down, org-table-move-row-up) - (org-table-copy-region, org-table-toggle-vline-visibility) - (org-table-get-stored-formulas, org-table-get-specials) - (org-recalc-commands, org-table-eval-formula) - (org-table-formula-substitute-names, orgtbl-make-binding) - (org-format-org-table-html, org-format-table-table-html) - (org-format-table-table-html-using-table-generate-source) - (org-customize): Fix typos in docstrings. - (org-level-2, org-at-timestamp-p, org-agenda-day-view) - (org-agenda-toggle-diary, org-agenda-toggle-time-grid) - (org-back-to-heading): Doc fixes. - (org-agenda-toggle-time-grid, org-cmp-category, org-cmp-time) - (org-agenda-change-all-lines, org-get-header): - Improve argument/docstring consistency. - (orgtbl-error): Fix error message. + * textmodes/reftex.el: Move require easymenu before first use. + (reftex-info): Require info at compile too. - * progmodes/flymake.el (flymake-find-possible-master-files) - (flymake-master-file-compare, flymake-get-line-err-count) - (flymake-highlight-line, flymake-gui-warnings-enabled): - Fix typos in docstrings. - (flymake-parse-line, flymake-get-project-include-dirs-function) - (flymake-get-prev-err-line-no, flymake-goto-prev-error): - Doc fixes. - (flymake-get-project-include-dirs-function) - (flymake-make-err-menu-data): - Improve argument/docstring consistency. + * textmodes/org-publish.el (org-publish-org-to-html) + (org-publish-org-to): Require org at compile time too. + (org-publish-attachment): Require at compile time too. -2005-07-01 Lute Kamstra + * term/tty-colors.el (w32-tty-standard-colors): + Pacify byte-compiler. - * battery.el (battery-linux-proc-apm): Fix typo in docstring. - Catch errors with ignore-errors. Use temporary buffer. - (battery-linux-proc-acpi): Fix typo in docstring. Document `%r'. + * term/pc-win.el (frame-creation-function-alist): Add to this + instead of setting frame-creation-function. - * facemenu.el (facemenu-unlisted-faces): Delete foreground and - background color faces. - (facemenu-set-foreground, facemenu-set-background): - Use facemenu-set-face-from-menu. - (facemenu-set-face-from-menu): Treat face names that start with - "fg:" or "bg:" as special. - (facemenu-add-new-color): Don't create faces. Simplify. + * play/blackbox.el (bb-up, bb-down): Use forward-line. -2005-06-30 Richard M. Stallman + * net/rcirc.el (rcirc-markup-text-functions): Move definition earlier. - * emacs-lisp/crm.el (crm-do-completion): Handle minibuffer prompt. - (crm-find-current-element): Likewise. + * calendar/todo-mode.el: Require calendar at compile time. -2005-06-30 Johan Bockg,Ae(Brd + * calendar/cal-hebrew.el: Require holidays at compile time. - * help-fns.el (help-do-arg-highlight): Regexp-quote argument names. + * w32-vars.el: Provide w32-vars. -2005-06-30 Stefan Monnier + * term/w32-win.el: Require w32-vars. + (w32-color-map): Pacify byte-compiler. - * arc-mode.el (archive-extract): Make it work as a mouse binding. - (archive-mouse-extract): Make it an obsolete alias. - (archive-mode-map): Don't use archive-mouse-extract any more. - (archive-mode, archive-extract): write-contents-hooks -> - write-contents-functions. - (archive-arc-rename-entry, archive-lzh-rename-entry): Remove unused - first arg. - (archive-rename-entry): Update the call. - (archive-zip-summarize): Remove unused var `method'. - (archive-lzh-summarize): Remove unused var `creator'. + * loadup.el: Load w32-vars before term/w32-win. - * emacs-lisp/debug.el (debug): Quieten Drew Adams by killing the - dedicated frame upon exit. +2007-10-20 Juri Linkov - * arc-mode.el: Bind inhibit-read-only rather than buffer-read-only. - (archive-zip-extract, archive-zip-expunge) - (archive-zip-update, archive-zip-update-case): Use executable-find. - (archive-resummarize, archive-flag-deleted, archive-unmark-all-files): - Use restore-buffer-modified-p. - (archive-extract, archive-add-new-member, archive-write-file-member): - Use with-current-buffer. - (archive-lzh-ogm, archive-zip-chmod-entry): Use dolist. + * textmodes/fill.el (fill-paragraph): When the region is active, + don't try other `or' branches regardless of the value returned by + fill-region; just return t. -2005-06-30 Andreas Schwab +2007-10-20 Eric S. Raymond - * progmodes/gud.el (gud-filter): Remove unneeded progn. + * vc.el (vc-do-command): Condition out a misleading message when + running asynchronously. + (vc-deduce-fileset): New argument enables using an unregistered + visited file as a singleton fileset if nothing else is available. + (vc-next-action): Restore file-registering behavior. -2005-06-30 Glenn Morris +2007-10-20 Jay Belanger - * progmodes/sh-script.el (sh-get-kw): `&' also separates words. + * calc/README: Add recent news. -2005-06-30 Juri Linkov +2007-10-20 Dan Nicolaescu - * faces.el (vertical-border): Inherit from mode-line-inactive - only on tty. + * term/x-win.el (x-gtk-stock-map, icon-map-list) + (x-gtk-map-stock): Delete duplicated definitions from merge. -2005-06-30 Juanma Barranquero + * progmodes/compile.el (compilation-skip-to-next-location) + (compilation-skip-threshold, compilation-skip-visited): + Move definitions earlier. - * help-fns.el (help-do-arg-highlight): Highlight also -ARG (for - example, -NLINES in the `occur' docstring). + * play/decipher.el (decipher-keypress): + * play/zone.el (zone-fall-through-ws): + * play/landmark.el (lm-move-down, lm-move-up): + * play/handwrite.el (handwrite): + * mail/mspools.el (mspools-visit-spool): + * wdired.el (wdired-next-line, wdired-previous-line): + * tar-mode.el (tar-subfile-save-buffer): + * scroll-lock.el (scroll-lock-next-line) + (scroll-lock-previous-line): + * image-dired.el (image-dired-next-line) + (image-dired-previous-line): + * ediff-help.el (ediff-help-message-line-length): + Use forward-line. - * replace.el (occur-1): When no matches are found, do not set the - `buffer-read-only' and modified flags for the occur buffer, - because it is deleted. + * smerge-mode.el (smerge-auto-refine): + * diff-mode.el (diff-auto-refine): Add :group. - * emulation/cua-base.el (cua-check-pending-input) - (cua-repeat-replace-region, cua-mode, cua-debug) - (cua-auto-tabify-rectangles, cua-inhibit-cua-keys): - Fix typos in docstrings. + * play/yow.el: Require doctor at compile time. - * emulation/cua-gmrk.el (cua-toggle-global-mark) - (cua-cut-region-to-global-mark) - (cua--cut-rectangle-to-global-mark): - Remove period from end of messages. + * vmsproc.el: Provide vmsproc. + (command-send-input): Use forward-line. - * emulation/cua-rect.el (cua-do-rectangle-padding): - Remove period from end of messages. - (cua--rectangle-seq-format): Fix typo in docstring. - (cua-sequence-rectangle, cua-fill-char-rectangle): - Improve argument/docstring consistency. + * vms-patch.el: Require ps-print and vmsproc at compile time. -2005-06-29 Juri Linkov - - * faces.el (default-frame-background-mode): New internal variable. - (frame-set-background-mode): Use it. - - * startup.el (normal-top-level): Set default-frame-background-mode - instead of frame-background-mode. Before setting it, test for its - nil value. Remove tests for frame-background-mode and frame - parameter `reverse'. Add test for "unspecified-fg". - - * term/xterm.el (xterm-rxvt-set-background-mode): - * term/rxvt.el (rxvt-set-background-mode): - Set default-frame-background-mode instead of frame-background-mode. - -2005-06-29 Juanma Barranquero - - * simple.el (set-variable): Warn about obsolete user variables. - - * imenu.el (imenu--completion-buffer): - * mouse.el (mouse-buffer-menu-alist): - * msb.el (msb-invisible-buffer-p): - * calendar/diary-lib.el (diary-header-line-format): - * emacs-lisp/pp.el (pp-buffer): - * progmodes/cperl-mode.el (cperl-do-auto-fill): - * textmodes/picture.el (picture-replace-match): - Change space constants followed by a sexp to "?\s ". - - * play/decipher.el (decipher-loop-with-breaks): - * textmodes/texinfo.el (texinfo-insert-@item): Change space - constants "protected" from end of line by a comment to "?\s". - -2005-06-29 Stefan Monnier - - * font-lock.el (save-buffer-state): Use `declare'. - - * progmodes/cperl-mode.el (cperl-find-pods-heres): Don't gratuitously - reset the syntax-table to cperl-mode-syntax-table. - (cperl-mode): Make _ into word-syntax during font-locking so "print" in - "foo_print_bar" is not matched as a reserved keyword. - -2005-06-29 Carsten Dominik + * vc-mtn.el (log-view-message-re, log-view-file-re) + (log-view-font-lock-keywords): Pacify byte-compiler. - * textmodes/org.el (orgtbl-setup): New function, for delayed - setup for the orgtbl commands. - (org-calc-default-modes): New option. - (orgtbl-make-binding): Use `defun' to get better help display. - (org-diary): Call `org-compile-prefix-format'. - (org-table-formula-substitute-names): New function. - (org-agenda-day-view, org-agenda-week-view): New commands. - (org-agenda-toggle-week-view): Command removed. - (org-tbl-menu): Split off from org-org-menu. - (org-mode): Move removal of outline-mode menus to here. - (org-table-formula-debug): New option. - (org-table-insert-row): Keep first field if just "#" or "*". - (org-mode): Paragraph regexps fixed. - (org-table-recalculate-regexp): New constant. - (org-table-justify-field-maybe): Avoid replace if not necessary. - (org-copy-special, org-cut-special): Use `call-interactively'. - (org-table-copy-region): Take region from `interactive' call. - (org-trim): Return string even if no match. - (org-formula): New face. - (org-set-font-lock-defaults): No longer highlight "FIXME". - But highlight formula-related fields in table. - (org-table-p): Use regexp, not fontification. - (org-table-align): Handle white space at end of line. - (org-table-formula-evaluate-inline): New option. - (org-mode): Auto-wrapping in comment lines turned off. - (org-table-copy-down): Evaluate only in copied field, not in - destination. - (org-table-current-formula): Variable removed. - (org-table-store-formulas, org-table-get-stored-formulas) - (org-table-modify-formulas, org-table-replace-in-formulas) - (org-table-maybe-eval-formula): New functions. - (org-table-get-formula): Modify to use stored formulas. - (org-table-insert-column, org-table-delete-column) - (org-table-move-column): Call `org-table-modify-formulas'. - (org-complete): Add completion for keyword formulas. - (orgtbl-mode): Pull orgtbl-mode-map to start of - minor-mode-map-alist. - -2005-06-29 Stefan Monnier - - * progmodes/python.el (python-check): Require `compile' before - modifying its variables. - - * newcomment.el (comment-indent-default): Don't get fooled by an early - end of buffer. - -2005-06-28 Vinicius Jose Latorre - - * ps-print.el (ps-print-version): Fix version number. - -2005-06-28 Luc Teirlinck - - * textmodes/ispell.el (ispell-word): Remove stray parenthesis. - -2005-06-28 Richard M. Stallman - - * textmodes/flyspell.el (flyspell-use-local-map): Variable deleted. - (flyspell-local-mouse-map): Declaration deleted. - (flyspell-mouse-map): Bind only mouse-2. - (flyspell-mode-map): Don't test flyspell-use-local-map. - (flyspell-overlay-keymap-property-name): Var deleted. - (flyspell-mode-on): Don't make local bindings for - flyspell-mouse-map and flyspell-mode-map. - (make-flyspell-overlay): Unconditionally put on `keymap' text prop. - - * textmodes/ispell.el (ispell-word): Do not ignore short words. - - * progmodes/compile.el (compilation-next-error-function): - Don't switch buffers; operate on the current buffer. - - * progmodes/compile.el (compilation-error-file-name) - (compilation-warning-file-name, compilation-info-file-name) - (compilation-line-number, compilation-column-number): New faces. - (compilation-error-face, compilation-warning-face) - (compilation-info-face, compilation-line-face) - (compilation-column-face): Use them. - - * facemenu.el (facemenu-add-face): Warn when font-lock is active. - - * comint.el (comint-password-prompt-regexp): Accept ", try again". - - * bindings.el (global-map): Bind insertchar and its variants. - -2005-06-27 Richard M. Stallman - - * textmodes/artist.el (artist-text-overwrite) - (artist-figlet-get-extra-args, artist-text-see-thru): Use read-string. - -2005-06-27 Vinicius Jose Latorre - - * ps-print.el: It was not working the page selection for printing. - Reported by Sebastian Tennant . - (ps-print-version): New version 6.6.7. - (ps-end-sheet): New fun. - (ps-header-sheet, ps-end-job): Call it. - -2005-06-27 Luc Teirlinck - - * subr.el (add-to-list, add-to-ordered-list): Doc fixes. - -2005-06-27 Lute Kamstra - - * facemenu.el (facemenu-unlisted-faces): Add foreground and - background color faces. - (facemenu-get-face): Delete function. - (facemenu-set-face-from-menu): Don't call facemenu-get-face. - (facemenu-add-new-color): Make second argument mandatory. - Create the appropriate face and return it. Simplify. - (facemenu-set-foreground, facemenu-set-background): Don't check if - color is defined. Use return value of facemenu-add-new-color. - -2005-06-26 Nick Roberts - - * progmodes/gud.el (gud-filter): Add missing argument to - with-selected-window. + * vc-hg.el: Require log-view at compile time. -2005-06-26 Stefan Monnier +2007-10-20 Eric S. Raymond - * emacs-lisp/easy-mmode.el (define-minor-mode): Don't automatically add - a :require to the defcustom. + * log-view.el (log-view-diff): Adapt log-view-diff for new VC API. - * emacs-lisp/autoload.el (make-autoload): Add the :setter for - defcustoms corresponding to minor modes. +2007-10-20 Glenn Morris -2005-06-26 David Ponce + * progmodes/f90.el (f90-font-lock-keywords-2) + (f90-looking-at-type-like): Fix regexp typos. - * recentf.el: Require tree-widget instead of wid-edit. - (recentf-filename-handler): Fix widget :type. - (recentf-cancel-dialog, recentf-open-more-files) - (recentf-open-files-action): Doc fix. - (recentf-dialog-goto-first): New function. - (recentf-dialog-mode-map): Set parent keymap first. - (recentf-dialog-mode): Define with define-derived-mode. - Don't display continuation lines in dialogs. - (recentf-edit-list): Rename from recentf-edit-selected-items. - (recentf-edit-list-select): Rename from recentf-edit-list-action. - Simplify. - (recentf-edit-list-validate): New function. - (recentf-edit-list): Update accordingly. - (recentf-open-files-item-shift): Remove. - (recentf-open-files-item): Convert menu elements into tree and - link widgets. Don't create the widgets. - (recentf-open-files): Update accordingly. - (recentf-save-list): Untabify. - -2005-06-25 Luc Teirlinck - - * replace.el (keep-lines-read-args): Add INTERACTIVE arg. - (keep-lines): Add INTERACTIVE arg. Never delete lines only - partially contained in the active region. Do not take active - region into account when called from Lisp, unless INTERACTIVE arg - is non-nil. Use `forward-line' instead of `beginning-of-line' to - avoid trouble with fields. Make marker point nowhere when no - longer used. Always return nil. Doc fix. - (flush-lines): Add INTERACTIVE arg. Do not take active region - into account when called from Lisp, unless INTERACTIVE arg is - non-nil. Use `forward-line' instead of `beginning-of-line' to - avoid trouble with fields. Make marker point nowhere when no - longer used. Always return nil. Doc fix. - (how-many): Add INTERACTIVE arg. Make RSTART and REND args - interchangeable. Do not take active region into account when - called from Lisp, unless INTERACTIVE arg is non-nil. Do not print - message in echo area when called from Lisp, unless INTERACTIVE arg - is non-nil. Avoid saying "1 occurrences". Do not use markers. - Return the number of matches. Doc fix. - (occur): Doc fix. - (perform-replace): Make comment follow double space convention for - the sake of `outline-minor-mode'. +2007-10-19 Juanma Barranquero - * faces.el (facep): Doc fix. + * bs.el (bs--track-window-changes): Don't refresh the whole list. + (bs-mode): Set mode-class property to special. -2005-06-25 Richard M. Stallman +2007-10-20 Stefan Monnier - * facemenu.el (facemenu-enable-faces-p): New function. - (facemenu-background-menu, facemenu-foreground-menu) - (facemenu-face-menu): Add menu-enable property. + * diff-mode.el (diff-auto-refine): New var. + (diff-hunk): Use it. + (diff-ignore-whitespace-hunk): Rename diff-refine-ignore-spaces-hunk. + (diff-refine-change): Rename from diff-fine-change. Change it. + (diff-refine-preproc): Rename from diff-fine-highlight-preproc. + (diff-refine-hunk): Rename from diff-fine-highlight. - * jka-compr.el (jka-compr-insert-file-contents): - Special handling if cannot find the uncompression program. +2007-10-20 John Paul Wallington - * cus-face.el (custom-face-attributes): Add autoload. + * help-fns.el (describe-variable-custom-version-info): New function + to return variable's version or package version note. + (describe-variable): Use it, display result. - * emacs-lisp/lisp-mode.el (lisp-mode-variables): - Bind comment-indent-function locally. +2007-10-20 Stefan Monnier - * window.el (save-selected-window): Use save-current-buffer. + * smerge-mode.el (smerge-auto-refine): New var. + (smerge-next, smerge-prev): Use it. + (smerge-batch-resolve): Ad-hoc trick for Arch's .rej files. - * subr.el (with-selected-window): Use save-current-buffer. + * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): + Add `body' arg. Cleanup the check-narrow-maybe/re-narrow-maybe mess. + + * vc-bzr.el (vc-bzr-diff-tree): + * vc-git.el (vc-git-diff-tree): + * vc-hg.el (vc-hg-diff-tree): + * vc-mcvs.el (vc-mcvs-diff-tree): + * vc-mtn.el (vc-mtn-diff-tree): + * vc-svn.el (vc-svn-diff-tree): Remove. + + * vc-mtn.el (vc-mtn-revision-completion-table): + * vc-cvs.el (vc-cvs-revision-completion-table): + * vc-arch.el (vc-arch-revision-completion-table): + * vc-hg.el (vc-hg-revision-completion-table, vc-hg-revision-table): + * vc-git.el (vc-git-revision-completion-table, vc-git-revision-table): + Make it work when the arg is a list of files. + +2007-10-19 Stefan Monnier + + * vc.el: Remove `diff-tree' operation, now subsumed by `diff'. + Also `revision-completion-table' now takes a list of files. + (vc-deduce-fileset): Remove unused var `regexp'. + Only obey allow-directory-wildcard in dired buffers. + (vc-default-diff-tree): Remove. + (vc-diff-added-files): New var. + (vc-diff-internal): Use it. Remove arg `backend'. Update callers. + (vc-version-diff): Revert from `vc-history-diff' to the original name. + Remove the `backend' arg. + (vc-contains-version-controlled-file): Remove. + (vc-diff): Bring it closer to the version in Emacs-22. + (vc-revert): Fix typo in let-binding. + (vc-default-unregister): Remove. + (vc-dired-buffers-for-dir): Remove N^2 behavior. + +2007-10-19 Dan Nicolaescu + + * textmodes/two-column.el (2C-split, 2C-merge): + * textmodes/bib-mode.el (bib-find-key, mark-bib): + * progmodes/idlw-shell.el (idlwave-shell-move-or-history): + * progmodes/etags.el (find-tag-in-order, etags-tags-apropos) + * progmodes/ada-xref.el (ada-get-all-references): + * obsolete/mlsupport.el (ml-next-line, ml-previous-line): + * emulation/vi.el (vi-previous-line-first-nonwhite) + (vi-effective-range, vi-put-before): + * emulation/edt.el (edt-next-line, edt-previous-line) + (edt-paragraph-forward): Use forward-line. - * progmodes/gud.el (gud-filter): Simplify using with-selected-window - and with-current-buffer. + * progmodes/etags.el (tags-apropos): Require apropos at compile + time too. -2005-06-24 Richard M. Stallman + * progmodes/prolog.el: Require comint when compiling. + (inferior-prolog-flavor): Move defvar before use. - * simple.el (line-move-1): Fix previous change. +2007-10-19 Richard Stallman -2005-06-24 Juanma Barranquero + * font-core.el (turn-on-font-lock-if-desired): + Rename from `turn-on-font-lock-if-enabled'. + Fully obey `font-lock-global-modes'. - * replace.el (occur-1): Set `buffer-read-only' and the - buffer-modified flag before running `occur-hook' to protect - against unintentional buffer switches that can lead to data loss. +2007-10-19 Stefan Monnier -2005-06-24 Nick Roberts + * diff-mode.el (diff-fine-highlight-preproc): Stick to minimal changes + which will not affect the behavior of things like forward-word. + (diff-fine-highlight): Preserve point. - * progmodes/gud.el (gud-tooltip-print-command): Indent properly. - (gud-gdb-marker-filter): Use font-lock-warning-face for any - initial error. + * doc-view.el (doc-view-mode-map): Use remapping. + Don't rebind C-v, M-v to their default value. + Don't bind mouse-4 and mouse-5: it's mwheel.el's job. - * progmodes/gdb-ui.el (gdb-send): Remove warning face from errors - after fresh input. - (gdb-var-create-handler): Put name of expression in quotes. + * smerge-mode.el: Add word-granularity refinement. + (smerge-refine-forward-function, smerge-refine-ignore-whitespace) + (smerge-refine-weight-hack): New vars. + (smerge-refine-forward): New fun. + (smerge-refine-chopup-region, smerge-refine-highlight-change): Use them. + (smerge-refine-subst): Use them as well. Preserve point. -2005-06-23 Luc Teirlinck +2007-10-19 Juanma Barranquero - * emacs-lisp/ring.el (ring-elements): Make it return a list of the - elements of RING in order, and without bogus nil elements. + * follow.el (follow-unload-function): New function. -2005-06-23 Richard M. Stallman + * loadhist.el (unload-function-features-list): + Rename from `unload-hook-features-list'. + (unload-hook-features-list): Add as obsolete alias. + (unload-feature): Use `unload-function-features-list' + and new FEATURE-unload-function. - * simple.el (set-variable): Args renamed; doc fix. - (line-move-1): When there are overlays around, use vertical-motion. +2007-10-19 Glenn Morris - * faces.el (escape-glyph): Use brown against light background. - (nobreak-space): Rename from no-break-space. - Fix previous change. + * bindings.el (mouse-minor-mode-menu) + (minor-mode-menu-from-indicator): Move to mouse.el. + * mouse.el (mouse-minor-mode-menu, minor-mode-menu-from-indicator): + Move here from bindings.el. - * dired-aux.el (dired-do-copy): Fix arg prompt. +2007-10-19 Richard Stallman - * mail/sendmail.el (mail-setup-with-from): Fix custom type. + * help-fns.el (describe-function-1): Don't use the advice origname + if it has no function definition. -2005-06-23 Glenn Morris +2007-10-18 Johan Bockgård - * mail/emacsbug.el (report-emacs-bug): Use "X server distributor" - rather than "Distributor". + * net/tramp.el (tramp-rfn-eshadow-update-overlay): Save excursion. + Use `save-restriction' rather than `widen'. -2005-06-23 Lute Kamstra +2007-10-18 Richard Stallman - * emacs-lisp/debug.el (debugger-special-form-p): New defun. - (debug-on-entry): Use it. New interactive declaration that uses - function-called-at-point. + * time.el (display-time-world-time-format): Display day # not month #. -2005-06-23 Kim F. Storm +2007-10-18 Reiner Steib - * subr.el (save-match-data): Add comment about using evaporate arg - to set-match-data. + * files.el (auto-mode-alist): Don't use doc-view for PS and EPS. -2005-06-22 Glenn Morris + * doc-view.el: Remove version keyword. + (doc-view-ghostscript-program, doc-view-dvipdfm-program) + (doc-view-ps2pdf-program): Use executable-find. Simplify custom type. + (doc-view-ghostscript-options): Improve custom type. + (doc-view-cache-directory, doc-view-conversion-buffer) + (doc-view-conversion-refresh-interval): Simplify custom type. - * cus-edit.el (customize-face) - (customize-face-other-window): Handle face aliases. +2007-10-18 Tassilo Horn - * faces.el (face-documentation, set-face-attribute) - (face-spec-set): Handle face aliases. + * doc-view.el (doc-view-dvi->pdf-sentinel, doc-view-dvi->pdf) + (doc-view-pdf/ps->png-sentinel, doc-view-pdf/ps->png) + (doc-view-pdf->txt-sentinel, doc-view-pdf->txt) + (doc-view-ps->pdf-sentinel, doc-view-ps->pdf): + Remove superfluous messages. + (doc-view-mode-map): Use the image-mode scrolling commands. + Don't rebind C-x k. -2005-06-22 Juanma Barranquero +2007-10-18 Reiner Steib - * help-mode.el (help-make-xrefs): If a symbol representing a face - name is not followed by the word "face", it could still be a - function or variable name, so don't bypass other checks. + * doc-view.el (doc-view-ghostscript-options, doc-view-ps->pdf): + Add comment about "-dSAFER". -2005-06-22 Juri Linkov +2007-10-18 Stefan Monnier - * ps-print.el (ps-face-foreground-name, ps-face-background-name): - Replace aliased functions with calls where second arg `inherit' is t. + * term/xterm.el: Don't require xt-mouse. + (terminal-init-xterm): Run terminal-init-xterm-hook rather than + calling turn-on-xterm-mouse-tracking-on-terminal directly. -2005-06-22 Nick Roberts + * xt-mouse.el: Don't change the global function-key-map anny more. + (xterm-mouse-mode): Use terminal-init-xterm-hook. + Don't use after-make-frame-functions now that term/xterm.el calls + us directly. + (turn-on-xterm-mouse-tracking, turn-off-xterm-mouse-tracking): + Use turn-*-xterm-mouse-tracking-on-terminal. Only once per terminal. + (turn-on-xterm-mouse-tracking-on-terminal): Make param optional. + Setup input-decode-map and remember that xterm-mouse-mode was + enabled in this terminal. + (turn-off-xterm-mouse-tracking-on-terminal): Only disable on those + terminals where it has been enabled. - * progmodes/gdb-ui.el (gdb-error): New variable. - (gdb-error): New function. - (gdb-annotation-rules): Act on error-begin and error annotations. - (gdb-concat-output): Use font-lock-warning-face for errors. + * faces.el (tty-create-frame-with-faces): Make sure not only + tty-run-terminal-initialization but also set-locale-environment + are run only once per terminal. + (tty-run-terminal-initialization): Don't check if the terminal was + already initted. -2005-06-22 Miles Bader + * international/encoded-kb.el (encoded-kbd-setup-display): Be careful + not to remove keymaps that just happen to inherit from one of ours. + When setting up our keymap, make sure it won't be accidentally + modified by someone else. - * bindings.el (propertized-buffer-identification): Use renamed - `Buffer-menu-buffer' face. +2007-10-18 Thien-Thi Nguyen - * faces.el (vertical-border): Rename from `vertical-divider'. - (escape-glyph): Change dark-background color back to `cyan'. + * textmodes/artist.el (artist-previous-line, artist-next-line): + * dired.el (dired-next-line, dired-previous-line): + * progmodes/delphi.el (delphi-newline): + * textmodes/org.el (org-columns-eval): + Use forward-line. -2005-06-21 Juri Linkov + * emerge.el (emerge-setup): Use insert-buffer-substring. + (emerge-prepare-error-list, emerge-setup-with-ancestor): Likewise. - * faces.el (face-user-default-spec): Try getting `customized-face' - prior to `saved-face'. - (frame-background-mode): Refill docstring. +2007-10-18 Juanma Barranquero - * emacs-lisp/lisp-mode.el (eval-defun-1): - * emacs-lisp/edebug.el (edebug-eval-defun): - Set `saved-face' temporarily to nil before calling form. - Set `customized-face' to the new spec after that. + * textmodes/fill.el (fill-individual-paragraphs): Doc fix. + (adaptive-fill-function): Doc fix. Remove * from docstring. -2005-06-21 Juanma Barranquero +2007-10-18 Tom Horsley - * subr.el (1value, lambda, key-substitution-in-progress): - Doc fixes. + * simple.el (interprogram-paste-function): Doc fix. + (current-kill): Accept list of strings as well + as single string from `interprogram-paste-function'. - * autoinsert.el (auto-insert-alist): - * ses.el (ses-call-printer): - * subr.el (noreturn): - * emacs-lisp/lisp.el (check-parens): - * emacs-lisp/byte-opt.el (byte-optimize-pure-func): - * net/browse-url.el (browse-url-mosaic): - * progmodes/cc-defs.el (c-safe-scan-lists): - * progmodes/ebnf-abn.el (ebnf-abn-lex): - * progmodes/ebnf-bnf.el (ebnf-bnf-lex): - * progmodes/ebnf-dtd.el (ebnf-dtd-lex): - * progmodes/ebnf-ebx.el (ebnf-ebx-lex): - * progmodes/ebnf-iso.el (ebnf-iso-lex): - * progmodes/ebnf-yac.el (ebnf-yac-lex): Fix spellings. +2007-10-18 Glenn Morris -2005-06-21 Reiner Steib + * ibuf-ext.el (ibuffer-saved-filter-groups): Doc fix. - * pcvs-defs.el (cvs-menu): Add cvs-mode-mark and cvs-mode-unmark. +2007-10-18 Drew Adams -2005-06-21 Glenn Morris + * bindings.el (mode-line-minor-mode-keymap): + Add mouse-minor-mode-menu on mouse-1. + (mode-line-modes): Add mouse-1 to help-echo text. + (mouse-minor-mode-menu, minor-mode-menu-from-indicator): + New functions. + (mode-line-minor-mode-help): Doc fix. - * calendar/appt.el (appt-make-list): Activate the package, if - not already active (for backwards compatibility). +2007-10-17 Juri Linkov -2005-06-20 Kim F. Storm + * textmodes/fill.el (fill-paragraph-or-region): Remove function + at the request of RMS. + (fill-paragraph): Change `arg' to optional `justify'. Add interactive + arg `region'. Fix docstring. At the first `or' branch add call to + `fill-region' if it the region is active in transient-mark-mode. - * subr.el (add-to-ordered-list): Test membership with eq. Simplify. + * bindings.el (esc-map): Bind M-q to fill-paragraph + instead of fill-paragraph-or-region. -2005-06-20 Miles Bader + * tutorial.el (tutorial--default-keys): Replace fill-paragraph-or-region + with fill-paragraph. - * faces.el (vertical-divider): New face. + * textmodes/ispell.el (ispell-word): Add interactive arg `region'. + Fix docstring. -2005-06-20 Juanma Barranquero + * indent.el (indent-for-tab-command): Change interactive spec from + "P" to "p". Add check for interactive arg before indenting the + active region. - * simple.el (kill-whole-line): Doc fix. - (next-error-buffer-p, next-error-find-buffer) - (clone-indirect-buffer): Fix typos in docstrings. - (comment-line-break-function): Doc fix: don't say variable - is automatically buffer-local (it isn't). + * files.el (auto-mode-alist): Add \\. before PDF/PS/DVI extensions. + Regroup. -2005-06-19 Michael Albinus +2007-10-17 Juanma Barranquero - * net/tramp-ftp.el (top): - * net/tramp-smb.el (top): - * net/tramp-util.el (top): - * net/tramp-uu.el (top): - * net/tramp-vc.el (top): - * net/tramp.el (top): Revert copyright years back to original - ones. Tramp has a life outside GNU Emacs. + * emacs-lisp/find-func.el: Don't require loadhist. -2005-06-19 Nick Roberts + * loadhist.el (feature-symbols, file-provides, file-requires) + (file-set-intersect, file-dependents): Simplify. + (unload-feature-special-hooks): Update list of special hooks. - * tooltip.el (tooltip-use-echo-area): Don't make it obsolete. +2007-10-17 Tassilo Horn -2005-06-18 Juri Linkov + * bindings.el (completion-ignored-extensions): Remove pdf and dvi + extensions since they can be viewed with doc-view. - * progmodes/grep.el (grep-regexp-alist): Use backreference at the - end of first regexp to limit the match to the position between - line number and source line with same separator character as used - between file name and line number. In the second regexp limit - mouse-face area to file name and line number by adding new group - for them and referring it in HYPERLINK arg. - (grep-regexp-alist, grep-mode-font-lock-keywords): Use shy group. - (grep-mode): Set font-lock-lines-before to 0 to not refontify the - previous line where grep markers may be already removed. + * files.el (auto-mode-alist): Make doc-view-mode the default mode + for pdf, ps and dvi files. -2005-06-18 Peter Kleiweg + * doc-view.el: Make doc-view-mode the standard mode for viewing + pdf, [e]ps and dvi files and add binding C-c C-c to toggle between + text and image display. Add binding C-c C-e to switch to an + editing mode. + (doc-view-ghostscript-options, doc-view-ps->pdf): Add "-dSAFER" to + avoid security problems when rendering files from untrusted sources. - * progmodes/ps-mode.el: Update version and maintainer's email address. +2007-10-17 Aaron Hawley -2005-06-18 Steve Youngs + * tutorial.el (tutorial--save-tutorial): Display message when tutorial + position is not saved. - * net/browse-url.el (browse-url-browser-function) - (browse-url-default-browser): Add firefox. - (browse-url-firefox-program, browse-url-firefox-arguments) - (browse-url-firefox-startup-arguments) - (browse-url-firefox-new-window-is-tab): New defcustoms. - (browse-url-firefox, browse-url-firefox-sentinel): New functions. +2007-10-17 Reiner Steib -2005-06-17 Richard M. Stallman + * doc-view.el: Mention xpdf. Fix spelling of Ghostscript. + (doc-view-ghostscript-options): Fix typo in doc string. - * startup.el (command-line): Warn if specified user name has - no home directory. +2007-10-17 Stefan Monnier - * term.el (term-get-old-input, term-input-filter, term-input-sender) - (term-mode-hook, term-exec-hook, term-escape-char): Doc fixes. + * progmodes/compile.el (compilation-next-error-function): Fix timestamp + handling, so compilation-fake-loc works again. - * longlines.el (longlines-mode, longlines-show-hard-newlines): - Doc fixes. + * server.el (server-select-display): Nop if we do not support m-f-o-d. + (server-process-filter): Revert last change. - * faces.el (underline): Try bold if terminal doesn't support underline. - - * mail/sendmail.el (mail-setup-with-from): New variable. - (mail-insert-from-field): New function. - (sendmail-send-it): Call it. - (mail-setup): Optionally call it here. - - * term/linux.el: Call tty-no-underline. - -2005-06-17 Luc Teirlinck - - * emacs-lisp/edebug.el (edebug-goto-here): Doc fix. - -2005-06-17 Miles Bader - - * ediff-init.el (ediff-current-diff-A, ediff-current-diff-B) - (ediff-current-diff-C, ediff-current-diff-Ancestor) - (ediff-fine-diff-A, ediff-fine-diff-B, ediff-fine-diff-C) - (ediff-fine-diff-Ancestor, ediff-even-diff-A, ediff-even-diff-B) - (ediff-even-diff-C, ediff-even-diff-Ancestor, ediff-odd-diff-A) - (ediff-odd-diff-B, ediff-odd-diff-C, ediff-odd-diff-Ancestor): - Remove "-face" suffix from face names. - (ediff-current-diff-face-A, ediff-current-diff-face-B) - (ediff-current-diff-face-C, ediff-current-diff-face-Ancestor) - (ediff-fine-diff-face-A, ediff-fine-diff-face-B) - (ediff-fine-diff-face-C, ediff-fine-diff-face-Ancestor) - (ediff-even-diff-face-A, ediff-even-diff-face-B) - (ediff-even-diff-face-C, ediff-even-diff-face-Ancestor) - (ediff-odd-diff-face-A, ediff-odd-diff-face-B) - (ediff-odd-diff-face-C, ediff-odd-diff-face-Ancestor): - New backward-compatibility aliases for renamed faces. - (ediff-current-diff-face-A, ediff-current-diff-face-B) - (ediff-current-diff-face-C, ediff-current-diff-face-Ancestor) - (ediff-fine-diff-face-A, ediff-fine-diff-face-B) - (ediff-fine-diff-face-C, ediff-fine-diff-face-Ancestor) - (ediff-even-diff-face-A, ediff-even-diff-face-B) - (ediff-even-diff-face-C, ediff-even-diff-face-Ancestor) - (ediff-odd-diff-face-A, ediff-odd-diff-face-B) - (ediff-odd-diff-face-C, ediff-odd-diff-face-Ancestor): - Use renamed ediff faces. - - * eshell/esh-test.el (eshell-test-ok, eshell-test-failed): - Remove "-face" suffix from face names. - (eshell-test-ok-face, eshell-test-failed-face): - New backward-compatibility aliases for renamed faces. - (eshell-run-test): Use renamed eshell-test faces. - - * eshell/em-prompt.el (eshell-prompt): Remove "-face" suffix from - face name. - (eshell-prompt-face): New backward-compatibility alias for renamed - face. - (eshell-emit-prompt): Use renamed eshell-prompt face. - - * eshell/em-ls.el (eshell-ls-directory, eshell-ls-symlink) - (eshell-ls-executable, eshell-ls-readonly, eshell-ls-unreadable) - (eshell-ls-special, eshell-ls-missing, eshell-ls-archive) - (eshell-ls-backup, eshell-ls-product, eshell-ls-clutter): - Remove "-face" suffix from face names. - (eshell-ls-directory-face, eshell-ls-symlink-face) - (eshell-ls-executable-face, eshell-ls-readonly-face) - (eshell-ls-unreadable-face, eshell-ls-special-face) - (eshell-ls-missing-face, eshell-ls-archive-face) - (eshell-ls-backup-face, eshell-ls-product-face) - (eshell-ls-clutter-face): - New backward-compatibility aliases for renamed faces. - (eshell-ls-decorated-name): Use renamed eshell-ls faces. - - * progmodes/cc-fonts.el (c-nonbreakable-space-face): - Remove "-face" suffix from face name. - (c-cpp-matchers): Use the variable `c-nonbreakable-space-face' - instead of literal face. - -2005-06-17 Juanma Barranquero - - * emacs-lisp/warnings.el (display-warning, lwarn) - (warning-minimum-log-level): Doc fixes. - (warning-minimum-level, warning-minimum-log-level): - Add :debug to :type choices. - - * progmodes/ada-mode.el (ada-format-paramlist) - (ada-get-indent-case, ada-check-matching-start) - (ada-check-defun-name, ada-goto-matching-decl-start) - (ada-goto-matching-start, ada-goto-matching-end, ada-tab) - (ada-untab, ada-move-to-start, ada-fill-comment-paragraph) - (ada-make-subprogram-body): Follow error conventions. - (ada-case-exception-file, ada-indent-comment-as-code) - (ada-indent-handle-comment-special, ada-indent-renames) - (ada-indent-return, ada-search-directories-internal) - (ada-tab-policy, ada-case-exception-substring) - (ada-other-file-alist, ada-matching-start-re) - (ada-matching-decl-start-re, ada-contextual-menu-last-point) - (ada-imenu-generic-expression, ada-compile-goto-error) - (ada-in-comment-p, ada-in-string-p, ada-in-string-or-comment-p) - (ada-popup-menu, ada-add-extensions, ada-mode) - (ada-region-selected, ada-create-case-exception) - (ada-create-case-exception-substring, ada-after-keyword-p) - (ada-activate-keys-for-case, ada-adjust-case-region) - (ada-adjust-case-buffer, ada-format-paramlist) - (ada-scan-paramlist, ada-insert-paramlist) - (ada-indent-newline-indent) - (ada-indent-newline-indent-conditional) - (ada-justified-indent-current, ada-goto-previous-word) - (ada-indent-current, ada-get-indent-open-paren) - (ada-get-indent-paramlist, ada-get-indent-end) - (ada-get-indent-case, ada-get-indent-when, ada-get-indent-if) - (ada-get-indent-block-start, ada-get-indent-subprog) - (ada-get-indent-noindent, ada-get-indent-label) - (ada-get-indent-loop, ada-get-indent-type, ada-goto-stmt-start) - (ada-search-prev-end-stmt, ada-goto-next-non-ws) - (ada-goto-stmt-end, ada-goto-next-word) - (ada-check-matching-start, ada-check-defun-name) - (ada-goto-matching-decl-start, ada-goto-matching-start) - (ada-goto-matching-end, ada-search-ignore-string-comment) - (ada-in-decl-p, ada-looking-at-semi-or) - (ada-looking-at-semi-private, ada-in-paramlist-p) - (ada-in-open-paren-p, ada-tab, ada-indent-current-function) - (ada-untab-hard, ada-move-to-start, ada-move-to-end) - (ada-next-procedure, ada-previous-procedure, ada-next-package) - (ada-previous-package, ada-create-menu) - (ada-fill-comment-paragraph-justify) - (ada-fill-comment-paragraph-postfix, ada-fill-comment-paragraph) - (ada-other-file-name, ada-last-which-function-line) - (ada-last-which-function-subprog, ada-which-function) - (ada-get-body-name, ada-outline-level, ada-narrow-to-defun) - (ada-gen-treat-proc, ada-check-emacs-version) - (ada-continuation-indent, ada-align-region-separate): - Fix typos in docstrings. - (ada-adjust-case, ada-adjust-case-interactive): Doc fixes. - -2005-06-16 Lute Kamstra - - * simple.el (fundamental-mode): Run after-change-major-mode-hook - conditionally. - -2005-06-16 Juanma Barranquero - - * comint.el (comint-replace-by-expanded-filename) - (comint-prompt-regexp, comint-delimiter-argument-list) - (comint-preinput-scroll-to-bottom): - * info.el (Info-hide-cookies-node): - * ls-lisp.el (ls-lisp-classify): - * find-file.el (ff-search-directories, ff-special-constructs) - (ff-find-other-file): - * font-lock.el (font-lock-keywords): - * shell.el (shell-prompt-pattern) - (shell-dynamic-complete-functions, shell-mode) - (shell-delimiter-argument-list): - * term.el (term-replace-by-expanded-filename) - (term-prompt-regexp, term-delimiter-argument-list): - * woman.el (woman-ignore, woman0-if): - * emacs-lisp/derived.el (derived-mode-init-mode-variables): - * emacs-lisp/elint.el (elint-init-env): - * emacs-lisp/regexp-opt.el (regexp-opt-depth): - * eshell/esh-mode.el (eshell-preinput-scroll-to-bottom): - * language/ethio-util.el (ethio-tilde-escape) - (ethio-use-three-dot-question): - * net/zone-mode.el (zone-mode-load-time-setup): - * progmodes/cc-align.el (c-lineup-argcont): - * progmodes/cc-awk.el (c-awk-beginning-of-defun): - * progmodes/cperl-mode.el (cperl-set-style-back): - * progmodes/inf-lisp.el (inferior-lisp-prompt): - * progmodes/vhdl-mode.el (vhdl-beginning-of-libunit): - Fix spellings in docstrings. - - * textmodes/sgml-mode.el (sgml-calculate-indent, html-tag-help): - * progmodes/modula2.el (m2-for): Fix spellings. - - * menu-bar.el (menu-bar-games-menu): Fix typo in menu help string. - - * simple.el (undo-more): Don't use `format' on `error' arguments. - Improve argument/docstring consistency. - (pending-undo-list): Doc fix. + * vc.el (vc-diff-sentinel, vc-diff-internal): Revert some change in the + behavior unrelated to filesets. - * smerge-mode.el (smerge-ensure-match): - * emulation/vip.el (vip-ex): - * net/zone-mode.el (zone-mode-update-serial): - * progmodes/idlwave.el (idlwave-complete): - * progmodes/vhdl-mode.el (vhdl-visit-file) - (vhdl-compose-wire-components): - Don't use `format' on `error' arguments. +2007-10-17 Chong Yidong - * tooltip.el (tooltip-start-delayed-tip, tooltip-timeout) - (tooltip-use-echo-area, tooltip-process-prompt-regexp) - (tooltip-help-tips): Fix typos in docstrings. + * longlines.el (longlines-wrap-follows-window-size): Integer value + specifies wrapping margin. + (longlines-mode, longlines-window-change-function): + Set window-specific wrapping margin based on the above. -2005-06-16 David Ponce +2007-10-17 John Wiegley - * tree-widget.el (tree-widget-value-create): Simplify last change. + * eshell/esh-cmd.el (eshell-complex-commands): Add "ls". -2005-06-15 Matt Hodges +2007-10-17 Dan Nicolaescu - * ido.el (ido-incomplete-regexp): New variable. - (ido-set-matches-1): Handle invalid-regexp error and set - ido-incomplete-regexp. - (ido-incomplete-regexp): New face. - (ido-completions): Use it. - (ido-complete, ido-exit-minibuffer, ido-completions): - Handle incomplete regexps. - (ido-completions): Add check for complete match when entering a regexp. + * server.el (server-process-filter): Only set display if X11 is + supported. -2005-06-15 Stefan Monnier +2007-10-17 Glenn Morris - * subr.el (add-to-ordered-list): Use a weak hash-table to avoid leaks. + * progmodes/cc-menus.el (cc-imenu-c++-generic-expression): + Tweak regexp to avoid stack overflow. -2005-06-15 Roland Winkler +2007-10-16 Stefan Monnier - * textmodes/bibtex.el (bibtex-Preamble): Enclose BibTeX preamble - by field delimiters. + * simple.el (reindent-then-newline-and-indent): Don't assume that + indent-according-to-mode preserves point. -2005-06-15 David Ponce +2007-10-16 Juanma Barranquero - * tree-widget.el: eval-and-compile inlined functions so they will - be available at run-time too. - (tree-widget-super-format-handler) - (tree-widget-format-handler): Remove. - (tree-widget-value-create): Handle the :indent property. + * bs.el (bs--make-header-match-string, bs-show-in-buffer) + (bs--nth-wrapper): Simplify. + (bs-select, bs--insert-one-entry): Simplify. Use `when'. + (bs-buffer-list): Simplify. Use `when'. Use `string-match-p'. + (bs-sort-buffer-interns-are-last): Use `string-match-p'. + (bs-attributes-list, bs-max-window-height, bs-must-always-show-regexp) + (bs-maximal-buffer-name-column, bs-minimal-buffer-name-column) + (bs-configurations, bs-default-configuration) + (bs-alternative-configuration, bs-cycle-configuration-name) + (bs-string-show-always, bs-string-show-never, bs-string-current) + (bs-string-current-marked, bs-string-marked, bs-string-show-normally) + (bs-sort-functions, bs-default-sort-name): Remove * in docstrings. + (bs--redisplay, bs--goto-current-buffer, bs--current-buffer, bs-delete) + (bs-apply-sort-faces, bs-next-config-aux): Use `when'. + (bs--window-config-coming-from): Revert 2006-11-09 change. + (bs--restore-window-config): Keep the selected frame. + (bs--track-window-changes, bs--remove-hooks): New functions. + (bs-mode): Use `define-derived-mode'. Set hook to track window changes. + (bs--create-header): Remove. + (bs--create-header-line): New function, based on `bs--create-header'. + (bs--show-header): Use `bs--create-header-line'. + (bs--show-with-configuration): Revert 2006-11-09 change. + Don't reuse window unless it is visible on the selected frame. + Restore window configuration (possibly in a different frame) + before creating any window. -2005-06-15 Miles Bader +2007-10-16 Glenn Morris - * progmodes/which-func.el (which-func): Only inherit - `font-lock-function-name-face' when that makes sense against the - default mode-line face, otherwise set the face color explicitly. + * simple.el (blink-matching-open): Don't report false errors with + the `$' syntax class. - * progmodes/cperl-mode.el (cperl-init-faces): Use literal cperl - faces instead of (non-existent) variables. +2007-10-16 Richard Stallman -2005-06-14 Stefan Monnier + * emacs-lisp/advice.el (ad-get-advice-info): Change to a function. + (ad-get-advice-info-macro): New macro, like old ad-get-advice-info. + (ad-is-advised, ad-get-advice-info-field) + (ad-set-advice-info-field): Use ad-get-advice-info-macro. - * iswitchb.el (iswitchb-to-end): Replace mapcar with dolist. - (iswitchb-get-matched-buffers): Likewise. Simplify. +2007-10-15 Stefan Monnier -2005-06-14 Miles Bader + * vc-hooks.el (vc-workfile-version): Compatibility alias. + (vc-default-working-revision): Compatibility for backends. - * progmodes/ld-script.el (ld-script-location-counter): - Remove "-face" suffix from face name. - (ld-script-location-counter-face): - New backward-compatibility alias for renamed face. - (ld-script-location-counter-face): Use renamed face. +2007-10-15 Juanma Barranquero - * progmodes/cperl-mode.el (cperl-nonoverridable, cperl-array) - (cperl-hash): Remove "-face" suffix from face names. - (cperl-nonoverridable-face, cperl-array-face, cperl-hash-face): - New backward-compatibility aliases for renamed faces. - (cperl-find-pods-heres, cperl-init-faces, cperl-ps-print-init) - (cperl-ps-print-face-properties): Use renamed cperl-mode faces. + * filesets.el (filesets-alist-get): Use `let' rather than `let*'. + (filesets-ormap, filesets-sort-case-sensitive-flag) + (filesets-remake-shortcut, filesets-ingroup-collect-files): + Fix typos in docstrings. + (filesets-conditional-sort, filesets-find-or-display-file) + (filesets-data-get-name, filesets-data-get-data) + (filesets-data-set, filesets-cmd-query-replace-getargs) + (filesets-ingroup-collect): Doc fixes. - * progmodes/which-func.el (which-func): Remove "-face" suffix from face - name. - (which-func-face): New backward-compatibility alias for renamed face. - (which-func-format): Use renamed which-func face. - - * progmodes/vhdl-mode.el (vhdl-prompt, vhdl-attribute, vhdl-enumvalue) - (vhdl-function, vhdl-directive, vhdl-reserved-word) - (vhdl-translate-off): Remove "-face" suffix and "font-lock-" from face - names. - (vhdl-speedbar-entity, vhdl-speedbar-architecture) - (vhdl-speedbar-configuration, vhdl-speedbar-package) - (vhdl-speedbar-library, vhdl-speedbar-instantiation) - (vhdl-speedbar-subprogram, vhdl-speedbar-entity-selected) - (vhdl-speedbar-architecture-selected) - (vhdl-speedbar-configuration-selected) - (vhdl-speedbar-package-selected) - (vhdl-speedbar-instantiation-selected): Remove "-face" suffix from face - names. - (vhdl-font-lock-keywords-2, vhdl-font-lock-keywords-5): - Use renamed faces. - (vhdl-prompt-face, vhdl-attribute-face, vhdl-enumvalue-face) - (vhdl-function-face, vhdl-directive-face, vhdl-reserved-words-face) - (vhdl-translate-off-face): Variables renamed to remove "font-lock-". - Use renamed faces. - (syntax-alist): Don't use "font-lock-" or "-face" in generated face - names. - (vhdl-font-lock-init, vhdl-ps-print-settings): Use renamed faces. - (vhdl-speedbar-insert-hierarchy, vhdl-speedbar-expand-entity) - (vhdl-speedbar-expand-package, vhdl-speedbar-update-current-unit) - (vhdl-speedbar-make-inst-line, vhdl-speedbar-make-pack-line) - (vhdl-speedbar-make-subpack-line, vhdl-speedbar-make-subprogram-line) - (vhdl-speedbar-item-info, vhdl-speedbar-check-unit): Use renamed faces. - - * progmodes/sh-script.el (sh-heredoc): Remove "-face" suffix from - face name. - (sh-heredoc-face): New backward-compatibility alias for renamed face. - (sh-heredoc-face): Use renamed sh-heredoc face. - - * progmodes/idlw-help.el (idlwave-help-link): - Remove "-face" suffix from face name. - (idlwave-help-link-face): - New backward-compatibility alias for renamed face. - (idlwave-highlight-linked-completions): Use renamed idlwave-help faces. - - * progmodes/idlw-shell.el (idlwave-shell-bp-face) - (idlwave-shell-disabled-bp): Remove "-face" suffix from face names. - (idlwave-shell-bp-face, idlwave-shell-disabled-bp): - New backward-compatibility aliases for renamed faces. - (idlwave-shell-disabled-breakpoint-face) - (idlwave-shell-breakpoint-face): Use renamed idlwave-shell faces. - - * progmodes/flymake.el (flymake-errline, flymake-warnline): - Remove "-face" suffix from face names. - (flymake-errline-face, flymake-warnline-face): - New backward-compatibility aliases for renamed faces. - (flymake-highlight-line): Use renamed flymake faces. - - * progmodes/ebrowse.el (ebrowse-tree-mark, ebrowse-root-class) - (ebrowse-file-name, ebrowse-default, ebrowse-member-attribute) - (ebrowse-member-class, ebrowse-progress): - Remove "-face" suffix from face names. - (ebrowse-tree-mark-face, ebrowse-root-class-face) - (ebrowse-file-name-face, ebrowse-default-face) - (ebrowse-member-attribute-face, ebrowse-member-class-face) - (ebrowse-progress-face): - New backward-compatibility aliases for renamed faces. - (ebrowse-show-progress, ebrowse-show-file-name-at-point) - (ebrowse-set-mark-props, ebrowse-draw-tree-fn) - (ebrowse-draw-member-buffer-class-line, ebrowse-draw-member-long-fn) - (ebrowse-draw-member-short-fn): Use renamed ebrowse faces. - - * progmodes/antlr-mode.el (antlr-default, antlr-keyword, - antlr-syntax) - (antlr-ruledef, antlr-tokendef, antlr-ruleref, antlr-tokenref) - (antlr-literal): Remove "-face" suffix and "font-lock-" from face - names. - (antlr-font-lock-default-face, antlr-font-lock-keyword-face) - (antlr-font-lock-syntax-face, antlr-font-lock-ruledef-face) - (antlr-font-lock-tokendef-face, antlr-font-lock-ruleref-face) - (antlr-font-lock-tokenref-face, antlr-font-lock-literal-face): New - backward-compatibility aliases for renamed faces. - (antlr-default-face, antlr-keyword-face, antlr-syntax-face) - (antlr-ruledef-face, antlr-tokendef-face, antlr-ruleref-face) - (antlr-tokenref-face, antlr-literal-face): Variables renamed to - remove "font-lock-". Use renamed antlr-mode faces. - (antlr-font-lock-additional-keywords): Use renamed faces. Replace - literal face-names with face variable references. - - * buff-menu.el (Buffer-menu-buffer): Remove "-face" suffix from - face name. - (Buffer-menu-buffer-face): New backward-compatibility alias for - renamed face. - (list-buffers-noselect): Use renamed Buffer-menu-buffer face. - -2005-06-15 Daniel Pfeiffer - - * progmodes/make-mode.el (makefile-space, makefile-makepp-perl): - Eliminate "-face" suffix. - (makefile-targets): Inherit from font-lock-function-name-face and - eliminate "-face" suffix. - (makefile-shell): Remove attributes and eliminate "-face" suffix. - (makefile-*-font-lock-keywords): Append makefile-targets in rule - actions, instead of prepending, to make it less visible. - (makefile-previous-dependency, makefile-match-dependency): - Don't match a target on a continuation line. - - * files.el (auto-mode-alist): Put Makefile in gmake mode. - -2005-06-15 Nick Roberts - - * progmodes/gdb-ui.el (menu): Re-order menu items. - (gdb-tooltip-print): Respect tooltip-use-echo-area. - - * progmodes/gud.el (tooltip-use-echo-area): Remove alias. - Define in tooltip.el. - (gud-tooltip-process-output): Respect tooltip-use-echo-area. - (gud-tooltip-tips): Respect tooltip-use-echo-area and - gud-tooltip-echo-area. - - * tooltip.el (tooltip-use-echo-area): Restore from gud.el for - backward compatibility and make obsolete. - (tooltip-help-tips): Use tooltip-use-echo-area. - (tooltip-show-help-function): Rename to... - (tooltip-show-help): ...this, because it is a function. - (tooltip-mode, tooltip-help-message): Call tooltip-show-help. - -2005-06-14 Luc Teirlinck - - * emacs-lisp/edebug.el (edebug-all-defs, edebug-initial-mode) - (edebug-print-length, edebug-print-level, edebug-print-circle) - (edebug-modify-breakpoint, edebug-eval-last-sexp) - (edebug-eval-print-last-sexp): Doc fixes. - -2005-06-14 Kim F. Storm - - * ido.el (ido-mode): Make a new keymap every time we enable ido, - as the coverage buffer/file/both may change. - -2005-06-14 Lute Kamstra - - * net/ange-ftp.el (internal-ange-ftp-mode): Use delay-mode-hooks - and run-mode-hooks. Simplify. - - * mail/rmailedit.el (rmail-edit-mode): - * progmodes/octave-inf.el (inferior-octave-mode): - * progmodes/sql.el (sql-interactive-mode): Use delay-mode-hooks. - - * recentf.el (recentf-dialog-mode): Use kill-all-local-variables - and run-mode-hooks. - (recentf-edit-list, recentf-open-files): Don't call - kill-all-local-variables directly. - - * emacs-lisp/debug.el (debug-on-entry): Fix docstring. - -2005-06-14 Juanma Barranquero - - * emacs-lisp/byte-run.el (make-obsolete) - (define-obsolete-function-alias): Rename arguments FUNCTION and - NEW to OBSOLETE-NAME and CURRENT-NAME respectively. - (make-obsolete-variable, define-obsolete-variable-alias): - Rename arguments VARIABLE and NEW to OBSOLETE-NAME and CURRENT-NAME - respectively. - - * isearchb.el (isearchb-activate): - * pcvs.el (cvs-mode): - * ses.el (ses-load): - * vc-arch.el (vc-arch-checkin, vc-arch-diff): - * net/tramp.el (tramp-find-file-exists-command) - (tramp-find-shell): - * progmodes/ada-mode.el (ada-create-case-exception) - (ada-create-case-exception-substring, ada-make-subprogram-body): - * progmodes/idlw-shell.el (idlwave-shell-move-to-bp): - * progmodes/idlwave.el (idlwave-complete-class-structure-tag-help): - * progmodes/vhdl-mode.el (vhdl-speedbar-place-component): - * textmodes/org.el (org-promote, org-evaluate-time-range) - (org-agenda-next-date-line, org-agenda-previous-date-line) - (org-agenda-error, org-open-at-point, org-table-move-row) - (org-format-table-table-html-using-table-generate-source) - (org-shiftcursor-error, org-ctrl-c-ctrl-c): - * textmodes/reftex.el (reftex-access-scan-info): - * textmodes/reftex-toc.el (reftex-toc-dframe-p) - (reftex-toc-promote-prepare): Follow error conventions. - - * diff-mode.el (diff-mode): Fix typo in docstring. - - * forms.el (forms--intuit-from-file): Fix reference to - `forms-number-of-fields' in error message. - (forms-print): Fix quoting in error message. - - * forms.el (forms-mode): - * emulation/vi.el (vi-goto-insert-state): - * progmodes/flymake.el (flymake-new-err-info) - (flymake-start-syntax-check-for-current-buffer) - (flymake-simple-cleanup): - * eshell/esh-var.el (eshell/export): - * progmodes/gud.el (xdb): - * textmodes/flyspell.el (flyspell-incorrect-hook) - (flyspell-maybe-correct-transposition) - (flyspell-maybe-correct-doubling): Fix quoting in docstring. - -2005-06-13 Luc Teirlinck - - * emacs-lisp/debug.el (cancel-debug-on-entry): Mention default in - minibuffer prompt. - -2005-06-13 Kim F. Storm - - * subr.el (add-to-ordered-list): New defun. - - * emulation/cua-base.el (cua-mode): Use add-to-ordered-list to - add cua--keymap-alist to emulation-mode-map-alists. - -2005-06-13 Stefan Monnier - - * subr.el (complete-in-turn): New macro. - (dynamic-completion-table, lazy-completion-table): Add debug info. - - * faces.el (read-face-name): Use complete-in-turn complete non-aliases - in preference to face aliases. - - * textmodes/fill.el (fill-match-adaptive-prefix): New function. - (fill-context-prefix): Use it to avoid guessing absurdly long prefixes. - Remove unused vars `start' and `firstline'. - (fill-nobreak-p): Fix line-move-invisible -> line-move-invisible-p. - (justify-current-line, fill-individual-paragraphs): Remove unused vars. - -2005-06-13 Eli Zaretskii - - * cus-start.el (all): Don't complain about missing GTK-related - variables, unless either `gtk' is boundp or this isn't a - `windows-nt' build. - -2005-06-13 Lute Kamstra - - * abbrev.el (edit-abbrevs-mode): Use kill-all-local-variables and - run-mode-hooks. - - * ediff-mult.el (ediff-meta-mode): - * ediff-util.el (ediff-mode): Use run-mode-hooks. - - * ledit.el (ledit-mode): Use delay-mode-hooks. - - * woman.el (woman-mode-line-format): Delete constant. - (woman-mode-map): Initialize it properly. - (woman-mode): Set mode-class property to special. - Use delay-mode-hooks and run-mode-hooks. Use the right keymap. - Set major-mode and mode-name. Don't set mode-line-format directly. - (Man-getpage-in-background): Don't reference woman-mode-line-format. - - * emacs-lisp/debug.el (cancel-debug-on-entry): Make the empty - string argument obsolete. - -2005-06-13 Carsten Dominik - - * textmodes/org.el (org-CUA-compatible): New option. - (org-disputed-keys): New variable. - (org-key): New function. - (orgtbl-make-binding): Add docstring to the created function. - (org-mode): Set paragraph start/separate regexps. - (orgtbl-mode): Don't start `orgtbl-mode' in `org-mode' buffers. - (org-archive-location, org-archive-mark-done) - (org-archive-stamp-time): New options. - (org-archive-subtree): New command. - (org-fill-paragraph): New function. - (org-mode): Set `fill-paragraph-function' to `org-fill-paragraph'. - (org-fake-empty-table-line): Function removed. - (org-format-org-table-html): Do not create empty table lines at - separator lines. Improved table header treatment. - (org-link-format): New option. - (org-make-link): New function. - (org-insert-link, org-store-link): Use org-make-link. - (org-open-file): Quote file name for shell command, to allow - spaces in file names. - (org-link-regexp): Fix bug with mailto link. - (org-link-maybe-angles-regexp, org-protected-link-regexp): - New constants. - (org-export-as-html): Deal with the optional angles around a link. - Better treatment of file: links. - (org-open-at-point): Replace @{ and @} with < and >. - (org-run-mode-hooks): Function removed. - (org-agenda-mode): No longer use `org-run-mode-hooks'. +2007-10-15 Sam Steingold -2005-06-13 Nick Roberts + * mail/sendmail.el (sendmail-error-reporting-interactive) + (sendmail-error-reporting-non-interactive): New variables for + sendmail error reporting options to simplify support for imperfect + sendmail emulators. + (sendmail-send-it): Use them instead of list literals. - * progmodes/gdb-ui.el (gdb-registers-mode): Let gdbmi use - MI command -data-list-register-values. - (gdb-post-prompt): Indent properly. +2007-10-15 Juanma Barranquero -2005-06-13 Juanma Barranquero + * help-fns.el: Revert previous change; it creates a + dependency loop between advice.el and help-fns.el. - * hilit-chg.el (highlight-changes-colors): Rename from - `highlight-changes-colours'. - (highlight-changes-colours): Keep as obsolete alias. - (highlight-changes-face-list): Doc fix. - (hilit-chg-make-list): Use `highlight-changes-colors'. +2007-10-15 Juanma Barranquero -2005-06-12 Mark A. Hershberger + * help-fns.el: Require advice when compiling. - * progmodes/cperl-mode.el (cperl-mode): Remove stray paren in - defun-prompt-regexp. +2007-10-14 Drew Adams -2005-06-12 Eli Zaretskii + * emacs-lisp/ring.el (ring-convert-sequence-to-ring) + (ring-insert+extend, ring-remove+insert+extend, ring-member) + (ring-next, ring-previous): New functions. - * loadup.el: Don't say we are dumping under 2 names on windows-nt - and cygwin. +2007-10-14 Richard Stallman - * makefile.w32-in (bootstrap-clean-CMD, bootstrap-clean-SH): - Don't use an old loaddefs.el, as in Makefile.in. + * emacs-lisp/advice.el (documentation): Advice deleted. + Doc for advised functions is now handled at C level. + (ad-stop-advice, ad-start-advice): Don't enable or disable + advice for `documentation'. + (ad-advised-definition-docstring-regexp): Var deleted. + (ad-make-advised-definition-docstring): Store orig name + as text property of string. + (ad-advised-definition-p): Check for text property of docstring. -2005-06-12 Lute Kamstra + * help-fns.el (describe-function-1): Find source of advised functions. - * Makefile.in (bootstrap-prepare): Don't use an old loaddefs.el. +2007-10-14 Juri Linkov - * man.el (Man-mode-map): Initialize it properly. - (Man-mode): Set mode-class property to special. + * faces.el (describe-face): Allow handling a string as the face name. - * calendar/calendar.el (calendar-mode): Use run-mode-hooks. + * textmodes/ispell.el (ispell-word): Call `ispell-region' on the + active region in transient-mark-mode. + (ispell-region): Change messages displayed at the start and end of + the spell-checking to be the same. -2005-06-11 Luc Teirlinck + * startup.el (fancy-startup-tail): Say exactly what does the button + dismiss ("Dismiss this startup screen"). Use text "Never show + it again" for the checkbox after this button. + (fancy-startup-screen, fancy-about-screen): Put point before the + first link, so the user can quickly select links with the keyboard. + (normal-mouse-startup-screen): Add more useful text describing how + to follow a link. - * menu-bar.el (menu-bar-make-toggle): Remove stray backslash. - A newline is needed in the docstring there. +2007-10-14 Glenn Morris - * emacs-lisp/debug.el (debug-on-entry, cancel-debug-on-entry): - Doc fixes. + * progmodes/etags.el (select-tags-table): Disable undo in the + `*Tags Table List*' buffer. -2005-06-11 Vinicius Jose Latorre - - * printing.el: Doc fix. The menubar is no more changed when printing - is loaded, it only changes when pr-menu-bind or pr-update-menus is - called. Now, the menubar changing will work in Emacs 20, 21 and 22. - (pr-version): New version number (6.8.4). - (pr-menu-bind): New command. - (pr-update-menus): Docstring and code fix. - (pr-menu-print-item): Now is a global var in Emacs and XEmacs. - Docstring fix. - (pr-txt-printer-alist, pr-ps-printer-alist, pr-gv-command) - (pr-gs-command, pr-gs-switches, pr-ps-utility-alist): Docstring fix. - -2005-06-11 Thien-Thi Nguyen - - * emacs-lisp/ewoc.el: Doc fixes for public funcs: - "Returns" to "return", document useful return values, etc. - -2005-06-11 Alan Mackenzie - - * textmodes/fill.el (fill-context-prefix): Try `adaptive-fill-function' - BEFORE `adaptive-fill-regexp' when determining a fill prefix. - (adaptive-file-function): Minor amendment to doc-string. - -2005-06-11 Frederik Fouvry - - * thumbs.el (thumbs-per-line, thumbs-thumbsdir-max-size) - (thumbs-relief, thumbs-margin, thumbs-image-resizing-step): - Fix :type--it is `integer', not `string'. - - * faces.el (modeline-highlight): Rename from (the erroneous) - `modeline-higilight'. - -2005-06-11 Lute Kamstra - - * emacs-lisp/edebug.el (edebug-eval-mode-map): Don't copy - lisp-interaction-mode-map but make it the parent. - (edebug-eval-mode): Use define-derived-mode. - -2005-06-11 Andreas Schwab - - * bindings.el: Add binding of `ESC functionkey' for every - `M-functionkey'. - * hexl.el (hexl-mode-map): Likewise. - -2005-06-10 Michael Hotchin (tiny change) - - * progmodes/compile.el (compilation-error-regexp-alist-alist) - [msft]: update regexp for newer msft compilers. - -2005-06-10 Mark A. Hershberger - - * xml.el (start-chars, xml-parse-dtd): Add the ability to skip - ATTLIST portions of included DTDs. - (xml-parse-dtd): Eliminate use of inefficient match-data. - -2005-06-10 Miles Bader - - * play/mpuz.el (mpuz-unsolved, mpuz-solved, mpuz-trivial) - (mpuz-text): Remove "-face" suffix from face names. - (mpuz-unsolved-face, mpuz-solved-face, mpuz-trivial-face) - (mpuz-text-face): New backward-compatibility aliases for renamed faces. - (mpuz-create-buffer, mpuz-paint-digit): Use renamed mpuz faces. - - * play/gomoku.el (gomoku-O, gomoku-X): - Remove "-face" suffix from face names. - (gomoku-font-lock-O-face, gomoku-font-lock-X-face): - New backward-compatibility aliases for renamed faces. - (gomoku-font-lock-keywords): Use renamed gomoku faces. - -2005-06-10 Juanma Barranquero - - * thumbs.el: Fixes for changes of 2005-06-09. - (thumbs-thumbsdir): Force `thumbs-thumbsdir' to be interpretable - as a directory. - (thumbs-thumbname): Remove directory separator from format string; - `thumbs-thumbsdir' now returns a valid directory name. - (thumbs-temp-dir): New defsubst. - (thumbs-temp-file, thumbs-resize-image, thumbs-modify-image): - Use it. - - * cus-edit.el (minibuffer): - * files.el (make-backup-file-name-function): - * filesets.el (filesets-external-viewers): - * hilit-chg.el (highlight-changes-colours) - (highlight-changes-face-list, highlight-changes-rotate-faces): - * ielm.el (ielm-dynamic-return, inferior-emacs-lisp-mode): - * kmacro.el (kmacro-call-macro): - * log-edit.el (log-edit-changelog-full-paragraphs): - * mouse.el (mouse-1-click-follows-link): - * skeleton.el (skeleton-autowrap): - * subr.el (insert-for-yank-1): - * tempo.el (tempo-insert-region): - * terminal.el (terminal-emulator): - * time.el (display-time-mail-face): - * vc.el (vc-annotate): - * vcursor.el (vcursor-copy-line): - * woman.el (woman-bold-headings, woman-ignore) - (woman-default-faces, woman-monochrome-faces): - * calendar/todo-mode.el (todo-insert-threshold): - * emulation/pc-select.el (pc-select-selection-keys-only) - (pc-selection-mode): - * emulation/vip.el (vip-find-char-forward): - * emulation/viper-cmd.el (viper-find-char-forward): - * international/mule-cmds.el - (select-safe-coding-system-accept-default-p) - (input-method-exit-on-invalid-key): - * international/mule-diag.el (describe-coding-system): - * international/ucs-tables.el (unify-8859-on-encoding-mode): - * net/browse-url.el (browse-url-xterm-program): - * obsolete/lazy-lock.el (lazy-lock-mode): - * progmodes/cperl-mode.el (cperl-info-on-command-no-prompt) - (cperl-mode): - * progmodes/cpp.el (cpp-face-light-name-list) - (cpp-face-dark-name-list): - * progmodes/delphi.el (delphi-newline-always-indents): - Fix spellings in docstrings. - - * ido.el (ido-mode, ido-file-extensions-order) - (ido-default-file-method, ido-default-buffer-method) - (ido-max-prospects, ido-slow-ftp-hosts, ido-setup-hook) - (ido-decorations, ido-read-file-name-as-directory-commands) - (ido-read-file-name-non-ido, ido-work-directory-list) - (ido-ignore-item-temp-list, ido-current-directory) - (ido-magic-forward-char, ido-enter-find-file) - (ido-enter-switch-buffer, ido-visit-buffer, ido-switch-buffer) - (ido-find-file, ido-read-buffer): Fix typos in docstrings. - -2005-06-10 Lute Kamstra - - * play/dunnet.el (dun-mode): Use define-derived-mode. - (dungeon-mode-map): Rename to dun-mode-map. Keep old name as an - obsolete alias. +2007-10-13 Eli Zaretskii - * play/doctor.el (doctor-mode-map): Remove defvar. - (doctor-mode): Use define-derived-mode. - - * mail/mspools.el (mspools-mode): - * net/eudc-hotlist.el (eudc-hotlist-mode): - * play/blackbox.el (blackbox-mode): Use run-mode-hooks. - -2005-06-10 Miles Bader - - * textmodes/flyspell.el (flyspell-incorrect, flyspell-duplicate): - Remove "-face" suffix from face names. - (flyspell-incorrect-face, flyspell-duplicate-face): - New backward-compatibility aliases for renamed faces. - (flyspell-mode-on, make-flyspell-overlay) - (flyspell-highlight-incorrect-region) - (flyspell-highlight-duplicate-region) - (flyspell-display-next-corrections) - (flyspell-auto-correct-previous-word): Use renamed flyspell faces. - - * textmodes/texinfo.el (texinfo-heading): Remove "-face" suffix - from face name. - (texinfo-heading-face): New backward-compatibility alias for - renamed face. - (texinfo-heading-face): Use renamed texinfo-heading face. - - * textmodes/tex-mode.el (tex-math, tex-verbatim): Remove "-face" - suffix from face names. - (tex-math-face, tex-verbatim-face): - New backward-compatibility aliases for renamed faces. - (tex-math-face, tex-verbatim-face): Use renamed tex-mode faces. - (tex-insert-quote): Use `tex-verbatim-face' variable instead of - literal face name. - - * textmodes/table.el (table-cell): Remove "-face" suffix from face - name. - (table-cell-face): New backward-compatibility alias for renamed face. - (table--put-cell-face-property, table--update-cell-face): - Use renamed table-cell face. - - * textmodes/sgml-mode.el (sgml-namespace): Remove "-face" suffix - from face name. - (sgml-namespace-face): New backward-compatibility alias for - renamed face. - (sgml-namespace-face): Use renamed sgml-namespace face. - - * textmodes/org.el (org-level-1, org-level-2, org-level-3) - (org-level-4, org-level-5, org-level-6, org-level-7) - (org-level-8, org-warning, org-headline-done) - (org-deadline-announce, org-scheduled-today) - (org-scheduled-previously, org-link, org-done, org-table) - (org-time-grid): Remove "-face" suffix from face names. - (org-level-1-face, org-level-2-face, org-level-3-face) - (org-level-4-face, org-level-5-face, org-level-6-face) - (org-level-7-face, org-level-8-face, org-warning-face) - (org-headline-done-face, org-deadline-announce-face) - (org-scheduled-today-face, org-scheduled-previously-face) - (org-link-face, org-done-face, org-table-face) - (org-time-grid-face): - New backward-compatibility aliases for renamed faces. - (org-level-faces, org-set-font-lock-defaults, org-timeline) - (org-agenda, org-agenda-get-todos, org-agenda-get-deadlines) - (org-agenda-get-timestamps, org-agenda-get-scheduled) - (org-agenda-add-time-grid-maybe, org-table-p): Use renamed org faces. - - * emulation/viper-init.el (viper-search, viper-replace-overlay) - (viper-minibuffer-emacs, viper-minibuffer-insert) - (viper-minibuffer-vi): Remove "-face" suffix from face names. - (viper-search-face, viper-replace-overlay-face) - (viper-minibuffer-emacs-face, viper-minibuffer-insert-face) - (viper-minibuffer-vi-face): - New backward-compatibility aliases for renamed faces. - (viper-search-face, viper-replace-overlay-face) - (viper-minibuffer-emacs-face, viper-minibuffer-insert-face) - (viper-minibuffer-vi-face): Use renamed viper faces. - - * emacs-lisp/testcover.el (testcover-nohits, testcover-1value): - Remove "-face" suffix from face names. - (testcover-nohits-face, testcover-1value-face): - New backward-compatibility aliases for renamed faces. - (testcover-mark): Use renamed testcover faces. - - * calendar/diary-lib.el (diary-button): Remove "-face" suffix from - face name. - (diary-button-face): New backward-compatibility alias for renamed face. - (diary-entry): Use renamed diary-button face. - - * calendar/calendar.el (diary, calendar-today, holiday) - (mark-visible-calendar-date): Remove "-face" suffix from face names. - (diary-face, calendar-today-face, holiday-face): - New backward-compatibility aliases for renamed faces. - (eval-after-load "facemenu", diary-entry-marker) - (calendar-today-marker, calendar-holiday-marker, diary-face): - Use renamed calendar faces. - - * compare-w.el (compare-windows): Remove "-face" suffix from face name. - (compare-windows-face): New backward-compatibility alias for - renamed face. - (compare-windows-highlight): Use renamed compare-windows face. - - * strokes.el (strokes-char): Remove "-face" suffix from face name. - (strokes-char-face): New backward-compatibility alias for renamed face. - (strokes-encode-buffer): Use renamed strokes-char face. - - * pcvs-info.el (cvs-header, cvs-filename, cvs-unknown) - (cvs-handled, cvs-need-action, cvs-marked, cvs-msg): - Remove "-face" suffix from face names. - (cvs-header-face, cvs-filename-face, cvs-unknown-face) - (cvs-handled-face, cvs-need-action-face, cvs-marked-face) - (cvs-msg-face): New backward-compatibility aliases for renamed faces. - (cvs-fi-up-to-date-face, cvs-fi-unknown-face, cvs-fileinfo-pp): - Use renamed pcvs faces. - * pcvs.el (cvs-mode-find-file): Use renamed pcvs faces. - * pcvs-defs.el (cvs-mode-map): Likewise. - * cvs-status.el (cvs-status-font-lock-keywords): Likewise. - - * info.el (info-title-1, info-title-2, info-title-3) - (info-title-4): Remove "-face" suffix from and downcase face names. - (Info-title-1-face, Info-title-2-face, Info-title-3-face) - (Info-title-4-face): - New backward-compatibility aliases for renamed faces. - (Info-fontify-node): Use renamed info faces. - - * hilit-chg.el (highlight-changes, highlight-changes-delete): - Remove "-face" suffix from face names. - (highlight-changes-face, highlight-changes-delete-face): - New backward-compatibility aliases for renamed faces. - (hilit-chg-cust-fix-changes-face-list, hilit-chg-make-ov) - (hilit-chg-make-list): Use renamed highlight-changes faces. - - * generic-x.el (show-tabs-tab, show-tabs-space): - Remove "-face" suffix from face names. - (show-tabs-tab-face, show-tabs-space-face): - New backward-compatibility aliases for renamed faces. - (show-tabs-generic-mode-font-lock-defaults-1) - (show-tabs-generic-mode-font-lock-defaults-2): - Use renamed show-tabs faces. - - * smerge-mode.el (smerge-mine, smerge-other, smerge-base) - (smerge-markers): Remove "-face" suffix from face names. - (smerge-mine-face, smerge-other-face, smerge-base-face) - (smerge-markers-face): - New backward-compatibility aliases for renamed faces. - (smerge-mine-face, smerge-other-face, smerge-base-face) - (smerge-markers-face): Use renamed smerge faces. - - * log-view.el (log-view-file, log-view-message): Remove "-face" - suffix from face names. - (log-view-file-face, log-view-message-face): - New backward-compatibility aliases for renamed faces. - (log-view-file-face, log-view-message-face): Use renamed log-view - faces. - - * paren.el (show-paren-match, show-paren-mismatch): - Remove "-face" suffix from face names. - (show-paren-match-face, show-paren-mismatch-face): - New backward-compatibility aliases for renamed faces. - (show-paren-function): Use renamed show-paren faces. - - * ruler-mode.el (ruler-mode-default, ruler-mode-pad) - (ruler-mode-margins, ruler-mode-fringes) - (ruler-mode-column-number, ruler-mode-fill-column) - (ruler-mode-comment-column, ruler-mode-goal-column) - (ruler-mode-tab-stop, ruler-mode-current-column): Remove "-face" - suffix from face names. - (ruler-mode-default-face, ruler-mode-pad-face) - (ruler-mode-margins-face, ruler-mode-fringes-face) - (ruler-mode-column-number-face, ruler-mode-fill-column-face) - (ruler-mode-comment-column-face, ruler-mode-goal-column-face) - (ruler-mode-tab-stop-face, ruler-mode-current-column-face): - New backward-compatibility aliases for renamed faces. - (ruler-mode-pad, ruler-mode-margins, ruler-mode-fringes) - (ruler-mode-column-number, ruler-mode-fill-column) - (ruler-mode-comment-column, ruler-mode-goal-column) - (ruler-mode-tab-stop, ruler-mode-current-column) - (ruler-mode-mouse-grab-any-column, ruler-mode-ruler): Use renamed - faces. - - * whitespace.el (whitespace-highlight): Remove "-face" suffix from - face name. - (whitespace-highlight-the-space): Use renamed face. - (whitespace-highlight-face): New backward-compatibility alias for - renamed face. - - * woman.el (woman-italic, woman-bold, woman-unknown) - (woman-addition, woman-symbol-face): - Remove "-face" suffix from face names. - (woman-italic-face, woman-bold-face, woman-unknown-face) - (woman-addition-face): - New backward-compatibility aliases for renamed faces. - (woman-default-faces, woman-monochrome-faces, woman-man-buffer) - (woman-decode-region, woman-replace-match) - (woman-display-extended-fonts, woman-special-characters) - (woman-font-alist, woman-change-fonts, woman2-TH, woman2-SH): - Use renamed woman faces. - - * longlines.el (longlines-visible-face): Face removed. - - * diff-mode.el (diff-header, diff-file-header, diff-index) - (diff-hunk-header, diff-removed, diff-added, diff-changed) - (diff-function, diff-context, diff-nonexistent): Remove "-face" - suffix from face names. - (diff-header-face, diff-file-header-face, diff-index-face) - (diff-hunk-header-face, diff-removed-face, diff-added-face) - (diff-changed-face, diff-function-face, diff-context-face) - (diff-nonexistent-face): New backward-compatibility aliases for - renamed faces. - (diff-header-face, diff-file-header-face) - (diff-index, diff-index-face, diff-hunk-header) - (diff-hunk-header-face, diff-removed, diff-removed-face) - (diff-added, diff-added-face, diff-changed-face, diff-function) - (diff-function-face, diff-context-face, diff-nonexistent) - (diff-nonexistent-face): Use renamed diff-mode faces. - - * progmodes/compile.el (compilation-warning-face) - (compilation-info-face): Remove "-face" suffix from face names. - (compilation-warning-face, compilation-info-face): - New backward-compatibility aliases for renamed faces. - (compilation-warning-face, compilation-info-face): - Use renamed compilation faces. - - * add-log.el (change-log-date, change-log-name) - (change-log-email, change-log-file, change-log-list) - (change-log-conditionals, change-log-function) - (change-log-acknowledgement): Remove "-face" suffix from face names. - (change-log-date-face, change-log-name-face) - (change-log-email-face, change-log-file-face) - (change-log-list-face, change-log-conditionals-face) - (change-log-function-face, change-log-acknowledgement-face): - New backward-compatibility aliases for renamed faces. - (change-log-font-lock-keywords): Use renamed change-log faces. - - * cus-edit.el (custom-invalid, custom-rogue, custom-modified) - (custom-set, custom-changed, custom-saved, custom-button) - (custom-button-pressed, custom-documentation, custom-state) - (custom-comment, custom-comment-tag, custom-variable-tag) - (custom-variable-button, custom-face-tag, custom-group-tag-1) - (custom-group-tag): Remove "-face" suffix from face names. - (custom-magic-alist, custom-magic-value-create) - (custom-group-sample-face-get, custom-mode): Use renamed custom faces. - (custom-invalid-face, custom-rogue-face, custom-modified-face) - (custom-set-face, custom-changed-face, custom-saved-face) - (custom-button-face, custom-button-pressed-face) - (custom-documentation-face, custom-state-face) - (custom-comment-face, custom-comment-tag-face) - (custom-variable-tag-face, custom-variable-button-face) - (custom-face-tag-face, custom-group-tag-face-1) - (custom-group-tag-face): - New backward-compatibility aliases for renamed faces. - - * wid-edit.el (widget-documentation, widget-button) - (widget-field, widget-single-line-field, widget-inactive) - (widget-button-pressed): "-face" suffix removed from face names. - (widget-documentation-face, widget-button-face) - (widget-field-face, widget-single-line-field-face) - (widget-inactive-face, widget-button-pressed-face): - New backward-compatibility aliases for renamed faces. - (widget-documentation-face, widget-button-face) - (widget-button-pressed-face, widget-specify-field) - (widget-specify-inactive): Use renamed widget faces. - -2005-06-10 Kenichi Handa - - * term/x-win.el (x-clipboard-yank): Remove condition-case - wrapping. - -2005-06-11 Kenichi Handa - - * add-log.el (change-log-font-lock-keywords): Make the regexp for - date lines stricter. - -2005-06-10 Zhang Wei - - * term/x-win.el (x-clipboard-yank): Use x-selection-value instead - of x-get-selection. - -2005-06-10 Juanma Barranquero - - * comint.el (comint-mode, comint-snapshot-last-prompt): - * frame.el (frame-current-scroll-bars): - * term.el (term-mode, term-check-proc, term-input-sender) - (term-simple-send, term-extract-string, term-word) - (term-match-partial-filename): - * window.el (window-current-scroll-bars): - * emulation/cua-base.el (cua-normal-cursor-color) - (cua-read-only-cursor-color, cua-overwrite-cursor-color) - (cua-global-mark-cursor-color): - * mail/undigest.el (rmail-forward-separator-regex): - Fix typos in docstrings. + * dired.el (dired-warn-writable): New face. + (dired-warn-writable-face): New variable. + (dired-font-lock-keywords): Use dired-warn-writable-face, instead + of dired-warning-face, for group- and world-writable files. - * comint.el (comint-check-proc, make-comint-in-buffer) - (comint-source-default): Doc fixes. +2007-10-13 Richard Stallman - * term.el (term-send-string): Improve argument/docstring consistency. + * files.el (directory-abbrev-alist): Doc fix. -2005-06-09 Luc Teirlinck +2007-10-13 Jari Aalto - * comint.el (comint-send-input): Bind `inhibit-read-only' around - call to `delete-region'. - (comint-mode-hook): Do not enable Font Lock by default. + * comint.el (comint-password-prompt-regexp): Add 'LDAP'. -2005-06-09 Lute Kamstra +2007-10-12 Martin Rudalics - * textmodes/ispell.el (ispell-menu-map-needed): flyspell-mode - could be void. + * frame.el (set-frame-configuration): Assign name parameter only + if it has been set explicitly before. -2005-06-09 Stefan Monnier +2007-10-11 Tom Tromey - * emacs-lisp/debug.el (debugger-will-be-back): New var. - (debug): Use it. - (debugger-step-through, debugger-continue, debugger-jump) - (debugger-return-value): Set it when needed. - (debugger-make-xrefs, debugger-frame, debugger-frame-clear): - Use inhibit-read-only. + * progmodes/gdb-ui.el (gdb-info-stack-custom): Ensure current + frame is visible. -2005-06-09 Juanma Barranquero +2007-10-10 Richard Stallman - * window.el (shrink-window-if-larger-than-buffer) - (window-size-fixed): Fix typo in docstring. + * emacs-lisp/debug.el (debugger-setup-buffer): Disable undo + in *Backtrace*. - * thumbs.el: Don't set `auto-image-file-mode'. Do not create the - thumbnails directory on loading. - (thumbs-conversion-program): Use `eq' to check the system type, - not `equal'. - (thumbs-temp-dir): Initialize to `temporary-file-directory', - not "/tmp". Fix docstring. - (thumbs-thumbsdir): New function to return the thumbnails - directory, creating it if needed. - (thumbs-cleanup-thumbsdir, thumbs-thumbname): Use it. - (thumbs-temp-file): Delete variable and make it into a function. - (thumbs-resize-image, thumbs-modify-image): Use it. - (thumbs-kill-buffer): Simplify. - (thumbs-gensym): Defalias or duplicate CL `gensym'. - (thumbs-resize-image, thumbs-resize-interactive): Fix typos in - docstrings. + * faces.el (face-font-selection-order): Doc fix. -2005-06-09 Kim F. Storm + * loadhist.el (unload-feature): Doc fix. - * subr.el (save-match-data): Add RESEAT arg `evaporate' to - set-match-data to free markers in match-data. +2007-10-13 Glenn Morris - * replace.el (replace-match-data): Pass RESEAT arg `t' to - match-data to unchain markers in match-data. + * progmodes/octave-mod.el (octave-looking-at-kw): Add doc string. + (octave-re-search-forward-kw, octave-re-search-backward-kw): + Add doc string, and an explicit COUNT argument. + (octave-scan-blocks, octave-beginning-of-defun): Explicitly pass + `inc' to search functions. -2005-06-08 Stefan Monnier + * faces.el (face-spec-set): When FRAME is nil, set the default for + new frames (restores pre-2007-09-17 behavior). Doc fix. - * emacs-lisp/debug.el (debug): Don't iconify if we know we'll re-enter - the debugger immediately anyway. Undo the 2005-06-06 change, rendered - unnecessary now. +2007-10-13 John W. Eaton -2005-06-08 Richard M. Stallman + * progmodes/octave-mod.el (octave-looking-at-kw) + (octave-re-search-forward-kw, octave-re-search-backward-kw): + New functions. + (octave-in-defun-p, calculate-octave-indent) + (octave-blink-matching-block-open, octave-beginning-of-defun) + (octave-auto-fill): Use octave-looking-at-kw instead of looking-at, + to search for regexps that contain case-sensitive keywords. + (octave-beginning-of-defun): Likewise, for octave-re-search-backward-kw. + (octave-scan-blocks): Likewise, for octave-re-search-forward-kw. - * emacs-lisp/easy-mmode.el (define-minor-mode): If BODY is empty, - give the variable a doc string that doesn't say don't set it directly. +2007-10-13 Dan Nicolaescu - * textmodes/ispell.el (ispell-check-version): - Use match-string-no-properties. - (ispell-region, ispell-buffer-local-parsing, ispell-buffer-local-dict) - (ispell-buffer-local-words): Likewise. + * frame.el (select-frame-set-input-focus): Fix typo "max" -> "mac". + Do not use a single clause cond. - * progmodes/make-mode.el (makefile-shell-face): Make this a no-op - except on terminals with enough colors to really display it. - (makefile-dependency-regex): Delete spurious `bb'. + * cus-start.el (all): Use test that does not match the X11 version + for mac. - * faces.el (escape-glyph): Use blue once again in last case. - (no-break-space): Redefine so that it isn't invisible on a tty. +2007-10-13 Markus Gritsch (tiny change) -2005-06-08 Kim F. Storm + * progmodes/ebrowse.el (ebrowse-tree-mode): Disable undo in the + BROWSE buffer. - * ido.el (ido-read-file-name): Fallback to read-file-name on C-f - also when reading directory name. +2007-10-13 Dan Nicolaescu -2005-06-08 Lute Kamstra + * cus-start.el (all): Undo previous change. - * textmodes/flyspell.el (flyspell-mode): Use define-minor-mode. - (flyspell-mode-line-string): Remove autoload cookie. - (flyspell-mode): Remove defvar. +2007-10-13 Glenn Morris -2005-06-07 Lute Kamstra + * woman.el (woman0-rename): Fix paren typo. + + * mail/feedmail.el (feedmail-run-the-queue) + (feedmail-look-at-queue-directory): + * mail/reporter.el (reporter-dump-state): + * net/eudc-hotlist.el (eudc-edit-hotlist): + * net/eudc.el (eudc-display-records) + (eudc-filter-duplicate-attributes) + (eudc-distribute-field-on-records, eudc-query-form, eudc-process-form): + * net/eudcb-bbdb.el (eudc-bbdb-filter-non-matching-record) + (eudc-bbdb-query-internal): + * net/eudcb-ldap.el (eudc-ldap-simple-query-internal): + * net/socks.el (socks-build-auth-list): + * progmodes/cc-cmds.el (top level): + * progmodes/cc-styles.el (c-make-styles-buffer-local, c-set-style): + * progmodes/cperl-mode.el (top level, cperl-imenu-addback) + (cperl-write-tags, cperl-tags-treeify): + * progmodes/ebnf-yac.el (ebnf-yac-token-table): + * progmodes/ebnf2ps.el (ebnf-map-name, ebnf-dimensions): + * progmodes/idlw-shell.el (idlwave-shell-filter-bp, top level): + * progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere) + (idlwave-toolbar-remove-everywhere): + * progmodes/idlwave.el (idlwave-indent-line) + (idlwave-sintern-keyword-list, idlwave-scan-user-lib-files) + (idlwave-write-paths, idlwave-all-method-classes) + (idlwave-all-method-keyword-classes, idlwave-entry-keywords) + (idlwave-fix-keywords, idlwave-display-calling-sequence) + (idlwave-complete-in-buffer): + * textmodes/org.el (org-export-as-html, org-export-as-ascii) + (org-fast-tag-selection): + * textmodes/reftex-sel.el (reftex-select-item): Use mapc rather + than mapcar. + +2007-10-13 Dan Nicolaescu + + * diff-mode.el (diff-fine-change): Add :group. + +2007-10-12 Dan Nicolaescu + + * cus-start.el (all): Use the same test as the 22.2 branch. + +2007-10-12 Stefan Monnier + + * diff-mode.el (diff-current-defun): Force recomputation of + change-log-default-name. + +2007-10-12 Chong Yidong + + * startup.el (fancy-startup-screen): Remove an unnecessary newline + and some leftover logic regarding dedicated frames. If showing + concise startup screen, fit window to buffer. + (command-line-1): If we will be using the splash screen, use + find-file instead of find-file-other-window to find additional files. + Comment out unused code for coping with the old sit-for behavior. - * textmodes/org.el (org-run-mode-hooks): New function. - (org-agenda-mode): Use it. +2007-10-12 Stefan Monnier -2005-06-07 David McCabe (tiny change) + * term/xterm.el (xterm-function-map, xterm-alternatives-map): Use the + `meta' modifier consistently, rather than using sometimes meta + sometimes alt. - * emacs-lisp/lisp-mode.el (defstruct): Set `doc-string-elt' property. +2007-10-12 Martin Rudalics -2005-06-06 Stefan Monnier + * window.el (handle-select-window): Revert part of 2007-10-08 + change setting the input focus. - * international/iso-cvt.el (iso-sgml2iso-trans-tab): Add NBSP. +2007-10-12 Glenn Morris -2005-06-06 Luc Teirlinck + * startup.el (command-line): Do not read abbrev file in batch mode. + + * emacs-lisp/byte-opt.el (top level): + * mail/rmail.el (rmail-list-to-menu): + * obsolete/hilit19.el (hilit-mode): + * progmodes/cc-mode.el (c-postprocess-file-styles) + (c-submit-bug-report): + * textmodes/org-publish.el (org-publish-get-plist-from-filename): + * textmodes/reftex.el (reftex-erase-all-selection-and-index-buffers) + (reftex-access-parse-file): + * textmodes/reftex-cite.el (reftex-do-citation) + (reftex-insert-bib-matches): + * textmodes/reftex-ref.el (reftex-offer-label-menu): + * textmodes/reftex-sel.el (reftex-select-unmark): + * textmodes/reftex-toc.el (reftex-toc-do-promote): + * vc-mcvs.el (vc-mcvs-checkin): Use mapc rather than mapcar. - * font-lock.el (font-lock-add-keywords): Doc fix. + * cus-edit.el (custom-variable-menu, custom-face-menu) + (custom-group-menu): Check init-file-user rather than + user-init-file, in case cus-edit is loaded by site-run-file. -2005-06-06 Stefan Monnier +2007-10-11 Dan Nicolaescu - * textmodes/tex-mode.el (tex-guess-mode): Add RequirePackage. - (tex-compile-default): In the absence of any history, use the order in - tex-compile-alist to choose the preferred command. - (tex-compile-commands): Reorder a bit. + * vc.el (vc-deduce-fileset): Delete unused code. + (vc-next-action): Fix typos. - * textmodes/flyspell.el (flyspell-auto-correct-binding) - (flyspell-incorrect-face, flyspell-duplicate-face): - Use (X)Emacs-agnostic code. - (flyspell-mode-map): Don't overwrite at each load. Remove code - redundant with the subsequent add-minor-mode. Merge Emacs and - XEmacs code. - (flyspell-word): Minor simplification. - (flyspell-math-tex-command-p): Quieten the byte-compiler. - (flyspell-external-point-words): Remove unused vars `size' and `start'. - (flyspell-do-correct): Rename from flyspell-xemacs-correct. - Merge the corresponding Emacs code. - (flyspell-correct-word, flyspell-xemacs-popup): - Use flyspell-do-correct. +2007-10-11 Juanma Barranquero - * emacs-lisp/debug.el (debug): Don't bury the buffer unless it's in - a dedicated window. + * bs.el (bs--mark-unmark): New function. + (bs-mark-current, bs-unmark-current): Use it. - * international/latexenc.el (latexenc-find-file-coding-system): - Undo part of last patch, to turn off a compiler warning. +2007-10-11 Eric S. Raymond -2005-06-06 Juri Linkov + * vc.el (vc-diff): + (vc-diff-internal): Merge a patch by Juanma Barranquero. Also, + temporarily disable the check for his edge case of + vc-diff (stopping it from grinding when called from $HOME), as + it's calling some brittle code in vc-hooks.el. + (with-vc-properties): Fix evaluation time of a macro argument. + * ediff-vers.el (ediff-vc-internal): + * vc-hooks.el: + * loaddefs.el: Follow up on VC terminology change. - * tmm.el (tmm-inactive, tmm-remove-inactive-mouse-face): - Rename `tmm-inactive-face' to `tmm-inactive'. +2007-10-11 Juanma Barranquero -2005-06-06 Matt Hodges + * follow.el (follow-stop-intercept-process-output): + Use `follow-call-process-filter' rather than `process-filter'. + Simplify. - * iswitchb.el: Rename faces. +2007-10-11 Eric S. Raymond -2005-06-06 Kim F. Storm + * vc-hooks.el (vc-registered): Robustify this function a bit + against filenames with no directory component. - * emulation/cua-base.el (cua-rectangle, cua-rectangle-noselect) - (cua-global-mark): Remove -face suffix from face names. +2007-10-11 Stefan Monnier - * emulation/cua-gmrk.el (cua--init-global-mark): - Remove cua-global-mark face setup. + * international/characters.el: Undo unwanted and unexplained change. -2005-06-06 Richard M. Stallman +2007-10-10 Vinicius Jose Latorre - * progmodes/make-mode.el (makefile-dependency-regex): Handle whitespace - just like other allowed characters. - (makefile-match-dependency): Exclude leading and training whitespace - from the range of regexp subexp 1. - (makefile-macroassign-regex): Don't try to match the body, - just the name of the macro being defined. + * ps-print.el: Fix the usage of :foreground and :background face + attributes. Reported by Nikolaj Schumacher . + (ps-print-version): New version 6.7.6. + (ps-face-attributes, ps-face-attribute-list, ps-face-background): + Fix code. + (ps-face-foreground-color-p, ps-face-background-color-p) + (ps-face-color-p): New inline funs. - * info.el (Info-read-node-name-2): New function. - (Info-read-node-name-1): Use that. - Add a completion-base-size-function property. +2007-10-10 Carsten Dominik + + * textmodes/org.el (org-additional-option-like-keywords): New constant. + (org-complete): Use `org-additional-option-like-keywords'. + (org-parse-local-options): New function. + +2007-10-10 Carsten Dominik + + * textmodes/org.el (org-in-clocktable-p): New function. + (org-clock-report): Only update the table at point, or insert a new one. + (org-clock-goto): New function. + (org-open-file): Use `start-process-shell-command' instead of + `shell-command' with an ampersand. + (org-deadline, org-schedule): New argument REMOVE to remove the + date from the entry. + (org-agenda-schedule, org-agenda-deadline): Pass the prefix + argument to `org-schedule' and `org-deadline'. + (org-trim): Use the correct expressions for beginning and end of + the string. + (org-get-cleaned-entry): Trim the string before returning it. + (org-clock-find-position): New function. + (org-clock-into-drawer): New option. + (org-agenda-tags-column): Rename from + `org-agenda-align-tags-to-column'. + (org-agenda-align-tags): Allow negative values for + `org-agenda-tags-column'. + (org-insert-labeled-timestamps-before-properties-drawer): Remove var. + (org-agenda-to-appt): New optional argument FILTER. + (org-completion-fallback-command): New variable. + (org-complete): Use `org-completion-fallback-command'. + (org-find-base-buffer-visiting): Catch the case that there is no + buffer visiting the file. + (org-property-or-variable-value): New function. + (org-todo): Use `org-property-or-variable-value' + (org-agenda-compact-blocks): New option. + (org-prepare-agenda, org-agenda-list): Use `org-agenda-compact-blocks'. + (org-agenda-schedule, org-agenda-deadline): + Call `org-agenda-show-new-time'. + (org-agenda-show-new-time): New argument PREFIX. + (org-colgroup-info-to-vline-list): Fix but that cause a + shift in the vertical lines. + (org-buffer-property-keys): New argument INCLUDE-DEFAULTS. + (org-maybe-renumber-ordered-list, org-cycle-list-bullet) + (org-indent-item): No arg in call to `org-fix-bullet-type'. + (org-fix-bullet-type): Remove argument. + (org-read-date): Check for am/pm twice, to catch the end time. + (org-goto-map): Use `suppress-keymap'. + (org-remember-apply-template): Respect the dynamically scoped + selection character. + +2007-10-10 Stefan Monnier + + * frame.el (frame-inherited-parameters): Remove unused `environment' + parameter, and let server.el add `client' when needed. + + * server.el (server-create-tty-frame) + (server-create-window-system-frame): Set frame-inherited-parameters. + + * frame.el (frame-inherited-parameters): New var. + (make-frame): Use it. + + * font-lock.el (lisp-font-lock-keywords-2): Remove let-environment. + + * env.el (let-environment): Remove. Unused. + (read-envvar-name): Simplify. + (setenv): Remove unused arg `frame'. + + * help-fns.el (describe-variable): Add missing " " for multiline + obsolescence info and missing EOL after global value. + +2007-10-10 Eric S. Raymond + + * add-log.el: + * ediff-vers.el: + * log-view.el: + * pcvs.el: + * vc-arch.el: + * vc-bzr.el: + * vc-cvs.el: + * vc.el: + * vc-git.el: + * vc-hg.el: + * vc-hooks.el: + * vc-mcvs.el: + * vc-mtn.el: + * vc-rcs.el: + * vc-sccs.el: + * vc-svn.el: Terminology cleanup: workfile-version -> working-revision, + {find,init,next,previous,annotate-*,log}-version -> + {find,init,next,previous,annotate-*,log}-revision, + annotate-focus-version -> annotate-working-revision, The term + 'focus' is gone. The term 'revision' is now used consistently + everywhere that reference to a revision ID is intended, replacing + older use of 'version'. - * simple.el (completion-setup-function): Look for - completion-base-size-function property of minibuffer-completion-table. +2007-10-10 Juanma Barranquero - * files.el (locate-file-completion): Doc fix. + * follow.el: Change all instances of "Follow Mode" to "Follow + mode" in docstrings and messages. + (follow-menu-filter): Fix arg passed to `bound-and-true-p'. + +2007-10-10 Eric S. Raymond + + * vc.el (vc-next-action): Rewrite completely; this principal + entry point now operates on a current fileset selected either + explicitly via VC-Dired or implicitly by visiting a file buffer, + rather than always operating on the file of the current buffer as + in older versions. Rewrite the rest of the mode to match. + (with-vc-properties): Rewrite to operate on a file list. + (with-vc-file): vc-checkin takes a file list argument now. + (vc-post-command-functions): This hook now receives a file list. + (vc-do-command): Take a either a file or a file list as argument. + (vc-deduce-fileset): New function for deducing a file list to + operate on. + (vc-next-action-on-file, vc-next-action-dired): Remove. + Merge into vc-next-action. + (vc-register): Adapt to the fact that vc-start-entry now takes a + file list. + (vc-register-with): New function. + (vc-start-entry): Take a file list argument rather than a + file argument. + (vc-checkout): Cope with vc-start-entry taking a file list. + (vc-steal-lock): Cope with with-vc-properties taking a + file list. + (vc-checkin): Take a file list argument rather than a file argument. + (vc-finish-logentry): Use the filelist passed by vc-start-entry. + (vc-diff-internal): Rewrite for filesets. + (vc-diff-sentinel): New function, tests whether changes were + written into a diff buffer. + (vc-diff): Rewrite for filesets. + (vc-version-diff): Rewrite for filesets. + (vc-print-log): Take a fileset argument. + (vc-revert): Revert the entire selected fileset, not just the + current buffer. + (vc-rollback): Roll back the entire selected fileset, if + possible. No longer accepts a prefix argument. + (vc-update): Merge new changes for the entire selected + fileset, not just the current buffer. + (vc-revert-file): Cope with with-vc-properties taking a file list. + (vc-default-dired-state-info): Add + status suffix if the file is + modified. + (vc-annotate-warp-version): Use the new diff machinery. + (vc-log-edit): Take a file list argument rather than a file argument. - * printing.el: Don't call pr-update-menus; user must do that. +2007-10-10 Michael Albinus - * emacs-lisp/debug.el (debugger-window): New variable. - (debug): Use debugger-window if it is set and still alive. - Record debugger-window for next entry. + Sync with Tramp 2.1.11. - * mail/supercite.el (sc-mail-glom-frame): Mark as risky. + * net/tramp.el (tramp-open-connection-setup-interactive-shell): + Pacify byte compiler. -2005-06-06 Matthias F,Av(Brste + * net/trampver.el: Update release number. - * files.el (hack-local-variables-confirm): New arg FLAG-TO-CHECK. - (hack-one-local-variable, hack-local-variables) - (hack-local-variables-prop-line): Pass that arg. +2007-10-09 Richard Stallman -2005-06-06 Kim F. Storm + * play/gamegrid.el (gamegrid-setup-default-font): Use face-spec-set. - * ido.el (ido-first-match, ido-only-match, ido-subdir) - (ido-indicator): Remove -face suffix from face names. +2007-10-09 Juanma Barranquero -2005-06-06 Juri Linkov + * follow.el: Require easymenu. + (follow-mode-hook, follow-mode): Doc fixes. + (follow-mode-off-hook): Mark as obsolete. - * font-lock.el (font-lock-regexp-backslash) - (font-lock-regexp-backslash-construct): New faces. - (lisp-font-lock-keywords-2): Use new faces. Match `?:' only - after `('. Add `while-no-input' to control structures. +2007-10-08 Martin Rudalics - * faces.el (no-break-space, shadow): New faces. - (escape-glyph): Use less loud colors pink2 and red4. + * window.el (mouse-autoselect-window-cancel): Don't cancel for + select-window or select-frame events. + (handle-select-window): When autoselecting window set input + focus. Restructure. - * diff-mode.el (diff-context-face) - * dired.el (dired-ignored) - * rfn-eshadow.el (file-name-shadow) - * tmm.el (tmm-inactive-face): Inherit from `shadow' face. + * frame.el (focus-follows-mouse): Move to frame.c. + * cus-start.el (all): Add focus-follows-mouse. - * info.el (Info-title-1-face): Use green instead of yellow because - bold yellow is not readable on light backgrounds. +2007-10-08 Juanma Barranquero - * progmodes/compile.el (compilation-start): Move `erase-buffer' up - before selecting the desired mode to not spend time fontifying - old contents. + * bs.el (bs-mode): Make sure global-font-lock-mode doesn't + activate font-locking in the *buffer-selection* buffer. + (bs-show-sorted): Doc fix. -2005-06-06 Juanma Barranquero + * bs.el (bs--get-marked-string, bs--get-modified-string) + (bs--get-readonly-string, bs--get-size-string, bs--get-name) + (bs--get-mode-name, bs-mode): Fix typos in docstrings. + (bs--format-aux): Doc fix. - * thumbs.el (thumbs-thumbsdir-max-size, thumbs-image-resizing-step) - (thumbs-thumbsdir-auto-clean): Fix typos in docstrings. +2007-10-08 Michaël Cadilhac - * ps-print.el (ps-default-fg, ps-default-bg): - Fix typos in docstrings. + * progmodes/gud.el (gud-gud-gdb-command-name): Fix typo in docstring. - * isearchb.el (isearchb): Don't pass a spurious second argument to - `iswitchb-completions'. +2007-10-08 Nick Roberts -2005-06-05 Nick Roberts + * progmodes/gud.el (gud-gud-gdb-command-name): New option. + (gud-gdb): New function for old M-x gdb (text command mode). + (gud-gdb-command-name, gdb): Move to... - * progmodes/gdb-ui.el (gdb-info-locals-handler): Use window point - to preserve point. - (gdb-find-file-hook): Add doc string. + * progmodes/gdb-ui.el: ...here and adapt doc string. + (gud-gdba-command-name, gdba): Delete. - * progmodes/gud.el (gdb, gud-menu-map): Add command to evaluate - C dereferenced pointer expression. - (gud-tool-bar-map): Put it on the tool bar. Re-order icons. +2007-10-08 Juanma Barranquero - * toolbar/gud-pstar.xpm, toolbar/gud-pstar.pbm: New files. + * bs.el: Don't defvar `font-lock-verbose'. + (bs-config-clear, bs-kill, bs-string-show-normally, bs-sort-functions) + (bs--get-file-name): Fix typos in docstrings. + (bs--show-header): Use `dolist' instead of `mapcar'. + (bs-mode): Set `show-trailing-whitespace' to nil. + (bs-buffer-sort-function, bs-mouse-select-other-frame) + (bs-visits-non-file, bs-sort-buffer-interns-are-last, bs-show): + Doc fixes. - * toolbar/gud-break.xpm, toolbar/gud-cont.xpm, toolbar/gud-down.xpm - * toolbar/gud-finish.xpm, toolbar/gud-ni.xpm, toolbar/gud-n.xpm - * toolbar/gud-print.xpm, toolbar/gud-remove.xpm, toolbar/gud-run.xpm - * toolbar/gud-si.xpm, toolbar/gud-s.xpm, toolbar/gud-until.xpm - * toolbar/gud-up.xpm, toolbar/gud-watch.xpm: - Make background transparent. +2007-10-08 Adam Hupp (tiny change) -2005-06-04 Luc Teirlinck + * progmodes/gud.el (pdb): Specify file for gud-break. - * font-lock.el (font-lock-add-keywords): Doc fix. Comment change. - (font-lock-remove-keywords): Doc fix. - (font-lock-mode-major-mode): Compiler defvar. - (font-lock-set-defaults): Use `font-lock-mode-major-mode'. +2007-10-08 Nick Roberts - * font-core.el (font-lock-mode-major-mode): Compiler defvar. - (font-lock-mode): Update `font-lock-mode-major-mode'. - (font-lock-set-defaults): Compiler defvar. - (font-lock-default-function): Take `font-lock-mode-major-mode' - into account. + * progmodes/gud.el (gdb): Make graphical mode the default and + switch to text command mode if appropriate, i.e., reverse previous + arrangement. + (gud-gdb-marker-filter): Adapt for above change. - * emacs-lisp/easy-mmode.el (define-global-minor-mode): Make it - keep track of which major mode it enabled the minor mode for. - Use find-file-hook again. Update docstring. + * progmodes/gdb-ui.el (gdb-init-1): Don't set the values + gud-minor-mode and gud-marker-filter. + (gdb-fullname-regexp): New variable. + (gud-gdba-marker-filter): Use it to switch to text command + mode if appropriate. - * simple.el (eval-expression-print-level) - (eval-expression-print-length, eval-expression-debug-on-error): - Doc fixes. +2007-10-08 Nick Roberts -2005-06-04 Matt Hodges + * progmodes/gud.el (gud-display-line): Find source buffer even when + GUD buffer has its own frame. - * iswitchb.el (iswitchb-single-match-face) - (iswitchb-current-match-face, iswitchb-virtual-matches-face) - (iswitchb-invalid-regexp-face): New faces. - (iswitchb-completions): Use them. - (iswitchb-use-faces): Rename from iswitchb-use-fonts, which is - now marked as an obsolete alias. - (iswitchb-read-buffer): Remove check for bound font variables. - (iswitchb-invalid-regexp): New free variable. - (iswitchb-get-matched-buffers): Catch invalid-regexp errors and - set iswitchb-invalid-regexp. - (iswitchb, iswitchb-complete, iswitchb-completions): Deal with - invalid regexps. - (iswitchb-completions): Add check for complete match when entering - a regexp. - (iswitchb-completions): Remove require-match argument. - (iswitchb-exhibit): Fix caller. - (iswitchb-common-match-inserted): New variable. - (iswitchb-complete, iswitchb-completion-help): Use it. +2007-10-08 Jan Djärv -2005-06-04 David Reitter (tiny change) + * term/x-win.el (icon-map-list): Set to nil for 22.1 compatibility. - * url/url-http.el (url-http-chunked-encoding-after-change-function): - Use `url-http-debug' instead of `message'. +2007-10-08 Jan Djärv -2005-06-04 Thierry Emery (tiny change) + * term/x-win.el (x-gtk-stock-map): Version is 22.2. - * url/url-http.el (url-http-parse-headers): Pass redirected URL - as a callback argument. +2007-10-08 Martin Rudalics -2005-06-04 Kim F. Storm + * allout.el (allout-before-change-handler): Replace got-char by + goto-char. - * simple.el (line-move): Only call sit-for when moving backwards. +2007-10-08 Stefan Monnier - * ido.el (ido-make-merged-file-list-1): New defun split from - ido-make-merged-file-list. - (ido-make-merged-file-list): Bind throw-on-input around call to - ido-make-merged-file-list-1. Return input-pending-p if - interrupted by more input available. - (ido-read-internal): Handle input-pending-p return value from - ido-make-merged-file-list. + * vc-svn.el (vc-svn-resolve-when-done, vc-svn-find-file-hook): New funs. + Used to try and automatically enabled smerge-mode in the presence of + conflicts and to call `svn resolved' when the conflicts are gone. + (vc-svn-parse-status): Remember the svn-specific status. -2005-06-03 Stefan Monnier +2007-10-08 Eli Zaretskii - * textmodes/flyspell.el (flyspell-check-word-p): Simplify silly - compatibility code. + * menu-bar.el (menu-bar-search-documentation-menu): Rename from + menu-bar-apropos-menu. All users changed. + (menu-bar-help-menu): Change menu symbols to better match the text + displayed by the menu. - * international/latexenc.el (latexenc-find-file-coding-system): - Don't inherit the EOL part of the coding-system from the - tex-main buffer. Fit within 80 columns. +2007-10-08 Dan Nicolaescu -2005-06-03 Matt Hodges + * files.el (file-name-sans-versions): Use [:alnum:] and also allow + #, @, : and ^. - * tmm.el (tmm-inactive-face): New face. - (tmm-remove-inactive-mouse-face): New function. - (tmm-prompt, tmm-add-one-shortcut) - (tmm-add-prompt, tmm-get-keymap): Make active menu items visible - but not selectable. +2007-10-08 Dan Nicolaescu -2005-06-03 Juanma Barranquero + * pcvs-defs.el (cvs-mode-map): Bind TAB and backtab. - * faces.el (face-equal): Improve argument/docstring consistency. + * log-view.el (log-view-mode-map): Likewise. -2005-06-03 Daniel Pfeiffer + * diff-mode.el (diff-mode-shared-map): Likewise. - * progmodes/make-mode.el (makefile-targets-face) - (makefile-shell-face, makefile-makepp-perl-face): Add :version. - (makefile-bsdmake-dependency-regex) - (makefile-makepp-rule-action-regex) - (makefile-bsdmake-rule-action-regex): New constants. - (makefile-makepp-mode, makefile-bsdmake-mode): Use them. +2007-10-08 Dan Nicolaescu - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Allow (...) within `...' for makepp messages. + * files.el (file-name-sans-versions): Also allow `A-Z'. -2005-06-03 Michael Kifer + * vc.el: Mention all supported VC backends. - * ediff-diff.el (ediff-same-contents): Eliminate CL-type functions. +2007-10-08 Richard Stallman - * ediff-mult.el (ediff-intersect-directories): Make sure that ".." and - "." files are deleted from all file lists before comparison. + * wid-edit.el (widget-specify-button): Don't merge mouse-face with + neighbouring buttons. - * emulation/viper-keym.el (viper-toggle-key, viper-quoted-insert-key) - (viper-ESC-key): Made them customizable. +2007-10-08 Andreas Schwab - * emulation/viper.el (viper-non-hook-settings): - Fix the names of defadvices. + * files.el (file-name-sans-versions): Also allow `_'. -2005-06-01 Luc Teirlinck +2007-10-08 Dan Nicolaescu - * autorevert.el (auto-revert-buffers): Use save-match-data. + * files.el (file-name-sans-versions): Allow - and a-z in version names. -2005-06-01 Stefan Monnier + * log-view.el (log-view-mode-map, log-view-mode-menu): + Bind log-view-annotate-version. + (log-view-beginning-of-defun, log-view-end-of-defun) + (log-view-annotate-version): New functions. + (log-view-mode): Use log-view-beginning-of-defun and + log-view-end-of-defun. - * emacs-lisp/easymenu.el (easy-menu-return-item): Quick fix to find - menu items with a nil command binding. +2007-10-08 Stefan Monnier -2005-06-01 Juanma Barranquero + * emacs-lisp/easy-mmode.el (define-minor-mode): Fix staging. - * emacs-lisp/cl-macs.el (defsetf): - Improve argument/docstring consistency. +2007-10-08 Stefan Monnier - * faces.el (list-faces-display): Improve the formatting by - computing the maximum length required for any face-name (reworked - patch of 1999-01-11, accidentally deleted on 1999-07-21). - (internal-find-face): Remove redundant info in docstring. + * wid-edit.el (widget-image-insert): Don't merge mouse-face with + neighbouring buttons. -2005-06-01 Nick Roberts + * progmodes/compile.el (compilation-error-regexp-alist-alist): + Recognize gcc's use of "note" for informational messages. - * progmodes/gdb-ui.el (gdb-set-gud-minor-mode-1) - (gdb-info-breakpoints-custom, gdb-delete-breakpoint) - (gdb-goto-breakpoint, gdb-source-info, gdb-get-location) - (gdb-assembler-custom): Improve regexps. - (def-gdb-auto-update-handler): Use window point to preserve point. +2007-10-08 Stefan Monnier -2005-05-31 Stefan Monnier + * textmodes/css-mode.el (css-electric-keys): electrick->electric. + (css-mode): Update correspondingly. - * thumbs.el (thumbs-mode): Fix misuse of make-variable-buffer-local. +2007-10-08 Dan Nicolaescu -2005-05-31 Jay Belanger + * vc-git.el (vc-git-log-view-mode): Add font-lock patterns for + Signed-off-by, Acked-by and Merge. - * calc/calc-embed.el (calc-embedded-word): Change argument passed - to calc-embedded. - (calc-embedded-make-info): Have plain prefix argument select - entire line. +2007-10-08 Stefan Monnier -2005-05-31 Juanma Barranquero + * ediff-init.el (ediff-verbose-p): This var is not a constant. - * faces.el (list-faces-display): Signal error if passed a regexp - that matches no face name. +2007-10-08 Stefan Monnier - * simple.el (filter-buffer-substring): Fix typo in docstring. + * vc-mtn.el: New file. -2005-05-31 Richard M. Stallman + * vc-hooks.el (vc-handled-backends): Add Mtn. - * progmodes/vhdl-mode.el (vhdl-fill-region): Test ARG, not INTERACTIVE. - (vhdl-emacs-21): Doc fix. - (vhdl-mode): Unconditionally set comment-padding. - (vhdl-fixup-whitespace-region): Insert spaces only where - there are none. - (vhdl-statistics-buffer): Make the Emacs 21 behavior universal. +2007-10-08 Eli Zaretskii -2005-05-30 John Wiegley + * files.el (find-file, find-file-other-window) + (find-file-other-frame, find-file-existing, find-file-read-only) + (find-file-read-only-other-window) + (find-file-read-only-other-frame) + (find-alternate-file-other-window, find-alternate-file): Doc fixes. - * eshell/em-cmpl.el, eshell/em-dirs.el, eshell/em-glob.el - * eshell/em-unix.el, eshell/esh-ext.el, eshell/esh-io.el - * eshell/esh-util.el, eshell/esh-var.el: Change all uses of - `directory-sep-char' to ?/, and all uses of `string-to-int' to - `string-to-number'. +2007-10-08 Nick Roberts -2005-05-30 Jay Belanger + * progmodes/gud.el (gdb-ready): New variable. + (gdb): Set it to nil. Set gud-running to nil here... + (gud-common-init): ...instead of here. - * calc/calc.el (calc-bug-address): Fix docstring. - (calc-window-hook, calc-trail-window-hook): New variables. - (calc-trail-display): Restore use of calc-trail-window-hook. - (calc): Restore use of calc-window-hook. + * progmodes/gdb-ui.el (gdba, gdb-send, gdb-source-info): + Use gdb-ready. Discard input until GDB is ready to accept it. -2005-05-31 Masatake YAMATO +2007-10-08 Martin Rudalics - * emacs-lisp/find-func.el (find-function-noselect): Handle subroutines. + * dired.el (dired-warning): Inherit from font-lock-warning-face to + make it show up with eight colors. - * help-fns.el (help-C-file-name): Add autoload mark for - `find-function-noselect'. +2007-10-08 Stefan Monnier -2005-05-30 Stefan Monnier + * diff-mode.el (diff-sanity-check-hunk): Fix up the case when unified + diffs are concatenated with no intervening line. - * textmodes/tex-mode.el (tex-compile-commands, tex-compile) - (tex-start-tex): Undo all but the last part of the 2005-05-28 change. +2007-10-08 Dave Love -2005-05-30 Glenn Morris + * progmodes/python.el: Merge changes from Dave Love's v2007-Sep-10. + (python-font-lock-keywords): Update to the 2.5 version of the language. + (python-quote-syntax): Let-bind font-lock-syntactic-keywords to nil. + (python-backspace): Only behave funny in code. + (python-compilation-regexp-alist): Add PDB stack trace regexp. + (inferior-python-mode): Add PDB prompt regexp. + (python-fill-paragraph): Refine the fenced-string regexp. + (python-find-imports): Handle imports spanning several lines. + (python-mode): Add `class' to hideshow support. - * calendar/diary-lib.el (mark-included-diary-files): Only kill - included diary buffer if it was not already being visited. - Reported by Stephen Berman . +2007-10-08 Stefan Monnier - * calendar/icalendar.el (top-level): Do not require appt. + * pcvs.el (cvs-mode-add-change-log-entry-other-window): + Use add-log-buffer-file-name-function rather than binding + buffer-file-name, so we don't end up calling change-log-mode in *cvs* + when `fi' is the ChangeLog file itself. - * mail/supercite.el (sc-select-attribution): Only use a list - element from sc-attrib-selection-list if it returns a string. - Reported by Davide G. M. Salvetti . + * outline.el (outline-flag-region): Use front-advance. -2005-05-30 Juanma Barranquero +2007-10-08 Ilya Zakharevich - * thumbs.el (thumbs-thumbname): The resulting thumbname now - includes a hash value to improve its uniqueness, and has a ".jpg" - extension. Also, it is now a valid filename on all systems. - (thumbs-make-thumb): Use `let', not `let*'. - (thumbs-show-thumbs-list): Check for JPEG availability. + * progmodes/cperl-mode.el: Merge upstream 5.23. + (cperl-where-am-i): Remove function. + (cperl-backward-to-noncomment): Don't go too far when skipping POD/HEREs + (cperl-sniff-for-indent): De-invert [string] and [comment]. + When looking for label, skip s:m:y:tr. + (cperl-indent-line): Likewise. + (cperl-mode): Don't assume `font-lock-multiline' is auto-local. + (cperl-windowed-init): Wrong `ps-print' handling. + Both thanks to Chong Yidong. + (cperl-look-at-leading-count): Could fail with unfinished RExen. + (cperl-find-pods-heres): If the second part of s()[] is missing, + don't try to highlight delimiters... -2005-05-30 Richard M. Stallman +2007-10-08 Stefan Monnier - * filesets.el (filesets-menu-ensure-use-cached): - Prevent warning when emacs-version>= is undefined. + * progmodes/compile.el (compilation-get-file-structure): Complete last + change by also using spec-directory in the puthash. - * printing.el (pr-interactive-n-up): Use string-to-number. +2007-10-08 Riccardo Murri - * emulation/tpu-mapper.el: Use eval-buffer, not eval-current-buffer. + * vc-bzr.el (vc-bzr-file-name-relative): Use 'when' instead of 'and'. + (vc-bzr-status): Fix shadowing of variable 'status'. + (vc-bzr-workfile-version): Use correct path to 'last-revision' file. + Use `expand-file-name' instead of `concat'. + (vc-bzr-annotate-command): Use option name '--long' instead of '-l'. + Update annotation line regexp. Fixes launchpad.net [Bug 137435]. - * emacs-lisp/bytecomp.el (byte-compile-nogroup-warn): - Warn only when name to be defined is quoted. +2007-10-08 Jason Rumney -2005-05-30 Nick Roberts + * frame.el (focus-follows-mouse): Doc-fix. Change default on w32. - * progmodes/gdb-ui.el (gdb-toggle-breakpoint): - Make regexp more robust. - (gdb-display-assembler-buffer, gdb-frame-assembler-buffer): - Force regeneration of disassembly. +2007-10-08 Richard Stallman -2005-05-29 Jay Belanger + * emacs-lisp/lisp-mode.el (lisp-indent-offset): Make defcustom. + Add `safe-local-variable' property. + (lisp-body-indent): Likewise. - * calc/calc.el (calc-user-invocation): Check if - calc-invocation-macro is non-nil. +2007-10-08 Richard Stallman -2005-05-29 Juri Linkov + * files.el (hack-local-variables-confirm): Rename arg VARS to ALL-VARS. + Add doc string. - * add-log.el (change-log-font-lock-keywords): - Add `+' to e-mail regexp to accept mail address with keywords. +2007-10-08 Martin Rudalics - * man.el (Man-name-regexp): Add `:' to accept qualified names. + * files.el (backup-buffer-copy): Try to overwrite old backup first. -2005-05-29 Luc Teirlinck +2007-10-08 Martin Rudalics - * progmodes/inf-lisp.el (inferior-lisp-mode): Use delay-mode-hooks. + * repeat.el (repeat): Use last-repeatable-command instead of + real-last-command. Run pre- and post-command hooks for + self-insertion. Update doc-string. - * ielm.el (inferior-emacs-lisp-mode): Ditto. +2007-10-08 Alexandre Julliard -2005-05-29 Richard M. Stallman + * vc-git.el (vc-git-state): Call git-add --refresh to update the + state of the file. + (vc-git-workfile-unchanged-p): Delegate implementation to vc-git-state. + (vc-git-create-repo): Fix invalid command. - * textmodes/flyspell.el (flyspell-auto-correct-previous-word): - Undo the change that moves to end of the current word. +2007-10-08 Richard Stallman -2005-05-29 Nick Roberts + * textmodes/flyspell.el (flyspell-mode): + Catch errors in flyspell-mode-on. - * progmodes/gdb-ui.el (gdb-memory-set-repeat-count): - Throw error when count <= 0 to ensure input is a number. - (gdb-read-memory-custom): Pick up address from buffer. - (gdb-memory-mode): Allow user to increment and decrement - memory address from header line. +2007-10-09 Juanma Barranquero -2005-05-29 Richard M. Stallman + * term/x-win.el (x-alternatives-map): Remove spurious parenthesis. - * textmodes/flyspell.el (flyspell-version): Function deleted. - (flyspell-auto-correct-previous-hook): Doc fix. +2007-10-09 Stefan Monnier - * jit-lock.el (jit-lock-function, jit-lock-after-change): - Do nothing if memory is full. + * international/encoded-kb.el (encoded-kbd-setup-display): + Use input-decode-map rather than local-key-translation-map. - * font-lock.el (font-lock-fontify-syntactically-region): - Pass t for GREEDY to looking-back. + * term/rxvt.el (rxvt-alternatives-map): New map. + (terminal-init-rxvt): Use it. + Bind rxvt-function-map in input-decode-map. - * saveplace.el (save-place-alist-to-file): Write the file - using write-region. + * term/xterm.el (xterm-alternatives-map): New map. + (terminal-init-xterm): Use it. + Bind xterm-function-map in input-decode-map. - * subr.el (looking-back): New argument GREEDY. + * term/x-win.el (x-alternatives-map): New var. + (x-setup-function-keys): Use it. - * progmodes/compile.el (compilation-start): Set the mode - before inserting the initial text. + * help-fns.el (describe-variable): Slightly change the layout of + meta-info to separate it better from the docstring. + Standardize insertion of extra empty lines in various circumstances. - * progmodes/which-func.el (which-func-update-1): Turn the mode - off in case of error by setting which-func-mode. + * diff-mode.el (diff-hunk-style): New fun. + (diff-end-of-hunk): Use it. + (diff-context->unified): Use the new `apply' undo element, + if applicable, so as to save undo-log space. + (diff-fine-change): New face. + (diff-fine-highlight-preproc): New function. + (diff-fine-highlight): New command. + (diff-mode-map, diff-mode-menu): Add diff-fine-highlight. -2005-05-29 Peter Heslin (tiny change) + * smerge-mode.el (smerge-refine-chopup-region): Add `preproc' argument. + (smerge-refine-highlight-change): Add `props' argument. + (smerge-refine-subst): New function holding most of smerge-refine. + (smerge-refine): Use it. - * textmodes/flyspell.el (flyspell-auto-correct-previous-word): - Narrow down to what's on the screen, and recenter overlays - at the end of the next word. - -2005-05-29 Manuel Serrano - - * textmodes/flyspell.el (flyspell-emacs, flyspell-use-local-map): - 8Vars moved up. - (flyspell-default-delayed-commands): Add backward-delete-char-untabify. - (flyspell-abbrev-p): Default to nil. - (flyspell-use-global-abbrev-table-p): Doc fix. - (flyspell-large-region): Allow nil as value. - (flyspell-use-meta-tab, flyspell-auto-correct-binding): New variables. - - (mail-mode-flyspell-verify): More robust handling - of `mail-header-separator'. More efficient signature detection. - Allow for regexp metacharacters in message-header-separator. - Adding `To' not to be checked in mail-mode-flyspell-verify. - - (flyspell-prog-mode): Run flyspell-prog-mode-hook. - (flyspell-mouse-map): Bind M-TAB only if flyspell-use-meta-tab. - Bind flyspell-auto-correct-binding. - Bind C-. and C-, . - (flyspell-mode-map): Likewise. - (flyspell-mode): Doc fix. - (flyspell-accept-buffer-local-defs): Preserve current buffer. - (flyspell-mode-on): Bind flyspell-mouse-map and flyspell-mode-map. - (flyspell-word-cache-result): New var, always local. - (flyspell-check-pre-word-p): Doc fix. - (flyspell-check-changed-word-p): Handle spc like newline. - (flyspell-post-command-hook): Set flyspell-word-cache-result. - (flyspell-word-search-backward, flyspell-word-search-forward): - New functions. - (flyspell-word): Return t if nothing to check. - When parsing TeX code, check for after } or \. - Use flyspell-word-search-backward to find previous word. - Return nil if duplicated word. - For word already checked, return same value as last time. - Set flyspell-word-cache-result after checking. - Don't clobber the return value. - (flyspell-get-word): Major rewrite. - (flyspell-external-point-words): New locals pword, pcount. - Fix size used in progress message. - Find the proper corresponding word in flyspell-large-region-buffer. - (flyspell-region): Check for flyspell-large-region = nil. - (flyspell-highlight-incorrect-region): Clean up overlays in region. - (flyspell-auto-correct-word): Check that WORD is a cons. - (flyspell-correct-word): Likewise. - -2005-05-29 Daniel Pfeiffer - - * progmodes/make-mode.el (makefile-rule-action-regex) - (makefile-macroassign-regex, makefile-makepp-mode) - (makefile-bsdmake-mode): Continuation lines may be empty. - Reported by Joshua Varner. - (makefile-makepp-font-lock-keywords): Add $(stem). - -2005-05-28 Karl Berry - - * textmodes/tex-mode.el: Now that tex-send-command calls - shell-quote-argument (2005-03-31 change), remove all calls to - shell-quote-argument; they all end up invoking tex-send-command. - The double quoting loses on filenames with non-safe characters, - such as "@". Reported by Frederik Fouvry. - -2005-05-29 Nick Roberts - - * progmodes/gdb-ui.el (gdb-assembler-custom): Be more careful - about preserving point. - -2005-05-27 Jay Belanger - - * calc/calc-misc.el (calc-info-goto-node): Use info instead of - Info-goto-node. +2007-10-08 Eric S. Raymond - * calc/calc-embed.el (calc-embed-arg): New variable. - (calc-do-embedded-activate, calc-embedded-activate-formula) - (calc-embedded-edit, calc-do-embedded-activate): Replace undeclared - variable by new variable. - (calc-embedded-make-info): Replace undeclared variable by new - variable. When selecting region with positive prefix - argument, use end of previous line instead of beginning of line. + * vc.el (vc-default-wash-log): Remove unused code, the + log washers all live in the backends now. + (vc-default-comment-history): Correct for the fact + that wash-log is argumentless in the new API. - * calc/calc-aent.el (calc-arg-values): Declare it. +2007-10-08 Michael Albinus - * calc/calc-ext.el (calc-help-map, calc-alg-map, calc-alg-esc-map): - Declare them. + * net/tramp.el (tramp-find-foreign-file-name-handler): Check also host. + (tramp-maybe-send-script): Apply `member' but `memq'. + (tramp-advice-file-expand-wildcards): Simplify implementation. - * calc/calc-stuff.el (math-decls-cache-tag): Declare it. +2007-10-08 Juanma Barranquero - * calc/calc.el (calc-alg-map): Declare it. + * follow.el (follow-mode): Don't run hooks twice. Use `when'. - * calc/calcalg2.el (math-decls-cache, math-decls-all): Declare them. + * mb-depth.el (minibuf-depth-indicator-function): New variable. + (minibuf-depth-setup-minibuffer): Use it. -2005-05-28 Nick Roberts +2007-10-07 Glenn Morris - * progmodes/gdb-ui.el (gdb-all-registers): New variable. - (gdb-registers-buffer, toggle-gdb-all-registers): - Toggle display of floating point registers. - (gdb-registers-mode-map): Bind SPC to toggle-gdb-all-registers. + * simple.el (bad-packages-alist): Clarify Semantic and CEDET + version numbers. - * progmodes/gud.el (gud-goto-info): Use info. Don't use require. - (toggle-gud-tooltip-dereference): - Rename from gud-toggle-tooltip-dereference. +2007-10-06 Juri Linkov -2005-05-27 Stefan Monnier + * textmodes/fill.el (fill-paragraph-or-region): New function. - * info.el (Info-goto-node): Revert autoload addition (2004-06-12). + * bindings.el (esc-map): Bind M-q to fill-paragraph-or-region + instead of fill-paragraph. -2005-05-27 Jay Belanger - - * calc/calc-prog.el (calc-kbd-report): Remove. - (calc-kbd-query): Rewrite. - -2005-05-27 Juanma Barranquero - - * image.el (image-library-alist): Move to image.c. - (image-type-available-p): Doc fix. - -2005-05-27 Lute Kamstra - - * calc/calc.el (calc): - * outline.el (outline-1, outline-2, outline-3, outline-4) - (outline-5, outline-6, outline-7, outline-8): - * textmodes/dns-mode.el (dns-mode): - * textmodes/sgml-mode.el (sgml-namespace-face): - * textmodes/tex-mode.el (superscript, subscript, tex-math-face) - (tex-verbatim-face, tex-use-reftex): - * textmodes/texinfo.el (texinfo-heading-face): - Specify customization group. - - * longlines.el: Don't require easy-mmode. - (longlines-visible-face): Specify customization group. - -2005-05-27 Kenichi Handa - - * language/cyrillic.el: Add cyrillic-iso8859-5 characters in the - encoding table of windows-1251. - - * international/ucs-tables.el (ucs-set-table-for-input): - If translation-table-for-input of a coding system is a symbol, get - its translation-table property. - - * international/code-pages.el: Don't register a coding system into - non-iso-charset-alist more than once. - (cp-make-coding-system): Likewise. - -2005-05-26 John Wiegley - - * eshell/esh-cmd.el (eshell-eval-command): If the return value of - `eshell-resume-eval' is wrapped in a list, it indicates that the - command was run asynchronously. In that case, unwrap the value - before checking the delimiter value. - - * eshell/em-cmpl.el (eshell-complete-parse-arguments): If the - character before a space at the end of a line is \, assume the space - is part of the last argument rather than a final argument separator. - - * eshell/esh-io.el (eshell-get-target): If `eshell-buffer-shorthand' - is in use, and the target is `t' or `nil' (which are the most common - values), don't assume that the symbol target is a buffer. - -2005-05-26 Luc Teirlinck - - * calendar/calendar.el (calendar-mode-line-format): - Use mode-line-highlight as mouse-face. - - * time.el (display-time-string-forms, display-time-update): - Use mode-line-highlight as mouse-face. - -2005-05-26 Jay Belanger - - * calc/calc.el (calc-language-alist): Remove extra defvar. - -2005-05-26 Lute Kamstra - - * arc-mode.el (archive-mode): - * bookmark.el (bookmark-read-annotation-mode) - (bookmark-edit-annotation-mode, bookmark-bmenu-mode): - * bs.el (bs-mode): - * calc/calc-yank.el (calc-edit-mode): - * calc/calc.el (calc-mode, calc-trail-mode): - * calculator.el (calculator-mode): - * chistory.el (command-history-mode): - * comint.el: - * cus-edit.el (custom-mode): - * descr-text.el (describe-text-mode): - * ebuff-menu.el (Electric-buffer-menu-mode): - * ediff-util.el (ediff-mode): - * emacs-lisp/re-builder.el (reb-mode): - * emulation/vi.el (vi-mode-setup): - * emulation/ws-mode.el (wordstar-mode): - * eshell/esh-mode.el (eshell-mode): - * forms.el (forms-mode): - * help-mode.el (help-mode): - * hexl.el (hexl-mode): - * ibuffer.el (ibuffer-mode): - * ielm.el (inferior-emacs-lisp-mode): - * info.el (Info-mode, Info-edit-mode): - * international/swedish.el: - * ledit.el (ledit-from-lisp-mode): - * locate.el (locate-mode): - * mail/rmail.el (rmail-mode): - * mail/rmailedit.el (rmail-edit-mode): - * mail/rmailsum.el (rmail-summary-mode): - * mail/supercite.el (sc-electric-mode): - * net/eudc.el (eudc-mode): - * net/quickurl.el (quickurl-list-mode): - * net/snmp-mode.el (snmp-mode, snmpv2-mode): - * obsolete/ooutline.el (outline-mode): - * obsolete/options.el (Edit-options-mode): - * obsolete/rnews.el (news-mode): - * obsolete/rnewspost.el (news-reply-mode): - * play/5x5.el (5x5-mode): - * play/decipher.el (decipher-mode, decipher-stats-mode): - * play/gomoku.el (gomoku-mode): - * play/snake.el (snake-mode): - * play/solitaire.el (solitaire-mode): - * play/tetris.el (tetris-mode): - * progmodes/ada-mode.el (ada-mode): - * progmodes/antlr-mode.el (antlr-mode): - * progmodes/autoconf.el (autoconf-mode): - * progmodes/dcl-mode.el (dcl-mode): - * progmodes/delphi.el (delphi-mode): - * progmodes/ebrowse.el (ebrowse-tree-mode) - (ebrowse-electric-list-mode, ebrowse-member-mode) - (ebrowse-electric-position-mode): - * progmodes/f90.el (f90-mode): - * progmodes/fortran.el (fortran-mode): - * progmodes/icon.el (icon-mode): - * progmodes/idlw-help.el (idlwave-help-mode): - * progmodes/idlw-shell.el (idlwave-shell-mode): - * progmodes/idlwave.el (idlwave-mode): - * progmodes/inf-lisp.el (inferior-lisp-mode): - * progmodes/m4-mode.el (m4-mode): - * progmodes/meta-mode.el (metafont-mode, metapost-mode): - * progmodes/modula2.el (modula-2-mode): - * progmodes/octave-inf.el (inferior-octave-mode): - * progmodes/octave-mod.el (octave-mode): - * progmodes/pascal.el (pascal-mode): - * progmodes/sh-script.el (sh-mode): - * progmodes/sql.el (sql-mode, sql-interactive-mode): - * progmodes/vhdl-mode.el (vhdl-mode): - * progmodes/xscheme.el (scheme-interaction-mode): - * replace.el (occur-mode): - * ses.el (ses-mode): - * simple.el (completion-list-mode): - * skeleton.el: - * speedbar.el (speedbar-mode): - * term.el (term-mode): - * terminal.el (terminal-edit-mode): - * textmodes/reftex-index.el (reftex-index-mode) - (reftex-index-phrases-mode): - * textmodes/reftex-sel.el (reftex-select-label-mode) - (reftex-select-bib-mode): - * textmodes/reftex-toc.el (reftex-toc-mode): - * wdired.el (wdired-change-to-wdired-mode): - * wid-browse.el (widget-browse-mode): - Use run-mode-hooks. - - * array.el (array-mode): - * calendar/todo-mode.el (todo-mode): - * man.el (Man-mode): - * play/landmark.el (lm-mode): - * play/mpuz.el (mpuz-mode): - Use kill-all-local-variables and run-mode-hooks. - - * subr.el (delay-mode-hooks): Specify indentation. - -2005-05-26 Mark A. Hershberger - - * xml.el (xml-substitute-special): Don't die for undefined xml - entities. - -2005-05-26 Jay Belanger - - * calc/calc-prog.el (calc-user-define-edit): Don't find substring - of nil. - -2005-05-27 Nick Roberts - - * progmodes/gdb-ui.el (gdb-frame-address): - Rename from gdb-current-address. - (gdb-previous-frame-address): Rename from gdb-previous-address. - (gdb-selected-frame): Rename from gdb-current-frame. - (gdb-get-selected-frame): Rename from gdb-get-current-frame. - (gdb-frame-number): Rename from gdb-current-stack-level. - (gdb-ann3): Match new mode-name for disassembly buffer. - Extend initialization of variables. - (gdb-post-prompt): Update disassembly from gdb-frame-handler. - (gdb-memory-mode): Use mouse-face in header line. - (gdb-assembler-buffer-name): Call it disassembly and give frame - in mode line. - (gdb-source-spec-regexp, gdb-assembler-custom) - (gdb-invalidate-assembler, gdb-frame-handler): - Make robust to leading zeroes in address format. - -2005-05-26 Carsten Dominik - - * textmodes/org.el (org-mode): Use `define-derived-mode' to - define `org-mode'. - (org-agenda-mode): Use `run-mode-hooks' instead of `run-hooks'. - -2005-05-26 Stefan Monnier - - * log-edit.el (log-edit-changelog-entries): Distinguish between - filenames like xfns.c and fns.c. - -2005-05-25 Luc Teirlinck - - * buff-menu.el (Buffer-menu-revert-function): Improve handling of - point after reverting. - (Buffer-menu-make-sort-button): Handle the case where - `Buffer-menu-use-header-line' is nil. - -2005-05-25 Thien-Thi Nguyen - - * vms-patch.el (vms-magic-right-square-brace, vms-magic-colon): - New funcs. In minibuffer-local-completion-map bind `]', `/' - and `:' to them. - -2005-05-25 Stefan Monnier - - * startup.el (normal-top-level): Allow modification of load-path while - we're iterating over it. - -2005-05-25 Juanma Barranquero - - * thumbs.el (thumbs-thumbsdir-max-size, thumbs-temp-file) - (thumbs-cleanup-thumbsdir, thumbs-call-convert) - (thumbs-resize-interactive, thumbs-insert-image) - (thumbs-insert-thumb, thumbs-dired-show-marked) - (thumbs-find-image-at-point, thumbs-delete-images) - (thumbs-rename-images, thumbs-next-image, thumbs-dired-setroot) - (thumbs-increment-image-size, thumbs-decrement-image-size): - Fix typos in docstrings. + * tutorial.el (tutorial--default-keys): Replace fill-paragraph + with fill-paragraph-or-region. Suspend command is now the same + `suspend-frame' on window systems and on tty. -2005-05-24 Andre Spiegel + * image.el (image-type): Check if image-types is bound to not fail + on tty. - * progmodes/cperl-mode.el (cperl-vc-header-alist): Obsolete. - (cperl-vc-rcs-header, cperl-vc-sccs-header): New user options. - (cperl-mode): Use them. + * delsel.el (delete-selection-pre-hook): + * emulation/cua-base.el (cua-paste): Check if mouse-region-match + is fbound to not fail on mouseless tty. -2005-05-24 Juanma Barranquero +2007-10-06 Michael Albinus - * window.el (quit-window, shrink-window-if-larger-than-buffer): - Doc fixes. + * net/tramp.el (top): Move loading of tramp-util.el and + tramp-vc.el to tramp-compat.el. + (tramp-make-tramp-temp-file): Complete rewrite. Create remote + temporary file if possible, in order to avoid a security hole. + (tramp-do-copy-or-rename-file-out-of-band) + (tramp-maybe-open-connection): Call `tramp-make-tramp-temp-file' + with DONT-CREATE, because the connection is not setup yet. + (tramp-handle-process-file): Rewrite temporary file handling. + (tramp-completion-mode): New defvar. + (tramp-completion-mode-p): Use it. -2005-05-24 Nick Roberts + * net/tramp-compat.el (top): Load tramp-util.el and tramp-vc.el. - * progmodes/gdb-ui.el (gdb-inferior-io-mode-map): - Bind C-d to gdb-inferior-io-eof. + * net/tramp-fish.el (tramp-fish-handle-process-file): + Rewrite temporary file handling. - * dired.el (dired-dnd-popup-notice): Use message-box. +2007-10-06 Eric S. Raymond -2005-05-23 Masatake YAMATO + * vc.el: Workfile version -> focus version change. Port various + comments from new VC to reduce the noise in the diff. + Patch in the new vc-create-repo function to go with the + header comment about it already present. + There are no changes to existing logic in this patch. + (vc-revert-buffer1): Rename to vc-revert-buffer-internal. - * bindings.el (mode-line-major-mode-keymap): - Bind [mode-line down-mouse-1] to `mouse-major-mode-menu'. +2007-10-06 Aaron Hawley - * faces.el (mode-line-highlight): New face. + * autoinsert.el (auto-insert-alist): Add a Texinfo entry. - * ruler-mode.el (ruler-mode-ruler): Use mode-line-highlight - as mouse-face. +2007-10-05 Chris Moore - * bindings.el (top-level, help-echo, mode-line-modified) - (mode-line-mule-info, mode-line-eol-desc): Use mode-line-highlight - as mouse-face. + * server.el (server-kill-new-buffers): Doc fix. -2005-05-23 Juanma Barranquero +2007-10-05 John W. Eaton + + * progmodes/octave-mod.el (octave-abbrev-table): Add "until". + (octave-begin-keywords): Add "do". + (octave-end-keywords): Remove "end". + (octave-reserved-words): Add "end". Remove "all_va_args", + "gplot", and 'gsplot". + (octave-text-functions): Remove "gset", "gshow", "set", and "show". + (octave-variables): Remove "IMAGEPATH", "INFO_FILE", + "INFO_PROGRAM", "LOADPATH", "__error_text__", "automatic_replot", + "default_return_value", "define_all_return_values", + "do_fortran_indexing", "empty_list_elements_ok", + "gnuplot_has_multiplot", "implicit_str_to_num_ok", + "ok_to_lose_imaginary_part", "prefer_column_vectors", + "prefer_zero_one_indexing", "propagate_empty_matrices", + "resize_on_range_error", "treat_neg_dim_as_zero", + "warn_assign_as_truth_value", "warn_comma_in_global_decl", + "warn_divide_by_zero", "warn_function_name_clash", + "warn_missing_semicolon", "whitespace_in_literal_matrix". + Add "DEFAULT_EXEC_PATH", "DEFAULT_LOADPATH", "IMAGE_PATH", + "crash_dumps_octave_core", "sighup_dumps_octave_core", + "sigterm_dumps_octave_core". + (octave-block-match-alist): Remove "end" from block-end keywords. + (octave-mode): Update ftp site address. + +2007-10-05 Dan Nicolaescu + + * vc.el: Reorder functions, no code changes. + +2007-10-04 Michael Albinus + + * net/tramp.el (tramp-make-temp-file): Move to tramp-compat.el. + (tramp-do-copy-or-rename-file-directly): Handle tmpfile only in + the cond clauses where needed. + (tramp-handle-write-region): Rearrange code for proper handling of + tmpfile. + + * net/tramp-compat.el (tramp-compat-make-temp-file): New defsubst. - * progmodes/cc-engine.el (c-guess-basic-syntax): - Remove spurious call to `zerop'. + * net/tramp.el: + * net/tramp-fish.el: + * net/tramp-ftp.el: + * net/tramp-smb.el: Rename `tramp-make-temp-file' to + `tramp-compat-make-temp-file'. - * emacs-lisp/cl.el (acons, pairlis): Add docstring. +2007-10-04 Juanma Barranquero -2005-05-23 Martin Stjernholm + * image-dired.el (image-dired-image-at-point-p): Fix typo in docstring. - CC Mode update to 5.30.10: +2007-10-03 Stefan Monnier - * progmodes/cc-fonts.el (c-font-lock-declarators): Fix bug where - the point could go past the limit in decoration level 2, thereby - causing errors during interactive fontification. + * emacs-lisp/copyright.el (copyright-update): Don't update if the file + already uses a more recent copyright version than the "current" one. - * progmodes/cc-mode.el (c-make-inherited-keymap): Fix cc-bytecomp - bug when the file is evaluated interactively. +2007-10-03 Michaël Cadilhac - * progmodes/cc-engine.el (c-guess-basic-syntax): Handle operator - declarations somewhat better in C++. + * doc-view.el (doc-view-dvi->pdf-sentinel, doc-view-reset-slice) + (doc-view-insert-image): Minor aesthetical docstring changes. - * progmodes/cc-styles.el, cc-mode.el (c-run-mode-hooks): - New helper macro to make use of `run-mode-hooks' - which has been added in Emacs 21.1. - (c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode) - (awk-mode): Use it. - (make-local-hook): Suppress warning about obsoleteness. +2007-10-03 Tassilo Horn - * progmodes/cc-engine.el, cc-align.el, cc-cmds.el - (c-append-backslashes-forward, c-delete-backslashes-forward) - (c-find-decl-spots, c-semi&comma-no-newlines-before-nonblanks): - Compensate for return value from `forward-line' when it has moved - but not to a different line due to eob. + * doc-view.el (doc-view): Don't ignore pdf and dvi files when + completing filename. + (doc-view-search-internal): Docstring change. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fix anchoring in - `objc-method-intro' and `objc-method-args-cont'. +2007-10-03 Michael Albinus -2005-05-23 Alan Mackenzie + * net/tramp.el (top): Add tramp-compat to `tramp-unload-hook'. + (tramp-file-name-handler-alist): + Add `tramp-handle-insert-file-contents-literally'. Needed for XEmacs. + (tramp-make-temp-file): Use `make-temp-name'. `make-temp-file', + used before, creates the file already, which is not desired. + (tramp-do-copy-or-rename-file-directly): Simplify handling of + temporary file. + (tramp-handle-insert-file-contents): Assign the result in the + short track case. + (tramp-handle-insert-file-contents-literally): New defun. + (tramp-completion-mode-p): Revert change from 2007-09-24. + Checking for `return' etc as last character is not sufficient, for + example in dired-mode when entering (revert-buffer) or + (dired-sort). - CC Mode update to 5.30.10: + * net/tramp-compat.el (top): Add also compatibility code for loading + appropriate timer package. + (tramp-compat-copy-tree): Check for `subrp' and `symbol-file' in + order to avoid autoloading problems. - * progmodes/cc-mode.el, cc-engine.el, cc-align.el: Change the FSF's - address in the copyright statement. Incidentally, change "along with - GNU Emacs" to "along with this program" where it occurs. + * net/tramp-fish.el: + * net/tramp-smb.el: Move further compatibility code to tramp-compat.el. - * progmodes/cc-mode.el: Add a fourth parameter `t' to the awk-mode - autoload, so that it is interactive, hence can be found by M-x awk-mode - whilst cc-mode is yet to be loaded. Reported by Glenn Morris - . + * net/tramp-ftp.el (tramp-ftp-file-name-handler): Handle the case + where the second parameter of `copy-file' or `rename-file' is a + remote file but not via ftp. - * progmodes/cc-awk.el: Add character classes (e.g. "[:alpha:]") into AWK - Mode's regexps. +2007-10-02 Richard Stallman -2005-05-23 Kevin Ryde + * frame.el (cursor-in-non-selected-windows): Doc fix. - * progmodes/cc-align.el (c-lineup-argcont): Ignore conses for {} pairs - from c-parse-state, to avoid a lisp error (on bad code). +2007-10-01 Thien-Thi Nguyen -2005-05-23 Lute Kamstra + * play/zone.el (zone): Let-bind show-trailing-whitespace to nil. + Suggested by Chris Moore . - * subr.el (font-lock-defaults): Remove defvar as it's already - defined in font-core.el. +2007-10-01 Jay Belanger - * font-lock.el (font-lock-beginning-of-syntax-function): Fix docstring. + * calc/calc-math.el (math-largest-emacs-expt): Handle the cases + when `expt' doesn't give range errors. -2005-05-23 Nick Roberts +2007-10-01 Markus Triska - * progmodes/gdb-ui.el (gdb-info-locals-handler): Make regexps - more general and work when GDB variable "print pretty" is on, - as with Emacs, for example. + * calc/calc-math.el (math-smallest-emacs-expt): + Make the computation more robust. -2005-05-22 Luc Teirlinck +2007-09-30 David Kastrup - * font-core.el: Update comment. + * startup.el (argv): Alias for `command-line-args-left' to use as + `(pop argv)' inside of --eval command sequences. Allows for + passing shell commands into Emacs verbatim without need for Lisp + quoting. - * emacs-lisp/easy-mmode.el (define-global-minor-mode): - Use `after-change-major-mode-hook' instead of `find-file-hook'. + * autorevert.el (auto-revert-handler): In `auto-revert-tail-mode', + check only for changed size. + (auto-revert-tail-handler): Get size from caller. If the file has + shrunk, tail the whole file again (the file presumably has been + rewritten). - * buff-menu.el (Buffer-menu-mode): Use `run-mode-hooks'. + * woman.el (woman-topic-all-completions, woman-mini-help): + Fix fallout from 2007-09-07 introduction of `dolist' when the list + actually was being manipulated in the loop. + (woman-Cyg-to-Win, woman-pre-process-region) + (woman-horizontal-escapes, woman-if-body, woman-unescape) + (woman-strings, woman-special-characters, woman1-hc) + (woman-change-fonts, woman-find-next-control-line): + Use `match-beginning' rather than `match-string' when the result is + just used as a flag. -2005-05-22 Eli Zaretskii +2007-09-30 Michael Albinus - * simple.el (yank, yank-pop): Mention `yank-excluded-properties' - and `yank-handler' in the doc strings. + * net/tramp-compat.el: New file. -2005-05-22 Stefan Monnier + * net/tramp.el: + * net/tramp-fish.el: + * net/tramp-smb.el: + * net/tramp-uu.el: + * net/trampver.el: Move compatibility code to tramp-compat.el. + Apply `mapc' instead of `mapcar' when the code needs side effects + only. Move utf-8 coding cookie to the second line. - * emacs-lisp/cl.el (eql): Remove. It's a builtin already. +2007-09-30 Reiner Steib -2005-05-22 Richard M. Stallman + * term/x-win.el (x-gtk-stock-map): Add Gnus and MH-E icons. + Improve custom type. + (icon-map-list): Make it customizable. Document how to disable + stock icons. - * help.el (describe-key): Move print-help-return-message call - out of conditional. +2007-09-30 Richard Stallman - * progmodes/etags.el (list-tags): Use with-no-warnings. + * play/zone.el (zone-hiding-modeline): Use mode-line-format. - * mail/smtpmail.el (smtpmail-open-stream): Use with-no-warnings. - (smtpmail-send-queued-mail): Avoid beginning-of-buffer. - (starttls-extra-args, starttls-extra-arguments): Add defvars. +2007-09-28 Stefan Monnier - * mail/mailalias.el (mail-get-names): Avoid beginning-of-buffer. + * t-mouse.el (gpm-mouse-mode): Rename from t-mouse-mode. Rewrite. + (t-mouse-mode): New compatibility alias. - * language/viet-util.el (viet-viscii-nonascii-translation-table): - Add defvar. +2007-09-28 Dan Nicolaescu - * emulation/viper-ex.el (viper-ex-work-buf, viper-ex-print-buf): - Use defvar, not defconst. + * server.el (server-delete-client): Only delete the terminal if it + is non-nil. - * hexl.el (hexl-follow-line): Use with-no-warnings. +2007-09-28 Michael Albinus - * emulation/tpu-extras.el: Use write-file-functions instead of - write-file-hooks. + * net/tramp.el (with-file-property, with-connection-property): + Highlight as keyword. + (tramp-rfn-eshadow-setup-minibuffer) + (tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times) + (tramp-set-file-uid-gid, tramp-do-copy-or-rename-file-via-buffer) + (tramp-do-copy-or-rename-file-directly) + (tramp-do-copy-or-rename-file-out-of-band) + (tramp-handle-shell-command, tramp-get-debug-buffer) + (tramp-send-command-and-read, tramp-equal-remote) + (tramp-get-local-gid): Pacify byte-compiler. + (tramp-handle-file-name-directory): Result shall not be expanded. + (tramp-find-foreign-file-name-handler): Rewrite. + (tramp-dissect-file-name): Add optional parameter NODEFAULT. - * dired.el (dired-font-lock-keywords): Fontify files with junk - extensions even if marked by -F. + * net/tramp-cache.el (tramp-cache-print): Pacify byte-compiler. -2005-05-22 Juanma Barranquero + * net/tramp-fish.el (tramp-fish-handle-expand-file-name): + Apply `tramp-completion-mode-p'. + (tramp-fish-handle-set-file-times) + (tramp-fish-handle-executable-find) + (tramp-fish-handle-process-file, tramp-fish-get-file-entries) + (tramp-fish-retrieve-data): Pacify byte-compiler. - * emacs-lisp/cl.el (pushnew, cl-macroexpand, floatp-safe, plusp) - (minusp, oddp, evenp, mapcar*, list*, copy-list, adjoin, subst): - * emacs-lisp/cl-extra.el (coerce, map, maplist, cl-mapc, mapl) - (mapcan, mapcon, some, every, notany, notevery, signum, isqrt) - (concatenate, list-length, get*, getf, cl-remprop): - * emacs-lisp/cl-macs.el (function*, case, ecase, typecase) - (etypecase, progv, lexical-let, lexical-let*) - (multiple-value-bind, multiple-value-setq, shiftf): - Improve argument/docstring consistency. + * net/tramp-gw.el (tramp-gw-basic-authentication): + Call `tramp-read-passwd' with first parameter `nil'. - * subr.el (focus-frame, unfocus-frame): Revert deletion on 2005-05-01. +2007-09-28 Glenn Morris -2005-05-22 Andre Spiegel + * mail/supercite.el (sc-attribs-filter-namelist): Use mapc rather + than mapcar. - * vc-cvs.el (vc-cvs-checkout-model): Handle the case where FILE - doesn't exist. + * textmodes/tex-mode.el (tex-suscript-height-ratio) + (tex-suscript-height-minimum): New customizable variables. + (tex-suscript-height): New function. + (superscript, subscript): Set height using tex-suscript-height + rather than fixing at 0.8. + (tex-fontify-script, tex-font-script-display): Add :version tag. - * vc.el (vc-trunk-p): Add autoload cookie. The function is used in - vc-rcs.el when vc-mistrust-permissions is t, which is not the default. +2007-09-27 Juanma Barranquero -2005-05-22 Nick Roberts + * progmodes/python.el (python-eldoc-function): Doc fix. - * emacs-lisp/bytecomp.el: Remove make-obsolete-variable for - already deleted variables: auto-fill-hook, blink-paren-hook, - lisp-indent-hook, inhibit-local-variables, unread-command-event, - suspend-hooks, comment-indent-hook, meta-flag, - before-change-function, after-change-function, - font-lock-doc-string-face. +2007-09-27 Glenn Morris -2005-05-21 Luc Teirlinck + * image.el (image-type-auto-detected-p): Doc fix. Don't detect an + image if it is not in image-type-auto-detectable, or is there with + a nil value. - * emacs-lisp/derived.el (define-derived-mode): Doc fix. +2007-09-27 Michael Albinus -2005-05-21 Eli Zaretskii + * net/tramp.el (tramp-maybe-open-connection): Make test for alive + connection more robust. - * mail/rmail.el (rmail-reply): Filter the list in reply-to through - rmail-dont-reply-to. +2007-09-26 Juanma Barranquero -2005-05-21 Frederik Fouvry + * emacs-lisp/eldoc.el (eldoc-function-argstring-format): + Deal with the case that special &keywords are at the beginning or + end of the argument list. Also add some (incomplete) support for + non-standard arglists. - * mail/sendmail.el (mail-send): Use [[:space:]] instead of a - literal blank when splitting new-header-values. +2007-09-26 Juanma Barranquero -2005-05-21 Matt Hodges + * emacs-lisp/eldoc.el (eldoc-message-commands-table-size) + (eldoc-message-commands, eldoc-current-idle-delay) + (eldoc-function-argstring-format): Fix typos in docstrings. - * calendar/cal-menu.el (cal-menu-update): Add separator as a - string so that tmm doesn't create a completion entry for it. +2007-09-26 Jay Belanger - * textmodes/table.el (table-disable-menu): Ditto. + * calc/calc-units.el (calc-convert-units) + (calc-convert-temperature): Remove unnecessary colons. -2005-05-21 Richard M. Stallman +2007-09-26 Bastien Guerry - * progmodes/idlwave.el (idlwave-doc-header): Use insert-file-contents. + * textmodes/org-export-latex.el (org-export-latex-tables-verbatim): + New function. + (org-export-latex-remove-from-headlines): Name changed because of typo. + (org-export-latex-quotation-marks-convention): Option removed. + (org-export-latex-make-preamble): Handle the DATE option. + (org-export-latex-cleaned-string): Now the only cleaning function, + synched up with org.el. + (org-export-latex-lists, org-export-latex-parse-list) + (org-export-list-to-latex): New functions. + +2007-09-26 Carsten Dominik + + * textmodes/org.el (org-kill-is-subtree-p): Use `org-outline-regexp'. + (org-outline-regexp): New constant. + (org-remember-handler): Throw error when the target file is not in + org-mode. + (org-cleaned-string-for-export): No longer call + `org-export-latex-cleaned-string' with an argument. + (org-get-tags): Returns now a list, not a string. + (org-get-tags-string): New function. + (org-archive-subtree): No need to split return of `org-get-tags'. + (org-set-tags, org-entry-properties): Call `org-get-tags-string' + instead of `org-get-tags'. + (org-agenda-format-date): Rename from `org-agenda-date-format'. + (org-time-from-absolute, org-agenda-format-date-aligned): New funs. + (org-compatible-face): New argument INHERITS. Inherit from this + face if possible. + (org-level-1, org-level-2, org-level-3, org-level-4) + (org-level-5, org-level-6, org-level-7, org-level-8) + (org-special-keyword, org-drawer, org-column, org-warning) + (org-archived, org-todo, org-done, org-headline-done, org-table) + (org-formula, org-code, org-agenda-structure) + (org-scheduled-today, org-scheduled-previously) + (org-upcoming-deadline, org-time-grid): Call `org-compatible-face' + in the new way. + (org-get-heading): New argument NO-TAGS. + (org-fast-tag-selection-include-todo): Made defvar instead of + defcustom, feature is not deprecated. + (org-remember-store-without-prompt): New default value t. + (org-todo-log-states): New variable. + (org-set-regexps-and-options): #+TODO is an alias for SEQ_TODO. + Compute the log states. + (org-goto-map): More commands copied from global map. Also bind + `org-occur'. + (org-goto): Made into a general lookup command. + (org-get-location): Complete rewrite. + (org-goto-exit-command): New variable. + (org-goto-selected-point): New variable. + (org-goto-ret, org-goto-left, org-goto-right, org-goto-quit): + Set the new variables. + (org-paste-subtree): Whitespace insertion strategy revised. + (org-remember-apply-template): Protect v-A from the possibility + that v-a might be nil. + (org-remember-handler): Insertion rules revised. + (org-todo): Respect org-todo-log-states. + (org-up-heading-safe): New function. + (org-entry-get-with-inheritance): Use `org-up-heading-safe'. + +2007-09-26 Dan Nicolaescu + + * progmodes/cc-cmds.el (c-indent-line-or-region): Only indent the + region if in transient-mark-mode. + +2007-09-26 Juanma Barranquero + + * calc/calc-ext.el (calc-init-extensions, calc-reset): + * calc/calc-help.el (calc-full-help): + * calc/calc-misc.el (another-calc): + * calc/calc-store.el (calc-var-name-map): + * calc/calc-stuff.el (calc-flush-caches): + * calc/calc-units.el (math-build-units-table): + * calc/calc.el (calc-digit-map, calc-dispatch-map, calc-mode) + (calc-quit): + * calendar/icalendar.el (icalendar--format-ical-event) + (icalendar--convert-ical-to-diary): + * emacs-lisp/authors.el (authors): + * emacs-lisp/cust-print.el (custom-print-install) + (custom-print-uninstall): + * emacs-lisp/disass.el (disassemble-1): + * emacs-lisp/easy-mmode.el (easy-mmode-define-syntax): + * emacs-lisp/edebug.el (byte-compile-resolve-functions): + * emacs-lisp/elint.el (elint-current-buffer, elint-check-defun-form) + (elint-check-let-form, elint-check-condition-case-form) + (elint-initialize): + * emacs-lisp/elp.el (elp-results): + * emacs-lisp/generic.el (generic-mode-internal): + * emacs-lisp/re-builder.el (reb-delete-overlays): + * emacs-lisp/regi.el (regi-interpret): + * emacs-lisp/sregex.el (sregex--char-aux): + * emulation/cua-rect.el (cua--deactivate-rectangle) + (cua--highlight-rectangle, cua--rectangle-post-command): + * emulation/viper-keym.el (viper-toggle-key, viper-ESC-key): + * emulation/viper-macs.el (viper-describe-kbd-macros) + (viper-describe-one-macro): + * emulation/viper-util.el (viper-setup-master-buffer): + * emulation/viper.el (set-viper-state-in-major-mode): + * international/mule-diag.el (describe-current-coding-system): + * language/ethio-util.el (ethio-fidel-to-sera-buffer): + * mail/emacsbug.el (report-emacs-bug): + * net/ange-ftp.el (ange-ftp-call-chmod, ange-ftp-parse-bs2000-listing): + * obsolete/hilit19.el (hilit-unhighlight-region) + (hilit-set-mode-patterns): + * play/solitaire.el (solitaire-check, solitaire-solve): + * play/zone.el (zone-pgm-rotate): + * progmodes/ada-mode.el (ada-save-exceptions-to-file): + * progmodes/ada-prj.el (ada-prj-display-page): + * progmodes/delphi.el (delphi-search-directory, delphi-find-unit-file) + (delphi-debug-mode-map, delphi-mode-map, delphi-mode): + * progmodes/ebrowse.el (ebrowse-tree-mode, ebrowse-view-exit-fn) + (ebrowse-member-mode, ebrowse-save-tree-as, ebrowse-save-class): + * progmodes/sh-script.el (sh-make-vars-local) + (sh-reset-indent-vars-to-global-values): + * progmodes/sql.el (top): + * progmodes/vhdl-mode.el (vhdl-set-style, vhdl-regress-line): + * progmodes/xscheme.el (top): + * textmodes/artist.el (artist-mt-get-symbol-from-keyword-sub) + (artist-go-retrieve-from-symbol-sub, artist-go-get-symbol-shift-sub) + (artist-fc-retrieve-from-symbol-sub, artist-vaporize-line) + (artist-vaporize-lines, artist-ellipse-compute-fill-info) + (artist-submit-bug-report): + * textmodes/flyspell.el (flyspell-delay-commands) + (flyspell-deplacement-commands): + * textmodes/table.el (table--generate-source-epilogue, table-insert) + (table--generate-source-cells-in-a-row, table--make-cell-map) + (*table--cell-describe-bindings): Use `mapc' rather than `mapcar'. + +2007-09-25 Juanma Barranquero + + * allout.el (produce-allout-mode-map, allout-process-exposed): + * ansi-color.el (ansi-color-make-color-map): + * autoinsert.el (auto-insert): + * bookmark.el (bookmark-bmenu-list, bookmark-show-all-annotations): + * dired-aux.el (dired-create-files): + * dired.el (dired-restore-desktop-buffer): + * ediff-diff.el (ediff-setup-fine-diff-regions): + * ediff-mult.el (ediff-intersect-directories) + (ediff-redraw-directory-group-buffer, ediff-dir-diff-copy-file) + (ediff-redraw-registry-buffer): + * ediff-ptch.el (ediff-fixup-patch-map): + * ediff-util.el (ediff-toggle-multiframe, ediff-toggle-use-toolbar) + (ediff-really-quit, ediff-clear-diff-vector): + * emerge.el (emerge-really-quit): + * ffap.el (ffap-replace-file-component): + * filecache.el (file-cache-add-directory) + (file-cache-add-directory-recursively) + (file-cache-add-from-file-cache-buffer, file-cache-delete-file-regexp) + (file-cache-delete-directory, file-cache-files-matching-internal) + (file-cache-display): + * files.el (cd): + * find-lisp.el (find-lisp-insert-directory): + * finder.el (finder-compile-keywords): + * help.el (view-emacs-news): + * hi-lock.el (hi-lock-write-interactive-patterns): + * ido.el (ido-to-end, ido-set-matches-1): + * image-dired.el (image-dired-display-thumbs, image-dired-remove-tag) + (image-dired-mark-tagged-files): + * jka-cmpr-hook.el (jka-compr-get-compression-info): + * printing.el (pr-eval-local-alist, pr-eval-setting-alist): + * ps-print.el (ps-background, ps-begin-file) + (ps-build-reference-face-lists): + * simple.el (clone-buffer): + * startup.el (command-line): + * tempo.el (tempo-insert-template, tempo-is-user-element) + (tempo-forward-mark, tempo-backward-mark): + * woman.el (woman-dired-define-keys): Use `mapc' rather than `mapcar'. - * progmodes/flymake.el (flymake-makehash): Use with-no-warnings. +2007-09-25 Glenn Morris - * net/rcompile.el (remote-compile): Use compilation-start. + * textmodes/tex-mode.el (tex-font-script-display): Doc fix. - * tmm.el (tmm-shortcut): Avoid using beginning-of-buffer. + * view.el (view-search-no-match-lines): Add a doc string. + Rewrite to simplify and work better. -2005-05-21 Daniel Pfeiffer +2007-09-24 Dan Nicolaescu - * files.el (auto-mode-alist): Check GNUmakefile before makefile. - Default to makefile-bsdmake-mode on BSD systems. + * progmodes/cc-mode.el (c-mode-base-map): + Use c-indent-line-or-region instead of c-indent-line. - * imenu.el (imenu-generic-expression, imenu--generic-function'): - REGEXP may also be a search function now. The part of doc-string - for describing the structure was 95% identical to that of - `imenu--generic-function'. Unify it there. + * indent.el (indent-for-tab-command): First check if the region is + active. - * progmodes/make-mode.el (makefile-imenu-generic-expression): - Use function to find dependencies, because regexp alone is so complex, - it easily goes into an endless loop. - (makefile-makepp-mode): Also add submenu for Perl functions - defined in the makefile. - (makefile-bsdmake-mode): Special imenu-generic-expression no - longer needed, due to function call. - (makefile-match-dependency): Take BOUND into account when checking - if we're through. +2007-09-24 Michaël Cadilhac -2005-05-20 Jay Belanger + * whitespace.el (whitespace-tickle-timer): Don't install the timer if + whitespace-rescan-timer-time is 0. - * calc/calc-units.el (calc-invalidate-units-table): - Use inhibit-read-only. - (math-build-units-table-buffer): Use view-mode. +2007-09-24 Karl Berry -2005-05-20 David Kastrup - - * emacs-lisp/easymenu.el (easy-menu-add): Correct docstring since - easy-menu-add is not a nop on Emacs; and clarify when to call it. - -2005-05-20 Lute Kamstra - - * diff-mode.el (diff-header-face, diff-file-header-face) - (diff-index-face, diff-hunk-header-face, diff-removed-face) - (diff-added-face, diff-changed-face, diff-function-face) - (diff-context-face, diff-nonexistent-face): Put them in the - diff-mode customization group. - -2005-05-20 Stefan Monnier - - * progmodes/vhdl-mode.el (vhdl-font-lock-match-item): Simplify regexp. - - * progmodes/sh-script.el (sh-mode, sh-get-word): Minor regexp fixes. - - * font-lock.el (lisp-font-lock-keywords-2): Don't error. - Minor regexp-optimization. - -2005-05-20 Carsten Dominik + * international/mule.el (coding-system-base): Fix doc string grammar. - * textmodes/org.el (org-agenda-toggle-time-grid): New command. - (org-agenda-use-time-grid, org-agenda-time-grid): New options. - (org-agenda-add-time-grid-maybe): New function. - (org-agenda): Call `org-agenda-add-time-grid-maybe'. - (org-table-create): `dotimes' instead of `mapcar'. - (org-xor): Simplify implementation. - (org-agenda): `inhibit-redisplay' turned on. - (org-agenda-change-all-lines): Use `org-format-agenda-item' to get - a consistent line after a state change. - (org-agenda-remove-times-when-in-prefix): New option. - (org-prefix-has-time): New variable. - (org-parse-time-string): Optional argument NODEFAULT. - (org-format-agenda-item): Parse items for time-of-day - specifications and move these into the prefix if possible. - (org-agenda-priority): Get current heading, not previous heading - during agenda remote editing. +2007-09-24 Michael Albinus -2005-05-20 Juanma Barranquero + * net/tramp.el (tramp-completion-mode-p): Rename from + `tramp-completion-mode'. Revert logic, check `return', `newline' + and such alike. Packages like Icicles tend to use other completion + characters but `tab' and `space' only. - * emacs-lisp/cl-seq.el (reduce, fill, replace, remove*) - (remove-if, remove-if-not, delete*, delete-if, delete-if-not) - (remove-duplicates, delete-duplicates, substitute) - (substitute-if, substitute-if-not, nsubstitute, nsubstitute-if) - (nsubstitute-if-not, find, find-if, find-if-not, position) - (position-if, position-if-not, count, count-if, count-if-not) - (mismatch, search, sort*, stable-sort, merge, member*) - (member-if, member-if-not, assoc*, assoc-if, assoc-if-not) - (rassoc*, rassoc-if, rassoc-if-not, union, nunion) - (intersection, nintersection, set-difference, nset-difference) - (set-exclusive-or, nset-exclusive-or, subsetp, subst-if) - (subst-if-not, nsubst, nsubst-if, nsubst-if-not, sublis) - (nsublis, tree-equal): Improve argument/docstring consistency. - - * subr.el (send-string, send-region): Remove obsolescence declaration. - (window-dot, set-window-dot, read-input, show-buffer) - (eval-current-buffer, string-to-int): - Add release number to obsolescence declarations. - -2005-05-19 Kim F. Storm - - * ido.el (ido-magic-forward-char): Enter ido-find-file at end of input. - (ido-magic-backward-char): Enter ido-switch-buffer at start of input. - -2005-05-20 Matt Hodges - - * faces.el (list-faces-display): Make back button respect optional - regexp arg. - -2005-05-19 Juanma Barranquero - - * calculator.el (calculator-radix-grouping-mode) - (calculator-radix-grouping-digits, calculator-displayer) - (calculator-radix-grouping-separator, calculator-copy-displayer): - * dabbrev.el (dabbrev-search-these-buffers-only): - * diff-mode.el (diff-jump-to-old-file, diff-update-on-the-fly) - (diff-advance-after-apply-hunk, diff-mode-hook) - (diff-minor-mode-prefix): - * imenu.el (imenu-use-popup-menu): - * jit-lock.el (jit-lock-context-time): - * newcomment.el (comment-fill-column, comment-column) - (comment-style, comment-padding, comment-multi-line) - (comment-empty-lines, comment-auto-fill-only-comments): - * reveal.el (reveal-around-mark): - * uniquify.el (uniquify-buffer-name-style) - (uniquify-after-kill-buffer-p) - (uniquify-ask-about-buffer-names-p, uniquify-ignore-buffers-re) - (uniquify-min-dir-content, uniquify-separator) - (uniquify-trailing-separator-p, uniquify-strip-common-suffix): - * w32-vars.el (w32-fixed-font-alist): - * emacs-lisp/testcover.el (testcover-potentially-1value-functions): - * obsolete/rsz-mini.el (resize-minibuffer-frame-max-height): - * progmodes/antlr-mode.el (antlr-font-lock-maximum-decoration): - * progmodes/perl-mode.el (perl-indent-level) - (perl-continued-statement-offset, perl-continued-brace-offset) - (perl-brace-offset, perl-brace-imaginary-offset) - (perl-label-offset, perl-indent-continued-arguments) - (perl-tab-always-indent, perl-tab-to-comment, perl-nochange): - * progmodes/tcl.el (tcl-indent-level) - (tcl-continued-indent-level, tcl-auto-newline) - (tcl-tab-always-indent, tcl-electric-hash-style) - (tcl-help-directory-list, tcl-use-smart-word-finder) - (tcl-application, tcl-command-switches, tcl-prompt-regexp) - (inferior-tcl-source-command): - * textmodes/fill.el (enable-kinsoku): - * textmodes/reftex-vars.el (reftex-index-phrases-wrap-long-lines): - * textmodes/table.el (table-yank-handler): - Specify missing group (and type, if simple) in defcustom. - -2005-05-19 Luc Teirlinck - - * progmodes/compile.el (compilation-finish-function): Fix defvar. - -2005-05-19 Richard M. Stallman - - * progmodes/make-mode.el (makefile-mode): Use run-mode-hooks. - - * subr.el (event-basic-type): Don't get an error. - (left-fringe-p): Function deleted. - - * buff-menu.el (Buffer-menu-buffer-face): In group Buffer-menu. - (list-buffers-noselect): Set `font-lock-face' property, not `face'. - - * dired-aux.el (dired-copy-file-recursive): Handle symlinks - in recursive copy. - - * frame.el (show-trailing-whitespace): In group `whitespace-faces'. - - * emacs-lisp/byte-run.el (eval-when-compile): Doc fix. +2007-09-24 Adam Hupp - * emacs-lisp/bytecomp.el - (byte-compile-file-form-custom-declare-variable): - Call byte-compile-nogroup-warn if appropriate. + * progmodes/python.el (run-python): Import emacs module without + waiting; prevents lockup on error. - * progmodes/compile.el (compilation-finish-function): Mark obsolete. - (compilation-set-window): Don't call left-fringe-p; do it directly. +2007-09-23 Richard Stallman -2005-05-19 Jay Belanger + * mail/sendmail.el (mail-bury): Delete the frame + if this frame looks like it was made for this message. - * calc/calc-graph.el (calc-graph-format-data): Make sure - var-PlotRejects is bound before trying to check its value. + * completion.el (completion-separator-self-insert-command) + (completion-separator-self-insert-autofilling): + If `self-insert-command' has been remapped, use the substitute. -2005-05-19 Carsten Dominik + * simple.el (copy-region-as-kill): Doc fix. - * textmodes/reftex.el (reftex-isearch-minor-mode): Move the - definition of this variable from reftex-global.el to reftex.el, - because it is needed in the menu. + * textmodes/org.el (org-confirm-shell-link-function) + (org-confirm-elisp-link-function): Doc fixes. -2005-05-19 Lute Kamstra +2007-09-23 Glenn Morris - * emacs-lisp/copyright.el (copyright-fix-years): Make sure all - years are fixed. Don't insert a space after a dash. + * ses.el (ses-calculate-cell): Don't evaluate unsafe formulae. -2005-05-19 Kim F. Storm +2007-09-23 Dan Nicolaescu - * emulation/crisp.el (crisp-home, crisp-end): Put CUA property. + * term/w32-win.el (w32-drag-n-drop): Use mapc instead of mapcar. -2005-05-19 Daniel Pfeiffer + * term/tvi970.el (terminal-init-tvi970): Likewise. - * font-lock.el (lisp-font-lock-keywords-2): Do \\) only in - strings, because (eq ... ?\\) is fairly frequent. + * term/sun-mouse.el (print-mouse-format): Likewise. - * progmodes/make-mode.el (makefile-add-this-line-targets): - Simplify and integrate into `makefile-pickup-targets'. - (makefile-add-this-line-macro): Simplify and integrate into - `makefile-pickup-macros. - (makefile-pickup-filenames-as-targets): Simplify. - (makefile-previous-dependency, makefile-match-dependency): - Don't stumble over `::'. + * term/sun.el (scroll-down-in-place, scroll-up-in-place): + Use forward-line instead of previous-line and next-line. -2005-05-19 Nick Roberts +2007-09-22 Juri Linkov - * subr.el (post-command-idle-hook, post-command-idle-delay): - Remove obsoletion of post-command-idle-hook and - post-command-idle-delay. + * textmodes/org.el (org-confirm-shell-link-function): Doc fix. - * faces.el (list-faces-display): Provide button when describe-face - is called to take user back to the list of faces. + * tutorial.el (tutorial--default-keys): Update standard bindings: + rename `iconify-or-deiconify-frame' to `suspend-frame', + and `save-buffers-kill-emacs' to `save-buffers-kill-terminal'. - * help-fns.el (describe-variable): Remove hyperlinks in a - variable's value as these are quite frequently inappropriate. +2007-09-22 Juri Linkov - * follow.el (follow-submit-feedback, follow-mode): - Remove references to post-command-idle-hook. + * startup.el (fancy-startup-text, fancy-about-text, fancy-startup-tail): + Add help-echo to external links and to links without description. + (fancy-splash-insert): Use help-echo from the 3rd element of the + link specification list, or "Follow this link" if it's nil. Doc fix. -2005-05-18 Daniel Pfeiffer +2007-09-22 Juri Linkov - * progmodes/make-mode.el (makefile-previous-dependency) - (makefile-match-dependency): Check for := (and in bsd mode also - !=) to give a better result, even when font-lock is not on. + * startup.el (command-line): Rename `inhibit-startup-message' to + `inhibit-startup-screen'. + (fancy-about-text): Use shorter label for "Ordering Manuals". + (fancy-startup-tail): Add optional arg `concise'. When `concise' + is nil, display a line with "To start..." and 3 links to useful + tasks. Display the "Dismiss" button and "Don't show this message + again" only when concise is non-nil. + (fancy-startup-screen): Call `fancy-startup-tail' with optional + arg `concise'. If CONCISE is non-nil, display a concise version + of the splash screen in another window. Otherwise, switch to the + startup buffer in the same window. + (startup-echo-area-message): Change displayed binding from + C-h C-p (describe-project) to C-h C-a (about-emacs), and change + text "about the GNU system and GNU/Linux" to "about GNU Emacs and + the GNU system". + (display-startup-screen): Fix buffer name from "*About GNU Emacs*" + to "*GNU Emacs*". + (display-about-screen): Don't check the existence of the buffer + "*About GNU Emacs*". + (display-splash-screen): Make alias to `display-startup-screen'. + (command-line-1): Rename `inhibit-startup-message' to + `inhibit-startup-screen'. Inhibit startup screen when Emacs is + started with command line options "-f", "-funcall", "-e", "-eval", + "-execute", "-insert", "-find-file", "-file", "-visit". + Inhibit startup screen when Emacs is started with a file name only + on tty (i.e. don't inhibit it when started with a file name like + "emacs FILE..." on a window system). + (command-line-1): Simplify logic of displaying the startup screen: + if file-count > 0, then display the concise version in another + window, otherwise display full version in the same window. -2005-05-18 Jay Belanger + * help.el (help-map): Bind C-h C-a to about-emacs. + (help-for-help-internal): Add C-a description to C-h help text. - * calc/calc-help.el (calc-s-prefix-help): - Add `calc-copy-special-constant' to help string. +2007-09-22 Dan Nicolaescu -2005-05-18 Luc Teirlinck + * emacs-lisp/checkdoc.el (checkdoc-force-docstrings-flag) + (checkdoc-permit-comma-termination-flag): Autoload the + safe-local-variable setting. - * emacs-lisp/eldoc.el (eldoc-mode): Doc fix. + * bookmark.el (bookmark-xemacsp): Remove. + (bookmark-make): Don't use bookmark-xemacsp, + use (featurep 'xemacs) instead. -2005-05-18 Jay Belanger + * speedbar.el (speedbar-frame-mode) + (speedbar-frame-reposition-smartly) + (speedbar-set-mode-line-format, speedbar-reconfigure-keymaps) + (speedbar-check-vc): Remove use of non-existent variable + dframe-xemacsp, use (featurep 'xemacs) instead. - * calc/calc-poly.el (math-factor-poly-coefs): Make sure the terms - in linear factors are in proper order. + * indent.el (indent-for-tab-command): Indent the region if + transient-mark-mode and the region is active. -2005-05-18 Carsten Dominik +2007-09-21 Francesco Potortì - * textmodes/reftex-vars.el (reftex-cite-format-builtin): - Support for jurabib. + * progmodes/octave-inf.el (inferior-octave-mode): Use add-hook to + add inferior-octave-directory-tracker to the buffer-local value + of comint-input-filter-functions. - * textmodes/reftex.el (featurep): Define aliases for overlay - commands, for XEmacs compatibility, and use these aliases in - overlay initializations. - (reftex-highlight): Use `reftex-move-overlay'. - (reftex-unhighlight): Use `reftex-delete-overlay'. - (reftex-uniq): Function removed. Use `reftex-uniquify' instead. - (reftex-access-search-path): Use `reftex-uniquify' instead of - `reftex-uniq'. +2007-09-21 Dan Nicolaescu - * textmodes/reftex-sel.el (reftex-select-unmark): Overlay - `before-string' property modification enables for Emacs as well. - (reftex-select-item): Use `reftex-delete-overlay'. - (reftex-select-mark): Use `reftex-make-overlay' and - `reftex-overlay-put'. - (reftex-select-unmark): Use `reftex-delete-overlay' and - `reftex-overlay-put'. + * xt-mouse.el (xterm-mouse-mode): Re-enable suspend-tty-functions. -2005-05-18 Lute Kamstra +2007-09-21 Juanma Barranquero - * emacs-lisp/lisp.el (check-parens): Fix docstring. + * frame.el (suspend-frame): Call `iconify-or-deiconify-frame' also + on w32 frames. -2005-05-18 Juanma Barranquero +2007-09-21 Stefan Monnier - * add-log.el (add-change-log-entry): - * array.el (array-make-template, array-reconfigure-rows) - (array-init-max-row, array-init-max-column) - (array-init-columns-per-line, array-init-field-width): - * replace.el (replace-match-maybe-edit, perform-replace): - * textmodes/spell.el (spell-region): - Replace `read-input' by `read-string'. + * startup.el (normal-top-level): Remove DISPLAY from + process-environment to let it be computed dynamically in callproc.c. - * forms.el (forms-mode): - * finder.el (finder-compile-keywords): - * shadowfile.el (shadow-read-files): - Replace `eval-current-buffer' by `eval-buffer'. - - * terminal.el (te-pass-through): - * net/ange-ftp.el (ange-ftp-process-filter, ange-ftp-gwp-filter) - (ange-ftp-raw-send-cmd): - * net/telnet.el (telnet-interrupt-subjob, telnet-c-z) - (send-process-next-char, telnet-initial-filter, telnet): - Replace `send-string' by `process-send-string'. - - * progmodes/prolog.el (inferior-prolog-mode): Doc fix. - (prolog-consult-region): Replace `send-string' by - `process-send-string'; replace `send-region' by `process-send-region'. - - * progmodes/delphi.el (delphi-log-msg): - Replace `set-window-dot' by `set-window-point'. - - * subr.el (window-dot, set-window-dot, read-input, send-string) - (send-region, show-buffer, eval-current-buffer): - Make really obsolete, as the comment says. - -2005-05-17 Kim F. Storm - - * emulation/cua-base.el (cua-use-hyper-key): Doc fix. - (cua--init-keymaps): Bind C-return instead of S-return to set - rectangle mark. - - * emulation/cua-rect.el (cua--init-rectangles): Bind C-return - instead of S-return to toggle/clear rectangle mark. - -2005-05-17 Daniel Pfeiffer - - * progmodes/make-mode.el (makefile-dependency-skip): New variable. - (makefile-macroassign-regex, makefile-make-font-lock-keywords): - Also fontify plain strings assigned to variables, mostly so that a - colon has a face and is thus not taken as a dependency separator. - (makefile-previous-dependency): Inline the new matcher, because it - is too complex to work in both directions. - (makefile-match-dependency): Eliminate `backward' arg (see above). - Completely reimplemented so as to not sometimes go into an endless - loop. It should also be more efficient, because first it only - searches for `:', instead of applying the very complex regexp. - (makefile-mode): Cancel `font-lock-support-mode', because blocks - to be fontified in one piece can be too long for JIT. - Makefiles are never *that* big. - -2005-05-17 Reiner Steib - - * dired.el (dired-mode): Simplify. - -2005-05-17 Lute Kamstra - - * emacs-lisp/easy-mmode.el (define-minor-mode): Don't generate a - defcustom for the mode hook variable. - - * emacs-lisp/authors.el (authors): Do parse the ChangeLogs of the - Emacs Lisp Reference Manual. - -2005-05-17 Juanma Barranquero - - * emacs-lisp/cl.el (eql, floatp-safe, plusp, minusp, oddp) - (evenp, list*): - * emacs-lisp/cl-macs.el (macrolet, symbol-macrolet): - * emacs-lisp/cl-seq.el (subsetp, tree-equal): Doc fixes. - - * net/tramp-smb.el (tramp-smb-open-connection): - Pass `tramp-chunksize' as fifth (required) argument. - -2005-05-16 Daniel Pfeiffer - - * font-lock.el (lisp-font-lock-keywords-1): - Set `font-lock-negation-char-face' for [^...] char group. - (lisp-font-lock-keywords-2): Highlight regexp's \\( \\| \\). - - * progmodes/make-mode.el (makefile-dependency-regex): Turn it into - a var, and refine it to mask one more level of nested vars. - (makefile-rule-action-regex): Turn it into a var, and refine it so - it recognizes backslashed continuation lines as belonging to the - same command. - (makefile-macroassign-regex): Refine it so it recognizes - backslashed continuation lines as belonging to the same command. - (makefile-var-use-regex): Don't look at the next char, because it - might be the same one to be skipped by the initial [^$], leading - to an overlooked variable use. - (makefile-make-font-lock-keywords): Remove two parameters, which - are now variables that some of the modes set locally. - Handle dependency and rule action matching through functions, because - regexps alone match too often. Dependency matching now comes - last, so it can check, whether a colon already matched something else. - (makefile-mode): Inform that font-lock improves makefile parsing - capabilities. - (makefile-match-dependency, makefile-match-action): New functions. - -2005-05-16 Juanma Barranquero - - * emacs-lisp/cl-extra.el (equalp): Doc fix. - - * align.el (align-regexp): - * ansi-color.el (ansi-color-get-face): - * array.el (array-reconfigure-rows, array-init-max-row) - (array-init-max-column, array-init-columns-per-line) - (array-init-field-width): - * dired-aux.el (dired-trample-file-versions): - * dired-x.el (dired-mark-sexp): - * ediff-diff.el (ediff-extract-diffs, ediff-get-diff3-group): - * edmacro.el (edmacro-finish-edit, edmacro-parse-keys): - * emerge.el (emerge-extract-diffs, emerge-get-diff3-group): - * faces.el (face-read-integer): - * files.el (backup-extract-version, insert-directory): - * hexl.el (hexl-insert-decimal-char): - * server.el (server-process-filter): - * shell.el (shell-extract-num): - * startup.el (command-line-1): - * term.el (term-command-hook): - * time-stamp.el (time-stamp, time-stamp-string-preprocess) - (time-stamp-do-number): - * time.el (display-time-update): - * timezone.el (timezone-parse-date, timezone-zone-to-minute) - (timezone-fix-time): - * vms-patch.el (vms-suspend-resume-hook): - * calendar/appt.el (appt-convert-time): - * calendar/cal-bahai.el (mark-bahai-diary-entries): - * calendar/cal-hebrew.el (mark-hebrew-diary-entries): - * calendar/cal-islam.el (mark-islamic-diary-entries): - * calendar/calendar.el (calendar-cursor-to-date) - (calendar-star-date): - * calendar/diary-lib.el (diary-attrtype-convert) - (mark-diary-entries, diary-entry-time): - * calendar/solar.el (solar-get-number): - * emacs-lisp/lisp-mnt.el (lm-last-modified-date): - * emacs-lisp/re-builder.el (reb-display-subexp): - * emulation/edt.el (edt-set-scroll-margins): - * emulation/tpu-extras.el (tpu-set-scroll-margins): - * emulation/vip.el (vip-get-ex-token, vip-get-ex-buffer) - (vip-get-ex-count): - * emulation/viper-ex.el (viper-get-ex-token) - (viper-get-ex-buffer, viper-get-ex-count, ex-next): - * international/fontset.el (fontset-plain-name): - * mail/feedmail.el (feedmail-look-at-queue-directory): - * mail/mailalias.el (mail-get-names): - * mail/rmail.el (rmail-convert-to-babyl-format): - * mail/rmailsum.el (rmail-make-basic-summary-line) - (rmail-summary-next-same-subject, rmail-summary-rmail-update) - (rmail-summary-goto-msg): - * mail/smtpmail.el (smtpmail-read-response): - * net/ange-ftp.el (ange-ftp-guess-hash-mark-size) - (ange-ftp-vms-add-file-entry): - * play/gametree.el (gametree-looking-at-ply) - (gametree-current-branch-score): - * progmodes/ada-xref.el (ada-prj-find-prj-file) - (ada-xref-find-in-modified-ali, ada-find-in-src-path): - * progmodes/cperl-mode.el (condition-case): - * progmodes/ebrowse.el (ebrowse-set-tree-indentation) - (ebrowse-set-member-buffer-column-width) - (ebrowse-select-1st-to-9nth): - * progmodes/etags.el (etags-snarf-tag): - * progmodes/flymake.el (flymake-parse-line): - * progmodes/idlw-shell.el (idlwave-shell-parse-line) - (idlwave-shell-filter-bp, idlwave-shell-goto-next-error) - (idlwave-shell-menu-def): - * progmodes/ps-mode.el (ps-run-goto-error): - * progmodes/vhdl-mode.el (vhdl-read-offset, vhdl-load-cache) - (vhdl-speedbar-contract-level): - * term/mac-win.el (x-handle-numeric-switch): - * term/sun-mouse.el (sun-get-frame-data): - * term/w32-win.el (x-handle-numeric-switch): - * term/x-win.el (x-handle-numeric-switch): - * textmodes/ispell.el (ispell-parse-output): - * textmodes/nroff-mode.el (nroff-outline-level): - * textmodes/reftex-cite.el (reftex-bib-sort-year) - (reftex-bib-sort-year-reverse, reftex-format-citation): - * textmodes/reftex-parse.el (reftex-init-section-numbers) - (reftex-section-number): - * textmodes/texinfmt.el (texinfo-paragraphindent): - Replace `string-to-int' by `string-to-number'. - - * international/latexenc.el: Add page marker to force the "Local - Variables:" string out of the last page. - -2005-05-16 Nick Roberts - - * progmodes/gud.el (gud-tooltip-mode): Add gud prefix to - tooltip-change-major-mode. - (gud-tooltip-print-command): Remove case where gud-minor-mode - is gdb ("--fullname"). - (gud-tooltip-tips): Turn GUD tooltips off for this case and - explain to user. - -2005-05-16 Jay Belanger - - * calc/calc-store.el (calc-copy-special-constant): New function. - - * calc/calc-ext.el (calc-init-extensions): Add binding for - `calc-copy-special-constant'. - - * calc/calc-prog.el (calc-edit-format-macro-buffer): Add a case - for the `calc-copy-special-constant' command. - -2005-05-16 Nick Roberts - - * subr.el (left-fringe-p): New function. - - * progmodes/compile.el (compilation-setup): Set local value of - overlay-arrow-string to "" always. - (compilation-set-window): Left fringe then don't scroll. - No left fringe then no arrow and scroll message to top. - (compilation-context-lines): Adjust doc string accordingly. - -2005-05-16 Kim F. Storm + * frame.el (frame-initialize, make-frame): + * faces.el (tty-set-up-initial-frame-faces): + * env.el (setenv): Don't set display-environment-variable. - * ido.el (ido-magic-forward-char, ido-magic-backward-char) - (ido-magic-delete-char): New commands for C-f, C-b, C-d. - (ido-wide-find-dir-or-delete-dir): New command for M-d. - (ido-define-mode-map): Bind them. Add C-x prefix to fallback commands. - (ido-read-file-name): Handle commands with ido property value - equal to find-file as reading a file name, to allow C-d to enter dired. - (ibuffer-find-file): Add ido property with value find-file. + * server.el (server-getenv-from): Remove. Use getenv-internal instead. + (server-create-tty-frame): Don't set unused `tty' property. + Set `display' instead of display-environment-variable. + (server-create-window-system-frame): No display-environment-variable. -2005-05-15 Kim F. Storm +2007-09-21 Michael Albinus - * subr.el (open-network-stream-nowait): Remove. - (open-network-stream-server): Remove. + * rfn-eshadow.el (rfn-eshadow-setup-minibuffer-hook) + (rfn-eshadow-update-overlay-hook): New defvars. + (rfn-eshadow-setup-minibuffer, rfn-eshadow-update-overlay): + Run the hooks. -2005-05-15 Richard M. Stallman + * net/tramp.el (tramp-rfn-eshadow-overlay): New defvar. + (tramp-rfn-eshadow-setup-minibuffer) + (tramp-rfn-eshadow-update-overlay): New defuns. Hook into + rfn-eshadow.el. - * faces.el (describe-face): Output a definition link button. + * net/tramp-smb.el (tramp-smb-errors): Add error message for call + timeout. - * help-mode.el (help-face-def): New button type. +2007-09-21 Glenn Morris - * emacs-lisp/copyright.el (copyright-fix-years): - Match properly if the first year is 2-digit. - Don't mess up the whitespace after the years by filling. + * obsolete/sun-fns.el (emacs-quit-menu): Remove emacstool-related code. + * term/sun-mouse.el (suspend-emacstool): Remove. + * term/sun.el: Remove emacstool-related code. - * dired-aux.el (dired-mark-confirm): - Pass t to dired-get-marked-files for DISTINGUISH-ONE-MARKED. + * emacs-lisp/bytecomp.el (byte-compile-warnings) + (byte-compile-warnings-safe-p): Add `mapcar'. + (byte-compile-warning-types): Add mapcar and make-local. + (byte-compile-normal-call): Add option to suppress mapcar warning. + (top-level): Use mapc rather than mapcar in eval-when-compile. - * dired.el (dired-map-over-marks): New arg DISTINGUISH-ONE-MARKED. - (dired-get-marked-files): New arg DISTINGUISH-ONE-MARKED. - (dired-mark-pop-up): Handle FILES = (t FILE) specially. + * textmodes/tex-mode.el (tex-validate-region): Handle escaped parens. + (tex-next-unmatched-eparen, tex-last-unended-eparen): New functions. + (latex-forward-sexp-1, latex-backward-sexp-1): Doc fix. + Handle escaped parens. + (latex-forward-sexp): Doc fix. - * emacs-lisp/lisp-mode.el (lisp-mode-variables): - Set font-lock-comment-start-skip. + * eshell/esh-mode.el (eshell-output-filter-functions): + Add eshell-postoutput-scroll-to-bottom. - * font-lock.el (font-lock-comment-start-skip): New variable. - (font-lock-comment-end-skip): New variable. - (font-lock-fontify-syntactically-region): Use them if non-nil. + * loadup.el: Remove termdev. -2005-05-15 Jay Belanger + * progmodes/fortran.el (fortran-mode-abbrev-table, fortran-line-length): + * progmodes/f90.el (f90-mode-abbrev-table): Use mapc rather than mapcar. - * calc/calc-store.el (calc-store-value): Return a string rather - than display it as a message. - Use calc-var-name for variable name. - (calc-store-into): Add the result of calc-store-value to message. - (calc-copy-variable): Add a message. - (calc-store-exchange): Improve error messages. - (calc-store-binary, calc-store-map): Don't reset the values of - special constants. +2007-09-21 Markus Triska -2005-05-14 Luc Teirlinck + * emacs-lisp/bytecomp.el (byte-compile-normal-call): Warn when + `mapcar' is called for effect. - * emacs-lisp/derived.el (define-derived-mode): Add link to Elisp - manual to docstring. +2007-09-21 Kevin Ryde - * files.el (hack-local-variables-confirm): Add STRING argument. - Make the function handle non file visiting buffers correctly. - (hack-local-variables-prop-line, hack-local-variables) - (hack-one-local-variable): Use STRING arg of - `hack-local-variables-confirm'. + * international/mule.el (sgml-html-meta-auto-coding-function): + Bind `case-fold-search' to t. -2005-05-14 Michael Albinus +2007-09-20 Stefan Monnier - Sync with Tramp 2.0.49. + * termdev.el: Remove. - * net/tramp.el (tramp-handle-dired-call-process) - (tramp-handle-insert-directory):`insert-buffer' cannot be used - because the contents of the Tramp buffer is changed before - insertion (`expand-file' and alike). - (tramp-handle-insert-directory): If `localname' has an empty - nondirectory name, it must not be quoted. - (tramp-pre-connection): Add parameter CHUNKSIZE. Make local - variable `tramp-chunksize'. Change callees. - (tramp-open-connection-setup-interactive-shell): Check remote host - for buggy `send-process-string' implementation. - Set `tramp-chunksize' if found. Reported by Michael Kifer - (and a lot of other people all the years). - (tramp-handle-shell-command): `insert-buffer' cannot be used - because the contents of the Tramp buffer is changed before - insertion (`expand-file' and alike). Reported by Fr,Ai(Bd,Ai(Bric Bothamy - . - (tramp-set-auto-save): Actions should be done for Tramp file name - handler only. Ange-FTP has its own auto-save mechanism. - Reported by Richard G. Bielawski . - (tramp-set-auto-save-file-modes): Set file modes of - `buffer-auto-save-file-name' to ?\600 as fallback solution. - Reported by Ferenc Wagner . - (tramp-bug): Remove obsolete variable. - (tramp-append-tramp-buffers): Rewrite partly. More suitable check - for presence of `mml-mode'. Make it running for older Emacsen as well. + * frame.el (get-device-terminal): New function. Moved from termdev.el. + (frames-on-display-list): Use it. -2005-05-14 John Paul Wallington + * bindings.el: Bind C-z to suspend-frame instead of suspend-emacs. - * ibuf-ext.el (define-ibuffer-filter filename): - If `dired-directory' is a list, use its car. + * termdev.el (terminal-id): Ask terminal-live-p before giving up. -2005-05-14 Daniel Brockman (tiny change) +2007-09-20 Richard Stallman - * ibuffer.el (define-ibuffer-column filename): - If `dired-directory' is a list, use its car. + * newcomment.el (comment-add): If EXTRA, double `comment-add' value. -2005-05-14 Richard M. Stallman +2007-09-20 Stefan Monnier - * subr.el (symbol-file): Doc fix. + * add-log.el (add-log-current-defun): Fix thinko w.r.t derived-mode-p. - * emacs-lisp/bytecomp.el (byte-compile-nogroup-warn): New function. - (byte-compile-form): Call byte-compile-nogroup-warn. - (byte-compile-warning-types): Doc fix. +2007-09-20 Glenn Morris - * eshell/esh-mode.el (eshell-find-tag): Use with-no-warnings. + * textmodes/tex-mode.el (tex-validate-buffer): Use paragraph + motion functions, rather than hard-coding "\n\n". + (tex-validate-region): Check for eobp, to speed up. + (tex-next-unmatched-end): Doc fix. - * progmodes/cc-engine.el (c-literal-faces): - Add font-lock-comment-delimiter-face. +2007-09-19 Stefan Monnier - * net/net-utils.el (dig): Use with-no-warnings. + * files.el (auto-mode-alist): Use archive-mode for .rar files. - * mail/supercite.el (sc-cite-frame-alist, sc-uncite-frame-alist) - (sc-recite-frame-alist, sc-default-cite-frame) - (sc-default-uncite-frame, sc-default-recite-frame) - (sc-attrib-selection-list, sc-rewrite-header-list): - Mark as risky-local-variable. + * international/mule.el (auto-coding-alist): Rar archives are binary. - * international/ogonek.el (ogonek-jak, ogonek-how): - Don't use beginning-of-buffer. + * arc-mode.el: Add basic support for Rar. + (archive-find-type): Recognize Rar's signature. + (archive-desummarize): New fun. + (archive-summarize): Use it to restore the buffer's data in case + someone wants to switch to some other major mode. + (archive-resummarize): Use it as well. + (archive-rar-summarize, archive-rar-extract): New functions. - * emacs-lisp/eldoc.el (eldoc-documentation-function): Add autoload. + * filesets.el: Remove spurious * in docstrings. + (filesets-running-xemacs): Remove. Use (featurep 'xemacs) instead. + (filesets-conditional-sort): Remove unused arg `simply-do-it'. + (filesets-ingroup-collect): Remove unused arg `depth'. + (filesets-update): Remove unused arg `version'. - * calendar/solar.el (solar-data-list): Move definition up. + * finder.el (finder-compile-keywords): Fix up comment style. + (finder-mouse-face-on-line): previous-line -> forward-line. - * dnd.el (dnd-protocol-alist): Add autoload. + * recentf.el: Remove spurious * in docstrings. + (recentf-save-list): Fix up comment style. - * progmodes/sh-script.el: Many doc usage fixes. - (sh-indent-after-do): Change default to match common styles. + * progmodes/octave-mod.el: Remove spurious * in docstrings. + (octave-mode-map): Move init into declaration and remove \t binding. + (octave-mode-startup-message): Remove unused var. + (octave-scan-blocks): Remove unused arg `from'. + (octave-forward-block, octave-down-block, octave-up-block): + Update callers. -2005-05-13 Luc Teirlinck + * progmodes/meta-mode.el (meta-mode-syntax-table): Move init into decl. + (meta-mode-map): Likewise and remove \t binding. - * files.el (interpreter-mode-alist) - (auto-mode-interpreter-regexp): Doc fixes. + * net/snmp-mode.el: Remove spurious * in docstrings. + (snmp-rfc1155-types, snmp-rfc1213-types, snmp-rfc1902-types) + (snmp-rfc1903-types, snmp-rfc1155-access, snmp-rfc1902-access) + (snmp-rfc1212-status, snmp-rfc1902-status): Remove list wrappers now + that completion accepts lists of strings. + (snmp-mode-syntax-table): Move initialization into declaration. + (snmp-mode-map): Likewise and remove \t binding. + (snmp-common-mode): Set tab-always-indent according to snmp-t-a-i. + (snmp-indent-line, snmp-mode-imenu-create-index): Remove unused var. + (snmp-indent-command): Remove. -2005-05-13 Matt Hodges + * emacs-lisp/lisp-mode.el (lisp-mode-shared-map): Use the default TAB + binding, so tab-always-indent works right. - * tmm.el (tmm-get-keymap): Include only active menus and menu items. +2007-09-19 Johannes Weiner - * emacs-lisp/easymenu.el (easy-menu-define): Doc fixes. + * net/browse-url.el (browse-url-elinks-new-window): New function. + (browse-url-elinks): Use browse-url-elinks-new-window. + Accept optional second argument `new-window'. Fix typo in doc-string. + (browse-url-elinks-sentinel): Use browse-url-elinks-new-window. + Improve error message. -2005-05-13 Jan Dj,Ad(Brv +2007-09-19 Michaël Cadilhac - * dired.el (dired-mode): make-variable-buffer-local => - make-local-variable. + * net/browse-url.el (browse-url-url-encode-chars): Use the right + parameter name in the function body. + Reported by Johannes Weiner. -2005-05-13 YAMAMOTO Mitsuharu +2007-09-19 Glenn Morris - * term/mac-win.el (mac-select-convert-to-string): Try coding - systems in mac-script-code-coding-systems if specified one cannot - encode string for `com.apple.traditional-mac-plain-text'. + * net/socks.el (socks-open-network-stream): Signal an explicit + error if the port associated with a service string can't be found. -2005-05-13 Daniel Pfeiffer + * textmodes/tex-mode.el (tex-terminate-paragraph): + Use backward-paragraph. - * progmodes/make-mode.el (makefile-targets-face) - (makefile-shell-face, makefile-makepp-perl-face): New faces. - (makefile-dependency-regex): Fix it to not make the colon in - $(var:a=b) special. - (makefile-rule-action-regex): New regexp for highlighting embedded - Shell strings. - (makefile-macroassign-regex): Handle != for highlighting as - embedded Shell strings. - (makefile-var-use-regex): New const. - (makefile-statements, makefile-automake-statements) - (makefile-gmake-statements, makefile-makepp-statements) - (makefile-bsdmake-statements): New consts. - (makefile-make-font-lock-keywords): New function. - (makefile-automake-font-lock-keywords) - (makefile-gmake-font-lock-keywords) - (makefile-makepp-font-lock-keywords) - (makefile-bsdmake-font-lock-keywords): New consts. - (makefile-mode-map): Add switchers between the various submodes. - (makefile-mode): Document the availability of the variants. - (makefile-automake-mode, makefile-gmake-mode) - (makefile-makepp-mode, makefile-bsdmake-mode): New derived modes. +2007-09-19 Stefan Monnier - * files.el (auto-mode-alist, interpreter-mode-alist): Set up the - new variants of makefile-mode. + * server.el (server-running-p): New function. -2005-05-12 Stefan Monnier +2007-09-18 Jason Rumney - * font-lock.el (font-lock-comment-delimiter-face): Fix up - the inheritance. + * term/w32-win.el (w32-focus-frame): Make obsolete alias for + x-focus-frame. -2005-05-12 Luc Teirlinck + * frame.el (select-frame-set-input-focus, select-frame-by-name): + Use x-focus-frame for w32. - * progmodes/inf-lisp.el (inferior-lisp-mode-hook) - (inferior-lisp-load-hook): Convert defcustoms back to defvars. +2007-09-17 David Kastrup - * files.el (normal-mode): Extend the scope of the - `enable-local-variables' binding to include the `set-auto-mode' call. - (magic-mode-alist): Doc fix. + * textmodes/tex-mode.el (tex-verbatim-environments): + Eliminate CL dependency. -2005-05-12 Stefan Monnier +2007-09-17 Richard Stallman - * font-lock.el (font-lock-comment-delimiter-face): Inherit from - font-lock-comment-face rather than copying its setting. + * newcomment.el (comment-add): New arg EXTRA. + (comment-region-default): Pass EXTRA if not indenting lines. -2005-05-12 Andreas Schwab +2007-09-17 Michaël Cadilhac - * eshell/esh-mode.el (eshell-send-input): Doc fix. + * net/browse-url.el (browse-url-url-encode-chars): New function. + URL-encode some chars in a string. + (browse-url-encode-url): Rewrite using the previous function. + (browse-url-file-url): Use `browse-url-url-encode-chars'. + (browse-url-elinks-sentinel): Fix typo. + (browse-url-new-window-flag): Doc change. -2005-05-12 Lute Kamstra +2007-09-17 Glenn Morris - * emacs-lisp/generic.el (define-generic-mode): Don't generate a - defcustom for the mode hook variable. Delete the last argument. - * generic-x.el: Fix callers of define-generic-mode. - (generic-x-modes): Delete group. - (show-tabs-tab-face, show-tabs-space-face): Put them in the - generic-x customization group. + * textmodes/tex-mode.el (tex-compilation-parse-errors): Prefer the + filename from `--file-line-error', if it is available. -2005-05-12 Kim F. Storm +2007-09-17 Joe Wells (tiny change) - * font-lock.el (font-lock-negation-char-face): Default to "off". + * textmodes/tex-mode.el (tex-compilation-parse-errors): Also match + TeX `--file-line-error' format. - * progmodes/cc-fonts.el (c-basic-matchers-before): Don't apply - font-lock-negation-char-face to ! in !=. +2007-09-17 Dan Nicolaescu -2005-05-12 Masatake YAMATO + * xt-mouse.el: Delete add-hook calls that were moved to + xterm-mouse-mode. + (xterm-mouse-mode): Disable resume-tty-functions, explain why it + does not work. - * add-log.el (find-change-log): Fix typos in the docstring - of function. +2007-09-17 Richard Stallman -2005-05-11 Arne J,Ax(Brgensen + * cus-face.el (custom-theme-set-faces): Undo previous change. - * international/latexenc.el (latexenc-find-file-coding-system): - Avoid `re-search-forward' when looking for input encoding because - of speed and safety. Better regular expressions for recognizing - input encoding. Limit a search for TeX-master/tex-main-file to - the local variable section. + * faces.el (face-spec-set): When FRAME nil, look up each frame in SPEC. -2005-05-11 Dan Nicolaescu +2007-09-17 Glenn Morris - * progmodes/sh-script.el (sh-mode-default-syntax-table): Set the - syntax of $ to "'" (quote). + * textmodes/tex-mode.el (tex-region): Simplify previous change, + handling the case where the region is not in `tex-main-file'. + (tex-region-1): Delete. + (tex-region-header): New function, doing the header part of the + old tex-region-1. -2005-05-11 Reiner Steib +2007-09-16 Stefan Monnier - * dnd.el (dnd-protocol-alist): Improve custom type. + * simple.el (newline): Simplify use of prefix-numeric-value. + (line-move-partial): Remove unused var `ppos'. + (line-move-1): Replace 9999 with most-positive-fixnum. + (move-end-of-line): Use more efficient single-property search. + (move-beginning-of-line): Remove unused var `start'. + (blink-matching-open): Restructure in a more functional style. - * dired.el (dired-dnd-protocol-alist): New variable. - (dired-mode): Use `dired-dnd-protocol-alist'. Move call of - `dired-mode-hook' to the end. +2007-09-16 Michaël Cadilhac -2005-05-11 Stefan Monnier + * calendar/holidays.el (list-holidays): Remove the cyclic alias. - * font-lock.el (font-lock-fontify-syntactically-region): Don't use - comment-end if comment-start-skip is not set. - Obey the font-lock-comment-delimiter-face variables. +2007-09-16 Stefan Monnier -2005-05-11 Stefan Monnier + * server.el (server-clients): Only keep procs, no properties any more. + (server-client): Remove. + (server-client-get, server-client-set): Remove, replace all callers by + process-get and process-put resp. + (server-clients-with, server-add-client, server-delete-client) + (server-create-tty-frame, server-create-window-system-frame) + (server-process-filter, server-execute, server-visit-files) + (server-buffer-done, server-kill-buffer-query-function) + (server-kill-emacs-query-function, server-switch-buffer) + (server-save-buffers-kill-terminal): Update accordingly. + + * server.el (server-with-environment): Simplify. + (server-select-display, server-unselect-display): Re-add functions that + seem to have been lost in the multi-tty merge. + (server-eval-and-print, server-create-tty-frame) + (server-create-window-system-frame, server-goto-toplevel) + (server-execute, server-return-error): New functions extracted from + server-process-filter. + (server-execute-continuation): New functions. + (server-process-filter): Restructure so that all arguments are analysed + first and then acted upon in a subsequent stage. This way + server-goto-toplevel can be executed later, when we know if + it's necessary. + Remove the "-version" and "-version-good" support. - * files.el (executable-find): Move from executable.el. Use - locate-file. - * progmodes/executable.el (executable-find): Move to files.el. +2007-09-16 Drew Adams - * font-lock.el (font-lock-fontify-keywords-region): Use a marker - when trying to ensure forward progress. + * cus-edit.el (custom-face-edit-activate): Doc fix. -2005-05-11 Chong Yidong +2007-09-16 Glenn Morris - * mouse-sel.el (mouse-sel-follow-link-p): New function. - (mouse-select, mouse-select-internal, mouse-extend-internal): - Use it to implement mouse-1-click-follows-link functionality. + * calendar/cal-menu.el, calendar/calendar.el, calendar/diary-lib.el: + Following cal-bahai renaming, update all instances of + list-bahai-diary-entries to diary-bahai-list-entries, + mark-bahai-diary-entries to diary-bahai-mark-entries, + calendar-goto-bahai-date to calendar-bahai-goto-date, + insert-bahai-diary-entry to diary-bahai-insert-entry, + insert-monthly-bahai-diary-entry to diary-bahai-insert-monthly-entry, + insert-yearly-bahai-diary-entry to diary-bahai-insert-yearly-entry, and + calendar-print-bahai-date to calendar-bahai-print-date. -2005-05-11 Richard M. Stallman + * textmodes/tex-mode.el (tex-region): Handle the case where the + region is not in `tex-main-file'. Move the old code that applies + to both cases... + (tex-region-1): ...to this new function. - * font-lock.el (font-lock-fontify-syntactically-region): - Use font-lock-comment-delimiter-face for comment delimiters. +2007-09-15 Stefan Monnier -2005-05-10 Jay Belanger + * vc.el (vc-process-sentinel): New function. + (vc-exec-after): Use it instead of using ugly hackish analysis and + construction of Elisp code. + (vc-sentinel-movepoint): New dynamically scoped var. + (vc-print-log, vc-annotate): Set it to move the user's point. - * calc/calc-help.el (calc-m-prefix-help): Add mention of - preserving embedded modes. + * vc-cvs.el (vc-cvs-annotate-time): Use inhibit-read-only and + inhibit-modification-hooks. -2005-05-10 Richard M. Stallman + * calendar/cal-bahai.el (mark-bahai-diary-entries): Fix up typo. + (calendar-bahai-print-date, calendar-bahai-goto-date) + (diary-bahai-list-entries, diary-bahai-insert-entry): + New names to clean up the namespace a bit more. + (calendar-goto-bahai-date, calendar-print-bahai-date): Compat aliases. - * progmodes/sh-script.el (sh-indent-for-do): Default to 0. +2007-09-15 Glenn Morris - * progmodes/ada-mode.el (ada-adjust-case-skeleton): - Move from ada-stmt.el. - (ada-mode): Add ada-adjust-case-skeleton to skeleton-end-hook. + * calendar/holidays.el (holiday-list): Rename it back to + `list-holidays', but leave `holiday-list' as an alias. - * progmodes/ada-stmt.el (ada-adjust-case-skeleton): - Move to ada-mode.el. - (ada-stmt-mode-hook): Delete; do the work in ada-mode. + * textmodes/bibtex-style.el (bibtex-style-indent-basic): Specify a + custom group. - * cus-edit.el (custom-file): Call file-chase-links. + * textmodes/css-mode.el (css): New custom group. + (css-electrick-keys, css-selector, css-property) + (css-indent-offset): Specify custom group. - * files.el (read-directory-name): Fix previous change. - (hack-local-variables-confirm): New function. - (hack-local-variables-prop-line, hack-local-variables) - (hack-one-local-variable): Use it. +2007-09-15 Stefan Monnier -2005-05-10 Lute Kamstra + * pcvs.el (cvs-tags-list, cvs-retrieve-revision, cvs-find-modif) + (cvs-execute-single-file): Use process-file. + (cvs-run-process): Use start-file-process. - * font-lock.el (font-lock-keywords-alist) - (font-lock-removed-keywords-alist): Clarify docstrings. +2007-09-15 Dan Nicolaescu -2005-05-10 Nick Roberts + * xt-mouse.el (xterm-mouse-mode): Add hooks here not at the top + level. Remove the hooks when turning off the mode. - * progmodes/gdb-ui.el (gdb-macro-info): New variable. - (gdb-source-info): Check for preprocessor info. - (gdb-tooltip-print-1): New function. Don't print tooltip if it is - a macro for a function. - (gdb-info-breakpoints-custom): Try to find file again if not already - found (user might have used GDB dir command). - (gdb-get-location): Update gdb-location-alist correctly for change - to gdb-info-breakpoints-custom. + * term/xterm.el: Require xt-mouse at compile time. + (terminal-init-xterm): Turn on xterm mouse tracking for this + terminal if xterm-mouse-mode is enabled. - * progmodes/gud.el (gud-tooltip-mode): Require tooltip to be safe. - (gud-tooltip-print-command): Add gdbmi case. - (gud-tooltip-tips): Call gdb-tooltip-print-1 first if there is - preprocessor info. +2007-09-14 Dan Nicolaescu -2005-05-09 Reiner Steib + * term/xterm.el (xterm-function-map): Replace bindings that were + deleted by the merge. - * startup.el (fancy-splash-insert): Fix typo in doc string. +2007-09-14 Ulf Jasper -2005-05-09 Juanma Barranquero + * play/bubbles.el (bubbles-version): Bump value to "0.5". + (bubbles-mode-map): Move define-key statements here. + (bubbles-game-theme-menu): Ditto. + (bubbles-graphics-theme-menu): Ditto. + (bubbles-menu): Ditto. + (bubbles-mode): Initialize buffer-undo-list, redisplay. + (bubbles--initialize): Reset buffer-undo-list, redisplay. + (bubbles-plop): Set buffer-undo-list, redisplay. + (bubbles-undo): Reset buffer-undo-list, redisplay. + (bubbles--show-images): Take care of missing text properties. - * obsolete/float.el (string-to-float): - * obsolete/hilit19.el (hilit-add-pattern): - * obsolete/rnews.el (news-parse-range, news-select-message) - (news-get-pruned-list-of-files): Replace `string-to-int' by - `string-to-number'. +2007-09-14 Glenn Morris - * obsolete/uncompress.el: Set `find-file-not-found-functions', not - `find-file-not-found-hooks'; use `add-hook'. - (uncompress-while-visiting): Set `write-file-functions', not - `write-file-hooks'; use `add-hook'. + * startup.el (fancy-startup-text, fancy-about-text): Fix face + quoting. -2005-05-09 Kim F. Storm + * calendar/cal-hebrew.el, calendar/cal-menu.el + * calendar/calendar.el, calendar/diary-lib.el + * calendar/holidays.el: Rename all instances of + list-calendar-holidays callers to calendar-list-holidays, + list-holidays to holiday-list, check-calendar-holidays to + calendar-check-holidays, mark-calendar-holidays to + calendar-mark-holidays, and filter-visible-calendar-holidays to + holiday-filter-visible-calendar. - * emulation/cua-base.el (cua-copy-region, cua-cut-region) - (cua-paste): Handle clipboard action. - (cua--init-keymaps): Remap clipboard-kill-region and - clipboard-kill-ring-save. +2007-09-14 Dan Nicolaescu -2005-05-08 Eli Zaretskii + * term/xterm.el (xterm-function-map): Add C-M- bindings. - * emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name): - Improve commentary. +2007-09-13 Sascha Wilde (tiny change) - * simple.el (next-error-overlay-arrow-position): Revert the change - made on 2005-04-30. + * play/bubbles.el (bubbles--initialize-images): Fix bug: + Use transparent background for empty cells in graphics mode. -2005-05-07 Jay Belanger +2007-09-13 Jari Aalto - * calc/calcsel2.el (calc-commute-left, calc-commute-right) - (calc-sel-unpack, calc-sel-isolate): Rename variable `reselect' to - `calc-sel-reselect'. + * man.el (Man-default-man-entry): At end of line, continue looking + to the next line for possible end of hyphenated command. - * calc/calc-mode.el (calc-save-modes): Reset the modes list if - Calc is in embedded mode. +2007-09-13 Chris Moore -2005-05-07 Eli Zaretskii + * shell.el (shell-resync-dirs): Don't move the cursor relative to + the command being edited. - * progmodes/compile.el (compilation-setup): - Set overlay-arrow-string to an empty string on text terminals. +2007-09-12 Jim Meyering (tiny change) - * textmodes/ispell.el (ispell-program-name): Try looking for - "aspell" along exec-path, and if found, use it as the default - speller program. + * emacs-lisp/copyright.el (copyright-names-regexp): Doc fix: typo. -2005-05-07 Jirka Kosek (tiny change) +2007-09-12 Dan Nicolaescu - * international/mule.el (sgml-xml-auto-coding-function): - Recognize encoding='FOO' in single quotes as well as in double quotes. + * term/xterm.el (xterm-function-map): Add bindings for M-S- and + C-M-S- keys. -2005-05-07 Johan Bockg,Ae(Brd + * term/rxvt.el (rxvt-function-map): Initialize in the declaration. - * emacs-lisp/cl-macs.el (cl-transform-lambda): Recognize `declare' - as well as `interactive', so that defmacro* would recognize - `declare' forms. +2007-09-12 Michaël Cadilhac -2005-05-07 Eli Zaretskii + * net/browse-url.el (browse-url-encode-url): Fix an infinite loop. + New argument `filename-p' to use one set of confusing chars or another. + (browse-url-file-url): Use the argument. + Suggested by Johannes Weiner. - * emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name): - Explain more about the LIGHTER arg's usage in the doc string. - Add commentary to clarify what the code does. Fix the regexp that - strips whitespace from LIGHTER. Quote LIGHTER before using it, - since it could have characters special to regular expressions. +2007-09-12 Romain Francoise -2005-05-07 Matt Hodges (tiny change) + * cus-start.el (all): Revert 2007-09-08 change. - * replace.el (occur-1): Bind inhibit-read-only so that - erase-buffer doesn't barf on read-only text properties (likewise - for add-text-properties in occur-engine). Mark buffer as unmodified. - (occur-engine): Don't set buffer-read-only here. +2007-09-12 Aaron Hawley -2005-05-06 Stefan Monnier + * jka-cmpr-hook.el (jka-compr-compression-info-list): Use gzip to + extract .Z files, since it is more common than uncompress. - * pcvs.el (cvs-mode-commit, cvs-mode-edit-log): Don't fiddle with - list-buffers-directory. This caused the *cvs-commit* buffer to be - sometimes mistakenly reused as a *cvs* buffer. +2007-09-12 Glenn Morris -2005-05-07 Nick Roberts + * textmodes/org-publish.el (org-publish-org-to-html): Remove + duplicate function definition. - * tooltip.el: Move code for GUD tooltips into gud.el. - (require): CL no longer needed to compile case. - (tooltip-mode): Do not toggle functions for GUD tooltips. - (tooltip-gud-tips-p): Remove. Replace with minor mode - gud-tooltip-mode in gud.el. - (tooltip-gud-modes, tooltip-gud-display, tooltip-gud-echo-area) - (tooltip-gud-toggle-dereference): Rename in gud.el by replacing - tooltip-gud prefix with gud-tooltip and obsolete. - (tooltip-change-major-mode, tooltip-activate-mouse-motions-if-enabled) - (tooltip-mouse-motions-active, tooltip-activate-mouse-motions) - (tooltip-mouse-motion): Mouse movement functions/variable. - Rename in gud.el by adding gud prefix. - (tooltip-gud-original-filter, tooltip-gud-dereference) - (tooltip-gud-event, tooltip-toggle-gud-tips) - (tooltip-gud-process-output, tooltip-gud-print-command) - (tooltip-gud-tips): GUD tooltip functions/variables. Rename in - gud.el by replacing tooltip-gud prefix with gud-tooltip. - (gdb-tooltip-print): Move to gdb-ui.el. +2007-09-10 Chris Moore - * progmodes/gud.el: Move code for GUD tooltips from tooltip.el. - (require): CL needed to compile case. - (gud-tooltip-mode): Use to toggle GUD tooltips instead of - tooltip-gud-tips-p. Make it a minor-mode. - (gud-find-file): Only prepare GUD tooltips if gud-tooltip-mode is t. - (gud-menu-map): GUD tooltips use gud-tooltip-mode now. - (gud-tooltip-modes, gud-tooltip-display, gud-tooltip-echo-area) - (gud-tooltip-change-major-mode) - (gud-tooltip-activate-mouse-motions-if-enabled) - (gud-tooltip-mouse-motions-active, gud-tooltip-activate-mouse-motions) - (gud-tooltip-mouse-motion, gud-tooltip-toggle-dereference) - (gud-tooltip-original-filter, gud-tooltip-dereference) - (gud-tooltip-event, tooltip-toggle-gud-tips) - (gud-tooltip-process-output, gud-tooltip-print-command) - (gud-tooltip-tips): Move from tooltip.el. - - * progmodes/gdb-ui.el (gdb-tooltip-print): Move from tooltip.el. - (gdb-cpp-define-alist-flags): Doc fix. - (gdb-set-gud-minor-mode-1): Only prepare GUD tooltips if - gud-tooltip-mode is t. - -2005-05-06 Stefan Monnier - - * net/goto-addr.el (goto-address-fontify): Make sure the overlays - evaporate if their text is deleted. - (goto-address-at-point): Make it work as a mouse binding as well. - (goto-address-at-mouse): Obsolete it. Update users. - -2005-05-06 Glenn Morris - - * calendar/appt.el (top-level): No longer activate on load. - -2005-05-06 Juanma Barranquero - - * calendar/cal-bahai.el (mark-bahai-diary-entries): - * net/webjump.el (webjump): - * progmodes/idlw-help.el (idlwave-do-context-help1) - (idlwave-highlight-linked-completions): - * textmodes/po.el (po-find-file-coding-system-guts): - Replace `assoc-ignore-case' by `assoc-string'. - -2005-05-06 Eli Zaretskii - - * files.el (locate-file): Doc fix. - - * progmodes/gdb-ui.el (gdb-cpp-define-alist-program): Doc fix. - Remove the redundant test for ms-dos. - - * progmodes/cmacexp.el (c-macro-preprocessor): Use locate-file to - look for the preprocessor with exec-suffixes. If not found in - standard places, look in exec-path. Remove most of the tests that - used system-type. - - * loadup.el: Load jka-cmpr-hook instead of jka-comp-hook. - - * jka-compr.el (jka-compr-uninstall): Add autoload cookie. - - * jka-cmpr-hook.el: Renamed from jka-comp-hook.el, to avoid - file-name clash with jka-compr.el on 8+3 filesystems. - -2005-05-06 YAMAMOTO Mitsuharu - - * term/mac-win.el: Don't define or bind scroll bar functions if - x-toolkit-scroll-bars is t. - (x-select-text, x-get-selection-value): Clear - x-last-selected-text-clipboard if x-select-enable-clipboard is - nil. - (PRIMARY): Put mac-scrap-name property. - (mac-select-convert-to-file-url): New function. - (public.file-url): New selection target type. Add to - selection-converter-alist. - (x-get-selection, x-selection-value): Handle it. - (x-cut-buffer-or-selection-value): New alias. - -2005-05-05 Roland Winkler - - * textmodes/bibtex.el (bibtex-summary): Use current BibTeX - entry to avoid calling bibtex-find-entry with arg global - being t. Remove arg key. - (bibtex-summary-function, bibtex-complete-crossref-cleanup) - (bibtex-copy-summary-as-kill): Change accordingly. - -2005-05-05 Stefan Monnier - - * textmodes/org.el (org-get-entries-from-diary): Remove unused vars. - (org-agenda-date-later): Use with-current-buffer. - -2005-05-05 Luc Teirlinck - - * emacs-lisp/byte-run.el (define-obsolete-function-alias) - (define-obsolete-variable-alias): Doc Fixes. - -2005-05-06 Kim F. Storm - - * simple.el (line-move-1): Fix 2005-04-26 change. Must still use - vertical-motion when selective-display is active. - - * ido.el (ido-setup-hook): New hook. - (ido-define-mode-map-hook): Remove hook; use ido-setup-hook instead. - (ido-input-stack): New var. - (ido-define-mode-map): Bind M-b to ido-push-dir. Move old - ido-next-work-file binding to M-O. - Bind M-f to ido-wide-find-file-or-pop-dir. - (ido-define-mode-map): Don't run ido-define-mode-map-hook. - (ido-read-internal): Run ido-setup-hook. - Catch quit in read-file-name and read-string to cancel edit. - Handle new push, pop, and pop-all exit codes (for M-b/M-f). - Automatically pop-all when completing a directory name (RET). - (ido-file-internal): Add with-no-warnings around ffap and dired code. - (ido-exit-minibuffer): Use exit-minibuffer instead of throw. - (ido-wide-find-file, ido-wide-find-dir): Catch quit to cancel find. - (ido-push-dir, ido-pop-dir, ido-wide-find-file-or-pop-dir): - New functions for M-b/M-f to move among the directory components. - (ido-make-merged-file-list): Catch quit to cancel merge. - (ido-make-dir-list): Delete "." when ido-input-stack is non-empty. - (ido-completion-help): No warnings for ido-completion-buffer-full. - -2005-05-05 Daniel Pfeiffer + * diff-mode.el (diff-sanity-check-hunk): + Also accept single-line hunks. - * font-lock.el (font-lock-negation-char-face): New face and variable. - * progmodes/cc-fonts.el (c-cpp-matchers): Use it. - * progmodes/sh-script.el (sh-font-lock-keywords): Use it. - * progmodes/cperl-mode.el (cperl-init-faces): Use it. - * progmodes/make-mode.el (makefile-font-lock-keywords): Use it. +2007-09-10 Chong Yidong -2005-05-05 Juanma Barranquero + * startup.el (startup-screen-inhibit-startup-screen) + (pure-space-overflow-message): New vars. + (fancy-splash-insert): Allow functions for face and link specs. + (fancy-splash-head): Remove unused arg. Move splash text... + (fancy-startup-text, fancy-about-text): ...here. + (fancy-startup-tail): Rename from fancy-splash-tail. + (fancy-startup-screen, fancy-about-screen): Split off from + fancy-splash-screens. + (display-startup-screen): New function. + (display-about-screen): Rename from display-splash-screen. + (command-line-1): Use concise startup screen if necessary. - * emacs-lisp/byte-run.el (define-obsolete-function-alias): - Fix typo in docstring. +2007-09-10 Thien-Thi Nguyen - * progmodes/ebrowse.el (ebrowse-install-1-to-9-keys) - (ebrowse-print-statistics-line) - (ebrowse-electric-position-mode-hook): Fix typo in docstring. + * net/browse-url.el (browse-url-encode-url): Use copy-sequence. + Reported by Jan Djärv . - * term/w32-win.el (image-library-alist): Add additional name for - Xpm library. +2007-09-10 Dave Love -2005-05-05 Nick Roberts + * outline.el (outline-4, outline-5, outline-7): + Move font-lock-builtin-face down from 4 to 7 to better keep the + progression of color brightness, and to better match Org-mode's faces. - * progmodes/cmacexp.el (c-macro-preprocessor): Update for BSD and - use gcc instead of cpp. +2007-09-10 Michaël Cadilhac - * progmodes/gdb-ui.el (gdb-cpp-define-alist-flags): New variable. - (gdb-create-define-alist): Use it. - (gdb-cpp-define-alist-program): Update for MS-DOS. + * progmodes/meta-mode.el (meta-font-lock-keywords) + (font-lock-match-meta-declaration-item-and-skip-to-next) + (meta-comment-indent, meta-indent-previous-line) + (meta-indent-unfinished-line, meta-beginning-of-defun) + (meta-end-of-defun, meta-common-initialization): Handle \f. + (meta-indent-unfinished-line): Do not handle a `%' in a string as + a comment-start. -2005-05-04 Nick Roberts + * files.el (file-modes-char-to-who, file-modes-char-to-right) + (file-modes-rights-to-number): Auxiliary functions for symbolic to + numeric notation of file modes. + (file-modes-symbolic-to-number): New. Convert symbolic modes to its + numeric value. + (read-file-modes): New. Read either an octal value of a file mode or a + symbolic value, and return its numeric value. - * progmodes/cmacexp.el (c-macro-preprocessor): Update for Mac OS X. + * dired-aux.el (dired-do-chmod): Change to use the built-in + `set-file-modes' and the previous symbolic mode parsing functions. -2005-05-04 Richard M. Stallman +2007-09-10 Stefan Monnier - * help.el (describe-key): No error when UNTRANSLATED is nil. + * textmodes/texinfo.el: Remove spurious * in docstrings. + (texinfo-mode-syntax-table, texinfo-mode-map): + Initialize in the declaration. - * simple.el (line-move-1): Fix previous change to signal errors - appropriately. + * tmm.el: Remove spurious * in docstrings. + (tmm-prompt): Use with-current-buffer. -2005-05-03 Ulf Jasper + * vcursor.el: Remove spurious * in docstrings. + (vcursor-map): Initialize in the declaration. + (vcursor-use-vcursor-map): Use define-minor-mode. + (vcursor-toggle-vcursor-map): Keep as an obsolete alias. - * calendar/icalendar.el (icalendar-version): Now at 0.12. - (icalendar-duration-correction): Remove. - (icalendar--get-event-properties): Split result at commas. - (icalendar--decode-isoduration): New optional argument - DURATION-CORRECTION. - (icalendar--convert-ordinary-to-ical, icalendar--convert-sexp-to-ical) - (icalendar--convert-yearly-to-ical, icalendar--convert-weekly-to-ical) - (icalendar--convert-block-to-ical, icalendar--convert-float-to-ical) - (icalendar--convert-date-to-ical, icalendar--convert-cyclic-to-ical) - (icalendar--convert-anniversary-to-ical): New functions, extracted - from icalendar-export-region, with bug fixes. - (icalendar-export-region): Use the above functions. - (icalendar-import-buffer): Check before saving diary file. - (icalendar--convert-recurring-to-diary) - (icalendar--convert-non-recurring-all-day-to-diary) - (icalendar--convert-non-recurring-not-all-day-to-diary): New functions, - extracted from icalendar--convert-ical-to-diary, with bug fixes. - (icalendar--convert-ical-to-diary): Use the above functions. + * wid-browse.el (widget-browse-mode-map, widget-minor-mode-map): + Initialize in the declaration. + (widget-minor-mode): Use define-minor-mode. -2005-05-03 Nick Roberts + * woman.el (woman-mode-map, woman-syntax-table): + Initialize in the declaration. - * progmodes/cc-mode.el (cc-define-alist, cc-create-define-alist): - Remove these recent additions. - (c-mode): Restore to before 2005-04-28. +2007-09-09 Tassilo Horn - * progmodes/cc-vars.el (cc-define-list-program): Remove this - recent addition. + * doc-view.el: New file. - * progmodes/gdb-ui.el (gdb-cpp-define-alist-program) - (gdb-define-alist): New variables. - (gdb-create-define-alist): New function. - (gdb-set-gud-minor-mode-1): Handle gdb-define-alist. - (gdb-source, gdb-memory-set-repeat-count): Replace string-to-int - with string-to-number. - (gdb-reset): Kill gdb-define-alist. Move assignments outside loop. +2007-09-09 Juri Linkov - * progmodes/gud.el: Replace string-to-int with string-to-number. - (gud-find-file): Handle gdb-define-alist. + * Makefile.in (update-authors): Add etc/ to AUTHORS. - * tooltip.el (tooltip-gud-tips): Use gdb-define-alist. + * makefile.w32-in (update-authors): Add etc/ to AUTHORS. -2005-05-02 Jay Belanger + * startup.el (initial-buffer-choice): Rename choice "Splash screen" + to "Startup screen". Fix docstring. + (inhibit-startup-screen): Rename from `inhibit-splash-screen'. + (inhibit-splash-screen): Make alias to `inhibit-startup-screen'. + (inhibit-startup-message): Change alias to `inhibit-startup-screen'. + (initial-scratch-message): Fix docstring. + (fancy-startup-text): Move link to Emacs Manual below Emacs Guided + Tour (which is a kind of tutorial and will be next to Emacs Tutorial). + Add link to "Customize Startup" and set interval between links to + 5 spaces. + (fancy-about-text): Add links "Authors" and "Contributing". + (fancy-splash-head): Add text "Welcome to " on the startup screen, + and "This is " on the about screen. Add link to + "http://www.gnu.org/software/emacs/" for "GNU Emacs". + For the about screen move emacs version to the header from + `fancy-splash-tail' (as it's done already for normal about screen). + (fancy-splash-tail): Insert emacs version only for startup screen. + (normal-splash-screen): Remove duplicate empty lines. + (normal-about-screen): Add links "Authors" and "Contributing". - * calc/calc-aent.el (math-read-token): - * calc/calc-bin.el (calc-word-size): - * calc/calc-ext.el (calc-read-number-fancy): - * calc/calc-forms.el (calc-time, calc-date-notation, math-this-year) - (math-parse-date, math-parse-standard-date, calcFunc-tzone): - * calc/calc-frac.el (calc-over-notation): - * calc/calc-graph.el (calc-graph-plot, calc-graph-set-styles) - (calc-graph-num-points, calc-graph-init): - * calc/calc-prog.el (calc-read-parse-table-part) - (calc-edit-macro-repeats): - * calc/calc-yank.el (calc-do-grab-rectangle): - * calc/calc.el (calcDigit-key, math-read-number, math-read-bignum): - Replace `string-to-int' by `string-to-number'. + * menu-bar.el (menu-bar-help-menu): + Move "About Emacs" and "About GNU" to the end of the Help menu. + Move "Emacs Psychotherapist" after "Send Bug Report...". + Move "External Packages" after "Find Emacs Packages". -2005-05-02 Kim F. Storm +2007-09-09 Michael Albinus - * kmacro.el: Use executing-kbd-macro-index variable. + * net/tramp.el (top): Remove declarations of `tramp-gw-*' symbols, + they are useless with the byte compiler. + (tramp-make-temp-file, tramp-make-tramp-temp-file): Move up. + (tramp-do-copy-or-rename-file-directly): Rearrange let-bindings. + (tramp-compute-multi-hops): Mask `tramp-gw-*' symbols. + (tramp-file-name-real-host, tramp-file-name-port) + (tramp-find-method, tramp-find-user, tramp-find-host): Make them + defuns. -2005-05-02 Thien-Thi Nguyen + * net/tramp-cache.el (top): Improve error message when + `tramp-persistency-file-name' is corrupted. + +2007-09-09 Carsten Dominik + + * textmodes/org.el (org-re): Also replace the :alpha: class. + (org-todo-tag-alist): Variable removed. + (org-todo-key-alist, org-todo-key-trigger): New variables. + (org-use-fast-todo-selection): New option. + (org-log-done): Docstring fixed. + (org-deadline-warning-days): New default value 14. + (org-edit-timestamp-down-means-later): New option. + (org-tag-alist): Docstring fixed. + (org-fast-tag-selection-include-todo): New option. + (org-export-language-setup): New languages added. + (org-set-regexps-and-options): Compute the new variables. + (org-paste-subtree): Cleaning up. + (org-remember-apply-template): New escape %A. + (org-todo): Call fast TODO selection. + (org-fast-todo-selection): New function. + (org-add-log-note): Allow prefix for abort exit. + (org-at-property-p, org-entry-properties) + (org-columns-get-autowidth-alist): Use :alpha: class. + (org-get-wdays): New function. + (org-agenda-remove-date): New variable. + (org-agenda-get-deadlines): Use `org-get-wdays'. + (org-agenda-get-deadlines): Reverse ee before returning. + (org-format-agenda-item): New argument REMOVE-RE. + (org-agenda-convert-date): Baha'i calendar added. + (org-infile-export-plist): Also find DATE line. + (org-get-min-level): New function. + (org-export-as-html, org-export-as-ascii): Use the date format. + (org-shiftup, org-shiftdown): Use. + `org-edit-timestamp-down-means-later'. + (org-assign-fast-keys): New function. + +2007-09-08 Fredrik Axelsson + + * cus-start.el (all): Add prefer-window-split-horizontally from + window.c. + +2007-09-08 Eli Zaretskii + + * net/browse-url.el (browse-url-galeon): Fix last change. + (top-level): Require cl when compiling. + +2007-09-08 Carsten Dominik + + * textmodes/org-export-latex.el: arch-tag restored. + + * textmodes/org-publish.el: arch-tag restored. + +2007-09-08 Masatake YAMATO + + * progmodes/which-func.el (which-func-modes): Add diff-mode. + + * progmodes/cc-langs.el: Support new keywords added to + objective-c frontend of gcc. + (c-simple-stmt-kwds): Add @throw. + (c-block-stmt-2-kwds): Add @synchronized. + (c-block-stmt-1-kwds): Add @finally and @try. + +2007-09-07 Carsten Dominik + + * textmodes/org.el (org-edit-timestamp-down-means-later): New option. + (org-agenda-after-show-hook): New variable. + (org-columns-compile-format) + (org-columns-get-autowidth-alist, org-buffer-property-keys) + (org-entry-properties, org-at-property-p): Allow [:alnum:] in + property names. + (org-get-wdays): New function. - * net/rlogin.el (rlogin-parse-words): Delete func. - (rlogin): Use split-string, not rlogin-parse-words. - Also, if there are option-like elements in the parsed args, - take the host to be the first arg immediately following them. - Suggested by Michael Mauger. +2007-09-07 Stefan Monnier -2005-05-01 Luc Teirlinck + * simple.el (normal-erase-is-backspace-setup-frame): Massage. - * subr.el (executing-macro): Use `define-obsolete-variable-alias'. + * term/xterm.el (xterm-function-map): Initialize in the declaration. -2005-05-02 Nick Roberts + * vc-arch.el (vc-arch-checkin): Fix typo. - * progmodes/cc-mode.el (cc-create-define-alist): Use a shell. - (cc-mode-cpp-program): Rename to cc-define-list-program and - move to cc-vars.el. +2007-09-07 Johan Bockgård - * progmodes/cc-vars.el (cc-define-list-program): - Change to "gcc -E -dM -". Make customizable. + * cus-face.el (custom-theme-set-faces): Set face attributes + locally for each frame. -2005-05-02 Kim F. Storm +2007-09-07 Stefan Monnier - * emulation/cua-base.el: Fix check for CUA-mode if no init file. + * progmodes/fortran.el (fortran-mode): Set font-lock-syntactic-keywords + via font-lock-defaults. -2005-05-02 Nick Roberts + * emacs-lisp/bytecomp.el (byte-compile-log-file): Check major-mode via + derived-mode-p. - * progmodes/cc-mode.el (cc-mode-cpp-program): Change to "gcc -E". +2007-09-07 Thien-Thi Nguyen - * international/mule-util.el (truncate-string): Remove alias and - obsolete declaration. + * progmodes/autoconf.el (autoconf-definition-regexp): + Handle optional square brackets around definition name. - * international/mule-cmds.el (update-iso-coding-systems): - Remove alias and obsolete declaration. +2007-09-07 Johannes Weiner - * international/mule.el (coding-system-parent): Remove alias and - obsolete declaration. + * net/browse-url.el (browse-url-browser-function): Add elinks. + (browse-url-elinks-wrapper): New option. + (browse-url-encode-url, browse-url-elinks) + (browse-url-elinks-sentinel): New functions. + (browse-url-file-url, browse-url-netscape, browse-url-mozilla) + (browse-url-firefox, browse-url-galeon, browse-url-epiphany): + Use new function browse-url-encode-url. - * subr.el (define-function, sref): Remove aliases and obsolete - declarations. - (chars-in-region): Remove obsolete declaration. +2007-09-07 Glenn Morris -2005-05-01 Richard M. Stallman + * version.el (emacs-version): Revert 2007-08-29 change: no need to + say if multi-tty is present. - * info.el (Info-mode): Set widen-automatically to nil, locally. +2007-09-07 Stefan Monnier - * simple.el (widen-automatically): New variable. - (pop-global-mark): Obey widen-automatically. + * cus-start.el (split-window-preferred-function): Add custom info. -2005-05-01 Dan Nicolaescu + * calendar/holidays.el (holiday-list, calendar-check-holidays) + (calendar-mark-holidays, calendar-list-holidays) + (holiday-filter-visible-calendar): New names to clean up namespace. + (filter-visible-calendar-holidays, list-calendar-holidays) + (mark-calendar-holidays, check-calendar-holidays, list-holidays): + Add compatibility aliases. + (calendar-check-holidays, calendar-mark-holidays) + (calendar-holiday-list, holiday-filter-visible-calendar): Use dolist. + (holiday-sexp): Replace append with list. + (holiday-filter-visible-calendar): Replace append with push. - * term/xterm.el (function-key-map): Call substitute-key-definition - before the keymap size is increased by a lot of define-key calls. + * woman.el: Remove spurious * in docstrings. + (woman-mini-help, woman-non-underline-faces, woman0-rename) + (woman-topic-all-completions-merge, woman-file-name-all-completions) + (woman-select-symbol-fonts, woman-expand-directory-path): Use dolist. + (woman-write-directory-cache, woman-display-extended-fonts) + (WoMan-log-begin, WoMan-log-1): Use with-current-buffer. + (woman-really-find-file): Use pop-to-buffer if switch-to-buffer fails. + (woman-mode): Use inhibit-read-only. + (woman-negative-vertical-space): Use dotimes. + (woman2-tagged-paragraph, woman-tab-to-tab-stop): Use insert-char. -2005-05-01 Richard M. Stallman +2007-09-06 Romain Francoise - * subr.el (add-to-invisibility-spec, remove-from-invisibility-spec): - Rename ARG to ELEMENT. Doc fix. + * vc-bzr.el (vc-bzr-admin-lastrev): New defconst. + (vc-bzr-workfile-version): Use it. -2005-05-01 Nick Roberts +2007-09-06 Sean O'Rourke - * allout.el (allout-exposure): Remove macro and obsolete declaration. - Remove references to allout-exposure/change to allout-new-exposure. + * complete.el (PC-do-completion): Don't try to treat + empty string as an abbreviation. - * emacs-lisp/bytecomp.el (dot, dot-min, dot-max): Don't create - bytecode symbols. +2007-09-06 Johan Bockgård - * subr.el (dot, dot-marker, dot-min, dot-max, buffer-flush-undo) - (compiled-function-p, focus-frame, unfocus-frame): - Remove aliases and obsolete declarations. - Back out inadvertent changes from previous commit. + * help-fns.el (describe-variable): Keep doc's text properties. -2005-05-01 Luc Teirlinck +2007-09-06 Dan Nicolaescu - * files.el (require-final-newline): Make Custom tags consistent - with mode-require-final-newline. - (mode-require-final-newline): Doc fix. + * vc.el (vc-default-diff-tree): Pass a list to the diff vc command + instead of a file. -2005-05-01 Stefan Monnier +2007-09-06 Glenn Morris - * international/latexenc.el (latexenc-find-file-coding-system): - Fix regular expressions. + * emacs-lisp/checkdoc.el (checkdoc-minor-mode-string): New. + (checkdoc-minor-mode): Allow user to specify lighter via + checkdoc-minor-mode-string. -2005-05-01 David Kastrup +2007-09-05 Richard Stallman - * international/latexenc.el (latexenc-find-file-coding-system): - Fix regular expressions. + * startup.el (fancy-startup-text): Rename from fancy-splash-text. + Several items removed, simplified, or put on one line. + (fancy-about-text): Add substantial contents, part of startup text. + (fancy-splash-head): Make "GNU" or "GNU/Linux" a link. + (normal-splash-screen): Call normal-mouse-startup-screen, + normal-no-mouse-startup-screen, or normal-about-screen. + (normal-mouse-startup-screen): New fn, broken out, shortened. + (normal-no-mouse-startup-screen): New fn, broken out. + (normal-about-screen): New function, contents all new. -2005-05-01 Nick Roberts +2007-09-05 Michaël Cadilhac - * subr.el (string-to-int): Make obsolete. + * emacs-lisp/rx.el (rx): Fix typo in docstring. -2005-04-30 Richard M. Stallman +2007-09-05 Glenn Morris - * simple.el (next-error-overlay-arrow-position): Turn off, for ttys. + * cus-edit.el (custom-buffer-create-internal): Check tool-bar-mode + is bound. - * loadup.el: Load jka-comp-hook. +2007-09-05 Johan Bockgård - * jka-compr.el: Many functions and vars moved to jka-comp-hook.el. - (jka-compr-handler): Add autoload. `put' calls moved - to jka-comp-hook.el. - (compression, jka-compr): defgroups moved to jka-comp-hook.el. - (jka-compr-inhibit): Autoload. + * emacs-lisp/advice.el (ad-make-advised-docstring): Highlight note + in doc string. - * jka-comp-hook.el: New file. - Enable the mode by default. +2007-09-04 Dan Nicolaescu - * files.el (backup-buffer-copy): Use copy-file instead - of write-region, and put back the 'excl. + * server.el (server-start, server-unload-hook): Undo previous change. -2005-04-30 Chong Yidong + * xt-mouse.el: Undo previous change. - * progmodes/flymake.el (flymake-split-string) - (flymake-split-string, flymake-log, flymake-pid-to-names) - (flymake-reg-names, flymake-get-source-buffer-name) - (flymake-unreg-names, flymake-add-line-err-info) - (flymake-add-err-info): Clarify docstrings. - (flymake-popup-menu, flymake-make-emacs-menu) - (flymake-make-xemacs-menu): Add docstrings. - (flymake-get-buffer-*, flymake-set-buffer-*): Functions deleted. - Set variables directly throughout. +2007-09-04 Juri Linkov -2005-04-30 Nick Roberts + * startup.el (fancy-about-text): New variable. + (fancy-splash-delay, fancy-splash-max-time): Remove user options. + (fancy-current-text, fancy-splash-stop-time) + (fancy-splash-outer-buffer): Remove variables. + (fancy-splash-head, fancy-splash-tail): Add new optional argument + `startup' and use it to conditionally display different texts for + Startup and About screens. Don't display Help commands on the About + screen. + (fancy-splash-screens-1): Remove function and move its content to + `fancy-splash-screens' to the part that dislpays the About screen. + (exit-splash-screen): Don't treat specially exiting from + alternating screens. + (fancy-splash-screens): Rename argument `static' to `startup'. + Fix docstring. Remove code for displaying alternating screens. + Use arg `startup' in calls to `fancy-splash-head', `fancy-splash-tail'. + Remove let-bind for `fancy-splash-outer-buffer' and add let-bind + for `inhibit-read-only'. + (normal-splash-screen): Rename argument `static' to `startup'. + Fix docstring. Use argument `startup' to conditionally display + different texts for Startup and About screens. Don't display Help + commands on the About screen. Remove `unwind-protect' `sit-for' + delay and `kill-buffer' after it. + (display-startup-echo-area-message): Remove call to + `use-fancy-splash-screens-p' because image.el is preloaded and + doesn't display "Loading image... done". + (display-splash-screen): Rename argument `static' to `startup'. + Fix docstring. - * progmodes/cc-mode.el (cc-create-define-alist): Check that file - exists. Initialize cc-define-alist. - (c-mode): Add cc-create-define-alist locally to after-save-hook. - If there is no file (Macroexpansion) don't create an alist. +2007-09-04 Dan Nicolaescu -2005-04-29 Sam Steingold + * server.el (server-start, server-unload-hook): + suspend-tty-functions has been renamed to suspend-tty-hook. - * progmodes/cc-mode.el (cc-mode-cpp-program): New user variable. - (cc-create-define-alist): Use it instead of the hard-coded string. + * xt-mouse.el: Likewise. resume-tty-functions has been renamed to + resume-tty-hook. -2005-04-29 Stefan Monnier +2007-09-03 Emanuele Giaquinta (tiny change) - * international/mule-conf.el (file-coding-system-alist): Fix regexp - for latexenc. + * loadup.el: Fix merge problem, only load "button" once. -2005-04-29 Lute Kamstra +2007-09-03 Glenn Morris - * emacs-lisp/generic.el: Improve commentary section. - (define-generic-mode): Improve docstring. + * vc-svn.el (vc-svn-print-log): If there is only one file, use + "Working file:" as the prefix, for the sake of + log-view-current-file. -2005-04-29 Carsten Dominik +2007-09-02 Dan Nicolaescu - * textmodes/org.el (many places): Change to quiet the byte compiler. - (org-prefix-format-compiled): New variable. - (org-compile-prefix-format): New function. - (org-timeline, org-agenda, org-diary): Call org-compile-prefix-format. - (org-agenda-prefix-format, org-timeline-prefix-format): New options. - (org-agenda-get-scheduled): Check if file is opened in `org-mode'. - (org-get-entries-from-diary): Use `org-get-time-of-day' for - consistency with entries from `org-mode' files. - (org-get-time-of-day): Fix bug with partial matches early in a line. - (org-non-link-chars): New constant. - (org-link-regexp): Respect `org-non-link-chars'. - (org-agenda-day-view): Remove command. - (org-agenda-toggle-week-view): Rename from `org-agenda-week-view'. - (org-follow-bbdb-link, org-store-link): Search also company field. - (org-highlight-overlay): New variable. - (org-highlight, org-unhighlight): New functions. - (org-agenda-mode): Add pre-command-hook to remove highlight. - (org-evaluate-time-range): Behavior depends upon whether time stamp - contains a time or not. - (org-show-subtree, org-show-entry): New functions. - (org-agenda-cleanup-fancy-diary): Remove empty lines. + * term/xterm.el (xterm-modify-other-keys-terminal-list): New variable. + (xterm-turn-on-modify-other-keys): Only turn on modify-other-keys + if the selected frames is in + xterm-modify-other-keys-terminal-list. + (xterm-turn-off-modify-other-keys): Add an optional frame + parameter. Only turn off modify-other-keys if FRAME is in + xterm-modify-other-keys-terminal-list. + (xterm-remove-modify-other-keys): New function. + (terminal-init-xterm): Use it. Deal with delete-frame hook. + Add the selected frame to xterm-modify-other-keys-terminal-list. -2005-04-28 Luc Teirlinck +2007-09-02 Jan Djärv - * comint.el (comint-output-filter-functions): Add autoload cookie. + * term/x-win.el (x-gtk-stock-map): Map diropen to system-file-manager. + (icon-map-list): New variable. + (x-gtk-map-stock): Use icon-map-list. -2005-04-28 Kim F. Storm +2007-09-02 Romain Francoise - * ido.el (ido-everywhere): Fix last change. + * log-view.el (log-view-current-file): Balance parens. -2005-04-28 Arne J,Ax(Brgensen +2007-09-02 Glenn Morris - * international/latexenc.el: New file. - * international/mule-conf.el (file-coding-system-alist): For .tex, - .ltx, .dtx and .drv extensions, use `latexenc-find-file-coding-system'. + * comint.el (comint-mode): Don't set scroll-conservatively. -2005-04-28 Lute Kamstra + * eshell/em-unix.el (eshell/time): Stringify and flatten the + non-command arguments. - * font-lock.el (font-lock-add-keywords) - (font-lock-remove-keywords): Clarify docstring. - (font-lock-keywords-alist, font-lock-removed-keywords-alist): - Don't start docstrings with a `*'. - (font-lock-update-removed-keyword-alist): Give it a docstring. + * log-view.el (log-view-current-file): Give a more explicit error + if log-view-file-re fails to find a match. - * generic-x.el: Update commentary section. - Only require font-lock when compiling. - Define all modes conditionally. - Place all generic modes in the generic-x-modes customization group. - (generic-x-modes): New customization group. - (generic-default-modes, generic-mswindows-modes) - (generic-unix-modes, generic-other-modes): New constants. - (generic-define-mswindows-modes, generic-define-unix-modes): - Update docstrings. Make them obsolete. - (generic-extras-enable-list): New default value. Update docstring. - Improve :type. Change :set function. - (bat-generic-mode-syntax-table, rul-generic-mode-syntax-table): - Fix docstring. +2007-09-01 Thien-Thi Nguyen - * emacs-lisp/generic.el (generic-mode-internal): - Simplify font-lock-defaults. - (define-generic-mode): Fix docstring. + * emacs-lisp/bytecomp.el (byte-recompile-directory): + Fix bug: Don't expand top-level file name more than once. + Reported by Dmitry Antipov . -2005-04-28 Stefan Monnier +2007-09-01 Stefan Monnier - * progmodes/grep.el (grep-mode-font-lock-keywords): Use the - font-lock-face property to highlight matches. + * server.el (server-process-filter): Don't display the splash screen. + It's annoying enough on the initial screen and becomes positively + obnoxious here. -2005-04-28 Nick Roberts +2007-08-31 Stefan Monnier - * progmodes/cc-mode.el (cc-create-define-alist): New function. - (cc-define-alist): New variable. - (c-mode): Make it local and initialize it. + * emacs-lisp/avl-tree.el: Use defstruct rather than macros. + Change naming to use "avl-tree--" for internal functions. - * progmodes/gdb-ui.el (gdb-active-process): New variable. - (gdb-exited): New function. - (gdb-annotation-rules): Use it. - (gdb-starting): Set gdb-active-process to t. - (gdb-stopping): Amend doc string. - (gdb-reset): Set gdb-active-process to nil. +2007-08-31 Dan Nicolaescu - * tooltip.el (tooltip-gud-tips): Show the associated #define - directives when a C program under GDB is not executing. + * term/x-win.el (x-menu-bar-open): Delete duplicated function from + the merge. + (global-set-key): Delete f10 mapping, now done in menu-bar.el. + (provide): Move to the end of file. -2005-04-27 Stefan Monnier + * vc-svn.el (vc-svn-diff-tree): Pass a list to vc-svn-diff. - * progmodes/cperl-mode.el (cperl-mode): Don't precompile the - font-lock-fontify-syntactic-keywords. +2007-08-31 Michaël Cadilhac - * font-lock.el (font-lock-default-fontify-region): Don't force - parse-sexp-lookup-properties to nil. + * textmodes/flyspell.el (flyspell-mark-duplications-exceptions): + New variable. List of exceptions for the duplicated word rule. + (flyspell-mark-duplications-flag): Mention it. + (flyspell-word): Treat it. -2005-04-27 Alexander Klimov (tiny change) + * files.el (create-file-buffer): If the filename sans directory starts + with spaces, remove them. - * man.el (man-mode-syntax-table): Set up `:' to have - word-constituent syntax. +2007-08-31 Jan Djärv -2005-04-27 Lute Kamstra + * term/x-win.el (x-gtk-stock-map): Add etc/images to keys. + (x-gtk-map-stock): Use two directory elements when matching + file name. - * novice.el (disable-command): Don't add spurious newlines to the - init file. Reported by Dan Jacobson . +2007-08-31 James Wright -2005-04-26 Jay Belanger + * eshell/em-unix.el (eshell/info): New function. - * calc/calc-yank.el (calc-edit-finish): Make sure there is more - than one window before deleting window. +2007-08-31 Stefan Monnier -2005-04-26 Luc Teirlinck + * frame.el (frame-initialize, make-frame): + * server.el (server-process-filter): + * faces.el (tty-set-up-initial-frame-faces): Don't set + term-environment-variable since it's not used any more. + + * env.el (setenv): Don't treat $TERM specially. + + * startup.el (normal-top-level): Set $TERM to `dumb' so that unless + stated otherwise, subprocesses do not send back escape sequences + corresponding to the terminal from which Emacs was started. + +2007-08-31 Thien-Thi Nguyen + + * calculator.el: Require cl for compilation. + +2007-08-30 Daniel Pfeiffer + + * outline.el (outline-font-lock-levels): Comment out unused var. + (outline-font-lock-face): Wrap around face list to handle any + nesting depth gracefully. + +2007-08-30 Michael Albinus + + * net/ange-ftp.el: Add ange-ftp property to `set-file-modes' and + `set-file-times'. + +2007-08-30 Carsten Dominik + + * textmodes/org.el (org-export-visible): Fix drawers before export. + (org-do-sort): Allow sorting by priority. + (org-agenda-files): Ignore non-existing files. + (org-agenda-skip-unavailable-files): New variable. + (org-ellipsis): All a face as value. + (org-mode): Interprete the face value of `org-ellipsis'. + (org-archive-save-context-info): New option. + (org-archive-subtree): Store context info in archived entry. + (org-fast-tag-selection-can-set-todo-state): New variable. + (org-fast-tag-selection): Allow setting TODO states through this + interface. + (org-cycle): Docstring updated. + (org-todo-keyword-faces): New option. + (org-get-todo-face): New function. + (org-set-font-lock-defaults, org-agenda-highlight-todo): + Use `org-get-todo-face'. + (org-switch-to-buffer-other-window): New function. + (org-table-edit-field, org-table-show-reference) + (org-table-edit-formulas, org-add-log-note) + (org-fast-tag-selection, org-agenda, org-prepare-agenda) + (org-timeline): Use `org-switch-to-buffer-other-window' instead of + `switch-to-buffer-other-window' to make sure that the temporary + windows show up on the current frame. + (org-mhe-get-message-real-folder, org-batch-store-agenda-views) + (org-get-entries-from-diary, org-replace-region-by-html): + Don't allow pop-up frames. + (org-agenda-get-deadlines, org-agenda-get-scheduled): + Fix problems with time-of-day. + (org-export-get-title-from-subtree): New function. + (org-agenda-get-scheduled, org-agenda-get-deadlines): Fix problems + with listing items that are DONE. + (org-change-tag-in-region): New command. + (org-agenda-skip-scheduled-if-done) + (org-agenda-skip-deadline-if-done): Docstring clarified. + (org-mode): Hide drawers on startup. + (org-get-todo-face): New function. + (org-todo-keyword-faces): New option. + (org-set-regexps-and-options): Use `org-remove-keyword-keys'. + (org-remove-keyword-keys): New function. + +2007-08-30 Jari Aalto (tiny change) - * shell.el (shell-prompt-pattern): Doc fix. - (shell-mode): Set paragraph-separate buffer locally to "\\'". + * progmodes/grep.el (grep-find-ignored-directories): + Add monotone _MTN bookkeeping directory in workspaces. + Add RCS control directory. List items in alphabetical order. - * comint.el (comint-prompt-regexp, comint-get-old-input) - (comint-use-prompt-regexp) - (comint-use-prompt-regexp-instead-of-fields) - (comint-replace-by-expanded-history, comint-send-input) - (comint-output-filter, comint-get-old-input-default) - (comint-line-beginning-position, comint-bol, comint-show-output) - (comint-backward-matching-input, comint-forward-matching-input) - (comint-next-prompt, comint-previous-prompt): - Rename `comint-use-prompt-regexp-instead-of-fields' to - `comint-use-prompt-regexp'. Keep old name as alias and declare - obsolete. - (comint-use-prompt-regexp): Shorten first line of doc string. + * progmodes/grep.el (grep-files-aliases): Add cc alias. + Sort items in alphabetical order. Fix parens. - * ielm.el (inferior-emacs-lisp-mode): Adapt to above name change. - Set paragraph-separate buffer locally to "\\'". +2007-08-29 Dan Nicolaescu - * hippie-exp.el (try-expand-line, try-expand-line-all-buffers): - Adapt to above name change. + * vc-hg.el (vc-hg-extra-menu-map): New variable. + (vc-hg-extra-menu, vc-hg-outgoing, vc-hg-incoming, vc-hg-push) + (vc-hg-pull): New functions. + (vc-hg-outgoing-mode, vc-hg-incoming-mode): New derived modes. - * net/net-utils.el (nslookup-prompt-regexp, ftp-prompt-regexp) - (smbclient-prompt-regexp): Ditto. + * term/mac-win.el: Don't require url, only autoloaded url + functions are used in this file. - * progmodes/inf-lisp.el (inferior-lisp-prompt): Ditto. +2007-08-29 Andreas Schwab -2005-04-27 Nick Roberts + * shell.el (shell): Return correct value from interactive spec. - * progmodes/gdb-ui.el (gdb-location-alist): Rename from - gdb-location-list. - Break lines that are over 80 characters wide. +2007-08-29 Glenn Morris -2005-04-26 Stefan Monnier + * version.el (emacs-version): Increase to 23.0.50. - * pcvs-info.el (cvs-fileinfo->full-path, cvs-display-full-path): - New fun and var, to preserve compatibility. +2007-08-29 Jan Djärv - * pcvs.el, pcvs-info.el: Rename "full-path" -> "full-name". + * term/x-win.el (x-gtk-stock-map): :version changed to 23.1. -2005-04-26 Dominique de Waleffe (tiny change) +2007-08-29 Juri Linkov - * pcvs-info.el (cvs-fileinfo->backup-file): Don't pass the full file - name to file-newer-than-file-p. + * loadup.el: Add "button" loading after "faces" and move "startup" + to load after "button". -2005-04-26 Richard M. Stallman +2007-08-29 Dan Nicolaescu - * simple.el (line-move-1): Avoid using vertical-motion in easy cases. + * loadup.el: Load term/mac-win on a Mac using Carbon. - * progmodes/python.el (python-mode): - Use new name eldoc-documentation-function. + * term/mac-win.el: Provide mac-win. + (mac-initialized): New variable. + (mac-initialize-window-system): New function. Move global setup here. + (handle-args-function-alist, frame-creation-function-alist): + (window-system-initialization-alist): Add mac entries. + (x-setup-function-keys): New function containing all the + top level function key definitions. - * hexl.el (hexl-mode): Use new name eldoc-documentation-function. + * term/x-win.el (x-menu-bar-open): Use accelerate-menu. - * emacs-lisp/eldoc.el (eldoc-mode): Doc fix. - (eldoc-documentation-function): - Rename from eldoc-print-current-symbol-info-function. Calls changed. + * env.el (read-envvar-name): Don't consider the environment frame param. -2005-04-26 Nick Roberts + * env.el (setenv): + * frame.el (frame-initialize, make-frame): + * faces.el (tty-set-up-initial-frame-faces): + * server.el (server-process-filter): Set + display-environment-variable and term-environment-variable. - * emacs-lisp/byte-run.el (define-obsolete-function-alias): New macro. + * server.el (server-process-filter): Set COLORFGBG and COLORTERM. -2005-04-25 Dan Nicolaescu +2007-08-29 Jason Rumney - * term/xterm.el (function-key-map): Fix strings for - {C,S,A,C-S}-f[1-4]. Use substitute-key-definition to bind - {C,S,A,C-S}-{f1-f12}. + * loadup.el: Only load term/x-win when X is compiled in. + Load term/w32-win and dependencies on windows-nt. -2005-04-26 Kenichi Handa + * term/w32-win.el: Reorder to match x-win.el more closely. + Provide w32-win. Don't throw error when global window-system not w32. + (internal-face-interactive): Remove obsolete function. + (x-setup-function-keys): Use local-function-key-map. + (w32-initialized): New variable. + (w32-initialize-window-system): Set it. + Move more global setup here. + (x-setup-function-keys): New function. + (w32-initialize-window-system): Move non function key global setup here. + (x-cut-buffer-max): Remove. + (w32-initialize-window-system): New function. + (handle-args-function-alist, frame-creation-function-alist): + (window-system-initialization-alist): Add w32 entries. - * international/mule-cmds.el (select-safe-coding-system): - Fix previous change. +2007-08-29 David Kastrup -2005-04-26 Lute Kamstra + * env.el (getenv): Pass frame to getenv-internal. - * emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring. +2007-08-29 Károly Lőrentey - * font-lock.el (font-lock-fontify-region-function): Fix docstring. - (font-lock-comment-delimiter-face): Ditto. + * version.el (emacs-version): Show if multi-tty is present. - * calc/calc.el (calc-trail-mode): Don't set font-lock-defaults. + * loadup.el: Delay loading env; mule-conf gets confused by cl + during bootstrap. Also load termdev and term/x-win. -2005-04-25 Jay Belanger + * bindings.el (mode-line-client): New variable. + (help-echo): Add it to the default mode-line format. - * calc/calc-help.el (calc-view-news): Let-bind inhibit-read-only - to t while inserting information; use help-mode. + * cus-start.el: Remove bogus window-system reference from GTK test. -2005-04-25 Dan Nicolaescu + * progmodes/ebrowse.el (ebrowse-electric-list-mode-map) + (ebrowse-electric-position-mode-map): + * ebuff-menu.el (electric-buffer-menu-mode-map): + * echistory.el (electric-history-map): Bind C-z to `suspend-frame', + not `suspend-emacs'. - * term.el (ansi-term-color-vector): Use the xterm colors. - (term-raw-map): Don't add mappings for \eO and \e[. Map deletechar. + * ediff-wind.el (ediff-setup-windows-automatic): New function. + (ediff-window-setup-function): Use it as default. -2005-04-25 Lute Kamstra + * files.el (save-buffers-kill-terminal): New function. + (ctl-x-map): Change binding of C-x C-c to save-buffers-kill-terminal. - * font-core.el (font-lock-defaults): Fix docstring. + * font-lock.el (lisp-font-lock-keywords-2): Add `let-environment' + and `with-selected-frame'. - * font-lock.el (font-lock-syntactic-face-function): Fix docstring. + * help-fns.el (describe-variable): Describe frame-local variables + correctly. -2005-04-25 Kenichi Handa + * simple.el (normal-erase-is-backspace-mode): Rewrite for multiple + display support. + (normal-erase-is-backspace-setup-frame): New function. + + * subr.el (with-selected-frame): New function. + (read-quoted-char): Use terminal-local binding of + local-function-key-map instead of function-key-map. + + * talk.el (talk): New function. + (talk-handle-delete-frame): New function. + (talk-add-display): Open a new frame only if FRAME was not a frame. + + * termdev.el: New file. + + * menu-bar.el (menu-bar-open): New function. Bind it to f10. + * term/x-win.el: Don't bind f10. + * tmm.el: Remove autoload binding for f10. + + * international/encoded-kb.el (encoded-kbd-setup-display): Use + `set-input-meta-mode'. Fix broken condition before set-input-mode. + Store the saved input method as a terminal parameter. Add keymap + parameter. Use it instead of changing key-translation-map directly. + (saved-key-translation-map, encoded-kbd-mode, saved-input-mode): + Remove. + (encoded-kbd-setup-display): New function. + + * international/mule-cmds.el (set-locale-environment): Fix getenv + call. Use save-buffers-kill-terminal. Ignore window-system; always + set the keyboard coding system. Add DISPLAY parameter. + (set-display-table-and-terminal-coding-system): Add DISPLAY + parameter. Pass it to set-terminal-coding-system. + + * international/mule.el (keyboard-coding-system): Test for + encoded-kbd-setup-display, not encoded-kbd-mode. + (set-terminal-coding-system, set-keyboard-coding-system): Add + DISPLAY parameter. + (set-keyboard-coding-system): Use encoded-kbd-setup-display. + + * term/README: Update. + + * term/linux.el (terminal-init-linux): Use `set-input-meta-mode'. + + * term/x-win.el (x-setup-function-keys): New function. Move + function-key-map tweaks here. Protect against multiple calls on + the same terminal. Use terminal-local binding of + local-function-key-map instead of function-key-map. + (x-initialize-window-system): Make a copy of pure list. Pass a + frame getenv. + + * term/vt200.el, term/vt201.el, term/vt220.el, term/vt240.el: + * term/vt300.el, term/vt320.el, term/vt400.el, term/vt420.el: + * term/AT386.el, term/internal.el, term/iris-ansi.el, term/lk201.el: + * term/mac-win.el, term/news.el, term/rxvt.el, term/sun.el: + * term/tvi970.el, term/wyse50.el: Use terminal-local binding of + local-function-key-map instead of function-key-map. + + * term/rxvt.el, term/xterm.el: Speed up load time by protecting + `substitute-key-definition' and `define-key' calls against + multiple execution. Use terminal-local binding of + local-function-key-map instead of function-key-map. Pass a frame + to getenv. + + * edmacro.el (edmacro-format-keys): + * emulation/cua-base.el (cua--pre-command-handler): + * isearch.el (isearch-other-meta-char): + * xt-mouse.el: Use terminal-local binding of + local-function-key-map instead of function-key-map. + + * fringe.el (set-fringe-mode): Simplify and fix using + `modify-all-frames-parameters'. + * scroll-bar.el (set-scroll-bar-mode): Ditto. + * tool-bar.el (tool-bar-mode): Ditto. Remove 'tool-bar-map length + check before calling `tool-bar-setup'. + (tool-bar-setup): New variable. + (tool-bar-setup): Use it to guard against multiple calls. Add + optional frame parameter, and select that frame before adding items. + (toggle-tool-bar-mode-from-frame): New function. + + * menu-bar.el (toggle-menu-bar-mode-from-frame): New function. + (menu-bar-showhide-menu): Use toggle-menu-bar-mode-from-frame and + toggle-tool-bar-mode-from-frame to change "Menu-bar" and + "Tool-bar" toggles to reflect the state of the current frame. + (menu-bar-mode): Simplify and fix using `modify-all-frames-parameters'. + + * env.el: Require cl for byte compilation (for `block' and `return'). + (environment, setenv-internal): New functions. + (let-environment): New macro. + (setenv, getenv): Add optional terminal parameter. Update docs. + (setenv): Use setenv-internal. Always set process-environment. + Handle `local-environment-variables'. + (read-envvar-name, setenv, getenv): Use frame parameters + to store the local environment, not terminal parameters. Include + `process-environment' as well. + + * faces.el (tty-run-terminal-initialization): New function. + (tty-create-frame-with-faces): Use it. Set up faces and + background mode only after the terminal has been initialized. + Call terminal-init-*. Don't load the initialization file more + than once. Call set-locale-environment. + (frame-set-background-mode): Handle the 'background-mode terminal + parameter. + (tty-find-type): New function. + (x-create-frame-with-faces): Remove bogus check for + first frame. Call `tool-bar-setup'. Don't make frame visible + until we are done setting up all its parameters. Call + x-setup-function-keys. + + * frame.el (make-frame): Always inherit 'environment and 'client + parameters. Set up the 'environment frame parameter, when needed. + Also inherit 'client parameter. Don't override explicitly + specified values with inherited ones. Add 'terminal frame + parameter. Append window-system-default-frame-alist to parameters + before calling frame-creation-function. + (frame-initialize): Copy the environment from the initial frame. + (window-system-default-frame-alist): Enhance doc string. + (frame-notice-user-settings): Don't put 'tool-bar-lines in + `default-frame-alist' when initial frame is on a tty. + (modify-all-frames-parameters): Simplify using `assq-delete-all'. + Remove specified parameters from `window-system-default-frame-alist'. + (make-frame-on-tty, framep-on-display, suspend-frame): + Extend doc string, update parameter names. + (frames-on-display-list): Use terminal-id to get the display id. + (frame-notice-user-settings): Extend to apply + settings in `window-system-default-frame-alist' as well. + (terminal-id, terminal-parameters, terminal-parameter) + (set-terminal-parameter, terminal-handle-delete-frame): New functions. + (delete-frame-functions): Add to `delete-frame-functions' hook. + (blink-cursor-mode): Adapt blink-cursor-mode default + value from startup.el. + (make-frame-on-display): Protect condition on x-initialized when + x-win.el is not loaded. Update doc. + (suspend-frame): Use display-controlling-tty-p to decide between + suspend-emacs and suspend-tty. + (frames-on-display-list): Update for display ids. + (framep-on-display): Ditto. + (suspend-frame): Use display-name, not frame-tty-name. + (selected-terminal): New function. + + * server.el: Use `device' instead of `display' or `display-id' in + variable and client parameter names. + (server-select-display): Remove (unused). + (server-tty-live-p, server-handle-delete-tty): Remove. + (server-unquote-arg, server-quote-arg, server-buffer-clients): + Update docs. + (server-getenv-from, server-with-environment, server-send-string) + (server-save-buffers-kill-terminal): New functions. + (server-delete-client): Handle quits in kill-buffer. Don't kill + modified buffers. Add extra logging. Delete frames after + deleting the tty. Clear 'client parameter before deleting a frame. + Use delete-display, not delete-tty. + (server-visit-files): Don't set `server-existing-buffer' if the + buffer already has other clients. Return list of buffers + created. Update doc. Don't set client-record when nowait. + (server-handle-delete-frame): Delete the client if this was its + last frame. Check that the frame is alive. Remove bogus comment. + Add note on possible race condition. Delete tty clients, if needed. + (server-handle-suspend-tty): Use server-send-string. Kill the + client in case of errors from process-send-string. Use the display + parameter. + (server-unload-hook): Remove obsolete delete-tty hook. + (server-start): Ask before restarting if the old server still has + clients. Add feedback messages. Remove obsolete delete-tty hook. + (server-process-filter): Use server-send-string. Accept `-dir' + command. Switch to *scratch* immediately after creating the frame, + before evaluating any -evals. Protect `display-splash-screen' + call in a condition-case. Explain why. Call + `display-startup-echo-area-message' before + `display-splash-screen'. Don't display the splash screen when no + frame was created. Show the Emacs splash screen and startup echo + area message. Display the *scratch* buffer by default. Store the + local environment in a frame (not terminal) parameter. Do not try + to decode environment strings. Fix reference to the 'display + frame parameter. Change syntax of environment variables. Put + environment into terminal parameters, not client parameters. Use + a dummy client with --no-wait's X frames. In `-position LINE' + handler, don't ruin the request string until the line number is + extracted. Log opened files. Handle -current-frame command. + Don't create frames when it is given. Don't bind X frames to the + client when we are in -no-wait mode. Set locale environment + variables from client while creating tty frames. Disable call to + configure-display-for-locale. When processing -position command, + don't change the request string until the parameters are + extracted. Don't try to create an X frame when Emacs does not + support it. Improve logging. Temporarily set ncurses-related + environment variables to those of the client while creating a new + tty frame. Select buffers opened by nowait clients, don't leave + them buried under others. Set the display parameter, and use it + when appropriate. - * international/mule-cmds.el (select-safe-coding-system): - Don't check consistency with coding: spec, etc if raw-text or - no-conversion was found to be safe. + * startup.el (display-startup-echo-area-message): Handle + `inhibit-startup-echo-area-message' here. + (command-line-1): Moved from here. + (fancy-splash-screens): Use `overriding-local-map' instead of + `overriding-terminal-local-map' for now; the latter doesn't work + right, it looses keypresses to another terminal. Use + `overriding-terminal-local-map' to set up keymap. Install a + `delete-frame-functions' hook to catch `delete-frame' events. + Ignore `select-window' events to cope better with + `focus-follows-mouse'. Don't switch back to the original buffer + if the splash frame has been killed. Restore previous buffer, even + if it's *scratch*. + (normal-splash-screen): Don't let-bind `mode-line-format'; it + changes the global binding - setq it instead. Use + `save-buffers-kill-terminal'. + (display-splash-screen): Don't do anything if the splash screen is + already displayed elsewhere. + (fancy-splash-exit, fancy-splash-delete-frame): New functions. + (command-line): Replace duplicated code with a call to + tty-run-terminal-initialization. Don't load the terminal + initialization file more than once. Remove call to nonexistent + function `set-locale-translation-file-name'. + + * xt-mouse.el (xterm-mouse-x, xterm-mouse-y): Convert to terminal + parameters. + (xterm-mouse-position-function, xterm-mouse-event): Update. + (xterm-mouse-mode): Don't depend on current value of window-system. + (turn-on-xterm-mouse-tracking, turn-off-xterm-mouse-tracking): + Update for multi-tty. + (turn-on-xterm-mouse-tracking-on-terminal) + (turn-off-xterm-mouse-tracking-on-terminal) + (xterm-mouse-handle-delete-frame): New functions. + (delete-frame-functions, after-make-frame-functions) + (suspend-tty-functions, resume-tty-functions): Install extra hooks + for multi-tty. + +2007-08-29 Stefan Monnier + + * simple.el (invisible-p): Remove: implemented in C now. + (line-move-invisible-p): Remove obsolete alias. + +2007-08-28 Juri Linkov + + * image-mode.el (image-type): New variable. + (image-mode): Set default major mode name to "Image[text]". + (image-minor-mode): Change LIGHTER to display image-type in the + mode line. + (image-minor-mode): Set default image-type to "text". + (image-toggle-display): After switching to text mode, set + image-type to "text" and major mode name to "Image[text]". + After switching to image mode, set image-type to actual image + type, and add image type to major mode name. Let-bind the same + variable names as arguments of `image-type' and `create-image'. + Bind `type' to the result of `image-type' and use it as arg + of `create-image' to not determine the image type twice. + +2007-08-28 Michael Albinus + + * net/tramp.el (tramp-handle-set-file-times): Flush the file properties. + (tramp-set-file-uid-gid, tramp-get-local-uid) + (tramp-get-local-gid): New defuns. + (tramp-handle-copy-file): Handle new parameter PRESERVE-UID-GID. + (tramp-do-copy-or-rename-file): New parameter PRESERVE-UID-GID. + Improve fast track. + (tramp-do-copy-or-rename-file-directly): Sync parameter list with + the other tramp-do-copy-or-rename-file-* functions. Major rewrite. + (tramp-handle-file-local-copy, tramp-handle-insert-file-contents) + (tramp-handle-write-region): Improve fast track. + (tramp-handle-file-remote-p): IDENTIFICATION can also be `localname'. + (tramp-maybe-open-connection): Let `process-adaptive-read-buffering' + be nil. + +2007-08-28 Ivan Kanis + + * time.el: New feature to display several time zones in a buffer. + (display-time-world-mode, display-time-world-display) + (display-time-world, display-time-world-timer): New functions. + (display-time-world-list, display-time-world-time-format) + (display-time-world-buffer-name, display-time-world-timer-enable) + (display-time-world-timer-second, display-time-world-mode-map): + New variables. -2005-04-24 Richard M. Stallman +2007-08-28 Jan Djärv - * mail/sendmail.el (mail-font-lock-keywords): Match any number of - citation markers at start of each line. + * term/x-win.el (x-gtk-stock-map): New variable. + (x-gtk-map-stock): New function. - * mail/rmail.el (rmail-font-lock-keywords): Match any number of - citation markers at start of each line. + * info.el (info-tool-bar-map): Add :rtl keyword to right/left-arrow and + prev/next-node. - * font-lock.el (font-lock-comment-delimiter-face): Doc fix. +2007-08-28 Johan Bockgård (tiny change) - * files.el (mode-require-final-newline): Fix previous change. - (require-final-newline): Fix type label. + * play/gamegrid.el (gamegrid-init): Set line-spacing to 0. -2005-04-24 Glenn Morris +2007-08-28 Glenn Morris - * progmodes/f90.el (f90-calculate-indent): Fix treatment of first - statement in buffer (broken by 2004-11-24 change). + * progmodes/cc-langs.el (c-constant-kwds): Add java: null, true, false. -2005-04-24 Kim F. Storm +2007-08-27 Thien-Thi Nguyen - * ido.el (ido-everywhere): Save and restore old read-buffer-function - and read-file-name-function values. Don't overwrite existing - non-nil values if ido-mode is enabled without ido-everywhere. + * progmodes/modula2.el (m2-definition, m2-module): + Don't use previous-line. Reported by T. V. Raman. -2005-04-24 Luc Teirlinck +2007-08-27 YAMAMOTO Mitsuharu - * files.el (mode-require-final-newline): Minor doc fix. + * term/mac-win.el (mac-handle-toolbar-switch-mode): Add explicit + argument to tool-bar-mode call. -2005-04-24 Eli Zaretskii +2007-08-27 Glenn Morris - * subr.el (syntax-after): Doc fix. - (syntax-class): If argument is nil, return nil. Mask off upper 16 - bits, not 8 bits. + * diff-mode.el (diff-find-file-name): Only accept regular files, + to rule out /dev/null, directories, etc. - * files.el (mode-require-final-newline): Doc fix. - (backup-buffer-copy): Fix last change. + * vc-svn.el (vc-svn-diff): If the repository version of all the + files is the same as the specified OLDVERS, do a local diff. -2005-04-24 YAMAMOTO Mitsuharu +2007-08-27 Stefan Monnier - * term/mac-win.el: Require select. Set selection-coding-system to - mac-system-coding-system. Call menu-bar-enable-clipboard. - (x-last-selected-text-clipboard, x-last-selected-text-primary) - (x-select-enable-clipboard): New variables. - (x-select-text, x-get-selection, x-selection-value) - (x-get-selection-value, mac-select-convert-to-string) - (mac-services-open-file, mac-services-open-selection) - (mac-services-insert-text): New functions. - (CLIPBOARD, FIND): Put mac-scrap-name property. - (com.apple.traditional-mac-plain-text, public.utf16-plain-text) - (public.tiff): Put mac-ostype property. - (selection-converter-alist): Add entries for them. - (mac-application-menu-map): New keymap. - (interprogram-cut-function, interprogram-paste-function): Set to - x-select-text and x-get-selection-value, respectively. - (split-window-keep-point): Set to t. + * uniquify.el (uniquify-rationalize-file-buffer-names): Check liveness + of buffers in uniquify-managed. -2005-04-23 Richard M. Stallman + * simple.el (invisible-p): Rename from text-invisible-p. + Update callers. - * files.el (read-directory-name): Always pass non-nil - DEFAULT-FILENAME arg to read-file-name. - (backup-buffer-copy, basic-save-buffer-2): Take care against - writing thru an unexpected existing symlink. - (revert-buffer): In indirect buffer, revert the base buffer. - (magic-mode-alist): Doc fix. - (buffer-stale-function): Doc fix. - (minibuffer-with-setup-hook): Avoid warning. - (mode-require-final-newline): Doc and custom fix. + * progmodes/cperl-mode.el (defcustom, x-color-defined-p, cperl-is-face) + (cperl-is-face, cperl-force-face, cperl-etags-snarf-tag, cperl-mode) + (cperl-etags-snarf-tag, cperl-etags-goto-tag-location, cperl-init-faces) + (cperl-etags-goto-tag-location): Use new style backquotes. - * follow.el (follow-end-of-buffer): Use with-no-warnings. + * net/browse-url.el: Remove spurious * in custom docstrings. + (browse-url-filename-alist): Use new-style backquote. - * font-lock.el (font-lock-comment-face): On terminals with few colors, - use the default appearance. - (font-lock-comment-delimiter-face): New face, new variable. + * emacs-lisp/backquote.el (backquote-unquote-symbol) + (backquote-splice-symbol): Clarify they're not new-style unquotes. - * imenu.el (imenu--generic-function): The official position of a - definition is the start of the line that BEG is in. + * emacs-lisp/edebug.el (edebug-list-form, edebug-match-symbol, \,) + (\,@): Backslash the , and ,@ which are not new-style unquotes. - * midnight.el (midnight-timer): Move defvar up. + * textmodes/texinfmt.el (\,): Clarify it's not a new-style unquote. - * mouse.el (mouse-drag-region-1): Delete some debugging code. + * net/socks.el (socks-username/password-auth-filter): + Remove unused vars `state' and `desired-len'. + (socks-parse-services, socks-nslookup-host): Use with-current-buffer. + (socks-wait-for-state-change): Use new-style backquotes. - * saveplace.el (save-place-to-alist): Use with-no-warnings. + * pcvs.el (cvs-mode-status): Fix long-standing typo. - * startup.el (command-line): Use with-no-warnings. + * emacs-lisp/bytecomp.el (byte-compile-from-buffer): Check old-style + backquotes after each `read' rather than once per buffer. - * window.el (window-size-fixed): New defvar. + * dframe.el: Remove spurious * in custom docstrings. + (dframe-xemacsp): Remove, use (featurep 'xemacs) instead. + (dframe-xemacs20p): Remove, inline at the sole use point. + (defface): Don't defvar the face, don't use old-style backquote. + (defcustom): Don't use old-style backquote. + (dframe-frame-parameter, dframe-mouse-event-p): + Make it obvious that it's always defined. + (dframe-popup-kludge): New function to replace + dframe-xemacs-popup-kludge and dframe-xemacs-popup-kludge. + (dframe-frame-mode, dframe-set-timer-internal) + (dframe-mouse-set-point): Remove use of with-no-warnings from + XEmacs-specific code. + (dframe-set-timer-internal): Fix very old bug with + post-command-idle-hook. - * emacs-lisp/easymenu.el (easy-menu-do-define): Use defalias, not fset. + * emacs-lisp/byte-opt.el (byte-optimize-featurep): Handle `sxemacs'. - * mail/rmail.el (rmail-font-lock-keywords): - Use font-lock-comment-delimiter-face. + * emacs-lisp/bytecomp.el (byte-compile-from-buffer): Display a big fat + warning if the file uses old style backquotes. - * mail/sendmail.el (mail-font-lock-keywords): - Use font-lock-comment-delimiter-face. + * emacs-lisp/bytecomp.el (byte-compile-log-file) + (byte-recompile-directory, byte-compile-file) + (byte-compile-from-buffer): Use with-current-buffer. - * progmodes/compile.el (next-error-highlight-timer): New defvar. + * simple.el (text-invisible-p): Rename from line-move-invisible-p. + (line-move-invisible-p): Keep as an obsolete alias, just to be safe. + (line-move-1, line-move-finish, line-move-to-column) + (move-end-of-line, move-beginning-of-line): Use new name. -2005-04-23 SAITO Takuya (tiny change) + * emacs-lisp/backquote.el (backquote-delay-process): Fix last change. - * progmodes/compile.el (compilation-mode-font-lock-keywords): - Specify t for LAXMATCH when matching directories. - Save match data around compilation-compat-error-properties form. + * progmodes/ada-mode.el: Fix up comment style in header. + (ada-check-emacs-version): Remove. + (ada-mode): Set parse-sexp-* even if they don't exist: can't hurt. + (ada-region-selected): Use (featurep 'xemacs) rather than contortions + to try and quieten the byte-compiler. + (ada-create-keymap): Use [(..)] keys, which work on both (X)Emacs. -2005-04-23 David Kastrup + * vc.el (vc-annotate-warp-version): Don't use previous-line. - * textmodes/tex-mode.el (TeX-mode, plain-TeX-mode, LaTeX-mode): - Mention that the autoloaded aliases should be kept for AUCTeX. +2007-08-27 Johan Bockgård -2005-04-23 Andreas Schwab + * net/browse-url.el (browse-url-emacs): New function. - * isearch.el (isearch-forward): Doc fix. +2007-08-27 Thien-Thi Nguyen -2005-04-23 Eli Zaretskii + * emacs-lisp/avl-tree.el: New file. - * jit-lock.el (jit-lock-stealth-time): Change default value to 16. - (jit-lock-stealth-nice): Change default value to 0.5. +2007-08-26 Michaël Cadilhac -2005-04-23 Eric Hanchrow (tiny change) + * hi-lock.el (hi-lock-unface-buffer): Show a x-menu only if the mouse + was used. - * abbrev.el (write-abbrev-file): Write table entries in - alphabetical order by table name. +2007-08-26 Sean O'Rourke -2005-04-22 Kim F. Storm + * complete.el (PC-do-completion): Make RET accept a non-unique but + complete expansion again. - * ido.el (ido-read-internal): Fix `list' completion. +2007-08-26 Thien-Thi Nguyen -2005-04-22 Kenichi Handa + * eshell/esh-opt.el (eshell-eval-using-options): + Add debug declaration. - * recentf.el (recentf-save-file-coding-system): New variable. - (recentf-save-list): Encode the file by - recentf-save-file-coding-system and add coding: tag. +2007-08-26 Dan Nicolaescu -2005-04-22 Nick Roberts + * log-view.el (log-view-toggle-mark-entry): Add docstring. + (log-view-get-marked): Likewise. - * emacs-lisp/byte-run.el (define-obsolete-variable-alias): New macro. + * vc-hooks.el (vc-registered): Use mapc instead of mapcar. + (vc-delete-automatic-version-backups): Likewise. -2005-04-21 Lute Kamstra + * vc.el (vc-dired-buffers-for-dir): Likewise. - * loadhist.el (unload-feature): Don't remove a function from hooks - if it is about to be restored to an autoload . Remove functions - that will become unbound from auto-mode-alist. Simplify the code. +2007-08-25 Dan Nicolaescu - * subr.el (assq-delete-all): New implementation that is linear, - not quadratic. Suggested by David Kastrup . - (rassq-delete-all): New function. + * progmodes/cperl-mode.el (cperl-indent-level): Autoload the + safe-local-variable setting. + * progmodes/perl-mode.el (perl-indent-level): Likewise. - * menu-bar.el (menu-bar-options-save, menu-bar-showhide-menu): - Add size-indication-mode. + * log-view.el (log-view-marked-list): Delete variable. + (log-view-mode): Don't use it. + (log-view-toggle-mark-entry): Likewise, simplify. + (log-view-current-tag): Don't return properties. + (log-view-get-marked): New function. -2005-04-21 Kenichi Handa +2007-08-25 Alexandre Julliard - * international/mule-cmds.el: Add autoload for widget-value in - eval-when-compile. + * vc-git.el (vc-git-mode-line-string): New function. -2005-04-21 Nick Roberts +2007-08-25 Alan Mackenzie - * menu-bar.el (menu-bar-options-save, menu-bar-showhide-menu): - Add tooltip-mode. + * progmodes/cc-langs.el (c-other-decl-block-key-in-symbols-alist): + new language variable. - * bindings.el (mode-line-mode-menu): Remove tooltip-mode. + * progmodes/cc-engine.el (c-brace-anchor-point): new function. + (c-add-stmt-syntax): Give accurate anchor points for "namespace", + "extern" etc., rather than BOI. Fix addition of spurious + syntactic-symbol 'defun-block-intro, replacing it with + 'innamespace, etc. -2005-04-20 Luc Teirlinck +2007-08-25 Juri Linkov - * progmodes/inf-lisp.el (inferior-lisp): New defgroup. - (inferior-lisp-filter-regexp, inferior-lisp-program) - (inferior-lisp-load-command, inferior-lisp-prompt) - (inferior-lisp-mode-hook, lisp-source-modes) - (inferior-lisp-load-hook): defvar->defcustom. - (inferior-lisp-program, inferior-lisp-prompt) - (inferior-lisp-load-hook): Doc fixes. - (inferior-lisp-install-letter-bindings): Small change in - introductory comment. + * files.el (auto-mode-alist): Move "\\.x[bp]m\\'" to image-mode.el. -2005-04-20 Dan Nicolaescu + * image-mode.el: Add autoloads to put associations in auto-mode-alist: + associate "\\.x[bp]m\\'" with c-mode and image-mode-maybe, and + "\\.svgz?\\'" with xml-mode and image-mode-maybe. - * vc.el (vc-annotate-color-map): Change some colors so that text - using them as foreground is readable on both white and black - backgrounds. + * image.el (image-type-header-regexps): Use more complex regexp for svg. + (image-type-file-name-regexps): Add ("\\.svgz?\\'" . svg). + (image-type-auto-detectable): Add (svg . maybe). -2005-04-20 Stefan Monnier + * jka-cmpr-hook.el (jka-compr-compression-info-list): Add .svgz + to treat it like .tgz. - * international/mule-conf.el (translation-table-for-input): - Remove redundant declaration. + * calendar/cal-bahai.el: Add file coding cookie. -2005-04-20 Nick Roberts +2007-08-25 Reiner Steib - * progmodes/gud.el (gud-menu-map): Add tooltip-toggle-gud-tips. + * pcvs.el (cvs-query-directory): Only prompt when prefix is given. + Don't behave differently when executed via M-x. Add doc string. - * tooltip.el (tooltip-gud-tips-p): Expand documentation. - (tooltip-toggle-gud-tips): New function. + * sort.el (sort-fold-case, sort-numeric-base): Mark as + safe-local-variable. -2005-04-20 YAMAMOTO Mitsuharu +2007-08-25 Jay Belanger - * term/mac-win.el (mac-symbol-encoder): Fix mappings of left and - right angle brackets. + * calc/calc-forms.el (var-TimeZone): Make nil explicitly + the default value. + (math-calendar-tzinfo): New variable. + (math-get-calendar-tzinfo): New function. + (calcFunc-tzone, calcFunc-dst): Use Emacs's calendar + to get information when zone is nil. -2005-04-20 Nick Roberts +2007-08-24 Dan Nicolaescu - * tooltip.el (tooltip-use-echo-area): Replace as alias and deprecate. + * log-view.el (log-view-toggle-mark-entry): New function. + (log-view-mode-map): Bind it. + (log-view-marked-list): New variable. + (log-view-mode): Make it local. -2005-04-19 Stefan Monnier +2007-08-24 Thien-Thi Nguyen - * progmodes/flymake.el (flymake-get-absolute-file-name-basedir): - Remove. Update callers to use expand-file-name instead. + * play/zone.el (zone-pgm-rat-race): New func. + (zone-programs): Add `zone-pgm-rat-race'. - * subr.el (syntax-class): New function. +2007-08-24 Stefan Monnier - * simple.el (blink-matching-open): Use it. + * emacs-lisp/byte-opt.el (byte-optimize-if): Don't presume `clause' is + a list. - * paren.el (show-paren-function): Use it to recognize parens that are - also used in 2-char comment markers. +2007-08-24 Thien-Thi Nguyen -2005-04-19 Lute Kamstra + * progmodes/hideshow.el (hs-match-data): Delete alias. + (hs-hide-block-at-point, hs-find-block-beginning) + (hs-show-block): Use `match-data' directly. - * loadhist.el (unload-feature): Update for new format of - load-history. Simplify the code. +2007-08-24 Martin Rudalics -2005-04-19 YAMAMOTO Mitsuharu + * format.el (format-alist): Fix typo in doc-string. - * term/mac-win.el: Add coding: tag and set it to iso-2022-7bit. - (mac-add-charset-info): New function. Initialize variable - mac-charset-info-alist using it. - (mac-centraleurroman, mac-cyrillic): Do not use UCS in table data - for translation. - (mac-symbol-encoder, mac-dingbats-encoder): New translation table. - (mac-font-encoder-list): Add entries for mac-symbol and mac-dingbats. - (ccl-encode-mac-symbol-font, ccl-encode-mac-dingbats-font): - New CCL programs. +2007-08-24 Michael Albinus -2005-04-19 Kim F. Storm + * net/tramp.el (tramp-local-host-p): New defun. + (tramp-handle-file-local-copy, tramp-handle-write-region): + Implement fast track when being on the local host. + (tramp-file-name-handler): Don't set "started" property. It shall + be reserved for the "ftp" method. + (tramp-make-copy-program-file-name): Use `tramp-file-name-real-host'. - * simple.el (next-buffer, prev-buffer, next-error) - (scroll-other-window, keyboard-quit, keyboard-escape-quit) - (clone-indirect-buffer-other-window): Move bindings to bindings.el. + * net/tramp-ftp.el (top): Autoload `tramp-set-connection-property'. + (tramp-ftp-file-name-handler): Set "started" property. - * bindings.el (next-buffer, prev-buffer, next-error) - (scroll-other-window, keyboard-quit, keyboard-escape-quit) - (clone-indirect-buffer-other-window): Move bindings from simple.el. - (next-buffer, prev-buffer): Add C-x C-right and C-x C-left bindings. - (next-error, previous-error): Add M-g M-n/n and M-g M-p/p bindings. +2007-08-24 Ulrich Mueller (tiny change) -2005-04-18 Stefan Monnier + * files.el (backup-buffer-copy): Don't wrap delete in + condition-case, only try to delete if file exists. - * isearch.el (isearch-edit-string): Make the search-ring available for - minibuffer history commands. - (minibuffer-local-isearch-map): Remove bindings for M-p and M-n, - the default history commands now work just as well. - (isearch-ring-retreat-edit, isearch-ring-advance-edit): Remove. +2007-08-24 Glenn Morris -2005-04-18 Kim F. Storm + * files.el (backup-buffer-copy): Revert 2007-08-22 change. - * emulation/cua-base.el (cua--pre-command-handler): Add more - elaborate check for shift modifier on non-window systems. + * startup.el (tutorial-directory): Set with eval-at-startup so it + gets the right value in an installed Emacs. -2005-04-18 Lars Hansen +2007-08-24 Nikolaj Schumacher (tiny change) - * desktop.el: Make "--no-desktop" turn off `desktop-save-mode'. + * emacs-lisp/eldoc.el (eldoc-highlight-function-argument): New face. + (eldoc-highlight-function-argument): Use it. -2005-04-18 Kim F. Storm +2007-08-23 Masatake YAMATO - * tooltip.el (tooltip-show): Change second arg to USE-ECHO-AREA - and make it optional. Don't test tooltip-gud-echo-area here. - (tooltip-gud-process-output, gdb-tooltip-print): - Pass tooltip-gud-echo-area to tooltip-show. - (tooltip-help-tips): Remove second optional arg to tooltip-show. + * progmodes/cc-fonts.el (gtkdoc-font-lock-doc-comments): Highlight + name of parameters in document body. -2005-04-18 YAMAMOTO Mitsuharu +2007-08-23 Stefan Monnier - * tooltip.el (tooltip-mode): `emacs-quick-startup' and - `display-graphic-p' may not be bound yet. + * emacs-lisp/bytecomp.el (byte-compile-output-docform) + (byte-compile-output-as-comment): Use with-current-buffer rather than + a weird set-buffer&prog1 combination. -2005-04-17 Luc Teirlinck + * emacs-lisp/byte-opt.el (byte-optimize-if): Move `progn' out of the + test so as to optimise cases where the `progn's result is constant. - * startup.el (command-line): No longer enable Xterm Mouse mode by - default in terminals compatible with xterm. +2007-08-23 Thien-Thi Nguyen - * xt-mouse.el (xterm-mouse-mode): Set init value back to nil. + * locate.el (locate-get-file-positions): + Use line-beginning-position and line-end-position. -2005-04-18 Nick Roberts +2007-08-23 John Wiegley - * tooltip.el (tooltip-gud-echo-area): Rename from - tooltip-use-echo-area. - (tooltip-show, tooltip-gud-process-output, gdb-tooltip-print) - (tooltip-help-tips): Allow GUD tooltips to be displayed in echo - area independently of where help tooltips are displayed. + * calendar/cal-bahai.el: Added in the diacriticals that were + missing for many of the month names. -2005-04-17 David Kastrup +2007-08-22 Jason Rumney - * cus-theme.el (custom-theme-write-variables): Quote variables - where necessary. + * vc-hooks.el (vc-menu-map-filter): Reapply 2007-08-06 bugfix. -2005-04-17 Richard M. Stallman +2007-08-22 Chong Yidong - * simple.el (yank-excluded-properties): Add follow-link to value. + * image-mode.el (image-minor-mode): Use image-mode-text-map. - * jka-compr.el (jka-compr-compression-info-list): Fix custom type. +2007-08-22 Sean O'Rourke + + * dabbrev.el (dabbrev--progress-reporter): New variable. + (dabbrev--scanning-message): Delete func. + (dabbrev--find-expansion): Use a progress reporter + instead of dabbrev--scanning-message. + +2007-08-22 Michael Albinus + + * comint.el (comint-exec-1): Raise an error if + `start-file-process' does not return a process object. + + * shell.el (shell): Prompt for `default-directory' if it is a + remote file name, and if called with a prefix arg. + +2007-08-22 Sam Steingold + + * pcvs.el (cvs-vc-command-advice): Fix a typo in code (file->files). + +2007-08-22 Carsten Dominik + + * textmodes/org-export-latex.el: New file. + + * textmodes/org-publish.el (org-publish-org-to-latex): New function. + + * textmodes/org.el (org-agenda-skip): Allow a form for + `org-agenda-skip-function'. + (org-agenda-redo): Re-use local settings. + (org-agenda): Store local settings. + (org-agenda-deadline-faces): New option. + (org-agenda-deadline-face): New function. + (org-agenda-get-deadlines, org-agenda-get-scheduled): Also handle + entries on their due date. + (org-agenda-get-timestamps): No longer handle the due dates of + schedules and deadline items. + (org-insert-link-global, org-open-at-point-global): New commands. + (org-export-as-ascii): Call `org-cleaned-string-for-export' with a + :for-ascii parameter. + (org-skip-comments): Function removed. + (org-cleaned-string-for-export): Handle special table lines. + (org-global-properties): New option. + (org-entry-get-with-inheritance): Check global properties. + (org-local-properties): New variable. + (org-set-regexps-and-options): Find the #+PROPERTY line. + (org-link-types): Change type into variable (was constant). + (org-make-link-regexps): New function. + (org-link-re-with-space, org-link-re-with-space2) + (org-angle-link-re, org-plain-link-re, org-bracket-link-regexp) + (org-bracket-link-analytic-regexp, org-any-link-re): Creation of + these regular expressions happens now in the function + `org-make-link-regexps'. + (org-store-link): Call the functions in + `org-store-link-functions'. + (org-add-link-type): New function. + (org-store-link-functions): New variable. + (org-activate-tags): Force matches to be in headlines. + (org-batch-store-agenda-views): Fix bug with killing agenda buffer. + (org-columns-display-here): Make sure this works in a narrowed + buffer by checking for point-min. + (org-columns-display-here): Make the rest of the line intangible, + so that point never can be there. + (org-cleaned-string-for-export): Use `with-current-buffer'. + (org-replace-region-by-html): Use `with-current-buffer'. + (org-unfontify-region, org-do-occur, org-columns-display-here) + (org-columns-remove-overlays, org-columns-quit) + (org-columns-edit-value, org-columns-next-allowed-value) + (org-eval-in-calendar, org-agenda-undo, org-no-read-only) + (org-finalize-agenda, org-remove-subtree-entries-from-agenda) + (org-agenda-todo, org-agenda-change-all-lines) + (org-agenda-align-tags, org-agenda-priority) + (org-agenda-set-tags, org-agenda-toggle-archive-tag) + (org-agenda-show-new-time, org-cleaned-string-for-export) + (org-export-grab-title-from-buffer) + (org-export-as-ascii, org-export-as-html): Use `inhibit-read-only' + instead of `buffer-read-only'. + (org-export-as-html): Set `coding-system-for-write'. + (org-remember-store-without-prompt): New option. + (org-archive-subtree): Fixed bug with modifying TODO keyword. + (org-beginning-of-line): Also treat C-a special in items. + (org-table-convert-refs-to-rc): Fixed problem with column + reference after "..". + (org-columns-compute): Don't mark buffer modified because of text + properties. + (org-batch-store-agenda-views): Use the variable + `default-directory', not the function. + (org-clock-out-if-current): Respect `org-clock-out-when-done'. + (org-clock-out-when-done): New option. + (org-html-entities): Added HTML entities for smileys. - * startup.el (fancy-splash-max-time): Just 30 seconds. - (fancy-splash-delay): Just 7. - (fancy-splash-screens): No time limit other than fancy-splash-max-time. +2007-08-22 Glenn Morris - * loadhist.el (unload-feature): Update for new format of load-history. - Simplify the code. + * image.el (create-image): Doc fix. - * mail/rmail.el (rmail-ignored-headers): Ignore more headers - (rmail-font-lock-keywords): Don't fontify the text of a citation. + * startup.el (tutorial-directory): New constant. + (fancy-splash-text): Tutorials now in tutorial-directory. + * tutorial.el (help-with-tutorial): Tutorials now in + tutorial-directory. - * mail/sendmail.el (mail-font-lock-keywords): - Don't fontify subject text. - Don't fontify the text of a citation. +2007-08-22 Michael Albinus -2005-04-17 Mark H. Weaver (tiny change) + * net/tramp.el (top): Require cl.el, when `copy-tree' is not available + otherwise. + (tramp-get-remote-path): New defun. Replace occurrences of + `tramp-default-remote-path' by this function. + (tramp-set-remote-path): Move most of the code to + `tramp-get-remote-path'. + (tramp-get-ls-command, tramp-get-remote-id): Don't check for not + existing directories, this is done already in + `tramp-get-remote-path'. - * comint.el (comint-output-filter): Run comint-output-filter-functions - with point where the user had it. +2007-08-22 Paul Pogonyshev -2005-04-16 Stefan Monnier + * image-file.el (image-file-name-extensions): Add "svg". + * image.el (image-type-header-regexps): Add svg entry. - * international/ucs-tables.el (ucs-set-table-for-input): - Disable when using unify-on-decoding. +2007-08-22 Glenn Morris -2005-04-16 Dan Nicolaescu + * files.el (backup-buffer-copy): Check backup directory is + writable, to avoid infloop deleting old backup. - * emulation/cua-base.el (cua-global-mark-face): Add special case - for displays supporting a high number of colors. + * mail/rmail.el (rmail-movemail-variant-p): Call on load to set + movemail related variables. + (rmail-insert-inbox-text): Use only rmail-movemail-program, which + will now be set before this is called. -2005-04-16 Matt Hodges (tiny change) +2007-08-21 Juri Linkov - * repeat.el (repeat): Invoke pre-command-hook and post-command-hook. + * delsel.el (delete-selection-pre-hook): + * emulation/cua-base.el (cua-paste): Use `mouse-region-match' + instead of checking last-command. -2005-04-16 Chong Yidong +2007-08-21 Juri Linkov - * filesets.el (filesets-add-buffer): If user supplies a name of a - non-existing fileset, create a new fileset. + * loadup.el: Preload "button". -2005-04-16 Carsten Dominik +2007-08-21 Stefan Monnier - * textmodes/org.el (org-up-heading-all): Fix bug with - `outline-up-heading-all'. + * emacs-lisp/bytecomp.el (byte-compile-interactive-only-functions): + Add previous-line and next-line. -2005-04-16 Andreas Schwab + * vc-arch.el (vc-arch-extra-menu-map): New var and fun. + (vc-arch-find-file-not-found-hook): Remove, it's now the default. - * files.el (auto-mode-alist): Handle /etc/sysconfig/*, - /etc/permissions.d/* and /etc/aliases.d/*. + * vc-hooks.el (vc-menu-entry): New var. + (vc-mode-line-map): Use it so that this menu also uses the extra-menu. + (menu-bar-tools-menu): Add the VC menu here rather than in menu-bar.el. + (vc-menu-map): Declare and initialize in one step. + (vc-menu-map-filter): Move&rename from menu-bar.el:menu-bar-vc-filter. -2005-04-16 Kenichi Handa + * menu-bar.el (vc-menu-map): Don't setup any more. + Instead, just create the proper spot in the menu. - * international/code-pages.el (cp-make-coding-system): - Set `translation-table-for-input' property value to the symbol - ucs-mule-to-mule-unicode, not to that value. - (pt154): Escape guillemet by `\'. +2007-08-20 Stefan Monnier -2005-04-15 Luc Teirlinck + * smerge-mode.el (smerge-resolve): New arg `safe'. + (smerge-resolve-all, smerge-batch-resolve): New function. + (smerge-refine): Make sure `diff' returns the expected result. + (smerge-parsep-re): New const. + (smerge-mode): Use it to adjust paragraph-separate. - * loadup.el: Load tooltip if x-show-tip is fboundp. + * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords): + Correctly match / regexp matchers as first char on a line when + fontifying only that line. - * startup.el (command-line): Add comment. + * emacs-lisp/cl-macs.el (cl-transform-lambda): Preserve the match-data. - * tooltip.el (tooltip-mode): Specify correct standard value for - Custom in init-value. +2007-08-20 Stefan Monnier -2005-04-15 Nick Roberts + * vc-bzr.el: Don't fiddle with vc-handled-backend. + (vc-bzr-registered): Don't redundantly protect against + file-error. Actually use the format-specific code. + (vc-bzr-buffer-nonblank-p): Remove. + (vc-bzr-status): Change `kindchange' -> `kindchanged'. - * progmodes/gud.el (gud-goto-info): Use existing Info buffer, if - possible. +2007-08-20 Juri Linkov -2005-04-15 Carsten Dominik + * startup.el (fancy-splash-text): Change multiple tabs into one + tab. Remove "Useful File menu items" section (with "Exit Emacs" + and "Recover Crashed Session"). + (fancy-splash-screens): Set tab-width to 22. + (normal-splash-screen): Replace literal tabs with \t and + fix whitespace. Remove "Useful File menu items" section (with + "Exit Emacs" and "Recover Crashed Session"). - * textmodes/org.el (org-agenda-date-prompt): Rename from - `org-agenda-date-today'. - (org-evaluate-time-range): Insert at point instead of directly - after time range. - (org-first-headline-recenter, org-subtree-end-visible-p) - (org-optimize-window-after-visibility-change): New functions - (org-agenda-post-command-hook): Don't allow point at end of line, - to make sure it always hits the text properties. - (org-agenda-next-date-line, org-agenda-previous-date-line): - New commands. - (org-set-regexps-and-options): Category may contain white space. - (org-agenda-get-deadlines, org-agenda-get-scheduled): - Improve marker positions. - (org-agenda-new-marker): Argument POS made optional. - (org-agenda-get-timestamps): Deadlines which are done are listed - in org-done-face now. - (org-agenda-get-todos, org-agenda-get-timestamps) - (org-agenda-get-deadlines, org-agenda-get-scheduled): - Set `undone-face' and `done-face' properties. - (org-last-todo-state-is-todo): New variable. - (org-todo): Set `org-last-todo-state-is-todo'. - (org-agenda-todo): Change face according to - `org-last-todo-state-is-todo'. And change other lines referring to - the same entry. - (org-calendar-goto-agenda): New command. - (org-calendar-to-agenda-key): New option. - (org-startup-folded): New allowed value `content'. - (org-set-regexps-and-options): Accept new value `content' for - `org-startup-folded'. - (org-get-current-options): Handle new value `content' for - `org-startup-folded'. - (org-insert-todo-heading): New command. - (org-mode): Insert first line "*-* mode: org-mode -*-" when called - interactively in empty file and option - `org-insert-mode-line-in-empty-file' has been set. - (org-agenda-todo, org-agenda-priority): Modify to use - `org-agenda-change-all-lines'. - (org-warning-face): Change color on dark background. - -2005-04-14 YAMAMOTO Mitsuharu - - * international/mule-cmds.el (set-locale-environment): On Mac OS, - use preferences AppleLocale and AppleLanguages, and variable - mac-system-locale for default locale. On Mac OS Classic, use - mac-system-coding-system for default coding systems. - - * term/mac-win.el: Don't set file-name-coding-system. - Decode variables system-name, emacs-build-system, user-login-name, and - user-full-name by mac-system-coding-system on Mac OS Classic. - (mac-system-coding-system): New variable. - -2005-04-13 Luc Teirlinck - - * startup.el (command-line): Handle `xterm-mouse-mode' before - reading init file. - - * xt-mouse.el (xterm-mouse-mode): Adapt to above change. - -2005-04-13 Glenn Morris - - * progmodes/sh-script.el (sh-here-document-word): Make it a - defcustom. Doc fix. - (sh-add): Bash uses $(( )) for arithmetic. - (sh-while-getopts) : Set OPTIND back to 1 at end. - (sh-maybe-here-document): Remove quotes and leading whitespace - from heredoc word when closing. Indent heredoc with tabs if word - starts with "-". - -2005-04-13 Richard M. Stallman - - * simple.el (undo): Fix previous change. +2007-08-20 Johannes Weiner (tiny change) - * custom.el (defface): Doc fix. + * emacs-lisp/lisp-mode.el (preceding-sexp): New fun, the code was + extracted from `eval-last-sexp-1'. + (eval-last-sexp-1): Call `preceding-sexp'. -2005-04-13 Lute Kamstra +2007-08-20 Thien-Thi Nguyen - * Makefile.in (DONTCOMPILE): Remove list. - (compile, compile-always): Don't use DONTCOMPILE. - (update-authors): Load the library in which batch-update-authors - is defined. - * makefile.w32-in (DONTCOMPILE): Remove list. - (compile, compile-always): Fix comments. - (update-authors): Load the library in which batch-update-authors - is defined. + * vc-rcs.el (vc-rcs-annotate-command): + Fix bug introduced 2007-07-18T16:32:40Z!esr@snark.thyrsus.com: + Add back :vc-annotate-prefix propertization. - * generic-x.el (generic-mode-ini-file-find-file-hook): - Rename to ini-generic-mode-find-file-hook. - Keep generic-mode-ini-file-find-file-hook as an alias. - (ini-generic-mode-find-file-hook): Rename from - generic-mode-ini-file-find-file-hook. Fix docstring. - (ini-generic-mode): Docstring change. - (bat-generic-mode-run-as-comint): Silence the byte compiler. +2007-08-20 Andreas Schwab - * help.el (describe-key-briefly): UNTRANSLATED can be nil when - called from lisp. + * mail/rmail.el (rmail-autodetect): Doc fix. - * generic.el: Move to the emacs-lisp subdir. +2007-08-19 Juri Linkov -2005-04-12 Dan Nicolaescu + * startup.el (normal-splash-screen): Add more links. - * term/xterm.el (function-key-map): Add mappings for A-, C-, S- - and C-S- function and cursor motion keys. +2007-08-19 Juri Linkov -2005-04-12 Luc Teirlinck + * startup.el (splash-screen-keymap): Rename from `fancy-splash-keymap' + because it's common to both types of splash screen: fancy and normal. + Bind SPC to scroll-up, DEL to scroll-down and `q' to exit-splash-screen. + (exit-splash-screen): Rename from `fancy-splash-quit'. + Use `quit-window' instead of `kill-buffer'. + (fancy-splash-head): Use make-button to insert GNU image link. + (fancy-splash-screens, normal-splash-screen): Rename " About GNU + Emacs" to "*About GNU Emacs*", and " GNU Emacs" to "*GNU Emacs*". + (normal-splash-screen): Put "Browse manuals" on the same line with + "Emacs manual". Remove descriptions from "Useful tasks" and put + all links in two columns on two lines. - * startup.el (command-line): Enable Xterm Mouse mode by default. - * xt-mouse.el (xterm-mouse-mode): Provide correct standard value - for Custom. No longer show "Mouse" in mode line when enabled. - Doc fix. +2007-08-19 Michael Kifer -2005-04-12 Kim F. Storm + * emulation/viper.el (viper-remove-hooks): Remove some additional + viper hooks when the user calls viper-go-away. + (viper-go-away): Restore the default of default-major-mode. + Save the value of default-major-mode before vaperization. - * emulation/cua-base.el (cua-rectangle-face) - (cua-rectangle-noselect-face): Define face attributes here. + * emulation/viper-cmd.el: Replace error "" with "Viper bell". - * emulation/cua-rect.el (cua--init-rectangles): Remove face setup. + * emulation/viper-ex.el: Replace error "" with "Viper bell". -2005-04-12 Jan Dj,Ad(Brv + * ediff-util.el (ediff-make-temp-file): Use the coding system of the + buffer for which file is created. - * startup.el (command-line): Turn off blinking cursor if - cursorBlink in resources is off or false. +2007-08-19 Glenn Morris -2005-04-12 YAMAMOTO Mitsuharu + * Makefile.in (custom-deps, finder-data, autoloads, recompile) + (progmodes/cc-mode.elc, mh-e/mh-loaddefs.el): Use $(emacs) rather + than $(EMACS), so that EMACSLOADPATH is set. Prevents any system + shadow files messing up the compilation. - * term/mac-win.el (dnd): Require dnd. - (mac-drag-n-drop): Call dnd-handle-one-url. - (kTextEncodingMacRoman, kTextEncodingISOLatin1) - (kTextEncodingISOLatin2): Remove constants. - (mac-script-code-coding-systems): New constant. - (mac-handle-language-change): New function. - (special-event-map): Bind it to `language-change' event. - (mac-centraleurroman, mac-cyrillic): New coding systems. - (mac-font-encoder-list, ccl-encode-mac-centraleurroman-font) - (ccl-encode-mac-cyrillic-font): Rename mac-centraleurroman-encoder - and mac-cyrillic-encoder to encode-mac-centraleurroman and - encode-mac-cyrillic, respectively. +2007-08-18 Glenn Morris -2005-04-12 Nick Roberts + * emacs-lisp/eldoc.el (eldoc-get-fnsym-args-string): Add doc + string. Also apply eldoc-argument-case in the help-split-fundoc + case. Adapt for changed behavior of eldoc-function-argstring, + eldoc-function-argstring-format, and + eldoc-highlight-function-argument. + (eldoc-highlight-function-argument): Handle nil INDEX argument, + just call eldoc-docstring-format-sym-doc in that case. + (eldoc-function-argstring): Change the behavior. Now it converts + an argument list to a string. + (eldoc-function-argstring-format): Change the behavior. Now it + applies `eldoc-argument-case' to a string. + + * progmodes/scheme.el (scheme-mode-variables): Set + font-lock-comment-start-skip. - * progmodes/gud.el, progmodes/gdb-ui.el (gdb-assembler-mode): - Don't set overlay-arrow-string to "=>" as this is done - globally in C now. +2007-08-18 Martin Rudalics -2005-04-12 Lute Kamstra + * progmodes/ada-mode.el (ada-create-syntax-table): Move + set-syntax-table from here to ... + (ada-mode): ... here. Do not change global value of + comment-multi-line. Call new function + ada-initialize-syntax-table-properties and add new function + ada-handle-syntax-table-properties to font-lock-mode-hook. + (ada-deactivate-properties, ada-initialize-properties): Replace + by new functions ... + (ada-handle-syntax-table-properties) + (ada-initialize-syntax-table-properties) + (ada-set-syntax-table-properties): ... to set up syntax-table + properties uniformly, independently from whether font-lock-mode + is enabled or not. Handle read-only buffers and do not change + undo-list when setting syntax-table properties. + (ada-after-change-function): Use ada-set-syntax-table-properties. - * generic-x.el (rc-generic-mode, rul-generic-mode): - Fix auto-mode-alist entries. - (etc-fstab-generic-mode): Tweak fontification. +2007-08-18 Michaël Cadilhac - * generic.el (generic-make-keywords-list): Fix docstring. - (generic-mode-internal): Simplify generic-font-lock-keywords. + * progmodes/meta-mode.el (meta-indent-calculate-last): Remove. + (meta-indent-current-nesting): Use a computation of the nesting + instead. + (meta-indent-current-indentation): Indentation is given according + to nesting and if the previous line was finished or not. + (meta-indent-unfinished-line): Tell if the current line ends with + a finished expression. + (meta-indent-looking-at-code): Like `looking-at', but checks if + the point is in a string before. + (meta-indent-level-count): Use it. Don't count parenthesis as it's + done in the nesting function. + (meta-indent-in-string-p): Tell if the current point is in a + string. + (meta-indent-calculate): Treat b-o-b as a special case. Use the + previous functions. + +2007-08-17 Thien-Thi Nguyen + + * emacs-lisp/copyright.el (copyright-limit): New defsubst. + (copyright-update-year, copyright-update) + (copyright-fix-years): Use it. + +2007-08-17 Kimit Yada (tiny change) + + * emacs-lisp/copyright.el (copyright-update-year): + Fix bug: Handle nil copyright-limit. + +2007-08-17 Jay Belanger + + * calc/calc-units.el (math-standard-units): Give exact + conversion for tsp. + + * calc/calc.el (math-bignum-digit-length): Compute the + appropriate value. + + * calc/calc-bin.el (math-bignum-logb-digit-size) + (math-bignum-digit-power-of-two): + * calc/calc-comb.el (math-small-factorial-table): + * calc/calc-ext.el (math-approx-pi, math-approx-sqrt-e) + (math-approx-gamma-const): + * calc/calc-funcs.el (math-besJ0, math-besJ1, math-besY0) + (math-besY1, math-bernoulli-b-cache): + * calc/calc-math.el (math-approx-ln-10, math-approx-ln-2): + Remove `eval-when-compile's. -2005-04-11 Rajesh Vaidheeswarran +2007-08-17 Bob Rogers (tiny change) - * whitespace.el (whitespace-buffer-leading) - (whitespace-buffer-trailing): Revert the incorrect test inversion. - However, fix the highlight area for the leading and - trailing whitespaces to show space. + * progmodes/cperl-mode.el (cperl-look-at-leading-count) + (cperl-find-pods-heres): Fix an error when typing expressions like + `s{a}{b}'. -2005-04-11 Rajesh Vaidheeswarran +2007-08-17 Michaël Cadilhac - * whitespace.el (whitespace-version): Bump to 3.5. + * mail/emacsbug.el (report-emacs-bug): Remove the last number of + `emacs-version', use the topic prefix ``version; ''. Make MS-DOS + a special case (there's no build number). - (whitespace-buffer-leading, whitespace-buffer-trailing): - Invert sense of the test to highlight the whitespace. +2007-08-17 T. V. Raman (tiny change) -2005-04-12 Nick Roberts + * completion.el (symbol-under-point, symbol-before-point) + (symbol-before-point-for-complete): Use buffer-substring-no-properties. - * progmodes/gud.el (gud-display-line): GUD uses its own - overlay arrow now so don't set overlay-arrow-string. - (gud-pdb-command-name): Revert back to "pdb" (2004-04-26). +2007-08-17 Glenn Morris -2005-04-11 Dan Nicolaescu + * progmodes/compile.el (compilation-get-file-structure): Make use + of the directory part when checking for an existing entry, to + handle files with same basename in different directories. - * term.el (term-ansi-current-bold, term-ansi-current-underline) - (term-ansi-current-reverse, term-ansi-current-invisible) - (term-ansi-face-already-done): Change to boolean. - (term-reset-terminal, term-handle-colors-array): Handle the above - vars accordingly. - (term-buffer-vertical-motion): Rename from buffer-vertical-motion. - (term-emulate-terminal): Use the new name. +2007-08-17 Jay Belanger - * faces.el (secondary-selection): Use yellow1, not yellow. - (trailing-whitespace): Use red1, not red. + * calc/calc.el (calc-language-alist): Add texinfo-mode. -2005-04-11 Jan Dj,Ad(Brv +2007-08-16 Vinicius Jose Latorre - * dired.el (dired-mode): Use dnd-* instead of x-dnd-* - (dired-dnd-handle-local-file): Call dnd-get-local-file-name. - (dired-dnd-handle-file): Call dnd-get-local-file-uri. + * ps-print.el (ps-header-font-size, ps-header-title-font-size) + (ps-footer-font-size, ps-line-number-font-size, ps-line-spacing) + (ps-paragraph-spacing): Docstring fix. - * cus-edit.el (dnd): New group. +2007-08-16 Glenn Morris - * term/w32-win.el (dnd): Require dnd - (w32-drag-n-drop): Call dnd-handle-one-url. + * ps-print.el (ps-font-size): Doc fix. - * x-dnd.el: Require dnd. - (x-dnd-handle-uri-list, x-dnd-handle-file-name): - Call dnd-handle-one-url. - (x-dnd-types-alist, x-dnd-insert-utf8-text) - (x-dnd-insert-utf16-text, x-dnd-insert-ctext): Change x-dnd-insert-text - to dnd-insert-text. - (x-dnd-protocol-alist, x-dnd-open-file-other-window) - (x-dnd-handle-one-url, x-dnd-get-local-file-uri) - (x-dnd-get-local-file-name, x-dnd-open-local-file) - (x-dnd-open-file, x-dnd-insert-text): Move to dnd.el (without x-). +2007-08-16 Richard Stallman + + * emacs-lisp/copyright.el (copyright-names-regexp): Add custom group. + +2007-08-15 Juri Linkov + + * startup.el (initialization): Change parent group from `internal' + to `environment'. + (initial-buffer-choice): New variable. + (command-line): Revert 2007-07-02 change that sets + buffer-offer-save in *scratch* and enables auto-save in it. + (fancy-splash-text): Add links to existing items. Add new items + with links for useful tasks. Move information about Control-g to + fancy-splash-head. Move "Emacs Guided Tour" to the end. + (fancy-splash-keymap): New variable. + (fancy-splash-last-input-event): Remove variable. + (fancy-splash-insert): Add processing of `:link' element. + (fancy-splash-head): Replace "Type Control-l to begin editing" + with "Type `q' to exit". + (fancy-splash-screens-1): Let-bind inhibit-read-only to t. + (fancy-splash-default-action, fancy-splash-special-event-action): + Remove functions. + (fancy-splash-quit): New function. + (fancy-splash-screens): Rename input arg from `hide-on-input' to + `static' and reverse the condition of its usage. Don't preserve + original values of `minor-mode-map-alist', + `emulation-mode-map-alists', `special-event-map'. + Rename startup-buffer from "*About GNU Emacs*" to " GNU Emacs". + Rename about-buffer from " GNU Emacs" to " About GNU Emacs". + Remove processing of special events. Use local key map + `fancy-splash-keymap'. Set buffer to read-only. + (normal-splash-screen): Rename input arg from `hide-on-input' to + `static' and reverse the condition of its usage. + Rename startup-buffer from "*About GNU Emacs*" to " GNU Emacs". + Rename about-buffer from " GNU Emacs" to " About GNU Emacs". + Add links to existing items. Add new items with links for useful + tasks. Use local key map `fancy-splash-keymap'. + (display-splash-screen): Rename input arg from `hide-on-input' to + `static'. + (about-emacs): Add alias to display-splash-screen. + (command-line-1): Use `initial-buffer-choice'. - * dnd.el (dnd-protocol-alist): New file with generic DND functions. + * menu-bar.el (menu-bar-help-menu): + * term/mac-win.el (mac-apple-event-map): Bind About Emacs menu + item to about-emacs instead of display-splash-screen. -2005-04-11 JUAN-LEON Lahoz Garcia +2007-08-15 Jay Belanger - * wdired.el: Doc fixes. - (wdired-confirm-overwrite): Rename from wdired-is-ok-overwrite. - (wdired-use-dired-vertical-movement): Rename from - wdired-always-move-to-filename-beginning. - (wdired-mode-map): Use `ignore' instead of `wdired-newline'. - (wdired-change-to-wdired-mode): Change mode name. - (wdired-newline): Delete. + * calc/calc-units.el (math-standard-units): Update values. + Put in exact, rational values when possible. + (math-unit-prefixes): Replace floats with powers of ten. + (math-standard-units-systems): Replace floats with integers. + (math-make-unit-string): Remove extra spaces in output. -2005-04-11 Richard M. Stallman +2007-08-15 Glenn Morris - * whitespace.el (whitespace-highlight-the-space): - Don't call whitespace-unhighlight-the-space here. + * mail/undigest.el (rmail-digest-parse-rfc1153sloppy): Be even + sloppier, for the sake of GNU Mailman. + (rmail-digest-rfc1153): Initialize `result' correctly. - * simple.el (undo): Record t in undo-equiv-table - for the redo record made by an undo-in-region. +2007-08-15 Michaël Cadilhac -2005-04-12 Nick Roberts + * mail/emacsbug.el (report-emacs-bug): Put `Bug: emacs-version; ' + in the mail title. Suggested by Reiner Steib. - * progmodes/gdb-ui.el (gdb-display-inferior-io-buffer) - (gdb-frame-inferior-io-buffer): New Functions to control - display of separate IO buffer. - (menu): Add them to menu-bar. - (gdb-display-buffer): Check for buffer another frame. - Protect GUD buffer. - (gdb-setup-windows): Create IO buffer if not already there. - (gdb-memory-mode): Remove purecopy noops. +2007-08-14 Chris Hecker (tiny change) -2005-04-11 Glenn Morris + * calc/calc-aent.el (calc-do-quick-calc): Add binary + representation of integers to the list of outputs. - * progmodes/f90.el (f90-electric-insert): Add optional prefix arg, - and pass to self-insert-command. +2007-08-14 Glenn Morris -2005-04-11 Lute Kamstra + * simple.el (bad-packages-alist): New constant. + (bad-package-check): New function. Together, these two add elements + to `after-load-alist' to check for problematic external packages. + * emulation/cua-base.el: Move CUA-mode check to `bad-packages-alist'. - * generic.el: Commentary section cleanup. - (generic): Delete. - (generic-use-find-file-hook, generic-lines-to-scan) - (generic-find-file-regexp, generic-ignore-files-regexp) - (default-generic-mode, generic-mode-find-file-hook) - (generic-mode-ini-file-find-file-hook): Move to generic-x.el. - * generic-x.el (generic-x): Docstring fix. Put it in the data group. - (generic-use-find-file-hook, generic-lines-to-scan) - (generic-find-file-regexp, generic-ignore-files-regexp) - (default-generic-mode, generic-mode-find-file-hook) - (generic-mode-ini-file-find-file-hook): Move from generic.el. +2007-08-14 Jay Belanger + + * calc/calc-units.el (math-get-standard-units) + (math-get-units, math-make-unit-string) + (math-get-default-units, math-put-default-units): New functions. + (math-default-units-table): New variable. + (calc-convert-units, calc-convert-temperature): Add machinery + to supply default values. + +2007-08-14 Stefan Monnier + + * emulation/tpu-edt.el: Add tpu-extras's autoloads. + (tpu-gold-map, tpu-global-map): Comment-out the bindings to nil. + (tpu-gold-map): Bind F to tpu-cursor-free-mode. + (minibuffer-local-map): Use funkey symbols rather than esc-sequence. + + * emulation/tpu-extras.el: Remove spurious * in docstrings. + Put its autoloads into tpu-edt.el rather than loaddefs.el. + (tpu-cursor-free-mode): Rename from tpu-cursor-free. + Make into a proper minor-mode. + (tpu-backward-char, tpu-next-line, tpu-previous-line) + (tpu-next-end-of-line, tpu-current-end-of-line): Use new name. + (tpu-trim-line-ends-if-needed): Rename from tpu-before-save-hook. + (tpu-set-cursor-free, tpu-set-cursor-bound): + Delegate to tpu-cursor-free-mode. + (tpu-next-line, tpu-previous-line, tpu-forward-line) + (tpu-backward-line, tpu-scroll-window-down, tpu-scroll-window-up): + Use line-move or forward-line instead of next-line-internal. -2005-04-10 Karl Fogel +2007-08-13 Nick Roberts - * bookmark.el (bookmark-write-file): Catch errors writing file. - This is the same change as saveplace.el at 2005-04-10T23:32:00Z!rms@gnu.org. + * progmodes/gdb-ui.el (gdb-send): Handle CTRL-D more carefully. -2005-04-10 Richard M. Stallman +2007-08-12 Richard Stallman - * startup.el (fancy-splash-tail): Update copyright year. - (command-line): Split part of -Q into -D. - (emacs-basic-display): New defvar. - (fancy-splash-text): Correct name of menu item. + * pcvs.el (cvs-reread-cvsrc, cvs-checkout, cvs-mode-checkout) + (cvs-execute-single-file): Use new name split-string-and-unquote. + (cvs-header-msg): Use new name combine-and-quote-strings. - * saveplace.el (save-place-alist-to-file): Catch errors writing file. + * emulation/vi.el (vi-next-line): Ignore return value of line-move. - * info.el (Info-fontify-node): Handle fontification of multiple * Menu - lines in one node. + * progmodes/gud.el (gud-common-init): Use new name + split-string-and-unquote. - * comint.el (comint-send-input): New arg ARTIFICIAL. - Callers in this file changed. + * progmodes/flymake.el (flymake-err-line-patterns): Fix infloop + in javac regexp. - * abbrev.el (define-abbrevs): Read system abbrevs properly. + * pcvs-util.el (cvs-qtypedesc-strings): Use new names + combine-and-quote-strings and split-string-and-unquote. - * emacs-lisp/map-ynp.el (map-y-or-n-p): Clarify RET/q in help message. + * subr.el (combine-and-quote-strings): Rename from strings->string. + (split-string-and-unquote): Rename from string->strings. -2005-04-10 Chong Yidong +2007-08-10 Stefan Monnier - * url/url-ldap.el (url-ldap): Add docstring. Fix call to - `ldap-search-internal'. + * log-view.el (log-view-font-lock-keywords): Use `eval' so as to adapt + to buffer-local settings. -2005-04-10 Stefan Monnier + * emacs-lisp/backquote.el (backquote-delay-process): New function. + (backquote-process): Add internal arg `level'. Use the two to + correctly handle nested backquotes. - * files.el (set-auto-mode-1): Use line-end-position. +2007-08-09 Riccardo Murri - * international/latin-1.el: - * international/latin-2.el: - * international/latin-3.el: - * international/latin-4.el: - * international/latin-5.el: - * international/latin-8.el: - * international/latin-9.el: Give punctuation syntax to NBSP. + * vc-bzr.el (vc-bzr-registered): Use \0 instead of literal NULs. + (vc-bzr-state-words): Add "kind changed" state word. + (vc-bzr-status): New function. Return Bzr idea of file status, + which is different from VC's. + (vc-bzr-state): Use vc-bzr-status. + (vc-workfile-unchanged-p): Use vc-bzr-status. + (vc-bzr-revert): Use synchronous process; expect exitcode 0. + (vc-dired-state): Process "kind changed" state word. - * textmodes/bibtex.el (bibtex-autokey-titleword-ignore) - (bibtex-reference-key, bibtex-autokey-demangle-name, bibtex-mode): - Use char-classes to accept non-ascii letters, accepted in some recent - bibtex implementations. +2007-08-09 Stefan Monnier -2005-04-10 Luc Teirlinck + * vc-hooks.el (vc-default-find-file-not-found-hook): Do nothing. - * custom.el (custom-set-minor-mode): Any non-nil value for the - variable should enable the mode when set through Custom. + * vc-rcs.el (vc-rcs-find-file-not-found-hook): + Move from vc-default-find-file-not-found-hook. -2005-04-10 Stefan Monnier +2007-08-08 Stefan Monnier - * progmodes/vhdl-mode.el (vhdl-mode-map-init): Don't override default - TAB binding so tab-always-indent is obeyed. - (vhdl-minibuffer-local-map): Move initialization into declaration. - (vhdl-mode-abbrev-table-init): Mark the abbrevs as `system'. - (vhdl-run-when-idle, vhdl-create-mode-menu, vhdl-character-to-event) - (vhdl-hooked-abbrev): Avoid test for XEmacs. - (vhdl-current-line): Use line-beginning-position. - (vhdl-doc-variable, vhdl-doc-mode): Call help-setup-xref before - with-output-to-temp-buffer, so the current position can be recorded. + * man.el: Remove spurious * in docstrings. + Merge defvars and toplevel setq-defaults. + (Man-highlight-references0): Limit=nil rather than point-max. + (Man-mode-map): Move initialization into the declaration. + (Man-strip-page-headers, Man-unindent): Use dolist & inhibit-read-only. + (Man-view-header-file): Use expand-file-name rather than concat. + (Man-notify-when-ready, Man-bgproc-sentinel): Use with-current-buffer. -2005-04-10 Masatake YAMATO + * man.el (Man-next-section): Make sure we do not move backward. - * progmodes/compile.el (compilation-error-regexp-alist-alist): - Add regexp for gcov. +2007-08-08 Stefan Monnier -2005-04-06 Katsumi Yamaoka + * files.el (auto-mode-alist): Use the purecopied text (duh!). - * calendar/time-date.el (time-to-seconds, seconds-to-time) - (days-to-time, time-subtract, time-add): Don't use the #xhhhh - syntax which Emacs 20 doesn't support. +2007-08-08 Glenn Morris -2005-04-09 Richard M. Stallman + * Replace `iff' in doc-strings and comments. - * help.el (describe-key-briefly, describe-key): - Replace strings as event types with "(any string)". +2007-08-08 Martin Rudalics -2005-04-09 Stefan Monnier + * dired.el (dired-pop-to-buffer): + * mouse-drag.el (mouse-drag-should-do-col-scrolling): + * calendar/calendar.el (generate-calendar-window): + * progmodes/compile.el (compilation-set-window-height): + * textmodes/two-column.el (2C-two-columns, 2C-merge): + Use window-full-width-p instead of comparing frame-width and + window-width. - * arc-mode.el (archive-mode-map): Move initialization into - the declaration. Override *all* bindings of `undo'. - (archive-lemacs): Remove, use (featurep 'xemacs) instead. + * progmodes/compile.el (compilation-find-buffer): Remove extra + argument in call to compilation-buffer-internal-p. -2005-04-09 Jay Belanger +2007-08-07 Tom Tromey - * calc/calc-units.el (math-standard-units): Redefine Watt hour as W*hr. + * progmodes/tcl.el (tcl-indent-level, tcl-continued-indent-level): + Add safe-local-variable property. -2005-04-09 Dan Nicolaescu +2007-08-07 Chong Yidong - * term/xterm.el (xterm-rgb-convert-to-16bit): Simplify. - (xterm-register-default-colors): Update color values computation - to match xterm-200. + * image-mode.el (image-toggle-display): Use image-refresh. -2005-04-09 Kenichi Handa +2007-08-07 Riccardo Murri - * international/code-pages.el (iso-latin-7): Fix the map. + * vc-bzr.el: Remove comments about vc-bzr.el being a modified + unofficial version. + (vc-bzr-command): Remove redundant setting of process-connection-type. + (vc-bzr-admin-checkout-format-file): Add autoload. + (vc-bzr-root-dir): Remove in favor of vc-bzr-root. + (vc-bzr-root): Switch to implementation of vc-bzr-root-dir. + (vc-bzr-registered): Compare dirstate format tag with known good + value, abort parsing if match fails. Warn user in docstring. + (vc-bzr-workfile-version): Case for different Bzr branch formats. + See bzrlib/branch.py in Bzr sources. + (vc-bzr-diff): First argument FILES may be a string rather than a list. + (vc-bzr-shell-command): Remove in favor of + vc-bzr-command-discarding-stderr. + (vc-bzr-command-discarding-stderr): New function. -2005-04-08 Luc Teirlinck +2007-08-06 Riccardo Murri - * emacs-lisp/lisp.el (defun-prompt-regexp) - (parens-require-spaces, buffer-end, end-of-defun) - (insert-parentheses): Doc fixes. + * vc-bzr.el (vc-bzr-registered): Gracefully handle missing "bzr" + program, and return nil. + (vc-bzr-state): Gracefully handle missing "bzr" program, and return nil. + (vc-bzr-state): Look for path names relative to the repository + root after status keyword. + (vc-bzr-file-name-relative): New function. + (vc-bzr-admin-dirname): Reinstate, as other vc-bzr-admin-... paths + depend on it. + (vc-bzr-admin-dirname, ...-checkout-format-file) + (...-branch-format-file, ...-revhistory): Paths to some Bzr internal + files that we now parse directly for speed. + (vc-bzr-root-dir): Use `vc-bzr-admin-checkout-format-file' as witness. + (vc-bzr-registered): Only parse vc-bzr-admin-dirstate file if it exists. + (vc-bzr-state): "bzr status" successful only if exitcode is 0. + (vc-bzr-root): Use `vc-bzr-shell-command'. Stderr may contain + Bzr warnings, so we must discard it. + (vc-bzr-workfile-version): Speedup counting lines from + `vc-bzr-admin-revhistory' file, but fallback to spawning "bzr revno" + if that file doesn't exist. + (vc-bzr-responsible-p): Use `vc-bzr-root' instead of + `vc-bzr-root-dir' for speed. Add `vc-bzr-admin-dirname' (not ".bzr"!) + to `vc-directory-exclusion-list'. + (vc-bzr-shell-command): New function. -2005-04-08 Kim F. Storm +2007-08-06 Tom Tromey - * comint.el (comint-highlight-prompt): Fix face spec. - * hi-lock.el (hi-green): Likewise. + * diff-mode.el (diff-unified->context, diff-reverse-direction) + (diff-fixup-modifs): Typo in docstring. -2005-04-08 Dan Nicolaescu +2007-08-06 Stefan Monnier - * cus-edit.el (custom-modified-face): - * comint.el (comint-highlight-input): Fix previous changes. - * term.el (term-handle-ansi-escape): Add a comment. + * emulation/tpu-edt.el (tpu-current-line): Use posn-at-point and + count-screen-lines. + (tpu-edt-off): Disable relevant pieces of advice. -2005-04-08 Stefan Monnier + * emulation/tpu-extras.el (tpu-before-save-hook): Rename from + tpu-write-file-hook. Activate it with add-hook on buffer-save-hook. + (newline, newline-and-indent, do-auto-fill): Use advice instead of + redefining the function. + (tpu-set-scroll-margins): Activate the pieces of advice. - * whitespace.el (whitespace-highlight-the-space): Put the same overlay - in the buffer and in whitespace-highlighted-space. - (whitespace-unhighlight-the-space): Simplify. - (whitespace-buffer): Simplify. +2007-08-06 Martin Rudalics -2005-04-08 Dan Nicolaescu + * help.el (resize-temp-buffer-window): Use window-full-width-p + instead of comparing frame-width and window-width. - * textmodes/table.el (table-cell-face): Add special case for - displays supporting a high number of colors. - * progmodes/vhdl-mode.el (vhdl-font-lock-prompt-face) - (vhdl-font-lock-reserved-words-face) - (vhdl-speedbar-architecture-face) - (vhdl-speedbar-instantiation-face) - (vhdl-speedbar-architecture-selected-face) - (vhdl-speedbar-instantiation-selected-face): Likewise. - * progmodes/sh-script.el (sh-heredoc-face): Likewise. - * progmodes/idlw-help.el (idlwave-help-link-face): Likewise. - * progmodes/ebrowse.el (ebrowse-tree-mark-face) - (ebrowse-root-class-face, ebrowse-member-attribute-face) - (ebrowse-progress-face): Likewise. - * progmodes/compile.el (compilation-info-face): Likewise. - * progmodes/cc-fonts.el (c-invalid-face): Likewise. - * emacs-lisp/re-builder.el (reb-match-3): Likewise. - * calendar/calendar.el (diary-face): Likewise. - * woman.el (woman-italic-face, woman-bold-face) - (woman-unknown-face): Likewise. - * wid-edit.el (widget-button-pressed-face): Likewise. - * whitespace.el (whitespace-highlight-face): Likewise. - * smerge-mode.el (smerge-mine-face, smerge-base-face): Likewise. - * pcvs-info.el (cvs-marked-face): Likewise. - * info.el (info-xref): Likewise. - * ido.el (ido-subdir-face, ido-indicator-face): Likewise. - * hilit-chg.el (highlight-changes-face) - (highlight-changes-delete-face): Likewise. - * hi-lock.el (hi-yellow, hi-green, hi-blue-b, hi-green-b) - (hi-red-b): Likewise. - * generic-x.el (show-tabs-tab-face, show-tabs-space-face): Likewise. - * font-lock.el (font-lock-keyword-face) - (font-lock-function-name-face, font-lock-warning-face): Likewise. - * cus-edit.el (custom-invalid-face, custom-modified-face) - (custom-set-face, custom-changed-face, custom-variable-tag-face) - (custom-group-tag-face-1, custom-group-tag-face): Likewise. - * comint.el (comint-highlight-prompt): Likewise. +2007-08-13 Stephen Leake -2005-04-08 Lute Kamstra + * pcvs-parse.el (cvs-parse-table): Handle additional instance of + optional quotes around files in NEED-UPDATE . REMOVED case. - * font-lock.el (font-lock-keywords): Docstring fixes. + * progmodes/ada-xref.el (ada-gnatls-args): Fix docstring. + (ada-treat-cmd-string): Improve error message. + (ada-do-file-completion): Call `ada-require-project-file', so + project variables are set properly. + (ada-prj-find-prj-file): Delete Emacs 20.2 support. + (ada-gnatfind-buffer-name): New constant. + (ada-find-any-references): Use new constant. Set buffer name + properly in compilation-start. Toggle read-only properly. + (ada-find-in-src-path): Fix spelling error in docstring. -2005-04-08 Kenichi Handa + * progmodes/vhdl-mode.el (vhdl-update-progress-info): Avoid divide + by zero error. - * ps-mule.el (ps-mule-show-warning): If the number of unprintable - chars are more than a limit, print " and more..." at the tail. +2007-08-13 Stefan Monnier -2005-04-08 Kim F. Storm + * emacs-lisp/autoload.el (autoload-print-form): Use print-quoted. - * emacs-lisp/authors.el (authors-aliases): Update list. - (authors-ignored-files): New list. - (authors-fixed-entries): Fix typo. - (authors-renamed-files-alist): Update list. - (authors-add): Check authors-ignored-files. +2007-08-12 Richard Stallman -2005-04-08 Carsten Dominik + * progmodes/sh-script.el (sh): Delete group `unix'. - * calendar/diary-lib.el (add-to-diary-list): MARKER argument made - optional, to ensure backward compatibility. + * progmodes/gud.el (gud): Change to group `processes'. -2005-04-08 Stephen Eglen +2007-08-11 Glenn Morris - * textmodes/flyspell.el (flyspell-large-region): Doc fix. + * progmodes/compile.el (compilation-buffer-name): Don't check + compilation-arguments. It is superfluous, and the variable isn't + even set when this function is called. -2005-04-08 Kim F. Storm +2007-08-10 YAMAMOTO Mitsuharu - * buff-menu.el (Buffer-menu-mode-map): Map follow-link to mouse-face. + * term/mac-win.el (mac-ae-reopen-application): New function. + (mac-apple-event-map): Bind "reopen application" Apple event to it. - * mouse.el (mouse-on-link-p): Doc fix. +2007-08-10 Stefan Monnier -2005-04-07 Luc Teirlinck + * textmodes/tex-mode.el (tex-font-lock-unfontify-region): Fix to + take tex-font-script-display into account. + (tex-font-script-display, tex-font-lock-suscript): Change from a cons + cell to a list of 2 elements to simplify the unfontify code. - * ielm.el (ielm-prompt-read-only): Doc fix. +2007-08-08 Vinicius Jose Latorre - * comint.el (comint-prompt-read-only): Doc fix. + * ps-print.el (ps-default-fg, ps-default-bg): Docstring fix. + (ps-begin-job): Use ps-default-fg and ps-default-bg only when + ps-print-color-p is neither nil nor black-white. Reported by Christian + Schlauer . -2005-04-07 Benjamin Rutt +2007-08-08 Andreas Schwab - * ffap.el (ffap-pass-wildcards-to-dired): New user option to - ensure dired always handles wildcards passed to ffap. - (find-file-at-point): Use it. - (ffap-dired-wildcards): Doc fix. + * mail/mailabbrev.el (sendmail-pre-abbrev-expand-hook): Check for + self-insert-command, not self-insert. -2005-04-07 Juri Linkov +2007-08-08 Glenn Morris - * simple.el (next-error-overlay-arrow-position): New defvar. - Put "=>" on its property `overlay-arrow-string'. Add it to - `overlay-arrow-variable-list'. + * emacs-lisp/eldoc.el (eldoc-get-fnsym-args-string): Make second + argument optional, for backwards compatibility, and only highlight + args when present. Fix symbol name typo (doc/args). - * progmodes/compile.el (compilation-setup): - Set `next-error-overlay-arrow-position' to nil. Also set it to - nil in the local hook `kill-buffer-hook'. Make local variable - `overlay-arrow-string' and set it to "=>". - (compilation-goto-locus): Set BOL position to - `next-error-overlay-arrow-position' instead of - `overlay-arrow-position'. + * help-mode.el (help-make-xrefs): Search for symbol constituents, + rather than just `-'. - * info.el (Info-mode): Add `Info-kill-buffer' to `kill-buffer-hook' - locally instead of adding it to the global hook. - (Info-kill-buffer): Move up. +2007-08-07 Jay Belanger -2005-04-06 Dan Nicolaescu + * calc/calc-units.el (calc-convert-temperature): + Use `/' to create fractions. - * term/xterm.el (xterm-standard-colors): Update color values from - xterm-200. +2007-08-07 Michael Albinus -2005-04-06 Stefan Monnier + * net/tramp.el (tramp-wrong-passwd-regexp): Make the regexp more + global matching. + (tramp-handle-shell-command): Handle OUTPUT-BUFFER and + ERROR-BUFFER more robust. Display output. + (tramp-file-name-handler): Add a connection property when we found + a foreign file name handler. This allows backends like ftp to + profit also from usr/host name completion based on connection + cache. + (tramp-send-command-and-read): Search for trash after the regexp + until eol only. In XEmacs, there is a problem with \n. - * textmodes/tex-mode.el (tex-font-lock-keywords-2): Add \bfseries. + * net/tramp-cache.el (top): Read persistent connection history + when cache is empty. - * fast-lock.el: - * lazy-lock.el: Move them to the obsolete subdir. +2007-08-07 Nic Ferrier (tiny change) -2005-04-06 JUAN-LEON Lahoz Garcia + * net/tramp.el (tramp-handle-process-file): Fix bug inserting + resulting output. - * wdired.el (wdired-advise-functions, wdired-add-skip-in-replace) - (wdired-add-replace-advice): Remove. - (wdired-change-to-wdired-mode): Use query-replace-skip-read-only. +2007-08-07 Sam Steingold -2005-04-06 Kim F. Storm + * progmodes/compile.el (compilation-start): Pass nil as startfile + to comint-exec. - * startup.el (command-line): Add --bare-bones alias for -Q. +2007-08-07 Chong Yidong -2005-04-06 YAMAMOTO Mitsuharu + * longlines.el (longlines-decoded): New variable. + (longlines-mode): Avoid encoding or decoding the buffer twice. - * term/mac-win.el: Use create-fontset-from-mac-roman-font to - create the startup fontset if a font specification ends with - `mac-roman'. +2007-08-07 Martin Rudalics -2005-04-06 Lute Kamstra + * format.el (format-insert-file): Make sure that at most one undo + entry is recorded for the insertion. Inhibit point-motion and + modification hooks around call to insert-file-contents. - * add-log.el (change-log-font-lock-keywords): Complete 2005-04-03 - change. +2007-08-07 Stefan Monnier - * emacs-lisp/copyright.el (copyright-update-year): Replace the - right subexpression. Suggested by Jay Bingham . + * vc.el (vc-annotate): Select temp-buffer before running vc-exec-after. + Select the buffer's window before moving point. -2005-04-05 Lute Kamstra +2007-08-07 Richard Stallman - * generic.el (generic-mode-internal): Fix 2005-03-31 change. - (define-generic-mode): Ditto. Fix debug declaration. + * term.el (term): Remove parent group `unix'. - * generic-x.el (show-tabs-tab-face, show-tabs-space-face): - Put them in the generic-x group. + * simple.el (default-indent-new-line): New function. + It calls comment-line-break-function if there are comments. + (do-auto-fill): Use that. - * calendar/timeclock.el (timeclock): Doc fix. +2007-08-07 Sean O'Rourke - * generic.el (define-generic-mode): Don't use custom-current-group. - Document default :group value. - * emacs-lisp/easy-mmode.el (define-minor-mode): Ditto. - (define-global-minor-mode): Don't use custom-current-group. + * complete.el (PC-lisp-complete-symbol): Complete symbol around point. + (PC-do-completion): Add "acronym completion" for symbols and + filenames, so e.g. "mvbl" expands to "make-variable-buffer-local". -2005-04-05 Glenn Morris +2007-08-06 Sam Steingold - * startup.el (command-line-1): Display startup-echo-area-message - when fancy splash screen is in use. + * mouse.el (mouse-buffer-menu): Pass mode-name through + format-mode-line because it may be a list, + e.g., (sgml-xml-mode "XML" "SGML"), and not a string. - * progmodes/sh-script.el (sh-builtins) : Add `caller'. - (sh-escaped-newline): New face. - (sh-font-lock-keywords) : Improve regexp for escaped - newline, and use sh-escaped-newline face. +2007-08-06 Vinicius Jose Latorre - * progmodes/tcl.el (tcl-escaped-newline): New face. - (tcl-builtin-list): New variable. - (tcl-set-font-lock-keywords): Add builtins, variables, and escaped - newlines. Fix keywords subexpression number. + * printing.el (pr-update-menus): Docstring fix. -2005-04-05 Carsten Dominik +2007-08-06 Jason Rumney - * textmodes/org.el (org-diary-default-entry): Fix call to - `add-to-diary-entry'. + * menu-bar.el (menu-bar-vc-filter): Use vc-call-backend. -2005-04-05 Kim F. Storm + * vc-hooks.el (vc-call): Add doc string. - * ediff-init.el: Use (featurep 'xemacs). +2007-08-06 Michael Albinus -2005-04-05 David Ponce + * net/ange-ftp.el (ange-ftp-hook-function): Catch also errors in + process-filter. - * cus-edit.el (face): Derive from symbol widget. Display sample - of the current face on the fly. - (widget-face-sample-face-get, widget-face-notify): New functions. - (widget-face-value-create): Remove. +2007-08-06 Kenichi Handa - * wid-edit.el (widget-field-end): Temporarily remove field - narrowing before to call `get-char-property'. + * international/quail.el: Wrap (require 'help-mode) by + eval-when-compile. + (quail-help-init): New function. + (quail-help): Call quail-help-init. + (quail-store-decode-map-key): Change it to a function. -2005-04-04 Jay Belanger +2007-08-05 Jason Rumney - * calc/calc-aent.el (math-read-replacement-list): Add subscripts. - (math-read-subscripts): New variable. - (math-read-preprocess-string): Process subscripts. + * vc.el (vc-rollback): Add norevert argument back. + (vc-revert-buffer): Add back as obsolete alias. -2005-04-04 Luc Teirlinck +2007-08-05 Peter Povinec (tiny change) - * comint.el (comint-prompt-read-only): Doc fix. + * term.el: Honor term-default-fg-color and term-default-bg-color + settings when modifying term-current-face. + (term-default-fg-color, term-default-bg-color): Initialize from + default term-current-face. + (term-mode, term-reset-terminal): Set term-current-face with + term-default-fg-color and term-default-bg-color. + (term-handle-colors-array): term-current-face has term-default-fg-color + and term-default-bg-color after reset escape sequence. + (term-handle-colors-array): Set term-current-color with + term-default-fg/bg-color instead of ansi-term-color-vector when the + index (term-ansi-current-color or term-ansi-current-bg-color) is zero. - * dired.el (dired-copy-filename-as-kill): Make `-' arg behave like - `-1'. Doc fix. +2007-08-05 Jay Belanger -2005-04-04 Carsten Dominik + * calc/calc-nlfit.el (math-nlfit-curve): Remove unnecessary variables. + (math-nlfit-givens): Let bind free variables. - * textmodes/org.el (org-insert-mode-line-in-empty-file): - Change default value to nil. +2007-08-05 Vinicius Jose Latorre -2005-04-04 Lute Kamstra + * printing.el: Require lpr and ps-print when loading printing package. + Reported by Glenn Morris . - * autorevert.el (auto-revert-mode): Specify :group. - * battery.el (display-battery-mode): Specify :group. - * diff-mode.el (diff-minor-mode): Specify :group. - * font-core.el (font-lock-mode): Specify :group. - * hl-line.el (hl-line-mode): Specify :group. - * iimage.el (iimage): New customization group. - (iimage-mode): Specify :group. - * longlines.el (longlines-mode): Specify :group. - * master.el: Don't require easy-mmode. - (master): New customization group. - (master-mode): Specify :group. - * msb.el (msb-mode): Specify :group. - * reveal.el (reveal-mode): Specify :group. - * simple.el (next-error-follow-minor-mode): Specify :group. - * smerge-mode.el (smerge-mode): Specify :group. - * emacs-lisp/eldoc.el (eldoc-mode): Specify :group. - * emulation/cua-base.el (cua-mode): Specify :group. - * international/encoded-kb.el (encoded-kbd-mode): Specify :group. - * language/thai-util.el (thai-auto-composition-mode) - (thai-word-mode): Specify :group. - * mail/supercite.el (sc-minor-mode): Specify :group. - * progmodes/cwarn.el (cwarn-mode): Specify :group. - * progmodes/flymake.el (flymake-mode): Specify :group. - * progmodes/glasses.el (glasses-mode): Specify :group. - * progmodes/hideif.el (hide-ifdef-mode): Specify :group. - * textmodes/enriched.el (enriched-mode): Specify :group. - * textmodes/refill.el (refill-mode): Specify :group. +2007-08-05 Michael Albinus - * add-log.el (change-log-font-lock-keywords): Names in - parenthesized lists can contain spaces. + * files.el (set-auto-mode): Handle also remote files wrt + `auto-mode-alist'. -2005-04-04 Thien-Thi Nguyen +2007-08-04 Jay Belanger - * startup.el (fancy-splash-text): Shorten default text of - "Emacs Tutorial" line. Also, if the current language env - indicates an available tutorial file other than TUTORIAL, - extract its title and append it to the line in parentheses. - (fancy-splash-insert): If arg is a thunk, funcall it. + * calc/calcalg3.el (calc-curve-fit): Add support for nonlinear + curves and plotting. -2005-04-04 Jay Belanger + * calc/calc-nlfit.el: New file. - * calc/calc.el (calc-language-alist): Add tags to customization type. +2007-08-04 Glenn Morris -2005-04-03 Luc Teirlinck + * autorevert.el (auto-revert-tail-mode): auto-revert-tail-pos is + zero, not nil, when the library is first loaded. Check for a file + that has been modified on disk. - * xt-mouse.el (xterm-mouse-mode): Add explicit Custom group, mouse. - Doc fix. + * progmodes/cperl-mode.el (cperl-compilation-error-regexp-alist): + Remove duplicate defvar preventing initialization. + (cperl-mode): Fix compilation-error-regexp-alist-alist setting. -2005-04-03 Marcelo Toledo +2007-08-03 Stefan Monnier - * add-log.el (change-log-font-lock-keywords): The manual - describing a Change Log entry, says: (...) "Aside from these - header lines, every line in the change log starts with a space or - a tab.". The font-lock was not highlighting lines started with - spaces, added support for it. + * diff-mode.el (diff-font-lock-keywords): Fix up false positives. + (diff-beginning-of-file): Adjust to the fact that diff-file-header-re + may match up to 4 lines. + (diff-beginning-of-file-and-junk): Rewrite. -2005-04-03 Roland Winkler +2007-08-03 Vinicius Jose Latorre - * textmodes/bibtex.el (bibtex-url): Use format to generate the url. - (bibtex-generate-url-list): Update docstring accordingly. Put the - complex example in the docstring. - (bibtex-font-lock-url): Use pop. + * printing.el: Evaluate require only during compilation. + (pr-version): New version 6.9.1. + (deactivate-mark): Replace (defvar VAR nil) by (defvar VAR). + (pr-global-menubar): Fix code. -2005-04-03 Stefan Monnier +2007-08-03 Dan Nicolaescu - * progmodes/tcl.el (tcl-set-font-lock-keywords): Use new \_< ops. + * term.el (term-erase-in-display): Fix case when point is not at + the beginning of the line. - * pcvs.el (cvs-checkout): Prompt for cvsroot as well. +2007-08-03 Jay Belanger -2005-04-03 Glenn Morris + * calc/calc-ext.el (math-get-value, math-get-sdev) + (math-contains-sdev): New functions. - * filesets.el (filesets-set-default): Doc fix. + * calc/calc-graph.el (calc-graph-format-data) + (calc-graph-add-curve): Check for error forms. + (calc-graph-set-styles): Add option for error forms. -2005-04-03 Lute Kamstra +2007-08-03 Miles Bader - * generic.el (define-generic-mode): Add argument to specify - keywords for defcustom. - (default-generic-mode): Specify :group. + * vc-hooks.el (vc-handled-backends): Change capitalization of VC + backend names for new backends to `Git', `Hg', and `Bzr'. + * vc-hg.el (vc-hg-dired-state-info): Use `Hg' as VC backend name, + not `HG'. + * vc-git.el (vc-git-dired-state-info): Use `Git' as VC backend + name, not `GIT'. + * vc-bzr.el (vc-bzr-dir-state, vc-bzr-dired-state-info) + (vc-bzr-unload-hook): Use `Bzr' as VC backend name, not `BZR'. - * generic-x.el: Specify :group for all generic modes. +2007-08-03 Richard Stallman - * desktop.el (desktop-no-desktop-file-hook) - (desktop-after-read-hook): Doc fix. + * mail/rmailsum.el (rmail-make-summary-line): Find end of msg number + to update deleted flag. -2005-04-02 Luc Teirlinck + * cus-edit.el (customize-apropos, customize-apropos-options) + (customize-apropos-faces, customize-apropos-groups): Improve prompt. - * simple.el (visible-mode): Use explicit :group keyword. - This changes the group of `visible-mode-hook' from paren-blinking - to editing-basics. + * menu-bar.el (menu-bar-help-menu): Add "About GNU" menu item. -2005-04-02 Sergey Poznyakoff (tiny change) + * startup.el (fancy-splash-head, startup-echo-area-message): + Change message text. - * mail/rmail.el (rmail-parse-url): Bugfix. Parse traditional - mailbox specifications as well as URLs. - (rmail-insert-inbox-text): Remove unused conditional branches. + * emulation/tpu-edt.el (next-line-internal): Setting deleted. + All callers use line-move. -2005-04-01 Jay Belanger + * progmodes/compile.el (compilation-find-buffer): Return current + buffer immediately if suitable. + (compile, compilation-buffer-name, compilation-start): Doc fixes. - * calc/calc-graph.el (calc-gnuplot-name, calc-gnuplot-plot-command) - (calc-gnuplot-print-command): Move definitions to calc.el. +2007-08-03 Daiki Ueno - * calc/calc-embed.el (calc-embedded-announce-formula) - (calc-embedded-open-formula, calc-embedded-close-formula) - (calc-embedded-open-word, calc-embedded-close-word) - (calc-embedded-open-plain, calc-embedded-close-plain) - (calc-embedded-open-new-formula, calc-embedded-close-new-formula) - (calc-embedded-open-mode, calc-embedded-close-mode): - Move definitions to calc.el. + * faces.el (face-normalize-spec): New function. + (frame-set-background-mode): Normalize face-spec before calling + face-spec-match-p. - * calc/calc.el (calc-settings-file, calc-language-alist): - Make customizable. - (calc-embedded-announce-formula, calc-embedded-open-formula) - (calc-embedded-close-formula, calc-embedded-open-word) - (calc-embedded-close-word, calc-embedded-open-plain) - (calc-embedded-close-plain, calc-embedded-open-new-formula) - (calc-embedded-close-new-formula, calc-embedded-open-mode) - (calc-embedded-close-mode, calc-gnuplot-name) - (calc-gnuplot-plot-command, calc-gnuplot-print-command): Move here - from other files and make customizable. +2007-08-03 Stefan Monnier -2005-04-01 Stefan Monnier + * server.el (server-window): Add switch-to-buffer-other-frame option. - * pcvs.el (cvs-temp-buffer, cvs-mode-kill-process, cvs-buffer-check): - Use buffer-live-p. - (cvs-mode-run): Don't call cvs-update-header here. - (cvs-run-process): Call cvs-update-header. - Use process properties for cvs-postprocess and cvs-buffer so that - the sentinel can behave better if the temp buffer is killed. - Use a pipe rather than a tty, to better handle unexpected prompts. - (cvs-sentinel): Rewrite. Call cvs-update-header. +2007-08-03 Glenn Morris -2005-04-01 Andre Spiegel + * cus-edit.el (customize-apropos): Make the error message indicate + what kind of thing the user was trying to customize. - * vc-hooks.el (vc-workfile-unchanged-p): Disable mtime check when - we go via Tramp or Ange-FTP. Suggested by Kai Grossjohann. + * net/telnet.el (telnet-mode): Set comint-use-prompt-regexp to t. -2005-03-31 Stefan Monnier + * progmodes/fortran.el (fortran-font-lock-syntactic-keywords): + Fix off-by-one error in previous change. - * generic.el (define-generic-mode): Add indentation rule. +2007-08-03 Drew Adams -2005-03-31 Luc Teirlinck + * emacs-lisp/pp.el (pp-eval-expression): Add progress message. + Make buffer writable. - * files.el (mode-require-final-newline): Make Custom correctly - report a nil value and allow to set it to nil via Custom. - Doc fix. +2007-08-01 Jay Belanger -2005-04-01 Kenichi Handa + * calc/calc-math.el (math-sqrt-raw, math-sin-raw-2) + (math-cos-raw-2, math-arctan-raw, math-ln-raw): + Use native Emacs functions, when appropriate. - * international/characters.el: Enable the correct case setting for - dotless-i and dotted-I. +2007-08-01 Dan Nicolaescu + Stefan Monnier -2005-04-01 Kim F. Storm + * vc.el: Document new VC operation `extra-menu'. - * ido.el (ido-file-internal): Fall back to non-ido command if - initial directory is on slow ftp (or tramp) host. + * vc-hooks.el (vc-default-extra-menu): New function. -2005-03-31 Richard M. Stallman + * menu-bar.el (menu-bar-vc-filter): New function. + (menu-bar-tools-menu): Use it as a filter. - * emacs-lisp/autoload.el (make-autoload): - Handle define-global-minor-mode. +2007-08-01 Eric Hanchrow (tiny change) - * emacs-lisp/easy-mmode.el (define-global-minor-mode): - Rename from easy-mmode-define-global-mode. - (easy-mmode-define-global-mode): Alias for define-global-minor-mode. + * ibuf-ext.el (ibuffer-mark-old-buffers): Docstring fix. - * progmodes/scheme.el (scheme-mode-syntax-table): - Update syntax of | and # for two-character comment syntax. +2007-08-01 Glenn Morris + + * progmodes/fortran.el: Remove leading `*' from all defcustom doc + strings. + (fortran-tab-mode-default): Remove needless autoload. + (fortran-tab-mode-string): Add help-echo and mouse properties, and + mark as risky. + (fortran-line-length): New buffer-local variable, safe if integer. + (fortran-if-start-re, fortran-end-prog-re1, fortran-end-prog-re): + Change from variables to constants. + (fortran-font-lock-syntactic-keywords): Delete as a variable, + replace with a new function definition. + (fortran-mode): Use fortran-line-length, and + fortran-font-lock-syntactic-keywords as a function. Add a + hack-local-variables-hook function. + (fortran-line-length, fortran-hack-local-variables): New functions. + (fortran-window-create, fortran-strip-sequence-nos): Doc fix. + Use fortran-line-length rather than 72. + (fortran-window-create-momentarily): Doc fix. + +2007-07-31 Drew Adams (tiny change) -2005-03-31 Lute Kamstra + * cus-edit.el (custom-group-value-create, custom-goto-parent): + Fix parent groups link. - * emacs-lisp/easy-mmode.el (easy-mmode-define-global-mode) - (define-minor-mode): Call custom-current-group at load-time. +2007-07-31 Paul Pogonyshev - * generic.el (define-generic-mode): Add debug declaration. - Add defcustom for the mode hook. - (generic-mode-internal): Use run-mode-hooks. + * progmodes/python.el (python-current-defun): Adjust to never fall + into infinite loop. -2005-03-31 Kim F. Storm +2007-07-31 Stefan Monnier - * mouse.el (mouse-1-click-follows-link): Increase to 450 ms. - (mouse-fixup-help-message): New defun called by show_help_echo - to fixup mouse-2 prefix in help messages when applicable. + * pcvs.el (cvs-vc-command-advice): Handle the new fileset case. - * tooltip.el (tooltip-show-help-function): Don't fixup message here. +2007-07-29 Kimit Yada (tiny change) -2005-03-31 Kenichi Handa + * emacs-lisp/copyright.el (copyright-update-year, copyright-update) + (copyright-fix-years, copyright): Correctly handle the case where + copyright-limit is nil. - * language/thai-word.el (thai-find-word-ends): Pay attention to - the case that we reach the end of buffer. +2007-07-28 Konstantin Novitsky (tiny change) - * textmodes/fill.el (fill-text-properties-at): New function. - (fill-newline): Use fill-text-properties-at instead of - text-properties-at. + * progmodes/python.el (run-python): Fix path separator under w32. -2005-03-31 Olive Lin (tiny change) +2007-07-30 Richard Stallman - * textmodes/tex-mode.el (tex-start-tex): Use shell-quote-argument, - not comint-quote-filename. + * emacs-lisp/lisp-mode.el (emacs-lisp-mode-syntax-table): + Treat non-break space as whitespace in Lisp. -2005-03-31 Thien-Thi Nguyen +2007-07-30 Stefan Monnier - * help-fns.el (help-with-tutorial): Revert last change. + * vc.el (vc-dired-hook): Use inhibit-read-only. -2005-03-31 Kim F. Storm + * progmodes/compile.el (compilation-forget-errors): + Reset compilation-auto-jump-to-next. - * emulation/cua-base.el (cua-scroll-down): Add CUA property. +2007-07-30 Michael Olson -2005-03-30 Paul Eggert + * cus-edit.el (custom-group-save): Fix void function definition + error. Thanks to Zhang Wei for the report. - * calendar/cal-china.el: Update reference to "Calendrical - Calculations" book; there's a new edition. - * calendar/cal-coptic.el: Likewise. - * calendar/cal-french.el: Likewise. - * calendar/cal-hebrew.el: Likewise. - * calendar/cal-islam.el: Likewise. - * calendar/cal-iso.el: Likewise. - * calendar/cal-julian.el: Likewise. - * calendar/cal-mayan.el: Likewise. - * calendar/cal-persia.el: Likewise. - * calendar/calendar.el: Likewise. - * calendar/holidays.el: Likewise. - * calendar/lunar.el: Likewise. - * calendar/solar.el: Likewise. + * ps-print.el: Check in trivial changes to the autoloads section + caused by the build process. These autoloads really ought to be + placed in a separate file, methinks. - * calendar/calendar.el (calendar-day-abbrev-array): Remove trailing - white space from doc string. +2007-07-29 Stefan Monnier -2005-03-30 Jay Belanger + * calendar/calendar.el (calendar-mode): Make sure + displayed-(month|year) are set. + (calendar-basic-setup): Display buffer before adjusting window sizes. + (generate-calendar-window): Use inhibit-read-only. Simplify. + Generate buffer and set displayed-month and displayed-year before + calling update-calendar-mode-line. - * calc/calc-help.el (calc-full-help): Remove email address. +2007-07-29 Michael Albinus -2005-03-30 Thien-Thi Nguyen + * net/tramp.el: + * net/tramp-uu.el: + * net/trampver.el: Use utf-8 encoding with coding cookie. - * help-fns.el (help-with-tutorial): Delete title line. + * net/tramp-cache.el: + * net/tramp-fish.el: + * net/tramp-ftp.el: + * net/tramp-gw.el: + * net/tramp-smb.el: Remove coding cookie. -2005-03-30 Glenn Morris + * net/tramp.el (tramp-handle-verify-visited-file-modtime): + Flush buffer file-name's file property. + (tramp-handle-file-remote-p): The first parameter is FILENAME. - * calendar/cal-x.el (calendar-one-frame-setup) - (calendar-only-one-frame-setup, calendar-two-frame-setup): Use t - rather than `symbol' for set-window-dedicated-p. + * net/trampver.el: Update release number. - * calendar/appt.el (appt-buffer-name): Make it a constant. - (appt-add): Doc fix. +2007-07-29 Juri Linkov - * filesets.el (filesets-menu-path, filesets-menu-before) - (filesets-menu-in-menu): Doc fix. Now valid in GNU Emacs. - (filesets-menu-cache-file): Use directory ~/.emacs.d. - (filesets-add-submenu): Delete and use add-submenu instead. + * dired.el (dired-mode-map): Bind C-x C-q to dired-toggle-read-only. + Filter out menu item "Edit File Names" `wdired-change-to-wdired-mode' + when major-mode is not dired-mode. + (dired-toggle-read-only): New function. + (dired-recursive-deletes): Remove obsolete comments about old + default value. + (dired-do-flagged-delete, dired-do-delete): Refill docstring. -2005-03-30 Carsten Dominik + * wdired.el (wdired-exit): New function. + (wdired-mode-map): Bind C-x C-q to wdired-exit. - * textmodes/org.el (org-agenda-phases-of-moon) - (org-agenda-sunrise-sunset, org-agenda-convert-date) - (org-agenda-goto-calendar): New commands. - (org-diary-default-entry): New function. - (org-get-entries-from-diary): Better parsing of diary entries. - (org-agenda-check-no-diary): New function. - ("diary-lib"): Advice to function `add-to-diary-list', to allow - linking to diary entries. - (org-agenda-execute-calendar-command): New function. - (org-agenda): Improve visible section in window. - Use `org-fit-agenda-window'. - (org-fit-agenda-window): New option. - (org-move-subtree-down): Better handling of empty lines - at end of subtree. - (org-cycle): Numeric prefix is interpreted now as show-subtree N - levels up. - (org-fontify-done-headline): New option. - (org-headline-done-face): New face. - (org-set-font-lock-defaults): Use `org-headline-done-face'. - (org-table-copy-down): Rename from `org-table-copy-from-above'. - When current field is non-empty, it is copied to next row. - (org-table-copy-from-above): Fix bug which made it - impossible to copy fields containing only a single non-white character. +2007-07-28 Stefan Monnier -2005-03-30 Kim F. Storm + * cus-edit.el (customize-read-group): New fun. + (customize-group-other-window, customize-face-other-window): + Prompt before delegating to customize-(group|face). + Bind pop-up-windows rather than use the other-window argument. + (customize-group, customize-face): Prompt from the interactive spec. + Remove args `prompt-for-group' and `other-window'. - * kmacro.el (kmacro-end-macro): Isearch may store this command - into the macro -- so ignore it when executing keyboard macro. + * emacs-lisp/advice.el (ad-interactive-form): Re-introduce. + (ad-body-forms, ad-advised-interactive-form): Revert this part of + last change. -2005-03-30 Nick Roberts +2007-07-28 Masatake YAMATO - * tooltip.el (tooltip-gud-display): Use gud-overlay-arrow-position. + * vc.el (vc-dired-mode): Add a menu for VC related operation. + Use backend name as the menu label. Suggested by David Kastrup. -2005-03-29 Kenichi Handa +2007-07-28 Alan Mackenzie - * language/thai.el ("Thai"): Set setup-function and exit-function - for Thai language environment. + Fix problem with modes derived from CC Mode: + * progmodes/cc-mode.el (c-make-emacs-variables-local): Move this + macro to cc-langs. + (c-init-language-vars-for): Remove call to above macro. + * progmodes/cc-langs.el (c-make-emacs-variables-local): Macro has + been moved to here. + (c-make-init-lang-vars-fun): Call c-make-emacs-variables-local. - * language/thai-util.el: Require thai-word. - (thai-word-mode-map): New variable. - (thai-word-mode): New minor mode. - (setup-thai-language-environment-internal): New function. - (exit-thai-language-environment-internal): New function. +2007-07-28 Eli Zaretskii - * language/thai-word.el (thai-word-table): Declare it by defvar, - use dolist to initialize it. - (thai-kill-word, thai-backward-kill-word, thai-transpose-words) - (thai-fill-find-break-point): New functions. + * net/trampver.el: Fix the `coding' cookie. -2005-03-29 Richard M. Stallman +2007-07-28 Dan Nicolaescu - * simple.el (idle-update-delay): Move definition up. - (set-mark): Doc fix. + * vc-git.el (vc-git-print-log): Support both the old single file + interface and the new one. -2005-03-29 Chong Yidong +2007-07-28 Nick Roberts - * longlines.el: New file. + * bindings.el (mode-line-remote): Use updated %@ construct. - * simple.el (buffer-substring-filters): New variable. - (filter-buffer-substring): New function. - (kill-region, copy-region-as-kill): Use it. +2007-07-27 Stefan Monnier - * register.el (copy-to-register, append-to-register) - (prepend-to-register): Use filter-buffer-substring. + * calendar/cal-bahai.el (calendar-bahai-month-name-array) + (calendar-bahai-epoch, calendar-bahai-leap-year-p) + (calendar-bahai-leap-base, calendar-bahai-prompt-for-date) + (diary-list-bahai-entries, diary-bahai-mark-entries) + (calendar-bahai-mark-date-pattern, diary-insert-bahai-entry) + (diary-bahai-insert-monthly-entry, diary-bahai-insert-yearly-entry): + New names to clean up namespace. + (list-bahai-diary-entries, mark-bahai-diary-entries) + (insert-bahai-diary-entry, insert-monthly-bahai-diary-entry) + (insert-yearly-bahai-diary-entry, mark-bahai-calendar-date-pattern): + Add compatibility aliases. -2005-03-30 Nick Roberts + * calendar/appt.el: Don't wrap defvar within eval-when-compile. - * progmodes/gud.el (gdb): (Re)-initialize gud-filter-pending-text. - (gud-filter-pending-text): Move in front of gdb. - (gud-overlay-arrow-position): New variable. - (gud-sentinel, gud-display-line): Use it in place of - overlay-arrow-position. + * calendar/cal-move.el (calendar-scroll-left, calendar-scroll-right) + (calendar-scroll-left-three-months) + (calendar-scroll-right-three-months): Clean up namespace. + (scroll-calendar-left, scroll-calendar-right) + (scroll-calendar-left-three-months) + (scroll-calendar-right-three-months): Add compatibility aliases. -2005-03-29 Glenn Morris + * calendar/cal-move.el (calendar-scroll-left, calendar-scroll-right): + Behave like mouse-scroll-calendar-* when used from the mouse. - * progmodes/fortran.el (fortran-if-indent): Doc fix. - (fortran-font-lock-keywords-2): Add "where", "elsewhere". - (fortran-font-lock-keywords-4): New variable. - (fortran-blocks-re, fortran-end-block-re) - (fortran-start-block-re): New constants, for hideshow. - (hs-special-modes-alist): Add a Fortran entry. - (fortran-mode-map): Bind fortran-end-of-block, - fortran-beginning-of-block to \M-\C-n, \M-\C-p. - (fortran-mode): Doc fix. Add fortran-font-lock-keywords-4. - (fortran-looking-at-if-then, fortran-end-of-block) - (fortran-beginning-of-block): New functions, for hideshow. + * calendar/cal-menu.el (cal-menu-scroll-menu) + (cal-menu-global-mouse-menu): + * calendar/calendar.el (calendar-mode-map): + Use new calendar-scroll-* names. + (mouse-scroll-calendar-left, mouse-scroll-calendar-right): + Remove. Use calendar-scroll-* directly instead. - * progmodes/f90.el (f90-end-block-re, f90-start-block-re): - Doc fix. Tweak regexp. - (f90-beginning-of-block): Push mark first. +2007-07-26 Stefan Monnier -2005-03-29 Jay Belanger + * emacs-lisp/advice.el (ad-interactive-p, ad-interactive-form): Remove. + (ad-body-forms, ad-advised-interactive-form, ad-make-cache-id) + (ad-make-advised-definition, ad-cache-id-verification-code): + Use commandp and interactive-form instead. - * calc/calc.el: Update copyright date. - (calc-version): Increase to 2.1. - (calc-version-date): Remove. +2007-07-26 Dan Nicolaescu - * calc/calc-help.el: Update copyright date. - (calc-full-help): Remove reference to calc-version-date. - Update copyright date. + * vc-git.el: Relicense to GPLv3 or later. + (vc-directory-exclusion-list, vc-handled-backends): Remove. -2005-03-29 Stefan Monnier + * vc-hooks.el (vc-handled-backends): Add GIT. - * vc.el (vc-do-command): Use a pipe for async processes, so password - prompts don't show up at places where the user can't reply. + * vc.el (vc-directory-exclusion-list): Add .git. -2005-03-29 Olive Lin (tiny change) +2007-07-26 Alexandre Julliard - * textmodes/tex-mode.el (tex-send-command): shell-quote-argument - on the file name we pass to the inferior shell. + * vc-git.el (vc-git-revision-table) + (vc-git-revision-completion-table): New functions. -2005-03-29 Stephan Stahl (tiny change) +2007-07-25 Glenn Morris - * progmodes/which-func.el (which-function): Be robust in the face of an - imenu--make-index-alist failure. + * Relicense all FSF files to GPLv3 or later. -2005-03-29 Stefan Monnier + * COPYING: Switch to GPLv3. - * reveal.el (reveal-mode-map): Don't override C-a and C-e. +2007-07-25 Stefan Monnier - * progmodes/python.el (python-preoutput-filter): Fix last change. + * pcvs.el (cvs-temp-buffer): Undo last ill-conceived change. + Replace it with another one which disables undo before calling + erase-buffer and then turns it back on if needed. -2005-03-29 Lute Kamstra +2007-07-24 Dan Nicolaescu - * emacs-lisp/debug.el (debug-on-entry): Handle autoloaded - functions and compiled macros. - (debug-convert-byte-code): Handle macros too. - (debug-on-entry-1): Don't signal an error when trying to clear a - function that is not set to debug on entry. + * vc-hg.el (vc-hg-revision-completion-table): Temporarily comment out. -2005-03-29 Jay Belanger +2007-07-24 Glenn Morris - * calc/calc-lang.el: Add functions to math-function-table - properties of tex and math. + * calendar/cal-tex.el (cal-tex-holidays, cal-tex-diary) + (cal-tex-rules, cal-tex-buffer, cal-tex-24) + (cal-tex-cursor-month-landscape, cal-tex-cursor-month) + (cal-tex-cursor-week, cal-tex-cursor-week2) + (cal-tex-cursor-week-iso, cal-tex-week-hours) + (cal-tex-cursor-week-monday, cal-tex-weekly4-box) + (cal-tex-cursor-filofax-2week, cal-tex-cursor-filofax-week) + (cal-tex-cursor-filofax-daily, cal-tex-daily-page): Doc fix. -2005-03-29 Kenichi Handa +2007-07-25 Stefan Monnier - * ps-mule.el (ps-mule-plot-string): Translate characters by - ps-print-translation-table. - (ps-mule-begin-job): Call find-charset-region/string with - ps-print-translation-table. - (ps-mule-printable-p): Return t if CHARSET is ascii or latin-iso8859-1. + * calendar/calendar.el (calendar-mode-map): Move initialization + into declaration. Add menu bindings (used to be done in cal-menu). + (calendar-mode): Don't add an activate-menubar-hook. + + * calendar/cal-menu.el: Break dependency on calendar.el (i.e. do not + modify calendar-mode-map), use easy-menu, and make sure that C-h k + can be used on the menu entries. + (cal-menu-holiday-window-suffix, cal-menu-set-date-title): New funs. + (cal-menu-moon-menu, cal-menu-diary-menu, cal-menu-holidays-menu) + (cal-menu-goto-menu, cal-menu-scroll-menu): New consts. + (cal-menu-context-mouse-menu, cal-menu-global-mouse-menu): New menus. + (calendar-flatten, cal-menu-update): Remove. + (calendar-mouse-insert-hebrew-diary-entry) + (calendar-mouse-insert-islamic-diary-entry) + (calendar-mouse-insert-bahai-diary-entry): + Remove (fold into cal-menu-diary-menu). + (calendar-mouse-2-date-menu, calendar-mouse-cal-tex-menu) + (cal-tex-mouse-filofax): Remove (fold into cal-menu-context-mouse-menu). + (calendar-mouse-3-map): Remove (turn into cal-menu-global-mouse-menu). + (calendar-mouse-view-diary-entries): Minor simplifications. + (calendar-event-to-date): Use with-current-buffer. - * ps-print.el (ps-print-translation-table): New variable. - (ps-plot-region): Translate characters by ps-print-translation-table. +2007-07-25 Nick Roberts -2005-03-29 Juri Linkov + * add-log.el (change-log-redate): Remove (not needed anymore and + doesn't appear to work). - * simple.el (next-error-highlight-timer): New variable. +2007-07-25 Stefan Monnier - * progmodes/compile.el (compilation-goto-locus): - Use `next-error-highlight-timer' instead of `sit-for'. + * frame.el: Use mapc and dolist instead of mapcar where possible. + (close-display-connection): New command. -2005-03-28 Stefan Monnier +2007-07-25 Alexandre Julliard - * mail/supercite.el (sc-mail-field): Use assoc-string. - (sc-get-address): Simplify regexps. + * vc-git.el (vc-git-log-view-mode): Port to the multi-file vc interface. + (vc-git-create-snapshot, vc-git-retrieve-snapshot): New functions. - * files.el (minibuffer-with-setup-hook): New macro. - (find-file-read-args): Use it to avoid let-binding - minibuffer-with-setup-hook (which breaks turning on/off - file-name-shadow-mode while in the prompt). +2007-07-25 Vinicius Jose Latorre - * complete.el (PC-read-include-file-name-internal): - Use test-completion. + * ps-print.el (ps-multibyte-buffer): Docstring fix. -2005-03-28 Luc Teirlinck + * ps-mule.el: Doc fix. + (ps-multibyte-buffer, ps-mule-font-info-database-default) + (ps-mule-external-libraries, ps-mule-begin-job): Docstring fix. - * font-lock.el: Bind `font-lock-fontify-block' to M-o M-o. +2007-07-25 Glenn Morris -2005-03-28 Stefan Monnier + * calendar/cal-tex.el (cal-tex-which-days, cal-tex-holidays) + (cal-tex-diary, cal-tex-daily-string, cal-tex-daily-start) + (cal-tex-daily-end, cal-tex-hook) + (cal-tex-cal-one-month, cal-tex-cal-multi-month) + (cal-tex-year, cal-tex-cursor-week, cal-tex-cursor-week2) + (cal-tex-cursor-week-iso, cal-tex-week-hours) + (cal-tex-cursor-week-monday, cal-tex-weekly4-box) + (cal-tex-cursor-day, cal-tex-insert-preamble): Doc fix. + (cal-tex-day-prefix, cal-tex-day-name-format) + (cal-tex-cal-one-month, cal-tex-cal-multi-month, cal-tex-myday) + (cal-tex-caldate, cal-tex-LaTeX-hourbox) + (cal-tex-LaTeX-subst-list): Change from variables to constants. + (cal-tex-preamble, cal-tex-arg, cal-tex-nl): Simplify with `format'. + (cal-tex-cursor-filofax-year, cal-tex-weekly4-box): Use \textbf, + etc, rather than \bf. + (cal-tex-mini-calendar): Fix typos in previous change. + (cal-tex-latexify-list): Remove inner let binding. + (cal-tex-end-document, cal-tex-banner): Use multi-line + cal-tex-comment. + (cal-tex-comment): Handle embedded newlines. + (cal-tex-LaTeXify-string): Use substring-no-properties. + +2007-07-25 Joakim Verona (tiny change) - * window.el (window-buffer-height): Use count-screen-lines. + * progmodes/compile.el (compilation-error-regexp-alist-alist): + Add support for the Maden build tool. - * progmodes/python.el (python-preoutput-leftover): New var. - (python-preoutput-filter): Use it. - (python-send-receive): Loop until all the result has been received. +2007-07-25 William Xu (tiny change) -2005-03-28 Juri Linkov + * net/webjump.el (webjump-url-encode): Fix for non-ASCII characters. - * dired.el (dired-mode-map): Add ellipsis to "Compare directories". +2007-07-24 Stefan Monnier - * menu-bar.el (menu-bar-file-menu): Remove ellipsis from - "Recover Crashed Session". - (menu-bar-search-menu): Add ellipsis to "Search tagged files". - (menu-bar-replace-menu): Add ellipsis to "Replace in tagged files". - (menu-bar-goto-menu): Add ellipsis to "Set Tags File Name". - (menu-bar-goto-menu): Add ellipsis to "Tags Apropos". - (menu-bar-options-menu): Add ellipsis to "Set Font/Fontset". - (menu-bar-manuals-menu): Add ellipsis to "Find Command in Manual". - (menu-bar-manuals-menu): Add ellipsis to "Find Key in Manual". - (menu-bar-help-menu): Remove ellipsis from "Find Emacs Packages". + * pcvs.el (cvs-temp-buffer): Disable undo in temp buffers. - * ediff-hook.el (menu-bar-ediff-misc-menu, ediff-misc-menu): - Remove ellipsis from "Ediff Manual", "Customize Ediff", "List - Ediff Sessions", "Toggle use of separate control buffer frame", - "Use separate frame for Ediff control buffer". +2007-07-24 Dan Nicolaescu - * bookmark.el (menu-bar-bookmark-map): Add ellipsis to "Jump to - Bookmark", "Set Bookmark", "Insert Contents", "Insert Location", - "Rename Bookmark", "Delete Bookmark". + * dired.el (dired-mode-map): Bind wdired-change-to-wdired-mode to + C-x C-q. - * info.el (Info-mode-menu): Remove ellipsis from "Index". - Add ellipsis to "Lookup a String", "Lookup a string in all indices". - Add `:active Info-index-alternatives' to "Next Matching Item". + * vc-git.el (vc-git-print-log): Fix previous change. - * wdired.el (wdired-change-to-wdired-mode): - Mention `wdired-abort-changes' key in the initial message. +2007-07-24 Stefan Monnier - * international/mule.el (auto-coding-alist): Associate non-ascii - image filename extensions with `no-conversion'. + * window.el (save-selected-window): Minor optimization. + (bw-adjust-window): If operation failed, try with a smaller delta. + (window-fixed-size-p): New function. + (window-area-factor): New var. + (balance-windows-area): New command. -2005-03-27 Stefan Monnier + * ps-mule.el (ps-multibyte-buffer): Docstring fixes. + (ps-mule-encode-ethiopic): Make it clear that it's always defined. + (ps-mule-prepare-font-for-components, ps-mule-encode-header-string) + (ps-mule-encode-bit, ps-mule-encode-ucs2): Use dotimes. + (ps-mule-begin-job): Use dolist. - * international/iso-acc.el: - * obsolete/iso-acc.el: Move iso-acc to the obsolete subdir. +2007-07-24 Michael Albinus -2005-03-26 Luc Teirlinck + * subr.el (start-file-process-shell-command) + (process-file-shell-command): New defuns. - * textmodes/sgml-mode.el (html-mode): Doc update. + * progmodes/compile.el (compilation-start): + Apply `start-file-process-shell-command'. - * autorevert.el (auto-revert-check-vc-info): Minor doc fix. +2007-07-24 Alexandre Julliard -2005-03-26 Dan Nicolaescu + * vc-git.el (vc-git-checkout, vc-directory-exclusion-list): Fix typos. - * term.el (term-move-columns): Fix face after extending a line. - (term-insert-spaces): Likewise. - (term-reset-terminal): Fix off by one error. +2007-07-24 Alan Mackenzie -2005-03-26 Eli Zaretskii + * emacs-lisp/bytecomp.el (byte-compile-from-buffer): + Initialise byte-compile-unresolved-functions before rather than + after a compilation. + (byte-compile-unresolved-functions): Amplify doc string. - * international/mule.el (auto-coding-alist): Add .xpi files. +2007-07-24 Glenn Morris - * files.el (auto-mode-alist): Add .xpi files. + * startup.el (normal-splash-screen): Use `emacs-copyright'. -2005-03-26 Jure Cuhalev (tiny change) + * calendar/cal-tex.el (cal-tex-holidays, cal-tex-diary) + (cal-tex-rules, cal-tex-buffer, cal-tex-24) + (cal-tex-cursor-month-landscape, cal-tex-cursor-month) + (cal-tex-cursor-week, cal-tex-cursor-week2) + (cal-tex-cursor-week-iso, cal-tex-week-hours) + (cal-tex-cursor-week-monday, cal-tex-weekly4-box) + (cal-tex-cursor-filofax-2week, cal-tex-cursor-filofax-week) + (cal-tex-cursor-filofax-daily, cal-tex-daily-page): Doc fix. - * textmodes/ispell.el (ispell-dictionary-alist-6): Add slovenian. + * calendar/cal-tex.el: Remove leading `*' from defcustom docs. + (cal-tex-daily-string, cal-tex-daily-start, cal-tex-daily-end) + (cal-tex-day-name-format, cal-tex-cal-one-month) + (cal-tex-cal-multi-month, cal-tex-myday, cal-tex-preamble) + (cal-tex-comment, cal-tex-nl, cal-tex-cmd, cal-tex-e-parbox) + (cal-tex-mini-calendar, cal-tex-em): Doc fix. + (cal-tex-list-holidays, cal-tex-cursor-year) + (cal-tex-cursor-year-landscape, cal-tex-year) + (cal-tex-cursor-filofax-year, cal-tex-cursor-month-landscape) + (cal-tex-cursor-month, cal-tex-insert-days) + (cal-tex-insert-day-names, cal-tex-insert-blank-days) + (cal-tex-first-blank-p, cal-tex-cursor-week) + (cal-tex-cursor-week2, cal-tex-cursor-week-iso) + (cal-tex-week-hours, cal-tex-cursor-week-monday) + (cal-tex-weekly4-box, cal-tex-cursor-filofax-2week) + (cal-tex-cursor-filofax-week, cal-tex-cursor-filofax-daily) + (cal-tex-cursor-day, cal-tex-daily-page, cal-tex-mini-calendar) + (cal-tex-latexify-list, cal-tex-previous-month) + (cal-tex-next-month, cal-tex-insert-preamble): General tidy-up and + modernization, including using dotimes rather than + calendar-for-loop. + (cal-tex-LaTeX-subst-list): Remove `@'. + (cal-tex-em, cal-tex-bf, cal-tex-Huge-bf, cal-tex-large-bf): + Use \textit and \textbf rather than \em and \it. + + * calendar/cal-bahai.el (list-bahai-diary-entries) + * calendar/cal-hebrew.el (list-hebrew-diary-entries) + * calendar/cal-islam.el (list-islamic-diary-entries) + * calendar/calendar.el (generate-calendar, generate-calendar-month) + * calendar/diary-lib.el (diary-list-entries) + (mark-calendar-date-pattern): Use `dotimes' rather than + `calendar-for-loop'. + + * calendar/calendar.el (calendar-for-loop): Doc fix. -2005-03-26 Eli Zaretskii +2007-07-23 Stefan Monnier - * term/bobcat.el: Don't use keyswap.el, since it is now obsolete. + * ses.el (ses-cleanup): Prevent Emacs from spuriously checking if the + underlying file is uptodate. -2005-03-26 Glenn Morris +2007-07-23 Christopher J. Madsen - * calendar/cal-menu.el (top level): Delete local C-down-mouse-3 - binding. Suggested by Stephan Stahl . + * replace.el (perform-replace): Use isearch-no-upper-case-p. - * calendar/cal-move.el (calendar-beginning-of-year): Move the - cursor to Jan 1 when needed. - (calendar-end-of-year): Fix -/+ typo. - Reported by Chong Yidong . +2007-07-23 Stefan Monnier -2005-03-26 Stefan Monnier + * vc-hooks.el (vc-mode-line-map): New const. + (vc-mode-line): Use it. - * progmodes/flymake.el (flymake-mode): Add autoload cookie. +2007-07-23 Alexandre Julliard - * emacs-lisp/debug.el (debugger-record-expression): Add a missing - format to `message'. Inspired by Deepak Goel . + * vc-git.el (vc-git-delete-file, vc-git-rename-file) + (vc-git-unregister): New functions. + (vc-git-find-version): Use the result of ls-files as a parameter + for cat-file. -2005-03-25 Richard M. Stallman +2007-07-23 Michael Albinus - * filesets.el (filesets-init): Add autoload. + * net/tramp.el (tramp-perl-file-attributes) + (tramp-perl-directory-files-and-attributes) + (tramp-handle-file-attributes-with-stat) + (tramp-handle-directory-files-and-attributes-with-stat) + (tramp-convert-file-attributes): Handle huge file sizes. - * mail/mailalias.el (mail-directory): Doc fix. +2007-07-23 Juri Linkov -2005-03-25 Frederik Fouvry + * isearch.el (isearch-message-function): New variable. + (isearch-update, isearch-search): Use it. - * mail/mailalias.el (mail-directory-process): Do nothing if - mail-directory-process is an atom. - (mail-get-names): Ignore mail-directory-names if it is an atom. - (mail-directory-process defvar): Doc fix. - (mail-names): Doc fix. + * simple.el (goto-history-element): New function created from + next-history-element. + (next-history-element): Most code moved to goto-history-element. + Call goto-history-element with (- minibuffer-history-position n). + (previous-history-element): Call goto-history-element with (+ + minibuffer-history-position n). + (minibuffer-setup-hook): Add minibuffer-history-isearch-setup. + (minibuffer-history-isearch-message-overlay): New buffer-local variable. + (minibuffer-history-isearch-setup, minibuffer-history-isearch-end) + (minibuffer-history-isearch-search, minibuffer-history-isearch-message) + (minibuffer-history-isearch-wrap, minibuffer-history-isearch-push-state) + (minibuffer-history-isearch-pop-state): New functions. -2005-03-25 Johan Bockg,Ae(Brd (tiny change) +2007-07-23 Thien-Thi Nguyen - * textmodes/flyspell.el (mail-mode-flyspell-verify): Fix regexp syntax. + * vc-hooks.el (vc-stay-local-p): Fix bug: Avoid remove-if-not. + Also, if FILE is a list, return non-nil if any of its elements + should stay local. Update docstring. -2005-03-26 Kenichi Handa +2007-07-23 Stefan Monnier - * international/mule-util.el (detect-coding-with-priority): - Call update-coding-systems-internal before detect-coding-region. - -2005-03-26 Nick Roberts - - * progmodes/gdb-ui.el (gdb-breakpoints-mode-map) - (gdb-frames-mode-map): Add follow-link property. - -2005-03-25 Jay Belanger - - * calc/calcalg2.el (calc-solve-for): Use "Variable(s)" to prompt - for variables. - -2005-03-25 Juri Linkov - - * image-mode.el: Optimize image filename extension regexps in - autoload cookies. Associate .x[bp]m with `image-mode-maybe' - in `auto-mode-alist'. - (image-mode): Add `image-toggle-display-text' to local hook - `change-major-mode-hook'. Display the image as an image by - default. Set `cursor-type' and `truncate-lines' if the image - is already displayed. Take into account the current mode (image - or text) in message. - (image-minor-mode): New minor mode. - (image-mode-maybe, image-toggle-display-text): New functions. - (image-toggle-display): Use called-interactively-p. - Let-bind `inhibit-read-only' to t. - - * image-mode.el (image-minor-mode): Set `cursor-type' and - `truncate-lines' if the image is already displayed. Add turning - image-minor-mode off to `change-major-mode-hook'. Add message. - Call `image-toggle-display-text' after turning image-minor-mode off. - -2005-03-25 Stefan Monnier - - * international/mule-cmds.el (set-locale-environment): For Mac OS X's - Terminal.app, use utf-8. - (set-display-table-and-terminal-coding-system): Add coding-system arg. - (set-locale-environment): Use it. + * emacs-lisp/copyright.el (copyright-update-year): Fix 2007-05-25 + change by reverting a small part. - * term/xterm.el: Undo last change, better done in mule-cmds.el. +2007-07-23 Richard Stallman - * emacs-lisp/rx.el (rx-constituents): Add symbol-start and symbol-end. + * progmodes/octave-inf.el (inferior-octave-prompt): Accept .exe. - * progmodes/python.el (python-close-block-statement-p) - (python-outdent-p, python-current-defun): Use symbol-end. +2007-07-23 Dan Nicolaescu -2005-03-25 Karl Chen - - * files.el (save-some-buffers): Doc fix. - -2005-03-25 Werner Lemberg - - * complete.el, thumbs.el: Replace `legal' with `valid'. - * calendar/calendar.el: Replace `legal' with `valid'. - * emacs-lisp/advice.el: Replace `legal' with `valid'. - * mail/supercite.el: Replace `legal' with `valid'. - * progmodes/cperl-mode.el, progmodes/idlw-shell.el - * progmodes/idlwave.el, progmodes/vhdl-mode.el: - Replace `legal' with `valid'. - * textmodes/reftex-vars.el, textmodes/reftex.el: - Replace `legal' with `valid'. - -2005-03-25 Werner Lemberg - - * calc/calc-forms.el, calc/calc-sel.el - * midnight.el, vc-cvs.el - * emacs-lisp/cl-macs.el - * emulation/vip.el - * eshell/esh-io.el, eshell/esh-var.el - * mail/supercite.el - * progmodes/ebnf-abn.el, progmodes/ebnf-bnf.el - * progmodes/ebnf-ebx.el, progmodes/ebnf-dtd.el, progmodes/ebnf-iso.el - * progmodes/ebnf-yac.el, progmodes/ebnf2ps.el, progmodes/idlwave.el - * progmodes/sh-script.el, progmodes/xscheme.el - * textmodes/refbib.el, textmodes/refer.el, textmodes/reftex-cite.el - * textmodes/reftex-index.el, textmodes/reftex-parse.el - * textmodes/reftex-ref.el, textmodes/reftex-vars.el - * textmodes/reftex.el, textmodes/org.el: - Replace `illegal' with `invalid'. + * vc-git.el (vc-git-checkin): Delete unused parameter and the code + handling it. Use vc-git-command. + (vc-git-find-version, vc-git-diff-tree): New functions. + (vc-git-revert): Use vc-git-command. + (vc-git--run-command): Delete. -2005-03-24 Stefan Monnier +2007-07-23 Alexandre Julliard - * progmodes/flymake.el (flymake-get-file-name-mode-and-masks) - (flymake-find-buildfile, flymake-find-possible-master-files) - (flymake-check-include, flymake-parse-line): Replace loops over the - length of lists, by loops over lists, to remove silly O(n,A2(B) behavior. - - * progmodes/flymake.el (flymake-ensure-ends-with-slash): Remove. - Substitute file-name-as-directory in the rest of the file. - (flymake-get-common-file-prefix): Rewrite, using compare-strings. - (flymake-replace-region): Remove unused arg `buffer'. - (flymake-check-patch-master-file-buffer): Update calls to it. - (flymake-add-err-info): Remove unused var `count'. - (flymake-mode): Use define-minor-mode. - - * progmodes/flymake.el: Use with-current-buffer. - (flymake-float-time, flymake-get-temp-dir, flymake-line-end-position) - flymake-replace-regexp-in-string, flymake-line-beginning-position) - (flymake-popup-menu, flymake-current-row, flymake-selected-frame): - Avoid testing for `xemacs'. - (flymake-nop): Move. - (flymake-region-has-flymake-overlays): Return the computed value. - (flymake-reformat-err-line-patterns-from-compile-el): Use dolist. - Remove unused var `endline'. - (flymake-get-line-count): Remove unused function. - (flymake-display-err-menu-for-current-line): Unused var move-mouse-pos. - - * emulation/vi.el: - * generic.el: - * hilit-chg.el (global-highlight-changes): - * hi-lock.el (hi-lock-mode): - * follow.el: find-file-hooks -> find-file-hook. - - * comint.el (comint-insert-input): Obey mouse-yank-at-point. - -2005-03-24 Juri Linkov - - * dired.el (dired-mode-map): Add menu item "Compare directories" - for dired-compare-directories. - - * dired-aux.el (dired-compare-directories): Add autoload cookie. - Doc fix. Replace `read-file-name' with `read-directory-name'. - -2005-03-24 Stefan Monnier - - * term/xterm.el: If running in Terminal.app set coding-system to utf-8. + * vc-git.el (vc-git-workfile-unchanged-p): Update comment. -2005-03-24 Jay Belanger +2007-07-20 Kenichi Handa - * calc/calc-embed.el (calc-embedded-mode-change): Save all - relevant mode settings in calc-embedded-original-modes when modes - are permanently changed. + * international/utf-8.el (utf-8-post-read-conversion): + Temporarily bind utf-8-compose-scripts to nil while running + *-compose-region functions. -2005-03-24 Stefan Monnier +2007-07-23 Dan Nicolaescu - * autoinsert.el: find-file-hooks -> find-file-hook. + * vc-git.el: Update status. + (vc-directory-exclusion-list): Use eval-after-load. -2005-03-24 Lute Kamstra +2007-07-22 Nick Roberts - * generic.el (generic-font-lock-defaults): Make it obsolete. - (generic-font-lock-keywords): New variable to replace - generic-font-lock-defaults. - (generic-mode-set-font-lock): Delete it. - (generic-mode-internal): Don't call generic-mode-set-font-lock. - (generic-bracket-support): Add docstring. + * bindings.el (mode-line-remote): New variable. + (help-echo): Add to default values of mode-line-format. - * generic-x.el: Rename generic-font-lock-defaults to - generic-font-lock-keywords throughout. - (mailagent-rules-setup-function): Delete it. - (mailagent-rules-generic-mode): Use anonymous function instead. - (show-tabs-generic-mode-font-lock-defaults-1) - (show-tabs-generic-mode-font-lock-defaults-2): Make them constants. - Quote faces. - (show-tabs-tab-face, show-tabs-space-face): Specify background, - not foreground. + * files.el: Mark mode-line-remote as risky. - * emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): - Recognize define-generic-mode. +2007-07-22 Juri Linkov -2005-03-23 Stefan Monnier + * isearch.el (isearch-edit-string): Save old point and + isearch-other-end to old-point and old-other-end before reading + the search string from minibuffer. After exiting minibuffer set + point to old-other-end if point and the search direction is the + same as before reading the search string. + (isearch-del-char): Don't set isearch-yank-flag to t. Put point + to isearch-other-end. Instead of isearch-search-and-update call + three functions isearch-search, isearch-push-state and isearch-update. - * icomplete.el (icomplete-simple-completing-p): Don't turn on icomplete - if there's no completion table. +2007-07-22 Dan Nicolaescu -2005-03-23 Miles Bader + * vc-git.el (vc-git-register, vc-git-checkin): Use vc-git-command, + deal with multiple file arguments. + (vc-git-print-log): Deal with multiple file arguments. - * progmodes/gdb-ui.el (breakpoint-enabled, breakpoint-disabled): - Remove tty-specific variants, as they're no longer needed. +2007-07-22 Stefan Monnier -2005-03-23 Lute Kamstra + * diff-mode.el (diff-refine-ignore-spaces-hunk): Rename from + diff-refine-hunk. Adjust users. + (diff-unified-hunk-p, diff-splittable-p): New functions. + (diff-mode-menu): Use it to disable Split when it doesn't work. - * generic-x.el: Code cleanup: make args constant whenever possible. - (installshield-statement-keyword-list) - (installshield-system-functions-list) - (installshield-system-variables-list, installshield-types-list) - (installshield-funarg-constants-list): Make them constants. +2007-07-22 Dan Nicolaescu - * generic.el (generic-make-keywords-list): Add autoload cookie. + * diff-mode.el (diff-mode-menu): New entries. - * calendar/time-date.el: Add comment on time value formats. - Don't require parse-time. - (with-decoded-time-value): New macro. - (encode-time-value): New function. - (time-to-seconds, time-less-p, time-subtract, time-add): Use them. - (days-to-time): Return a valid time value when arg is huge. - (time-since): Use time-subtract. - (time-to-number-of-days): Use time-to-seconds. +2007-07-22 Stefan Monnier -2005-03-23 David Ponce + * diff-mode.el (diff-unified->context): Use the new `apply' undo entry + if applicable, so as to save undo-log space. - * recentf.el (recentf-keep): New option. - (recentf-menu-action): Default to `find-file'. - (recentf-keep-non-readable-files-flag) - (recentf-keep-non-readable-files-p) - (recentf-file-readable-p, recentf-find-file) - (recentf-cleanup-remote): Remove. - (recentf-include-p): More robust. - (recentf-keep-p): New function. - (recentf-remove-if-non-kept): Rename from - `recentf-remove-if-non-readable'. Use `recentf-keep-p'. - All callers updated. - (recentf-menu-items-for-commands): Fix help string. - (recentf-track-closed-file): Update. Doc fix. - (recentf-cleanup): Update. Count removed files. Doc fix. + * diff-mode.el (diff-find-file-name): Add arg `batch'. -2005-03-23 Kim F. Storm + * diff-mode.el (diff-beginning-of-file-and-junk): New function. + (diff-file-kill): Use it. + (diff-beginning-of-hunk): Add arg `try-harder' using it. + (diff-restrict-view, diff-find-source-location, diff-refine-hunk): + Use it so they find the hunk even when we're in the file header. - * progmodes/gdb-ui.el (breakpoint-enabled, breakpoint-disabled): - Don't inherit from fringe face (now happens automatically). +2007-07-22 Dan Nicolaescu -2005-03-22 Kim F. Storm + * vc-git.el (vc-git-revision-granularity, vc-git-root) + (vc-git-command, vc-git-dir-state, vc-git-dired-state-info) + (vc-git-create-repo): New functions. + (vc-git-registered): New autoloaded function definition. + (vc-git-registered): Use vc-git-root. + (vc-git-responsible-p): New defalias. + (vc-git-annotate-extract-revision-at-line): Uncomment. + (vc-git-print-log): Add the file name to the log. + (vc-git-log-view-mode): New derived mode. + (vc-git-diff, vc-git-annotate-command): Use vc-git-command. - * tooltip.el (tooltip-show-help-function): Ignore negative mouse - position values. +2007-07-22 Michael Albinus -2005-03-22 Stefan Monnier + * progmodes/grep.el (grep-compute-defaults): Keep default values. - * menu-bar.el (showhide-date-time): Remove. - (menu-bar-showhide-menu): Use menu-bar-make-mm-toggle. - (menu-bar-make-mm-toggle): Simplify. +2007-07-22 Ralf Angeli -2005-03-22 JUAN-LEON Lahoz Garcia + * textmodes/reftex.el (reftex-access-parse-file): Create parse + file in a way that does not interfere with recentf mode. + (reftex-access-parse-file): Do not risk destroying an existing + buffer. - * progmodes/perl-mode.el (perl-font-lock-keywords-2): - Accept qualified variable and function names. +2007-07-22 Alexandre Julliard -2005-03-22 Thien-Thi Nguyen + * vc-git.el: New file. - * bindings.el (completion-ignored-extensions): - Remove ".lis" for `vax-vms'. +2007-07-22 Stefan Monnier -2005-03-22 Andreas Schwab + * textmodes/tex-mode.el (tex-font-script-display): Change default. - * generic-x.el: Revert last change. - * ldefs-boot.el: Update. +2007-07-22 Dan Nicolaescu -2005-03-22 Jay Belanger + * vc-cvs.el (vc-cvs-mode-line-string): Add support for tooltips + for branches and new files. - * calc/calc-embed.el (calc-embedded-original-modes): New variable. - (calc-embedded-save-original-modes) - (calc-embedded-restore-original-modes): New functions. - (calc-do-embedded): Save original modes when entering embedded mode - and restore when leaving embedded mode. - (calc-embedded-modes-change): Change the value of - calc-embedded-original-modes to reflect permanent changes. + * vc-hooks.el (vc-default-mode-line-string): Move mouse-face and + local-map handling ... + (vc-mode-line): ... here. Improve handling of help-echo. -2005-03-22 Lute Kamstra + * vc.el (mode-line-string): Document help-echo usage. - * generic-x.el: Require generic again. +2007-07-22 Michael Albinus -2005-03-22 Miles Bader + Sync with Tramp 2.1.10. - * progmodes/gdb-ui.el (breakpoint-enabled, breakpoint-disabled): - Tweak details to look good on both ttys and bitmap displays, light - or dark background, etc. + * net/tramp.el (tramp-get-ls-command): Fix typo. -2005-03-21 Kim F. Storm + * net/trampver.el: Update release number. - * tooltip.el (tooltip-show-help-function): Check car and cdr of - mouse position. +2007-07-22 Jan Djärv -2005-03-21 Stefan Monnier + * startup.el (command-line-x-option-alist): Use x-handle-no-bitmap-icon. - * icomplete.el: Don't forcibly turn on the mode upon load. - (icomplete-mode): Use define-minor-mode. - (icomplete-eoinput): Default to nil. - (icomplete-minibuffer-setup): Remove autoload. - (icomplete-tidy): Simplify. - (icomplete-exhibit): Use buffer-undo-list to determine if we're still - in the initial state or if the user has modified the field. - Fix handling of icomplete-max-delay-chars. - Remove code that handles the oddball case where - minibuffer-completion-table is an integer. - Wrap icomplete-completions in while-no-input in case building - completions takes more time than expected. - (icomplete-completions): Simplify. + * term/x-win.el (x-handle-no-bitmap-icon): New function. -2005-03-21 Richard M. Stallman +2007-07-22 Martin Rudalics - * jka-compr.el (jka-compr-really-do-compress): - Make variable buffer-local. + * add-log.el (change-log-fill-parenthesized-list): New function. + (change-log-indent): Call change-log-fill-parenthesized-list. + (change-log-fill-paragraph): Bind fill-indent-according-to-mode to t. + Have lines with leading asterisk start a paragraph. - * image-mode.el: Handle .xpm files too. - (image-toggle-display): Preserve modification flag. +2007-07-21 Jay Belanger - * help.el (where-is): Don't mention aliases with no key bindings. + * calc/calc-math.el (math-emacs-precision) + (math-largest-emacs-expt, math-smallest-emacs-expt): + New variables. + (math-use-emacs-fn): New function. + (math-exp-raw): Evaluate with `math-use-emacs-fn', when + appropriate. -2005-03-21 Lute Kamstra +2007-07-21 Thien-Thi Nguyen - * generic.el: Fix commentary section. Don't require cl for - compilation. - (generic-mode-list): Add autoload cookie. - (generic-use-find-file-hook, generic-lines-to-scan) - (generic-find-file-regexp, generic-ignore-files-regexp) - (generic-mode, generic-mode-find-file-hook) - (generic-mode-ini-file-find-file-hook): Fix docstrings. - (define-generic-mode): Make it a defmacro. Fix docstring. - (generic-mode-internal): Code cleanup. Add autoload cookie. - (generic-mode-set-comments): Code cleanup. - * generic-x.el: Don't prevent compilation. Don't require generic. - Follow coding conventions. Minor code cleanup. - (etc-fstab-generic-mode): Add some keywords. - * font-lock.el (lisp-font-lock-keywords-1): Font lock a call to - define-generic-mode like a function declaration. + * image-dired.el (image-dired-sane-db-file): New func. + (image-dired-write-tags, image-dired-remove-tag) + (image-dired-list-tags, image-dired-write-comments) + (image-dired-get-comment, image-dired-mark-tagged-files) + (image-dired-create-gallery-lists): Call new func. + Reported by Dieter Wilhelm . -2005-03-21 Jay Belanger +2007-07-21 Dan Nicolaescu - * calc/calc-embed.el (calc-do-embedded): Put data on stack before - changing modes. + * vc-hg.el (vc-hg-dir-state): Fix loop. + (vc-hg-print-log): Fix expected return value for vc-hg-command. + (vc-hg-next-version, vc-hg-delete-file, vc-hg-rename-file) + (vc-hg-register, vc-hg-create-repo, vc-hg-checkin) + (vc-hg-revert): Likewise. + (vc-hg-revision-table, vc-hg-revision-completion-table): New + functions. -2005-03-21 Sam Steingold +2007-07-20 Stefan Monnier - * add-log.el (add-log-current-defun): Support more C DEFUN forms. + * add-log.el (change-log-resolve-conflict): Don't lose data if the + merge fails. -2005-03-21 Thien-Thi Nguyen +2007-07-20 Dan Nicolaescu - * progmodes/dcl-mode.el (dcl-font-lock-keywords): - Add underscore to "f$ lexicals" regexp. + * progmodes/compile.el (compilation-auto-jump-to-first-error): + Add group and version. -2005-03-20 Juri Linkov +2007-07-20 Stefan Monnier - * subr.el (progress-reporter-do-update): When `min-value' is equal - to `max-value', set `percentage' to 0 and prevent division by zero. + * add-log.el (add-log-file-name): Use file-relative-name. + (add-change-log-entry): Delay reading + add-log-(full-name|mailing-address) to after we've switched to the + ChangeLog buffer so we get the right value. + (add-change-log-entry, add-log-current-defun, change-log-merge): + Use derived-mode-p rather than checking major-mode directly. -2005-03-20 Michael Albinus + * pcvs.el (cvs-mode-add-change-log-entry-other-window): Use a directory + name for buffer-file-name if it refers to a directory. - Sync with Tramp 2.0.48. + * vc-arch.el (vc-arch-diff): Fix last change. - * net/tramp.el (all): Change all addresses to .gnu.org. - (tramp-append-tramp-buffers): New defun. - (tramp-bug): Apply `tramp-append-tramp-buffers' as post-hook. - Catch `dont-send' signal. - (tramp-set-auto-save-file-modes): Set always permissions, because - there might be an old auto-saved file belonging to another - original file. This could be a security threat. Reported by - Kjetil Kjernsmo . - Check for Emacs 21.3.50 removed. + * progmodes/compile.el (compilation-start): Remember the original + directory in a buffer-local compilation-directory. + (compile): Set the global value of compilation-directory. + (recompile): Use compilation-directory even in the compilation buffer. - * net/tramp-smb.el (all): Remove debug construct for - `with-parsed-tramp-file-name'. - (tramp-smb-prompt): Prompt can contain spaces inside directory names. - (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file): - No error message if DIRECTORY or FILENAME doesn't exist. - (tramp-smb-open-connection): Check existence of - `tramp-smb-program'. +2007-07-20 Dan Nicolaescu -2005-03-20 Stefan Monnier + * vc-hg.el (vc-hg-diff): Use vc-hg-command. - * progmodes/perl-mode.el (perl-font-lock-syntactic-face-function): - Properly handle the case where the `m' or `s' command's argument is not - yet terminated. - (perl-indent-new-calculate): New function. - (perl-indent-line): Use it. +2007-07-20 Vinicius Jose Latorre -2005-03-20 Miles Bader + * ps-print.el: Problem with foreground and background color when + printing a buffer with and without faces. Reported by Christian + Schlauer . + (ps-print-version): New version 6.7.5. + (ps-default-fg): Change default value to nil, so black color is used + when a face does not specify a foreground color. + (ps-default-bg): Change default value to nil, so white color is used + for background color. + (ps-begin-job): Fix code. - * progmodes/gdb-ui.el (gdb-put-breakpoint-icon): Use breakpoint faces - in text-mode too. Change to new face names. - (breakpoint-enabled): Rename from `breakpoint-enabled-bitmap-face'. - Add `:weight bold' attribute. - (breakpoint-disabled): Rename from `breakpoint-disabled-bitmap-face'. +2007-07-20 Eli Zaretskii -2005-03-19 Juri Linkov + * makefile.w32-in (install-lisp-SH): Don't create subdirectories + in $(INSTALL_DIR)/lisp/ if they already exist. - * files.el (auto-mode-alist): Add comment. Optimize jar/ear/war. +2007-07-20 Dhruva Krishnamurthy (tiny change) - * international/mule.el (auto-coding-alist): Sync with - `auto-mode-alist' by adding upper case archive file extensions - and adding ear/war to jar extension. + * makefile.w32-in (install-lisp-CMD): Don't create subdirectories + in $(INSTALL_DIR)/lisp/ if they already exist. -2005-03-19 David Casperson (tiny change) +2007-07-20 Stefan Monnier - * textmodes/tex-mode.el (tex-view): If tex-shell process is not - running, restart it. + * progmodes/vera-mode.el (vera-re-search-forward) + (vera-re-search-backward): Remove use of store-match-data. + (vera-mode-map): Move initialization into declaration. -2005-03-19 Yoichi NAKAYAMA (tiny changes) + * progmodes/flymake.el (flymake-buildfile-dirs): Remove. + (flymake-find-buildfile): Use locate-dominating-file. - * finder.el (finder-current-item): Throw an error on an empty line. + * vc.el (vc-delistify): Use mapconcat. + (vc-do-command): Minor simplification. + (vc-expand-dirs): Use push. - * man.el (Man-follow-manual-reference): If current-word returns - nil, use "". + * vc-mcvs.el (vc-mcvs-create-repo): + * vc-cvs.el (vc-cvs-create-repo): Remove. -2005-03-19 Matt Hodges + * vc-hooks.el (vc-find-root): Fix case where `file' is the current + directory and the root as well. - * simple.el (goto-line): Doc fix. +2007-07-20 Dan Nicolaescu -2005-03-19 Aaron S. Hawley + * vc-hooks.el (vc-default-workfile-unchanged-p): Pass a list + instead of a file. - * files.el (save-buffer): Doc fix. + * vc-hg.el (vc-hg-print-log): Deal with multiple file arguments. + (vc-hg-registered): Replace if with when. + (vc-hg-state): Deal with nonexistent files and handle removed files. + (vc-hg-dir-state, vc-hg-dired-state-info): New functions. + (vc-hg-checkout): Re-enable. + (vc-hg-create-repo): Fix typos. + (vc-hg-print-log): Fix for multiple files. + (vc-hg-workfile-unchanged-p): New function. -2005-03-19 Michael R. Mauger + * vc.el: Fix typo. + (vc-print-log): Fix call to print-log. + (vc-default-comment-history): Likewise. + (vc-directory-exclusion-list): Add .hg and .bzr. + (vc-diff-internal): Pass a list instead of a file. - * recentf.el (recentf-cleanup-remote): New variable. - (recentf-cleanup): Use it to conditionally check availability of - remote files. + * vc-mcvs.el (vc-mcvs-create-repo): Fix typos. -2005-03-19 Joe Edmonds (tiny change) + * vc-bzr.el (vc-bzr-create-repo): New function. - * emacs-lisp/lisp-mode.el (lisp-mode-variables): Recognize `@' in - function names. +2007-07-19 Stefan Monnier -2005-03-19 Eli Zaretskii + * vc-hooks.el (vc-find-root): Walk up the tree to find an existing + `file' from which to start the search. - * language/thai-word.el: New file. +2007-07-19 Eric S. Raymond -2005-03-19 JUAN-LEON Lahoz Garcia + * vc-cvs.el (vc-cvs-checkin, vc-cvs-diff): Finish transition from + having a single file argument to having a list of files as the + first argument. - * files.el (backup-buffer): If the file's directory is not - writable, use copy instead of move to backup the file. +2007-07-19 Stefan Monnier -2005-03-19 Eli Zaretskii + * files.el (locate-dominating-file): New function. - * obsolete/keyswap.el: Moved to obsolete/ from term/. +2007-07-18 Michael Albinus -2005-03-19 Vinicius Jose Latorre + * progmodes/grep.el (grep-host-defaults-alist): New defvar. + (grep-compute-defaults): Use it. - * ps-print.el (ps-generate-string-list, ps-generate-header-line): - Use functionp instead of symbolp and fboundp. Reported by Drkm - . - (ps-print-version): New version 6.6.6. +2007-07-18 Stefan Monnier -2005-03-18 Tak Ota + * uniquify.el: Docstring fixes. - * textmodes/table.el (table--line-column-position): New idiom. - (table--row-column-insertion-point-p): New function to test - validity of row and column insertion operation at a location. - (table-global-menu, table-cell-menu): Use above functions for - deterministic test operation. - (table--editable-cell-p): Behave in deterministic fashion. +2007-07-18 Eric S. Raymond -2005-03-18 Juri Linkov + * vc.el (revision-granularity, create-repo): Document new vc + backend properties. + (vc-rollback): Renamed from vc-cancel-version. Update references. + Pass a list instead of a file. + (vc-revert): Renamed from vc-revert-buffer. Update references. + (vc-delistify, vc-expand-dirs): New functions. + (vc-do-command): Rename FILE to FILE-OR-LIST and deal with a list + of files instead of a single file. + (vc-position-context, vc-resync-window, vc-diff-internal) + (vc-print-log): Pass a list instead of a file. - * isearch.el (isearch-lazy-highlight-new-loop): - Make arguments beg and end optional. - (isearch-update): Remove optional arguments nil from - isearch-lazy-highlight-new-loop. - (isearch-lazy-highlight-search): Let-bind case-fold-search to - isearch-lazy-highlight-case-fold-search instead of - isearch-case-fold-search, and let-bind isearch-regexp to - isearch-lazy-highlight-regexp. - Use isearch-lazy-highlight-last-string instead of isearch-string. + * vc-hooks.el (vc-stay-local-p, vc-backend) + (vc-backend-subdirectory-name): Work on a file list, not a single + file. + (vc-workfile-version): Update docstring. + (vc-menu-map): Use vc-rollback instead of vc-cancel-version and + vc-revert instead of vc-revert-buffer. + (vc-prefix-map): Likewise. Bind vc-update. - * replace.el (perform-replace): Remove bindings of global - variables isearch-string, isearch-regexp, isearch-case-fold-search. - Add three new arguments to `replace-highlight'. - (replace-highlight): Add arguments string, regexp, case-fold. - Let-bind isearch-string, isearch-regexp, isearch-case-fold-search - to allow isearch-lazy-highlight-new-loop to use these values - to set corresponding isearch-lazy-highlight-* internal - variables whose values lazy highlighting will use regardless of - changes to global variables isearch-string, isearch-regexp, - isearch-case-fold-search during lazy highlighting loop. - (replace-dehighlight): Rename `isearch-lazy-highlight-cleanup' - to `lazy-highlight-cleanup'. + * vc-svn.el (vc-svn-revision-granularity, vc-svn-create-repo) + (vc-svn-wash-log): New functions. + (vc-svn-register, vc-svn-checkin, vc-svn-print-log) + (vc-svn-command): Deal with a list of files, not a single file. - * textmodes/ispell.el (ispell-lazy-highlight): New defcustom. - (ispell-highlight-face): Set default face to `isearch' when - lazy highlighting is enabled. - (ispell-highlight-spelling-error-overlay): Set `ispell-overlay' - priority to 1. Add lazy highlighting. - (ispell-highlight-spelling-error-xemacs): Remove obsolete arg - from `isearch-dehighlight'. + * vc-rcs.el (vc-rcs-revision-granularity, vc-rcs-create-repo) + (vc-rcs-wash-log): New functions. + (vc-rcs-register, vc-rcs-checkin, vc-rcs-diff, vc-rcs-print-log): + Deal with a list of files, not a single file. + (vc-rcs-rollback): Likewise. Rename from vc-rcs-cancel-version. -2005-03-18 David Ponce + * vc-sccs.el (vc-sccs-revision-granularity, vc-sccs-wash-log): New + functions. + (vc-sccs-register, vc-sccs-checkin, vc-sccs-diff): Deal with a + list of files, not a single file. - * files.el (hack-local-variables): Do a case-insensitive search - for End. + * vc-mcvs.el (vc-mcvs-revision-granularity, vc-mcvs-create-repo): + New functions. + (vc-mcvs-register, vc-mcvs-checkin, vc-mcvs-print-log) + (vc-mcvs-diff): Deal with a list of files, not a single file. -2005-03-18 Juri Linkov + * vc-hg.el (vc-hg-revision-granularity, vc-hg-create-repo): New + functions. + (vc-hg-print-log): Deal with a list of files, not a single file. + (vc-hg-diff-tree): New function, replace defalias with the same + name. + (vc-hg-register, vc-hg-checkin, vc-hg-command): Rename FILE to + FILES to denote that it is a file list, not a single file. - * isearch.el (lazy-highlight-cleanup) : Rename from - `isearch-lazy-highlight-cleanup', add alias to old name and - declare obsolete. Add release numbers to other obsolete vars. - (isearch-done, isearch-lazy-highlight-new-loop): - Rename `isearch-lazy-highlight-cleanup' to `lazy-highlight-cleanup'. - (lazy-highlight-cleanup) : Doc fix. - (isearch-lazy-highlight-update): Rename obsolete - `isearch-lazy-highlight-face' to `lazy-highlight-face'. + * vc-cvs.el (vc-cvs-create-repo, vc-cvs-wash-log): New functions. + (vc-cvs-register, vc-cvs-checkin): Deal with a list of files, not + a single file. + (vc-cvs-print-log, vc-cvs-command): Rename FILE to FILES to denote + that it is a file list, not a single file. + (vc-cvs-diff): Likewise. Simplify. -2005-03-18 Kenichi Handa + * vc-arch.el (vc-arch-register, vc-arch-checkin, vc-arch-diff): + Deal with a list of files, not a single file. - * language/thai-util.el: Fix categorization of Thai characters in - thai-category-table. - (thai-composition-pattern): Adjust it for the above change. - (thai-self-insert-command, thai-compose-syllable): New functions. - (thai-compose-region): Use thai-compose-syllable. - (thai-compose-string): Likewise. - (thai-composition-function): Likewise. - (thai-auto-composition): New function. - (thai-auto-composition-mode): New minor mode. - - * language/thai.el: Fix patterns to be registered in - composition-function-table. + * vc-bzr.el (vc-bzr-register, vc-bzr-command, vc-bzr-checkin) + (vc-bzr-print-log): Update FILE parameter name to denote that it + is a file list, not a single file. + (vc-bzr-diff): Likewise. Use the car of files. - * international/quail.el (quail-input-method): Locally bind - inhibit-modification-hooks to t. +2007-07-18 Juanma Barranquero -2005-03-17 Richard M. Stallman + * follow.el (follow-mode-hook, follow-mode-off-hook, follow-mode) + (follow-delete-other-windows-and-split, follow-recenter) + (follow-windows-aligned-p, follow-point-visible-all-windows-p) + (follow-redisplay, follow-estimate-first-window-start) + (follow-xemacs-scrollbar-support, follow-intercept-process-output): + Fix typos in docstrings. - * progmodes/perl-mode.el (perl-mode-hook): Defvar it. - (perl-mode): Use run-mode-hooks. +2007-07-18 Martin Rudalics - * mail/rmail.el (rmail-movemail-program, rmail-pop-password) - (rmail-pop-password-required, rmail-remote-password): Doc fixes. - (rmail-preserve-inbox, rmail-probe, rmail-autodetect): Doc fix. + * add-log.el (change-log-mode): Use fill-nobreak-predicate to + avoid that filling introduces lines with a single asterisk. - * mail/sendmail.el (sendmail-send-it): Reenable the code - to compute resend-to-address and use it. + * kmacro.el (kmacro-end-macro): When ignoring empty macro + avoid incorrect kmacro-ring-empty-p messages. + Reported by Michael Schierl . - * tar-mode.el (tar-mode): Turn off undo unconditionally. +2007-07-17 Dan Nicolaescu - * image-mode.el: New file. + * vc.el: Add more info about the vc-registered function. - * image.el (insert-sliced-image): Add autoload cookie. +2007-07-17 Michael Albinus - * font-lock.el (font-lock-lines-before): New user option. - (font-lock-after-change-function): Obey it. + * files.el (file-remote-p): Introduce optional parameter + IDENTIFICATION. - * bindings.el (esc-map): Make M-g a prefix. - Bind M-g g and M-g M-g to goto-line. + * recentf.el (recentf-keep-default-predicate): Adapt call of + `file-remote-p'. - * faces.el (face-id): Doc fix. + * progmodes/grep.el (grep-probe): Use `process-file'. + (grep-compute-defaults): Handle variables host specific. -2005-03-17 Frederik Fouvry + * net/ange-ftp.el (ange-ftp-file-remote-p): Handle optional + parameter IDENTIFICATION. - * mail/rmail.el (rmail-unknown-mail-followup-to): New function. - (rmail-show-message): Use rmail-unknown-mail-followup-to. - (rmail-reply): Recognize Mail-Followup-To and Mail-Reply-To headers. + * net/tramp.el (tramp-handle-file-remote-p): Handle optional + parameter IDENTIFICATION. + (tramp-handle-set-file-times): New defun. Replaces `tramp-touch'. + (tramp-file-name-handler-alist, tramp-file-name-for-operation): + Add entry for `set-file-times'. + (tramp-do-copy-or-rename-file-via-buffer) + (tramp-do-copy-or-rename-file-out-of-band): Use `set-file-times'. + (tramp-handle-unhandled-file-name-directory): Rewrite. + (tramp-convert-file-attributes): Add error handling when inode is + extraordinary big. + (tramp-get-inode): Change parameter from FILE to VEC. + (tramp-handle-start-file-process): Use (current-buffer) if BUFFER + is nil. This is according to the specification. Goto (point-max) + when ready. + (tramp-handle-shell-command): Rewrite completely, using + `process-file' and `start-file-process'. + (tramp-methods, tramp-find-shell) + (tramp-open-connection-setup-interactive-shell) + (tramp-maybe-open-connection): Guard against $PROMPT_COMMAND shell + var. Reported by Steve Youngs . + + * net/tramp-fish.el (tramp-fish-file-name-handler-alist): Add + entry for `set-file-times'. Rename `start-process' into + `start-file-process'. Remove `call-process' entry. + (tramp-fish-handle-set-file-times): New defun. + (tramp-fish-handle-executable-find): Use `process-file'. + (tramp-fish-handle-process-file): New defun. Replaces + `tramp-fish-handle-call-process'. + (tramp-fish-do-copy-or-rename-file-directly): Use + `set-file-times'. + (tramp-fish-get-file-entries): Change `tramp-get-inode' parameter. + + * net/tramp-smb.el (tramp-smb-handle-file-attributes): Change + `tramp-get-inode' parameter. + +2007-07-17 Stefan Monnier + + * vc-bzr.el (vc-bzr-version, vc-bzr-at-least-version) + (vc-bzr-post-command-function): Remove. Version 0.8 is already old + nowadays, and by the time Emacs-23 comes out, nobody will even remember + it has ever existed. - * mail/sendmail.el (mail-yank-ignored-headers) - (mail-font-lock-keywords, mail-mode-fill-paragraph): - Add Mail-Followup-To and Mail-Reply-To headers. - (mail-citation-hook): Add autoload cookie. - (mail-mode): Doc fix. - (mail-mode-map): Bind mail-mail-followup-to and mail-mail-reply-to. - (mail-send): Compute Mail-Followup-To and Mail-Reply-To headers. - (mail-mode-fill-paragraph): Handle those headers. - (mail-mailing-lists): New variable. - (mail-mail-reply-to, mail-mail-followup-to): New functions. +2007-07-17 Dan Nicolaescu -2005-03-17 Juri Linkov + * vc.el: Undo previous change. - * isearch.el (isearch-fallback): Check for `(car previous)' - before calling `isearch-other-end-state'. +2007-07-16 Eli Zaretskii -2005-03-17 Kim F. Storm + * makefile.w32-in (clean): Don't delete *~. - * simple.el (move-beginning-of-line): Move to beginning of buffer - line, as well as beginning of screen line. +2007-07-16 Stefan Monnier -2005-03-16 Glenn Morris + * textmodes/tex-mode.el (tex-verbatim-environments): + Add safe-local-variable property. + (tex-font-lock-syntactic-keywords): Lookup tex-verbatim-environments + when starting font-lock rather than when loading tex-mode.el. - * calendar/diary-lib.el (mark-diary-entries): Use new optional - argument REDRAW rather than calendar-redrawing variable. - * calendar/calendar.el (calendar-redrawing): Delete. - (redraw-calendar): Do not bind calendar-redrawing. + * progmodes/sh-script.el (sh-font-lock-quoted-subshell): Skip over the + whole $( rather than just the $. Rename from sh-quoted-subshell. + (sh-font-lock-syntactic-keywords): Adjust call accordingly. -2005-03-16 Matt Hodges +2007-07-16 Thien-Thi Nguyen - * calendar/diary-lib.el (diary-redraw-calendar): Preserve point in - diary-file buffer. + * bookmark.el (bookmark-maybe-sort-alist): Don't modify + bookmark-alist. Instead, if not sorting, simply return it. + (bookmark-bmenu-list): Call bookmark-maybe-sort-alist + for its return value, not for its side effect. -2005-03-16 Stefan Monnier + * emacs-lisp/lisp-mode.el (calculate-lisp-indent): In the + case of alignment under a constant symbol, find and consider + the sexp actually at indentation to be the "last sexp". - * help.el (describe-mode): Allow a :minor-mode-function property to - specify a different minor mode toggle function than the variable. - * simple.el (auto-fill-function): - * subr.el (add-minor-mode): Use it. +2007-07-16 Drew Adams -2005-03-16 Kenichi Handa + * mouse.el (mouse-yank-secondary): Better error message if no + secondary selection. - * language/ethio-util.el (sera-being-called-by-w3): New variable. - (ethio-sera-to-fidel-ethio): Check also sera-being-called-by-w3. - (ethio-fidel-to-sera-buffer): Likewise. +2007-07-16 Dan Nicolaescu -2005-03-16 Juri Linkov + * vc-hooks.el (vc-handled-backends): Move BZR later in the list. - * emacs-lisp/find-func.el (find-function-regexp): - Add defun-emitting macro `menu-bar-make-toggle'. + * term/xterm.el (xterm-turn-on-modify-other-keys) + (xterm-turn-off-modify-other-keys): New functions. + (terminal-init-xterm): Enable the modifyOtherKeys feature if the + terminal supports it. - * isearch.el: Put `isearch-scroll' property to - `split-window-horizontally'. +2007-07-16 Thien-Thi Nguyen - * info.el: Update error messages for `debug-ignored-errors'. - (Info-isearch-search): Doc fix. - (Info-find-node): Move up code to go into info buffer before - recording the node to the history. - (Info-fontify-node): Fontify titles only if the next line - has two or more `*', `=', `-', `.'. - Display "go to this node" for empty (match-string 3). + * bookmark.el (bookmark-show-all-annotations): + Make sure each inserted annotation ends with newline. -2005-03-16 YAMAMOTO Mitsuharu +2007-07-15 Richard Stallman - * term/mac-win.el: Add mouse pointer shape constants. + * kmacro.el (kmacro-bind-to-key): Avoid comparisons on function keys. -2005-03-15 Kim F. Storm + * tutorial.el (tutorial--find-changed-keys): + Handle C-x specially like ESC. - * simple.el (move-beginning-of-line): Use vertical-motion. +2007-07-15 Aaron Hawley -2005-03-15 Juri Linkov + * tar-mode.el (tar-get-descriptor): No error for zero-length file. - * isearch.el (isearch-error): New variable. - (isearch-invalid-regexp, isearch-within-brackets): Remove. - (isearch-error-state): Rename from `isearch-invalid-regexp-state'. - (isearch-within-brackets-state): Remove. - (isearch-case-fold-search-state, isearch-pop-fun-state): - Decrease frame index. - (isearch-mode, isearch-top-state, isearch-push-state) - (isearch-edit-string, isearch-abort, isearch-search-and-update) - (isearch-fallback, isearch-message-prefix, isearch-message-suffix) - (isearch-search, isearch-lazy-highlight-new-loop): - Replace `isearch-invalid-regexp' with `isearch-error'. - Remove `isearch-within-brackets'. - (isearch-search): Add `search-failed' handler to `condition-case'. - (isearch-lazy-highlight-search): Add `condition-case' to catch - errors and allow `isearch-lazy-highlight-update' to try - highlighting from the beginning of the window. - (isearch-repeat): Move up code to set isearch-wrapped to t - before calling isearch-wrap-function. +2007-07-15 Juri Linkov - * info.el (Info-isearch-initial-node): New internal variable. - (Info-search): Signal an error in isearch mode when search leaves - the initial node. Signal an error when `bound' is non-nil and - nothing was found in the current subfile. - (Info-isearch-search): Remove `condition-case'. - (Info-isearch-wrap): Don't wrap when search failed during leaving - the initial node. If `Info-isearch-search' is nil, wrap around - the current node. - (Info-isearch-start): New fun. - (Info-mode): Add buffer-local hook `Info-isearch-start' to - `isearch-mode-hook'. + * delsel.el (delete-selection-pre-hook): + * emulation/cua-base.el (cua-paste): Before a yank command, + check also whether last-command is one of mouse-save-then-kill, + mouse-secondary-save-then-kill, mouse-set-region, mouse-drag-region. -2005-03-15 YAMAMOTO Mitsuharu +2007-07-15 Michael Albinus - * simple.el (normal-erase-is-backspace): Set default to t if - running on Mac. + * recentf.el (recentf-keep-default-predicate): New defun. + (recentf-keep): Use it as initial value. - * term/mac-win.el (function-key-map): Sync with x-win.el. +2007-07-15 Karl Fogel -2005-03-15 Kenichi Handa + * bookmark.el: Revert 2007-07-13T18:16:17Z!kfogel@red-bean.com, + thus restoring bookmark bindings to three slots under C-x r. See + http://lists.gnu.org/archive/html/emacs-devel/2007-07/msg00705.html. - * international/mule-cmds.el (locale-language-names): Modify the - format of elements and add more entries. - (locale-preferred-coding-systems): Add more entries. - (set-locale-environment): Adjust for the change of - locale-language-names. +2007-07-15 Jeff Miller (tiny change) -2005-03-14 Stefan Monnier + * calendar/calendar.el (calendar-goto-bahai-date): Autoload it. - * pcvs.el (smerge-ediff): Remove bogus autoload. +2007-07-15 Jason Rumney -2005-03-14 Lute Kamstra + * w32-fns.el (set-default-process-coding-system): Use dos line ends + for input to cmdproxy on all versions of Windows. + Use dos line ends for input to plink. - * emacs-lisp/debug.el (debugger-make-xrefs): Docstring fix. - Ignore a `*' at the beginning of a line. + * comint.el (comint-simple-send): Concat newline before sending. + (comint-password-prompt-regexp): Recognize plink's passphrase prompt. - * subr.el (macro-declaration-function): Move to emacs-lisp/byte-run.el. - * emacs-lisp/byte-run.el (macro-declaration-function): Move from - subr.el. - (dont-compile, eval-when-compile, eval-and-compile): Use declare - to specify indentation. +2007-07-14 Stefan Monnier - * generic.el (define-generic-mode): Let generic-mode-list be a - list of strings; test membership with equal. + * emacs-lisp/autoload.el (generated-autoload-file): Autoload the + safe-local-variable setting. -2005-03-14 Kim F. Storm +2007-07-14 David Kastrup - * simple.el (next-line, previous-line): Add optional try-vscroll - arg to recognize interactive use. Pass it on to line-move. - (line-move): Don't perform auto-window-vscroll when defining or - executing keyboard macro to ensure consistent behavior. + * emacs-lisp/advice.el (defadvice): Doc fix. -2005-03-13 Stefan Monnier +2007-07-14 Juanma Barranquero - * pcvs-util.el (cvs-string->strings): Strip trailing whitespace. + * subr.el (when, unless): Doc fix. -2005-03-13 Lute Kamstra +2007-07-13 Dan Nicolaescu - * emacs-lisp/debug.el (debug): Set debug-on-exit before calling - debugger-setup-buffer so that backtrace marks the frames set to - debug-on-exit and we don't have to do it manually. Set an extra - debug-on-exit for macro's. - (debugger-setup-buffer): Don't mark the top frame manually. + * replace.el (match): Use yellow1 instead of yellow. -2005-03-12 Lute Kamstra + * progmodes/gdb-ui.el (breakpoint-enabled): Use red1 instead of + red. - * emacs-lisp/byte-run.el: Replace lisp-indent-hook with - lisp-indent-function throughout. - (with-no-warnings): Set lisp-indent-function property. + * pcvs-info.el (cvs-unknown): Likewise. -2005-03-12 Thien-Thi Nguyen +2007-07-13 Eli Zaretskii - * progmodes/dcl-mode.el (dcl-mode-syntax-table): - Add entry for backslash. + * makefile.w32-in (install-lisp-SH, install-lisp-CMD): New targets. + (install): Use them to copy all *.el files before *.elc. -2005-03-12 Juri Linkov +2007-07-13 Drew Adams - * info.el (Info-search): Four fixes for backward search. + * bookmark.el (bookmark-jump-other-window): New function. + (bookmark-map): Bind it to "o". -2005-03-11 Jay Belanger + http://lists.gnu.org/archive/html/emacs-devel/2007-07/msg00633.html + and its thread contains discussion about this change. + The original patch was slightly tweaked by Karl Fogel + before committing. - * calc/calc.el (calc-language-alist): New variable. - * calc/calc-embed.el (calc-embedded-language-alist): Remove. - (calc-embedded-find-modes): Use calc-language-alist instead of - calc-embedded-language-alist. +2007-07-13 Karl Fogel -2005-03-11 Glenn Morris + * bookmark.el: Shorten some comments to fit within 80 lines. - * calendar/calendar.el (calendar-redrawing): New internal - variable. - (redraw-calendar): Remove bogus save-excursion from previous - change. Bind calendar-redrawing to t for mark-diary-entries. - * calendar/diary-lib.el (mark-diary-entries): No need to redraw - calendar if that is why we were called. +2007-07-13 Karl Fogel -2005-03-11 Kenichi Handa + * bookmark.el: Don't define bookmark keys under the "C-xr" map; + instead, make "C-xp" a prefix for bookmark-map. Patch by Drew + Adams , mildly tweaked by me. See + http://lists.gnu.org/archive/html/emacs-devel/2007-07/msg00633.html. - * international/mule.el (make-coding-system): Set property - coding-system-define-form to nil. - (define-coding-system-alias): Likewise. +2007-07-13 Carsten Dominik -2005-03-11 Kenichi Handa + * textmodes/org.el: Bug fixes. + (org-end-of-line): Move to end of line if in headline without tags. - These changes are suggested by Dave Love . +2007-07-13 Stefan Monnier - * textmodes/fill.el: Change encoding to iso-2022-7bit and add - coding: tag. - (adaptive-fill-regexp): Add more bullets. - (fill-french-nobreak-p): Add Latin-1 and Latin-9 guillemets in - regexps. + * vc-hooks.el: Remove spurious * in docstrings. + (vc-handled-backends): Add BZR. -2005-03-10 Stefan Monnier + * vc-hooks.el (vc-find-file-hook): Use with-demoted-errors. - * help.el (describe-mode): Properly handle non-trivial lighters. - Don't ignore minor modes that are not listed in minor-mode-list. +2007-07-12 Davis Herring - * tooltip.el (tooltip-mode): Don't complain that you can't turn the - feature ON when the user requests to turn it OFF. + * desktop.el (desktop-buffer-info, desktop-save): + Use `desktop-dirname' instead of `dirname'. -2005-03-10 Lute Kamstra +2007-07-12 Paul Pogonyshev - * emacs-lisp/debug.el (debug-entry-code): Delete it. - (implement-debug-on-entry): New function to replace debug-entry-code. - (debug-on-entry-1): Use implement-debug-on-entry. Delete the - second argument as the 2005-03-07 change makes it obsolete. - (debug-on-entry, cancel-debug-on-entry): Update call to - debug-on-entry-1. - (debug, debugger-setup-buffer): Comment update. - (debugger-frame-number): Update to work with implement-debug-on-entry. + * progmodes/which-func.el (which-func-modes): Add `python-mode'. -2005-03-10 Jay Belanger + * progmodes/python.el (python-which-func-length-limit): New var. + (python-which-func): New function. + (python-current-defun): Add optional `length-limit' and try to fit + computed function name to that length. + (python-mode): Hook `python-which-func' up. - * calc/calc-embed.el (math-ms-args): Declare it. - (calc-embedded-eval-expr, calc-embedded-eval-get-var): Use variable - math-ms-args. - (calc-embedded-subst): Use math-multi-subst-rec to substitute - variables. +2007-07-12 Sean O'Rourke (tiny change) -2005-03-10 Nick Roberts + * pcomplete.el (pcomplete-entries): Obey pcomplete-ignore-case. - * progmodes/gdb-ui.el (gdb-var-create-handler, gdb-get-location): - Use message-box. + * comint.el (comint-dynamic-complete-as-filename): + Use read-file-name-completion-ignore-case. - * tooltip.el (tooltip-mode): Use define-minor-mode and simplify. - (tooltip-activate-mouse-motions-if-enabled): Use dolist. - (tooltip-gud-tips): Simplify. - (tooltip-gud-tips-p): Remove superfluous :set. - (tooltip-gud-modes): Add fortran-mode. - (gdb-tooltip-print): Remove newline for tooltip-use-echo-area. +2007-07-12 Stefan Monnier - * bindings.el (mode-line-mode-menu): Add tooltip-mode to mode-line. + * comint.el (comint-dynamic-list-filename-completions): + Use read-file-name-completion-ignore-case. -2005-03-09 Kim F. Storm + * vc-cvs.el: Require CL. + (vc-cvs-revision-table, vc-cvs-revision-completion-table): + New functions to provide completion of revision names. - * play/animate.el (animate-place-char): Use forward-line instead - of next-line to improve performance. + * vc-cvs.el (vc-functions): Clear up the cache when reloading the file. + (vc-cvs-annotate-first-line-re): New const. + (vc-cvs-annotate-process-filter): New fun. + (vc-cvs-annotate-command): Use them and run the command asynchronously. -2005-03-09 Simon Josefsson +2007-07-12 Paul Pogonyshev - * net/browse-url.el (browse-url-default-browser): Doc fix. + * emacs-lisp/eldoc.el (eldoc-last-data): Revise documentation. + (eldoc-print-current-symbol-info): Adjust for changed helper + function signatures. + (eldoc-get-fnsym-args-string): Add `args' argument. Use new + `eldoc-highlight-function-argument'. + (eldoc-highlight-function-argument): New function. + (eldoc-get-var-docstring): Format documentation with + `font-lock-variable-name-face'. + (eldoc-docstring-format-sym-doc): Add `face' argument and apply it + where suited. + (eldoc-fnsym-in-current-sexp): Return a list with argument index. + (eldoc-beginning-of-sexp): Return number of skipped sexps. -2005-03-09 Miles Bader +2007-07-11 Michael Albinus - * emacs-lisp/bytecomp.el (byte-compile-variable-ref) - (byte-compile-obsolete): Change " since VER" to " (as of Emacs VER)". + * progmodes/compile.el (compilation-start): `start-process' must + still be redefined when calling `start-process-shell-command'. -2005-03-09 Kenichi Handa + * progmodes/gud.el (gud-file-name): When `default-directory' is a + remote file name, prepend its remote part to the filename. + (gud-common-init): When `default-directory' is a remote file name, + make the filename relative to it. + Based on a patch by Nick Roberts . - * international/latin-1.el: Set case and syntax for 255 only if - set-case-syntax-set-multibyte is nil. +2007-07-11 Dan Nicolaescu - * textmodes/ispell.el (ispell-insert-word): New function. - (ispell-word): Use ispell-insert-word to insert a new word. - (ispell-process-line): Likewise. - (ispell-complete-word): Likewise. + * vc-hooks.el (vc-default-mode-line-string): Add a mouse face, + mouse binding and a tooltip. -2005-03-09 Glenn Morris +2007-07-11 Stefan Monnier - * calendar/calendar.el (redraw-calendar): Preserve point. - Reported by Matt Hodges . - (calendar-week-start-day): Move after definition of - redraw-calendar. Delete buffer test, since redraw-calendar has - that now. + * menu-bar.el (vc-menu-map): New defalias. - * calendar/diary-lib.el (mark-diary-entries): Only call - redraw-calendar in the first of any recursive calls. - Reported by Alan Shutko . +2007-07-10 Richard Stallman -2005-03-08 Juri Linkov + * emacs-lisp/lisp-mode.el (eval-defun): + Explain special handling of `defface'. - * textmodes/sgml-mode.el (sgml-tag, html-tag-alist) - (html-horizontal-rule, html-line, html-image, html-checkboxes) - (html-radio-buttons): Add a space before the trailing `/>' where - sgml-xml-mode is non-nil. - (sgml-delete-tag): Check if the tag ends with `/>' to not delete - the subsequent tag of the empty XML tag. - (html-href-anchor): Don't set initial input to "http:". - (html-image): Ask for the image URL and set point inside alt="". - (html-name-anchor): Duplicate the name in the `id' attribute when - sgml-xml-mode is non-nil. - (html-paragraph): Remove \n before

. - (html-checkboxes, html-radio-buttons): Insert `checked="checked"' - instead of `checked' when sgml-xml-mode is non-nil. +2007-07-10 Jim Meyering (tiny change) - * facemenu.el (list-colors-print): Print #RRGGBB in default face. - Remove 1 space before #RRGGBB to not truncate it on terminal - windows w/o fringes. Remove 1 space between bg and fg examples - to get more space. - (list-colors-duplicates): Replace `and' with `if' for `boundp' to - avoid byte-compile warnings. + * emacs-lisp/copyright.el (copyright-current-gpl-version): Set to 3. - * image-file.el (image-file-handler): Put `safe-magic' property to - `image-file-handler'. + * autoinsert.el (auto-insert-alist): s/2/3/ in the generated comment. - * info.el (Info-isearch-search): Emulate word search in - isearching through multiple Info nodes with Info-search. - (Info-isearch-wrap): Allow isearch-word. +2007-07-10 Stefan Monnier -2005-03-08 Lute Kamstra + * emacs-lisp/cl.el: Load cl-loaddefs.el quietly. - * emacs-lisp/debug.el (debugger-step-through): Make sure that - stepping into the debugger's code is not possible. - (debugger-jumping-flag): Docstring update. + * vc-arch.el (vc-arch-complete): Remove. + (vc-arch-revision-completion-table): Use complete-with-action. -2005-03-08 Jay Belanger + * subr.el (condition-case-no-debug, with-demoted-errors): New macros. + (complete-with-action): New function. + (dynamic-completion-table): Use it. - * calc/calc-embed.el (calc-do-embedded): Reset mode line when - embedded mode begins. - (calc-embedded-language-alist): New variable. - (calc-embedded-find-modes): Use calc-embedded-language-alist to - set default language mode. +2007-07-10 Michael Albinus -2005-03-08 Kenichi Handa + * comint.el (make-comint, make-comint-in-buffer) + (comint-exec-1): Replace `start-process' by `start-file-process'. - * international/ccl.el (define-ccl-program): Fix docstring about - extra 256 bytes assured for the output buffer. + * progmodes/compile.el (compilation-start): Revert redefining + `start-process'. - * international/utf-16.el (ccl-encode-mule-utf-16le-with-signature): - Fix BUFFER_MAGNIFICATION to 2. - (ccl-encode-mule-utf-16be-with-signature): Likewise. +2007-07-10 Stefan Monnier -2005-03-07 Karl Chen + * emacs-lisp/autoload.el (autoload-generate-file-autoloads): Be careful + with EOLs when generating MD5 checksums. - * align.el (align-rules-list): Added an alignment rule for CSS - declarations (applies to css-mode and html-mode buffers). + * follow.el: Don't change the global map from the follow-mode-map + defvar, but from the toplevel. Use easy-menu to unify the Emacs and + XEmacs code. + (turn-on-follow-mode, turn-off-follow-mode): Remove interactive spec + since `follow-mode' should be used instead for that. + + * emacs-lisp/easymenu.el (easy-menu-binding): New function. + (easy-menu-do-define): Use it. + (easy-menu-do-add-item): Inline into easy-menu-add-item and then remove. + + * progmodes/compile.el (compilation-auto-jump-to-first-error) + (compilation-auto-jump-to-next): New vars. + (compilation-auto-jump): New function. + (compilation-error-properties): Use them to jump to first error. + (compilation-start): Set the var if requested. + + * emacs-lisp/autoload.el (update-directory-autoloads): Remove + duplicates without also removing entries from other directories. + +2007-07-10 Carsten Dominik + + * textmodes/org.el (org-agenda-day-view, org-agenda-week-view): + Remember span as default. + (org-columns-edit-value): Rename from `org-column-edit'. + (org-columns-display-here-title): Rename from + `org-overlay-columns-title'. + (org-columns-remove-overlays): Rename from org-remove-column-overlays. + (org-columns-get-autowidth-alist): Rename from + `org-get-columns-autowidth-alist'. + (org-columns-display-here): Rename from `org-overlay-columns'. + (org-columns-new-overlay): Rename from `org-new-column-overlay'. + (org-columns-quit): Rename from `org-column-quit'. + (org-columns-show-value): Rename from `org-column-show-value'. + (org-columns-content, org-columns-widen) + (org-columns-next-allowed-value) + (org-columns-edit-allowed, org-columns-store-format) + (org-columns-uncompile-format, org-columns-redo) + (org-columns-edit-attributes, org-delete-property) + (org-set-property, org-columns-update) + (org-columns-compute, org-columns-eval) + (org-columns-not-in-agenda, org-columns-compute-all) + (org-property-next-allowed-value) + (org-columns-compile-format) + (org-fill-paragraph-experimental) + (org-string-to-number, org-property-action) + (org-columns-move-left, org-columns-new) + (org-column-number-to-string) + (org-property-previous-allowed-value) + (org-at-property-p, org-columns-delete) + (org-columns-previous-allowed-value) + (org-columns-move-right, org-columns-narrow) + (org-property-get-allowed-values) + (org-verify-version, org-column-string-to-number) + (org-delete-property-globally): New functions. + (org-columns-current-fmt): Rename from `org-current-columns-fmt'. + (org-columns-overlays): Rename from `org-column-overlays'. + (org-columns-map): Rename from `org-column-map'. + (org-columns-current-maxwidths): Rename from + `org-current-columns-maxwidths'. + (org-columns-begin-marker, org-columns-current-fmt-compiled) + (org-previous-header-line-format) + (org-columns-inhibit-recalculation) + (org-columns-top-level-marker): New variables. + (org-columns-default-format): Rename from `org-default-columns-format'. + (org-property-re): New constant. + +2007-07-10 Guanpeng Xu + + * subr.el (looking-at-p, string-match-p): New functions. + +2007-07-09 Reiner Steib + + * textmodes/tex-mode.el (tex-fontify-script) + (tex-font-script-display): New variables to make display of + superscripts and subscripts customizable. + (tex-font-lock-suscript, tex-font-lock-match-suscript): Use them. -2005-03-07 Stefan Monnier +2007-07-09 Richard Stallman - * emacs-lisp/debug.el (debug-on-entry-1): Fix handling of macros. + * isearch.el (isearch-edit-string): Call to isearch-push-state + after the search. -2005-03-07 Kim F. Storm +2007-07-09 Jan Djärv - * simple.el (move-beginning-of-line): New command. + * window.el (fit-window-to-buffer): Remove setting of window-min-height + to 1 as enlarge-window uses the value to resize/shrink windows other + than WINDOW if needed. - * bindings.el (global-map): Bind C-a to move-beginning-of-line. +2007-07-08 Katsumi Yamaoka - * reveal.el (reveal-mode-map): Bind C-a to beginning-of-line. + * cus-start.el (file-coding-system-alist): Fix custom type. - * emulation/cua-base.el: Put CUA move property on move-end-of-line - and move-beginning-of-line. +2007-07-08 Chong Yidong - * apropos.el (apropos-print): Omit command from M-x ... RET. + * longlines.el (longlines-wrap-region): Avoid marking buffer as + modified. + (longlines-auto-wrap, longlines-window-change-function): + Remove unnecessary calls to set-buffer-modified-p. -2005-03-07 Nick Roberts +2007-07-08 Stefan Monnier - * progmodes/gdb-ui.el (gdb-var-create-handler): Handle just MI case. - (gdb-send, gdb-send-item): Log items sent from gdb-send too. + * vc-cvs.el (vc-cvs-revert): Use vc-default-revert. + (vc-cvs-checkout): Remove last arg now unused; simplify. -2005-03-06 Richard M. Stallman +2007-07-08 Michael Albinus - * bindings.el (esc-map): Bind M-g to goto-line. + * files.el (file-remote-p): Introduce optional parameter CONNECTED. - * facemenu.el (global-map): Bind M-o, not M-g. + * net/tramp.el: + * net/tramp-ftp.el: + * net/tramp-smb.el: + * net/tramp-uu.el: + * net/trampver.el: Migrate to Tramp 2.1. -2005-03-06 Jan Dj,Ad(Brv + * net/tramp-cache.el: + * net/tramp-fish.el: + * net/tramp-gw.el: New Tramp packages. - * menu-bar.el (menu-bar-file-menu): Add the same :enable to - "Open Directory" as for "Open File". + * net/tramp-util.el: + * net/tramp-vc.el: Removed. -2005-03-06 Chong Yidong + * net/ange-ftp.el: Add ange-ftp property to 'start-file-process. + (ange-ftp-file-remote-p): Handle optional parameter CONNECTED. - * simple.el (activate-mark-hook, deactivate-mark-hook): Add defvars. - (push-mark-command): Run activate-mark-hook. + * net/rcompile.el (remote-compile): Handle Tramp 2.1 arguments. -2005-03-06 Richard M. Stallman + * progmodes/compile.el (compilation-start): Redefine + `start-process' temporarily when `default-directory' is remote. + Remove case of synchronous compilation, this won't happen ever. + (compilation-setup): Make local variable `comint-file-name-prefix' + for remote compilation. - * help-mode.el (help-mode-finish): Don't alter the element - in view-return-to-alist if there already is one. +2007-07-08 Martin Rudalics - * jit-lock.el (jit-lock-stealth-fontify): When calling sit-for, - make sure the current buffer is the expected one. + * novice.el (disabled-command-function): Fit window to buffer to + make last line visible. + Reported by Stephen Berman . - * novice.el (disabled-command-function): Output in *Disabled Command*. - Explicitly ignore non-keyboard events, and explicitly handle C-g. + * mouse.el (mouse-drag-track): Reset transient-mark-mode to nil + when handling the terminating event. - * textmodes/flyspell.el (flyspell-large-region): - Pass args differently for aspell. +2007-07-07 Jay Belanger - * files.el (mode-require-final-newline): Doc fix. + * calc/calc.el (math-read-number-simple): Remove leading 0s. + (math-bignum-digit-length): Change to optimal value. -2005-03-03 Stephan Stahl (tiny change) + * calc/calc-bin.el (math-bignum-logb-digit-size) + (math-bignum-digit-power-of-two): Evaluate when compiled. - * progmodes/which-func.el (which-function): - Specify NOERROR when calling imenu--make-index-alist. + * calc/calc-comb.el (math-small-factorial-table) + (math-init-random-base, math-prime-test): Remove unnecessary calls + to `math-read-number-simple'. -2005-03-05 Stefan Monnier + * calc/calc-ext.el (math-approx-pi, math-approx-sqrt-e) + (math-approx-gamma-const): Add docstrings. - * simple.el (normal-erase-is-backspace): Define default value. + * calc/calc-forms.el (math-julian-date-beginning) + (math-julian-date-beginning-int): New constants. + (math-format-date-part, math-parse-standard-date, calcFunc-julian): + Use the new constants. - * custom.el (custom-theme-set-variables): Remove unused var - `immediate'. - (custom-reevaluate-setting): Simple function to handle variables - that are defined before their default value can really be - computed. + * calc/calc-funcs.el (math-gammap1-raw): Add docstring. - * startup.el (command-line): Use it for temporary-file-directory, - small-emporary-file-directory, auto-save-file-name-transforms, - blink-cursor-mode, and normal-erase-is-backspace. + * calc/calc-math.el (math-approx-ln-10, math-approx-ln-2): + Add docstrings. - * font-lock.el (font-lock-fontify-keywords-region): Ensure forward - progress, even with buggy anchored keywords. +2007-07-07 Tom Tromey -2005-03-05 Luc Teirlinck + * vc.el (vc-annotate): Jump to line and output message only after the + process is really all done. - * simple.el (goto-line): Remove unbalanced final parenthesis. +2007-07-07 Stefan Monnier -2005-03-05 Richard M. Stallman + * vc.el (vc-exec-after): Don't move point from the sentinel. + Forcefully read all the remaining text in the pipe upon process exit. + (vc-annotate-display-autoscale, vc-annotate-lines): + Don't stop at the first unrecognized line. + (vc-annotate-display-select): Run autoscale after the process is done + since it depends on the whole result. - * simple.el (goto-line): Use a number at point as the default. - With C-u as arg, switch buffers. +2007-07-07 Eli Zaretskii -2005-03-05 Juri Linkov + * term/w32-win.el (menu-bar-open): New function. + Bind to it. - * frame.el (blink-cursor-mode): Replace `emacs-quick-startup' - with `no-blinking-cursor'. +2007-07-07 Michael Albinus - * startup.el (no-blinking-cursor): New defvar. - (command-line): Add `--no-blinking-cursor' to longopts. - Set `no-blinking-cursor' to t for command line arguments - -Q, -nbc, --no-blinking-cursor. Replace `emacs-quick-startup' - with `no-blinking-cursor' in the condition for calling - `blink-cursor-mode'. + * simple.el (start-file-process): New defun. -2005-03-04 Luc Teirlinck +2007-07-07 Stefan Monnier - * menu-bar.el (menu-bar-make-mm-toggle): Doc fix. - (menu-bar-options-save): Add blink-cursor-mode. - (menu-bar-options-menu): Add blink-cursor-mode. + * files.el (find-file-confirm-nonexistent-file): Rename from + find-file-confirm-inexistent-file. Update users. -2005-03-04 Ulf Jasper + * emacs-lisp/autoload.el (autoload-find-destination): Understand a new + format of autoload block where the file's time-stamp is replaced by its + MD5 checksum. + (autoload-generate-file-autoloads): Use MD5 checksum instead of + time-stamp for secondary autoloads files. + (update-directory-autoloads): Remove duplicate entries. + Use time-less-p for time-stamps, as done in autoload-find-destination. - * calendar/icalendar.el (icalendar-version): Increase to 0.11. - (icalendar-export-file, icalendar-export-region) - (icalendar-import-file, icalendar-import-buffer): Add autoload cookies. - (icalendar--convert-ical-to-diary): Fix problem with DURATION. +2007-07-07 Jay Belanger -2005-03-04 Lute Kamstra + * calc/calc.el (math-read-number): Replace number by variable. + (math-read-number-simple): Properly parse small integers. - * emacs-lisp/debug.el (debugger-step-after-exit): Make it a defvar. - (debug-function-list): Ditto. +2007-07-07 Dan Nicolaescu -2005-03-04 Robert J. Chassell + * vc.el: Fix doc for the checkout function. - * textmodes/texinfmt.el (texinfo-append-refill): - Redefine the types of line to which @refill - is not appended by replacing a search for `@refill\\|@bye' with - `@refill\\|^[ \t]*@'. The intent is to solve both the `@end - itemize@refill' bug and the unfilled long lines bug. - (texinfmt-version): Update number and date. +2007-07-06 Dan Nicolaescu -2005-03-04 Reiner Steib + * vc-hg.el (vc-hg-root): New function. + (vc-hg-registered): Use it. + (vc-hg-diff-tree): New defalias. + (vc-hg-responsible-p): Likewise. + (vc-hg-checkout): Comment out, not needed. + (vc-hg-delete-file, vc-hg-rename-file, vc-hg-could-register) + (vc-hg-find-version, vc-hg-next-version): New functions. - * international/code-pages.el (windows-1250, windows-125[2-8]) - (iso-8859-10, -13, -16, georgian-ps): Add autoload cookies. +2007-07-06 Andreas Schwab -2005-03-03 Stefan Monnier + * emacs-lisp/lisp-mode.el (eval-last-sexp): Avoid introducing any + dynamic bindings around the evaluation of the expression. + Reported by Jay Belanger . - * frame.el (blink-cursor-mode): `emacs-quick-startup' may not be - bound yet. +2007-07-06 Stefan Monnier -2005-03-02 Romain Francoise + * autorevert.el (auto-revert-tail-handler): Use inhibit-read-only. + Run before-revert-hook. Suggested by Denis Bueno . + Use run-hooks rather than run-mode-hooks. - * ibuf-ext.el (ibuffer-filter-disable): Move back to the current - buffer after removing limits. - (ibuffer-pop-filter): Ditto. - Update copyright. +2007-07-05 Jay Belanger -2005-03-02 Miles Bader + * calc/calc-comb.el (math-random-digit): Rename to + `math-random-three-digit-number'. + (math-random-digits): Don't depend on representation of integer. - * button.el (make-text-button): If the user doesn't specify a - type, use the default. Rewrite to use `add-text-properties' and - plist functions. + * calc/calc-bin.el (math-bignum-logb-digit-size) + (math-bignum-digit-power-of-two): New constants. + (math-and-bignum, math-or-bignum, math-xor-bignum, math-diff-bignum) + (math-not-bignum, math-clip-bignum): Use the constants + `math-bignum-digit-power-of-two' and `math-bignum-logb-digit-size' + instead of their values. + (math-clip): Use math-small-integer-size instead of its value. -2005-03-01 Lute Kamstra + * calc/calc.el (math-add-bignum): Replace number by constant. - * emacs-lisp/debug.el (inhibit-debug-on-entry): Add docstring. - (debugger-jumping-flag): New var. - (debug-entry-code): Use it. - (debugger-jump): Use debugger-jumping-flag and add - debugger-reenable to post-command-hook. - (debugger-reenable): Use debugger-jumping-flag and remove itself - from post-command-hook. - (debug, debug-on-entry, cancel-debug-on-entry): Remove call to - debugger-reenable. +2007-07-05 Chong Yidong -2005-03-01 Robert J. Chassell + * wid-edit.el (widget-documentation-string-value-create): + Insert indentation spaces. - * textmodes/texinfmt.el (texinfo-no-refill-regexp): Comment out - inclusion of "itemize\\|", which may be unnecessary, is certainly - inelegant, and stops refilling in itemize lists when formatting - Japanese Texinfo files to Info. - Update copyright to 2005. +2007-07-05 Thien-Thi Nguyen -2005-03-01 Nick Roberts + * emacs-lisp/byte-opt.el: Revert last change. - * progmodes/gdb-ui.el (gdb-get-location): Use a warning instead - of an error if GDB can't find the source file. +2007-07-05 Dan Nicolaescu -2005-03-01 Glenn Morris + * vc-hooks.el (vc-handled-backends): Add HG. - * calendar/calendar.el (redraw-calendar): Work from any buffer, - not just the calendar. + * vc-hg.el (vc-handled-backends): Remove, done in vc-hooks.el now. - * calendar/diary-lib.el (mark-diary-entries): Remove any old marks - first. - (diary-redraw-calendar): New function. - (make-diary-entry): Add diary-redraw-calendar to local - write-contents-functions. Turn off selective display before - inserting in diary. +2007-07-05 Stefan Monnier -2005-03-01 Kim F. Storm + * complete.el (PC-do-complete-and-exit): Add support for the new + `confirm-only' confirmation mode. - * emacs-lisp/copyright.el (copyright-fix-years): New command. +2007-07-05 Chong Yidong -2005-03-01 Lute Kamstra + * cus-edit.el (custom-commands): New variable. + (custom-tool-bar-map): New variable. Initialize using + `custom-commands'. + (custom-mode): Use `custom-tool-bar-map'. + (custom-buffer-create-internal): Insert action buttons only if + tool bar is not used. Use `custom-commands'. + (Custom-help, custom-command-apply): New function. + (custom-command-apply, Custom-set, Custom-save) + (Custom-reset-current, Custom-reset-saved, Custom-reset-standard): + Use `custom-command-apply' instead of duplicating code. + (customize-group-other-window): Call `customize-group' instead of + duplicating code. + (customize-face-other-window): Call `customize-face' instead of + duplicating code. + (customize-group, customize-face): Add optional args for opening + in another window. + (custom-variable-tag): Don't inherit `variable-pitch' face. + (custom-group-tag): Inherit `variable-pitch' face. + (custom-variable-value-create): Set documentation indentation. + (custom-group-value-create): Make group name a link, instead of + using an extra "go to group" button. + (custom-prompt-variable, custom-group-set, custom-group-save) + (custom-group-reset-current, custom-group-reset-saved) + (custom-group-reset-standard): Minor cleanup. - * emacs-lisp/debug.el (debug-on-entry-1): Reimplement to make sure - that debug-entry-code can be safely removed from a function while - this code is being evaluated. Revert the 2005-02-27 change as the - new implementation no longer requires it. Make sure that a - function body containing just a string is not mistaken for a docstring. - (debug): Skip one more frame in case of debug on entry. - (debugger-setup-buffer): Delete one more frame line in case of - debug on entry. - (debugger-frame-number): Update to use the new text introduced by - the 1999-11-03 change. Skip one more frame in case of debug on entry. +2007-07-05 Thien-Thi Nguyen -2005-02-28 Kim F. Storm + * Makefile.in (bootstrap-prepare): When copying from + ldefs-boot.el, make sure loaddefs.el is writeable. - * double.el (double-translate-key): Call force-window-update after - read-event to avoid crash in redisplay. + (bootstrap-prepare): Make $(lisp)/ps-print.el + and $(lisp)/emacs-lisp/cl-loaddefs.el writable, as well. -2005-02-28 Stefan Monnier +2007-07-05 Dan Nicolaescu - * emacs-lisp/debug.el (inhibit-debug-on-entry): New var. - (debug): Use it. Move the inhibit-trace earlier. - (debug-entry-code): New const. - (debug-on-entry-1): Use it. + * vc-hg.el (vc-hg-internal-status): Inline in `vc-hg-state', the + only caller, and delete. + (vc-hg-state): Deal with exceptions and only parse the output on + successful return. + (vc-hg-internal-log): Inline in `vc-hg-workfile-version', the only + caller, and delete. + (vc-hg-workfile-version): Deal with exceptions and only parse the + output on successful return. + (vc-hg-revert): New function. -2005-02-28 Chong Yidong +2007-07-04 Jay Belanger - * international/utf-16.el (ccl-encode-mule-utf-16le): - Fix BUFFER_MAGNIFICATION to 2. - (ccl-encode-mule-utf-16be): Likewise. + * calculator.el (calculator-expt): Use more cases to determine + the value. -2005-02-28 Kenichi Handa +2007-07-03 Dan Nicolaescu - * international/utf-16.el (ccl-encode-mule-utf-16le-with-signature): - Fix BUFFER_MAGNIFICATION to 4. - (ccl-encode-mule-utf-16be-with-signature): Likewise. + * progmodes/gud.el (auto-mode-alist): Match more valid gdb init + file names. -2005-02-28 Nick Roberts +2007-07-03 Jay Belanger - * speedbar.el (speedbar-update-flag): Doc fix. - (speedbar-show-info-under-mouse): Give set-mouse-position the right - argument. + * calculator.el (calculator-expt, calculator-integer-p): + New functions. + (calculator-fact): Check to see if the factorial will be too + large before computing it. + (calculator-initial-operators): Use `calculator-expt' to + compute "^". + (calculator-mode): Mention that results which are too large + will return inf. + * calc/calc-comb.el (math-small-factorial-table): Replace list + by vector. + +2007-07-03 David Kastrup + + * shell.el: On request of the authors, remove their addresses for + the sake of bug reports, and add the developer list address as + maintainer information. + +2007-07-03 Richard Stallman + + * files.el (make-directory): Doc fix. + (find-file-confirm-inexistent-file): Make it a defcustom. + Make nil the default. + +2007-07-02 Richard Stallman + + * startup.el (command-line): Set buffer-offer-save in *scratch* + and enable auto-save in it. + +2007-07-02 Carsten Dominik + + * textmodes/org.el (orgstruct-mode-map): New variable. + (orgstruct-mode): New minor mode. + (turn-on-orgstruct, orgstruct-error, orgstruct-setup) + (orgstruct-make-binding, org-context-p, org-get-local-variables) + (org-run-like-in-org-mode): New functions. + (org-cycle-list-bullet): New command. + (org-special-properties, org-property-start-re) + (org-property-end-re): New constants. + (org-with-point-at): New macro. + (org-get-property-block, org-entry-properties, org-entry-get) + (org-entry-delete, org-entry-get-with-inheritance) + (org-entry-put, org-buffer-property-keys): New functions. + (org-insert-property-drawer): New command. + (org-entry-property-inherited-from): New variable. + (org-column): New face. + (org-column-overlays, org-current-columns-fmt) + (org-current-columns-maxwidths, org-column-map): New variables. + (org-column-menu): New menu. + (org-new-column-overlay, org-overlay-columns) + (org-overlay-columns-title, org-remove-column-overlays) + (org-column-show-value, org-column-quit, org-column-edit): + New functions. + (org-columns, org-agenda-columns): New commands. + (org-get-columns-autowidth-alist): New functions. + (org-properties): New customize group. + (org-default-columns-format): New option. + (org-priority): Realign tags after changing priority. + (org-preserve-lc): New macro. + (org-update-checkbox-count): Catch case when there is no headline. + (org-agenda-quit): Remove any column overlays. + (org-beginning-of-item-list): Fixed bug when non-item line is + indented too deep. + (org-cached-props): New variable. + (org-cached-entry-get): New function. + (org-make-tags-matcher): Handle property matches. + (org-table-recalculate): Swap evaluation order: Field formula + first, then column formulas, but don't allow them to overwrite the + field formulas. + (org-table-eval-formula): New argument untouchable. + (org-table-put-field-property): New function. -2005-02-27 Stefan Monnier +2007-07-02 Martin Rudalics - * reveal.el (reveal-post-command): Don't try to reveal overlays which - have a non-nil `invisible' property but are actually visible. + * help-mode.el (help-make-xrefs): Skip spaces too when + skipping tabs. - * progmodes/perl-mode.el (perl-imenu-generic-expression): Add entries - for perldoc sections. - (perl-outline-regexp, perl-outline-level): New var and function. - (perl-mode): Use them. + * ffap.el (dired-at-point-prompter): Improve prompt in + list-directory case. -2005-02-27 Glenn Morris +2007-07-01 Richard Stallman - * calendar/diary-lib.el (diary-remind): Discard any mark portion - from diary-entry. Reported by Andrew Kemp . + * files.el (find-file-visit-truename): Fix safe-local-variable value. -2005-02-27 Luc Teirlinck +2007-07-01 Richard Stallman - * cus-edit.el: Comment change. - (custom-buffer-create-internal): Slightly reword text at top of - Custom buffers. Mention there that saving an option edits the - init file. Add link to Emacs manual node on `custom-file'. - (custom-magic-alist): Rewrite individual State messages to use - capitalized keywords. Doc fix. + * cus-start.el (max-mini-window-height): Added. -2005-02-27 Matt Hodges +2007-07-01 Sean O'Rourke (tiny change) - * calendar/calendar.el (calendar-buffer): Move above - calendar-week-start-day. - (calendar-week-start-day): Doc fix. Add :set function. - (calendar-minimum-window-height): New variable. - (generate-calendar-window): Only resize window if selected-window - is displaying the calendar buffer. Use new variable - calendar-minimum-window-height. - (generate-calendar): Reword error message. - (calendar-mode-map): Bind DEL to scroll-other-window-down. + * complete.el (partial-completion-mode): Remove advice of + read-file-name-internal. + (PC-do-completion): Rebind minibuffer-completion-table. + (PC-read-file-name-internal): New function doing what + read-file-name-internal advice did. -2005-02-27 Andreas Schwab +2007-07-01 Paul Pogonyshev - * vc.el (vc-do-command): Don't run command asynchronously when - operating in a remote directory. + * emacs-lisp/byte-opt.el: Set `binding-is-magic' + property on a few symbols. + (byte-compile-side-effect-free-dynamically-safe-ops): New defconst. + (byte-optimize-lapcode): Remove bindings that are not referenced + and certainly will not effect through dynamic scoping. - * net/tramp.el (tramp-file-name-for-operation): Fix misapplied - change from sync with Tramp 2.0.47. +2007-07-01 Stefan Monnier -2005-02-27 Richard M. Stallman + * files.el (find-file-confirm-inexistent-file): New var. + (find-file, find-file-other-window, find-file-other-frame) + (find-file-read-only, find-file-read-only-other-window) + (find-file-read-only-other-frame): Use it. - * textmodes/ispell.el (ispell-change-dictionary): Doc fix. +2007-06-30 Stefan Monnier - * textmodes/flyspell.el (flyspell-mode-on): - Call ispell-change-dictionary only if necessary. + * emacs-lisp/rx.el (rx-constituents): Fix up `anything'. - * emacs-lisp/re-builder.el (regexp-builder): New function. +2007-06-29 Juanma Barranquero - * register.el (describe-register-1): Explicitly handle - yank-excluded-properties = t. + * generic-x.el (generic-define-mswindows-modes) + (generic-define-unix-modes, apache-log-generic-mode) + (bat-generic-mode-keymap, java-manifest-generic-mode) + (show-tabs-generic-mode): Fix typos in docstrings. - * cus-edit.el (custom-buffer-create-internal): Improve progress msgs. - (custom-magic-alist): Change the status descriptions again. - (face widget-type): Total rewrite based on `restricted-sexp' - to eliminate the confusing double hiding levels. +2007-06-29 Ryan Yeske - * emacs-lisp/debug.el (debug-on-entry-1): - If function body is empty, add nil as body form. + * net/rcirc.el (rcirc-server-alist): Rename from rcirc-connections. + (rcirc-default-full-name): Rename from rcirc-default-user-full-name. + (rcirc-clear-activity): Make sure RCIRC-ACTIVITY isn't modified. + (rcirc-print): Never ignore messages from ourself. -2005-02-26 Stefan Monnier +2007-06-29 Stefan Monnier - * emacs-lisp/trace.el (inhibit-trace): New var. - (trace-make-advice): Use it. + * font-lock.el (lisp-font-lock-keywords-2): Recognize the new \(?1:..\) + syntax as well. Reported by Juri Linkov . - * emacs-lisp/debug.el (debug): Put back the inhibit-trace. +2007-06-28 Jan Djärv -2005-02-26 Kim F. Storm + * dnd.el (dnd-get-local-file-name): Set fixcase to t in call to + replace-regexp-in-string. - * mouse.el (mouse-1-click-in-non-selected-windows): New defcustom. - (mouse-on-link-p, mouse-drag-region-1): Use it. +2007-06-28 Stefan Monnier -2005-02-25 Lute Kamstra + * emacs-lisp/cl.el: Set edebug and indentation before loading + cl-loaddefs.el so that its use of dolist doesn't load cl-macs. - * replace.el (query-replace-read-from): Fix 2005-02-19 change. +2007-06-28 Andreas Schwab -2005-02-24 Luc Teirlinck + * Makefile.in ($(lisp)/mh-e/mh-loaddefs.el): Depend on + $(lisp)/subdirs.el. - * frame.el (blink-cursor-mode): Add :group keyword. +2007-06-28 Juanma Barranquero -2005-02-24 Ulf Jasper + * speedbar.el (speedbar-handle-delete-frame): Don't try to delete + the speedbar frame if nil; that deletes the current frame or + causes an error if it is the only frame. + Reported by Angelo Graziosi . - * calendar/icalendar.el (icalendar--decode-isodatetime): - New optional argument DAY-SHIFT. - (icalendar-export-region): Fix coding-system-for-write. - (icalendar--convert-ical-to-diary): Shift end-day of all-day - events by one. +2007-06-28 Kevin Ryde -2005-02-24 Stefan Monnier + * textmodes/nroff-mode.el: Groff \# comments. + (nroff-mode-syntax-table): \# comment intro, + plain # as punct per global table. + (nroff-font-lock-keywords): Add # as a single char escape. + (nroff-mode): In comment-start-skip, match \#. - * textmodes/tex-mode.el (tex-font-lock-keywords-3): #n is atomic. +2007-06-28 Stefan Monnier -2005-02-24 Kim F. Storm + * vc-bzr.el (vc-functions): Clear up the cache when reloading the file. + (vc-bzr-workfile-version, vc-bzr-could-register): Don't hardcode + point-min == 1. - * international/iso-acc.el (iso-accents-compose): Fix crash - during redisplay. Call force-window-update after read-event - and delete-region to signal that window is not accurate. +2007-06-28 Nick Roberts -2005-02-23 Stefan Monnier + * pcvs-util.el (cvs-strings->string, cvs-string->strings): + Rename and move to... - * emacs-lisp/debug.el (debug): Hide the buffer if it's not killed. - Remove unused and inexistent var `inhibit-trace'. - (debugger-mode): Use run-mode-hooks. - (debugger-list-functions): Add buttons; setup xref stack. + * subr.el (strings->string, string->strings): ...here. -2005-02-23 Richard M. Stallman + * pcvs.el (cvs-reread-cvsrc, cvs-header-msg, cvs-checkout) + (cvs-mode-checkout, cvs-execute-single-file): Use new function names. - * calendar/appt.el (appt-time-msg-list): 3rd elt of each - appointment says it was explicitly made. - (appt-add): Set the 3rd element. - (appt-make-list): Preserve explicit appointments. + * progmodes/gud.el (gud-common-init): Call string->strings instead + of split-string. - * subr.el (find-tag-default): Catch errors in forward-sexp. +2007-06-27 Michael Albinus -2005-02-23 Juri Linkov + * dired-aux.el: Remove `dired-call-process'. + (dired-check-process): Call `process-file'. - * info.el (Info-isearch-search): New defcustom. - (Info-isearch-search): Call the default isearch function - when Info-isearch-search is nil. - (Info-isearch-wrap): Use variable Info-isearch-search. + * wdired.el (wdired-do-perm-changes): Call `process-file'. -2005-02-22 Luc Teirlinck + * net/ange-ftp.el (ange-ftp-dired-call-process): Reimplement it as + `ange-ftp-process-file'. - * cus-edit.el: Comment change. +2007-06-27 Stefan Monnier -2005-02-22 Kim F. Storm + * emacs-lisp/cl.el: Use cl-loaddefs.el rather than manual autoloads. - * progmodes/hideif.el (hide-ifdef-use-define-alist): - Use completing-read. Suggested by Juan-Leon Lahoz Garcia. + * emacs-lisp/cl-extra.el: + * emacs-lisp/cl-seq.el: + * emacs-lisp/cl-macs.el: Set generated-autoload-file to cl-loaddefs.el. + Add autoload cookies on all defs autoloaded manually in cl.el. -2005-02-22 Simon Josefsson + * emacs-lisp/cl-loaddefs.el: New file. - * net/browse-url.el (browse-url-netscape-new-window-is-tab): - New variable. - (browse-url-netscape): Use it. Suggested by "Johann 'Myrkraverk' - Oskarsson" . + * textmodes/texinfmt.el (texinfo-raisesections-alist) + (texinfo-lowersections-alist): Merge definition and declaration. + (texinfo-start-of-header, texinfo-end-of-header): Remove. + (texinfo-format-syntax-table): Merge init into declaration. + (texinfo-format-parse-line-args, texinfo-format-parse-args) + (texinfo-format-parse-defun-args, texinfo-format-node) + (texinfo-push-stack, texinfo-multitable-widths) + (texinfo-define-info-enclosure, texinfo-alias) + (texinfo-format-defindex, batch-texinfo-format): Use push. + (texinfo-footnote-number): Remove duplicate declaration. -2005-02-22 Kim F. Storm + * ps-print.el: Update with auto-generated autoloads. - * mouse.el (mouse-on-link-p): If arg POS is a mouse event, - check that window of that event is the selected window. - (mouse-drag-region-1): Compare mouse event window to selected - window before setting point. + * ps-mule.el: Set generated-autoload-file to "ps-print.el". - * tooltip.el (tooltip-show-help-function): Pass event to - mouse-on-link-p so it can check selected window. +2007-06-26 Stefan Monnier -2005-02-22 Kenichi Handa + * emacs-lisp/autoload.el (autoload-generated-file): Interpret names + relative to current dir for file-local settings. + (autoload-generate-file-autoloads): Add `outfile' arg. + (update-directory-autoloads): Use it to directly call + autoload-generate-file-autoloads instead of going through + update-file-autoloads so we avoid redundant searches and so we can know + the set of buffers changed so we can save them all. - * ps-mule.el (ps-mule-header-string-charsets): Delete it. - (ps-mule-show-warning): New function. - (ps-mule-begin-job): Use ps-mule-show-warning if unprintable - characters are found. + * emacs-lisp/autoload.el (autoload-find-destination): Return nil + rather than throwing `up-to-date'. + (autoload-generate-file-autoloads): Adjust correspondingly. + (update-file-autoloads): Be careful to let-bind + autoload-modified-buffers and adjust to new calling conventions. + (autoload-modified-buffers): Make it a dynamically scoped var. + (update-directory-autoloads): Use file-relative-name instead of + autoload-trim-file-name. + (autoload-insert-section-header): Don't use autoload-trim-file-name + since the file is already relative now. + (autoload-trim-file-name): Remove. - * ps-print.el (ps-header-footer-string): Return a list of header - and footer strings. + * vc-arch.el (vc-arch-add-tagline): Do a slightly cleaner job. + (vc-arch-complete, vc-arch--version-completion-table) + (vc-arch-revision-completion-table): New functions to provide + completion of revision names. + (vc-arch-trim-find-least-useful-rev, vc-arch-trim-make-sentinel) + (vc-arch-trim-one-revlib, vc-arch-trim-revlib): New functions + to let the user trim the revlib. -2005-02-21 Wolfgang Jenkner (tiny change) + * vc.el: Add new VC operation `revision-completion-table'. + (vc-default-revision-completion-table): New function. + (vc-version-diff, vc-version-other-window): Use it to provide + completion of revision names if the backend provides it. - * pcvs.el (cvs-retrieve-revision): Fix thinko. + * log-edit.el (log-edit-changelog-entries): Use with-current-buffer. -2005-02-21 Stefan Monnier + * vc-svn.el (vc-svn-repository-hostname): Adjust to non-XML format + of newer .svn/entries. - * frame.el (blink-cursor-mode): Use define-minor-mode. +2007-06-25 David Kastrup - * term/mac-win.el (function-key-map): Use char-names more consistently. - (file-name-coding-system): Only set it for MacOS-9. The other case is - already handled in mule-cmds.el (where it also works when mac-win.el - is not used). + * calc/calc-poly.el (math-padded-polynomial) + (math-partial-fractions): Add some function comments. -2005-02-21 Kenichi Handa +2007-06-25 Stefan Monnier - * international/mule.el (ctext-pre-write-conversion): Always use - " *code-converting-work*" buffer for work. + * emacs-lisp/autoload.el (autoload-generate-file-autoloads): + Make `outbuf' optional. + (update-file-autoloads): Use it. - * textmodes/ispell.el (ispell-dictionary-alist): Fix docstring. +2007-06-25 Stefan Monnier -2005-02-20 Thien-Thi Nguyen + * emacs-lisp/autoload.el (autoload-modified-buffers): New var. + (autoload-find-destination): Keep it uptodate. + (autoload-save-buffers): New fun. + (update-file-autoloads): Use it. Re-add the "up to date" message. - * progmodes/scheme.el (scheme-font-lock-keywords-2): Handle named-let. + * emacs-lisp/autoload.el: Refactor for upcoming changes. + (autoload-find-destination): New function extracted from + update-file-autoloads. + (update-file-autoloads): Use it. + (autoload-generate-file-autoloads): New function extracted from + generate-file-autoloads. Use file-relative-name. Delay computation of + output-start to the first cookie. Remove done-any, replaced by + output-start. + (generate-file-autoloads): Use it. -2005-02-20 Jonathan Yavner +2007-06-24 Jay Belanger - * ses.el (undo-more): Restore defadvice, but only the part that - allows changes outside the restricted area of the buffer. + * calc/calc-comb.el (math-init-random-base, math-prime-test): + Use math-read-number-simple to insert constants. + (math-prime-test): Redo calculation of sum. -2005-02-20 Kim F. Storm + * calc/calc-misc.el (math-div2-bignum): Use math-bignum-digit-size. - * simple.el (line-move): Add fourth optional arg try-vscroll which - must be set to perform auto-window-vscroll. - When moving backwards and doing auto-window-vscroll, automatically - vscroll to the last part of lines which are taller than the window. - (next-line, previous-line): Set try-vscroll arg on line-move. + * calc/calc-math.el (math-scale-bignum-digit-size): Rename from + math-scale-bignum-3. + (math-isqrt-bignum): Use math-scale-bignum-digit-size and + math-bignum-digit-size. + (math-isqrt-small): Add another possible initial guess. -2005-02-19 Dan Nicolaescu +2007-06-23 Roland Winkler - * replace.el (query-replace, query-replace-regexp) - (replace-string, replace-regexp): When operating on region, make - the minibuffer prompt say so. + * textmodes/bibtex.el (bibtex-entry-format): New options + `whitespace', `braces', and `string'. + (bibtex-field-braces-alist, bibtex-field-strings-alist) + (bibtex-field-braces-opt, bibtex-field-strings-opt) + (bibtex-cite-matcher-alist): New variables. + (bibtex-font-lock-keywords): Use bibtex-cite-matcher-alist. + (bibtex-flash-head): Use blink-matching-delay. + (bibtex-insert-kill, bibtex-mark-entry): Use push-mark. + (bibtex-format-entry, bibtex-reformat): Handle new options of + bibtex-entry-format. + (bibtex-field-re-init, bibtex-font-lock-cite, bibtex-dist): + New functions. + (bibtex-complete-internal): Do not display messages while + minibuffer is used. Do not leave around a completions buffer + that is out of date. + (bibtex-copy-summary-as-kill): New optional arg. + (bibtex-font-lock-url): New optional arg no-button. + (bibtex-find-crossref): Use `bibtex-cite-matcher-alist'. + (bibtex-url): Allow multiple URLs per entry. + +2007-06-23 Stefan Monnier + + * emacs-lisp/autoload.el (autoload-generated-file): New function. + (update-file-autoloads, update-directory-autoloads): Use it. + (autoload-file-load-name): New function. + (generate-file-autoloads, update-file-autoloads): Use it. + (autoload-find-file): Accept non-absolute argument. Set default-dir. + (generate-file-autoloads): If the autoloaded form is malformed, + indicate the problem with a warning instead of aborting. - * isearch.el (isearch-forward): Document isearch-query-replace and - isearch-query-replace-regexp keybindings. +2007-06-23 Thien-Thi Nguyen -2005-02-19 Jay Belanger + * simple.el (next-error-recenter): Accept `(4)' as well; + also, specify `integer' instead of `number'. - * calc/calc-aent.el (math-read-token): Add local variable. +2007-06-23 Eli Zaretskii - * calc/calc-prog.el (calc-user-define-edit): Add local variable. - (calc-edit-top): Move declaration to earlier in file. - (calc-edit-macro-repeats): Add local variables. + * ls-lisp.el (insert-directory): If an invalid regexp error is + thrown, try using FILE as a literal file name, not a wildcard. - * calc/calcalg2.el: Add differentiation rule for calcFunc-coth. - Adjust differentiation rules for calcFunc-tan, calcFunc-cot, - calcFunc-tanh. - Adjust integration rule for calcFunc-tan. +2007-06-23 Juanma Barranquero -2005-02-19 Michael Kifer + * ruler-mode.el (ruler-mode): Prevent clobbering the original + `header-line-format' when reentering ruler mode. - * emulation/viper-cmd.el (viper-prefix-commands): Make into a defconst. - (viper-exec-buffer-search): Use regexp-quote to quote buffer string. - (viper-minibuffer-setup-sentinel): Make some variables buffer-local. - (viper-skip-separators): Bug fix. - (viper-set-searchstyle-toggling-macros): Allow to unset macros in a - particular major mode. - (viper-del-backward-char-in-replace): Don't put deleted char on the - kill ring. +2007-06-23 Eli Zaretskii - * emulation/viper-ex.el (viper-color-display-p): New function. - (viper-has-face-support-p): Use viper-color-display-p. + * ls-lisp.el (insert-directory): Don't treat FILE as a wildcard if + FILE exists as a file. - * emulation/viper-keym.el (viper-gnus-modifier-map): New keymap. +2007-06-22 Jay Belanger - * emulation/viper-macs.el (viper-unrecord-kbd-macro): Bug fix. + * calc/calc.el (math-bignum-digit-length) + (math-bignum-digit-size, math-small-integer-size): + New constants. + (math-normalize, math-bignum-big, math-make-float) + (math-div10-bignum, math-scale-left, math-scale-left-bignum) + (math-scale-right, math-scale-right-bignum, math-scale-rounding) + (math-add, math-add-bignum, math-sub-bignum, math-sub, math-mul) + (math-mul-bignum, math-mul-bignum-digit, math-idivmod) + (math-quotient, math-div-bignum, math-div-bignum-digit) + (math-div-bignum-part, math-format-bignum-decimal) + (math-read-bignum): Use math-bignum-digit-length, + math-bignum-digit-size and math-small-integer-size. - * emulation/viper-util.el (viper-glob-unix-files): - Fix shell status check. - (viper-file-remote-p): Make equivalent to file-remote-p. + * calc/calc-ext.el (math-fixnum-big): Use the variable + math-bignum-digit-size. - * emulation/viper.el (viper-major-mode-modifier-list): - Use viper-gnus-modifier-map. +2007-06-23 Dan Nicolaescu -2005-02-19 David Kastrup + * log-view.el (log-view-mode-menu): New menu. - * subr.el (subregexp-context-p): Fix garbled doc string by adding - quoting. +2007-06-22 Stefan Monnier -2005-02-19 Jay Belanger + * diff-mode.el (diff-font-lock-keywords): Fix M. Kifer's last change + differently. - * calc/calc-math.el (calc-arctan, calc-tanh, calc-arctanh): - Remove extra definitions. - (calc-coth): New function. - (calcFunc-cot): Fix `let'. + * vc-hg.el (vc-hg-registered): Add an autoloaded version. + (vc-hg-log-view-mode): Use log-view-font-lock-keywords. -2005-02-19 Eli Zaretskii +2007-06-22 Dan Nicolaescu - * faces.el (escape-glyph, minibuffer-prompt): Add commentary for - the reasons we use "type pc" in these faces. + * vc-hg.el (vc-hg-print-log): Insert the file name. + (vc-hg-log-view-mode): Fontify the file name. - * button.el (button): Ditto. +2007-06-22 Jay Belanger -2005-02-19 Michael Mauger + * calc/calc-forms.el (math-format-date-part, calc-parse-standard-date) + (calcFunc-julian): Fix incorrect number used in calculations. - * replace.el (query-replace-read-from): Set the value of - query-replace-from-history-variable to handle the case of an empty - string entered to accept the suggested default. +2007-06-22 Thien-Thi Nguyen - * net/tramp.el (tramp-file-name-for-operation): - Use dired-call-process instead of dired-call-process-command. + * simple.el (next-error-recenter): New defcustom. + (next-error, next-error-internal): Recenter if specified, + immediately prior to running `next-error-hook'. -2005-02-19 Jay Belanger + * progmodes/hideshow.el (hs-show-block): Use line-end-position. + (hs-hide-block-at-point, hs-hide-comment-region): Likewise. - * calc/calc-arith.el (math-trig-inverses, math-div-trig) - (math-div-non-trig): New variables. - (math-combine-prod-trig, math-div-new-trig, math-div-new-non-trig) - (math-div-isolate-trig, math-div-isolate-trig-term): New functions. - (math-combine-prod, math-div-symb-fancy): Add simplifications for - trig expressions. + * progmodes/hideshow.el (hs-hide-all): Use progress reporter. -2005-02-19 Nick Roberts +2007-06-22 Jay Belanger - * progmodes/gdb-ui.el (gdb-var-update-handler) - (gdb-speedbar-timer-fn): Ensure speedbar updates with new values - for watch expressions, - (gdb-var-create-handler): Don't set speedbar-update-flag. - (gdb-post-prompt): Simplify test for speedbar. + * calc/calc-comb.el (math-small-factorial-table): New variable. + (calcFunc-fact): Use `math-small-factorial-table'. -2005-02-19 Michael Kifer + * calc/calc-ext.el (math-defcache): Allow forms to evaluate + initial values. + (math-approx-pi, math-approx-sqrt-e, math-approx-gamma-const): + New variables to use in caches. - * ediff.el (ediff-set-diff-overlays-in-one-buffer) - (ediff-set-fine-overlays-in-one-buffer, ediff-goto-word): Make sure - we use the syntax table of the correct buffer. - (ediff-same-file-contents, ediff-same-contents): Enhancements thanks to - Felix Gatzemeier. + * calc/calc-forms.el (math-format-date-part, math-parse-standard-date) + (calcFunc-julian): Use `math-read-number-simple' to insert bignums. - * ediff-init.el (ediff-hide-face): Check for definedness of functions. - (ediff-file-remote-p): Make synonymous with file-remote-p. - In all deffaces ediff-*-face-*, use min-colors. + * calc/calc-funcs.el (math-besJ0, math-besJ1, math-besY0, math-besY1) + (math-bernoulli-b-cache): Use math-read-number-simple to insert + bignums. - * ediff-mult.el (ediff-meta-mark-equal-files): Make use of - ediff-recurse-to-subdirectories. - (ediff-mark-if-equal): Check that the arguments are strings, use - ediff-same-contents (after to Felix Gatzemeier). + * calc/calc-math.el (math-approx-ln-10, math-approx-ln-2): + New variables to use in caches. - * ediff.el (ediff-merge-on-startup): Don't set buffer-modified-p to - nil. +2007-06-22 Dan Nicolaescu -2005-02-18 Stefan Monnier + * vc-bzr.el (vc-bzr-log-view-mode): Add + to the email address regexp. - * log-view.el (log-view-message-re): Fix up Subversion regexp. + * vc-hg.el (vc-hg-log-view-mode): New mode. -2005-02-18 David Kastrup +2007-06-21 Jay Belanger - * progmodes/meta-mode.el (meta-mark-active): Fix condition to just - use `mark-active' when defined. + * calc/calc.el (math-read-number-simple): New function. -2005-02-18 Kenichi Handa +2007-06-21 Stefan Monnier - * ps-print.el (ps-font-info-database): New entry - ZapfChancery-MediumItalic with correct font name. Fix font name - of the entry Zapf-Chancery-MediumItalic. + * progmodes/vera-mode.el (vera-mode): Fix `commend-end-skip' setting. + (vera-font-lock-match-item): Fix doc string. + (vera-in-comment-p): Remove unused function. + (vera-skip-forward-literal, vera-skip-backward-literal): Improve code, + use `syntax-ppss'. + (vera-forward-syntactic-ws): Fix argument order. + (vera-prepare-search): Use `with-syntax-table'. + (vera-indent-line): Fix doc string. + (vera-electric-tab): Fix doc string. + (vera-expand-abbrev): Define alias instead of using `fset'. + (vera-comment-uncomment-region): Use `comment-start-skip'. -2005-02-16 Luc Teirlinck +2007-06-21 Carsten Dominik - * autorevert.el (auto-revert-stop-on-user-input): Further doc fix. + * textmodes/org.el (org-export-with-footnotes): New option. + (org-export-as-html): Fix replacement bug for XEmacs. + (org-agenda-default-appointment-duration): New option. -2005-02-16 Kim F. Storm +2007-06-21 Dan Nicolaescu - * ido.el (ido-fallback-command): Pass user input to fallback command. + * vc-hg.el: Add to do items. + (vc-hg-diff): Add support for comparing different revisions. + (vc-hg-diff, vc-hg-annotate-command, vc-hg-annotate-time) + (vc-hg-annotate-extract-revision-at-line) + (vc-hg-previous-version, vc-hg-checkin): New functions. + (vc-hg-annotate-re): New constant. -2005-02-16 Nick Roberts +2007-06-20 Jay Belanger - * progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers) - (gdb-find-file-hook): Add server prefix. + * calc/calc.el (math-standard-ops): Fix precedence of multiplication. -2005-02-16 Richard M. Stallman +2007-06-20 Stefan Monnier - * replace.el (perform-replace): Pass new args to replace-highlight. - (replace-highlight): Take region args, - and pass them to isearch-lazy-highlight-new-loop. + * log-view.el (log-view-font-lock-keywords): Use `eval' to consult the + buffer-local value of log-view-*-re if applicable. + + * vc-bzr.el (vc-bzr-dir-state): Use setq rather than set. + Use vc-bzr-command rather than the ill defined vc-bzr-command*. + (vc-bzr-command*): Remove both (incompatible) versions. + (vc-bzr-do-command*): Remove. + (vc-bzr-with-process-environment, vc-bzr-std-process-invocation): + Remove by folding into its only caller vc-bzr-command. + (vc-bzr-command): Always set the environment, even when ineffective. + (vc-bzr-version): Minor fix up. + (vc-bzr-admin-dirname): New var. + (vc-bzr-bzr-dir): Remove. + (vc-bzr-root-dir): New fun. + (vc-bzr-registered): Use it. Add an autoloaded version. + (vc-bzr-responsible-p): Use vc-bzr-root-dir as well. + (vc-bzr-view-log-function): Remove. + (vc-bzr-log-view-mode): New major mode to replace it. + (vc-bzr-print-log): Only activate the old hack if needed. - * novice.el (disabled-command-hook): Autoload the defalias - and the make-obsolete-variable call. + * vc.el (vc-default-log-view-mode): New function. + (vc-print-log): Add new `log-view-mode' VC operation. - * menu-bar.el (menu-bar-select-frame): FRAME defaults to selected. +2007-06-20 Juanma Barranquero - * isearch.el (isearch-lazy-highlight-start-limit) - (isearch-lazy-highlight-end-limit): New variables limit - the region for highlighting. - (isearch-lazy-highlight-new-loop): New args BEG and END. - (isearch-lazy-highlight-search): Use the new vars. - (isearch-lazy-highlight-update): Likewise. + * ido.el (ido-find-file-in-dir): Don't signal an error for + empty directories. - * dired.el (dired-build-subdir-alist): Bind buffer-undo-list to t. + * add-log.el (change-log-mode): Set `show-trailing-whitespace'. - * cus-start.el (all): Use default-boundp. + * desktop.el (desktop-read): Run `desktop-not-loaded-hook' in the + directory where the desktop file was found, as the docstring says. + (desktop-kill): Use `read-directory-name'. -2005-02-15 David Casperson (tiny change) +2007-06-20 Alan Mackenzie - * menu-bar.el (menu-bar-select-frame): Handle current frame. + * progmodes/cc-mode.el (c-remove-any-local-eval-or-mode-variables): + When removing lines, also remove the \n. Correction of patch of + 2007-04-21. -2005-02-15 Luc Teirlinck +2007-06-20 Martin Rudalics - * autorevert.el (auto-revert-stop-on-user-input) - (auto-revert-verbose): Doc fixes. + * mouse.el (mouse-drag-mode-line-1): Quit mouse tracking when + event is not a cons cell. Do not unread drag-mouse-1 events. + Select right window in check whether space was stolen from + window above. -2005-02-15 Benjamin Riefenstahl + * help-mode.el (help-make-xrefs): Adjust position of new forward + button. - * international/mule-cmds.el (set-locale-environment): Remove call - to set-selection-coding-system on Windows. +2007-06-20 Riccardo Murri -2005-02-15 Jay Belanger + * vc-bzr.el (vc-bzr-with-process-environment) + (vc-bzr-std-process-invocation): New macros. + (vc-bzr-command, vc-bzr-command*): Use them. + (vc-bzr-with-c-locale): Remove. + (vc-bzr-dir-state): Replace its use with vc-bzr-command. + (vc-bzr-buffer-nonblank-p): New function. + (vc-bzr-state-words): New const. + (vc-bzr-state): Look for `bzr status' keywords in output. + Display everything else as a warning message to the user. + Fix status report with bzr >= 0.15. - * calc/calc-alg.el: Add simplification rules for calcFunc-sec, - calcFunc-csc, calcFunc-cot, calcFunc-sech, calcFunc-csch, and - calcFunc-coth. - (math-simplify-sqrt): Add simplifications. +2007-06-20 Dan Nicolaescu - * calc/calc-arith.el (math-real-if-arg-functions): Add functions - to list. + * vc-hg.el (vc-hg-global-switches): Simplify. + (vc-hg-state): Handle more states. + (vc-hg-diff): Fix doc-string. + (vc-hg-register): New function. + (vc-hg-checkout): Likewise. - * calc/calc-ext.el: Add functions to autoloads. +2007-06-20 Reto Zimmermann - * calc/calc-math.el (calc-sec, calc-csc, calc-cot, calc-sech) - (calc-csch, calc-coth, calcFunc-sec, calcFunc-csc, calcFunc-cot) - (calcFunc-sech, calcFunc-csch, calcFunc-coth, math-sec-raw) - (math-csc-raw, math-cot-raw): New functions. + * progmodes/vera-mode.el: New file. - * calc/calc-rules.el (calc-DistribRules, calc-NegateRules): Add rules. +2007-06-19 Jay Belanger - * calc/calc-undo.el (calc-handle-undo): Remove prefix from - the variable name in a message. + * calc/calc.el (calc-multiplication-has-precendence): + New variable. + (math-standard-ops, math-standard-ops-p, math-expr-ops): + New functions. + (math-expr-opers): Define using math-standard-ops rather than + math-standard-opers. + * calc/calc-aent.el (calc-do-calc-eval): Let math-expr-opers + equal the function math-standard-ops rather than the variable + math-standard-opers. + (calc-algebraic-entry): Let math-expr-opers equal + math-standard-ops or math-expr-ops, as appropriate. + (math-expr-read-level, math-read-factor): Let math-expr-opers + equal math-expr-ops. + * calc/calc-embed.el (calc-embedded-finish-edit): + Let math-expr-opers equal the function math-standard-ops + rather than the variable math-standard-opers. + * calc/calc-ext.el (math-read-plain-expr) + (math-format-flat-expr-fancy): Let math-expr-opers equal the + function math-standard-ops rather than the variable + math-standard-opers. + * calc/calc-lang.el (calc-set-language, math-read-big-rec): + Let math-expr-opers equal the function math-standard-ops rather + than the variable math-standard-opers. + * calc/calc-prog.el (calc-read-parse-table): Let math-expr-opers + equal the function math-standard-ops rather than the variable + math-standard-opers. + * calc/calc-yank.el (calc-finish-stack-edit): Let math-expr-opers + equal the function math-standard-ops rather than the variable + math-standard-opers. + * calc/calccomp.el (math-compose-expr): Let math-expr-opers equal + math-expr-ops. + +2007-06-19 Ivan Kanis - * calc/calc-units.el: Add simplification rules for calcFunc-sec, - calcFunc-csc, calcFunc-cot. + * vc-hg.el: New file. - * calc/calcalg2.el: Add derivative and integration rules for - calcFunc-sec, calcFunc-csc, calcFunc-cot, calcFunc-sech, - calcFunc-csch, calcFunc-coth. - (math-do-integral-methods): Add to checks for when to use - substitutions. +2007-06-18 Stefan Monnier - * calc/calccomp.el (math-eqn-special-funcs): Add functions to list. + * progmodes/sh-script.el (sh-font-lock-paren): Mark the relevant text + with font-lock-multiline. -2005-02-15 Lute Kamstra +2007-06-17 Glenn Morris - * emacs-lisp/lisp-mode.el (lisp-mode-variables): - Add ;;;###autoload to `outline-regexp'. Suggested by Stefan Monnier - . - (lisp-outline-level): Improve efficiency. Suggested by David - Kastrup . + * lpr.el (lpr-page-header-switches): Move %s to separate element + for correct quoting. Doc fix. -2005-02-15 Nick Roberts +2007-06-17 Stefan Monnier - * progmodes/gdb-ui.el (gdb-find-file-unhook): New variable. - (gdb-set-gud-minor-mode, gdb-set-gud-minor-mode-1) - (gdb-set-gud-minor-mode-existing-buffers): New functions. - (gdb-find-file-hook): New hook. Add it to find-file-hook. - (gdb-info-breakpoints-custom, gdb-source-info): Simplify. + * textmodes/sgml-mode.el (sgml-xml-guess): Return the result rather + than setting sgml-xml-mode. + (sgml-mode, html-mode): Set sgml-xml-mode. + (sgml-skip-tag-backward): Tell if we skipped over matched tags. + (sgml-skip-tag-backward, sgml-electric-tag-pair-overlays): New var. + (sgml-electric-tag-pair-before-change-function) + (sgml-electric-tag-pair-flush-overlays): New functions. + (sgml-electric-tag-pair-mode): New minor mode. + (sgml-font-lock-keywords-2, sgml-get-context, sgml-unclosed-tag-p) + (sgml-calculate-indent): Use assoc-string. -2005-02-14 Luc Teirlinck +2007-06-16 Karl Fogel - * cus-start.el (all): Comment change. + * thingatpt.el (thing-at-point-email-regexp): Don't require two + chars before the "@" in an email address. Andreas Roehler noticed + this problem. -2005-02-14 Lute Kamstra +2007-06-15 Karl Fogel - * cus-start.el (all): Check if symbol is void. + * thingatpt.el: Add support for email addresses (`email'). + (thing-at-point, bounds-of-thing-at-point): Document `email' support. + (thing-at-point-email-regexp): New variable. + (`email'): Put `bounds-of-thing-at-point' and `thing-at-point' + properties on this symbol, with lambda forms for values. -2005-02-14 Carsten Dominik +2007-06-15 Masatake YAMATO - * textmodes/reftex-cite.el (reftex-do-citation): Cleanup single - optional argument to \cite. + * vc-bzr.el (vc-bzr-root): Cache the output of shell command execution. -2005-02-14 Richard M. Stallman + * vc.el (vc-dired-hook): Check the backend returned from + `vc-responsible-backend' can really handle `subdir'. - * cus-edit.el (custom-buffer-create-internal): Update help message. - (custom-magic-alist): Update help messages. +2007-06-15 Chong Yidong - * cus-start.el (all): Allow a var to specify a standard value. + * wid-edit.el (widget-add-documentation-string-button): + Fix handling of documentation indent. -2005-02-12 Luc Teirlinck +2007-06-15 Miles Bader - * custom.el (custom-theme-set-variables): Handle variable aliases. + * mb-depth.el: New file. - * frame.el (blink-cursor-timer): Doc fix. - (blink-cursor): Make it an alias for `blink-cursor-mode' and - declare obsolete. - (blink-cursor-mode): Define with defcustom and use correct - standard expression in that defcustom. - * startup.el (command-line): Adapt to above changes in frame.el. +2007-06-15 Masatake YAMATO -2005-02-11 Lute Kamstra + * vc.el (vc-dired-mode): Show backend name as part of mode name. - * apropos.el (apropos-score-doc): Prevent division by zero. +2007-06-14 Chong Yidong -2005-02-11 Ulf Jasper + * wid-edit.el (widget-default-create): Move ?h handling here... + (widget-default-format-handler): ...from here. + (widget-docstring, widget-add-documentation-string-button): New funs. + (documentation-string): Add :visibility-widget property. + (widget-documentation-string-value-create): Use it. - * calendar/icalendar.el (icalendar--get-event-property): Doc fix. - (icalendar--get-event-property-attributes) - (icalendar--get-event-properties) - (icalendar--datetime-to-diary-date): New functions. - (icalendar--split-value): Doc fix. - (icalendar--datetime-to-noneuropean-date) - (icalendar--datetime-to-european-date): New optional argument - SEPARATOR. Return result as a string instead of a list. - (icalendar--get-weekday-number): Check if ABBREVWEEKDAY is nil. - (icalendar--convert-string-for-export): Rename arg S to STRING. - (icalendar-export-region): Doc fix. Change name of error buffer. - Save output buffer. - (icalendar-import-file): Add blank at end of prompt. - (icalendar-import-buffer): Doc fix. Do not switch to error - buffer. Indicate status in return value. - (icalendar--convert-ical-to-diary): Doc fix. Change name of error - buffer. Save output buffer. Handle exception from recurrence - rules (EXDATE, EXRULE). Handle start- and end-date of recurring - events. Fix problems with weekly all-day events. + * cus-edit.el (custom-split-regexp-maybe): Simplify. + (custom-buffer-create-internal): Simplify message. + (custom-variable-tag): Reduce height to normal. + (custom-variable-value-create, custom-face-value-create) + (custom-visibility): New widget. + (custom-visibility): New face. + (custom-group-value-create): + Call widget-add-documentation-string-button, using `custom-visibility'. -2005-02-10 Richard M. Stallman +2007-06-14 Stefan Monnier - * simple.el (eval-expression-print-format): - Avoid warning about edebug-active. + * emacs-lisp/bytecomp.el (byte-compile-current-group) + (byte-compile-nogroup-warn, byte-compile-file): Revert part of last + change. Apparently the "warning even if the group is implicit" is + a feature rather than a bug. - * help.el (help-for-help-internal): Rename from help-for-help. - (help-for-help): Define with defalias. +2007-06-14 Michael Kifer - * font-core.el (font-lock-default-function): Use with-no-warnings. + * emulation/viper.el (viper-describe-key-ad) + (viper-describe-key-briefly-ad): Different advices for Emacs and XEmacs. + Compile them conditionally. + (viper-version): Belated version change. - * cus-edit.el (custom-buffer-create-internal): Improve help-echo. +2007-06-14 Juanma Barranquero - * custom.el (defface): Doc fix. + * follow.el (follow-all-followers, follow-generic-filter): + * pcomplete.el (pcomplete-restore-windows): + * x-dnd.el (x-dnd-maybe-call-test-function, x-dnd-save-state) + (x-dnd-drop-data): + * emacs-lisp/edebug.el (edebug-pop-to-buffer, edebug-display): + * progmodes/python.el (python-complete-symbol): + * term/mac-win.el (mac-dnd-drop-data): Remove redundant check. -2005-02-10 Nick Roberts +2007-06-13 Ryan Yeske + + * net/rcirc.el (rcirc-format-response-string): Use rcirc-nick-syntax + around bright and dim regexps. Make sure bright and dim matches + use word anchors. Send text through rcirc-markup functions. + (rcirc-url-regexp): Add single quote character. + (rcirc-connect): Write logs to disk on auto-save-hook. + Make server a non-optional argument. + (rcirc-log-alist): New variable. + (rcirc-log-directory): Make customizable. + (rcirc-log-flag): New customizable variable. + (rcirc-log): New function. + (rcirc-print): Use above function. + (rcirc-log-write): New function. + (rcirc-generate-new-buffer-name): Strip text properties. + (rcirc-switch-to-buffer-function): Remove variable. + (rcirc-last-non-irc-buffer): Remove variable. + (rcirc-non-irc-buffer): Add function. + (rcirc-next-active-buffer): Use above function. + (rcirc-keepalive): Send KEEPALIVE ctcp instead of a PING. + (rcirc-handler-ctcp-KEEPALIVE): Add handler. + (rcirc-handler-CTCP): Don't print KEEPALIVE responses. + (rcirc-omit-mode): Add minor-mode. + (rcirc-mode-map): Change C-c C-o binding. + (rcirc-mode): Clear mode-line-process. Use a custom + fill-paragraph-function. Set up buffer-invisibility-spec. + (rcirc-response-formats): Remove timestamp code. + (rcirc-omit-responses): Add variable. + (rcirc-print): Don't put the overlay arrow on potentially omitted + lines. Log line to disk. Record activity for private messages + from /dim nicks. Facify the fill-prefix with rcirc-timestamp face. + (rcirc-jump-to-first-unread-line): Print message if there is no + unread text. + (rcirc-clear-unread): New function. + (rcirc-markup-text-functions): Add variable. + (rcirc-markup-timestamp, rcirc-markup-fill): Add functions. + (rcirc-debug): Don't mess with window configuration. + (rcirc-send-message): Send message before printing locally. + Add SILENT argument, do not print message if non-nil. + (rcirc-visible-buffers): New function and variable. + (rcirc-window-configuration-change-1): Add function. + (rcirc-target-buffer): Make sure ACTIONs don't get sent to the + server buffer. + (rcirc-clean-up-buffer): Set rcirc-target to nil when finished. + (rcirc-fill-paragraph): Add function. + (rcirc-record-activity, rcirc-window-configuration-change-1): + Only update the activity string if it has actually changed. + (rcirc-update-activity-string): Remove padding characters from the + mode-line string. + (rcirc-disconnect-buffer): New function to be called when a + channel is parted or the user quits. + (rcirc-server-name): Warn when the server-name hasn't been set. + (rcirc-window-configuration-change): Postpone work until + post-command-hook. + (rcirc-window-configuration-change-1): Update mode-line and + overlay arrows here. + (rcirc-authenticate): Fixc hanserv identification. + (rcirc-default-server): Remove variable. + (rcirc): Connect according to rcirc-connections. + (rcirc-connections): Add variable. + (rcirc-startup-channels-alist): Remove variable. + (rcirc-startup-channels): Remove function. + +2007-06-13 Stefan Monnier + + * diff-mode.el (diff-font-lock-keywords): Fix M. Kifer's last change. + +2007-06-13 Johan Bockgård (tiny change) - * progmodes/gdb-ui.el (gdb-ann3): Re-instate GDB command "set - width 0" to prevent word wrapping problems. + * term/xterm.el (terminal-init-xterm): Escape parens in character + constants. -2005-02-09 Kim F. Storm +2007-06-13 Stefan Monnier + + * progmodes/sh-script.el: Remove unneeded * from docstrings. + Use [:alpha:] and [:alnum:] where applicable. + (sh-quoted-subshell): Rewrite to correctly + handle nested mixes of `...' and $(...). + (sh-apply-quoted-subshell): Remove. + (sh-font-lock-syntactic-keywords): Adjust call to sh-quoted-subshell. + + * vc-arch.el (vc-arch-command): Remove bzr. It's a different program. + +2007-06-13 Michael Kifer + + * ediff-ptch.el (ediff-context-diff-label-regexp): Partially undo + previous change. + +2007-06-12 Tom Tromey + + * subr.el (user-emacs-directory): New defconst. + * cmuscheme.el (scheme-start-file): + * shell.el (shell): + * completion.el (save-completions-file-name): + * custom.el (custom-theme-directory): + * term/x-win.el (emacs-session-filename): + * filesets.el (filesets-menu-cache-file): + * thumbs.el (thumbs-thumbsdir): + * server.el (server-auth-dir): + * image-dired.el (image-dired-dir): + (image-dired-db-file): + (image-dired-temp-image-file): + (image-dired-gallery-dir): + (image-dired-temp-rotate-image-file): + * play/gamegrid.el (gamegrid-user-score-file-directory): + * savehist.el (savehist-file): + * tutorial.el (tutorial--saved-dir): + * startup.el (auto-save-list-file-prefix): Use user-emacs-directory. - * ido.el (ido-file-extensions-order): New defcustom. - (ido-file-extension-lessp, ido-file-extension-aux) - (ido-file-extension-order): New advanced file ordering. - (ido-file-lessp): New simple file ordering. - (ido-sort-list): Remove. - (ido-make-file-list): Use ido-file-lessp or ido-file-extension-lessp. - (ido-make-dir-list, ido-completion-help): Use ido-file-lessp. +2007-06-12 Ralf Angeli -2005-02-08 Dan Nicolaescu + * scroll-lock.el (scroll-lock-mode): Doc fix. - * progmodes/grep.el (grep-regexp-alist): Match an optional ^[[K - that some versions of grep produce. - (grep-mode-font-lock-keywords): Likewise. +2007-06-12 Michael Kifer -2005-02-09 Nick Roberts + * ediff-ptch.el (ediff-context-diff-label-regexp): Spurious parenthesis. - * progmodes/gdb-ui.el (gdb-location-list): New variable. - (gdb-cdir): Delete. - (gdb-info-breakpoints-custom, gdb-goto-breakpoint) - (gdb-source-info): Treat case when source file is in another - directory properly. - (gdb-get-location): New function. + * ediff-init.el: Doc strings. -2005-02-07 Jay Belanger +2007-06-12 Stefan Monnier - * calc/calc-prog.el (calc-write-parse-table-part) - (calc-fix-token-name): Fix a check for language type. + * emacs-lisp/bytecomp.el (byte-compile-current-group): New var. + (byte-compile-file): Bind it. + (byte-compile-nogroup-warn): Use it to avoid spurious warnings when the + group argument is provided implicitly. + (byte-compile-format-warn, byte-compile-from-buffer) + (byte-compile-insert-header): Don't hardcode point-min==1. + (byte-compile-file-form-require): Remove unused var old-load-list. + (byte-compile-eval): Remove unused vars old-autoloads and hist-nil-new. - * calc/calccomp.el (math-compose-expr): Fix a check for language type. +2007-06-12 Michael Kifer -2005-02-07 Andre Spiegel + * emulation/viper-cmd.el (viper-prefix-arg-com, viper-prefix-arg-value): + Display error messages. + (viper-prev-destructive-command, viper-insert-prev-from-insertion-ring): + Get rid of cl.el dependencies. - * vc-hooks.el (vc-make-version-backup): Ignore file-errors such - as directory not writable. + * emulation/viper-init.el (viper-suppress-input-method-change-message): + New variable. + (viper-activate-input-method-action) + (viper-inactivate-input-method-action): + Use viper-suppress-input-method-change-message. -2005-02-07 Kim F. Storm + * emulation/viper-keym.el (viper-vi-basic-map): Disable the bindings + for C-s, C-r. - * emulation/cua-base.el (cua-max-undo, cua-undo): Remove. - (cua--standard-movement-commands): Remove list. - Instead, set CUA property value to move for movement commands. - (cua-movement-commands): Remove. Users must set CUA prop instead. - (cua--pre-command-handler): Check CUA property. - (cua--init-keymaps): Don't remap undo commands. - (cua-mode): Don't call cua--rectangle-on-off. + * emulation/viper-util.el (viper-set-cursor-color-according-to-state): + Use viper-replace-overlay-cursor-color instead of + viper-replace-overlay-cursor-color. + (viper-sit-for-short): Use sit-for with 3 arguments. - * emulation/cua-rect.el (cua--undo-list, cua--tidy-undo-counter) - (cua--rect-undo, cua--tidy-undo-lists, cua--rectangle-on-off): Remove. - (cua--rect-undo-set-point): New var. - (cua--rectangle-undo-boundary): Setup undo apply entry. - (cua--rect-undo-handler): New function for rectangle undo. - (cua--rect-start-position, cua--rect-end-position): Add. - (cua--rectangle-post-command): Call cua--rectangle-set-corners - for restored rectangle. Set point if cua--rect-undo-set-point. + * emulation/viper.el (viper-insert-state-mode-list): Add gud-mode. + (viper-major-mode-modifier-list): Add viper-comint-mode-modifier-map + to gud-mode. -2005-02-06 Jay Belanger + * ediff-mult.el (ediff-meta-buffer-brief-message) + (ediff-meta-buffer-verbose-message): New variables. + (ediff-meta-buffer-message): Variable deleted. + (ediff-verbose-help-enabled): New variable. + (ediff-toggle-verbose-help-meta-buffer): New function. + (ediff-redraw-directory-group-buffer): Made aware of short/verbose + message options. - * calc/calc-lang.el (calc-tex-language): Display more information - in messages. + * ediff-ptch.el (ediff-context-diff-label-regexp): Better regexp. + (ediff-fixup-patch-map): Improve heuristic. - * calc/calccomp.el (math-compose-expr): Allow multiline matrices - in TeX mode. +2007-06-12 Stefan Monnier -2005-02-06 Richard M. Stallman + * log-view.el (log-view-file-re, log-view-message-re): Use \(?1:...\). + (log-view-font-lock-keywords): Simplify. + (log-view-current-file, log-view-current-tag): Simplify. - * emacs-lisp/lisp.el (buffer-end): Doc fix. +2007-06-12 Sam Steingold -2005-02-05 Arne J,Ax(Brgensen (tiny change) + * vc-arch.el (vc-arch-command): Also try "baz" and "bzr". - * net/ldap.el (ldap-search-internal): Support attributes with - optional descriptions separated by a semi-colon, as in - "userCertificate;binary". +2007-06-12 Juanma Barranquero -2005-02-05 Jan Dj,Ad(Brv + * desktop.el (desktop-load-locked-desktop): New option. + (desktop-read): Use it. + (desktop-truncate, desktop-outvar, desktop-restore-file-buffer): + Use `when'. - * x-dnd.el (x-dnd-handle-xdnd): Handle the case where the flags - isn't a cons (i.e. the version is 0). +2007-06-12 Davis Herring -2005-02-05 Eli Zaretskii + * desktop.el (desktop-save-mode-off): New function. + (desktop-base-lock-name, desktop-not-loaded-hook): New variables. + (desktop-full-lock-name, desktop-file-modtime, desktop-owner) + (desktop-claim-lock, desktop-release-lock): New functions. + (desktop-kill): Tell `desktop-save' that this is the last save. + Release the lock afterwards. + (desktop-buffer-info): New function. + (desktop-save): Use it. Run `desktop-save-hook' where the doc + says to. Detect conflicts, and manage the lock. + (desktop-read): Detect conflicts. Manage the lock. - * help.el (help-for-help): Doc fix. +2007-06-12 Stefan Monnier -2005-02-05 Nick Roberts + * emulation/tpu-mapper.el (tpu-emacs-map-key): Use new keymap names. - * progmodes/gdb-ui.el: Update copyright. Put GDB-Frames before - GDB-Windows on the menu-bar as this works better. + * emulation/tpu-edt.el (tpu-gold-map): Rename from GOLD-map. + (tpu-lucid-emacs-p): Remove. Use (featurep 'xemacs) instead. + (CSI-map, GOLD-CSI-map, GOLD-SS3-map, SS3-map): Delete vars. + (tpu-gold-map, tpu-global-map): Add all the SS3 and CSI bindings, using + keysyms rather than byte sequences. + (tpu-copy-keyfile): Don't force the user to use tpu-mapper.el. -2005-02-04 Jay Belanger +2007-06-11 Stefan Monnier - * calc/calc-embed.el (calc-embedded-update): Don't put in - unnecessary newlines. Adjust the end of formula marker. + * font-lock.el (font-lock-add-keywords): In case font-lock was only + half-activated, forcefully activate it completely. - * calc/calc-lang.el (math-latex-parse-frac): Don't use arguments. - (math-latex-parse-two-args): New function. +2007-06-11 Richard Stallman -2005-02-03 Lute Kamstra + * cus-edit.el (custom-variable-type): Doc fix. - * help-fns.el (help-with-tutorial): Make sure that users cannot - remove the entire text of the tutorial by means of `undo'. +2007-06-11 Stefan Monnier -2005-02-03 Stefan Monnier + * progmodes/sh-script.el (sh-font-lock-backslash-quote) + (sh-font-lock-flush-syntax-ppss-cache): New functions. + (sh-font-lock-syntactic-keywords): Use them to distinguish the + different possible cases for \'. - * textmodes/ispell.el (ispell-internal-change-dictionary): Fix problem - in recent changes, where the ispell process was repeatedly - killed & restarted. + * complete.el (PC-bindings): Don't bind things already bound in the + parent keymap. - * international/mule-cmds.el (set-locale-environment): Set file-name - coding system to utf-8 on Darwin systems. - (set-default-coding-systems): Don't set default-file-name-coding-system - on Darwin systems. + * textmodes/bibtex-style.el: New file. -2005-02-03 Richard M. Stallman +2007-06-11 Riccardo Murri - * hi-lock.el (hi-lock-mode): Turning on Hi-Lock turns on Font-Lock. + * vc-bzr.el: New file. -2005-02-03 Matt Hodges +2007-06-11 Stefan Monnier - * faces.el (list-faces-display): Add optional argument. + * vc-svn.el (vc-svn-program): New var. + (vc-svn-command): Use it. -2005-02-02 Stefan Monnier +2007-06-11 Juanma Barranquero - * font-core.el (font-lock-default-function): Handle the rare case where - only font-lock-keywords is set. + * server.el (server-switch-buffer): Remove redundant check. -2005-02-02 Kenichi Handa +2007-06-10 Martin Rudalics - * international/characters.el: Cancel previous change for - I-WITH-DOT-ABOVE and DOTLESS-i. + * emacs-lisp/bytecomp.el (byte-compile-find-cl-functions): + Match against file-name-nondirectory. + Fix text on user customization variables. + Reported by Johan Bockgård . - * international/latin-5.el: Cancel previous change. +2007-06-09 Alfred M. Szmidt (tiny change) -2005-02-02 Nick Roberts + * mail/rmail.el (rmail-movemail-variant-in-use): Fix doc typo. - * progmodes/gud.el: Correction to syntax in gud-menu-map. +2007-06-09 Davis Herring -2005-02-02 Kenichi Handa + * desktop.el (desktop-minor-mode-table): Doc fix. - * international/latin-5.el (tbl): Setup cases of I-WITH-DOT-ABOVE, - DOTLESS-i. +2007-06-08 Stefan Monnier - * international/characters.el: Setup cases of GREEK-FINAL-SIGMA, - Y-WITH-DIAERESIS, I-WITH-DOT-ABOVE, DOTLESS-i. + * textmodes/css-mode.el (css-navigation-syntax-table): + Use set-char-table-range so it also works in the unicode branch. - * case-table.el (get-upcase-table): New function. - (copy-case-table): Copy upcaes table too if non-nil. - (set-case-syntax-delims): Maintain upcase table too. - (set-case-syntax-pair): Likewise. - (set-upcase-syntax, set-downcase-syntax): New functions. - (set-case-syntax): Maintain upcase table too. +2007-06-08 Nick Roberts -2005-02-02 Nick Roberts + * help-mode.el (help-xref-forward-stack) + (help-xref-stack-forward-item, help-forward-label): New variables. + (help-forward): New button type. + (help-setup-xref): Initialise help-xref-forward-stack. + (help-make-xrefs): Add forward button, if appropriate. + (help-xref-go-back): Push item on forward stack. + (help-xref-go-forward, help-go-forward): New functions. - * progmodes/gdb-ui.el (gdb-goto-info): Delete. +2007-06-07 Chong Yidong - * progmodes/gud.el (gud-goto-info): New function. - (gud-tool-bar-map): Use correct icon. + * dired.el (dired-mode-map): Remove spurious separator. -2005-02-01 Thien-Thi Nguyen +2007-06-07 Juanma Barranquero - * emacs-lisp/lisp-mode.el (lisp-indent-function): Fix bug: - When delegating, order args in the funcall correctly. + * progmodes/ebrowse.el (ebrowse-draw-file-member-info): Doc fix. -2005-02-01 Thien-Thi Nguyen + * progmodes/mixal-mode.el (mixal-operation-codes-alist): + * progmodes/idlwave.el (idlwave-one-key-select): Fix typo in docstring. - * emacs-lisp/lisp-mode.el (lisp-indent-function): Doc fix. +2007-06-07 Carsten Dominik -2005-02-01 Carsten Dominik + * textmodes/org.el: Version number fixed. - * textmodes/reftex.el (reftex-access-scan-info): Error out in a - buffer not visiting a file. +2007-06-07 Glenn Morris -2005-01-31 Jay Belanger + * version.el (emacs-copyright): New constant. + * startup.el (fancy-splash-tail): Use emacs-copyright. + * calc/calc-help.el (calc-full-help): Use emacs-copyright. - * calc/calc-embed.el (calc-embedded-find-bounds): Set the formula - bound on the line with the formula. + * emacs-lisp/bytecomp.el (byte-compile-warnings): Add new option + `make-local'. + (byte-compile-warnings-safe-p): Add `make-local'. + (byte-compile-make-variable-buffer-local): + Allow byte-compile-warnings to suppress this warning. -2005-01-31 Kim F. Storm + * tutorial.el (tutorial--describe-nonstandard-key): Adjust for new + format of "menu" description. + (tutorial--find-changed-keys): Describe the specific menu a + command is in. - * ses.el (ses-create-cell-variable-range) - (ses-destroy-cell-variable-range, ses-reset-header-string) - (ses-set-with-undo, ses-unset-with-undo, ses-aset-with-undo) - (ses-insert-row): Fix format of apply undo entries. + * dframe.el (dframe-frame-parameter, dframe-mouse-event-p): + Rewrite compatibility functions to silence byte-compiler. -2005-01-31 Jay Belanger +2007-06-07 Alfred M. Szmidt (tiny change) - * calc/calc-aent.el (math-read-token): Separate the TeX and LaTeX - parts. + * mail/rmailsum.el (rmail-summary-save-buffer): New command. + (rmail-summary-mode-map): Add rmail-summary-save-buffer. - * calc/calc-embed.el (calc-embedded-open-formula) - (calc-embedded-close-formula): Ignore matrix environments. +2007-06-07 Eric M. Ludlam - * calc/calc-ext.el (math-read-big-expr): Make LaTeX the default - TeX mode. + * emacs-lisp/checkdoc.el (checkdoc-ispell-lisp-words): Remove "iff". - * calc/calc-lang.el (math-function-table, math-oper-table) - (math-variable-table): Adjust the LaTeX portions. +2007-06-07 Juanma Barranquero - * calc/calc.el (math-tex-ignore-words): Remove LaTeX portion. - (math-latex-ignore-words): New constant. + * progmodes/ebrowse.el (ebrowse-member-table): + * textmodes/org.el (org-export-ascii-bullets, org-batch-agenda) + (org-batch-agenda-csv): Fix typos in docstrings. -2005-01-31 Richard M. Stallman +2007-06-06 Juanma Barranquero - * textmodes/ispell.el (ispell-local-dictionary-overridden): New var. - (ispell-local-dictionary): Doc fix. - (ispell-dictionary-alist): Don't include ispell-local-dictionary-alist. - Don't reinitialize at run time. Don't defcustom. - All uses changed to append ispell-local-dictionary-alist, - or check it first. - (ispell-current-dictionary): New variable for dictionary in use. - (ispell-dictionary): Now used only for global default. - (ispell-start-process): Set ispell-current-dictionary, - not ispell-dictionary. - (ispell-change-dictionary): Use this only for setting - user preferences. - (ispell-internal-change-dictionary): New function - to change the current dictionary in use. - (ispell-region, ispell-process-line, ispell-buffer-local-dict): - Use ispell-current-dictionary. - Handle ispell-local-dictionary-overridden. - (ispell-buffer-local-dict): Call ispell-internal-change-dictionary. + * pgg.el (pgg-sign-region, pgg-sign): + * ses.el (ses-call-printer): + * calendar/icalendar.el (icalendar--diarytime-to-isotime): + * textmodes/org.el (org-cycle): Fix typos in docstrings. -2005-01-31 Jay Belanger +2007-06-06 Carsten Dominik + + * textmodes/org.el (org-export-region-as-html) + (org-replace-region-by-html, org-number-to-letters) + (org-table-fedit-finish, org-normalize-color) + (org-table-fedit-ref-right, org-date-to-gregorian) + (org-table-fedit-move, org-table-convert-refs-to-rc) + (org-calendar-holiday, org-table-fedit-toggle-ref-type) + (org-write-agenda, org-colgroup-info-to-vline-list) + (org-agenda-todo-previousset, org-defkey, org-encode-for-stdout) + (org-indent-line-function, org-export-as-html-to-buffer) + (org-store-agenda-views, org-update-mode-line) + (org-find-if, org-delete-all) + (org-table-fedit-convert-buffer, org-emphasize) + (org-uniquify, org-table-fedit-lisp-indent) + (org-table-fedit-scroll, org-get-todo-sequence-head) + (org-table-fedit-scroll-down, org-table-fedit-line-down) + (org-table-fedit-ref-left, org-agenda-export-csv-mapper) + (org-table-fedit-toggle-coordinates, org-dvipng-color) + (org-table-fedit-line-up, org-table-fedit-ref-down) + (org-table-formula-from-user, org-mode-flyspell-verify) + (org-cycle-show-empty-lines, org-ctrl-c-ret) + (org-table-formula-to-user, org-diary-to-ical-string) + (orgtbl-export, org-table-fedit-post-command) + (org-closed-in-range, org-shiftcontrolright) + (org-table-convert-refs-to-an, org-table-hline-and-move) + (org-table-formula-less-p, org-format-table-ascii) + (org-agenda-get-sexps, org-shift-refpart) + (org-diary-sexp-entry, org-time-string-to-absolute) + (org-table-show-reference, org-letters-to-number) + (org-fix-agenda-info, org-table-fedit-ref-up) + (org-table-fedit-shift-reference, org-table-fedit-abort) + (org-closest-date, org-shiftcontrolleft) + (org-at-heading-or-item-p, org-rematch-and-replace) + (org-agenda-todo-nextset, org-export-grab-title-from-buffer): + New functions. + (org-table-edit-scroll-down, org-finish-edit-formulas) + (org-table-edit-next-field, org-abort-edit-formulas) + (org-font-lock-level, org-export-find-first-heading-line) + (org-table-edit-line-down, org-table-edit-backward-field) + (org-edit-formula-lisp-indent, org-table-edit-move) + (org-check-log-option, org-this-word) + (org-table-edit-line-up, org-table-edit-formulas-post-command) + (org-agenda-file-to-end, org-expand-file-name) + (org-fake-empty-table-line, org-table-edit-scroll) + (org-toggle-log-option, org-show-reference): Function removed. + (org-inhibit-invisibility, org-table-formula-make-cmp-string): + New defsubsts. + (org-unmodified, org-batch-store-agenda-views) + (org-batch-agenda-csv): New macro. + (org-agenda-export): New customization group. + (org-agenda-skip-deadline-if-done, org-agenda-remove-tags) + (org-highest-priority, org-agenda-exporter-settings) + (org-log-done-with-time, org-replace-disputed-keys) + (org-format-latex-header, org-export-table-header-tags) + (org-cycle-separator-lines, org-export-table-data-tags) + (org-icalendar-include-sexps) + (org-empty-line-terminates-plain-lists) + (org-log-repeat, org-special-ctrl-a) + (org-table-use-standard-references, org-disputed-keys) + (org-export-skip-text-before-1st-heading, org-agenda-with-colors) + (org-agenda-export-html-style): New option. + (org-allow-auto-repeat, org-agenda-remove-tags-when-in-prefix) + (org-CUA-compatible): Option removed. + (org-agenda-structure, org-sexp-date): New face. + (org-todo-keywords-for-agenda, org-not-done-keywords) + (org-planning-or-clock-line-re, org-agenda-name) + (org-table-colgroup-info, org-todo-sets) + (constants-unit-system, org-clock-mode-line-entry) + (org-mode-line-timer, org-table-current-begin-pos) + (org-todo-keywords-1, org-mode-line-string) + (org-table-clean-did-remove-column, org-table-fedit-map) + (org-clock-heading, org-table-buffer-is-an) + (org-agenda-info, org-done-keywords) + (org-done-keywords-for-agenda, org-todo-heads) + (org-todo-kwd-alist, org-clock-start-time): New variable. + (org-todo-kwd-priority-p, org-edit-formulas-map) + (org-repeat-re, org-todo-kwd-max-priority) + (org-version, org-done-string) + (org-table-clean-did-remove-column-1, org-disputed-keys): + Remove variables. + (org-table-translate-regexp, org-repeat-re, org-version): New consts. + (org-ts-lengths): Constant removed. + (org-follow-gnus-link): Don't ask how many articles to read. + (org-export-find-first-export-line): Rename from + `org-export-find-first-heading'. + Use `org-export-skip-text-before-1st-heading'. + (org-table-fedit-post-command): Rename from + `org-table-edit-formulas-post-command'. + (org-table-fedit-finish): Rename from `org-finish-edit-formulas'. + (org-table-fedit-abort): Rename from `org-abort-edit-formulas'. + (org-table-fedit-lisp-indent): Rename from + `org-edit-formula-lisp-indent'. + (org-table-show-reference): Rename from `org-show-reference'. + (org-table-store-formulas): Use `org-table-formula-less-p'. + (org-table-edit-formulas): Position cursor to current field equation. + (org-update-checkbox-count, org-hide-archived-subtrees) + (org-timestamp-up-day, org-timestamp-down-day) + (org-shiftmetaleft, org-shiftmetaright, org-shiftmetaup) + (org-shiftmetadown, org-metaleft, org-metaright, org-metaup) + (org-metadown, org-shiftup, org-shiftdown, org-shiftright) + (org-shiftleft, org-ctrl-c-ctrl-c, org-context): + Let `org-on-heading-p' also check for invisible heading. + (org-read-date): Match am/pm times. + (org-eval-in-calendar): Fix default date in prompt. - * calc/calc-aent.el (math-read-token): Add support for LaTeX. +2007-06-05 Chong Yidong - * calc/calc-ext.el: Add calc-latex-language to autoloads. - (calc-mode-map): Add calc-latex-language. + * files.el (auto-mode-alist): Separate "ChangeLog.1" and + "ChangeLog.a" entries, giving the latter lower priority. - * calc/calc-lang.el (calc-latex-language, math-latex-parse-frac) - (math-latex-print-frac): New functions. - (math-oper-table, math-function-table, math-variable-table) - (math-complex-format, math-input-filter): Add latex properties. - (calc-set-language): Set math-expr-special-function-mapping. +2007-06-05 Juanma Barranquero - * calc/calc-prog.el (calc-edit-user-syntax, calc-fix-token-name) - (calc-write-parse-table-part): Add LaTeX support. + * faces.el (face-id): If the argument is a face alias, + return the ID of the target face. - * calc/calc.el (calc-language): Adjust docstring. - (calc-set-mode-line): Add LaTeX support. - (math-expr-special-function-mapping): New variable. - (math-tex-ignore-words): Add to list. +2007-06-05 Michael Albinus - * calc/calccomp.el (math-compose-expr, math-compose-rows): - Add LaTeX support. - (math-compose-expr): Add support for special functions. + * net/socks.el (top): Remove unnecessary copyright line. - * calc/calc-help.el (calc-d-prefix-help): Add LaTeX. +2007-06-04 Chong Yidong -2005-01-31 Nick Roberts + * longlines.el (longlines-auto-wrap): Handle argument correctly. - * progmodes/gdb-ui.el (gdb-memory-address) - (gdb-memory-repeat-count, gdb-memory-format, gdb-memory-unit) - (gdb-memory-mode-map, gdb-memory-format-keymap) - (gdb-memory-format-menu, gdb-memory-unit-keymap) - (gdb-memory-unit-menu): New variables for a buffer - that lets the user examine program memory. - (gdb-memory-set-address, gdb-memory-set-repeat-count) - (gdb-memory-format-binary, gdb-memory-format-octal) - (gdb-memory-format-unsigned, gdb-memory-format-signed) - (gdb-memory-format-hexadecimal, gdb-memory-format-menu) - (gdb-memory-format-menu-1, gdb-memory-unit-giant) - (gdb-memory-unit-word, gdb-memory-unit-halfword) - (gdb-memory-unit-byte, gdb-memory-unit-menu) - (gdb-memory-unit-menu-1, gdb-make-header-line-mouse-map) - (gdb-memory-mode, gdb-memory-buffer-name) - (gdb-display-memory-buffer, gdb-frame-memory-buffer): - New functions for above buffer. +2007-06-04 Michael Albinus -2005-01-30 Richard M. Stallman + * net/socks.el: New file, taken from w3 repository. + (top): Update Copyright. Don't load cl.el. + (all): Replace `case' by `cond', `string-to-int' by + `string-to-number', and `process-kill-without-query' by + `set-process-query-on-exit-flag'. + (socks-char-int): Remove defalias and all occurrences. - * cus-edit.el (custom-bury-buffer): Function deleted. - (custom-buffer-done-function): Option deleted. - (custom-buffer-done-kill): New replacement option. - (Custom-buffer-done): Call quit-window. - (custom-buffer-create-internal): Update for above changes. +2007-06-04 Juanma Barranquero -2005-01-29 Luc Teirlinck + * progmodes/compile.el (compilation-find-file, compilation-handle-exit): + Fix typos in docstrings. + (compilation-search-path, compilation-buffer-name-function): Doc fixes. + (compilation-finish-function): Fix typo in obsolescence declaration. - * simple.el (undo-ask-before-discard): New var. - (undo-outer-limit-truncate): Implement it. - (undo-extra-outer-limit): Doc update. +2007-06-03 Sam Steingold -2005-01-29 Richard M. Stallman + * progmodes/compile.el: Add TIMESTAMP to the LOC data structure, to + handle unending automatic recompilation of changed files (`omake -P'). + (compilation-loop): VISITED is now 5th CDR. + (compilation-next-error-function): Set TIMESTAMP. - * ses.el (undo-more): Delete defadvice. - (ses-begin-change): Doc fix. +2007-06-03 Sam Steingold - * dired.el (dired-mode-map): Remap `undo' and `advertised-undo' - instead of rebinding C-x u and C-_. + * files.el (kill-buffer-ask): New function. + (kill-some-buffers): Use it. + (kill-matching-buffers): New user command. - * files.el (normal-backup-enable-predicate): Return nil for files - in /tmp, regardless of temporary-file-directory. +2007-06-01 David Kastrup - * man.el (Man-getpage-in-background): Disable undo in Man buffer. + * dired.el (dired-recursive-deletes, dired-recursive-copies): + Change default to `top'. - * rect.el (delete-rectangle-line, delete-extract-rectangle-line) - (open-rectangle, delete-whitespace-rectangle-line) - (clear-rectangle-line): If FILL, pass t instead of FILL - for move-to-column's 2nd arg. +2007-05-31 Richard Stallman - * simple.el (undo): Fix the test for continuing a series of undos. - (undo-more): Set pending-undo-list to t when we reach end. - (pending-undo-list): Move up defvar. + * dired.el (dired-do-flagged-delete, dired-do-delete): Doc fix. - * wid-edit.el (widget-button-click): - Shorten the range of the track-mouse binding. +2007-05-31 Stefan Monnier - * comint.el (comint-insert-input): Undo previous changes; - use last-input-event in interactive spec. + * textmodes/css-mode.el: New file. -2005-01-29 Eli Zaretskii +2007-05-30 Michael Olson - * progmodes/compile.el (compilation-start): Bind buffer-read-only - to nil before invoking call-process. Reset buffer's modified flag - after fontifying it in the no-async branch. + * emacs-lisp/tq.el (tq-queue-pop): Stifle error when a process has + died and we are trying to send a signal to it. The program using + tq.el should periodically check to see whether the process has + died and react appropriately -- this is not the responsibility of + tq.el, and is consistent with the rest of the tq.el source code. - * wid-edit.el (widget-specify-button): If mouse pointer shape - cannot be changed, use mouse face instead. +2007-05-29 Martin Rudalics -2005-01-29 Nick Roberts + * textmodes/table.el (table--point-entered-cell-function) + (table--point-left-cell-function): + Bind `inhibit-point-motion-hooks' to t. - * progmodes/gdb-ui.el (gdb-info-breakpoints-custom) - (gdb-goto-breakpoint): Make breakpoint handling work on template - functions in C++. Reported by Martin Reed . - (gdb-assembler-custom): Update to recognize breakpoint information - added on 2005-01-19. +2007-05-29 Nikolaj Schumacher (tiny change) -2005-01-28 Stefan Monnier + * emacs-lisp/rx.el (rx): Doc fix. - * progmodes/scheme.el (scheme-mode-variables): Set comment-add. - (dsssl-mode): Use define-derived-mode. - (scheme-mode-initialize): Remove. - (scheme-mode): Use run-mode-hooks. +2007-05-28 Juanma Barranquero - * cus-edit.el (customize-group-other-window) - (custom-buffer-create-other-window): Don't override special-display-*. - (custom-mode-map): Make it dense. + * progmodes/idlwave.el (idlwave-routines): Fix typo in docstring. - * emacs-lisp/lisp-mode.el (eval-defun-1): Make sure `defvar' always - sets the default value. +2007-05-28 Michael Albinus -2005-01-28 Eli Zaretskii + Sync with Tramp 2.0.56. - * descr-text.el: Add more keywords. + * net/tramp.el: + * net/tramp-ftp.el: + * net/tramp-smb.el: + * net/tramp-util.el: + * net/tramp-vc.el: + Don't load cl.el, because that pollutes the namespace. Replace cl + macros by their implementations where necessary. Requested by + Richard Stallman . -2005-01-27 Stefan Monnier + * net/tramp.el (top): Make `set-buffer-multibyte' an alias if it + doesn't exist. + (with-parsed-tramp-file-name): Protect debug spec during compilation. + (tramp-handle-insert-directory): Check (featurep 'ls-lisp). + (tramp-file-name-p, tramp-file-name-multi-method) + (tramp-file-name-method, tramp-file-name-user) + (tramp-file-name-host, tramp-file-name-localname): New defuns, + replacing defstruct `tramp-file-name'. + (tramp-handle-file-remote-p, tramp-completion-dissect-file-name1) + (tramp-dissect-file-name, tramp-dissect-multi-file-name): + Apply `vector' instead of `make-tramp-file-name'. + (tramp-handle-make-auto-save-file-name): + Apply `tramp-temporary-file-directory' for compatibility reasons. + (tramp-completion-mode): Use `natnump' instead of `wholenump' + because of XEmacs. + (tramp-completion-mode): `last-input-event' is nil when XEmacs is + started. - * speedbar.el: Avoid unnecessary use of locate-library. +2007-05-28 Chong Yidong - * international/mule-cmds.el (standard-display-european-internal): - Don't fiddle with latin-1 non-break space any more since it's now - special cased in the C code. - Don't "do&undo" setting for 160 (especially, don't undo incorrectly). + * textmodes/sgml-mode.el (sgml-point-entered): Use condition-case. -2005-01-26 Luc Teirlinck +2007-05-27 Tetsurou Okazaki (tiny change) - * cus-start.el (all): Add `undo-outer-limit'. + * log-edit.el (log-edit-changelog-paragraph): Return point-max + as the end of the ChangeLog paragraph when it ends without a line + termination. -2005-01-25 Roland Winkler +2007-05-27 Ryan Yeske - * textmodes/bibtex.el (bibtex-format-entry): - Use `bibtex-empty-field-re' only on the text of fields, not on entire - field lines. - (bibtex-autofill-entry): Use `bibtex-empty-field-re' on a string, - not on part of a buffer. + * net/webjump.el (webjump-sample-sites): + Add simple Wikipedia query. -2005-01-25 Lute Kamstra +2007-05-25 Stefan Monnier - * textmodes/bibtex.el (bibtex-empty-field-re): Don't match - nonempty field text strings like "{letters\\macro{}more letters}". - Clarify docstring. - (bibtex-sort-entry-class, bibtex-autokey-titleword-ignore) - (bibtex-entry-offset, bibtex-parse-association) - (bibtex-parse-field-name): Fix typos in docstrings. - (bibtex-field-list, bibtex-find-crossref): Fix typos in error messages. + * emacs-lisp/derived.el (define-derived-mode): Remove bogus + compatibility code. -2005-01-24 Dan Nicolaescu - Juri Linkov + * emacs-lisp/copyright.el (copyright-names-regexp): New var. + (copyright-update-year): Use it. - * textmodes/reftex-global.el (reftex-isearch-push-state-function) - (reftex-isearch-pop-state-function, reftex-isearch-isearch-search) - (reftex-isearch-switch-to-next-file, reftex-isearch-turn-off) - (reftex-isearch-turn-on, reftex-isearch-minor-mode): New functions. + * edmacro.el (edmacro-format-keys): Use current-active-maps. - * textmodes/reftex.el (reftex-mode-menu): Add entry for reftex - isearch minor mode. + * ediff-init.el (ediff-defvar-local, ediff-with-current-buffer): + Add indentation and debugging info. Fix up comment convention. -2005-01-24 Luc Teirlinck + * cus-dep.el (custom-make-dependencies): Simplify. - * help-at-pt.el (help-at-pt-display-when-idle): Add autoload cookie. + * composite.el (compose-region, decompose-region): + Use inhibit-read-only and restore-buffer-modified-p. -2005-01-24 Lute Kamstra + * xt-mouse.el (xterm-mouse-truncate-wrap): New function. + (xterm-mouse-event): Use it. - * textmodes/ispell.el (ispell-dictionary-alist-4): Rewrite the - CASECHARS and NOT-CASECHARS regular expressions of the - "nederlands" and "nederlands8" dictionaries to prevent a "Range - striding over charsets" error. +2007-05-25 Juanma Barranquero -2005-01-24 Jay Belanger + * bs.el (bs-cycle-previous): Don't modify the cycle list until + `switch-to-buffer' has returned succesfully. + (bs-cycle-next): Ditto. Also, don't bury the buffer when the + window is dedicated (it could iconify the frame). - * calc/calc-store.el (calc-declare-variable): Use calc-var-name to - display variable name. +2007-05-25 Miles Bader -2005-01-24 Kenichi Handa + * vc-hooks.el (vc-find-root): Fix file attribute test. - * international/encoded-kb.el (encoded-kbd-iso2022-single-shift): - Fix setting of the element of encoded-kbd-iso2022-invocations. +2007-05-24 Richard Stallman -2005-01-24 Nick Roberts + * textmodes/flyspell.el (flyspell-correct-word-before-point): + Don't let opoint be nil. + (flyspell-emacs-popup): Explicit error if no dialogs. - * progmodes/gdb-ui.el (gdb-goto-breakpoint, gdb-frames-select) - (gdb-threads-select): Change to also accept mouse events. - (gdb-mouse-goto-breakpoint, gdb-frames-mouse-select) - (gdb-threads-mouse-select): Delete. +2007-05-24 Chong Yidong -2005-01-23 Luc Teirlinck + * image-mode.el (image-forward-hscroll, image-backward-hscroll) + (image-next-line, image-previous-line, image-scroll-up) + (image-scroll-down, image-bol, image-eol, image-bob, image-eob): + New functions. + (image-mode-map): Remap motion commands. + (image-mode-text-map): New keymap for viewing images as text. + (image-mode): Use image-mode-map. + (image-toggle-display): Toggle auto-hscroll-mode and mode keymaps. - * files.el (insert-directory): Take care of empty directory, - listed without -a switch. +2007-05-24 Stefan Monnier -2005-01-23 Stefan Monnier + * textmodes/fill.el (canonically-space-region): Make the second arg + a marker if it's not already the case. - * textmodes/refill.el (refill-post-command-function): - Add `indent-new-comment-line' and `reindent-then-newline-and-indent' - to the list of functions that we should be careful not to undo. - (refill-late-fill-paragraph-function): Remove. - (refill-saved-state): New var. - (refill-mode): Use it to save fill-paragraph-function. - Save also the value of auto-fill-function. +2007-05-23 Eli Zaretskii - * term/w32-win.el: Simplify code. + * tar-mode.el (tar-header-block-summarize, tar-summarize-buffer) + (tar-get-descriptor): Handle type 55, an extended pax header. -2005-01-23 Kim F. Storm +2007-05-23 Stefan Monnier - * simple.el (line-move): Adapt to new return value from - pos-visible-in-window-p. + * autoinsert.el (auto-insert-alist): Quote elisp sample code so as not + to confuse outline-minor-mode. - * simple.el (line-move): Fix last change. Check partial - visibility at point rather than at window-start. +2007-05-23 Eli Zaretskii -2005-01-22 Jason Rumney + * tar-mode.el (tar-file-name-handler): New function. + (tar-extract): Bind file-name-handler-alist to it to force + find-buffer-file-type-coding-system behave as if the file being + extracted existed. Use last-coding-system-used to force + buffer-file-coding-system to what decode-coding-region actually + used to decode the file. - * term/w32-win.el (xw-defined-colors): Remove debug-message. +2007-05-23 Nikolaj Schumacher (tiny change) -2005-01-22 David Kastrup + * progmodes/compile.el (compilation-handle-exit): + `compilation-finish-function' may change the current buffer. - * progmodes/grep.el: Add alias `find-grep' for `grep-find'. +2007-05-22 Richard Stallman -2005-01-22 Eli Zaretskii + * files.el (set-auto-mode): Doc fix. - * type-break.el (type-break-mode): Add a test for - type-break-file-name being non-nil. +2007-05-22 Jan Djärv -2005-01-22 Toby Allsopp (tiny change) + * help-fns.el (find-source-lisp-file): New function. + (describe-function-1): Use find-source-lisp-file to find source + file in compile tree. - * net/eudc.el (top level): Call (message "") via progn, so that - eudc-options-file is loaded. +2007-05-22 Eli Zaretskii -2005-01-22 Kim F. Storm + * dos-w32.el (find-buffer-file-type-coding-system): Doc fix. - * simple.el (line-move-1): Rename from line-move. - (line-move): New function that adjusts vscroll for partially - visible rows, and calls line-move-1 otherwise. +2007-05-22 Juanma Barranquero -2005-01-21 Ren,Ai(B Kyllingstad + * emacs-lisp/easy-mmode.el (define-minor-mode) + (easy-mmode-define-navigation): Fix typos in docstrings. - * pcomplete.el: Define pcomplete-read-event instead of read-event, - since it's not a complete read-event implementation. +2007-05-22 Glenn Morris -2005-01-20 Jay Belanger + * files.el (auto-mode-alist): Open `.asd' files in lisp-mode. - * calc/calc-ext.el (calc-fancy-prefix-other-key): Set prefix arg - for called function. +2007-05-22 Katsumi Yamaoka -2005-01-20 Steven Tamm + * mail/mail-extr.el (mail-extract-address-components): + Recognize non-ASCII characters except for NBSP as words. - * term/mac-win.el (process-connection-type): Remove. - Controlled now by s/darwin.h:PTY_ITERATION. +2007-05-21 Trent Buck (tiny change) -2005-01-20 Stefan Monnier + * net/rcirc.el (rcirc-fill-column): Allow `window-width'. + (rcirc-print): Handle `window-width'. + (rcirc-buffer-maximum-lines): Doc fix. - * window.el (handle-select-window): Don't switch window when we're - in the minibuffer. +2007-05-21 Chong Yidong -2005-01-10 Paul Pogonyshev + * image-mode.el (image-toggle-display): Don't clear image cache. + Only use filename in image spec if the file is readable. + Call image-refresh. - * subr.el (dotimes-with-progress-reporter): New macro. + * image.el (image-type-from-file-name, image-type): Simplify. + (image-type-auto-detected-p): Don't scan auto-mode-alist. - * ses.el (ses-dotimes-msg): Remove macro. - Use `dotimes-with-progress-reporter' instead. + * files.el (magic-mode-alist): Remove image-type-auto-detected-p. + (magic-fallback-mode-alist): Add image-type-auto-detected-p. -2005-01-19 Steven Tamm +2007-05-20 Nick Roberts - * term/mac-win.el (process-connection-type): Use new - operating-system-release variable to use ptys on Darwin 7 (OS X - 10.3) when using carbon build. + * t-mouse.el (t-mouse-mode): Reset t-mouse-mode to nil if there + is an error. -2005-01-19 Jay Belanger + * term/linux.el (terminal-init-linux): Don't signal an error + if gpm isn't running. - * calc/calc-ext.el (calc-fancy-prefix-other-key): Don't clear - flags if the last command was a tab or M-tab. +2007-05-20 Nick Roberts - * calc/calc-prog.el (calc-user-define-edit): Put original formula - in formula editing buffer. + * t-mouse.el: Reduce to a minor-mode macro call. + (t-mouse-mode): Remove the lighter. -2005-01-19 Nick Roberts + * term/linux.el (terminal-init-linux): Enable t-mouse by default. - * progmodes/gdb-ui.el (gdb-put-breakpoint-icon): Add help-echo for - breakpoint image symbol in margin. +2007-05-19 Dan Nicolaescu -2005-01-19 Jay Belanger + * files.el (auto-mode-alist): Change the regexp so that + ChangeLog.unicode and ChangeLog.multi-tty use change-log-mode. - * calc/calc-prog.el (calc-execute-kbd-macro): - Ignore calc-keep-arg-flag. +2007-06-02 Chong Yidong -2005-01-19 Kenichi Handa + * Version 22.1 released. - * textmodes/ispell.el (ispell-looking-at): New function. - (ispell-process-line): Use ispell-looking-at to compare the ispell - output and the buffer contents. +2007-05-19 Chong Yidong -2005-01-18 Jay Belanger + * paren.el (show-paren-function): Undo 2007-04-19 and 2007-04-20 + changes. - * calc/calc.el (calc-display-raw): Fix docstring. +2007-05-19 Kevin Ryde -2005-01-18 Stefan Monnier + * info.el (Info-fontify-node): Fontify https as well as http and ftp. - * simple.el (blink-matching-open): Strip extra info from syntax. +2007-05-18 Thien-Thi Nguyen - * progmodes/sh-script.el (sh-here-doc-open-re): Don't allow | or other - funny chars in the end-of-here-doc marker. + * textmodes/sgml-mode.el: Revert last change. -2005-01-19 Nick Roberts +2007-05-18 Richard Stallman - * progmodes/gdb-ui.el (gdb-put-string): Copy/create strings so - that enable/disabled state of breakpoints is shown correctly in - fringe and on ttys. - (gdb-put-breakpoint-icon, gdb-info-breakpoints-custom): - Add breakpoint information as text properties. - (gdb-mouse-toggle-breakpoint): - Rename to gdb-mouse-set-clear-breakpoint. - (gdb-mouse-toggle-breakpoint): New function. Enable/disable - breakpoints in the margin. - (gdb-remove-strings): Simplify. + * simple.el (push-mark): Doc fix. -2005-01-17 Jay Belanger +2007-05-18 Rob Riepel - * calc/calc-yank.el (calc-edit-mode): Inhibit read-only when - erasing buffer. + * emulation/tpu-edt.el (CSI-map, SS3-map): Move from global-map to + tpu-global-map. + (tpu-original-global-map): Variable deleted. + (tpu-control-keys-map): New keymap variable. + (tpu-set-control-keys): Use tpu-reset-control-keys rather than + setting keymapping directly. + (tpu-reset-control-keys): Use tpu-control-keys-map instead of + tpu-global-map. + (tpu-edt-on): Activate the tpu-global-map. + (tpu-edt-off): Deactivate the tpu-global-map. -2005-01-17 Richard M. Stallman +2007-05-18 Ryan Yeske - * progmodes/grep.el (grep-find): Copy from `grep' the condition - for calling grep-compute-defaults. + * textmodes/ispell.el (ispell-get-word): Return markers + for start and end positions. + (ispell-word): Assume END is a marker. - * play/decipher.el (decipher-mode): Don't call decipher-read-alphabet - if buffer is empty. +2007-05-17 Christian Plate (tiny change) - * emacs-lisp/lisp.el (backward-kill-sexp, kill-sexp): Doc fixes. + * textmodes/sgml-mode.el (sgml-tag): + Fix bug: Call sgml-transformation-function. -2005-01-17 Stefan Monnier +2007-05-17 Martin Rudalics - * hilit-chg.el (highlight-changes-mode): Don't autoload. + * hilit-chg.el (highlight-changes-rotate-faces): Don't set + modified flag of buffer. Use `inhibit-modification-hooks'. - * bindings.el (mode-line-mode-menu): Use bound-and-true-p for all the - non-preloaded variables. +2007-05-16 Richard Stallman -2005-01-17 Steven Tamm + * buff-menu.el (Buffer-menu-sort-column): Doc fix. - * textmodes/tex-mode.el (tex-start-shell): Adding -i to the - tex-shell cause to force interactivity when using pipes. +2007-05-16 Stefan Monnier -2005-01-17 Kim F. Storm + * files.el (magic-mode-alist, magic-fallback-mode-alist): + Move the *ml, Postscript, and XmCD entries to the fallback part. - * simple.el (just-one-space): Make arg optional. + * files.el (magic-fallback-mode-alist): + Rename from file-start-mode-alist. -2005-01-17 Nick Roberts +2007-05-16 Nikolaj Schumacher (tiny change) - * xt-mouse.el (xterm-mouse-event): Set new optional fourth arg in - posn-at-x-y to t to access left-margin. + * progmodes/compile.el (compilation-handle-exit): Quote first + argument of `run-hook-with-args'. -2005-01-16 Michael Albinus +2007-05-16 Juanma Barranquero - Sync with Tramp 2.0.47. + * buff-menu.el (Buffer-menu-sort-column): + * dabbrev.el (dabbrev-upcase-means-case-search): + * dired.el (dired-recursive-deletes, dired-recursive-copies): + * info.el (Info-current-subfile): + * ls-lisp.el (ls-lisp-verbosity): + * msb.el (msb-menu-cond): + * pcvs.el (cvs-dired-use-hook): + * simple.el (set-mark-command-repeat-pop): + * time.el (display-time-24hr-format, display-time-mail-file): + Doc fixes. - * net/tramp.el (tramp-operation-not-permitted-regexp): New defcustom, - catching keep-date problems in cp/scp operations. - (tramp-handle-copy-file): Don't call `set-file-modes' - unconditionally. Specialized functions should know better what is - necessary. This improves performance a little bit, and the - functions could catch errors with `cp -p' and `scp -p'. - (tramp-do-copy-or-rename-file-via-buffer) - (tramp-do-copy-or-rename-file-out-of-band): Call `set-file-modes' - when appropriate. - (tramp-do-copy-or-rename-file-directly): Mask `cp -p' error. - Call `set-file-modes' when appropriate. - (tramp-action-out-of-band): Mask `scp -p' error. Reported by Isak - Johnsson . - (tramp-get-buffer, tramp-get-debug-buffer): Discard the undo list - of both Tramp buffer and debug buffer. Reported by Joakim Verona - . - (tramp-file-name-for-operation): Mark `shell-command' as magic for - Emacs only. - - * net/tramp-util.el (tramp-minor-mode): New minor mode. Add it to - `find-file-hooks' and `dired-mode-hook'. - (tramp-minor-mode-map): Respective map. Add remapping for - `compile' and `recompile'. - (tramp-remap-command, tramp-recompile): New defuns. - (tramp-compile): Enable `tramp-minor-mode' and `compilation-mode' - in buffer "*Compilation*". Call the commands asynchronously. - - * net/tramp-vc.el (tramp-vc-do-command, tramp-vc-do-command-new) - (tramp-vc-simple-command): Call `tramp-handle-shell-command' but - `shell-command', because it isn't magic in XEmacs. Reported by - Adrian Aichner . - - * net/tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for - `substitute-in-file-name. - (tramp-smb-handle-substitute-in-file-name): New defun. - (tramp-smb-advice-PC-do-completion): Delete advice. - -2005-01-16 Kai Grossjohann - - * net/tramp.el (tramp-wait-for-output): Fix typo in echo processing. - Fix error in deleting region. - -2005-01-15 Richard M. Stallman - - * emacs-lisp/lisp-mnt.el (lm-with-file): Use Lisp mode in temp buffer. - In non-temp buffer, switch syntax table temporarily. - - * emacs-lisp/lisp-mode.el (indent-pp-sexp): Doc fix. - - * replace.el (occur-accumulate-lines, occur-engine): Avoid warnings. - - * tar-mode.el (tar-extract): Bind buffer-undo-list to t. - - * imenu.el (imenu--split-menu): Copy menulist before sorting. - (imenu--generic-function): Use START, not BEG, as pos of definition. - - * simple.el (just-one-space): Argument specifies number of spaces. - - * simple.el (eval-expression-print-format): Avoid warning - about edebug-active. - -2005-01-15 James R. Van Zandt (tiny change) - - * progmodes/sh-script.el: Code copied from make-mode.el - with small changes, - (sh-mode-map): Bind C-c C-\. - (sh-backslash-column, sh-backslash-align): New variables. - (sh-backslash-region, sh-append-backslash): New functions. - -2005-01-15 Sergey Poznyakoff - - * mail/rmail.el: Updated to work with movemail from GNU Mailutils - (rmail-pop-password, rmail-pop-password-required): Move to - rmail-obsolete group. - (rmail-set-pop-password): Rename to rmail-set-remote-password. - All callers updated. - (rmail-get-pop-password): Rename to rmail-get-remote-password. - Take an argument specifying whether it is POP or IMAP mailbox we - are using. All callers updated. - (rmail-pop-password-error): Rename to - rmail-remote-password-error. Added mailutils-specific error message. - (rmail-movemail-search-path) - (rmail-movemail-variant-in-use): New variables. - (rmail-remote-password, rmail-remote-password-required): - New customization variables. - (rmail-probe, rmail-autodetect, rmail-movemail-variant-p): New funs. - (rmail-parse-url): New function. - (rmail-get-new-mail, rmail-insert-inbox-text): Update for use - with GNU mailutils movemail. - -2005-01-15 Kevin Ryde - - * info-look.el (c-mode/symbol): Add ^` to prefix, and change - suffix to space, $ or '$, to correctly position point when going - to @table style constants like DBL_MAX. - -2005-01-15 Jorgen Schaefer (tiny change) - - * type-break.el (type-break-mode, type-break-file-time) - (type-break-file-keystroke-count, type-break-choose-file): - Don't store data in or load data from the file if type-break-file-name - is nil. - (type-break-file-name): Doc update as per the above. - -2005-01-15 Stephen Eglen (tiny change) - - * woman.el (woman-dired-define-key-maybe): If KEY is undefined, - lookup-key might return nil; handle that. - -2005-01-15 Alan Mackenzie - - * progmodes/ebrowse.el (ebrowse-class-in-tree): - Return the tail of the tree rather than the element found, - thus enabling the tree to be setcar'd. + * tutorial.el (get-lang-string, tutorial--find-changed-keys): + * printing.el (pr-ps-fast-fire): Fix typos in docstrings. -2005-01-14 Carsten Dominik + * view.el (view-inhibit-help-message): Fix typo in docstring. + (view-scroll-auto-exit, view-try-extend-at-buffer-end): Doc fixes. - * textmodes/org.el (org-show-following-heading): New option. - (org-show-hierarchy-above): Use `org-show-following-heading'. - (org-cycle): Documentation fix. +2007-05-16 Martin Rudalics - * textmodes/org.el (orgtbl-optimized): New option. - (orgtbl-mode): New command, a minor mode. - (orgtbl-mode-map): New variable. - (turn-on-orgtbl, orgtbl-mode, orgtbl-make-binding) - (orgtbl-error, orgtbl-self-insert-command) - (orgtbl-delete-backward-char, orgtbl-delete-char): New functions. + * textmodes/ispell.el (ispell-start-process): Defend against bad + default-directory. - * textmodes/org.el (org-mode): `org-table-may-need-update' is now - a local variable in each org-mode buffer. +2007-05-14 Eli Zaretskii - * textmodes/org.el (org-set-regexps-and-options): Rename from - `org-set-regexps'. Added checking for STARTUP keyword. - (org-get-current-options): Add STARTUP options. - (org-table-insert-row): Make mode intelligent about when - realignment is needed. - (org-self-insert-command, org-delete-backward-char, org-delete-char): - New commands. - (org-enable-table-editor): New default value `optimized'. - (org-table-blank-field): Support blanking regions if active. + * mail/rmail.el (rmail-convert-to-babyl-format): Check + content-transfer-encoding _last_, because it's its position that + we need as value of base64-header-field-end. -2005-01-14 Carsten Dominik +2007-05-14 Juanma Barranquero - * textmodes/reftex-cite.el (reftex-bib-sort-year): Catch the case - if the year is not given. + * files.el (mode-require-final-newline, require-final-newline) + (enable-local-variables, enable-local-eval): Doc fixes. - * textmodes/reftex-ref.el (reftex-replace-prefix-escapes): - Add new escapes %m and %M, fixed bug with %F by adding - save-match-data. - (reftex-reference): Remove ?. from list of spaces. - (reftex-label-info): Add automatic label prefix recognition. +2007-05-13 Vinicius Jose Latorre - * textmodes/reftex-index.el (reftex-index-next-phrase): - Add slave parameter to call of `reftex-index-this-phrase'. - (reftex-index-this-phrase): New optional argument. - (reftex-index-region-phrases): Add slave parameter to call of - `reftex-index-this-phrase'. - (reftex-display-index): New argument redo. - (reftex-index-rescan): Add `redo' to arguments of - `reftex-display-index'. - (reftex-index-Rescan, reftex-index-revert) - (reftex-index-switch-index-tag): Add `redo' to arguments of - `reftex-display-index'. - (reftex-index-make-phrase-regexp): Fix bug with case-sensitive - indexing. Fix bug with matching is there is a quote before or - after the word. - - * textmodes/reftex-cite.el (reftex-all-used-citation-keys): - Fix bug when collecting citation keys in lines with comments. - (reftex-citation): Prefix argument no longer rescans the document, - but forces prompting for optional arguments of cite macros. - (reftex-do-citation): Prompting for optional arguments implemented. - - * textmodes/reftex-vars.el (reftex-cite-format-builtin): - Add optional arguments to most cite commands. - (reftex-cite-cleanup-optional-args): New option - (reftex-cite-prompt-optional-args): New option. - (reftex-trust-label-prefix): New option. - - * textmodes/reftex-toc.el (reftex-toc-find-section): - Add push-mark before changing the position in the buffer. - - * textmodes/reftex.el (reftex-prefix-to-typekey-alist): New variable. - (reftex-compile-variables): Compute reftex-prefix-to-typekey-alist. - -2005-01-14 Nick Roberts - - * xt-mouse.el (xterm-mouse-event): Compute window co-ordinates - more carefully. - -2005-01-13 Stefan Monnier - - * textmodes/sgml-mode.el (sgml-fill-nobreak): New fun. - (sgml-mode): Use it. - (sgml-get-context): Better keep track of implicitly closed tags. - -2005-01-13 Kenichi Handa - - * textmodes/ispell.el: These changes are to fix misalignment error - caused by equivalent characters of different Emacs charsets. - (ispell-unified-chars-table): New variable. - (ispell-get-decoded-string): New function. - (ispell-get-casechars, ispell-get-not-casechars) - (ispell-get-otherchars): Call ispell-get-decoded-string. - -2005-01-12 Johan Bockg,Ae(Brd - - * custom.el (custom-declare-variable): Just put symbol instead - of (defvar . symbol) in `current-load-list'. - -2005-01-12 Reiner Steib - - * emacs-lisp/elint.el: Fixed typo in Commentary section. - -2005-01-12 Jay Belanger - - * calc/calc-help.el (calc-describe-key): Use temporary info buffer - to create a Calc summary. - -2005-01-12 Kim F. Storm - - * mouse.el (mouse-on-link-p): Change functionality and doc - string to comply with latest description in lisp ref. - -2005-01-12 Nick Roberts - - * xt-mouse.el (xterm-mouse-translate, xterm-mouse-event): - Enable mouse clicks on mode-line, header-line and margin. - (event-type): Give mouse event symbols an `event-kind' property - with value `mouse-click'. - -2005-01-12 Juri Linkov - - * facemenu.el (list-colors-display): Add new arg buffer-name. - Use it. Fix docstring. Replace code for identifying duplicate - colors by the name with call to `list-colors-duplicates' which - identifies duplicate colors by the value unless the color - is one of special Windows colors. Set truncate-lines to t. - Print sorted duplicate color names on each line. Indent to 22 - \(the longest color name in rgb.txt) instead of 20. Optimize. - (list-colors-duplicates): New function. - (facemenu-color-name-equal): Delete function. + * ps-print.el: Use default color when foreground or background color + are unspecified. Reported by Leo . + (ps-print-version): New version 6.7.4. + (ps-rgb-color): New argument. Use default color when color is + unspecified. + (ps-begin-job): Fix code. - * facemenu.el (list-colors-print): New function created from code - in list-colors-display. Print #RRGGBB at the window right edge. - (list-colors-display): When temp-buffer-show-function is not - defined, call list-colors-print from temp-buffer-show-hook - to get the right value of window-width in list-colors-print - after the buffer is displayed. - - * simple.el (pop-mark): Move deactivate-mark out of conditional - part to deactivate the active mark regardless of the state of the - mark ring. - - * desktop.el (desktop-save): Add `mode: emacs-lisp' to the local - variables line in desktop files. - -2005-01-12 Juri Linkov - - * isearch.el (search-highlight, isearch, isearch-lazy-highlight): - Bring together isearch highlight related options. - (lazy-highlight): Replace group `replace' by `matching'. - (lazy-highlight-cleanup, lazy-highlight-initial-delay) - (lazy-highlight-interval, lazy-highlight-max-at-a-time) - (lazy-highlight): Add aliases to old names isearch-lazy-highlight-... - and declare them obsolete. - (lazy-highlight-face): Rename from isearch-lazy-highlight-face. - (isearch-faces): Remove defgroup. - (isearch-overlay, isearch-highlight, isearch-dehighlight): - Move isearch highlighting code closer to lazy highlighting code. - - * replace.el (query-replace-lazy-highlight): Add lazy-highlight group. - (query-replace-highlight, query-replace-lazy-highlight) - (query-replace): Move definitions to the beginning of the file. - -2005-01-11 Juri Linkov - - * toolbar/back_arrow.xpm, toolbar/back_arrow.pbm - * toolbar/lc-back_arrow.xpm, toolbar/lc-fwd_arrow.xpm - * toolbar/fwd_arrow.xpm, toolbar/fwd_arrow.pbm: New icons. - - * info.el (Info-history-forward): New variable. - (Info-select-node): Reset Info-history-forward to nil. - (Info-last): Turn into defalias. - (Info-history-back): Rename from Info-last. - Add current node to Info-history-forward. - (Info-history-forward): New fun. - (Info-mode-map): Replace Info-last by Info-history-back. - Bind Info-history-forward to "r". - (Info-mode-menu): Replace Info-last by Info-history-back. - Fix menu item text. Add menu item for Info-history-forward. - (info-tool-bar-map): Replace Info-last by Info-history-back. - Replace its icon "undo" by "back_arrow". Add icon "fwd_arrow" - for Info-history-forward. - (Info-mode): Replace Info-last by Info-history-back in docstring. - Add local variable Info-history-forward. - (Info-goto-emacs-command-node): Replace Info-last by Info-history-back. - -2005-01-11 Stefan Monnier - - * mouse.el (mouse-drag-mode-line-1, mouse-drag-vertical-line) - (mouse-drag-region, mouse-drag-region-1, mouse-drag-secondary): - Ignore select-window events rather than fiddle with - mouse-autoselect-window. - -2005-01-11 Matthew Mundell - - * type-break.el (type-break-mode): Fix previous change. - -2005-01-10 Jay Belanger - - * calc/calc-ext.el (calc-reset): Reset when inside embedded - calculator; only reset when point is inside a calculator. - Don't adjust the window height if the window takes up the whole height - of the frame. - -2005-01-10 Thien-Thi Nguyen - - * ebuff-menu.el (Electric-buffer-menu-mode): - Preserve value of buffer-local var header-line-format. - -2005-01-09 Jay Belanger - - * calc/calc.el (calc-mode-var-list-restore-saved-values): - Make sure settings file exists before accessing it. - - * calc/calc-embed.el (calc-embedded-subst): - Replace math-multi-subst-rec, which is only supposed to be called - by math-multi-subst, by math-multi-subst. - -2005-01-09 Andre Spiegel - - * vc.el (vc-allow-async-revert): New user option. - (vc-disable-async-diff): New internal variable. - (vc-revert-buffer): Use them to disable asynchronous diff. - - * vc-cvs.el, vc-arch.el, vc-svn.el, vc-mcvs.el (vc-cvs-diff) - (vc-arch-diff, vc-svn-diff, vc-mcvs-diff): Don't diff - asynchronously if vc-disable-async-diff is t. - -2005-01-09 Jay Belanger - - * calc/calc.el (defcalcmodevar): New macro. - (calc-mode-var-list-restore-default-values) - (calc-mode-var-list-restore-saved-values): New functions. - (calc-mode-var-list): Use defcalcmodevar to define it. - (calc-always-load-extensions, calc-line-numbering) - (calc-line-breaking, calc-display-just, calc-display-origin) - (calc-number-radix, calc-leading-zeros, calc-group-digits) - (calc-group-char, calc-point-char, calc-frac-format) - (calc-prefer-frac, calc-hms-format, calc-date-format) - (calc-float-format, calc-full-float-format, calc-complex-format) - (calc-complex-mode, calc-infinite-mode, calc-display-strings) - (calc-matrix-just, calc-break-vectors, calc-full-vectors) - (calc-full-trail-vectors, calc-vector-commas, calc-vector-brackets) - (calc-matrix-brackets, calc-language, calc-language-option) - (calc-left-label, calc-right-label, calc-word-size) - (calc-previous-modulo, calc-simplify-mode, calc-auto-recompute) - (calc-display-raw, calc-internal-prec, calc-angle-mode) - (calc-algebraic-mode, calc-incomplete-algebraic-mode) - (calc-symbolic-mode, calc-matrix-mode, calc-shift-prefix) - (calc-window-height, calc-display-trail, calc-show-selections) - (calc-use-selections, calc-assoc-selections) - (calc-display-working-message, calc-auto-why, calc-timing) - (calc-mode-save-mode, calc-standard-date-formats, calc-autorange-units) - (calc-was-keypad-mode, calc-full-mode, calc-user-parse-tables) - (calc-gnuplot-default-device, calc-gnuplot-default-output) - (calc-gnuplot-print-device, calc-gnuplot-print-output) - (calc-gnuplot-geometry, calc-graph-default-resolution) - (calc-graph-default-resolution-3d, calc-invocation-macro) - (calc-show-banner): Use defcalcmodevar to declare them and set - their default values. +2007-05-12 Chong Yidong - * calc/calc-ext.el (calc-reset): Restore saved values of variables - instead of default values (but restore default values if there is - an argument of 0). + * longlines.el (longlines-mode): Make longlines-auto-wrap + buffer-local. Add hooks unconditionally. + (longlines-auto-wrap): Toggle wrapping. + (longlines-after-change-function) + (longlines-post-command-function): Check longlines-auto-wrap. -2005-01-09 David Kastrup +2007-05-12 Nick Roberts - * desktop.el (desktop-restore-eager): Fix typo in type. + * xt-mouse.el (xterm-mouse-debug-buffer): New variable. + (xterm-mouse-translate): Use it. -2005-01-08 Richard M. Stallman +2007-05-10 Richard Stallman - * cus-edit.el (customize): Delete :link. + * international/iso-cvt.el (iso-cvt-read-only): Ignore arguments. + (iso-cvt-write-only): Likewise. -2005-01-08 Jay Belanger + * emacs-lisp/easy-mmode.el (define-minor-mode): + Fix generated doc string. - * calc/calc.el (calc-mode): Remove the extension from the - `calc-settings-file' file name when loading it. + * startup.el (fancy-splash-text): Add URL of guided tour. + Adjust horizontal and vertical whitespace. -2005-01-08 Kim F. Storm + * progmodes/compile.el (compilation-handle-exit): + Use run-hook-with-args to run compilation-finish-functions. - * info.el (Info-mode-map, Info-next-link-keymap) - (Info-prev-link-keymap, Info-up-link-keymap): - Map follow-link to mouse-face. - (Info-fontify-node): Add "mouse-2: " prefix to tooltip. + * files.el (file-start-mode-alist): New variable. + (magic-mode-regexp-match-limit): Doc fix. + (set-auto-mode): Handle file-start-mode-alist. + A little cleanup of structure. -2005-01-08 Jay Belanger + * dabbrev.el (dabbrev-eliminate-newlines): + Renamed from dabbrev--eliminate-newlines. All uses changed. - * calc/calc.el (calc-settings-file): Change default value. - Suggested by cgw in a comment in calc-mode.el. +2007-05-10 Michaël Cadilhac - * calc/calc-mode.el (calc-settings-file-name): - Compare calc-settings-file to user-init-file instead of ~/.emacs. - Replace ~/.emacs in a prompt by calc-settings-file. + * man.el (Man-next-section): Don't consider the last line of the page + as being part of any section. -2005-01-07 Lars Hansen +2007-05-10 Stefan Monnier - * desktop.el (desktop-restore-eager, desktop-lazy-verbose) - (desktop-lazy-idle-delay): New customizable variables. - (desktop-buffer-args-list): New variable. - (desktop-append-buffer-args): New function. - (desktop-save): Call desktop-append-buffer-args for some buffers. - (desktop-lazy-create-buffer): New function. - (desktop-idle-create-buffers): New function. - (desktop-read): Add message about buffers to restore lazily. - (desktop-lazy-abort): New command. - (desktop-clear): Call desktop-lazy-abort. - (desktop-lazy-complete): New command. + * textmodes/sgml-mode.el (sgml-value): Fix handling of attributes which + can take any number of values. -2005-01-06 Richard M. Stallman +2007-05-09 Stefan Monnier - * emacs-lisp/find-func.el (find-face-definition): - Rename from find-face. + * textmodes/tex-mode.el (tex-font-lock-keywords-2): Add citet and citep + to the list of citation commands. -2005-01-06 Kim F. Storm +2007-05-09 Stefan Monnier - * simple.el (completion-list-mode-map): Map follow-link to mouse-face. + * vc-hooks.el (vc-find-root): Stop searching when the user changes. - * man.el (Man-xref-man-page, Man-xref-header-file) - (Man-xref-normal-file): Add follow-link property. +2007-05-09 Edward O'Connor (tiny change) -2005-01-06 Jay Belanger + * progmodes/python.el (python-font-lock-keywords) + (python-open-block-statement-p, python-mode): Add support for the new + "with" keyword. - * calc/calc-units.el: Make sure the proper macro definitions are - available when compiling. +2007-05-08 Stefan Monnier -2005-01-06 Juri Linkov + * diff-mode.el (diff-apply-hunk, diff-test-hunk): Don't do by default + the exact opposite of diff-goto-source. - * isearch.el (isearch-lazy-highlight-update): - Rename `isearch-lazy-highlight-interval' to `lazy-highlight-interval'. + * emacs-lisp/advice.el (ad-special-forms): Remove. + (ad-special-form-p): Use subr-arity. -2005-01-06 Miles Bader + * newcomment.el (comment-search-forward): Make sure we search forward. + (comment-enter-backward): Try and distinguish the non-matching case at + EOB from the non-matching case with a missing comment-end-skip for + a 2-char comment ender. + (comment-choose-indent): New function extracted from comment-indent. + Improve the alignment algorithm. + (comment-indent): Use it. - * isearch.el (lazy-highlight): Rename from `lazy-highlight-face'. - (isearch-lazy-highlight-face): Use new name. + * textmodes/sgml-mode.el (sgml-lexical-context): Add handling of + XML style Processing Instructions. + (sgml-parse-tag-backward): Handle XML-style PIs. Also ensure progress. + (sgml-calculate-indent): Handle `pi' context. -2005-01-05 Stefan Monnier + * vc.el: Ensure that update-changelog issues an error when used with + a backend that does not implement it. + (vc-update-changelog-rcs2log): Rename from vc-default-update-changelog. + Remove `backend' argument. Use expand-file-name. + (vc-cvs-update-changelog, vc-rcs-update-changelog): New aliases. - * uniquify.el (uniquify-rationalize-file-buffer-names): - Re-add an interactive spec. - (uniquify-rationalize-file-buffer-names): Fix corner case when renaming - to the same name. + * progmodes/python.el (python-end-of-block): Revert last change. + (python-end-of-statement): Make sure we move *forward*. - * isearch.el (isearch-dehighlight): Remove unused arg `totally'. - (isearch-update, isearch-done): Adjust calls accordingly. +2007-05-08 Richard Stallman -2005-01-05 Richard M. Stallman + * mail/mailabbrev.el (sendmail-pre-abbrev-expand-hook): + Don't include non-self-insert commands in the exception for `-'. - * custom.el (custom-set-variables, custom-theme-set-variables): - Clarify documentation. +2007-05-08 David Reitter - * emacs-lisp/find-func.el (find-variable) - (find-variable-other-window, find-variable-other-frame): - Fix the TYPE args to find-function-read and find-function-do-it. - (find-function): Doc fix. - (find-function-at-point): Replace function-at-point alias. + * progmodes/python.el (python-guess-indent): Check non-nullness + before comparing indent against the 2..8 interval. -2005-01-04 Richard M. Stallman +2007-05-07 YAMAMOTO Mitsuharu - * cus-face.el (custom-declare-face): - Record defface in current-load-list. + * term/mac-win.el (mac-ts-unicode-for-key-event): Check if text is + available. - * help-fns.el (variable-at-point): New arg ANY-SYMBOL. +2007-05-06 Richard Stallman - * emacs-lisp/find-func.el: Doc fixes. - (find-face-regexp): New variable. - (find-function-regexp-alist): New variable. - (find-function-C-source): Third arg is now TYPE. - (find-function-search-for-symbol): Handle general TYPE. - (find-function-read, find-function-do-it): Handle general TYPE. - (find-definition-noselect, find-face): New functions. - (function-at-point): Alias deleted. + * emacs-lisp/eldoc.el (turn-on-eldoc-mode): Doc fix. -2005-01-04 Stefan Monnier +2007-05-05 Stefan Monnier - * battery.el (display-battery-mode): Rename from display-battery. - Handle the case where it gets turned off. + * diff.el (diff): Use buffer-local vars diff-old-file and diff-new-file + rather than storing their value in the revert-buffer function. -2005-01-04 Richard M. Stallman +2007-05-04 Nick Roberts - * cus-edit.el (customize): Make :link point to user doc. + * t-mouse.el (t-mouse-mode): Do nothing on a graphical display + when disabling t-mouse-mode. - * man.el (Man-fontify-manpage): Turn off undo generation. +2007-05-01 Davis Herring - * add-log.el (change-log-font-lock-keywords): Don't match just "From". + * calendar/timeclock.el: Update version number. + (timeclock-modeline-display): Mention timeclock-use-display-time + in explanatory message. + (timeclock-in): Fix non-interactive workday specifications. + (timeclock-log): Don't kill the log buffer if it already existed. + Suppress warnings when finding the log. Don't check for a nil + project twice. Run hooks after killing the buffer (if applicable). + (timeclock-geometric-mean): Rename to `timeclock-mean' (it never + was geometric). All uses changed. + (timeclock-generate-report): Support prefix argument. -2005-01-04 Andreas Schwab +2007-05-03 Ryan Yeske - * files.el (insert-directory): Only look for error lines in - inserted text. Don't move too far after processing --dired markers. + * net/rcirc.el (rcirc-timeout-seconds): Increase to prevent unwanted + disconnections. -2005-01-04 Richard M. Stallman +2007-05-01 Romain Francoise - * mail/mailabbrev.el (sendmail-pre-abbrev-expand-hook): - Don't expand if the character is @, period, dash, etc. - (define-mail-abbrev): Quote names that contain problem characters. + * dired-x.el: Revert 2007-04-06 change. -2005-01-04 Thien-Thi Nguyen +2007-04-29 Stephen Berman - * progmodes/hideshow.el: No longer require `cl'; `dolist' is standard. + * find-dired.el (find-dired-filter): Propertize all text down to eob. -2005-01-03 Richard M. Stallman +2007-04-29 Richard Stallman - * replace.el (replace-dehighlight): Use lazy-highlight-cleanup. - (query-replace-highlight, query-replace-lazy-highlight) - (query-replace): Definitions moved up. Doc fix. + * international/mule.el (auto-coding-alist): Add pdf => no-conversion. -2005-01-03 Richard M. Stallman +2007-04-28 Stefan Monnier - * isearch.el (lazy-highlight): Group renamed from isearch-lazy-... - (lazy-highlight-cleanup, lazy-highlight-initial-delay) - (lazy-highlight-interval, lazy-highlight-max-at-a-time) - (lazy-highlight-face): Rename from isearch-lazy-... - Change all references to them. + * progmodes/cc-mode.el (c-before-change): Use point-min rather + than 1. -2005-01-03 Luc Teirlinck +2007-04-28 Richard Stallman - * cus-edit.el (custom-file): Doc fix for defcustom. - (custom-file): The function no longer sets the variable - `custom-file' to its return value. + * progmodes/sh-script.el (sh-mode): Recognize .profile as sh style. - * startup.el (command-line): No longer load `custom-file'. +2007-04-28 Nick Roberts -2005-01-03 Stefan Monnier + * progmodes/gud.el (gud-menu-map): Pdb can't handle SIGINT so + don't put stop on toolbar. - * emacs-lisp/find-func.el (find-variable-regexp): Avoid defface. +2007-04-28 Stefan Monnier - * progmodes/perl-mode.el (perl-nochange, perl-calculate-indent): - Don't confuse module-prefixed identifiers for labels. - Reported by Juan-Leon Lahoz Garcia . + * vc-hooks.el (vc-ignore-dir-regexp): Add /.../ for the DFS filesystem. -2005-01-02 Richard M. Stallman +2007-04-28 Eli Zaretskii - * files.el (basic-save-buffer-1): Fix previous change. + * makefile.w32-in ($(lisp)/mh-e/mh-loaddefs.el): Use ./mh-e + instead of $(lisp)/mh-e. - * loadhist.el (file-loadhist-lookup): New function. - (file-provides, file-requires): Use it. +2007-04-28 Glenn Morris - * electric.el (Electric-pop-up-window): Use fit-window-to-buffer - instead of calculating the right size. + * image-dired.el (image-dired-cmd-create-thumbnail-options) + (image-dired-cmd-create-temp-image-options): Replace option + +profile "*" with -strip. -2005-01-02 Karl Chen +2007-04-27 Chong Yidong - * vc-svn.el (vc-svn-diff): Stay local if possible. + * textmodes/flyspell.el (flyspell-auto-correct-previous-word): + Use window-start and window-end. -2005-01-02 Stefan Monnier +2007-04-27 Andreas Schwab - * vc-arch.el (vc-arch-workfile-version): Handle the empty-branch case. + * emacs-lisp/sregex.el (sregexq): Fix doc string quoting. - * files.el (hack-local-variables): Fix last change. +2007-04-27 Eli Zaretskii -2005-01-02 Jay Belanger + * textmodes/fill.el (fill-paragraph): Doc fix. - * calc/calc-yank.el (calc-edit-top): New variable. - (calc-edit-mode): Set calc-edit-top to be the beginning of the edited - object. Change header properties. - (calc-edit-finish, calc-edit-finish-stack-object) - (calc-edit-show-buffer): Use calc-edit-top to find the beginning of the - edited object. - * calc/calc-sel.el (calc-finish-selection-edit): Use calc-edit-top - for the beginning of the edited object. - * calc/calc-embed.el (calc-embedded-finish-edit): Use calc-edit-top - for the beginning of the edited object. - * calc/calc-prog.el (calc-edit-macro-finish-edit) - (calc-finish-formula-edit, calc-macro-repeats) - (calc-edit-macro-adjust-buffer, calc-edit-format-macro-buffer) - (calc-edit-macro-pre-finish-edit): Use calc-edit-top for the - beginning of the edited object. - (calc-user-define-edit): Change the header for editing macros. - Remove unnecessary variable. +2007-04-26 Luc Teirlinck -2005-01-01 Jay Belanger + * locate.el (locate-in-alternate-database): Doc fix. - * calc/calc-yank.el (calc-edit-mode): Change default header. - (calc-edit-finish, calc-show-edit-buffer): Adjust to handle new header. - * calc/calc-store.el (calc-edit-variable): Change title to match new - header. - * calc/calc-prog.el (calc-edit-user-syntax): Change title in edit - mode to match new header. - (calc-user-define-edit): Change titles to include names of commands. - (calc-finish-formula-edit): Adjust to handle new header. - (calc-finish-macro-edit): Remove. - (calc-edit-macro-repeats, calc-edit-macro-adjust-buffer) - (calc-edit-macro-command, calc-edit-macro-command-type) - (calc-edit-macro-combine-alg-ent, calc-edit-macro-combine-ext-command) - (calc-edit-macro-combine-var-name, calc-edit-macro-combine-digits) - (calc-edit-format-macro-buffer, calc-edit-macro-pre-finish-edit) - (calc-edit-macro-finish-edit): New functions. - (calc-user-define-edit): Use new functions to edit named calc macros. +2007-04-26 Glenn Morris -2005-01-01 Stefan Monnier + * button.el (button): Use underline if supported, else fall back + to color. - * files.el (hack-local-variables): Cleanup prefix/suffix matching. + * version.el (emacs-version): Increase to 22.1.50. - * ses.el (copy-region-as-kill): Deactivate mark. +2007-04-25 Richard Stallman -2005-01-01 Richard M. Stallman + * hi-lock.el (hi-lock-file-patterns-policy): Default to `ask'. - * replace.el (occur-1): If the output buffer is also an input, - don't kill it, rename it. +2007-04-25 J.D. Smith - * faces.el (set-face-background, set-face-foreground): Doc fix. + * progmodes/idlwave.el (idlwave-beginning-of-subprogram) + (idlwave-end-of-subprogram): Take optional NOMARK arg to prevent + pushing mark. + (idlwave-current-routine): Don't push mark. - * cus-face.el (custom-face-attributes): Fix :help-echo strings - for :foreground and :background. +2007-04-25 Mathias Dahl - * dired.el (dired-view-command-alist): Variable deleted. - (dired-view-file, dired-mouse-find-file-other-window): - Delete the code to use it. + * image-dired.el (image-dired-display-image): Derive image-type from + filename rather than assuming jpeg, in case no resizing was needed. -2005-01-01 Kim F. Storm +2007-04-25 Johan Bockgård - * image.el (insert-sliced-image): Use t for line-height property. + * custom.el (defface): Doc fix. -See ChangeLog.11 for earlier changes. +See ChangeLog.12 for earlier changes. ;; Local Variables: -;; coding: iso-2022-7bit +;; coding: utf-8 ;; add-log-time-zone-rule: t ;; End: diff --cc lisp/diff-mode.el index 151811c037,798f5f2e4e..970df74da6 --- a/lisp/diff-mode.el +++ b/lisp/diff-mode.el @@@ -434,10 -397,14 +434,13 @@@ See http://lists.gnu.org/archive/html/e (defun diff-end-of-hunk (&optional style donttrustheader) (let (end) (when (looking-at diff-hunk-header-re) - (unless style - ;; Especially important for unified (because headers are ambiguous). - (setq style (cdr (assq (char-after) '((?@ . unified) (?* . context)))))) + ;; Especially important for unified (because headers are ambiguous). + (setq style (diff-hunk-style style)) (goto-char (match-end 0)) (when (and (not donttrustheader) (match-end 2)) + (let* ((nold (string-to-number (match-string 2))) + (nnew (string-to-number (match-string 4))) + (endold (save-excursion (re-search-forward (if diff-valid-unified-empty-line "^[- \n]" "^[- ]") diff --cc src/ChangeLog index 0071dc3b22,2082f8e27f..c683d77ad1 --- a/src/ChangeLog +++ b/src/ChangeLog @@@ -1,10061 -1,29207 +1,10087 @@@ -2008-04-05 Chong Yidong - - * search.c (compile_pattern_1): Treat non-nil and non-string of - search-spaces-regexp as nil. - -2008-04-05 Eli Zaretskii - - * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive. - -2008-03-31 Chong Yidong - - * xdisp.c (next_overlay_string): Don't set - overlay_strings_at_end_processed_p if we're currently reading from - a display string. - - * fileio.c (auto_save_error_occurred): New var. - (auto_save_error): Set it. - (Fdo_auto_save): Don't overwrite the error message if an auto-save - error occurred. - -2008-03-31 Jason Rumney - - * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned. - -2008-03-29 YAMAMOTO Mitsuharu - - * frame.h (struct frame) [MAC_OS]: New member external_tool_bar. - (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it. - - * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT. - [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value. - Use kCFAbsoluteTimeIntervalSince1970. - (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable. - (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]: - Remove macros. - [MAC_OSX] (socket_callback): Do nothing. - [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of - ReceiveNextEvent. - [MAC_OSX] (sys_select): Likewise. Don't set context as argument to - socket_callback. - (mac_wakeup_from_rne) [MAC_OSX]: Do nothing. - - * macfns.c (mac_window): Replace WindowPtr with WindowRef. - (mac_get_window_bounds): Move extern to macterm.h. - (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse. - (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity. - (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR. - - * macgui.h: Replace WindowPtr with WindowRef. - (USE_MAC_TOOLBAR): New define. - (USE_CG_DRAWING): Don't require USE_ATSUI. - - * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and - GetMenuRef, respectively. Replace WindowPtr with WindowRef. - Replace ControlHandle with ControlRef. - [!TARGET_API_MAC_CARBON]: Include Quickdraw.h instead of QuickDraw.h. - (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU. - [TARGET_API_MAC_CARBON] (menu_target_item_handler): Don't call next - handler. Return immediately unless popup is activated. - [TARGET_API_MAC_CARBON] (install_menu_target_item_handler): - Remove argument. Install handler to application. - (set_frame_menubar): Don't change deep_p. - (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and - FRAME_OUTER_TO_INNER_DIFF_Y. - (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P) - (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID) - [HAVE_DIALOGS]: New macros. - [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog): - Use them. - (fill_menu) [TARGET_API_MAC_CARBON]: Use SetMenuItemHierarchicalMenu. - (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString. - (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]: Put special - treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p in #if 0 - as it is not compatible with y-or-n-p-with-timeout. - (timer_check) [TARGET_API_MAC_CARBON]: Add extern. - [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop - instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls. - (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function. - [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind. - Run timers during dialog popup. - (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated. - (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: New variable. - [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog - event loop should be quit. - [TARGET_API_MAC_CARBON] (create_and_show_dialog): Quit dialog event loop - if quit_dialog_event_loop is set. - - * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h. - [MAC_OSX] (install_service_handler): Rename from init_service_handler. - All callers changed. Return OSStatus value. - (Selection): New typedef. Use instead of ScrapRef. - (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol. - (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p. - (mac_clear_selection): Rename from clear_scrap. - (get_flavor_type_from_symbol): New argument SEL and subsume function of - scrap_has_target_type. All uses changed. - (mac_get_selection_ownership_info, mac_valid_selection_value_p) - (mac_selection_has_target_p): New functions. - (mac_put_selection_value): Rename from put_scrap_string. - (mac_get_selection_value): Rename from get_scrap_string. - (mac_get_selection_target_list): Rename from get_scrap_target_type_list. - (put_scrap_private_timestamp, scrap_has_target_type) - (get_scrap_private_timestamp): Remove functions. - (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define. - (x_own_selection, x_get_local_selection): - Use mac_valid_selection_value_p. - (x_own_selection): Don't use put_scrap_private_timestamp. - Record OWNERSHIP-INFO into Vselection_alist instead. - (x_get_local_selection): Don't check type if request is local. - (Fx_selection_owner_p): Don't use get_scrap_private_timestamp. - Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead. - - * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and - GetMenuRef, respectively. Replace WindowPtr with WindowRef. - Replace ControlHandle with ControlRef. - (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead. - [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'. - (mac_begin_cg_clip): New arg F. Call SetPortWindowPort. All callers - changed so as not to call SetPortWindowPort. - (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. - (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from - mac_draw_string_common. - (mac_draw_image_string_qd): Likewise. - (mac_draw_string_common): Use them. Add INLINE. - (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]: - Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and - GetGlobalMouse. - (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X - and FRAME_OUTER_TO_INNER_DIFF_Y. - [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise. - [USE_MAC_TSM] (mac_handle_text_input_event): Likewise. - (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for - repositioning window to mac_handle_window_event. - (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for - saving window location to mac_handle_window_event - [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here. - (install_menu_target_item_handler): Remove argument in extern. - [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers): - Also accept command events. - (do_keystroke): New function created from XTread_socket. - (init_command_handler): Remove functions. - [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window - and save window location by kEventWindowShowing and kEventWindowHiding - handlers here. Don't call next handler for window state change and - focus events. - (mac_handle_keyboard_event) [TARGET_API_MAC_CARBON]: New function. - (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for - kEventWindowShowing and kEventWindowHiding events. Move installation - of mouse, font, text input and menu target item handlers to - install_application_handler. - (install_application_handler) [TARGET_API_MAC_CARBON]: New function. - (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: - New function. - (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: - Register it. - (XTread_socket) [TARGET_API_MAC_CARBON]: - Consolidate SendEventToEventTarget calls. - Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y. - Move keyboard handler to mac_handle_keyboard_event. - (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke. - (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call - init_command_handler. Call install_application_handler. - (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background to scroll - bar gap. - (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p. - (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost - scroll bars on frame edge. Check fringe background extension. - Don't clear extended fringe background area. - (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER) - (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P) - (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID): - [USE_MAC_TOOLBAR]: New macros. - (mac_move_window_with_gravity, mac_get_window_origin_with_gravity) - (mac_handle_toolbar_event, mac_image_spec_to_cg_image) - (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar) - (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event) - [USE_MAC_TOOLBAR]: New functions. - (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window - manually if previous repositioning has failed. - (mac_handle_keyboard_event): Use precomputed event kind. - (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region - as tool bar item click. Handle mouse movement over tool bar items. - (frame_highlight, frame_unhighlight): Don't call - ActivateControl/DeactivateControl here. - [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when - frame-notice-user-settings is non-nil. - [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter - for kEventParamFMFontStyle. - [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check - mac_pass_command_to_system and mac_pass_control_to_system here. - (XTread_socket): Call ActivateControl/DeactivateControl here. - (XTread_socket) [TARGET_API_MAC_CARBON]: - Check mac_pass_command_to_system and mac_pass_control_to_system here. - [TARGET_API_MAC_CARBON] (mac_handle_window_event): Don't use invisible - frame as parent window for repositioning. - - * macterm.h (struct scroll_bar): Rename member control_handle_low - and control_handle_high to control_ref_low and control_ref_high. - All uses changed. - (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from - SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE, - respectively. All uses changed. - (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground) - (install_window_handler, remove_window_handler): Replace WindowPtr - with WindowRef in externs. - (mac_get_window_bounds): Move extern from macfns.c. - (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros. - (struct mac_output) [USE_MAC_TOOLBAR]: New member toolbar_win_gravity. - (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p. - (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]: - Add externs. - - * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window) - [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display. - -2008-03-28 Jason Rumney - - * image.c (pbm_load): Allow color values up to 65535. - Throw an error if max_color_idx is outside the supported range. - Report an error when image size is invalid. - Read two bytes at a time when raw images have max_color_idx above 255. - -2008-03-26 Alexandre Oliva (tiny change) - - * regex.c (EXTEND_BUFFER): Change order of pointer addition - operations, to avoid having the difference between pointers - overflow. - -2008-03-26 Eli Zaretskii - - * w32.c (readdir): If FindFirstFile/FindNextFile return in - cFileName a file name that includes `?' characters, use the 8+3 - alias in cAlternateFileName instead. - -2008-03-26 Chong Yidong - - * Version 22.2 released. - -2008-03-10 Kenichi Handa - - * fileio.c (Finsert_file_contents): Don't make CCL program to - append "CCL: Quitted" when the decoding is quitted, but just - signal `quit'. - - * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't - append "CCL: Quitted" when the CCL program is quitted. - (setup_ccl_program): Initialize ccl->quit_silently to zero. - - * ccl.h (struct ccl_program): New member quit_silently. - -2008-03-08 Andreas Schwab - - * process.h (struct Lisp_Process): Declare bit field as unsigned. - -2008-03-07 Stefan Monnier - - * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum - size of resulting string. - -2008-03-05 Jason Rumney - - * dispnew.c (adjust_glyph_matrix): Initialize window_height. - -2008-03-03 YAMAMOTO Mitsuharu - - * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes. - Don't pretend as if characters with display property haven't been - consumed for string-replacing-string case. - -2008-02-29 Chong Yidong - - * xdisp.c (get_overlay_strings_1): Add missing argument type. - -2008-02-27 YAMAMOTO Mitsuharu - - * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64. - -2008-02-27 Chong Yidong - - * process.c (wait_reading_process_output): Check for window - changes caused by timers. - Suggested by Johan Bockg,Ae(Brd. - -2008-02-26 Chong Yidong - - * editfns.c (Fformat): Doc fix. - -2008-02-25 Chong Yidong - - * keyboard.c (command_loop_1): Revert 2006-10-09 change. - -2008-02-24 Jason Rumney - - * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode. - -2008-02-24 Ulrich Neumerkel (tiny change) - - * xterm.c (x_set_offset): Don't change the gravity if - CHANGE_GRAVITY is -1. - -2008-02-19 Stefan Monnier - - * intervals.h (INT_LISPLIKE): Remove. It may misfire. - (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it. - -2008-02-18 Jason Rumney - - * w32fns.c (Fw32_shell_execute): Encode parameters. - -2008-02-15 Jason Rumney - - * w32term.c (x_draw_glyph_string_background): Clear the background - manually when cleartype is in use. - (x_draw_glyph_string_foreground): Draw text transparently when - cleartype is in use. - -2008-02-09 Eli Zaretskii - - * fileio.c (syms_of_fileio) : Doc fix. - -2008-02-05 Jason Rumney - - * w32term.c (w32_read_socket) : Use locale-coding-system - instead of using mule-unicode-* charsets directly. - -2008-02-05 Juanma Barranquero - - * unexec.c (make_hdr): - * unexhp9k800.c (read_header): Replace `legal' with `valid'. - -2008-02-04 YAMAMOTO Mitsuharu - - * macterm.c [MAC_OSX] (fn_keycode_to_keycode_table): Add more entries - that ignore kEventKeyModifierFnMask. - (XTread_socket) [MAC_OSX]: Move code for ignoring - kEventKeyModifierFnMask for some keys ... - (mac_mapped_modifiers) [MAC_OSX]: ... to here. Add argument KEY_CODE. - All callers changed. - (mac_to_emacs_modifiers): New argument UNMAPPED_MODS. - All callers changed. - (mac_quit_char_key_p, XTread_socket): Get Emacs modifiers from - mapped modifiers together with original ones. - -2008-02-01 Kenichi Handa - - * ccl.c (CCL_WRITE_CHAR): Fix overflow checking. - (CCL_WRITE_MULTIBYTE_CHAR): Likewise. - -2008-01-31 Kenichi Handa - - * keyboard.c (make_ctrl_char): If C is a multibyte character, just - return it ORed with ctrl_modifier. - -2008-01-26 Thien-Thi Nguyen - - * fns.c (Fclrhash): Return TABLE. - -2008-01-21 YAMAMOTO Mitsuharu - - * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p. - (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p - is set even without positional changes. - (x_scroll_bar_clear): Set bar->redraw_needed_p. - - * macterm.h (struct scroll_bar): New member `redraw_needed_p'. - -2008-01-19 Kenichi Handa - - * coding.c (detect_coding_iso2022): New arg latin_extra_code_state. - Allow Latin extra codes only when *latin_extra_code_state is nonzero. - (detect_coding_mask): If there is a NULL byte, detect the encoding - as UTF-16 or binary. If Latin extra codes exist, detect the encoding - as ISO-2022 only when no other proper encoding is found. - -2008-01-17 Jason Rumney - - * xterm.c (handle_one_xevent): Revert to counting chars not bytes. - - * w32term.c (w32_read_socket) : Decode characters outside - the unicode range available in MULE by locale-coding-system. - Improve dbcs lead byte detection. Set event timestamp and modifiers - earlier. - -2008-01-17 Glenn Morris - - * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according - to HAVE_X86_64_LIB64_DIR. - -2008-01-11 YAMAMOTO Mitsuharu - - * mac.c (mac_emacs_pid) [MAC_OSX]: New variable. - [MAC_OSX] (init_mac_osx_environment): Initialize it. - [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0 - when used on child processes. - -2008-01-10 Chong Yidong - - * process.c (wait_reading_process_output): Check for window - changes caused by timers. - -2008-01-08 Glenn Morris - - * emacs.c (main): Set copyright year to 2008. - -2008-01-07 YAMAMOTO Mitsuharu - - * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of - #ifdef MAC_OS. - -2008-01-04 Richard Stallman - - * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes. - -2007-12-24 YAMAMOTO Mitsuharu - - * process.c (make_process): Initialize pty_flag to Qnil instead of 0 - as it is not a bit field on Emacs 22 yet. - - * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area. - -2007-12-23 YAMAMOTO Mitsuharu - - * macmenu.c (fill_menubar) [MAC_OSX]: Add workaround for Mac OS X 10.5 - about not changing Help menu title. - -2007-12-22 Eli Zaretskii - - * callint.c (syms_of_callint) : Add reference to - history-length in the doc string. - -2007-12-17 Jason Rumney - - * w32fns.c (w32_wnd_proc) : Cast char to unsigned - before passing as wParam. - -2007-12-14 Jason Rumney - - * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT - for characters above 127. - -2007-12-13 Jason Rumney - - * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check - before dereferencing array. - (lookup_vk_code): Remove zero comparison. - -2007-12-02 Magnus Henoch - - * process.c (make_process): Initialize pty_flag to 0. - -2007-12-02 Jason Rumney - - * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly - specified XBMs. - -2007-12-01 Richard Stallman - - * xdisp.c (syms_of_xdisp) : Doc fix. - -2007-11-30 YAMAMOTO Mitsuharu - - * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]: - New variable. - (mac_try_close_socket) [MAC_OSX]: New function. - [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: - Update cfsockets_for_select. Replace invalid CFRunLoop source. - - * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]: - Use mac_try_close_socket. - -2007-11-28 Petr Salinger (tiny change) - - * s/gnu-kfreebsd.h: New file. - -2007-11-27 YAMAMOTO Mitsuharu - - * unexmacosx.c (unrelocate): New argument BASE. Use it instead of - reloc_base. - (copy_dysymtab): Compute relocation base here. - (rebase_reloc_address) [__ppc64__]: New function. - (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be - changed. - -2007-11-26 Jason Rumney - - * w32proc.c (sys_spawnve): Quote args with wildcards. - -2007-11-26 Andreas Schwab - - * process.c (list_processes_1): Fix indentation level of the - command column. - -2007-11-24 YAMAMOTO Mitsuharu - - * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and - __objc_* sections. - (unrelocate) [_LP64]: Set relocation base to address of data segment. - -2007-11-23 Andreas Schwab - - * editfns.c (Fformat): Handle %c specially since it requires the - argument to be of type int. - -2007-11-22 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if - file for image is nil. - -2007-11-19 Jason Rumney - - * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font): CreateFileMapping - returns NULL on failure. - -2007-11-16 Stefan Monnier - - * search.c (Fset_match_data): Remove the `evaporate' feature. - (unwind_set_match_data): Don't use the `evaporate' feature. - -2007-11-15 Andreas Schwab - - * editfns.c (Fformat): Correctly format EMACS_INT values. - Also take precision into account when formatting an integer. - -2007-11-15 Juanma Barranquero - - * macfns.c (Fx_create_frame, Fx_display_pixel_width) - (Fx_display_pixel_height, Fx_display_planes) - (Fx_display_color_cells, Fx_server_max_request_size) - (Fx_server_vendor, Fx_server_version, Fx_display_backing_store) - (Fx_display_visual_class, Fx_display_save_under): - * w32fns.c (Fx_create_frame, Fx_display_pixel_width) - (Fx_display_pixel_height, Fx_display_planes) - (Fx_display_color_cells, Fx_server_max_request_size) - (Fx_server_vendor, Fx_server_version, Fx_display_screens) - (Fx_display_mm_height, Fx_display_mm_width) - (Fx_display_backing_store, Fx_display_visual_class) - (Fw32_select_font, Fx_display_save_under): - * xfns.c (Fx_create_frame, Fx_display_pixel_width) - (Fx_display_pixel_height, Fx_display_planes) - (Fx_display_color_cells, Fx_server_max_request_size) - (Fx_server_vendor, Fx_server_version, Fx_display_backing_store) - (Fx_display_save_under): Fix typos in docstrings. - -2007-11-14 Juanma Barranquero - - * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values - corresponding to deleted entries; they are an implementation detail. - (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits): - Remove variables. - (Fw32_define_rgb_color, Fw32_load_color_file): Fix typos in docstrings. - (Fx_server_version): Reflow docstring. - (Fw32_shell_execute): Doc fixes. - -2007-11-13 Juanma Barranquero - - * w32fns.c (Fw32_register_hot_key): Don't try to register hot key - if w32_parse_hot_key returned nil. - -2007-11-10 Juri Linkov - - * puresize.h (BASE_PURESIZE): Increase to 1130000. - -2007-11-10 Stefan Monnier - - * xdisp.c (load_overlay_strings): Fix copy&paste typo. - -2007-11-07 Chong Yidong - - * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE - twice. - - * xdisp.c (handle_face_prop): Fix last change. - -2007-11-06 Jan Dj,Ad(Brv - - * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and - abort with a message on unhandled store_type values. - -2007-11-04 Richard Stallman - - * xdisp.c (handle_face_prop): Test for strings that came from overlays, - not just for after-strings and before-strings. - Call face_for_overlay_string and pass the overlay to it. - (handle_display_prop): Determine whether property came from an overlay. - Pass OVERLAY arg to handle_single_display_spec. - (handle_single_display_spec): New arg OVERLAY sets it->from_overlay. - (load_overlay_strings): Fill in it->string_overlays. - (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays. - - * xfaces.c (face_for_overlay_string): Function renamed from - face_at_buffer_position_no_overlays, and add arg OVERLAY. - - * dispextern.h (struct it): New elt string_overlays. - New elt from_overlay, also in stack. - Rearrange a few elements. - (face_for_overlay_string): Decl renamed from - face_at_buffer_position_no_overlays, and add argument. - -2007-11-03 Richard Stallman - - * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays - to get the base face for an overlay string. - - * dispextern.h (face_at_buffer_position_no_overlays): Add decl. - - * xfaces.c (face_at_buffer_position_no_overlays): New function. - - * xdisp.c (handle_stop): Move some code out of loop. - -2007-11-01 Johan Bockg,Ae(Brd - - * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string): - Don't set s->stippled_p here, since it has already been set by - x_set_glyph_string_gc from x_draw_glyph_string. - -2007-10-31 YAMAMOTO Mitsuharu - - * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes): - Fix conversion from Lisp object to ATSUFontID. - -2007-10-30 Jason Rumney - - * xdisp.c (Fformat_mode_line): Do nothing when noninteractive. - -2007-10-30 YAMAMOTO Mitsuharu - - * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge): - Don't assume regions are aligned to page boundary. - (print_load_command_name): Add LC_UUID if defined. - -2007-10-30 Richard Stallman - - * emacs.c (syms_of_emacs) : Reflow docstring. - -2007-10-29 Juanma Barranquero - - * emacs.c (syms_of_emacs) : Fix typo in docstring. - : Reflow docstring. - -2007-10-26 Martin Rudalics - - * window.c (window_min_size_2): Don't count header-line. - -2007-10-25 Juanma Barranquero - - * w32.c (init_environment): Fix tiny memory leak. - (w32_get_resource): Remove unused variable `ok'. - -2007-10-24 Jason Rumney - - * w32fns.c: Include math.h. - -2007-10-24 Richard Stallman - - * frame.c (x_figure_window_size): For fullscreen case, - set USPosition | PPosition without clobbering rest of window_prompting. - - * keyboard.c (Fcurrent_idle_time): Doc fix. - - * print.c (Fwith_output_to_temp_buffer): Doc fix. - -2007-10-19 Juanma Barranquero - - * process.c (Fset_process_filter): Doc fix. - -2007-10-17 Glenn Morris - - * minibuf.c (Qcompletion_ignore_case): New Lisp_Object. - (syms_of_minibuf): Add Qcompletion_ignore_case. - * dired.c (Qcompletion_ignore_case): Change to external. - (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case. - * fileio.c (Qcompletion_ignore_case): New external Lisp_Object. - (Fread_file_name): Use it rather than intern'ing. - - * coding.c (Qcompletion_ignore_case): New external Lisp_Object. - (Fread_coding_system): Ignore case of user input. - -2007-10-16 YAMAMOTO Mitsuharu - - * xdisp.c (handle_display_prop): Ignore display specs after - replacing one when string text is being replaced. - (handle_single_display_spec): Pretend as if characters with display - property haven't been consumed only when buffer text is being replaced. - -2007-10-14 Juanma Barranquero - - * eval.c (do_autoload): Don't save autoloads. - - * data.c (Ffset): Save autoload of the function being set. - -2007-10-07 John Paul Wallington - - * xfns.c (x_create_tip_frame): Set the `display-type' frame - parameter before setting up faces. - -2007-10-13 Eli Zaretskii - - * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving - selected frame'' on MSDOS). - -2007-10-12 Martin Rudalics - - * frame.c (Qexplicit_name): New variable. - (x_report_frame_params): Report it in parameter alist. - (syms_of_frame): Intern and staticpro it. - -2007-10-09 Jason Rumney - - * w32term.c (x_set_window_size): Disable code that attempts to tell - Lisp code about a size change before it actually happens. - -2007-10-09 Richard Stallman - - * xdisp.c (handle_invisible_prop): After setting up an ellipsis, - return HANDLED_RETURN. - -2007-10-06 Martin Rudalics - - * keyboard.c (kbd_buffer_get_event): Break loop waiting for input - when there's an unread command event. - - * frame.c (focus_follows_mouse): Moved here from frame.el to allow - window autoselection act appropriately when leaving selected frame. - (syms_of_frame): Initialize focus_follows_mouse. - * frame.h (focus_follows_mouse): Extern it. - * macterm.c (XTread_socket): When focus_follows_mouse is nil - make SELECT_WINDOW_EVENT only if we don't leave the selected - frame. - * msdos.c (dos_rawgetc): Likewise. - * w32term.c (w32_read_socket): Likewise. - * xterm.c (handle_one_xevent): Likewise. - * xdisp.c (syms_of_xdisp): In doc-string of - mouse-autoselect-window mention focus-follows-mouse. - -2007-10-06 Andreas Schwab - - * fileio.c (Fwrite_region): Ignore EINVAL error from fsync. - -2007-10-05 YAMAMOTO Mitsuharu - - * macterm.c (mac_load_query_font): Fix missing return value. - [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap): - Add BLOCK_INPUT. - -2007-10-04 Juanma Barranquero - - * image.c (syms_of_image) : Fix typo in docstring. - -2007-10-02 Richard Stallman - - * xdisp.c (get_window_cursor_type): Implement documented behavior - for cursor-in-non-selected-windows = t. - -2007-10-01 Juanma Barranquero - - * lread.c (Fload): Fix typo in docstring. - -2007-09-29 Juri Linkov - - * emacs.c (standard_args): Change priority of "--no-splash" - from 40 to 3. Add "--no-desktop" with the same priority. - -2007-09-29 Jason Rumney - - * w32.c (w32_get_resource): Always close registry keys. - -2007-09-27 Jason Rumney - - * makefile.w32-in (LIBS): Add COMCTL32. - - * w32fns.c (globals_of_w32fns): Init common controls. - -2007-09-21 Richard Stallman - - * image.c (our_memory_buffer): Renamed from omfib_buffer. - -2007-09-21 Juanma Barranquero - - * w32term.c (x_draw_glyph_string): Use strike_through_color, not - underline_color, to draw strike-through. - -2007-09-20 Glenn Morris - - * process.c (Fmake_network_process): Doc fix. - -2007-09-19 Richard Stallman - - * buffer.c (Foverlays_at): Doc fix. - -2007-09-18 Stefan Monnier - - * fns.c (Fplist_put): Preserve uneven tail data. - -2007-09-16 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf - when we have no file name for the icon. - (xg_tool_bar_expose_callback): Remove. - (xg_create_tool_bar): Don't connect expose signal to - xg_tool_bar_expose_callback. - -2007-09-16 Andreas Schwab - - * alloc.c (reset_malloc_hooks): Set the hooks to the previous - values instead of zapping them. - -2007-09-15 Glenn Morris - - * s/hpux.h: No longer define `static' as nothing. - -2007-09-14 Glenn Morris - - * fringe.c (init_fringe_bitmap) : Move to file scope. - * gtkutil.c (xg_separator_p) : Move to file scope. - * image.c (our_memory_fill_input_buffer) : Move to file - scope and rename to omfib_buffer for clarity. - (gif_load) : Move to file scope. - -2007-09-14 Peter O'Gorman (tiny change) - - * gtkutil.c (xg_get_file_with_chooser): Move GCPRO1 after declarations. - - * termhooks.h (enum event_kind): Remove trailing comma. - - * frame.h (enum): Remove trailing comma. - -2007-09-14 Jan Dj,Ad(Brv - - * keyboard.c, xterm.c, xfaces.c (abs): #undef before #define. - -2007-09-12 Glenn Morris - - * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity. - (menu_grab_callback): All uses changed. - - * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity. - (x_reply_selection_request): All uses changed. - -2007-09-06 Pixel (tiny change) - - * image.c (gif_load): Fix bug: Handle nonexistent colormap. - -2007-09-06 Glenn Morris - - * gtkutil.c (menu_grab_callback) : - * xselect.c (x_reply_selection_request) : Move static - variable to file scope. - -2007-09-02 Dhuvra Krishnamurthy (tiny change) - - * w32proc.c (delete_child): Don't terminate threads of zombies. - -2007-09-02 Jan Dj,Ad(Brv - - * keyboard.c: Qrtl is new. - (parse_tool_bar_item): Handle :rtl keyword. - (syms_of_keyboard): Intern :rtl keyword. - - * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE. - - * gtkutil.c (file_for_image, find_rtl_image): New functions. - (xg_get_image_for_pixmap): Use file_for_image - (update_frame_tool_bar): If direction is RTL, use RTL image if - defined. Use Gtk stock images or named theme icons if defined. - -2007-08-29 Martin Rudalics - - * keyboard.h (struct kboard): New elt Vlast_repeatable_command. - - * keyboard.c (syms_of_keyboard): Set up new Lisp variable - last-repeatable-command. - (init_kboard): Initialize Vlast_repeatable_command. - (command_loop_1): Set it to real_this_command unless that was - bound to an input event. - (mark_kboards): Mark it. - -2007-08-28 Juanma Barranquero - - * image.c (syms_of_image) : - Doc fixes. - -2007-08-28 Jan Dj,Ad(Brv - - * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED - so no Lisp code is executed. - -2007-08-27 YAMAMOTO Mitsuharu - - * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle - for nonexistent or zero-width glyph in composition glyph. - -2007-08-27 Richard Stallman - - * eval.c (condition-case): Doc fix. - -2007-08-27 Masatake YAMATO - - * xfaces.c (tty_supports_face_attributes_p): Fix code - for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code - was copied and not edited. - -2007-08-23 Stefan Monnier - - * lread.c (load_warn_old_style_backquotes): Fix up array size typo. - -2007-08-22 Stefan Monnier - - * lread.c (Qold_style_backquotes): New var. - (syms_of_lread): Init and staticpro it. - (load_warn_old_style_backquotes): New fun. - (Fload): Use them to warn about old style backquotes. - (end_of_file_error, Fload): Remove unused vars. - - * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare. - - * lread.c (Vold_style_backquotes): New var. - (syms_of_lread): Init and export it to Elisp. - (read1): Set it when we find an old-style (back)quote. - -2007-08-22 Jason Rumney - - * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator. - -2007-08-21 Stefan Monnier - - * insdel.c (reset_var_on_error): New fun. - (signal_before_change, signal_after_change): - Use it to reset (after|before)-change-functions to nil in case of error. - Bind inhibit-modification-hooks to t. - Don't bind (after|before)-change-functions to nil while they run. - -2007-08-19 Andreas Schwab - - * alloc.c (pure): Round PURESIZE up. - -2007-08-17 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Remove check that mouse click is in - active frame. - -2007-08-15 Philippe Waroquiers - - * term.c (tty_default_color_capabilities): Declare static - variables in file scope, to avoid HPUX compiler problem. - -2007-08-13 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Use -1 as index - to gtk_toolbar_insert. - -2007-08-11 YAMAMOTO Mitsuharu - - * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when - filling pixmap with stippled background. - -2007-08-10 Stefan Monnier - - * print.c (new_backquote_output): Rename from old_backquote_output. - (print): Inverse its logic (according to its name) so as to match the - behavior of new_backquote_flag in lread.c. - -2007-08-09 YAMAMOTO Mitsuharu - - * gmalloc.c (posix_memalign): New function. - -2007-08-08 Glenn Morris - - * Replace `iff' in doc-strings and comments. - -2007-08-07 Chong Yidong - - * dispextern.h (struct image): New members. - - * image.c: Sync to trunk version. - (search_image_cache, uncache_image, image-refresh): New functions. - Check for fg and bg colors. - (lookup_image): Use search_image_cache. Cache fg and bg colors. - (pbm_load): Another check for invalid image data. - (png_load): Ignore default background field. - - * xdisp.c (move_it_by_lines): Remove incorrect optimization. - -2007-08-07 Jan Dj,Ad(Brv - - * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed. - -2007-08-07 Sam Steingold - - * gmalloc.c (__morecore): Fix the declaration to comply with the - definition. - -2007-08-07 YAMAMOTO Mitsuharu - - * emacs.c (main) - [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]: - Call malloc_enable_thread on interactive startup. - - * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable. - (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS) - [USE_PTHREAD]: Conditionalize with it. - (malloc_atfork_handler_prepare, malloc_atfork_handler_parent) - (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]: - New functions. - -2007-08-06 Chong Yidong - - * xdisp.c (redisplay_window): When restoring original buffer - position, make sure it is still valid. - -2007-08-06 Martin Rudalics - - * window.c (window_min_size_2): New function. - (window_min_size_1, size_window, Fdisplay_buffer) - (Fsplit_window, adjust_window_trailing_edge): Use it to avoid - windows without mode- or header-lines when window-min-height is - too small. - (size_window): Reset nodelete_p after testing it, following an - earlier note by Kim F. Storm. - (display_buffer): Do not set split_height_threshold to twice the - value of window_min_height to avoid changing the value of a - customizable variable. Rather explicitly check whether the - height of the window that shall be splitted is at least as large - as split_height_threshold. - (Fwindow_full_width_p): New defun. - (syms_of_window): Defsubr it. - - * window.h: Add EXFUN for Fwindow_full_width_p. - -2007-08-06 Andreas Schwab - - * window.c (Fdisplay_buffer): Use NILP. - (Fset_window_scroll_bars): Likewise. - -2007-08-03 Richard Stallman - - * fileio.c (Fvisited_file_modtime): Use make_time. - -2007-08-01 Ryo Yoshitake (tiny change) - - * mac.c (init_mac_osx_environment): Adjust load-path on self-contained - build. - -2007-07-30 Stefan Monnier - - * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400. - -2007-07-25 Glenn Morris - - * Relicense all FSF files to GPLv3 or later. - - * COPYING: Switch to GPLv3. - -2007-07-24 Jason Rumney - - * w32fns.c (x_real_positions): Get real position from OS instead of - calculating it. - -2007-07-23 Jason Rumney - - * filelock.c (current_lock_owner): Allow for @ sign in username. - -2007-07-20 Eli Zaretskii - - * makefile.w32-in (clean): Don't delete *~. - - * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32): - Define if not defined. - -2007-07-18 Jason Rumney - - * w32proc.c (w32_executable_type): Handle 64 bit executables. - -2007-07-16 Juanma Barranquero - - * coding.c (Ffind_operation_coding_system): - * eval.c (For, Fand, Fprogn): - * keyboard.c (Ftrack_mouse): - * print.c (Fwith_output_to_temp_buffer): - * window.c (Fsave_window_excursion): Doc fixes (some reported - by Johan Bockg,Ae(Brd). - -2007-07-15 Richard Stallman - - * data.c (Fsetq_default): Doc fix. - - * eval.c (Fsetq): Doc fix. - -2007-07-11 Jason Rumney - - * makefile.w32-in (LIBS): Include OLE32. - - * w32fns.c (w32_msg_pump) : Initialize COM. - (w32_msg_pump) : Uninitialize COM. - -2007-06-28 YAMAMOTO Mitsuharu - - * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): - Check WINDOWP before using XWINDOW. - -2007-06-27 Juanma Barranquero - - * buffer.c (syms_of_buffer) : Fix typo in docstring. - -2007-06-26 YAMAMOTO Mitsuharu - - * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h. - (_aligned_blocks_mutex) [USE_PTHREAD]: New variable. - (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros. - (_free_internal, memalign): Use them. - (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]: - Initialize to PTHREAD_MUTEX_INITIALIZER. - (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex. - (morecore_nolock): Rename from morecore. All uses changed. - Use only nolock versions of internal allocation functions. - (_malloc_internal_nolock, _realloc_internal_nolock) - (_free_internal_nolock): New functions created from - _malloc_internal, _realloc_internal, and _free_internal. - (_malloc_internal, _realloc_internal, _free_internal): Use them. - Copy hook value to automatic variable before its use. - (memalign): Copy hook value to automatic variable before its use. - -2007-06-21 Jason Rumney - - * image.c (convert_mono_to_color_image): Swap fore and background. - -2007-06-20 Jason Rumney - - * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished. - (w32_free_bdf_font): Unmap memory not handle. - -2007-06-20 Juanma Barranquero - - * w32.c (_wsa_errlist): Fix typo in error message. - (init_environment): Ignore any environment variable from the - registry having a null value. - -2007-06-17 Jason Rumney - - * w32menu.c (add_menu_item): Don't use multibyte string functions on - unicode strings. - -2007-06-17 Juanma Barranquero - - * xdisp.c (syms_of_xdisp) : - Fix typo in docstring. - -2007-06-16 Eli Zaretskii - - * w32menu.c (add_menu_item): Escape `&' characters in menu items - and their keybindings. - -2007-06-14 Chong Yidong - - * composite.c (update_compositions): Check validity of compositions. - -2007-06-10 Jason Rumney - - * w32fns.c (Fx_file_dialog): Take size from struct not pointer. - -2007-06-06 Jason Rumney - - * s/ms-w32.h: Don't define HAVE_TZNAME. - -2007-06-06 Chong Yidong - - * image.c (xpm_load): Remove spurious call to - xpm_init_color_cache. - -2007-06-06 Martin Rudalics - - * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD. - -2007-06-05 Dan Nicolaescu - - * xfaces.c (syms_of_xfaces): Delete stray semicolon. - * xdisp.c (next_element_from_buffer): - * window.c (delete_window): - * term.c (term_mouse_highlight): - * msdos.c (getdefdir): - * macterm.c (mac_create_bitmap_from_bitmap_data) - (init_font_name_table): - * fns.c (Fsxhash): - * data.c (Fmake_local_variable): - * ccl.c (ccl_driver): Likewise. - -2007-06-04 Juanma Barranquero - - * window.c (Fshrink_window): Reflow docstring. - -2007-06-02 Chong Yidong - - * Version 22.1 released. - - * xfns.c (x_set_name_internal): Undo last change. - -2007-06-01 Richard Stallman - - * xfns.c (x_encode_text): Add GCPRO. - (x_set_name_internal): Separate USE_GTK and non-USE_GTK cases. - -2007-06-01 YAMAMOTO Mitsuharu - - * xfns.c (x_set_name_internal): Save encoded name before - x_encode_text in case string data is relocated. - -2007-05-31 Richard Stallman - - * buffer.c (syms_of_buffer): Doc fix. - -2007-05-28 YAMAMOTO Mitsuharu - - * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t - around current_column call. - -2007-05-24 Chong Yidong - - * xdisp.c (redisplay_window): If first window line is a - continuation line, recompute the new window start instead of - recentering. - -2007-05-24 YAMAMOTO Mitsuharu - - * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event): - Call mac_wakeup_from_rne on window size change. - -2007-05-22 Richard Stallman - - * xterm.c (x_connection_closed): Remove NO_RETURN. - -2007-05-19 Stefan Monnier - - * syntax.c (skip_chars): Update syntax-table only after we checked that - the new location is valid. - -2007-05-19 YAMAMOTO Mitsuharu - - * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around - mac_get_window_bounds. - -2007-05-17 Glenn Morris - - * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD. - -2007-05-16 YAMAMOTO Mitsuharu - - * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert - dead key repeat and up events. - -2007-05-13 Chong Yidong - - * xterm.c (XTread_socket): Revert last change. - -2007-05-12 Chong Yidong - - * image.c (pbm_load): Correctly check image size for greyscale pbm. - - * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC). - -2007-05-07 Stefan Monnier - - * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object mixup (YAILOM) - -2007-05-06 Richard Stallman - - * process.c: Undo May 3 change. - -2007-05-03 Per Cederqvist (tiny change) - - * process.c (Faccept_process_output): Revert 2006-03-22 change so - that the third argument once again is in microseconds (not - milliseconds). This makes it compatible with Emacs 21 and - earlier. Problem found by Henrik Rindl,Av(Bw. - -2007-05-01 YAMAMOTO Mitsuharu - - * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c. - (Fx_popup_dialog) [MAC_OSX]: Likewise. - -2007-04-29 Richard Stallman - - * insdel.c (replace_range): For undo, record insertion first. - -2007-04-29 YAMAMOTO Mitsuharu - - * xdisp.c (try_window_reusing_current_matrix): Fix number of - disabled lines. - -2007-04-27 Jan Dj,Ad(Brv - - * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog. - - * gtkutil.c (xg_update_menubar, create_menus): Create empty - submenu for menu bar items. - -2007-04-24 Chong Yidong - - * xdisp.c (redisplay_window): Use BEG_UNCHANGED and END_UNCHANGED - values of the actual window. - -2007-04-23 Richard Stallman - - * process.c (Fstart_process): Doc fix. - -2007-04-23 Eli Zaretskii - - * process.c (Fstart_process): Doc fix. - -2007-04-22 Richard Stallman - - * abbrev.c (Fdefine_abbrev): Doc fix. - - * keymap.c (Fdefine_key): Minor doc fix. - -2007-04-21 Glenn Morris - - * keymap.c (Fdefine_key): Fix info ref in doc string. - -2007-04-20 Glenn Morris - - * sysdep.c (init_system_name): Don't accept localhost.localdomain. - -2007-04-19 Juanma Barranquero - - * minibuf.c (Fminibuffer_contents, Fminibuffer_contents_no_properties) - (Fminibuffer_completion_contents, Fdelete_minibuffer_contents): - Doc fixes. - -2007-04-16 Chong Yidong - - * dispnew.c (adjust_frame_glyphs_for_frame_redisplay): - Set garbaged flag in presence of window margins. - (showing_window_margins_p): New function. - - * xdisp.c (cursor_row_p): Only end row on newline if it's a - display string. Suggested by Lennart Borgman. - -2007-04-16 YAMAMOTO Mitsuharu - - * alloc.c (mem_insert): Set min_heap_address and max_heap_address - if they are not yet initialized. - -2007-04-15 Chong Yidong - - * xdisp.c (redisplay_window): When deciding whether or not to - recenter, don't use the reset values of BEG_UNCHANGED and - END_UNCHANGED. - -2007-04-13 Kim F. Storm - - * buffer.c (Fkill_buffer): gcpro BUF during kill_buffer_processes - and check that buffer is still alive upon return. - -2007-04-13 YAMAMOTO Mitsuharu - - * macterm.c [!TARGET_API_MAC_CARBON]: Include Displays.h. - (mac_screen_config_changed): New variable. - (mac_handle_dm_notification, init_dm_notification_handler) - (mac_get_screen_info): New functions. - [MAC_OS8] (main): Call init_dm_notification_handler. - (mac_initialize) [MAC_OSX]: Likewise. - (XTread_socket): Call mac_get_screen_info if screen config changed. - (mac_initialized): Make static. - (mac_initialize_display_info): Remove function. - (mac_term_init): Call mac_get_screen_info. Add partial contents of - mac_initialize_display_info. - -2007-04-12 YAMAMOTO Mitsuharu - - * mac.c (xrm_get_preference_database, Fmac_get_preference) - [TARGET_API_MAC_CARBON]: Use CFPreferencesAppSynchronize. - - * macterm.c [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): - Use GetGlobalMouse instead of GetMouse and LocalToGlobal. - (mac_initialize_display_info) [MAC_OSX]: Use CGRectZero. - (mac_initialize_display_info) [!MAC_OSX]: dpyinfo->height and - dpyinfo->width are those of whole screen. - -2007-04-10 Chong Yidong - - * xdisp.c (note_mode_line_or_margin_highlight): Don't decrement - glyph pointer before start of glyph row. - -2007-04-09 YAMAMOTO Mitsuharu - - * s/darwin.h (__restrict, struct kboard): Remove outdated workarounds. - (C_SWITCH_SYSTEM): Remove `-I../mac/src'. - -2007-04-09 Martin Rudalics - - * indent.c (Fmove_to_column): Set next_boundary with correct start pt. - -2007-04-08 Richard Stallman - - * xdisp.c (syms_of_xdisp) : Default 100. - -2007-04-07 Chong Yidong - - * editfns.c (Ftranspose_regions): Validate interval before setting - text properties. - -2007-04-03 Eli Zaretskii - - * emacs.c (main): Fix instructions for building Emacs for profiling. - -2007-04-03 Jan Dj,Ad(Brv - - * gtkutil.c (xg_update_menubar): Call g_list_next after moving - menu bar item. - -2007-04-02 Juanma Barranquero - - * print.c (Fprin1_to_string): Use macro SPECPDL_INDEX. - -2007-04-01 Chong Yidong - - * keymap.c (Fcommand_remapping): New optional argument. - (where_is_internal): Use new keymaps argument. - (Fkey_binding): Caller changed. - - * keyboard.c (command_loop_1): Caller changed. - -2007-03-31 Eli Zaretskii - - * window.c (Fget_lru_window): Doc fix. - -2007-03-30 Chong Yidong - - * undo.c (Fprimitive_undo): Give clearer error message when trying - to change text properties outside accessible part of buffer. - -2007-03-29 Kim F. Storm - - * process.c (wait_reading_process_output) [HAVE_PTYS]: - When EIO happens, clear channel from descriptor masks before raising - SIGCHLD signal to avoid busy loop between read and sigchld_handler. - (sigchld_handler): Remove sleep (2007-03-11 & 2007-03-26 changes). - -2007-03-29 Juanma Barranquero - - * buffer.c (Fset_buffer_major_mode): Check that BUFFER is valid. - - * process.c (Fformat_network_address): Return nil when the - argument vector contains invalid values. - -2007-03-28 YAMAMOTO Mitsuharu - - * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Define USE_PTHREAD. - [USE_PTHREAD]: Include pthread.h. - (malloc_init_once_control, _malloc_mutex) [USE_PTHREAD]: New variables. - (malloc_initialize_1): New function created from __malloc_initialize. - (__malloc_initialize): Use it. - (LOCK, UNLOCK): New macros to make malloc etc. thread safe. - (_malloc_internal, _free_internal, _realloc_internal): Use them. - - * lread.c (readchar): Extend BLOCK_INPUT block to ferror/clearerr. - -2007-03-27 Juanma Barranquero - - * process.c (Fformat_network_address): Make args array big enough - to format IPv6 addresses. - -2007-03-27 Glenn Morris - - * m/hp800.h: Restore HP-UX support (removed 2007-01-29). - -2007-03-26 YAMAMOTO Mitsuharu - - * macfns.c (Fx_display_mm_height, Fx_display_mm_width): Scale whole - screen size in pixels by millimeters per pixel of main display. - - * macselect.c (get_scrap_target_type_list, x_own_selection): - Move assignments outside predicate macros. - (Vselection_converter_alist): Doc fix. - - * macterm.c (create_text_encoding_info_alist): Move assignments - outside predicate macros. - (mac_initialize_display_info) [MAC_OSX]: dpyinfo->height and - dpyinfo->width are those of whole screen. - -2007-03-26 Sam Steingold - - * process.c (sigchld_handler): Delay by 1ms instead of 1s to - alleviate sluggishness (the original problem is still fixed). - -2007-03-25 Kim F. Storm - - * intervals.c (merge_properties): Use explicit loop instead of - Fplist_member to avoid QUIT. Don't use Fcdr. - (intervals_equal): Likewise. Rewrite loop to perform length check - on the fly rather than calling Flength. Don't use Fcar. - -2007-03-24 Eli Zaretskii - - * editfns.c (Fgoto_char): Doc fix. - - * indent.c (Findent_to): Doc fix. - -2007-03-24 Chong Yidong - - * editfns.c (Ftranspose_regions): Use set_text_properties_1 - instead of Fset_text_properties to avoid GC. Signal after change. - -2007-03-24 Eli Zaretskii - - * xfns.c (Fx_show_tip): Doc fix. - - * macfns.c (Fx_show_tip): Doc fix. - - * w32fns.c (Fx_show_tip): Doc fix. - -2007-03-23 Kim F. Storm - - * intervals.c (merge_properties, intervals_equal): - Use Fplist_member instead of Fmemq to find properties. - -2007-03-23 Glenn Morris - - * unexhp9k800.c: Restore file with clarified legal status. - * m/sr2k.h: Restore since dependency unexhp9k800.c is restored. - -2007-03-22 Chong Yidong - - * widget.c (EmacsFrameSetCharSize): Catch X errors. - -2007-03-22 Kenichi Handa - - * fileio.c (Fcopy_file): Call barf_or_query_if_file_exists with - non-encoded file name. - (Frename_file): Likewise. - (Fadd_name_to_file): Likewise. - (Fmake_symbolic_link): Likewise. - -2007-03-20 YAMAMOTO Mitsuharu - - * Makefile.in (alloca.o, gtkutil.o): Depend on systime.h. - (dired.o, editfns.o, fileio.o, msdos.o): Depend on atimer.h. - (dosfns.o, window.o, fns.o, macselect.o): Depend on atimer.h and - systime.h. - (term.o, print.o, lread.o): Depend on blockinput.h, atimer.h, and - systime.h. - (macfns.o): Remove duplicate dependency on systime.h. - - * dispnew.c (Fopen_termscript): Add BLOCK_INPUT around fclose. - (Fsend_string_to_terminal): Add BLOCK_INPUT around fwrite. - - * fileio.c (do_auto_save_unwind): Add BLOCK_INPUT around fclose. - (Fdo_auto_save): Add BLOCK_INPUT around fwrite. - - * keyboard.c (record_char): Add BLOCK_INPUT around fwrite. - (Fopen_dribble_file): Add BLOCK_INPUT around fclose. - - * lread.c: Include blockinput.h. - (readchar, Fget_file_char): Add BLOCK_INPUT around getc. - (unreadchar): Add BLOCK_INPUT around ungetc. - (load_unwind): Add BLOCK_INPUT around fclose. - - * print.c: Include blockinput.h. - (Fredirect_debugging_output): Add BLOCK_INPUT around fclose. - - * process.c (Fmake_network_process) [HAVE_GETADDRINFO]: - Clear immediate_quit before calling freeaddrinfo. - Add BLOCK_INPUT around freeaddrinfo. - - * term.c: Include blockinput.h. - (write_glyphs, insert_glyphs): Add BLOCK_INPUT around fwrite. - -2007-03-19 Richard Stallman - - * keyboard.c (NUM_RECENT_KEYS): Bump up to 300. - - * buffer.c (syms_of_buffer): Doc fix. - -2007-03-18 Chong Yidong - - * image.c (pbm_load): Signal error for invalid image size. - -2007-03-18 YAMAMOTO Mitsuharu - - * macterm.c (note_mouse_movement): Don't return immediately for - LeaveNotify case. - - * macmenu.c (popup_activated_flag): New variable. - (x_activate_menubar, mac_menu_show): Set it during menu tracking. - (popup_activated): New function. - - * xdisp.c (redisplay_internal, note_mouse_highlight): - Check popup_activated for MAC_OS. - -2007-03-17 Juanma Barranquero - - * buffer.c (syms_of_buffer) : Doc fix. - Reported by Nikolaj Schumacher . - -2007-03-17 Richard Stallman - - * dired.c (file_name_completion): gcpro NAME. - -2007-03-17 Chong Yidong - - * xdisp.c (try_window_id): Increment matrix positions if the - buffer's byte count has increased, but not the character count. - -2007-03-12 Andreas Schwab - - * lisp.h: Declare check_obarray. - - * process.c (Fdelete_process): Properly handle deletion of first - element of deleted_pid_list. - (create_process): Declare pid as pid_t. - -2007-03-12 Kim F. Storm - - * process.c (sigchld_handler): Change type of pid to pid_t. - Scan deleted_pid_list explicitly to avoid using Fmember which don't - know about mark bits and make_fixnum_or_float which may malloc. - Reported by Andreas Schwab. - - * keyboard.c (read_key_sequence): Store original event into keybuf - when replaying sequence with local keymap(s) from string. - -2007-03-12 Glenn Morris - - * editfns.c (Fdecode_time, Fencode_time): Doc fix ("daylight - savings" to "daylight saving"). - -2007-03-11 Sam Steingold - - * process.c (sigchld_handler): Sleep before wait3 to avoid a busyloop. - -2007-03-11 YAMAMOTO Mitsuharu - - * macfns.c (Fx_server_vendor): Change vendor string to "Apple Inc.". - -2007-03-10 YAMAMOTO Mitsuharu - - * macterm.c [USE_CARBON_EVENTS] (mac_handle_mouse_event): - Ignore mouse wheel movement on title bar or tool bar. - -2007-03-10 Chong Yidong - - * keyboard.c (help_form_saved_window_configs): New var. - (read_char_help_form_unwind): New function. - (read_char): Don't restore window configuration if a mouse click - arrives while the help form is being displayed. - -2007-03-10 Kim F. Storm - - * xdisp.c (redisplay_window): Don't automatically select a new window - start for a contination line during mouse-click. - -2007-03-09 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Ignore buttons > 3 for the tool bar. - -2007-03-09 Juanma Barranquero - - * keymap.c (Fdescribe_buffer_bindings): Check that BUFFER is valid. - -2007-03-08 Richard Stallman - - * keyboard.c (syms_of_keyboard): Doc fix. - -2007-03-08 Chong Yidong - - * minibuf.c (Ftry_completion): Don't short circuit if - completion-ignore-case is non-nil. - -2007-03-07 YAMAMOTO Mitsuharu - - * macfns.c (mac_set_scroll_bar_width, mac_frame_parm_handlers): - Undo 2006-03-06 changes. - - * macterm.c (XTset_vertical_scroll_bar) [MAC_OSX]: Don't show scroll - bar if its width is smaller than that of Aqua small scroll bar. - -2007-03-07 Stefan Monnier - - * minibuf.c (read_minibuf): Bind inhibit-read-only a bit longer so as - to handle correctly prompts with read-only property. - -2007-03-06 Jan Dj,Ad(Brv - - * sound.c (wav_play): Check header->data_length to see how much we - shall read. - (alsa_period_size): Convert ALSA period size in frames to bytes. - (alsa_write): Return if frames is zero. - -2007-03-06 Kenichi Handa - - * xselect.c (Vselection_coding_system): Documentation improved. - -2007-03-05 YAMAMOTO Mitsuharu - - * macterm.c (x_scroll_bar_create, XTread_socket): Replace #if - USE_TOOLKIT_SCROLL_BARS with #ifdef USE_TOOLKIT_SCROLL_BARS. - (x_set_window_size): Call SET_FRAME_GARBAGED. Clear window if - internal border width has changed. - - * macterm.h (struct mac_output): New member `internal_border_width'. - -2007-03-04 Richard Stallman - - * window.c (Fdisplay_buffer): Doc fix. - -2007-03-03 Glenn Morris - - * Makefile.in: Don't clear out LIB_X11_LIB, since XFT_LIBS does - not include -lX11 on Solaris. - -2007-03-02 Stuart D. Herring - - * keymap.c (Fkey_binding): Don't consider one-element lists as events. - -2007-03-01 Kenichi Handa - - * process.c (send_process_object): Check the process status and - signal an error if something is wrong. - -2007-02-28 Chong Yidong - - * insdel.c (Fcombine_after_change_execute): Return nil if - combine_after_change_buffer has been invalidated. - -2007-02-25 Dan Nicolaescu - - * m/xtensa.h: New file. - -2007-02-24 Nick Roberts - - * .gdbinit (xprintstr): Ensure GDB (> 6.6) prints symbol name - as strings and not character arrays. - -2007-02-24 YAMAMOTO Mitsuharu - - * macterm.c [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_drag) - (x_set_toolkit_scroll_bar_thumb): Add bar->min_handle as margin to - scroll bar handle size in order to avoid `scroll backward' problem. - (x_scroll_bar_create, XTset_vertical_scroll_bar) - [USE_TOOLKIT_SCROLL_BARS]: Initialize bar->min_handle. - - * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: - New member `min_handle'. - -2007-02-23 Kim F. Storm - - * print.c (print): Reset print_number_index if Vprint_number_table - is nil. - -2007-02-23 Eli Zaretskii - - * w32.c (stat, get_long_basename, is_unc_volume): Use _mbspbrk - instead of strpbrk. - -2007-02-23 YAMAMOTO Mitsuharu - - * macmenu.c (mac_menu_show): Call unbind_to early. Use variable - `menu_item_selection' as in W32 version. - [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Add explicit - braces to avoid ambiguous `else'. - - * macterm.c (mac_display_info_for_display): Remove function. - (mac_flush_display_optional) [USE_CG_DRAWING]: New function. - (x_redisplay_interface) [USE_CG_DRAWING]: Set it as handler for - flush_display_optional. - [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_press): - New argument MOUSE_POS. All uses changed. Set bar->dragging to - negative integer if scroll bar handle is pressed. - [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_release): - Negative bar->dragging means scroll bar handle is not dragged. - [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_drag): Get initial - offset of scroll bar handle from negative bar->dragging. - (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Modifiers for scroll - bar click is compared against mapped one. Set down/up_modifier - for scroll bar click event with control key. - - * macterm.h (x_display_info_for_display): Remove extern. - (SCROLL_BAR_UNPACK, SET_SCROLL_BAR_CONTROL_HANDLE): Don't limit - value to be unpacked to 32-bit on LP64 model. - -2007-02-23 Kenichi Handa - - * process.c (send_process_object_unwind): New function. - (send_process_object): New function. - (Fprocess_send_region): Call send_process_object. - (Fprocess_send_string): Likewise. - -2007-02-22 Jason Rumney - - * w32menu.c (w32_menu_show): Mark the frame's menu as inactive - when popup menu finishes. - - * w32fns.c (menubar_in_use): New flag. - (w32_wnd_proc) : - Use it. - - * w32menu.c (Fx_popup_menu): Don't free menu strings here. - (w32_menu_show): Do it here instead. - - * w32fns.c (w32_wnd_proc) : Set menubar_active frame - parameter. - - * w32menu.c (current_popup_menu): Make available globally. - (menubar_selection_callback): Free menu strings before pushing the - menu event into the keyboard buffer. Remove menu_command_in_progress. - - * w32fns.c (current_popup_menu): Use from w32menu.c. - (w32_wnd_proc) : Use menubar_active - and current_popup_menu to determine whether a menubar menu has - been cancelled. - - * w32term.h (w32_output): Remove menu_command_in_progress. - -2007-02-22 Kim F. Storm - - * dispnew.c (update_frame, update_single_window): Set force_p here if - redisplay_dont_pause is set or Vredisplay_preemption_period is nil... - (update_window, update_frame_1): ... instead of here. - (update_text_area): Clear mouse face on header lines. - -2007-02-21 Kim F. Storm - - * minibuf.c (Fassoc_string): Doc fix. Allow symbol for KEY too. - -2007-02-21 YAMAMOTO Mitsuharu - - * macterm.c (WINDOW_RESOURCE, TERM_WINDOW_RESOURCE): Remove macros. - [USE_MAC_TSM] (mac_handle_text_input_event): Remove unused variable - `mapped_modifiers'. - (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Use Keyboard - Layout Services routines to get current Unicode keyboard layout. - -2007-02-20 Chong Yidong - - * frame.c (x_set_screen_gamma): Apply gamma value to the frame's - bgcolor. - -2007-02-19 Kim F. Storm - - * minibuf.c (Fassoc_string): Allow symbols as keys. - - * w32term.c (w32_set_scroll_bar_thumb): Don't resize scroll-bar - handle while dragging, except when we get close to eob. - Fix position and size calculations so we don't scroll backwards - just by clicking on the handle. - -2007-02-17 YAMAMOTO Mitsuharu - - * Makefile.in (${emacsapp}Contents/Resources/Emacs.rsrc) - [HAVE_CARBON]: Remove target. - (macosx-app) [HAVE_CARBON]: Don't depend on it. - -2007-02-17 Juanma Barranquero - - * callproc.c (syms_of_callproc) : - : - (Fgetenv_internal): Fix typos in docstrings. - - * doc.c (Fsubstitute_command_keys): Fix typo in docstring. - -2007-02-16 Andreas Schwab - - * frame.c (Fmodify_frame_parameters): Return a value. - - * editfns.c (Fformat): Add support for '+' flag. - * doprnt.c (doprnt1): Likewise. Fix overflow checking. - -2007-02-14 Chong Yidong - - * s/umips.h: Unused file removed. - -2007-02-14 Juanma Barranquero - - * xfaces.c (Fcolor_distance): Don't continue checking a color for - errors after it has been correctly parsed as an RGB list. - -2007-02-14 Jan Dj,Ad(Brv - - * xterm.c (do_ewmh_fullscreen): Also check for _NET_WM_STATE_FULLSCREEN. - -2007-02-13 YAMAMOTO Mitsuharu - - * macfns.c (Fx_focus_frame): Move current process to foreground if - it is not. - [TARGET_API_MAC_CARBON] (Fx_file_dialog): Replace #if MAC_OSX with - #ifdef MAC_OSX. - (Fmac_set_font_panel_visible_p) [USE_MAC_FONT_PANEL]: Rename from - Fmac_set_font_panel_visibility. All uses changed. Rename argument - VISIBLE to FLAG. - - * macterm.c (MakeMeTheFrontProcess) [MAC_OSX]: Remove function. - (mac_initialize) [MAC_OSX]: Call SetFrontProcess instead of - MakeMeTheFrontProcess. - -2007-02-12 Chong Yidong - - * frame.c (x_set_screen_gamma): Clear face cache. - -2007-02-11 Juanma Barranquero - - * buffer.c (Fgenerate_new_buffer_name, Fbuffer_modified_tick): - Reflow docstrings. - -2007-02-10 Eli Zaretskii - - * window.c (Fwindow_height, Fwindow_hscroll) - (Fwindow_redisplay_end_trigger, Fwindow_point, Fwindow_start) - (Fwindow_end, Fwindow_display_table, Fwindow_text_height): - Document the effect of WINDOW arg being nil. - -2007-02-08 Kim F. Storm - - * minibuf.c (read_minibuf): Fix 2007-01-30 change. - Use Qlambda as interim value of Vminibuffer_completing_file_name. - (Fcompleting_read): Use non-filename maps if value is Qlambda (or Qnil). - (syms_of_minibuf) : Document lambda. - -2007-02-07 Juanma Barranquero - - * makefile.w32-in ($(TRES)): Use literal "../nt/emacs.rc" instead - of $(ALL_DEPS). - -2007-02-07 Eli Zaretskii - - * makefile.w32-in ($(TRES)): Depend on stamp_BLD, since $(TRES) is - put into $(BLD). - -2007-02-06 Chong Yidong - - * frame.c (Fmodify_frame_parameters): Don't bind - Qinhibit_default_face_x_resources, which has no effect. - (Qinhibit_default_face_x_resources): Symbol deleted. - -2007-02-03 Eli Zaretskii - - * indent.c (Fmove_to_column): Document that the argument COLUMN is - taken from prefix numeric argument. - -2007-02-03 Juanma Barranquero - - * lread.c (syms_of_lread) : Doc fix. - -2007-01-29 Andreas Seltenreich (tiny change) - - * xterm.c [!USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_expose): - Use the foreground color of the scroll-bar face when drawing - the scroll-bar's border. - -2007-02-02 Jan Dj,Ad(Brv - - * xterm.c (do_ewmh_fullscreen): Check that what != NULL before - calling wm_supports. - -2007-02-01 Juanma Barranquero - - * lread.c (syms_of_lread) : Doc fix. - Wording by Eli Zaretskii. - -2007-01-31 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Initialize h/vmargin to 0. - -2007-01-30 Richard Stallman - - * minibuf.c (read_minibuf): - Save and clear Vminibuffer_completing_file_name. - (read_minibuf_unwind): Restore it. - (Vminibuffer_completion_table, Qminibuffer_completion_table) - (Vminibuffer_completion_predicate, Qminibuffer_completion_predicate) - (Vminibuffer_completion_confirm, Qminibuffer_completion_confirm) - (Vminibuffer_completing_file_name): Definitions moved up. - -2007-01-29 Chong Yidong - - * m/hp800.h: Restore, removing HP-UX support. - -2007-01-29 Jan Dj,Ad(Brv - - * Makefile.in: Use a variable, XFT_LIBS, instead #define LIB_X11_LIB. - -2007-01-28 Richard Stallman - - * minibuf.c (Ftry_completion, Fall_completions) - (Fcompleting_read, Ftest_completion): - Rename arg ALIST or TABLE to COLLECTION. - -2007-01-27 Chong Yidong - - * unexhp9k800.c: Remove due to lack of legal papers. - - * m/sr2k.h, m/hp800.h: Remove due to dependence on above. - -2007-01-27 Eli Zaretskii - - * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Doc fix. - - * minibuf.c (Fcompleting_read): Doc fix. - -2007-01-26 Jan Dj,Ad(Brv - - * gtkutil.c (xg_initialize): Call XftInit if HAVE_XFT. - - * Makefile.in: Use XFT_LIBS if defined. - -2007-01-26 YAMAMOTO Mitsuharu - - * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use - BLOCK_INPUT/UNBLOCK_INPUT. - - * blockinput.h (interrupt_input_blocked): Declare volatile. - - * keyboard.c (interrupt_input_blocked): Declare volatile. - - * syssignal.h (SIGNAL_THREAD_CHECK): Use pthread_equal. - -2007-01-24 Kim F. Storm - - * keymap.c (describe_map): Don't consider prefix keys to be shadowed. - -2007-01-23 Juanma Barranquero - - * editfns.c (Finsert_char): Doc fix. - (Fget_internal_run_time, Fdecode_time): Fix typos in docstrings. - -2007-01-22 YAMAMOTO Mitsuharu - - * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag): - Don't pass keyboard modifiers to mac_store_drag_event, but put - them as kEventParamKeyModifiers Apple event parameter. - -2007-01-21 Chong Yidong - - * xdisp.c (try_window): Revert previous change. - - * dispnew.c (update_text_area): Revert 2006-09-17 change. - Always redraw non-mode-line rows with mouse-face. - -2007-01-20 Chong Yidong - - * xdisp.c (try_window): Clear mouse-face highlights first. - - * window.c (set_window_buffer): Revert 2006-11-22 change. - -2007-01-20 Eli Zaretskii - - * .gdbinit (ppt, xtype, xmisctype, xint, xptr, xmarker, xframe) - (xbuffer, xcons, xcar, xcdr): Fix doc strings. - -2007-01-20 Chong Yidong - - * keyboard.c (read_key_sequence): Extract local map only if the - given position is in an accessible buffer region. - -2007-01-19 Nick Roberts - - * .gdbinit: Reformat documentation so that first sentence - displays properly with "help user-defined" (like apropos). - -2007-01-18 Bruno Haible (tiny change) - - * epaths.in: Move PATH_DOC from local/info to local/share/info. - -2007-01-15 YAMAMOTO Mitsuharu - - * macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]: - Create movable modal window instead of movable alert window. - (create_and_show_dialog) [!MAC_OSX]: Use DeactivateControl instead - of DisableControl. - - * macselect.c (Fmac_resume_apple_event): Set error number when - descriptor type of reply is non-null. - -2007-01-14 YAMAMOTO Mitsuharu - - * macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]: - Use DisableControl for disabled items. Set default button to first - enabled one. Use icon of application in execution. - -2007-01-13 Eli Zaretskii - - * process.c (Fdelete_process, Fprocess_id, sigchld_handler): - Copy PID into EMACS_INT to avoid GCC warnings. - - * fns.c (maybe_resize_hash_table): Copy new size of hash table - into EMACS_INT to avoid GCC warnings. - - * editfns.c (Fuser_uid, Fuser_real_uid): Copy values returned by - geteuid and getuid into EMACS_INT to avoid GCC warnings. - - * dired.c (Ffile_attributes): Fix last change. - -2007-01-12 Eli Zaretskii - - * dired.c (Ffile_attributes): Copy some members of `struct stat' - into int's to avoid GCC warnings about limited range of short in - arguments to FIXNUM_OVERFLOW_P. - -2007-01-12 YAMAMOTO Mitsuharu - - * macmenu.c (HAVE_DIALOGS): Define if TARGET_API_MAC_CARBON. - (mac_handle_dialog_event, install_dialog_event_handler) - (create_and_show_dialog) [TARGET_API_MAC_CARBON]: New functions. - (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN) - (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH) - (DIALOG_MAX_INNER_WIDTH, DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE) - (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH) - (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE) - (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN) - (DIALOG_ICON_TOP_MARGIN) [TARGET_API_MAC_CARBON]: New macros. - (mac_dialog) [TARGET_API_MAC_CARBON]: Remove function. - (mac_dialog_show) [TARGET_API_MAC_CARBON]: Use create_and_show_dialog. - - * macterm.c (x_free_frame_resources) [USE_CG_DRAWING]: - Call mac_prepare_for_quickdraw. - (quit_char, make_ctrl_char) [TARGET_API_MAC_CARBON]: Move externs - outside #ifdef MAC_OSX. - (mac_quit_char_key_p) [TARGET_API_MAC_CARBON]: Move function - outside #ifdef MAC_OSX. - (mac_check_bundle) [MAC_OSX]: Remove unused function. - - * macterm.h (mac_quit_char_key_p): Move extern outside #ifdef MAC_OSX. - (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Parenthesize definitions. - -2007-01-11 Jan Dj,Ad(Brv - - * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use pthread_equal, - block/unblock SIGIO. - -2007-01-10 Stefan Monnier - - * editfns.c (Fformat): Allow integer-format to work with floats of size - larger than most-positive-fixnum (but still smaller than MAXINT). - - * dired.c (Ffile_attributes): Use floats for large uids/gids. - -2007-01-09 Eli Zaretskii - - * emacs.c (syms_of_emacs) : Doc fix. - -2007-01-09 YAMAMOTO Mitsuharu - - * callproc.c (Fcall_process_region) [HAVE_MKSTEMP]: Add BLOCK_INPUT - around mkstemp. - - * image.c (XDrawLine) [MAC_OS]: Remove macro. - (XCreateGC_pixmap) [!HAVE_NTGUI]: Likewise. - (x_disable_image) [!HAVE_NTGUI]: Use XCreateGC instead of - XCreateGC_pixmap. - - * macgui.h (Display): Typedef to opaque type. - - * macmenu.c (mac_dialog_modal_filter) [MAC_OSX]: New function. - (Fx_popup_dialog) [MAC_OSX]: Use standard alert if called from - Fmessage_box, Fyes_or_no_p, or Fy_or_n_p. - [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030] (menu_quit_handler): - Use mac_quit_char_key_p. - - * macterm.c (XDrawLine): Rename from mac_draw_line_to_pixmap. - (XCreateGC): Change type of 2nd argument to void *. - (XFreeGC) [USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: - Fix last change. - (mac_to_emacs_modifiers): Change return type to int. - [USE_CARBON_EVENTS] (mac_event_to_emacs_modifiers): Likewise. - (mac_mapped_modifiers): New function. - (XTread_socket): Use it. - [USE_TSM] (mac_handle_text_input_event): Likewise. - (do_window_update) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. - (mac_quit_char_modifiers, mac_quit_char_keycode) [MAC_OSX]: - Remove variables. - (mac_determine_quit_char_modifiers, init_quit_char_handler) - [MAC_OSX]: Remove functions. - (make_ctrl_char) [MAC_OSX]: Add extern. - (mac_quit_char_key_p) [MAC_OSX]: New function. - (mac_initialize) [MAC_OSX]: Don't call init_quit_char_handler. - - * macterm.h (FONT_MAX_WIDTH): Remove unused macro. - (XCreateGC): Change type in extern. - (XDrawLine): Rename from mac_draw_line_to_pixmap. - (mac_quit_char_key_p) [MAC_OSX]: Add extern. - -2007-01-08 Jan Dj,Ad(Brv - - * keyboard.c (init_keyboard): Initialize interrupt_input_blocked and - interrupt_input_pending. - - * xterm.h (x_display_info): New: net_supported_atoms, - nr_net_supported_atoms and net_supported_window. - - * xterm.c (last_user_time): New variable. - (handle_one_xevent): Set last_user_time from events that have Time. - Set net_supported_window to 0 when reparented. - (wm_supports): New function. - (do_ewmh_fullscreen): Use wm_supports to check for _NET_WM_STATE. - (x_term_init): Initialize net_supported_atoms, nr_net_supported_atoms - and net_supported_window. - -2007-01-05 Kim F. Storm - - * indent.c (Fvertical_motion): Fix it overshoot check for overlay - strings without embedded newlines immediately followed by newline. - -2007-01-05 YAMAMOTO Mitsuharu - - * editfns.c (Fformat_time_string, Fdecode_time, Fencode_time) - (Fcurrent_time_string, Fcurrent_time_zone): Add BLOCK_INPUT around - gmtime/localtime/emacs_memftimeu/mktime. - - * mac.c (Fmac_set_file_creator): Use MAC_EMACS_CREATOR_CODE - instead of 'EMAx'. - [!MAC_OSX] (sys_open, sys_creat, sys_fopen): Likewise. - - * macgui.h (struct _XGC) [USE_CG_DRAWING - && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New members cg_fore_color - and cg_back_color. - - * macmenu.c (Vshow_help_function) [TARGET_API_MAC_CARBON]: Add extern. - (restore_show_help_function, menu_target_item_handler) - [TARGET_API_MAC_CARBON]: New functions. - (install_menu_target_item_handler): New function. - (add_menu_item) [TARGET_API_MAC_CARBON]: Set help string as menu - item property. - - * macterm.c (CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR) - (CG_SET_FILL_COLOR_WITH_GC_FOREGROUND) - (CG_SET_FILL_COLOR_WITH_GC_BACKGROUND) - (CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR) - (CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND): New macros. - (mac_cg_color_space_rgb) [USE_CG_DRAWING]: New variable. - (mac_cg_color_black) [USE_CG_DRAWING - && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New variable. - (init_cg_color) [USE_CG_DRAWING]: New function. - (mac_draw_line, mac_draw_rectangle) [USE_CG_DRAWING]: Use - CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND instead of CG_SET_STROKE_COLOR. - (mac_erase_rectangle, mac_clear_window, mac_draw_cg_image) - (mac_fill_rectangle, mac_draw_image_string_cg) [USE_CG_DRAWING]: - Use CG_SET_FILL_COLOR_WITH_GC_FOREGROUND or - CG_SET_FILL_COLOR_WITH_GC_BACKGROUND instead of CG_SET_FILL_COLOR. - (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Likewise. - (XCreateGC, XFreeGC, XSetForeground, XSetBackground) [USE_CG_DRAWING - && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use gc->cg_fore_color and/or - gc->cg_back_color. - (install_drag_handler, remove_drag_handler): Make extern. - (install_menu_target_item_handler): Add extern. - (install_window_handler): Call install_menu_target_item_handler. - [MAC_OS8] (main): Use MAC_EMACS_CREATOR_CODE instead of 'EMAx'. - (mac_initialize) [USE_CG_DRAWING]: Call init_cg_color. - - * macterm.h (MAC_EMACS_CREATOR_CODE): New enumerator. - -2007-01-04 Juanma Barranquero - - * window.c (Fwindow_end): Fix use of >= operator. - -2007-01-03 Richard Stallman - - * window.c (Fwindow_end): Check BUF_OVERLAY_MODIFF like BUF_MODIFF. - -2007-01-02 Jan Dj,Ad(Brv - - * gtkutil.h (xg_menu_item_cb_data_): Remove highlight_id and - unhighlight_id. - - * gtkutil.c (menuitem_highlight_callback): Invoked widget is the - parent of the menu item. Get menu item widget from event. - (xg_create_one_menuitem, xg_update_menu_item): highlight_id and - unhighlight_id has been removed. - (create_menus): Connect enter/leave-notify-event to the menu instead - of individual items. - -2006-12-31 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Connect create-menu-proxy with - xg_tool_bar_menu_proxy. - (xg_tool_bar_menu_proxy): New function. - (xg_tool_bar_proxy_callback): New function. - -2006-12-30 Jan Dj,Ad(Brv - - * gtkutil.c (xg_tool_bar_button_cb): Save last modifier on widget. - (xg_tool_bar_callback): Remove check for button. - (update_frame_tool_bar): Put an event box in the tool bar and a button - in the event box. Attach enter/leave-notify-event to the event box. - -2006-12-30 Richard Stallman - - * keymap.c (Fdefine_key): Doc fix. - -2006-12-29 Kim F. Storm - - * frame.h (struct frame): New member minimize_tool_bar_window_p. - - * xdisp.c (auto_resize_tool_bars_p): Replace with ... - (Vauto_resize_tool_bars): ... this. - (syms_of_xdisp): DEFVAR_LISP and initialize it. Update doc string - to describe new value `grow-only', and use of C-l. - (display_tool_bar_line): Only use default face for border below - toolbar if not grow-only (to get acceptable visual appearence). - Explicitly set visible_height for empty toolbar lines. - (redisplay_tool_bar): Handle `grow-only' setting. Check and clear - minimize_tool_bar_window_p flag. - - * window.c (Frecenter): Set minimize_tool_bar_window_p flag - when called without arg to redraw with minimum toolbar height. - Update doc string. - -2006-12-29 Jason Rumney - - * s/ms-w32.h (tzname): Do not define in msvc8. - (utime): Do not define in msvc8. - - * regex.c (regerror): Change parameter name err_code. - -2006-12-26 Richard Stallman - - * search.c (Fsearch_forward): Doc fix. - - * callint.c (Finteractive): Doc fix. - -2006-12-25 Kim F. Storm - - * s/ms-w32.h (BROKEN_DATAGRAM_SOCKETS): Define it. - -2006-12-23 Eli Zaretskii - - * keyboard.c (some_mouse_moved): Fix last change. - -2006-12-22 Eli Zaretskii - - * callproc.c (syms_of_callproc) : Doc fix. - -2006-12-22 Mark Davies - - * m/amdx86-64.h, m/hp800.h: Add support for NetBSD. - * m/sh3el.h: New file. - -2006-12-22 Eli Zaretskii - - * makefile.w32-in (emacs, temacs): Depend on stamp_BLD instead of - $(BLD). - ($(OBJ0) $(OBJ1) $(WIN32OBJ)): New dependency on stamp_BLD. - (bootstrap-temacs): Pass $(XMFLAGS) to sub-make. - ($(OBJ0) $(OBJ1) $(WIN32OBJ)): Add lastfile.$(O) and firstfile.$(O). - (clean): Delete stamp_BLD. - -2006-12-22 YAMAMOTO Mitsuharu - - * macfns.c (mac_update_title_bar) [TARGET_API_MAC_CARBON]: - Call mac_update_proxy_icon also when buffer modification flag changed. - [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): Don't update alias, - but compare FSRef/FSSpec of resolved alias. - -2006-12-21 Kim F. Storm - - * w32.c (_sys_wait_accept): Fix handle leak. - -2006-12-20 Jan Dj,Ad(Brv - - * sound.c: Include if ALSA_SUBDIR_INCLUDE is - defined. - -2006-12-20 Kim F. Storm - - * s/ms-w32.h (BROKEN_NON_BLOCKING_CONNECT): Define it. - -2006-12-19 Juanma Barranquero - - * keyboard.c (syms_of_keyboard) : - * mac.c (Fmac_code_convert_string): - * search.c (Fsearch_forward): Doc fixes. - -2006-12-19 Kim F. Storm - - Rework 2006-12-04 change. A SIGUSR1 (SIGUSR2) signal now generates - a sigusr1 event instead of [signal usr1] sequence, and signal events - are now supposed to be handled via special-event-map. - - * keyboard.c (kbd_buffer_store_event_hold): Undo 2006-12-04 change. - (make_lispy_event): Don't generate Qsignal prefix for code 0. - Abort if signal code is unknown. - (store_user_signal_events): Don't make Qsignal prefix (code 0). - (Qsignal): Move declaration back to process.c. - (syms_of_keyboard): Don't intern or staticpro it here. - - * process.c (Qsignal): Declare here. - (syms_of_process): Intern or staticpro it. - - * emacs.c (main): Rename user signals to sigusr1 and sigusr2. - - * .gdbinit: Pass on SIGUSR1 and SIGUSR2 to Emacs. - -2006-12-19 Juanma Barranquero - - * buffer.c (syms_of_buffer) : - : Doc fixes. - -2006-12-17 Richard Stallman - - * fileio.c (Fread_file_name_internal): Pass Vread_file_name_predicate - to Ffile_name_completion. - - * dired.c (file_name_completion): New arg PREDICATE. Some cleanup. - (Ffile_name_completion): New arg PREDICATE. - -2006-12-17 Juanma Barranquero - - * buffer.c (Fkill_buffer): Doc fix. - (syms_of_buffer) : Doc fix. - -2006-12-16 Juanma Barranquero - - * minibuf.c (Ftry_completion): Check that obarray buckets are symbols. - -2006-12-16 Eli Zaretskii - - * w32fns.c (w32-window-exists-p): New function. - (syms_of_w32fns): Defsubr it. - - * prefix-args.c [STDC_HEADERS]: Include stdlib.h. - -2006-12-16 Juanma Barranquero - - * minibuf.c (Ftry_completion): Use `check_obarray' if ALIST is a vector. - -2006-12-15 Eli Zaretskii - - * emacs.c (USAGE3): Clarify documentation of --color. - -2006-12-15 YAMAMOTO Mitsuharu - - * mac.c (wakeup_from_rne_enabled_p) [TARGET_API_MAC_CARBON]: - New variable. - (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE): New macros. - [!MAC_OSX] (select): Use them. - [MAC_OSX] (select_and_poll_event, sys_select): Likewise. - (mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: New function. - - * macfns.c (mac_atsu_font_face_attributes) [USE_ATSUI]: Add extern. - (Fmac_atsu_font_face_attributes) [USE_ATSUI]: New function. - (syms_of_macfns) [USE_ATSUI]: Defsubr it. - - * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag): - Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event. - - * macterm.c (mac_query_char_extents) [USE_ATSUI]: Don't call - ATSUGetGlyphBounds if not necessary. - (Vmac_atsu_font_table) [USE_ATSUI]: Remove variable. - (syms_of_macterm) [USE_ATSUI]: Don't defvar it. - (fm_get_style_from_font, atsu_find_font_from_family_name) - (atsu_find_font_family_name, mac_atsu_font_face_attributes) - [USE_ATSUI]: New functions. - (init_font_name_table) [USE_ATSUI]: Use atsu_find_font_family_name. - (mac_load_query_font) [USE_ATSUI]: Use atsu_find_font_from_family_name. - Don't get metrics for Latin-1 right half characters. - (mac_load_query_font): Don't load font if space width is not positive. - [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): - Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event. - (XTread_socket): Call SelectWindow when unfocused frame is clicked. - - * macterm.h (mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: Add extern. - -2006-12-15 Kim F. Storm - - * keyboard.c (ignore_mouse_drag_p): New global var. - (some_mouse_moved): Return 0 if it is non-zero. - (make_lispy_event): Generate click event on mouse up if - ignore_mouse_drag_p is non-zero, even if mouse moved. - Clear ignore_mouse_drag_p on mouse down/up. - - * xdisp.c (redisplay_window): Set ignore_mouse_drag_p if tool-bar - is resized to avoid generating a mouse drag event. - -2006-12-14 Juanma Barranquero - - * w32fns.c (w32_wnd_proc): Force non-tooltip frames to respect the - minimum tracking size. Remove non-working old hack to do the same. - -2006-12-14 YAMAMOTO Mitsuharu - - * emacs.c (handle_user_signal): Move function to keyboard.c. - (main): Use add_user_signal for SIGUSR1 and SIGUSR2. - - * keyboard.c (make_lispy_event): Use find_user_signal_name. - (read_avail_input): Store pending user signal events. - (struct user_signal_info): New struct. - (user_signals): New variable. - (add_user_signal, store_user_signal_events) - (find_user_signal_name): New functions. - (handle_user_signal): Move function from emacs.c. Don't store - USER_SIGNAL_EVENT here, but increment number of pending signals. - - * keyboard.h (add_user_signals): Add extern. - -2006-12-11 Juanma Barranquero - - * buffer.c (syms_of_buffer) : - : - : Doc fixes. - - * xdisp.c (syms_of_xdisp) : Doc fix. - -2006-12-10 Kim F. Storm - - * xdisp.c (show_mouse_face): Never use text cursor in tool-bar. - -2006-12-10 Juanma Barranquero - - * abbrev.c (syms_of_abbrev) : - * buffer.c (syms_of_buffer) : - * keymap.c (Flookup_key): - * lread.c (Feval_buffer, Feval_region): - * macterm.c (syms_of_macterm) : - : - * marker.c (Fmarker_insertion_type): - * minibuf.c (syms_of_minibuf) : - * msdos.c (syms_of_msdos) : - * w32term.c (syms_of_w32term) : - : - * xdisp.c (format-mode-line): - * xterm.c (syms_of_xterm) : - : Doc fixes. - -2006-12-10 Andreas Schwab - - * systime.h (EMACS_GET_TIME): Remove check for - HAVE_STRUCT_TIMEZONE which is never defined. - -2006-12-10 Alan Mackenzie - - * syntax.c (Fpartial_parse_sexp): Correct Docco: Elt 8 of the - result is now neither the last elt nor optional for OLDSTATE. - -2006-12-09 Eli Zaretskii - - * process.c (Fsignal_process): Doc fix. Use XFLOAT_DATA to - extract the process ID from a Lisp float. - -2006-12-09 Chong Yidong - - * xterm.c (XTframe_raise_lower): Comment out _NET_ACTIVE_WINDOW code. - -2006-12-08 Eli Zaretskii - - * frame.h (PIX_TYPE): Redefine as `unsigned long', for 64-bit - platforms where long is 64-bit. - - * msdos.h (PIX_TYPE): Redefine as `unsigned long'. - -2006-12-08 NAKAJI Hiroyuki (tiny change) - - * m/amdx86-64.h: Add support for Solaris 10 on x86-64. - -2006-12-08 Kenichi Handa - - * xterm.c (x_query_font): Use xstricmp instead off strcasecmp. - -2006-12-08 Juanma Barranquero - - * emacs.c (syms_of_emacs) : Doc fix. - -2006-12-07 Kim F. Storm - - * process.c (parse_signal): Use xstricmp instead of strcasecmp. - (Fsignal_process): Don't use strncasecmp. - -2006-12-05 Glenn Morris - - * abbrev.c (Qforce): New Lisp_Object. - (Fdefine_abbrev): Do not overwrite non-system abbrevs with system - abbrevs, unless 'force is applied. - (syms_of_abbrev): Add Qforce. - -2006-12-04 Kim F. Storm - - * process.c (parse_signal): Rename macro from handle_signal. - (Fsignal_process): Also accept lower-case variants of signal - names (to align with signal names generated by Emacs itself). - - * emacs.c (handle_USR1_signal, handle_USR2_signal): Replace by... - (handle_user_signal): ... this, which generates two USER_SIGNAL_EVENTs - first with code == 0 [signal] and one with code == sig number. - (main): Use it as handler for SIGUR1 and SIGUSR2. - - * keyboard.c (kbd_buffer_store_event_hold): Don't throw-on-input - if first event in [signal xxx] sequence. - (lispy_user_signals, Qusr1_signal, Qusr2_signal): Remove. - (syms_of_keyboard): Don't intern and staticpro them. - (Qsignal): Declare here. - (syms_of_keyboard): Intern and staticpro it. - (make_lispy_event): Use it. Intern symbols on the fly for other - USER_SIGNAL_EVENTs events. - - * process.c (Qsignal): Declare extern. - (syms_of_process): Don't intern/staticpro it here. - - * process.c (read_process_output): Abort if carryover < 0. - -2006-12-04 YAMAMOTO Mitsuharu - - * config.in: Regenerate. - - * fileio.c [__NetBSD__]: Don't define `unix'. - (Funix_sync, syms_of_fileio): Use `#ifdef HAVE_SYNC' instead of - `#ifdef unix'. - -2006-12-04 Glenn Morris - - * Makefile.in (version): New variable, set by configure. - (bootstrapclean, mostlyclean): Also remove emacs-${version}. - -2006-12-03 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Handle modifying a toolbar item - without an image. - -2006-12-01 Eli Zaretskii - - * w32fns.c (Fw32_shell_execute): Doc fix. - -2006-11-30 Chong Yidong - - * xdisp.c (move_it_to): Correctly count tab glyphs for continued - lines ending in tab. - -2006-11-30 Jan Dj,Ad(Brv - - * xterm.c (x_raise_frame): Move setting of _NET_ACTIVE_WINDOW - property ... - (XTframe_raise_lower): ... to here. - -2006-11-30 Kenichi Handa - - * regex.c (regex_compile): Fix previous change. - -2006-11-29 Juanma Barranquero - - * sound.c (Fplay_sound_internal): Remove spurious newline in docstring. - -2006-11-28 Chong Yidong - - * config.in: Regenerate. - -2006-11-28 Kenichi Handa - - * regex.c (regex_compile): Don't call SET_LIST_BIT with a - multibyte character. - -2006-11-27 Chong Yidong - - * s/aix4-2.h: Undefine _NO_PROTO. Suggested by Joe Buehler. - -2006-11-27 Kim F. Storm - - * window.c (set_window_buffer): Refactor recent changes. - -2006-11-27 Jason Rumney - - * w32term.c (w32_msg_worker): Declare correctly. - (w32_initialize): Don't cast w32_msg_worker. - - * w32fns.c (w32_msg_worker): Define as WINAPI and arg as void pointer. - -2006-11-26 Chong Yidong - - * m/amdx86-64.h: Look for standard libs in /usr/lib64 only if that - directory exists. - -2006-11-25 Eli Zaretskii - - * w16select.c (Fw16_set_clipboard_data): Fix the call to sit_for - as per the calling sequence change on 2006-07-11. - -2006-11-25 Chong Yidong - - * window.c (set_window_buffer): Use BLOCK_INPUT. - -2006-11-24 Juanma Barranquero - - * fns.c (substring_both): Add missing address operator. - -2006-11-24 Stefan Monnier - - * fns.c: Use AREF/ASIZE macros. - (concat): Provide the full ANSI prototype. - -2006-11-24 Juanma Barranquero - - * buffer.c (syms_of_buffer) : Doc fix. - -2006-11-23 William Smith (tiny change) - - * strftime.c (HAVE_SYS__MBSTATE_T_H): Fix typo. - -2006-11-22 Alfred M. Szmidt (tiny change) - - * s/openbsd.h (LD_SWITCH_SYSTEM): Remove /usr/pkg/lib and - /usr/pkg/lib from the library search path. - (LD_SWITCH_X_DEFAULT): New macro. - -2006-11-22 Chong Yidong - - * window.c (set_window_buffer): Clear mouse highlight if it is in - this window. - -2006-11-21 Chong Yidong - - * xfaces.c (realize_default_face): Check if the default font name - exists on this display before trying to use it. - -2006-11-21 Richard Stallman - - * fileio.c: Break line before &&, not after. - -2006-11-20 Eli Zaretskii - - * fns.c (concat) [!__GNUC__]: Add prototype. - -2006-11-20 Kenichi Handa - - * fileio.c (Fread_file_name_internal): Use SBYTES (not SCHARS) to - check the tailing slash of a filename. - -2006-11-20 KOBAYASHI Yasuhiro (tiny change) - - * indent.c (Fvertical_motion): Include composition in the case of - overshoot expected. - -2006-11-19 Andreas Schwab - - * xfaces.c (Fdisplay_supports_face_attributes_p): Initialize supports. - - * xmenu.c (Fx_popup_menu): Initialize selection. - -2006-11-18 Andreas Schwab - - * s/gnu-linux.h (GC_MARK_SECONDARY_STACK): Update call to mark_memory. - -2006-11-17 Tetsurou Okazaki (tiny change) - - * xterm.c (do_ewmh_fullscreen): Declare variable before XSETFRAME - to avoid gcc 2.96 error. - -2006-11-17 NIIMI Satoshi (tiny change) - - * search.c (simple_search): In the loop of backward searching, - check also the byte position against the limit. - -2006-11-14 Romain Francoise - - * minibuf.c (Fcompleting_read): Fix typo in docstring. - -2006-11-14 Kenichi Handa - - * coding.c (code_convert_region): Initialize coding->heading_ascii. - (decode_coding_string, code_convert_region): Likewise. - -2006-11-14 YAMAMOTO Mitsuharu - - * config.in: Regenerate. - - * macfns.c (Fx_display_mm_height, Fx_display_mm_width) - [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 - && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if - CGDisplayScreenSize is available. - - * macmenu.c (menu_quit_handler, install_menu_quit_handler): - Replace `#ifdef HAVE_CANCELMENUTRACKING' with - `#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030'. - (install_menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 - && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if - CancelMenuTracking is available. - - * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg) - [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 - && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if - CGContextShowGlyphsWithAdvances is available. - -2006-11-13 Jason Rumney - - * s/ms-w32.h: Define HAVE_INET_SOCKETS. - -2006-11-13 Nozomu Ando - - * alloc.c (mark_memory): New argument OFFSET. All uses changed. - Fix address calculations for case END < START. - (mark_stack): Impose Lisp_Object alignment on jmp_buf. - -2006-11-12 Juanma Barranquero - - * coding.c (Fencode_sjis_char, Fencode_big5_char): - Improve argument/docstring consistency. - - * editfns.c (Fmessage): Doc fixes. - - * process.c (syms_of_process) : Doc fix. - -2006-11-12 Chong Yidong - - * xmenu.c (popup_activated): Define outside HAVE_MENUS. - -2006-11-12 Romain Francoise - - * xselect.c (selection-coding-system): Fix docstring. - -2006-11-12 Juanma Barranquero - - * category.c (Fchar_category_set): Improve arg/docstring consistency. - - * data.c (Flogxor): - * fns.c (Frandom, Flength, Fsafe_length, Fstring_bytes) - (Fstring_equal, Fcompare_strings, Fstring_lessp, Fcopy_sequence) - (Fstring_make_unibyte): Fix typos in docstrings. - -2006-11-10 Jan Dj,Ad(Brv - - * xterm.h (struct x_display_info): Fix indentation. - - * xterm.c (do_ewmh_fullscreen, XTfullscreen_hook): New functions. - (x_check_fullscreen): Call do_ewmh_fullscreen. - (x_initialize): Set fullscreen_hook to XTfullscreen_hook. - - * frame.c (x_set_fullscreen): Call fullscreen_hook if set. - - * term.c: Define fullscreen_hook. - (syms_of_term): Initialize fullscreen_hook to NULL. - - * termhooks.h: Add fullscreen_hook. - -2006-11-08 Juanma Barranquero - - * bytecode.c (Fbyte_code): - * data.c (Fmakunbound): Use SYMBOL_CONSTANT_P macro. - -2006-11-06 Juanma Barranquero - - * lread.c (syms_of_lread): - * xsmfns.c (syms_of_xsmfns): Fix typo in docstring. - -2006-11-06 Martin Rudalics - - * macmenu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS. - - * w32menu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS. - Return nil if building without menus. - - * xmenu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS. - Return nil if building without menus. - -2006-11-05 Mark Davies (tiny change) - - * s/netbsd.h (POSIX_SIGNALS): Define. - -2006-11-05 Martin Rudalics - - * macmenu.c (Fmenu_or_popup_active_p): New function. - (syms_of_macmenu): Defsubr it. - - * w32menu.c (Fmenu_or_popup_active_p): New function. - (syms_of_w32menu): Defsubr it. - (popup_activated_flag, popup_activated): Remove. - - * xdisp.c (note_mouse_highlight) [HAVE_NTGUI]: Don't bother to - check popup_activated. - - * xmenu.c (Fmenu_or_popup_active_p): New function. - (syms_of_xmenu): Defsubr it. - -2006-11-05 YAMAMOTO Mitsuharu - - * unexmacosx.c (malloc_cookie): Remove unused variable. - (region_list_head, region_list_tail, lca, nlc, infile_lc_highest_addr) - (text_seg_lowest_offset, mh, curr_header_offset, infd, outfd) - (emacs_zone, data_segment_old_fileoff, data_segment_scp) - (num_unexec_regions, unexec_regions): Make variables static. - (print_regions, find_emacs_zone_regions): Make static. - (unexec_region_info): New typedef. - (unexec_regions): Change type from vm_range_t[] to unexec_region_info[]. - All uses changed. - (unexec_regions_recorder): Subtract size of trailing null pages from - filesize. Show filesize. - (unexec_regions_merge): Don't merge if null pages of preceding region - is not too small. Use long format in printf. - (copy_segment, copy_data_segment): Show filesize. - (copy_data_segment): Write filesize bytes of region data. - Adjust filesize in segment command accordingly. - (dump_it): Use long format in printf. - -2006-11-05 Juanma Barranquero - - * dosfns.c (Finsert_startup_screen): - * fns.c (Ffeaturep, syms_of_fns): - * frame.c (syms_of_frame): Fix typos in docstrings. - - * unexcw.c (unexec): Fix typo in output message. - -2006-11-04 Ralf Angeli - - * w32fns.c (w32_createwindow): Remove code for handling -geometry - command line option and `initial-frame-alist' which is superfluous - after the last change to `w32_createwindow'. - -2006-11-04 Slawomir Nowaczyk (tiny change) - - * w32proc.c (sys_wait): Only wait for processes with fd<0. - Others should be handled by sys_select instead. Fixes problems - with (progn (start-process "" nil "ls") (call-process "ls")). - -2006-11-04 Giorgos Keramidas (tiny change) - - * xmenu.c (Fmenu_bar_open): Declare variable before BLOCK_INPUT to - avoid gcc 2.95 error. - -2006-11-04 Chong Yidong - - * gtkutil.c (update_frame_tool_bar): If icon image is invalid and - wicon is null, insert an empty button. - -2006-11-03 Jan Dj,Ad(Brv - - * xterm.c (x_raise_frame): Send _NET_ACTIVE_WINDOW when raising the - window. - -2006-11-02 Juanma Barranquero - - * emacs.c (Fkill_emacs): Fix typo in docstring. - -2006-11-02 Nozomu Ando - - * unexmacosx.c (mach_header, segment_command, vm_region, section) - [_LP64]: New defines. - (VM_REGION_BASIC_INFO_COUNT, VM_REGION_BASIC_INFO, LC_SEGMENT) - (MH_MAGIC) [_LP64]: Redefine. - (delta): Remove variable. - (curr_file_offset, pagesize): New variables. - (ROUNDUP_TO_PAGE_BOUNDARY): New macro. - (data_segment_old_fileoff): Initialize explicitly. - (print_region, unexec_regions_recorder, print_load_command_name) - (copy_segment, copy_data_segment): Use long format in printf. - (MAX_UNEXEC_REGIONS): Increase to 400. - (unexec_regions_recorder): Don't warn too many regions here. - (find_emacs_zone_regions): Warn too many regions here. - (print_load_command_name) [_LP64]: Show correct load command name. - (copy_segment, copy_data_segment): Use variable `curr_file_offset'. - Show starting virtual memory address. Don't show ending file offset. - (copy_symtab, copy_dysymtab, copy_twolevelhints): New argument DELTA. - (dump_it): Use new local variable `linkedit_delta' and pass to them. - Error if trying to handle multiple DATA segments. - (unexec): Initialize variable `pagesize'. - -2006-11-01 Juanma Barranquero - - * eval.c (Fcatch): Doc fix. - -2006-10-31 YAMAMOTO Mitsuharu - - * image.c [MAC_OS] (image_load_qt_1, xpm_scan, xpm_make_color_table_v) - (xpm_put_color_table_v, xpm_get_color_table_v, xpm_make_color_table_h) - (xpm_put_color_table_h, xpm_get_color_table_h, xpm_str_to_color_key) - (xpm_load_image): Add const qualifier to arguments. - [MAC_OS] (xpm_color_key_strings): Make static const. - - * mac.c (create_apple_event_from_event_ref) - (create_apple_event_from_drag_ref, skip_white_space, parse_comment) - (parse_include_file, parse_binding, parse_component) - (parse_resource_name, parse_value, parse_resource_line) - (xrm_merge_string_database, xrm_get_resource) - (xrm_get_preference_database): Add const qualifier to arguments. - [MAC_OSX] (sys_select): Make variable `context' static const. - - * macfns.c (mac_color_map): Make static const. - (mac_color_map_lookup): Add const qualifier to arguments. - - * macmenu.c (install_menu_quit_handler): Make variable `typesList' - static const. - (name_is_separator): Add const qualifier to arguments. - - * macselect.c (init_service_handler): Make variable `specs' static - const. - - * macterm.c (mac_create_bitmap_from_bitmap_data): Make variable - `swap_nibbles' static const. - (atsu_get_text_layout_with_text_ptr): Make variables `lengths', - `tags', `sizes', `values' static const. - (mac_draw_string_common): Make variables `context' static. - Make variables `tags', `sizes', and `values' static const. - (pcm_get_status, x_detect_focus_change, x_scroll_bar_handle_click) - (xlfdpat_create, xlfdpat_block_match_1, xlfdpat_match) - (mac_to_x_fontname, parse_x_font_name, add_mac_font_name) - (mac_do_list_fonts, is_fully_specified_xlfd, do_grow_window) - (mac_store_event_ref_as_apple_event, mac_make_rdb): Add const - qualifier to arguments. - (xlfd_scalable_fields, keycode_to_xkeysym_table) - (fn_keycode_to_keycode_table): Make static const. - (mac_load_query_font): Make variables `tags', `sizes', `values', - `types', and `selectors' static const. - (mac_handle_command_event, mac_handle_window_event): - Make variables `names' and `types' static const. - (init_command_handler, install_window_handler): Make variables - `specs*' static const. - (mac_handle_font_event, mac_handle_text_input_event) - (mac_store_service_event): Make variables `names' and `types' - const. Make variables `names_*' and `types_*' static const. - - * macterm.h (create_apple_event_from_event_ref) - (create_apple_event_from_drag_ref, xrm_merge_string_database) - (xrm_get_resource, xrm_get_preference_database): Add const - qualifier to arguments in externs. - -2006-10-31 Kenichi Handa - - * xfns.c (xic_create_xfontset): Fix previous change. - -2006-10-30 Chong Yidong - - * s/openbsd.h (LD_SWITCH_SYSTEM): Add /usr/pkg/lib and - /usr/pkg/lib to library search path. - -2006-10-29 Mark Davies (tiny change) - - * ralloc.c (relinquish): Use a long for excess space counter to - handle 64-bit case correctly. - -2006-10-29 Jeramey Crawford - - * m/amdx86-64.h: Add defines for OpenBSD x86-64. - -2006-10-29 Juanma Barranquero - - * window.c (Fdisplay_buffer): Fix typo in docstring. - -2006-10-27 Ben North (tiny change) - - * w32term.c (x_draw_glyph_string_foreground): Set background mode - to TRANSPARENT before using overstrike to simulate bold faces. - - * xfaces.c (best_matching_font): Fix logic to decide whether to - use overstriking to simulate bold-face (it was reversed). - -2006-10-23 Kim F. Storm - - * xdisp.c (remember_mouse_glyph): Do nothing if glyphs are not - initialized. - - * keyboard.c (read_char): Make an element (t . EVENT) in - unread-command-events add EVENT to the current command's key sequence. - (syms_of_keyboard) : Update doc. - -2006-10-21 Richard Stallman - - * minibuf.c (Vread_expression_map): Define here. - (Qread_expression_history): New variable. - (syms_of_minibuf): Initialize them. - (Feval_minibuffer): Use Vread_expression_map and - Qread_expression_history. - -2006-10-21 Kenichi Handa - - * xfns.c (xic_create_fontsetname): If ADSTYLE field is not a wild - card, change it to "*". - (xic_create_xfontset): Call XCreateFontSet for each single - fontname in fontsetname. - -2006-10-19 Chong Yidong - - * callint.c (callint_message): Convert to a Lisp string. - (syms_of_callint): Initialize it. - (callint_message_size): Var deleted. - (Fcall_interactively): Use Fformat instead of doprnt to construct - prompt string. - -2006-10-19 YAMAMOTO Mitsuharu - - * xdisp.c (display_mode_line): Clear enabled_p flag on mode-line row. - -2006-10-19 YAMAMOTO Mitsuharu - - * macfns.c (Vmac_carbon_version_string) [TARGET_API_MAC_CARBON]: - New variable. - (syms_of_macfns) [TARGET_API_MAC_CARBON]: Defvar it. - -2006-10-19 Jan Dj,Ad(Brv - - * xselect.c (x_handle_selection_request): If the converted_selection - is nil or XCDR (converted_selection) is nil, decline the request. - -2006-10-16 Jan Dj,Ad(Brv - - * gtkutil.c (get_utf8_string): Remove warnings with casts. - (xg_tool_bar_button_cb): Ditto. - (xg_tool_bar_callback): Ditto. - -2006-10-16 YAMAMOTO Mitsuharu - - * dispnew.c (adjust_frame_glyphs_for_frame_redisplay): Remove unused - variable ch_dim. - (adjust_frame_glyphs_for_window_redisplay): Likewise. Don't allocate - menu bar window matrices on non-X systems. - - * mac.c (Fmac_get_preference, Fmac_code_convert_string): Add GCPROs. - - * macterm.c (mac_query_char_extents): Don't return glyph ID if layout - adjustment is needed. - (mac_load_query_font): Check if width and height are positive. - -2006-10-14 Richard Stallman - - * sysdep.c (init_sys_modes): Delete DEFVAR_LISP in the wrong place. - -2006-10-13 Chong Yidong - - * xdisp.c (decode_mode_spec): Ignore %c and %l constructs in frame - title. - -2006-10-12 Chong Yidong - - * keymap.c (Fkey_binding): Check Lisp_Object types before doing - XCAR and XINT. - -2006-10-12 Romain Francoise - - * image.c (xbm_read_bitmap_data): Delete extra semicolon. - -2006-10-10 Stefan Monnier - - * eval.c: Include xterm.h for x_fully_uncatch_errors and friends. - - * dispextern.h: Declare x_create_bitmap_from_xpm_data. - - * xterm.c (x_check_expected_move): Remove unused var `count'. - - * xmenu.c (syms_of_xmenu): Use Ffset rather than Fdefalias, since - Fdefalias is not declared in any *.h file. - -2006-10-09 Chong Yidong - - * dispnew.c (sit_for): Sit forever if TIMEOUT is t. - - * keyboard.c (command_loop_1): Handle non-number values of - `minibuffer-message-timeout'. - (Fexecute_extended_command): Fix typo. - - * minibuf.c (temp_echo_area_glyphs): Sit for - `minibuffer-message-timeout' seconds. - -2006-10-08 YAMAMOTO Mitsuharu - - * macterm.c (mac_draw_image_string, mac_draw_image_string_16): - Add argument OVERSTRIKE_P. - (mac_draw_string_common, mac_draw_image_string_cg): Likewise. - Support overstrike. - (mac_draw_string, mac_draw_string_16): Remove functions. - (x_draw_glyph_string_foreground): Use overstrike when needed. - (x_draw_composite_glyph_string_foreground): Likewise. - Use mac_draw_image_string_16 instead of mac_draw_string_16. - (mac_load_query_font): Rename from XLoadQueryFont. Take argument - F instead of DPY. All uses changed. Don't save/restore font. - -2006-10-07 Ralf Angeli - - * w32fns.c (w32_createwindow): Honour left and top positions if - supplied explicitly. - -2006-10-06 Kim F. Storm - - * xdisp.c (pos_visible_p): Fix value when EOB is visible. - -2006-10-05 Chong Yidong - - * frame.c (Qinhibit_face_set_after_frame_default): New var. - (syms_of_frame): Initialize it. - (x_set_frame_parameters): Avoid resetting :font attributes to the - new-frame defaults. - -2006-10-03 Stefan Monnier - - * lisp.h (clear_regexp_cache): Declare. - - * search.c (compile_pattern): Only check `cp->syntax_table' if needed. - (compile_pattern_1): Remember `used_syntax' in `cp->syntax_table'. - (clear_regexp_cache): Only flush those regexps which depend on - a syntax-table. - - * regex.c (regex_compile): Set the new `used_syntax' bit. - - * regex.h: Remove file local variables. - (struct re_pattern_buffer): New field `used_syntax'. - -2006-10-03 Kim F. Storm - - * process.c (list_processes_1): Run sentinels before removing dead - processes. Also remove `closed' network connections. - -2006-10-01 Stefan Monnier - - * xdisp.c (handle_fontified_prop): Don't fontify at EOB. - -2006-09-30 Eli Zaretskii - - * config.in: Regenerated. - -2006-09-29 Juri Linkov - - * buffer.c (syms_of_buffer): Reorder coding systems in the - docstring of %z to the real order displayed in the modeline. - -2006-09-28 Stefan Monnier - - * keymap.c (Fdefine_key): Yet another int/Lisp_Object mixup (YAILOM). - -2006-09-26 Chong Yidong - - * indent.c (Fvertical_motion): Do move back if the Lisp string - being displayed contains newlines. - -2006-09-26 YAMAMOTO Mitsuharu - - * macterm.c (mac_compute_glyph_string_overhangs, XLoadQueryFont) - [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw before QDTextBounds. - -2006-09-26 Kenichi Handa - - * keymap.c (Fsingle_key_description): For an invalid char, return - "Invalid char code NNNNN". - -2006-09-25 Chong Yidong - - * callint.c (Fcall_interactively): Doc fix. - -2006-09-25 YAMAMOTO Mitsuharu - - * macterm.c (x_underline_at_descent_line): New variable. - (syms_of_macterm): DEFVAR_BOOL it. - (x_draw_glyph_string): Use it. - (XLoadQueryFont): Calculate min_bounds.descent and max_bounds.descent. - -2006-09-25 Kenichi Handa - - * keymap.c (Fsingle_key_description): Return unique names for - generic characters. - -2006-09-24 Richard Stallman - - * search.c (compile_pattern_1): Don't BLOCK_INPUT. - -2006-09-24 Eli Zaretskii - - * makefile.w32-in ($(BLD)/fns.$(O), $(BLD)/w32proc.$(O)): - Depend on nt/inc/langinfo.h and nt/inc/nl_types.h. - - * w32proc.c (nl_langinfo): New function. - - * w32fns.c (w32-pass-alt-to-system, w32-alt-is-meta) - (w32-pass-lwindow-to-system, w32-enable-num-lock) - (w32-enable-caps-lock, w32-scroll-lock-modifier) - (w32-lwindow-modifier, w32-rwindow-modifier) - (w32-apps-modifier, w32-mouse-button-tolerance): Doc fix. - -2006-09-23 Juanma Barranquero - - * minibuf.c (Finternal_complete_buffer, Fread_minibuffer) - (Fdisplay_completion_list): Fix typos in docstrings. - -2006-09-23 Romain Francoise - - * s/gnu-linux.h (MAIL_USE_FLOCK): Check for HAVE_LIBLOCKFILE too. - -2006-09-23 Kenichi Handa - - * keymap.c (Fmap_keymap): Docstring mentions about generic character. - -2006-09-22 Stefan Monnier - - * regex.c (analyse_first): For eight-bit-control chars, mark both the - char's value and its leading byte in the fastmap. - (re_search_2): When fast-scanning without translation, be careful to - check that we only match the leading byte of a multibyte char. - - * charset.h (PREV_CHAR_BOUNDARY): Make it work from within a char's - byte sequence. - (AT_CHAR_BOUNDARY): New macro. - -2006-09-22 Kenichi Handa - - * fns.c (optimize_sub_char_table): Don't optimize a sub-char-table - whose default value is non-nil. - -2006-09-22 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_with_chooser): Only show C-l help for - Gtk+ versions < 2.10. - - * xfns.c (syms_of_xfns): Fix typo in help text for - x-gtk-file-dialog-help-text. - -2006-09-21 Kim F. Storm - - * fns.c (Fmemq): Refill doc string. - (Fmemql): New defun, like memq but using eql. - (syms_of_fns): Defsubr it. - -2006-09-20 Kim F. Storm - - * xdisp.c (pos_visible_p): CHARPOS < 0 means return info for - last visible glyph in window. - - * window.c (Fset_window_hscroll, Fwindow_line_height): - Doc fix. Use "off-window" instead of "off-screen". - (Fpos_visible_in_window_p): Likewise. - If POS is t, return info for last visible glyph in window. - -2006-09-19 Chong Yidong - - * search.c (struct regexp_cache): New entry syntax_table. - (compile_pattern_1): Set it. - (syms_of_search): Initialize it. - (compile_pattern): Require the syntax_table entry of the cache - element to match the current syntax table entry. - -2006-09-19 Stefan Monnier - - * window.c (Fwindow_end): Fix recent change. - -2006-09-19 Kim F. Storm - - * window.c (Fset_window_hscroll, Fpos_visible_in_window_p): - Doc fix. Use "off-screen" instead of "invisible". - (Fwindow_line_height): Make line numbers 0-based. Make line arg - optional; if nil, use current cursor row. Handle text terminals - properly. Return nil if non-interactive or pseudo-window. - -2006-09-19 Stefan Monnier - - * keymap.c: Include alloca.h if available. - (Fkey_binding): Only use AREF after checking it's a vector. - Remove unused var `window'. - -2006-09-19 YAMAMOTO Mitsuharu - - * emacs.c (shut_down_emacs) [!subprocesses]: Don't set - inhibit_sentinels. - - * mac.c [!MAC_OSX] (select): Fix argument name. - - * macmenu.c (enum mac_menu_kind, min_menu_id): New enumerator and - menu ID for Apple menu. - (menubar_selection_callback): Remove function. - (find_and_call_menu_selection): New function from xmenu.c. - (x_activate_menubar): Use it. - (set_frame_menubar): Don't use f->output_data.mac->menubar_active. - - * macterm.c (menubar_selection_callback): Remove extern. - (M_APPLE): Change to 234. - (do_apple_menu) [!TARGET_API_MAC_CARBON]: Make non-static. - (do_menu_choice): Remove function. - - * macterm.h (struct mac_output): Remove member menubar_active. - (do_menu_choice): Remove extern. - (do_apple_menu) [!TARGET_API_MAC_CARBON]: Add extern. - -2006-09-18 Jan Dj,Ad(Brv - - * xfns.c (syms_of_xfns): Rename x_gtk_show_chooser_help_text to - x_gtk_file_dialog_help_text. - - * gtkutil.c (xg_uses_old_file_dialog): Rename x-use-old-gtk-file-dialog - to x-gtk-use-old-file-dialog. - (xg_get_file_with_chooser): Rename x_gtk_show_chooser_help_text to - x_gtk_file_dialog_help_text. - - * xfns.c (syms_of_xfns): Ditto. - -2006-09-18 Kim F. Storm - - * window.c (Fwindow_line_visibility): Remove. - (Fwindow_line_height): New defun replacing it. - (syms_of_window): Defsubr it. - -2006-09-18 YAMAMOTO Mitsuharu - - * mac.c (SELECT_USE_CFSOCKET) [MAC_OSX]: Set default to 1. - [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Fix pointer type. - -2006-09-17 Jay Belanger - - * gmalloc.c: - * md5.c: - * md5.h: - * strftime.c: Replace "GNU Library General Public License" by "GNU - General Public License" throughout. - -2006-09-17 Kim F. Storm - - * dispnew.c (update_text_area): Undo 2000-07-18 change. - Always redrawing whole row if line has mouse-face in it causes - excessive flickering of the mode line. - -2006-09-17 Chong Yidong - - * search.c (clear_regexp_cache): New function. - - * syntax.c (Fmodify_syntax_entry): Clear regexp cache. - -2006-09-16 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_with_chooser): - Check x-gtk-show-chooser-help-text before adding the help text. - - * xfns.c (syms_of_xfns): New variable: x-gtk-show-chooser-help-text. - - * gtkutil.c (get_utf8_string): Try harder to convert to UTF8. Gtk+ - will simply crash if we fail. - -2006-09-16 Richard Stallman - - * regex.c (re_compile_pattern): Set gl_state.current_syntax_table. - -2006-09-15 Kim F. Storm - - * window.c (Fwindow_line_visibility): New defun for line-move-partial. - (syms_of_window): Defsubr it. - (Fwindow_end): Use window's buffer rather than current buffer. - -2006-09-15 Jay Belanger - - * COPYING: Replace "Library Public License" by "Lesser Public - License" throughout. - -2006-09-15 David Kastrup - - * Makefile.in (keymap.o): Add "keymap.h" and "window.h" dependencies. - - * keymap.c: include "window.h". - (Fcommand_remapping): New optional POSITION argument. - (Fkey_binding): New optional POSITION argument. Completely rework - handling of mouse clicks to get the same order of keymaps as - `read-key-sequence' and heed POSITION. Also temporarily switch - buffers to location of mouse click and back. - - * keyboard.c (command_loop_1): Adjust call of `Fcommand_remapping' - for additional argument. - (parse_menu_item): Adjust call of `Fkey_binding' for additional - argument. - (read_key_sequence): If there are both `local-map' and `keymap' - text properties at some buffer position, heed both. - - * keymap.h: Declare additional optional arguments of - `Fcommand_remapping' and `Fkey_binding'. - -2006-09-15 Juanma Barranquero - - * indent.c (Fcurrent_column, Findent_to): Fix typos in docstring. - -2006-09-14 Andreas Schwab - - * print.c: Whitespace fixup. - -2006-09-14 Kim F. Storm - - * xdisp.c (produce_image_glyph): Automatically crop wide images at - right window edge so we can draw the cursor on the same row to - avoid confusing redisplay by placing the cursor outside the visible - window area. - -2006-09-13 YAMAMOTO Mitsuharu - - * xterm.c (x_initialize): Don't install Xt event timer here. - (x_timeout_atimer_activated_flag): New var. - (x_activate_timeout_atimer): New function to install Xt timer. - (x_send_scroll_bar_event, x_process_timeouts): Use it. - - * xmenu.c (x_menu_set_in_use, popup_activate_callback) - (create_and_show_popup_menu, create_and_show_dialog): Use it. - - * xterm.h (x_activate_timeout_atimer): Add prototype. - -2006-09-13 Richard Stallman - - * print.c (print_string): When printcharfun is t, - copy string contents and call strout on the copy. - - * keyboard.c (read_char): If end_time specified, don't put the - event into this_command_keys. - (read_key_sequence): If Voverriding_terminal_local_map is specified, - don't check Voverriding_local_map at all. - -2006-09-12 Stefan Monnier - - * textprop.c (Fnext_property_change, Fnext_single_property_change) - (Fprevious_property_change, Fprevious_single_property_change): - Avoid changing limit, so we can correctly catch the case where the - property is constant up to limit. - -2006-09-12 YAMAMOTO Mitsuharu - - * macfns.c (mac_window) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: - * macterm.c (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: - Undo 2006-09-08 change. - -2006-09-11 Chong Yidong - - * keymap.c (Fkey_binding): Use string position for string objects. - -2006-09-11 Kim F. Storm - - * keymap.c (Fkey_binding): Fix last change. - - * editfns.c (Fmessage): Recommend using (message "%s" ...). - -2006-09-10 Chong Yidong - - * keymap.c (Fkey_binding): Check for local keymap for mouse click - events. - -2006-09-10 Kim F. Storm - - * keyboard.c (Finput_pending_p): Check Vunread_input_method_events - and Vunread_post_input_method_events. - - * dispnew.c (Fredisplay): Document return value. - -2006-09-10 Jan Dj,Ad(Brv - - * xfns.c (Fx_close_connection): Call xg_display_close when USE_GTK. - - * gtkutil.c (xg_display_close): Always change default display if needed, - check for < Gtk+ version 2.10 before calling gdk_display_close. - -2006-09-10 YAMAMOTO Mitsuharu - - * mac.c [MAC_OSX] (sys_select): Check argument `nfds' more rigidly. - Make variable `ofds' static. Remove variable `maxfd'. - - * macfns.c (Fx_file_dialog): Remove unused variable `f'. - Call check_mac. - - * macmenu.c (Vmenu_updating_frame, syms_of_macmenu): - * w32menu.c (Vmenu_updating_frame, syms_of_w32menu): - Apply 2006-09-08 change for xmenu.c. - - * xfns.c (Fx_file_dialog): Call check_x. - -2006-09-10 Kim F. Storm - - * xdisp.c (get_window_cursor_type): Use hollow cursor on - non-transparent images. - -2006-09-09 Eli Zaretskii - - * editfns.c (Fsystem_name): Mention "host" in the doc string. - (syms_of_editfns) : Likewise. - -2006-09-08 Martin Rudalics - - * xdisp.c (mouse_autoselect_window): Remove. - (Vmouse_autoselect_window): New variable. DEFVAR_LISP it. - - * dispextern.h (mouse_autoselect_window): Remove extern. - (Vmouse_autoselect_window): Add extern. - - * macterm.c (XTread_socket): Test Vmouse_autoselect_window - instead of mouse_autoselect_window. - - * msdos.c (dos_rawgetc): Likewise. - - * w32term.c (w32_read_socket): Likewise. - - * xterm.c (handle_one_xevent): Likewise. - -2006-09-08 Richard Stallman - - * xdisp.c (Vmenu_updating_frame): Define here. - (syms_of_xdisp): DEFVAR it here. - (update_menu_bar): Always return hooks_run. - Set Vmenu_updating_frame. - - * xdisp.c (redisplay_internal): Test Vinhibit_redisplay - before calculating SELECTED_FRAME. - - * xmenu.c (Vmenu_updating_frame): Don't define here. - (syms_of_xmenu): Don't DEFVAR it here. - - * xterm.c (x_error_quitter): For BadName error, just return. - - * eval.c (find_handler_clause): Give up on debugger if INPUT_BLOCKED_P. - - * casetab.c (init_casetab_once): Call set_case_table. - - * emacs.c (shut_down_emacs): Set inhibit_sentinels. - - * process.c (inhibit_sentinels): New variable. - (exec_sentinel): Test inhibit_sentinels. - (init_process): Initialize it. - - * process.h (inhibit_sentinels): Add decl. - - * search.c (looking_at_1, string_match_1, search_command): - Make syntax table's canon table point to eqv table. - -2006-09-08 Andreas Schwab - - * print.c (strout): Fix whitespace. - -2006-09-08 Kim F. Storm - - * xterm.c (x_draw_glyph_string): Fix 2006-08-24 change. - -2006-09-08 YAMAMOTO Mitsuharu - - * mac.c [!MAC_OSX]: Don't include keyboard.h. - [!MAC_OSX] (select): Try detect_input_pending before ReceiveNextEvent - in the same BLOCK_INPUT block, in case that some input has already - been read asynchronously. Pretend to be interrupted by a signal - if some input is available. - [MAC_OSX] (select_and_poll_event, sys_select): Likewise. - (SELECT_POLLING_PERIOD_USEC) [SELECT_USE_CFSOCKET]: Change to 100000. - Now used for ReceiveNextEvent timeout instead of select timeout. - (EVENT_CLASS_SOCK) [SELECT_USE_CFSOCKET]: Remove macro. - [SELECT_USE_CFSOCKET] (socket_callback): Add non-blocking connect - support. Quit event loop. - [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Add non-blocking - connect support. Reuse previously allocated CFRunLoopSource. - (Fmac_process_hi_command) [TARGET_API_MAC_CARBON]: New function. - (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it. - - * macfns.c (mac_window) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: - Specify kWindowAsyncDragAttribute. - - * macterm.c (mac_handle_origin_change, mac_handle_size_change) - (mac_get_ideal_size): New functions. - (x_set_offset, x_set_window_size, x_make_frame_visible) - (do_zoom_window, mac_handle_window_event, XTread_socket): Use them. - (install_window_handler, mac_handle_window_event) - [USE_CARBON_EVENTS]: Handle kEventWindowGetIdealSize and - kEventWindowBoundsChanged. - (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Don't call - DragWindow. - -2006-09-07 Andreas Schwab - - * m/ibms390x.h (START_FILES, LIB_STANDARD): Override to - use lib64 instead of lib. - -2006-09-06 Stefan Monnier - - * Makefile.in: Avoid double quotes when possible. - -2006-09-06 Kenichi Handa - - * editfns.c (Fformat_time_string): Use make_unibyte_string to make - a Lisp string from the result of emacs_memftimeu call. - -2006-09-06 Kim F. Storm - - * xdisp.c (pos_visible_p): Remove exact_mode_line_heights_p arg; - so calculate heights even when pos-visible-in-window-p is called - with partially = t. Don't overshoot last_visible_y in move_it_to. - Return row height and row number in new rowh and vpos args. - (cursor_row_fully_visible_p): First line is always "fully visible". - (try_window): Don't clear matrix if vscrolled. - - * lisp.h (pos_visible_p): Update prototype. - - * window.c (Fpos_visible_in_window_p): Adapt to new pos_visible_p. - Return row height and row number for partially visible rows. - Modify return value to a 2 element list for fully visible rows and - 6 for partially visible row. - (window_scroll_pixel_based): Use pos_visible_p directly instead of - Fpos_visible_in_window_p. Fix auto vscrolling for partially - visible lines. Only vscroll backwards if already vscrolled - forwards. Unconditionally vscroll forwards if PT is first (and - only) line. Set new window start instead of scrolling at - start/end of tall line. - -2006-09-05 YAMAMOTO Mitsuharu - - * macterm.c (install_window_handler, mac_handle_window_event) - [USE_CARBON_EVENTS]: Handle kEventWindowClose. - [USE_MAC_TSM] (mac_handle_text_input_event): Set modifiers for - ASCII keystroke event. - -2006-09-04 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_with_chooser): Don't mention specific keys in - the file chooser message. Only call gtk_file_chooser_set_current_name - when action is SAVE. - -2006-09-04 Andreas Schwab - - * Makefile.in: Double all single and back quotes in C-style - comments to help fontifier. - -2006-09-03 Jason Rumney - - * w32.c (shutdown_handler): New function to exit cleanly on shutdown. - (globals_of_w32): Register it as a signal handler. - -2006-09-02 Juri Linkov - - * marker.c (Fmarker_position): Doc fix. - -2006-09-03 Eli Zaretskii - - * window.c (syms_of_window) : - : Doc fix. - -2006-09-02 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_with_chooser): Change file chooser message - for writing files. Call gtk_file_chooser_set_current_name to keep - default filename. - - * minibuf.c (Finternal_complete_buffer): Move after DEFUN:s it calls - -2006-09-02 Jindrich Makovicka (tiny change) - - * fns.c (concat) [__GNUC__]: Declare with - `__attribute__((noinline))'. - - * eval.c (apply1, call2) [__GNUC__]: Declare with - `__attribute__((noinline))'. - -2006-09-02 Stuart D. Herring - - * minibuf.c (Finternal_complete_buffer): New function. - (syms_of_minibuf): Defsubr it. - (Fread_buffer): Use it, instead of Vbuffer_alist. - -2006-09-01 Martin Rudalics - - * buffer.h (struct buffer_text): New field chars_modiff. - (CHARS_MODIFF, BUF_CHARS_MODIFF): New macros. - * buffer.c (Fbuffer_chars_modified_tick): New function returning - value of BUF_CHARS_MODIFF. - (syms_of_buffer): Defsubr it. - (Fget_buffer_create): Initialize BUF_CHARS_MODIFF. - * insdel.c (modify_region): New argument preserve_chars_modiff. - Set CHARS_MODIFF to MODIFF provided preserve_chars_modiff is zero. - (insert_1_both, insert_from_string_1, insert_from_buffer_1) - (adjust_after_replace, adjust_after_replace_noundo) - (replace_range, replace_range_2, del_range_2): Reset CHARS_MODIFF. - * lisp.h (modify_region): Add fourth argument in extern. - * casefiddle.c (casify_region): Call modify_region with fourth - argument zero to assert that CHARS_MODIFF is updated. - * editfns.c (Fsubst_char_in_region, Ftranslate_region_internal) - (Ftranspose_regions): Likewise. - * textprop.c (Fadd_text_properties, Fset_text_properties) - (Fremove_text_properties, Fremove_list_of_text_properties): - Call modify_region with fourth argument 1 to avoid that - CHARS_MODIFF is updated. - -2006-08-31 Richard Stallman - - * editfns.c (Fformat): Don't sign-extend for %o or %x. - -2006-08-29 Chong Yidong - - * indent.c (Fvertical_motion): Don't move back if we were - displaying a Lisp string, either. - -2006-08-28 Kim F. Storm - - * xdisp.c (get_window_cursor_type) [!HAVE_WINDOW_SYSTEM]: - Don't attempt to replace cursor on image glyphs. - -2006-08-28 Kenichi Handa - - * coding.c (Fdetect_coding_region, Fdetect_coding_string): - Fix docstring about ISO-2022 control characters. - -2006-08-28 Kim F. Storm - - * xdisp.c (get_window_cursor_type): Replace BOX cursor on images - with a hollow box cursor if image is larger than 32x32 (or the default - frame font if that is bigger). Replace any other cursor on images - with hollow box cursor, as redisplay doesn't support bar and hbar - cursors on images. - -2006-08-27 YAMAMOTO Mitsuharu - - * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Undo previous - change. Move mutex lock/unlock operations inside BLOCK_INPUT. - - * dired.c (directory_files_internal_unwind, directory_files_internal) - (file_name_completion): Add BLOCK_INPUT around opendir/closedir. - - * image.c [MAC_OS] (image_load_qt_1): Use ComponentResult instead - of OSErr. - - * keyboard.c (in_sighandler): Remove variable. - (Fcurrent_idle_time): Add missing `doc:'. - (input_available_signal, init_keyboard): Undo previous change. - - * keyboard.h (in_sighandler): Remove extern. - - * mac.c (create_apple_event_from_event_ref, select) - (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator) - (Fmac_set_file_type, cfstring_create_normalized) - (mac_get_system_locale, select_and_poll_event, sys_select): - Use OSStatus instead of OSErr. - - * macfns.c [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): - Don't use FRAME_FILE_NAME. Use (FS)UpdateAlias. - (Fx_create_frame): Apply 2006-07-03 for xfns.c. - - * macselect.c (get_scrap_from_symbol, clear_scrap, put_scrap_string) - (put_scrap_private_timestamp, scrap_has_target_type, get_scrap_string) - (get_scrap_private_timestamp, get_scrap_target_type_list) - (x_own_selection, x_get_foreign_selection) - (Fx_disown_selection_internal, Fx_selection_owner_p) - (Fx_selection_exists_p): Use OSStatus instead of OSErr. - - * macterm.c (mac_draw_string_common, mac_query_char_extents) - (x_iconify_frame, XLoadQueryFont, install_window_handler) - (mac_handle_command_event, init_command_handler, init_menu_bar): - Use OSStatus instead of OSErr. - (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Don't use - FRAME_FILE_NAME. - (x_query_font): Apply 2006-08-04 change for xterm.c. - (Qhi_command): Rename from Qhicommand. All uses changed. - - * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]: Remove member - file_name. - (FRAME_FILE_NAME): Remove macro. - (install_window_handler, create_apple_event_from_event_ref): - Return OSStatus instead of OSErr. - -2006-08-26 Kim F. Storm - - * buffer.c (Fset_buffer_multibyte): - * editfns.c (Fcurrent_time, Fget_internal_run_time): - * macfns.c (Fxw_color_values): - * w32fns.c (Fxw_color_values): - * xfns.c (Fxw_color_values): Simplify; use list3. - - * fileio.c (Fmake_directory_internal, Fdelete_directory) - (Fdelete_file): Simplify; use list1. - (Frename_file, Fadd_name_to_file, Fmake_symbolic_link): - Simplify; remove NO_ARG_ARRAY stuff, use list2. - -2006-08-25 Richard Stallman - - * buffer.c (Fswitch_to_buffer): Fix previous change. - -2006-08-25 Kim F. Storm - - * keyboard.c (Fcurrent_idle_time): Simplify. - -2006-08-25 Richard Stallman - - * fns.c (sxhash_string): Rotate properly; don't lose bits. - -2006-08-24 Francesc Rocher - - * xdisp.c (overline_margin): New variable. - (x_produce_glyphs): Use it. - (syms_of_xdisp): DEFVAR_INT it. - - * xterm.c (x_underline_at_descent_line): New variable. - (syms_of_xterm): DEFVAR_BOOL it. - (x_draw_glyph_string): Use it. - Draw underline and overline up to the end of line if the face - extends to the end of line. - - * macterm.c: Likewise. - - * w32term.c: Likewise. - -2006-08-24 Nick Roberts - - * buffer.c (Fswitch_to_buffer): Move buffer to front of - buffer-alist if necessary. - -2006-08-22 Kim F. Storm - - * xdisp.c (update_tool_bar): Redisplay toolbar also when only - number of items changes. - -2006-08-22 Stefan Monnier - - * buffer.c (Fset_buffer_multibyte): Record proper undo entry. - -2006-08-21 Jan Dj,Ad(Brv - - * keyboard.c: Clarify difference between in_sighandler and - handling_signal. - -2006-08-21 Kim F. Storm - - * macterm.c (x_draw_stretch_glyph_string): - * w32term.c (x_draw_stretch_glyph_string): - * xterm.c (x_draw_stretch_glyph_string): It is ok to draw a - stretch glyph in left marginal areas on header and mode lines. - -2006-08-21 Kenichi Handa - - * keyboard.c (syms_of_keyboard): Docstring of - Vunread_post_input_method_events and Vunread_input_method_events - fixed. - -2006-08-20 Chong Yidong - - * keyboard.c (show_help_echo): Preserve mouse movement flag if - tracking mouse. - -2006-08-20 Richard Stallman - - * xfaces.c (load_pixmap): Add quotes in error message. - - * keyboard.c (Fcurrent_idle_time): New function. - (syms_of_keyboard): defsubr it. - -2006-08-18 Nick Roberts - - * window.c (Fset_window_fringes): Do nothing on a tty. - (Fwindow_fringes): Put ? operator after the line break. - -2006-08-16 Andreas Schwab - - * print.c (debug_output_compilation_hack): Fix return type. - -2006-08-16 Richard Stallman - - * print.c (debug_output_compilation_hack): New function. - -2006-08-16 Kenichi Handa - - * fileio.c (choose_write_coding_system): Use LF for end-of-line - in auto-saving. - -2006-08-15 Chong Yidong - - * keyboard.c (read_char): Don't change idle timer state at all if - end_time is supplied. - -2006-08-15 Kenichi Handa - - * coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New arg RET. If SRC - is exhausted, return with RET. - (detect_coding_emacs_mule, detect_coding_iso2022) - (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8) - (detect_coding_utf_16, detect_coding_ccl): Adjusted for the above - change. - -2006-08-14 Chong Yidong - - * keyboard.c (read_char): Don't reset idle timers if a time limit - is supplied. - -2006-08-14 Kim F. Storm - - * .gdbinit (pitx): Print iterator position. - Limit stack dump in case iterator is not initialized. - -2006-08-12 Eli Zaretskii - - * frame.c (Fmouse_position, Fmouse_pixel_position) - (Fset_mouse_position, Fset_mouse_pixel_position): Doc fix. - -2006-08-11 Jan Dj,Ad(Brv - - * xselect.c (Fx_register_dnd_atom): New function. - (syms_of_xselect): Defsubr it. - (x_handle_dnd_message): Check that message_type is in - dpyinfo->x_dnd_atoms before generating lisp event. - - * xterm.h (struct x_display_info): Add x_dnd_atoms* to keep track - of drag and drop Atoms. - - * xterm.c (x_term_init): Initialize dpyinfo->x_dnd_atoms* - -2006-08-10 Jan Dj,Ad(Brv - - * keyboard.c: Define in_sighandler. - (input_available_signal): Set in_sighandler. - (init_keyboard): Initialize in_sighandler. - - * keyboard.h: Declare in_sighandler. - - * alloc.c (UNBLOCK_INPUT_ALLOC, BLOCK_INPUT_ALLOC): Use in_sighandler - to check if mutex should be locked or not. - -2006-08-09 Richard Stallman - - * keyboard.c (keyremap_step): No-op if fkey->parent = nil. - (read_key_sequence): Always start fkey.start and fkey.end at 0, - and likewise for keytran. - -2006-08-09 Kenichi Handa - - * coding.c (syms_of_coding): Improve the docstring - of file-coding-system-alist. - -2006-08-07 Andreas Schwab - - * puresize.h (BASE_PURESIZE): Increase to 1120000. - -2006-08-06 Chong Yidong - - * buffer.c (Vchange_major_mode_hook, Qchange_major_mode_hook): New vars. - (Fkill_all_local_variables): Use it. - (syms_of_buffer): Defvar it. - -2006-08-05 Eli Zaretskii - - * w32.c (w32_valid_pointer_p): New function. - - * w32.h: Add prototype for w32_valid_pointer_p. - - * alloc.c: Include w32.h. - (valid_lisp_object_p) [WINDOWSNT]: Call w32_valid_pointer_p to do - the job. - - * keyboard.c (kbd_buffer_get_event): Return Qnil when current time - is exactly equal to end_time, not only when it is past that. - -2006-08-04 Chong Yidong - - * keyboard.c (read_char): Rebalance specpdl after receiving jump. - - * process.c: Reapply 2006-08-01 change. - -2006-08-04 Eli Zaretskii - - * w32fns.c (w32_query_font): Fix last change: use stricmp. - -2006-08-04 Stefan Monnier - - * editfns.c (Fsubst_char_in_region): Redo the setup work after running - the before-change-functions since they may have altered the buffer. - -2006-08-04 Ralf Angeli - - * w32fns.c (w32_createwindow): Handle -geometry command line option - and the geometry settings in the Registry. - -2006-08-04 Kenichi Handa - - * w32fns.c (w32_query_font): Compare names by ignoring case. - - * xterm.c (x_query_font): Compare names by ignoring case. - -2006-08-03 Jason Rumney - - * w32menu.c (w32_menu_show, w32_dialog_show): Call Fsignal to quit - when no option selected. - -2006-08-03 Chong Yidong - - * process.c: Revert last change. - -2006-08-01 Kim F. Storm - - * process.c (wait_reading_process_output_unwind): New function. - Restores waiting_for_user_input_p to saved value. - (wait_reading_process_output): Unwind protect waiting_for_user_input_p - instead of save/restore old value on stack. - -2006-07-30 Thien-Thi Nguyen - - * editfns.c: Undo 2006-06-27 change. - -2006-07-29 Eli Zaretskii - - * coding.c (Ffind_operation_coding_system): Revert the change from - 2006-05-29. - - * alloc.c [WINDOWSNT]: Include fcntl.h, to fix last change. - -2006-07-28 Richard Stallman - - * xfaces.c (lookup_named_face, Fdisplay_supports_face_attributes_p): - Add conditional aborts for clarity. - - * xdisp.c (update_menu_bar): New arg HOOKS_RUN. Callers changed. - Used to avoid running the hooks over and over for each frame. - (prepare_menu_bars): Pass value from update_menu_bar - as HOOKS_RUN of next call. - - * keyboard.c (safe_run_hooks_1): Don't crash if Vrun_hooks is nil. - -2006-07-28 Kim F. Storm - - * alloc.c (valid_pointer_p): New function (from valid_lisp_object_p). - (valid_lisp_object_p): Use it to check for valid SUBRP obj. - -2006-07-26 Chong Yidong - - * keyboard.c (read_char): New arg END_TIME specifying timeout. - All callers changed. Turn off echoing if END_TIME is non-NULL. - (kbd_buffer_get_event): New arg END_TIME. - - * lread.c (read_filtered_event): New arg SECONDS to wait until. - (Fread_char, Fread_event, Fread_char_exclusive): New arg SECONDS. - - * lisp.h: Update read-char, read-event, and read_filtered_event - prototypes. - - * keyboard.h: Include systime.h. Update read_char prototype. - -2006-07-25 YAMAMOTO Mitsuharu - - * alloc.c (find_string_data_in_pure): New function. - (make_pure_string): Use it to reuse existing string data if possible. - - * puresize.h (BASE_PURESIZE): Decrease to 1102000. - -2006-07-22 Stefan Monnier - - * keymap.c (Fdefine_key): If the key binding definition looks like an - XEmacs-style key sequence, convert it to Emacs's format. - -2006-07-22 Ralf Angeli - - * w32fns.c (w32_createwindow): If `left' and/or `top' frame - parameters are bound to some values, use that instead of - CW_USEDEFAULT. - -2006-07-21 Eli Zaretskii - - * w32.c (convert_time): Use explicit long double constants to - ensure long double arithmetics is used throughout. - -2006-07-20 YAMAMOTO Mitsuharu - - * alloc.c (pure_bytes_used_lisp, pure_bytes_used_non_lisp): New vars. - (init_alloc_once): Initialize them. - (pure_alloc): Allocate non-Lisp objects from the end of pure storage - without alignment. - - * puresize.h (BASE_PURESIZE): Decrease to 1141000. - -2006-07-18 Francis Litterio - - * w32term.c (x_calc_absolute_position): Fix frame positioning - with negative X/Y coordinates. - -2006-07-18 Dan Nicolaescu - - * xterm.c (x_connection_closed, x_error_quitter): Mark as NO_RETURN. - - * textprop.c (text_read_only): Likewise. - - * lread.c (end_of_file_error): Likewise. - - * lisp.h (circular_list_error, memory_full, buffer_memory_full): - Likewise. - - * eval.c (unwind_to_catch): Likewise. - - * buffer.h (buffer_slot_type_mismatch): Likewise. - -2006-07-18 Kim F. Storm - - Cleanup Fsignal calls that never returns; now only use it for Qquit. - - * eval.c (xsignal): New func. Like Fsignal, but marked no-return. - (xsignal0, xsignal1, xsignal2, xsignal3): New no-return functions. - (signal_error): New no-return function (from xfaces.c). - (Fthrow): Use xsignal2 instead of Fsignal + abort. - (error): Use xsignal1 instead of Fsignal + abort. - (FletX, Flet, grow_specpdl): Use signal_error. - (Feval, Ffuncall, funcall_lambda): Use xsignal1, xsignal2. - - * alloc.c (buffer_memory_full, memory_full): Use xsignal. Remove loop. - (list1): New function. - - * lisp.h (list1): Add EXFUN. - (xsignal, xsignal0, xsignal1, xsignal2, xsignal3, signal_error): - Add prototypes. Mark them as no-return. - - * buffer.c (Fbuffer_local_value, Fbarf_if_buffer_read_only): - Use xsignal1. - - * callint.c (check_mark): Use xsignal0. - - * casefiddle.c (casify_object): wrong_type_argument is no-return. - - * cmds.c (Fforward_char, Fdelete_char): Use xsignal0. - - * coding.c (Fcheck_coding_system): Use xsignal1. Remove loop. - (Fdefine_coding_system_internal): Use xsignal1. - - * data.c (circular_list_error): Use xsignal. - (wrong_type_argument): Use xsignal2. Don't care about return value. - (args_out_of_range, args_out_of_range_3): Use xsignal2, xsignal3. - Remove loop around Fsignal. - (indirect_variable, Fsymbol_value, set_internal, Fdefault_value) - (indirect_function, Findirect_function, Fstring_to_number) - (Fmakunbound, Ffmakunbound, Fsymbol_function, Ffset): Use xsignal1. - (arith_driver, float_arith_driver, Frem, Fmod, arith_error): - Use xsignal0. - - * doc.c (Fdocumentation): Use xsignal1. - - * editfns.c (region_limit, Fget_internal_run_time): Use xsignal0. - - * fileio.c (report_file_error): Use xsignal. - (barf_or_query_if_file_exists, Fcopy_file, Fdelete_file) - (Finsert_file_contents): Use xsignal2. - (syms_of_fileio): Use list2, list3. - - * floatfns.c (arith_error, range_error, domain_error): Use xsignal2. - (range_error2, domain_error2): Use xsignal3. - (rounding_driver, fmod_float): Use xsignal0. - (float_error): Use xsignal1. - (matherr): Use xsignal. - - * fns.c (Flength): wrong_type_argument is no-return. - (hashfn_user_defined, Fmake_hash_table): Use signal_error. - (Fmd5): Use xsignal1. - - * frame.c (x_set_line_spacing, x_set_screen_gamma): Use signal_error. - - * keyboard.c (recursive_edit_1): Use xsignal1. - - * keymap.c (Fmap_keymap): Use xsignal1. - - * lread.c (Fload): Use xsignal2, signal_error. - (end_of_file_error): Use xsignal0, xsignal1. - (read0): Use xsignal1. - (invalid_syntax): New error function marked no-return. - (read_integer, read1, read_list): Use it. - - * macselect.c (x_get_local_selection): Use signal_error. - - * msdos.c (Fmsdos_set_mouse_buttons): Use xsignal2. - - * search.c (compile_pattern_1): Use xsignal1. - (signal_failure): Remove (was only called once). - (search_command): Use xsignal1 instead of signal_failure. - - * syntax.c (scan_lists): Use xsignal3. - - * textprop.c (text_read_only): Use xsignal0, xsignal1. - - * unexsol.c (unexec): Use xsignal. - - * window.c (window_scroll_pixel_based, window_scroll_line_based): - Use xsignal0. - - * xfaces.c (signal_error): Move to eval.c. - (resolve_face_name): Use xsignal1. - - * xfns.c (x_decode_color): Use signal_error. - - * xselect.c (x_get_local_selection, copy_multiple_data) - (x_get_window_property_as_lisp_data) - (lisp_data_to_selection_data, CHECK_CUT_BUFFER) - (Fx_get_cut_buffer_internal): Use signal_error. - -2006-07-18 YAMAMOTO Mitsuharu - - * macterm.c (XTread_socket): Undo previous change. - -2006-07-18 YAMAMOTO Mitsuharu - - * macterm.c (keycode_to_xkeysym): Remove function. All uses now - directly lookup keycode_to_xkeysym_table. - [USE_MAC_TSM] (mac_handle_text_input_event): Don't construct - ASCII_KEYSTROKE_EVENT for non-zero keycode_to_xkeysym_table entries. - (XTread_socket): Use character codes to construct keypad key events. - (mac_initialize_display_info) [MAC_OSX]: Use CGDisplaySamplesPerPixel. - (x_delete_display): Apply 2006-07-04 change for xterm.c. - -2006-07-17 Richard Stallman - - * keyboard.c (Vcommand_error_function): New variable. - (syms_of_keyboard): Defvar it. - (cmd_error_internal): Simplify, and handle Vcommand_error_function. - - * dispnew.c (init_display): Mention DISPLAY as well as TERM in err msg. - -2006-07-17 Kim F. Storm - - * xdisp.c (handle_single_display_spec): Ensure the right value of - it->position is saved by push_it. - (pop_it): Restore it->object for GET_FROM_BUFFER and GET_FROM_STRING. - (reseat_1): Don't setup it->object twice. - (set_iterator_to_next): No need to set it->object after pop_it. - (move_it_to): Explicitly check to see if last move reached to_charpos. - -2006-07-17 Thien-Thi Nguyen - - * xdisp.c (display_mode_line): Preserve match data. - -2006-07-14 Kim F. Storm - - * w32.c (pfn_WSACreateEvent, pfn_WSACloseEvent): New func ptrs. - (init_winsock): Load them. Use ws2_32.dll. - (sys_listen): Undo last change. Just set FILE_LISTEN flag. - (sys_accept): Undo last change. Instead, set child status to - STATUS_READ_ACKNOWLEDGED and reset char_avail event so next - sys_select will wakeup the reader thread. - (_sys_wait_accept): New function used by reader thread to wait for - an incoming connection on a server socket. - - * w32.h (_sys_read_ahead, _sys_wait_accept): Add prototypes. - - * w32proc.c (reader_thread): Use _sys_wait_accept to wait on a - server socket (FILE_LISTEN flag). - -2006-07-14 Jan Dj,Ad(Brv - - * sound.c (alsa_init): Call snd_pcm_close after successful snd_pcm_open. - -2006-07-14 Kim F. Storm - - * w32.c: Fix high cpu load for server sockets. - (pfn_WSAEventSelect): New function ptr. - (init_winsock): Load it. - (sys_listen): Set FILE_LISTEN flag. Set event mask for socket's - char_avail event object to FD_ACCEPT. - (sys_accept): Check FILE_LISTEN flag. Set event mask on new - socket's char_avail event object to FD_READ|FD_CLOSE. - - * w32.h (FILE_LISTEN): New filedesc flag value. - -2006-07-13 Kim F. Storm - - * bytecode.c (Fbyte_code): Use CAR, CDR for Bcar, Bcdr. - Use CAR_SAFE, CDR_SAFE for Bcar_safe, Bcdr_safe. - Simplify loops and use CAR for Bnth and Belt. - - * data.c (Findirect_function): Optimize for no indirection. - - * eval.c (Fthrow): Remove loop around Fsignal. - (Feval, Fapply, Ffuncall): Optimize for no function indirection. - Use original function name in all signaled errors. - Simplify Fsignal calls (no return). - (funcall_lambda): Simplify Fsignal calls (no return). - -2006-07-13 Andreas Schwab - - * syntax.c (scan_sexps_forward): Use EMACS_INT for out_bytepos and - out_charpos. - -2006-07-13 Kenichi Handa - - * editfns.c (Fformat): Fix calculation of text property positions - of format string. - -2006-07-12 Kim F. Storm - - * lisp.h (CHECK_TYPE): New macro for generic type checking. - (CAR_SAFE, CDR_SAFE): New macros. - (ARRAYP, CHECK_ARRAY): New macros. - (CHECK_VECTOR_OR_STRING, CHECK_SUBR): New macros. - (CHECK_WINDOW_CONFIGURATION): New macro. - (CHECK_LIST_CONS, CHECK_LIST_END): New checks for list traversal. - (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST) - (CHECK_STRING, CHECK_STRING_CAR, CHECK_CONS, CHECK_SYMBOL) - (CHECK_CHAR_TABLE, CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE) - (CHECK_BUFFER, CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS) - (CHECK_NUMBER, CHECK_NATNUM, CHECK_MARKER, CHECK_OVERLAY) - (CHECK_NUMBER_COERCE_MARKER, CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT) - (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER): Use CHECK_TYPE. - - * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): - * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Use CHECK_TYPE. - - * callint.c (Fcall_interactively): - * casefiddle.c (casify_object): - * editfns.c (general_insert_function): - * fns.c (Flength, Felt, Ffillarray): - * data.c (Fcar, Fcdr): Remove loop around wrong_type_argument. - - * data.c (wrong_type_argument): Remove loop around Fsignal. - (Farrayp, Fsequencep): Use ARRAYP. - (Fcar): Use CAR. - (Fcar_safe): Use CAR_SAFE. - (Fcdr): Use CDR. - (Fcdr_safe): Use CDR_SAFE. - (Fsetcar, Fsetcdr): Use CHECK_CONS. - (Fsubr_arity, Fsubr_name): Use CHECK_SUBR. - (Faset): Use CHECK_ARRAY. - - * fns.c (Felt): Use CHECK_ARRAY. - (concat): Use CHECK_NUMBER. - (Fsubstring, substring_both): Use CHECK_VECTOR_OR_STRING. - (Fmemq): Use CHECK_LIST. - (Fassq, Fassoc, Frassq, Frassoc): Use CAR. - (assq_no_quit): Use CAR_SAFE. - (Fnthcdr, Fmember, Fdelq, Fdelete, Fnreverse, Fnconc): - Use CHECK_LIST_CONS. - (Freverse, Fplist_get, Flax_plist_get): Use CHECK_LIST_END. - - * bytecode.c (Fbyte_code): Use CHECK_VECTOR. - - * casetab.c (check_case_table): - * category.c (check_category_table): - * marker.c (Fcopy_marker): - * syntax.c (check_syntax_table): - * xfaces.c (load_pixmap): Use CHECK_TYPE. - - * fns.c (Fcopy_sequence, concat): - * fringe.c (Fdefine_fringe_bitmap): - * lread.c (check_obarray): Cleanup wrong_type_argument use. - - * keyboard.c (access_keymap_keyremap): Use ARRAYP. - - * keymap.c (Fdefine_key, Flookup_key): - * macros.c (Fstart_kbd_macro): Use CHECK_VECTOR_OR_STRING. - - * mac.c (Fmac_get_preference): Use CHECK_LIST_END. - - * search.c (Fset_match_data): Use CHECK_LIST. - - * sunfns.c (sun_item_create): Use CHECK_LIST_CONS. - - * window.c (Fwindow_configuration_frame, Fset_window_configuration): - (compare_window_configurations): Use CHECK_WINDOW_CONFIGURATION. - -2006-07-12 YAMAMOTO Mitsuharu - - * Makefile.in (dired.o, editfns.o, fileio.o): Depend on blockinput.h. - - * dired.c: Include blockinput.h. - (Ffile_attributes): Add BLOCK_INPUT around getpwuid/getgrgid. - - * editfns.c: Include blockinput.h. - (Fuser_login_name, Fuser_full_name): Add BLOCK_INPUT around - getpwuid/getpwnam. - - * fileio.c: Include blockinput.h. - (Fexpand_file_name, search_embedded_absfilename): Add BLOCK_INPUT - around getpwnam. - (search_embedded_absfilename): Remove spurious xfree. - -2006-07-11 Kim F. Storm - - * dispnew.c (sit_for): Reduce number of args from 5 to 3. - Now just one TIMEOUT arg that can be a Lisp float or Lisp int. - Combine args DISPLAY and INITIAL_DISPLAY into one arg DO_DISPLAY. - Signal error if TIMEOUT is not a number. - Undo 2006-06-14 change for non-preemptive display if TIMEOUT < 0. - The rework of sit_for args also fixes several incorrect Qt args - which should have been 1. - (Fredisplay): Pass 1 instead of Qt to swallow_events and - detect_input_pending_run_timers. - - * lisp.h (sit_for): Update prototype. - (Fredisplay): Add EXFUN. - - * dispextern.h (sit_for): Remove prototype. - - * callint.c (Fcall_interactively): - * minibuf.c (temp_echo_area_glyphs): - * keyboard.c (command_loop_1, read_char, Fexecute_extended_command): - * fileio.c (Fdo_auto_save): Update/simplify sit_for calls. - -2006-07-11 Stefan Monnier - - * syntax.c (forw_comment): Also use EMACS_INT for buffer positions. - -2006-07-11 Kim F. Storm - - * dispnew.c (Fredisplay): Add FORCE argument to force redisplay when - input is available. Fix test for redisplay_dont_pause non-nil. - Specbind redisplay-dont-pause to t if FORCE non-nil. - -2006-07-10 Chong Yidong - - * puresize.h (BASE_PURESIZE): Increment to 1211000. - - * dispnew.c (Fredisplay): New function, equivalent to (sit-for 0). - (Fsit_for): Function deleted. - - * keyboard.c (command_loop_1, Fexecute_extended_command): - Call sit_for instead of Fsit_for. - - * minibuf.c (temp_echo_area_glyphs): Likewise. - -2006-07-09 Stefan Monnier - - * syntax.c (Fforward_comment): Revert the reversion. - (back_comment, scan_lists): Also use EMACS_INT for buffer positions. - -2006-07-09 John Paul Wallington - - * syntax.c (Fforward_comment): Revert previous change. - -2006-07-09 Kim F. Storm - - * window.c (Fforce_window_update): Doc fix. - -2006-07-08 Stephen Gildea - - * fileio.c (do_auto_save_make_dir): Make the auto-save-list-file - directory unreadable for better user privacy. - -2006-07-07 Stefan Monnier - - * syntax.c (Fforward_comment): Fix int-32 vs EMACS_INT-64 mixup. - - * lread.c (read_filtered_event): Remove `register' qualifier because it - causes compilation problem with gcc-4.0.2-20051125 on amd64. - (readevalloop): Remove unused var `bpos'. - Yet another int/Lisp_Object mixup (YAILOM). - -2006-07-07 Eli Zaretskii - - * keyboard.c (Fexecute_extended_command): Mention the argument - PREFIXARG in the doc string. - -2006-07-07 Kim F. Storm - - * fringe.c (Fdefine_fringe_bitmap): Doc fix. - -2006-07-05 Chong Yidong - - * insdel.c (prepare_to_modify_buffer): For an indirect buffer, do - clash detection using the base buffer. - - * puresize.h (BASE_PURESIZE): Increment to 1210500. - -2006-07-04 Kim F. Storm - - * xterm.c (x_delete_display): Don't free or derefence NULL pointers. - -2006-07-04 Kenichi Handa - - * fontset.c (Fset_overriding_fontspec_internal): Check if we need - to update Voverriding_fontspec_alist. - -2006-07-03 Richard Stallman - - * xfns.c (Fx_create_frame): Move unwind_create_frame setup down. - - * xfaces.c (Fface_attribute_relative_p): Doc fix. - - * textprop.c (Fget_char_property_and_overlay): Doc fix. - - * eval.c (Fdefvaralias): Doc fix. - -2006-07-03 Kim F. Storm - - * dispnew.c (sit_for): Fix preempt condition. - -2006-07-02 Stefan Monnier - - * lread.c (read_filtered_event): Treat select-window just like - switch-frame. - -2006-07-02 Kim F. Storm - - * xdisp.c (display_tool_bar_line): Skip glyphs which are too big - to ever fit the tool-bar, - (MAX_FRAME_TOOL_BAR_HEIGHT): New macro. - (tool_bar_lines_needed): Use unused mode-line row as temp_row. - (redisplay_tool_bar): Only clear desired matrix if we actually - change the tool-bar window height. Only try to make the tool-bar - window bigger if there is actually room for it. - -2006-06-30 Ralf Angeli - - * w32term.c (x_make_frame_visible): Use SystemParametersInfo with - SPI_GETWORKAREA to find the dimensions of the screen work area, - and adjust vertical position of the frame in order to avoid being - covered by the task bar. - - * w32fns.c (w32_createwindow): Use CW_USEDEFAULT instead of - f->left_pos and SH_SHOW instead of f->top_pos in the call to - CreateWindow. Record the actual position in f->left_pos and - f->top_pos. - -2006-06-30 John Paul Wallington - - * w32console.c (syms_of_ntterm) : - Doc fix - default value has changed. - -2006-06-28 YAMAMOTO Mitsuharu - - * mac.c [!TARGET_API_MAC_CARBON]: Don't include FixMath.h or Scrap.h. - - * macfns.c (Fx_create_frame): Apply 2006-06-24 change for xfns.c. - - * macgui.h (USE_MAC_TSM) [TARGET_API_MAC_CARBON]: Set default to 1. - - * macterm.c (Qeql): Add extern. - (x_set_mouse_pixel_position) [MAC_OSX]: Use CGWarpMouseCursorPosition. - (fm_style_face_attributes_alist) [USE_ATSUI]: New variable. - (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it. - Change keys of Vmac_atsu_font_table from strings to numbers. - (fm_style_to_face_attributes) [USE_ATSUI]: New function. - (init_font_name_table) [USE_ATSUI]: Use it. - (saved_ts_script_language_on_focus) [USE_MAC_TSM]: New variable. - (syms_of_macterm) [USE_MAC_TSM]: Initialize and staticpro it. - [USE_MAC_TSM] (mac_tsm_resume): Restore script and language codes - only when saved_ts_script_language_on_focus coincides with - Vmac_ts_script_language_on_focus. - [USE_MAC_TSM] (mac_tsm_suspend): Save value of - Vmac_ts_script_language_on_focus to saved_ts_script_language_on_focus. - (XTread_socket) [USE_MAC_TSM]: Add Mac OS Classic support. - [USE_MAC_TSM] (mac_handle_text_input_event, init_tsm): Likewise. - -2006-06-27 Chong Yidong - - * editfns.c (Fdelete_field, Ffield_string, Ffield_beginning) - (Ffield_string_no_properties, Ffield_end): Mention - args-out-of-range error condition in docstring. - -2006-06-27 Kim F. Storm - - * xdisp.c (handle_composition_prop): Set stop_charpos before push_it. - -2006-06-25 Kim F. Storm - - * s/gnu-linux.h (SIGNALS_VIA_CHARACTERS): Define for Linux kernel - version 2.4 and later. - -2006-06-24 Chong Yidong - - * xfns.c (Fx_create_frame): Set font parameter directly instead of - using x_default_parameter, since x_get_args clears the parm alist. - -2006-06-24 Eli Zaretskii - - * dired.c (directory_files_internal) [WINDOWSNT]: Find files - case-insensitively. - -2006-06-24 Aidan Kehoe - - * lread.c (read_escape): When an unknown Unicode code point is - encountered as a string or character escape, signal an error. - -2006-06-23 Kim F. Storm - - * .gdbinit (pitx): Dump iterator stack. - - * xdisp.c (handle_composition_prop): Push iterator on stack. - (set_iterator_to_next): Pop iterator at end of composition. - -2006-06-23 Martin Rudalics - - * fileio.c (Frename_file) [DOS_NT]: Don't try to move directory to - itself on DOS_NT platforms, if the old and new names are identical - but for the letter-case. - -2006-06-21 Kim F. Storm - - * dispextern.h (struct it): Add `position' member to iterator stack. - Rename `pos' member to `current'. Rearrange and add comments. - - * xdisp.c (handle_stop): Set it->ignore_overlay_strings_at_pos_p - if we get any overlays. - (set_cursor_from_row): Don't clobber `end' if we rescan from - start_string. - (push_it, pop_it): Save it->position. - -2006-06-19 Richard Stallman - - * window.c (size_window): New arg FIRST_ONLY. All callers changed. - (adjust_window_trailing_edge): Specially compute FIRST_PARALLEL - for the case of a top-level window and the following minibuffer. - Don't exit because of no `next' when there is a parent. - Use the FIRST_ONLY feature when resizing following windows. - - * syntax.c (init_syntax_once): Give most control chars' syntax Spunct. - -2006-06-17 Kim F. Storm - - * dispnew.c (update_frame): Check for input pending on entry. - (update_window, update_frame_1): Break loop if input is detected. - -2006-06-16 Francis Litterio - - * xterm.c (x_check_expected_move, handle_one_xevent) - (x_set_offset, x_check_fullscreen): Extensive changes to make - frame positioning deterministic under X. - - * xterm.h (x_output): Add members left_before_move and - top_before_move. Removed members expected_left and expected_top. - -2006-06-16 Kim F. Storm - - * dispextern.h (struct it): Add union to iterator stack to save - image, composition, and stretch specific paramters. - - * xdisp.c (next_overlay_string): Fix assert. - (push_it, pop_it): Handle composition and stretch specific values. - Only handle it->slice in image (for now). - (back_to_previous_visible_line_start): Continue search if newline is - part of a compisition. Simplify. - (reseat_1): Set it->object to buffer. - (set_iterator_to_next): Set it->object to string or buffer, when - setting it->method to GET_FROM_STRING or GET_FROM_BUFFER. - (next_element_from_composition): Set it->object to buffer if not - from string. - (set_cursor_from_row): Only save start of string if not already - done to handle multiple strings in a row. - - * .gdbinit (pitx): Show composition parameters. - (pgx, pg): New commands to print a glyph structure. - (pgi, pgn): New commands to print specific/next glyph. - (pgrowx, pgrow): New commands to print all glyphs in a row. - -2006-06-16 YAMAMOTO Mitsuharu - - * macfns.c (Fx_display_mm_height, Fx_display_mm_width) - [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use CGDisplayScreenSize. - - * macterm.c (do_app_resume, do_app_suspend): Remove functions. - (mac_tsm_resume, mac_tsm_suspend) [USE_MAC_TSM]: New functions. - (mac_handle_window_event, XTread_socket) [USE_MAC_TSM]: Use them. - (Vmac_ts_script_language_on_focus) [USE_MAC_TSM]: New variable. - (syms_of_macterm) [USE_MAC_TSM]: Defvar it. - (saved_ts_language, saved_ts_component) [USE_MAC_TSM]: New variables. - (mac_initialize_display_info) [MAC_OSX]: Use Quartz Display - Services functions to get size of main display in pixels. - -2006-06-14 Chong Yidong - - * xdisp.c (back_to_previous_visible_line_start): - Reset it->continuation_lines_width. - -2006-06-14 Richard Stallman - - * eval.c (Fdefconst): Mark variable as risky. - - * callproc.c (Fcall_process): Doc fix. - - * window.c (adjust_window_trailing_edge): Don't break out of the loop - because there's no next window, if there are parallel windows. - Do break out when WINDOW is nil. - -2006-06-14 Kim F. Storm - - * dispextern.h (IT_STACK_SIZE): New macro specifying size of - iterator stack (instead of hardcoded number). Increase from 2 to - 4 to make room for propertized overlay strings before and after a - display string, image or composition. - (struct it): Add image_id and method members to iterator stack. - - * xdisp.c (init_from_display_pos): Don't set it->method and - overlay_string_index after pop_it. Add asserts. - (handle_stop): Look for overlay strings around a display string, - image, or composition. Handle properties on those strings. - (next_overlay_string): Don't set string, pos or method after pop_it. - (get_overlay_strings_1): Split from get_overlay_strings; don't - modify it if no overlay strings are found. - (get_overlay_strings): Use get_overlay_strings_1. Always set - it->string and it->method. - (push_it): Push it->image_id and it->method. Push it->object - instead of it->string if method is GET_FROM_IMAGE. - (pop_it): Pop it->image_id and it->method. Ppo it->object - instead of it->string if method is GET_FROM_IMAGE. - Reset it->current.string_pos if popped it->string is nil. - (reseat_1): Remove comment dated 19 May 2003. It expressed doubt - whether a given change was correct; but the change is correct. - Clear it->string_from_display_prop_p. - (set_iterator_to_next): Rely on it->method and it->image_id from - iterator stack, instead of setting them explicitly after pop_it. - - * dispnew.c (sit_for): Undo 2006-06-01 change. Instead, a - negative time forces redisplay even when input is available. - (Fsit_for): Doc fix. - -2006-06-13 Kim F. Storm - - * dispnew.c: Modify preemptive redisplay to be based on periodic - checks for input. - (PERIODIC_PREEMPTION_CHECKING): Define to 1 iff EMACS_HAS_USECS. - (Vredisplay_preemption_period): New variable. - (syms_of_display): DEFVAR_LISP and initialize it. - (preemption_period, preemption_next_check): New variables. - (update_frame, update_single_window): Initialize them based on - Vredisplay_preemption_period if !force_p. - (update_window, update_frame_1): Use them to determine when to - check for input. - -2006-06-03 Aidan Kehoe - - * lread.c (read_escape): Provide a Unicode character escape - syntax; \u followed by exactly four or \U followed by exactly - eight hex digits in a comment or string is read as a Unicode - character with that code point. - -2006-06-09 Eli Zaretskii - - * window.c (window_scroll_pixel_based): Signal "Beginning of - buffer" when scroll-down at the beginning of an empty buffer. - -2006-06-06 YAMAMOTO Mitsuharu - - * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): - Exclude 0x7f from ASCII range. - -2006-06-05 Jason Rumney - - * w32term.c (w32_set_scroll_bar_thumb, x_scroll_bar_create) - (w32_set_vertical_scroll_bar, w32_scroll_bar_handle_click) - (x_scroll_bar_report_motion): Remove workarounds for - versions of Windows NT < 3.51. - [!SIF_ALL]: Remove. - (pfnSetScrollInfo, pfnGetScrollInfo): Remove. - (w32_initialize): Don't dynamically load Get/SetScrollInfo. - -2006-06-04 David Kastrup - - * dispnew.c: Mention `redisplay-dont-pause' in doc string of - `sit-for'. - -2006-06-03 YAMAMOTO Mitsuharu - - * macfns.c (x_set_icon_name): Apply 2006-06-02 change for xfns.c. - - * macgui.h (USE_MAC_TSM): Set default to 1 on Mac OS X. - - * macterm.c (tsm_document_id) [USE_MAC_TSM]: New variable. - (Qtext_input, Qupdate_active_input_area, Qunicode_for_key_event) - [USE_MAC_TSM]: Likewise. - (syms_of_macterm) [USE_MAC_TSM]: Intern and staticpro them. - (Qbefore_string) [USE_MAC_TSM]: Add extern. - (do_app_resume, do_app_suspend) [USE_MAC_TSM]: Call - ActivateTSMDocument/DeactivateTSMDocument. - (mac_store_event_ref_as_apple_event): Call mac_post_mouse_moved_event. - (mac_handle_window_event) [USE_MAC_TSM]: Handle - kEventWindowFocusAcquired/kEventWindowFocusRelinquish. - (mac_handle_text_input_event) [USE_MAC_TSM]: New function. - (install_window_handler) [USE_MAC_TSM]: Install it. Register - kEventWindowFocusAcquired/kEventWindowFocusRelinquish. - (keycode_to_xkeysym_table): Add entry for f16. - (XTread_socket) [USE_MAC_TSM]: Set/reset read_socket_inev - before/after passing keystroke event to toolbox dispatcher. - (init_tsm) [USE_MAC_TSM]: New function. - (mac_initialize) [USE_MAC_TSM]: Call it. - (Vmac_ts_active_input_overlay) [USE_MAC_TSM]: New defvar. - - * macterm.h (EVENT_PARAM_TEXT_INPUT_SEQUENCE_NUMBER): New enumerator. - -2006-06-02 John Paul Wallington - - * xfns.c (x_set_name_internal): Set icon to `text', derived from - name, when frame's icon_name isn't a string rather than only when - it is nil. - -2006-06-03 Eli Zaretskii - - * w32fns.c (x_set_icon_name): Don't use arg if it's not a string - and not nil. - -2006-06-02 Chong Yidong - - * xfns.c (x_set_icon_name): No-op if arg is non-nil and not a - string. - -2006-06-02 YAMAMOTO Mitsuharu - - * xdisp.c (next_element_from_composition): Set it->object to - it->string if composition is coming from string. - (set_cursor_from_row): Don't return 0 unless row displays a - continued line. - (dump_glyph): Dump composite glyph. - -2006-06-02 Jan Dj,Ad(Brv - - * gtkutil.c (menu_nav_ended): Check that menubar_widget is not NULL. - -2006-06-01 Richard Stallman - - * window.c (Fsplit_window): Doc fix. - -2006-06-01 Micha,Ak(Bl Cadilhac - - * process.c (deleted_pid_list): New variable to store the pids - of deleted processes. Declare it only if SIGCHLD is defined. - (init_process): Initialize it. - (syms_of_process): Staticpro it. - (Fdelete_process): Add pid of the deleted process to it. Check after - the addition and before the kill if the process is already stopped, - in which case it is deleted from the list and not killed. - (sigchld_handler): Define it only if SIGCHLD is. Search the process - that signaled Emacs in `deleted_pid_list' before `Vprocess_alist'. - Original idea by Stefan Monnier. - -2006-06-01 Kim F. Storm - - * dispnew.c (sit_for): Perform redisplay even if input is pending - when redisplay-dont-pause is non-nil. - -2006-06-01 YAMAMOTO Mitsuharu - - * macterm.c (mac_handle_visibility_change): Set buf.arg to Qnil. - (XTread_socket): Remove obsolete comment. - -2006-06-01 Jan Dj,Ad(Brv - - * xmenu.c (syms_of_xmenu): Make accelerate-menu an alias for - menu-bar-open. - -2006-06-01 Jan Dj,Ad(Brv - - * xmenu.c (Fmenu_bar_open, syms_of_xmenu): Change menu-bar-start to - menu-bar-open. - - * gtkutil.c (menu_nav_ended): Change x-menu-bar-start to menu-bar-open. - -2006-05-31 Juri Linkov - - * minibuf.c (Vhistory_add_new_input): New variable. - (read_minibuf): Use it. - (syms_of_minibuf) : New Lisp variable. - (syms_of_minibuf) : Doc fix. - -2006-05-31 Kim F. Storm - - * process.c (select_wrapper): Add wrapper around select to work around - "incomplete backtrace" bug in gdb 5.3, when emacs is stopped inside - select called from wait_reading_process_output. - -2006-05-30 Andreas Schwab - - * xmenu.c (Fmenu_bar_start): Return a value. - -2006-05-30 Richard Stallman - - * coding.c (Ffind_operation_coding_system): Doc fix. - -2006-05-30 Eli Zaretskii - - * w32term.c (x_draw_hollow_cursor): Fix last change. - -2006-05-29 Kim F. Storm - - * w32term.c (x_draw_stretch_glyph_string): Fix last change. - -2006-05-29 Eli Zaretskii - - * coding.c (Ffind_operation_coding_system): Doc fix. - -2006-05-29 YAMAMOTO Mitsuharu - - * macfns.c [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): - Call mac_set_font_info_for_selection if font panel is made visible. - - * macterm.c (font_panel_shown_p) [USE_MAC_FONT_PANEL]: New variable. - (mac_font_panel_visible_p, mac_show_hide_font_panel) - [USE_MAC_FONT_PANEL]: New functions. - [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): - Return immediately if font panel is not visible. - - * macterm.h (mac_font_panel_visible_p, mac_show_hide_font_panel): - Add externs. - -2006-05-29 Dan Nicolaescu - - * search.c (matcher_overflow): Mark as NO_RETURN. - - * xterm.c (x_connection_closed): Likewise. - - * sysdep.c (croak): Likewise. - - * sound.c (sound_perror, alsa_sound_perror): Likewise. - - * lisp.h (die, nsberror): Likewise. - -2006-05-29 Jan Dj,Ad(Brv - - * sound.c (alsa_open, alsa_configure, alsa_write): - Move assignment to err out of if-statement. - - * gtkutil.c (menu_nav_ended): New function. - (create_menus): Connect menu_nav_ended to "selection-done" to fix - grabs. - - * xmenu.c (Fmenu_bar_start): New function for USE_GTK and USE_X_TOOLKIT. - -2006-05-28 Dan Nicolaescu - - * charset.h (invalid_character): Mark as NO_RETURN. - -2006-05-29 Kenichi Handa - - * coding.c (Ffind_operation_coding_system): Call a function by - safe_call1 instead of call1. - -2006-05-28 Stefan Monnier - - * window.c (struct saved_window): Add `dedicated'. - (Fset_window_configuration, save_window_save): Save/restore the - `dedicated' flag. - -2006-05-28 Kim F. Storm - - * xdisp.c (set_cursor_from_row): If cursor cannot be set in row, - don't update w->cursor and return 0. Return 1 on success. - (try_cursor_movement): Repeat set_cursor_from_row on successive rows - until it succeeds. - - * dispextern.h (set_cursor_from_row): Update prototype. - -2006-05-28 Kim F. Storm - - * xdisp.c (get_phys_cursor_geometry): Return computed x and y through - parameters. Adjust x and width in case cursor in on a partially - visible stretch glyph on the left edge. - (erase_phys_cursor): Don't erase into left fringe/margin in case - previous cursor glyph is a partially visible stretch glyph on left. - - * dispextern.h (get_phys_cursor_geometry): Update prototype. - - * xterm.c (x_draw_stretch_glyph_string): Fix problems with invisible - cursor and erasing cursor on partially visible stretch glyph on left. - (x_draw_hollow_cursor): Compute x via get_phys_cursor_geometry. - - * macterm.c: Likewise. - - * w32term.c: Likewise. - -2006-05-27 YAMAMOTO Mitsuharu - - * macselect.c (mac_handle_apple_event): - Return errAEEventNotHandled if key binding is not found. - -2006-05-26 Eli Zaretskii - - * emacs.c (main) [PROFILING]: Enable also for __MINGW32__. - [__MINGW32__]: MinGW-specific declaration of `etext'. - - * w32heap.c (etext, edata): Remove unused definitions. - -2006-05-26 Chong Yidong - - * fileio.c (Fcopy_file): Delete argument MUSTBENEW. - Incorporate the exclusive file-opening functionality into the behavior - when OK-IF-ALREADY-EXISTS is nil. - (Frename_file): Call Fcopy_file without MUSTBENEW argument. - -2006-05-26 Jan Dj,Ad(Brv - - * sound.c (alsa_configure): Move get period/buffer_size after - setting hwparams. - -2006-05-26 Kenichi Handa - - * coding.c (Ffind_operation_coding_system): Allow (FILENAME - . BUFFER) in TARGET. - -2006-05-25 Chong Yidong - - * image.c (png_load): Don't call fclose on NULL. - -2006-05-25 Luc Teirlinck - - * fns.c (Fyes_or_no_p): - * callint.c (Fcall_interactively): Fread_from_minibuffer now takes - only seven args. - -2006-05-25 Juri Linkov - - * lisp.h (Fread_from_minibuffer): Decrement number of args. - - * minibuf.c (read_minibuf): Remove arg KEEP_ALL. Callers changed. - (Fread_from_minibuffer): Remove arg KEEP_ALL. Callers changed. - - * buffer.c (mode-line-format): Fix docstring. - -2006-05-25 Richard Stallman - - * emacs.c (main, Fdump_emacs): Don't test __linux or __linux__. - -2006-05-24 Luc Teirlinck - - * puresize.h (BASE_PURESIZE): Increase to 1210000. - -2006-05-24 Alan Mackenzie - - * lread.c (Vload_history): Enhance doc-string to say that the file - is the absolute truename of the loaded file. - - * lread.c (Vafter_load_alist): doc-string: state that an element - now has a regexp to match file names, not a file name as such. - - * lread.c (readevalloop): Call file-truename on the name for - load-history, except at preloading time. - - * lread.c (Fload): At preloading time, preserve the extension of - the filename which goes into load-history. New var hist_file_name. - - * lread.c (Fload): Do eval-after-load stuff by calling the lisp - function do-after-load-evaluation. - -2006-05-24 YAMAMOTO Mitsuharu - - * mac.c (ae_attr_table): New variable. - (syms_of_mac): Intern and staticpro its elements. - (mac_aelist_to_lisp): Also convert Apple event attributes. - (mac_ae_put_lisp): New function. - (create_apple_event_from_event_ref) [MAC_OSX]: Use typeUTF8Text. - - * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor etc. - - * macselect.c (Qemacs_suspension_id): New variable. - (syms_of_macselect): Intern and staticpro it. - (struct suspended_ae_info): New struct. - (deferred_apple_events, defer_apple_events) - (Fmac_process_deferred_apple_events): Use it. - (suspended_apple_events): New variable. - (mac_handle_apple_event_1): New function. - (mac_handle_apple_event): Use it. Don't process previously - suspended events. - (cleanup_suspended_apple_events, get_suspension_id) - (cleanup_all_suspended_apple_events): New functions. - (init_apple_event_handler): Call cleanup_all_suspended_apple_events - at exit. - (Fmac_cleanup_expired_apple_events, Fmac_ae_set_reply_parameter) - (Fmac_resume_apple_event): New defuns. - (syms_of_macselect): Defsubr them. - - * macterm.c (fn_keycode_to_keycode_table, XTread_socket) [MAC_OSX]: - Fix last change. Don't map `fn' modifier if pressed with F1 ... F12. - - * macterm.h (TYPE_FILE_NAME): Change from macro to enumerator. - (KEY_EMACS_SUSPENSION_ID_ATTR): New enumerator. - (keyReplyRequestedAttr) [MAC_OS_X_VERSION_MAX_ALLOWED < 1030]: Likewise. - (gestaltSystemVersionMajor, gestaltSystemVersionMinor) - (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]: - Likewise. - (typeUTF8Text, kEventParamWindowMouseLocation) - [MAC_OSX && MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Likewise. - (x_get_focus_frame, mac_ae_put_lisp): Add externs. - -2006-05-23 YAMAMOTO Mitsuharu - - * macterm.c (fn_keycode_to_xkeysym_table, convert_fn_keycode): Remove. - (fn_keycode_to_keycode_table) [MAC_OSX]: New variable. - (mac_set_unicode_keystroke_event) [TARGET_API_MAC_CARBON]: New function. - (XTread_socket) [TARGET_API_MAC_CARBON]: Use it. - (XTread_socket) [MAC_OSX]: Try 'uchr' Unicode keyboard-layout - resource to backtranslate key with modifiers. - (XTread_socket): Don't set read_socket_inev around AEProcessAppleEvent. - -2006-05-23 Jan Dj,Ad(Brv - - * xterm.c: Remove declarations already in xterm.h - - * xterm.h: Add extern declarations for x_clear_errors, - x_fully_uncatch_errors, x_catching_errors and - x_alloc_lighter_color_for_widget. Remove duplicated declarations. - -2006-05-21 Richard Stallman - - * xfaces.c (best_matching_font): Abort for best == NULL - before we start to use it. - - * buffer.c (syms_of_buffer, Fmake_overlay): Doc fixes. - -2006-05-20 Kim F. Storm - - * xfaces.c (best_matching_font): Fix crash in 2006-05-17 change. - -2006-05-20 YAMAMOTO Mitsuharu - - * macterm.c (convert_fn_keycode): Fix last change. - -2006-05-19 Eli Zaretskii - - * w32.c (init_environment): Perform the processing of environment - variables on a copy of default variables and their values, not on - the original. Simplify code that calls ExpandEnvironmentStrings - and make buf1[] and buf2[] more visible for easier debugging. - -2006-05-19 YAMAMOTO Mitsuharu - - * frame.c (x_set_border_width): Remove #ifndef MAC_OS. - - * image.c [MAC_OS] (gif_load): Allocate Lisp string first. - - * macfns.c (Fx_focus_frame): Don't check dpyinfo->x_focus_frame. - - * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON && MAC_OSX]: - Forward keyUp events to toolbox_dispatcher. - - * window.c (foreach_window): Check WINDOWP (FRAME_ROOT_WINDOW (f)). - -2006-05-18 Jan Dj,Ad(Brv - - * config.in: Regenerated (HAVE_ALSA). - - * sound.c (alsa_sound_perror, alsa_open, alsa_period_size) - (alsa_configure, alsa_close, alsa_choose_format, alsa_write) - (snd_error_quiet, alsa_init): New functions. - (vox_init): Return 0 if unable to open device. - (Fplay_sound_internal): Test for alsa first and use vox (oss) as - a fallback. - (struct sound_device): Add period_size. - (wav_play, au_play): Use period_size if set. - - * Makefile.in (CFLAGS_SOUND): New flags for ALSA. - (ALL_CFLAGS): Add CFLAGS_SOUND. - -2006-05-18 Kenichi Handa - - * callproc.c (Fcall_process): Reject encoding arguments by - ascii-incompatible coding systems (e.g. utf-16). - - * coding.c (Qascii_incompatible): New variable. - (syms_of_coding): Setup Qascii_incompatible. - (setup_coding_system): Be sure to initialize coding->common_flags. - Check `ascii-incompatible' property of the coding system. - - * coding.h (CODING_ASCII_INCOMPATIBLE_MASK): New macro. - -2006-05-18 Kim F. Storm - - * xdisp.c (display_tool_bar_line): Restore entire tool-bar - geometry when backtracking in case last image doesn't fit on line. - -2006-05-18 MIYOSHI Masanori (tiny change) - - * xdisp.c (display_tool_bar_line): Don't adjust tool-bar height by - more than height of one frame default line. - -2006-05-17 Richard Stallman - - * xfaces.c (better_font_p): Any font beats no font. - (best_matching_font): Simplify based on above change. - - * buffer.c (Fprevious_overlay_change, Fnext_overlay_change): Doc fixes. - -2006-05-16 Kim F. Storm - - * xterm.c (handle_one_xevent): Check that f is not NULL before - calling x_kill_gs_process. - -2006-05-14 Richard Stallman - - * textprop.c (Fnext_single_char_property_change) - (Fprevious_single_char_property_change): Don't allow returning - value beyond LIMIT in any cases. - (Fnext_char_property_change, Fprevious_char_property_change): Doc fix. - - * intervals.c (get_local_map): Abort if POSITION outside BEGV, ZV. - -2006-05-14 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Check that f is not NULL before - calling _XEditResCheckMessages. - -2006-05-14 Kim F. Storm - - * xterm.c (handle_one_xevent): Fix crash in 2006-03-24 change. - -2006-05-13 Eli Zaretskii - - * frame.c (x_set_border_width): Fix error message to say "frame", - not "window". - - * Makefile.in (SOME_MACHINE_LISP): Add fringe.elc. - -2006-05-12 Chong Yidong - - * intervals.c (set_point_both): Fix mixup before before and after - in variable names. - - * editfns.c (Fline_beginning_position): Inhibit point-motion hooks - while setting point temporarily. - -2006-05-11 Richard Stallman - - * lread.c (readevalloop): Abort if START non-nil for non-buffer input. - -2006-05-11 Kim F. Storm - - * xdisp.c (redisplay_tool_bar): Handle large tool-bar-border values. - -2006-05-11 Kenichi Handa - - * fileio.c (Finsert_file_contents): Fix for the case of IO error - while handling replace operation. - -2006-05-10 Kenichi Handa - - * xfaces.c (realize_default_face) [HAVE_X_WINDOWS]: If the font - chosen for the default face was different from the frame font, - adjust the frame font. - -2006-05-10 YAMAMOTO Mitsuharu - - * image.c (Qduration) [MAC_OS]: Undo previous change. - (syms_of_image) [MAC_OS]: Likewise. - [MAC_OS] (gif_load): Emulate Graphic Control Extension block. - - * macfns.c (x_to_mac_color): Fix shift amount change. - (mac_set_font) [USE_MAC_FONT_PANEL]: Use x_get_focus_frame. - [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): Doc fix. - - * macselect.c (Vmac_service_selection) [MAC_OSX]: Rename from - Vmac_services_selection. All uses changed. - (mac_store_service_event): Rename from mac_store_services_event in - extern and calls. - - * macterm.c (Qservice) [MAC_OSX]: Rename from Qservices. All uses - changed. - [MAC_OSX] (mac_store_service_event): Rename from - mac_store_services_event. All callers changed. - [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): Add args - FACE_ID and C. All callers changed. - (x_free_frame_resources) [USE_MAC_FONT_PANEL]: Call - mac_set_font_info_for_selection when focus frame is destroyed. - (XTread_socket): Revert to FrontNonFloatingWindow/FrontWindow. - - * macterm.h (mac_set_font_info_for_selection): Add 2nd and 3rd - args in extern. - -2006-05-09 Chong Yidong - - * keymap.c (describe_map): Avoid generating duplicate entries if - the shadowed binding has the same definition. - -2006-05-09 Kenichi Handa - - * keymap.c (push_key_description): Handle invalid character key. - -2006-05-08 Kenichi Handa - - * callproc.c (Fcall_process): Use system_eol_type for encoding - arguments if eol_type is not yet decided. - - * coding.h (system_eol_type): Extern it. - - * coding.c (setup_coding_system): For invalid coding-system, set - coding->eol_type to CODING_EOL_UNDECIDED. - (encode_coding): Cancel previous change. - (shrink_encoding_region): Likewise. - (code_convert_region1): Likewise. - (code_convert_string1): Likewise. - (code_convert_string_norecord): Likewise. - - * fileio.c (choose_write_coding_system): Use system_eol_type for - encoding if eol_type is not yet decided. - - * process.c (setup_process_coding_systems): Use system_eol_type - for encoding if eol_type is not yet decided. - (read_process_output): Likewise. - (send_process): Likewise. - -2006-05-07 Juanma Barranquero - - * minibuf.c (syms_of_minibuf) : Fix typo in doc. - -2006-05-07 YAMAMOTO Mitsuharu - - * mac.c (Fmac_clear_font_name_table): Move defun to macfns.c. - (syms_of_mac): Likewise for defsubr. - - * macfns.c (mac_set_font): New function. - (mac_frame_parm_handlers, syms_of_macfns): Replace x_set_font with it. - (mac_window) [TARGET_API_MAC_CARBON && MAC_OSX]: Specify - kWindowToolbarButtonAttribute when creating window. - (Fmac_clear_font_name_table): Move from macfns.c. - (syms_of_macfns): Likewise for defsubr. - [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): New defun. - (syms_of_macfns) [USE_MAC_FONT_PANEL]: Defsubr it. - - * macgui.h (USE_MAC_FONT_PANEL): Define to 1 if USE_ATSUI is set - and build is done on Mac OS X 10.2 and later. - - * macselect.c (mac_do_receive_drag): Remove unused variable `index'. - (mac_store_services_event): Change return type in extern. - - * macterm.c (XLoadQueryFont) [USE_ATSUI]: Set font->mac_fontnum to - FMFontFamily value. - [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): New function. - (x_new_focus_frame) [USE_MAC_FONT_PANEL]: Use it. - (QCfamily, QCweight, QCslant, Qnormal, Qbold, Qitalic): Add extern. - (QWindow) [MAC_OSX]: Likewise. - (Qfont) [USE_MAC_FONT_PANEL]: Likewise. - (Vmac_atsu_font_table) [USE_ATSUI]: New variable. - (syms_of_macterm) [USE_ATSUI]: Defvar it. - (Qtoolbar_switch_mode) [MAC_OSX]: New variable. - (Qpanel_closed, Qselection) [USE_MAC_FONT_PANEL]: Likewise. - (syms_of_macterm): Intern and staticpro them. - (init_font_name_table) [USE_ATSUI]: Add data to Vmac_atsu_font_table. - [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): - New function. - [USE_CARBON_EVENTS] (mac_handle_command_event): Use it. - [MAC_OSX] (mac_store_services_event): Likewise. - [USE_CARBON_EVENTS] (mac_handle_window_event) [MAC_OSX]: Handle - kEventWindowToolbarSwitchMode event. - (install_window_handler) [USE_CARBON_EVENTS && MAC_OSX]: Register it. - [MAC_OSX] (mac_store_services_event): Change return type to OSStatus. - [USE_MAC_FONT_PANEL] (mac_handle_font_event): New function. - (install_window_handler) [USE_MAC_FONT_PANEL]: Install it. - (XTread_socket): Select window on mouse click if x_focus_frame is NULL. - - * macterm.h (mac_set_font_info_for_selection): Add extern. - -2006-05-06 YAMAMOTO Mitsuharu - - * image.c (Qduration) [MAC_OS]: New variable. - (syms_of_image) [MAC_OS]: Intern and staticpro it. - [MAC_OS] (gif_load): Save image extension data in img->data.lisp_val. - [MAC_OSX] (image_load_quartz2d): Use cfstring_create_with_utf8_cstring - instead of cfstring_create_with_string. - -2006-05-06 Kim F. Storm - - * .gdbinit (xframe): Print frame name. - (xlist): New command to print a list (max 10 elements). - (xpr): Print lisp object of any type. - (pitx): Print it->pixel_width. - -2006-05-05 Kenichi Handa - - * xdisp.c (handle_composition_prop): Fix for the case of empty - composition component. - -2006-05-05 YAMAMOTO Mitsuharu - - * keyboard.c (make_lispy_event) [MAC_OS]: Get Apple event info - from event->arg. - - * termhooks.h (enum event_kind) [MAC_OS]: Update comment for - MAC_APPLE_EVENT. - - * macterm.h (mac_make_lispy_event_code): Remove extern. - (mac_post_mouse_moved_event): Add extern. - (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to - `const AEDesc *' in externs. - (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]: New extern. - - * mac.c (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to - `const AEDesc *'. - [TARGET_API_MAC_CARBON] (create_apple_event): New function. - [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): Use it. - Use xrealloc instead of repeated xmalloc/xfree. - [TARGET_API_MAC_CARBON] (create_apple_event_from_drag_ref): - New function. - - * macmenu.c (restore_menu_items, cleanup_popup_menu): Return a value. - - * macselect.c: Update copyright year. - (mac_store_apple_event): Change return type to void in extern. - (mac_handle_apple_event): Don't get return value from - mac_store_apple_event. - [TARGET_API_MAC_CARBON] (Vmac_dnd_known_types): New variable. - (syms_of_macselect) [TARGET_API_MAC_CARBON]: Defvar it. - [TARGET_API_MAC_CARBON] (mac_do_track_drag): Move function from - macterm.c. Use Vmac_dnd_known_types as acceptable flavors. - [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. New - implementation using create_apple_event_from_drag_ref. - [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP) - (mac_do_receive_dragUPP): Move variables from macterm.c. - (install_drag_handler, remove_drag_handler): New functions. - - * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON]: Try window - path select also for proxy icon click. - [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): New function. - [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback): Use it. - (xlfdpat_create): Remove unused label `error' and trailing sentences. - (mac_do_track_drag, mac_do_receive_drag): Move functions to macselect.c. - (mac_do_track_dragUPP, mac_do_receive_dragUPP): Move variables to - macselect.c. - (install_drag_handler, remove_drag_handler): Add extern. - (mac_store_apple_event): Change return type to void. All uses changed. - Create Lisp object from Apple event and store it into input event. - (mac_make_lispy_event_code): Remove function. - [TARGET_API_MAC_CARBON] (mac_store_drag_event): New function. - (install_window_handler): Call install_drag_handler. - (remove_window_handler): Call remove_drag_handler. - -2006-05-03 Richard Stallman - - * sound.c (Fplay_sound_internal): Dynamically allocate - current_sound_device and current_sound. - (sound_cleanup): Free them. - - * minibuf.c (read_minibuf): Don't use read_minibuf_noninteractive - when inside a keyboard macro. - -2006-05-02 Andreas Schwab - - * xmenu.c (restore_menu_items): Return a value. - -2006-05-01 Martin Rudalics - - * syntax.c (Fforward_comment): Detect generic comment at beginning of - buffer when moving backwards. - -2006-05-01 YAMAMOTO Mitsuharu - - * dispnew.c (update_window): Don't set changed_p when mode/header - line is updated. - - * xdisp.c (prepare_menu_bars) [MAC_OS]: Call mac_update_title_bar. - (get_glyph_face_and_encoding, get_char_face_and_encoding): - Don't distinguish known faces from others. - - * mac.c (mac_coerce_file_name_ptr): Try typeFSRef if coercion - through typeFileURL failed. - - * macfns.c (mac_update_title_bar): New function. - [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): New function. - (show_hourglass, hide_hourglass) [USE_CG_DRAWING]: - Call mac_prepare_for_quickdraw. - - * macgui.h (USE_ATSUI): Set default to 1 if MAC_OSX is defined. - (USE_CG_DRAWING): Don't define if compiled on Mac OS X 10.1. - (enum pcm_status): New enum. - (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID) - (XCharStructRow): Remove. Now validity is represented by - non-negativeness of sum of ascent and descent. - (struct MacFontStruct): Change type of member `rows'. - (struct _XGC) [USE_CG_DRAWING]: Add member `clip_rects'. - - * macterm.c (mac_draw_line, mac_draw_line_to_pixmap): - Adjust endpoints of strictly horizontal/vertical lines. - (mac_set_clip_rectangles) [USE_CG_DRAWING]: Set clip_rects. - (pcm_init, pcm_get_status): New functions. - (x_per_char_metric, XLoadQueryFont): Use them instead of - XCharStructRow and related macros. - (x_draw_relief_rect): Don't adjust arguments of mac_draw_line. - (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Free FRAME_FILE_NAME. - (XTread_socket) [TARGET_API_MAC_CARBON]: Handle proxy icon drag - and window path pop-up menu on title bar. - (mac_use_core_graphics) [USE_CG_DRAWING]: Set default to 1. - - * macterm.h (mac_update_title_bar): Add extern. - (struct mac_output) [TARGET_API_MAC_CARBON]: New member `file_name'. - (FRAME_FILE_NAME): New macro. - - * unexmacosx.c (unexec): Error if trying unexec from dumped executable. - -2006-04-30 Richard Stallman - - * keymap.c (Fdefine_key): Improve error message - when KEY begins with a non-prefix key. - -2006-04-30 Martin Rudalics - - * syntax.c (Fforward_comment): Don't forget to break out of the loop - when we skipped backward over a generic comment. - -2006-04-27 Nick Roberts - - * .gdbinit (pp1, pv1): Only print value as expression is now - printed out by gud-print. - (pv1): Correct doc string. - -2006-04-26 Stefan Monnier - - * keymap.c (store_in_keymap): Change `def' arg to not be `register'. - Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8): - keymap.c:895: error: address of register variable `def' requested. - -2006-04-26 Jason Rumney - - * w32term.c (construct_mouse_wheel): Handle negative coordinates. - - * w32fns.c (w32_wnd_proc) : - : Call signal_user_input in the cases - where we preempt mouse_button_timer. - -2006-04-25 Miles Bader - - * editfns.c (Ffield_beginning, find_field): Undo change of 2006-04-23. - -2006-04-24 Stefan Monnier - - * process.h: Include headers for pid_t. - -2006-04-24 Kim F. Storm - - * xdisp.c (fill_stretch_glyph_string): Set s->nchars = 1 for code which - does last_glyph=s->first_glyph+s->nchars-1, e.g. if stretch has relief. - (produce_stretch_glyph): Assume that face box height and width is - already included in stretch glyph size so caller doesn't have to - consider the extra space otherwise added (fixes problem in ses.el). - - * frame.c (x_set_font): Clear f->n_tool_bar_rows and current frame - matrices to force recalculation of tool-bar height after font change. - - * xdisp.c (tool_bar_lines_needed): New local `temp_row' for clarity. - Clear it when done, so we don't accidentally draw a second copy of - the tool-bar after resetting f->n_tool_bar_rows. - (redisplay_tool_bar): Update tool-bar-lines frame parameter whenever - we recalculate f->n_tool_bar_rows. - -2006-04-23 Lars Hansen - - * editfns.c (find_field): Fix comment. - (Ffield_beginning): Fix bug when POS is at field beginning. - -2006-04-22 Eli Zaretskii - - * puresize.h (BASE_PURESIZE): Increase to 1205000. - -2006-04-21 Kim F. Storm - - * xdisp.c (redisplay_window): Fix last change. Don't recenter if - window start is at BEGV. - - * dispextern.h (struct image): New member `corners'. - (TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros. - - * image.c (four_corners_best): New arg CORNERS specifies what pixels - to look at in case image has margin. - (x_create_bitmap_mask): Pass NULL for CORNERS to four_corners_best. - (image_background, image_background_transparent) - (x_build_heuristic_mask): Pass img->corners to four_corners_best. - (gif_load): Set img->corners according to image's margin spec. - Use img->corners values directly where applicable. - Save image extension data in img->data.lisp_val. - (gif_clear_image): New function to free img->data.lisp_val. - (gif_type): Use it instead of generic x_clear_image. - (Fimage_extension_data): New defun. - (syms_of_image): Defsubr it. - -2006-04-21 John Sullivan (tiny change) - - * window.c (Fdisplay_buffer): Doc fix. - -2006-04-21 Eli Zaretskii - - * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Increase to 25000. - -2006-04-21 YAMAMOTO Mitsuharu - - * image.c [MAC_OS] (xpm_load_image): Fill in background field - while we have ximg handy. - - * macmenu.c (restore_menu_items, save_menu_items): New functions - from xmenu.c. - (set_frame_menubar, digest_single_submenu): Apply 2006-04-18 - changes for xmenu.c. - - * macterm.c (x_per_char_metric): Return NULL if glyph width is 0. - (add_mac_font_name): New function. - (init_font_name_table): Use it. Adopt the first found font from - those having the same family name. - -2006-04-21 Nick Roberts - - * xdisp.c (note_mouse_highlight): Use build_string. - -2006-04-20 Lars Hansen - - * textprop.c (Fremove_list_of_text_properties): - Ensure modify_region is called only when buffer is modified and that - signal_after_change is allways called in that case. - - * print.c (PRINTFINISH): Call signal_after_change. - -2006-04-20 Kim F. Storm - - * xdisp.c (redisplay_window): Fix last change. - - * xdisp.c (redisplay_window): If current window start is not at the - beginning of a line, select a new window start if buffer is modified - and window start is in the modified region, but the first change is - before window start. - -2006-04-18 Richard Stallman - - * xmenu.c (restore_menu_items, save_menu_items): New fns. - (set_frame_menubar): Use save_menu_items. Save updated vector in - the frame before unwinding it. Don't use unuse_menu_items. - Don't use discard_menu_items. - (digest_single_submenu): Abort if an item is not in a pane. - (init_menu_items): Put the error check at the top. - - * keymap.c (describe_map): Make "shadowed" warning more verbose. - - * window.c (adjust_window_trailing_edge): Correctly distinguish - series vs parallel cases, even when window has no parent. - - * abbrev.c (record_symbol): New function. - (Finsert_abbrev_table_description): Sort the abbrevs alphabetically. - -2006-04-18 YAMAMOTO Mitsuharu - - * image.c (x_create_bitmap_from_data) [MAC_OS]: Don't check return - value of xmalloc. - - * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc) - (create_apple_event_from_event_ref, xrm_get_preference_database) - (cfstring_create_normalized): Don't check return value of xmalloc. - - * macselect.c (get_scrap_target_type_list, defer_apple_events) - (copy_scrap_flavor_data, mac_handle_service_event): Don't check - return value of xmalloc/xrealloc. - - * macterm.c (XCreateGC, x_per_char_metric, xlfdpat_create) - (init_font_name_table, init_font_name_table, mac_do_list_fonts) - (XLoadQueryFont, mac_store_apple_event): Don't check return value - of xmalloc. - -2006-04-17 Kim F. Storm - - * window.c (coordinates_in_window): On the vertical border, - calculate the row number measured from the top of the window, not - the top of the frame. - (window_loop): Test w->dedicated with !NILP instead of EQ Qt. - (window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change. - -2006-04-16 Eli Zaretskii - - * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000. - -2006-04-16 Romain Francoise - - * puresize.h (BASE_PURESIZE): Decrement back to 1200000. - -2006-04-16 Andreas Schwab - - * puresize.h (PURESIZE_RATIO): Reduce to 10/6. - -2006-04-15 Romain Francoise - - * puresize.h (BASE_PURESIZE): Increment to 1210000. - -2006-04-13 Micha,Ak(Bl Cadilhac - - * print.c (Fprin1_to_string): Mention in the `doc' that the - behavior is modified by `print-level' and `print-length'. - -2006-04-13 Kenichi Handa - - * coding.c (setup_coding_system): If eol-type is not yet decided - and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK. - If coding_system is nil, return 0. - (code_convert_region1): Even if coding_system is nil, don't skip - conversion if system_eol_type is not LF. - (code_convert_string1): Likewise. - (code_convert_string_norecord): Likewise. - -2006-04-13 Kenichi Handa - - * coding.c (setup_coding_system): Fix previous change. - (encode_coding): If eol_type is not yet decided, use system_eol_type. - (shrink_encoding_region): If eol_type is not yet decided and - system_eol_type is not LF, don't shrink. - -2006-04-13 Nick Roberts - - * xdisp.c (note_mouse_highlight): Add help echo for dragging vertical - line. - -2006-04-12 Richard Stallman - - * keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1]. - - * process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return. - (Fprocess_send_eof): Abort if fail to open null device. - -2006-04-12 YAMAMOTO Mitsuharu - - * fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h. - - * image.c [MAC_OS] (xpm_load_image): Add parentheses around - assignment used as truth value. Add explicit braces to avoid - ambiguous `else'. - [MAC_OS] (gif_load): Remove unused variable `gcpro1'. - - * lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and - EXFUN in #ifdef HAVE_WINDOW_SYSTEM. - (syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm): - Put externs in #ifdef HAVE_X_WINDOWS. - (syms_of_macfns, syms_of_macselect, syms_of_macterm) - (syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs. - (init_mac_osx_environment) [MAC_OSX]: Add extern. - - * mac.c (init_process): Remove undef. - (select) [MAC_OSX]: Undefine before including sysselect.h. - (posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]: - Remove functions and prototypes. - (parse_value): Add parentheses around + inside shift. - (path_from_vol_dir_name): Make static. - (get_temp_dir_name): Remove unused variables `cpb' and `dir_name'. - [!MAC_OSX] (get_path_to_system_folder): Likewise. - (Fmac_get_file_creator, Fmac_get_file_type): Remove unused - variable `cCode'. - (Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'. - (Fmac_get_preference): Add explicit braces to avoid ambiguous `else'. - - * macfns.c (x_to_mac_color): Remove unused variable `tail'. - (x_set_mouse_color): Remove unused variable `dpy'. - (Fx_create_frame): Remove unused variable `x_frame_count'. - (Fx_server_version): Add explicit braces to avoid ambiguous `else'. - (x_sync): Move from macterm.c. - (Fx_file_dialog): Remove unused variable `default_filter_index'. - - * macmenu.c (min_menu_id): Make element type explicit. - - * macselect.c (get_flavor_type_from_symbol): Remove unused - variable `val'. - (get_scrap_private_timestamp, x_get_foreign_selection) - (copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'. - (Fmac_process_deferred_apple_events): Remove unused variables - `keyword', `reply', `apple_event', `count', and `err'. - - * macterm.c: Don't include gnu.h. - (x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes. - (x_sync): Move to macfns.c. - [USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused - variable `mask_bits'. - (mac_compute_glyph_string_overhangs): Avoid ambiguous `else'. - (x_draw_image_glyph_string): Remove unused variable `pixmap'. - (x_mac_to_emacs_modifiers): Remove function. - (XTset_vertical_scroll_bar, mac_handle_visibility_change) - (x_make_frame_visible, xlfdpat_create, mac_handle_command_event): - Add explicit braces to avoid ambiguous `else'. - (x_make_frame_visible): Remove unused variables `type', - `original_top', and `original_left'. - (mac_do_list_fonts, XTread_socket): Add parentheses around && within ||. - (x_load_font): Remove unused variables `full_name', and `value'. - (do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]: - Remove functions. - (do_zoom_window): Reorganize variables with respect to conditionals. - (init_command_handler): Remove unused variable `err'. - [MAC_OSX] (mac_check_bundle): Remove unused variable `child'. - - * macterm.h (x_set_mouse_position, x_set_mouse_pixel_position) - (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources) - (x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC) - (do_menu_choice, have_menus_p, x_real_positions) - (x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width) - (x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar) - (free_frame_menubar): Add externs. - - * unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H. - (malloc, realloc, free): Add undefs. - (read_load_commands): Remove unused variable `n' and `j'. - (copy_data_segment): Remove unused variable `r'. - - * xdisp.c (get_glyph_string_clip_rects): Add parentheses around && - within ||. Add explicit braces to avoid ambiguous `else'. - (dump_glyph_row): Remove label for `inverse_p' from legend. - - * xfaces.c (Finternal_merge_in_global_face, try_font_list): - Add explicit braces to avoid ambiguous `else'. - -2006-04-11 Micha,Ak(Bl Cadilhac - - * dispnew.c (init_display): Don't init X display if the user asked - for a non-X display. - -2006-04-12 Kenichi Handa - - * coding.c (setup_coding_system): Use system_eol_type for default - coding->eol_type. - -2006-04-11 Dan Nicolaescu - - * lisp.h (wrong_type_argument): Mark as NO_RETURN. - - * data.c (wrong_type_argument): Try to avoid compiler warnings due - to the fact the function is now marked as NO_RETURN. - -2006-04-10 Eli Zaretskii - - * s/ms-w32.h (pid_t) [_MSC_VER]: New typedef. - -2006-04-10 Romain Francoise - - * xrdb.c (gethomedir): Use xstrdup. - -2006-04-10 Andreas Schwab - - * xrdb.c (gethomedir): Make sure to always return a pointer that - can be passed to free. - -2006-04-09 Richard Stallman - - * lisp.h (Fkill_emacs): Undo previous change. - -2006-04-08 Richard Stallman - - * search.c (boyer_moore): Test ch >= 0400, not >. - -2006-04-09 Dan Nicolaescu - - * puresize.h (pure_write_error): Mark as NO_RETURN. - - * lisp.h (args_out_of_range, args_out_of_range_3) - -2006-04-08 Eli Zaretskii - - * w32fns.c (w32_wnd_proc) : Ignore mouse movements - if a menu is active on this frame. - -2006-04-08 Dan Nicolaescu - - * lisp.h (report_file_error): Mark as NO_RETURN. - -2006-04-08 Eli Zaretskii - - * alloc.c [STDC_HEADERS]: Include stddef.h. - - * lisp.h (PSEUDOVECSIZE): Fix last change. - -2006-04-08 Stefan Monnier - - * process.h (struct Lisp_Process): Replace Lisp_Objects `pid', - `raw_status_high', and `raw_status_low' with plain integers, and move - them to the end of the structure. - - * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the - pseudovector's size field so only the Lisp_Object fields get GC'd. - - * process.c (update_status, make_process, Fdelete_process) - (Fprocess_status, list_processes_1, start_process_unwind) - (create_process, Fmake_network_process, server_accept_connection) - (wait_reading_process_output, send_process, Fprocess_running_child_p) - (process_send_signal, proc_encode_coding_system, Fprocess_send_eof) - (sigchld_handler, status_notify): Adjust to new non-Lisp fields for - `pid' and `raw_status'. - (Fprocess_id, Fsignal_process): Same, and additionally use floats when - representing PIDs that are larger than most-positive-fixnum. - - * keymap.c (describe_map): Only use XINT if we checked INTEGERP. - - * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros. - -2006-04-08 Eli Zaretskii - - * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos. - -2006-04-03 Paul Eggert - - * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to - ../lib-src/b2m.c and ../lib-src/editfns.c. - (Fcurrent_time_string): Use it. - Document that the year might not consume 4 columns if it's outside - the range 1000-9999. - Check for asctime failure. - Don't assume that the output string length is always exactly 24. - -2006-04-03 YAMAMOTO Mitsuharu - - * macterm.c (XTread_socket): Initialize variable `f' before its use. - -2006-04-03 Kenichi Handa - - * image.c: Include "charset.h" and "coding.h". - (x_find_image_file): Return an encoded file name. - -2006-04-01 Eli Zaretskii - - * configure: Regenerated. - -2006-03-31 Kenichi Handa - - * xfns.c (xg_set_icon): Delete superfluous UNGCPRO. - -2006-03-30 Dan Nicolaescu - - * xdisp.c (syms_of_xdisp): Fix variable name. - -2006-03-30 Kenichi Handa - - * xterm.c (x_term_init): Delete superfluous UNGCPRO. - -2006-03-29 Juanma Barranquero - - * keyboard.c (process_tool_bar_item): Reorder dummy args. - -2006-03-29 Stefan Monnier - - * keyboard.c (tool_bar_items): Use map_keymap. - (process_tool_bar_item): Add dummy args to fit the required interface. - -2006-03-25 Eli Zaretskii - - * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag - to zero before calling debug_print or safe_debug_print. - - * print.c (print_output_debug_flag): New global variable. - (Fexternal_debugging_output) [WINDOWSNT]: Don't call - OutputDebugString if print_output_debug_flag is zero. - -2006-03-24 Paul Eggert - - * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it. - (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900. - (Fdecode_time): Cast tm_year to EMACS_INT. - (Fcurrent_time_string): Report an invalid time specification if - the argument is invalid. Also, check for out-of-range time stamps. - -2006-03-24 Kim F. Storm - - * xterm.c (handle_one_xevent): - * w32term.c (w32_read_socket): - * macterm.c (XTread_socket): Don't let key-press clear mouse face - on in toolbar window if mouse-highlight is an integer. - - * fns.c (sxhash_list): Include last non-nil CDR in hash. - -2006-03-24 YAMAMOTO Mitsuharu - - * macmenu.c (enum mac_menu_kind): New enum. - (min_menu_id): New variable. - (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID) - (MIN_SUBMENU_ID): Remove defines. All uses are replaced with - min_menu_id and enumerators in enum mac_menu_kind. - (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND. - All uses changed. Add range check for menu ID. - (fill_menubar): Add range check for menu ID. - [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of - GetEventParameter. - (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler - for each menu kind. - -2006-03-22 Kim F. Storm - - * xdisp.c: Undo 2006-03-21 change. - - * term.c: Define aliases for append_glyph and produce_stretch_glyph - when `static' is defined to avoid name clash with those in xdisp.c. - - * process.c (Faccept_process_output): Fix to comply with lisp - reference. Change arg "timeout" to "seconds" and allow both - integer and float value. Change arg "timeout-msec" to "millisec" - and interpret" as milliseconds rather than microseconds. Fix doc - string accordingly. - -2006-03-21 Ken Raeburn - - * xdisp.c (store_next_glyph): Rename from append_glyph. - (generate_stretch_glyph): Rename from produce_stretch_glyph. - All callers changed accordingly. - -2006-03-21 Jan Dj,Ad(Brv - - * xterm.c: x_session_initialized new variable. - (x_term_init): Use x_session_initialized to check if - x_session_initialize should be called. - (x_initialize): Initialize x_session_initialized. - -2006-03-21 Kim F. Storm - - * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow - bitmap here, but ... - (update_window_fringes): ... here, so we can test if it has changed. - -2006-03-20 Andreas Schwab - - * dispnew.c (init_display): Check DISPLAY here. - - * emacs.c (main): Don't check here. - - * xterm.c (x_display_ok): Don't use DISPLAY env var. - -2006-03-20 Stefan Monnier - - * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object - mixup (YAILOM). - -2006-03-20 Eli Zaretskii - - * emacs.c (main): Fix last change. - -2006-03-20 Kenichi Handa - - * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it. - - * keymap.c (map_keymap): Set tail to Qnil before GCPRO it. - - * xfns.c (xg_set_icon): Remove unnecessary GCPRO. - - * xterm.c (x_term_init): Remove unnecessary GCPRO. - -2006-03-19 Kim F. Storm - - * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string, - so it doesn't associate overlay string with following glyph by default. - Allow integer property value to specify explicit number of buffer - positions associate with overlay string. - -2006-03-18 Chong Yidong - - * xterm.c (x_display_ok): Fix minor bug and compilation warnings. - -2006-03-18 Nozomu Ando - - * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define. - (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define. - (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]: - Don't redefine. - - * m/mips.h: Don't use unexmips on NetBSD. - (LIBS_MACHINE): Move definition lower, so it doesn't use - LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP, - C_SWITCH_MACHINE, and C_DEBUG_SWITCH. - - * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h. - (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc - option is broken (e.g., MIPS/NetBSD). - -2006-03-18 Craig McDaniel (tiny change) - - * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB. - Remove the HAVE_X_WINDOWS conditional. - -2006-03-18 Vivek Dasmohapatra (tiny change) - - * emacs.c (main): If user asks for a display that is unavailable, - simulate -nw. - - * xterm.c (x_display_ok): New function. - - * xterm.h: Add prototype for x_display_ok. - -2006-03-18 Eli Zaretskii - - * w32fns.c (Fw32_select_font): Doc fix. - -2006-03-16 YAMAMOTO Mitsuharu - - * image.c [MAC_OS] (XPutPixel, XGetPixel) - [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized - version when depth is 32. - (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]: - New function. - (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it. - (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage. - - * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: - Create GWorld in ARGB pixel format. - (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]: - Remove functions. - (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image - instead of mac_copy_area/mac_copy_area_with_mask. - -2006-03-15 Kim F. Storm - - * xdisp.c (extend_face_to_end_of_line): Always add space glyph to - empty row. Fixes memory corruption revealed by 2006-03-02 change. - (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0. - (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar - width is exactly the same as the window width. Don't count a final - empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line). - -2006-03-15 Juanma Barranquero - - * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being - conditional on HAVE_NTGUI, not WINDOWS_NT. - -2006-03-15 YAMAMOTO Mitsuharu - - * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype. - - * fringe.c (mac_init_fringe) [MAC_OS]: New function. - - * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe. - (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables. - (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap) - (mac_draw_cg_image) [USE_CG_DRAWING]: New functions. - (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function. - (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image - instead of mac_draw_bitmap. - (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for - define_fringe_bitmap and destroy_fringe_bitmap. - -2006-03-14 Chong Yidong - - * xterm.c (x_uncatch_errors): Block input for entire function. - -2006-03-12 Jason Rumney - - * w32fns.c (Fx_create_frame): Remove call to - Qface_set_after_frame_default (from xfns.c 2003-05-26). - - * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when - finished with the menu. - - * w32term.c: Sync 2005-10-24 xterm.c changes. - (last_mouse_glyph_frame): New var. - (note_mouse_movement): Say mouse moved if current frame differs - from last_mouse_glyph_frame, and update last_mouse_glyph_frame. - (w32_mouse_position): Set last_mouse_glyph_frame. - Remove OLD_REDISPLAY_CODE block. - -2006-03-12 YAMAMOTO Mitsuharu - - * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1. - - * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context. - (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype. - - * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. - - * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c. - - * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground) - (x_draw_composite_glyph_string_foreground) - (x_draw_image_foreground): Undo previous changes. - (x_draw_hollow_cursor): Likewise. Subtract 1 from the last - argument of mac_draw_rectangle. - (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros. - (mac_draw_string_common, mac_draw_image_string_cg): Use them. - (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro. - (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw) - [USE_CG_DRAWING]: New functions. - (mac_draw_line, mac_erase_rectangle, mac_clear_window) - (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common) - (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part. - (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common) - (mac_copy_area, mac_scroll_area, x_scroll_bar_create) - (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size) - (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. - -2006-03-12 L$,1 q(Brentey K,Aa(Broly - - * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'. - -2006-03-11 Jason Rumney - - * w32fns.c (signal_user_input): New function. - (post_character_message): Use it for keyboard input. - (w32_msg_pump): Use it for mouse input. - -2006-03-11 Luc Teirlinck - - * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y. - (window_scroll_pixel_based, syms_of_window): Adapt to above change. - -2006-03-11 Eli Zaretskii - - * w32fns.c (w32_wnd_proc): Ignore middle and extra button events - if a menu is already active (the menubar_active flag is on). - -2006-03-11 David Ponce - - * xfns.c (x_create_tip_frame): Preserve received parms by copying them. - -2006-03-11 Eli Zaretskii - - * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to - the list of unused display error handling functions. - - * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if - HAVE_X_WINDOWS. - (internal_condition_case, internal_condition_case_1) - (internal_condition_case_2): Call x_catching_errors only if - HAVE_X_WINDOWS. - - * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally. - Don't include sys/resource.h unless defined. - -2006-03-11 Richard Stallman - - * keymap.c (describe_map): Shorten string to indicate shadowed binding. - - * vm-limit.c (get_lim_data, lim_data, data_space_start): - Move from mem-limits.h. - (enum warnlevel): New data type. - (check_memory_limits): Rewrite the logic about warnings. - Use standard `struct rlimit'. Check return values for nonsense. - (memory_warnings): Always clear lim_data. - - * mem-limits.h (get_lim_data, lim_data, data_space_start): - Move to vm-limit.c. - - * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions. - - * eval.c (unwind_to_catch): Call x_fully_uncatch_errors. - (internal_condition_case_1, internal_condition_case_2): - Abort if within unclosed x_catch_errors. - -2006-03-11 Romain Francoise - - * process.c (Vprocess_adaptive_read_buffering): Doc fix. - -2006-03-11 Giorgos Keramidas (tiny change) - - * lisp.h: Remove duplicate prototypes. Make the prototype of - getloadavg be conditioned on HAVE_GETLOADAVG being undefined. - -2006-03-11 Eli Zaretskii - - * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last - argument of XDrawRectangle. - - * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1. - - * macterm.c (mac_draw_rectangle): Don't add 1 to width and height. - (x_draw_glyph_string_foreground) - (x_draw_composite_glyph_string_foreground) - (x_draw_image_foreground): Don't subtract 1 from width and height - arguments to mac_draw_rectangle. - (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width. - -2006-03-10 Kim F. Storm - - * alloc.c (USE_POSIX_MEMALIGN): Fix last change. - -2006-03-09 Stefan Monnier - - * alloc.c (USE_POSIX_MEMALIGN): New macro. - (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it. - -2006-03-09 Kenichi Handa - - * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding - ASCII component of a composition. - -2006-03-08 Luc Teirlinck - - * window.c: Declare preserve_y as a static global variable. - (window_scroll_pixel_based): No longer declare preserve_y; - it is global now. - (syms_of_window): Set preserve_y to -1. - -2006-03-08 YAMAMOTO Mitsuharu - - * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap - depth is 32. - [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap - depth is 32. - -2006-03-06 Chong Yidong - - * xdisp.c (handle_invisible_prop): Don't update it->position with - a buffer position if we're in a display string. - -2006-03-06 YAMAMOTO Mitsuharu - - * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH) - (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines. - - * macfns.c (x_default_scroll_bar_color_parameter) - (x_set_scroll_bar_foreground, x_set_scroll_bar_background): - Remove unnecessary prototypes. - (x_set_scroll_bar_default_width): - Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH. - (mac_set_scroll_bar_width): New function. - (mac_frame_parm_handlers): Set it as handler for scroll-bar-width. - - * macterm.c (get_control_part_bounds): Fix type of return value. - (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create) - (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show - scroll bar if it is not tall enough to display scroll bar thumb. - [USE_CARBON_EVENTS] (mac_convert_event_ref) - (mac_handle_command_event, mac_handle_window_event) - (mac_handle_mouse_event): Check error code of GetEventParameter. - (convert_fn_keycode) [MAC_OSX]: Likewise. - -2006-03-05 Andreas Schwab - - * xselect.c (x_catch_errors_unwind): Fix missing return value. - -2006-03-02 Kim F. Storm - - * frame.h (struct frame): New member n_tool_bar_rows. - - * xdisp.c: Minimize the unpleasent visual impact of the requirement - that non-toolkit tool-bars must occupy an integral number of screen - lines, by distributing the rows evenly over the tool-bar screen area. - (Vtool_bar_border): New variable. - (syms_of_xdisp): DEFVAR_LISP it. - (display_tool_bar_line): Add HEIGHT arg for desired row height. - Make tool-bar row the desired height. Use default face for border - below tool-bar. - (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of - actual tool-bar rows. - (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially. - Adjust the height of the tool-bar rows to fill tool-bar screen area. - (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area - is resized. - -2006-03-01 Luc Teirlinck - - * search.c (Fregexp_quote): Do not precede a literal `]' with two - backslashes to try to make clear that it has a literal meaning; it - does not do that. (It could close a character alternative - containing a backslash.) - -2006-02-28 Chong Yidong - - * xselect.c (x_catch_errors_unwind): New function. - (x_reply_selection_request): Put x_uncatch_errors in an unwind. - (Fx_get_atom_name): Call x_uncatch_errors earlier. - - * window.c (Qscroll_up, Qscroll_down): New syms. - (window_scroll_pixel_based): Make preserve_y static to avoid - getting point stuck when scrolling 1 line. - -2006-02-26 Chong Yidong - - * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument. - - * xterm.c (x_load_font, x_term_init, XTmouse_position) - (handle_one_xevent, x_connection_closed, x_list_fonts): - No arg for x_uncatch_errors. - - * xselect.c (x_own_selection, x_decline_selection_request) - (x_reply_selection_request, x_get_foreign_selection) - (Fx_get_atom_name, Fx_send_client_event): Likewise. - - * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame): - Likewise. - -2006-02-26 Luc Teirlinck - - * lread.c: Declare Vload_file_rep_suffixes instead of - deleted variable default_suffixes. - (Fget_load_suffixes): New function. - (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes. - No longer use deleted variable default_suffixes. Update docstring. - (syms_of_lread): defsubr Sget_load_suffixes. - Expand `load-suffixes' docstring. - Delete default_suffixes and DEFVAR_LISP the new variable - `load-file-rep-suffixes'. - - * w32.c (check_windows_init_file): Use Fget_load_suffixes instead - of Vload_suffixes. - - * lisp.h: EXFUN Fget_load_suffixes. - Extern Vload_file_rep_suffixes. - - * eval.c (specpdl_ptr): Remove volatile qualifier for consistency - with lisp.h. - -2006-02-26 Stefan Monnier - - * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile - qualifier which was trying to avoid the bug that was fixed by - yesterday's changes to xterm.c. - -2006-02-25 Chong Yidong - - * xterm.h (x_catch_errors) Return value changed to void. - (x_uncatch_errors): Delete unused count argument. - - * xterm.c (x_catch_errors): Don't use record_unwind_protect, since - it can be called in a signal handler. - (x_catch_errors_unwind): Function deleted. - (x_uncatch_errors): Deallocate last x_error_message_stack struct. - (x_check_errors): Call x_uncatch_errors before signalling error. - - (x_load_font, x_term_init, XTmouse_position, handle_one_xevent) - (x_connection_closed, x_list_fonts): Use new versions of - x_catch_errors and x_uncatch_errors. - - * xselect.c (x_own_selection, x_decline_selection_request) - (x_reply_selection_request, x_get_foreign_selection) - (Fx_get_atom_name, Fx_send_client_event): Likewise. - - * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame): - Likewise. - - * eval.c (record_unwind_protect): Add an assertion. - -2006-02-25 Stefan Monnier - - * process.c (Fmake_network_process): Init the process's mark. - -2006-02-25 Kim F. Storm - - * buffer.c (modify_overlay): Force redisplay if we modify an - overlay at the end of the buffer. - -2006-02-24 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns - nil the image file has been removed, in that case use the (cached) - pixmap. - -2006-02-24 Kenichi Handa - - * fileio.c (Finsert_file_contents): When a text is replaced - partially, be sure to set point before the inserted characters. - -2006-02-23 Zhang Wei (tiny change) - - * xfns.c (Fx_file_dialog): Return a decoded file name. - -2006-02-23 YAMAMOTO Mitsuharu - - * dispnew.c (update_text_area): Avoid needless redraw of rightmost - glyph whose face is extended to the text area end. - - * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control - values if control is not visible or values are not changed. - -2006-02-22 Stefan Monnier - - * window.c (Fwindow_list): Check `window' before doing XWINDOW. - The default `window' should not be "on a different frame". - -2006-02-22 Kim F. Storm - - * indent.c (Fvertical_motion): Only try to move back if we can. - -2006-02-22 YAMAMOTO Mitsuharu - - * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member - n_clip_rects. - - * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for - xmenu.c. - - * macterm.c (GC_CLIP_REGION): Remove macro. - (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION. - All uses changed. Don't do clipping if n_clip_rects is zero. - (mac_set_clip_rectangles): Use xassert instead of abort. - Set n_clip_rects. Don't make clip_region empty when number of - clipping rectangles is zero. - (mac_reset_clip_rectangles): Set n_clip_rects directly instead of - calling mac_set_clip_rectangles. - (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to - avoid multiple redraws. - -2006-02-22 Kim F. Storm - - * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display. - -2006-02-21 Kim F. Storm - - * fringe.c (syms_of_fringe) : Doc fix. - -2006-02-21 Zhang Wei - - * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before - returning it. - -2006-02-21 Giorgos Keramidas (tiny change) - - * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'. - (standard_bitmaps): Use it. - -2006-02-21 YAMAMOTO Mitsuharu - - * macterm.c (mac_draw_string_common): Remove arg MODE. New arg - BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero. - (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH. - [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from - mac_draw_string_cg. New arg BG_WIDTH. All uses changed. - Draw background if BG_WIDTH is not zero. Use float constants as - divisors instead of double. Use alloca instead of xmalloc/xfree. - (x_draw_glyph_string_background, x_draw_glyph_string_foreground) - [!MAC_OS8 || USE_ATSUI]: Background may be drawn using - mac_draw_image_string* functions. - (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of - some fonts when srcCopy text transfer mode might be used. - (mac_begin_clip, mac_end_clip): Check if region is empty. - (mac_set_clip_rectangles): When resetting clip region, make it - empty instead of disposing of it. - -2006-02-20 Kim F. Storm - - * Makefile.in: Add fringe.elc to WINDOW_SUPPORT. - - * buffer.h (struct buffer): New members fringe_indicator_alist and - fringe_cursor_alist. - - * buffer.c (init_buffer_once): Set dummy default values for - fringe-indicator-alist and fringe-cursor-alist. The proper - default values are set by pre-loading fringe.el. - (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and - fringe-cursor-alist buffer-local variables and defvar_lisp_nopro - corresponding default- variables. - - * fringe.c (enum fringe_bitmap_type): Remove. Change all uses - to use `int'. - (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS): - Define explicitly. - (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom) - (Qhollow_small): New variables. - (syms_of_fringe): Intern and staticpro them. - (question_mark_bits): Rename from unknown_bits. - (left_curly_arrow_bits): Rename from continuation_bits. - (right_curly_arrow_bits): Rename from continued_bits. - (left_triangle_bits): Rename from ov_bits. - (right_triangle_bits): Add. - (filled_rectangle_bits): Rename from filled_box_cursor_bits. - (hollow_rectangle_bits): Rename from hollow_box_cursor_bits. - (filled_square_bits): Add. - (vertical_bar_bits): Rename from bar_cursor_bits. - (horizontal_bar_bits): Rename from hbar_cursor_bits. - (empty_line_bits): Rename from zv_bits. - (standard_bitmaps): Update to use new names. - (draw_fringe_bitmap_1): Make static. - (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions - to map from logical cursors and indicators to physical bitmaps. - (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow - bitmaps using symbol names instead of bitmap numbers. - (update_window_fringes): Use logical indicator symbol names - instead of bitmap numbers for logical. Add bitmap cache. - (LEFT_FRINGE, RIGHT_FRINGE): New helper macros. - -2006-02-20 Chong Yidong - - * regex.c: Revert 2006-02-19 change. - (xmalloc, xrealloc): Define these when not linked to Emacs. - Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case. - -2006-02-19 Luc Teirlinck - - * regex.c (extend_range_table_work_area): Fix typo. - -2006-02-19 Richard M. Stallman - - * xterm.c (x_catch_errors): Use xmalloc. - - * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc. - (regex_compile): Likewise. - (regcomp): Use xmalloc. - - * gtkutil.c (malloc_widget_value): Use xmalloc. - - * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h. - (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit. - - * xmenu.c (digest_single_submenu): When pane_string is empty, - do initialize save_wv. - -2006-02-19 YAMAMOTO Mitsuharu - - * xdisp.c (update_menu_bar) [MAC_OS]: Don't set - w->update_mode_line if arg F is not the selected frame. - - * macmenu.c (popup_activated_flag, submenu_id) - (next_menubar_widget_id): Remove variables. - (initialize_frame_menubar): Remove function. - (pop_down_menu, mac_menu_show): Simplify save value. - (dispose_menus): New function. - (pop_down_menu, fill_menubar): Use it. - (fill_submenu): Remove function. All uses changed to fill_menu. - (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg - POS. Don't call SetMenuItemHierarchicalID here. - (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be - used next. Call SetMenuItemHierarchicalID here. - (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu - objects if needed. Reuse existing menu bar titles if possible. - (set_frame_menubar): Don't clean up menu objects here. - -2006-02-18 Chong Yidong - - * window.c (window_min_size_1): Ensure room for the scroll bar and - fringes. - -2006-02-17 Romain Francoise - - * puresize.h (BASE_PURESIZE): Increment to 1200000. - -2006-02-17 Stefan Monnier - - * alloc.c (Fmake_symbol): Comment-out left-over assert from before the - addition of the BLOCK_INPUTs. - -2006-02-17 Juanma Barranquero - - * window.c (Fset_window_scroll_bars): Doc fix. - -2006-02-17 Kenichi Handa - - * xdisp.c (display_mode_element): Call display_string with correct - PREC arg (which must be a number of characters, not column width). - -2006-02-15 YAMAMOTO Mitsuharu - - * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac. - - * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac. - - * macmenu.c (set_frame_menubar): Don't call DrawMenuBar. - -2006-02-14 Richard M. Stallman - - * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST. - - * m/ibms390x.h: New file. - -2006-02-14 Jan Dj,Ad(Brv - - * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the - value of x-gtk-whole-detached-tool-bar. - (xg_tool_bar_attach_callback): Set show-arrow to TRUE. - - * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar. - -2006-02-14 Jan Dj,Ad(Brv - - * xterm.c (x_x_to_emacs_modifiers): Make non-static. - - * xterm.h: Declare x_x_to_emacs_modifiers. - - * gtkutil.c (xg_tool_bar_button_cb): New function. - (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to - store modifiers in event. - (update_frame_tool_bar): Connect button-release-event to - xg_tool_bar_button_cb. - -2006-02-13 Richard M. Stallman - - * .gdbinit (xwindow): Update the code to show the window box. - -2006-02-13 Jan Dj,Ad(Brv - - * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame). - -2006-02-12 Richard M. Stallman - - * cmds.c (internal_self_insert): Handle weird auto-fill-function. - -2006-02-11 Eli Zaretskii - - * keyboard.c (Venable_disabled_menus_and_buttons): New variable. - (syms_of_keyboard): DEVFAR_LISP and initialize it. - (parse_tool_bar_item, parse_menu_item): If that variable is - non-nil, don't disable menu items and tool-bar buttons. - -2006-02-11 Juanma Barranquero - - * doc.c (Fsubstitute_command_keys): Doc fix. - -2006-02-10 Thien-Thi Nguyen - - * data.c (Findirect_function): Rewrite docstring. - Fix omission bug: Declare new arg NOERROR. - -2006-02-10 YAMAMOTO Mitsuharu - - * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor - if window_desc is not set yet. - (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07 - and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame - parameter `visibility' is `icon'. - (Fx_create_frame, x_create_tip_frame): Use "fontset-standard" - instead of "fontset-mac". - (Fx_focus_frame): New defun. - (syms_of_macfns): Defsubr it. - - * macterm.c (mac_define_frame_cursor): Don't change pointer shape - for unfocused frame. - (x_raise_frame): Call BringToFront instead of SelectWindow. - (x_lower_frame): Use NULL instead of nil. - (x_make_frame_visible): Don't call SelectWindow. - (XTread_socket): Increment handling_signal at the start, decrement - it at the end. - [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use - CFPreferencesGetAppIntegerValue instead of Fmac_get_preference. - -2006-02-10 Kim F. Storm - - * data.c (Findirect_function): Add NOERROR arg. All callers changed - to pass Qnil for NOERROR. - - * keymap.c (current_minor_maps_error): Remove. - (current_minor_maps): Pass Qt for NOERROR to Findirect_function - instead of using internal_condition_case_1+current_minor_maps_error. - -2006-02-09 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Must note mouse movement even for nil - frames for GTK, in that case it is the tool bar. This is so that - highlighted text get reset properly. - -2006-02-09 Juanma Barranquero - - * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes. - -2006-02-08 Jan Dj,Ad(Brv - - * window.c (adjust_window_trailing_edge): Check that shrinking - does not set a window to size zero or less. - -2006-02-08 Miles Bader - - * editfns.c (Fconstrain_to_field): Use Fget_char_property instead - of Fget_text_property (other field functions work with overlays as - well as text-properties). - -2006-02-07 Kenichi Handa - - * dispextern.h (unibyte_display_via_language_environment): Extern it. - - * xterm.h (unibyte_display_via_language_environment): - * w32term.h (unibyte_display_via_language_environment): - * macterm.h (unibyte_display_via_language_environment): Delete extern. - -2006-02-07 Kenichi Handa - - * term.c (append_glyph): Refer to it->char_to_display instead of it->c. - (produce_glyphs): Set the character to print in - it->char_to_display. Handle unibyte-display-via-language-environment. - (produce_stretch_glyph): Set character to print in it->char_to_display. - -2006-02-06 Kenichi Handa - - * lread.c (openp): Initialize encoded_fn before GCPRO it. - -2006-02-05 Ken Raeburn - - * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup. - - * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]: - Cast bitfield value to EMACS_INT, to suppress gcc warning. - - * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before - defining. - -2006-02-03 Kim F. Storm - - * xdisp.c: Cache last merged escape glyph face. - (last_escape_glyph_frame, last_escape_glyph_face_id) - (last_escape_glyph_merged_face_id): New variables. - (get_next_display_element): Use/update them. - (redisplay_internal): Reset them before redisplay. - - * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix. - Only recheck faces after displaying ellipsis. - -2006-02-02 Kenichi Handa - - * coding.c (decode_composition_emacs_mule): Fix handling of - incorrect format data. - -2006-01-31 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Use new tool bar function - gtk_toolbar_insert() so we can have tool bars of different sizes. - -2006-01-30 Luc Teirlinck - - * data.c (Flistp): Doc fix. - -2006-01-30 Juanma Barranquero - - * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll): - Fix typos in docstrings. - -2006-01-28 Luc Teirlinck - - * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings. - -2006-01-27 Chong Yidong - - * alloc.c (make_interval, allocate_string) - (allocate_string_data, make_float, Fcons, allocate_vectorlike) - (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing - global variables. - -2006-01-27 Eli Zaretskii - - * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use - the MSDOS definition. - -2006-01-26 Richard M. Stallman - - * alloc.c (check_pure_size): Make overflow message an "error message". - - * keymap.c (Fmap_keymap): Doc fix. - - * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist - unless they were cleared out. - - * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there. - -2006-01-26 L$,1 q(Brentey K,Aa(Broly - - * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries. - (find_field): Set before_field to after_field when pos is at BEGV. - (Fline_beginning_position, Fline_end_position): - Clarify confusing doc string. - - * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc - string. - -2006-01-26 Kenichi Handa - - * callproc.c (Fcall_process): GCPRO error_file. Encode infile, - current_dir, and error_file. On reporting an error, decode them - back. - -2006-01-24 Stefan Monnier - - * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well. - (re_match_2_internal) : - Don't check for quit, since any loop will go through fail or jump. - -2006-01-24 Chong Yidong - - * alloc.c (allocate_string_data): Update next_free immediately, to - reduce risk of memory clobberage. - -2006-01-24 L$,1 q(Brentey K,Aa(Broly - - * xdisp.c (handle_invisible_prop): Set it->position to fix cursor - display when point moves across an ellipsis. If there are - adjacent invisible texts, don't lose the second one's ellipsis. - (x_produce_glyphs): Doc fix. - -2006-01-23 Stefan Monnier - - * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup. - -2006-01-23 Kim F. Storm - - * xdisp.c (handle_single_display_spec): Fix handling of space - property on char from string: set *position rather than - it->current.pos. - (produce_stretch_glyph): Reduce width of stretch glyphs so they - don't get wider than the window (unless truncate-lines is on). - -2006-01-22 Stefan Monnier - - * xterm.c: Avoid allocating Lisp data from a signal handler. - (x_error_message): New var to replace x_error_message_string. - (x_error_catcher, x_catch_errors, x_catch_errors_unwind) - (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler) - (syms_of_xterm): Use it instead of x_error_message_string. - - * alloc.c (lisp_align_free): Add an assertion. - (make_interval, allocate_string, make_float, Fcons, Fmake_symbol) - (allocate_misc): If ENABLE_CHECKING is on, check we're not called from - a signal handler. - -2006-01-21 Luc Teirlinck - - * dired.c (syms_of_dired) : Doc fix. - -2006-01-21 Romain Francoise - - * xdisp.c (get_window_cursor_type): Fix last change. - Update copyright year. - -2006-01-20 Eli Zaretskii - - * lread.c (Fload): Don't leak the file descriptor returned by - openp if we are going to signal an error. - - * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it - directly to _close. - (sys_dup): Protect against new_fd larger than fd_info[] can handle. - (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly - to _read. - (sys_write): If FD is outside [0..MAXDESC) limits, pass it - directly to _write. - - * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer - if it is NULL. - -2006-01-20 Kenichi Handa - - * puresize.h (BASE_PURESIZE): Increment to 1190000. - -2006-01-19 Chong Yidong - - * xdisp.c (get_window_cursor_type): Use cursor type specified by - the selected buffer for the echo area too. - -2006-01-19 Richard M. Stallman - - * keymap.c (Fmap_keymap): Doc fix. - - * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions. - - * keyboard.c (echo_char): Don't omit the space between first two - echoed chars. - - * minibuf.c (read_minibuf): Fix previous change. - -2006-01-19 Kenichi Handa - - * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF. - -2006-01-17 Richard M. Stallman - - * frame.c (x_frame_get_and_record_arg): Don't record Qunbound - value in f->param_alist. - -2006-01-15 Andreas Schwab - - * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP. - -2006-01-13 Richard M. Stallman - - * Makefile.in: Define new macro WINDOW_SUPPORT. - (lisp): Use it. - (SOME_MACHINE_LISP): Add conditionally loaded files. - -2006-01-12 YAMAMOTO Mitsuharu - - * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr) - [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering. - (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in - decomposed form. - - * process.c [HAVE_INTTYPES_H]: Include inttypes.h. - (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE). - (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK - macro. Also try member ifr_addr when getting netmask. - -2006-01-10 Stefan Monnier - - * fileio.c (Fexpand_file_name): Remove redundant tests. - Fix elimination of // so that it doesn't prevent elimination of an - immediately following /. or /.. - -2006-01-09 Jan Dj,Ad(Brv - - * gtkutil.c (xg_toggle_notify_cb): New function. - (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to - xg_toggle_notify_cb. - (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when - parameter value changes so the toggle button gets updated. - -2006-01-06 Nick Roberts - - * .gdbinit: Fix typo. - -2006-01-05 Eli Zaretskii - - * .gdbinit: Fix last change. - -2006-01-05 Kim F. Storm - - * process.c (Fmake_network_process): Use AF_INET instead of - AF_UNSPEC when AF_INET6 is not defined. - -2006-01-05 YAMAMOTO Mitsuharu - - * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc): - Don't check that the other type is known file-related one. - - * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor, - gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac - OS X 10.4 and later. - -2006-01-04 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file, - let GTK do all image processing. Importing Emacs own pixmaps to GTK - looks bad for inactive tool bar items with some Gnome themes. - -2006-01-04 Eli Zaretskii - - * .gdbinit: Avoid a warning message when x_error_quitter is not - compiled in. - - * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support - for w32. - -2006-01-04 Kim F. Storm - - * process.c: Add IPv6 support. - (Qipv4, Qipv6): New vars. - (syms_of_process): Intern and staticpro them. - (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address - with or without port number. Handle 4 element vector as IPv4 address - without port number. - (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size) - (conv_lisp_to_sockaddr): Handle IPv6 addresses. - (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly - request that address family only. :family nil or omitted means to - determine address family from the specified :host and :service. - (ifflag_table): Add missing OpenBSD IFF_ flags. - (server_accept_connection): Handle IPv6 addresses. - (init_process): Add (:family ipv4) and (:family ipv6) sub-features. - - * .gdbinit: Undo last change. Instead, look at Vsystem_type to - determine which breakpoints to set. - -2006-01-03 Stefan Monnier - - * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup. - - * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c). - -2006-01-03 Romain Francoise - - * emacs.c (main): Update copyright year. - -2006-01-03 Ken Raeburn - - * callproc.c (delete_temp_file): Bind file-name-handler-alist to - nil for the call to internal_delete_file. - -2006-01-01 Ken Raeburn - - * callproc.c (Fcall_process_region): Bind file-name-handler-alist - to nil for the call to Fwrite_region. - -2005-12-31 Richard M. Stallman - - * minibuf.c (read_minibuf): Clear out all other minibuffer windows. - -2005-12-31 Eli Zaretskii - - * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake. - -2005-12-30 Luc Teirlinck - - * textprop.c (set_text_properties): Reword description of return value. - Return Qnil if caller wants to remove all text properties from a - string and the string already has no intervals. - -2005-12-30 Stefan Monnier - - * term.c (visible_cursor): New boolean var. - (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on - visible_cursor. - (syms_of_term): Export the new var as "visible-cursor". - -2005-12-30 Eli Zaretskii - - * .gdbinit: Tell users not to worry about GDB warnings that some - functions do not exist in the binary. - -2005-12-30 Andreas Schwab - - * process.c (Fnetwork_interface_info): Correctly terminate the - loop over ifflag_table. - -2005-12-29 Richard M. Stallman - - * lread.c (readevalloop): Test for reading a whole buffer - before actually reading anything. Handle all cases, including - START = END = nil and an already-narrowed buffer. - Convert END to a marker if it is a number. - - * keymap.c (describe_map): Put sparse map elements into an array, - sort them, then output a sequence of identical bindings on one line. - (struct describe_map_elt): New data type. - (describe_map_compare): New function. - -2005-12-28 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_with_chooser): Change message shown - in file chooser. - -2005-12-27 Richard M. Stallman - - * lread.c (readevalloop): Set PT and ZV in the proper buffer, - not the current one. - - * minibuf.c (Fminibuffer_message): Doc fix. - (read_minibuf): Set current_buffer->enable_multibyte_characters sooner. - - * eval.c (do_autoload): Ignore elements of Vautoload_queue - where car is not symbol. - -2005-12-27 Kenichi Handa - - * charset.c (lisp_string_width): Check multibyteness of STRING. - -2005-12-27 Jan Dj,Ad(Brv - - * xfns.c (x_show_hidden_files): New variable. - (syms_of_xfns): Defvar it. - - * gtkutil.c (xg_toggle_visibility_cb): New function. - (xg_get_file_with_chooser): Add toggle hidden files and a message - to the new file chooser dialog. Show hidden files if - x_show_hidden_files is non-zero. - -2005-12-26 Richard M. Stallman - - * keyboard.h: Undo previous change. - - * Makefile.in (undo.o): Undo previous change. - - * undo.c: Undo previous change. - -2005-12-26 Luc Teirlinck - - * keyboard.h: extern last_point_position_window. - - * undo.c: include keyboard.h. - - * Makefile.in (undo.o): Depend on keyboard.h. - -2005-12-26 Richard M. Stallman - - * commands.h (last_point_position_window): Declare. - - * undo.c: Depend on window.h. - (record_point): Save old point from the correct window. - - * keyboard.c (last_point_position_window): New variable. - (command_loop_1): Set last_point_position_window. - (syms_of_keyboard): Init it. - - * Makefile.in (undo.o): Depend on window.h. - -2005-12-25 Richard M. Stallman - - * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue - to undo a `provide'. - - * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue. - -2005-12-25 Giorgos Keramidas - - * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD): - define for FreeBSD on this platform. - -2005-12-24 YAMAMOTO Mitsuharu - - * macterm.h (TYPE_FILE_NAME): New define. - (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs. - - * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname): - Add prototypes. Make static. - (mac_aedesc_to_lisp): Initialize err to noErr. - (mac_coerce_file_name_ptr, mac_coerce_file_name_desc) - (init_coercion_handler): New functions. - (Fmac_coerce_ae_data): Use coercion of Apple event data for - translation from/to file names. - - * macterm.c: Don't include sys/param.h. - (init_coercion_handler): Add extern. - [MAC_OS8] (main): Call init_coercion_handler. - (mac_initialize) [MAC_OSX]: Likewise. - [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of - Apple event data for translation from/to file names. - - * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise. - - * image.c [MAC_OS] (find_image_fsspec): Likewise. - -2005-12-23 Martin Rudalics - - * insdel.c (insert, insert_and_inherit, insert_before_markers) - (insert_before_markers_and_inherit): Make sure FROM is correct - when `after-change-functions' are called. - -2005-12-23 Jan Dj,Ad(Brv - - * xfns.c (Fx_uses_old_gtk_dialog): New function. - - * gtkutil.c (xg_uses_old_file_dialog): New function. - (xg_get_file_name): Use xg_uses_old_file_dialog. - - * gtkutil.h: Declare xg_uses_old_file_dialog. - -2005-12-22 Richard M. Stallman - - * xmenu.c (xmenu_show): Call inhibit_garbage_collection. - -2005-12-22 YAMAMOTO Mitsuharu - - * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak. - - * macgui.h (XCharStruct): Remove member `valid_p'. - (STORE_XCHARSTRUCT): Don't set member `valid_p'. - (XCharStructRow): New typedef. - (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID): - New macros. - (struct MacFontStruct): Add member `bounds'. Remove member - `per_char'. All uses for QuichDraw Text fonts are changed to - `bounds.per_char'. ATSUI font bounds are represented as an array - `bounds.rows' of XCharStructRow's, each of which consists of a - bitmap of valid entries and an array of char bounds. - - * macterm.c (mac_per_char_metric): Add prototype. - (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype. - (mac_query_char_extents): New function. - (x_per_char_metric): Use it. - (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations. - [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): - Use mac_per_char_metric instead of x_per_char_metric. - (mac_text_extents_16): New function. - (mac_compute_glyph_string_overhangs): Use it. - (mac_unload_font): Free member `bounds' in struct MacFontStruct. - -2005-12-21 Stefan Monnier - - * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR. - (Fminibuffer_completion_help): Remove duplicates before display. - -2005-12-21 L$,1 q(Brentey K,Aa(Broly - - * print.c (print_preprocess): Don't lose print_depth levels while - iterating. - -2005-12-21 YAMAMOTO Mitsuharu - - * macmenu.c (Qmac_apple_event): Add extern. - (set_frame_menubar, mac_menu_show keymp_panes) - (single_keymap_panes, list_of_panes, list_of_item) - (single_menu_item): Add argument types to prototypes. - (mac_dialog_show) [HAVE_DIALOGS]: Likewise. - (struct skp): New struct (from xmenu.c). - (single_keymap_panes, single_menu_item, list_of_panes) - (list_of_item): Sync with xmenu.c. - (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from - POSITION if it is mac-apple-event event. - (menubar_selection_callback): Don't use menu_command_in_progress. - (set_frame_menubar): First parse all submenus, then make - widget_value trees from them. Don't allocate any widget_value - objects until we are done with the parsing. - (parse_single_submenu, digest_single_submenu): New functions. - (single_submenu): Function deleted, replaced by those two. - (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't create - or dispose of EventHandlerUPP. Install hander to all submenus. - (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING - instead of ENCODE_SYSTEM. - (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for - integer values. - [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c). - (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to - format menu item string. Don't use NULL for integer value. - - * macterm.h (struct mac_output): Remove unused member - menu_command_in_progress. - -2005-12-20 Juri Linkov - - * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if - position is non-nil, else set it to nil. - - * macmenu.c (Fx_popup_menu): Add `else' to set - Vmenu_updating_frame to nil only if position is nil. - - * w32menu.c (Fx_popup_menu): Add `else' to set - Vmenu_updating_frame to nil only if position is nil. - -2005-12-19 YAMAMOTO Mitsuharu - - * keyboard.c (make_lispy_event): Drag-and-drop items are now - stored in member `args' of struct input_event. - - * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT. - - * xselect.c (x_handle_dnd_message): Drag-and-drop items are now - stored in member `args' of struct input_event. - - * w32term.c (construct_drag_n_drop): Likewise. - - * macterm.c (mac_do_receive_drag): Likewise. - (x_use_underline_position_properties): Undo 2005-07-13 change. - (syms_of_macterm) : Likewise. - (mac_use_core_graphics, mac_wheel_button_is_mouse_2) - (mac_pass_command_to_system, mac_pass_control_to_system): - New boolean variables renamed from Lisp_Object ones - Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2, - Vmac_pass_command_to_system, and Vmac_pass_control_to_system. - All uses changed. - (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs. - Make them user options. - (mac_handle_command_event, mac_store_services_event): - Call create_apple_event_from_event_ref without 5th argument. - (backtranslate_modified_keycode): Mask off modifier keys that are - mapped to some Emacs modifiers before passing it to KeyTranslate. - (syms_of_macterm): Make variables `mac-emulate-three-button-mouse', - `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options. - Fix docstrings of `mac-*-modifier'. - - * mac.c (create_apple_event_from_event_ref): Remove arg `types'. - (do_applescript): Change argument types to Lisp_Object. - All uses changed. - - * macterm.h (create_apple_event_from_event_ref): Remove 5th - argument from extern. - -2005-12-18 Dan Nicolaescu - - * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine - the answer, return `lambda', not nil. - -2005-12-17 Eli Zaretskii - - * makefile.w32-in (bootstrap-temacs): Warn that parts of commands - enclosed in $(ARGQUOTE)s should not be split between two lines, as - that will break with GNU Make >3.80, when sh.exe is used and - arg quoting is with '..'. - -2005-12-17 Chong Yidong - - * print.c (print_preprocess): Just signal an error if print_depth - is exceeded. - -2005-12-17 Eli Zaretskii - - * .gdbinit: Set a breakpoint on w32_abort. - -2005-12-16 Juri Linkov - - * minibuf.c (Fminibuffer_completion_contents): New Lisp function - created from minibuffer_completion_contents. - (minibuffer_completion_contents): Remove. - (do_completion, Fminibuffer_complete_word) - (Fminibuffer_completion_help): Replace minibuffer_completion_contents - with Fminibuffer_completion_contents. - (syms_of_minibuf): Add Sminibuffer_completion_contents. - (Fdisplay_completion_list): Doc fix. - (display_completion_list_1): Use `nil' for second arg of - `Fdisplay_completion_list'. - -2005-12-14 Jan Dj,Ad(Brv - - * xfns.c (compute_tip_xy): Handle negative dx and dy. - - * w32fns.c (compute_tip_xy): Ditto. - - * macfns.c (compute_tip_xy): Ditto. - -2005-12-14 Chong Yidong - - * print.c (print_preprocess): Go to a deeper print_depth to avoid - print_object loop. - -2005-12-14 Kyotaro HORIGUCHI (tiny change) - - * coding.c (code_convert_region_unwind): GCPRO arg. - -2005-12-12 Jan Dj,Ad(Brv - - * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x, - i.e. dy is offset from top of frame instead of bottom. - - * macfns.c (compute_tip_xy): Ditto. - - * w32fns.c (compute_tip_xy): Ditto. - - * gtkutil.c (SSDATA): New macro to remove compiler warnings. - (xg_get_image_for_pixmap, xg_create_frame_widgets) - (xg_get_file_with_chooser): Use SSDATA instead of SDATA. - - * xmenu.c (menubar_selection_callback): Do nothing if the callback - is for an unselected radio menu item. - -2005-12-11 Richard M. Stallman - - * xdisp.c (syms_of_xdisp) : Doc fix. - - * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once. - - * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE. - (Flookup_key): Doc fix. - (syms_of_keymap) : Doc fix. - - * fns.c (Frequire): Treat evaluating from a source file - like loading the file. - - * floatfns.c (Flog): Doc fix. - - * fileio.c (Finsert_file_contents): Set Vdeactivate_mark - when we change the buffer. - -2005-12-11 Juri Linkov - - * minibuf.c (display_completion_list_1): - Call `minibuffer_completion_contents' instead of using `nil' as - second arg of `Fdisplay_completion_list'. - (keys_of_minibuf): Unbind SPC in - Vminibuffer_local_filename_completion_map (see also related - change on 2005-12-06). - -2005-12-11 YAMAMOTO Mitsuharu - - * emacs.c (main) [MAC_OS8]: Undo previous change. - - * macselect.c (syms_of_macselect) : - Initialize to nil. Keymap is now created in lisp/term/mac-win.el. - -2005-12-10 YAMAMOTO Mitsuharu - - * Makefile.in (macselect.o): Depend on keymap.h. - - * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before - syms_of_macselect. - - * image.c (init_image) [MAC_OS]: Don't call EnterMovies. - [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies. - - * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable. - (syms_of_keyboard) [MAC_OS]: Initialize it. - (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT. - - * mac.c (Qundecoded_file_name): New variable. - (syms_of_mac): Initialize it. - (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions. - [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun. - (Fmac_coerce_ae_data): New defun. - (syms_of_mac): Defsubr it. - - * macselect.c: Include keymap.h. - (mac_ready_for_apple_events): New variable. - (Vmac_apple_event_map, Qmac_apple_event_class) - (Qmac_apple_event_id): New variables. - (syms_of_macselect): Initialize them. - (Qundefined, mac_store_apple_event): Add externs. - (struct apple_event_binding): New struct. - (find_event_binding_fun, find_event_binding) - (mac_find_apple_event_spec, defer_apple_events) - (mac_handle_apple_event, init_apple_event_handler) - (copy_scrap_flavor_data): New functions. - (Fmac_process_deferred_apple_events): New defun. - (syms_of_macselect): Defsubr it. - (mac_store_services_event): Fix extern. - (mac_handle_service_event): Don't allocate Lisp objects during - asynchronous input processing. Use mac_store_services_event - instead of mac_store_application_menu_event. - - * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout) - (Qpreferences): Remove variables. - (syms_of_macterm): Don't initialize them. - (Qhicommand) [USE_CARBON_EVENTS]: New variable. - (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it. - (init_required_apple_events, do_ae_open_application) - (do_ae_print_documents, do_ae_open_documents) - (do_ae_quit_application): Remove functions and prototypes. - (mac_ready_for_apple_events, Qundefined, init_apple_event_handler) - (mac_find_apple_event_spec): Add externs. - (mac_store_application_menu_event): Remove function. - (mac_store_apple_event, mac_make_lispy_event_code): New functions. - (mac_handle_command_event): Create Apple event from Carbon event. - Use mac_store_apple_event instead of mac_store_application_menu_event. - [MAC_OSX] (mac_store_services_event): Likewise. - (struct SelectionRange, SelectionRange): Remove struct and typedef. - [MAC_OS8] (main): Call init_apple_event_handler instead of - init_required_apple_events. - (mac_initialize) [MAC_OSX]: Likewise. - [!USE_CARBON_EVENTS] (mac_wait_next_event): - Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop. - - * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp): - Add externs. - (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise. - (Fmac_get_preference): Add EXFUN. - - * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT - event. - -2005-12-09 Richard M. Stallman - - * xfns.c (Fx_create_frame): Reinstate previous change. - -2005-12-09 Eli Zaretskii - - * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching - GDB to the abort dialog. - -2005-12-09 Kyotaro HORIGUCHI (tiny change) - - * indent.c (Fvertical_motion): Force move if starting on - stretch glyph. - -2005-12-08 Richard M. Stallman - - * lread.c (read_escape) <\s>: Don't treat strings specially. - - * xfns.c (Fx_create_frame): Comment out previous change. - -2005-12-07 L$,1 q(Brentey K,Aa(Broly - - * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame, - when needed. - -2005-12-06 Stefan Monnier - - * minibuf.c (keys_of_minibuf): Just unbind SPC in - Vminibuffer_local_filename_completion_map rather than forcing it - explicitly to the same binding as the global map. - -2005-12-06 Ken Raeburn - - * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args. - * bytecode.c (Fbyte_code): Likewise. - * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise. - * minibuf.c (Fminibuffer_complete_and_exit): Likewise. - * undo.c (truncate_undo_list): Likewise. - -2005-12-05 Richard M. Stallman - - * window.c (enlarge_window): Eliminate arg preserve_before. - Assume it is 0. All callers changed. - (Fenlarge_window, Fshrink_window): Likewise. - -2005-12-02 Eli Zaretskii - - * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't - fit below. - -2005-12-02 Jan Dj,Ad(Brv - - * xterm.h: Add prototype for xg_set_icon_from_xpm_data. - - * xfns.c (x_real_positions): int ign => unsigned int. - (xg_set_icon_from_xpm_data): Remove unused variable err. - (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast - to remove compiler warning. - (compute_tip_xy): Put tip above pointer if it doesn't fit below. - -2005-12-02 David Reitter - - * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is - non-nil, use the new keymaps Vminibuffer_local_filename_completion_map - and Vminibuffer_local_must_match_filename_map keymaps. - (keys_of_minibuf): Bind SPC in the new file-name completion keymaps. - - * keymap.c (Vminibuffer_local_filename_completion_map) - (Vminibuffer_local_must_match_filename_map): New variables. - (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their - parent to be Vminibuffer_local_completion_map and - Vminibuffer_local_must_match_map, respectively. - - * commands.h (Vminibuffer_local_filename_completion_map) - (Vminibuffer_local_must_match_filename_map): Declare the new keymaps. - -2005-12-01 Stefan Monnier - - * window.c (Fset_window_configuration): Don't accidentally copy the - window-point of one window to another. - -2005-11-30 L$,1 q(Brentey K,Aa(Broly - - * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer. - -2005-11-30 Kim F. Storm - - * alloc.c: Include fcntl.h. Define O_WRONLY if not defined. - (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by - passing it to `emacs_write'. - -2005-11-29 Ari Roponen (tiny change) - - * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'. - -2005-11-27 Richard M. Stallman - - * window.c (adjust_window_trailing_edge): New function. - (Fadjust_window_trailing_edge): New function. - (syms_of_window): Defsubr it. - (window_deletion_count): New variable. - (delete_window): Update window_deletion_count. - -2005-11-26 Eli Zaretskii - - * minibuf.c (syms_of_minibuf): Mention the extension of - `completion-auto-help's meaning by complete.el. - -2005-11-26 Henrik Enberg - - * xfaces.c (Finternal_set_lisp_face_attribute_from_resource): - Handle :inherit property as a lisp expression. - -2005-11-24 YAMAMOTO Mitsuharu - - * macterm.c (Qcontrol): Rename from Qctrl. All uses changed. - (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper, - Qsuper, and Qmodifier_value. - (Vmac_control_modifier, Vmac_option_modifier) - (Vmac_command_modifier, Vmac_function_modifier) - (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2) - (Vmac_pass_command_to_system, Vmac_pass_control_to_system) - (Vmac_charset_info_alist): Doc fixes. - -2005-11-23 YAMAMOTO Mitsuharu - - * emacs.c (main) [MAC_OSX]: Change working directory to home - directory if `-psn_*' option is specified. - - * mac.c (DECODE_UTF_8): Remove macro. - [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function - created from cfstring_to_lisp. - [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it. - (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise. - - * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]: - Add prototype. - -2005-11-21 Ken Raeburn - - * keymap.c (shadow_lookup): Use make_number to pass a number to - Fsubstring. - -2005-11-21 Juri Linkov - - * puresize.h (BASE_PURESIZE): Increment to 1180000. - -2005-11-20 Chong Yidong - - * xfaces.c (Finternal_set_lisp_face_attribute): - Use :ignore-defface for new frame defaults when `unspecified' is - supplied. - (Finternal_get_lisp_face_attribute): Hide :ignore-defface. - (merge_face_vectors): Don't do :ignore-defface overwriting here. - (Finternal_merge_in_global_face): Do it here. - -2005-11-20 Juri Linkov - - * charset.c (invalid_character): Use Lisp-readable syntax - for octal and hex. Reorder decimal, octal and hex values. - -2005-11-20 Nick Roberts - - * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that - this type is recognised when debugging. - -2005-11-19 Andreas Schwab - - * .gdbinit (nextcons, xcdr, xfloat): Update for changes in - Lisp_Cons and Lisp_Float. - -2005-11-19 YAMAMOTO Mitsuharu - - * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold): - New variable. - [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun. - (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it. - [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if - font size is smaller than or equal to cg_text_anti_aliasing_threshold. - -2005-11-17 Chong Yidong - - * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail. - - * xfaces.c (Qignore_defface): New variable. - (syms_of_xfaces): Provide `:ignore-defface'. - (IGNORE_DEFFACE_P): New macro. - (check_lface_attrs, lface_fully_specified_p) - (Finternal_set_lisp_face_attribute) - (Fface_attribute_relative_p, Fmerge_face_attribute): - Handle Qignore_defface as a possible value. - (merge_face_vectors): The merged face is `unspecified' if the - mergee specifies `:ignore-defface'. - -2005-11-16 Stefan Monnier - - * lread.c (readevalloop): Add missing GCPROs. - -2005-11-16 Chong Yidong - - * xfns.c (xg_set_icon_from_xpm_data): New function. - - * gnu.h (gnu_xpm_bits): Rename from gnu_bits. - (gnu_xbm_bits): Rename from gnu_bits (xbm version). - - * xterm.c (x_bitmap_icon): Use the xpm if available. - - * image.c (x_create_bitmap_from_xpm_data): New function. - (x_create_bitmap_from_xpm_data): Initialize XpmAttributes. - -2005-11-15 Luc Teirlinck - - * Makefile.in (lisp, shortlisp): Add rfn-eshadow. - -2005-11-16 Nick Roberts - - * .gdbinit: Make SIGTSTP work like SIGINT normally does. - -2005-11-15 Andreas Schwab - - * lisp.h (struct Lisp_Cons): Make cdr a union. - (XCDR_AS_LVALUE): Adjust. - (struct Lisp_Float): Make data a union. - (XFLOAT_DATA): Adjust. - - * alloc.c (free_float): Make free list chaining aliasing-safe. - (make_float): Likewise. - (free_cons): Likewise. - (Fcons): Likewise. - (check_cons_list): Likewise. - (Fmake_symbol): Likewise. - (allocate_misc): Likewise. - (free_misc): Likewise. - (gc_sweep): Likewise. - -2005-11-15 YAMAMOTO Mitsuharu - - * mac.c (HASHKEY_QUERY_CACHE): New define. - (xrm_create_database, xrm_q_put_resource): Empty query cache. - (xrm_get_resource): Use query cache. - - * image.c (init_image) [MAC_OS]: Don't call EnterMovies if - inhibit_window_system is set. - -2005-11-13 YAMAMOTO Mitsuharu - - * macgui.h (USE_CG_TEXT_DRAWING): New define. - (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font - and cg_glyphs. - - * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function. - (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it. - (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and - cg_glyphs in struct MacFontStruct if synthesized bold or italic is - not used and font substitution never occurs for ASCII and Latin-1 - characters. - (XLoadQueryFont): Maximum and minimum metrics are now those among - ASCII characters. - (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style - height adjustments for Courier, Helvetica, and Times. - - * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'. - -2005-11-11 David Reitter - - * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey, - macMetaKey, macAltKey. Introduce Qctrl, Qmeta, - Vmac_control_modifier / mac-control-modifier, - Vmac_option_modifier / mac-option-modifier, - Vmac_command_modifier / mac-command-modifier. - (mac_to_emacs_modifiers): Use the new style modifier - variables. Return UInt32 (modifiers are longs now.) - (backtranslate_modified_keycode): New function (refactoring). - (XTread_socket): Use new modifier variables and refactored function. - (mac_determine_quit_char_modifiers): Remove macMetaKey (there is - no dedicated meta key. Not in use anyway.) - (convert_fn_keycode): Map Fn-keys to their original keycode - using a table (english keyboard only). - -2005-11-11 Kim F. Storm - - * .gdbinit (pitx): Fix output format if n_overlay_strings > 0. - Add post hook to "backtrace" to always dump lisp call stack to - increase chance of people sending it to us when reporting bugs. - - * doc.c (Fsubstitute_command_keys): Doc fix. - - * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p. - - * xdisp.c (handle_stop): Skip overlay string handling if - ignore_overlay_strings_at_pos_p is set. - (set_iterator_to_next): At end of display vector, set - ignore_overlay_strings_at_pos_p if dpvec came from an overlay - string, so we skip those overlay strings at current pos. - -2005-11-10 Lars Hansen - - * fileio.c (file-regular-p): Doc fix. - -2005-11-10 Kim F. Storm - - * alloc.c (valid_lisp_object_p): New function to validate that - an object is really a valid Lisp_Object. - - * lisp.h (valid_lisp_object_p): Add prototype. - - * print.c (safe_debug_print): New function to be called from gdb - to print Lisp objects; use valid_lisp_object_p to avoid crashing - if user tries to print something which is not a Lisp object. - - * .gdbinit (pp, pp1): Use safe_debug_print. - (pv, pv1): New commands to print value of a lisp variable. - -2005-11-10 Nick Roberts - - * .gdbinit (pp1): New user-defined function. - -2005-11-09 YAMAMOTO Mitsuharu - - * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak. - - * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale - related variables for dumped executable. - - * unexmacosx.c (unexec_write_zero): New function. - (copy_data_segment): Clear uninitialized local variables in - statically linked libraries. - - * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common. - -2005-11-09 Juri Linkov - - * keymap.c (shadow_lookup): If Flookup_key returns a number, - call it again with a sub-key-sequence, and if its return value - is non-nil (sub-key is bound), return nil. - -2005-11-08 Kim F. Storm - - * process.c (Fsignal_process): Recognize signal names with and - without SIG prefix, e.g. SIGHUP and HUP. - - * search.c (search_buffer): No need to initialize base_pat. - -2005-11-04 Stefan Monnier - - * window.c (Fget_lru_window, Fget_largest_window, window_loop): - Don't abuse the `mini' arg. Use the `obj' arg instead. - -2005-11-04 Kim F. Storm - - * xdisp.c (show_mouse_face): Clear mouse face to eol. - -2005-11-03 Dan Nicolaescu - - * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc, - font-lock.elc and jit-lock.elc. - -2005-11-03 Richard M. Stallman - - * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL. - (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG. - (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG. - - * sheap.c (STATIC_HEAP_SIZE): Increment both definitions. - - * alloc.c (refill_memory_reserve): Move decl out of conditionals. - -2005-11-03 Stefan Monnier - - * window.c (Fdisplay_buffer): Fix last change to not use - a dedicated window. - -2005-11-01 Kim F. Storm - - * fringe.c (update_window_fringes): Undo 2005-10-27 change. - Instead, rotate the bottom angle bitmap 180 degrees to indicate - that the bottom row does not end in a newline. - -2005-11-01 Andreas Schwab - - * unexelf.c (unexec): Handle .plt section in BSS segment. - -2005-11-01 Stefan Monnier - - * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM). - - * window.c (window_loop): For LRU and LARGEST, let the `mini' argument - determine whether to consider dedicated windows as well. - (Fget_lru_window, Fget_largest_window): Add `dedicated' argument. - (Fdisplay_buffer): Do consider dedicated windows in those cases where - we will split the window rather than reuse it. - Don't try to use windows on other displays. - -2005-10-31 Dan Nicolaescu - - * puresize.h (BASE_PURESIZE): Increment to 1170000. - -2005-10-31 Romain Francoise - - * macfns.c: Update copyright year. - * m/gould.h: Likewise. - -2005-10-30 Kim F. Storm - - * xdisp.c (display_line): Restore it->current_x and call - extend_face_to_end_of_line when last glyph doesn't fit on line. - (set_glyph_string_background_width): Remove specific tests here - to see if face background should extend to end of line. Simplify. - -2005-10-30 Richard M. Stallman - - * alloc.c (BYTES_USED): Use uordblks, not arena. - (bytes_used_when_reconsidered): New variable. - (emacs_blocked_free): Set that. - -2005-10-29 Chong Yidong - - * alloc.c (emacs_blocked_free): Fix typo. - -2005-10-29 Richard M. Stallman - - * data.c (Fmake_variable_frame_local): Doc fix. - - * xdisp.c (handle_fontified_prop): Do nothing if memory full. - (format_mode_line_unwind_data): New arg SAVE_PROPTRANS - controls whether to save and restore mode_line_proptrans_alist. - Callers changed. - (unwind_format_mode_line): Work with that feature. - (redisplay_internal): Don't call prepare_menu_bars if memory full. - (move_elt_to_front): New function. - (display_mode_element): Use move_elt_to_front. - Don't bother munging text props on a null string. - Delete obsolete elts from mode_line_proptrans_alist. - (decode_mode_spec): Test Vmemory_full, not spare_memory. - (Fformat_mode_line): Clear mode_line_proptrans_alist after saving. - - * lisp.h (memory_full_cons_threshold): Declare. - (internal_lisp_condition_case): Declare. - - * alloc.c (syms_of_alloc) : Doc fix. - (Fmemory_full_p): Function deleted. - (syms_of_alloc): Don't defsubr it. - (memory_full_cons_threshold): New variable. - (spare_memory): Now a vector of 7 elts. - (buffer_memory_full): Don't set Vmemory_full here. - (xfree): Don't try to refill here. - (emacs_blocked_free): Record BYTES_USED in local var. - (memory_full): Now free all the slots in spare_memory. - (refill_memory_reserve): Allocate each slot in spare_memory. - (init_alloc_once): Call refill_memory_reserve. - - * keyboard.c (command_loop_1): Don't set Vmemory_full here. - - * eval.c (internal_lisp_condition_case): New function. - (Fcondition_case): Use internal_lisp_condition_case. - (Feval): Test Vmemory_full and memory_full_cons_threshold. - (Ffuncall): Likewise. - - * bytecode.c (Fbyte_code): Use internal_lisp_condition_case. - -2005-10-29 Stefan Monnier - - * syntax.c (Fparse_partial_sexp): Fix docstring. - -2005-10-28 Romain Francoise - - * puresize.h (BASE_PURESIZE): Increment to 1130000. - -2005-10-28 Richard M. Stallman - - * xfns.c (syms_of_xfns): Provide `x' as feature. - - * xdisp.c (decode_mode_spec): Define %e to indicate memory full. - - * editfns.c (Fformat): Don't include string padding - between info[n].start and info[n].end. - - * alloc.c (spare_memory): No longer static. - (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve. - - * puresize.h (BASE_PURESIZE): Increment to 1120000. - -2005-10-27 Chong Yidong - - * data.c (Fmake_variable_frame_local): Add clarification to docstring. - - * fringe.c (update_window_fringes): Handle case where buffer ends - with a newline. - -2005-10-27 Kenichi Handa - - * coding.h (DECODE_SYSTEM): Fix argument name; name->str. - -2005-10-24 Kenichi Handa - - * charset.h (charset_mule_unicode_0100_24ff) - (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff): - Extern them. - - * charset.c (charset_mule_unicode_0100_24ff) - (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff): - New variables. - (Fsetup_special_charsets): Initialize them. - - * xterm.c (handle_one_xevent): Handle keysyms directly mapped to - supported Unicode characters. - -2005-10-25 Jason Rumney - - * w32fns.c (w32_to_x_font): Avoid forcing font widths. - -2005-10-25 YAMAMOTO Mitsuharu - - * image.c [MAC_OS] (image_load_qt_1): Check image size. - Use GraphicsImportGetImageDescription instead of - GraphicsImportGetNaturalBounds. - [MAC_OSX] (image_load_quartz2d): Check image size. - [MAC_OS] (xpm_load_image): Likewise. - - * macterm.c (last_mouse_glyph_frame): New var. - (note_mouse_movement): Say mouse moved if current frame differs - from last_mouse_glyph_frame, and update last_mouse_glyph_frame. - (XTmouse_position): Set last_mouse_glyph_frame. - (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event. - (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo. - Use EndianU16_BtoN. - (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls. - (x_per_char_metric, XLoadQueryFont) - [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get - glyph bounds. - (mac_to_x_fontname, mac_do_list_fonts) - (mac_initialize_display_info): Change screen resolutions to 72dpi. - -2005-10-25 Masatake YAMATO - - * minibuf.c (Fdisplay_completion_list): Small doc fix. - -2005-10-24 Kim F. Storm - - * xterm.c: Undo 2005-10-23 change. - (last_mouse_glyph_frame): New var. - (note_mouse_movement): Say mouse moved if current frame differs - from last_mouse_glyph_frame, and update last_mouse_glyph_frame. - (XTmouse_position): Set last_mouse_glyph_frame. - (handle_one_xevent): Clear last_mouse_glyph_frame [instead of - last_mouse_glyph] on mouse up/down event. - - * editfns.c (Fcompare_buffer_substrings): Fix last change. - -2005-10-23 Stefan Monnier - - * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars. - -2005-10-23 Jan Dj,Ad(Brv - - * xterm.c (note_mouse_movement): Always call note_mouse_highlight - so tool tips don't interfere with press on tool bar button. - -2005-10-23 Richard M. Stallman - - * casetab.c (Fset_case_table): Doc fix. - - * lread.c (build_load_history): Replace STREAM arg with ENTIRE. - (readevalloop): Compute ENTIRE properly. - (syms_of_lread) : Doc fix. - -2005-10-21 Richard M. Stallman - - * lread.c (Fload): Simplify gcpro structure. - Gcpro FOUND as well as FILE, but not EFOUND. - Unless preloading, record FOUND instead of FILE in Vload_history. - Rename repeat local FILE to MSG_FILE. - (syms_of_lread) : Doc fix. - -2005-10-21 Kenichi Handa - - * search.c (boyer_moore): Add parens to fix and/or precedence bug. - -2005-10-20 Kim F. Storm - - * buffer.c (clone_per_buffer_values): Remove unused var tem. - (init_buffer): Remove unused vars dotstat, pwdstat. - - * ccl.c (check_ccl_update): Remove unused var vp. - - * fileio.c (auto_save_error): Call SAFE_FREE. - - * fns.c (Fchar_table_range): Remove unused var i. - - * minibuf.c (display_completion_list_1): New wrapper function - for Fdisplay_completion_list. - (Fminibuffer_completion_help): Use it. - - * term.c (encode_terminal_code): Remove unused var src_start. - - * window.c (Fwindow_tree): Remove unused var alist. - - * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y. - -2005-10-20 Aubrey Jaffer (tiny change) - - * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments. - -2005-10-20 Olli Savia (tiny change) - - * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO. - -2005-10-20 Andreas Schwab - - * minibuf.c (Fdisplay_completion_list): Doc fix. - -2005-10-19 Kim F. Storm - - * image.c (check_image_size): Handle integer Vmax_image_size value - directly as max pixel value. Use default frame size for null frame. - (syms_of_image) : Describe integer value. - -2005-10-19 Romain Francoise - - * emacs.c (main): Update copyright year. - -2005-10-18 Chong Yidong - - * image.c (Vmax_image_size): New variable. - (check_image_size): New function. - (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load) - (gif_load, gs_load): Use it. - (lookup_image): Try loading again if previous load failed. - (xbm_read_bitmap_data): Add a new argument, a pointer to the frame - to display in, NULL if none. - (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new - argument. - -2005-10-18 Richard M. Stallman - - * search.c (Fstring_match): Doc fix. - -2005-10-18 YAMAMOTO Mitsuharu - - * macterm.c (note_mouse_movement): Use PtInRect. - (XTread_socket): Also ignore mouse motion just before a button - release event. Don't process button release event when mouse is - not grabbed. - -2005-10-16 Masatake YAMATO - - * minibuf.c (Fdisplay_completion_list): Add new optional - argument COMMON_SUBSTRING. Bind `completion-common-substring' - to the optional argument during running `completion-setup-hook'. - -2005-10-16 YAMAMOTO Mitsuharu - - * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp): - Allow nil as argument. - [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil - for encoding arguments as UTF-16 in native byte order, no BOM. - - * macfns.c (Fx_create_frame): Add debugging code. - (Fx_show_tip): Set frame pixel width and height. - - * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro. - (FRAME_NORMAL_GC): New macro. - (mac_draw_line, mac_clear_area, mac_clear_window) - (mac_fill_rectangle, mac_draw_string, mac_draw_string_16) - (mac_draw_image_string, mac_draw_image_string_16): Rename from - XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString, - XDrawString16, XDrawImageString, and XDrawImageString16, respectively. - All uses changed. - (mac_draw_line, mac_erase_rectangle, mac_clear_area) - (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle) - (mac_invert_rectangle, mac_draw_string_common, mac_draw_string) - (mac_draw_string_16, mac_draw_image_string) - (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask) - (mac_scroll_area): Drawing functions now take frame as destination. - All uses changed. - (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT. - (x_draw_fringe_bitmap): Set clipping area in face->gc. - - * macterm.h (mac_clear_area): Add extern. - -2005-10-14 YAMAMOTO Mitsuharu - - * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14 - changes for xterm.c. - - * w32term.c (note_mouse_movement, w32_read_socket): Likewise. - -2005-10-14 Kenichi Handa - - * search.c (search_buffer): Give up BM search on case-fold-search - if one of a target character has a case-equivalence of different - charset even if that target charcter is an ASCII. - - * casefiddle.c (casify_object): Fix for the case that case - conversion change the byte length. - -2005-10-14 Kim F. Storm - - * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise. - (handle_one_xevent): Only clear help_echo_string; restore it if - note_mouse_movement didn't record any mouse movement. - - * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use. - (remember_mouse_glyph): Clear RECT if mouse is over an image glyph. - - * keyboard.c (make_lispy_position): Adjust wx for left margin if - ON_TEXT. - (Fposn_at_x_y): Fix calculation of x coordinate. - (Fposn_at_point): Return nil if point is hscrolled out of view. - -2005-10-13 Andreas Schwab - - * sysdep.c (request_sigio, unrequest_sigio): Do nothing in - non-interactive mode. - -2005-10-12 YAMAMOTO Mitsuharu - - * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change. - -2005-10-12 Kim F. Storm - - * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down. - -2005-10-12 Romain Francoise - - * buffer.c (init_buffer): Rename `rc' to `len' for clarity. - -2005-10-12 YAMAMOTO Mitsuharu - - * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to - get end of text rows. Obtain header-line/mode-line rows directly. - - * xterm.c, w32term.c, macterm.c (note_mouse_movement): - Restore help_echo_string if mouse is moved inside last_mouse_glyph. - -2005-10-12 Kim F. Storm - - * xdisp.c (remember_mouse_glyph): New generic version based on - glyph_rect and remember_mouse_glyph from xterm.c enhanced to - properly handle all different window areas. - - * dispextern.h (remember_mouse_glyph): Add prototype. - - * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions. - (note_mouse_movement, XTmouse_position): Use generic - remember_mouse_glyph, add last_mouse_glyph arg. - - * w32term.c (note_mouse_movement): Fix last_mouse_glyph check. - (glyph_rect, remember_mouse_glyph): Remove w32 specific versions. - (note_mouse_movement, w32_mouse_position): Use generic - remember_mouse_glyph, add last_mouse_glyph arg. - - * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph. - (glyph_rect, remember_mouse_glyph): Remove mac specific versions. - (XTmouse_position): Adapt to use generic remember_mouse_glyph - instead of pixel_to_glyph_coords. - - * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN. - Fix x position for ON_TEXT when left margin width > 0. - -2005-10-11 Kim F. Storm - - * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR. - - * keyboard.c (make_lispy_position): Fix buffer calculations for - mouse click or movement in right fringe and the margins. - -2005-10-11 Juanma Barranquero - - * image.c (fn_jpeg_stdio_src): Don't define it. - (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'. - (our_common_init_source): Rename from `our_init_source'. - (our_common_term_source): Rename from `our_term_source'. - (our_memory_fill_input_buffer): Rename from - `our_fill_input_buffer'. - (our_memory_skip_input_data): Rename from `our_skip_input_data'. - (jpeg_memory_src): Use the new names. - (struct jpeg_stdio_mgr): New struct. - (JPEG_STDIO_BUFFER_SIZE): New constant. - (our_stdio_fill_input_buffer, our_stdio_skip_input_data) - (jpeg_file_src): New functions. - (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'. - -2005-10-11 YAMAMOTO Mitsuharu - - * macterm.c (PER_CHAR_METRIC): Remove unused macro. - (fm_font_family_alist): New variable. - (syms_of_macterm): Initialize and staticpro it. - (decode_mac_font_name): Replace '-' in family name with '_' if it - occurs just once. Lower family name. - (parse_x_font_name): Rename from x_font_name_to_mac_font_name. - All uses changed. Remove argument MF and code conversion for it. - Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS - to CHARSET. Parse font size. Lower family name. Return integer - value for status of parsing. - (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name. - Don't use Fdowncase because family name is already lowered by - decode_mac_font_name. - (init_font_name_table): Always call decode_mac_font_name. - Add pair of family name and its reference to fm_font_family_alist. - (mac_clear_font_name_table): Clear fm_font_family_alist. - (XLoadQueryFont): Move font size parsing part to parse_x_font_name. - Lookup fm_font_family_alist to get font family reference. - (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family - name is already lowered by parse_x_font_name. - -2005-10-11 Kim F. Storm - - * xterm.c (glyph_rect): Return 0 if position is outside text area. - - * keyboard.c (make_lispy_position): Fix buffer position calculation for - mouse click or movement in fringe. - -2005-10-10 Jason Rumney - - * xterm.c (remember_mouse_glyph): New function. - (note_mouse_movement): Use it to remember the current glyph if changed. - (XTmouse_position): Fix calculation of fake glyph under mouse. - Move code to calculate glyph under mouse into remember_mouse_glyph. - -2005-10-10 Jan Dj,Ad(Brv - - * emacs.c (USAGE3, standard_args): -nb => -nbi. - -2005-10-10 Juanma Barranquero - - * frame.c (Fredirect_frame_focus): Fix typos in docstring. - (next_frame, prev_frame, set_term_frame_name): Make static. - - * window.c (Fwindow_tree): Fix spelling. - -2005-10-09 Romain Francoise - - * window.c (Fwindow_end): Don't try to redisplay if non-interactive. - -2005-10-09 Jan Dj,Ad(Brv - - * emacs.c (standard_args): Remove options -i, -itype, --icon-type. - Add options -nb, --no-bitmap-icon. - - * xfns.c (Fx_create_frame): Make bitmapIcon have default on. - -2005-10-08 YAMAMOTO Mitsuharu - - * macgui.h (MAX_CLIP_RECTS): New define. - (struct _XGC): New member clip_region. - (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and - clip_rects. - - * macterm.c (GC_CLIP_REGION): New macro. - (saved_port_clip_region): New variable. - (mac_begin_clip, mac_end_clip): New functions. - (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle) - (mac_draw_rectangle, mac_draw_string_common, mac_copy_area) - (mac_copy_area_with_mask, mac_scroll_area): Use them. - (mac_set_clip_rectangle, mac_reset_clipping): Remove functions. - [USE_ATSUI] (atsu_get_text_layout_with_text_ptr) - [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable. - (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping - rectangles stored in gc. - (XFreeGC): Dispose of clipping region. - (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions. - (x_draw_fringe_bitmap, x_set_glyph_string_clipping) - (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string) - (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor) - (x_draw_bar_cursor): Use them. - (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to - get multiple clipping rectangles. - - * macterm.h (mac_term_init): Add types to extern. - (struct mac_output): Remove members mWP and pending_menu_activation. - Put members scroll_bar_foreground_pixel and - scroll_bar_background_pixel in #if 0. - (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc. - - * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT. - Add debugging code. - -2005-10-08 Kim F. Storm - - * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04. - -2005-10-07 Kim F. Storm - - * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows) - [!HAVE_WINDOW_SYSTEM]: Don't declare them... - (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them. - -2005-10-07 YAMAMOTO Mitsuharu - - * dispextern.h (struct glyph_string): Rename member for_overlaps_p - to for_overlaps. Now occupy 3 bits. - (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH) - (OVERLAPS_ERASED_CURSOR): New defines. - (struct redisplay_interface): Add new OVERLAPS arg to member - fix_overlapping_area. - (x_fix_overlapping_area): Add new OVERLAPS arg. - (get_glyph_string_clip_rects): Add extern. - - * dispnew.c (redraw_overlapping_rows): - Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part. - - * xdisp.c: Rename member for_overlaps_p in struct glyph_string to - for_overlaps. - (get_glyph_string_clip_rects): New function created from - get_glyph_string_clip_rect. Set clipping rectangles according to the - value of for_overlaps. Enable to store multiple clipping rectangles. - (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects. - (fill_composite_glyph_string, fill_glyph_string, draw_glyphs): - Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed. - (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs. - (draw_phys_cursor_glyph): Set width of erased cursor to use it for - calculating clipping rectangles later. Call x_fix_overlapping_area - with new OVERLAPS arg to draw only erased cursor area. - (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg - to draw overlaps in both preceding and succeeding rows. - - * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in - struct glyph_string to for_overlaps. - -2005-10-04 Richard M. Stallman - - * alloc.c (refill_memory_reserve): Conditionalize the body, - not the function's existence. - -2005-10-04 Kim F. Storm - - * window.c (window_split_tree): New function. - (Fwindow_split_tree): New defun. - (syms_of_window): Defsubr it. - -2005-10-04 YAMAMOTO Mitsuharu - - * macterm.c (mac_invert_rectangle): New function. - (XTflash): Use it. - -2005-10-04 Stefan Monnier - - * regex.h (re_char): Don't expose it in the interface. - (re_set_whitespace_regexp): Adjust the arg's type to not use it. - - * regex.c (re_char): Move it back here. - (re_set_whitespace_regexp): Change the arg's type to not use it. - - * keyboard.c (make_lispy_event): If point has moved between down and up - event, make it a drag, not a click, to mirror what - mouse-drag-region expects. - -2005-10-02 Dan Nicolaescu - - * lisp.h (fatal): Undo previous change. - * term.c (fatal): Undo previous change. - -2005-10-01 Richard M. Stallman - - * xfaces.c (face_color_gray_p): Colors close to black count as gray. - -2005-10-01 Kim F. Storm - - * xdisp.c (try_window): Skip scroll-margin check if ZV is visible. - -2005-10-01 YAMAMOTO Mitsuharu - - * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler. - - * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c. - (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code. - (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]: - Try ATSUI-compatible 12pt Monaco font first. - - * macgui.h (struct _XCharStruct): New member valid_p. - (STORE_XCHARSTRUCT): Set valid_p. - (struct MacFontStruct) [USE_ATSUI]: New member mac_style. - - * macterm.c (mac_draw_string_common, x_per_char_metric) - (mac_compute_glyph_string_overhangs, init_font_name_table) - (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support. - (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function. - (x_draw_glyph_string_background) - (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use - XDrawImageString. Always draw background and foreground separately. - (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit - functions for one-byte chars when using ATSUI-compatible fonts. - (atsu_font_id_hash) [USE_ATSUI]: New variable. - (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it. - (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and - max_char_or_byte2 more in detail. - (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions. - -2005-09-30 Dan Nicolaescu - - * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type. - * xterm.c (handle_one_xevent, handle_one_xevent): Likewise. - - * unexelf.c (fatal): Fix prototype. - - * term.c (fatal): Implement using varargs. - - * regex.c (re_char): Move typedef ... - * regex.h (re_char): ... here. - (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes. - - * emacs.c (malloc_set_state): Fix return type. - (endif): Fix type. - - * lisp.h (fatal): Add argument types. - - * dispextern.h (fatal): Delete prototype. - - * systime.h (make_time): Prototype moved from ... - * editfns.c (make_time): ... here. - - * editfns.c: Move systime.h include after lisp.h. - * dired.c: - * xsmfns.c: - * process.c: Likewise. - - * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook): - Add parameter types. - (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes. - (emacs_blocked_free): Change definition to match __free_hook. - (emacs_blocked_malloc): Change definition to match __malloc_hook. - (emacs_blocked_realloc): Change definition to match __realloc_hook. - -2005-09-30 Romain Francoise - - * minibuf.c (Fread_buffer): Follow convention for reading from the - minibuffer with a default value. Doc fix. - -2005-09-29 Juri Linkov - - * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box): - Rename argument name `string' to `format-string'. - (Fformat): Doc fix. - -2005-09-28 Kim F. Storm - - * image.c (gif_load): Fix size of allocated image buffer - for images where a sub-image may be larger than the image's - total height/width specifications. - -2005-09-28 YAMAMOTO Mitsuharu - - * macgui.h (struct _XCharStruct): Each member now takes short value. - -2005-09-27 Dan Nicolaescu - - * xfaces.c (lookup_derived_face): Add parameter type. - - * xdisp.c (cursor_row_fully_visible_p): Add parameter type. - - * marker.c (verify_bytepos): Add parameter type. - - * process.c (get_operating_system_release): Move prototype ... - - * systime.h (get_operating_system_release): ... here. - - * xterm.c (handle_one_xevent): Refer to union field to match the - type required by the function definition. - (set_vertical_scroll_bar): Move prototype ... - - * xterm.h: ... here. - - * fns.c (internal_equal, seed_random): Fix prototypes. - (internal_equal): Add missing parameter. - -2005-09-25 Richard M. Stallman - - * keyboard.c (update_menu_bindings): Variable deleted. - (syms_of_keyboard): Don't defvar it. - (parse_menu_item): Don't test it. - -2005-09-23 Richard M. Stallman - - * editfns.c (Fformat): Explicitly test for end of format string - and don't use `index'. - -2005-09-23 Dan Nicolaescu - - * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): - Define BROKEN_GET_CURRENT_DIR_NAME. - - * sysdep.c (get_current_dir_name): Also define if - BROKEN_GET_CURRENT_DIR_NAME. - - * m/ibmrs6000.h: Test for USG5, not USG5_4. - -2005-09-22 Kim F. Storm - - * xdisp.c (message_dolog): Add warning about GC and Lisp strings. - (message2): Fix commentary. Ok to use alloca'ed memory. - Still not ok to use Lisp string data (because of GC). - (set_message): Add comment why GC cannot happen. - -2005-09-22 YAMAMOTO Mitsuharu - - * macterm.c (xlfdpat_block_match_1): Fix assertion. - (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style - variants for a scalable font multiple times. - -2005-09-21 YAMAMOTO Mitsuharu - - * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]: - Setup slave tty options before forking. - -2005-09-20 Jan Dj,Ad(Brv - - * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program - positions have been set for the frame (as is done for frames in - special-display-buffer-names). - -2005-09-19 Kim F. Storm - - * editfns.c (Fformat): Don't scan past end of format string that - ends in %. Reported by Johan Bockg,Ae(Brd. - -2005-09-18 Andreas Schwab - - * window.h (struct window): Remove height_fixed_p, no longer set. - - * window.c (make_window): Don't initialize height_fixed_p. - (window_fixed_size_p): Don't use it. - -2005-09-18 John Paul Wallington - - * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol. - -2005-09-18 YAMAMOTO Mitsuharu - - * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change. - - * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: - New variables. - [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple - file selection. - - * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h. - -2005-09-17 Eli Zaretskii - - * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable. - (obj): Use XMENU_OBJ, not a literal xmenu.o. - -2005-09-16 Romain Francoise - - * fileio.c (syms_of_fileio) : Doc fix. - -2005-09-15 Richard M. Stallman - - * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional. - (display_mode_element): Instead of `lisp_string' and `this', - record `offset' and increment that. - `last_offset' replaces `last'. - - * Makefile.in (XMENU_OBJ): Variable deleted. - (obj): Use xmenu.o unconditionally. - (SOME_MACHINE_OBJECTS): Delete xmenu.o. - - * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU. - -2005-09-15 Kim F. Storm - - * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1. - (reseat_at_next_visible_line_start): Likewise (in xassert). - -2005-09-14 Romain Francoise - - * fileio.c (write_region_inhibit_fsync): New variable. - (Fwrite_region): Use it to skip call to fsync. - (syms_of_fileio): Initialize it. - -2005-09-14 Kenichi Handa - - * coding.c (code_convert_region_unwind): Argument format changed. - (run_pre_post_conversion_on_str): If pre-write-conversion function - changed the current buffer, delete the new buffer. - (run_pre_write_conversin_on_c_str): Likewise. - - * fileio.c (Fexpand_file_name): Check multibyteness of - default_directory. - -2005-09-13 Kenichi Handa - - * composite.c (compose_chars_in_text): Delete it. - - * composite.h (compose_chars_in_text): Delete extern. - -2005-09-13 Kim F. Storm - - * print.c (print_error_message): Fix last change. - -2005-09-12 Kim F. Storm - - * composite.c (compose_chars_in_text): Fix setup of `pend'. - Unconditionally reload `ptr' and `pend' after eval. - - * xdisp.c (message3): Pass copy of lisp string to message_dolog. - - * print.c (print_error_message): Pass copy of caller name to - message_dolog. - - * fileio.c (auto_save_error): Pass copy of lisp string to message2. - -2005-09-12 Kenichi Handa - - * xdisp.c (display_mode_element): Be sure to make variables THIS - and LISP_STRING point into a string data of ELT. - -2005-09-12 Kim F. Storm - - * editfns.c (Ftranslate_region_internal): Reload `tt' after - signal_after_change that may have GC'ed. - (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix. - - * keymap.c (Fdescribe_buffer_bindings): Reload `translate' - after insert while runs signal_after_change. - - * minibuf.c (Fminibuffer_complete_word): Move `completion_string' - declaration to where it is used. - - * w32.c (check_windows_init_file): Fix allocation of error buffer. - - * xfns.c (x_encode_text): Declare static. Add FREEP arg. - (x_set_name_internal): Call x_encode_text with new FREEP arg to - know if xfree is needed instead of guessing. - - * xterm.h (x_encode_text): Remove prototype. - -2005-09-11 Chris Prince (tiny change) - - * w32term.c (x_bitmap_icon): Load small icons too. - -2005-09-10 Romain Francoise - - * buffer.c (init_buffer): Grow buffer to add directory separator - and terminal zero. Fix typos. - -2005-09-10 Eli Zaretskii - - * buffer.c (init_buffer): Fix error message for failed call to - get_current_dir_name. - (get_current_dir_name): Remove prototype. - - * xsmfns.c (get_current_dir_name): Remove prototype. - - * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: - Add prototype. - - * sysdep.c [WINDOWSNT]: Add prototype for getwd. - Don't #undef NULL after including blockinput.h. - - * config.in: Regenerated. - -2005-09-10 Giuseppe Scrivano - - Remove the MAXPATHLEN limitations: - - * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: - New function. - - * buffer.c (init_buffer): Use it. - - * xsmfns.c (smc_save_yourself_CB): Ditto. - -2005-09-09 Kim F. Storm - - * doc.c (Fsubstitute_command_keys): Lookup key binding for - commands that are remapped from some other command. - - * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p - flag in disabled rows below the window. - - * frame.h (struct frame): New member updated_p. - - * xdisp.c (redisplay_internal): Mark updated frames in new updated_p - member. Remove local `updated' array and associated variables. - -2005-09-07 Kim F. Storm - - * xdisp.c (handle_display_prop): Respect overlay window property. - - * xdisp.c (try_window): Remove superfluous cursor_height calculation. - Fixes crash reported by YAMAMOTO Mitsuharu. - -2005-09-06 YAMAMOTO Mitsuharu - - * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs. - (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p) - (xlfdpat_block_match_1, xlfdpat_match): New functions. - (xlfdpat_block_match): New macro. - (mac_to_x_fontname): Don't use tolower for non-ASCII characters. - (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0. - (add_font_name_table_entry): Increase font_name_table_size more - rapidly. - (mac_c_string_match): Remove function. - (mac_do_list_fonts): Use XLFD pattern match instead of regular - expression match. - - * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters. - -2005-09-03 Richard M. Stallman - - * xdisp.c (redisplay_internal): Make UPDATED as long as needed. - (move_it_in_display_line_to): Stop after last char on line even - on a windowing terminal, if that's the specified stop position. - - * fns.c (Fsort): Doc fix. - - * editfns.c (Fpropertize): Don't insist that properties be symbols. - -2005-09-02 Stefan Monnier - - * dired.c (directory_files_internal_unwind, directory_files_internal) - (file_name_completion): Use a Save_Value object rather than a cons of - two 16bit ints to store the DIR*. - (directory_files_internal, file_name_completion): Handle both EINTR and - EAGAIN consistently after `readdir'. - -2005-09-01 Stefan Monnier - - * intervals.c (update_interval): Add position info in error. - - * dispnew.c (window_to_frame_hpos, update_window): - Avoid gcc warning about unused variable `f'. - -2005-08-31 Jason Rumney - - * w32menu.c (add_menu_item): If unicode_append_menu returns an - error, revert to using AppendMenu. - -2005-08-31 YAMAMOTO Mitsuharu - - * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument. - All uses changed. - [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common - cases. - (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image. - [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef. - Use posix_pathname_to_fsspec. - [MAC_OS] (xpm_load_image): Fill in background_transparent field - while we have mask. - - * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define. - - * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c. - -2005-08-29 Stefan Monnier - - * syntax.c (update_syntax_table): Properly reproduce the special +1 - setting of e_property at the end of the buffer when bumping into the - INTERVALS_AT_ONCE limit. - -2005-08-27 Eli Zaretskii - - * emacs.c (USAGE1): Fix the description of the -Q option. - -2005-08-26 Stefan Monnier - - * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM). - -2005-08-26 Kim F. Storm - - * xdisp.c (resize_mini_window): Fix 2005-08-20 change. - Don't move PT to new window start. - -2005-08-25 YAMAMOTO Mitsuharu - - * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for - ICONIFY/DEICONIFY_EVENT. - - * macterm.c (mac_copy_area, mac_copy_area_with_mask): - Restore background color. - (mac_handle_visibility_change): New function. - (x_make_frame_invisible, x_iconify_frame) - (XTread_socket) [!USE_CARBON_EVENTS]: Use it. - [USE_CARBON_EVENTS] (mac_handle_window_event) - (install_window_handler): Handle visibility change events. - (x_make_frame_visible): Don't reposition window if it is iconified - or asked for visible before. Select and uncollapse window when it - is made visible. - (x_make_frame_invisible): Don't reset x_highlight_frame. - (x_iconify_frame): Likewise. Make invisible frame visible before - it is iconified. - (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS. - (do_window_update): Don't change visibility of invisible frame. - -2005-08-22 Juri Linkov - - * term.c (turn_on_face): Check for TS_set_foreground and - TS_set_background depending on standout_mode. Simplify. - -2005-08-21 Kim F. Storm - - * fringe.c (update_window_fringes): Only put TOP and BOTTOM - bitmaps on fully visible rows. - - * fringe.c (update_window_fringes): Replace FORCE_P arg with - KEEP_CURRENT_P arg; if non-zero, don't update current row fringes, - and return 0. - - * xdisp.c (redisplay_window): Call update_window_fringes with - KEEP_CURRENT_P non-0 if we are going to refresh fringes later. - -2005-08-20 Richard M. Stallman - - * xdisp.c (display_echo_area_1): Get display start pos from w->start. - (resize_mini_window): Set w->start, and PT, so as to display the tail - end of the buffer, if it doesn't all fit. - -2005-08-18 Kim F. Storm - - * xdisp.c (calc_pixel_width_or_height): Use actual display - resolution when available instead of Vdisplay_pixels_per_inch. - -2005-08-17 Kim F. Storm - - * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled. - - * dispnew.c (buffer_posn_from_coords): Check that target row is - within matrix. - -2005-08-16 Jan Dj,Ad(Brv - - * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to - xg_set_frame_icon and call it. - - * gtkutil.c (xg_set_frame_icon): New function. - - * gtkutil.h (xg_set_frame_icon): Declare it. - -2005-08-16 Kim F. Storm - - * dispnew.c (increment_row_positions): Skip non-enabled rows. - - * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define. - (Fcurrent_window_configuration): Use VECSIZE macro instead. - -2005-08-15 Richard M. Stallman - - * xdisp.c (message3_nolog): Clear echo_message_buffer. - -2005-08-15 Kim F. Storm - - * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input. - - * process.c (deactivate_process, status_notify, read_process_output) - (update_status, status_convert, decode_status, allocate_pty) - (make_process, remove_process, list_processes_1) - (create_process_1, unwind_request_sigio, read_process_output) - (send_process, keyboard_bit_set): Declare static. - (Fdelete_process): Simplify. Pass process to status_notify, so we - don't try to read output from it. - (status_notify): New arg deleting_process--don't try to read - output from that process. - - * lisp.h (deactivate_process, status_notify, read_process_output): - Remove prototypes. - -2005-08-14 Richard M. Stallman - - * image.c (syms_of_image): Init Qxbm, Qpbm before calling - define_image_type. - -2005-08-13 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function. - (xg_get_image_for_pixmap): Move some code to - xg_get_pixbuf_from_pix_and_mask, and call it. - - * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare. - - * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask - to get an GTK icon and set it with GTK functions to avoid having GTK - override an icon set with just X functions. - -2005-08-11 Richard M. Stallman - - * image.c (syms_of_image): Init image_types here, and call - define_image_type. - (init_image): Not here. - -2005-08-09 Richard M. Stallman - - * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input. - - * lisp.h (QUIT): Throw t to Vthrow_on_input. - -2005-08-09 Thien-Thi Nguyen - - * floatfns.c (Fexpt): Use floats for negative exponent. - -2005-08-08 Jan Dj,Ad(Brv - - * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that - should not be there, causing menu display errors with GTK 2.6.9. - -2005-08-07 Richard M. Stallman - - * floatfns.c (Fexpt): Undo previous change. - - * dispnew.c (Fframe_or_buffer_changed_p): Take an arg - so it can be used with various state vectors. - - * emacs.c (endif): Convert -script into -scriptload. - (standard_args): Add -scriptload. Allow -basic-display with one dash. - - * fns.c (syms_of_fns): Add `emacs' to features. - - * term.c (set_terminal_modes): If no TS_termcap_modes string, - output newlines to scroll the old screen contents off the screen. - -2005-08-06 Thien-Thi Nguyen - - * floatfns.c (Fexpt): Use floats for negative exponent. - Reported by D Goel. - -2005-08-02 Richard M. Stallman - - * frame.c (Fframe_char_width): Doc fix. - -2005-07-30 Juanma Barranquero - - * xdisp.c (syms_of_xdisp) : - Defvar it. - -2005-07-28 Juanma Barranquero - - * w32fns.c (my_set_window_pos, my_show_window): Don't declare. - (my_create_window, my_create_tip_window): Make static. - - * w32term.c (my_show_window, my_set_window_pos, my_set_focus) - (my_set_foreground_window, my_destroy_window): Make static. - -2005-07-26 Paul Eggert - - Merge gnulib getopt implementation into Emacs. - - * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is - now part of lib-src. - -2005-07-26 Stefan Monnier - - * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters). - -2005-07-25 Jason Rumney - - * w32menu.c (w32_menu_display_help): Suppress tooltip when - navigating menus with the keyboard. - -2005-07-23 Richard M. Stallman - - * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer. - - * bytecode.c (MAYBE_GC): Test gc_cons_threshold and - gc_relative_threshold, one by one. - - * keyboard.c (read_char): Test gc_cons_threshold. - (syms_of_keyboard): staticpro Qecho_area_clear_hook. - - * eval.c (Feval, Ffuncall): Test gc_cons_threshold and - gc_relative_threshold, one by one. - - * alloc.c (gc_cons_threshold): Not static. - (gc_cons_combined_threshold): Var deleted. - (gc_relative_threshold): New variable. - (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold - instead of gc_cons_combined_threshold. - - * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare. - (gc_cons_combined_threshold): Declaration deleted. - -2005-07-23 YAMAMOTO Mitsuharu - - * mac.c: Don't include stdlib.h or string.h. - (Fdo_applescript, Fmac_file_name_to_posix) - (Fmac_file_name_to_posix): Doc fixes. - [TARGET_API_MAC_CARBON] (Fmac_get_preference) - (Fmac_code_convert_string): Likewise. - [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode - if the executable is not contained in a bundle. - - * macfns.c: Don't include stdlib.h or string.h. Include atimer.h. - (gray_width, gray_height): Remove defines. - (gray_bits, gray_bitmap_width, gray_bitmap_height) - (gray_bitmap_bits): Remove variables. - (lispy_function_keys): Remove extern. - (free_frame_menubar): Add extern. - (x_window_to_frame): Remove function. - (unwind_create_tip_frame): Add declaration. - (x_set_name_internal): New function. - (x_set_name, x_set_title): Use it. - (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width) - (Fx_display_pixel_height, Fx_display_planes) - (Fx_display_color_cells, Fx_server_max_request_size) - (Fx_server_vendor, Fx_server_version, Fx_display_screens) - (Fx_display_mm_height, Fx_display_mm_width) - (Fx_display_backing_store, Fx_display_visual_class) - (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes. - - * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes. - - * macselect.c (Fx_own_selection_internal): Follow error conventions. - (Fx_get_selection_internal, Fx_selection_owner_p) - (Fx_selection_exists_p): Doc fixes. - (syms_of_macselect) : Likewise. - -2005-07-21 Juanma Barranquero - - * buffer.c (syms_of_buffer) : Doc fix. - - * ccl.c (Fregister_ccl_program): Fix typos in docstring. - (Fccl_execute_on_string): Likewise; add usage info. - - * composite.c (Fcompose_region_internal) - (Fcompose_string_internal): - Improve argument/docstring consistency. - - * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer): - Fix typos in docstrings. - - * textprop.c (Fnext_char_property_change) - (Fprevious_char_property_change): Doc fixes. - - * window.c (Fset_window_margins, Fset_window_fringes): - Improve argument/docstring consistency. - - * xfaces.c (Finternal_lisp_face_p): Doc fix. - -2005-07-21 Andreas Schwab - - * eval.c (restore_stack_limits): Return a value. - -2005-07-20 Juanma Barranquero - - * eval.c (Fdefvar): Doc fix. - -2005-07-20 Kim F. Storm - - * fileio.c (Fdo_auto_save, do_auto_save_unwind): - Use make_save_value to unwind protect stream. - - * lread.c (Fload, load_unwind): - Use make_save_value to unwind protect stream. - -2005-07-19 Juanma Barranquero - - * eval.c (Fprog2, Fcalled_interactively_p), - (syms_of_eval) : Doc fixes. - (syms_of_eval) : - (Finteractive_p): Fix typos in docstrings. - -2005-07-19 Kim F. Storm - - * w32fns.c (Vx_hand_shape): Variable removed. - (syms_of_w32fns): Intern and staticpro Qw32_charset_default. - -2005-07-19 Kenichi Handa - - * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring. - -2005-07-18 Stefan Monnier - - * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c). - -2005-07-18 Kim F. Storm - - * frame.h (struct frame): New member already_hscrolled_p. - - * xdisp.c (redisplay_internal): Only try to hscroll each frame once - to avoid redisplay looping hscrolling back and forth ad infinitum. - -2005-07-18 Juri Linkov - - * buffer.c (scroll-up-aggressively, scroll-down-aggressively): - * keymap.c (Fminor_mode_key_binding): - * macterm.c (mac-emulate-three-button-mouse): - Delete duplicate duplicate words. - -2005-07-18 Ken Raeburn - - * minibuf.c (Ftest_completion): Fix odd syntax in test. - -2005-07-18 YAMAMOTO Mitsuharu - - * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground. - - * macgui.h (struct _XGC): New struct. - (GC): Use it. - (GCForeground, GCBackground, GCFont): Use X11 mask values. - (XCreateGC, XParseGeometry): Move externs to macterm.h. - - * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations. - (XSetFont): Add declaration. - (mac_set_forecolor, mac_set_backcolor, mac_set_colors): - Remove functions. - (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC): - New defines. - (XDrawLine, mac_draw_line_to_pixmap, XClearWindow) - (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle) - (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area): - Use them. - (mac_erase_rectangle): New function. - (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect) - (x_draw_stretch_glyph_string): Use it. - (XChangeGC, XCreateGC, XGetGCValues, XSetForeground) - (XSetBackground, XSetFont): Adjust for new GC implementation. - (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors. - (XTset_vertical_scroll_bar): Clear area under scroll bar. - - * macterm.h (struct mac_display_info): Change types of - scratch_cursor_gc black_relief.gc, and white_relief.gc to GC. - (XCreateGC, XParseGeometry): Move externs from macgui.h. - - * xfaces.c [MAC_OS] (XCreateGC): Remove extern. - -2005-07-16 Richard M. Stallman - - * buffer.c (Fmake_overlay): Doc fix. - -2005-07-16 Eli Zaretskii - - * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow, - Vw32_valid_locale_ids, and Vw32_valid_codepages. - -2005-07-16 YAMAMOTO Mitsuharu - - * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): - Use Fstring_as_unibyte instead of string_make_unibyte. - -2005-07-15 Richard M. Stallman - - * xdisp.c (select_frame_for_redisplay): Use find_symbol_value. - -2005-07-15 Kim F. Storm - - * xdisp.c: Fix redisplay loop in last change. - (IT_POS_VALID_AFTER_MOVE_P): New macro. - (move_it_vertically_backward, move_it_by_lines): Use it. - -2005-07-14 Jason Rumney - - * w32.c (init_environment): Default HOME directory to user's - appdata directory if possible. - -2005-07-14 Kim F. Storm - - * .gdbinit (pitx): Fix output format. Print string charpos. - - * lread.c (syms_of_lread): Initialize seen_list. - - * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp. - - * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state. - Staticpro re_match_object. - -2005-07-14 YAMAMOTO Mitsuharu - - * macselect.c (get_scrap_target_type_list): Avoid NULL pointer - dereference. - - * macterm.c (mac_window_to_frame): Remove duplicate define. - -2005-07-14 Kenichi Handa - - * coding.c (code_convert_region_unwind): ARG is changed to a cons. - (code_convert_region): Adjust for the above change. - (set_conversion_work_buffer): If the work buffer is already in - use, generate a new buffer and return it. Otherwise return Qnil. - (run_pre_post_conversion_on_str): Adjust for the above change. - (run_pre_write_conversin_on_c_str): Likewise. - -2005-07-13 Kim F. Storm - - * xdisp.c (start_display): Don't reseat to next visible line start - if current start position is in a string or image. - (move_it_vertically_backward): Be sure to move out of strings and - images when moving it2 forward. - (move_it_by_lines): When moving forward, move to next buffer - position if we end up in a string or image. When moving backward, - count rows moved over when moving to start of current row in case - row starts in middle of a string or image. Also move further - backward if we end up in a string or image. - (try_cursor_movement): If overlay string spans multiple lines, - move backward to set cursor on start of an overlay string. - (cursor_row_p): Row is ok if cursor is at newline from string, but - string starts on this line (so we always position cursor at start - of string). - - * indent.c (Fvertical_motion): If start position is on an image, - don't move back if we move too far (that's almost certain to happen). - - * xdisp.c (cursor_row_fully_visible_p): Allow partially visible - row in minibuffer windows. - (try_window): Don't check margins in minibuffer windows. - -2005-07-13 YAMAMOTO Mitsuharu - - * macterm.c: Don't include stdlib.h or composite.h. - (x_use_underline_position_properties, last_mouse_press_frame) - (x_noop_count, Qvendor_specific_keysyms): Remove unused variables. - (syms_of_macterm, mac_initialize): Don't initialize them. - (waiting_for_input, initial_argv, initial_argc) - (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll) - (set_frame_menubar, path_from_vol_dir_name): Remove externs. - (extra_keyboard_modifiers): Fix type in extern. - (x_window_to_frame, x_window_to_scroll_bar): Remove declarations. - (x_scroll_bar_report_motion): Add argument types to declaration. - (mac_compute_glyph_string_overhangs): Add declaration. - (disable_mouse_highlight): Remove unused variable. - [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click) - (x_scroll_bar_handle_press, x_scroll_bar_handle_release) - (x_scroll_bar_handle_drag): Remove argument `timestamp'. - All callers changed. - [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set - timestamp. - [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise. - (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar - only when its width is less than the height. - (XTredeem_scroll_bar): Sync with xterm.c. - (font_name_table, font_name_table_size, font_name_count): - Make static. - (drag_and_drop_file_list): Remove variable. Previous use is now - local to function. - (do_ae_open_documents): Move DRAG_N_DROP event construction part - from XTread_socket. - (XTread_socket): Consolidate setting of event timestamp. - Move DRAG_N_DROP event construction part to do_ae_open_documents. - Support extra_keyboard_modifiers. - - * xfaces.c (try_font_list) [MAC_OS]: Try font family name - beginning with that for ASCII. - -2005-07-13 Stefan Monnier - - * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars. - (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold. - (syms_of_alloc): Declare gc-cons-percentage. - - * eval.c (Feval, Ffuncall): - * keyboard.c (read_char): - * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold. - - * lisp.h (gc_cons_combined_threshold): Declare. - -2005-07-12 Kim F. Storm - - * coding.c (Qprocess_argument): - * coding.h (Qprocess_argument): Remove unused var. - - * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP. - -2005-07-12 YAMAMOTO Mitsuharu - - * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and - Endian.h. - [!MAC_OSX] (fchmod, fchown): New functions. - (mac_get_code_from_arg): Don't accept Lisp integer as argument. - Use SBYTES and EndianU32_BtoN. - (mac_get_object_from_code): Return 4 byte string even if argument - is 0. Use make_unibyte_string and EndianU32_NtoB. - (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator) - (Fmac_set_file_type): Fix documents and argument declarations. - Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic. - -2005-07-11 Stefan Monnier - - * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM). - -2005-07-11 Jan Dj,Ad(Brv - - * xfaces.c (x_update_menu_appearance): Use fontSet resource for - Lucid if X_I18N, font otherwise. - -2005-07-10 Steven Tamm - - * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add. - (Fmac_set_file_type, Fmac_set_file_creator): Add. - (mac_get_object_from_code, mac_get_code_from_arg): Add. - -2005-07-10 Richard M. Stallman - - * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars. - (syms_of_lread): Set up eval-buffer-list. - (Feval_buffer, Feval_region): Bind eval-buffer-list. - -2005-07-08 Richard M. Stallman - - * eval.c (Fdefvar): Allow defvaring a constant to itself quoted. - -2005-07-08 Kim F. Storm - - * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here. - (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector. - -2005-07-07 Kim F. Storm - - * window.c (Frecenter): Fix last change (set iarg before use). - -2005-07-06 Richard M. Stallman - - * window.c (Frecenter): When arg is inside the scroll margin, - move it out of the margin. - -2005-07-06 Jason Rumney - - * w32console.c (initialize_w32_display): Detect when the console - dimensions are insane, and default to 80x25 instead. - (w32_use_full_screen_buffer): Default to nil. - -2005-07-06 YAMAMOTO Mitsuharu - - * macterm.c (mac_draw_vertical_window_border): Use foreground of - VERTICAL_BORDER_FACE_ID for vertical border line. - (mac_encode_char): Call check_ccl_update in advance. - (mac_to_x_fontname, x_font_name_to_mac_font_name) - (init_font_name_table, mac_do_list_fonts, XLoadQueryFont): - Don't assume that font family length is less than 32. - (x_compute_min_glyph_bounds): Make static. - (x_load_font): Never set fonts_changed_p to zero. - -2005-07-04 Lute Kamstra - - * Update FSF's address in GPL notices. - -2005-07-03 Richard M. Stallman - - * xdisp.c (try_window): Fix previous change in how it handles - a partially-visible line or one only partly past the margin. - - * window.c (window_scroll_pixel_based): Take account - of this_scroll_margin when finding point when scrolling up. - -2005-06-29 Ralf Angeli - - * window.c (window_scroll_pixel_based, window_scroll_line_based): - Handle `scroll-preserve-screen-position' non-nil, non-t specially. - (syms_of_window) : Doc fix. - -2005-07-02 Juri Linkov - - * w32term.c (w32_draw_vertical_window_border): Use foreground of - VERTICAL_BORDER_FACE_ID for vertical border line. - -2005-07-02 Eli Zaretskii - - * fileio.c (Fcopy_file): Rearrange the code that calls fchown and - fchmod so that chmod doesn't get called on MSDOS before the file - is closed. - -2005-07-01 Jason Rumney - - * w32term.c (cleartype_active): New flag for enabling sub-pixel - workaround. - (w32_initialize): Initialize it. - (w32_native_per_char_metric): Allow a couple of extra pixels when - Cleartype is active. - - * w32term.c (w32_initialize): Move check for screen reader here - from syms_of_w32term. - -2005-06-30 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): bzero compose_status when nbytes - is not zero. - -2005-07-01 Masatake YAMATO - - * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'. - -2005-06-30 Juri Linkov - - * xdisp.c (x_draw_vertical_border): If left fringe is not present - decrease x coord of vertical border by 1 pixel to not occupy text - area of the right window. - - * xterm.c (x_draw_vertical_window_border): Use foreground of - VERTICAL_BORDER_FACE_ID for vertical border line. - - * term.c (turn_on_face): In standout mode apply specified - fg to bg, and specified bg to fg (this makes the logic of - inversion on terminal consistent with X). - -2005-06-29 Juanma Barranquero - - * eval.c (user_variable_p_eh): New function. - (Fuser_variable_p): Use it. Clarify docstring. - Return t for aliases of user options, nil for alias loops. - -2005-06-27 Richard M. Stallman - - * eval.c (Fdefvar): Improve error message. - -2005-06-27 YAMAMOTO Mitsuharu - - * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last - change. - -2005-06-27 Juanma Barranquero - - * eval.c (Fdefvar): Don't try to set constant symbols. - -2005-06-25 Richard M. Stallman - - * macfns.c (Fx_show_tip): Pass new arg to try_window. - - * w32fns.c (Fx_show_tip): Pass new arg to try_window. - - * xfns.c (Fx_show_tip): Pass new arg to try_window. - - * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed. - (redisplay_window): Handle try_window reporting point in scroll margin. - - * dispextern.h (try_window): Declare new arg. - - * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID. - Use fchmod to copy the file modes. - (Frename_file): Don't copy UID and GID here; - instead, specify t for PRESERVE_UID_GID when calling Fcopy_file. - - * eval.c (call_debugger): Take full care of extending stack limits - to make space for the debugger, and restore the change afterward. - Bind debug-on-error to nil. - (restore_stack_limits): New subroutine. - (Fsignal): Extend specpdl bound along with eval depth bound, - for calling edebug. Don't do either one, for calling debugger. - (find_handler_clause): Don't bind debug-on-error here. - Don't unbind anything either. - Temporarily advance max_specpdl_size for calling - internal_with_output_to_temp_buffer. - (grow_specpdl): Don't alter max_specpdl_size before signaling - an error. - (syms_of_eval) : Doc fix. - - * lread.c (read1): 0.0e+NaN should make a "positive" NaN. - -2005-06-24 Eli Zaretskii - - * fileio.c (Frename_file): Undo last change: no need to ifdef away - chown on DOS_NT platforms. - - * w32.c (sys_chown): New function. - - * s/ms-w32.h (chown): New; define to sys_chown. - -2005-06-24 Juanma Barranquero - - * xdisp.c (syms_of_xdisp) : Doc fix. - (syms_of_xdisp) : Doc fix. - - * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows. - -2005-06-23 Richard M. Stallman - - * xdisp.c (get_next_display_element): Finish reversing the tests of - Vnobreak_char_display. - - * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape. - All uses changed. - (Qnobreak_space): Rename from Qno_break_space. All uses changed. - (syms_of_xdisp): Define nobreak-char-display and nobreak-space. - - * fileio.c (Frename_file): Preserve owner and group, if possible, - when copying. - -2005-06-23 Juanma Barranquero - - * abbrev.c (Funexpand_abbrev): - * category.c (Fmake_category_set): - * dispnew.c (Fsleep_for, Fsit_for): - * editfns.c (Fsubst_char_in_region): - * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall): - * frame.c (make_frame_without_minibuffer): - * lread.c (read_vector): - * macfns.c (check_x_frame): - * process.c (Fstop_process, Fcontinue_process): - * search.c (Freplace_match): - * syntax.c (Fstring_to_syntax): - * w32fns.c (check_x_frame, check_x_display_info): - * xfaces.c (x_supports_face_attributes_p): - * xselect.c (Fx_own_selection_internal): Follow error conventions. - - * image.c (fn_png_init_io): Don't define it. - (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io. - (png_read_from_file): New function, based on png_read_from_memory. - (png_load): Use it, instead of fn_png_init_io. - -2005-06-23 Kim F. Storm - - * search.c (Fmatch_data): Remove evaporate option. - (Fset_match_data): Do not mention evaporate option in doc string. - Add commentary explaining evaporate arg (for internal use only). - (unwind_set_match_data): Add comment on evaporate use. - -2005-06-22 Miles Bader - - * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'. - (realize_basic_faces, syms_of_xfaces): Update references to it. - * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID' - to `VERTICAL_BORDER_FACE_ID'. - * dispnew.c (build_frame_matrix_from_leaf_window): Update references. - -2005-06-21 Juri Linkov - - * dispextern.h: Add extern Qframe_set_background_mode. - - * xfaces.c: Rename obsolete function Qframe_update_face_colors to - Qframe_set_background_mode. - - * frame.c (Fmodify_frame_parameters): - Call frame-set-background-mode after changing the background color - on non-window non-dos branch. - -2005-06-21 Juanma Barranquero - - * fns.c (Fchar_table_range): - * process.c (Fmake_network_process): Fix spellings. - -2005-06-20 Kim F. Storm - - * fns.c (Fsort): Doc fix. - -2005-06-20 Miles Bader - - * xfaces.c (Qvertical_divider): New variable. - (realize_basic_faces): Realize its face. - (syms_of_xfaces): Initialize it. - - * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'. - - * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical - window-separator on ttys using `vertical-divider' face by default. - -2005-06-17 Richard M. Stallman - - * xdisp.c (get_next_display_element): - Reverse test of Vshow_nonbreak_escape. - - * term.c (produce_special_glyphs): Use spec_glyph_lookup_face. - (Ftty_no_underline): New function. - (syms_of_term): defsubr it. - - * keyboard.c (read_char): Call restore_getcjmp after jump occurs. - - * dispnew.c (spec_glyph_lookup_face): New function. - (build_frame_matrix_from_leaf_window): Use it. - - * dispextern.h (spec_glyph_lookup_face): Add declaration. - - * buffer.c (syms_of_buffer) : Doc fix. - -2005-06-12 Richard M. Stallman - - * keyboard.c (read_char): After catching a longjmp, - call restore_getcjmp. - -2005-06-17 Juanma Barranquero - - * xselect.c (lisp_data_to_selection_data): Fix spelling. - -2005-06-15 YAMAMOTO Mitsuharu - - * macterm.c (mac_compute_glyph_string_overhangs): Don't set - overhangs unless the given glyph type is noncomposite CHAR_GLYPH. - [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down - events. - (XTread_socket): Don't pass keyboard events with the option - modifier to the system when Vmac_command_key_is_meta is nil or - Vmac_option_modifier is non-nil. - [USE_CARBON_EVENTS] (read_socket_inev): New variable. - [USE_CARBON_EVENTS] (init_command_handler): Fix argument. - [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event - handler function. - (install_window_handler) [USE_CARBON_EVENTS]: Install it. - (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event - handler part to mac_handle_mouse_event. - -2005-06-14 Juanma Barranquero - - * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to - NEW-ALIAS and BASE-VARIABLE, respectively. - -2005-06-13 Stefan Monnier - - * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup. - (get_phys_cursor_geometry, format_mode_line_unwind_data) - (get_line_height_property, x_produce_glyphs): Remove unused vars. - - * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'. - -2005-06-13 Eli Zaretskii - - * w32term.c (x_use_underline_position_properties): New variable. - (x_draw_glyph_string): Remind in a comment to change doc string of - x-use-underline-position-properties if/when underline positioning - is implemented. - (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties, - and initialize it to nil. - -2005-06-12 Jason Rumney - - * w32fns.c (NEWOPENFILENAME): New struct. - (Fx_file_dialog): Use it to trick the system into giving us up to - date dialogs on systems that are documented to support it. - Do not set OFN_FILEMUSTEXIST flag if looking for a directory. - -2005-06-12 Eli Zaretskii - - * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of - MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does. - -2005-06-11 Eli Zaretskii - - * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg - to CreateDIBSection to avoid a compiler warning. - (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler - warning. - (png_load): Cast return values of fn_png_create_read_struct and - fn_png_create_info_struct, to avoid compiler warnings on W32. - Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent - to avoid compiler warnings. - (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a - compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to - avoid a compiler warning. - (tiff_load): Cast return values of fn_TIFFOpen and - fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg - to IMAGE_BACKGROUND to avoid a compiler warning. - (gif_load): Cast return values of fn_DGifOpenFileName and - fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to - IMAGE_BACKGROUND to avoid a compiler warning. - (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef - before redefining. - - * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in - the call to CreateDIBSection, to avoid a compiler warning. - -2005-06-11 Jason Rumney - - * w32fns.c (Fx_file_dialog): Unblock input before falling back to - minibuffer. - * macfns.c (Fx_file_dialog): Likewise. - -2005-06-10 Eli Zaretskii - - * makefile.w32-in ($(TEMACS)): Depend on addsection.exe. - -2005-06-10 Juanma Barranquero - - * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]: - * w32fns.c (syms_of_w32fns): Fix spellings. - -2005-06-10 Eli Zaretskii - - * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument - `verbose'; print diagnostic messages only if it is non-zero. - All callers changed to pass a zero value unless DEBUG_DUMP is defined - in the environment. - (copy_executable_and_dump_data): Print section names with %.8s. - -2005-06-10 Masatake YAMATO - - * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face - when mouse_face is not given. - -2005-06-09 Luc Teirlinck - - * window.c (Fselect_window): Adapt call to Fselect_frame. - - * lisp.h: Update EXFUN of Fselect_frame. - - * keyboard.c (command_loop_1): Adapt call to Fselect_frame. - - * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg - no_enter. - (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame): - Adapt to above change. - -2005-06-10 Juanma Barranquero - - * fns.c (Fmemq, Fmaphash): Doc fixes. - -2005-06-09 Juanma Barranquero - - * xfaces.c (Fdisplay_supports_face_attributes_p): - Fix typo in docstring. - -2005-06-08 Steven Tamm - - * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section - used by gcc4 on intel mac. - -2005-06-09 Kim F. Storm - - * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers - in REUSE list if non-nil; free them if equal to evaporate. - (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST - if non-nil; free them if equal to evaporate. Use XCAR/XCDR. - (restore_search_regs): Rename from restore_match_data. Uses changed. - (unwind_set_match_data): New function. - (record_unwind_save_match_data): New function like save-match-data. - - * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN. - (record_unwind_save_match_data): Add prototype. - (restore_search_regs): Rename from restore_match_data. - - * composite.c (compose_chars_in_text): - * eval.c (do_autoload): - * macmenu.c (set_frame_menubar): - * process.c (read_process_output, exec_sentinel): - * xmenu.c (set_frame_menubar): - * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar): - * w32menu.c (set_frame_menubar): - Use record_unwind_save_match_data. - -2005-06-08 Richard M. Stallman - - * xdisp.c (get_next_display_element): Alter previous change: - Distinguish Vshow_nonbreak_escape = t or not t. - For t, use escape_glyph once again, as before previous change. - Use space or hyphen for display, instead of the non-ASCII char. - (syms_of_xdisp) : Doc fix. - - * process.c (Fstart_process): Don't touch command_channel_p slot. - - * process.h (struct process): Delete command_channel_p. - -2005-06-07 Masatake YAMATO - - * xdisp.c (note_mode_line_or_margin_highlight): - Check the overlapping of re-rendering area to avoid flickering. - (note_mouse_highlight): Call clear_mouse_face if PART - is not ON_MODE_LINE nor ON_HEADER_LINE. - -2005-06-07 Kim F. Storm - - * process.c: Improve commentary for adaptive read buffering. - -2005-06-06 Stefan Monnier - - * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars - if available. - -2005-06-06 Jan Dj,Ad(Brv - - * macmenu.c (menu_quit_handler, install_menu_quit_handler): - New functions for popping down menus on C-g. - (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler. - - * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode - non-static. - - * config.in: Add HAVE_CANCELMENUTRACKING. - -2005-06-06 Eli Zaretskii - - * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros. - - * unexw32.c (RVA_TO_PTR): Move here from w32heap.h. - - * w32proc.c (RVA_TO_PTR): New macro. - - * w32heap.c (RVA_TO_PTR): No need to #undef now. - - * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)): - Depend on w32heap.h. - -2005-06-06 Luc Teirlinck - - * keyboard.c (command_loop_1): Update Vthis_original_command. - -2005-06-06 Richard M. Stallman - - * xmenu.c (popup_get_selection): Undo previous change. - -2005-06-06 Juri Linkov - - * xdisp.c (Qno_break_space): New variable. - (syms_of_xdisp): Initialize it. - (get_next_display_element): Add no-break space and soft hypen - codes for iso8859-2 and iso8859-5. Don't add `\' for them. - Use `no-break-space' face for no-break spaces. - -2005-06-06 Jan Dj,Ad(Brv - - * window.c (delete_window): Handle the case where a h/vchild has - a h/vchild. - -2005-06-05 Eli Zaretskii - - * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the - call to pfn_setsockopt, cast optval to `const char *'. - -2005-06-04 Eli Zaretskii - - * w32.c (gettimeofday): Use struct _timeb, not struct timeb. - (open_unc_volume): Cast return value of map_w32_filename, to avoid - compiler warnings. - - * s/ms-w32.h (fileno): Don't define if already defined. - - * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk. - - * makefile.w32-in (DOC): Define to point to the generated DOC-X. - -2005-06-04 Richard M. Stallman - - * xmenu.c (popup_get_selection): Click not in menu deactivates menu. - -2005-06-04 Jan Dj,Ad(Brv - - * macmenu.c (cleanup_popup_menu): New function. - (Fx_popup_menu): Unwind protect cleanup_popup_menu in case - mac_menu_show Quit:s. - (mac_menu_show): Quit on cancel if not popped up on click (i.e. - a dialog). - -2005-06-04 Kim F. Storm - - * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT. - - * callproc.c (Fcall_process): Don't use alloca to gradually - increase size of buf, as it effectively uses twice the necessary - space on the stack. Instead, pre-allocate buf of full size, and - gradually increase the read size. - - * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input. - - * eval.c (unbind_to): Preserve value of Vquit_flag. - - * xterm.c (handle_one_xevent): Also ignore mouse motion just - before a button release event. - -2005-06-03 Juanma Barranquero - - * xfaces.c (Finternal_lisp_face_equal_p): Really report - on faces in a frame, if the argument FRAME is non-nil. - Improve argument/docstring consistency. - -2005-06-02 Kim F. Storm - - * xdisp.c (MODE_LINE_NOPROP_LEN): New macro. - (x_consider_frame_title, Fformat_mode_line): Save offset into - mode_line_noprop_buf rather than pointer, in case buffer is relocated. - -2005-06-01 Kim F. Storm - - * fns.c (mapcar1): Maybe exit loop if original sequence was modified. - -2005-06-01 YAMAMOTO Mitsuharu - - * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD - resolution fields for scalable fonts to 0. - - * xfaces.c (build_scalable_font_name): Round pixel size to the - nearest integer. - -2005-06-01 Kim F. Storm - - * xdisp.c (display_mode_line): Support nested calls to redisplay - and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY. - -2005-05-31 Stefan Monnier - - * fileio.c (Finsert_file_contents): - * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup. - -2005-05-31 Kim F. Storm - - * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end) - (mode_line_noprop_ptr): Rename from frame_title_*. - (store_mode_line_noprop_char): Rename from store_frame_title_char. - (store_mode_line_noprop): Rename from store_frame_title. - (mode_line_target): New enum to specify current output target - for mode line formatting. - (display_mode_element): Test it rather than frame_title_ptr and - mode_line_string_list to determine where output should go. - (mode_line_proptrans_alist, mode_line_string_alist): Make static. - (Vmode_line_unwind_vector): New variable. - (format_mode_line_unwind_data, unwind_format_mode_line): - New functions for unwind protection in mode line formatting. - (x_consider_frame_title): Use them and new local var 'title_start' - to support nested calls to format-mode-line and redisplay. - Set mode_line_target to MODE_LINE_TITLE. - (Fformat_mode_line): Use them and new local var 'string_start' to - support nested calls to format-mode-line and redisplay. - Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING. - Don't trim trailing dashes. - (decode_mode_spec): Don't make infinite number of trailing dashes - for MODE_LINE_NOPROP and MODE_LINE_STRING targets. - (syms_of_xdisp): Initialize and staticpro mode_line_string_face, - mode_line_string_face_prop, and Vmode_line_unwind_vector. - (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf. - Initialize mode_line_target to MODE_LINE_DISPLAY. - -2005-05-29 Richard M. Stallman - - * buffer.c (Fbuffer_local_value): Call indirect_variable. - -2005-05-28 Masatake YAMATO - - * xdisp.c (note_mode_line_or_margin_highlight): Change the - pointer to a hand cursor when hoovering over a mouse-face. - -2005-05-27 Kenichi Handa - - * xterm.c (x_encode_char): Call check_ccl_update in advance. - - * ccl.c: Now an element of Vccl_program_table is a vector of - length 4, not 3. - (ccl_get_compiled_code): New arg idx. Caller changed. - Adjust for the change of Vccl_program_table. - (setup_ccl_program): Adjust for the change of Vccl_program_table. - (check_ccl_update): New function. - (Fregister_ccl_program): Use ASET to set an element of a vector. - Adjusted for the change of Vccl_program_table. - - * ccl.h (struct ccl_program): New member idx. - (check_ccl_update): Extern it. - -2005-05-27 Juanma Barranquero - - * image.c (Vimage_library_alist): Move from image.el. - (syms_of_image): Defvar it. - (lookup_image_type): Use it. - - * buffer.c (Fbuffer_local_value): Make argument name match its use - in docstring. - -2005-05-26 Juanma Barranquero - - * keyboard.c (Frecursive_edit): Fix typo in docstring. - (Fposn_at_x_y): Make argument name match its use in docstring. - -2005-05-26 Lute Kamstra - - * eval.c (Frun_hooks): Mention run-mode-hooks in docstring. - -2005-05-24 Masatake YAMATO - - * xdisp.c (note_mode_line_or_margin_highlight): Use b and e - as loop sentinels. - -2005-05-24 Nick Roberts - - * xmenu.c (Fx_popup_dialog): Add a third boolean argument to - select frame title ("Question"/"Information"). - (xdialog_show): Use it. - - * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c. - - * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c. - - * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with - a third argument (Qnil). - - * lisp.h: x-popup-dialog can have three arguments. - - * editfns.c (Fmessage_box): Use "Information" for frame title. - -2005-05-23 Thien-Thi Nguyen - - * termcap.c [VMS]: Include . - -2005-05-23 Masatake YAMATO - - * xdisp.c (note_mode_line_or_margin_highlight): Add code - for mouse-face. Change the type of the first argument from `window' - to `Lisp_Object'. - (note_mouse_highlight): Call note_mode_line_or_margin_highlight with - window instead of w. - -2005-05-22 Andreas Schwab - - * process.c (send_process): Move misplaced volatile. - -2005-05-21 Richard M. Stallman - - * xdisp.c (display_mode_element): If we're processing a list and - padding is specified, put it after the last element. - -2005-05-21 Eli Zaretskii - - * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support - "superroot" on DOS_NT systems. - -2005-05-21 David Hunter (tiny change) - - * process.c (send_process): Restore the SIGPIPE handler if we - catch a SIGPIPE. - -2005-05-20 Juanma Barranquero - - * image.c (lookup_image, png_read_from_memory): Remove hacks (and - misleading comments). - (DEF_IMGLIB_FN): Use C calling convention for image libraries. - -2005-05-20 KOBAYASHI Yasuhiro - - * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges): - Correct the right value. - -2005-05-19 Nick Roberts - - * keyboard.c (syms_of_keyboard): Remove Lisp variables - post-command-idle-hook and post-command-idle-delay. - (command_loop_1): Don't try to execute post-command-idle-hook. - -2005-05-16 Kim F. Storm - - * xdisp.c (handle_display_prop): Handle empty replacement. - (handle_single_display_spec): Return -1 for empty replacement. - - * keyboard.c (adjust_point_for_property): Skip empty overlay string. - - * .gdbinit (pitx): Print more info about iterator. - -2005-05-16 Andreas Schwab - - * unexmacosx.c (unexec_realloc): Move declarations before statements. - -2005-05-14 Richard M. Stallman - - * xdisp.c (message3): Call cancel_echoing. - - * alloc.c (Fmemory_full_p): New function. - (syms_of_alloc): defsubr it. - - * process.c (send_process_trap): Unblock SIGPIPE. - (send_process): Reset SIGPIPE handler before reporting error. - -2005-05-14 Nick Roberts - - * emacs.c (syms_of_emacs): Fix doc string for system-type. - -2005-05-13 Richard M. Stallman - - * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler. - (Finsert_file_contents): If we read 0 bytes from a special file, - unlock the visited file if we locked it. - (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes. - (Ffile_exists_p, Ffile_symlink_p): Doc fixes. - -2005-05-13 YAMAMOTO Mitsuharu - - * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init. - - * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]: - Regard toolkit scroll bar thumb drag events as squeezable and prevent - redisplay from being paused by them. - - * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h. - [!MAC_OSX] (target_ticks): Remove variable. - [!MAC_OSX] (check_alarm, pause, index): Remove functions. - [!MAC_OSX && __MRC__] (sys_strftime): Likewise. - [!MAC_OSX] (select): If fd 0 is not set in rfds and some input - event occurs before timeout, behave as if the function were interrupted. - [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM - handling using Time Manager routines. - [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask): - New variables. - [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer) - (setitimer): New functions. - - * macfns.c, macmenu.c: Don't include signal.h. - - * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds): - Rename from get_control_part_bound. All callers changed. - (x_scroll_bar_clear): New function. - (x_clear_frame): Use it. - (XTset_vertical_scroll_bar): Don't call Draw1Control. - (x_scroll_bar_handle_click): Change type of second argument from - int to ControlPartCode. - (check_alarm): Remove declaration. - (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it. - (XTread_socket): Use ControlPartCode instead of SInt16. - -2005-05-13 Nozomu Ando - - * unexmacosx.c: Include assert.h. - (MACOSX_MALLOC_MULT16): New define. - [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether - ptr is in unexec regions by checking it is multiple of 16. - (unexec_malloc_header_t): New typedef. - (unexec_malloc, unexec_realloc, unexec_free): Store and use - allocated size information in unexec_malloc_header. - -2005-05-10 Richard M. Stallman - - * xterm.c (noinclude): Add #undef. - - * image.c, xfns.c, xmenu.c: Don't include signal.h. - -2005-05-09 Juanma Barranquero - - * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file) - (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p): - Doc fixes. - - * dired.c (Ffile_name_completion): Make argument name - match its use in docstring. - -2005-05-08 Luc Teirlinck - - * eval.c (Fdefvaralias): Remove any pre-existing - variable-documentation property of the alias. - -2005-05-07 Thien-Thi Nguyen - - * xfns.c (start_hourglass): Do nothing when running on a tty. - -2005-05-07 Juanma Barranquero - - * fns.c (Fchar_table_range): Fix typos in docstring. - -2005-05-06 Stefan Monnier - - * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup. - -2005-05-06 Eli Zaretskii - - * lread.c (Flocate_file_internal): Doc fix. - - * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc. - -2005-05-06 YAMAMOTO Mitsuharu - - * macselect.c (x_own_selection): Accept Lisp string as result of - selection converter function. - (x_clear_frame_selections): Don't call x-lost-selection-functions - if Emacs is not owner of the selection. - (Vmac_services_selection): Put variable and initialization in - #ifdef MAC_OSX. - (syms_of_macselect) [MAC_OSX]: Set default value of - Vmac_services_selection to PRIMARY. - - * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable. - (mac_handle_tool_bar_click): Remove unused function and declaration. - [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback) - (install_scroll_bar_timer, set_scroll_bar_timer) - (control_part_code_to_scroll_bar_part, construct_scroll_bar_click) - (get_control_part_bound, x_scroll_bar_handle_press) - (x_scroll_bar_handle_release, x_scroll_bar_handle_drag) - (x_set_toolkit_scroll_bar_thumb): New functions and declarations. - [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer) - (scroll_bar_timer_event_posted_p): New variables. - [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY) - (SCROLL_BAR_CONTINUOUS_DELAY): New macros. - (x_scroll_bar_create): Set control reference with NewControl. - (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]: - Initialize track_top and track_height to nil. - (x_scroll_bar_set_handle, x_scroll_bar_note_movement): - Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS. - (XTset_vertical_scroll_bar): Don't make space between scroll bar - and associated window. - (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width - from window config. - (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: - Set track_top and track_height to nil when scroll bar size is changed. - Recalculate them if they are nil. - (XTread_socket) [MAC_OSX]: Use control kind to determine if the - clicked control is a scroll bar. - (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar - event handler functions. Don't add modifiers to scroll bar click - events. Call scroll bar release handler when window is deactivated. - (mac_initialize): Remove unused code for X toolkit. - (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]: - Initialize Vx_toolkit_scroll_bars to nil. - - * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: - New members track_top and track_height. - - * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine - init_process when including sys/select.h. - -2005-05-05 Luc Teirlinck - - * eval.c (Fdefvaralias): Doc fix. - - * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes. - -2005-05-05 Kim F. Storm - - * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows - default value. - (syms_of_buffer): Add default-cursor-in-non-selected-windows. - Fix type of cursor-in-non-selected-windows. - -2005-05-03 Jan Dj,Ad(Brv - - * mac.c: #undef init_process so not to conflict with system headers. - -2005-05-02 Richard M. Stallman - - * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows. - - * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot. - - * xdisp.c (Vcursor_in_non_selected_windows) - (Qcursor_in_non_selected_windows): Vars deleted. - (syms_of_xdisp): Don't initialize them. - (get_window_cursor_type): Use cursor_in_non_selected_windows - buffer slot. - -2005-05-02 Kim F. Storm - - * macros.c (executing_kbd_macro_index): Rename from - executing_macro_index. All uses changed. - (executing_kbd_macro_iterations): Rename from - executing_macro_iterations. All uses changed. - (executing_kbd_macro): Rename from executing_macro. - All uses changed. - (syms_of_macros): Rename Lisp var executing-macro-index to - executing-kbd-macro-index. - - * xdisp.c (move_it_in_display_line_to): Fix last change. - -2005-05-01 Luc Teirlinck - - * xmenu.c (Fx_popup_menu): Doc fix. - - * charset.c (syms_of_charset): Delete defsubr for Schars_in_region. - -2005-05-02 Jason Rumney - - * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes. - -2005-05-02 Nozomu Ando - - * sysselect.h: Fix typo. - -2005-05-02 Nick Roberts - - * charset.c (Fchars_in_region): Remove as obsolete. - -2005-05-01 Kim F. Storm - - * xdisp.c (move_it_in_display_line_to): Stop if we move beyond - TO_CHARPOS. This may happen if last glyphs was an image or stretch - glyph. - -2005-05-01 Luc Teirlinck - - * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro. - -2005-05-01 Richard M. Stallman - - * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show): - If user cancels the menu, quit unless FOR_CLICK. - - * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro. - All uses changed. - (syms_of_macros): Define only executing-kbd-macro, not executing-macro. - * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro. - * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro. - * commands.h (Vexecuting_kbd_macro): Likewise. - -2005-05-01 Thien-Thi Nguyen - - * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel. - -2005-04-30 Richard M. Stallman - - * fileio.c (Ffind_file_name_handler): Handle the `operations' - property of the file name handler. - (Qoperations): New variable. - (syms_of_fileio): Initialize and staticpro it. - - * xdisp.c (set_message_1): Delete xassert. - -2005-04-29 YAMAMOTO Mitsuharu - - * mac.c: Don't include time.h. Include sysselect.h after systime.h. - - * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt. - - * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime - before/after including Carbon.h if there is a working mktime. - -2005-04-28 Kim F. Storm - - * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed. - Fix cyclic alias check. If alias loop is detected, signal - circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P. - -2005-04-28 Lute Kamstra - - * eval.c (do_autoload): Record only autoloads in the autoload - property of symbols. - -2005-04-28 Nick Roberts - - * emacs.c (USAGE1): Add --basic-display and --quick options. - -2005-04-27 Kim F. Storm - - * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection. - -2005-04-26 Richard M. Stallman - - * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes. - (syms_of_window): Doc fixes. - - * indent.c (Fvertical_motion): Undo previous change. - -2005-04-26 Kenichi Handa - - * fns.c (char_table_range): New function. - (Fchar_table_range): Signal an error if characters in the range - have inconsistent values. Don't check the parent. - -2005-04-25 Kenichi Handa - - * fontset.c (fontset_set): Fix previous change. - -2005-04-24 Richard M. Stallman - - * indent.c (Fvertical_motion): Bind fontification-functions to nil. - -2005-04-24 Eli Zaretskii - - * regex.c (re_search_2, re_match_2_internal): Convert second arg - of RE_TRANSLATE to int, to shut up GCC warnings. - - * fileio.c (Fcopy_file): Doc fix. - [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and - not needed. - -2005-04-24 YAMAMOTO Mitsuharu - - * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o. - (SOME_MACHINE_OBJECTS): Likewise. - (mac.o): Depend on ccl.h. - (macselect.o): New target. - - * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]: - Call syms_of_macselect. - - * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections. - - * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h. - (QCLIPBOARD): Remove variable. - (syms_of_mac): Don't initialize it. - (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p): - Remove functions. - (syms_of_mac): Don't defsubr them. - [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC) - (QHFS_plus_D, QHFS_plus_C): New variables. - (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them. - [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp) - (cfstring_create_normalized): New functions. - [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise. - (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it. - - * macterm.c (handling_window_update, terminate_flag): - Remove variables. - (do_window_update, do_ae_quit_application, XTread_socket): - Don't use them. - (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define. - [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event) - (init_service_handler): Move to macselect.c. Remove declarations. - [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern. - (Qapplication, Qabout): New variables. - (syms_of_mac): Initialize them. - [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste) - (Qperform): New variables. - (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them. - (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu. - (do_menu_choice): Unhighlight menu bar also when menu_id is 0. - (mac_store_application_menu_event, init_menu_bar): New functions. - [USE_CARBON_EVENTS] (mac_handle_command_event) - (init_command_handler): New functions. - (mac_handle_window_event): Return noErr on window update event. - (do_ae_quit_application): Call mac_store_application_menu_event. - (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler - and init_menu_bar. - - * macterm.h (x_clear_frame_selections): Add extern. - - * macselect.c: New file for selection processing on Mac OS. - -2005-04-23 Richard M. Stallman - - * fileio.c (Fcopy_file): New arg MUSTBENEW. - (Frename_file): Pass new arg to Fcopy_file. - - * window.c (window_size_fixed): Variable deleted. - (syms_of_window): Initialize window-size-fixed to nil. - But don't DEFVAR window_size_fixed. - -2005-04-23 Andreas Schwab - - * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define. - (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to - use lib64 instead of lib. - (_LP64) [_ARCH_PPC64]: Define if not defined. - -2005-04-23 David Hunter (tiny change) - - * s/ms-w32.h (HAVE_PWD_H): Define. - -2005-04-22 Kenichi Handa - - * fns.c (copy_sub_char_table): Explicitly copy the default value - of the sub-chartable. - - * fontset.c (fontset_set): When a sub-chartable is created, - explicitly sets the defalt value. - -2005-04-22 Kim F. Storm - - * fns.c (Fplist_get): Replace by Fsafe_plist_get. - (Fsafe_plist_get): Rename to Fplist_get. - (Fsafe_get): Remove, as Fget now uses safe Fplist_get. - (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get. - - * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN. - - * xdisp.c (store_mode_line_string, produce_stretch_glyph) - (note_mode_line_or_margin_highlight, note_mouse_highlight): - Use Fplist_get instead of Fsafe_plist_get. - - * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get. - -2005-04-21 Miles Bader - - * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field. - -2005-04-20 Thien-Thi Nguyen - - * sysdep.c: Remove reference to defunct vms-pwd.h. - * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS. - * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise. - - * config.in: Regenerate. - -2005-04-20 Kenichi Handa - - * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro. - (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro. - (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro. - - * alloc.c (make_sub_char_table): Argument changed to initial - value of the slots. - - * data.c (Faref): Handle special slots used as default values of - ascii, eight-bit-control, eight-bit-control. Don't ignore a - default value set for a group of characters. - (Faset): Signal an error if IDXVAL is not a valid character code. - Make a sub-chartable with correct initial value. - - * fns.c (Fset_char_table_range): Don't set slots used as default - values for ascii, eight-bit-control, eight-bit-graphic. - Don't call Faref with charset-id. - (Fset_char_table_default): Document how to treat normal character - argument. Handle special slots used as default values of ascii, - eight-bit-control, eight-bit-control. Make a sub chartable if - necessary. - -2005-04-20 Kenichi Handa - - * search.c (boyer_moore): Fix previous change. - -2005-04-19 Kim F. Storm - - * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default - face unless last visible char and first invisible char have the - same face. Also use default face if saved_face_id is undefined. - -2005-04-19 YAMAMOTO Mitsuharu - - * macgui.h (MacFontStruct): Remove member `fontname'. Add member - `full_name'. - [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for - mac_scriptcode member. - - * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables. - (syms_of_mac): Don't initialize them. - (Vmac_charset_info_alist): New variable. - (syms_of_mac): Defvar it. - (create_text_encoding_info_alist): New function. - (decode_mac_font_name, mac_to_x_fontname) - (x_font_name_to_mac_font_name, init_font_name_table): Don't hard - code the correspondence among XLFD charsets, Mac script codes, and - Emacs coding systems. Use Vmac_charset_info_alist and result of - create_text_encoding_info_alist instead. - (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager - routines also on Mac OS Classic. - (init_font_name_table) [!TARGET_API_MAC_CARBON]: - Use add_font_name_table_entry. - (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as - specified. Derive unspecified scalable fields from specified one. - (x_list_fonts): Consider Valternate_fontname_alist. - (kDefaultFontSize): Change value from 9 to 12. - (XLoadQueryFont): Get decoded font family, font face, and charset - from x_font_name_to_mac_font_name. Set full name of loaded font. - (mac_unload_font): Free `full_name' member. - (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns - NULL. Copy full_name member of struct MacFontStruct to that of - struct font_info. - -2005-04-19 Kim F. Storm - - * xdisp.c (handle_stop): Set saved_face_id to current face if - selective_display_ellipsis_p so ellipsis will be shown in same - face as preceding text. - (setup_for_ellipsis): Don't set saved_face_id here. - (next_element_from_display_vector): Default to saved_face_id. - - * fns.c (Fsafe_get): New function. - (syms_of_fns): Defsubr it. - - * lisp.h (Fsafe_get): EXFUN it. - - * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay - loops in case of bad face property lists. Limit number of face - alias lookups to 10 (in case of face alias loops). - -2005-04-18 Kim F. Storm - - * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap. - It replaces the corresponding member from struct window, as a - window may now show multiple overlay arrows. - Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap. - - * dispnew.c (row_equal_p, update_window_line, scrolling_window): - Compare overlay_arrow_bitmap than overlay_arrow_p members. - - * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row - rather than from window. - (update_window_fringes): Compare overlay_arrow_bitmap rather than - overlay_arrow_p members. - (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name - if not default. - - * window.h (struct window): Remove member overlay_arrow_bitmap. - - * window.c (make_window): Don't initialize overlay_arrow_bitmap. - - * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg. - Calls changed. Don't check for overlay-arrow-bitmap property here. - (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left - fringe is present, return Lisp integer for bitmap (or -1 for default). - Fix value of overlay-arrow-bitmap property to be a symbol, use - lookup_fringe_bitmap to parse it. - (display_line): Change call to overlay_arrow_at_row. Store integer - return value as overlay bitmap in row rather than window. - Only show overlay arrow if row displays text, or if no other overlay - arrow is seen in window (if overlay marker is at point-max). - -2005-04-18 Thien-Thi Nguyen - - * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL. - -2005-04-18 Lute Kamstra - - * lread.c (Vloads_in_progress): Static. - * fns.c (Vloads_in_progress): Remove extern. - (load_in_progress): Add extern. - (Frequire): Use load_in_progress instead of Vloads_in_progress. - -2005-04-18 Thien-Thi Nguyen - - * xmenu.c (Fx_popup_menu): Initialize error_name to NULL. - -2005-04-18 YAMAMOTO Mitsuharu - - * macterm.c (XTread_socket): Don't beep on keyboard input even if - no frame is visible. - -2005-04-16 Dan Nicolaescu - - * term.c (struct keys): Add support for shifted keys. - -2005-04-16 Richard M. Stallman - - * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case. - (set_message): Call with_echo_area_buffer with WHICH = 0. - (set_message_1): Erase the echo area buffer first thing. - (echo_area_display): Don't clear echo_message_buffer. - -2005-04-16 YAMAMOTO Mitsuharu - - * Makefile.in (mac.o): Depend on charset.h and coding.h. - - * mac.c: Include charset.h and coding.h. - [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern. - [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function. - [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it. - - * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise. - - * image.c [MAC_OSX] (image_load_quartz2d): Likewise. - - * macterm.c (x_autoselect_window_p): Remove variable. - (last_window): New variable. - (XTreassert_line_highlight, x_change_line_highlight): - Remove declarations. - (mac_focus_changed, x_detect_focus_change): New functions and - declarations. - (XTextExtents16, front_emacs_window): Remove function. - (mac_focus_frame): New function. - (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket) - (mac_check_for_quit_char): Use it instead of front_emacs_window. - (x_scroll_bar_report_motion): Obtain window from control owner. - (x_make_frame_invisible): Set window manager size hint. - (do_mouse_moved): Remove function. - (XTread_socket): Move its contents here. Generate select-window - event on mouse movement if needed. Use x_detect_focus_change on - activate/deactivate events. Don't deiconify frame or invalidate - window rectangle when dnd items are dropped. - Don't activate/deactivate root control. - (frame_highlight, frame_unhighlight): Activate/deactivate root - control here. - (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p. - - * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]: - New extern. - -2005-04-15 Luc Teirlinck - - * Makefile.in: Define new macro TOOLTIP_SUPPORT. - (lisp): Use it. - (SOME_MACHINE_LISP): Add tooltip. - -2005-04-14 YAMAMOTO Mitsuharu - - * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h. - Don't include TextEncodingConverter.h. - (mac_system_script_code, Vmac_system_locale): New variables. - (syms_of_mac): Defvar them. - (mac_get_system_locale): New function. - - * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]: - Use ENCODE_SYSTEM to encode title bar string. - (x_create_tip_frame): Apply 2005-03-18 change for xfns.c. - (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]: - Use CFStringGetSystemEncoding to get system default string encoding. - - * macterm.c [!TARGET_API_MAC_CARBON]: Don't include - TextEncodingConverter.h. - -2005-04-13 Steven Tamm - - * macterm.c (syms_of_macterm): Remove redundant definition of - mac-pass-control-to-system. - -2005-04-12 Stefan Monnier - - * window.c (Fset_window_configuration): Be careful when you choose - among several possible points for the new_current_buffer. - -2005-04-12 YAMAMOTO Mitsuharu - - * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call - poll_for_input_1. Set interrupt_input_pending to 1 instead. - (Qlanguage_change) [MAC_OS]: New variable. - (syms_of_keyboard) [MAC_OS]: Intern and staticpro it. - (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT. - - * macterm.c (mac_keyboard_text_encoding) - (current_mac_keyboard_text_encoding): Remove variables. - (XTread_socket): Store language-change event if keyboard script change - is detected. Don't convert input to `mac_keyboard_text_encoding'. - (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding. - - * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT. - -2005-04-10 Richard M. Stallman - - * emacs.c (standard_args): Rename --bare-bones to --quick. - Add -D aka --basic-display. - - * buffer.c (Fmake_indirect_buffer): Clear out some local variables. - -2005-04-09 Richard M. Stallman - - * keymap.c (where_is_internal): Convert a string used as event type - into "(any string)". - - * lread.c (Vloads_in_progress): Not static. - * fns.c (Vloads_in_progress): Add extern. - (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil. - -2005-04-09 Thien-Thi Nguyen - - * dispnew.c (mirror_line_dance): Avoid crash if W2 is null. - -2005-04-09 Lute Kamstra - - * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is - within the accessible part of the buffer. - -2005-04-09 Kim F. Storm - - * lread.c (readevalloop): Add args START and END as region in - current buffer to read. Callers changed. - When specified, narrow to this region only when reading, - not during eval. Track next point to read from during eval. - Also restore point to "real" buffer position before eval. - (Feval_region): Don't save excursion and restriction here, and - don't narrow to region. Just pass region to readevalloop. - Note: Point is now preserved even when PRINTFLAG is nil. - -2005-04-08 Kim F. Storm - - * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>". - -2005-04-06 Kim F. Storm - - * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones. - -2005-04-06 YAMAMOTO Mitsuharu - - * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'. - (Fmac_get_preference): Doc fix. - - * macfns.c (Fx_create_frame, x_create_tip_frame): - Add "fontset-mac" to fallback font/fontsets. - -2005-04-04 Kim F. Storm - - * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc. - - * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry. - Call it again after autoload. - -2005-04-02 Jan Dj,Ad(Brv - - * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling - mallopt. - - * ralloc.c (r_alloc_init): Ditto. - -2005-04-01 Kenichi Handa - - * lisp.h (Vascii_upcase_table, Vascii_canon_table) - (Vascii_eqv_table): Extern them. - - * casetab.c (set_case_table): If standard is nonzero, setup - Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table. - - * search.c (looking_at_1): Use current_buffer->case_canon_table, - not DOWNCASE_TABLE. - (string_match_1): Likewise. - (fast_c_string_match_ignore_case): Use Vascii_canon_table, not - Vascii_downcase_table. - (fast_string_match_ignore_case): Likewise. - (search_buffer): Fix checking of boyer-moore usability. - (boyer_moore): Calculate translate_prev_byte1/2/3 in advance. - No need of tranlating characters in PAT. Fix calculation of - simple_translate. - -2005-03-31 Stefan Monnier - - * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap. - (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it. - Use XtNtopShadowPixel and XtNbottomShadowPixel. - (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't - really work and that breaks with some versions of Xaw3d. - -2005-03-31 Kenichi Handa - - * coding.c (syms_of_coding): Fix previous change. - -2005-03-30 Stefan Monnier - - * fileio.c (search_embedded_absfilename): Fix last change. - -2005-03-25 Kenichi Handa - - * coding.c (syms_of_coding): Suggest to use set-coding-category in - the docstring of coding-category-list. - -2005-03-31 Kim F. Storm - - * keyboard.c (Qmouse_fixup_help_message): New var. - (syms_of_keyboard): Intern and staticpro it. - (show_help_echo): Apply mouse-fixup-help-message to help string. - -2005-03-30 Kim F. Storm - - * xdisp.c (display_line): Allow multiple overlay arrows in window. - -2005-03-28 Stefan Monnier - - * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP. - (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p. - (Ffile_name_absolute_p): Use it. - (search_embedded_absfilename): New fun, extracted from - Fsubstitute_in_file_name. Use file_name_absolute_p. - Free the pw data after use. - (Fsubstitute_in_file_name): Use it. - After cutting a prefix, re-check file-name-handler. - -2005-03-26 Lennart Borgman - - * w32term.h (x_output): Add focus_state. - - * w32term.c (x_focus_changed, w32_detect_focus_change): New functions. - (w32_read_socket) : Call w32_detect_focus_change. - -2005-03-25 Stefan Monnier - - * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit): - Use Fexit_minibuffer. - (Fexit_minibuffer): Mark it as no-return, deactivate the mark. - -2005-03-24 Stefan Monnier - - * dired.c (Ffile_attributes): Add a missing gcpro. - - * alloc.c (make_number): The arg can be bigger than `int'. - * lisp.h (make_number): Make prototype more precise. - - * process.c, dired.c (Vfile_name_coding_system) - (Vdefault_file_name_coding_system): - * callproc.c (Vdoc_file_name, Vfile_name_coding_system) - (Vdefault_file_name_coding_system): Remove unused declarations. - -2005-03-24 Jan Dj,Ad(Brv - - * xmenu.c (create_and_show_popup_menu): Just remove menu and return - if it failed to pop up (Gnome "show pointer on ctrl" option makes - menus fail to pop up). - -2005-03-24 Stefan Monnier - - * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9. - Just prepend a backslash without replacing the NBSP by an SPC. - -2005-03-22 Kim F. Storm - - * xfaces.c (lookup_derived_face): Add arg SIGNAL_P. - * dispextern.h (lookup_derived_face): Fix prototype. - * msdos.c (XMenuActivate): Fix call to lookup_derived_face. - - * xdisp.c (handle_single_display_spec): Derive left-fringe and - right-fringe face from fringe face. - - * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face): - Derive face from fringe face. - -2005-03-22 Jan Dj,Ad(Brv - - * xrdb.c (x_load_resources): Undo previous change (2005-03-18). - -2005-03-22 David Kastrup - - * textprop.c (Fnext_char_property_change) - (Fprevious_char_property_change): Allow marker as limit. - (Fnext_single_char_property_change) - (Fprevious_single_char_property_change): Check that limit is a - number in strings. - (Fnext_single_char_property_change): Coerce position to integer. - (Fprevious_single_char_property_change): Same here. - -2005-03-21 Thien-Thi Nguyen - - * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined. - -2005-03-19 Stefan Monnier - - * frame.c (Fignore_event): Remove. - (syms_of_frame): Don't defsubr it. - - * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the - redundant `ignore-event'. - -2005-03-19 Eli Zaretskii - - * unexec.c (write_segment, unexec): Move these functions to avoid - forward references (which cause errors with "gcc -gcoff"). - -2005-03-18 Jan Dj,Ad(Brv - - * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so - that it doesn't become "tooltip". The specbind is enough. - - * xrdb.c (x_load_resources): Use different char *helv when I18N - is present. - -2005-03-17 Kenichi Handa - - * coding.c (syms_of_coding): Docstring of coding-category-list fixed. - -2005-03-17 Stefan Monnier - - * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]: - Use xic_create_fontsetname even for non-Motif menus. - Don't forget to free the fontsetname. - - * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern. - -2005-03-17 Richard M. Stallman - - * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM. - - * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file) - (Fmake_symbolic_link): Use G to read the new file name. - - * callint.c (Finteractive): Document G option. - (Fcall_interactively): Implement G option. - - * buffer.c (buffer_lisp_local_variables): New function, - broken out from Fbuffer_local_variables. - (clone_per_buffer_values): Use buffer_lisp_local_variables. - -2005-03-17 Stefan Monnier - - * xfns.c (xic_create_fontsetname): Add `motif' argument. - Always return a freshly allocated string. - (xic_create_xfontset): Adjust call. - - * xfaces.c (x_update_menu_appearance) [USE_MOTIF]: - Use xic_create_fontsetname to create a fontset so utf-8 locales work. - (dump_realized_face): Fix warning. - - * emacs.c (Fkill_emacs): YAILOM. - - * frame.c (Fignore_event): Fix ancient obscure C-u handling bug. - -2005-03-17 YAMAMOTO Mitsuharu - - * mac.c (HASHKEY_TERMINAL): Remove. - (HASHKEY_MAX_NID): New macro. - (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra - argument. - (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument. - (xrm_create_database, xrm_q_put_resource) - (xrm_merge_string_database, xrm_q_get_resource_1) - (xrm_q_get_resource): Change resource database representation so - that it may not use multiple hash tables for a single database. - [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM. - -2005-03-16 Stefan Monnier - - * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM. - - * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the - locale-coding-system, as was already done for WINDOWSNT. - - * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta - translation for chars in the 0-255 range. - -2005-03-16 Lute Kamstra - - * floatfns.c (Ffloor): Doc fix. - -2005-03-16 YAMAMOTO Mitsuharu - - * mac.c: Include macterm.h instead of directly including Carbon.h. - [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata) - (Qarray, Qdictionary): New variables. - (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them. - [TARGET_API_MAC_CARBON] (Qutf_8): Add extern. - [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro. - [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used - in callback for CFDictionaryApplyFunction. - [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp) - (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp) - (cfobject_desc_to_lisp, cfdictionary_add_to_list) - (cfdictionary_puthash, cfproperty_list_to_lisp): New functions. - [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function. - (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it. - (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro. - (skip_white_space, parse_comment, parse_include_file) - (parse_binding, parse_component, parse_resource_name, parse_value) - (parse_resource_line, xrm_create_database, xrm_q_put_resource) - (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource) - (xrm_cfproperty_list_to_value, xrm_get_preference_database): - New functions. - - * macfns.c (mac_get_rdb_resource): Remove function. - (x_get_string_resource): Use xrm_get_resource. - - * macgui.h (XrmDatabase): Typedef to Lisp_Object. - - * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of - name_list_element. - (mac_make_rdb): Create resource database from preferences and - argument string. - (mac_term_init): Save resource database to cddr part of - name_list_element. - - * macterm.h (xrm_merge_string_database, xrm_get_resource) - (xrm_get_preference_database): Add externs. - [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp) - (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp) - (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise. - - * process.c (init_process): Change `#ifdef DARWIN' to `#if - defined (DARWIN) || defined (MAC_OSX)' - - * s/darwin.h (DARWIN): Don't define. - -2005-03-16 YAMAMOTO Mitsuharu - - * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift): - Remove unused variables. - (syms_of_macfns): Don't initialize them. Likewise for - Qface_set_after_frame_default. Defvar and initialize - Vx_window_horizontal_drag_shape. - (x_set_mouse_color): Change mouse pointer shape. - (mac_window) [!MAC_OSX]: Create root control. - (Fx_create_frame): Remove initializations of mouse pointer shapes. - (hourglass_started): New function (from xfns.c). - (start_hourglass, cancel_hourglass): Put function body in #ifdef - MAC_OSX. - (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress - indicator for each non-tooltip frame if needed, and show it. - (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators. - - * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and - Controls.h. Use ThemeCursor instead of CursHandle. - - * macterm.c (activate_scroll_bars, deactivate_scroll_bars): - Remove functions and declarations. - (mac_set_colors): Take argument for saving background color. - All callers changed. - (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle) - (mac_draw_rectangle, mac_draw_string_common): Save and Restore - background color. - (x_update_end, mac_do_track_drag): Don't reset background color. - (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]: - Use SetThemeCursor. - (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress - indicator control to the upper-right corner of the window. - (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable. - (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it. - (do_window_update): Update controls after updating content area. - (mac_handle_window_event): Remove unused extern. - (XTread_socket): Check both control handle and control part code - to determine whether a scroll bar is clicked. Activate/deactivate - root control instead of contained scroll bar controls. - (make_mac_terminal_frame): Use ThemeCursor constants. - - * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]: - New member hourglass_control. - (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines. - (activate_scroll_bars, deactivate_scroll_bars): Remove declarations. - -2005-03-15 YAMAMOTO Mitsuharu - - * macterm.c (keycode_to_xkeysym_table): Change mapping so that it - coincides with that in Apple X11 except `clear', `enter' on - laptops, and fn + `enter' on laptops. - -2005-03-12 Stefan Monnier - - * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte. - (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR. - (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING. - - * xfns.c (xic_defaut_fontset): New constant. - (xic_create_fontsetname): New function. - Extracted from create_frame_xic. Try to generate a slightly - better fontset. - (xic_create_xfontset): Use it. - (create_frame_xic): Simplify. - -2005-03-11 Stefan Monnier - - * fileio.c (Fmake_symbolic_link): Fix last change. - -2005-03-11 Richard M. Stallman - - * fileio.c (Frename_file, Fadd_name_to_file) - (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory, - expand the basename of FILE relative to it. - -2005-03-11 Kenichi Handa - - * fileio.c (Finsert_file_contents): Call Fcheck_coding_system - before calling setup_coding_system so that autoloading of a coding - system work. - -2005-03-10 Jan Dj,Ad(Brv - - * xfns.c (hourglass_started): New function. - - * dispextern.h: Declare hourglass_started. - - * keyboard.c (Fexecute_extended_command): Restart hourglass - after call to Fcompleting_read if already started. - - * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the - GTK main loop is entered in xterm.c, thus doing the redraw. - -2005-03-10 Kim F. Storm - - * xdisp.c (pos_visible_p): Fix X value in last line of buffer. - -2005-03-08 Kenichi Handa - - * frame.c (x_set_font): Call set_default_ascii_font if an - available font is found. - - * fontset.c (set_default_ascii_font): New function. - (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here. - - * fontset.h (set_default_ascii_font): Extern it. - -2005-03-07 Kim F. Storm - - * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const. - (clear_image_cache_count): New var. - (redisplay_internal): Don't clear face and image caches in the - middle of redisplay; do it afterwards. - - * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else. - - * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos - is valid. If not, clear phys_cursor_on_p and return. - -2005-03-07 Andreas Schwab - - * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT. - -2005-03-06 Richard M. Stallman - - * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT. - - * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO. - (Feval, Ffuncall): Use CHECK_CONS_LIST. - - * lisp.h (CHECK_CONS_LIST): New macro (two definitions). - - * blockinput.h (UNBLOCK_INPUT_TO): New macro. - (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any. - -2005-03-05 Juri Linkov - - * emacs.c (USAGE1): Replace Info node name "command arguments" - with "emacs invocation". - (USAGE3): Fix usage of `--color=MODE' which actually doesn't - allow arguments `--color' and `MODE' to be separated by space. - Add --no-blinking-cursor, -nbc. - (standard_args): Add -nbc, --no-blinking-cursor. - -2005-03-04 Thien-Thi Nguyen - - * s/vms.h: Define NO_HYPHENS_IN_FILENAMES. - * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES. - * fileio.c (Fexpand_file_name) [VMS]: - Use NO_HYPHENS_IN_FILENAMES, not VMS4_4. - * doc.c (munge_doc_file_name) [VMS]: Likewise. - (Fsnarf_documentation): Call munge_doc_file_name. - -2005-03-04 Thien-Thi Nguyen - - * s/vms.h (FILE_SYSTEM_CASE): New macro. - * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name - "manually"; this is now handled generally via FILE_SYSTEM_CASE. - -2005-03-04 YAMAMOTO Mitsuharu - - * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if - defined (MAC_OSX) && defined (HAVE_CARBON)'. - - * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h. - - * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h. - [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent. - (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions. - (mac_clear_font_name_table): Move extern to macterm.h. - - * macfns.c (install_window_handler): Move extern to macterm.h. - (Fx_file_dialog): Check STRINGP (default_filename) to see it is - valid. Don't check !NILP (dir) because it is already checked with - CHECK_STRING. - (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for - specifying the default location and obtaining the selected filename. - - * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h. - - * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that - are included via Carbon.h. - - * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]: - Define USE_CARBON_EVENTS to 1. - (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare. - (x_free_frame_resources): Call remove_window_handler for - non-tooltip windows. - [TARGET_API_MAC_CARBON]: Don't include headers that are included - via Carbon.h. - [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP) - (mac_do_receive_dragUPP): New variables. - (mac_handle_service_event, init_service_handler): Put declarations - and definitions in #ifdef MAC_OSX. - (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for - drag-and-drop handler functions and register them. - (remove_window_handler): New function. - (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]: - Use fsspec_to_posix_pathname. - (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8. - (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM. - [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]: - Set default cursors. - (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX]: Don't call - init_service_handler or init_quit_char_handler. - (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess. - - * macterm.h (install_window_handler, remove_window_handler) - (posix_pathname_to_fsspec, fsspec_to_posix_pathname) - (mac_clear_font_name_table): New externs. - -2005-03-03 Thien-Thi Nguyen - - * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined. - (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally. - (Fexpand_file_name): Likewise. - -2005-03-03 Thien-Thi Nguyen - - * emacs.c (Fkill_emacs): Use EXIT_SUCCESS; - no longer special-case VMS. Add bogus return value. - -2005-03-02 Kim F. Storm - - * dispextern.h (XASSERTS): Define to 0 if not already defined. - (xassert) [!XASSERTS]: Define dummy version. - -2005-03-02 Kim F. Storm - - * xdisp.c (redisplay_window): YABX (yet another bogus xassert). - Reported by David Kastrup. - -2005-03-01 Ehud Karni - - * xdisp.c (get_next_display_element): Fix control and escape - glyph from display vector. - -2005-03-01 Stefan Monnier - - * keyboard.c (Fposn_at_x_y): Check integerness of X and Y. - -2005-02-27 Richard M. Stallman - - * xdisp.c (fast_find_position): Rename END to BEG. - (syms_of_xdisp) : Doc fix. - -2005-02-27 Jan Dj,Ad(Brv - - * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to - gtk_window_resize and x_wm_set_size_hint. - -2005-02-25 Kim F. Storm - - * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16. - - * xdisp.c (init_from_display_pos): Don't read past end of - it->overlay_strings array. - -2005-02-25 Stephan Stahl (tiny change) - - * buffer.c (syms_of_buffer): Fix typo. - -2005-02-23 Lute Kamstra - - * buffer.c (Foverlay_buffer): Doc fix. - -2005-02-22 Kim F. Storm - - * minibuf.c (Ftry_completion, Fall_completions): Allow both string - and symbol keys in alists and hash tables. - - * xdisp.c (fast_find_position): Fix search for start of overlay. - -2005-02-21 Kim F. Storm - - * window.c (window_scroll_pixel_based): When scrolling backwards, - handle partial visible line at end of window even when we hit PT. - -2005-02-21 Stefan Monnier - - * keymap.h: Declare Fcurrent_active_maps, used in doc.c. - -2005-02-21 Kim F. Storm - - * xdisp.c (move_it_vertically_backward): Eliminate two xasserts. - I think those asserts are bogus if buffer contains invisible text - or images. - -2005-02-21 David Kastrup - - * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error. - -2005-02-20 Kim F. Storm - - * xdisp.c (pos_visible_p): Be sure to move to the specified - position. Always get the full ascent / descent of the - corresponding row, to return reliable rtop and rbot values. - (back_to_previous_visible_line_start): Fix 2005-01-18 change. - Must look one character back, as back_to_previous_line_start - returns position after the newline. - (move_it_vertically_backward): Fix heuristic for when to move further - back in case line_height * 2/3 is larger than window height. - (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p - as it does not do anything anymore. Add arg current_matrix_p to - use current matrix rather than desired matrix when set. - (try_cursor_movement): Don't scroll to make cursor row fully - visible if cursor didn't move. This avoids unexpected recentering - in case of blinking cursor or accepting process output. - Use current matrix to check cursor row visibility. - (redisplay_window): Fix whether to recenter or move to top in case - cursor line is taller than window height. - (find_first_unchanged_at_end_row): Stop search if we reach a row - which not enabled (instead of abort). - -2005-02-18 Kim F. Storm - - * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property - to be nil in a :box attribute value list; customize prints that - as lisp value when no box color is specified. - - * .gdbinit (pitx, pit): Pretty print display iterator. - (prowx, prow): Pretty print glyph row. - (pcursorx, pcursor): Pretty print a window cursor. - (pwinx, pwin): Pretty print struct window. - -2005-02-18 Stefan Monnier - - * alloc.c (BLOCK_BYTES): Harmless typo. - -2005-02-17 Andreas Schwab - - * xfns.c (hack_wm_protocols): Use correct type for last parameter - of XGetWindowProperty to avoid aliasing issues. - (Fx_window_property): Likewise. - - * xselect.c (Fx_disown_selection_internal): Use union of struct - input_event and struct selection_input_event to avoid aliasing issues. - - * xterm.c (handle_one_xevent): Use union of struct input_event and - struct selection_input_event to avoid aliasing issues. - (SET_SAVED_MENU_EVENT): Adapt reference to inev. - -2005-02-17 Kim F. Storm - - * dispextern.h (enum it_method): New enum. - (GET_FROM_*): Its members. - (struct it): Change member method from function pointer to enum. - - * xdisp.c (check_it, init_from_display_pos, handle_stop) - (setup_for_ellipsis, handle_single_display_spec) - (handle_composition_prop, next_overlay_string) - (get_overlay_strings, reseat_1, reseat_to_string) - (next_element_from_ellipsis, BUFFER_POS_REACHED_P) - (in_display_vector_p, display_line, get_next_display_element): - Change it->method from function pointer to enum. - (get_next_element): New array to map it->method to function. - (get_next_display_element): Use it. - (set_iterator_to_next): Use switch instead of if/else chain. - -2005-02-15 Benjamin Riefenstahl - - * w32select.c: Summary: Thorough rework to implement Unicode - clipboard operations and delayed rendering. - - Drop last_clipboard_text and related code, keep track of - ownership via clipboard_owner instead. Drop old #if0 sections. - - (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP) - (clipboard_owner, modifying_clipboard, cfg_coding_system) - (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text) - (current_coding_system, current_requires_encoding) - (current_num_nls, current_clipboard_type, current_lcid): - New static variables. - - (convert_to_handle_as_ascii, convert_to_handle_as_coded) - (render, render_all, run_protected, lisp_error_handler) - (owner_callback, create_owner, setup_config) - (enum_locale_callback, cp_from_locale, coding_from_cp): - New local functions. - - (term_w32select, globals_of_w32select): New global functions. - - (Fw32_set_clipboard_data): Ignore parameter FRAME, use - clipboard_owner instead. Use delayed rendering and provide - all text formats. Provide CF_LOCALE if necessary. - - (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and - CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not - available. Force DOS line-ends for decoding. - - (Fx_selection_exists_p): Handle CF_UNICODETEXT. - - (syms_of_w32select): Init and register new variables. - - * w32.h: Add prototypes for globals_of_w32select and - term_w32select. Make the neighboring K&R declarations into - prototypes, too. - - * emacs.c: Include w32.h to get function prototypes. - (main): Call globals_of_w32select. - - * w32.c (term_ntproc): Call term_w32select. - - * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef. - -2005-02-16 Kim F. Storm - - * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and - at end of display vector. - -2005-02-15 Richard M. Stallman - - * xdisp.c (get_next_display_element): Fix escape-glyph criterion - for mode and header lines. - - * lread.c (syms_of_lread) : Doc fix. - - * keymap.h (describe_map_tree): Change decl. - - * keyboard.c (command_loop_1): Always use safe_run_hooks - to run Qdeferred_action_function. - - * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed. - (describe_map, describe_vector): Likewise. When it's 1, - don't omit shadowed bindings, instead mark them as shadowed. - - * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps - for describe_map_tree. Pass 1 for MENTION_SHADOW. - - * data.c (Fsetq_default): Allow no arg case. - -2005-02-14 Kenichi Handa - - * coding.c (encode_coding_string): Always return a unibyte string. - If NOCOPY is nonzero and there's no need of encoding, make STR - unibyte directly. - - * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII - multibyte string, signal an error instead of aborting. - -2005-02-12 Dan Nicolaescu - - * keyboard.c: If HAVE_FCNTL_H include fcntl.h. - -2005-02-12 Kim F. Storm - - * xdisp.c (expose_window): Don't fix overlaps for mode lines. - -2005-02-10 Kim F. Storm - - * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL - if it moves outside window or it doesn't display text. - -2005-02-09 Kim F. Storm - - * undo.c (Fprimitive_undo): Check that undo function does not - switch buffer. - -2005-02-08 Jan Dj,Ad(Brv - - * xselect.c (selection_data_to_lisp_data): For the special case - type == XA_ATOM, data contains array of int, not array of Atom. - (x_property_data_to_lisp, selection_data_to_lisp_data): - Comment update: data must be array of int for format == 32. - -2005-02-08 Stefan Monnier - - * undo.c (Fprimitive_undo): Check veracity of delta,start,end. - -2005-02-07 Jan Dj,Ad(Brv - - * xfns.c (Fx_change_window_property): Use long array when format is 32. - (Fx_window_property): If format is 32 and long is bigger than 32 bits, - convert long array returned from XGetWindowProperty to an int array. - (x_set_tool_bar_lines): Check that width and height is greater than - zero before clearing area. - - * xselect.c (x_reply_selection_request): Pass long array to - XChangeProperty so that 64 bit longs are handeled correctly. - (x_get_window_property): If format is 32 and long is bigger than 32 - bits convert data from XGetWindowProperty from long array to int array. - (lisp_data_to_selection_data): When the input is a vector and the - format is 32, allocate a long array even if long is bigger than 32 bits. - (x_fill_property_data): Use char, short and long as the man page - for XChangeProperty specifies. This way the data returned is OK for - both 32 and 64 bit machines. - (x_handle_dnd_message): Calculate size correctly even for 64 bit - machines. - (Fx_send_client_event): Undo change from 2005-02-05, - x_fill_property_data now handles that case. - - * xfns.c (Fx_backspace_delete_keys_p): Add comment about the - reason for the approach in the code. - -2005-02-07 Kim F. Storm - - * undo.c (Fprimitive_undo): Record max one dummmy apply element. - -2005-02-06 Richard M. Stallman - - * eval.c (Frun_hook_with_args) - (Frun_hook_with_args_until_success) - (Frun_hook_with_args_until_failure): Doc fixes. - -2005-02-05 Andreas Schwab - - * sysdep.c (sys_subshell): Properly terminate execlp argument list. - -2005-02-05 Jan Dj,Ad(Brv - - * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle - the longs in a XClientMessageEvent correctly when long is 64 bits. - -2005-02-05 Eli Zaretskii - - * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM - instead of HAVE_X_WINDOWS, for non-X windowed sessions. - -2005-02-03 Jan Dj,Ad(Brv - - * xmenu.c (menubar_selection_callback): Force out GTK buffered - events so the menu event comes after them. This is to prevent sit-for - from exiting on buffered events directly after a menu selection, - lisp code for Help => About Emacs uses sit-for. - - * gtkutil.c (create_menus): Connect selection-done event instead of - the deactivate event to deactivate_cb. This will make the last - leave event come before the call to deactivate_cb, so the leave - event does not make sit-for exit after a menu selection. - -2005-02-03 Kim F. Storm - - * dispnew.c (build_frame_matrix_from_leaf_window) - [!GLYPH_DEBUG]: Fix xassert. - - * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert. - - * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert. - -2005-02-03 YAMAMOTO Mitsuharu - - * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by - the compiling OS version. - - * macfns.c (x_create_tip_frame): Likewise. - - * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise. - -2005-02-03 Richard M. Stallman - - * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline. - - * xdisp.c (echo_area_display): Clear echo_message_buffer. - - * buffer.c (Fbury_buffer): Doc fix. - -2005-02-02 Steven Tamm - - * macfns.c (unwind_create_frame): Fix compile error due to - xassert being uncondition, but predicate is. - * dispnew.c (update_window): Fix compile error due to - xassert being uncondition, but predicate is. - -2005-02-02 Miles Bader - - * dispextern.h (xassert): Enable unconditionally. - -2005-02-02 Kim F. Storm - - * undo.c (Fprimitive_undo): Fix dummy apply undo entry. - -2005-02-02 Kenichi Handa - - * casefiddle.c (casify_object): Enable changing characters of - different byte length. - (casify_region): Fix loop condition, args to replace_range_2, and - update opoint_byte. - - * insdel.c (replace_range_2): Fix bugs in adjusting markers and point. - -2005-02-01 Kim F. Storm - - * xdisp.c (back_to_previous_visible_line_start): Reset iterator - stack before calling handle_display_prop. - -2005-01-31 Kim F. Storm - - * undo.c (Qapply): New lisp var. - (syms_of_undo): Intern and staticpro it. - (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and - (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS). - - * buffer.c (syms_of_buffer) : Doc fix. - -2005-01-30 Jesper Harder - - * macterm.c (syms_of_macterm) - : Fix docstring indentation. - -2005-01-29 Luc Teirlinck - - * undo.c (syms_of_undo) : Doc update. - Increase value to 3 Meg. - -2005-01-29 Jan Dj,Ad(Brv - - * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK, - button events are not received otherwise. - -2005-01-29 Richard M. Stallman - - * buffer.c (syms_of_buffer) : Doc fix. - - * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME. - -2005-01-28 Stefan Monnier - - * keymap.c (access_keymap): YAILOM. - -2005-01-27 Kim F. Storm - - * xdisp.c (get_phys_cursor_geometry): New function to calculate - phys cursor position and size for hollow cursor. Position is - aligned with get_glyph_string_clip_rect and ensures that a hollow - cursor is shown, even when the actual glyph is not visible. - - * dispextern.h (get_phys_cursor_geometry): Add prototype. - - * xterm.c (x_clip_to_row): Ensure y >= 0. - (x_draw_hollow_cursor): Use get_phys_cursor_geometry. - - * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry. - - * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry. - -2005-01-27 Stefan Monnier - - * xterm.c (x_error_quitter): Add a prototype. Make it static again. - -2005-01-27 Kim F. Storm - - * xdisp.c (get_glyph_string_clip_rect): Always show a cursor - glyph, even when row is only partially visible and actual cursor - position is not visible. - -2005-01-24 Richard M. Stallman - - * xterm.c (x_error_quitter): No longer static, and moved after - x_error_handler. - -2005-01-24 Kim F. Storm - - * xdisp.c (move_it_by_lines): If we move forward after going too - far back, cancel move if end position is same as start position. - -2005-01-24 YAMAMOTO Mitsuharu - - * dispextern.h (struct glyph_string): New members clip_head and - clip_tail. - - * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip - region to the area between clip_head and clip_tail. - (draw_glyphs): Record the area that need to be actually redrawn to - the new variables clip_head and clip_tail when there are - overhangs. Set values of these variables to the corresponding - members in struct glyph_string. Refine x coordinates for - notice_overwritten_cursor using clip_head and clip_tail. - - * macgui.h (STORE_XCHARSETSTRUCT): New macro. - - * macterm.c (mac_compute_glyph_string_overhangs): Implement with - QDTextBounds. - (x_draw_glyph_string): Don't fill the background of the successor - of a glyph with a right overhang if the successor will draw a cursor. - (XLoadQueryFont): Obtain font metrics using QDTextBounds. - (x_redisplay_interface): Add entry for compute_glyph_string_overhangs. - -2005-01-24 Kim F. Storm - - * window.c (window_scroll_pixel_based): Fix scrolling in the wrong - direction if window height was smaller than next-screen-context-lines. - Now always scroll at least one line in the requested direction. - Ensure that we actually do scroll backwards when requested to do so. - - * xdisp.c (redisplay_window): Only try to make cursor line fully - visible once (to avoid redisplay loop). - -2005-01-23 Kim F. Storm - - * window.c (Fpos_visible_in_window_p): Simplify return value for - partially visible rows. - (window_scroll_pixel_based): Adapt to that change. - - * window.c (window_scroll_pixel_based): Force moving to next line - if scrolling doesn't move start point, e.g. if looking at tall image. - - * xdisp.c (pos_visible_p): Return 0 if non-interactive. - Clear last_height before calling line_bottom_y to get real height. - Fix calculation of y. - -2005-01-22 Steven Tamm - - * s/darwin.h: Removed PTY_ITERATION from here. - (DARWIN): Define. - - * process.c (init_process): Default process-connection-type to - nil on darwin 6 or less, t if it is 7 or higher. This way the - broken pty behavior is still allowed on darwin 6 for interactive - processes for people that know what they are doing. - -2005-01-22 Kim F. Storm - - * window.c (auto_window_vscroll_p): New boolean. - (syms_of_window): DEFVAR_BOOL it. - (Fpos_visible_in_window_p): Extend return value to include RTOP - and RBOT values if FULLY is nil. - (window_scroll_pixel_based): Adjust vscroll for partially visible - rows if auto_window_vscroll_p is set. - (Fset_window_vscroll): Do nothing if vscroll is not modified. - - * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args - to return number of partially invisible pixels at top and bottom - of the dislay row at POS. - - * lisp.h (pos_visible_p): Fix prototype. - -2005-01-21 Richard M. Stallman - - * fileio.c (Fcopy_file): Doc fix. - -2005-01-21 Jan Dj,Ad(Brv - - * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw. - (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to - start of function for older compilers. - -2005-01-20 Richard M. Stallman - - * editfns.c (Fmessage): If arg is "", return "" (as before). - - * keymap.c (access_keymap): Protect from bad value of meta_prefix_char. - - * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp - variable. - -2005-01-20 Steven Tamm - - * editfns.c (Voperating_system_release): Add. - (init_editfns): Assign new variable operating-system-release - based on call to uname if available. - (get_operating_system_release): Add function to - allow c-level access to operating system release. - - * config.h: Regenerated. - - * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less. - (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for - using ptys as '7'. - -2005-01-20 Kim F. Storm - - * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean. - - * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows. - Thanks to Chong Yidong for debugging this. - - * macterm.c (x_draw_glyph_string_box): Likewise. - - * w32term.c (x_draw_glyph_string_box): Likewise. - - * indent.c (Fvertical_motion): Temporarily disable selective display. - -2005-01-19 Kim F. Storm - - * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer - image property. - - * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair. - -2005-01-18 Kim F. Storm - - * xdisp.c (fast_find_position): Backtrack to find first row if - charpos is inside a display overlay that spans multiple lines. - -2005-01-18 Kenichi Handa - - * coding.c (decode_coding_iso2022): Translate invalid codes if - translation-table is specified. - -2005-01-18 Kim F. Storm - - * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28 - change. If handle_display_prop indicates newline is replaced by - image or text, move back to start of relevant overlay or interval - and continue scan from there. Simplify. - -2005-01-17 Kim F. Storm - - * dispnew.c (mode_line_string, marginal_area_string): - Fix off-by-one error in search for glyph. - -2005-01-16 Kim F. Storm - - * macterm.c (syms_of_macterm) : Doc fix. - -2005-01-16 Steven Tamm - - * macterm.c (mac_to_x_fontname): Remove spurious argument. - -2005-01-16 Andreas Schwab - - * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1. - -2005-01-16 Jan Dj,Ad(Brv - - * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning - fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *. - -2005-01-16 YAMAMOTO Mitsuharu - - * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW) - (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES): - New flags for readable_events. - (get_filtered_input_pending, readable_filtered_events): Remove. - (tracking_off): Call readable_events and get_input_pending with - flag READABLE_EVENTS_DO_TIMERS_NOW. - (readable_events): Move code from old readable_filtered_events here, - but check new READABLE_EVENTS_* in argument flags instead of previous - two boolean arguments do_timers_now and filter_events. - If we are doing mouse tracking and the mouse moved, return only if - READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags. - (swallow_events): Call get_input_pending with flag - READABLE_EVENTS_DO_TIMERS_NOW. - (get_input_pending): Move code from old get_filtered_input_pending - here. Replace boolean arguments do_timers_now, filter_events with - flags, and pass flags to readable_events. Document new - READABLE_EVENTS_* flags. - (detect_input_pending_ignore_squeezables): New function. - (detect_input_pending_run_timers): Call get_input_pending with flag - READABLE_EVENTS_DO_TIMERS_NOW. - (Finput_pending_p): Call get_input_pending with flags - READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS. - - * dispnew.c (update_window, update_frame_1): Replace calls to - detect_input_pending with detect_input_pending_ignore_squeezables - so that redisplay is not paused if the event queue contains only - mouse movements. - - * lisp.h: Declare detect_input_pending_ignore_squeezables. - -2005-01-15 Steven Tamm - - * macterm.c (Vmac_use_core_graphics): Declare variable for - mac-allow-anti-aliasing. - (syms_of_macterm): DEFVAR_LISP and initialize it. - (mac_draw_string_common): Use core graphics text rendering if - mac-allow-anti-aliasing is enabled. - - * macfns.c (Fx_file_dialog): Save As dialog includes only the - file name in the text box. - -2005-01-15 YAMAMOTO Mitsuharu - - * macfns.c (x_set_foreground_color, x_set_background_color): - Sync with xfns.c. - (mac_window, x_create_tip_frame): Use XSetWindowBackground. - * macterm.c (XSetBackground, XSetWindowBackground): New functions. - * macterm.h (XSetBackground, XSetWindowBackground): Add externs. - -2005-01-14 Kim F. Storm - - * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE. - -2005-01-13 Richard M. Stallman - - * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map - if Voverriding_terminal_local_map is non-nil. - - * keyboard.c (syms_of_keyboard): Doc fix. - -2005-01-13 Kim F. Storm - - * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg - (specify 0 for FACE instead). Reorder arg list. Doc fix. - -2005-01-12 Richard M. Stallman - - * xdisp.c (Fformat_mode_line): New arg FACE specifies a default - face property for characters that don't specify one. - - * fns.c (Frequire): Record in load-history unconditionally. - -2005-01-10 Kim F. Storm - - * dispextern.h (merge_faces): Rename from merge_into_realized_face. - - * xfaces.c (merge_faces): Rename from merge_into_realized_face. - Callers changed. - Add support to merge with lisp face id too (if face_name is t). - - * xdisp.c (get_next_display_element, next_element_from_display_vector): - Don't lookup lface_id from display table glyphs here; instead use - merge_faces to merge the lisp face id into current face. - -2005-01-09 Kim F. Storm - - * dispextern.h (struct it): New member dpvec_face_id. - (merge_into_realized_face): Add prototype. - - * xfaces.c (merge_into_realized_face): New function. Used to - merge escape-glyph face or face from display table into current face. - - * xdisp.c (Vshow_nonbreak_escape): New lisp var. - (syms_of_xdisp): DEFVAR_LISP it. - (escape_glyph_face): Remove var. - (redisplay_window): Don't initialize it. - (setup_for_ellipsis, get_next_display_element): - Set it->dpvec_face_id to -1. - (get_next_display_element): Test Vshow_nonbreak_escape. - Do not setup escape_glyph_face. - Properly merge escape-glyph face or face from display table with - current face for escape and control characters. - Set it->dpvec_face_id to relevant face id instead of adding it to each - element of display vector. - (next_element_from_display_vector): If it->dpvec_face_id is set, - use that instead of lface_id from glyph itself. - -2005-01-08 Jan Dj,Ad(Brv - - * xterm.h (struct x_output): New member, toolbar_detached. - - * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to - 38. - (xg_tool_bar_detach_callback): Set toolbar_detached to 1. - (xg_tool_bar_attach_callback): Set toolbar_detached to 0. - (xg_create_tool_bar): Initialize toolbar_detached. - (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if - toolbar_detached is zero. - -2005-01-07 Jan Dj,Ad(Brv - - * xmenu.c (create_and_show_popup_menu): Pass zero as button to - gtk_menu_popup if not for_click, so callbacks for the menu are called. - - * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar) - (xg_tool_bar_callback, xg_tool_bar_help_callback) - (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning. - - * xselect.c (x_get_foreign_selection, x_fill_property_data) - (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with - XFLOAT_DATA to get extract number from Lisp object. - -2005-01-07 Kim F. Storm - - * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change. - Set stop_charpos to current charpos instead of 0. - -2005-01-06 Nick Roberts - - * xdisp.c (Fformat_mode_line): First arg now required. - -2005-01-06 YAMAMOTO Mitsuharu - - * macterm.c (XLoadQueryFont): Correctly handle 0 size - font widths that are returned from some Japanese fonts. - -2005-01-06 Kim F. Storm - - * fringe.c (fringe_faces): Change to Lisp_Object pointer. - (draw_fringe_bitmap_1): Lookup user defined fringe faces here. - (destroy_fringe_bitmap): Set fringe_faces element to nil. - (Fdefine_fringe_bitmap, init_fringe): Change allocation of - fringe_faces array and init elements to nil. - (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of - non-persistent face id. - (mark_fringe_data): New function for GC. - - * alloc.c (mark_fringe_data): Declare extern. - (Fgarbage_collect): Call mark_fringe_data. - - * alloc.c (overrun_check_free): Invalidate freed memory if - XMALLOC_CLEAR_FREE_MEMORY is defined. - -2005-01-05 YAMAMOTO Mitsuharu - - * macfns.c: Include sys/param.h. - [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration - and function. - [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size - of filename string. Set event callback function when creating - dialog boxes. Add code conversions for filenames. Don't dispose - of apple event descriptor record if failed to create it. - - * macterm.c: Include sys/param.h. - [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for - kEventWindowUpdate. - (install_window_handler) [USE_CARBON_EVENTS]: Register it. - (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead - of FSSpec from apple event descriptor record. - (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for - size of filename string. - [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. - [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a - file dialog is in action. - [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise. - Reject only when there are no filename items. Set background color - before (un)highlighting the window below the dragged items. - (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update. - -2005-01-05 Romain Francoise - - * term.c (encode_terminal_code): Fix buffer size computation. - -2005-01-04 Richard M. Stallman - - * xdisp.c (Fformat_mode_line): Doc fix. - -2005-01-04 Stefan Monnier - - * alloc.c (refill_memory_reserve): Move. - (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc) - (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define. - -2005-01-03 Richard M. Stallman - - * window.c (window_scroll_pixel_based): Don't correct preserve_y - for CURRENT_HEADER_LINE_HEIGHT when moving backwards. - -2005-01-03 Jason Rumney - - * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and - fontp->space_width to FONT_WIDTH so they are valid. - - * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not - average width. Set fontp->average_width and fontp->space_width to - their appropriate values. - - * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to - fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to - fontp->space_width. - -2005-01-03 YAMAMOTO Mitsuharu - - * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH. - (x_font_min_bounds, XLoadQueryFont): Use the correct font width - metrics for max and min bounds. - (x_load_font): Correctly calculate average font width metrics. - -2005-01-02 Richard M. Stallman - - * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers. - -2004-12-31 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Clear area in expose event for GTK. - -2004-12-31 Richard M. Stallman - - * xdisp.c (setup_for_ellipsis, get_next_display_element): - Set it->ellipsis_p to 1 or 0. - (display_line): Record whether row ends in mid-ellipsis. - (set_cursor_from_row): If ends in ellipsis, find start of it. - (cursor_row_p): If PT's at the end of the ellipsis the row - ends within, don't display cursor on this row. - - * dispextern.h (struct it): New element ellipsis_p. - (struct glyph_row): New element ends_in_ellipsis_p. - - * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified - position if we're reading from something other than the buffer. - - * window.c (window_scroll_pixel_based): Only look at - Vscroll_preserve_screen_position if the old PT can't be kept. - (syms_of_window) : Doc fix. - -2004-12-30 Kim F. Storm - - * xdisp.c (get_line_height_property): New function extracted from - original calc_line_height_property. - (calc_line_height_property): Rework. Handle t and (nil . ratio). - (x_produce_glyphs): Use them to handle line-height and - line-spacing according to new height spec. - (Qtotal): Remove. - (syms_of_xdisp): Remove intern and staticpro for Qtotal. - -2004-12-30 Kenichi Handa - - * fileio.c (Finsert_file_contents): Don't use - current_buffer->buffer_file_coding_system even if REPLACE is - non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT. - - * fontset.h (struct font_info): New members space_width and - average_width. - - * frame.h (struct frame): New member space_width. - (FRAME_SPACE_WIDTH): New macro. - - * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH. - - * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to - fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to - fontp->space_width. - (x_load_font): Calculate fontp->space_width and fontp->average_width. - (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH. - - * xdisp.c (x_produce_glyphs): Calculate tab width by - FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH. - -2004-12-29 Sanghyuk Suh - - * macterm.c (SelectionRange): Add Xcode position apple event struct. - (do_ae_open_documents): Handle Xcode-style file position open events. - -2004-12-29 Luc Teirlinck - - * buffer.c (syms_of_buffer) : Correct typo. - -2004-12-29 Richard M. Stallman - - * buffer.c (syms_of_buffer) : Doc fix. - -2004-12-29 YAMAMOTO Mitsuharu - - * macfns.c (install_window_handler): Modify extern to return OSErr - value. - (mac_window): Handle return value of install_window_handler. - - * macterm.c (reflect_byte): Remove function. - (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte. - Lookup table instead. - (mac_do_font_lists): Simplify calculation of the longest - nonspecial string. - (init_mac_drag_n_drop): Remove function and declaration. - (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call - init_mac_drag_n_drop. - (mac_do_track_drag): New function and declaration. - (install_window_handler): Return OSErr value. - (install_window_handler) [TARGET_API_MAC_CARBON]: - Register handlers for tracking/receiving drag-and-drop items. - (do_ae_open_documents): Generate unibyte strings for filenames. - (mac_do_receive_drag) [TARGET_API_MAC_CARBON]: Likewise. - Reject only non-filename items. Set event modifiers, and return value. - -2004-12-28 Dan Nicolaescu - - * coding.c (decode_coding): Fix previous change. - -2004-12-28 Richard M. Stallman - - * xdisp.c (back_to_previous_visible_line_start): - Don't call handle_display_prop. - -2004-12-28 Dan Nicolaescu - - * coding.c (decode_coding_XXX, decode_composition_emacs_mule) - (decode_coding_emacs_mule, encode_coding_emacs_mule) - (decode_coding_iso2022, encode_designation_at_bol) - (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol) - (decode_coding): Constify arguments and local vars. - -2004-12-27 Jan Dj,Ad(Brv - - * xmenu.c (popup_get_selection): Only pop down dialogs - on C-g and Escape. - (popup_get_selection): Remove parameter down_on_keypress. - (create_and_show_popup_menu, create_and_show_dialog): - Remove parameter down_on_keypress to popup_get_selection. - -2004-12-27 YAMAMOTO Mitsuharu - - * dispextern.h: Change HAVE_CARBON to MAC_OS. - (struct glyph_string): Likewise. - - * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of - mac_initialize. - - * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name): - Change TARGET_API_MAC_CARBON to HAVE_CARBON. - - * fns.c (vector): Change MAC_OSX to MAC_OS. - - * frame.c (x_set_frame_parameters, x_report_frame_params) - (x_set_fullscreen): Remove #ifndef HAVE_CARBON. - (x_set_border_width, Vdefault_frame_scroll_bars): - Change HAVE_CARBON to MAC_OS. - - * image.c [MAC_OS]: Include sys/stat.h. - [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and - QuickTimeComponents.h. - - * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern. - [!MAC_OSX] (select): Use mac_wait_next_event. - [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes. - [!MAC_OSX] (select, run_mac_command): Change `#ifdef - TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'. - (mac_clear_font_name_table): Add extern. - (Fmac_clear_font_name_table): New defun. - (syms_of_mac): Defsubr it. - [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define. - [MAC_OSX] (select_and_poll_event): New function. - [MAC_OSX] (sys_select): Use it. - [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function. - [MAC_OSX && SELECT_USE_CFSOCKET] - (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines. - [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and - RunLoop for simultaneously monitoring two kinds of inputs, window - events and process outputs, without periodically polling. - - * macfns.c (mac_initialized): Remove extern. - (stricmp): Put in #if 0. All callers changed to use xstricmp in - xfaces.c. - (strnicmp): Decrement `n' at the end of each loop, not the beginning. - (check_mac): Use the term "Mac native windows" instead of "Mac OS". - (check_x_display_info, x_display_info_for_name): Sync with xfns.c. - (mac_get_rdb_resource): New function (from w32reg.c). - (x_get_string_resource): Use it. - (install_window_handler): Add extern. - (mac_window): New function. - (Fx_create_frame): Use it instead of make_mac_frame. - Set parameter for Qfullscreen. Call x_wm_set_size_hint. - (Fx_open_connection, Fx_close_connection): New defuns. - (syms_of_macfns): Defsubr them. - (x_create_tip_frame) [TARGET_API_MAC_CARBON]: - Add kWindowNoUpdatesAttribute to the window attribute. - (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow. - (x_create_tip_frame): Don't call ShowWindow. - (Fx_show_tip): Call ShowWindow. - (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if - TARGET_API_MAC_CARBON'. - (mac_frame_parm_handlers): Set handlers for Qfullscreen. - (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0. - - * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h. - (Window): Typedef to WindowPtr and move outside `#if - TARGET_API_MAC_CARBON'. - (XSizeHints): New struct. - - * macterm.c (x_update_begin, x_update_end) - [TARGET_API_MAC_CARBON]: Disable screen updates during update of a - frame. - (x_draw_glyph_string_background, x_draw_glyph_string_foreground) - [MAC_OS8]: Use XDrawImageString/XDrawImageString16. - (construct_mouse_click): Put in #if 0. - (x_check_fullscreen, x_check_fullscreen_move): Remove decls. - (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef - TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'. - (activate_scroll_bars, deactivate_scroll_bars) - [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl. - (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window - if the position is neither user-specified nor program-specified. - (x_free_frame_resources): Free size_hints. - (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints. - (mac_clear_font_name_table): New function. - (mac_do_list_fonts): Initialize font_name_table if needed. - (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT - around mac_do_list_fonts. - (mac_unload_font): New function. - (x_load_font): Add BLOCK_INPUT around XLoadQueryFont. - (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations - and definitions with #if TARGET_API_MAC_CARBON. - [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl. - (install_window_handler): Add decl. - (do_window_update): Add BeginUpdate/EndUpdate for the tooltip - window. Use UpdateControls. Get the rectangle that should be - updated and restrict the target of expose_frame to it. - (do_grow_window): Set minimum height/width according to size_hints. - (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow. - (do_zoom_window): Don't use x_set_window_size. - [USE_CARBON_EVENTS] (mac_handle_window_event): New function. - (install_window_handler): New function. - [!USE_CARBON_EVENTS] (mouse_region): New variable. - [!USE_CARBON_EVENTS] (mac_wait_next_event): New function. - (XTread_socket) [USE_CARBON_EVENTS]: Move call to - GetEventDispatcherTarget inside BLOCK_INPUT. - (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event. - Update mouse_region when mouse is moved. - (make_mac_frame): Remove. - (make_mac_terminal_frame): Put in #ifdef MAC_OS8. - Initialize mouse pointer shapes. Change values of f->left_pos and - f->top_pos. Don't use make_mac_frame. Use NewCWindow. - Don't call ShowWindow. - (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from - Vinvocation_name and Vsystem_name. - (mac_make_rdb): New function (from w32term.c). - (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has - already been opened. Don't pass argument to - mac_initialize_display_info. Don't set dpyinfo->height/width. - Add entries to x_display_list and x_display_name_list. - (x_delete_display): New function. - (mac_initialize): Don't call mac_initialize_display_info. - (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide. - - * macterm.h (check_mac): Add extern. - (struct mac_output): New member size_hints. - (FRAME_SIZE_HINTS): New macro. - (mac_unload_font): Add extern. - - * xdisp.c (expose_window, expose_frame): Remove kludges for Mac. - - * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font. - -2004-12-27 Richard M. Stallman - - * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el). - (syms_of_buffer): Don't defsubr it. - - * process.c (list_processes_1): Set undo_list instead - of calling Fbuffer_disable_undo. - - * xdisp.c (single_display_spec_string_p): Rename from - single_display_prop_string_p. - (single_display_spec_intangible_p): Rename from - single_display_prop_intangible_p. - (handle_single_display_spec): Rename from handle_single_display_prop. - Rewritten to be easier to understand. - - Change in load-history format. Functions now get (defun . NAME), - and variables get just NAME. - - * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH. - - * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH. - (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH. - (Qdefvar): Var deleted. - (syms_of_eval): Don't initialze it. - - * lread.c (syms_of_lread) : Doc fix. - -2004-12-27 Jan Dj,Ad(Brv - - * xmenu.c (popup_get_selection): Pop down on C-g. - (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that - pops down menu on C-g. - (xdialog_show): If dialog popped down and no button in the dialog was - pushed, call Fsignal to quit. - (xmenu_show): In no toolkit version, if menu returns NO_SELECT call - Fsignal to quit. - - * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g. - - * gtkutil.c (xg_initialize): Install bindings for C-g so that - dialogs and menus pop down. - -2004-12-27 Kenichi Handa - - * coding.c (code_convert_region): Fix calculation of `ratio'. - -2004-12-25 Jan Dj,Ad(Brv - - * gtkutil.c (update_frame_tool_bar): Make the value of - tool-bar-button-margin control margins of images in tool bar. - - * alloc.c (check_depth): New variable. - (overrun_check_malloc, overrun_check_realloc): Only add - overhead and write check pattern if check_depth is 1 (to handle - recursive calls). Increase/decrease check_depth in entry/exit. - (overrun_check_free): Only check for overhead if check_depth is 1. - Increase/decrease check_depth in entry/exit. - -2004-12-23 Jan Dj,Ad(Brv - - * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK - before touching input_available_clear_time, to avoid accessing it - from multiple threads. - -2004-12-23 Jason Rumney - - * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour - of JPEG library. - -2004-12-22 Richard M. Stallman - - * emacs.c (main): If batch mode, set Vundo_outer_limit to nil. - - * lisp.h (Vundo_outer_limit): Fix decl. - - * undo.c (Vundo_outer_limit): Replaces undo_outer_limit. - Uses changed. - (syms_of_undo): Initialize appropriately. - (truncate_undo_list): If it's nil, there's no limit. - -2004-12-22 Kenichi Handa - - * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string. - -2004-12-21 Richard M. Stallman - - * eval.c (unwind_to_catch): Clear immediate_quit. - - * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad - specially as `\ ' and `\-'. - - * keyboard.c (kbd_buffer_store_event_hold): - In the code for while-no-input, handle immediate_quit. - - * alloc.c (Fgarbage_collect): Update call to truncate_undo_list. - Call that at the very start. - (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c. - (syms_of_alloc): Don't define undo-limit, - undo-strong-limit and undo-outer-limit here. - - * undo.c (truncate_undo_list): Return void. - Take just one argument, the buffer. - Make it current, and inhibit recursive GC. - Access and update the undo list directly; return void. - Refer to the undo...limit variables directly. - Test undo_outer_limit only after counting the whole current command. - When it's exceeded, call the function in undo-outer-limit-function. - (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c. - (Vundo_outer_limit_function): New variable. - (syms_of_undo): Define undo-limit, undo-strong-limit - and undo-outer-limit here, and undo-outer-limit-function. - Doc fixes. - - * lisp.h (truncate_undo_list): Update decl. - -2004-12-21 Piet van Oostrum - - * fileio.c (Fread_file_name): Delete duplicates in - file-name-history when history_delete_duplicates is true. - -2004-12-20 YAMAMOTO Mitsuharu - - * macterm.c (mac_do_list_fonts): Fix memory leak - -2004-12-20 Richard M. Stallman - - * regex.c (re_match_2_internal) : - Fix calls to UPDATE_SYNTAX_TABLE_FORWARD. - -2004-12-18 YAMAMOTO Mitsuharu - - * macterm.c (endif, x_font_name_to_mac_font_name): - Use maccentraleurroman instead of maccentraleuropean - (mac_c_string_match, mac_do_list_fonts): Speed up font search by - quickly finding a specific font without needing regexps. - -2004-12-15 Jan Dj,Ad(Brv - - * syssignal.h: Declare main_thread. - (SIGNAL_THREAD_CHECK): New macro. - - * keyboard.c (input_available_signal): Move thread checking code - to macro SIGNAL_THREAD_CHECK and call that macro. - (interrupt_signal): Call SIGNAL_THREAD_CHECK. - - * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c. - - * emacs.c: Define main_thread. - (main): Initialize main_thread. - (handle_USR1_signal, handle_USR2_signal, fatal_error_signal) - (memory_warning_signal): Call SIGNAL_THREAD_CHECK. - - * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK. - - * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK. - - * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK. - - * process.c (send_process_trap, sigchld_handler): - Call SIGNAL_THREAD_CHECK. - - * data.c (arith_error): Call SIGNAL_THREAD_CHECK. - - * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK. - - * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before - returning when xg_ignore_gtk_scrollbar is true. - -2004-12-14 Kim F. Storm - - * keyboard.c (read_char): Save and restore echo_string when - handling input method. - -2004-12-13 Richard M. Stallman - - * eval.c (syms_of_eval) : Doc fix. - - * keyboard.c (Vthrow_on_input): New variable. - (syms_of_keyboard): Defvar and initialize it. - (kbd_buffer_store_event_hold): Handle Vthrow_on_input. - - * lisp.h (QUIT): Check for Vthrow_on_input. - (Vthrow_on_input): Declare it. - -2004-12-13 Kim F. Storm - - * xdisp.c (set_iterator_to_next): Reset stop_charpos after display - vector. - -2004-12-12 Richard M. Stallman - - * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0. - - * minibuf.c (Fall_completions): Add var `zero' and use it in loop. - (Ftry_completion): Really use outer `zero'; eliminate inner one. - -2004-12-12 Kenichi Handa - - * term.c (encode_terminal_code): Fix previous change. - -2004-12-11 Stefan Monnier - - * keyboard.c (handle_async_input): Remove pthread mutex handling. - (input_available_signal): Move pthread thingy to !SYNC_INPUT branch. - - * syntax.c (Fforward_word): Avoid non-idempotent side-effects - in macro arguments. - - * minibuf.c (Ftry_completion, Fall_completions): Don't use - XFASTINT blindly. - - * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT. - -2004-12-11 Jan Dj,Ad(Brv - - * w32term.c (x_calc_absolute_position): Remove calculation of - difference between inner and outer window. Don't subtract difference - for left and top calculations. - - * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff - for left and top calculations. Remove call to x_real_positions. - [Bug report by Drew Adams in November.] - (x_check_expected_move): Do not set change_gravity to 1 when calling - x_set_offset. - -2004-12-08 Richard M. Stallman - - * xdisp.c (get_next_display_element): Use `escape-glyph' for - control chars and escaped octal codes. - (Qescape_glyph): New variable. - (syms_of_xdisp): Initialize it. - (escape_glyph_face): New variable. - (redisplay_window): Initialize it. - -2004-12-07 Paul Eggert - - * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE) - (init_image): Use 1 rather than TRUE. TRUE's not always defined. - -2004-12-07 Jan Dj,Ad(Brv - - * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around - reset_malloc_hooks. - - * keyboard.c (handle_async_input, input_available_signal): - Add ! defined (SYSTEM_MALLOC) around thread code. - - * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC. - -2004-12-07 Stefan Monnier - - * eval.c (init_eval_once): Increase max_specpdl_size to 1000. - - * config.in: Regenerate. - -2004-12-07 Jan Dj,Ad(Brv - - * xmenu.c (Fx_popup_menu): Correct documentation about position. - (xmenu_show): Do not call XTranslateCoordinates. Adjust position - if not given by a mouse click to correspond with x-popup-menu - documentation. - - * config.in: Regenerate. - - * gtkutil.c: Include signal.h and syssignal.h. - (xg_get_file_name): Block and unblock __SIGRTMIN if defined. - - * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h, - new variables main_thread and alloc_mutex, - define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect - emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread. - If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same - as (UN)BLOCK_INPUT. - (emacs_blocked_free, emacs_blocked_malloc) - (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC. - (uninterrupt_malloc): Initialize main_thread and alloc_mutex. - (reset_malloc_hooks): New function. - - * lisp.h: Declare reset_malloc_hooks. - - * emacs.c (Fdump_emacs): Call reset_malloc_hooks. - - * keyboard.c: Conditionally include pthread.h. - (handle_async_input, input_available_signalt): If not in the main - thread, block signal, send signal to main thread and return. - - * gtkutil.c (xg_get_file_with_chooser): Handle local files only. - Set current folder in file chooser if default_filename is a directory. - -2004-12-05 Stefan Monnier - - * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end. - Remove redundant correctness checks. - (regex_compile): Fix up error codes for \{..\} expressions. - -2004-12-05 Richard M. Stallman - - * regex.c (regex_compile): Fix end-of-pattern case for space. - -2004-12-03 YAMAMOTO Mitsuharu - - * macterm.h (cfstring_create_with_utf8_cstring): Add prototype. - * mac.c (cfstring_create_with_utf8_cstring): Add to prevent - crashes with invalid characters. - * macmenu.c (add_menu_item): Use it. - * image.c (image_load_quartz2d): Likewise. - * macfns.c (x_set_name, x_set_title): Likewise. - (Fx_file_dialog): Likewise. Use constant CFRefs instead of - creating them each time for labels. - -2004-12-02 Richard M. Stallman - - * config.in (RE_TRANSLATE_P): If make_number is not a macro, - don't use it here. - - * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE. - (interactive_p): Skip Scalled_interactively_p frames - like Sinteractive_p frames. - (unwind_to_catch): Clear handling_signal. - - * data.c (Fmake_variable_buffer_local): Doc fix. - (Fmake_local_variable): Doc fix. - - * insdel.c (insert_from_string_before_markers) - (insert_from_string): Don't modify buffer on empty insertion. - - * window.c (Fget_lru_window, Fget_largest_window): Doc fixes. - -2004-12-01 YAMAMOTO Mitsuharu - - * macmenu.c (add_menu_item): Fallback on MacRoman if encoding - menu text as UTF8 fails. - -2004-12-01 Kim F. Storm - - * alloc.c: Add commentary for last change. - (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle - sizeof(size_t) != 4. - (overrun_check_malloc, overrun_check_realloc, overrun_check_free): - Use them. Also clear header and trailer of freed memory. - (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA. - (string_overrun_cookie): Rename from string_overrun_pattern. - (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE. - -2004-12-01 Andreas Schwab - - * lisp.h: Declare string_to_multibyte. - -2004-12-01 Kenichi Handa - - * w32console.c (w32con_write_glyphs): Decide coding here. - Adjusted for the change of encode_terminal_code. - - * term.c (encode_terminal_code): Don't make it "static". - -2004-11-30 Kenichi Handa - - * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables. - (encode_terminal_code): Argument changed. Encode all - characters at once, and return a pointer to the result of encoding. - (write_glyphs): Decide coding here. Adjusted for the above change. - (insert_glyphs): Likewise. - (term_init): Initialize encode_terminal_bufsize to 0. - - * coding.c (Vcode_conversion_workbuf_name): New variable. - (syms_of_coding): Initialize and staticpro it. - (set_conversion_work_buffer): New function. - (run_pre_post_conversion_on_str): Use it. - (run_pre_write_conversin_on_c_str): New function. - - * coding.h (run_pre_write_conversin_on_c_str): Extern it. - -2004-11-30 YAMAMOTO Mitsuharu - - * keyboard.c: Don't undef SIGIO - * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon - * Makefile.in (mac.o): Depend on blockinput.h and atimer.h. - (macfns.o): Don't depend on ccl.h. - * macfns.c (mac_frame_parm_handlers): Set handlers for - Qleft_fringe and Qright_fringe. - * macterm.c (mac_fill_rectangle_to_pixmap) - (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap) - (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1): - Put in #if 0. - (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect. - (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames. - (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement. - (x_draw_glyph_string_background, x_draw_glyph_string_foreground) - [!MAC_OS8]: Added ifdef'd out code for os8. Don't use - XDrawImageString. Always draw background and foreground separately. - (x_draw_image_foreground): Use clipping instead of computing the - intersection rectangle. - (x_draw_image_glyph_string): Don't draw an image with mask to a - pixmap. - (x_redisplay_interface): Set flush_display_optional member to 0. - (XTread_socket): Correctly reset the TEConverter - object. - -2004-11-30 Kim F. Storm - - * lisp.h: New defines to enable buffer overrun checking. - (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST) - (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add. - - * alloc.c: Add more checks for buffer overruns. - (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header) - xmalloc_overrun_check_trailer, overrun_check_malloc) - overrun_check_realloc, overrun_check_free): Add. - (GC_STRING_EXTRA, string_overrun_pattern): Add. - (check_sblock, allocate_string_data, compact_small_strings): - Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN. - (check_cons_list): Condition on GC_CHECK_CONS_LIST. - (check_string_free_list): Add. - (allocate_string, sweep_strings): Call check_string_free_list. - - * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if - XMALLOC_OVERRUN_CHECK to avoid crash during load. - -2004-11-29 Kim F. Storm - - * fns.c (concat): Use SAFE_ALLOCA. - -2004-11-29 Stefan Monnier - - * sysdep.c (emacs_write): Don't use QUIT. - -2004-11-29 Kenichi Handa - - * buffer.c (init_buffer): Set current_buffer->directory to a - multibyte string made by string_to_multibyte. - - * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args. - -2004-11-27 Andreas Schwab - - * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined. - - * s/gnu-linux.h: Enable no-op gcpros on ia64. - (GC_MARK_SECONDARY_STACK) [__ia64__]: Define. - - * filelock.c (lock_file_1): Call get_boot_time early. - Increase buffer size. - -2004-11-27 Eli Zaretskii - - * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN - is not defined. - -2004-11-27 Kim F. Storm - - * search.c (syms_of_search) : Move 'doc:' - marker out of doc string. - -2004-11-26 Stefan Monnier - - * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25, - which was not mentioned in the log. - -2004-11-26 Kim F. Storm - - * fringe.c (update_window_fringes): Prefer truncation bitmaps over - angle bitmaps at top/bottom line. - - * xdisp.c: Undo recent changes for restoring saved_face_id. Instead, - set it when it->method is set to next_element_from_display_vector. - (setup_for_ellipsis): Add LEN argument. Callers changed. - Set it->saved_face_id. - (get_next_display_element): Use loop instead of recursion. - Set it->saved_face_id. Combine duplicate code for ctr chars. - (next_element_from_display_vector): Do not set it->saved_face_id. - (next_element_from_ellipsis): Use setup_for_ellipsis. - -2004-11-26 Eli Zaretskii - - * eval.c (Fdefvar): Declare pdl from last change as `volatile' to - prevent compiler warnings. - -2004-11-25 Stefan Monnier - - * keyboard.c (command_loop_1): Print a message describing the key - the user just pressed when this key has no binding. - - * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set. - (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted. - - * lread.c (readchar): Check QUIT when `getc' is interrupted. - -2004-11-24 Richard M. Stallman - - * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only. - - * buffer.c (syms_of_buffer) : Doc fix. - -2004-11-24 Kim F. Storm - - * xdisp.c (move_it_in_display_line_to, display_line): - Restore saved_face_id also when truncate-lines or hscrolled. - -2004-11-23 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to - x-use-old-gtk-file-dialog. - - * xfns.c: Define x_use_old_gtk_file_dialog. - (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it - outside ifdef USE_GTK. - -2004-11-23 Stefan Monnier - - * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM): - Don't use XFASTINT blindly. - - * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly. - - * indent.c (skip_invisible): Avoid non-idempotent side-effects - in macro arguments. - - * keymap.c (Flookup_key): Check INTEGERP before XINT. - - * lread.c (oblookup): Don't use XFASTINT blindly. - - * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int. - (decode_next_window_args, window_loop): Don't use XFASTINT blindly. - -2004-11-23 Kim F. Storm - - * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P) - (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero. - - * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if - signal_p is zero and face name is unknown. - (Fx_list_fonts): Don't signal error in lookup_named_face. - (Fface_font): Signal error in lookup_named_face. - (ascii_face_of_lisp_face): Likewise. - - * dispextern.h (lookup_named_face): Fix prototype. - - * xdisp.c (handle_single_display_prop): Don't signal error in - lookup_named_face for unknown fringe face name. - (highlight_trailing_whitespace): Don't signal error in - lookup_named_face if trailing-whitespace face unknown. - (calc_line_height_property): Don't signal error in - lookup_named_face if specified face name is unknown. - - * fringe.c (update_window_fringes): Show top row indicator if - window has header-line. Don't show arrow at bob and eob - if the boundary indicators are not used. - (Fset_fringe_bitmap_face): Signal error in lookup_named_face. - - * window.c (set_window_buffer): Clear display_error_modiff. - -2004-11-22 Kim F. Storm - - * fringe.c (update_window_fringes): Provide sensible fall-back - value for non-nil indicate-buffer-boundaries setting. - -2004-11-22 Markus Rost - - * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change. - -2004-11-22 Stefan Monnier - - * eval.c (Fdefvar): Warn when var is let-bound but globally void. - -2004-11-21 Kim F. Storm - - * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA. - - * xterm.c (x_clip_to_row): Add area arg. Callers changed. - (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA. - - * w32term.c (w32_clip_to_row): Add area arg. Callers changed. - (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA. - - * macterm.c (x_clip_to_row): Add area arg. Callers changed. - (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA. - - * xdisp.c (move_it_in_display_line_to, display_line): - Restore saved_face_id if overflow-newline-into-fringe is enabled and - line is continued before or in middle of element from display vector. - - * indent.c (Fvertical_motion): Fix last change. Use another - method to detect if iterator moved too far ahead after reseat. - - * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not - expand matrix width for overflow in zero-width area. - (append_glyph, append_composite_glyph, produce_image_glyph) - (append_stretch_glyph): Use it to avoid loop in redisplay. - (note_mode_line_or_margin_highlight): Don't let help-echo from - string override help-echo from image map. - -2004-11-20 Luc Teirlinck - - * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument. - * callint.c (Fcall_interactively): Ditto. - -2004-11-20 Stefan Monnier - - * minibuf.c (Fminibuffer_complete_and_exit): - Fixup the case of the completed value, for case-indep completion. - -2004-11-20 Richard M. Stallman - - * lisp.h (Fread_from_minibuffer): Add arg in decl. - - * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed. - (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed. - - * search.c (Vsearch_spaces_regexp): - Rename from Vsearch_whitespace_regexp. All uses changed. - -2004-11-20 Thien-Thi Nguyen - - * eval.c (init_eval_once): Increase `max_specpdl_size' to 650. - -2004-11-19 Richard M. Stallman - - * search.c (Vsearch_whitespace_regexp): New variable. - (syms_of_search): Defvar it. - (compile_pattern_1): Call re_set_whitespace_regexp with it. - (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp - is non-nil. - (struct regexp_cache): New element whitespace_regexp. - (syms_of_search): Initialize whitespace_regexp elements. - (compile_pattern): Compare whitespace_regexp elements. - (compile_pattern_1): Set whitespace_regexp elements. - - * regex.c (regex_compile): Substitute whitespace_regexp - for spaces, if it is nonzero. - (whitespace_regexp): New variable. - (re_set_whitespace_regexp): New function. - -2004-11-19 Kim F. Storm - - * indent.c (Fvertical_motion): Fix last change. - -2004-11-18 Kim F. Storm - - * indent.c (Fvertical_motion): Undo 2004-11-16 change. - Instead, move back again if reseating moves too far ahead. - -2004-11-17 Luc Teirlinck - - * xdisp.c (message3): Call clear_message. - -2004-11-17 Kim F. Storm - - * xdisp.c (erase_phys_cursor): Adjust cursor row visible height. - -2004-11-16 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW. - - * xmenu.c (x_menu_in_use): Remove. - (x_menu_set_in_use): Also set popup_activated_flag. - - * xfns.c (Fx_file_dialog): Call popup_activated instead of - x_menu_in_use. Call x_menu_set_in_use in Motif version also. - - * xterm.h (x_menu_in_use): Remove. - -2004-11-16 Richard M. Stallman - - * keymap.c (Fmap_keymap): New arg SORT-FIRST. - Use map-keymap-internal to implement that. - - * indent.c (Fvertical_motion): In batch mode, use vmotion directly. - -2004-11-16 Stefan Monnier - - * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's - a window before using XWINDOW. - - * window.c (make_window, Fselect_window, make_dummy_parent) - (save_window_save): - * frame.c (make_frame): - * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments. - - * lisp.h (NILP): Use EQ rather than XFASTINT. - -2004-11-16 Kim F. Storm - - * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify. - - * indent.c (Fvertical_motion): Fix last change. Only reseat when - moving backwards. - -2004-11-16 Luc Teirlinck - - * dispextern.h: Extern reseat_at_previous_visible_line_start. - -2004-11-16 Kenichi Handa - - * xdisp.c (display_mode_element): Fix previous change (calculate - end position of substring to display correctly). - -2004-11-16 Kim F. Storm - - * keyboard.c (Fposn_at_point): Remove extra */ after doc string. - Reported by Andrew M. Scott. - -2004-11-15 Kim F. Storm - - * fns.c (Fsafe_plist_get): New defun. - (syms_of_fns): Defsubr it. - - * lisp.h (Fsafe_plist_get): Add EXFUN. - - * xdisp.c (store_mode_line_string, produce_stretch_glyph): - Use Fsafe_plist_get. - (note_mode_line_or_margin_highlight, note_mouse_highlight): - Fix image map element parsing. Use Fsafe_plist_get. - -2004-11-15 Richard M. Stallman - - * xdisp.c (get_next_display_element): Fix previous change. - -2004-11-14 Jan Dj,Ad(Brv - - * window.c (shrink_windows): Handle special case of one window left - when trying to shrink the final reminder. Grow windows if - total_removed is less than total_shrink. - - * xmenu.c (pop_down_menu): Remove global variable current_menu, - extract pointer from arg with XSAVE_VALUE. - (create_and_show_popup_menu, create_and_show_dialog, xmenu_show): - Construct arg to record_unwind_protect with make_save_value. - -2004-11-13 Richard M. Stallman - - * xdisp.c (reseat_at_previous_visible_line_start): No longer static. - (get_next_display_element): Fix previous change to apply only to \n. - - * indent.c (Fvertical_motion): Scan to PT from start of line to - make iterator consistent. - - * minibuf.c (syms_of_minibuf) : Doc fix. - -2004-11-14 Jan Dj,Ad(Brv - - * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT. - - * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use. - Record unwind with clean_up_file_dialog. - - * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event): - Declare. - - * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions. - -2004-11-13 Jan Dj,Ad(Brv - - * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel) - (xg_file_sel_destroy): Remove. - (xg_file_response_cb, pop_down_file_dialog) - (xg_get_file_name_from_chooser, xg_get_file_name_from_selector): - New functions. - (xg_get_file_with_chooser, xg_get_file_with_selection): - Take new arg func, set it to xg_get_file_name_from_chooser/selector. - Move common code to xg_get_file_name. Return widget created. - (xg_get_file_name): Set name, transient for, modal and destroy - with parent here. Connect response signal to xg_file_response_cb, - connect delete-event to gtk_true. Record pop_down_file_dialog - for unwind. Do event loop and call x_menu_wait_for_event in loop. - (xg_create_widget): Make dialogs modal. - - * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type - Lisp_Object. - (popup_get_selection): Move unwind protect ... - (create_and_show_popup_menu, create_and_show_dialog): ... to here. - Move destroy of widget to pop_down_menu. - (popup_widget_loop): Move unwind protect ... - (create_and_show_popup_menu, create_and_show_dialog): ... to here. - Move destroy of widget to pop_down_menu. - (pop_down_menu): BLOCK_INPUT and destroy widget/window. - (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy, - x_mouse_leave and grabbed = 0 to pop_down_menu. - -2004-11-13 Kim F. Storm - - * xdisp.c (make_cursor_line_fully_visible_p): New variable. - (syms_of_xdisp): DEFVAR_BOOL it. - (make_cursor_line_fully_visible, try_cursor_movement) - (try_window_id): Use it. - -2004-11-12 Kim F. Storm - - * dispextern.h (struct glyph_row): New member extra_line_spacing. - (struct it): New member max_extra_line_spacing. - (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP) - (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros. - (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible - part of last line is only extra line spacing (so the text on the - line is fully visible). Use helper macros. - Add W arg (to use them). All callers changed. - (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P) - (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros. - - * window.c (window_scroll_pixel_based, Frecenter): - Use move_it_vertically_backward directly. - (Frecenter): Fix calculation of new start pos for negative arg. - Before, the new start pos was sometimes chosen too far back, so - the last line became only partially visible, and thus would be - either only semi-visible or automatically scrolled to the middle - of the window by redisplay. - - * xdisp.c (init_iterator): Clear it.max_extra_line_spacing. - (move_it_vertically_backward): Don't recure to move further back. - (move_it_vertically): Remove superfluous condition. - (move_it_by_lines): Clear last_height when moved 0 lines. - (resize_mini_window): Use it.max_extra_line_spacing. - (display_tool_bar_line): Clear row->extra_line_spacing. - (try_scrolling): Use move_it_vertically_backward directly. - (redisplay_window): Likewise. - (compute_line_metrics): Set row->extra_line_spacing. - (display_line, display_string): Likewise. - (x_produce_glyphs): Update it->max_extra_line_spacing. - - * xmenu.c (pop_down_menu): Return nil. - -2004-11-12 Jan Dj,Ad(Brv - - * xmenu.c (x_menu_wait_for_event): New function. - (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event - to handle timers. - (popup_widget_loop): Add argument do_timers. - (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for - do_timers to popup_widget_loop. - (xmenu_show): Call XMenuActivateSetWaitFunction so that - x_menu_wait_for_event is called by XMenuActivate. - (create_and_show_popup_menu): Pass 1 for do_timers to - popup_get_selection. - (pop_down_menu): New function. - (popup_get_selection, popup_widget_loop): Unwind protect to - pop_down_menu. - (popup_widget_loop): Add argument widget. - (create_and_show_popup_menu, create_and_show_dialog): Pass new - argument widget to popup_widget_loop. - -2004-11-10 Stefan Monnier - - * keymap.c (Fkeymap_prompt): Accept symbol keymaps. - -2004-11-09 Kim F. Storm - - * xselect.c: Include and (for getpid). - Fix various comments referring to XEvents instead of input events. - (x_queue_event): Fix format strings. - (x_stop_queuing_selection_requests): Likewise. - - * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'. - (pint2hrstr): Add extra braces to silence compiler. - - * print.c (print_object): Fix format string. - - * lread.c (read1): Fix next_char matching. - - * lisp.h (Fdelete): Add EXFUN. - (replace_range_2): Add prototype. - - * keyboard.c (read_avail_input): Remove unused variable 'discard'. - - * intervals.h (NULL_INTERVAL_P): Add separate version when - ENABLE_CHECKING is not defined to silence compiler. - (compare_string_intervals): Add prototype. - - * fringe.c (destroy_fringe_bitmap): Fix return type. - (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'. - - * emacs.c (Fdump_emacs): Fix format string. - - * doc.c: Include . - (Fsubstitute_command_keys): Remove unused variable 'firstkey'. - - * data.c (store_symval_forwarding): Remove unused variables. - - * callint.c (Fcall_interactively): Remove unused variable 'funcar'. - -2004-11-09 Jan Dj,Ad(Brv - - * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies - to ${OLDXMENU}. - -2004-11-09 Kim F. Storm - - * process.c (Fmake_network_process): Remove kludge for interrupted - connects on BSD. If connect is interrupted, just close socket and - start over rather than sleeping and retry with same socket. - -2004-11-09 Jan Dj,Ad(Brv - - * .cvsignore: Add buildobj.lst. - - * doc.c: New variable Vbuild_files. - (Fsnarf_documentation): If Vbuild_files is nil, populate it with - file names from buildobj.lst. Only attach docstrings from files - that are in Vbuild_files. - (syms_of_doc): Defvar Vbuild_files. - - * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o - and w32*.o. - (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked. - (mostlyclean): Rm buildobj.lst - - * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs - is linked. - -2004-11-09 Kim F. Storm - - * fringe.c (update_window_fringes): Update fringe bitmaps if - cur and row ends_at_zv_p differs. If bitmaps of a row is updated, - also update previous row to get rid of misc. artifacts. - -2004-11-08 Kim F. Storm - - * xdisp.c (fast_find_position): Fix start pos if header line present. - (note_mouse_highlight): Clear mouse face if we move out of text area. - -2004-11-08 Eli Zaretskii - - * editfns.c: Move #include "systime.h" before . - Don't include explicitly. - Include unconditionally, not just on MacOS. - -2004-11-08 Kenichi Handa - - * fontset.c (fontset_pattern_regexp): Cancel my previous change; - don't pay attention to '\' before '*'. - (fontset_pattern_regexp): Change the meaning of the second arg. - (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset. - (check_fontset_name): Try NAME as literal at first, and if it - failes, try NAME as pattern. - -2004-11-07 Jan Dj,Ad(Brv - - * emacs.c (Fdump_emacs): Only output warning on GNU/Linux. - -2004-11-07 Andreas Schwab - - * lisp.h (Fmsdos_downcase_filename): Declare. - * dired.c (Fmsdos_downcase_filename): Don't declare here. - * fileio.c: Likewise. - -2004-11-07 Jan Dj,Ad(Brv - - * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in - comparisons with integers instead of Lisp_Object address. - (Fmsdos_set_keyboard): Declare argument allkeys. - - * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s. - - * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid - int/Lisp_Object mixup. - - * fileio.c: Ditto. - -2004-11-06 Steven Tamm - - * editfns.c: Need to include sys/time.h before resource.h on darwin. - -2004-11-06 Richard M. Stallman - - * callint.c (Fcall_interactively): Avoid reusing EVENT for other data. - - * xfaces.c (merge_named_face): GCPRO the face_name in the - named_merge_point struct that we make. - (merge_face_heights): Eliminate GCPRO arg. All callers changed. - - * keyboard.c (command_loop_1): Change Vtransient_mark_mode - before deciding whether to inactivate mark. - -2004-11-06 Lars Brinkhoff - - * config.in: Regenerate (add HAVE_GETRUSAGE). - * editfns.c (Fget_internal_run_time): New function. - (syms_of_data): Defsubr it. - * fns.c (sxhash): As far as possible, merge calculation of - hash code for symbols and strings. - -2004-11-06 Eli Zaretskii - - * frame.c (syms_of_frame): Fix the example in the doc string. - -2004-11-06 Jan Dj,Ad(Brv - - * eval.c (Feval): Remove check for INPUT_BLOCKED_P. - - * xmenu.c (popup_get_selection, create_and_show_popup_menu) - (create_and_show_dialog): Revert change from 2004-10-31. - -2004-11-05 Luc Teirlinck - - * macros.c (syms_of_macros) : Doc fix. - -2004-11-05 Kim F. Storm - - * print.c (print_object): Print Lisp_Misc_Save_Value objects. - - * fileio.c (Ffile_modes): Doc fix. - (auto_save_1): Check for Ffile_modes nil value. - -2004-11-05 Kim F. Storm - - * xselect.c (struct selection_event_queue, selection_queue) - (x_queue_selection_requests, x_queue_event) - (x_start_queuing_selection_requests) - (x_stop_queuing_selection_requests): Add new queue for selection - input events to replace previous XEvent queue in xterm.c. - (queue_selection_requests_unwind): Adapt to new queue. - (x_reply_selection_request): Adapt to new queue. - Unexpect wait_object in case of x errors (memory leak). - (x_handle_selection_request, x_handle_selection_clear): Make static. - (x_handle_selection_event): New function. May queue selection events. - (wait_for_property_change_unwind): Use save_value instead of cons. - Clear property_change_reply_object. - (wait_for_property_change): Abort if already waiting. - Use save_value instead of cons for unwind data. - (x_handle_property_notify): Skip events already arrived, but don't - free them, as "arrived" field is checked by wait_for_property_change, - and it will be freed by unwind or explicit unexpect_property_change. - (x_get_foreign_selection): Add to new queue. - (receive_incremental_selection): Don't unexpect wait_object when done - as it has already been freed by previous wait_for_property_change. - - * xterm.h (x_start_queuing_selection_requests) - (x_stop_queuing_selection_requests, x_handle_selection_request) - (x_handle_selection_clear): Remove prototypes. - (x_handle_selection_event): Add prototype. - - * xterm.c (handle_one_xevent): Don't queue X selection events - here, it may be too late if we start queuing after we have already - stored some selection events into the kbd buffer. - (struct selection_event_queue, queue, x_queue_selection_requests) - (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests) - (x_stop_queuing_selection_requests): Remove/move to xselect.c. - (x_catch_errors_unwind): Block input around final XSync. - - * keyboard.h (kbd_buffer_unget_event): Add prototype. - - * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code. - (kbd_buffer_unget_event): New function. - (kbd_buffer_get_event, swallow_events): Combine SELECTION events - and use x_handle_selection_event. - (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT. - -2004-11-05 Jan Dj,Ad(Brv - - * xselect.c (TRACE3): New debug macro. - (x_reply_selection_request): Use it. - (receive_incremental_selection): In call to TRACE0, the name of - a symbol is in xname. - -2004-11-05 Kim F. Storm - - * fontset.c (fontset_pattern_regexp): Use unsigned char. - -2004-11-04 Jan Dj,Ad(Brv - - * fileio.c (Fnext_read_file_uses_dialog_p): New function. - - * gtkutil.h (use_old_gtk_file_dialog): Declare. - - * gtkutil.c: Make use_old_gtk_file_dialog non-static. - (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ... - * xfns.c (syms_of_xfns): ... to here. - - * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if - it doesn't start with /. - -2004-11-04 Kenichi Handa - - * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\', - treat it as a literal character. - -2004-11-03 Kim F. Storm - - * .gdbinit (ppt): New function. - -2004-11-02 Jan Dj,Ad(Brv - - * xterm.c (x_window_to_scroll_bar): Only call - xg_get_scroll_id_for_window if toolkit scroll bars are used. - - * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead - of save. - -2004-11-02 Andreas Schwab - - * window.c (Fscroll_right): Fix last change. - -2004-11-02 Kim F. Storm - - * Makefile.in (callproc.o): Depend on blockinput.h, atimer.h, systime.h. - -2004-11-02 YAMAMOTO Mitsuharu - - * callproc.c (Fcall_process): Block input around vfork. - -2004-11-02 Kim F. Storm - - * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p. - (syms_of_eval): Defsubr it. - -2004-11-02 Richard M. Stallman - - * insdel.c (replace_range_2): New function. - - * casefiddle.c (casify_region): Handle changes in byte-length - using replace_range_2. - - * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb. - - * xdisp.c (back_to_previous_visible_line_start): - Subtract 1 from pos when checking previous newline for invisibility. - - * window.c (window_scroll_pixel_based): Update preserve_y - for header line if any. - (Fscroll_left, Fscroll_right): Don't call interactive_p; - use a new second argument instead. - - * eval.c (Fcall_interactive_p): New function. - (interactive_p): Don't test INTERACTIVE here. - (Finteractive_p): Doc fix. - - * eval.c (Feval): Abort if INPUT_BLOCKED_P. - -2004-11-02 KOBAYASHI Yasuhiro - - * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for - comparing font names. - -2004-11-02 Jan Dj,Ad(Brv - - * fileio.c (Fread_file_name): Pass Qt as fifth parameter to - Fx_file_dialog if only directories should be read. - - * lisp.h: Fx_file_dialog takes 5 parameters. - - * xfns.c (Fx_file_dialog): Both Motif and GTK version: - Add parameter only_dir_p. - In Motif version, don't put DEFAULT_FILENAME in filter part of the - dialog, just text field part. Do not add DEFAULT_FILENAME - to list of files if it isn't there. - In GTK version, pass only_dir_p parameter to xg_get_file_name. - - * macfns.c (Fx_file_dialog): Add parameter only_dir_p. - Check only_dir_p instead of comparing prompt to "Dired". When using - a save dialog, add option kNavDontConfirmReplacement, change title - to "Enter name", change text for save button to "Ok". - - * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. - Check only_dir_p instead of comparing prompt to "Dired". - - * gtkutil.c (xg_get_file_with_chooser, xg_get_file_with_selection): - New functions, only defined ifdef HAVE_GTK_FILE_CHOOSER_DIALOG_NEW - and HAVE_GTK_FILE_SELECTION_NEW respectively. - (xg_get_file_name): Add parameter only_dir_p. - Call xg_get_file_with_chooser or xg_get_file_with_selection - depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog. - (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog. - - * gtkutil.h (xg_get_file_name): Add parameter only_dir_p. - - * config.in: Rebuild (added HAVE_GTK_FILE_*). - -2004-11-01 Kim F. Storm - - * process.c (connect_wait_mask, num_pending_connects): - Only declare and use them if NON_BLOCKING_CONNECT is defined. - (init_process): Initialize them if NON_BLOCKING_CONNECT defined. - (IF_NON_BLOCKING_CONNECT): New helper macro. - (wait_reading_process_output): Only declare and use local vars - Connecting and check_connect when NON_BLOCKING_CONNECT is defined. - -2004-11-01 Andy Petrusenco (tiny change) - - * w32term.c (x_scroll_run): Delete region objects after use. - -2004-10-31 Jan Dj,Ad(Brv - - * xmenu.c: Add prototypes for forward function declarations. - (popup_get_selection): Remove parameter do_timers, remove call to - timer_check. - (create_and_show_popup_menu, create_and_show_dialog): - Remove parameter do_timers from call to popup_get_selection. - - * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to - tool_bar_items and assign the result to f->tool_bar_items if - not equal. Move BLOCK/UNBLOCK_INPUT from around call to - tool_bar_items to assignment of result. - - * atimer.c (alarm_signal_handler): Do not call set_alarm if - pending_atimers is non-zero. - -2004-10-31 Kim F. Storm - - * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor. - -2004-10-28 Will - - * macterm.c: Allow user to assign key modifiers to the Mac Option - key via a 'mac-option-modifier' variable. - -2004-10-28 Stefan Monnier - - * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions): - Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks. - (x_handle_selection_request, x_handle_selection_clear) - (x_clear_frame_selections, syms_of_xselect): Adjust accordingly. - -2004-10-28 Richard M. Stallman - - * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes. - - * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes. - -2004-10-27 Stefan Monnier - - * syntax.c (scan_sexps_forward): Give precedence to a 2-char - comment-starter over a 1-char one. - -2004-10-27 Richard M. Stallman - - * xdisp.c (get_next_display_element): In mode lines, - treat newline and tab like other control characters. - - * editfns.c (Fmessage): Doc fix. - - * indent.c (vmotion): When moving up, check the newline before. - Make prevline an int, not a Lisp_Object. - -2004-10-27 Kim F. Storm - - * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA. - Only allocate info and discarded tables once. - - * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer. - (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used. - (SAFE_FREE): Test it to determine if we need to unwind to free. - Remove size arg. All users changed. - (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE. - -2004-10-26 Jan Dj,Ad(Brv - - * gtkutil.c: Put empty line between comment and function body. - (xg_destroy_widgets): Rename from remove_from_container. - Just destroy all widgets in list. Argument wcont removed. - (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets - instead of remove_from_container. - (xg_display_close, xg_create_tool_bar, update_frame_tool_bar) - (free_frame_tool_bar): Add comment. - - * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME - is not NULL before strcmp. - -2004-10-26 Kim F. Storm - - * callint.c (Fcall_interactively): Add 'U' code to get the - up-event discarded by a previous 'k' or 'K' argument. - -2004-10-26 David Kastrup - - * buffer.c (syms_of_buffer): Fix a few typos. - -2004-10-26 Jan Dj,Ad(Brv - - * xsmfns.c: Put empty line between comment and function body. - Use two spaces before comment end. - -2004-10-25 Kenichi Handa - - * fontset.c (fontset_pattern_regexp): Optimize for the case that - PATTERN is full XLFD. - -2004-10-24 Kenichi Handa - - * regex.h (enum reg_errcode_t): New value REG_ERANGEX. - - * regex.c (re_error_msgid): Add an entry for REG_ERANGEX. - (regex_compile): Return REG_ERANGEX if appropriate. - -2004-10-22 Kenichi Handa - - * editfns.c (Ftranslate_region_internal): New function. - (syms_of_editfns): Defsubr it. - -2004-10-22 Jan Dj,Ad(Brv - - * xfns.c (xic_create_xfontset): Initialize missing_list to NULL. - -2004-10-21 K,Aa(Broly L$,1 q(Brentey - - * xterm.h (x_output): New member `xic_base_fontname'. - (FRAME_XIC_BASE_FONTNAME): New macro. - (xic_free_xfontset): Declare. - - * xfns.c (xic_create_xfontset): Share fontsets between frames - based on base_fontname. - (xic_free_xfontset): New function. - (free_frame_xic): Use it. - (xic_set_xfontset): Ditto. - - * xterm.c (xim_destroy_callback): Ditto. - -2004-10-20 B. Anyos (tiny change) - - * w32term.c (x_draw_glyph_string): Use overline_color for overlines. - -2004-10-20 Jan Dj,Ad(Brv - - * xterm.h (XSync): If USE_GTK, define XSync as process_all and then - XSync. - - * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF): - New variables and constant. - (main): Calculate heap_bss_diff. If we are dumping and the - heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32 - and exec ourself again. - (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF - print a warning. - - * lastfile.c: Make my_endbss and my_endbss_static available on all - platforms. - - * Makefile.in (RUN_TEMACS): Remove @SETARCH@. - * config.in (HAVE_PERSONALITY_LINUX32): Regenerate. - -2004-10-19 Luc Teirlinck - - * data.c (Flocal_variable_if_set_p): Doc fix. - -2004-10-19 Jason Rumney - - * w32.c (init_environment): Set emacs_dir correctly when running - emacs from the build directory. - -2004-10-19 Richard M. Stallman - - * editfns.c (Fdelete_and_extract_region): - If region is empty, return null string. - -2004-10-19 Jan Dj,Ad(Brv - - * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left - and canon_width. - (xg_frame_cleared): Remove. - - * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose) - (xg_find_top_left_in_fixed): Remove. - (xg_create_scroll_bar): Put an event box widget between - the scroll bar widget and the edit widget. - (xg_show_scroll_bar): Show the parent widget (the event box). - (xg_remove_scroll_bar): Destroy parent (the event box) also. - (xg_update_scrollbar_pos): Remove arguments real_left and canon_width. - Move the parent (the event box) widget inside the fixed widget. - Move window clear to xterm.c. - - * gtkutil.h (xg_frame_cleared): Remove. - - * xterm.c (x_clear_frame): Remove call to xg_frame_cleared - (x_scroll_bar_create, XTset_vertical_scroll_bar): - Remove arguments left and width to xg_update_scrollbar_pos. - (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also. - -2004-10-19 Kenichi Handa - - * xdisp.c (display_mode_element): Fix display of wide chars. - -2004-10-18 Jan Dj,Ad(Brv - - * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to - gdk_window_clear and move gdk_window_process_all_updates after - clear so events are sent to the X server in correct order. - -2004-10-18 Kenichi Handa - - * fontset.c (fs_load_font): Use fast_string_match_ignore_case for - comparing font names. - (fs_query_fontset): Use fast_string_match for comparing fontset names. - (list_fontsets): Likewise. - - * search.c (fast_string_match_ignore_case): New function. - - * lisp.h (fast_string_match_ignore_case): Extern it. - -2004-10-17 Kim F. Storm - - * xdisp.c (overlay_arrow_at_row): Return overlay string rather - than bitmap if there is not left fringe. - (get_overlay_arrow_glyph_row): Also used on windows system. - (display_line): Display overlay string if no left fringe. - -2004-10-16 Jason Rumney - - * w32fns.c (w32_font_match): Encode font name being matched. - -2004-10-16 Richard M. Stallman - - * window.c (Fspecial_display_p): Doc fix. - -2004-10-15 Stefan Monnier - - * doc.c (Fsubstitute_command_keys): Fix remap-handling. - Don't ignore menus, because where-is-internal already does it for us. - -2004-10-15 Kim F. Storm - - * xdisp.c (redisplay_window): Only update fringes and vertical - border on window frames. - -2004-10-14 Andreas Schwab - - * m/ia64.h (DATA_SEG_BITS): Don't define. - -2004-10-14 Kim F. Storm - - * xterm.h: Include Xutil.h after keysym.h to work around bug - in some X versions. - -2004-10-13 Stefan Monnier - - * fns.c (map_char_table): Add missing gcpros. - -2004-10-13 Stefan Monnier - - * keymap.c (get_keymap): An autoload form is not a keymap. - - * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky. - -2004-10-13 Kim F. Storm - - * callproc.c (Fcall_process): Simplify handling of display arg. - Resume `display_on_the_fly' once a coding system is determined. - - * xdisp.c (redisplay_preserve_echo_area): Fix last change. - -2004-10-12 Kim F. Storm - - * xdisp.c (redisplay_preserve_echo_area): Flush display in case - caller, such as call-process, is not going to poll for input. - (calc_line_height_property): Handle case where it->object is nil. - - * xterm.c (x_redisplay_interface): Fix flush_display_optional. - -2004-10-12 Kenichi Handa - - * xdisp.c (get_next_display_element): - If unibyte_display_via_language_environment is zero, display 8-bit - chars in octal in unibyte buffer. - -2004-10-12 Kim F. Storm - - * doc.c (Fsubstitute_command_keys): Ignore remappings unless there - are no ordinary bindings. - -2004-10-11 Jan Dj,Ad(Brv - - * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also. - -2004-10-10 YAMAMOTO Mitsuharu - - * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow. - (x_lower_frame): Add BLOCK_INPUT around SendBehind. - (make_mac_frame): Add BLOCK_INPUT around the making of a - terminal frame. - (mac_initialize): Add BLOCK_INPUT around carbon initialization. - * macgui.h (mktime): Use emacs_mktime. - * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code. - Make a cancel file-open dialog be like C-g. - * mac.c (mktime): Use emacs_mktime. - (Fdo_applescript): Add BLOCK_INPUT around do_applescript. - (Fmac_paste_function): Add better error handling for carbon cut/paste. - -2004-10-10 Kim F. Storm - - * keyboard.c (timer_resume_idle): New function to resume idle - timer without resetting timers on the idle list. - (read_char): Use timer_resume_idle. Remove local var last_idle_start. - (timer_start_idle, timer_stop_idle): Declare static. - (read_key_sequence): Use timer_resume_idle instead of timer_start_idle. - - * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes. - -2004-10-08 Steven Tamm - - * config.in (HAVE_MALLOC_MALLOC_H): Regenerate. - * macterm.c (mac_check_for_quit_char): Remove warning for using - NULL where 0 should be used. - * unexmacosx.c: Use malloc/malloc.h on Tiger instead of - objc/malloc.h - * mac.c: Include time.h for Tiger compatibility. - -2004-10-07 Kim F. Storm - - * xdisp.c (redisplay_window): Fix flicker on vertical line between - windows. Update vertical line after drawing window fringes, but - only if actually drawing any bitmaps--or there is no fringe. - - * xterm.c (x_update_window_end): Likewise. - * macterm.c (x_update_window_end): Likewise. - * w32term.c (x_update_window_end): Likewise. - - * fringe.c (draw_window_fringes): Return value now indicates if - any fringe bitmaps were redrawn (or there are no fringes). - - * dispextern.h (draw_window_fringes): Update prototype. - -2004-10-06 YAMAMOTO Mitsuharu - - * macfns.c (mac_get_window_bounds): Add extern. - (x_real_positions): Use mac_get_window_bounds. - - * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for - xmenu.c (YAILOM). - - * macterm.c [!MAC_OSX]: Include Windows.h. - (front_emacs_window): Rename from mac_front_window. All uses - changed. Return the frontmost non-tooltip emacs window. - (mac_get_window_bounds): New function. - (x_calc_absolute_position): Use the difference of width and height - between the inner and outer window. - (x_set_offset): Specify window position by the coordinae of the - outer window. Adjust the position if the title bar is completely - outside the screen. - (app_is_suspended, app_sleep_time): Remove unused variables. - (do_app_resume, do_app_suspend): Remove their contents because - window-activate/deactivate events will do the job. - (do_zoom_window): Remove unused variables. Make compliant to the - standard way of zooming. Set f->left_pos and f->top_pos. - (XTread_socket): Don't use argument `expected'. Don't use - FrontWindow to determine the clicked window. Exclude unprocessed - mouseUp cases in the early stage. Add parentheses to fix operator - precedence. - (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area. - -2004-10-05 Jan Dj,Ad(Brv - - * config.in: Regenerate. - - * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of - HAVE_EXECSHIELD. - -2004-10-05 Jan Dj,Ad(Brv - - * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for - a row if Alt or Meta has been found for that row. Also stop scanning - for Keysyms for that row. - -2004-10-04 Kim F. Storm - - * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons - to list. Include overlay arrow bitmap in return value. - - * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll - bars with fractional column width. If scroll bar separates two - windows, move it towards the window it belongs to. Only update - the padding area below the scroll bar widget when necessary, - i.e. when scroll bar widget is created, moved, or resized. - - * xdisp.c (define_frame_cursor1): Do not change frame cursor - while tracking/dragging mouse. - (x_draw_vertical_border): Do not draw line if frame has scroll bars. - - * window.c (coordinates_in_window): Relax check for cursor - on vertial border between mode lines. - (Fset_window_fringes): Do not allow negative widths. - (Fset_window_scroll_bars): Likewise. - - * .gdbinit (pp): Shorthand for p ARG + pr. - (ff): New command: flush frame updates (X only). - -2004-10-03 Michael Albinus - - * fileio.c (auto_save_1) Call Ffile_modes for remote files. - -2004-09-30 Kenichi Handa - - * process.c (send_process): Free composition data. - - * fileio.c (Finsert_file_contents): Free composition data. - - * coding.c (code_convert_region): Don't skip ASCIIs if there are - compositions to encode. - (encode_coding_string): Likewise. Free composition data. - -2004-09-30 Florian Weimer - - * coding.c (code_convert_region): Free composition data. - -2004-09-29 Kim F. Storm - - * fringe.c: Remove limit on number of bitmaps. - (fringe_bitmaps, fringe_faces): Change to pointers. - (max_fringe_bitmaps): New var. - (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces. - (init_fringe): Allocate fringe_bitmaps and fringe_faces. - - * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps). - (struct glyph_row): Reorder fringe_bitmap related fields. - (struct it): Likewise. - - * w32term.c (fringe_bmp): Change to pointer. - (max_fringe_bmp): New var. - (w32_define_fringe_bitmap): Expand fringe_bmp. - (w32_draw_fringe_bitmap): Check max_fringe_bmp. - (w32_destroy_fringe_bitmap): Likewise. - -2004-09-29 Kim F. Storm - - * fringe.c: Simplify last change. - (lookup_fringe_bitmap): New function. - (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove. - (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap. - Keep standard bitmaps in Vfringe_bitmaps. - (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap. - (Fset_fringe_bitmap_face): Likewise. - - * dispextern.h (lookup_fringe_bitmap): Add prototype. - (valid_fringe_bitmap_p): Remove prototype. - - * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap. - -2004-09-29 Kim F. Storm - - * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap) - (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif). - - * dispextern.h (valid_fringe_bitmap_p): Fix prototype. - - * fringe.c (Vfringe_bitmaps): New variable. - (syms_of_fringe): DEFVAR_LISP it. - (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p. - Change arg to Lisp_Object and fail if not an integer. - (get_fringe_bitmap_name, resolve_fringe_bitmap) - (destroy_fringe_bitmap): New functions. - (Fdestroy_fringe_bitmap): Change arg to bitmap symbol. - Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and - clear its fringe property. - (init_fringe_bitmap): Use destroy_fringe_bitmap instead of - Fdestroy_fringe_bitmap. - (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing - bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps - and set fringe property. Signal error if no free slots. - (Fset_fringe_bitmap_face): Change arg to bitmap symbol. - (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers. - - * xdisp.c (handle_single_display_prop): Fringe bitmaps are now - symbols with a fringe property. - -2004-09-27 Kim F. Storm - - * buffer.c (syms_of_buffer) : - Doc fix. Format may now be a symbol or alist, not a cons. - - * fringe.c (update_window_fringes): Handle new formats of - indicate-buffer-boundaries (symbol or alist). No longer - allow a simple cons. - (Ffringe_bitmaps_at_pos): Use nil value for no bitmap. - -2004-09-25 Jan Dj,Ad(Brv - - * config.in: Rebuild. - -2004-09-24 Jan Dj,Ad(Brv - - * config.in: Rebuild. - - * Makefile.in: Run setarch i386 ./temacs if exec-shield is present. - -2004-09-18 Stefan Monnier - - * xterm.c (x_term_init): Work around a bug in some X servers. - -2004-09-18 Richard M. Stallman - - * buffer.c (syms_of_buffer) : Doc fix. - - * xdisp.c (try_window_reusing_current_matrix): - Handle the case where we reach the old displayed text, - out of sync with the old line boundary. - -2004-09-14 Stefan Monnier - - * fileio.c (Finsert_file_contents): Fix case of replacement in a - narrowed buffer. - -2004-09-14 Kim F. Storm - - * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT. - - * xfaces.c (Qface_no_inherit): New var. - (syms_of_xfaces): Intern and staticpro it. - (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute) - (Finternal_copy_lisp_face, update_face_from_frame_parameter): - Don't increment face_change_count when face has non-nil - face-no-inherit property. - -2004-09-13 Stefan Monnier - - * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC. - (Fbyte_code): Remove dead code after `wrong_type_argument'. - - * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl - before doing the mark_stack_check_gcpros since they're not on the stack. - -2004-09-12 Kim F. Storm - - * editfns.c (Fformat): Handle format strings with multiple text - properties. Reverse text property list from the format string, - so the positions are in increasing order. - -2004-09-10 Jan Dj,Ad(Brv - - * xselect.c (x_reply_selection_request): XSync and UNBLOCK before - x_uncatch_errors so that possible protocol errors are delivered. - -2004-09-10 Eli Zaretskii - - * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and - blockinput.h. - (dosfns.o): Depend on blockinput.h, window.h, dispextern.h, - charset.h, and coding.h - (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h. - (term.o): Depend on window.h and keymap.h. - (abbrev.o): Depend on syntax.h. - (callint.o): Depend on keymap.h. - (casefiddle.o): Depend on charset.h and keymap.h. - (category.o): Depend on keymap.h. - (coding.o): Depend on dispextern.h. - (cmds.o): Depend on keyboard.h and keymap.h. - (dispnew.o): Depend on indent.h and intervals.h. - (doc.o): Depend on keymap.h. - (editfns.o): Depend on frame.h. - (emacs.o): Depend on dispextern.h. - (fileio.o): Don't depend on ccl.h. - (filelock.o): Depend on charset.h and coding.h. - (frame.o): Depend on w32term.h and macterm.h. - (insdel.o): Depend on region-cache.h. - (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h. - (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h. - (search.o): Depend on $(INTERVALS_SRC). - (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC). - (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC), - xterm.h, w32term.h, and macterm.h. - (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h, - w32term.h, and macterm.h. - (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC), - region-cache.h, xterm.h, w32term.h, and macterm.h. - (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h. - (data.o): Depend on frame.h. - (fns.o): Depend on keymap.h, xterm.h, and blockinput.h. - (print.o): Depend on termchar.h and $(INTERVALS_SRC). - (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h. - (intervals.o): Depend on keymap.h. - - * msdos.c (msdos_set_cursor_shape, IT_display_cursor): - Add debugging print-out to termscript. - -2004-09-09 Richard M. Stallman - - * xdisp.c (decode_mode_spec): Use current buffer for most purposes. - -2004-09-08 Richard M. Stallman - - * window.c (Fset_window_buffer): Doc fix. - - * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use. - -2004-09-08 Dan Nicolaescu - - * minibuf.c (history_delete_duplicates): New variable. - (read_minibuf): Use it. - (syms_of_minibuf): Create the corresponding lisp variable. - -2004-09-08 Kim F. Storm - - * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in - overlay just before point. - -2004-09-07 Luc Teirlinck - - * buffer.h (struct buffer): Add auto_save_file_format field. - * buffer.c (reset_buffer, init_buffer_once): - Handle auto_save_file_format field. - (syms_of_buffer): Add DEFVAR_PER_BUFFER for - `buffer-auto-save-file-format'. - * fileio.c: Delete declaration for removed Vauto_save_file_format. - (build_annotations): Adapt to replacement of - `auto-save-file-format' with the new buffer-local variable - `buffer-auto-save-file-format'. - (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format. - -2004-09-07 Jason Rumney - - * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c. - - * w32fns.c (w32_wnd_proc) : - Handle Unicode menu titles. - -2004-09-07 Kim F. Storm - - * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor' - property from text property or overlay strings at point. - -2004-09-07 Stefan Monnier - - * xmenu.c (update_submenu_strings): YAILOM. - (set_frame_menubar): Make sure last_i is initialized. - -2004-09-03 Jason Rumney - - * w32menu.c (_widget_value): Add lname and lkey. - (digest_single_submenu): Set lname and lkey in widget_value - instead of name and key. - (update_submenu_strings): New function. - (set_frame_menubar): Remove call to inhibit_garbage_collection, - call update_submenu_strings. - - * w32menu.c (globals_of_w32menu): Check for Unicode API. - (digest_single_submenu, w32_menu_show): Encode menu strings as - UTF-8 if Unicode API is available. - (utf8to16): New function. - (add_menu_item): Use it when calling Unicode API. - -2004-09-03 Kim F. Storm - - * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property - in overlay or text-property strings; set cursor on corresponding - glyph rather than at end of the string. - -2004-09-02 YAMAMOTO Mitsuharu - - * macfns.c (x_real_positions): Save the current window port and - set a new one before obtaining the global coordinate. - Use FRAME_MAC_WINDOW. - (x_set_name, x_set_title): Encode title to UTF8. - Use SetWindowTitleWithCFString. - (Fx_server_version): Get correct OS version. - - * macmenu.c (add_menu_item): Remove unused variable `i'. - Don't let separator items destroy refence constants of other menu items. - - * macterm.c (x_update_end): Move SetPortWindowPort to inside - BLOCK_INPUT. - (x_set_offset): Use FRAME_MAC_WINDOW. - - * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to - nontext_cursor if it is on a scroll bar. - - * s/darwin.h (LIBS_CARBON): New define to specify libraries for - Carbon support. - (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++. - Use LIBS_CARBON. - -2004-09-02 Jan Dj,Ad(Brv - - * xfns.c (x_set_name_internal): New function. Check if we shall call - xfree before ENCODE_UTF_8. - (x_set_name, x_set_title): Call x_set_name_internal. - -2004-08-31 NAKAMURA Toshikazu (tiny change) - - * w32fns.c (w32_load_font): If a BDF font is already loaded, do not - reload it. - -2004-08-30 Jan Dj,Ad(Brv - - * macmenu.c (_widget_value): Add lname and lkey. - (single_submenu): Set lname and lkey in widget_value - instead of name and key. - (update_submenu_strings): New function. - (set_frame_menubar): Remove call to inhibit_garbage_collection, - call update_submenu_strings. - - * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value - instead of name and key. - (update_submenu_strings): New function. - (set_frame_menubar): Remove call to inhibit_garbage_collection, - call update_submenu_strings. - - * gtkutil.h (_widget_value): Added lname and lkey. - -2004-08-30 Steven Tamm - - * macmenu.c (mac_menu_show): Remove shadowing of menu variable - by using different names for inner loop variables. - -2004-08-27 Jan Dj,Ad(Brv - - * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection - from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used. - - * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when - tool bar items is 0. - -2004-08-26 YAMAMOTO Mitsuharu - - * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte - strings in menu items. - (single_submenu): Use ENCODE_MENU_STRING - (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because - button release isn't passed to event loop - (add_menu_item): Use SetMenuItemWithCFString - -2004-08-26 Steven Tamm - - * fileio.c (Fread_file_name): Call x_file_dialog on carbon on - tool-bar/menu click. - * macfns.c (Fx_file_dialog): Implement using NavServices. - -2004-08-24 Jan Dj,Ad(Brv - - * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed. - - * xfns.c (x_window_to_frame, x_any_window_to_frame) - (x_non_menubar_window_to_frame, x_menubar_window_to_frame) - (x_top_window_to_frame): Return 0 if wdesc is None. - -2004-08-22 Richard M. Stallman - - * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS, - HAVE_TERMIOS]: If there's no char for this signal, drop through - and use system calls. - - * bytecode.c (Fbyte_code) : Cannot GC. - -2004-08-20 Kim F. Storm - - * process.c (wait_reading_process_output): Rename from - wait_reading_process_input. All uses changed. - (wait_reading_process_output_1): Rename from - wait_reading_process_input_1. All uses changed. - - * dispnew.c (Fsleep_for): Remove obsolete code. - -2004-08-20 Kenichi Handa - - * syntax.c (skip_chars): Fix for unibyte case. - -2004-08-19 Stefan Monnier - - * syntax.c (char_quoted): Mixup byte/char pos. - (back_comment): Fixup globals in all cases. - -2004-08-19 Jan Dj,Ad(Brv - - * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before - passing it to gtk_window_set_title. - -2004-08-19 Kim F. Storm - - * process.c (wait_reading_process_input): Clean up. - Add wait_for_cell, wait_proc, and just_wait_proc args - to avoid overloading `read_kbd' and `do_display' args. - Change read_kbd arg to int. All callers changed. - - * process.c (process_send_signal): Use CDISABLE. - - * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE. - -2004-08-18 Kim F. Storm - - * process.c (Faccept_process_output): Add arg JUST-THIS-ONE; - forward to wait_reading_process_input via DO_DISPLAY arg. - (wait_reading_process_input): If DO_DISPLAY < 0 for a process - object, only process output from that process; also inhibit - running timers if DO_DISPLAY==-2. - -2004-08-17 Kim F. Storm - - * process.c (process_send_signal): Fix last change--use - _POSIX_VDISABLE instead of CVDISABLE when available. - -2004-08-16 Richard M. Stallman - - * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]: - Set VQUIT and VINTR chars to the standard ones if they are unset. - [AIX]: Don't do that here. And don't force VINTR to standard - when SIGNALS_VIA_CHARACTERS. - - * process.c (process_send_signal) - [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up. - Do nothing if the character is CVDISABLE. - - * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op. - - * intervals.c (move_if_not_intangible): - Force POSITION to be between BEGV and ZV. - -2004-08-14 John Paul Wallington - - * buffer.c (Frestore_buffer_modified_p): Doc fix. - - * fileio.c (Fread_file_name): Doc fix. - - * minibuf.c (syms_of_minibuf) : Doc fix. - -2004-08-09 Luc Teirlinck - - * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes. - -2004-08-08 Luc Teirlinck - - * keyboard.c: Declare Qdisabled_command_function instead of - Qdisabled_command_hook. - (Fcommand_execute): Use Qdisabled_command_function instead of - Qdisabled_command_hook. - (syms_of_keyboard): Ditto. - -2004-08-07 Luc Teirlinck - - * keymap.c (Flocal_key_binding, Fglobal_key_binding) - (syms_of_keymap) : Doc fixes. - -2004-08-07 Stefan Monnier - - * window.c (window_list_1): YAILOM. - - * fileio.c (make_temp_name): Handle multibyte prefixes. - -2004-08-06 Luc Teirlinck - - * keyboard.c (syms_of_keyboard) : - Doc fix. - -2004-08-03 Kenichi Handa - - * coding.c (decode_coding_string): Adjust coding->consumed, and - etc. with shrinked_bytes. - -2004-08-03 Kim F. Storm - - * indent.c (compute_motion): Fix check for full width window - in non-window case. Do not count left truncation glyph on - window systems. - -2004-08-02 Luc Teirlinck - - * data.c (Finteractive_form): Doc fix. - -2004-08-02 Kim F. Storm - - * indent.c (compute_motion): Use actual window width if WIDTH is -1, - properly accounting for continuation glyph on non-window systems. - (Fcompute_motion): Use actual window width if WIDTH is nil, and - actual window width/height if TOPOS is nil, properly accounting for - continuation glyphs on non-window systems, and optional header lines. - (vmotion): Let compute_motion calculate actual window width. - - * window.c (window_scroll_line_based): Let compute_motion - calculate actual window width. - -2004-08-02 Kim F. Storm - - * process.c (read_process_output): Use whole read buffer. - Don't trigger adaptive read buffering on errors. - -2004-07-31 Luc Teirlinck - - * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes. - - * keyboard.c (syms_of_keyboard) : Doc fix. - - * callint.c (Fcall_interactively): Doc fix. - -2004-07-30 Richard M. Stallman - - * abbrev.c (Fexpand_abbrev): Undo previous change. - -2004-07-30 Kim F. Storm - - * editfns.c (Fformat): Allocate extra (dummy) element in info. - -2004-07-28 Luc Teirlinck - - * eval.c (Fdefvar, Fdefconst): Doc fixes. - -2004-07-27 Kim F. Storm - - * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after - we have ensured that the glyph fits on the current line (or returned - MOVE_LINE_CONTINUED otherwise). - -2004-07-26 Kim F. Storm - - * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe - is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV - if target position is at end of display line but char is not a newline. - -2004-07-25 Richard M. Stallman - - * window.c (coordinates_in_window): Return ON_SCROLL_BAR - instead of ON_VERTICAL_BORDER, when on scroll bar. - (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil. - - * dispextern.h (enum window_part): Add ON_SCROLL_BAR. - - * window.c (Fcoordinates_in_window_p): - Take account of FRAME_INTERNAL_BORDER_WIDTH. - - * alloc.c (check_cons_list): New function (contents commented out). - -2004-07-24 Luc Teirlinck - - * xfaces.c (Fcolor_supported_p): Doc fix. - - * frame.c (Fselect_frame, Fset_frame_selected_window) - (Fframe_visible_p, Fraise_frame): Doc fixes. - -2004-07-24 Richard M. Stallman - - * keyboard.h (not_single_kboard_state): Declare. - - * fileio.c (Fwrite_region): Doc fix. - - * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH. - - * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook - only when a real abbrev is present. - - * xfns.c (x_icon_verify): New function. - (Fx_create_frame): Use it. - -2004-07-22 Barry Fishman (tiny change) - - * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined. - -2004-07-21 Kim F. Storm - - * window.h (struct glyph_matrix): New members nrows_scale_factor - and ncols_scale_factor. - - * window.c (make_window): Initialize nrows_scale_factor and - ncols_scale_factor members. - - * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor. - (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up. - (required_matrix_height): Apply nrows_scale_factor. - (required_matrix_width): Apply ncols_scale_factor. - - * xdisp.c (display_line): Increment nrows_scale_factor and set - fonts_changed_p if past last allocated row. - (append_glyph, append_composite_glyph, produce_image_glyph) - (append_stretch_glyph): Increment ncols_scale_factor and set - fonts_changed_p if current area is full. - -2004-07-21 Jan Dj,Ad(Brv - - * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0. - -2004-07-19 Luc Teirlinck - - * window.c (Fpos_visible_in_window_p, Fset_window_hscroll) - (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point) - (Fset_window_start, Fscroll_up, Fscroll_down) - (Fother_window_for_scrolling, Fscroll_other_window) - (Fsave_window_excursion, Fset_window_vscroll) - (syms_of_window) : Doc fixes. - -2004-07-19 KOBAYASHI Yasuhiro - - * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of - ENCODE_SYSTEM for filenames. - -2004-07-18 YAMAMOTO Mitsuharu - - * mac.c (sys_select): Block input around call to - ReceiveNextEvent to prevent breakage. Correctly handle - blocking on event queue only by calling ReceiveNextEvent - instead of select (since GUI events aren't on an fd). - (sys_read): Remove function - * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON - -2004-07-18 YAMAMOTO Mitsuharu - - * mac.c (sys_select): Redo sys_select to use alarm-based - polling instead of 1 sec timeouts (like solaris). - - * macterm.c (x_make_frame_visible): Comment in polling on - frame creation. - - * keyboard.c: Undef SIGIO on Carbon - - * atimer.c (alarm_signal_handler): Call alarm handlers after - scheduling. - - * eval.c (Feval): Remove quit_char test - - * process.c (wait_reading_process_input): Remove clearing - stdin for select call on process input. - -2004-07-18 Luc Teirlinck - - * xdisp.c (syms_of_xdisp) : Correct - capitalization error in docstring. - -2004-07-17 Juanma Barranquero - - * keyboard.c (not_single_kboard_state): Do nothing unless - MULTI_KBOARD is defined. - -2004-07-17 Richard M. Stallman - - * window.c (coordinates_in_window): Inside the window but outside - its box to the L or R, return ON_VERTICAL_BORDER. - (window_list_1): Rotate the list to start with WINDOW. - - * print.c (print_preprocess): Test for print_depth at limit - before entering in being_printed. - - * keyboard.c (not_single_kboard_state): New function. - (stuff_buffered_input): Now no-op only if no SIGTSTP. - - * frame.c (Fdelete_frame): If we're in single_bboard_state on - this kboard, and we delete its last frame, go to any_kboard_state. - - * buffer.c (syms_of_buffer) : Doc fix. - -2004-07-15 KOBAYASHI Yasuhiro - - * w32fns.c (Fx_file_dialog): Encode strings in system coding - system before passing them to OS functions for display. - -2004-07-15 David Kastrup - - * search.c (syms_of_search): Staticpro `saved_last_thing_searched'. - Apparently fixes an abort condition. - -2004-07-14 Luc Teirlinck - - * fileio.c (Fvisited_file_modtime): Return a list of two integers, - instead of a cons. - -2004-07-14 K,Aa(Broly L$,1 q(Brentey - - * keyboard.c (echo_dash): Do nothing if there already is a dash - at the end of the echo string. - -2004-07-12 Kim F. Storm - - * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value - if GC_MARK_STACK. - -2004-07-10 Luc Teirlinck - - * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes. - - * window.c (Fwindow_buffer, Fother_window, Fget_lru_window) - (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on) - (Freplace_buffer_in_windows, Fset_window_buffer) - (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes. - (syms_of_window): Expand docstring of `display-buffer-function'. - -2004-07-09 Luc Teirlinck - - * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time) - (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings - that time values of the type (HIGH . LOW) are considered obsolete. - -2004-07-06 Luc Teirlinck - - * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table' - docstring. - - * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING. - -2004-07-06 John Paul Wallington - - * eval.c (Fdefmacro): Signal an error if NAME is not a symbol. - - * fns.c (Fclear_string): Signal an error if STRING is not a string. - -2004-07-05 Jan Dj,Ad(Brv - - * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList - instead of CGMainDisplayID (only in OSX 10.2 and later). - -2004-07-04 John Paul Wallington - - * fileio.c (read_file_name_completion_ignore_case): New variable. - (syms_of_fileio): Declare and initialise it. - (Fread_file_name): Bind `completion-ignore-case' to respect it. - -2004-07-03 Eli Zaretskii - - * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects - for event.x and event.y. - -2004-07-01 Kenichi Handa - - * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly - after getting a new string by pre-write-conversion. - -2004-06-30 Stefan Monnier - - * xterm.c (x_detect_focus_change): Remove unused var `nr_events'. - (x_calc_absolute_position): Remove unused var `child'. - - * xfaces.c (x_supports_face_attributes_p) - (Fdisplay_supports_face_attributes_p): YAILOM. - (tty_supports_face_attributes_p): Remove unused var `i'. - - * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and - back_unibyte_ok. - - * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM. - - * fontset.c (Fset_fontset_font): Remove unused vars `family' and - `registry'. - - * Makefile.in (${etc}DOC): Fix file name of make-docfile. - -2004-06-30 Andreas Schwab - - * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES. - (Finit_image_library): Pass LIBRARIES through to - CHECK_LIB_AVAILABLE. Declare parameters. Doc fix. - (lookup_image_type): Pass Qnil as second argument to - Finit_image_library. - - * lisp.h (Finit_image_library): Declare. - -2004-06-29 YAMAMOTO Mitsuharu - - * macterm.c (do_window_activate, do_window_deactivate): Remove. - (XTread_socket): Send mouse button events to the toolbox - dispatcher even when the mouse is grabbed. Don't process window - activate events for non-Emacs windows. Replace function calls to - do_window_activate and do_window_deactivate with their contents. - Reset mouse grabbing status when a window is deactivated. - -2004-06-29 Steven Tamm - - * macterm.c (mac_get_emulated_btn) - (mac_event_to_emacs_modifiers): Fix emulated mouse button - support to correctly mask out modifiers. - -2004-06-29 David Kastrup - - * search.c (Fset_match_data): Allow buffer before end of list - which can happen if set-match-data is using a pre-consed list. - -2004-06-28 Steven Tamm - - * macterm.c (XTread_socket): Correctly set the frame position - after the window is moved. - -2004-06-28 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on - gpix and gmask just before return to avoid memory leak. - (xg_get_image_for_pixmap): Add workaround for monochrome displays - so insensitive and activated icons look ok. - -2004-06-27 Jason Rumney - - * w32fns.c (file_dialog_callback): Disable edit control if set - to directories only on CDN_INITDONE message. - (Fx_file_dialog): Default to directories only when prompt starts - with "Dired". - -2004-06-25 Kim F. Storm - - * alloc.c (allocate_misc): Update total_free_markers. - (free_misc): New function. - (safe_alloca_unwind, free_marker): Use it. - - * lisp.h (free_misc): Add prototype. - - * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs. - -2004-06-24 Richard M. Stallman - - * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted. - (syms_of_emacs): Lisp variables deleted. - -2004-06-23 David Kastrup - - * search.c (Freplace_match): Adjust the match-data more thoroughly - when replacing strings in the buffer. - (Fmatch_data): When INTEGERS is non-nil and the last match was in - a buffer, add the buffer as last element to the match data. - (Fset_match_data): If an additional element of the match-data is a - buffer, restore it to last_thing_searched. - (save_search_regs): Save last_thing_searched as part of the match data. - (restore_match_data): Restore it again. - -2004-06-23 Luc Teirlinck - - * keymap.c (Ftext_char_description): Doc fix. - * doc.c (Fsnarf_documentation): Doc fix. - -2004-06-22 Kim F. Storm - - * fns.c (Fmapcar, Fmapconcat): GCPRO the args array. - - * lisp.h (struct Lisp_Save_Value): New member dogc. - (SAFE_ALLOCA_LISP): Change second arg to number of elements. - Set dogc member in Lisp_Save_Value object so it will be GC'ed. - (SAFE_FREE_LISP): New macro. - - * alloc.c (safe_alloca_unwind): Clear dogc and pointer members. - (make_save_value): Init new dogc member. - (mark_object): Mark Lisp_Save_Value pointer array if dogc is set. - - * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and - SAFE_FREE_LISP macros. - -2004-06-22 Kim F. Storm - - * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects. - Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects - in that memory area are unknown to GC. Add comments. - - * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP. - -2004-06-21 Kim F. Storm - - * lisp.h (MAX_ALLOCA): Define here. - (safe_alloca_unwind): Add prototype. - (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros. - - * alloc.c (safe_alloca_unwind): New function. - - * casefiddle.c (casify_object): Use SAFE_ALLOCA. - - * charset.c (Fstring): Use SAFE_ALLOCA. - - * coding.c (MAX_ALLOCA): Remove define. - - * data.c (MAX_ALLOCA): Remove define. - (Faset): Use SAFE_ALLOCA. - - * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA. - - * fns.c (string_make_multibyte, string_to_multibyte) - (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA. - (MAX_ALLOCA): Remove define. - (Fbase64_encode_region, Fbase64_encode_string) - (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA. - (Fbase64_encode_region, Fbase64_encode_string): Fix potential - memory leak if encoding fails. - - * xdisp.c (add_to_log): Use SAFE_ALLOCA. - -2004-06-21 Eli Zaretskii - - * print.c (Fwith_output_to_temp_buffer): Doc fix. - -2004-06-20 Richard M. Stallman - - * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix. - - * search.c (match_limit): Cleaner err msg when no match data available. - - * window.c (syms_of_window): Doc fix. - - * keyboard.c (command_loop_1): Handle values `only' and `identity' - for Vtransient_mark_mode. - - * buffer.c (syms_of_buffer): Doc fix. - -2004-06-21 David Kastrup - - * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding - and unbinding of `case-fold-search' according to - `completion-ignore-case' around calls of string-match and - predicates, respectively. Should give satisfactory performance - in all relevant cases. - -2004-06-17 Jan Dj,Ad(Brv - - * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from - clip_x/y_origin. - - * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca. - - * macfns.c (Fx_display_color_cells): Do not limit return value to 256. - - * macterm.c (mac_initialize_display_info): Initialize n_planes correctly - on Mac OSX. - -2004-06-16 Luc Teirlinck - - * buffer.c (syms_of_buffer): Clarify `fill-column' docstring. - -2004-06-16 Kim F. Storm - - * dispextern.h (Vimage_types): Remove extern. - -2004-06-16 Miles Bader - - * image.c (lookup_image_type): Initialize image type if necessary. - -2004-06-15 Kim F. Storm - - * xdisp.c (try_cursor_movement): Exclude header line from scroll - margin at top of window. - (try_window_reusing_current_matrix): Calculate proper cursor position - after scrolling up with non-zero scroll margin, as the old cursor - position corresponds to value of PT before executing this command. - (try_window_id): Consider scroll margin at bottom of window too; - otherwise we fail to scroll when hl-line-mode is enabled. - - * syntax.c (skip_chars): Only recognize [:class:] when it has the - proper format and class is a lower-case word. - -2004-06-14 Jan Dj,Ad(Brv - - * gtkutil.c (xg_get_image_for_pixmap): New function. - (xg_get_gdk_pixmap_and_mask): Remove. - (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of - xg_get_gdk_pixmap_and_mask. - - * xterm.h (struct x_display_info): Typo in comment fixed. - -2004-06-14 Juanma Barranquero - - * dispextern.h (Vimage_types): Make it conditional on - HAVE_WINDOW_SYSTEM. - - * image.c (Vimage_types): Move from xdisp.c. - (Vimage_type_cache): New variable. - (define_image_type): New argument indicating whether an image - library was loaded; cache loaded status and return t on success, - nil otherwise. - (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros. - (w32_delayed_load): New function to load an image library from a - list of possible filenames. - (init_xpm_functions, init_png_functions, init_jpeg_functions) - (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'. - (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument. - (Finit_image_library): New function, extracted from `init_image'. - Try to initialize an image library on demand and cache whether we - were successful or not. - (syms_of_image): Initialize `Vimage_types' and - `Vimage_type_cache'. Add recognized image types to Vimage_types. - Export `init-image-library'. - (init_image): Remove initialization of all image types, except xbm - and pbm. - - * xdisp.c (Vimage_types): Delete (moved to image.c). - -2004-06-14 Andreas Schwab - - * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion): - Avoid calling specbind when completion-regexp-list is empty. - -2004-06-13 Richard M. Stallman - - * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t) - (re_wctype, re_iswctype, re_wctype_to_bit): - Non-function definitions moved here from regex.c. - - * regex.c (re_wctype, re_iswctype): Function defs longer static. - (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t) - (re_wctype, re_iswctype, re_wctype_to_bit): - Non-function definitions moved to regex.h. - - * window.c (Fselect_window): Doc fix. - - * syntax.c: Include regex.h. - (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed. - If requested, make a list of classes, then check the scanned - chars for membership in them. - (in_classes): New function. - Doc fix. - - * keyboard.c (cmd_error): Don't call any_kboard_state - if inside a recursive edit level. - -2004-06-13 K,Aa(Broly L$,1 q(Brentey - - * keyboard.c (command_loop): Call any_kboard_state before - command_loop_2 when at top level. - -2004-06-13 Andreas Schwab - - * print.c (print_object): Always use %ld for printing EMACS_INT. - - * keyboard.c (cancel_hourglass_unwind): Return a value. - (modify_event_symbol): Always use %ld for printing EMACS_INT. - (Fexecute_extended_command): Likewise. - - * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to - avoid clashes. - (SYNTAX): Likewise. - (SYNTAX_WITH_FLAGS): Likewise. - (SYNTAX_MATCH): Likewise. - - * syntax.c (char_quoted): Avoid warning about undefined operation. - (find_defun_start): Likewise. - (scan_lists): Likewise. - (INC_FROM): Likewise. - (scan_sexps_forward): Likewise. - - * image.c: Include . - - * xfaces.c (face_attr_equal_p): Declare parameters. - -2004-06-13 Kenichi Handa - - * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1. - -2004-06-12 Matthew Mundell - - * eval.c (Fdefun): Signal an error if NAME is not a symbol. - -2004-06-12 Kenichi Handa - - * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in - ccl_prog_stack_struct and update it. - (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook. - (CCL_READ_CHAR): Get instruction counter from eof_ic, not from - ccl->eof_ic on EOF. - (ccl_debug_hook): New function. - (struct ccl_prog_stack): New member eof_ic. - (ccl_driver): Handle EOF in subrountine call correctly. - -2004-06-11 Kenichi Handa - - * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT. - -2004-06-11 Kim F. Storm - - * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown. - -2004-06-11 Juanma Barranquero - - * keyboard.c (Fposn_at_point): Doc fix. - -2004-06-11 David Kastrup - - * search.c (match_limit): Don't flag an error if match-data - exceeding the allocated search_regs.num_regs gets requested, just - return Qnil. - -2004-06-08 Miles Bader - - * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected. - -2004-06-07 Juanma Barranquero - - * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time) - (Fcurrent_time_string, Fcurrent_time_zone) - (Finsert_buffer_substring, Ftranspose_regions): Doc fixes. - -2004-06-07 Miles Bader - - * xfaces.c (struct named_merge_point): New type. - (push_named_merge_point): New function. - (merge_named_face): New function. - (merge_face_ref, face_at_buffer_position, face_at_string_position): - Use `merge_named_face'. - (merge_face_inheritance): Function removed. - (merge_face_ref): Rename from `merge_face_vector_with_property'. - Add new `err_msgs' and `named_merge_points' args. Return error - status. Only print error messages if ERR_MSGS is true. Don't try to - do :inherit attribute validation. - (merge_face_heights): Handle `unspecified' in both directions. - (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'. - Call `merge_face_ref' instead of `merge_face_inheritance'. - (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector) - (compute_char_face, face_at_buffer_position) - (face_at_string_position): Call `merge_face_ref' instead of - `merge_face_vector_with_property'. - -2004-06-07 Kenichi Handa - - * coding.c (find_safe_codings): Check NILP (safe_codings) only at - the necessary places. - -2004-06-07 Kim F. Storm - - * process.c (Fdelete_process): Undo 2004-05-28 change. - Instead, call status_notify also for network process. - (status_message): Use process instead of status as arg. - Give messages "deleted" or "connection broken by remote peer" for - an exited network process. - (status_notify): Change call to status_message. - (read_process_output): Increase readmax to 4096. Do not increase - buffer size for datagram channels (default is now large enough). - -2004-06-06 Steven Tamm - - * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation - problem due to newly defined variable. - -2004-06-06 Miles Bader - - * xfaces.c (Fdisplay_supports_face_attributes_p): Give up - immediately if non-interactive or not initialized. - -2004-06-05 Richard M. Stallman - - * minibuf.c (Fcompleting_read): Doc fix. - -2004-06-05 Andreas Schwab - - * macfns.c (x_create_tip_frame): Fix declaration after statement. - -2004-06-05 Juanma Barranquero - - * keymap.c (Fdescribe_vector): Fix docstring. - (Fkey_description, Fglobal_key_binding): Fix typo in docstring. - -2004-06-05 Miles Bader - - * xfaces.c (tty_supports_face_attributes_p): Make sure the specified - attributes have different values than the default face. - -2004-06-04 Eli Zaretskii - - * xfaces.c (x_supports_face_attributes_p): Make this function - conditional on HAVE_WINDOW_SYSTEM. - (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: - Don't call x_supports_face_attributes_p if it was not compiled in. - -2004-06-04 Miles Bader - - * xfaces.c (tty_supports_face_attributes_p): New function, mostly - from Ftty_supports_face_attributes_p. - (x_supports_face_attributes_p): New function. - (Ftty_supports_face_attributes_p): Function deleted. - (Fdisplay_supports_face_attributes_p): New function. - (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p. - (face_attr_equal_p): New function. - (lface_equal_p): Use it. - -2004-06-03 Juanma Barranquero - - * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command) - (Vw32_color_map): Fix typo in docstring. - (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip) - (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key): - Make argument names match their use in docstring. - -2004-06-02 Juanma Barranquero - - Work around bugs/problems with MinGW builds of graphics libraries - called from MSVC builds of Emacs. - - * image.c (lookup_image): Make pointer to img static. - (png_read_from_memory): Disable "global" optimization. - -2004-06-01 Stefan Monnier - - * eval.c (Fcondition_case): Fix usage. Simplify. - - * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true. - -2004-05-29 YAMAMOTO Mitsuharu - - * macfns.c: Don't include ccl.h. - [MAC_OSX]: Don't include QuickTime/QuickTime.h. - [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or - TextUtils.h. - (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors. - (Fx_display_mm_height, Fx_display_mm_width): Calculate length from - display height/width. - (compute_tip_xy, Vx_max_tooltip_size): Declare. - (unwind_create_tip_frame, compute_tip_xy): New functions. - (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c. - (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size, - and last_show_tip_args. - - * macgui.h [!MAC_OSX]: Include Gestalt.h. - (Cursor, No_Cursor): New defines. - [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro. - [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare. - - * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort. - - * macterm.c: Don't include Gestalt.h. - (enum mouse_tracking_type, mouse_tracking_in_progress): Remove. - (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap) - (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap) - (XFillRectangle, mac_draw_rectangle, mac_draw_string_common) - (mac_copy_area, mac_copy_area_with_mask, x_update_end) - (construct_mouse_click, XTmouse_position) - (x_scroll_bar_report_motion, x_calc_absolute_position) - (do_mouse_moved, do_zoom_window, mac_do_receive_drag) - (XTread_socket, make_mac_frame): Use SetPortWindowPort. - (note_mouse_movement): Clear the mouse face and reset the pointer - shape when the pointer goes outside the frame without grabbing. - (mac_front_window): New function. - (mac_window_to_frame): New macro. - (XTmouse_position, x_scroll_bar_report_motion, do_window_update) - (do_window_activate, do_window_deactivate, do_app_resume) - (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window) - (do_zoom_window, mac_do_receive_drag, XTread_socket) - (mac_check_for_quit_char): Use mac_front_window and/or - mac_window_to_frame. - (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a - scroll-bar click event. - (mac_define_frame_cursor): Change the pointer shape. - (x_free_frame_resources): Reset tip_window to NULL when it is - disposed of. - [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable. - [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor. - (do_window_update): Don't do anything if the updated window is the - tooltip window. - (do_mouse_moved): Handle mouse movement events here (previously in - XTread_socket). Clear the mouse face if - dpyinfo->mouse_face_hidden is set. - (do_os_event, do_events): Remove (now in XTread_socket). - (XTread_socket): Immediately return if interrupt_input_blocked. - Loop until all the events in the queue are processed. - Rearrange codes for mouse grabbing. Add tooltip support. Include the - contents of do_os_event and do_events. Remove mouse movement - handling (now in do_mouse_moved). Add the case where - Vmouse_highlight has an integer value. - (NewMacWindow): Remove. - (make_mac_frame): Do what NewMacWindow previously did. Don't do - excess initializations. - (make_mac_terminal_frame): Previous initializations in - make_mac_frame are moved here. - (mac_initialize_display_info): - Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden. - - * xdisp.c [MAC_OS] (No_Cursor): Remove variable. - (define_frame_cursor1): Don't treat HAVE_CARBON as a special case. - -2004-05-29 Richard M. Stallman - - * lisp.h (truncate_undo_list): Update decl. - - * alloc.c (undo_outer_limit): New variable. - (syms_of_alloc): Defvar it. - (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list. - - * undo.c (truncate_undo_list): New arg LIMITSIZE. - - * alloc.c (lisp_align_malloc): Check for base == 0 - regardless of HAVE_POSIX_MEMALIGN. - Clean up HAVE_POSIX_MEMALIGN handling of `err'. - -2004-05-28 Stefan Monnier - - * alloc.c: Undo Kim's recent changes and fix the same bug differently. - (marker_blocks_pending_free): Remove. - (Fgarbage_collect): Sweep after cleaning up undo-lists. - Mark the undo lists after claning them up. - Don't free block in marker_blocks_pending_free. - (mark_buffer): Don't mark undo_list. - (gc_sweep): Sweep hash-tables and strings first. - Do free marker blocks that are empty. - -2004-05-28 Jim Blandy - - * regex.c (print_partial_compiled_pattern): Add missing 'break' - after 'case wordend'. For symbeg and symend, print to stderr, - like the other cases. - -2004-05-28 Noah Friedman - - * process.c (Fdelete_process): Do not call remove_process. - -2004-05-28 Stefan Monnier - - * alloc.c (struct backtrace): Remove. - (Fgarbage_collect): Use the new mark_backtrace. - - * eval.c (mark_backtrace): New function. - - * minibuf.c (run_exit_minibuf_hook): New function. - (read_minibuf_unwind): Don't run exit-minibuffer-hook any more. - (read_minibuf): Use separate unwind handler to run exit-minibuf-hook. - -2004-05-27 Kim F. Storm - - * xdisp.c (back_to_previous_visible_line_start): Skip backwards - over display properties, e.g. images, that replace buffer text. - -2004-05-25 Kim F. Storm - - * alloc.c (marker_blocks_pending_free): New var. - (gc_sweep): Store free marker blocks on that list. - (Fgarbage_collect): Free them after undo-list cleanup. - - * process.c (wait_reading_process_input): Check connect_wait_mask - before actually accepting connection in case it has already been - accepted due to recursion. - -2004-05-23 K,Aa(Broly L$,1 q(Brentey - - * coding.c (Fset_safe_terminal_coding_system_internal): - Set suppress_error in safe_terminal_coding, not terminal_coding. - -2004-05-22 Richard M. Stallman - - * alloc.c (Fmake_string): Doc fix. - - * buffer.c (clone_per_buffer_values): Copy the alist of local vars, - and the alist pairs too. - - * casefiddle.c (casify_object): Return OBJ unchanged if not real char. - - * emacs.c (main): Update copyright year. - - * fileio.c (Fread_file_name): Expand DIR if not absolute. - - * insdel.c (del_range_2, replace_range): Don't write an anchor - if the gap is empty. - - * xdisp.c (try_scrolling): If scroll-up-aggressively or - scroll-down-aggressively is small but positive, put point - near the screen edge. - -2004-05-22 Juanma Barranquero - - * keymap.c (Fdefine_key): Doc fix. - -2004-05-22 Kim F. Storm - - * alloc.c (struct backtrace): Add debug_on_exit member. - (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep. - Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of - the removed cons cells. - (mark_object): Undo previous change - disallow Lisp_Misc_Free objects. - (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have - any cons cells pointing to unallocated stings. - Do not lisp_free any marker blocks, as there may still be pointers - to them from buffer undo lists at this stage of GC. - - * keyboard.c (struct backtrace): Add debug_on_exit member. - (Fcommand_execute): Clear it. - -2004-05-20 Luc Teirlinck - - * intervals.c (lookup_char_property): Do not prematurely return nil. - -2004-05-19 Jim Blandy - - Add support for new '\_<' and '\_>' regexp operators, matching the - beginning and end of symbols. - - * regex.c (enum syntaxcode): Add Ssymbol. - (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword. - (re_opcode_t): New opcodes `symbeg' and `symend'. - (print_partial_compiled_pattern): Print the new opcodes properly. - (regex_compile): Parse the new operators. - (analyse_first): Skip sym(beg|end) (they match only the empty string). - (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and - \sw; `symbeg' is mutually exclusive with \S_ and \Sw. - (re_match_2_internal): Match symbeg and symend. - - * search.c (trivial_regexp_p): \_ is no longer a trivial regexp. - -2004-05-19 Kim F. Storm - - * .gdbinit (xsymbol): Fix last change. - -2004-05-18 Stefan Monnier - - * .gdbinit (xprintstr): New fun. - (xstring, xprintsym): Use it. - - * w32proc.c (create_child): Use INTMASK. - - * alloc.c (Fgarbage_collect): Do all the marking before flushing - unmarked elements of the undo list. - -2004-05-18 David Ponce - - * print.c (print): Reset print_depth before to call print_object. - -2004-05-18 Jason Rumney - - * w32console.c: Prefix RIF functions with w32con_ to avoid - namespace clash with functions in term.c and w32term.c. - - * w32menu.c (add_menu_item, w32_menu_display_help) - [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member. - - * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype. - -2004-05-18 Eli Zaretskii - - * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems. - - * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph - with make_number. - (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph - with XINT. - -2004-05-18 Kim F. Storm - - * blockinput.h (INPUT_BLOCKED_P): New macros. - - * keyboard.c (Frecursive_edit): Return immediately if input blocked. - (Ftop_level): Unblock input if blocked. - - * buffer.h (GET_OVERLAYS_AT): New macro. - * msdos.c (IT_note_mouse_highlight): Use it. - * textprop.c (get_char_property_and_overlay): Use it. - * xdisp.c (next_overlay_change, note_mouse_highlight): Use it. - * xfaces.c (face_at_buffer_position): Use it. - - * print.c (print_object): Increase buf size. - -2004-05-17 Jason Rumney - - * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key) - (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from - Lisp_Object using i member. - (w32_quit_key): Rename from Vw32_quit_key, and make an int. - (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int - consistently. - - * w32proc.c (create_child): Use make_number instead of masking pid. - - * w32fns.c (w32_color_map_lookup): Return a Lisp_Object. - (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets): - Use EQ to compare Lisp_Objects. - (w32_parse_hot_key): Use int for lisp_modifiers consistently. - - * w32term.c (w32_num_mouse_buttons): Rename from - Vw32_num_mouse_buttons and make it an int. - - * w32.c (init_environment): Use it. - - * w32fns.c (w32_wnd_proc): Likewise. - - * w32proc.c (w32_pipe_read_delay): Rename from - Vw32_pipe_read_delay and make it an int. - - * w32.c (_sys_read_ahead): Use it. - - * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition. - - * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid. - - * w32inevt.c (w32_console_mouse_position, do_mouse_event) - (key_event): Don't mix Lisp_Object and int. - - * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location. - - * keyboard.c (kbd_buffer_get_event): Don't use event->code and - modifiers in language change event. - -2004-05-17 Kim F. Storm - - * alloc.c (mark_object): Ignore Lisp_Misc_Free objects. - Such objects may be freed markers which still exist on an undo list. - -2004-05-16 Juanma Barranquero - - * data.c (Fset_default): Make argument names match their use in - docstring. - -2004-05-15 Andreas Schwab - - * emacs.c (gdb_array_mark_flag): Define. - * .gdbinit: Mask off gdb_array_mark_flag from vector sizes. - -2004-05-15 Eli Zaretskii - - * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use - __attribute__((__aligned__)), so that USE_LSB_TAG would not become - defined for the MS-DOS build. - -2004-05-14 Stefan Monnier - - * w32fns.c (Fw32_define_rgb_color): Avoid XSET. - -2004-05-14 Kenichi Handa - - * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS. - -2004-05-14 YAMAMOTO Mitsuharu - - * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c - section to frame.c section. - (Fxw_display_color_p, Fx_file_dialog): Declare if - HAVE_WINDOW_SYSTEM defined. - - * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup. - - * macmenu.c (set_frame_menubar): Use NILP to test a lisp value. - - * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers) - (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values. - (XTread_socket): Fix int/Lisp_Object mixup. - (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup. - - * macterm.h (struct frame, struct face, struct image) - (display_x_get_resource, Fx_display_color_p) - (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs): - Add prototypes. - -2004-05-14 Kim F. Storm - - * process.c (wait_reading_process_input): Make reentrant. - Make Available and Connecting non-static. Save and restore value - of waiting_for_user_input_p. - -2004-05-13 Kim F. Storm - - * keyboard.c (mark_kboards): Don't mark x and y members - that are overloaded in selection request events. - -2004-05-13 Stefan Monnier - - * lisp.h (USE_LSB_TAG): Make it the default when it is known to work. - -2004-05-13 Glenn Morris - - * window.c (Fdisplay_buffer, Fsplit_window) - (split-height-threshold): Doc fix. - -2004-05-13 Juanma Barranquero - - * xfaces.c (Ftty_supports_face_attributes_p) - (Finternal_copy_lisp_face): Fix typo in docstring. - (Finternal_get_lisp_face_attribute): Fix docstring. - -2004-05-12 Jan Dj,Ad(Brv - - * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK. - -2004-05-11 Steven Tamm - - * macfns.c (Fx_create_frame): Default to using tool-bar by - setting tool-bar-lines to 1 in default-frame-alist. - -2004-05-11 YAMAMOTO Mitsuharu - - * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v) - (xpm_get_color_table_v, xpm_make_color_table_h) - (xpm_put_color_table_h, xpm_get_color_table_h) - (xpm_str_to_color_key, xpm_load_image, xpm_load) - (syms_of_image): Support XPM on Carbon Emacs. Does not - depend on libXpm, but only supports XPM version 3 without extensions. - -2004-05-11 YAMAMOTO Mitsuharu - - * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P - instead of FRAME_X_P - -2004-05-11 Kim F. Storm - - * process.c (read_process_output): Grow decoding_buf when needed; - this could cause a crash in allocate_string and compact_small_strings. - -2004-04-29 Jim Blandy - - * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2 - against proper opcode. - -2004-05-10 Juanma Barranquero - - * process.c (Fstart_process): Fix docstring. - - * charset.c (Fget_unused_iso_final_char): Fix typos in docstring. - (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction) - (Fsplit_char, Fchar_charset): Make argument names match their use - in docstring. - -2004-05-10 Richard M. Stallman - - * print.c (print_preprocess): Use being_printed, loop_count and - halftail to detect overdeep nesting and cyclic cdr chains. - -2004-05-10 Andreas Schwab - - * lisp.h (Fmake_symbolic_link): Declare. - - * fileio.c (Frename_file): Remove extra argument in call to - Fmake_symbolic_link. - -2004-05-10 Kim F. Storm - - * xdisp.c (calc_line_height_property): Use string position when - object is a string. - -2004-05-10 Kenichi Handa - - * print.c (temp_output_buffer_setup): Bind inhibit-read-only and - inhibit-modification-hooks to t temporarily before calling - Ferase_buffer. - - * xfns.c (x_create_tip_frame): Bind inhibit-read-only and - inhibit-modification-hooks to t temporarily before calling - Ferase_buffer. - - * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and - inhibit-modification-hooks to t temporarily before calling - Ferase_buffer. - - * fns.c (count_combining): Delete it. - (concat): Don't check combining bytes. - -2004-05-09 Jason Rumney - - * w32fns.c (Vw32_ansi_code_page): New Lisp variable. - (globals_of_w32fns): Set it. - -2004-05-09 Piet van Oostrum - - * data.c (Fquo): Simplify. - -2004-05-08 Peter Whaite (tiny change) - - * data.c (Fquo): If any argument is float, do the computation in - floating point. - -2004-05-08 Juanma Barranquero - - * process.c (Fwaiting_for_user_input_p, Fmake_network_process) - (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering): - Fix spelling of Emacs on docstring. - (Fset_process_coding_system, Fprocess_coding_system) - (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p): - Make argument names match their use in docstring. - (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process): - Fix docstring. - - * editfns.c (Finsert_buffer_substring): Make argument names match their - use in docstring. - - * syntax.c (Fmodify_syntax_entry): Fix docstring. - -2004-05-07 Steven Tamm - - * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT - around call to ReceiveEvent to avoid certain crashes. - -2004-05-07 YAMAMOTO Mitsuharu - - * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData) - (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap) - (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap): - Save/restore the current graphics port and device handle when - drawing into an offscreen graphics world. - - * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1) - (gif_load): Likewise. - -2004-05-07 Juanma Barranquero - - * window.c (Fset_window_buffer): Fix docstring. - -2004-05-06 Thien-Thi Nguyen - - * emacs.c (main) [VMS]: Fix var ref. - -2004-05-06 Romain Francoise - - * data.c (Fsetq_default): Fix docstring. - -2004-05-06 Jason Rumney - - * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h - to avoid name clash. - -2004-05-04 Jan Dj,Ad(Brv - - * fileio.c (barf_or_query_if_file_exists): Use lstat. - (Frename_file): Handle renaming of symlinks across file systems. - (Frename_file): Put symlink handling inside #ifdef S_IFLNK. - -2004-05-04 Kim F. Storm - - * xdisp.c (Qtotal): New var. - (syms_of_xdisp): Intern and staticpro it. - (calc_line_height_property): New arg total. Set it if - line-spacing property has format (total . VALUE). - (x_produce_glyphs): Ignore line-spacing if line-height is 0. - Handle total line-spacing property. - -2004-05-03 Jan Dj,Ad(Brv - - * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear - "under" scroll bar when size/position changes. - -2004-05-03 Jason Rumney - - * makefile.nt: Remove. - -2004-05-02 Eli Zaretskii - - * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT): - Avoid compiler warnings. - - * Makefile.in (region-cache.o): Depend on config.h. - -2004-05-02 Romain Francoise - - * indent.c (compute_motion): Save vpos in prev_vpos when dealing - with continuation lines, too. - -2004-05-02 Thien-Thi Nguyen - - * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'. - -2004-05-01 Stefan Monnier - - * xdisp.c (calc_line_height_property): YAILOM (yet another - int/Lisp_Object mixup). - -2004-05-01 Eli Zaretskii - - * msdos.c (top-level): Add "#pragma pack(0)" after , to - undo bad effect of pack(4) in some versions of system headers. - -2004-05-01 Jason Rumney - - * w32term.c (x_draw_hollow_cursor): Sync with xterm.c - -2004-04-30 Kim F. Storm - - * buffer.c (syms_of_buffer) : Allow float value. - (syms_of_buffer) : Doc fix. - - * dispextern.h (struct it): Remove member use_default_face. - Add members override_ascent, override_descent, override_boff. - - * xdisp.c (init_iterator): Handle line-spacing float value. - Initialize override_ascent member. - (append_space_for_newline): Reset override_ascent. - Remove use_default_face. - (calc_line_height_property): New function to calculate value of - line-height and line-spacing properties. Look at overlays, too. - Set override_ascent, override_descent, override_boff members when - using another face than the current face. Float values are now - relative to the frame default font, by default; accept a cons - of ratio and face name to specify value relative to a specific face. - (x_produce_glyphs): Use calc_line_height_property. - Use override_ascent etc. when set to handle different face heights. - A negative line-spacing property value is interpreted as a total - line height, rather than inter-line spacing. - (note_mouse_highlight): Allocate room for 40 overlays initially. - -2004-04-29 Stefan Monnier - - * data.c (Fsubr_name): New fun. - (syms_of_data): Defsubr it. - -2004-04-29 Kim F. Storm - - * xdisp.c (null_glyph_slice): New var. - (append_glyph, append_composite_glyph, append_stretch_glyph): - Use it to initialize glyph slice. - -2004-04-27 Stefan Monnier - - * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup. - (on_hot_spot_p): Make sure we always return a value. - (Flookup_image_map): Remove unused var ix and iy. - (note_mode_line_or_margin_highlight): Remove unused var `image'. - -2004-04-27 Eli Zaretskii - - * msdos.c (init_environment): If one of the TMP... environment - variables is set to a drive letter without a trailing slash, - append a slash. - -2004-04-27 Matthew Mundell - - * editfns.c (lisp_time_argument): Provide externally. - - * fileio.c (Fset_file_times): New function. - (syms_of_fileio): Intern and staticpro it. - -2004-04-27 Kim F. Storm - - * xdisp.c (x_produce_glyphs): Fix last change; handle newline in - header line strings. - - * dispextern.h (struct it): New member use_default_face. - - * xdisp.c (Qline_height): New variable. - (syms_of_xdisp): Intern and staticpro it. - (append_space_for_newline): Partially undo 2004-04-25 change; - add default_face_p arg, and restore callers. - Clear it->use_default_face after use. - (x_produce_glyphs): Set default font for ascii char if - it->use_default_font is set. Change line-spacing property to set - just extra line spacing. Handle new line-height property. - -2004-04-26 Andreas Schwab - - * print.c (print_object): Print non-ascii characters in bool - vector representation as octal escapes. - - * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define. - * print.c (print_object): Use it instead of BITS_PER_CHAR for - bool vectors. - * lread.c (read1): Likewise. - * alloc.c (Fmake_bool_vector): Likewise. - * data.c (Faref, Faset): Likewise. - * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray) - (mapcar1): Likewise. - -2004-04-26 Steven Tamm - - * lread.c (init_lread): Fix typo in HAVE_CARBON test logic. - -2004-04-26 Miles Bader - - * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c. - -2004-04-26 Juanma Barranquero - - * buffer.c (Fpop_to_buffer): Fix docstring. - -2004-04-26 Steven Tamm - - * lread.c (init_lread): Don't display missing lisp directory - warnings with Carbon Emacs because self-contained bundled Emacs - may be built without correct installation path. - -2004-04-25 Kim F. Storm - - * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines. - - * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines. - - * xdisp.c (append_space_for_newline): Rename from append_space. - Remove DEFAULT_FACE_P arg; always use current face. Callers changed. - (x_produce_glyphs): Handle line-spacing property on newline char. - If value is t, adjust ascent and descent to fit current row height. - If value is an integer or float, set extra_line_spacing to integer - value, or to float value x current line height. - -2004-04-23 Kenichi Handa - - * fontset.c (Finternal_char_font): If POSITION is nil, return - font for displaying CH with the default face. - -2004-04-23 Juanma Barranquero - - * makefile.w32-in: Add "-*- makefile -*-" mode tag. - -2004-04-21 Stefan Monnier - - * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]: - Don't make assumptions about the relative place of i and val. - (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well. - -2004-04-21 Kim F. Storm - - * dispextern.h (struct glyph_slice): New struct. - (struct glyph): New member slice. - (GLYPH_SLICE_EQUAL_P): New macro. - (GLYPH_EQUAL_P): Use it. - (struct glyph_string): New member slice. - (struct it_slice): New struct. - (struct it): New member slice, add member to stack too. - New member constrain_row_ascent_descent_p. - (image_ascent): Add prototype. - - * dispnew.c (buffer_posn_from_coords): Return full image width - and height even for image slices (posn is relative to full image). - (marginal_area_string): Adjust x0,y0 for image slice. - - * image.c (image_ascent): Add slice arg; calculate ascent for - image slice (or full image). - - * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns. - (syms_of_keyboard): Defsubr them. - - * lisp.h (pos_visible_p): Fix prototype. - - * macterm.c (x_draw_relief_rect): Add top_p and bot_p args. - (x_draw_glyph_string_box): Fix call to x_draw_relief_rect. - (x_draw_image_foreground, x_draw_image_relief) - (x_draw_image_foreground_1, x_draw_image_glyph_string): - Draw sliced images. - - * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args. - (x_draw_glyph_string_box): Fix call to x_draw_relief_rect. - (x_draw_image_foreground, x_draw_image_relief) - (w32_draw_image_foreground_1, x_draw_image_glyph_string): - Draw sliced images. - - * w32term.h (image_ascent): Remove prototype. - - * window.c (Fpos_visible_in_window_p): Return pixel position if - PARTIALLY arg is non-nil. Simplify. Doc fix. - (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg - to return/set vscroll in pixels. - - * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN. - - * xdisp.c (Qslice): New variable. - (syms_of_xdisp): Intern and staticpro it. - (pos_visible_p): Return pixel position in new x and y args. - (init_iterator): Reset it->slice info. - (handle_display_prop): Parse (slice ...) property. - (push_it, pop_it): Save/restore slice info. - (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not - force repositioning of tall row if window is vscrolled, as that - would reset vscroll. - (append_space): Set it->constrain_row_ascent_descent_p to avoid - increasing row height if row is non-empty. - (fill_image_glyph_string): Copy slice info. - (take_vertical_position_into_account): Simplify. - (produce_image_glyph): Handle iterator slice info, setup glyph - slice info. Do not force minimum line height. - (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set, - do not increase height (ascent/descent) of non-empty row when - adding normal character glyph; instead reduce glyph ascent/descent - appropriately; if row is higher than current glyph, adjust glyph - descent/ascent to reposition glyph within the existing row. - Likewise, when char is newline, only set ascent/descent if row is - currently empty. - (note_mouse_highlight): Handle hotspots with sliced image. - - * xterm.c (x_draw_relief_rect): Add top_p and bot_p args. - (x_draw_glyph_string_box): Fix call to x_draw_relief_rect. - (x_draw_image_foreground, x_draw_image_relief) - (x_draw_image_foreground_1, x_draw_image_glyph_string): - Draw sliced images. - - * xterm.h (image_ascent): Remove prototype. - -2004-04-20 Stefan Monnier - - * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup. - -2004-04-20 John Paul Wallington - - * fns.c (Fassoc, Feql): Fix indentation. - - * fontset.c (regularize_fontname): Rename from regulalize_fontname. - -2004-04-19 John Paul Wallington - - * fns.c (Feql): New function. - (syms_of_fns): Defsubr it. - -2004-04-18 Jason Rumney - - * w32select.c (Fw32_set_clipboard_data): Get sequence number - after closing the clipboard. - -2004-04-16 Luc Teirlinck - - * buffer.c (Fbuffer_base_buffer): Doc fix. - -2004-04-17 Kim F. Storm - - * keymap.c (Fkey_description): Add optional PREFIX arg. - Combine prefix with KEYS to make up the full key sequence to describe. - Correlate meta_prefix_char and following (simple) key to describe - as meta modifier. All callers changed. - (describe_map): Rename arg `keys' to `prefix'. Remove local - `elt_prefix' var. Use Fkey_description with prefix instead of - elt_prefix combined with Fsingle_key_description. - (describe_vector): Declare static. Replace arg `elt_prefix' with - `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it - if !KEYMAP_P. Use Fkey_description with prefix instead of - Fsingle_key_description. - - * keymap.h (Fkey_description): Fix prototype. - (describe_vector): Remove prototype. - - * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0. - - * image.c (PNG_BG_COLOR_SHIFT): Remove. - (png_load): Fix calculation of transparent background color on X - and W32 platforms. - -2004-04-16 Juanma Barranquero - - * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is - not too large before computing how much to scroll. - -2004-04-15 Stefan Monnier - - * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler. - -2004-04-14 Luc Teirlinck - - * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime): - Add hyperlink to Elisp manual to the docstring. - -2004-04-14 Stefan Monnier - - * callint.c (fix_command): Use XDCR. - -2004-04-14 Nick Roberts - - * window.c (Fget_lru_window): Doc fix. - -2004-04-14 Kim F. Storm - - * editfns.c (Fformat): Fix allocation size of precision array. - - * dispnew.c (update_window): Only set changed_p if - scrolling_window actually did scroll. - (scrolling_window): Only return 1 if we actually did scroll. - - * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor - height to glyph height when cursor row is not fully visible. - (make_cursor_line_fully_visible): Add FORCE_P arg to return - failure in case row is higher than window. Callers changed. - (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd). - Try to scroll partially visible, higher-than-window cursor row. - (redisplay_window): Always try to scroll partially visible, - higher-than-window cursor row - both initially and again with - centering_position = 0. - Clear desired matrix before retrying with centering_position = 0. - -2004-04-13 Stefan Monnier - - * syntax.c (scan_lists): Simplify backward string scan. - Fix off-by-one boundary check for string and comment fences. - -2004-04-13 Joe Buehler - - * sheap.c, unexcw.c: New files. - -2004-04-12 Luc Teirlinck - - * buffer.c (Fmake_indirect_buffer): Throw an error if the intended - base buffer has been killed. Correct the error message if the - base buffer does not exist. - -2004-04-12 Joe Buehler - - * s/cygwin.h: Changes for Cygwin unexec() support, changes in - Cygwin itself. Add support for Xaw3d scrollbars. - - * puresize.h: Set up PURE_P() for Cygwin unexec() support. - - * lastfile.c: Define my_endbss[] for Cygwin unexec() support. - - * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(), - before Cygwin unexec. - - * Makefile.in: Link changes for Cygwin unexec() support. - -2004-04-12 Andreas Schwab - - * buffer.c (Fmake_indirect_buffer): Check that NAME is a string. - -2004-04-11 Luc Teirlinck - - * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if - IGNORE argument equals NAME. Doc fix. - -2004-04-11 Masatake YAMATO - - * buffer.c (fix_start_end_in_overlays): Make overlays - empty if they are backwards. - -2004-04-09 Stefan Monnier - - * xfaces.c (face_color_supported_p): Fix compilation without X11. - -2004-04-07 Stefan Monnier - - * doc.c (Fsnarf_documentation): Ignore new file name entries. - -2004-04-06 Kim F. Storm - - * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden. - (dos_rawgetc): Set mouse_face_hidden after clearing highlight. - - * w32term.c (w32_read_socket): Set mouse_face_hidden after - clearing highlight. - - * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden. - - * xterm.c (handle_one_xevent): Set mouse_face_hidden after - clearing highlight. - - * indent.c (vmotion): Do not reserve one column for continuation - marks on window frames. - -2004-04-04 Eli Zaretskii - - * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings - from GCC. - -2004-04-03 Stefan Monnier - - * .gdbinit-union: Remove. - - * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION. - (xgetptr, xgetint, xgettype): New funs. Use them everywhere. - ($nonvalbits): Remove. - ($valmask): Set it by calling xreload to avoid redundancy. - - * emacs.c (gdb_use_union, gdb_use_lsb): New vars. - (gdb_emacs_intbits): Remove. - -2004-03-31 Jan Dj,Ad(Brv - - * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes. - -2004-03-30 Kenichi Handa - - * editfns.c (Fformat): Fix initialization of the array info. - -2004-03-30 Kim F. Storm - - * xterm.c (x_mouse_click_focus_ignore_position): New var. - (syms_of_xterm): DEFVAR_BOOL it. - (ignore_next_mouse_click_timeout): New var. - (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify. - Use it to filter mouse clicks following focus event. - -2004-03-29 David Ponce - - * callint.c (Fcall_interactively): Fix last change. - -2004-03-28 Stefan Monnier - - * eval.c (Fcommandp): Simplify. - - * data.c (Finteractive_form): Rename from Fsubr_interactive_form. - Extend to handle all kinds of functions. - - * lisp.h (Finteractive_form): Declare. - - * callint.c (Fcall_interactively): Use it. - -2004-03-26 Kim F. Storm - - * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error - to catch errors in calc_pixel_width_or_height during redisplay. - -2004-03-26 Masatake YAMATO - - * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range. - - * lisp.h (fix_start_end_in_overlays): Likewise. - - * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays. - - * editfns.c (Ftranspose_regions): Likewise. - -2004-03-20 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Do not pass key press events to GTK. - -2004-03-19 Richard M. Stallman - - * s/sol2-6.h: Delete previous change. - -2004-03-19 Kim F. Storm - - * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when - to_charpos corresponds to newline in right fringe. Use local - BUFFER_POS_REACHED_P macro. - -2004-03-19 Jan Dj,Ad(Brv - - * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM - to compile on non-window system. - -2004-03-19 Kim F. Storm - - * dispextern.h (calc_pixel_width_or_height): Add prototype. - - * image.c (Qcenter): Move to xdisp.c. - - * xdisp.c (Qcenter): Declare here. - (syms_of_xdisp): Intern and staticpro it. - (handle_single_display_prop): Allow space display property on all - platforms. - (display_mode_line): Set mode_line_p before displaying line. - (calc_pixel_width_or_height): Declare extern. Add separate :align-to - handling. Remove complex cases for fringes and scroll-bars. - Add left, right, and center alignment positions. Add text (area) - width/height. Return width or height for image specs. - (produce_stretch_glyph): Improve handling of :align-to. Is now - relative to left of text area by default, but other base offsets - can be specified -- also for text lines. - - * term.c (produce_glyphs): Handle IT_STRETCH. - (produce_stretch_glyph): New function to handle space width and - align-to display properties on non-window systems. - -2004-03-17 Stefan Monnier - - * fileio.c (Fread_file_name): Set completion-ignore-case for - case-insensitive systems. - -2004-03-14 Masatake YAMATO - - * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE - when keymap and cursor are setup. - -2004-03-14 Steven Tamm - - * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o. - -2004-03-14 Kim F. Storm - - * dispextern.h (x_find_image_file): Add prototype. - - * image.c (x_find_image_file): Make extern. - - * xfns.c (x_find_image_file): Remove prototype. - -2004-03-13 Eli Zaretskii - - * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined. - - * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined. - -2004-03-12 Richard M. Stallman - - * fns.c (internal_equal): New arg PROPS controls comparing - text properties. All callers changed. - (Fequal_including_properties): New function. - (syms_of_fns): defsubr it. - -2004-03-12 Kim F. Storm - - Fix image support on MAC. From YAMAMOTO Mitsuharu. - - * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs. - (image_background, image_background_transparent): Fix prototypes. - - * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h. - - * macfns.c (x_list_fonts, x_get_font_info, x_load_font) - (x_query_font, x_find_ccl_program, x_set_window_size) - (x_make_frame_visible, mac_initialize, XCreatePixmap) - (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground) - (mac_draw_line_to_pixmap): Move prototypes to macterm.h. - - * macterm.h (x_list_fonts, x_get_font_info, x_load_font) - (x_query_font, x_find_ccl_program, x_set_window_size) - (x_make_frame_visible, mac_initialize, XCreatePixmap) - (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground) - (mac_draw_line_to_pixmap): Add prototypes. - -2004-03-12 YAMAMOTO Mitsuharu - - * macterm.c (XTread_socket): Fix mouse click on tool bar. - -2004-03-11 Kim F. Storm - - * dispextern.h: Move image related prototypes from xfns.c section - to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than - HAVE_X_WINDOWS. - - * Makefile.in (XOBJ): Consolidate into one list. Add image.o. - Move gtkutil.o to new GTK_OBJ list. - (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place. - (GTK_OBJ) [USE_GTK]: New declaration. - (obj): Add $(GTK_OBJ) to list. - -2004-03-11 Steven Tamm - - * image.c [MAC_OSX]: Include sys/stat.h. - - * macfns.c (syms_of_macfns): Remove definitions of things now - defined in image.c. - -2004-03-11 Kim F. Storm - - The following changes consolidates the identical/similar image - support code previously found in xfns.c, w32fns.c, and macfns.c - into a new file image.c. - - * makefile.w32-in (OBJ1): Add image.o. - ($(BLD)/image.$(O)): Add dependencies. - - * Makefile.in (XOBJ, MAC_OBJ): Add image.o. - (image.o): Add dependencies. - - * image.c: New file with consolidated image support code. - (COLOR_TABLE_SUPPORT): New define to control whether - color table support is available (X only). - (Bitmap_Record): Common name for x_bitmap_record, - w32_bitmap_record, and mac_bitmap_record. - (XImagePtr): Common name for pointer to XImage or equivalent. - (XImagePtr_or_DC): New type to simplify code sharing; equivalent - to XImagePtr on X+MAC, and to HDC on W32. - (GET_PIXEL): Wrapper for XGetPixel or equivalent. - (NO_PIXMAP): Common name for "None" or equivalent. - (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors. - (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value. - (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c). - (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen): - Define with suitable equivalents on W32 and MAC for code sharing. - (XDrawLine): Define on MAC for code sharing. - (Destroy_Image, Free_Pixmap): Wrappers for code sharing. - (IF_LIB_AVAILABLE): Macro to simplify code sharing. - (Vx_bitmap_file_path, Vimage_cache_eviction_delay) - (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) - (x_reference_bitmap, x_create_bitmap_from_data) - (x_create_bitmap_from_file, x_destroy_bitmap) - (x_destroy_all_bitmaps, x_create_bitmap_mask) - (XGetImage, XPutPixel, XGetPixel, XDestroyImage) - (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) - (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) - (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) - (define_image_type, lookup_image_type, valid_image_p) - (image_error, enum image_value_type, struct image_keyword) - (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) - (make_image, free_image, prepare_image_for_display, image_ascent) - (four_corners_best, image_background, image_background_transparent) - (x_clear_image_1, x_clear_image, x_alloc_image_color) - (make_image_cache, free_image_cache, clear_image_cache) - (Fclear_image_cache, postprocess_image, lookup_image, cache_image) - (forall_images_in_image_cache, x_create_x_image_and_pixmap) - (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) - (find_image_fsspec, image_load_qt_1, image_load_quicktime) - (init_image_func_pointer, image_load_quartz2d) - (struct ct_color, init_color_table, free_color_table) - (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) - (cross_disabled_images, x_to_xcolors, x_from_xcolors) - (x_detect_edges, x_emboss, x_laplace, x_edge_detection) - (x_disable_image, x_build_heuristic_mask) - (XBM support, XPM support, PBM support, PNG support, JPEG support) - (TIFF support, GIF support, Ghostscript support): Consolidate image - code from xfns.c, w32fns.c, and macfns.c. - (syms_of_image): Consolidate image related symbol setup here. - (init_image): Consolidate image related initializations here. - - * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image - and init_image. Remove call to init_xfns. - - * macterm.h (struct mac_bitmap_record): Add file member. - Not currently used, but simplifies code sharing. - - * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay) - (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) - (x_reference_bitmap, x_create_bitmap_from_data) - (x_create_bitmap_from_file, x_destroy_bitmap) - (x_destroy_all_bitmaps, x_create_bitmap_mask) - (XGetImage, XPutPixel, XGetPixel, XDestroyImage) - (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) - (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) - (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) - (define_image_type, lookup_image_type, valid_image_p) - (image_error, enum image_value_type, struct image_keyword) - (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) - (make_image, free_image, prepare_image_for_display, image_ascent) - (four_corners_best, image_background, image_background_transparent) - (x_clear_image_1, x_clear_image, x_alloc_image_color) - (make_image_cache, free_image_cache, clear_image_cache) - (Fclear_image_cache, postprocess_image, lookup_image, cache_image) - (forall_images_in_image_cache, x_create_x_image_and_pixmap) - (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) - (find_image_fsspec, image_load_qt_1, image_load_quicktime) - (init_image_func_pointer, image_load_quartz2d) - (struct ct_color, init_color_table, free_color_table) - (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) - (cross_disabled_images, x_to_xcolors, x_from_xcolors) - (x_detect_edges, x_emboss, x_laplace, x_edge_detection) - (x_disable_image, x_build_heuristic_mask) - (XBM support, XPM support, PBM support, PNG support, JPEG support) - (TIFF support, GIF support, Ghostscript support): Merge with image - code from xfns.c and macfns.c into image.c. - (syms_of_xfns): Move image related symbols to image.c. - (init_external_image_libraries, init_xfns): Remove; initialization - moved to init_image in image.c. - - * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay) - (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) - (x_reference_bitmap, x_create_bitmap_from_data) - (x_create_bitmap_from_file, x_destroy_bitmap) - (x_destroy_all_bitmaps, x_create_bitmap_mask) - (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) - (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) - (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) - (define_image_type, lookup_image_type, valid_image_p) - (image_error, enum image_value_type, struct image_keyword) - (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) - (make_image, free_image, prepare_image_for_display, image_ascent) - (four_corners_best, image_background, image_background_transparent) - (x_clear_image_1, x_clear_image, x_alloc_image_color) - (make_image_cache, free_image_cache, clear_image_cache) - (Fclear_image_cache, postprocess_image, lookup_image, cache_image) - (forall_images_in_image_cache, x_create_x_image_and_pixmap) - (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) - (struct ct_color, init_color_table, free_color_table) - (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) - (cross_disabled_images, x_to_xcolors, x_from_xcolors) - (x_detect_edges, x_emboss, x_laplace, x_edge_detection) - (x_disable_image, x_build_heuristic_mask) - (XBM support, XPM support, PBM support, PNG support, JPEG support) - (TIFF support, GIF support, Ghostscript support): Merge with image - code from xfns.c and macfns.c into image.c. - (syms_of_xfns): Move image related symbols to image.c. - (init_external_image_libraries, init_xfns): Remove; initialization - moved to init_image in image.c. - - * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay) - (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) - (x_reference_bitmap, x_create_bitmap_from_data) - (x_create_bitmap_from_file, x_destroy_bitmap) - (x_destroy_all_bitmaps, x_create_bitmap_mask) - (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) - (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) - (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) - (define_image_type, lookup_image_type, valid_image_p) - (image_error, enum image_value_type, struct image_keyword) - (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) - (make_image, free_image, prepare_image_for_display, image_ascent) - (four_corners_best, image_background, image_background_transparent) - (x_clear_image_1, x_clear_image, x_alloc_image_color) - (make_image_cache, free_image_cache, clear_image_cache) - (Fclear_image_cache, postprocess_image, lookup_image, cache_image) - (forall_images_in_image_cache, x_create_x_image_and_pixmap) - (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) - (struct ct_color, init_color_table, free_color_table) - (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) - (cross_disabled_images, x_to_xcolors, x_from_xcolors) - (x_detect_edges, x_emboss, x_laplace, x_edge_detection) - (x_disable_image, x_build_heuristic_mask) - (XBM support, XPM support, PBM support, PNG support, JPEG support) - (TIFF support, GIF support, Ghostscript support): Merge with - w32fns.c and macfns.c image code into image.c. - (syms_of_xfns): Move image related symbols to image.c. - (init_xfns): Remove; initialization moved to init_image in image.c. - - * lisp.h (syms_of_image, init_image): Add protoypes. - (init_xfns): Remove prototype. - - * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) - (x_reference_bitmap, x_create_bitmap_from_data) - (x_create_bitmap_from_file, x_destroy_bitmap) - (x_create_bitmap_mask): Move prototypes from dispextern.h. - (gamma_correct) [MAC_OS]: Add prototype. - - * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) - (x_reference_bitmap, x_create_bitmap_from_data) - (x_create_bitmap_from_file, x_destroy_bitmap) - (x_create_bitmap_mask): Move prototypes to dispextern.h. - -2004-03-09 Kenichi Handa - - * coding.c (decode_coding_emacs_mule): Handle insufficent source - correctly. - -2004-03-04 Richard M. Stallman - - * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition. - - * window.c (Fdisplay_buffer): Doc fix. - - * buffer.c (Fpop_to_buffer): Doc fix. - -2004-03-03 Kim F. Storm - - * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row. - -2004-03-02 Stefan Monnier - - * editfns.c (Ftranslate_region): Lisp_Object/int mixup. - -2004-03-02 Richard M. Stallman - - * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc. - -2004-03-02 Kenichi Handa - - * doc.c (Fsubstitute_command_keys): Fix counding bytes. - -2004-03-02 Kim F. Storm - - * window.h (struct window): New member overlay_arrow_bitmap. - - * window.c (make_window): Initialize overlay_arrow_bitmap. - - * xdisp.c (Voverlay_arrow_variable_list): New variable to properly - implement and integrate multiple overlay arrows with redisplay. - (syms_of_xdisp): DEFVAR_LISP and initialize it. - (last_arrow_position, last_arrow_string): Replace by properties. - (Qlast_arrow_position, Qlast_arrow_string) - (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables. - (syms_of_xdisp): Intern and staticpro them. - (overlay_arrow_string_or_property, update_overlay_arrows) - (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p) - (overlay_arrow_at_row): New functions for multiple overlay arrows. - (redisplay_internal): Use them instead of directly accessing - Voverlay_arrow_position etc. for multiple overlay arrows. - (mark_window_display_accurate): Use update_overlay_arrows. - (try_cursor_movement): Use overlay_arrow_in_current_buffer_p. - (try_window_id): Use overlay_arrows_changed_p. - (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg. - (display_line): Use overlay_arrow_at_row to check multiple - overlay arrows, and get relevant overlay-arrow-string and - overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly. - (produce_image_glyph): Set pixel_width = 0 for fringe bitmap. - (syms_of_xdisp): Remove last_arrow_position and last_arrow_string. - - * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set. - (update_window_fringes): Remove unused code. - -2004-03-01 Jason Rumney - - * w32term.c (w32_read_socket): Fix last change to ButtonPress handling. - -2004-03-01 Juanma Barranquero - - * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring. - - * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies. - -2004-03-01 Jan Dj,Ad(Brv - - * xfns.c (Fx_display_color_cells): Use number of planes to calculate - how many colors can be displayed. - -2004-03-01 Kenichi Handa - - * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE - correctly. - -2004-02-28 Kim F. Storm - - * dispnew.c (update_window): Update header line also if there are - no other changes in window (move code after set_cursor label). - - * lisp.h (mark_window_display_accurate): Remove prototype. - - * window.c (window_loop, Fforce_window_update): Force mode line - updates by setting prevent_redisplay_optimizations_p and - update_mode_lines. - -2004-02-28 Jan Dj,Ad(Brv - - * xfns.c (x_window): Fix indentation. - - * xterm.c (x_calc_absolute_position): Call x_real_positions - to get WM window sizes and use those to calculate position. - (x_set_offset): Remove code commented out. - -2004-02-28 Miles Bader - - * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert. - -2004-02-28 Kim F. Storm - - * keyboard.c (kbd_buffer_store_event_hold): New function to store - an event into kbd fifo, but with special handling of quit event; - a quit event is saved for later, and further events are discarded - until the saved quit event has been processed. - (kbd_buffer_store_event): Use kbd_buffer_store_event_hold. - (gen_help_event): Store help event in kbd fifo. - (NREAD_INPUT_EVENTS): Remove. - (read_avail_input): Adapt to new read_socket_hook interface. - Remove allocation and initialization of local input_event buffer, - as read_socket_hook stores events directly in fifo. Allocate and - initialize local hold_quit event to handle postponed quit event - (and store it if set by kbd_buffer_store_event_hold). - - * keyboard.h (kbd_buffer_store_event_hold): Add prototype. - (gen_help_event): Fix prototype. - - * macterm.c (XTread_socket): Remove bufp_r and - numcharsp args. Add hold_quit arg. - Rework to use just one, local, inev input_event. Store inev - directly in fifo using kbd_buffer_store_event_hold. - - * sysdep.c (BUFFER_SIZE_FACTOR): Remove. - (read_input_waiting): Adapt to new read_socket_hook interface. - Remove allocation and initialization of local input_event buffer, - as read_socket_hook stores events directly in fifo. Allocate and - initialize local hold_quit event to handle postponed quit event - (and store it if set by kbd_buffer_store_event_hold). - - * term.c (read_socket_hook): Fix arg list. - - * termhooks.h (read_socket_hook): Fix prototype. - - * w32inevt.c (w32_console_read_socket): Remove bufp_r and - numcharsp args. Add hold_quit arg. - Rework to use just one, local, inev input_event. Store inev - directly in fifo using kbd_buffer_store_event_hold. - - * w32inevt.h (w32_console_mouse_position): Fix prototype. - - * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args. - Add hold_quit arg. Rework to use just one, local, inev - input_event. Store inev directly in fifo using - kbd_buffer_store_event_hold. Update count in one place. - Postpone call to gen_help_event until inev is stored; use new - local do_help for this. - Remove local emacs_event in handing of ButtonPress event; just use - inev instead (so no reason to copy it later). - - * xsmfns.c (x_session_check_input): Remove numchars arg. - - * xterm.c (x_focus_changed, x_detect_focus_change): - Remove numchars arg. Always store event into bufp arg. - Return nothing. Callers changed accordingly. - (glyph_rect): Simplify. - (STORE_KEYSYM_FOR_DEBUG): New macro. - (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc. - (current_bufp, current_numcharsp) [USE_GTK]: Remove. - (current_hold_quit) [USE_GTK]: Add. - (event_handler_gdk): Adapt to new handle_one_xevent. - (handle_one_xevent): Remove bufp_r and numcharsp args. - Add hold_quit arg. Rework to use just one, local, inev - input_event. Store inev directly in fifo using - kbd_buffer_store_event_hold. Update count in one place. - Postpone call to gen_help_event until inev is stored; use new - local do_help for this. - Simplify handling of keysyms (consolidate common code). Fix bug - where count was updated with nchars instead of nbytes. - Remove local emacs_event in handing of ButtonPress event; just use - inev instead (so no reason to copy it later). - Remove `out' label. Rename label `ret' to `done'; add various - `goto done' to clarify code flow in deeply nested blocks. - (x_dispatch_event): Simplify as handle_one_xevent now calls - kbd_buffer_store_event itself. - (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit - arg. Call handle_one_xevent with new arglist. Store event from - x_session_check_input in fifo. - [USE_GTK]: Setup current_hold_quit. - Decrement handling_signal before unblocking input. - (x_initialize) [USE_GTK]: Initialize current_count. - - * xterm.h (x_session_check_input): Fix prototype. - -2004-02-26 YAMAMOTO Mitsuharu - - * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'. - - * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in - macgui.h). - - * emacs.c (main) [HAVE_CARBON]: Call init_xfns. - - * macgui.h [MAC_OSX]: Include Carbon/Carbon.h. - (mktime, DEBUG, Z, free, malloc, realloc, max, min) - (init_process) [MAC_OSX]: Avoid conflicts with Carbon/Carbon.h. - [!MAC_OSX]: Include QDOffscreen.h and Controls.h. - (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h. - (Bitmap): Remove typedef. - (Pixmap): Change int to GWorldPtr. - - * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h). - - * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h). - (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG): - New #define to extract 16-bit depth color components from unsigned - long representation. - (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel - colors used for masks. - (struct mac_display_info): Add color_p. Remove n_cbits. - - * macfns.c: Include sys/types.h and sys/stat.h. - [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h). - Include QuickTime/QuickTime.h. - (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap) - (XSetForeground, mac_draw_line_to_pixmap): Add externs for - functions defined in macterm.c. - (XImagePtr): New typedef. Corresponds to XImage * in xfns.c. - (ZPixmap): New #define for compatibility with xfns.c. - (XGetImage, XPutPixel, XGetPixel, XDestroyImage) - (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image) - (find_image_fsspec, image_load_qt_1, image_load_quicktime): - New functions. - (four_corners_best, x_create_x_image_and_pixmap) - (x_destroy_x_image, unwind_create_frame, x_disable_image) - (x_edge_detection, init_color_table, colors_in_color_table) - (lookup_rgb_color, lookup_pixel_color, postprocess_image) - (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image) - (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors) - (x_from_xcolors, x_detect_edges): New declarations (from xfns.c). - (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned - long mixup. - (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc. - (x_decode_color): Don't use n_cbits (in struct mac_display_info). - (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c. - (x_set_cursor_type, Fxw_color_values, valid_image_p) - (image_value_type, parse_image_spec, image_ascent, x_clear_image) - (x_alloc_image_color, clear_image_cache, lookup_image) - (x_find_image_file, xbm_read_bitmap_file_data) - (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan) - (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number) - (enum pbm_keyword_index, pbm_format, enum png_keyword_index) - (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format) - (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p) - (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c. - (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with - #if 0. - (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with - #if 0. Free white_relief.gc and black_relief.gc. - (unwind_create_frame, x_emboss, x_laplace, x_edge_detection): - New functions (from xfns.c). - (Fx_create_frame): Record unwind_create_frame. - (Fxw_display_color_p): Use dpyinfo->color_p. - (Fx_display_grayscale_p, Fx_display_planes): Don't use - dpyinfo->n_cbits. - (Fx_display_color_cells): Use dpyinfo->n_planes; - (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection) - (Qheuristic, cross_disabled_images, emboss_matrix) - (laplace_matrix): New variables (from xfns.c). - (Fimage_size, Fimage_mask_p, four_corners_best, image_background) - (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image) - (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges) - (image_background_transparent): New function (from xfns.c). - Use PIX_MASK_DRAW/PIX_MASK_RETAIN. - (image_load_quicktime): Add declaration. - [MAC_OSX] (image_load_quartz2d): Likewise. - [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef. - [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable. - [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs. - (xbm_load_image_from_file, x_laplace_read_row) - (x_laplace_write_row, pbm_read_file): Remove functions. - [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p) - (xpm_load): Sync with xfns.c (although XPM is not supported yet). - (colors_in_color_table): Sync with xfns.c (although not used). - (lookup_rgb_color): Don't lookup color table. Just do gamma - correction. - (COLOR_INTENSITY): New #define (from xfns.c). - (x_disable_image): New function (from xfns.c). - Use PIX_MASK_DRAW/PIX_MASK_RETAIN. - (x_build_heuristic_mask): Sync with xfns.c. - Use PIX_MASK_DRAW/PIX_MASK_RETAIN. - (HAVE_PBM): Remove #ifdef. - (pbm_load): Sync with xfns.c. Set img->width and img->height - before IMAGE_BACKGROUND. - (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG. - (Qpng, enum png_keyword_index, png_format, png_type, png_image_p): - Don't enclose with #if HAVE_PNG. - [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a - symbol _CGImageCreateWithPNGDataProvider is defined. - Otherwise use image_load_quicktime. - [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime. - [HAVE_PNG] (png_load): Sync with xfns.c. - Use PIX_MASK_DRAW/PIX_MASK_RETAIN. - (jpeg_image_p, jpeg_load): Don't enclose declarations with #if - HAVE_JPEG. - (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type) - (jpeg_image_p): Don't enclose with #if HAVE_JPEG. - [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d. - [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime. - [HAVE_JPEG] (jpeg_load): Sync with xfns.c. - (tiff_image_p, tiff_load): Don't enclose declarations with #if - HAVE_TIFF. - (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type) - (tiff_image_p): Don't enclose with #if HAVE_TIFF. - [!HAVE_TIFF] (tiff_load): Use image_load_quicktime. - [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler): - New functions (from xfns.c). - [HAVE_TIFF] (tiff_load): Sync with xfns.c. - (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF. - (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p): - Don't enclose with #if HAVE_GIF. - [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is - animated gif. Otherwise use image_load_quicktime. - [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as - gif_DrawText to avoid conflict with QuickdrawText.h. - [HAVE_GIF] (gif_load): Sync with xfns.c. - (enum gs_keyword_index, gs_format, gs_image_p, gs_load) - [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although - Ghostscript is not supported yet). - (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic, - QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL - cross_disabled_images (from xfns.c). Remove #if 0 for supported - image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and - HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p. - (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and - HAVE_PNG. Call EnterMovies to support animated gifs. - Call init_image_func_pointer to bind a symbol - _CGImageCreateWithPNGDataProvider if it is defined. - - * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h). - (x_draw_bar_cursor): Sync declaration with xterm.c. - (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area) - (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen - graphics). - (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc. - (mac_draw_line_to_pixmap, XCreatePixmap) - (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap) - (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap): - New functions. - (mac_draw_bitmap) [TARGET_API_MAC_CARBON]: - Use GetPortBitMapForCopyBits instead of the cast to Bitmap *. - Cast bits to char *. - (reflect_byte): New function (from w32fns.c). - (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits - due to byte alignment. - (mac_scroll_area) [TARGET_API_MAC_CARBON]: - Use GetPortBitMapForCopyBits instead of the cast to Bitmap *. - (XSetForeground): Remove static (now used in macfns.c). - (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c). - (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c. - (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect) - (x_draw_glyph_string_box, x_draw_image_foreground) - (x_draw_image_foreground_1, x_draw_image_glyph_string) - (x_draw_stretch_glyph_string, x_draw_glyph_string) - (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor): - Sync with xterm.c. - (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter - than the xterm.c version when a strictly horizontal or vertical - line is drawn. - (XTset_terminal_window): Add static. - (x_make_frame_visible): Add UNBLOCK_INPUT. - (x_free_frame_resources): New funcion (from xterm.c). - (XTread_socket): Call handle_tool_bar_click if mouse up/down event - occurs in tool bar area. - (mac_initialize_display_info): Remove dpyinfo->n_cbits. - Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth. - Initialize image cache. - (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match): - Enclose unused functions with #if 0. - (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables. - (decode_mac_font_name): New function to apply code conversions - from a mac font name to an XLFD font name according to its script code. - (x_font_name_to_mac_font_name): Apply code conversion from an XLFD - font name to a mac font name according to REGISTRY and ENCODING fields. - (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font - whose name starts with `.'. - (init_font_name_table): Use decode_mac_font_name. Add both - jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code - of a font is smJapanese. - (mac_do_list_fonts): New function to list fonts that match a given - pattern. - (x_list_fonts, XLoadQueryFont): Use it. - (XLoadQueryFont): Set rbearing field for each variable width - character to avoid needless redraw. - (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr. - -2004-02-26 Kim F. Storm - - * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512 - as read_socket_hook handler on X aborts if buffer is too small - and W32 handler doesn't always check buffer limit. - - * xdisp.c (handle_single_display_prop): Handle left-fringe and - right-fringe similar to a display margin image. Specifically, - the characters having the fringe prop are no longer shown, and - we use IT_IMAGE/next_element_from_image with image_id = -1 to - do this. Set fringe bitmap face_id in it->face_id. - (produce_image_glyph): Handle image_id < 0 as "no image" case, but - still realize it->face (i.e. the fringe bitmap face). - -2004-02-25 Miles Bader - - * xdisp.c (check_it): Check string/string_pos consistency. - (init_iterator): Initialize string-related fields properly. - -2004-02-11 Miles Bader - - * xdisp.c (produce_image_glyph): Force negative descents to zero. - -2004-02-10 Miles Bader - - * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked); - BLOCK_INPUT can be nested, so it doesn't make much sense. - -2004-02-24 Michael Mauger - - * w32fns.c (slurp_file, xbm_scan, xbm_load_image) - (xbm_read_bitmap_data): Use unsigned char for image data. - -2004-02-23 Luc Teirlinck - - * abbrev.c (Finsert_abbrev_table_description): Doc fix. - -2004-02-22 Jason Rumney - - * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps - correctly over other bitmaps. - -2004-02-21 Eli Zaretskii - - * emacs.c (USAGE1): Split into two halves. - (USAGE2): Second half of the old USAGE1. - (USAGE3): Rename from USAGE2. - (USAGE4): Rename from USAGE3. - -2004-02-21 Juri Linkov - - * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2. - Fix --multibyte. Move --help, --version to USAGE2. Add alias - --file. Fix -f, -l. Sort options. Untabify. - (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify. - -2004-02-19 Luc Teirlinck - - * category.c (Fdefine_category, Fcategory_docstring) - (Fget_unused_category, Fset_category_table) - (Fcategory_set_mnemonics): Doc fixes. - -2004-02-20 Kim F. Storm - - * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes. - The following changes are relative to the 2004-01-21 revision. - (NREAD_INPUT_EVENTS): Define as max number of input events to read - in one call to read_socket_hook. Value is 8. - (read_avail_input): Separate and rework handling of read_socket_hook - and non-read_socket_hook cases. Use smaller input_event buffer - in read_socket_hook case, and repeat if full buffer is read. - Use new local variable 'discard' to skip input after C-g. - In non-read_socket_hook case, just use a single input_event, and - call kbd_buffer_store_event on the fly for each character. - -2004-02-19 Stefan Monnier - - * lisp.h (union Lisp_Object): Give a more precise type for `type'. - Remove unused `gu' alternative. - -2004-02-19 Andreas Schwab - - * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid - warning. - -2004-02-18 Kim F. Storm - - * xdisp.c (get_window_cursor_type, display_and_set_cursor): - Fix last change. - -2004-02-17 Kim F. Storm - - * xdisp.c (fast_find_position): Fix return value of new version; - it was inverted compared to the 21.1 version. - (get_window_cursor_type): Don't look at glyph if NULL. - (display_and_set_cursor): Set glyph to NULL if cursor in fringe. - - * keyboard.c: Rework previous change; it didn't consider that the - buf array was allocated on the stack. - (prev_read): Remove variable. - (read_avail_input_buf): New static event buffer array. - (in_read_avail_input): New static variable to handle re-entrancy. - (read_avail_input): Change buf to pinter to read_avail_input_buf. - Use in_read_avail_input to handle re-entrance; when re-entered, - fully initialize and use tmp_buf array instead of read_avail_input_buf. - Do not initialize read_avail_input_buf in full here; instead assume it - is always cleared on entry. To ensure that, we clear (just) the - entries that were used before we return. - (init_keyboard): Initialize read_avail_input_buf here. - -2004-02-16 Jesper Harder - - * cmds.c (Fend_of_line): Doc fix. - -2004-02-16 Dmitry Antipov (tiny change) - - * keyboard.c (prev_read): New static variable. - (read_avail_input): Use it to zero out only those slots in buf[] - that were used last time we were called. - -2004-02-16 Eli Zaretskii - - * Makefile.in (obj): Move fringe.o from here... - (XOBJ, MAC_OBJ): ...to here. - -2004-02-16 Stephen Eglen - - * fringe.c (init_fringe_bitmap): Define j in MAC_OS code. - -2004-02-15 Stefan Monnier - - * data.c (Fbyteorder): - * fringe.c (Fdefine_fringe_bitmap): - * xdisp.c (handle_single_display_prop): - * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup. - -2004-02-16 Jason Rumney - - * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps. - -2004-02-15 Steven Tamm - - * macterm.c (Vmac_emulate_three_button_mouse): New variable for - controlling emulation of a three button mouse with option and - command keys. - (Qreverse, mac_get_enumlated_btn): Handle the emulation. - (mac_event_to_emacs_modifiers, XTread_socket): Ditto. - -2004-02-15 Kim F. Storm - - * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries. - - * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]: - Perform byte-swapping. - -2004-02-14 Kim F. Storm - - * dispextern.h (struct draw_fringe_bitmap_params): Change member - bits from char to short to facilitate wider bitmaps. - (struct redisplay_interface): Fix prototype of define_fringe_bitmap - member. - - * fringe.c (struct fringe_bitmap): Change member bits from char to - short to facilitate 16 bits wide bitmaps. Modify all standard - bitmaps accordingly. - (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros. - (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof. - (draw_fringe_bitmap): Ditto. - (init_fringe_bitmap) [MAC_OS]: Don't bitswap. - (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to - handle up to 16 bits wide bitmaps. - (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps. - (Ffringe_bitmaps_at_pos): Add missing arg declarations. - - * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly. - (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer - need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap. - - * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide, - so it is no longer necessary to expand them here. - - * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits). - -2004-02-12 Kim F. Storm - - * window.c (Fwindow_fringes): Doc fix. - -2004-02-10 Jan Dj,Ad(Brv - - * xselect.c (x_get_foreign_selection): Add new optional parameter - time_stamp. - (Fx_get_selection_internal): Ditto, pass time_stamp to - x_get_foreign_selection. - - * data.c (Fbyteorder): New function. - -2004-02-09 Jan Dj,Ad(Brv - - * atimer.c: Move include stdio.h to same place as in other files. - - * region-cache.c: Ditto. - - * sysdep.c: Ditto. - - * xfaces.c: Ditto. - -2004-02-09 Sam Steingold - - * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch. - -2004-02-09 Kim F. Storm - - * fringe.c: New file. Move original fringe related declarations - and code from dispextern.h and xdisp.c here. - Rework code to support user defined fringe bitmaps, redefining - standard bitmaps, ability to overlay user defined bitmap with - overlay arrow bitmap, and add faces to bitmaps. - (Voverflow_newline_into_fringe): Declare here. - (enum fringe_bitmap_align): New enum. - (..._bits): All bitmaps are now defined without bitswapping; that - is now done in init_fringe_once (if necessary). - (standard_bitmaps): New array with specifications for the - standard fringe bitmaps. - (fringe_faces): New array. - (valid_fringe_bitmap_id_p): New function. - (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap. - (draw_fringe_bitmap): New function which draws fringe bitmap, - possibly overlaying bitmap with cursor in right fringe or the - overlay arrow in the left fringe. - (update_window_fringes): Do not handle overlay arrow here. - Compare and copy fringe bitmap faces. - (init_fringe_bitmap): New function. - (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to - define and destroy user defined fringe bitmaps. - (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap. - (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps. - (syms_of_fringe): New function. Defsubr new DEFUNs. - DEFVAR_LISP Voverflow_newline_into_fringe. - (init_fringe_once, init_fringe): New functions. - (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions. - - * Makefile.in (obj): Add fringe.o. - (fringe.o): New dependencies. - - * dispextern.h (FRINGE_ID_BITS): New definition for number of - bits allocated to hold a fringe number. Increase number of bits - from 4 to 8 to allow user defined fringe bitmaps. - (struct glyph_row, struct it): New members left_user_fringe_bitmap, - left_user_fringe_face_id, right_user_fringe_bitmap, - right_user_fringe_face_id. - (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps): - Move to new file fringe.c. - (MAX_FRINGE_BITMAPS): Define here. - (struct draw_fringe_bitmap_params): New members bits, cursor_p, - and overlay_p. Change member which to int. - (struct redisplay_interface): New members define_fringe_bitmap - and destroy_fringe_bitmap. - (valid_fringe_bitmap_id_p): Add prototype. - (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes. - - * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay - arrows. - (update_frame): Do flush_display if force_flush_display_p to - ensure display (specifically fringes) are updated in a timely - manner when resizing the frame by dragging the mouse. - (update_window_line): Update row if overlay arrow changed. - (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces - or overlay arrow changed. - - * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once, - syms_of_fringe, and init_fringe. - - * frame.h (struct frame): New member force_flush_display_p. - - * lisp.h (syms_of_fringe, init_fringe, init_fringe_once): - Add prototypes. - - * macterm.c (mac_draw_bitmap): Add overlay_p arg. - (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps; - thanks to YAMAMOTO Mitsuharu for advice on how to do this. - Use cursor color for displaying cursor in fringe. - (x_redisplay_interface): Add null handlers for - define_fringe_bitmap and destroy_fringe_bitmap functions. - - * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from - xterm.c to handle overlayed fringe bitmaps and to use cursor color - for displaying cursor in fringe. - (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32 - specific functions to define and destroy fringe bitmaps in fringe_bmp. - (w32_redisplay_interface): Add them to redisplay_interface. - (w32_term_init): Call w32_init_fringe instead of explicitly - defining fringe bitmaps in fringe_bmp array. - (x_delete_display): Call w32_reset_fringes instead of explicitly - destroying fringe bitmaps in fringe_bmp array. - - * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp) - (left_bits, right_bits, up_arrow_bits, down_arrow_bits) - (continued_bits, continuation_bits, ov_bits, first_line_bits) - (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits) - (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits) - (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps) - (draw_window_fringes, compute_fringe_widths, update_window_fringes): - Move fringe handling vars and code to new file fringe.c. - (handle_display_prop): Handle left-fringe and right-fringe - display properties; store user fringe bitmaps in iterator. - (move_it_in_display_line_to): Handle cursor in fringe at eob. - (clear_garbaged_frames): Set force_flush_display_p if resized. - (redisplay_window): Redraw fringe bitmaps if not just_this_one_p. - (display_line): Handle cursor in fringe at eob. - (display_line): Set row user fringe bitmaps from iterator. - - * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps. - Use cursor color for displaying cursor in fringe. - (x_redisplay_interface): Add null handlers for - define_fringe_bitmap and destroy_fringe_bitmap functions. - -2004-02-07 Jan Dj,Ad(Brv - - * macfns.c (Fx_change_window_property): Make doc string and - parameters same as for X version. - - * w32fns.c (Fx_change_window_property): Ditto. - -2004-02-07 Kim F. Storm - - * xdisp.c (hscroll_window_tree): Position cursor near to right - margin in hscrolled window when jumping to end of line (rather - than centering cursor). - - * process.c (wait_reading_process_input): Don't do adaptive read - buffering if waiting for a specific process. - -2004-02-05 Luc Teirlinck - - * minibuf.c (Fminibufferp, Fread_from_minibuffer) - (Fread_minibuffer, Feval_minibuffer) - (Fread_string, Fread_no_blanks_input) - (Fcompleting_read): Doc fixes. - (syms_of_minibuf): Doc fixes for minibuffer-completion-table and - completion-regexp-list. Define Qcase_fold_search and staticpro it. - (read_minibuf): Fix initial comment. - (Ftry_completion, Fall_completions, Ftest_completion): Bind - case-fold-search to the value of completion-ignore-case when - checking completion-regexp-list. - (Fdisplay_completion_list): Make it handle arguments that are - symbols. Doc fix. - -2004-02-05 Jan Dj,Ad(Brv - - * xterm.h: Add declaration of free_frame_menubar. - - * xfns.c (x_create_bitmap_mask): Removed unused variable depth. - (x_set_menu_bar_lines): Added ! defined USE_GTK for olines. - (Fx_change_window_property): Add declaration of parameters type and - format. Remove unused variable cons. - - * xselect.c: Include stdio.h. - -2004-02-05 Kenichi Handa - - * fns.c (Fset_char_table_range): Fix previous change. - - * buffer.c (Fset_buffer_multibyte): Fix docstring. - -2004-02-04 Luc Teirlinck - - * editfns.c (Fchar_after, Fchar_before): Doc fixes. - -2004-02-04 Stefan Monnier - - * keymap.c (Vmouse_events): Rename from Vmenu_events. - (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it. - -2004-02-04 Kenichi Handa - - * fns.c (Fset_char_table_range): Handle charsets ascii, - eight-bit-control, and eight-bit-graphic correctly. - -2004-02-03 Jason Rumney - - * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe. - - * w32fns.c (x_to_w32_font): Likewise. - -2004-02-03 Jan Dj,Ad(Brv - - * xterm.h: Add x_handle_dnd_message, x_check_property_data, - x_fill_property_data, x_property_data_to_lisp and check_x_display_info. - - * xterm.c (handle_one_xevent): Call x_handle_dnd_message for - ClientMessages. - - * xselect.c: Include termhooks.h and X11/Xproto.h. - (x_check_property_data, x_fill_property_data) - (x_property_data_to_lisp, mouse_position_for_drop) - (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support. - (Fx_send_client_event): Move here from xfns.c. - (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message. - - * xfns.c (x-send-client-message): Move to xselect.c. - (Fx_change_window_property): Add optional arguments TYPE, FORMAT and - OUTER_P. - (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P, - VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp - if vector_ret_p is true. - (syms_of_xfns): Sx_send_client_message moved to xselect.c. - -2004-02-02 Eli Zaretskii - - * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the - basename of FILE relative to it, not FILE itself. - -2004-02-02 Kenichi Handa - - * coding.c (coding_restore_composition): Check invalid - composition data more rigidly. - -2004-01-30 Luc Teirlinck - - * fileio.c (Fread_file_name_internal): Correctly handle the case - where insert-default-directory is nil. - (Fread_file_name): Always return an empty string if the user exits - with an empty minibuffer. Adapt the docstring accordingly. - (syms_of_fileio): Adapt the docstring of insert-default-directory - to the change in Fread_file_name. - -2004-01-29 Eli Zaretskii - - * alloca.c [!alloca]: Fix the prototype for xfree. - -2004-01-29 Kenichi Handa - - * fns.c (string_char_to_byte): Optimize for ASCII only string. - (string_byte_to_char): Likewise. - -2004-01-28 Peter Runestig - - * makefile.w32-in, w32fns.c: Add `default-printer-name' function. - -2004-01-27 Steven Tamm - - * unexmacosx.c (unexec_copy): Do not copy more than was - requested to prevent overwriting during unexec. - -2004-01-27 Jan Dj,Ad(Brv - - * process.c (sigchld_handler): Add comment about not calling malloc. - - * process.h: Add extern to synch_process_termsig. - -2004-01-27 Steven Tamm - - * macterm.c (make_mac_frame, make_mac_terminal_frame): - Move setting of scroll bars from make_mac_frame to - make_mac_terminal_frame to prevent clobbering of scroll-bar-mode. - -2004-01-26 Richard M. Stallman - - * search.c (Freplace_match): Handle nonexistent - back-references properly. - -2004-01-03 Richard M. Stallman - - * window.c (decode_any_window): New function. - (Fwindow_height, Fwindow_width, Fwindow_edges) - (Fwindow_pixel_edges, Fwindow_inside_edges) - (Fwindow_inside_pixel_edges): Use decode_any_window. - -2004-01-27 Jan Dj,Ad(Brv - - * process.h: synch_process_termsig new variable. - - * callproc.c: Define synch_process_termsig. - (Fcall_process): Initiate synch_process_termsig to zero and - check if non-zero and get signal name after subprocess has ended. - - * process.c (sigchld_handler): Set synch_process_termsig - if terminated by a signal. synch_process_death setting removed. - - * sysdep.c (mkdir, rmdir): Also check synch_process_termsig. - -2004-01-26 Andreas Schwab - - * print.c (print_preprocess): Declare size as EMACS_INT to not - lose bits. - (print_object): Likewise. - * alloc.c (Fpurecopy): Likewise. - -2004-01-25 Luc Teirlinck - - * window.c (Fwindow_minibuffer_p): Doc fix. - -2004-01-24 Jonathan Yavner - - * editfns.c (Fformat): Make both passes accept the same set of flags. - -2004-01-23 Kenichi Handa - - * fns.c (Fmd5): If OBJECT is a buffer different from the current - one, set buffer to OBJECT temporarily. - -2004-01-21 Stefan Monnier - - * keyboard.c (kbd_buffer_gcpro): Remove. - (kbd_buffer_store_event, clear_event, Fdiscard_input) - (stuff_buffered_input, init_keyboard, syms_of_keyboard): - Don't initialize and/or maintain the variable any more. It was made - redundant by my commit of 2003-06-15. - - * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error. - -2004-01-21 Jan Dj,Ad(Brv - - * lisp.h: Add undef DECL_ALIGN. - -2004-01-21 Stefan Monnier - - * process.c (wait_reading_process_input) [SYNC_INPUT]: - Check interrupt_input_pending explicitly. - - * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well. - - * keyboard.c (handle_async_input): New fun, - extracted from input_available_signal. - (input_available_signal, reinvoke_input_signal): Use it. - -2004-01-20 Stefan Monnier - - * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN. - - * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value - manipulation macros for when tags are in the lower bits. - (struct Lisp_Free) [USE_LSB_TAG]: Add padding. - (DECL_ALIGN): New macro. - (DEFUN): Use it. - - * lisp.h [ENABLE_CHECKING]: Don't force union type. - - * s/darwin.h (__attribute__): Remove outdated workaround. - - * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram. - - * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]: - Don't check range of malloc address. - (pure_alloc) [USE_LSB_TAG]: Enforce alignment. - - * process.c (wait_reading_process_input): Lisp_Object/int mixup. - - * dired.c (Ffile_attributes): Lisp_Object/int mixup. - -2004-01-19 Kenichi Handa - - * fontset.c (fontset_font_pattern): Fix previous change. - -2004-01-16 Miles Bader - - * xdisp.c (Voverflow_newline_into_fringe) - (move_it_in_display_line_to, redisplay_internal) - (update_window_fringes, redisplay_window, display_line, window): - Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so - that it compiles without a window-system. - * dispnew.c (direct_output_for_insert, update_window): Likewise. - -2004-01-16 Kim F. Storm - - * buffer.h (struct buffer): New member indicate_buffer_boundaries. - - * buffer.c (init_buffer_once): Set buffer_defaults and - buffer_local_flags for indicate_buffer_boundaries. - (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro - default- variable for it. - - * dispextern.h (struct glyph_row): New members left_fringe_bitmap, - right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling. - New members exact_window_width_line_p and cursor_in_fringe_p for - overflowing newlines into right fringe. - New members indicate_bob_p, indicate_top_line_p, indicate_eob_p, - and indicate_bottom_line_p for buffer boundaries and scrolling. - (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP, - FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP, - HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP, - and HOLLOW_SQUARE_BITMAP. - (draw_fringe_bitmap, draw_window_fringes, update_window_fringes): - Add prototypes. - - * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps - instead of related indicator fields. - Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators. - (direct_output_for_insert): Handle exact width lines like - contined lines. Call update_window_fringes. - (update_window): Call update_window_fringes. - (scrolling_window): Don't skip desired rows with changed bitmaps. - Check if fringe bitmaps changes when assigning scrolled rows. - - * xdisp.c (Voverflow_newline_into_fringe): New variable. - (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro. - (move_it_in_display_line_to): Overflow newline into fringe for - rows that are exactly as wide as the window. - (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits) - (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits) - (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps. - (fringe_bitmaps): Add new bitmaps. - (draw_fringe_bitmap): Make extern. Remove WHICH arg. - Select proper bitmap for cursor in fringe when appropriate. - Handle alignment of bitmap to top or bottom of row. - (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now - done by update_window_fringes. - (update_window_fringes, draw_window_fringes): New functions. - (redisplay_internal): Call update_window_fringes in case only - cursor row is updated. - (redisplay_window): Call update_window_fringes. - Explicitly call draw_window_fringes if redisplay was done using - the current matrix or the overlay arrow is in the window. - (try_window_reusing_current_matrix): Mark scrolled rows for - fringe update (to update buffer-boundaries / scrolling icons). - (find_last_unchanged_at_beg_row): Handle exact width lines line - continued lines. - (display_line): Overflow newline into fringe for rows that are - exactly as wide as the window. Don't append space for newline - in this case. - (notice_overwritten_cursor): Explicitly clear cursor bitmap - in fringe as if it had been overwritten. - (erase_phys_cursor): Erase cursor bitmap in fringe. - (syms_of_xdisp): Mark show-trailing-whitespace and - void-text-area-pointer as user options. - DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default. - - * xterm.c (x_update_window_end): Call draw_window_fringes. - (x_after_update_window_line): Just set redraw_fringe_bitmaps_p - in row instead of actually drawing fringe bitmaps. - (x_draw_fringe_bitmap): Handle bottom aligned bitmaps. - (x_draw_window_cursor): Draw cursor in fringe. - - * w32term.c (x_update_window_end): Call draw_window_fringes. - (x_after_update_window_line): Just set redraw_fringe_bitmaps_p - in row instead of actually drawing fringe bitmaps. - (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps. - (w32_draw_window_cursor): Draw cursor in fringe. - - * macterm.c (x_update_window_end): Call draw_window_fringes. - (x_after_update_window_line): Just set redraw_fringe_bitmaps_p - in row instead of actually drawing fringe bitmaps. - (x_draw_fringe_bitmap): Handle bottom aligned bitmaps. - (mac_draw_window_cursor): Draw cursor in fringe. - -2004-01-16 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Don't handle characters that are part - of an old style (XLookupString) compose sequence. - -2004-01-15 Kenichi Handa - - * search.c (Freplace_match): Use make_multibyte_string or - make_unibyte_string according to the buffer multibyteness. - -2004-01-14 Stefan Monnier - - * alloc.c (struct interval_block, struct string_block) - (struct symbol_block, struct marker_block, live_string_p) - (live_cons_p, live_symbol_p, live_float_p, live_misc_p): - Better preserve alignment for objects in blocks. - (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding. - - * lread.c (defvar_per_buffer): Remove dead declaration. - - * macterm.c (do_check_ram_size): Don't hardcode the lisp address - space size. - -2004-01-12 Jan Dj,Ad(Brv - - * xmenu.c (popup_get_selection): Check new parameter down_on_keypress - if a key press should pop down. Only pop down if a key is pressed - outside the menu/dialog. - (create_and_show_popup_menu): Pass 0 for down_on_keypress to - popup_get_selection. - (create_and_show_dialog): Pass 1 for down_on_keypress to - popup_get_selection. - -2004-01-11 Jan Dj,Ad(Brv - - * alloc.c (allocate_vectorlike): Surround calls to mallopt with - BLOCK/UNBLOCK_INPUT. - -2004-01-08 Jan Dj,Ad(Brv - - * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are - specified. - -2004-01-08 Kenichi Handa - - * editfns.c (Fformat): Fix '&' to '&&'. - -2004-01-08 Andreas Schwab - - * print.c (print_preprocess) : Only mask - size if PSEUDOVECTOR_FLAG is set. - -2004-01-07 Kenichi Handa - - * charset.c (Fdeclare_equiv_charset): Fix docstring. - - * fontset.c (fontset_ref_via_base): Fix previous change. - -2004-01-07 Kim F. Storm - - * process.c (read_process_output): Only activate adaptive - buffering if we read less than 256 bytes at a time. - -2004-01-06 Kim F. Storm - - * dispnew.c (buffer_posn_from_coords): Return both buffer/string - object and image object. Return glyph width and height. - (mode_line_string, marginal_area_string): Ditto. - - * dispextern.h (buffer_posn_from_coords, mode_line_string) - (marginal_area_string): Fix prototypes. - - * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from - POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed. - (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros. - - * keyboard.c (make_lispy_position): Use modified mode_line_string, - buffer_posn_from_coords, and marginal_area_string functions to - include both string object and image object in the lispy position. - Also add actual glyph width and height to position. - (read_key_sequence): Use real buffer position from mouse - event to find keymap property even when click is in marginal area. - - * xdisp.c (note_mode_line_or_margin_highlight): Use modified - mode_line_string and marginal_area_string functions to handle - both string object and image object properties. - -2004-01-06 Andreas Schwab - - * syntax.c (skip_chars): Treat '-' at end of string as ordinary - character. - -2004-01-02 Andreas Schwab - - * macterm.c (emacs_options, x_initialized, same_x_server): - Remove unused (and duplicated) definitions. - -2004-01-02 Kim F. Storm - - * process.h (struct Lisp_Process): New members for adaptive read - buffering: adaptive_read_buffering, read_output_delay, and - read_output_skip. - - * process.c (ADAPTIVE_READ_BUFFERING): New conditional. - (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX) - (READ_OUTPUT_DELAY_MAX_MAX): New constants. - (process_output_delay_count, process_output_skip): New vars. - (Vprocess_adaptive_read_buffering): New variable. - (make_process): Initialize adaptive read buffering members. - (Fstart_process): Set adaptive_read_buffering member. - (deactivate_process): Cleanup adaptive read buffering. - (wait_reading_process_input): Temporarily omit delayed - subprocesses from the set of file descriptors to read from; - adjust the select timeout if we skipped any subprocesses. - (read_process_output): Increase adaptive read buffering delay if - we read less than a full buffer; reduce delay when we read a - full buffer. - (send_process): Simplify using local Lisp_Process var. - Reset adaptive read buffering delay after write. - (init_process): Initialize process_output_delay_count and - process_output_skip. - (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering. - -2004-01-01 Jason Rumney - - * w32term.c (w32_text_out): Use s->font, for consistency with callers. - -2003-12-30 Luc Teirlinck - - * print.c (Ferror_message_string): Add hyperlink in the docstring - to the definition of `signal' in the Elisp manual. - * eval.c (Fsignal): Ditto. - -2003-12-29 James Clark - - * fns.c (internal_equal): Return t for two NaN arguments. - -2003-12-29 Richard M. Stallman - - * data.c (store_symval_forwarding): Handle setting - default-fill-column, etc., by changing the value in - buffers that use the default. - - * minibuf.c (Fset_minibuffer_window): Doc fix. - - * fileio.c (choose_write_coding_system): Ignore auto_saving - if using the visited file for auto saves. - (Fwrite_region): Don't update SAVE_MODIFF - if auto-saving in visited file. - -2003-12-29 Kenichi Handa - - * dispextern.h (face_font_available_p): Extern it. - - * fontset.c (Voverriding_fontspec_alist): New variable. - (lookup_overriding_fontspec): New function. - (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary. - (fontset_font_pattern): Likewise. - (regulalize_fontname): New function. - (Fset_fontset_font): Call regulalize_fontname. - (Fset_overriding_fontspec_internal): New function. - (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist. - Defsubr Sset_overriding_fontspec_internal. - - * xfaces.c (face_font_available_p): New function. - -2003-12-28 Richard M. Stallman - - * buffer.c (Fother_buffer): Don't crash if BUF is nil - or if its name is nil. - - * buffer.c (Fkill_buffer): Don't delete auto-save file - if it's the same as the visited file. - -2003-12-28 Luc Teirlinck - - * coding.c (Fcheck_coding_system): Doc fix. - -2003-12-28 Kim F. Storm - - * Makefile.in (eval.o): Depend on dispextern.h. - - * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for - image glyph using image's ascent. - (mode_line_string): Return image glyph as object clicked on. - Adjust y0 for image glyph using image's ascent. - - * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines. - (struct glyph): New members, ascent and descent. Used to save - this glyph's ascent and descent, instead of having. - (struct glyph): Declare member face_id using FACE_ID_BITS. - (find_hot_spot): Add prototype. - - * keyboard.c (Qimage): Remove extern (now in lisp.h). - (QCmap): Declare extern. - (make_lispy_position): When position is inside image hot-spot, - use hot-spot element's id as posn element. - - * lisp.h (IMAGEP): New macro to test for image object type. - (Qimage): Declare extern. - - * macfns.c (Qimage): Remove extern (now in lisp.h). - (valid_image_p, parse_image_spec): Use IMAGEP macro. - - * macterm.c (Qface, Qmouse_face): Remove unused externs. - - * w32fns.c (Qimage): Remove extern (now in lisp.h). - (valid_image_p, parse_image_spec): Use IMAGEP macro. - - * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs. - - * w32term.c (Qface, Qmouse_face): Remove unused externs. - - * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for - pointer types. - (Qrelative_width, Qalign_to): Remove unused variables. - (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void. - (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for image - maps. - (x_y_to_hpos_vpos): Return glyph relative coordinates through new - dx and dy args. Remove buffer_only_p arg (always 0). Simplify - code accordingly. - (get_glyph_string_clip_rect): Draw cursor using glyph's rather - than row's ascent and height, to get sensible height on tall rows. - (build_desired_tool_bar_string): Remove Qimage extern. - (get_tool_bar_item): Fix call to x_y_to_hpos_vpos. - (produce_image_glyph): Adjust it.ascent to minimum row ascent if - image glyph is alone on the last line. - (append_glyph, append_composite_glyph, produce_image_glyph) - (append_stretch_glyph): Set glyph's ascent and descent. - (on_hot_spot_p): New function to check if position is inside an - rectangular, circular, or polygon-shaped image hot-spot, - (find_hot_spot): New function to search for image hot-spot. - (Flookup_image_map): New defun to search for image hot-spot. - (define_frame_cursor1): New aux function to determine frame - pointer. - (note_mode_line_or_margin_highlight, note_mouse_highlight): Handle - `pointer' text property and :pointer image property to control - frame pointer shape. Detect image hot-spots for pointer and - help_echo properties. Use define_frame_cursor1. - (note_mouse_highlight): Use Vvoid_text_area_pointer. - (syms_of_xdisp): Defsubr new defun. Intern and staticpro new - variables. DEFVAR_LISP Vvoid_text_area_pointer instead of - Vshow_text_cursor_in_void. - - * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID. - - * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call. - (Qimage): Remove extern (now in lisp.h). - (valid_image_p, parse_image_spec): Use IMAGEP macro. - - * xmenu.c (show_help_event): Remove unused code. - - * xterm.c (Qface, Qmouse_face): Remove unused externs. - (x_draw_hollow_cursor): Draw cursor using glyph's rather than - row's ascent and descent, to get a sensible height on tall rows. - -2003-12-25 Luc Teirlinck - - * minibuf.c (Fcompleting_read): Undo previous change. - -2003-12-25 Lars Hansen - - * dired.c (Fdirectory_files, Fdirectory_files_and_attributes): - Arguments GCPRO'ed in call to file name handler. - -2003-12-25 Thien-Thi Nguyen - - * termcap.c (tgetst1): Scan for "%pN"; if all - N are continuous in [1,9], remove all "%pN". - -2003-12-24 Jan Dj,Ad(Brv - - * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint. - - * xfaces.c (lface_fully_specified_p): Take into account that - MAC OS always have unspecified stipple. - -2003-12-24 Thien-Thi Nguyen - - * tparam.c (tparam1): Add handling for `%pN', which - means use param N for the next substitution. - -2003-12-24 Thien-Thi Nguyen - - * xfaces.c (Fcolor_gray_p): Fix omission bug: - In case `frame' is nil, consult the selected frame. - (Fcolor_supported_p): Likewise. - -2003-12-23 Luc Teirlinck - - * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range): - Doc fixes. - - * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string - and an integer. Adapt the introductory comment accordingly. - (Fread_from_minibuffer): Delete code moved into read_minibuf. - Doc fix. - (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in - read_minibuf. - (Fcompleting_read): Delete code moved into read_minibuf. - (Ftest_completion): Make it handle obarrays and hash tables correctly. - -2003-12-03 Kenichi Handa - - * coding.c (decode_coding_iso2022): Fix for preserving UTF-8 - encoding sequence. - -2003-12-01 Kenichi Handa - - * composite.c (syms_of_composite): Don't make the compostion hash - table week. - -2003-11-30 Luc Teirlinck - - * intervals.h: Add EXFUN for Fget_char_property_and_overlay. - * textprop.c (Fget_char_property_and_overlay): New function. - (syms_of_textprop): Defsubr it. - -2003-11-29 Jan Dj,Ad(Brv - - * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM - to compile on terminal configuration. - - * fileio.c (Fread_file_name): Check use_file_dialog also before - calling Fx_file_dialog. - - * fns.c (use_file_dialog): New variable. - (syms_of_fns): DEFVAR_BOOL use-file-dialog. - -2003-11-29 Kim F. Storm - - * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern. - (syms_of_msdos): Don't intern and staticpro them. - -2003-11-27 Kim F. Storm - - * dispnew.c (buffer_posn_from_coords): Calculate and return pixel - coordinates relative to glyph at posn. If glyph is an image, - return that as object at posn. Callers changed. - (mode_line_string, marginal_area_string): Calculate and return - pixel coordinates relative to glyph. Callers changed. - - * dispextern.h (buffer_posn_from_coords, mode_line_string) - (marginal_area_string): Fix prototypes. - (window_box_left_offset, window_box_right_offset): Add prototypes. - - * frame.h (get_specified_cursor_type, get_window_cursor_type): - Remove prototypes. - - * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines. - - * keyboard.c (make_lispy_position): Add x and y coordinates - relative to the current glyph as 7th element of position. - If glyph is an image, return it in the object element. - (read_key_sequence): Skip checks for keymap property in cases - where POSN_STRING is not a string (e.g. an image). - - * xdisp.c (Vdisplay_pixels_per_inch): New variable. - (Vshow_text_cursor_in_void): New variable. - (glyph_to_pixel_coords): Don't use negative hpos. - (x_y_to_hpos_vpos): Fix for partially visible first glyph. - (append_stretch_glyph): Change ascent arg to be actual value - in pixels rather than ratio to height. Callers changed. - (calc_pixel_width_or_height): New aux function, implementing - pixel based artihmetic for glyph widths and heights. - (produce_stretch_glyph): Use calc_pixel_width_or_height for - :width, :height, :align-to, and :ascent, thus allowing these to - be specified in pixels as well as multiples of characters. - Don't produce stretch glyphs with zero width or height. - (get_specified_cursor_type): Declare static. - (get_window_cursor_type): Declare static. Add glyph arg to be - able to know when cursor is on an image; always substitute - hollow-box cursor for filled-box cursor on images, to avoid - negative images and flicker when blinking the cursor. - (display_and_set_cursor): Pass glyph to get_window_cursor_type. - (note_mode_line_or_margin_highlight): Use non-text cursor rather - than vertical scroll-bar cursor in display margins. - (note_mouse_highlight): Use non-text cursor rather than text - cursor in fringes and over images in the text area. - Use non-text cursor when mouse pointer is outside editable text, - i.e. in the void after end-of-line or end-of-buffer; this was - already done for W32, but is now standard for all systems -- - user can toggle show-text-cursor-in-void to get old behaviour. - (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and - Vdisplay_pixels_per_inch. - -2003-11-25 Andreas Schwab - - * fns.c (internal_equal) : Declare size as - EMACS_INT to not lose bits. - (Ffillarray): Don't set bits beyond the size of a bool vector. - -2003-11-25 Kim F. Storm - - * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not - define this defun on systems that cannot use stderr as lvalue. - -2003-11-24 Gerd Moellmann - - * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS) - [__FreeBSD_version >= 500042]: Define as -znocombreloc because - ld's default is incompatible with unexec. - -2003-11-23 Kim F. Storm - - * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS. - (window_loop): Handle REDISPLAY_BUFFER_WINDOWS. - (Fforce_window_update): New defun. - (syms_of_window): Defsubr it. - (Fset_window_margins, Fset_window_fringes): Doc fix. - - * print.c (Fredirect_debugging_output): New defun. - (syms_of_print): Defsubr it. - -2003-11-22 Luc Teirlinck - - * fns.c (Fset_char_table_parent): Doc fix. - -2003-11-22 Kim F. Storm - - * dispnew.c (buffer_posn_from_coords): Return actual row/column - for glyph clicked on, rather than (unused) pixel positions. - (mode_line_string, marginal_area_string): Change X and Y args to - pointers for returning actual row/column for glyph clicked on. - Simplify and optimize loops. - - * dispextern.h (mode_line_string, marginal_area_string): - Update prototypes. - - * keyboard.c (make_lispy_position): New function for generating - mouse click positions from frame and pixel coordinates. - Enhanced to return buffer position and actual row/column for - events outside the text area using updated mode_line_string and - marginal_area_string functions. - Return left-fringe and right-fringe clicks as such, rather than - clicks in text area. - (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call - pixel_to_glyph_coords, as we never use the results. - (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT, - WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code. - Eliminate unused code in WHEEL_EVENT handling. - (make_lispy_movement): Use make_lispy_position. - - * window.c (coordinates_in_window): Remove redundant tests. - Fix returned X pixel value for left-margin. - - * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new - mode_line_string and marginal_area_string parameters. - -2003-11-22 Lars Hansen - - * w32.c (struct the_group, getgrgid): Add. - * mac.c (struct my_group, getgrgid): Add. - -2003-11-21 Luc Teirlinck - - * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes. - -2003-11-21 Lars Hansen - - * dired.c (Ffile_attributes): Add parameter ID-FORMAT and - include in call to file name handler. Optionally translate numeric - UID and GID to strings. Update docstring. - (directory_files_internal): Add parameter ID-FORMAT. - (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and - include in call to file name handler and call to - directory_files_internal. Update Docstring. - (Fdirectory_files): Add dummy parameter in call to - directory_files_internal. - * lisp.h (Qinteger): Add. - (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove. - (Ffile_attributes): Add parameter. - * data.c (Qinteger): Export. - -2003-11-21 Luc Teirlinck - - * fns.c (Freverse, Fnreverse): Doc fixes. - -2003-11-19 Kim F. Storm - - * xdisp.c (init_iterator): Initialize it->start to position - before reseating (in case start position is invisible). - (init_to_row_start): Set it->start to row-start. - (redisplay_window): Accept optional_new_start if start position - is invisible (in which case IT_CHARPOS overshoots PT). - (display_line): Setup row->start from it->start (rather than - it->current which is wrong if first char on line is invisible). - When done, reseat it->start to it->current (= start of next row). - (expose_area): Fix exposure of text area when first char (e.g. TAB) - is only partially visible. - - * dispextern.h (struct it): New member start. - -2003-11-17 Stefan Monnier - - * alloc.c (make_float, Fcons): Clear the markbit at init time. - (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment - of block_index outside of the macro call. - (Fgarbage_collect): Remove null code. - - * m/amdx86-64.h: Don't redefine XPNTR. - - * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead - of VALMASK. - - * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put) - (sxhash_string, sxhash): Use INTMASK instead of VALMASK. - (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM. - - * lisp.h (VALMASK): Only define for non-union type. - (MARKBIT): Remove. - (ARRAY_MARK_FLAG): Use previous value of MARKBIT. - (XTYPE): Define unconditionally. - (XSETTYPE): Remove one more remnant. - (EQ): Define differently for the union and non-union cases. - (INTMASK): New bit mask. - (struct Lisp_Marker): Move down to prepare for upcoming patch. - (GC_EQ): Delegate to EQ. - - * coding.c (coding_restore_composition): Lisp_Object/int mixup. - -2003-11-17 Jan Dj,Ad(Brv - - * xterm.c (x_window_to_scroll_bar): Move check of display to - where window_id is compared. - -2003-11-17 Kim F. Storm - - * dispextern.h (struct it): New member first_vpos. - - * xdisp.c (start_display): Set it->first_vpos. - (try_window_id): Use first_vpos to start display in first _text_ - line if no reusable lines at start of window with header line. - -2003-11-16 Jan Dj,Ad(Brv - - * w32fns.c (XPutPixel): - * w32bdf.c (w32_init_bdf_font): - * sunfns.c (sel_read): - * process.c (Fmake_network_process): - * frame.c (store_frame_param): - * fontset.c (Fset_fontset_font): - * emacs.c (shut_down_emacs): - * ccl.c (ccl_driver): Remove period at end of error message. - - * config.in: Regenerate. - - * xfns.c (x_window_to_frame, x_any_window_to_frame) - (x_non_menubar_window_to_frame, x_menubar_window_to_frame) - (x_top_window_to_frame): Add Display* argument to xg_win_to_widget. - (x_create_bitmap_mask, xg_set_icon, create_frame_xic) - (xic_set_statusarea, x_window, gif_load): Formatting adjustments. - - * xterm.h (struct x_display_info): New field xg_cursor for GTK. - - * xterm.c: Add Display * to x_window_to_scroll_bar declaration. - (XTmouse_position, handle_one_xevent): Pass Display* to - x_window_to_scroll_bar. - (x_window_to_scroll_bar): Take a Display* argument. - Check that display for frame is equal to Display* argument. - (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from - x_display_info_for_display instead. Use Display in xev instead - of GDK_DISPLAY. - (x_dispatch_event): Call x_display_info_for_display. - (XTread_socket): Move GTK part out of loop. current_dpyinfo removed. - (x_connection_closed): Call xg_display_close for GTK. - (x_term_init): Call xg_display_open for additional displays. - Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor - for GTK. - - * xmenu.c (single_menu_item, mouse_position_for_popup) - (x_activate_menubar): Formatting adjustments. - - * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting - adjustments. - - * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open) - (xg_display_close, xg_create_default_cursor) - (xg_get_gdk_pixmap_and_mask): New functions for multiple display - handling. - (xg_left_ptr_cursor): Remove. - (xg_set_cursor): Change cursor to GdkCursor*. Do not create - cursor here. - (xg_win_to_widget): Take Display* argument, call - gdk_xid_table_lookup_for_display. - (xg_create_frame_widgets, xg_get_file_name, create_menus) - (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen. - (xg_create_widget, xg_create_scroll_bar): Use xg_cursor - in FRAME_X_DISPLAY_INFO. - (xg_get_scroll_id_for_window): Take Display* argument. - (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask. - (xg_initialize): Remove xg_left_ptr_cursor. - - * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add - Display* argument. - (xg_display_open, xg_display_close, xg_create_default_cursor): Declare. - -2003-11-14 Jan Dj,Ad(Brv - - * xterm.c (x_detect_focus_change): Do not change focus frame for - Enter/LeaveNotify if the current focus frame has explicit focus. - -2003-11-14 Kim F. Storm - - * dispnew.c (update_text_area): Fix redisplay error when hscroll - is active and first glyph is only partially visible. - -2003-11-13 Kenichi Handa - - * xdisp.c (select_frame_for_redisplay): New function. - (redisplay_internal): Record also selected_frame for - unwind_redisplay. Call select_frame_for_redisplay before - redrawing each frame. - (unwind_redisplay): Argument changed to a cons. - -2003-11-12 Luc Teirlinck - - * fns.c (Fstring_to_multibyte): Doc fix. - -2003-11-11 Kenichi Handa - - * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts. - -2003-11-09 Jan Dj,Ad(Brv - - * xfns.c (x_window): Set XtNx and XtNy in shell widget for - program specified positions. - -2003-11-08 Jan Dj,Ad(Brv - - * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E. - -2003-11-08 Kenichi Handa - - * Makefile.in (lisp): Add kannada.el. - (shortlisp): Likewise. - -2003-11-07 Kenichi Handa - - * coding.c (coding_allocate_composition_data): - Reset coding->composing to COMPOSITION_NO. - (coding_restore_composition): Detect invalid composition data. - Give Fstring and Fvector a Lispy integer, not C int. - -2003-11-05 Stefan Monnier - - * floatfns.c (Flogb): Don't use VALMASK. - - * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove. - * m/ia64.h (VALBITS, XINT, XUINT): Remove. - - * lisp.h (XINT): Move the cast to clarify what is going on. - (GCTYPEMASK, XSETTYPE): Remove. - (XGCTYPE): Make it an alias of XTYPE. - -2003-11-03 Jan Dj,Ad(Brv - - * xterm.c (x_term_init): Fix formatting. - -2003-11-02 Jan Dj,Ad(Brv - - * gtkutil.h (xg_have_tear_offs): Declare. - (xg_keep_popup, xg_did_tearoff): Remove. - - * gtkutil.c: Remove variable xg_did_tearoff. - (xg_have_tear_offs): New function. - (tearoff_remove): Just decrease xg_detached_menus. - (tearoff_activate): Increase xg_detached_menus and call - tearoff_remove when tearoff is removed. - (xg_keep_popup): Remove function. - (create_menus): Give add_tearoff_p as argument to recursive - call to create_menus. - (xg_create_widget): Use variables instead of multiple - strcmp. Tell create_menus to create tear off only for - menu bar menus. - (xg_update_menubar): Change title for a detached menu also. - (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless - of deep_p. - (xg_initialize): Initialize xg_detached_menus, remove - initialization of xg_did_tearoff. - - * xmenu.c (set_frame_menubar): For GTK, set deep_p if - xg_have_tear_offs returns non-zero. - (create_and_show_popup_menu): Remove setting of xg_did_tearoff and - call to xg_keep_popup. - -2003-11-01 Andrew Choi - - * macterm.c (XTread_socket): Handle menubar selection and grow - window only for mouseDown events. - -2003-10-31 Jan Dj,Ad(Brv - - * xterm.c (x_term_init): For GTK part, increase x_initialized - to check for more than one display. Use error instead of return 0. - -2003-10-31 Andrew Choi - - * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando). - (copy_dysymtab): Call it. - -2003-10-31 Luc Teirlinck - - * eval.c (Fdefvaralias): Doc fix. - -2003-10-26 Luc Teirlinck - - * data.c (Fsetplist): Doc fix. - -2003-10-14 Lute Kamstra - - * window.c (Fset_window_fringes): Clarify docstring. - -2003-10-14 Kim F. Storm - - * window.c (Fset_window_margins): Simplify arg checking. - -2003-10-13 Richard M. Stallman - - * regex.c (MAX_BUF_SIZE): Reduce to 2**15. - (print_partial_compiled_pattern): Replace assert with a printout. - (skip_noops, mutually_exclusive_p): Change args, values to re_char *. - - * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full. - - * window.c (Fset_window_margins): Allow only integers as args. - (syms_of_window) : Doc fixes. - -2003-10-13 Lute Kamstra - - * window.c (Fset_window_fringes): Elaborate docstring. - -2003-10-12 Andrew Choi - - * macterm.c (XTread_socket): Call DragWindow only for mouseDown events. - - * s/darwin.h (GC_MARK_STACK): Define. - -2003-10-12 Jan Dj,Ad(Brv - - * window.c (shrink_windows): New function. - (size_window): Call shrink_windows to calculate window sizes when - shrinking frame with more than one window. - -2003-10-12 Kim F. Storm - - * xdisp.c (compute_fringe_widths): Doc fix. - -2003-10-08 Kenichi Handa - - * coding.c (Fcoding_system_p): Return t for auto-loading coding system. - -2003-10-07 Kenichi Handa - - * coding.c (Qcoding_system_define_form): New variable. - (syms_of_coding): Intern and staticpro it. - (Fcheck_coding_system): Try to autoload the definition of - CODING-SYSTEM. - -2003-10-05 Luc Teirlinck - - * fns.c (Frequire): Doc fix. - -2003-10-05 Jan Dj,Ad(Brv - - * xfns.c (Fx_send_client_event): New function as a base for - manipulating extended window manager hints. - (Fx_send_client_event): Remove unused variable s. - - * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move, - that function is removed. - - * xterm.c (x_set_offset): Use move_offset_left/top instead of - x/y_pixels_outer_diff. - (x_check_expected_move): Calculate move_offset_left/top. - - * xterm.h (struct x_output): New members: move_offset_top/left. - - * frame.c (x_set_frame_parameters): Remove x_fullscreen_move, - call x_set_offset directly. - - * frame.h (enum): FULLSCREEN_MOVE_WAIT removed. - - * frame.c (Fdelete_frame): Free decode_mode_spec_buffer. - - * xterm.c (x_delete_display): Free font names and font_encoder - in dpyinfo->font_table. - - * xfns.c (Fx_close_connection): Only call XFreeFont here. - Move xfree of font names to x_delete_display. - - * xterm.h (struct x_display_info): New member, wm_type. - (struct x_output): New members, expected_top/left and - check_expected_move. - - * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify - is received. - (handle_one_xevent): Rename x_check_expected_move from - x_check_fullscreen_move. - (x_set_offset): Only add WM decoration sizes to modified_top/left - for X_WMTYPE_A. Set check_expected_move when WM type is unknown. - (x_check_expected_move): Rename from x_check_fullscreen_move. - Removed fullscreen specific code. Use check_expected_move, - expected_left/top instead. Also, set wm_type. - (x_term_init): Initialize wm_type to unknown. - - * frame.c (x_fullscreen_move): Remove addition of WM decoration - sizes to move_x/y. - -2003-10-03 Kenichi Handa - - * macterm.c (x_load_font): Clear all members of FONTP before start - filling them. - -2003-10-02 Kenichi Handa - - * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL - before calling find_ccl_program_func. Call find_ccl_program_func - only when fontp->font_encoder is not NULL. - - * xterm.c (x_load_font): Clear all members of FONTP before start - filling them. - -2003-10-03 John Paul Wallington - - * keymap.c (map_keymap): Don't abort when binding is a vector. - -2003-10-02 Jason Rumney - - * makefile.w32-in (emacs.o, coding.o, bytecode.o): - Sync dependencies with Makefile.in. - (alloca.o): Remove. - - * w32fns.c (w32_load_system_font): Clear all members of FONTP before - filling them. - - * w32bdf.c (w32_load_bdf_font): Likewise. - -2003-09-30 Richard M. Stallman - - * term.c (set_tty_color_mode): Calculate current_mode_spec - regardless of value of VAL. - - * intervals.c (graft_intervals_into_buffer): - Set BUF_INTERVALS (buffer)->up_obj when appropriate. - Handle over_used when splitting UNDER. - -2003-09-30 YAMAMOTO Mitsuharu - - * regex.c (regex_compile): Free the stack when returning from function. - -2003-09-28 Kenichi Handa - - * fontset.c (Finternal_char_font): Change return value to - cons (FONT-NAME . GLYPH-CODE). - -2003-09-28 Eli Zaretskii - - * term.c (tty_setup_colors): Treat any negative argument as -1. - -2003-09-27 Gaute B Strokkenes (tiny change) - - * process.c (send_process): Delete unused temp_buf. - -2003-09-26 Dave Love - - * xterm.c (x_bitmap_mask): Declare. - -2003-09-25 Dave Love - - * Makefile.in (fns.o): Depend on md5.h. - -2003-09-25 Kim F. Storm - - * window.c (set_window_buffer): Fix redisplay problems when - switching between buffers with different display margin widths. - -2003-09-23 Kim F. Storm - - * process.c (set_socket_option): Fix :bindtodevice option. - (Fset_network_process_option): Update process contact list when - setting option succeeds. - (Fmake_network_process): Doc fix. - -2003-09-23 Dave Love - - * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros. - -2003-09-22 Eli Zaretskii - - * term.c (set_tty_color_mode): Use INTEGERP to test whether a - color mode is an integer number (it could be -1). - -2003-09-22 Richard M. Stallman - - * intervals.c (graft_intervals_into_buffer): Correct the main loop - in the case where OVER is longer than UNDER. - -2003-09-22 Masatake YAMATO - - * window.c (Fset_window_scroll_bars): Validate the value of - `vertical_type'. - -2003-09-21 Kim F. Storm - - * frame.c (Vdefault_frame_scroll_bars): New variable. - (x_set_vertical_scroll_bars): Use it instead of hardcoded values. - (syms_of_frame): DEFVAR_LISP it, and initialize according to - window-system default scroll bar position. - - * window.c (Fwindow_scroll_bars): Doc fix. - -2003-09-19 Jan Dj,Ad(Brv - - * xterm.c (x_set_offset): Take window manager decorations into account. - -2003-09-19 Richard M. Stallman - - * atimer.h: Don't include lisp.h. - (P_): Define it here (as well as elsewhere). - - * print.c (Fprin1_to_string): Move the PRINTPREPARE - later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks. - - * data.c (Fvariable_binding_locus): New function. - (syms_of_data): defsubr it. - (Flocal_variable_p): Delete duplicate call to indirect_variable. - -2003-09-18 Dave Love - - * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h. - - * process.c (Fnetwork_interface_info): Fix type error. - (Fnetwork_interface_list): Doc fix. - (read_process_output, read_process_output): Delete unused var. - -2003-09-17 Kim F. Storm - - * process.c (Fnetwork_interface_list, Fnetwork_interface_info): - Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns. - (Fnetwork_interface_info): Check that ifreq struct has required - fields before accessing them; this requires that those fields are - defined as macros, which may be too restrictive on some platforms, - but it is better than failing on other platforms. - (syms_of_process): Only defsubr above fns when included. - -2003-09-17 Dave Love - - * unexalpha.c: Don't include varargs.h. - -2003-09-17 Kim F. Storm - - * process.c (Fset_process_sentinel): Add sentinel to childp plist - for network process. - (socket_options): Add `:' prefix to option names. Add optbit field. - (set_socket_option): Remove no_error arg and special handling of s < 0. - Return 1< - - * Makefile.in: Depend on coding.h. - -2003-09-14 Kim F. Storm - - * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h. - (Fnetwork_interface_list, Fget_network_interface_info): New defuns. - (syms_of_process): Defsubr them. - - * config.in: Regenerate. - -2003-09-12 Stefan Monnier - - * m/sr2k.h (XMARKBIT, XUNMARK): Remove. - * m/news-r6.h (XUNMARK): Remove. - * m/mips.h (XUNMARK): Remove. - * m/mips-siemens.h (XUNMARK): Remove. - * m/iris4d.h (XUNMARK): Remove. - * m/hp800.h (XMARKBIT, XUNMARK): Remove. - -2003-09-11 Stefan Monnier - - * lisp.h (VALBITS): Don't remove 1 for the markbit. - (union Lisp_Object): Use unsigned int for types. Remove markbit. - (MARKBIT): Remove 1 from VALBITS so we still use same old val. - (XTYPE): Use unsigned right-shift. - (XMARKBIT, XMARK, XUNMARK): Remove. - - * alloc.c (init_intervals, init_symbol, init_marker): - Don't preallocate anything. - (Fgarbage_collect, mark_object): Ignore the markbit. - - * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit. - -2003-09-08 Lute Kamstra - - * xdisp.c (pint2hrstr): New function. - (decode_mode_spec): Add `%i' and `%I' specs. - * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs - for `mode-line-format'. - -2003-09-07 Andreas Schwab - - * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to - avoid warning. - -2003-09-07 Eli Zaretskii - - * editfns.c (region_limit): Support any non-zero value of BEGINNINGP. - -2003-09-03 Kim F. Storm - - * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01 - change (superseded by 2002-08-30 change); the default blink-off - cursor is now again "no cursor". - -2003-09-01 Jason Rumney - - * makefile.w32-in (alloca.o): Remove. - (coding.o): Depend on intervals.h - (emacs.o, bytecode.o): Depend on window.h - -2003-09-01 Dave Love - - * Makefile.in (alloca.o): Remove commands. - (coding.o): Depend on intervals.h composite.h window.h. - (emacs.o): Depend on window.h keyboard.h keymap.h. - (gtkutil.o): Depend on keyboard.h charset.h coding.h. - (bytecode.o): Depend on window.h. - -2003-08-31 Jason Rumney - - * w32term.c (w32_per_char_metric): Allow cached metrics to be - returned even when font_type is unknown. - - * xdisp.c (init_iterator): Remove old WINDOWSNT conditional. - -2003-08-30 Jan Dj,Ad(Brv - - * xterm.c (x_term_init): Initialize new fields in x_display_info. - - * xterm.h (struct x_display_info): Add red/green/blue_bits and - *_offset. - - * xfns.c (lookup_rgb_color): Use new fields in x_display_info to - calculate pixel value. - -2003-08-29 Gerd Moellmann - - * xdisp.c (redisplay_internal): Fix change of 2003-04-30. - Don't tell redisplay display is accurate when it's actually been - paused for pending input. - -2003-08-29 Richard M. Stallman - - * dispnew.c (adjust_glyph_matrix): Call window_box - whenever W is nonzero. - - * data.c (Fmake_variable_buffer_local, Fmake_local_variable) - (Fkill_local_variable, Fmake_variable_frame_local) - (Flocal_variable_p, Flocal_variable_if_set_p): - Use indirect_variable to trace thru variable aliases. - - * config.in: Updated. - - * callint.c (Fcall_interactively): Save and restore - Vthis_command, Vthis_original_command, real_this_command, - and current_kboard->Vlast_command. - - * abbrev.c (Fexpand_abbrev): Insert before deleting. - -2003-08-29 Gerd Moellmann - - * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially. - -2003-08-28 David Abrahams (tiny change) - - * coding.c (decode_coding_iso2022): Initialize local variable c2. - (decode_coding_sjis_big5): Likewise. - -2003-08-27 Jason Rumney - - * w32.c (sys_pipe): Protect against file descriptor overflow. - - * w32fns.c (syms_of_w32fns): Remove non-existent functions. - - * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment. - -2003-08-26 Terje Rosten - - * xfns.c (Vgtk_version_string): New variable. - (syms_of_xfns): DEFVAR_LISP it. Provide gtk. - -2003-08-24 Eli Zaretskii - - * term.c (term_init): Remove `const' from buffer_size's declaration. - - * Makefile.in (msdos.o): Depend on intervals.h. - - * msdos.c: Include intervals.h, since STRING_INTERVALS requires that. - -2003-08-21 Jan Dj,Ad(Brv - - * xterm.h (struct x_display_info): New fields: client_leader_window - and Xatom_wm_client_leader. - - * xterm.c (x_initialize): Move call to x_session_initialize to ... - (x_term_init): ... here. Initialize client_leader fields in dpyinfo. - - * xsmfns.c (create_client_leader_window): New function. - (x_session_initialize): Call create_client_leader_window, take - dpyinfo as argument. - - * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER. - - * Makefile.in (xsmfns.o): Add more depenedencies. - -2003-08-21 Dave Love - - * m/iris4d.h: Use _MIPS_SZLONG, not _LP64. - -2003-08-21 Kenichi Handa - - * term.c (term_init): Fix previous change; don't rely on the - length of `buffer' if TERMINFO is defined. - -2003-08-20 Dave Love - - * atimer.h: Include lisp.h. - - * lisp.h (EMACS_LISP_H): New. - (popup_activated_flag): Don't declare. - - * alloca.c: Some merging with gnulib. Change logic and doc - concerning (x)malloc/(x)free -- no longer Emacs-specific. - [DO_BLOCK_INPUT]: Don't include lisp.h. - (xmalloc, xfree): Declare. - (malloc): Don't declare. - - * Makefile.in (LWLIB_OPTIONS): Remove (unused). - (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on - atimer.h, blockinput.h. - - * alloc.c (lisp_align_malloc): Change type of `aligned'. - - * alloca.s: Remove. - -2003-08-19 Gerd Moellmann - - * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO, - use -lncurses. - - * term.c (term_init): Use a buffer of size 4096 for tgetent since - FreeBSD returns something longer than 2044. Abort if the end of - the buffer is overwritten. - -2003-08-19 Miles Bader - - * xterm.c (x_term_init): Correctly use result of Ffile_readable_p. - -2003-08-19 Gerd Moellmann - - * alloc.c (lisp_align_malloc): Check for memory full when - allocating ablocks, which also avoids freeing a pointer into an - ablocks structure. - - * puresize.h (BASE_PURESIZE): Increase to 1100000. - - * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally. - -2003-08-16 Richard M. Stallman - - * editfns.c (Fencode_time): Doc fix. - -2003-08-16 David Ponce - - * fileio.c (Fwrite_region): Fix conditional expression to issue - the right message. - -2003-08-16 Juri Linkov - - * syntax.c (Fforward_word): Argument changed to optional. - Set default value to 1. - -2003-08-15 Kenichi Handa - - * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not - what autoscaled. - (best_matching_font): Once we find a better scalable font, set - non_scalable_has_exact_height_p to 1. - (try_font_list): Call try_alternative_families to try any family - with the given registry. - -2003-08-09 Andreas Schwab - - * alloc.c (mark_object): Handle Lisp_Misc_Save_Value. - - * print.c (print_string): Fix printing of multibyte string with - nontrivial printcharfun. - -2003-07-31 Jan Dj,Ad(Brv - - * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2. - - * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds. - -2003-07-31 Kenichi Handa - - * process.c (read_process_output): Return the actually read bytes - instead of the result of decoding. - -2003-07-31 Kenichi Handa - - * xterm.h (struct x_bitmap_record): New member have_mask. - - * xfns.c (x_create_bitmap_from_data): Initialize have_mask member - to 0. - (x_create_bitmap_from_file): Likewise. - (x_destroy_bitmap): Check have_mask member before freeing a mask. - (x_destroy_all_bitmaps): Likewise. - (x_create_bitmap_mask): Set have_mask member to 1. - -2003-07-30 Richard M. Stallman - - * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change. - -2003-07-29 Jan Dj,Ad(Brv - - * gtkutil.c (xg_mark_data): Update calls to mark_object. - -2003-07-29 Richard M. Stallman - - * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy): - Conditionalize XIM code on HAVE_XIM. - - * fns.c (Fclear_string): New function. - (syms_of_fns): defsubr it. - -2003-07-28 KOBAYASHI Yasuhiro - - * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x. - -2003-07-22 Stefan Monnier - - * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it. - - * buffer.c (delete_all_overlays): New function. - * buffer.h (delete_all_overlays): Declare. - * coding.c (run_pre_post_conversion_on_str): - * print.c (temp_output_buffer_setup): - * fileio.c (Finsert_file_contents): - * minibuf.c (get_minibuffer): Use it. - -2003-07-22 Andrew Choi - - * unexmacosx.c (unexec_regions_sort_compare): - (unexec_regions_merge): New functions. Sort and merge unexec - regions before dumping them. - -2003-07-22 Dave Love - - * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h. - -2003-07-21 Stefan Monnier - - * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P) - (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than - MARKBIT as the gcmarkbit for strings. - -2003-07-21 Richard M. Stallman - - * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef. - - * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes. - (syms_of_fns): Corresponding change. - - * alloc.c (syms_of_alloc): Doc fixes. - -2003-07-20 Han Boetes (tiny change) - - * s/netbsd.h: Use -Wl syntax. - -2003-07-17 Richard M. Stallman - - * xterm.c (xim_initialize): Redo 6/24 change. - -2003-07-15 Stefan Monnier - - * buffer.c (copy_overlays): Use EMACS_INT for positions. - (Fswitch_to_buffer): Don't signal an error when switching to the same - buffer in a dedicated window. - - * alloc.c: Use bitmaps for cons, as was done for floats. - (init_float, init_cons): Let the normal code allocate the first block. - (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size. - (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK): - New macros. - (struct cons_block): Move conses to the beginning. Add gcmarkbits. - (Fcons): Use lisp_align_malloc and CONS_UNMARK. - (live_cons_p): Check the pointer is not past the `conses' array. - (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P. - (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK. - (survives_gc_p): Use CONS_MARKED_P and simplify. - (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free. - -2003-07-13 Paul Eggert - - GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it - puts it into BSS instead, at least on Solaris 8 and 9. - This is a valid optimization, and it may occur on other platforms, - so Emacs should not assume that initializing a static variable to - zero puts it into data. - * alloc.c (pure, staticvec): - Initialize these arrays to nonzero, so that they're not - put into BSS by that optimization. - -2003-07-13 Stefan Monnier - - * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users. - (lisp_align_malloc): Use posix_memalign is available. - (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization. - (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK - for consistency. Update users. - -2003-07-13 Richard M. Stallman - - * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them. - -2003-07-13 Terje Rosten - - * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask, - and use the Gtk+ function gtk_window_icon_from_file if available. - - * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to - handle mask of bitmaps. - (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the - mask property. - (xg_set_icon): New function, wrapper for gtk_window_icon_from_file. - - * xterm.h (xg_set_icon): New function. - -2003-07-12 Paul Eggert - - * unexelf.c (unexec): Consider a section to precede the .bss - section if its addresses overlap that of .bss. - -2003-07-12 Richard M. Stallman - - * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g. - - * config.in (HAVE_CRTIN): Add #undef. - (INLINE): Really inline only if OPTIMIZE is defined. - - * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1, - END_FILES_1. - (START_FILES_1, END_FILES_1): New macros (conditional). - (LD_SWITCH_SYSTEM_TEMACS): Define. - - * s/openbsd.h: Don't include bsd4-3.h. - (TERMINFO): Define. - (LIBS_TERMCAP): Define. - (LD_SWITCH_SYSTEM): Define (two definitions). - - * xfns.c: Include libpng/png.h instead of png.h. - -2003-07-11 Andreas Schwab - - * buffer.c (modify_overlay): Update prototype. - * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete): - Likewise. - -2003-07-09 Stefan Monnier - - * lisp.h (VALBITS): Define in terms of GCTYPEBITS. - (struct interval): Move to intervals.h. - (struct Lisp_Marker): Use EMACS_INT for position info. - (forward_point): Remove prototype of defunct function. - (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change) - (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all) - (syms_of_textprop, set_text_properties): Remove prototypes that are - already in intervals.h. - - * intervals.h (struct interval): Move from lisp.h. - Use EMACS_INT for position and size info. - - * coding.c: Include intervals.h for Fset_text_properties. - - * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for - position and length information. - -2003-07-09 Stefan Monnier - - * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for - position and length information. - -2003-07-09 Stefan Monnier - - Change overlays_after and overlays_before so the overlays themselves - are linked into lists, rather than using cons cells. After all each - Lisp_Misc already occupies 5 words, so we can add a `next' field to - Lisp_Overlay for free and save up one cons cell per overlay (not - to mention one indirection when traversing the list of overlay). - - * lisp.h (struct Lisp_Overlay): New field `next'. - - * buffer.h (struct buffer): Change overlays_before and overlays_after - from Lisp lists of overlays to pointers to overlays. - - * buffer.c (overlay_strings, recenter_overlay_lists): - Fix typo in eassert in last commit. - (unchain_overlay): New function. - (add_overlay_mod_hooklist): Use AREF. - (copy_overlays, reset_buffer, overlays_at, overlays_in) - (overlay_touches_p, overlay_strings, recenter_overlay_lists) - (fix_overlays_in_range, fix_overlays_before, Fmake_overlay) - (Fmove_overlay, Fdelete_overlay, Foverlay_lists) - (report_overlay_modification, evaporate_overlays, init_buffer_once): - Adjust to new type of overlays_(before|after). - - * alloc.c (mark_object): Mark the new `next' field of overlays. - (mark_buffer): Manually mark the overlays_(after|before) fields. - - * coding.c (run_pre_post_conversion_on_str): - * editfns.c (overlays_around): - * xdisp.c (load_overlay_strings): - * fileio.c (Finsert_file_contents): - * indent.c (current_column): - * insdel.c (signal_before_change, signal_after_change): - * intervals.c (set_point_both): - * print.c (temp_output_buffer_setup): Use new type for - overlays_(before|after). - -2003-07-08 Stefan Monnier - - * buffer.c (report_overlay_modification): Don't run hooks while - traversing the list of overlays. - - * buffer.h (struct buffer): Use an int for overlay_center. - (overlays_at, evaporate_overlays, recenter_overlay_lists) - (overlay_strings, fix_overlays_before): Use EMACS_INT for positions. - - * buffer.c (reset_buffer, recenter_overlay_lists) - (adjust_overlays_for_insert, adjust_overlays_for_delete) - (fix_overlays_in_range, Fmake_overlay, Fmove_overlay) - (evaporate_overlays, init_buffer_once): Update use of overlay_center. - (overlays_at, evaporate_overlays, recenter_overlay_lists) - (overlay_strings, fix_overlays_before): Use EMACS_INT for positions. - - * xdisp.c (fast_find_position): Remove unused var. - - * cmds.c (Qexpand_abbrev): New sym. - (syms_of_cmds): Initialize it. - (internal_self_insert): Use it to call expand-abbrev. - -2003-07-09 Kim F. Storm - - * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs - was configured with --without-xim. - (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM. - -2003-07-07 Richard M. Stallman - - * xdisp.c (reseat_1): Set it->area to TEXT_AREA. - - * alloc.c (Fgarbage_collect): Doc fix. - -2003-07-07 Nozomu Ando - - * buffer.c (Fkill_buffer): Clear charpos cache if necessary. - -2003-07-06 Stefan Monnier - - * minibuf.c (read_minibuf): UNGCPRO before returning. - (Ftry_completion, Fall_completions): Doc fix. - - * alloc.c (live_float_p): Check that p is not past the `floats' array, - now that `floats' is not the last element of the struct any more. - -2003-07-06 Jason Rumney - - * w32term.h (ClipboardSequence_Proc): New type. - - * w32fns.c (clipboard_sequence_fn): New variable. - (globals_of_w32fns): Initialize it. - - * w32select.c (last_clipboard_sequence_number): New variable. - (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence - number if possible. - -2003-07-06 Stefan Monnier - - * m/amdx86-64.h (MARKBIT): - * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare - MARKBIT and ARRAY_MARK_FLAG any more. - - * m/hp800.h (XSETMARKBIT): - * m/sr2k.h (XSETMARKBIT): - * lisp.h (XSETMARKBIT): Remove unused macro. - - * lisp.h (mark_object): Change prototype. - - * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object. - (last_marked): Change accordingly. - (mark_interval, mark_maybe_object, mark_maybe_pointer) - (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image) - (mark_buffer): Update calls to mark_object. - - * bytecode.c (mark_byte_stack): - * fns.c (sweep_weak_table): - * keyboard.c (mark_kboards): Update calls to mark_object. - -2003-07-06 Jason Rumney - - * alloc.c (struct ablock): Only include padding when there is some. - -2003-07-04 Stefan Monnier - - * alloc.c (ALIGN): Add casts to simplify usage. - (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE) - (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros. - (struct ablock, struct ablocks): New types. - (free_ablock): New global var. - (lisp_align_malloc, lisp_align_free): New functions. - (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES. - (struct float_block): Reorder and add gcmarkbits. - (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX) - (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros. - (init_float, make_float): Use lisp_align_malloc. - (free_float, live_float_p): Don't use `type' any more. - (make_float): Use FLOAT_UNMARK to access to mark bit. - (mark_maybe_object, mark_maybe_pointer, survives_gc_p): - Use FLOAT_MARKED_P to access the mark bit. - (pure_alloc): Simplify use of ALIGN. - (mark_object): Use FLOAT_MARK to access the mark bit. - (gc_sweep): Use new macros to access the float's mark bit. - (init_alloc_once): Init free_ablock. - - * lisp.h (struct Lisp_Float): Remove unused field `type'. - -2003-06-27 Stefan Monnier - - * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros. - (GC_STRING_BYTES): Don't mask markbit (it's only used on `size'). - (allocate_buffer): Move. - (string_bytes): Don't mask markbit of `size_byte'. - (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect) - (mark_object, mark_buffer, survives_gc_p, gc_sweep): - Use the `size' field of buffers (rather than the `name' field) for - the mark bit, as is done for all other vectorlike objects. - Use the new macros to access the mark bit of vectorlike objects. - -2003-06-26 Richard M. Stallman - - * puresize.h (BASE_PURESIZE): Increment base size. - - * xdisp.c (fast_find_position): Enable Gerd's new definition. - - * xterm.c (xim_initialize): Undo previous change. - -2003-06-26 Stefan Monnier - - * alloc.c (survives_gc_p): Simplify. - - * buffer.c (set_buffer_internal_1): Test CONSP for lists. - - * window.c (Fset_window_dedicated_p): Simplify. - (display_buffer_1): Don't raise the win from which minibuf was entered. - (temp_output_buffer_show): Don't assume BEG == 1. Simplify. - (Fminibuffer_selected_window): Simplify. - - * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker. - - * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker. - (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'. - - * insdel.c (check_markers, adjust_markers_for_delete) - (adjust_markers_for_insert, adjust_markers_for_replace) - (prepare_to_modify_buffer, RESTORE_VALUE): - * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos) - (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker) - (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers): - * alloc.c (Fmake_marker, free_marker, gc_sweep): - * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte): - * editfns.c (save_excursion_restore, transpose_markers): - * window.c (delete_window): - * xdisp.c (message_dolog): Update for new types. - -2003-06-26 Jan Dj,Ad(Brv - - * xfaces.c (set_font_frame_param): Set default_face_done_p to zero. - (realize_default_face): Use default_face_done_p for the force_p - argument to set_lface_from_font_name. Set default_face_done_p to one. - - * frame.c (make_frame): Initialize default_face_done_p. - - * frame.h (struct frame): Add default_face_done_p. - - * config.in: Add XRegisterIMInstantiateCallback_arg6 so it - will be defined. - -2003-06-25 Stefan Monnier - - * alloc.c (make_interval, Fmake_symbol, allocate_misc): - Initialize the new field `gcmarkbit'. - (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field. - (mark_interval_tree): Don't mark the tree separately from the nodes. - (UNMARK_BALANCE_INTERVALS): Don't unmark the tree. - (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect) - (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields. - - * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free) - (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd) - (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value) - (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay) - (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field. - -2003-06-24 Dave Love - - * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6. - - * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes - from gnulib. - -2003-06-21 Richard M. Stallman - - * fileio.c (Fwrite_region): Alternate messages - for append and partial write. - - * keyboard.c (read_key_sequence): When converting upcase fn key to - downcase, update fkey and keytran so `backspace' gets translated. - - * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode. - - * process.c (wait_reading_process_input): Don't signal SIGIO - in batch mode. - -2003-06-17 Kenichi Handa - - * Makefile.in (xselect.o): Don't depend on charset.h, coding.h, - composite.h. - - * xselect.c: Don't include charset.h, coding.h, composite.h. - (Qforeign_selection): New variable. - (syms_of_xselect): Intern and static it. - (selection_data_to_lisp_data): Return a unibyte string made from - data with `foreign-selection' text property. - -2003-06-15 Stefan Monnier - - * termhooks.h (EVENT_INIT): New macro. - - * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer. - - * alloc.c (mark_kboards): Move to keyboard.c. - - * keyboard.c (record_asynch_buffer_change, read_avail_input): - * xterm.c (x_dispatch_event): - * xmenu.c (find_and_call_menu_selection): - * xdisp.c (handle_tool_bar_click): - * w32menu.c (menubar_selection_callback): - * sysdep.c (kbd_input_ast, read_input_waiting): - * msdos.c (dos_rawgetc): - * macterm.c (mac_check_for_quit_char): - * macmenu.c (menubar_selection_callback): - * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized - data to kbd_buffer_store_event. - -2003-06-15 Kim F. Storm - - * xdisp.c (x_fix_overlapping_area): Always use area relative X - to fix redisplay problem with tall characters (such as ,AC(B). - -2003-06-13 Kai Gro,A_(Bjohann - - * fileio.c (Fcopy_file): Doc fix: copies file modes, too. - -2003-06-12 Kenichi Handa - - * fileio.c (Fwrite_region): Save and restore restriction. - -2003-06-12 Dave Love - - * alloca.c (alloca): Declare arg as size_t. - - * sysdep.c: Remove redundant include of unistd.h, stdlib.h. - Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED. - -2003-06-11 Dave Love - - * search.c (shrink_regexp_cache): Use xrealloc. - (syms_of_search): Use xmalloc. - -2003-06-10 Kim F. Storm - - * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change. - Adjust phys_cursor.x to be relative to window box, rather than - text area before checking -- to ensure cursor is redrawn when - exposing window. - Note: This also fixes a similar (older) bug if display margins - are present. - -2003-06-06 Kenichi Handa - - * coding.c (encoding_buffer_size): If coding->type is - coding_type_ccl, double magnification on CRLF encoding. - -2003-06-06 Jason Rumney - - * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant. - (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last. - - * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and - Mac too. - -2003-06-05 Dave Love - - * strftime.c: Merge changes from gnulib. - - * mktime.c (__mktime_internal): Merge changes from gnulib - involving year 69 and dst2. - - Changes to merge with gnulib version and be consistent with the - autoconf test: - - * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H. - Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION. - [HAVE_LOCALE_H]: Include locale.h. - (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale. - -2003-06-05 Kim F. Storm - - * window.c (coordinates_in_window): Convert X and Y to window - relative coordinates inside mode-line and header-line parts. - Convert X and Y to margin area relative coordinates inside left - and right display margin parts. - -2003-06-05 Jason Rumney - - * w32fns.c (add_system_logical_colors_to_map): New function. - (Fx_open_connection): Use it. - -2003-06-04 Stefan Monnier - - * process.c (allocate_pty): Revert part of the previous patch. - (Faccept_process_output): Simplify. - -2003-06-04 Jason Rumney - - * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT. - - * keyboard.c (Qmouse_wheel, mouse_wheel_syms) - (lispy_mouse_wheel_names): Remove. - (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms. - Always define drag_and_drop_syms. - - * macterm.c (XTread_socket): Map mouse wheel events to Emacs - WHEEL_EVENT events. - -2003-06-03 Stefan Monnier - - * xdisp.c (update_tool_bar): Add missing UNGCPRO. - - * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local. - -2003-06-03 Jan Dj,Ad(Brv - - * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL - menu item label. - -2003-06-03 Richard M. Stallman - - * window.c (Fwindow_edges): Doc fix. - (Fwindow_pixel_edges, Fwindow_inside_edges) - (Fwindow_inside_pixel_edges): New functions. - (syms_of_window): defsubr them. - - * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS) - (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros. - -2003-06-02 Stefan Monnier - - * dispnew.c (Fsit_for): Don't lie about the number of args. - -2003-06-02 Dave Love - - * callproc.c: Use HAVE_FCNTL_H, not USG5. - (syms_of_callproc) : Doc fix. - - * doc.c: Use HAVE_FCNTL_H, not USG5. - - * xfaces.c (font_rescale_ratio): Fix for K&R. - - * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION. - - * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H. - - * lread.c [HAVE_FCNTL_H]: Include fcntl.h. - - * gtkutil.c: Include keyboard.h, charset.h, coding.h. - (xg_create_frame_widgets): Use ENCODE_UTF_8. - - * xterm.c (Qutf_8): Move to coding.c - - * xmenu.c (ENCODE_MENU_STRING): New. - (list_of_panes, list_of_items, digest_single_submenu, xmenu_show): - Use it. - - * coding.h (ENCODE_UTF_8): New. - (Qutf_8): Declare. - - * coding.c (Qutf_8): New. - (syms_of_coding): Intern it. - - * fns.c: Doc fixes. - -2003-06-02 Kenichi Handa - - * buffer.c (Fset_buffer_multibyte): Fix previous change. - -2003-06-01 Stefan Monnier - - * lread.c (openp): Make sure STR is a string. - -2003-06-01 David Ponce - - * termhooks.h (enum event_kind): Add new WHEEL_EVENT event. - Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined. - - * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined. - (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise. - (discard_mouse_events): Discard WHEEL_EVENT events too. - (lispy_wheel_names, wheel_syms): New. - (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and - staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined. - (make_lispy_event): Add WHEEL_EVENT handler. - - * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT. - (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs - WHEEL_EVENT events. - -2003-05-31 John Paul Wallington - - * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and - timer are in lisp/emacs-lisp. - -2003-05-31 Kenichi Handa - - * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed - region when a buffer is changed to unibyte. - - * charset.h (VALID_LEADING_CODE_P): New macro. - (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly. - - * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags - is nonzero, accept multibyte form of eight-bit-control chars. - (decode_composition_emacs_mule): Likewise. - (decode_coding_emacs_mule): Likewise. - (encode_coding_emacs_mule): If coding->flags is nonzero, produce - multibyte form of eight-bit-control chars. - - * fileio.c (Qauto_save_coding, auto_save_coding): New variables. - (Finsert_file_contents): If coding-system-for-read is bound to - Qauto_save_coding, use the coding system emacs-mule with special - setting for recovering a file. - (choose_write_coding_system): On auto saving, use the coding - system emacs-mule with special setting for auto saving. - (syms_of_fileio) : Intern and staticpro it. - -2003-05-30 Kenichi Handa - - * coding.c (ccl_coding_driver): Set ccl->eight_bit_control - properly before calling ccl_driver. - - * ccl.h (struct ccl_program) : Comment fixed. - - * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero. - (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control. - (setup_ccl_program): Initialize ccl->eight_bit_control to zero. - -2003-05-29 Glenn Morris - - * xfaces.c (realize_default_face): Do not abort if lface is - non-existent - reverts change from 2003-05-19. - -2003-05-29 Kenichi Handa - - * coding.c (decode_coding_iso2022): Pay attention to the byte - sequence of CTEXT extended segment, and retain those bytes as is. - -2003-05-28 Kenichi Handa - - * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change - of CODING_REPLACEMENT_CHARACTER. - (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set - CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and - check this flag on encoding. - (encode_coding_sjis_big5): - Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode. - (Fset_terminal_coding_system_internal): - Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode - instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags. - - * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from - CODING_INHIBIT_CHARACTER_SUBSTITUTION. - (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro. - -2003-05-28 Richard M. Stallman - - * print.c (syms_of_print) : Doc fix. - - * eval.c (unbind_to): Move init of this_binding to separate statement. - -2003-05-28 Kim F. Storm - - * xdisp.c (expose_window): Fix error in calculation of - window relative coordinates of area to redisplay. - -2003-05-27 Jason Rumney - - * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro. - -2003-05-27 David Ponce - - Handle W32 mouse wheel events as mouse click events, like in X. - - * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle - MOUSE_WHEEL_EVENT anymore. - - * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT. - Scrolling down/up the mouse wheel is respectively mapped to mouse - button 4 and 5. - (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs - MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as - WM_MOUSEWHEEL events. - -2003-05-27 Andreas Schwab - - * buffer.c (syms_of_buffer) : Doc fix. - - * xdisp.c (try_window_id): Avoid aborting if PT is inside a - partially visible line. - - * alloc.c (Fgarbage_collect): Fix last change. - -2003-05-26 John Paul Wallington - - * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default. - -2003-05-25 Stefan Monnier - - * window.c (Fset_window_buffer): Add type of `keep_margins'. - (Fset_window_fringes, Fset_window_scroll_bars): Declare before use. - - * window.h (window_box_text_cols): Declare. - - * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps) - (x_draw_vertical_border): Remove unused var `f'. - - * xfaces.c (build_scalable_font_name): Remove `unused var - pixel_size' warning. - - * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning. - - * unexelf.c (unexec): Remove `unused var n' warning. - - * strftime.c (my_strftime_localtime_r): Remove `defined but - unused' warning. - - * process.c (allocate_pty): Remove `unused var stb' and - `cp might be used uninitialized' warnings. - - * dispnew.c (mode_line_string): Remove unused var `f'. - - * coding.c (find_safe_codings): Remove unused var `i'. - - * bytecode.c (Fbyte_code): Remove `unused val' warning. - - * buffer.c (Fkill_buffer): Remove unused var `list'. ++2008-04-05 YAMAMOTO Mitsuharu + - * alloc.c (Fgarbage_collect): Remove `unused var tail' warning. ++ * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]: Use ++ SetMenuItemHierarchicalMenu. + -2003-05-25 Jan Dj,Ad(Brv ++2008-04-05 Jason Rumney + - * frame.c (make_frame): Condition want_fullscreen with - HAVE_WINDOW_SYSTEM. - -2003-05-25 Juanma Barranquero - - * window.c (Fset_window_scroll_bars): Fix typo in argument name. - (Fwindow_scroll_bars): Fix typo in docstring. - -2003-05-24 Kim F. Storm - - The following changes serve several purposes: - - 1) Swap the position of fringes and display margins in windows, i.e. - the fringes are now displayed between the margins and the text area - (by default). - - 2) Allow fringe and scroll bar parameters to be set per-buffer and - per-window (like display margins). Such settings are now stored - in window configurations, preserved when frames are resized, and - copied when windows are split vertically or horizontally. - Several bugs related to display margins have been fixed. - - 3) Consistently use FRAME_FONT and FRAME_FONTSET macros. - - 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code - rather than FRAME_WIDTH (FRAME_FONT (f)). - - 5) Introduce a consistent naming of variables, members and macros - depending on whether their value is measured in pixels or in - canonical columns/lines. Pixel dimensions are named *_width and - *_height, while canonical columns/lines are named *_cols and - *_lines. Pixel positions are named *_x and *_y, while column/line - positions are named *_col and *_line. - - 6) Consolidate more of the X, W32, and MAC gui code by moving - common data into struct frame, and generalize it for the non-gui - case by using suitable defaults. - - 7) Cleanup and consolidate the macros controlling frame and window - layout into frame.h and window.h, and generalize the use of the - various window_box_* functions (enhanced to handle the new fringe - position and the per-window fringe and scroll bar settings). - - * frame.h (struct frame): Rename members height to text_lines, - width to text_cols, window_height to total_lines, window_width to - total_cols, new_height to new_text_lines, new_width to - new_text_cols. All uses changed. - (struct frame): New members which consolidate common members of - x_output, w32_output, and mac_output structures: left_pos, - top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff, - win_gravity, size_hint_flags, border_width, internal_border_width, - line_height, fringe_cols, left_fringe_width, right_fringe_width, - want_fullscreen. All uses changed. - (struct frame): New member column_width contaning the canonical - column width, analogue to line_height. All uses changed. - (struct frame): Rename members scroll_bar_pixel_width to - config_scroll_bar_width, and scroll_bar_cols to - config_scroll_bar_cols. All uses changed. - (struct frame): New member scroll_bar_actual_width which - consolidates and renames the vertical_scroll_bar_extra member of - x_output, w32_output, and mac_output structures. All uses changed. - (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved - from x/w32/macterm.h files. All uses changed. Also change code - which referred to f->output_data...->pixel_height. - (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved - from x/w32/macterm.h files. All uses changed. Also change code - which referred to f->output_data...->pixel_width. - (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed. - Also change code which referred to f->height. - (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed. - Also change code which referred to f->width. - (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses - to update new_text_lines and new_text_cols members directly. - (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from - FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed. - (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from - FRAME_SCROLL_BAR_COLS. All uses changed. - (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS): - Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and - FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed. - (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH) - (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros. - (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH. - (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH. - (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG. - (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro. - (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro. - (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT. - Unconditionally return line_height member (it now has proper value - also for non-window frames). - (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally - return new column_width member (rather than the default font width). - (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH) - (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved - from x/w32/macterm.h files. Unconditionally return corresponding - member of frame structure (they now have proper values also for - non-window frames). - (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH. - Calculate return value from left and right widths. - (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return - internal_border_width member (has proper value for non-window frame). - (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X. - (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y. - (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X. - (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y. - (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW, - consolidated from xterm.h, macterm.h, and w32term.h. - (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL, - consolidated from xterm.h, macterm.h, and w32term.h. - (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from - CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h. - (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from - CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h. - (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW - consolidated from x/mac/w32term.h. - (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL - consolidated from x/mac/w32term.h. - (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from - PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h. - (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from - PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h. - - * window.h (struct window): Rename members left to left_col, - top to top_line, height to total_lines, width to total_cols, - left_margin_width to left_margin_cols, right_margin_width to - right_margin_cols, orig_height to orig_total_lines, orig_top to - orig_top_line. All uses changed. - (struct window): New members left_fringe_width, right_fringe_width, - fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type. - (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT): - New macros primarily used to simplify other macros. - (WINDOW_TOTAL_COLS): New macro. Change relevant code that - referred to XINT (w->width). - (WINDOW_TOTAL_LINES): New macro. Change relevant code that - referred to XINT (w->height). - (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that - referred to XINT (w->width) * canon_x_unit. - (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that - referred to XINT (w->height) * canon_y_unit. - (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that - referred to XINT (w->left). - (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change - all uses and code that referred to XINT (w->left) + XINT (w->width). - (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that - referred to XINT (w->top). - (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that - referred to XINT (w->top) + XINT (w->height). - (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that - referred to XINT (w->left) * canon_x_unit. - (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that - referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit. - (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that - referred to XINT (w->top) * canon_y_unit. - (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that - referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit. - (WINDOW_LEFTMOST_P): New macro. - (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN. - All uses changed. - (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN. - All uses changed. - (WINDOW_BOX_LEFT_EDGE_X): Rename from - WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h. - Do not exclude left fringe width. - (WINDOW_BOX_RIGHT_EDGE_X): Rename from - WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h. - Do not exclude fringe widths. - (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH) - (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros. - Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH, - FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and - FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings. - (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro. - (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR) - (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT) - (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT) - (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS): - New macros. Change code which referenced corresponding - FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS, - FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT, - FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT, - FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to - allow per-window scroll-bar settings. - (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros. - (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that - referred to FRAME_LEFT_SCROLL_BAR_WIDTH. - (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code - that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and - FRAME_SCROLL_BAR_WIDTH. - (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH) - (WINDOW_SCROLL_BAR_AREA_X): New macros. - (WINDOW_HEADER_LINE_HEIGHT): Rename from - WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h. - (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from - WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h. - (WINDOW_BOX_TEXT_HEIGHT): Rename from - WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h. - (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y) - (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y) - (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h. - (WINDOW_LEFT_MARGIN_WIDTH): Rename from - WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h. - (WINDOW_RIGHT_MARGIN_WIDTH): Rename from - WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h. - (window_from_coordinates): Update prototype. - (Fset_window_buffer): Update EXFUN. - (set_window_buffer): Update prototype. - - * dispextern.h (struct glyph_matrix): Rename members window_left_x - to window_left_col, window_top_y to window_top_line. All uses - changed. - (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely - use FRAME_INTERNAL_BORDER_WIDTH macro instead as - internal_border_width is now set to 0 for non-window frames. - (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT) - (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT) - (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT) - (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X) - (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y) - (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y) - (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y) - (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH) - (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P): - Move to window.h and renamed [see window.h changes]. - (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH) - (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros. - (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P): - Use WINDOW_TOTAL_LINES. - (frame_update_line_height): Remove prototype. - - * buffer.h (struct buffer): Rename members measured in columns: - left_margin_width to left_margin_cols, right_margin_width to - right_margin_cols. All uses changed. - New members left_fringe_width, right_fringe_width, - fringes_outside_margins for per-buffer fringe settings. - New members scroll_bar_width and vertical_scroll_bar_type for - per-buffer scroll bar settings. - - * buffer.c (init_buffer_once): Set buffer_defaults and - buffer_local_flags for new buffer-local variables - left_fringe_width, right_fringe_width, fringes_outside_margins, - scroll_bar_width, and vertical_scroll_bar_type. - (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro - default-* variables for them. - - * dispnew.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (mode_line_string): No need to adjust width for mode lines, as it - is already adjusted by the caller. - (marginal_area_string): Handle fringes inside/outside margins. - - * frame.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (make_frame): Initialize left_fringe_width, right_fringe_width, - fringe_cols, scroll_bar_actual_width, border_width, - internal_border_width, column_width, line_height, x_pixels_diff, - y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity - members with values suitable for a non-window frames. - - * gtkutil.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * indent.c: Make (few) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * keyboard.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (make_lispy_event): Use window positions returned from - window_from_coordinates when constructing the lisp event for - MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating - (incorrect) values locally. - (make_lispy_movement): Use window positions returned from - window_from_coordinates when constructing the lisp event, rather - than calculating (incorrect) values locally. - - * scroll.c: Make (some) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and - scroll-bars. - - * sysdep.c: Make (few) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * term.c: Make (some) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * widget.c: Make (few) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * window.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (make_window): Initialize new members - left_margin_cols, right_margin_cols, left_fringe_width, - right_fringe_width, fringes_outside_margins, scroll_bar_width, - and vertical_scroll_bar_type. - (coordinates_in_window): Adapt to new fringe/margin positions - and per-window fringes and scroll-bars. - Fix bug related to incorrectly adjusting coordinates by - frame's internal_border_width (the effect normally negible since - the internal_border_width is typically 0 or 1 pixel, but very - noticeable for an internal_border_width of e.g. 25 pixels). - Upon successful return (other than ON_NOTHING), the coordinates - are now always properly converted to window relative for the - given display element. - (window_from_coordinates): Add new parameters wx and wy to - return the window relative x and y position in the returned - window and part. A null arg means, don't return the position. - All callers changed. - (adjust_window_margins): New function which may reduce the width - of the display margins if a window's text area is too small after - resizing or splitting windows. - (size_window): Fix bug that did not account for display margin - widths when checking the minimum width of a window; use - adjust_window_margins. - (set_window_buffer): Call Fset_window_fringes and - Fset_window_scroll_bars to setup per-window elements. - Add new arg KEEP_MARGINS_P. Non-nil means to keep window's - existing display margin, fringe widths, and scroll bar settings - (e.g. after splitting a window or resizing the frame). - All callers changed. - (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed. - (Fsplit_window): Duplicate original window's display margin, - fringe, and scroll-bar settings; then call Fset_window_buffer with - KEEP_MARGINS non-nil. This fixes a bug which caused a split - window to only preserve the display margins in one of the windows. - When splitting horizontally, call adjust_window_margins on both - windows to ensure that the text area of the new windows is non too - narrow. This fixes a bug which could cause Emacs to trap if the - width of the split window was less than the width of the display - margins. - (window_box_text_cols): Rename from window_internal_width. - All uses changed. Adapt to per-window fringes and scroll bars. - Fix bug that caused vertical separator to be subtracted also on - window frames. Fix another bug that did not reduce the returned - value by the columns used for display margins. - (window_scroll_line_based): Fix bug related to scrolling too much - when display margins are present (implicitly fixed by the fix to - window_box_text_cols). - (scroll_left, scroll_right): Fix bug related to scrolling too far - by default when display margins are present (implicitly fixed by - the fix to window_box_text_cols). - (struct saved_window): Rename members left to left_col, top to - top_line, width to total_cols, height to total_lines, orig_top to - orig_top_line, orig_height to orig_total_lines. All uses changed. - New members left_margin_cols, right_margin_cols, - left_fringe_width, right_fringe_width, fringes_outside_margins, - scroll_bar_width, and vertical_scroll_bar_type for saving - per-window display elements. - (Fset_window_configuration): Restore display margins, fringes, - and scroll bar settings. This fixes a bug which caused display - margins to be discarded when saving and restoring a window - configuration. - (save_window_save): Save display margins, fringes, and scroll bar - settings. This fixes a bug which caused display margins to be - discarded when saving and restoring a window configuration. - (Fset_window_margins): Do nothing if display margins are not - really changed. Otherwise, call adjust_window_margins to ensure - the text area doesn't get too narrow. This fixes a bug which - could cause Emacs to trap if setting display margins wider than - the width of the window. - (Fset_window_fringes): New defun to allow user to specifically set - this window's fringe widths and position vs. display margins. - (Fwindow_fringes): New defun to return window's actual fringe settings. - (Fset_window_scroll_bars): New defun to allow user to specifically - set this window's scroll bar width and position. - (Fwindow_scroll_bars): New defun to return window's actual scroll - bar settings. - (compare_window_configurations): Also compare display margins, - fringes, and scroll bar settings. - (syms_of_window): Defsubr new defuns for fringe and scroll bars. - - * xdisp.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (window_box_width): Adapt to per-window fringes and scroll bars, - and new fringe vs. display margin position. Note that returned - value is no longer guaranteed to be a whole multiple of the frame - column width, since per-window fringes may now be any width. - (window_box_left_offset): New function like window_box_left, but - value is relative to left border of window (rather than frame). - (window_box_right_offset): New function like window_box_right, - but value is relative to left border of window. - (window_box_left): Adapt to per-window fringes and scroll bars, - and new fringe vs. display margin position. Simplify by using - WINDOW_LEFT_EDGE_X and window_box_left_offset. - (window_box): Allow null args for unnecessary return values; - change/simplify relevant callers. - (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars, - and new fringe vs. display margin position. - Use window_box_left_offset and window_box_right_offset - (get_glyph_string_clip_rect): Adapt to per-window fringes and - scroll bars, and new fringe vs. display margin position. - Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH. - (draw_fringe_bitmap): Rework to handle per-window fringes and new - fringe vs. display margin position. - (hscroll_window_tree): Use window_box_width instead of window_box. - (redisplay_window): Adapt to per-window scroll bars. - (draw_glyphs): Rework to handle per-window fringes and scroll - bars, and new fringe vs. display margin position. - Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left. - (x_clear_end_of_line): Adapt to per-window fringes and scroll - bars, and new fringe vs. display margin position. Fix bug which - increased total width of full_width rows by width of scroll bars - although window's total width already includes that. - (x_fix_overlapping_area): Simplify using window_box_left_offset. - (expose_area): Simplify using window_box_left_offset. - (x_draw_vertical_border): Handle per-window scroll bar settings, - mixing windows with left, right and no scroll bars. - - * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to - where it's used in x_list_fonts (for clarity). - (frame_update_line_height): Remove unused function; functionality - is now done directly when setting the default font in x_set_font. - - * xfns.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * xmenu.c: Make (some) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * xterm.h (struct x_output): Move members left_pos, top_pos, - border_width, pixel_height, pixel_width, line_height, - internal_border_width, vertical_scroll_bar_extra, - left_fringe_width, right_fringe_width, fringe_cols, - fringes_extra, win_gravity, size_hint_flags, want_fullscreen, - x_pixels_diff, and y_pixels_diff to struct frame (frame.h). - (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h. - (FRAME_DEFAULT_FONT_WIDTH): Remove macro. - (PIXEL_WIDTH, PIXEL_HEIGHT) - (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH) - (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to - frame.h and renamed [see frame.h changes]. - (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH) - (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL) - (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h - and renamed [see frame.h changes]. - - * xterm.c: Make (several) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars. - (scroll_run): Adapt to new fringe position. - (glyph_rect): Use window coordinates returned from - window_from_coordinates rather than frame_to_window_pixel_xy. - (XTset_vertical_scroll_bar): Adapt to per-window fringes and - scroll-bars. - (handle_one_xevent): Simplify a USE_GTK conditional. - (x_clip_to_row): Remove superfluous whole_line_p arg and code - (fringes are now inside margins, i.e. always in the clipping area). - All callers changed. - (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT - directly, then call compute_fringe_widths. Don't call - frame_update_line_height. - - * w32term.h (struct w32_output): Move members left_pos, top_pos, - border_width, pixel_height, pixel_width, line_height, - internal_border_width, vertical_scroll_bar_extra, - left_fringe_width, right_fringe_width, fringe_cols, - fringes_extra, win_gravity, size_hint_flags, want_fullscreen, - x_pixels_diff, and y_pixels_diff to struct frame (frame.h). - (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h. - (FRAME_DEFAULT_FONT_WIDTH): Remove macro. - (PIXEL_WIDTH, PIXEL_HEIGHT) - (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH) - (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to - frame.h and renamed [see frame.h changes]. - (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH) - (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL) - (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h - and renamed [see frame.h changes]. - - * w32term.c: Make (several) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars. - (glyph_rect): Use window coordinates returned from - window_from_coordinates rather than frame_to_window_pixel_xy. - (XTset_vertical_scroll_bar): Adapt to per-window fringes and - scroll-bars. - (w32_clip_to_row): Remove superfluous whole_line_p arg and code - (fringes are now inside margins, i.e. always in the clipping area). - All callers changed. - (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT - directly, then call compute_fringe_widths. Don't call - frame_update_line_height. - - * w32console.c: Make (few) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * w32fns.c: Make (many) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * w32menu.c: Make (few) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * macterm.h (struct mac_output): Move members left_pos, top_pos, - border_width, pixel_height, pixel_width, line_height, - internal_border_width, vertical_scroll_bar_extra, - left_fringe_width, right_fringe_width, fringe_cols, - fringes_extra, win_gravity, size_hint_flags, want_fullscreen, - x_pixels_diff, y_pixels_diff to struct frame (frame.h). - (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h. - (FRAME_DEFAULT_FONT_WIDTH): Remove macro. - (PIXEL_WIDTH, PIXEL_HEIGHT) - (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH) - (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to - frame.h and renamed [see frame.h changes]. - (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH) - (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL) - (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h - and renamed [see frame.h changes]. - - * macterm.c: Make (several) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars. - (glyph_rect): Use window coordinates returned from - window_from_coordinates rather than frame_to_window_pixel_xy. - (XTset_vertical_scroll_bar): Adapt to per-window fringes and - scroll-bars. - (x_clip_to_row): Remove superfluous whole_line_p arg and code - (fringes are now inside margins, i.e. always in the clipping area). - All callers changed. - (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT - directly, then call compute_fringe_widths. Don't call - frame_update_line_height. - - * macfns.c: Make (several) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0. - - * macmenu.c: Make (few) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - - * msdos.h (struct x_output): Remove members left_pos, top_pos, - and line_height, and use corresponding new members in struct - frame. All uses changed. - (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros; - superseeded by corresponding macros in frame.h. - - * msdos.c: Make (several) trivial substitutions for renamed and - new macros in dispextern.h, frame.h and window.h. - (IT_note_mouse_highlight): Use updated window coordinates returned - by window_from_coordinates, rather than adjusting them locally. - (internal_terminal_init): No need to initialize line_height here; - it now defaults to 1. - -2003-05-24 Stefan Monnier - - * keyboard.c (read_key_sequence): Adjust fkey and keytran when - dropping `down' events. - -2003-05-24 Andreas Schwab - - * coding.c (find_safe_codings): Fix last change. - -2003-05-24 Istvan Marko (tiny change) - - * xfns.c (x_window): Fix typo from 2003-05-21 change. - -2003-05-23 Stefan Monnier - - * xdisp.c (display_mode_element): Increase max depth. - Simplify the error handling code. Use a different error string - for the case where we hit the depth limit. - - * lisp.h (Vfundamental_mode_abbrev_table): Don't declare. - - * buffer.c (reset_buffer_local_variables): Remove redundant setting. - -2003-05-21 Stefan Monnier - - * intervals.c (get_local_map): Don't get char-property of previous - point any more: get_pos_property already does it and better. - -2003-05-21 Dave Love - - [Merged from unicode branch.] - - * xfns.c (x_window, x_window): Use use_xim. - - * xterm.c (use_xim): Initialize. - (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim. - (x_term_init): Maybe set use_xim. - - * xterm.h (use_xim) [HAVE_X_I18N]: Declare. - -2003-05-21 Jason Rumney - - * unexw32.c (_start): Remove _fmode initialization. - - * emacs.c (main) [WINDOWSNT]: Move it here. - -2003-05-20 Dave Love - - * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional. - -2003-05-19 Richard M. Stallman - - * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified - as value for QCfont attribute. - (realize_default_face): lface should already exist; crash if not. - Specify 0 for FORCE_P when calling set_lface_from_font_name. - - * frame.c (Fignore_event): Doc fix. - -2003-05-19 Kenichi Handa - - * coding.c (decode_coding_string): Handle post-read-conversion - even if the coding doesn't require decoding. - -2003-05-18 Richard M. Stallman - - * callproc.c (Fcall_process_region): Doc fix. - -2003-05-17 Stefan Monnier - - * lread.c (Fload): Print a message if package is obsolete. - - * window.c (Fselect_window): Add optional `norecord' arg. - (select_window_1): Fold into Fselect_window. - (select_window_norecord): New function. - (temp_output_buffer_show): Use it. Preserve current buffer. - - * window.h (Fselect_window): Update declaration. - - * window.c (delete_window, Fother_window, Fset_window_configuration): - * minibuf.c (read_minibuf): - * macterm.c (x_new_focus_frame): - * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame): - * callint.c (Fcall_interactively): - * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window. - - * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window. - -2003-05-17 David Kastrup - - * process.c (read_process_output): Back out change from 2003-03-09. - -2003-05-17 Stefan Monnier - - * editfns.c (get_pos_property): Don't assume that `object' = nil. - - * textprop.c (text_property_stickiness): New arg `buffer'. - - * intervals.h (text_property_stickiness): New arg `buffer'. - (get_pos_property): Declare. - - * intervals.c (get_local_map): Use get_pos_property, to obey - stickiness and empty overlays. - (create_root_interval, graft_intervals_into_buffer): Use BEG. - (merge_properties, intervals_equal, merge_properties_sticky): - Use XCAR, XCDR. - (adjust_for_invis_intang): Pass new arg to text_property_stickiness. - -2003-05-17 Richard M. Stallman - - * minibuf.c (read_minibuf): If buffer is empty, record the default - in the history. - (Fminibuffer_complete_word): When deleting the overlap, take account - of its real position. - - * fns.c (map_char_table): Fix previous change. - - * syntax.c (find_defun_start): - When open_paren_in_column_0_is_defun_start, - return beginning of buffer. - - * lisp.h (map_char_table): Declare added arg. - - * fns.c (map_char_table): New arg TABLE gets the master table. - All calls changed. - Process default and inheritance, resorting to Faref if necessary. - - * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap) - (Faccessible_keymaps): Pass new arg to map_char_table. - - * fontset.c (Ffontset_info): Pass new arg to map_char_table. - - * casetab.c (set_case_table): Pass new arg to map_char_table. - - * data.c (let_shadows_buffer_binding_p): Make target of p volatile. - - * lisp.h (specbinding_func): New typedef. - (struct specbinding): Use specbinding_func, to put the `volatile' - in the right place. - - * alloc.c (Fgarbage_collect): Cast pointers into specpdl - to avoid GCC warning. - -2003-05-16 Ralph Schleicher - - * fileio.c (Fdelete_file): Handle symlinks pointing to directories. - -2003-05-15 Stefan Monnier - - * keyboard.c (apply_modifiers): Don't fill the other cache. - -2003-05-14 Stefan Monnier - - * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users. - - * window.h (Qwindowp, Qwindow_live_p, Vwindow_list) - (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer) - (Fget_buffer_window, Fsave_window_excursion, Fsplit_window) - (Fset_window_configuration, Fcurrent_window_configuration) - (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at) - (Fpos_visible_in_window_p, mark_window_cursors_off) - (window_internal_height, window_internal_width, Frecenter) - (Fscroll_other_window, Fset_window_start, temp_output_buffer_show) - (replace_buffer_in_all_windows, init_window_once, init_window) - (syms_of_window, keys_of_window): Move from lisp.h. - * lisp.h: Move window.c declarations to window.h. - - * bytecode.c: Include window.h. - * emacs.c: Include window.h. - - * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key. - (keyremap): Add `parent' field. - (keyremap_step): Use it. Remove `parent' argument. - (read_key_sequence): Setup and use the new `parent' field. - -2003-05-11 Stefan Monnier - - * keyboard.c (adjust_point_for_property): Ensure termination. - -2003-05-10 Stefan Monnier - - * keyboard.c (follow_key): Remove dead variable `did_meta'. - (access_keymap_keyremap, keyremap_step): New funs, extracted from the - duplicated handling of function-key-map and key-translation-map - in read_key_sequence. - (read_key_sequence): Use them. - - * keyboard.c (adjust_point_for_property): Try harder to move point - to the non-sticky end of an invisible property. - - * xdisp.c (single_display_prop_intangible_p): Make `space' display - property intangible as well. - -2003-05-10 Andreas Schwab - - * xmenu.c (single_menu_item): Change last parameter to void* to - avoid warning. - -2003-05-09 Richard M. Stallman - - * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc. - Bind Qinhibit_modification_hooks to t so there will be no GC. - Rename local `tem' to `save_deactivate_mark'. - - * eval.c (specpdl_ptr): Declare volatile. - (unbind_to): Copy the whole binding and decrement specpdl_ptr - before doing the work of unbinding it. - - * lisp.h (struct specbinding): Declare elements volatile. - (specpdl_ptr): Declare volatile. - - * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling. - - * alloca.c: Test DO_BLOCK_INPUT rather than `emacs' - for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h. - -2003-05-08 Dave Love - - * coding.c (Vlast_coding_system_used): Doc fix. - -2003-05-07 Jason Rumney - - * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even - when system does not support them. - -2003-05-05 Stefan Monnier - - * fileio.c (Qwrite_region_annotate_functions): New var. - (build_annotations): Use it to process the global part of the hook. - (syms_of_fileio): Init and staticpro it. - - * keyboard.c (safe_run_hooks_error): Display a message instead of - silently ignoring the error. - -2003-05-03 Stefan Monnier - - * keyboard.c (input_available_signal): Mark static. - (menu_bar_items): Use map_keymap. - (menu_bar_one_keymap): Remove. - (menu_bar_item): Adjust arglist (for use in map_keymap). - Properly hide a second binding when not both are keymaps. - - * xmenu.c (struct skp): New struct, to pass args through map_keymap. - (single_keymap_panes): Use it and map_keymap. - (single_menu_item): Use skp as well. - - * keymap.h (map_keymap_function_t): New type. - (map_keymap): Declare. - - * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap) - (map_keymap_call, Fmap_keymap): New functions. - (syms_of_keymap): Defsubr map-keymap. - -2003-05-02 Jan Dj,Ad(Brv - - * gtkutil.c (create_dialog, make_widget_for_menu_item) - (make_menu_item, create_menus, xg_update_menu_item): Don't call - ..._with_mnemonic functions for menu items. - -2003-05-01 Kenichi Handa - - * coding.c (coding_system_accept_latin_extra_p): Delete this - function. - (find_safe_codings): Pay attention to - the property tranlsation-table-for-encode of each codings. - (syms_of_coding): Give Qtranslation_table the extra slot number 2. ++ * image.c (pbm_load): Allow color values up to 65535. ++ Throw an error if max_color_idx is outside the supported range. ++ Report an error when image size is invalid. ++ Read two bytes at a time when raw images have max_color_idx above 255. + -2003-05-01 Stefan Monnier ++2008-04-05 Eli Zaretskii + - * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil. ++ * w32.c (readdir): If FindFirstFile/FindNextFile return in ++ cFileName a file name that includes `?' characters, use the 8+3 ++ alias in cAlternateFileName instead. + -2003-04-30 Stefan Monnier ++2008-04-05 Kenichi Handa + - * eval.c (unbind_to): Don't handle symbol = Qnil any more. ++ * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't ++ append "CCL: Quitted" when the CCL program is quitted. ++ (setup_ccl_program): Initialize ccl->quit_silently to zero. + - * lisp.h (CHECK): Wrap args in parenthesis. - (specbind): Fix doc: symbol = Qnil is not supported any more. ++ * ccl.h (struct ccl_program): New member quit_silently. + - * bytecode.c (Fbyte_code) : - Use Fprogn rather than 0 and Qnil. +2008-04-05 Chong Yidong - * keyboard.c (parse_modifiers_uncached): Parse `down', `drag', - `double', and `triple' modifiers as well. + * search.c (compile_pattern_1): Treat non-nil and non-string of + search-spaces-regexp as nil. -2003-04-30 Richard M. Stallman + * minibuf.c (Fassoc_string): Tweak docstring. - * keyboard.c (echo_char): Don't clear out a dash that follows a space. +2008-04-05 Eli Zaretskii - * alloc.c (abort_on_gc): New variable. - (Fgarbage_collect): Abort if abort_on_gc is set. + * dired.c (Ffile_attributes): Support inode numbers wider than 32 + bits. Remove ugly WINDOWSNT-specific kludge introduced on + 2008-03-14 to force inode be positive. - * lisp.h (abort_on_gc): Add decl. + * w32.c (sys_chown, stat, fstat): Use S_* constants instead of + _S_* ones, since we now use our own sys/stat.h. + (stat, fstat): Don't mangle the inode number. + (init_user_info): Don't restrict UID and GID to 0-60000 range. - * eval.c (Fsignal): Clear abort_on_gc. +2008-04-04 Stefan Monnier - * editfns.c (Fformat): Set abort_on_gc during first scan of format. - Reinit FORMAT_START and END before second scan. + * frame.h (struct frame): Give one more bit to `visible' since we use + values larger than 1 to indicate obscured frames on ttys. - * xdisp.c (move_it_vertically_backward): Do the final big else - even if nlines is 0. + * keymap.c (Qkeymap_canonicalize): New var. + (Fmap_keymap_internal): New fun. + (describe_map): Use keymap-canonicalize. - * xdisp.c (redisplay_internal): Finish the per-frame loop - even if redisplay is suspended by input. + * undo.c (last_boundary_buffer, last_boundary_position): New vars. + (Fundo_boundary): Set them. + (syms_of_undo): Initialize them. + (record_point): Use them instead of last_point_position*. + (last_undo_buffer): Change type. -2003-04-24 Andrew Choi +2008-04-04 Jason Rumney - * macterm.c (x_list_fonts): Return all fonts that match if - maxnames = -1. + * w32uniscribe.c (uniscribe_check_otf): Fix last change. + (uniscribe_check_otf): Add GC protection before consing. + Rearrange loop for counting features. -2003-04-25 Kenichi Handa +2008-04-03 Stefan Monnier - * syntax.c (skip_chars): Fix previous change. + * insdel.c (insert_from_buffer_1): Don't compare bytes in destination + buffer with byte-size of source buffer. -2003-04-24 Kenichi Handa +2008-04-03 Chong Yidong - * syntax.c (skip_chars): Make the code faster by using the common - technique of *p, *stop, and *endp. + * callint.c (Fcall_interactively): Handle temporary region even + when shift-select-mode is off. -2003-04-23 Jan Dj,Ad(Brv +2008-04-03 Jason Rumney - * xdisp.c (update_tool_bar): BLOCK_INPUT before calling - tool_bar_items so GTK tool bar expose callback does not access items - being updated. + * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec. -2003-04-19 Stefan Monnier +2008-04-03 Kenichi Handa - * eval.c (Fapply): Undo last change and add a comment about why. + * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO. + (CATEGORY_MASK_UTF_16): Likewise. + (detect_coding_utf_16): Add heuristics to reject utf-16 for a + binary file. + (detect_coding): Add null-byte detection for a binary file. + (detect_coding_system): Likewise. -2003-04-18 Miles Bader +2008-04-03 Jason Rumney - * data.c (Faset): Calculate nbytes earlier, to satisfy the now - pickier PARSE_MULTIBYTE_SEQ. + * w32uniscribe.c: New file. -2003-04-17 Stefan Monnier + * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c. - * eval.c (For, Fand, Fprogn, un_autoload, do_autoload): - Use XCDR, XCAR, CONSP. - (Fdefmacro): Fix docstring. Use XCAR, XCDR. - (Fapply): Remove unnecessary GCPRO. + * w32font.h (uniscribe_check_otf): Declare for w32font.c. - * doc.c (Fsubstitute_command_keys): Remove spurious casts. + * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot) + (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi) + (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya) + (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri) + (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic) + (Qphonetic): New symbols. + (syms_of_w32font): Initialize them. + (font_supported_scripts): Use them. + (w32font_list_family): List all charsets. + (w32font_text_extents, recompute_cached_metrics): Fix metric + calculations. + (w32_enumfont_pattern_entity): Make full_type a DWORD. + Give opentype fonts their own format. + (font_matches_spec): New arguments backend and logfont. + Handle :otf spec for uniscribe backend. + (add_font_entity_to_list): Match truetype fonts in uniscribe backend. + (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied. - * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used. + * w32fns.c (Fx_create_frame): Conditionally register uniscribe + font backend. + (globals_of_w32fns): Initialize uniscribe font backend. - * buffer.h: Don't hardcode BEG==1. + * makefile.w32-in (CONFIG_H): New variable. Use it to clean up + dependencies. + (w32uniscribe.$(O)): New file to build. + (FONT_OBJ): Include w32uniscribe.$(O). + (LIBS): Add uniscribe libraries. - * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR. + * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val. -2003-04-16 Richard M. Stallman +2008-04-02 Chong Yidong - * xdisp.c (try_window, try_window_reusing_current_matrix): - When at end of window, set window_end_pos to Z-ZV. + * callint.c (Vshift_select_mode): New var. + (Finteractive): Document new ^ spec. + (Fcall_interactively): Call handle-shift-selection if the ^ spec + is present. - * buffer.c (Foverlay_recenter): Doc fix. + * keyboard.c (Vthis_command_keys_shift_translated): New var. + (command_loop_1): Avoid running the direct display versions of + forward-char and backward-char if shift-selection may occur. + (read_key_sequence): Set Vthis_command_keys_shift_translated if + shift-translation takes place. -2003-04-14 Stefan Monnier + * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to + avoid clobbering by define-minor-mode. - * dispnew.c (Fsit_For): Support XEmacs-style arg list. + * cmds.c (Fforward_char, Fbackward_char, Fforward_line) + (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec. -2003-04-14 Andrew Choi + * syntax.c (Fforward_word): Add ^ interactive spec. - * macterm.c (mac_check_for_quit_char): Don't check more often than - once a second. + * window.c (Fscroll_up, Fscroll_down, Fscroll_left) + (Fscroll_right): Add ^ interactive spec. -2003-04-11 Stefan Monnier +2008-04-01 Stefan Monnier - * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT - specially, so that they can't hide an implicit switch-frame event. - (make_lispy_event): Handle SELECT_WINDOW_EVENT. - (head_table): Use switch-frame as event_kind for select-window. - (keys_of_keyboard): Don't bind [select-window] in special-event-map. + * xdisp.c (try_window_id): Don't forget to reset delta_bytes. - * editfns.c (Fformat): Lisp_Object/int mixup. - (format2): Remove unused var numargs. + * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup. -2003-04-11 Kenichi Handa + * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove. - * fileio.c (Vafter_insert_file_adjust_coding_function): Delete. - (Qafter_insert_file_set_coding): New variable. - (syms_of_fileio): Initialize and staticpro it. Delete declaration - for after-insert-file-adjust-coding-function. - (Finsert_file_contents): Call Qafter_insert_file_set_coding - instead of Vafter_insert_file_adjust_coding_function. +2008-03-31 Juri Linkov -2003-04-11 Kenichi Handa + * window.c (Fdisplay_buffer): Reinitialize `tem' to nil. - * lisp.h (temp_echo_area_glyphs): Adjust prototype. +2008-03-30 Jan Djärv - * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp - string. Callers changed. + * gtkutil.c (xg_set_geometry): Fix indentation. + (xg_resize_outer_widget): Remove. + (x_wm_size_hint_off): Fix indentation. + (xg_frame_set_char_size): Call flush_and_sync after + gtk_window_resize. + (x_wm_set_size_hint): Pass NULL as geometry window to + gtk_window_set_geometry_hints due to Gtk+ bug nr 68668. + Add menu bar and tool bar height to base height. + (xg_update_frame_menubar, free_frame_menubar) + (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback) + (update_frame_tool_bar, free_frame_tool_bar): + Change xg_resize_outer_widget to xg_frame_set_char_size. -2003-04-10 Kenichi Handa +2008-03-30 Michael Albinus - * fileio.c (Vafter_insert_file_adjust_coding_function): New variable. - (syms_of_fileio): Declare it as a lisp variable. - (Finsert_file_contents): - Call Vafter_insert_file_adjust_coding_function before calling - decode-format. + * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol. + (Fdbus_call_method): New parameter TIMEOUT. + (dbus-send-signal): Optimize UNGCPRO call. -2003-04-09 Jan Dj,Ad(Brv +2008-03-29 Juri Linkov - * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to - get GtkAdjustment as widget now is a GtkRange. + * window.c (Fdisplay_buffer): Move call to + Vsplit_window_preferred_function out of conditions that check + if window is eligible for vertical splitting. + When Vsplit_window_preferred_function is non-nil, call it and use + its non-nil return value as window. Otherwise, continue doing + vertical splitting using Fsplit_window with arg horflag=nil. + (syms_of_window) : Change the + default value from `split-window' to nil. - * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on - GtkRange to avoid memory leak. +2008-03-29 Juri Linkov -2003-04-09 Kenichi Handa + * callint.c (Fcall_interactively): Revert 2008-03-16 change + for interactive code letters 'b' and 'B'. - * xfaces.c (Vface_font_rescale_alist): New variable. - (struct font_name): New member rescale_ratio. - (font_rescale_ratio): New function. - (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio. - (better_font_p): On comparing point sized, pay attention to - recale_ratio member of fonts. - (build_scalable_font_name): Reflect font->rescale_ratio in the - font name. - (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable. +2008-03-29 Eli Zaretskii - * lread.c (read1): Before calling index, check if the 2nd - arguemnt is in ASCII range. + * fileio.c (Fexpand_file_name): Convert the value of $HOME to a + multibyte string. -2003-04-08 Richard M. Stallman +2008-03-29 Stefan Monnier + + * keyboard.c (pending_funcalls): New var. + (timer_check): Run it. + (syms_of_keyboard): Initialize it. + * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions) + (Vdelete_terminal_functions): New vars. + (syms_of_terminal): Initialize them. + (Fdelete_terminal): Run delete-terminal-functions. + * xdisp.c (safe_eval): Rewrite. + (safe_call2): New fun. + * frame.c (Qdelete_frame_functions): New var. + (syms_of_frame): Initialize it. + (Fdelete_frame): Use it and use safe_call2 and pending_funcalls. + * lisp.h (safe_call2, pending_funcalls): Declare. - * fileio.c (Ffile_symlink_p): Doc fix. +2008-03-28 Andreas Schwab - * editfns.c (Fformat): Translate positions of text properties - in the format string to apply them to the result. + * indent.c (Fmove_to_column): Move declaration before statements. - * fileio.c (Finsert_file_contents): Doc fix. - (syms_of_fileio) : Doc fix. +2008-03-27 Stefan Monnier -2003-04-08 Ivan Zakharyaschev (tiny change) + * frame.h (enum fullscreen_type): Give it a name. Move it before use. + (struct frame): Use bit fields for boolean vars. - * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN. + * process.c (server_accept_connection): Simplify naming. + (emacs_get_tty_pgrp): Use SDATA. -2003-04-08 Steven Tamm + * coding.c (decode_coding_object): Fix last change. - * mac.c (init_mac_osx_environment): Switch libexec and bin so - that self-contained application finds libexec files. +2008-03-27 Jason Rumney -2003-04-08 Kenichi Handa + * w32fns.c (start_hourglass): Suppress hourglass on tty frames. - * coding.c (code_convert_region_unwind): - Set Vlast_coding_system_used to the argument. - (code_convert_region): If post-read-conversion function changed - the value of last-coding-sytem, keep the new value in - coding->symbol so that it won't be overridden. - (run_pre_post_conversion_on_str): Likewise. - (coding_system_accept_latin_extra_p): New function. - (find_safe_codings): Pay attention to characters registered in - latin-extra-code-table. +2008-03-27 Kenichi Handa -2003-04-07 Thien-Thi Nguyen + * charset.c (Fdefine_charset_internal): Change the way of + registering charsets in Vcharset_order_list. + (syms_of_charset): Make the charset `eight-bit' supplementary. - * Makefile.in (md5.o): Add missing dependency info. +2008-03-26 Alexandre Oliva (tiny change) -2003-04-06 Richard M. Stallman + * regex.c (EXTEND_BUFFER): Change order of pointer addition + operations, to avoid having the difference between pointers + overflow. - * xselect.c (x_handle_selection_request): Move UNGCPRO to very end. +2008-03-26 Stefan Monnier - * marker.c (verify_bytepos): New function. + * indent.c (check_display_width): New fun. + (scan_for_column): Use it. - * intervals.c (set_intervals_multibyte_1): When becoming - multibyte, adjust right and left child sizes to a whole set of - characters. If an interval gets zero total-length, delete it. - If an interval consists of just its children, delete one of them. + * data.c (syms_of_data): Mark most-positive-fixnum and + most-negative-fixnum as constants. - * intervals.h (CHECK_TOTAL_LENGTH): New macro. - * intervals.c: Add many calls to CHECK_TOTAL_LENGTH. + * xdisp.c (redisplay_internal): Reset selected_frame earlier. - * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted. - All calls deleted. - (lisp_malloc): Do the work here directly. + * indent.c (scan_for_column): Extract from current_column_1. + Merge with the same code from Fmove_to_column. + (current_column_1, Fmove_to_column): Use it. -2003-04-06 Gareth Jones (tiny change) +2008-03-25 Stefan Monnier - * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub - char tables. + * keymap.c (map_keymap_internal): New fun. + (map_keymap): Use it. + (Fmap_keymap_internal): New fun. + (Fmap_keymap): Remove left-out test from before make_save_value. -2003-04-04 Kenichi Handa + * keymap.c (Fmap_keymap): Use `map-keymap-sorted. - * editfns.c (Fformat): Use a copy of FORMAT string so that we can - destructively change "%S" to "%s". + * frame.c (Fmodify_frame_parameters, x_set_frame_parameters): + Use XCAR/XCDR. -2003-04-03 Miles Bader + * process.h (struct Lisp_Process): Remove filter_multibyte. + * process.c (QCfilter_multibyte): Remove. + (setup_process_coding_systems): Don't use filter_multibyte. + (Fstart_process, Fmake_network_process): Don't set filter_multibyte. + (read_process_output): Don't adjust multibyteness to filter_multibyte. + (Fset_process_filter_multibyte): Change the coding-system to + approximate the previous behavior. + (Fprocess_filter_multibyte_p): Get the multibyteness straight from the + coding-system. - * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is - always set. + * coding.c (decode_coding_object): When not decoding into a buffer, + obey the coding system's preference of (uni|multi)byte. -2003-04-01 Dave Love +2008-03-24 Stefan Monnier - * xfns.c (xpm_lookup_color): Grok "opaque". - -2003-03-31 Andrew Choi - - * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report - parent window ID. - - * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols. + * casefiddle.c (casify_object): Avoid pathological N^2 worst case if + every char is changed and has a different byte-length. + (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word): + Fix int -> EMACS_INT. - * macterm.h (struct mac_output): Define x_pixels_diff and - y_pixels_diff. +2008-03-23 David Hansen (tiny change) -2003-03-31 Juanma Barranquero - - * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on - blockinput.h and files included from it. + * dbusbind.c (xd_read_message): Remove extra copying of message + strings. Check for NULL `interface' or `member'. -2003-03-31 Kim F. Storm - - The following changes consolidates the common code related to - frame-parameter handling from the xfns.c, w32fns.c, and macfns.c - files into frame.c. - - * frame.c: Include blockinput.h. - (Vx_resource_name, Vx_resource_class, Qx_frame_parameter) - (Qx_resource_name, Qface_set_after_frame_default): Define vars here. - (Qauto_raise, Qauto_lower, ...): Define all frame parameter - related vars here. - (struct frame_parm_table, frame_parms): New table for describing - frame parameters and their associated Q-variable. - The order of the parameters corresponds to the sequence of the - frame_parm_handlers table in redisplay_interface. - (x_fullscreen_move, x_set_frame_parameters) - (x_report_frame_params, x_set_fullscreen, x_set_line_spacing) - (x_set_screen_gamma, x_set_font, x_set_fringe_width) - (x_set_border_width, x_set_internal_border_width, x_set_visibility) - (x_set_autoraise, x_set_autolower, x_set_unsplittable) - (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type): - Generic functions for processing of frame parameters. - (validate_x_resource_name, xrdb_get_resource, Fx_get_resource) - (display_x_get_resource, x_get_resource_string): Functions for - generic access to X resources. - (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg) - (x_default_parameter, Fx_parse_geometry): Functions for generic - access to frame parameters. - (x_figure_window_size): Generic calculation of frame size. - Fixed to add space needed for tool bar. Also setup size_hint_flags. - (syms_of_frame): Intern and staticpro frame parameter variables. - Defvar_lisp Vx_resource_class and Vx_resource_name here. - Defsubr Sx_get_resource and Sx_parse_geometry. - - * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame - parameter related vars defined in frame.c. - (EMACS_CLASS): Define here. - (enum FULLSCREEN_*): Define here. - (x_set_scroll_bar_default_width, x_wm_set_icon_position) - (x_set_offset, x_new_font, x_new_fontset): Add prototypes. - (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params) - (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font) - (x_set_fringe_width, x_set_border_width, x_set_internal_border_width) - (x_set_visibility, x_set_autoraise, x_set_autolower) - (x_set_unsplittable, x_set_vertical_scroll_bars) - (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name) - (x_figure_window_size): Add prototypes. - - * dispextern.h (frame_parm_handler): New typedef. - (struct redisplay_interface): New member frame_parm_handlers. - (enum resource_types): Move declaration here. - (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg) - (x_default_parameter): Add prototypes. - - * window.c: Remove extern decl for frame parameter vars. - (change_window_heights): New generic function; - replaces x_change_window_heights. All users changed. - - * window.h (change_window_heights): Add prototype. - - * xfaces.c: Remove extern decl for frame parameter vars. - - * xterm.h (EMACS_CLASS): Remove. Use generic define. - (struct w32_display_info): Fix type of xrdb member. - (enum FULLSCREEN_*): Remove. - Remove prototypes for generic functions (in frame.h). - - * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame - parameters now defined in frame.h and frame.c. - (Vx_resource_name): Remove. Use generic var. - (enum x_frame_parms): Remove (bogus, unused enum). - (check_x_display_info): Make non-static (for frame.c). - (struct x_frame_parm_table, x_frame_parms): Remove. - (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params) - (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font) - (x_set_border_width, x_set_internal_border_width, x_set_visibility) - (x_change_window_heights, x_set_autoraise, x_set_autolower) - (x_set_vertical_scroll_bars, x_set_scroll_bar_width) - (validate_x_resource_name, Fx_get_resource, x_get_resource_string) - (x_default_parameter, Fx_parse_geometry, x_figure_window_size): - Remove. Use generic functions instead. - (enum resource_types): Remove. - (x_set_scroll_bar_default_width): New global function (for frame.c). - (Fx_create_frame): Depend on x_figure_window_size to add space for - toolbar and setup size_hint_flags. - (x_frame_parm_handlers): New table for redisplay_interface. - (syms_of_xfns): Don't intern/staticpro removed vars. - - * xterm.c: Remove unnecessary extern declarations. - (x_fullscreen_adjust): Remove. Use generic instead. - (x_redisplay_interface): Add x_frame_parm_handlers member. - - * w32gui.h (XrmDatabase): New (dummy) typedef. - - * w32term.h (EMACS_CLASS): Remove. Use generic define. - (struct w32_display_info): Fix type of xrdb member. - (enum FULLSCREEN_*): Remove. - (x_fullscreen_adjust): Remove prototype. - - * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame - parameters now defined in frame.h and frame.c. - (Vx_resource_name): Remove. Use generic var. - (enum x_frame_parms): Remove (bogus, unused enum). - (check_x_display_info): Make non-static (for frame.c). - (struct x_frame_parm_table, x_frame_parms): Remove. - (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params) - (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font) - (x_set_border_width, x_set_internal_border_width, x_set_visibility) - (x_change_window_heights, x_set_autoraise, x_set_autolower) - (x_set_vertical_scroll_bars, x_set_scroll_bar_width) - (validate_x_resource_name, Fx_get_resource, x_get_resource_string) - (x_default_parameter, Fx_parse_geometry, x_figure_window_size): - Remove. Use generic functions instead. - (enum resource_types): Remove. - (x_set_scroll_bar_default_width): New global function (for frame.c). - (Fx_create_frame): Depend on x_figure_window_size to add space for - toolbar and setup size_hint_flags. - (w32_frame_parm_handlers): New table for redisplay_interface. - (syms_of_w32fns): Don't intern/staticpro removed vars. - - * w32term.c: Remove unnecessary extern declarations. - (x_fullscreen_adjust): Remove. Use generic instead. - (x_redisplay_interface): Add w32_frame_parm_handlers member. - - * w32reg.c (x_get_string_resource): Use XrmDatabase. - - * macgui.h (XrmDatabase): New (dummy) typedef. - - * macterm.h (EMACS_CLASS): Remove. - (struct mac_display_info): Add xrdb member. - (struct mac_output): Add want_fullscreen member. - - * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame - parameters now defined in frame.h and frame.c. - (Vx_resource_name): Remove. Use generic var. - (check_x_display_info): Make non-static (for frame.c). - (struct x_frame_parm_table, x_frame_parms): Remove. - (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params) - (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font) - (x_set_border_width, x_set_internal_border_width, x_set_visibility) - (x_change_window_heights, x_set_autoraise, x_set_autolower) - (x_set_vertical_scroll_bars, x_set_scroll_bar_width) - (validate_x_resource_name, Fx_get_resource, x_get_resource_string) - (x_default_parameter, Fx_parse_geometry, x_figure_window_size): - Remove. Use generic functions instead. - (enum resource_types): Remove. - (x_set_scroll_bar_default_width): New global function (for frame.c). - (mac_frame_parm_handlers): New table for redisplay_interface. - (syms_of_macfns): Don't intern/staticpro removed vars. - - * macterm.c: Remove unnecessary extern declarations. - (x_redisplay_interface): Add mac_frame_parm_handlers member. - - * Makefile.in (frame.o): Add dependency on blockinput.h and files - included from it (atimer.h and systime.h). - -2003-03-30 Andreas Schwab - - * xdisp.c (x_insert_glyphs): Fix swapped width and height - parameters for shift_glyphs_for_insert. - - * macterm.c (x_redisplay_interface): Add missing entry for - draw_vertical_window_border. - -2003-03-29 Kai Gro,A_(Bjohann +2008-03-22 Eli Zaretskii - * fileio.c (Fexpand_file_name): In the no-handler case, after - expanding, look again for a handler and invoke it. This is needed - for filenames like "/foo/../user@host:/bar/../baz" -- the first - expansion produces "/user@host:/bar/../baz" which needs to be - expanded again for the finame result "/user@host:/baz". + * w32.c (readdir): If FindFirstFile/FindNextFile return in + cFileName a file name that includes `?' characters, use the 8+3 + alias in cAlternateFileName instead. -2003-03-28 Jan Dj,Ad(Brv +2008-03-21 Stefan Monnier - * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size - of area to be redrawn for better performance. + * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT. -2003-03-28 Stefan Monnier +2008-03-20 Stefan Monnier - * xterm.c (take_vertical_position_into_account): Remove. - (xt_action_hook): Call set_vertical_scroll_bar if needed. - (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0). - (xm_scroll_callback, x_create_toolkit_scroll_bar) - (x_set_toolkit_scroll_bar_thumb): Simplify. - (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS. - (XTread_socket): Remove unused var. - (x_make_frame_invisible): Replace goto with else. + * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT. + (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg, + work on current_buffer only instead (that was already the case + for some of the code anyway). + * buffer.h (set_point, set_point_both): Remove buffer arg, use long int. + (temp_set_point, temp_set_point_both): Use EMACS_INT. + (SET_PT, SET_PT_BOTH): Adjust. + * intervals.h (set_point, temp_set_point, set_point_both) + (temp_set_point_both): Remove redundant declarations. - * xdisp.c (set_vertical_scroll_bar): New fun. - (redisplay_window): Use it. +2008-03-20 Stefan Monnier -2003-03-26 Richard M. Stallman + * fileio.c (Finsert_file_contents): + * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT. + * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right + when buffer != current_buffer anyway. + +2008-03-20 Andreas Schwab + + * callint.c (Fcall_interactively) [case 'B']: Use other-buffer + as default. + +2008-03-19 Jason Rumney + + * w32fns.c (hourglass_timer, hourglass_hwnd): New variables. + (syms_of_w32fns): Initialize them. + (HOURGLASS_ID): New constant. + (x_window_to_frame): Don't check hourglass_window. + (w32_wnd_proc) : Handle hourglass_timer. + (w32_wnd_proc) : Set pending hourglass cursor. + (w32_wnd_proc) : Set the hourglass or current cursor. + (w32_wnd_proc) : Set frame's current_cursor. + Only change the cursor if hourglass is not active. + (Fx_create_frame): Initialize frame's current_cursor. + (hourglass_atimer): Remove. + (hourglass_started): New function. + (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32. + (show_hourglass): Adapt to w32, changing argument to frame. + + * w32term.h (struct w32_output): Remove hourglass_window. + Add current_cursor. + + * eval.c (call_debugger, Fsignal): + * keyboard.c (recursive_edit_1, cmd_error, Ftop_level) + (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector) + (Fexecute_extended_command, cancel_hourglass_unwind): + * minibuf.c (read_minibuf): + * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM. - * xdisp.c (update_tool_bar): Recompute tool bar if - update_mode_lines is set. Set w->update_mode_line - only if the tool bar contents actually change. - (update_menu_bar): Undo previous change. +2008-03-19 Stefan Monnier -2003-03-26 Jan Dj,Ad(Brv + * window.c (run_funs): New fun. + (run_window_configuration_change_hook): Use it to run the buffer-local + and the global part of the hook. - * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared. - (xg_frame_set_char_size): Calculate scroll bar width before frame - width. Call SET_FRAME_GARBAGED and cancel_mouse_face. - (xg_separator_p): Check for all documented separator types. - (xg_update_scrollbar_pos): Variable gheight not needed, use height. - (update_frame_tool_bar): Don't call gdk_window_process_all_updates. + * xdisp.c (format_mode_line_unwind_data): Add window argument. + (unwind_format_mode_line): Restore selected window. + (x_consider_frame_title, Fformat_mode_line): Set selected window. - * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt - so tool bar gets updated. +2008-03-17 Stefan Monnier -2003-03-26 Stefan Monnier + * editfns.c (Fchar_equal): Check they are valid characters. - * data.c (store_symval_forwarding): Re-instate part of the code - that was deleted with too much enthusiasm. + * buffer.h (Fbuffer_list): Declare (for use in callint.c). -2003-03-25 Stefan Monnier +2008-03-17 Andreas Schwab - * data.c (store_symval_forwarding): Delete special read-only - hack for type == -1, since we now use ->constant instead. - (Fkill_local_variable): Don't use XBUFFER if it can be nil. + * regex.c (re_match_2_internal): Properly match raw 8-bit bytes + against a charset. - * buffer.c (overlays_in): Declare static. - (syms_of_buffer) : Use the symbol's - `constant' field rather than the variable's `type' field. + * lisp.h (Fbuffer_list): Declare. -2003-03-24 Andrew Choi +2008-03-17 Jan Djärv - * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp. + * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if + handlebox_widget is != 0. - * dispextern.h [HAVE_CARBON]: Include Carbon.h. +2008-03-16 Juri Linkov - * fns.c [MAC_OSX]: Do not redefine vector. + * callint.c (Fcall_interactively): For interactive code letters + 'b' and 'B' put the buffer list into the list of default "future" + values of the minibuffer. - * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal. +2008-03-16 Andreas Schwab - * macgui.h: Remove definition of No_Cursor. + * keyboard.c (read_key_sequence): Fix downcasing of letters with + modifiers. - * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor. + * regex.c (re_match_2_internal): Correct matching of a charset + against latin-1 characters. - * xdisp.c: Define No_Cursor. - (x_write_glyphs, notice_overwritten_cursor) - (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight) - (note_mouse_highlight): Remove Mac-specific code. - (note_mouse_highlight): Use bcmp instead of == to compare Cursors. +2008-03-16 Kenichi Handa -2003-03-24 John Paul Wallington + * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY) + (STRING_CHAR_ADVANCE_NO_UNIFY): New macros. + (coding_alloc_by_making_gap): Fix the way to preserve data in the gap. + (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap. + (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of + CHAR_STRING_ADVANCE. + (produce_chars): Fix for the case that the source and the + destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY + instead of CHAR_STRING_ADVANCE. + (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of + STRING_CHAR_ADVANCE. - * xdisp.c (redisplay_window): If mini window's buffer is not - empty, then redisplay it like other windows. +2008-03-15 Andreas Schwab -2003-03-23 Kim F. Storm + * regex.c (re_match_2_internal): Correct matching of eight bit + characters in unibyte strings. - * w32term.c (w32_draw_window_cursor): Fix last change. +2008-03-15 Martin Rudalics -2003-03-23 Kenichi Handa + * buffer.c (overlays_in, Foverlays_in): Include empty overlays + at end of range when it coincides with the end of the buffer. - * alloc.c (make_string_from_bytes, make_specified_string): - Add `const' for the arg CONTENTS. +2008-03-14 Eli Zaretskii - * lisp.h (make_string_from_bytes, make_specified_string): - Prototypes adjusted. + * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive. -2003-03-23 Jan Dj,Ad(Brv + * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change. - * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif. +2008-03-14 Jason Rumney - * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos. - (XG_SB_RANGE): New define. + * editfns.c (initial_tz): New variable. + (syms_of_editfns): Initialize it. + (Fset_time_zone_rule): Set it when first called. + Use it when TZSTRING is nil. - * gtkutil.c (xg_fixed_handle_expose): New function. - (xg_create_frame_widgets): Call xg_fixed_handle_expose for - expose events. - (xg_update_scrollbar_pos): Take two more arguments, left and width - of scroll bar including borders. - Clear left and right part outside scroll bar separately as some - themes have bars that are not an even number of pixels. - Don't set reallocate_redraws, don't call - gdk_window_process_all_updates. - (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed, - so no need to change it. Calculate size and value with XG_SB_RANGE. + * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO) + (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions. + (monitor_from_point_fn, get_monitor_info_fn): New globals. + (globals_of_w32fns): Initialize them. + (compute_tip_xy): Use them to position tooltips. - * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar): - Pass left and width of scroll bar including borders to - xg_update_scrollbar_pos. +2008-03-14 Glenn Morris -2003-03-22 Thien-Thi Nguyen + * emacs.c (main): Revert previous change. + (standard_args): Revert -internal-script back to -scriptload, + and remove the long-option form. - * Makefile.in: Make sure space precedes end-of-line backslashes. +2008-03-13 Glenn Morris -2003-03-22 Kim F. Storm + * emacs.c (main, standard_args): Rename -scriptload to -internal-script. + Remove option -enable-font-backend. - * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords): - Add generic versions here. Remove system specific versions - defined elsewhere. +2008-03-12 Stefan Monnier - * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords): - Add prototypes. + * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer. - * xterm.h (STORE_NATIVE_RECT): New macro. - -2003-03-21 Kim F. Storm - - * xdisp.c (get_glyph_string_clip_rect): - Use FRAME_INTERNAL_BORDER_WIDTH. - - * dispextern.h (struct redisplay_interface): Add active_p - argument to draw_window_cursor member. All uses changed. - -2003-03-21 Kim F. Storm - - The following changes consolidate code related to writing and - inserting glyphs, exposing frame, the tool bar, the mouse face, - the output cursor, and help echo from xterm.c, w32term.c and - macterm.c into xdisp.c. It also generalizes the use of the - window_part enum instead of using numeric values throughout. - - * xdisp.c: Consolidate gui-independent code here. - Include keymap.h. - (Qhelp_echo): Import. - (mouse_autoselect_window, x_stretch_cursor_p): Declare here. - (help_echo_string, help_echo_window, help_echo_object) - (previous_help_echo_string, help_echo_pos): Declare here. - (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here. - (estimate_mode_line_height): Define here. Handle windowing - systems directly (without using estimate_mode_line_height_hook). - (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight): - (update_window_cursor, update_cursor_in_window_tree) - (fast_find_position, fast_find_string_pos) - (note_mode_line_highlight, note_mode_line_or_margin_highlight) - (expose_area, expose_line, expose_overlaps, expose_window) - (expose_window_tree, phys_cursor_in_rect_p): New generic versions; - declared static as they are only used locally in xdisp.c. - (draw_glyphs): Rename from x_draw_glyphs and make static. - (tool_bar_item_info, notice_overwritten_cursor): Make static. - (frame_to_window_pixel_xy, get_glyph_string_clip_rect) - (set_output_cursor, x_cursor_to, handle_tool_bar_click) - (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line): - (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor) - (display_and_set_cursor, x_update_cursor, x_clear_cursor) - (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p) - (note_mouse_highlight, x_clear_window_mouse_face) - (cancel_mouse_face, x_draw_vertical_border, expose_frame) - (x_intersect_rectangles): New generic functions for use by xdisp.c - and GUI front-ends. - (syms_of_xdisp): Initialize and staticpro help_echo* variables. - Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here. - - * dispextern.h (Display_Info): Generic typedef for *_display_info. - (NativeRectangle): Generic typedef for rectangle type. - (enum window_part): Move here from window.c. - (struct redisplay_interface): New members flush_display_optional, - define_frame_cursor, clear_frame_area, draw_window_cursor, - draw_vertical_window_border, shift_glyphs_for_insert. - Rename member clear_mouse_face to clear_window_mouse_face. - (estimate_mode_line_height_hook): Remove hook. - (auto_raise_tool_bar_buttons_p): Don't declare extern. - (tool_bar_item_info): Remove prototype. - (help_echo_string, help_echo_window, help_echo_object) - (previous_help_echo_string, help_echo_pos) - (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window): - (x_stretch_cursor_p, output_cursor): Declare extern. - (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes. - (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line) - (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor) - (display_and_set_cursor, set_output_cursor, x_cursor_to) - (x_update_cursor, x_clear_cursor, x_draw_vertical_border) - (frame_to_window_pixel_xy, get_glyph_string_clip_rect) - (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face) - (handle_tool_bar_click, clear_mouse_face, show_mouse_face) - (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles): - Add prototypes. - (mode_line_string, marginal_area_string): Fix prototypes. +2008-03-11 Jan Djärv - * window.c (enum window_part): Move to dispextern.h. - (coordinates_in_window): Use enum window_part member names - instead of numbers to describe return value. - (struct check_window_data): Change part member to window_part. - (check_window_containing): Return window_part unaltered. - (window_from_coordinates): Change part arg from int to enum - window_part. Allow part arg to be null. All users changed. + * xterm.c (x_connection_closed): For GTK: If this is the last + terminal just exit without closing the display. - * window.h (window_from_coordinates): Fix prototype. +2008-03-11 Jason Rumney - * term.c (estimate_mode_line_height): Move to xdisp.c. + * w32font.c (w32font_full_name): Use floor to round. - * keyboard.c (make_lispy_event): Use enum window_part. +2008-03-10 dhruva (tiny change) - * dispnew.c (mode_line_string, marginal_area_string): Use enum - window_part instead of int in arg list. Users changed. + * sound.c (alsa_configure): Declare vol at beginning of block. - * xterm.h (No_Cursor): Declare as None for X. - (struct mac_output): Replace member cross_cursor by hand_cursor. + * fontset.c (Ffontset_info): Remove extra semicolon. - * xterm.c: Remove consolidated defines and code. - (BETWEEN): Remove unused macro. - (x_draw_vertical_window_border, x_shift_glyphs_for_insert) - (x_define_frame_cursor, x_clear_frame_area) - (x_draw_window_cursor): New X-specific functions for RIF. - (x_redisplay_interface): Add new members. +2008-03-10 Stefan Monnier - * xfns.c: Setup and use hand_cursor instead of cross_cursor. + * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum + size of resulting string. - * w32term.h (struct w32_output): Remove cross_cursor member. +2008-03-10 Jason Rumney - * w32term.c: Remove consolidated defines and code. - (BETWEEN): Remove unused macro. - (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert) - (w32_define_frame_cursor, w32_clear_frame_area) - (w32_draw_window_cursor): New W32-specific functions for RIF. - (w32_redisplay_interface): Add new members. + * dispnew.c (adjust_glyph_matrix): Initialize window_height. - * w32gui.h (No_Cursor): Define as 0 for W32. - (XRectangle): Add X compatible rectangle type. - (NativeRectangle): Declare as RECT for W32. - (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros. +2008-03-10 YAMAMOTO Mitsuharu - * w32fns.c: Remove setup of cross_cursor (already has hand_cursor). + * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes. + Don't pretend as if characters with display property haven't been + consumed for string-replacing-string case. - * w32console.c: Remove consolidated defines and code. +2008-03-08 Kim F. Storm - * msdos.h (Display_Info): Add generic typedef. + * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro. + (get_next_display_element, next_element_from_string) + (next_element_from_ellipsis, next_element_from_buffer): Use it. - * msdos.c: Remove consolidated defines and code. - (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part. +2008-03-08 Andreas Schwab - * macterm.h (struct mac_output): Replace member cross_cursor by - hand_cursor. - (activate_scroll_bars, deactivate_scroll_bars): Add prototypes. + * process.h (struct Lisp_Process): Declare bit fields as unsigned. - * macterm.c: Remove consolidated defines and code. - (BETWEEN): Remove unused macro. - (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert) - (mac_define_frame_cursor, mac_clear_frame_area) - (mac_draw_window_cursor): New Mac-specific functions for RIF. - (x_redisplay_interface): Add new members. +2008-03-06 Jason Rumney - * macgui.h (No_Cursor): Define as 0 for Mac. - (XRectangle): Add X compatible rectangle type. - (NativeRectangle): Declare as Rect for Mac. - (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros. + * w32font.c (w32_registry): Take font_type argument. Use ANSI + when charset not specified. Only translate ANSI to unicode when + font_type is truetype. + (w32font_coverage_ok): New function. + (add_font_entity_to_list): Use it to filter unsuitable fonts. - * macfns.c (x_set_mouse_color): Setup hand_cursor. - (x_set_cursor_color): Use x_display_and_set_cursor. +2008-03-05 Kenichi Handa - * Makefile.in (xdisp.o): Add dependency on blockinput.h and files - included from it. Add dependency on keymap.h. + * lread.c (Fread_char): Resolve modifiers. + (Fread_char_exclusive): Likewise. - * makefile.w32-in (xdisp.o): Add dependency on keymap.h. + * character.c (char_resolve_modifier_mask): New function. + (char_string): Use char_resolve_modifier_mask. + (Fchar_resolve_modifiers): New function. + (syms_of_character): Declare Fchar_resolve_modifiers as Lisp + function. -2003-03-21 Kenichi Handa +2008-03-04 Jason Rumney - * fileio.c (Fexpand_file_name): Fix previous change. + * makefile.w32-in: Always include w32font.c in the build. + * w32font.c: Wrap in USE_FONT_BACKEND conditional. -2003-03-19 Kenichi Handa +2008-03-04 Andreas Schwab - * fileio.c (Ffile_name_directory): Reconstruct file name by - make_specified_string. - (Ffile_name_nondirectory, Ffile_name_as_directory) - (Fdirectory_file_name, Fexpand_file_name) - (Fsubstitute_in_file_name): Likewise. - (Fread_file_name): Compare decoded homedir with DIR and - DEFAULT_FILENAME. + * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*. + (versionclean): Likewise. - * alloc.c (make_specified_string): If NCHARS is negative, count - the number of characters. +2008-03-04 Juanma Barranquero -2003-03-18 Jan Dj,Ad(Brv + * .cvsignore: Add oo. - * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for - all widgets. +2008-03-03 Andreas Schwab - * gtkutil.h: Removed xg_ignore_next_thumb. + * coding.c (decode_coding_object): Inhibit gap shrinking while + decoding in place. -2003-03-18 Kenichi Handa +2008-03-03 Dan Nicolaescu - * coding.c (Vchar_coding_system_table): Remove this variable. - (Vcoding_system_safe_chars): New variable. - (intersection): Remove this function. - (find_safe_codings): Don't use Vchar_coding_system_table, but try - all codings in SAFE_CODINGS. - (Ffind_coding_systems_region_internal): Adjust for the change of - find_safe_codings. Get generic coding systems from - Vcoding_system_safe_chars. - (Fdefine_coding_system_internal): New function. - (syms_of_coding): Defsubr Sdefine_coding_system_internal. - Initialize and staticpro Vcoding_system_safe_chars. + * w32term.c: Remove unused include "gnu.h". + * makefile.w32-in (w32term.o): Don't depend on gnu.h. -2003-03-18 Jan Dj,Ad(Brv + * gnu.h: Rename to ... + * emacs-icon.h: ... this. + * xterm.c: Use emacs-icon.h instead of gnu.h. + * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h. - * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values - equal old values before updating. - - * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb. - - * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb. - -2003-03-17 Jan Dj,Ad(Brv +2008-03-03 Juanma Barranquero - * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos. - (xg_resize_widgets): Don't call foreach(handle_fixed_child). - (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos. - (scroll_bar_button_cb): Set bar->dragging to nil on button release. - (xg_create_scroll_bar): Pass bar to button event callback. - (xg_find_top_left_in_fixed): New function. - (xg_update_scrollbar_pos): Don't call gdk_window_clear on - whole scroll bar area. Get old position with - xg_find_top_left_in_fixed, calculate and only clear needed areas. - (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if - dragging is in progress. Calculate whole as for Motif. - Remove code that saved last values. Call gtk_range functions to - set scroll bar sizes. - - * gtkutil.h: Removed xg_ignore_next_thumb. - -2003-03-17 Juanma Barranquero - - * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h - and files included from it. - -2003-03-18 Stefan Monnier - - * keymap.c (accessible_keymaps_1): Break cycles but without preventing - multiple occurrences of the same keymap under different prefixes. - (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org. - -2003-03-16 Jason Rumney - - * w32gui.h: Use HDC for Display. - - * w32term.c (w32_encode_char): Prevent double-byte chars from - crashing Emacs. - - * w32fns.c (jpeg_load, png_load, slurp_file): Read image files - as binary. + * w32font.c: Include math.h. -2003-03-16 Juanma Barranquero +2008-03-03 Jason Rumney - * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET. + * w32font.c (recompute_cached_metrics): Change font arg to w32font_info. + Compute options separately. + (w32font_open_internal): Set glyph_idx before caching metrics. -2003-03-16 Kim F. Storm + * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1): + Define if system headers don't. + (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx. + (w32font_encode_char): Don't declare here. - The following changes consolidate some of the gui-independent - parts of the processing and drawing of "glyph strings" from - xterm.c, w32term.c, and macterm.c into xdisp.c. - - * dispextern.h (struct glyph): Reduce face_id member from 22 to - 21 bits (this reduces number of faces from 4M to 2M). - Replace W32 specific w32_font_type member (2 bits) by generic - font_type member (3 bits) for portability. - (FONT_TYPE_UNKNOWN): New define, default for font_type member. - (enum draw_glyphs_face): Define here. - (struct glyph_string): Define here. Merge W32 and X versions. - (struct redisplay_interface): New members per_char_metric, - encode_char, compute_glyph_string_overhangs, draw_glyph_string. - (VCENTER_BASELINE_OFFSET): Define here. - (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs) - (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here. - - * xdisp.c: Consolidate gui-independent "glyph string" code here. - (dump_glyph_string): Moved here. - (init_glyph_string, append_glyph_string_lists, append_glyph_string) - (prepend_glyph_string_lists, get_glyph_face_and_encoding) - (fill_composite_glyph_string, fill_glyph_string) - (fill_image_glyph_string, fill_stretch_glyph_string) - (left_overwritten, left_overwriting, right_overwritten) - (right_overwriting, get_char_face_and_encoding) - (set_glyph_string_background_width, compute_overhangs_and_x) - (append_glyph, append_composite_glyph, produce_image_glyph) - (take_vertical_position_into_account, append_stretch_glyph) - (produce_stretch_glyph): New generic functions (based on X version). - Call platform specific functions through rif. - (INIT_GLYPH_STRING): New macro, hides W32 details. - (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING) - (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING) - (BUILD_GLYPH_STRINGS): Generic macros (based on X version). - (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs) - (notice_overwritten_cursor): - Generic functions exported to platform modules. Users changed. - - * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET) - (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE) - (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): - New macros for consolidated code. - - * xterm.c: Remove consolidated defines and code. - (x_per_char_metric, x_encode_char) - (x_compute_glyph_string_overhangs): Adapt to RIF requirements. - (x_redisplay_interface): Add new members. - - * w32gui.h (Display): Add dummy typedef for consolidation. - (XChar2b): Define alias for wchar_t for consolidation. - (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros. - - * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY) - (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): - New macros for consolidation. - - * w32term.c: Remove consolidated defines and code. - (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed - to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead. - (w32_per_char_metric): Change font_type arg to int for RIF. - (w32_encode_char): Return int according to RIF requirements. - (w32_compute_glyph_string_overhangs): Adapt to RIF. - (w32_get_glyph_overhangs): New function for RIF. Uses generic - x_get_glyph_overhangs. - (w32_redisplay_interface): Add new members. - - * macgui.h (XChar2b): Move typedef here for consolidation. - (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros. + * w32font.c (Quniscribe, QCformat): New symbols. + (syms_of_w32font): Define them. + (w32font_has_char): Indicate uncertainty. + (w32font_encode_char): Encode as glyph point. Make static. + (recompute_cached_metrics): New function. + (w32font_open_internal): Use it. Set font to use glyph points + initially. Set format based on type of font. + (w32font_text_extents, w32font_draw): Optionally use glyph points. + (w32_enumfont_pattern_entity): Accept backend arg. Set type based + on it. Set format based on information available here. + (add_font_entity_to_list): Identify backend based on opentype_only. - * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY): - (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for - consolidation. +2008-03-02 Andreas Schwab - * macterm.c: Remove consolidated defines and code. - (mac_per_char_metric): New function for RIF. - (mac_encode_char): Adapt to new RIF requirements. - (mac_compute_glyph_string_overhangs): Adapt for RIF. - (x_redisplay_interface): Add new members. + * ftfont.c (ftfont_pattern_entity): Fix aliasing violations. -2003-03-15 Stefan Monnier - - * keymap.c (Vmenu_events): New var. - (syms_of_keymap): Initialize it. - (where_is_internal): Check more carefully what is a menu event. - -2003-03-14 Richard M. Stallman - - * lread.c (read1): After #!, exit loop on eof. - -2003-03-14 Jan Dj,Ad(Brv - - * gtkutil.h: Add declaration for xg_frame_cleared. - - * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK. - - * gtkutil.c (struct xg_last_sb_pos): New structure. - (handle_fixed_child): New function. - (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets - and force a redraw on them. - (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also. - (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar - so we can avoid unneeded redraws. - (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos - and force a redraw on the scroll bar. - (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar - if xg_last_sb_pos shows the positions are up to date. - (xg_frame_cleared): New function. - -2003-03-13 Kenichi Handa - - * coding.c (Fdetect_coding_region): Fix docstring. - (Fdetect_coding_string): Fix docstring. - -2003-03-13 Andreas Schwab - - * gtkutil.c: Add prototype for create_menus. - - * data.c (long_to_cons): Fix type of top. - - * xselect.c (selection_data_to_lisp_data): Use int instead of - long for an integer of size 4. + * coding.c (decode_coding_big5, produce_chars): + Fix typos in last change. - * gtkutil.c (xg_update_frame_menubar): Add missing return value. - (xg_tool_bar_help_callback): Likewise. +2008-03-02 Kentaro Ohkouchi -2003-03-12 Andreas Schwab + * gnu.h: New icon. - * xterm.c (x_term_init) [USE_GTK]: Fix typo. +2008-03-02 Kenichi Handa -2003-03-12 Kim F. Storm + * coding.c (decode_coding_utf_8): When eol-type of CODING is + `dos', don't decode '\r' if that is the last in the source. + (decode_coding_utf_16, decode_coding_emacs_mule) + (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5) + (decode_coding_raw_text, decode_coding_charset): Likewise. + (produce_chars): Don't decode EOL here. Use EMACS_INT. - The following changes consolidate the fringe handling from - xterm.c, w32term.c, and macterm.c into xdisp.c. +2008-03-01 Jason Rumney - * xdisp.c: Consolidate fringe handling code here. - (left_bits, right_bits, continued_bits, continuation_bits) - (ov_bits, zv_bits): Define fringe bitmaps. - (fringe_bitmaps): New array holding fringe bitmaps. - (draw_fringe_bitmap): Draw a specific bitmap; call display - specific drawing routine via rif->draw_fringe_bitmap. - (draw_row_fringe_bitmaps): Generic replacement for - x_draw_row_fringe_bitmaps; all callers changed. - (compute_fringe_widths): Generic replacement for - x_compute_fringe_widths; all callers changed. + * w32font.c (w32font_full_name): Report point size for scalable fonts. - * dispextern.h (enum fringe_bitmap_type): Define here. - (struct fringe_bitmap, struct draw_fringe_bitmap_params): New. - (fringe_bitmaps): Declare extern. - (struct redisplay_interface): New member draw_fringe_bitmap. - (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern. +2008-03-01 Kim F. Storm - * xterm.c: Remove generic fringe code. - (x_draw_fringe_bitmap): Only perform actual fringe drawing. - (x_redisplay_interface): Add x_draw_fringe_bitmap member. + * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face. - * w32term.c: Remove generic fringe code. - (w32_draw_fringe_bitmap): Only perform actual fringe drawing. - (w32_redisplay_interface): Add w32_draw_fringe_bitmap member. +2008-03-01 Jason Rumney - * macterm.c: Remove generic fringe code. - (x_draw_fringe_bitmap): Only perform actual fringe drawing. - (x_redisplay_interface): Add x_draw_fringe_bitmap member. + * w32font.c (w32font_full_name): New function. + (w32font_open_internal): Use it. -2003-03-11 Stefan Monnier +2008-03-01 Kim F. Storm - * print.c (Fprin1_to_string): Return unibyte string if possible. + * dispnew.c (line_draw_cost): Fix invalid glyph check. -2003-03-09 David Kastrup +2008-03-01 Jason Rumney - * process.c (read_process_output): We have allocated enough space - for readmax and carryover, so actually use the alloted space. + * font.c (font_unparse_fcname): Increase len when style is a symbol. -2003-03-09 Jan Dj,Ad(Brv +2008-03-01 Jan Djärv - * keyboard.c (make_lispy_event): Extend mouse_syms if needed for - toolkit scrollbar click. + * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call + xg_frame_resized when the event is for the edit widget. - * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window - for USE_GTK. - (x_scroll_bar_handle_click): Use this function for toolkit scrollbars - also. - (handle_one_xevent): ButtonPress/Release: If event is for a toolkit - scrollbar and control is pressed, call x_scroll_bar_handle_click. + * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets. - * gtkutil.h (xg_get_scroll_id_for_window): Declare. + * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or + set_char_size. + (xg_frame_resized): Renamed from xg_resize_widgets. Remove all + operations on widgets here. Just set frame size if needed. + (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions. + (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing. + (x_wm_set_size_hint): Set size hints on the edit widget only, not + the whole frame. + (xg_create_tool_bar): Move attachement of the tool bar to + xg_pack_tool_bar. Do not attach the tool bar if there are no items. + (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED. - * gtkutil.c (xg_get_scroll_id_for_window): New function. - (xg_tool_bar_item_expose_callback): New function. - (xg_tool_bar_expose_callback): Call update_frame_tool_bar. - (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose - on the tool bar widget. - (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback - to expose on the tool bar item widgets. +2008-03-01 Jason Rumney -2003-03-08 Jan Dj,Ad(Brv + * w32fns.c (w32_msg_pump): Disable debug code. - * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of - struct image* when deciding to update (struct image* may have been - deleted from the image cache). +2008-03-01 YAMAMOTO Mitsuharu - * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if - the event isn't for a frame (i.e. for dialogs). + * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64. -2003-03-07 Kenichi Handa +2008-02-29 Chong Yidong - * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of - composition components reaches the limit, terminate composing. - (COMPOSITION_OK): New macro. - (detect_coding_iso2022): Use it if an escape sequence for - composition is found. - (coding_restore_composition): Adjust the number of composition - components if it is not sane. + * xdisp.c (next_overlay_string): Don't set + overlay_strings_at_end_processed_p if we're currently reading from + a display string. -2003-03-06 Juanma Barranquero +2008-02-29 Stefan Monnier - * w32term.h (struct w32_display_info): Add xrdb member to support - passing resources via -xrm on Windows. + * xdisp.c (get_overlay_strings_1): Fix typo. - * w32term.c (w32_make_rdb): New function. - (w32_term_init): Use it to initialize xrdb member of w32_display_info - struct. Delete leftover code. +2008-02-29 Chong Yidong - * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check - for resources passed on the command line. + * xdisp.c (get_overlay_strings_1): Add missing argument type. - * w32reg.c (w32_get_rdb_resource): New function. - (x_get_string_resource): Use it, so resources passed with -xrm - supercede the ones in the registry. +2008-02-28 Kenichi Handa + + * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern. + + * xdisp.c (display_mode_element): Cancel the previous change. + (decode_mode_spec): Likewise. + (handle_auto_composed_prop): Don't make composition if it->string + is a string. + +2008-02-27 Kim F. Storm + + * lisp.h (GLYPH): Change type from int to struct with separate char + and face_id members. + (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros. + (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg. + (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ... + (GLYPH_CHAR, GLYPH_FACE): ... these. Change users. + (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ... + (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead. + (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P) + (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to + handle new Lisp glyph code encoding, either an integer or a cons. + + * disptab.h (GLYPH_SIMPLE_P): Rewrite. + (GLYPH_ALIAS): Delete. + (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite. + (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR. + (GLYPH_FROM_CHAR): Replace macro by ... + (SET_GLYPH_FROM_CHAR): ... this macro. Change users. + + * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify. + (GLYPH_FROM_CHAR_GLYPH): Replace macro by ... + (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users. + (GLYPH_INVALID_P): New macro. + (spec_glyph_lookup_face): Update prototype. + + * dispnew.c (line_draw_cost): Adapt to new glyph type. + (build_frame_matrix_from_leaf_window): Adapt to new glyph type and + new glyph code encoding. + (spec_glyph_lookup_face): No return value; update passed glyph instead. + (init_display): Use SET_CHAR_GLYPH to initialize space_glyph. -2003-03-04 Jan Dj,Ad(Brv + * xdisp.c (get_next_display_element, next_element_from_display_vector): + Adapt to new glyph type and new glyph code encoding. - * xterm.c (x_detect_focus_change): Call x_any_window_to_frame - instead of x_top_window_to_frame. + * term.c (encode_terminal_code, produce_special_glyphs): Likewise. -2003-03-03 Jan Dj,Ad(Brv + * indent.c (current_column, current_column_1, Fmove_to_column) + (compute_motion): Adapt to new glyph code encoding. - * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options - when restarting Emacs. + * msdos.c (IT_write_glyphs): Adapt to new glyph type. -2003-03-03 Richard M. Stallman +2008-02-27 Chong Yidong - * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure - to run kill-buffer-query-functions. - (Qkill_buffer_query_functions): New var. - (syms_of_buffer): Init and staticpro it. + * process.c (wait_reading_process_output): Check for window + changes caused by timers. + Suggested by Johan Bockgård. -2003-03-02 Jan Dj,Ad(Brv +2008-02-27 Glenn Morris - * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK. + * emacs.c (USAGE1): Add `--disable-font-backend'. -2003-02-25 Kim F. Storm +2008-02-27 Stefan Monnier - * xdisp.c (redisplay_window): Fix infinite loop in redisplay. - If centering point failed to make whole line visible and vscroll - is non-zero, disable vscroll and try centering point again. + * fileio.c (Finsert_file_contents): Don't reset undo_list if no change + is made to the buffer. - * lread.c (read1): Accept `single space' syntax like (? x). +2008-02-26 Stefan Monnier -2003-02-25 Jan Dj,Ad(Brv + * dispextern.h (face_at_buffer_position, face_for_overlay_string) + (face_at_string_position): + * xfaces.c (face_at_buffer_position, face_for_overlay_string) + (face_at_string_position): + * xdisp.c (display_string, next_overlay_change): + * buffer.h (overlays_at): + * buffer.c (overlays_at): Use EMACS_INT for buffer positions. + Update callers. - * keyboard.c (cancel_hourglass_unwind): Surround with - #ifdef HAVE_X_WINDOWS. +2008-02-26 Chong Yidong -2003-02-25 Kenichi Handa + * editfns.c (Fformat): Doc fix. - * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer - process only when "subprocesses" is defined. +2008-02-26 Juanma Barranquero -2003-02-24 Stefan Monnier + * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings. + (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf) + (Ffont_otf_alternates, Fquery_font): Doc fixes. - * syntax.c (back_comment): Only check nestedness of 2nd char if needed. +2008-02-25 Stefan Monnier -2003-02-24 Juanma Barranquero + * buffer.c (Fbuffer_swap_text): New function. + (syms_of_buffer): Defsubr it. - * callint.c (fix_command): Declare as static void and move before - Fcall_interactively. +2008-02-25 Chong Yidong - * xdisp.c (Qwhen): Declare external; it's now defined in callint.c. - (syms_of_xdisp): Don't initialize Qwhen. + * keyboard.c (command_loop_1): Revert 2006-10-09 change. -2003-02-23 Jan Dj,Ad(Brv +2008-02-25 Jason Rumney - * keyboard.c (cancel_hourglass_unwind): New function. - (command_loop_1): Cancel hourglass with unwind-protect. + * w32font.c (w32font_draw): Draw one character at a time when padding. -2003-02-23 Richard M. Stallman +2008-02-25 Stefan Monnier - * callint.c (fix_command): New subroutine, from Fcall_interactively. - Detect (when ... (region-beginning)) etc. - (Fcall_interactively): Call fix_command. - (Qif, Qwhen): New variables. - (syms_of_callint): Init and staticpro them. + * window.c (Fdelete_window, Fadjust_window_trailing_edge): + Handle a nil arg. Use run_window_configuration_change_hook. + (delete_window, adjust_window_trailing_edge): Don't handle nil any more. + (Fenlarge_window, Fshrink_window, Fset_window_configuration): + Use run_window_configuration_change_hook. - * regex.c (print_partial_compiled_pattern): Output to stderr. +2008-02-25 Kenichi Handa -2003-02-23 Kai Gro,A_(Bjohann + * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least + 1-pixel width. - * dired.c (directory_files_internal): Don't expand directory. - (Fdirectory_files, Fdirectory_files_and_attributes): Do it here - instead. From Lars Hansen . +2008-02-25 Kenichi Handa -2003-02-22 Stefan Monnier + * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p. + (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1 + if the glyph in the font is zero pixel with. - * fns.c (string_to_multibyte): Remove unused var i. - (Flanginfo): Fix int/Lisp_Object mixup. - (void_call2): New fun. - (Fmap_char_table): Use it in place of call2. + * dispextern.h (struct glyph_string): New member padding_p. - * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup. + * w32font.c (w32font_draw): Pay attention to s->padding_p. - * macros.c (Fstart_kbd_macro): Remove redundant assignment. + * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p. - * keymap.c (copy_keymap_1): Make it static. + * xfont.c (xfont_draw): Pay attention to s->padding_p. - * alloc.c (Fgarbage_collect): Don't use XSETFLOAT. + * xftfont.c (xftfont_draw): Pay attention to s->padding_p. -2003-02-22 David Ponce + * font.c: If the font driver doesn't have `shape' function, return Qnil. - * lread.c (Fload): Don't check STRING_MULTIBYTE. +2008-02-25 Jason Rumney -2003-02-21 Jan Dj,Ad(Brv + * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode. - * process.h: Removed subtty field from struct Lisp_Process. +2008-02-24 Stefan Monnier + + Allow fine-grained image-cache flushing. + * dispextern.h (struct image): Add `dependencies' field. + (clear_image_caches): Change arg to Lisp_Object. + * image.c (make_image): Initialize `dependencies' field. + (clear_image_cache): Change arg to allow fine-grained flushing. + Perform the flush even if image-cache-eviction-delay is nil. + (clear_image_caches): Change arg to Lisp_Object. + (Fclear_image_cache): Expand meaning of the argument. + (mark_image): Mark `dependencies' field. + * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches. + (lface_hash): Use XHASH rather than XFASTINT. + (face_at_buffer_position): Fix int -> EMACS_INT position. + * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position. + (select_frame_for_redisplay): Remove code duplication. + (redisplay_internal): Adapt arg to call to clear_image_caches. + +2008-02-24 Dan Nicolaescu + + * s/vms4-0.h: + * s/vms4-2.h: + * s/vms4-4.h: + * s/vms5-5.h: Remove, unused. + + * s/irix5-2.h: + * s/irix6-0.h: + * s/riscos5.h: + * s/mach-bsd4-3.h: + * m/mips4.h: Remove files for obsolete systems + + * Makefile.in: + * filelock.c: + * unexmips.c: + * m/hp9000s300.h: + * m/iris4d.h: + * s/aix3-1.h: + * s/hpux.h: + * s/msdos.h: + * s/usg5-0.h: + * s/usg5-2-2.h: + * s/usg5-2.h: + * s/usg5-3.h: Remove references to obsolete variables. + + * s/irix5-0.h: Remove, move all the contents ... + * s/irix6-5.h: ... here. Simplify. + * config.in: Regenerate. - * process.c (create_process): Remove setting of subtty. - (emacs_get_tty_pgrp): New function. - (Fprocess_running_child_p, process_send_signal): - Call emacs_get_tty_pgrp instead of ioctl. - (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails. +2008-02-24 Jason Rumney -2003-02-21 Kai Gro,A_(Bjohann + * w32term.c (x_draw_glyph_string_background): Clear the background + manually when cleartype is in use. + (x_draw_glyph_string_foreground): Draw text transparently when + cleartype is in use. - * keymap.c (Fdefine_key): Doc fix. + * w32font.c (w32font_text_extents): Avoid getting HDC and selecting + a font into it unless we have to. -2003-02-21 Juanma Barranquero +2008-02-19 Stefan Monnier - Port of patch for RC by Klaus Zeitler . + * intervals.h (INT_LISPLIKE): Remove. It may misfire. + (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it. - * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not - POLLING_PROBLEM_IN_SELECT. +2008-02-18 Jason Rumney - * s/hpux11.h: Include hpux10-20.h instead of hpux10.h. - Delete #undef of POLLING_PROBLEM_IN_SELECT. + * w32fns.c (Fw32_shell_execute): Encode parameters. - * s/hpux10-20.h: New file. +2008-02-09 Eli Zaretskii - * process.c (wait_reading_process_input): - Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT. + * fileio.c (syms_of_fileio) : Doc fix. -2003-02-20 Kenichi Handa +2008-02-05 Juanma Barranquero - * fontset.c (check_fontset_name): If NAME is nil, return the - default fontset. - (override_font_info): New function. - (Fset_fontset_font): Document that NAME nil means the default fontset. - (Ffontset_info): If FONTSET is not the default fontset, merge - FONTSET onto the copy of the default fontset, and work on that - copy. Document that NAME nil means the default fontset. - (Ffontset_font): Document that NAME nil means the default fontset. + * unexhp9k800.c (read_header): Replace `legal' with `valid'. - * process.c (setup_process_coding_systems): If the process's - in/out descriptor is -1, do nothing. +2008-02-24 Ulrich Neumerkel (tiny change) -2003-02-19 Andreas Schwab + * xterm.c (x_set_offset): Don't change the gravity if + CHANGE_GRAVITY is -1. - * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte): - Add prototypes. +2008-02-23 Chong Yidong -2003-02-19 Kenichi Handa + * fileio.c (auto_save_error_occurred): New var. + (auto_save_error): Set it. + (Fdo_auto_save): Don't overwrite the error message if an auto-save + error occurred. - * xfaces.c (try_alternative_families): Try all scalable fonts if - Vscalable_fonts_allowed is not Qt. +2008-02-23 Eli Zaretskii + + * w32.c (globals_of_w32): Add initializations for + g_b_init_get_sid_sub_authority and + g_b_init_get_sid_sub_authority_count. + +2008-02-22 Stefan Monnier + + * font.c (font_match_xlfd, font_check_xlfd_parse): New funs. + (font_parse_xlfd): Use them for sanity check. + (Finternal_set_font_style_table): Make sure the table is bijective. + + Consolidate the image_cache to the terminal struct. + * termhooks.h (P_): Remove redundant def. + (struct terminal): New field `image_cache'. + * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place + of FRAME_X_IMAGE_CACHE. + * xterm.h (struct x_display_info): Remove image_cache field. + (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead. + * w32term.h (struct w32_display_info): Remove image_cache field. + (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead. + * macterm.h (struct mac_display_info): Remove image_cache field. + (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead. + * xterm.c (x_term_init): + * w32term.c (w32_term_init): + * macterm.c (mac_term_init): Set the image_cache in the terminal. + * dispextern.h (clear_image_cache, forall_images_in_image_cache): + Remove declarations. + (clear_image_caches, mark_image_cache): New declarations. + * xfaces.c (clear_face_cache): + * xdisp.c (redisplay_internal): Use clear_image_caches. + * image.c (clear_image_cache): Don't check that a frame is on + a window-system before checking if it shares the same cache. + (clear_image_caches): New function. + (Fclear_image_cache): Use it. + (mark_image): Move from allo.c. + (mark_image_cache): Move from alloc.c and forall_images_in_image_cache. + * alloc.c (mark_image, mark_image_cache): Move to image.c. + (mark_object): Don't call mark_image_cache for frames. + (mark_terminals): Call mark_image_cache. -2003-02-19 Jan Dj,Ad(Brv + * lisp.h (Fdelete_terminal): Declare. - * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found. + * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID) + (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of + wrong_type_argument. -2003-02-18 Jan Dj,Ad(Brv +2008-02-22 Kenichi Handa - * xterm.c (x_list_fonts): If maxnames is less than 0, get all font - names. + * Makefile.in (lisp): Remove devanagari.el, kannada.el, + malayalam.el, and tamil.el. Add sinhala.el. - * xfaces.c (x_face_list_fonts): Allocate struct font_name here. - (sorted_font_list): Move allocation of struct font_name to - x_face_list_fonts. - (Fx_font_family_list): Set font-list-limit to -1 to get all font names. - (Fx_list_fonts): Set maxnames to -1 to get all font names. +2008-02-21 Stefan Monnier -2003-02-18 Kim F. Storm + * xterm.c (x_connection_closed): Consolidate identical tests. + (x_delete_terminal): Don't crash if called via x_connection_closed. - * lread.c (read1): Fix last change. - "`" is not always special. Allow "?" after a character constant. +2008-02-21 Kenichi Handa -2003-02-18 Andrew Choi + * xdisp.c (decode_mode_spec): New arg string. + (display_mode_element): Adjust for the above change. - * unexmacosx.c (copy_data_segment): Also copy __cfstring section. +2008-02-19 Stefan Monnier -2003-02-18 Andreas Schwab + * callint.c (Fcall_interactively): Use AREF. - * window.c (window_scroll_pixel_based): Move outside a - multi-glyph character before setting new window start. +2008-02-18 Stefan Monnier - * xdisp.c (in_display_vector_p): New function. - * dispextern.h (in_display_vector_p): Declare. + * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs. -2003-02-18 Kim F. Storm +2008-02-18 Jan Djärv - * lread.c (read1): Fix and relax read syntax. - Recognize "[", ";", "#", and "?" after a dotted-pair dot. - Only recognize "," after dotted-pair dot if inside backquote. - Never include "`" or "," (inside backquote) in a symbol. - Allow dotted-pair dot after a character constant. - Allow "`" and "," (inside backquote) after a character constant. + * xfns.c (Fx_show_tip): Set string to " " if empty. -2003-02-17 Jan Dj,Ad(Brv +2008-02-17 Dan Nicolaescu - * gtkutil.c (xg_tool_bar_expose_callback): New function. - (xg_create_tool_bar): Force style of tool bar to be horizontal with - icons. Set name of tool bar to emacs-toolbar. - (update_frame_tool_bar): Connect expose event to - xg_tool_bar_expose_callback. + * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive + with Qt. -2003-02-17 Richard M. Stallman +2008-02-17 Kenichi Handa - * keyboard.c (this_command_key_count_reset): New variable. - Initiatize to 0 where this_command_key_count is set. - (read_char): Save and restore this_command_key_count_reset - around input method code. - (read_char): If this_command_key_count_reset, echo reread commands. - (Freset_this_command_lengths): Set this_command_key_count_reset to 1. + * ftfont.c (ftfont_shape): Return Lispy number. -2003-02-17 Kenichi Handa + * xfaces.c (prepare_face_for_display): Use display_info->font->fid + for GCs. + (Finternal_set_font_selection_order): Call font_update_sort_order + only when enable_font_backend is set. + (realize_x_face): Set face->font_info to that of default face only + when enable_font_backend is set. - * fns.c (string_to_multibyte): Always return a multibyte string. + * xdisp.c (handle_composition_prop): Set it->c to the fist + characte of the composed region. + (fill_composite_glyph_string): Set base_face->font_info to + s->font_info. Get a face for ascii from base_face->ascii_face. + (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string + with a face already decided. + (x_produce_glyphs): Be sure to set it->ascent and it->descent to + non-negative. + (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING, + call font_prepare_composition unconditionally. -2003-02-16 Jason Rumney + * xfns.c (x_make_gc): Use the default font id of the frame for GCs. - * w32fns.c (w32_list_bdf_fonts, w32_list_fonts): - Negative max_fonts parameter means list all. + * xterm.h (struct x_display_info): New member font. -2003-02-14 Dave Love + * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs. + (x_set_mouse_face_gc, x_new_font): Likewise. + (x_term_init): Setup display_info->font. + (x_delete_terminal): Free display_info->font. - * fns.c (Flanginfo): Doc fix. + * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT. -2003-02-13 Kim F. Storm + * ftxfont.c (ftxfont_default_fid): Delete it. + (ftxfont_open): Set xfont->fid to 0. + (ftxfont_end_for_frame): Clear data specific to the frame and the + font-driver. - * lread.c (read_escape): Interpret \s as a SPACE character, except - for \s-X in a character constant which still is the super modifier. - (read1): Signal an `invalid read syntax' error if a character - constant is immediately followed by a digit or symbol character. + * xftfont.c (xftfont_default_fid): Delete it. + (xftfont_open): Set xfont->fid to 0. - * search.c (Fmatch_data): Doc fix. Explicitly state that - match-data is undefined if last search failed. + * fontset.c (FONTSET_OBJLIST): New macro. + (fontset_find_font): Update font-object list of the fontset. + (free_realized_fontset): New function. + (free_face_fontset): Call free_realized_fontset. + (Ffont_info): Call font_close_object only when enable_font_backend + is set. - * keymap.c (Fcommand_remapping): Rename from Fremap_command. - All uses changed. + * font.c [HAVE_X_WINDOWS]: Include xterm.h. + [HAVE_NTGUI]: Include w32term.h. + [MAC_OS]: Include macterm.ch. + (font_otf_ValueRecord): Use make_number. + (font_finish_cache): Fix handling of reference count. + (font_clear_cache): Update num_fonts. + (font_open_entity): Update smallest_char_width and + smallest_font_height of the frame. + (font_close_object): Update num_fonts. + (Fclear_font_cache): Fix finding the target cache data. -2003-02-12 Juanma Barranquero +2008-02-16 Glenn Morris - * eval.c (Fdefmacro): Fix typo. + * fontset.c (Finternal_char_font): Fix compilation warning. -2003-02-12 Kim F. Storm +2008-02-16 Eli Zaretskii - * macros.c (Fstart_kbd_macro): If appending, and last keyboard - macro is a string, convert meta modifiers in string when copying - the string into a vector. + * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP + instead of char arrays. Enlarge the size of array passed to + get_token_information. -2003-02-11 Kim F. Storm + * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation + warnings. - * keymap.c (Fremap_command): Return nil if arg is not a symbol. +2008-02-15 Dan Nicolaescu -2003-02-11 Kenichi Handa + * .gdbinit: Don't set `args', it breaks gdb --args. - * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el. +2008-02-14 Stefan Monnier -2003-02-10 Kim F. Storm + * fileio.c (Finsert_file_contents): Adjust offsets when replacing + within a narrowed buffer. - * process.c: Doc fixes. - (syms_of_process): Add `:' prefix to QCfilter_multibyte. +2008-02-14 Kenichi Handa -2003-02-10 Kenichi Handa + * coding.c (decode_coding_object, encode_coding_object): + Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer. - * fns.c (Fstring_to_multibyte): Fix typo in the docstring. +2008-02-12 Stefan Monnier - * process.c (QCfilter_multibyte): New variable. - (setup_process_coding_systems): New function. - (Fset_process_buffer, Fset_process_filter): - Call setup_process_coding_systems. - (Fstart_process): Initialize the member `filter_multibyte' of - struct Lisp_Process. - (create_process): Call setup_process_coding_systems. - (Fmake_network_process): New keyward `:filter-multibyte'. - Initialize the member `filter_multibyte' of struct Lisp_Process. - Call setup_process_coding_systems. - (server_accept_connection): Call setup_process_coding_systems. - (read_process_output): If the process has a filter, decide the - multibyteness of a string to given to the filter by - `filter_multibyte' member of the process. If the process doesn't - have a filter and the result of conversion is unibyte, use - Fstring_to_multibyte (not Fstring_make_multibyte) to get the - multibyte form. - (Fset_process_coding_system): Call setup_process_coding_systems. - (Fset_process_filter_multibyte): New function. - (Fprocess_filter_multibyte_p): New function. - (syms_of_process): Intern and staticpro QCfilter_multibyte. - Defsubr Sset_process_filter_multibyte and - Sprocess_filter_multibyte_p. + * coding.c (coding_set_destination): Use BEG_BYTE rather than + hardcoding 1. + (detect_coding_system): + * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text) + (string_char_to_byte, string_byte_to_char, insert_from_gap): + * insdel.c (insert_from_gap): + * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos) + (string_char_to_byte, string_byte_to_char, string_make_multibyte) + (string_to_multibyte): + * character.c (chars_in_text, multibyte_chars_in_text): + * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions. - * process.h (struct Lisp_Process): New member filter_multibyte. + * character.h (FETCH_STRING_CHAR_ADVANCE) + (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE) + (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF. + (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1. - * lisp.h (setup_process_coding_systems): Add prototype. + * casefiddle.c (casify_region): Only call after-change and composition + functions on the part of the region that was changed. - * buffer.c (Fset_buffer_multibyte): If the current buffer has a - process, update coding systems for the process. + * keyboard.c (read_avail_input): + * frame.c (Fdelete_frame): Call Fdelete_terminal. -2003-02-09 Kenichi Handa +2008-02-11 Stefan Monnier - * fns.c (string_to_multibyte): New function. - (Fstring_to_multibyte): New function. - (syms_of_fns): Defsubr it. + * buffer.c (clone_per_buffer_values, reset_buffer_local_variables) + (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list. -2003-02-08 Andreas Schwab +2008-02-11 Juanma Barranquero - * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable - instead of the substitution. + * w32menu.c (push_submenu_start, push_submenu_end) + (push_left_right_boundary, push_menu_pane, push_menu_item): + * keyboard.c (read_key_sequence): Don't pass args with side effects + to AREF, it fails when compiling with -DENABLE_CHECKING. -2003-02-08 Jan Dj,Ad(Brv +2008-02-11 Kenichi Handa - * xterm.c (x_make_frame_visible): Call gtk_window_deiconify. + * Makefile.in (${lispsource}international/charprop.el): + Delete this target. - * xmenu.c (menu_position_func): Adjust menu popup position so that - the menu is fully visible. + * search.c (boyer_moore): Fix incorrect synching of the trunk and + emacs-unicode-2. -2003-02-07 Jan Dj,Ad(Brv +2008-02-11 Stefan Monnier - * xterm.c (x_text_icon, x_raise_frame, x_lower_frame) - (x_make_frame_invisible, x_wm_set_icon_position): - Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif. + * terminal.c (Fdelete_terminal): Clean up the `force' path. - * xfns.c (x_set_name, x_set_title): Ditto. +2008-02-10 Stefan Monnier -2003-02-04 Richard M. Stallman + * frame.c (Qnoelisp): New symbol. + (syms_of_frame): Initialize it. + (Fdelete_frame): Use it to distinguish a mere `force' passed from + someharmles Elisp code, from a strong `force' from x_connection_closed. + * frame.h (Qnoelisp): Declare. + * xterm.c (x_connection_closed): Pass `noelisp'. - * keyboard.c (echo_now): Update before_command_echo_length. - (Freset_this_command_lengths): Reset this_command_key_count etc. - immediately rather than arranging to do it later. - (before_command_key_count_1, before_command_echo_length_1) - (before_command_restore_flag): Vars deleted. - (add_command_key): Don't handle before_command_restore_flag. - (read_char, record_menu_key): Don't update before_command_key_count or - before_command_echo_length. - (read_char): Don't handle before_command_restore_flag. + * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker) + (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd) + (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type + rather than `int' for the type of `type'. - * keyboard.c (command_loop_1): Don't call adjust_point_for_property - in direct-output clauses if it wouldn't be called in the ordinary case. +2008-02-10 Dan Nicolaescu -2003-02-04 Kim F. Storm + * s/gnu-linux.h: Remove support for non-ELF and linux-1.x. - * keyboard.c (syms_of_keyboard) : Doc fix. + * Makefile.in (GNUC): Remove support for gcc-1.x. -2003-02-02 Jan Dj,Ad(Brv +2008-02-10 Richard Stallman - * gtkutil.c (remove_from_container): Copying list is not needed. - (xg_update_menubar, xg_update_menu_item, xg_update_submenu) - (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free - on list returned from gtk_container_get_children to avoid memory leak. + * lisp.h (ASET): Use AREF, not ASLOT. -2003-02-01 Jason Rumney +2008-02-10 Stefan Monnier - * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for - local malloc. - [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel - definitions in xpm.h. - (init_xpm_functions): New function. - (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm. - (init_external_image_libraries): Try to load libXpm.dll. + * lisp.h (ASET): Check bounds. - * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting - timestamp. +2008-02-10 Glenn Morris -2003-01-31 Dave Love + * buffer.c (mode-name): Doc fix. - * syntax.c (Fskip_chars_forward) - (open-paren-in-column-0-is-defun-start): Doc fix. +2008-02-09 Dan Nicolaescu -2003-01-31 Joe Buehler + * Makefile.in: + * emacs.c: + * gmalloc.c: + * keyboard.c: + * lisp.h: + * m/ibm370aix.h: + * process.c: + * regex.c: + * s/hpux.h: + * sysdep.c: + * sysselect.h: + * systty.h: + * unexec.c: + * w32term.c: + * xsmfns.c: + * xterm.c: Remove code that deals with obsolete variables. - * fileio.c: Support // at start of name for Cygwin (just added proper - preprocessor tests). + * s/msdos.h (DONT_NEED_ENVIRON): Don't define. - * keyboard.c: Port to Cygwin (just added proper preprocessor tests). + * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test, + nothing else needs it anymore. - * Makefile.in: Use @EXEEXT@ for Cygwin. +2008-02-09 Eli Zaretskii - * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin. + * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table + instead of unibyte_char_to_multibyte. - * s/cygwin.h: Added for Cygwin port. +2008-02-09 Dan Nicolaescu -2003-01-31 Juanma Barranquero + * s/gnu-linux.h: Remove commented out code. - * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows - when including gif_lib.h. - (init_gif_functions, init_tiff_functions): New functions. - (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for - Windows. Disable color table lookups. Call library functions - through pointers determined at runtime. - (init_external_image_libraries): Try to load libungif.dll and - libtiff.dll. + * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE. -2003-01-31 Kenichi Handa + * Makefile.in: Update what RMS says about using autoconf. + (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable. + (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1): + (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1) + (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional. - * xdisp.c (SKIP_GLYPHS): New macro. - (set_cursor_from_row): Skip all glyphs that comes from overlay string. +2008-02-08 Stefan Monnier -2003-01-30 Jan Dj,Ad(Brv + * keymap.c (Fkey_description): Move side effect outside of macro call. - * gtkutil.c (free_frame_tool_bar): Remove debug printf. + * xfaces.c (Finternal_make_lisp_face): + * keyboard.c (add_command_key, parse_menu_item): Use ASET. -2003-01-30 Dave Love + * fontset.c (free_face_fontset): Use FONTSET_FROM_ID. + (syms_of_fontset): Use ASET. - * alloc.c (Vgc_elapsed, gcs_done): New variables. - (Fgarbage_collect): Use them. - (init_alloc, syms_of_alloc): Set them up. + * fns.c (concat): Move side effect outside of macro call. + (hash_clear): Use ASET. -2003-01-30 Juanma Barranquero +2008-02-08 Richard Stallman - * w32fns.c (init_external_image_libraries): Add missing operator. + * frame.c (Fdelete_frame): If FORCE, don't call hooks. + If FORCE, and frame has a surrogate minibuffer for another frame, + delete the other frame first. -2003-01-29 Jason Rumney +2008-02-07 Timo Savola - * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as - an alternative name for jpeg.dll. + * xterm.c (x_detect_focus_change): Handle embed client message. + (handle_one_xevent): Ditto. + (handle_one_xevent): If embedded and we get a button press/release, + request focus. + (xembed_set_info, xembed_send_message): New functions. + (x_make_frame_visible): Call xembed_set_info if embedded. + (x_make_frame_invisible): Call xembed_set_info if embedded. + (x_term_init): Initialize Xatom_XEMBED. + (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also. + (x_iconify_frame): Ditto. -2003-01-29 Kenichi Handa + * xterm.h (struct x_display_info): Add AtomXatom_XEMBED. + (enum xembed_info, enum xerm srmbed_message, enum xembed_focus) + (enum xembed_modifier, enum xembed_accelerator): New. + (xembed_set_info, xembed_send_message): Declare. + (FRAME_X_EMBEDDED_P): New. - * xdisp.c (set_cursor_from_row): Pay attention to string display - properties. + * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call + gtk_plug_new. -2003-01-28 Benjamin Riefenstahl + * xfns.c (Fx_create_frame): Do not override the explicitly set parent + window ID of a frame. + (x_window): Reparent frame if embedded. + (Fx_create_frame): Don't set border width if embedded. - * macterm.c (keycode_to_xkeysym_table): Add , , - . - (keycode_to_xkeysym_table): Reformat and add more comments. - (XTread_socket): Drop special case for backspace. + * emacs.c (USAGE3): Add --parent-id + (standard_args): Ditto. -2003-01-28 Andrew Choi +2008-02-07 Jan Djärv - * macfns.c (x_to_mac_color): Correct the order for parsing the RGB - values in old-style RGB specs. + * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)". -2003-01-27 Juanma Barranquero +2008-02-07 Jim Meyering - * w32fns.c (init_external_image_libraries): Try alternate names for the - jpeg dll. + Use "do...while (0)", not "if (1)...else" in macro definitions. + The latter provokes a warning from gcc about the empty else, when + followed by ";". Also, without that trailing semicolon, it would + silently swallow up any following statement. + * syntax.h (SETUP_SYNTAX_TABLE): + (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise. + * buffer.h (DECODE_POSITION): Likewise. + * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise. + (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise. + (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise. + (FETCH_CHAR_ADVANCE): Likewise. + (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise. -2003-01-27 Jan Dj,Ad(Brv +2008-02-07 Jim Meyering - * gtkutil.c (create_dialog, xg_separator_p) - (xg_item_label_same_p, xg_update_menu_item): Check for NULL string - before calling strcmp or strlen. + * lread.c [lint]: Don't include . -2003-01-26 Jan Dj,Ad(Brv +2008-02-07 Stefan Monnier - * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display - and handle image load failure. + * xselect.c (x_handle_dnd_message): + * xmenu.c (digest_single_submenu, xmenu_show): + * xdisp.c (with_echo_area_buffer_unwind_data) + (format_mode_line_unwind_data, unwind_format_mode_line) + (display_menu_bar): + * eval.c (Ffetch_bytecode): + * doc.c (store_function_docstring): + * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code) + (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map): + * buffer.c (add_overlay_mod_hooklist): Use ASET. -2003-01-26 Jason Rumney +2008-02-07 Kenichi Handa - * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper): - New functions. - (jpeg_load): Sync with xfns.c version. Adjust colors for Windows. - Disable color table lookups. Call jpeg library functions - through pointers determined at runtime. - (init_external_image_libraries): Try to load jpeg.dll. + * ftxfont.c (ftxfont_open): Don't set + dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0. -2003-01-25 Richard M. Stallman + * ftfont.c (ftfont_open): Fix previous change. - * lisp.h: Declare format2 instead of format1. +2008-02-06 Jason Rumney - * fileio.c (barf_or_query_if_file_exists): - Call format2 instead of format1. + * w32font.c (w32font_text_extents): Fill in lbearing metric. + Use cached metrics for ASCII characters. + (w32font_open_internal): Don't set font's owning_frame. + Cache metrics for ASCII characters. - * editfns.c (format2): New function, replaces format1 - but takes exactly two Lisp Objects as format args. + * w32font.h (struct w32font_info): Add ascii_metrics. + Remove owning_frame. - * buffer.c (Fkill_buffer): Call format2 instead of format1. +2008-02-06 Kenichi Handa -2003-01-25 Jan Dj,Ad(Brv + * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent + to negative value. - * xterm.h: Change to return value of x_dispatch_event to int. + * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info. - * xterm.c (x_filter_event): New function. - (event_handler_gdk, XTread_socket): Call x_filter_event. - (x_dispatch_event): Change to return value of finish. - (event_handler_gdk): Use return value from x_dispatch_event. + * ftfont.c (ftfont_open): Fix calculation of font->font.average_width. - * xfns.c (x_window): Call create_frame_xic for GTK version to - initialize input methods. + * charset.c (syms_of_charset): Set QCtest and Qeq. - * gtkutil.h: Add (void) prototypes. +2008-02-06 Stefan Monnier - * gtkutil.c (create_menus): Remove code that puts the help menu to - the right. + * process.c (Fstart_process): + * callproc.c (Fcall_process): Handle the case where + Funhandled_file_name_directory returns nil. -2003-01-25 Jason Rumney + * font.h (enum lgstring_indices, enum lglyph_indices): New enums. + (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros. + * font.c (check_gstring): Use them and AREF to access the vector before + we know it's really a gstring. + (Ffont_shape_text): Fix typo. + (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups. - * w32fns.c (XPutPixel): Handle monochrome images; used for masks. - [HAVE_PNG]: Sync with xfns.c version. - (png_load): Adjust colors for Windows. Use Windows - bitmaps. Disable color table lookups. - (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros. - (init_png_functions): New function. - (png_read_from_memory, png_load): Call png library functions - through pointers determined at runtime. - (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare. - (init_external_image_libraries): New function. - (init_xfns): Call it. + * composite.h (Fcompose_region_internal, Fcompose_string_internal): + Declare. -2003-01-24 Andreas Schwab + * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement. - * minibuf.c (Fminibuffer_message): Verify type of parameter. +2008-02-05 Jason Rumney -2003-01-24 Jan Dj,Ad(Brv + * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth. + Set smallest_font_height and smallest_char_width in display info. - * gtkutil.c (xg_initialize): Initialize id_to_widget here instead - of static initializer. +2008-02-05 Kenichi Handa -2003-01-24 Dave Love + * coding.c (decode_eol): Pay attention to coding->dst_multibyte. - * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more - architectures. +2008-02-05 Miles Bader - * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]: - Use __alignof__. + * xfaces.c (get_lface_attributes, merge_named_face) + (lookup_named_face, lookup_derived_face, realize_named_face): + Revert 2008-02-01 change by cyd@stupidchicken.com. -2003-01-24 Kenichi Handa +2008-02-04 Kenichi Handa - * keyboard.c (adjust_point_for_property): New second arg MODIFIED. - It it is nonzero, don't pretend that an invisible area doesn't exist. - (command_loop_1): Call adjust_point_for_property with proper - second arg. + * fontset.c (Ffontset_info): Handle the case of inhibitting the + fallback fonts. + (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names. -2003-01-22 Jason Rumney +2008-02-04 Jason Rumney - Sync changes with xterm.c and xfns.c. + * w32font.c (w32font_open_internal): Use font_unparse_fcname to + set full_name. + (w32font_open_internal): Use xmalloc, xrealloc, xfree. - * w32term.c (x_draw_glyph_string_foreground) - (x_draw_composite_glyph_string_foreground): Implement overstriking. +2008-02-03 Jason Rumney - * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current - phys_cursor's hpos is overwritten. This is still not completely - correct, as it doesn't really make sense to use hpos at all to - get the cursor glyph (as that is relative to the width of the - characters on the line, which may have changed during the update). + * makefile.w32-in (OBJ1): Include font.o here. + (FONTOBJ) [USE_FONTBACKEND]: Instead of here. - * w32term.c (notice_overwritten_cursor): Handle the special case - of the cursor being in the first blank non-text line at the - end of a window. +2008-02-02 Jason Rumney - * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor) - (x_draw_phys_cursor_glyph): Set phys_cursor_width here. - Compute from the x position returned by x_draw_glyphs. + * makefile.w32-in (temacs): Bump EMHEAP to 21. - (x_display_and_set_cursor): Don't set phys_cursor_width here, - except for NO_CURSOR and system caret, to make phys_cursor_width - contain what its name suggests. - (notice_overwritten_cursor): Consider the cursor image erased if - the output area intersects the cursor image in y-direction. +2008-02-01 Jason Rumney - * w32term.c (note_mode_line_or_margin_highlight): Rename from - note_mode_line_highlight and extend. + * s/cygwin.h: Define VIRT_ADDR_VARIES. - * w32term.c (last_window): New variable. - (w32_read_socket) : Generate SELECT_WINDOW_EVENTs. - (note_mouse_movement): Remove reimplemented code in #if 0. + * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition. - * w32fns.c (x_set_cursor_type): Set cursor_type_changed, - not update_mode_lines, and always set it to 1. +2008-02-01 Andreas Schwab -2003-01-21 Jason Rumney + * Makefile.in (shortlisp, lisp): Update for rename of + ../lisp/language/myanmar.el. - * w32fns.c (IDC_HAND): Define it if system headers don't. +2008-02-01 Chong Yidong -2003-01-21 KOBAYASHI Yasuhiro + * xfaces.c (get_lface_attributes): Delete function. + (merge_named_face, lookup_named_face, lookup_derived_face) + (realize_named_face): Call lface_from_face_name directly, and use + the fact that merge_face_vectors does not alter its FROM argument. - * w32term.h (struct w32_output): New member hand_cursor. - (WM_EMACS_SETCURSOR): New message definition. +2008-02-01 Jason Rumney - * w32term.c (note_mode_line_highlight): Delete #if 0 to enable - function w32_define_cursor. - (note_mouse_highlight): Initialize, setup cursor accoding to mouse - position, change member name output_data.x to output_data.w32 and - add function w32_define_cursor. - (show_mouse_face): Delete #if 0 to enable function w32_define_cursor - and change member name output_data.x to output_data.w32. - (w32_initialize_display_info): - Setup dpyinfo->vertical_scroll_bar_cursor. + * w32term.c (w32_read_socket) : Decode non-Unicode + input in the default locale. Handle non-Unicode multibyte input. - * w32fns.c (Vx_hand_shape): New variable. - (w32_wnd_proc): Add message entries for WM_SETCURSOR and - WM_EMACS_SETCURSOR. - (x-create-frame): Setup Cursor types. +2008-02-01 Kenichi Handa -2003-01-21 David Ponce + * fontset.c (reorder_font_vector): Exclude nil elements from the + font group. Don't try multiple fonts. + (fontset_font): Adjust for the above change. + (Finternal_char_font): Return nil if the found font doesn't + contain the character ch. - * w32term.c (w32_encode_char): For DIM=1 charset, set - ccl->reg[2] to -1 before calling ccl_driver. - (Sync. with xterm.c x_encode_char change by Kenichi Handa - on 2002-09-30.) - (w32_draw_relief_rect): Declare all args. - (w32_define_cursor): New. + * Makefile.in (lisp, shortlisp): Add cham.el. - * w32fns.c (w32_load_cursor): New function. - (w32_init_class): Use it. - (x_put_x_image): Declare all args. +2008-02-01 Kenichi Handa -2003-01-21 Richard Dawe + * font.h (FONTP): Make it return 1 also for a font-object. - * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG. + * .gdbinit (xfontset): New function. -2003-01-21 Jan Dj,Ad(Brv + * font.c (font_find_for_lface): Check if the character C is + supported or not only for the first font. - * gtkutil.c: Must include stdio.h before termhooks.h. + * fontset.c (reorder_font_vector): Fix typo. + (fontset_find_font): Don't add a font-spec specifying a script. + Use 0 (not Qt) for the indication of empty font-group. Change the + format of RFONT-DEF. Return Qt if no font in the font-group + support the character. + (fontset_font): Adjust for the above change. If no font was + found the character, remember that. + (face_for_char): Adjust for the change of RFONT-DEF. + (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify + no font for the target. + (Finternal_char_font): Adjust for the change of RFONT-DEF. -2003-01-21 Dave Love +2008-02-01 Kenichi Handa - * alloc.c (Fgc_status): Print zombie list. - (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]: - Fix assignment of zombies. - (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]: - Don't take car of non-cons. - - * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define. - - * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define. - -2003-01-20 David Ponce - - * w32menu.c (digest_single_submenu): Declare all args. - - Sync with 2002-12-23 Richard M. Stallman - changes in xmenu.c: - - (parse_single_submenu): Use individual keymap's prompt - string as pane name, if there is one. - (set_frame_menubar): Save menu_items_n_panes from each call to - parse_single_submenu and use it when calling digest_single_submenu. - -2003-01-20 Steven Tamm - - * macterm.c (XTread_socket): Check for valid, visible window - before sending a scroll-wheel event. - -2003-01-20 Richard M. Stallman - - * xdisp.c (redisplay_window): If mini window's buffer is not - a minibuffer, then redisplay it like other windows. - -2003-01-20 Jan Dj,Ad(Brv - - * gtkutil.c (xg_create_frame_widgets): Check if there is an - external tool bar before setting tool bar height. - -2003-01-19 Jan Dj,Ad(Brv - - * xterm.c (handle_one_xevent): Surround popup_activated - with #ifdef:s for non-toolkit version. - - * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK. - (gtkutil.o): New file. - (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK. - (LIBW): Set to @GTK_LIBS@ if USE_GTK. - - * gtkutil.c: New file for GTK version. - - * gtkutil.h: New file for GTK version. - - * xterm.h: Add xt_or_gtk_widget. - Include gtk files for USE_GTK. - (struct x_output): Add toolbar_height. - (struct x_output): Add GTK widgets and Gdk size_hints. - (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET) - (FRAME_OUTER_WINDOW): New macros for USE_GTK. - (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation. - - * xterm.c: Include gtkutil.h for USE_GTK. - (free_frame_menubar): Declare extern void for USE_GTK. - (note_mouse_highlight): Check popup_activated for USE_GTK. - (xt_action_hook): Don't compile if USE_GTK. - (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK. - (xg_scroll_callback): New function. - (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK. - (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb - for USE_GTK. - (x_scroll_bar_create): Call xg_update_scrollbar_pos and - xg_show_scroll_bar for USE_GTK. - (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK. - (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK. - (event_handler_gdk): New function for USE_GTK. - (handle_one_xevent): Call xg_resize_widgets for USE_GTK. - (handle_one_xevent): Make sure widget is mapped before - calling x_real_positions for USE_GTK. - (XTread_socket): Add GTK event loop for USE_GTK. - (x_set_window_size): Call xg_frame_set_char_size for USE_GTK. - (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK. - (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK. - (x_iconify_frame): Add code for USE_GTK. - (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK. - (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version - is in gtkutil.c. - (x_term_init): Add initialization for GTK. - (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK. - - * xmenu.c: Include gtkutil.h for USE_GTK. - (Fx_popup_menu): Use current position if x and y are nil. - (single_menu_item, single_menu_item, Fx_popup_dialog): - Check for USE_GTK. - (popup_widget_loop): New function for USE_GTK. - (x_activate_menubar): Add code for USE_GTK. - (popup_activate_callback, popup_deactivate_callback) - (menu_highlight_callback, menubar_selection_callback): - Add USE_GTK versions. - (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK. - (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK. - (free_frame_menubar): Only compile if not USE_GTK. GTK version - is in gtkutil.c. - (popup_selection_callback): New version for USE_GTK. - (create_and_show_popup_menu): New fuction, one USE_GTK version and - one USE_X_TOOLKIT version. - (xmenu_show): Call create_and_show_popup_menu. - (dialog_selection_callback): New version for USE_GTK. - (create_and_show_dialog): New fuction, one USE_GTK version and - one USE_X_TOOLKIT version. - (xdialog_show): Call create_and_show_dialog. - - * xfns.c: Include gtkutil for USE_GTK. - (x_window_to_frame, x_any_window_to_frame) - (x_non_menubar_window_to_frame, x_menubar_window_to_frame) - (x_top_window_to_frame): Add code for USE_GTK. - (x_set_background_color): Call xg_set_background_color for GTK. - (x_set_menu_bar_lines): Check for USE_GTK. - (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK. - (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK. - (x_window): Call xg_create_frame_widgets for USE_GTK. - (Fx_create_frame): Check for USE_GTK. - (Fx_file_dialog): New implementation for USE_GTK. - - * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar. - (update_menu_bar): Add check for USE_GTK. - (update_tool_bar): Add check for USE_GTK and external tool bar. - (redisplay_tool_bar): Add check for USE_GTK and external tool bar. - (redisplay_internal): Add check for USE_GTK and popup_activated. - (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR. - (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR. - (display_menu_bar): Add check for USE_GTK - - * lisp.h (Vx_resource_name): Declare extern. - - * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT - for USE_GTK. - (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK. - - * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK. - (FRAME_EXTERNAL_TOOL_BAR): New macro. - (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK. - - * fileio.c (Fread_file_name): Add check for USE_GTK. - - * dispnew.c (adjust_frame_glyphs_for_window_redisplay): - Add check for USE_GTK. - - * config.in: Added HAVE_GTK. - - * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK. - -2003-01-18 Stefan Monnier - - * charset.h (Funibyte_char_to_multibyte): Export. - -2003-01-18 Jan Dj,Ad(Brv - - * xmenu.c (mouse_position_for_popup): New function. - (Fx_popup_menu): Call mouse_position_for_popup for X and - mouse_position_hook for others. - -2003-01-17 Kim F. Storm - - * editfns.c (Finsert): Mention `string-make-multibyte' and - `string-as-multibyte' in doc string. - -2003-01-17 Kenichi Handa - - * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here. - - * editfns.c (Fformat): Convert an unibyte char argument that is - formatted by "%c" to multibyte if the total result must be a - multibyte string. + * font.c (font_load_for_face): Handle the case that the font in + face->lface is a string. -2003-01-16 Kim F. Storm +2008-02-01 Kenichi Handa - * process.c (set-process-filter): Document unibyte/multibyte-ness - of string argument. + * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface. -2003-01-16 Kenichi Handa +2008-02-01 Kenichi Handa - * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros. + * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: + Fix previous change. If the frame is not on a window system, + signal an error. - * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY. - (re_search_2): Likewise. +2008-02-01 Kenichi Handa -2003-01-15 Kenichi Handa + * coding.c (decode_coding_object, encode_coding_object): Adjust + marker positions after conversion. - * xdisp.c (message_dolog): Fix bug of the case that *Message* - buffer is unibyte. + * lisp.h (struct Lisp_Marker): New member need_adjustment. -2003-01-15 Francesco Potort,Al(B +2008-02-01 Kenichi Handa - * fns.c (Fsubstring): Clarify doc string. + * font.c (font_find_for_lface): Fix the handling of the return + value of font_has_char. + (Ffont_shape_text): Fix previous change. - * textprop.c (Ftext_properties_at, Fnext_char_property_change) - (Fprevious_char_property_change) - (Fnext_single_char_property_change) - (Fprevious_single_char_property_change, Fnext_property_change) - (Fnext_single_property_change, Fprevious_property_change) - (Fprevious_single_property_change, Fadd_text_properties) - (Fput_text_property, Fset_text_properties) - (Fremove_text_properties, Fremove_list_of_text_properties) - (Ftext_property_any, Ftext_property_not_all): Clarify doc strings. + * fontset.c (FONTSET_REF_AND_RANGE): Delete it. + (fontset_ref_and_range): Delete it. + (fontset_find_font): Call char_table_ref_and_range instead of + FONTSET_REF_AND_RANGE. + (make_fontset): Don't setup font groups of Latin here. + (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII. + (new_fontset_from_font): Make the specified font the default for + all Latin characters. -2003-01-14 Kim F. Storm +2008-02-01 Kenichi Handa - * process.h (struct Lisp_Process): New member plist replaces old - member private_vars. All uses changed. + * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame + is on a window system before accessing the fontset of the frame. - * process.c: Reworked 2003-01-12 change -- call a plist a plist! - (QCplist): Rename from QCvars. Change all uses. - (Fprocess_plist): Replaces Fprocess_variable. Simplified. - (Fset_process_plist): Replaces Fset_process_variable. Simplify. - (syms_of_process): Intern, staticpro, defsubr these. - (Fmake_network_process): Describe :plist arg. Remove :vars arg. +2008-02-01 Kenichi Handa -2003-01-14 Francesco Potort,Al(B + * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el. - * m/delta.h: Remove (obsolete). + * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only + when both HAVE_M17N_FLT and HAVE_LIBOTF are defined. -2003-01-13 Francesco Potort,Al(B + * font.c (Ffont_shape_text): If the font driver doesn't have a + shaper function, make zero-width glyphs to have at least one-pixel + width. Fix setting of `to' field of glyphs. - * fileio.c (Fdelete_directory, Fdelete_file): Document the - behaviour in front of symlinks. - (Fdelete_file): Raise an error on directories. +2008-02-01 Kenichi Handa -2003-01-13 Dave Love + * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of + glyphs. - * fns.c (Freverse): Use QUIT. + * font.h (struct font_driver): Improve docstring of member `shape'. -2003-01-13 Richard M. Stallman +2008-02-01 Kenichi Handa - * minibuf.c (minibuffer_completion_contents): - Error if point is inside prompt. + * composite.c (syms_of_composite): Fix docstring of + auto-composition-function. - * keyboard.c (command_loop_1): Don't redisplay directly - if there's a post-command-hook. + * font.h (LGLYPH_SIZE): New macro. - * fileio.c (syms_of_fileio) : Doc fix. - (Fdo_auto_save): Add gcpros around Ffile_name_directory. + * font.c (Ffont_fill_gstring): Stop filling when a character not + supported by the font is found. + (Ffont_shape_text): When a shape callback function returns nil, + try at most two more times with larger gstring. + (Ffont_at): Fix getting of w. Call font_at with correct 5th argument. -2003-01-12 Kim F. Storm + * xdisp.c (handle_auto_composed_prop): Change the argument to + auto-composition-function. - * process.h (struct Lisp_Process): New member private_vars. + * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE. + (ftfont_shape_by_flt): If an element of lgstring is nil, make a + Lispy glyph and store it in the lgstring. - * process.c (QCvars): New variable. - (syms_of_process): Intern and staticpro it. - (Fset_process_contact): Removed function. - (Fprocess_variable, Fset_process_variable): New functions. - (syms_of_process): Defsubr them. - (Fstart_process): Initialize private_vars plist to nil. - (Fmake_network_process): New arg :vars to setup the private - variables for new network process. - (server_accept_connection): Copy server's private variables to - client process. + * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE. - * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious - crashes). Code rewritten and simplified. Now directly aligns the - pointer and recalculates pure_bytes_used, rather than aligning the - size and adjusting the pointer. + * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE. -2003-01-11 Kim F. Storm +2008-02-01 Kenichi Handa - * process.c (Fset_process_contact): New function. - (syms_of_process): defsubr it. - (make-network-process): Update doc. + * font.c (Ffont_shape_text): Avoid unnecessary composition. -2003-01-10 Andreas Schwab + * fontset.c (Vfont_encoding_charset_alist): New variable. + (syms_of_fontset): DEFVAR it. + (reorder_font_vector, fontset_find_font): Optimize for the case of + no need of reordering. + (face_for_char): Map the charset property by + Vfont_encoding_charset_alist. - * alloc.c (pure_alloc): Correct alignment for Lisp_Floats. - Reported by Berthold Gunreben . +2008-02-01 Jason Rumney -2003-01-10 Dave Love + * w32font.c (logfonts_match): Don't check adstyle here. + (font_matches_spec): Check here against physical font instead. + (add_font_entity_to_list): Avoid some substitutions. - * composite.c (syms_of_composite): Make composition_hash_table weak. + * font.c (font_parse_fcname): Default weight and slant to normal. + (font_score): Prefer normal fonts if weight or slant unspecified. + (font_score) [WINDOWSNT]: Scale weight difference down to closer + match freetype scores. -2003-01-09 Kim F. Storm +2008-02-01 Jason Rumney - * process.c (Fmake_network_process): Convert new port number - to host byte order for `:service t' case. From Mario Lang. + * w32font.c (w32font_text_extents): Don't use the frame stored in the + font, as it may have been deleted. + (w32_enumfont_pattern_entity): Map generic family to adstyle using + most common hyphenless variation. + (logfonts_match): Check generic family. + (font_matches_spec): Don't check generic family here. + (fill_in_logfont): Set generic family based on adstyle. -2003-01-08 Jan Dj,Ad(Brv + * w32font.h (w32font_get_cache): Update declaration. - * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event - instead of XtAppProcessEvent. +2008-02-01 Kenichi Handa - * xterm.c (handle_one_xevent): New function. - (x_dispatch_event): New function. - (XTread_socket): Call handle_one_xevent. + * ftfont.c (ftfont_get_cache): Adjust the argument type. - * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New. + * frame.c (x_set_font_backend): Don't call Fclear_font_cache. + If none of the new drivers are available, call font_update_drviers + with the old drivers. - * xmenu.c (Fx_popup_menu): If popping up at mouse position, - call XQueryPointer to get coordinates. - (popup_get_selection): Do not set popup_activated_flag to zero, - let popup_deactivate_callback do that. Needed for Motif. - Call x_dispatch_event instead of XtDispatchEvent. - (xmenu_show): Calculate root coordinate from frame top/left position. + * w32font.c (w32font_get_cache): Adjust the argument type. -2003-01-08 Kim F. Storm + * xfont.c (xfont_get_cache): Adjust the argument type. - * process.c (server_accept_connection): Fix recording of new - connection's local address in :local property of contact info. - (Fmake_network_process): Record local network address for new - client processes in :local property of contact info. - (format-network-address): Add arg OMIT-PORT. Change callers. + * font.h (struct font_driver): Change argument type of get_cache. -2003-01-07 Dave Love + * xftfont.c (xftfont_start_for_frame): Delete prototype. - * Makefile.in (fns.o): Depend on coding.h. + * font.c (Ffont_get): Fix arguments to Fassoc. + (font_prepare_cache, font_finish_cache, font_get_cache): New functions. + (font_clear_cache): New function. + (font_list_entities, font_matching_entity): Use font_get_cache. + (font_update_drivers): Call font_clear_cache when finishing a driver. -2003-01-06 Dave Love + * fontset.c (fontset_find_font): Fix previous change. - * fns.c: Include coding.h. Use POINTER_TYPE*, not void*. - (Vlocale_coding_system): Declare. - (Qcodeset, Qdays, Qmonths, Qpaper): New. - (Flanginfo): New. - (syms_of_fns): Initialize new stuff. +2008-02-01 Kenichi Handa -2003-01-07 Markus Rost + * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access + dpyinfo->font_table. + (x_delete_display) [USE_FONT_BACKEND]: Likewise. + (x_delete_terminal) [USE_FONT_BACKEND]: Likewise. - * minibuf.c (Fread_variable): Doc fix. + * font.c (font_at): Handle the case that the arg C is negative. + Handle the unibyte case. + (Ffont_at): Call font_at with the arg C -1. - * eval.c (Fuser_variable_p): Doc change. For custom variables, - use the same test as for custom-variable-p. + * xdisp.c (handle_auto_composed_prop): Don't get a character at + the position here, and call font_at with the arg C -1. + Don't check the range of the existing composition at the point. -2003-01-05 Richard M. Stallman +2008-02-01 Kenichi Handa - * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT. - Count LAST_LINE_MISFIT in scroll margin for end of window. - Move label too_near_end before setting SCROLL_MARGIN_POS. - Set LAST_LINE_MISFIT before jumping there. + * fontset.c (fontset_add): New args charset_id and family. + Change caller. + (load_font_get_repertory, fontset_find_font): Assume that + font_spec is always a font-spec object. + (Fset_fontset_font): Always store a font-spec object in a fontset. - * xdisp.c (try_scrolling): Calculate amount_to_scroll better in - scroll_conservatively case. If scrolling that much doesn't change - STARTP, move it down one line. + * xdisp.c (handle_auto_composed_prop): Use Fget_text_property + instead of get_property_and_range. - * xdisp.c (redisplay_window): Pass last_line_misfit arg to - try_scrolling. Make it 1 after make_cursor_line_fully_visible fails. +2008-02-01 Kenichi Handa - * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no - selected frame. + * xftfont.c (struct xftfont_info): Delete the member ft_face. + (xftfont_open): Don't keep locking face. + (xftfont_close): Don't unlock face. + (xftfont_anchor_point, xftfont_shape): Lock and unlock face. + + * fontset.c (fontset_find_font): Don't prefer a font of + supplementary charset. + +2008-02-01 Kenichi Handa + + * ftfont.c (struct OpenTypeSpec): Rename members script_tag to + script, langsys_tag to langsys, new member script. + (OTF_TAG_STR): Terminate by '\0'. + (ftfont_get_open_type_spec): If :otf prop is is spec, Limit the + listing to the script specified in that property. Fix arg to + OTF_check_features. + +2008-02-01 Jason Rumney + + * w32font.h: New file. + + * w32font.c: Include it. + (struct w32font_info): Add owning_frame field. Move to w32font.h. + (w32font_open): Set owning_frame. + (w32font_text_extents): Use owning_frame. + (struct font_callback_data): Add opentype_only field. + (add_font_entity_to_list): Use it to filter fonts. + Don't check against full name. + (w32font_list_internal): New function. + (w32font_list): Use it. + (w32font_match_internal): New function. + (w32font_match): Use it. + (w32font_open_internal): New function. + (w32font_open): Use it. + (w32font_get_cache, w32font_close, w32font_has_char) + (w32font_encode_char, w32font_text_extents, w32font_draw): + Make non-static. + + * makefile.w32-in (w32font.o): Depend on w32font.h. - * keymap.c (apropos_predicate, apropos_accumulate): Make them static. - (syms_of_keymap): Staticpro them. - (Fapropos_internal): Initialize them and clear them out. - Don't GCPRO them. +2008-02-01 Kenichi Handa - * buffer.c (syms_of_buffer) : Doc fixes. + * charset.c (Fdefine_charset_internal): Record a supplementary + charset at the tail of Vcharset_order_list. - * lisp.h: New misc type Lisp_Save_Value. - (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value. - (XSAVE_VALUE): New macro. - (struct Lisp_Save_Value): New data type. - (union Lisp_Misc): Add u_save_value alternative. - (make_save_value): Declare. + * font.c (Ffont_shape_text): Fix the return value. - * alloc.c (make_save_value): New function. + * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names. - * xterm.c (x_catch_errors): Save dpy using make_save_value. - (x_catch_errors_unwind): Call XSync. + * xdisp.c (handle_auto_composed_prop): Fix previous change. -2003-01-01 Richard M. Stallman +2008-02-01 Kenichi Handa - * window.c (window_scroll_pixel_based): Partially undo last change. + * ftfont.c (struct OpenTypeSpec): New struct. + (OTF_SYM_TAG, OTF_TAG_STR): New macros. + (ftfont_get_open_type_spec): New function. + (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property. - * keyboard.c (command_loop_1): Call adjust_point_for_property - in direct action cases for Qforward_char and Qbackward_char. - Set already_adjusted so it won't be done twice. + * lread.c (read1): Redo the previous change with checking Vpurify_flag. -2002-12-30 Richard Dawe +2008-02-01 Jason Rumney - * src/config.in (!HAVE_SIZE_T): Fix order of arguments in - type definition of size_t. + * w32font.c (add_font_entity_to_list): Compare only the beginning + of full name. -2003-01-02 Steven Tamm +2008-02-01 Kenichi Handa - * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to - distinguish Carbon GUI builds from X11 builds on darwin. + * xdisp.c (handle_auto_composed_prop): Simplify the code. + Never return HANDLED_RECOMPUTE_PROPS. -2002-12-30 Steven Tamm +2008-02-01 Kenichi Handa - * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2 - to default to t. + * font.c (font_gstring_produce): Delete it. -2002-12-29 Francesco Potort,Al(B + * composite.h (COMPOSITION_METHOD): + Handle COMPOSITION_WITH_GLYPH_STRING. - * data.c (Fstring_to_number, Fminus): Better English in doc strings. +2008-02-01 Kenichi Handa -2002-12-28 Steven Tamm + * xfont.c (Qx): Delete. + (syms_of_xfont): Don't initialize Qx. - * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to - allow building in a different directory than source. Uses some - GNU Make extensions, but there is no other make on Mac OS X. + * composite.h (enum composition_method): + Define COMPOSITION_WITH_GLYPH_STRING unconditionally. -2002-12-26 Francesco Potort,Al(B +2008-02-01 Kenichi Handa - * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local) - (Fsetq_default, Fmake_local_variable, Fkill_local_variable) - (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus) - (Fstring_to_number): Mention the returned value in the doc strings. + * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally. + (choose_face_font): Accept new form of font-spec. -2002-12-23 Richard M. Stallman + * frame.h (font_driver_list): Declare it unconditionally. + (struct frame): Define members font_driver_list and font_data_list + unconditionally. - * buffer.c (syms_of_buffer) - : Doc fix. + * fontset.c: Include "font.h" unconditionally. + (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd. + (Fset_fontset_font): Accept a font-spec object. - * xmenu.c (parse_single_submenu): Use individual keymap's prompt - string as pane name, if there is one. - (set_frame_menubar): Save menu_items_n_panes from each call to - parse_single_submenu and use it when calling digest_single_submenu. + * font.c (font_unparse_xlfd): If pixel_size is zero, make the + PIXEL_SIZE part a wild card. - * window.c (window_scroll_pixel_based): Fix check for reaching BEGV. - Don't try to make last line fully visible if it is past end of window. + * dispextern.h (struct glyph_string): Define members clip and + num_clips unconditionally. + (struct face): Define members font_info and extra unconditionally. -2002-12-22 Steven Tamm + * ftfont.c (ftfont_open): Set members maybe_otf and otf of + ftfont_info only when HAVE_LIBOTF is defined. - * macmenu.c (MIN_POPUP_SUBMENU_ID): Add. - (mac_menu_show): Add support for hierarchical popup menus. - (add_menu_item): Remove indentation support. - (fill_submenu, fill_menu): Create hierarchical menus - instead of using indentation. +2008-02-01 Andreas Schwab -2002-12-22 Richard M. Stallman + * xdisp.c (back_to_previous_visible_line_start): Fix type of beg + and end. - * xdisp.c (try_cursor_movement): Don't call try_window here. - (redisplay_window): Never redisplay minibuffer when inactive. +2008-02-01 Jason Rumney - * window.c (select_window_1): Undo 9/21 change. + * w32font.c (w32font_driver): Add new fields. -2002-12-22 Steven Tamm +2008-02-01 Kenichi Handa - * macterm.c (XTread_socket): Call KeyTranslate for control and - meta to deal correctly shifted non-alpha characters, like C-S-5 - being treated like C-%. Do not look for shift key to deal - with masking off control-key with mac-reverse-ctrl-meta. + * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@. + (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally. + (LIBES): Add @M17N_FLT_CFLAGS@. + + * composite.c (compose_text): Don't treat the new style + composition specially. + + * emacs.c (main): Call syms_of_font unconditionally. + + * font.h (FONT_ENTITY_NOT_LOADABLE) + (FONT_ENTITY_SET_NOT_LOADABLE): New macros. + (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring. + (struct font_driver): New member shape. + (font_registry_charsets): Extern it. + (font_find_for_lface, font_prepare_composition): Adjust prototype. + (font_otf_capability, font_drive_otf): Delete their externs. + + * font.c [HAVE_M17N_FLT]: Include . + (font_charset_alist, font_registry_charsets): Move from xfont.c + and rename. + (font_prop_validate_otf): New function. + (font_property_table): Register it for QCotf. + (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER) + (font_drive_otf): Delete. + (font_prepare_composition): New arg F. Adjust for the change of + lispy gstring. + (font_find_for_lface): New arg C. + (font_load_for_face): Adjust for the change of font_find_for_lface. + (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of + lispy gstring. + (Ffont_shape_text): New function. + (Fopen_font): If the font size is not given, use 12-pixel. + (Ffont_at): New arg STRING. + (syms_of_font): Initalize font_charset_alist. + Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont + conditionally. -2002-12-21 Richard M. Stallman + * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple + fonts of the same font-spec. Change the format of RFONT-DEF. + (face_for_char, make_fontset_for_ascii_face, Finternal_char_font): + Adjust for the change of RFONT-DEF. + (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec. + + * ftfont.h: New file. + + * ftfont.c: Don't include Freetype headers. Include "ftfont.h". + (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf. + (ftfont_open) [HAVE_LIBOTF]: Initialize the above members. + (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set + font_otf_capability and font_drive_otf, set ftfont_shape. + (ftfont_list): Adjust for the change of :otf property value. + (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct. + (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf) + (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt) + (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.s + (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro. + (otf_gstring, gstring, m17n_flt_initialized): New variables. + + * w32term.c (x_draw_composite_glyph_string_foreground): + Adjust for the change of lispy gstring. + + * xdisp.c (handle_composition_prop): Adjust for the change of + lispy gstring. Call a function for auto-composition with the + third arg it->window. + (fill_composite_glyph_string): Adjust for the change of lispy string. + (x_produce_glyphs): Adjust for the change of font_prepare_compositionl. + + * xfaces.c (set_font_frame_param): Adjust for the change of + font_find_for_lface. + + * xfont.c (x_font_charset_alist): Move to font.c and rename. + (xfont_registry_charsets): Likewise. Change caller. + (syms_of_xfont): Don't handle x_font_charset_alist. + + * xftfont.c: Include "ftfont.h". + (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf. + (xftfont_open) [HAVE_LIBOTF]: Initialize the above members. + (xftfont_close) [HAVE_LIBOTF]: Close otf. + (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function. + (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]: + Set xftfont_driver.shape to xftfont_shape. + + * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for + the change of lispy gstring. - * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS. - If it is non-nil, run timers. Use an unwind-protect to requeue - the events that were read ahead. - (popup_get_selection_unwind): New subroutine. - (popup_get_selection_queue): File-scope variable now holds that queue. - (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection. - (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection. - Use an unwind-protect to pop down the dialog box. - (xdialog_show_unwind): New subroutine implements that. +2008-02-01 Kenichi Handa - * xdisp.c (row_containing_pos): Change exit test using last_y. - (try_window_id): Abort if row_containing_pos returns null. + * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error. - * lread.c (load_error_handler): New function. - (Fload): Handle errors in Fsubstitute_in_file_name. - Don't expect Fsignal to return. +2008-02-01 Jason Rumney - * eval.c: Errors and throws work right with interrupt blocking. - (struct catchtag): New elt interrupt_input_blocked. - (unwind_to_catch): Restore interrupt_input_blocked from saved value. - (internal_catch, Fcondition_case, internal_condition_case) - (internal_condition_case_1, internal_condition_case_2): Save it. - (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT. + * w32font.c (w32font_draw): Fill background manually. - * editfns.c (Fformat): Add parens. +2008-02-01 Jason Rumney - * dired.c (file_name_completion): Fix that change. - Delete special quit-handling code; just use QUIT. + * font.c (Qfontp): Remove unused symbol. + (QCantialias): New symbol. + (syms_of_font): Define it. + (font_property_table): Set a validator for QCantialias. -2002-12-21 Tak Ota + * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY): + Define if not already. + (QCfamily): Share with xfaces.c. + (Qstandard, Qsubpixel, Qnatural): New symbols. + (syms_of_w32font): Define them. Don't define QCfamily here. + (w32_antialias_type, lispy_antialias_type): New functions. + (w32_enumfont_pattern_entity): New arg requested_font. + Set antialias parameter if non-default was requested. + (fill_in_logfont): Fill in lfQuality if :antialias specified. - * dired.c (file_name_completion): Close directory on error - just as in directory_files_internal. +2008-02-01 Kenichi Handa -2002-12-19 David Kastrup + * lread.c (read1): Undo the previous change. - * window.c (Fset_window_configuration): Set old_point to correct - value when new_current_buffer == current_buffer. +2008-02-01 CHENG Gao (tiny change) -2002-12-17 Ben Key + * frame.c (Fdelete_frame): Call font_update_drivers only when + USE_FONT_BACKEND is defined. - Revisited my earlier fix for the following entry in etc/PROBLEMS: - "Emacs built on Windows 9x/ME crashes at startup on Windows XP, - or Emacs builtpart of on XP crashes at startup on Windows 9x/ME." +2008-02-01 Kenichi Handa - These changes were in part based upon suggestions made by Peter - 'Luna' Runestig [peter@runestig.com]. + * font.h (struct font_bitmap): New member bits_per_pixel. + (struct font_driver): New members start_for_frame and end_for_frame. + (struct font_data_list): New struct. + (font_put_frame_data, font_get_frame_data): Extern them. - * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token) - (g_b_init_get_token_information, g_b_init_lookup_account_sid) - (g_b_init_get_sid_identifier_authority ): Add several static - global variables. + * frame.h (struct frame): New member font_data_list. - * w32.c (globals_of_w32): New function. Used to initialize those - global variables that must always be initialized on startup even - when the global variable initialized is non zero. Its primary - purpose at this time is to set the global variables - g_b_init_is_windows_9x, g_b_init_open_process_token, - g_b_init_get_token_information, g_b_init_lookup_account_sid, and - g_b_init_get_sid_identifier_authority to 0 on startup. - Called from main. + * font.c (font_update_drivers): Call driver->start_for_frame and + driver->end_for_frame at proper timings. + (font_put_frame_data, font_get_frame_data): New functions. + (Ffont_spec): Add usage in the docstring. - * w32.c (is_windows_9x): Perform initialization only if - g_b_init_is_windows_9x is equal to 0. On initialization set - g_b_init_is_windows_9x equal to 1. + * frame.c (make_frame): Initialize f->font_data_list to NULL. + (Fdelete_frame): Call font_update_drivers. - * w32.c (open_process_token): Perform initialization only if - g_b_init_open_process_token is equal to 0. On initialization set - g_b_init_open_process_token equal to 1. + * xftfont.c (struct xftface_info): Delete the member xft_draw. + (xftfont_prepare_face, xftfont_done_face): Adjust for the above change. + (xftfont_get_xft_draw): New function. + (xftfont_draw): Get XftDraw by xftfont_get_xft_draw. + (xftfont_end_for_frame): New function. + (syms_of_xftfont): Set xftfont_driver.end_for_frame. - * w32.c (get_token_information): Perform initialization only if - g_b_init_get_token_information is equal to 0. On initialization - set g_b_init_get_token_information equal to 1. + * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs. + Change argument. Cache GCs in the per-frame data. + (struct ftxfont_frame_data): New struct. + (ftxfont_draw_bitmap): New arg gc_fore and flush. + (ftxfont_prepare_face, ftxfont_done_face): Delete them. + (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs. + (ftxfont_end_for_frame): New function. + (syms_of_ftxfont): Set ftxfont_driver.end_for_frame. - * w32.c (lookup_account_sid): Perform initialization only if - g_b_init_lookup_account_sid is equal to 0. On initialization - set g_b_init_lookup_account_sid equal to 1. + * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel. - * w32.c (get_sid_identifier_authority): Perform initialization - only if g_b_init_get_sid_identifier_authority is equal to 0. - On initialization set g_b_init_get_sid_identifier_authority equal to 1. +2008-02-01 Kenichi Handa - * w32fns.c (globals_of_w32fns): New function. Used to initialize - those global variables that must always be initialized on startup - even when the global variable initialized is non zero. - Its primary purpose at this time is to initialize the global variable - track_mouse_event_fn. + * xselect.c (Vselection_coding_system) + (Vnext_selection_coding_system): Delete them. + (syms_of_xselect): Don't declare selection-coding-system and + next-selection-coding-system. They are declared in select.el. - * w32fns.c (w32_wnd_proc): Remove initialization of - track_mouse_event_fn from the handler for the WM_SETFOCUS message. +2008-02-01 Jason Rumney - * w32fns.c (syms_of_w32fns): Call globals_of_w32fns. + * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already. - * w32menu.c (globals_of_w32menu): New function. Used to - initialize those global variables that must always be initialized - on startup even when the global variable initialized is non zero. - Its primary purpose at this time is to initialize the global - variables get_menu_item_info and set_menu_item_info. + * w32fns.c: Include imm.h. + (get_composition_string_fn, get_ime_context_fn): New optional + system functions. + (globals_of_w32fns): Load them from imm32.dll. + (ignore_ime_char): New flag. + (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and + WM_IME_ENDCOMPOSITION messages. - * w32menu.c (initialize_frame_menubar): Remove initialization of - get_menu_item_info and set_menu_item_info. + * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as + MULTIBYTE_CHAR_KEYSTROKE_EVENT. - * w32menu.c (syms_of_w32menu): Call globals_of_w32menu. +2008-02-01 Kenichi Handa - * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu): - Declare them. + * lread.c (READCHAR): Call readchar with the 2nd arg NULL. + (READCHAR_REPORT_MULTIBYTE): New macro. + (readchar): New 2nd arg MULTIBYTE. + (read1): Use READCHAR_REPORT_MULTIBYTE for the first read. + Make symbol's name multibyte according to the multibyteness of the + source. - * emacs.c (main): Call globals_of_w32 prior to calling - init_environment if WINDOWSNT is defined. Call globals_of_w32fns - and globals_of_w32menu if initialized is non zero and HAVE_NTGUI - is defined. +2008-02-01 Kenichi Handa - * w32term.c (x_update_window_begin): Fix Windows API error - detected by BoundsChecker. Test to determine if - w32_system_caret_hwnd is NULL prior to attempting to use - SendMessage to send the WM_EMACS_HIDE_CARET message to it. + * xfaces.c (face_for_overlay_string): Call lookup_face with + correct arguments (fix of synching with the trunk). - * w32term.c (x_update_window_end): Fix Windows API error - detected by BoundsChecker. Test to determine if - w32_system_caret_hwnd is NULL prior to attempting to use - SendMessage to send the WM_EMACS_SHOW_CARET message to it. +2008-02-01 Kenichi Handa -2002-12-17 Kenichi Handa + * font.c (font_prop_validate_symbol, font_prop_validate_style) + (font_prop_validate_non_neg, font_prop_validate_spacing): + Delete argument prop_index. + (font_property_table): Change arguments to validater. Change Callers. + (font_lispy_object): Delete. + (font_at): Use font_find_object instead fo font_lispy_object. - * coding.c (coding_system_require_warning): New variable. - (syms_of_coding): DEFVAR it. +2008-02-01 Kenichi Handa - * coding.h (coding_system_require_warning): Extern it. + * fileio.c (Fexpand_file_name): Adjust multibyteness of directory + and file names. - * fileio.c (choose_write_coding_system): Even if - Vcoding_system_for_write is non-nil, if - coding_system_require_warning is nonzero, call - Vselect_safe_coding_system_function. +2008-02-01 Jason Rumney -2002-12-17 Markus Rost + * w32font.c (add_font_name_to_list): Avoid vertical fonts. + (font_matches_spec): Remove debug output. + (add_font_entity_to_list): Avoid using substituted fonts. - * Makefile.in (lisp, shortlisp): Add cus-face and timer. - (lisp): Add font-core. +2008-02-01 Jason Rumney -2002-12-13 Stefan Monnier + * doc.c (Fsnarf_documentation): + * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change. - * textprop.c (text_read_only): New arg `propval'. - (get_char_property_and_overlay): Remove unused var `next_overlay'. - (verify_interval_modification): Use text_read_only's new arg. +2008-02-01 Miles Bader -2002-12-13 Kenichi Handa + * dispextern.h (struct glyph_row): Only define "clip" field if + HAVE_WINDOW_SYSTEM is defined. - * coding.c (Funencodable_char_position): Set pend correctly. +2008-02-01 Stefan Monnier -2002-12-12 Jason Rumney + Fix up multi-tty merge. - * w32term.c (last_mousemove_x, last_mousemove_y): New variables. - (w32_read_socket) : Use them to detect non-movement. - Be more careful about when help_events are generated. + * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting + and indentation. -2002-12-12 Steven Tamm + * xfaces.c (free_realized_face, clear_face_gcs): + Include font_done_for_face in the input_blocked section, just in case. - * macterm.c (mac_check_for_quit_char): Correctly set the - modifiers of the event to 0. - * mac.c (sys_select): Duplicate rfds before calling select to - ensure that rfds survive the while loop. + * xdisp.c (decode_mode_spec): Use terminal-local coding systems. + (get_char_face_and_encoding): Undo last change and remove the *other* + duplicate definition (i.e. keep the one that's better scoped and that + includes code for the font-backend). -2002-12-11 Kim F. Storm + * terminal.c (create_terminal): Default keyboard_coding to + `no-conversion' and terminal_coding to `undecided'. - * xdisp.c (try_window_id): Don't call set_cursor_from_row if - row_containing_pos returned NULL. + * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag. -2002-12-10 Steven Tamm + * fontset.c (free_realized_fontsets): Check that the table entry does + contain a fontset before trying to compare it to `base'. - * mac.c (sys_read): Fix sys_read to not call select if IO is - non-blocking. - (sys_select): Fix sys_select to not use a timeout larger than - the one given. + * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc, + syms_of_charset, and syms_of_coding earlier because init_window_once + now needs Vcoding_system_hash_table to be setup. -2002-12-10 Juanma Barranquero + * coding.h (default_buffer_file_coding): Remove. - * editfns.c (Fformat): Use alloca, not _alloca. + * coding.c (default_buffer_file_coding): Remove. + (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather + than ->symbol, and use the terminal-local coding system. + (syms_of_coding): Don't setup the coding-systems that are not + terminal-local. + (Fdefine_coding_system_internal): Use XCAR/XCDR. -2002-12-09 Richard M. Stallman + * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table): + Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore. - * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input - as the last thing. + * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now + in chartab.c and were re-added here by mistake. + (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector. -2002-12-09 Dave Love + * doc.c (Fsnarf_documentation): + * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from + src to etc. - * s/sol2-8.h: Removed. (Not necessary.) + * ChangeLog.10: Add mistakenly removed entry. -2002-12-09 Matthew Swift +2008-02-01 Dan Nicolaescu - * editfns.c (Fformat): Handle precision in string conversion - specifiers like libc functions do (ie, print at most that many - characters). + * Makefile.in (fringe.o, minibuf.o): Fix dependencies. -2002-12-08 Richard M. Stallman +2008-02-01 Miles Bader - * xdisp.c (row_containing_pos): Check more carefully - whether charpos is really in the row before returning it. + * xdisp.c (get_char_face_and_encoding): Remove extraneous definition. + Add extra args to FACE_FOR_CHAR. -2002-12-07 Steven Tamm +2008-02-01 Kenichi Handa - * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read. + * keymap.c (where_is_internal_1): If key is a cons, store the copy + in sequence. - * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at - each stack frame. This may change as it could be time consuming. + * chartab.c (map_sub_char_table, map_char_table): If the range + contains just one character, call the function with that character + even if the depth is not 3. - * macterm.c (mac_check_for_quit_char, quit_char_comp) - (init_quit_char_handler, mac_determine_quit_char_modifiers) - (mac_initialize): Add code to check for pressing of quit_char - in the OS event queue. +2008-02-01 Jason Rumney - * mac.c (sys_select): Call mac_check_for_quit_char every second - while blocking on select. + * w32font.c (w32font_text_extents): Calculate metrics for the + whole string. - * mac.c (sys_read): Use sys_select to test for input first - before calling read, to allow C-g to break. +2008-02-01 Jason Rumney -2002-12-07 Richard M. Stallman + * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages. - * minibuf.c (Fcompleting_read): Doc fix. +2008-02-01 Jason Rumney - * lread.c (syms_of_lread) : Doc fix. + * w32term.c (x_set_glyph_string_clipping): Use + get_glyph_string_clip_rects. + (x_set_glyph_string_clipping_exactly, x_draw_glyph_string): + Adjust for the change of struct glyph_string. - * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call. + * w32font.c (w32font_draw): Do clipping here. - * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an - autoload. +2008-02-01 Kenichi Handa - * data.c (Fdefalias): Record in load-history redefining an autoload. + * xftfont.c (xftfont_draw): Adjust for the change of struct + glyph_string. - * alloca.c: Undo ifdef change accidentally made on 12-04. + * xterm.c (x_set_glyph_string_clipping): Use + get_glyph_string_clip_rects. + (x_set_glyph_string_clipping_exactly, x_draw_glyph_string): + Adjust for the change of struct glyph_string. -2002-12-06 Francesco Potort,Al(B + * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to + the resulting clip(s}. + (expose_overlaps): Add arg r. Change callers. Set it to + row->clip temporarily. + (expose_window): Redraw rows overlapping the exposed area. - * xfns.c (png_load): Avoid double gamma correction for PNG images. + * dispextern.h (struct glyph_row): New member clip. + (struct glyph_string): Delete members clip_x, clip_y, clip_width, + clip_height, new member clip, and num_clips. -2002-12-04 Richard M. Stallman +2008-02-01 Kenichi Handa - * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H. + * data.c (Fchar_or_string_p): Fix docstring. - * fileio.c (fcntl.h): Test only HAVE_FCNTL_H. +2008-02-01 Kenichi Handa - * alloca.c: Don't use #error. + * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info, + create a temporal XftDraw object. -2002-12-03 Dave Love +2008-02-01 Kenichi Handa - * buffer.c (Qucs_set_table_for_input): New. - (Fget_buffer_create): Use it. - (Qset_buffer_major_mode_hook): Deleted. - (Fset_buffer_major_mode): Revert previous change. - (init_buffer_once): Intern ucs-set-table-for-input. - (syms_of_buffer): Delete Qset_buffer_major_mode_hook. - Add &Qucs_set_table_for_input. + * font.c (Ffontp): Fix docstring. -2002-12-03 Andreas Schwab + * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a + strong evidence of ISO-2022. - * callint.c (Fcall_interactively): Use next_event only if less - than key_count. +2008-02-01 Kenichi Handa -2002-12-02 Andrew Choi + * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not + SYNTAX_ENTRY_FOLLOW_PARENT. - * macmenu.c (add_menu_item, fill_menubar): Truncate menu item - names to 255 characters. +2008-02-01 Stefan Monnier - * macterm.c (XTread_socket): If all frames have been collapsed, - expand the first one before handling drag-and-drop events. + * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change + its type. + (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns): + Update to the new type of weak_hash_tables and next_weak. - * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID, - which is detected by autoconf. + * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to + a plain C pointer to Lisp_Hash_Table. -2002-12-01 Steven Tamm + * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP) + (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP) + (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP) + (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP) + (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP) + (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP) + (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP) + (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP) + (GC_EQ): Remove since they've been identical to their non-GC_ + alter-egos ever since the markbit was eradicated. - * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the - offset in two hints table to allow prebinding to be redone and - allow the executable to be stripped. + * alloc.c: + * buffer.c: + * buffer.h: + * data.c: + * fileio.c: + * filelock.c: + * fns.c: + * frame.h: + * lisp.h: + * macterm.c: + * print.c: + * process.c: + * w32fns.c: + * w32menu.c: + * w32term.c: + * xfns.c: + * xmenu.c: + * xterm.c: Replace uses of GC_* macros with the non-GC_ versions. -2002-11-29 Dave Love +2008-02-01 Kenichi Handa - * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was - already provided. + * chartab.c (map_sub_char_table): Make it work for the top-level + char-table. Fix handling of parent char-table. + (map_char_table): Adjust for the above change. -2002-11-29 Richard M. Stallman +2008-02-01 Jason Rumney - * xdisp.c (start_display): Check more intelligently for - whether the line is continued. - (move_it_vertically_backward): Clear it->continuation_lines_width. + * w32font.c (Qgdi): Rename from Qw32. -2002-11-28 Dave Love +2008-02-01 Jason Rumney - * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h: - * s/alliant.h, s/altos.h: Deleted. (Unused/empty.) + * w32bdf.c (get_quoted_string): Make function static. -2002-11-27 Steven Tamm +2008-02-01 Kenichi Handa - * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause - more descriptive error output from lread.c:Fload upon most require - cycles during boostrapping. + * xftfont.c (xftfont_open): If one of font's ASCII glyph has + bigger ascent and descent than those of the font, use them as + font's ascent and descent. -2002-11-27 Jason Rumney +2008-02-01 Kenichi Handa - * fileio.c (Finsert_file_contents): Give a more appropriate error - for files bigger than 2Gb when off_t is 32 bit. + * Makefile.in (${lispsource}international/charprop.el): Move this + target within "#ifdef HAVE_UNIDATA" and "#endif". - * dired.c (Ffile_attributes): Don't return negative file sizes for - files bigger than 2Gb when off_t is 32 bit. +2008-02-01 Kenichi Handa -2002-11-27 Dave Love + * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el. + (shortlisp): Add ../lisp/language/tai-viet.el. - * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define. +2008-02-01 Ulrich Mueller - * systty.h: Don't conditionally define GETPGRP_NO_ARG. - Test GETPGRP_VOID instead. - [BSD_TERMIOS]: Remove definitions (never used). + * Makefile.in (${lispsource}international/charprop.el): Depend on + temacs${EXEEXT}. - * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist): - Don't define. - (GC_SETJMP_WORKS, GC_MARK_STACK): Define. +2008-02-01 Jason Rumney - * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally. + * w32font.c (w32font_close): Delete the GDI font object. -2002-11-25 Jason Rumney + * w32menu.c: Include character.h. - * w32.c (sys_write): Avoid non-blocking mode, which is not fully - supported. + * w32proc.c: Likewise. -2002-11-25 Dave Love + * w32select.c: Likewise. - * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec. + * makefile.w32-in (w32proc.o): Depend on character.h. - * Makefile.in (TEMACS_LDFLAGS): Update last change. +2008-02-01 Jason Rumney -2002-11-25 Andreas Schwab + * w32fns.c (syms_of_w32fns): Use DEFSYM macro. - * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change. + * w32menu.c (syms_of_w32menu): Likewise. -2002-11-24 Steven Tamm + * w32proc.c (syms_of_ntproc): Likewise. - * unexmacosx.c (unexec_realloc): Use malloc_default_zone to - determine the size of pointers alloced in unexed space instead - of using possibly invalid emacs_zone pointers. This fixes the - binary incompatibility problems caused by updates to libSystem.B. + * w32select.c (syms_of_w32select): Likewise. -2002-11-24 Richard M. Stallman + * w32term.c (syms_of_w32term): Likewise. + +2008-02-01 Jason Rumney + + * w32font.c (w32font_draw): Delete brush after using it. + +2008-02-01 Jason Rumney + + * w32font.c (w32font_open): Don't set font_idx. + (w32font_text_extents): Try GetTextExtentPoint32W before defaulting + to font settings. + (w32font_draw): Fill background explicitly. + +2008-02-01 Jason Rumney + + * w32term.c (w32_initialize): Don't call w32font_initialize. + + * w32font.c (w32font_info): Remove subranges. + (QCsubranges, Qmodern, Qswiss, Qroman): Remove. + (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif) + (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian) + (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali) + (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada) + (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian) + (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham) + (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan) + (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun) + (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical): + New symbols. + (font_callback_data): New struct. + (w32font_list, w32font_match): Use it. + (w32font_open): Don't populate subranges. + (w32font_has_char): Use script Lisp symbols, not subrange bitmask. + (w32font_encode_char): Always return unicode code-point as-is. + (w32font_text_extents): Supply a tranformation matrix to + GetGlyphOutline. Never look up by glyph index. Avoid looping + twice. Use unicode version of GetTexExtentPoint32 instead of + glyph index version. + (set_fonts_frame): Remove + (w32_enumfont_pattern_entity): Add frame parameter, use it to + set frame parameter. Use backward compatible fake foundries. + Save generic family in extra slot under QCfamily. Make width slot + constant. Save QCspacing value. Save list of scripts instead of + binary subranges. + (w32_generic_family, logfonts_match, font_matches_spec): New functions. + (add_font_entity_to_list): Use font_callback_data struct. Filter + unwanted fonts. + (add_one_font_entity_to_list): Use font_callback_data struct. + (w32_registry): Default to iso10646_1. + (fill_in_logfont): Use dpi from extra slot. Don't bother with + string font registries. Don't fill in font name if it is a generic + family name, fill family instead. Use spacing, family and script + extra info to fill pitch, family and charset fields. + (list_all_matching_fonts): Use font_callback_data struct. + (unicode_range_for_char): Remove. + (font_supported_scripts): New function. + (w32font_initialize): Remove. + (syms_of_w32font): Update which symbols are defined. - * search.c (Fstring_match): Doc fix. +2008-02-01 Jason Rumney - * callint.c (Fcall_interactively): If a command fails because - `*' detects a read-only buffer, but RECORD_FLAG is set, - record it anyway if the args don't actually do tty input. + * font.c (font_pixel_size): Reverse assq_no_quit args. -2002-11-22 Dave Love + * w32term.h (FONT_WIDTH): Report max width, not average. + (FONT_MAX_WIDTH): Remove. + (FONT_AVG_WIDTH): New macro. - * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist. + * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only + redefinition of FONT_WIDTH. - * keyboard.c (interrupt_signal): Provide forward declaration. - (kbd_buffer_store_event): Don't declare interrupt_signal. + * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH. + (w32_cache_char_metrics): Use FONT_WIDTH. - * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist. + * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH. -2002-11-21 Richard M. Stallman +2008-02-01 Jason Rumney - * eval.c (interactive_p): Skip any number of bytecode - and special form frames, in any order. + * w32font.c (w32font_open): Make lfHeight negative. -2002-11-20 Jason Rumney + * w32fns.c (x_default_font_parameter): Use new style font name. + (Fx_create_frame, x_create_tip_frame): Initialize resx and resy. - * w32fns.c (convert_mono_to_color_image): New function. - (xbm_load, xbm_load_image): Use it when foreground or background - is explicitly set. +2008-02-01 Jason Rumney + + * w32font.c (QCsubranges): New symbol. + (w32font_open, w32font_has_char): Get subranges from subproperty + of extra. + (w32_enumfont_pattern_entity): Set subranges as subproperty of extra. + (syms_of_w32font): Define :subranges symbol. + + * font.c (font_put_extra): Expose externally. + + * font.h (font_put_extra): Move declaration from font.c. + + * font.c (Ffont_get): Use font driver to determine otf capability. + (adjust_anchor): Check if driver defines anchor_point before using. + + * w32font.c (w32font_open): Handle size, height and pixel_size better. + (w32font_draw): Use options. + (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts. + Fix detection of truetype fonts. + (registry_to_w32_charset): Handle charsets other than iso8859-1 + expressed as lisp symbols. + (w32_registry): Express charset as lisp symbol. + (fill_in_logfont): Reverse pixel and point height logic. + Don't set width here. Set quality to default. + + * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts. + (x_to_w32_font): Fill in lfPitchAndFamily correctly. + + * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]: + Remove redundant loop and allocation. + + * makefile.w32-in (font.o, w32font.o): New objects. + (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h. + (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND. + + * xdisp.c (fill_composite_glyph_string): Make the first arg to + STORE_XCHARB a valid l-value. + + * w32term.c (w32_native_per_char_metric): Swap width and rbearing + calculations for non-Truetype fonts. + (x_draw_glyph_string): Sync with xterm.c. + (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]: Remove + redundant code. + (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize. + + * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member. + (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h. + + * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c. + (x_to_w32_charset, w32_to_x_charset): Expose externally. + + * w32font.c: New file for w32 font backend. -2002-11-19 Dave Love +2008-02-01 Kenichi Handa - * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define. + * term.c: Don't include "buffer.h" twice. -2002-11-18 Jason Rumney +2008-02-01 Kenichi Handa - * w32fns.c (x_build_heuristic_mask): Filter palette info from color. - (XPutPixel): Swap blue and red. - (xpm_format, pbm_format, png_format, jpeg_format, tiff_format) - (gif_format, gs_format): Use IMAGE_ASCENT_VALUE. - (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p) - (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent. + * character.c (Funibyte_string): New function. + (syms_of_character): Defsubr it. -2002-11-18 Dave Love +2008-02-01 Jason Rumney - * m/orion105.h (HAVE_ALLOCA): Don't define. + * w32term.c [USE_FONT_BACKEND]: + (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc): + (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly): + (x_draw_glyph_string, x_draw_glyph_string_foreground): + (x_draw_composite_glyph_string_foreground, x_new_fontset2): + (x_free_frame_resources): Sync with xterm.c. - * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca. +2008-02-01 Andreas Schwab - * m/intel386.h: Don't include alloca.h or define alloca. + * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate + char-table size. - * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare - malloc, realloc, calloc. +2008-02-01 Kenichi Handa - * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero) - (bcmp): Don't define. + * font.c (check_otf_features): Define it regardless of + HAVE_LIBOTF. - * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define. +2008-02-01 Kenichi Handa - * m/amdahl.h: Don't define LIB_STANDARD. + * ftfont.c (ftfont_driver): Delete font_otf_gsub and + font_otf_gpos, add font_drive_otf. - * m/alpha.h: Move OSF1 stuff from here to s/osf1.h. + * fontset.c (fontset_find_font): Pay attention to font size + specified for a font. + (reorder_font_vector): Check contents of font_def. - * s/osf1.h: Move OSF1 stuff from m/alpha.h to here. + * font.c (struct otf_list): Delete it. + (otf_list): Make it a lisp variable. + (otf_open): Use lispy otf_list. + (generate_otf_features): Rename from parse_gsub_gpos_spec. + (check_otf_features): New function. + (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor): New + functinos. + (font_drive_otf): New function merging font_otf_gsub and + font_otf_gpos. + (font_open_for_lface): New arg spec. Change argument order. + (font_load_for_face): Adjust for the change of font_open_for_lface. + (Ffont_drive_otf): New function merging Ffont_otf_gsub and + Ffont_otf_gpos. + (syms_of_font): Staticpro otf_list. Delete defsubr of + Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf. - * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h: - Don't include alloca.h. + * xfaces.c (set_font_frame_param): Adjust for the change of + font_open_for_lface. - * s/aix3-2.h (HAVE_FSYNC): Don't define. + * font.h (font_open_for_lface): Adjust prototype. + (struct font_driver): Delete members otf_gsub and otf_gpos, add + member otf_drive. + (font_otf_gsub, font_otf_gpos): Delete externs. + (font_drive_otf): Extern it. - * regex.c (_GNU_SOURCE): Don't define. +2008-02-01 Kenichi Handa - * process.c (_GNU_SOURCE): Don't define. + * font.c (font_at): If the window W is not on a window system, + return Qnil. - * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define. + * coding.c (produce_chars, encode_coding): Don't call + insert_from_gap if no characters to produce. -2002-11-18 Markus Rost +2008-02-01 Kenichi Handa - * s/sol2-8.h: Include sol2-6.h. + * fontset.c (free_realized_fontsets): Avoid unnecessary call of + Fclear_face_cache. -2002-11-18 Miles Bader + * xfaces.c (face_for_font): Check also face->font==font->font.font. - * dispextern.h (struct face): Add `overstrike' field. - * xterm.c (x_draw_glyph_string_foreground) - (x_draw_composite_glyph_string_foreground): Implement overstriking. - * xfaces.c (load_face_font): Set `face->overstrike' based on - result from choose_face_font. - (best_matching_font, choose_face_font): Add `needs_overstrike' - argument, and use it to return whether overstriking is desirable - for this face/font combo. - (set_font_frame_param: Pass new argument to choose_face_font. +2008-02-01 Miles Bader -2002-11-17 Ben Key + * emacs.c (main): Change default value of `enable_font_backend' to 1. + Parse "--disable-font-backend" option. + (standard_args): Add "--disable-font-backend" option. - This change is my fix for the following entry in etc/PROBLEMS: - "Emacs built on Windows 9x/ME crashes at startup on Windows XP, - or Emacs builtpart of on XP crashes at startup on Windows 9x/ME." +2008-02-01 Kenichi Handa - * w32.c: Added wrapper functions around the win32 API functions - OpenProcessToken, GetTokenInformation, LookupAccountSid, and - GetSidIdentifierAuthority. These wrapper functions serve two - purposes: - 1. They ensure that the wrapped function can never be called - when Emacs is running on an operating system on which they are - not supported (Microsoft Windows 95 / 98 / ME). - 2. They call the wrapped functions via function pointers rather - than calling them directly. This avoids taking advantage of the - undocumented fact that although these functions are not supported - in the 9x branch of Microsoft Windows, the functions do exist in - the version of advapi32.dll that is found in the 9x branch of - Microsoft Windows. + * fontset.c (fontset_find_font): New function. + (fontset_font): Use fontset_find_font. + (make_fontset_for_ascii_face): Don't set face ID in rfont_def. + Register the specified font for all Latin characters. + (new_fontset_from_font): Register the specified font for all Latin + characters. + (dump_fontset): For a realized fontset, include the base fontset + name in the returned vector. - * w32.c (init_user_info): Replace the calls to the win32 API - functions OpenProcessToken, GetTokenInformation, LookupAccountSid, - and GetSidIdentifierAuthority with calls to the newly added - wrapper functions. +2008-02-01 Kenichi Handa - * w32.h: Added extern declarations for the following functions: - syms_of_w32term, syms_of_w32fns, syms_of_w32select, - syms_of_w32menu, and void syms_of_fontset. + * character.h (CHAR_STRING): Cast C to unsigned on calling + char_string. - * w32fns.c (w32_wnd_proc): Add code to reinitialize the - function pointer track_mouse_event_fn in the handler for the - WM_SETFOCUS message. + * character.c (char_string): Type of arg C changed to unsigned. + Signal an error if C is an invalid character code. - * w32menu.c (initialize_frame_menubar): Add code to - reinitialize the function pointers set_menu_item_info and - get_menu_item_info. + * editfns.c (general_insert_function, Fchar_to_string): + Use CHARACTERP, not INTEGERP. -2002-11-17 Ben Key +2008-02-01 Kenichi Handa - * sound.c: Added a partial implementation of play-sound-internal - for Microsoft Windows. Added various #ifdef / #else / #endif - code blocks to separate the code that will compile under - Microsoft Windows from the code that is specific to GNU/Linux. - Moved several blocks of code around to make this separation of code - into Windows compatible and GNU/Linux compatible code blocks easier. + * character.h (MIN_MULTIBYTE_LEADING_CODE) + (MAX_MULTIBYTE_LEADING_CODE): New macros. - * makefile.w32-in: Include sound.c and link with WinMM.lib. + * regex.c (analyse_first): Fix for multibyte characters in "case + charset:" and "case categoryspec:". - * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly - added support for play-sound-internal under Windows would be - included in the build of Emacs. +2008-02-01 Andreas Schwab -2002-11-16 Jason Rumney + * Makefile.in (LIBES): Move standard libraries to the end. - * w32fns.c (w32_load_system_font): Don't disable Cleartype. +2008-02-01 Kenichi Handa - * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly. + * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is + nonzero, don't shrink the buffer nextb. -2002-11-15 Stefan Monnier + * buffer.h (struct buffer_text): New member inhibit_shrinking. - * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup. - (adjust_point_for_property): Move out of display and invisible even if - we were already inside before (in case a property was added while - we weren't looking). Be more careful when handling invisible props. - Skip invisible text as if it really wasn't there at all. + * coding.c (coding_alloc_by_making_gap): New arg offset. + (alloc_destination): Call coding_alloc_by_making_gap with the arg + offset. + (decode_coding_iso_2022): Update coding->safe_charsets. + (decode_coding_gap): Temporarily set + current_buffer->text->inhibit_shrinking to 1. -2002-11-15 Jason Rumney +2008-02-01 Kenichi Handa - * w32term.c (x_draw_image_foreground) - (w32_draw_image_foreground_1): Use standard copy and invert - operations to draw images. + * xterm.c (x_draw_composite_glyph_string_foreground): Fix + indexing into elements of s->cmp and s->char2b. - * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for - depth of 1. - (xbm_read_bitmap_data): Invert bits as xbm is read in. - (XPutPixel): Don't invert bits here. +2008-02-01 Juanma Barranquero -2002-11-15 Jason Rumney + * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'. - * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string) - (w32_draw_image_foreground_1): Handle image masks. - (x_draw_image_glyph_string): Don't BitBlt transparently. +2008-02-01 Kenichi Handa - * w32fns.c (w32_defined_color): Adjust RGB values for Emacs. - (x_from_xcolors): Adjust RGB values for W32. - (image_background, image_background_transparent) - (postprocess_image, x_to_xcolors, x_disable_image) - (x_build_heuristic_mask): Adapt for W32 and enable. - (x_create_x_image_and_pixmap): Mark images with palettes as such. - (xbm_load): Remove unused variable. - -2002-11-14 Richard M. Stallman + * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable + target_multibyte instead of multibyte. + (re_match_2_internal): Call bcmp_translate with target_multibyte. + (bcmp_translate): Change the argument name from multibyte to + target_multibyte. - * buffer.c (syms_of_buffer): Doc fix. +2008-02-01 Kenichi Handa -2002-11-14 Dave Love + These changes are to compile a regexp into a pattern that can be + used both for multibyte and unibyte targets. - * alloc.c (SETJMP_WILL_NOT_WORK): Add note. + * Makefile.in (search.o): Depend on charset.h. - * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor): - * xmenu.c (unuse_menu_items, digest_single_submenu): - * xfns.c (x_put_x_image): - * xdisp.c (message2_nolog, set_message): - * undo.c (record_point): - * terminfo.c (tparam): - * syntax.c (scan_sexps_forward): - * scroll.c (calculate_scrolling, calculate_direct_scrolling): - * composite.c (update_compositions): - * cm.c (calccost, cmgoto): - * charset.c (c_string_width): Declare all args (per C99). + * character.c (multibyte_char_to_unibyte_safe): New function. - * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare. + * search.c: Include "charset.h". + (compile_pattern_1): Delete argument multibyte. Don't set + cp->buf.target_multibyte here. Set cp->buf.charset_unibyte. + (compile_pattern): Don't compare cp->buf.target_multibyte. + Compare cp->buf.charset_unibyte. + (compile_pattern): Set cp->buf.target_multibyte. - * lisp.h (get_specified_cursor_type, get_window_cursor_type): - Don't declare. + * lisp.h (multibyte_char_to_unibyte_safe): Extern it. - * emacs.c (main) [!VMS]: Avoid third arg. + * regex.h (struct re_pattern_buffer): New member charset_unibyte. - * fns.c (Fcopy_sequence): Doc fix. - (Fmap_char_table): Cast `call2'. + * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg + multibyte. Change callers. + (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros. + (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers + to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively. + (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros. + (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table. + (regex_compile): Make the compiled pattern usable both for + multibyte and unibyte targets. + (analyse_first): Make the fastmap usable both for multibyte and + unibyte targets. + (TRANSLATE_VIA_MULTIBYTE): Delete. + (re_match_2_internal): Pay attention to the case that the + multibyteness of bufp and target may be different. -2002-11-14 Francesco Potort,Al(B +2008-02-01 Kenichi Handa - * s/sol2-8.h: New file. + * xdisp.c (x_produce_glyphs): When a font is not found, make the + empty box occupy at least one column width. -2002-11-14 Kim F. Storm +2008-02-01 Miles Bader - * buffer.c (syms_of_buffer) : Document symbol - dependency on `risky-local-variable' and the :propertize form. + * Makefile.in: Remove redundant HAVE_XFT clause. -2002-11-12 Stefan Monnier +2008-02-01 Kenichi Handa - * fns.c (Fmap_char_table): Don't use map_char_table's function arg. + * xrdb.c (x_load_resources): Setup the default fontSet X reource. - * syntax.c (scan_sexps_forward): Undo last patch. - Use a more obvious fix: check eob before updating the syntax table. +2008-02-01 Kenichi Handa -2002-11-09 Stefan Monnier + * fontset.c (Finternal_char_font): Fix for the case of POSITION + being nil. - * syntax.c (scan_sexps_forward): Update syntax table before reading - a char rather than after so we don't update the table past eob. +2008-02-01 Kenichi Handa -2002-11-09 Dave Love + * xftfont.c (xftfont_open): Call FcConfigSubstitute. - * buffer.c (Fset_buffer_major_mode): Fix last change. +2008-02-01 Kenichi Handa - * regex.c (regexec): Fix pmatch declaration. + * xftfont.c (xftfont_open): Don't enable antialias explicitly. - * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input. +2008-02-01 Kenichi Handa - * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input - to self-inserting characters. - (syms_of_keyboard) : Doc fix. + * search.c (simple_search): Fix previous change. - * coding.c (Vtranslation_table_for_input): New. - (syms_of_coding): DEFVAR it. +2008-02-01 Kenichi Handa -2002-11-08 Juanma Barranquero + * xftfont.c (ftfont_font_format): Extern declaration. - * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable - window. + * frame.c (x_set_font): Fix the second arg to fs_query_fontset. -2002-11-08 Pavel Jan,Am(Bk + * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0. + (xfont_list): Don't directly use Lisp_Object as an operand of &&. - * process.c (Fformat_network_address): Remove unused locals p, - cp, and i. + * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0. + (ftfont_font_format): Fix previous change. -2002-11-06 Dave Love + * font.h (Ffont_xlfd_name): EXFUN it. - * buffer.c (Qset_buffer_major_mode_hook): New. - (Fset_buffer_major_mode): Use it. + * font.c (font_parse_xlfd): Fix the array size of `f'. + (register_font_driver): Use EQ to compare driver->type. -2002-11-06 Richard M. Stallman + * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function. + (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2. + (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise. - * xterm.c (x_term_init): Use turn_on_atimers, not start_polling - and stop_polling. +2008-02-01 Kenichi Handa - * process.c (wait_reading_process_input): - Test POLLING_PROBLEM_IN_SELECT, not hpux. - Avoid initialization for auto Lisp_Object var. + * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family) + (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined. - * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef. +2008-02-01 Kenichi Handa - * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined. + * xfont.c (xfont_open): Set font->format. -2002-11-05 Richard M. Stallman + * xftfont.c (xftfont_open): Set font->format. - * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef. + * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern. + (ftfont_list): Include FC_FONTFORMAT in FcObject. + (ftfont_open): Set font->format. + (ftfont_font_format): New function. - * callint.c (Fcall_interactively): New local filter_specs. - (Fcall_interactively): Check for progn as well as let. - Add a gcpro. - (Qprogn): New variable. - (syms_of_callint): Staticpro and init Qprogn. + * font.h (struct font): New memeber format. -2002-11-04 John Paul Wallington + * font.c (Qopentype): New variable. + (syms_of_font): Defsym it. + (Fquery_font): Change the format of the last element of the return + value. - * lread.c (Feval_buffer): Doc fix. +2008-02-01 Kenichi Handa -2002-11-04 Dave Love + * xfns.c (xic_create_xfontset): Try the default fontset name as a + last resort. - * keyboard.c (read_char): Always translate iff - Vkeyboard_translate_table is a char table and c is valid. +2008-02-01 Kenichi Handa - * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table - and fix C types. + * coding.c (detect_coding_charset): Fix detection of multi-byte + charset. -2002-11-03 Stefan Monnier +2008-02-01 Bob Halley (tiny change) - * xdisp.c (single_display_prop_intangible_p): Strings are intangible. + * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0. - * editfns.c (get_pos_property): Don't hardcode Qfield. +2008-02-01 Kenichi Handa - * keyboard.c (adjust_point_for_property): Handle `display' prop on - overlays. Also handle `invisible' prop. + * xdisp.c (get_next_display_element): Set it->face_id for the + first component of a composition. + (x_produce_glyphs): Check if the font is changed or not for composition. -2002-11-02 Stefan Monnier +2008-02-01 Kenichi Handa - * coding.c (decode_coding_emacs_mule, decode_coding_iso2022) - (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL. + (get_next_display_element): Set it->face_id for the + first component of a composition. + (x_produce_glyphs): Check if the font is changed or not for composition. -2002-11-01 Andreas Schwab +2008-02-01 Kenichi Handa - * editfns.c (Fmessage): Revert last change to properly handle %%. + * fontset.c (Qlatin): New variable. + (syms_of_fontset): Define it as a lisp symbol. + (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII. -2002-11-01 Stefan Monnier +2008-02-01 Kenichi Handa - * xmenu.c (unuse_menu_items): New fun. - (menu_items_inuse): New var. - (syms_of_xmenu): Initialize it. - (init_menu_items): Use it to detect re-entrance. - (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done. - (Fx_popup_menu): Remove spurious XSETFRAME. + * font.c (font_unparse_fcname): Pay attention to the case that + some of font property is a null string. - * editfns.c (find_field): Make an exception for nil fields. +2008-02-01 Kenichi Handa -2002-11-01 Dave Love + * term.c: Include "composite.h". + (encode_terminal_code): Output all components of composition. + Check the size of encode_terminal_src. + (produce_glyphs): For composition, call produce_composite_glyph. + (append_composite_glyph, produce_composite_glyph): New functions. - * m/gec63.h: Deleted. + * xdisp.c (x_produce_glyphs): In handling composition, if a font + is not found, get font_info from the current ascii face. -2002-10-31 Dave Love +2008-02-01 Kenichi Handa - * xterm.c (XTread_socket): Fix last change. - (xaw_scroll_callback): Cast call_data to long to avoid warning. + * fileio.c (Finsert_file_contents): On replacing, temporarily bind + buffer-file-name to Qnil before calling insert_from_buffer. -2002-10-31 Stefan Monnier + * font.c (font_unparse_fcname): Pay attention to the case that + foundry is a null string. - * process.c (Fformat_network_address): Fix int/Lisp_Object mixup. +2008-02-01 Kenichi Handa -2002-10-30 Stefan Monnier + * ftfont.c (ftfont_list): Allow registry "unicode-sip". - * editfns.c (overlays_around, get_pos_property): New funs. - (find_field): Use them. - Also be careful not to modify POS before its last use. - (Fmessage): Don't Fformat if there's nothing to format. + * font.c (Qunicode_sip): New variable. + (syms_of_font): Declare it as a Lisp symbol. -2002-10-30 Dave Love + * font.h (Qunicode_sip): Extern it. - * process.c [HAVE_SYS_WAIT]: Include sys/wait.h. - [HAVE_PTY_H]; Include pty.h. +2008-02-01 Kenichi Handa - * lread.c (Fload) : Close fd. + * composite.c (get_composition_id): Pay attention to TAB component. - * xterm.c (Qeql): Declare. - (Vx_keysym_table): New. - (syms_of_xterm): Initialize it. - (XTread_socket): Use it. Deal with ASCII keysyms. - (XSetIMValues) [HAVE_X11R6]: Prototype. + * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw + TAB. Adjust for the change of s->char2b which always points to + the first elememnt of allocated memory. - * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended. - (lispy_kana_keys): Comment out. - (make_lispy_event) [XK_kana_A]: Comment out. - (modify_event_symbol) : - Fix sprintf call. + * xftfont.c (xftfont_text_extents): Fix calculation of descent value. - * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by - regexp.h change). - (TERMINFO, LIBS_TERMCAP): Define. + * xdisp.c (handle_composition_prop): Set it->c to the first + non-TAB component. + (fill_composite_glyph_string): Change argument. + (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change. + (x_produce_glyphs): Fix handling of left/right padding. - * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY. - (bcmp): Define conditional on HAVE_BCMP. - (NO_SIOCTL_H): Don't define. - (TIOCSIGSEND): Don't make conditional on IRIX6. +2008-02-01 Kenichi Handa - * s/sol2-5.h: Don't include strings.h. - (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef. + * coding.c (detect_coding_system): Fix for handling off + inhibit_iso_escape_detection. Fix for the case that no coding + system is defined for a specific coding category. - * s/irix6-0.h (IRIX6): Don't define. - (bcopy, bcmp, bzero): Don't undef. +2008-02-01 Kenichi Handa - * s/irix6-5.h: Don't include strings.h. - (IRIX6): Don't define. - (bcopy, bcmp, bzero): Don't undef. + * font.c (font_matching_entity): Delete unused local var. - * syntax.c (Fforward_comment): Doc fix. + * xftfont.c (xftfont_open): Call XftDefaultSubstitute before + opening a font. -2002-10-29 Kim F. Storm + * fileio.c (Finsert_file_contents): On recovering a file, assume + Unix-like eol. + (choose_write_coding_system): On auto-saving a file, force + Unix-like eol. - * process.c (Fsignal_process): Allow PROCESS to be specified by - name in addition to pid (as integer or string). + * coding.c (setup_coding_system): Fix setting of + coding->common_flags based on eol_type. + (coding_inherit_eol_type): If PARENT is not nil, be sure to + inherit from it. -2002-10-28 Harald Maier (tiny change) +2008-02-01 Kenichi Handa - * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build - environments. + * alloc.c (NSTATICS): Increas to 0x600. -2002-10-27 Kim F. Storm +2008-02-01 Kenichi Handa - * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden. + * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match. + (ftfont_list): Don't check :name property. + (ftfont_match): New function. + (ftfont_pattern_entity): If the pattern doesn't contain + FC_SPACING, don't assuce FC_MONO. - * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden. + * font.h (struct font_driver): New member `match'. + (font_update_drivers): Adjust prototype. - * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden. + * font.c (font_parse_fcname, font_parse_name): Don't change :name + property of FONT. + (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define + them unconditionally. + (font_matching_entity): New function. + (font_open_by_name): Try font_matching_entity if exact match is + not found. + (font_update_drivers): Delete the arg FONT. Return a list of + actually used backends. Don't free faces, font caches here. + Don't store data in frame parameters. Don't call x_set_font. + (Ffont_spec): Store :name property as is. + (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability. + (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub. + (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos. + (Ffont_otf_alternates): Check if the driver has otf_gsub function. + Call font->driver->otf_gsub instead of font_otf_gsub. - * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden. + * frame.c (x_set_font_backend): Do more works that were done in + font_update_drivers before. -2002-10-26 Richard M. Stallman + * xfont.c (xfont_match): New function. + (xfont_driver): Set xfont_driver.match to xfont_match. + (xfont_draw): Set font in GC if necessary. - * editfns.c (Fformat): Detect invalid format letters for floats. + * ftxfont.c (ftxfont_match): New function. + (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match. -2002-10-25 Kenichi Handa + * xftfont.c (xftfont_match): New function. + (syms_of_xftfont): Set xftfont_driver.match to xftfont_match. - * xfns.c (x_set_name): Encode by Qcompound_text unconditionally. - (x_set_title): Likewise. +2008-02-01 Kenichi Handa -2002-10-25 Juanma Barranquero + * font.h (struct font): New member scalable. + (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub. + (font_otf_gsub): Adjust prototype. - * macgui.h: - * w32gui.h: Remove definition of XColor. + * font.c (font_otf_capability): Fix handling of the default langsys. + (parse_gsub_gpos_spec): Change type to void. New arg nbytes. + Check the contents of SPEC. + (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros. + (check_gstring): New function. + (REPLACEMENT_CHARACTER): New macro. + (font_otf_gsub): New arg alternate_subst. Be sure to set all + glyph codes of GSTRING. + (font_otf_gpos): Be sure to set all glyph codes of GSTRING. + (font_prepare_composition): Set cmp->glyph_len. + (font_open_entity): Set font->scalable. + (Ffont_get): Handle :otf property. + (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New + functions. + (Fquery_font): Use font->font.full_name. + (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and + Sfont_otf_alternates. + + * ftfont.c (ftfont_open): Set font->font.full_name and + font->font.name properly. Fix calculation of font->font.height + and font->min_width. + + * ftxfont.c (ftxfont_create_gcs): New function. + (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap. + (ftxfont_draw_backgrond): Fix filling region. + (ftxfont_default_fid): New function. + (ftxfont_open): Set xfotn->fid to the return value of + ftxfont_default_fid. + (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs. + (ftxfont_done_face): Free only GCs that are created by + ftxfont_create_gcs. + (ftxfont_draw): If face->gc != s->gc, create proper GCs. - * dispextern.h [!HAVE_X_WINDOWS]: Define XColor. + * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]: + Clip to src->width, etc (not src->clip_XXX). -2002-10-24 Kim F. Storm + * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle + FontBackend frame parameter. - * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR. - Callers changed (supply dummy arg). +2008-02-01 Kenichi Handa - * lisp.h (get_window_cursor_type): Update prototype. + * font.h (struct font_driver_list): New member `on'. + (Fclear_font_cache): EXFUN it. + (font_update_drivers): Extern it. - * w32term.c (x_display_and_set_cursor): Get active_cursor from - get_window_cursor_type to track system caret. + * font.c (font_unparse_fcname): Fix typo (swidth->width). + (font_list_entities): Check driver_list->on. + (register_font_driver): Initalize `on' member to 0. + (font_update_drivers): New function. + (Fclear_font_cache): Check driver_list->on. -2002-10-24 Kim F. Storm + * frame.h (Qfont_backend): Extern it. + (x_set_font_backend): Extern it. - * process.c (Fformat_network_address): New function. - (syms_of_process): Defsubr it. - (list_processes_1): Use it to format :local/:remote address if - service/host is not set; before Emacs would crash in that case. - (Fmake_network_process): Don't use Ffind_operation_coding_system - to setup coding system if host or service is not set. + * frame.c (Qfont_backend): New variable. + (frame_parms): New element for font-backend. + (x_set_font_backend): New function. -2002-10-23 Juanma Barranquero + * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle + FontBackend frame parameter. + (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element + x_set_font_backend. - Patch suggested by Jay Finger . + * xfont.c (xfont_list): Don't try listing by :name property if the + name is not for XLFD. - * w32term.c (w32_term_init): Pass XColor to w32_define_color, not - COLORREF. +2008-02-01 Kenichi Handa - * macgui.h: - * w32gui.h: Add definition of XColor. + * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM) + (LGLYPH_SET_TO): New macros. + (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment + element of G is vector or not. + (font_at): Extern it. - * macfns.c: - * w32fns.c: - * xfaces.c: Remove definition of XColor. + * font.c: Include window.h. + (font_lispy_object): New function. + (font_prepare_composition): Check LGLYPH_FORM (g) to detect the + end of valid glyph. + (font_close_object): Fix getting (struct font *). + (font_at): New function. + (Ffont_get): If FONT is a font-object, get entity from it. + (Ffont_make_gstring): Initialize elements of glyphs with nil. + (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix + range check. + (Ffont_at): New function. + (syms_of_font): Defsubr Sfont_at. -2002-10-22 Stefan Monnier + * xdisp.c (it_props): Move the entry for Qauto_composed to just + before the entry for Qcomposition. + (handle_auto_composed_prop): Call auto-composition-function with 4 args. + (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from + the font in gstring. + (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check + LGLYPH_FORM (g) to detect the end of valid glyph. + (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if + we are composing with gstring. - * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char. + * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]: + Check if adjustment is vector or not. - * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>, - Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the - window if it is dedicated. - (Fshrink_window): Add preserve_before as was done for enlarge_window. - (Vspecial_display_function): Update docstring. + * Makefile.in (font.o): Make it depends on window.h. - * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer) - (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR. - (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE; +2008-02-01 Kenichi Handa -2002-10-21 Stefan Monnier + * xterm.c (x_draw_composite_glyph_string_foreground): Check if + adjustment is vector or not. - * casefiddle.c (casify_region): Don't treat a prefix char as part - of a word when at the beginning. +2008-02-01 Miles Bader -2002-10-17 Juanma Barranquero + * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE. - * lread.c (syms_of_lread): Fix typos. +2008-02-01 Kenichi Handa -2002-10-17 Dave Love + * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST) + (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format. + (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros. - * Makefile.in (TEMACS_LDFLAGS): Add trailing comment. + * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card. + (DEVICE_DELTA): Fix typo. + (font_otf_gpos, font_prepare_compositio): Adjust for the change of + LGLYPH format. -2002-10-16 Richard M. Stallman + * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for + the change of LGLYPH format. - * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME. +2008-02-01 Kenichi Handa -2002-10-14 Juanma Barranquero + * ftfont.c (ftfont_list): Fix typo. + (ftfont_build_basic_charsets): Don't include letters with diacritics. - * w16select.c (syms_of_win16select): Fix docstring for - `selection-coding-system'. +2008-02-01 Jan Djärv - * w32select.c (syms_of_w32select): Likewise. + * xfaces.c (realize_non_ascii_face): Set face->extra to NULL. -2002-10-14 Stefan Monnier + * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if + xftface_info is non-NULL. - * syntax.c (scan_lists): Don't get fooled by a symbol ending with - a backslash-quoted char. - (scan_lists, scan_sexps_forward): Pacify the compiler. +2008-02-01 Jan Djärv -2002-10-13 Richard M. Stallman + * ftfont.c (ftfont_list): Move misplaced #endif. - * window.c (window_scroll): Set immediate_quit. +2008-02-01 Kenichi Handa - * print.c (print): When backquote form is the car of a list, - output in old style. Use old_backquote_output to output all - comma forms inside it in old style too. + * ftfont.c (ftfont_list): Pay attention to the case that + FC_CAPABILITY is not defined. - * buffer.h (struct buffer): Move `undo_list' down below `name'. +2008-02-01 Kenichi Handa -2002-10-11 Markus Rost + * xftfont.c (xftfont_open): Set charset related members to -1. - * emacs.c (syms_of_emacs) : Doc fix (not run in - batch mode). + * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of + QCname. + (ftfont_open): Set charset related members to -1. - * lread.c (Fload): Doc fix (load-suffixes). + * fontset.c (Votf_script_alist): New variable. + (syms_of_fontset): Initialize it. + (fontset_font): Delete unused variable. -2002-10-10 Steven Tamm + * fontset.h (Votf_script_alist): Extern it. - * macterm.c (syms_of_macterm, mac_get_mouse_btn): - Reverse functionality of mac-wheel-button-is-mouse-2 to be correct. - Also switch the default to Qnil from Qt. + * font.c (font_find_for_lface): Optimize code. -2002-10-08 Kenichi Handa + * font.h (font_close_object, font_merge_old_spec): Extern them. - * coding.c (code_convert_region): When we need more GAP for - conversion, pay attention to the case that coding->produced is not - greater than coding->consumed. +2008-02-01 Kenichi Handa -2002-10-07 Richard M. Stallman + * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables. + (syms_of_font): Initialize them. + (font_pixel_size): Allow float value in dpi. + (font_prop_validate_type): Delete. + (font_prop_validate_symbol, font_prop_validate_style): Change argument. + Change caller. + (font_prop_validate_non_neg): Rename from font_prop_validate_size. + (font_prop_validate_extra): Delete. + (font_prop_validate_spacing): New function. + (font_property_table): Add elements for all known properties. + (get_font_prop_index): Rename from check_font_prop_name. New + argument FROM. Change caller. + (font_prop_validate): Validate all known properties. + (font_put_extra): Delete argument force. Change caller. + (font_expand_wildcards): Make it static. Fix the way of shrinking + the possible range. + (font_parse_xlfd): Delete argument merge. Fix handling of RESX, + RESY, SPACING, and AVGWIDTH. Don't validate property values here. + Change caller. + (font_unparse_xlfd): Handle dpi, spacing, and scalable properties. + (font_parse_fcname): Delete argument merge. Fix parsing of point + size. Don't validate properties values here. Change caller. + (font_unparse_fcname): Handle dpi, spacing, and scalable properties. + (font_open_by_name): Delete unused variable. + (Ffont_spec): Likewise. Validate property values. + (Ffont_match_p): New function. - * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5. + * font.h (QCscalable): Extern it. + (font_parse_xlfd, font_parse_fcname): Adjust prototype. -2002-10-06 Andrew Choi + * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable. - * macmenu.c (mac_menu_show): Add j to count menu items; match - menu_item_selection to it to find selected item. + * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd. + (xfont_list_pattern): New function. + (xfont_list): Use xfont_list_pattern. -2002-10-06 Jan Dj,Ad(Brv +2008-02-01 Kenichi Handa - * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all - cases. The correct fix is to pass ReparentNotify to Xt. - The shell widget interprets ConfigureNotify differently depending - on if it has been reparented or not. + * font.h (Flist_fonts): EXFUN it. -2002-10-05 Markus Rost +2008-02-01 Jason Rumney - * editfns.c (Fformat_time_string): Doc fix. + * w32term.c (w32_initialize): Add back smoothing_type and + smoothing_enabled definitions. -2002-10-05 John Paul Wallington +2008-02-01 Kenichi Handa - * fns.c (Flength): Doc fix. + * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check + s->face->font on determining underline position. -2002-10-04 Stefan Monnier +2008-02-01 Kenichi Handa - * keyboard.c (keyremap): New struct. - (read_key_sequence): Use it: globally replace keytran_foo with - keytran.foo and fkey_foo with fkey.foo. Rename temp vars - keytran_next and fkey_next to just `next'. + * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field. + (font_has_char): Accept font-object too. + (font_find_for_lface): Try at first with a size specified in face. -2002-10-04 Steven Tamm +2008-02-01 Kenichi Handa - * macterm.c (keycode_to_xkeysym_table): Change return to be - treated like an X keysym. + * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to + font_open_by_name. -2002-10-03 Jan Dj,Ad(Brv +2008-02-01 Kenichi Handa - * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0, - and USE_MOTIF, call XTranslateCoordinates to get the real x and y. - This is to also handle x/y changes that occur because of a resize. + * font.h (QCspacing, QCdpi): Extern them. + (enum font_spacing): New enum. + (FONT_PIXEL_SIZE_QUANTUM): New macro. + + * font.c (POINT_TO_PIXEL): Don't divice POINT by 10. + (QCspacing, QCdpi): New variables. + (syms_of_font): Initialize them. + (font_pixel_size): New function. + (font_put_extra): New function. + (font_parse_xlfd): Fix handling of font size. Add QCdpi property + in FONT_EXTRA. + (font_parse_fcname): Handle enumenrated values (e.g. bold). Fix + handling font size. Add QCname property that contains only + unknown properties. + (font_score): Change argument. Change caller. Pay attention to + FONT_PIXEL_SIZE_QUANTUM. + (font_sort_entites, font_list_entities, font_find_for_lface) + (font_open_for_lface, font_open_by_name): Fix handling of font size. + (Ffont_spec): Add QCname property that contains only unknown properties. + + * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't + include weight in listing pattern, instead check weight of each + listed font. Don't include scalable in pattern. Pay attention to + FONT_PIXEL_SIZE_QUANTUM. + +2008-02-01 Kenichi Handa + + * font.c (font_parse_fcname): Fix parsing of point-size. + (font_unparse_fcname): Produce symbolic names for style properties. + (font_list_entities): Handle float size correctly. + (font_open_by_name): Prefer `normal' property values if the name + doesn't specify them. + + * fontset.c (Finternal_char_font): Use font_get_name, not + Ffont_xlfd_name. + + * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for + FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing + pattern. Don't force scalable. + + * xftfont.c (xftfont_open): For generating a name, start from + 96-byte buffer. + +2008-02-01 Jan Djärv + + * frame.h (x_new_fontset2): Fix prototype. + +2008-02-01 Kenichi Handa + + * font.h (struct font_driver): Delete member parse_name. + (font_match_p, font_get_spec, font_parse_fcname) + (font_unparse_fcname): Extern them. + (font_get_name): Adjust prototype. + + * font.c (XLFD_SMALLNUM_MASK): Delete this macro. + (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it. + (font_expand_wildcards): Fix handling ENCODING field. Avoid + unnecessary checks for weight, slant, and swidth. + (font_parse_fcname): New function. + (font_unparse_fcname): New function. + (font_parse_name): New function. + (font_match_p): New function. + (font_get_name): Change return value to Lisp string. + (font_get_spec): New function. + (Qunspecified, Qignore_defface): Don't extern them. + (font_find_for_lface): Assume that LFACE is fully specified. + (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font + object, use it for FACE. + (font_open_by_name): Call Ffont_spec with QCname prop. Don't call + driver->parse_name. + (Ffont_spec): Call font_parse_name, not font_parse_xlfd. + + * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust + prototype. + + * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete + argument F. Don't call Fnew_fontset. Instead, directly call + make_fontset. + + * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype. + + * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change + of x_new_fontset2. + + * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans) + (Qsans__serif): New variables. + (ftfont_generic_family_list): New variable. + (syms_of_ftfont): Initialize the above variables. + (ftfont_pattern_entity): Delete argument NAME. + (ftfont_list_generic_family): New function. + (ftfont_parse_name): Delete this function. + (ftfont_list): Try generic family only when FcFontList found no font. + (ftfont_list_family): Fix args to FcObjectSetBuild. + + * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font + object in attrs[LFACE_FONT_INDEX]. + (set_lface_from_font_name): Cancel all changes for font-backend. + (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New + function. + (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a + font object in QCfont attribute. + (set_font_frame_param) [USE_FONT_BACKEND]: Likewise. + (realize_default_face) [USE_FONT_BACKEND]: Call + set_lface_from_font_and_fontset. -2002-10-02 John Paul Wallington + * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also + "fixed", and signal error here if no suitable font was found. - * frame.c (Vdelete_frame_functions): New variable. - (syms_of_frame): Initialize and defvar it. - (Fdelete_frame): Use it instead of delete-frame-hook. Don't run - it when frame's `tooltip' parameter is non-nil. + * xfont.c (xfont_parse_name): Delete this function. - * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t. + * xftfont.c (xftfont_open): Change coding style of error + handling. Generate fontconfig's fontname pattern. - * w32fns.c (x_create_tip_frame): Likewise. + * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp. + (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro. - * macfns.c (x_create_tip_frame): Likewise. + * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments. + Both args FONTSET and FONT_OBJECT must be existing ones. -2002-09-30 Kenichi Handa +2008-02-01 YAMAMOTO Mitsuharu - * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to - -1 before calling ccl_driver. + * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR. - * coding.c (decode_coding_emacs_mule): Check coding->cmp_data. - Only when it is non-nil, handle composition sequence. - (setup_coding_system) <0>: Don't force composition handling. +2008-02-01 Kenichi Handa - * Makefile.in (lisp, shortlisp): Add utf-16.elc. + * xfont.c (xfont_open, xfont_encode_char): Fix typo. -2002-09-29 Richard M. Stallman + * font.h (struct font): Fix typo. - * search.c (Freplace_match): Adjust match data for the substitution - just made in the buffer. + * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to + XLFD_XXX_INDEX. + (enum xlfd_field_mask): New enum. + (intern_font_field): Changed argument. Change caller. If digits + are followed by non-digits, return a symbol. + (font_expand_wildcards): New function. + (font_parse_xlfd): Fix wildcard handling. + (Ffont_spec): If :name is specified, reflect the info in the other + properties. - * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros. - (redisplay_internal): Use them. Do RESUME_POLLING at end of function. + * ftfont.c (ftfont_pattern_entity): Fix typo. + (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of + locale. -2002-09-27 Richard M. Stallman +2008-02-01 Kenichi Handa - * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros. - (read_char): Use them. Do all exits thru the end of the function. + * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them. -2002-09-27 Kenichi Handa + * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c. + (font_unparse_xlfd): Fix argument type declaration. Append "*" if + registry doesn't specify encoding part. + (font_find_for_lface): Pay attention to LFACE_FONT_INDEX. + (font_open_by_name): At first try parsing the name. + (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp + as Lisp symbols. - * xfaces.c (try_font_list): Pay attention to the case that FAMILY - is nil. + * fontset.c (reorder_font_vector): Pay attention to the case that + the 3rd element of font_def is nil. + (fontset_font): For the default fontset, append one more fontset + elements for a script-based font specification. Don't add script + attribute on finding a font. + (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the + font name. + (fontset_ascii_font): If a font can't be opened, return nil. -2002-09-26 Richard M. Stallman + * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c. + (ftfont_pattern_entity): New function. + (ftfont_get_cache): Assume that freetype_font_cache is already + initialized. + (ftfont_list): Handle the case that a file is specified in font + name. Use ftfont_pattern_entity to generate entities. + (ftfont_has_char): Check if the pattern contains FC_CHARSET. + (syms_of_ftfont): Initialize freetype_font_cache. - * regex.h (__restrict_arr): Don't define if already defined. + * xftfont.c (xftfont_open): Make the font name fontconfig's + style. Add BLOCK_INPUT and UNBLOCK_INPUT. + (xftfont_close): Free font->font.name if not NULL. - * coding.c (run_pre_post_conversion_on_str): - Save and restore Vdeactivate_mark. + * xfont.c (xfont_list): If script is specified for a font, return + null_vector. + (xfont_list_family): Declare argument type. -2002-09-26 John Paul Wallington + * xfaces.c (set_lface_from_font_name): If a font doesn't have a + name, set LFACE_FONT (lface) to nil. - * minibuf.c (Fminibufferp): Add an optional `buffer' argument. + * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded, + return Qnil. -2002-09-26 Kenichi Handa +2008-02-01 Kenichi Handa - * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is - nonzero, try face's family at first. Otherwise try FAMILY at first. - (choose_face_font): If C is a single byte char or latin-1, call - try_font_list with PREFER_FACE_FAMILY 1. + * emacs.c (main): Check -enable-font-backend arg after the check of -nl. + (standard_args): Add "-enable-font-backend". -2002-09-21 Richard M. Stallman +2008-02-01 Kenichi Handa - * window.c (select_window_1): Don't select frame. - Set frame's selected window only when frame itself is selected. - (Fselect_window): Doc fix. + * xftfont.c (xftfont_default_fid): Set fid_known to 1. + (struct xftdraw_list, xftdraw_list): Delete them. + (register_xftdraw, check_xftdraw): Delete them. + (xftfont_prepare_face): Don't call register_xftdraw. + (xftfont_done_face): Don't call check_xftdraw. + (xftfont_draw): Get backroudn color only when with_background is + nonzero. -2002-09-18 Kim F. Storm + * xfont.c (xfont_encode_char): Fix calculation of char2b. - * process.c (make-network-process): Doc fix (there is no - network-server-log-function hook). +2008-02-01 Kenichi Handa -2002-09-18 Richard M. Stallman + These changes are for the new font handling codes. - * print.c (print): Clear out the unused parts of Vprint_number_table. - (syms_of_print): Doc fix for `print-number-table'. + * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@, + @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@. + (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@. + (FONTSRC, FONTOBJ): New variables. + (obj): Add $(FONTOBJ). + (SOME_MACHINE_OBJECTS): Lib_X11_Lib. + (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and + @LIBOTF_LIBS@. + (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets. + (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC). - * unexelf.c (unexec): Undo previous change. + * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files. -2002-09-17 Andreas Schwab + * character.h (Vscript_representative_chars): Extern it. - * m/alpha.h [LINUX]: Don't define DATA_START. + * character.c (Vscript_representative_chars): New variable. + (syms_of_character): Declare it as a Lisp variable. -2002-09-16 Dave Love + * composite.c (get_composition_id) [USE_FONT_BACKEND]: If + enable_font_backend is nonzero, accept the composition method + COMPOSITION_WITH_GLYPH_STRING. - * unexelf.c (unexec): Deal with .got, reinstating change from - 25-08-1999. + * composite.h (enum composition_method) [USE_FONT_BACKEND]: New + enumeration COMPOSITION_WITH_GLYPH_STRING. -2002-09-13 Richard M. Stallman + * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New + members clip_x, clip_y, clip_width, and clip_height. + (struct face) [USE_FONT_BACKEND]: New members font_info and extra. - * s/sol2-6.h (UNEXEC): Comment out definition. + * emacs.c (main) [USE_FONT_BACKEND]: Handle arg + --enable-font-backend. Call syms_of_font. - * unexsol.c (unexec): Don't downcase first letter of error msg. + * fns.c (assoc_no_quit): New function. - * xfaces.c (Fcolor_supported_p): Just one arg is required. + * fontset.h (FONT_INFO_FROM_FACE): New macro. + (face_for_font, new_fontset_from_font) + (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them. -2002-09-12 Markus Rost + * fontset.c [USE_FONT_BACKEND]: Include "font.h". + (fontset_font, fontset_ascii, face_for_char) + (make_fontset_for_ascii_face, Ffont_info) + (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend + is nonzero, use font-backend mechanism. + (find_font_encoding): Make it non-static. + (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]: + New functions. - * unexsol.c: Include buffer.h, charset.h, coding.h. + * frame.h (struct frame): New members resx and resy. + (struct frame) [USE_FONT_BACKEND]: New member font_driver_list. + (x_new_fontset2) [USE_FONT_BACKEND]: Extern it. + + * frame.c [USE_FONT_BACKEND]: Include "font.h". + (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism. + + * lisp.h (assoc_no_quit): Extern it. + + * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h". + Through out the file, use FONT_INFO_FROM_FACE instead of + FONT_INFO_FROM_ID, use get_per_char_metric instead of + rif->per_char_metric. + (handle_composition_prop) [USE_FONT_BACKEND]: If the composition + method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '. + (get_glyph_face_and_encoding, fill_composite_glyph_string) + (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING) + (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is + nonzero, use font-backend mechanism. + (get_per_char_metric): New function. + + * xfaces.c [USE_FONT_BACKEND]: Include "font.h". + (set_lface_from_font_name) + (set_font_frame_param, free_realized_face) + (prepare_face_for_display, clear_face_gcs) + (Finternal_set_font_selection_order, realize_x_face) + [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use + font-backend mechanism. + (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table. + (load_face_font) [USE_FONT_BACKEND]: Abort. + (face_symbolic_value, face_symbolic_weight, face_symbolic_slant) + (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions. + + * xfns.c [USE_FONT_BACKEND]: Include "font.h". + (x_default_font_parameter) [USE_FONT_BACKEND]: New function. + (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is + nonzero, register all available font drivers. Call + x_default_font_parameter for deciding a font. + (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise. + + * xterm.c [USE_FONT_BACKEND]: Include "font.h". + (x_set_mouse_face_gc, x_set_glyph_string_clipping) + (x_set_glyph_string_clipping_exactly) + (x_compute_glyph_string_overhangs) + (x_draw_glyph_string_foreground) + (x_draw_composite_glyph_string_foreground, x_draw_glyph_string) + (x_free_frame_resources) [USE_FONT_BACKEND]: If + enable_font_backend is nonzero, use font-backend mechanism. + (x_new_fontset2) [USE_FONT_BACKEND]: New function. -2002-09-11 Richard M. Stallman +2008-02-01 Kenichi Handa - * unexsol.c: Don't use report_file_error; do it by hand - using dlerror. + * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from + system_eol_type. + (syms_of_coding): Initialize system_eol_type. - * process.c (wait_reading_process_input, both versions): - Before calling turn_on_atimers, call stop_polling. + * process.c (Fset_process_coding_system): Inherit system's eol + format if necessary. - * emacs.c (syms_of_emacs) : Doc fix. +2008-02-01 YAMAMOTO Mitsuharu - * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible - we go to too_near_end, call clear_glyph_matrix. - (redisplay_window): After make_cursor_line_fully_visible, - call clear_glyph_matrix and bypass `goto done'. + * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch. - * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0 - and we have non-toolkit scroll bars, return nil for scroll-bar-width. +2008-02-01 Kenichi Handa -2002-09-10 Richard M. Stallman + * coding.c (decode_eol): Pay attention to buffer relocation in + del_range_2. + (decode_coding): Call decode_eol before restoring undo_list. - * fileio.c (Fdo_auto_save): Catch error making directory. - Only call push_message if we need to. - At the same time, make an unwind-protect to pop it. - Rename local message_p to old_message_p. - (do_auto_save_make_dir, do_auto_save_eh): New functions. - (do_auto_save_unwind): Don't call pop_message. +2008-02-01 Kenichi Handa - * lisp.h (pop_message_unwind): Renamed from push_message_unwind. + * charset.c (Fdefine_charset_internal): Fix setting of + emacs_mule_bytes. - * keyboard.c (Fexecute_extended_command): Use pop_message_unwind. +2008-02-01 Kenichi Handa - * alloc.c (Fgarbage_collect): Use pop_message_unwind. + * keyboard.c (read_char): Check if C is a character or not before + looking up Vkeyboard_translate_table. - * xdisp.c (pop_message_unwind): Renamed from push_message_unwind. +2008-02-01 Kenichi Handa -2002-09-10 Stefan Monnier + * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix + condition to terminate the loop. - * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete. - (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1. - (re_match_2_internal): Be more careful with infinite loops. +2008-02-01 Kenichi Handa -2002-09-10 Kim F. Storm + * coding.c (produce_composition): Compare charbuf[i] instead of + args[i] against 0. + (Fterminal_coding_system): Use EQ to compare Lisp objects. - * macros.c (end_kbd_macro): New function. - (Fend_kbd_macro): Use it. +2008-02-01 Kenichi Handa - * macros.h (end_kbd_macro): Declare extern. + * coding.c (DECODE_COMPOSITION_START): If the source is short, set + coding->result to CODING_RESULT_INSUFFICIENT_SRC. + (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of + detect_coding. + (emacs_mule_char): Handle old style (Emacs 20) component character + of a composition. + (DECODE_EMACS_MULE_COMPOSITION_RULE_20) + (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a + composition rule. + (decode_coding_emacs_mule): Handle invalid bytes correctly. - * keyboard.c (Fdiscard_input): If defining keyboard macro, - end and save it instead of discarding it. +2008-02-01 Kenichi Handa -2002-09-09 Markus Rost + * coding.c (encode_coding_ccl): Allocate destination dynamically + when necessary. - * s/sol2-6.h: Fix typo. Add comment. +2008-02-01 Kenichi Handa -2002-09-09 Richard M. Stallman + * ccl.c (Fccl_execute_on_string): Fix the condition of terminating + the loop. When quitted, show a proper error message. - * regex.c (regnum_t): Use signed int, not unsigned int. +2008-02-01 Kenichi Handa - * s/sol2-6.h: New file. + * xterm.c (x_set_glyph_string_clipping_exactly): Set + src->clip_head and src->clip_tail temporarily instead of src->hl. - * s/sol2-5.h (UNEXEC): Definition deleted. + * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte + character sequence. + (Fccl_execute_on_string): Use ASET, not XSET. -2002-09-08 Kim F. Storm +2008-02-01 Kenichi Handa - * macros.c (executing_macro_index): Change type to EMACS_INT. - (syms_of_macros): DEFVAR_INT it (needed by kmacro). + * search.c (search_buffer): Fix handling of "\\" in a trivial regexp. - * macros.h (executing_macro_index): Change type to EMACS_INT. +2008-02-01 Kenichi Handa -2002-09-06 Richard M. Stallman + * coding.c (decode_coding): Fix the condition of terminating the + decoding loop. - * casetab.c (set_case_table): Make canon table point to eqv table. +2008-02-01 Kenichi Handa -2002-09-06 Juanma Barranquero + * data.c (Faset): On setting a character bigger than 255 in a + unibyte string, signal an error instead of make the string multibyte. - * coding.c (syms_of_coding): Fix spacing. +2008-02-01 Kenichi Handa - * composite.c (Fcompose_region_internal) - (Fcompose_string_internal): Likewise. + * charset.c (map_charset_chars): Fix for ascii-compatible charset + made by a mapping table. - * data.c (Flsh): Likewise. +2008-02-01 Kenichi Handa - * fontset.c (Fset_fontset_font): Likewise. + * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or + not. + (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL. + (x_produce_glyphs): If CH is TAB, set cmp->offsets properly. - * macfns.c (Fx_server_max_request_size): Likewise. + * xterm.c (x_draw_composite_glyph_string_foreground): Check + s->face is NULL or not. - * w16select.c (syms_of_win16select): Likewise. +2008-02-01 Kenichi Handa - * w32select.c (syms_of_w32select): Likewise. + * xterm.c (x_set_glyph_string_clipping_exactly): New function. + (x_draw_glyph_string): Fix drawing of right_overhang and + left_overhang around/on cursor. - * xselect.c (syms_of_xselect): Likewise. + * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs. -2002-09-05 Richard M. Stallman +2008-02-01 Kenichi Handa - * regex.c (set_image_of_range_1): In no-TRANSLATE case, - call EXTEND_RANGE_TABLE and return a proper value. - (set_image_of_range): Don't call set_image_of_range_1 - if no TRANSLATE or if range includes all of Latin-1. - Only call it for the Latin-1 part of the range. - For other cases, make two separate ranges, - one for the original specified characters and one for - their case-conversions. + * xdisp.c (x_produce_glyphs): Handle composition with TAB. -2002-09-04 Richard M. Stallman +2008-02-01 Kenichi Handa - * s/sol2-5.h (UNEXEC): Use unexsol.o. + * coding.c (Fdefine_coding_system_internal) + (Fdefine_coding_system_alias): Avoid a duplicated element in + Vcoding_system_alist. - * window.c (displayed_window_lines): Correct for one-off bug - in HEIGHT on non-window displays. +2008-02-01 Kenichi Handa - * regex.c (set_image_of_range_1): New function. - (set_image_of_range): Use set_image_of_range_1 for Latin-1. - Return a value to indicate running out of memory. - (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range. - (extend_range_table_work_area): New subroutine. - (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA. - Different calling conventions, and used from set_image_of_range{,_1}. - (IMMEDIATE_QUIT_CHECK): Definitions moved. + * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF. -2002-09-04 Juanma Barranquero + * coding.c (Qcoding_system_define_form): New variable. + (syms_of_coding): Intern and staticpro it. + (Fcoding_system_p): Check Qcoding_system_define_form. + (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM. - * makefile.w32-in: All dependencies updated. + * coding.h (CODING_SYSTEM_P): If ID is not available, call + Fcoding_system_p. + (CHECK_CODING_SYSTEM): If ID is not available, call + Fcheck_coding_system. + (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID): + Try also Fcheck_coding_system. -2002-09-01 Richard M. Stallman +2008-02-01 Kenichi Handa - * unexsol.c: New file. + * coding.c (code_conversion_restore): GCPRO arg. - * xfns.c (Qbox): Declare external, don't define. +2008-02-01 Kenichi Handa - * xdisp.c (redisplay_window) : - If point is on semi-visible last line, reposition - it at previous line. + * character.c (lisp_string_width): Check multibyteness of STRING. - * alloc.c (display_malloc_warning): Use display-warning. - (malloc_warning_1): Function deleted. +2008-02-01 YAMAMOTO Mitsuharu - * alloc.c [ALLOC_DEBUG]: #undef INLINE. + * macterm.c (mac_encode_char): Call ccl_driver with the last arg + Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS. + (decode_mac_font_name): Use decode_coding_c_string instead of + decode_coding. + (x_load_font): Initialize fontp->fontset to -1. Set + fontp->encoding_type. - * lread.c (read1): Handle #! by skipping the line. +2008-02-01 Kenichi Handa -2002-08-31 Richard M. Stallman + * search.c (search_buffer): Give up BM search on case-fold-search + if one of a target character has a case-equivalence of different + byte length even if that target charcter is an ASCII. + (simple_search): Fix calculation of byte length of matched text. + (boyer_moore): Fix handling of case-equivalent multibyte characters. - * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS. - Don't include LDFLAGS. - (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS. +2008-02-01 Kenichi Handa -2002-08-31 Eli Zaretskii + * coding.c (decode_coding): Fix handling of invalid bytes. - * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame - member of x_display_info unless we compile for some window system. +2008-02-01 Kenichi Handa -2002-08-31 Kim F. Storm + * xterm.c (handle_one_xevent): Handle keysyms directly mapped to + Unicode characters. - * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed. - (get_window_cursor_type): Don't use them. - (syms_of_xdisp): Remove intern, staticpro, and defvar for them. +2008-02-01 Kenichi Handa -2002-08-30 Kenichi Handa + * coding.c (encode_coding_object): If a pre-write-conversion + function makes a new buffer, kill it. - * xdisp.c (get_next_display_element): Fix previous change. +2008-02-01 Kenichi Handa -2002-08-30 Andrew Choi + * coding.c (QCascii_compatible_p): New variable. + (syms_of_coding): Initialize it. + (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before + calling string_char. + (record_conversion_result): Add `default:' case. + (coding_charset_list): Delete unused variable `coding_type'. + (Fdefine_coding_system_internal): Add `ascii-compatible-p' + property in the plist of the coding system. + (Fcoding_system_put): Check QCascii_compatible_p. - * macterm.c (expose_overlaps): New function (merge code from xterm.c). - (expose_window): Use it to fix the display of overlapping - rows (merge code from xterm.c). +2008-02-01 Miles Bader - * macfns.c (Qbox): Add extern declaration. + * xfaces.c (Finternal_lisp_face_equal_p): Restore previously + removed calculation of frame `f', as it's now used. -2002-08-30 Juanma Barranquero +2008-02-01 Kenichi Handa - * w32fns.c (Qbox): Make extern. - (syms_of_w32fns): Remove initialization of Qbox. + * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined. + (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally. + (UNIDATA): New variable. + (${lispsource}international/charprop.el): Depends on ${UNIDATA}. + (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run + $(RUN_TEMACS) unconditionally. -2002-08-30 Rune Kleveland (tiny change) +2008-02-01 Kenichi Handa - * xfns.c (Fx_open_connection): Fix error message. + * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary. + (admindir): New variable. + ($(lispsource)international/charprop.el): New target. -2002-08-30 Kim F. Storm +2008-02-01 Miles Bader - The following changes consolidates the handling of the cursor - type in xdisp.c, moving duplicate code and functionality from - xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c. + * character.c (chars-in-region): Remove obsolete function. + (syms_of_character): Remove its initialization. - * frame.h (enum text_cursor_kinds): Consolidated here. - Added DEFAULT_CURSOR value. - (struct frame) - : New fields. - Consolidated from output_x, output_w32 and output_mac structs. - (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR) - (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here. +2008-02-01 Benjamin Riefenstahl - * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist): - Variables consolidated here. - (Valternate_cursor_type, Qalternate_cursor_type): New variables. - (Vcursor_in_non_selected_windows): Renamed from - cursor_in_non_selected_windows and changed to Lisp_Object. - (syms_of_xdisp): Define and staticpro new and moved variables. - (get_specified_cursor_type): Renamed from x_specified_cursor_type; - consolidated here. Recognize Qhollow setting. - (set_frame_cursor_types): New function to set frame cursor types - based on the frame parameters. - (get_window_cursor_type): New function to calculate new cursor - type and width for the specified window. Based on duplicated - code consolidated here. - Enhancements: cursor-in-non-selected-windows may be a cursor type, - check buffer-local alternate-cursor-type and blink-cursor-alist - before using built-in blink off methods. - - * dispextern.h (cursor_in_non_selected_windows): Extern removed. - - * lisp.h (Qcursor_in_non_selected_windows): Extern removed. - (get_specified_cursor_type, get_window_cursor_type) - (set_frame_cursor_types): Added prototypes. + * w32select.c (validate_coding_system) + (setup_windows_coding_system): New functions. + (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use + setup_windows_coding_system. + (setup_config, Fw32_get_clipboard_data): Use + validate_coding_system. + (Fx_selection_exists): Move call to setup_config to a place + where signals are allowed. - * macfns.c (x_specified_cursor_type): Removed. - (x_set_cursor_type): Use set_frame_cursor_types. - (Qbar, Qbox): Removed. - (syms_of_macfns): Don't intern or staticpro them. + * lisp.h (Fcoding_system_base, Fcoding_system_eol_type) + (Fcheck_coding_system): Add declarations. - * macterm.c (x_specified_cursor_type): Remove prototype. - (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH. - (x_display_and_set_cursor): Use get_window_cursor_type. - Remove unused local variables cursor_non_selected, active_cursor. - Redraw cursor if hbar cursor width changes. - (make_mac_frame): Set FRAME_DESIRED_CURSOR. - - * macterm.h (enum text_cursor_kinds): Removed. - (struct output_mac) - : Members removed. - (FRAME_DESIRED_CURSOR): Macro removed. - - * w32fns.c (Vblink_cursor_alist): Removed. - (Qbar, Qhbar, Qbox, Qhollow): Removed. - (syms_of_w32fns): Don't intern, staticpro, or define them. - (x_specified_cursor_type): Removed. - (x_set_cursor_type): Use set_frame_cursor_types. - - * w32term.c (x_specified_cursor_type): Remove prototype. - (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH. - (x_display_and_set_cursor): Use get_window_cursor_type. - Remove unused local variables cursor_off_state. - Redraw cursor if hbar cursor width changes. - Changed all occurrences of w32_highlight_frame to x_highlight_frame. - - * w32term.h (enum text_cursor_kinds): Removed. - (struct output_w32) - : Members removed. - (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR) - (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed. - (struct w32_display_info) : Renamed member from - w32_highlight_frame. - - * xfns.c (Vblink_cursor_alist): Removed. - (Qbar, Qhbar, Qbox, Qhollow): Removed. - (syms_of_xfns): Don't intern, staticpro, or define them. - (x_specified_cursor_type): Removed. - (x_set_cursor_type): Use set_frame_cursor_types. - - * xterm.c (x_specified_cursor_type): Remove prototype. - (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH. - (x_display_and_set_cursor): Use get_window_cursor_type. - Remove unused local variables cursor_off_state. - Redraw cursor if hbar cursor width changes. - - * xterm.h (enum text_cursor_kinds): Removed. - (struct output_x) - : Members removed. - (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR) - (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed. - (x_specified_cursor_type): Remove prototype. - -2002-08-28 Richard M. Stallman - - * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and - FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist. - (Vblink_cursor_alist): New variable. - (syms_of_w32fns): Initialize and defvar it. - (x_specified_cursor_type): Recognize Qbox for filled box. - Exceptions are hollow boxes. - (Qbox, Qhollow): New variables. - (syms_of_w32fns): Initialize and staticpro them. - - * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH): - New macros. - (struct w32_output): New fields blink_off_cursor, - blink_off_cursor_width. - (FRAME_CURSOR_WIDTH): New macro. +2008-02-01 Kenichi Handa - * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR - and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off. + * charset.c (load_charset_map_from_vector): Fix for the first iteration. - * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH - for bar cursor. +2008-02-01 YAMAMOTO Mitsuharu - * w32term.c (expose_overlaps): New function. - (expose_window): Use it to fix the display of overlapping rows. + * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp + string as the second argument for x_new_fontset. -2002-08-28 Simon Josefsson +2008-02-01 Kenichi Handa - * xfns.c (Fx_open_connection): Improve help when X connection - fails, xhost is insecure and xauth is better. + * coding.c (decode_coding_object): Use safe_call1 instead of call1. + (encode_coding_object): Use safe_call instead of call2. -2002-08-28 Juanma Barranquero +2008-02-01 Kenichi Handa - * makefile.w32-in: Add missing dependencies on w32term.h and - composite.h. + * fontset.c (Fset_fontset_font): Check family element of a given vector. - * emacs.c (USAGE1): Add missing newline. + * Makefile.in (lisp): Include charprop.el. -2002-08-27 Andrew Choi +2008-02-01 YAMAMOTO Mitsuharu - * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO. + * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash. + Not sure if it's unnecessary. -2002-08-27 Richard M. Stallman +2008-02-01 Steven Tamm - * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and - FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist. - (Vblink_cursor_alist): New variable. - (syms_of_xfns): Initialize and defvar it. - (x_specified_cursor_type): Recognize Qbox for filled box. - Exceptions are hollow boxes. - (Qbox, Qhollow): New variables. - (syms_of_xfns): Initialize and staticpro them. + * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out + some possibly unnecessary fontset checking code that crashed + when creating a new frame. - * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH): - New macros. - (struct x_output): New fields blink_off_cursor, blink_off_cursor_width. +2008-02-01 Kenichi Handa - * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR - and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off. + * xfaces.c (merge_faces): Fix argument to lookup_derived_face and + lookup_face. - * emacs.c (main): Handle --script. - (USAGE1): Mention --script. - (standard_args): Define sort order for --script. + * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face. -2002-08-27 Gerd Moellmann + * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face. - * xdisp.c (redisplay_updating_p): Variable removed. - (inhibit_free_realized_faces, Qinhibit_free_realized_faces): - New variables. - (init_iterator): Don't free realized faces if - inhibit_free_realized_faces is set. - (redisplay_internal): Bind Qinhibit_free_realized_faces to nil. - (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces, - initialize Qinhibit_free_realized_faces. +2008-02-01 Kenichi Handa - * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces - when iterator is adding glyphs to a glyph matrix. + * coding.c: Cancel the change done in HEAD on 2008-02-01. + (coding_charset_list): New function. -2002-08-27 Kenichi Handa + * coding.h (coding_charset_list): Extern it. - * xdisp.c (get_next_display_element): In unibyte case, don't use - octal form for such eight-bit characters that can be converted to - multibyte char. +2008-02-01 Kenichi Handa -2002-08-26 Kim F. Storm + * fontset.c (Fset_fontset_font): Call find_font_encoding with + concatenation of family and registry. - * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize - foreground and background colors. From Joe Buehler. +2008-02-01 Kenichi Handa -2002-08-26 Miles Bader + * character.h (BYTE8_STRING): Fix typo. - * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it. + * editfns.c (Ftranslate_region_internal): Don't convert unibyte + string to multibyte (sync to HEAD). -2002-08-25 Andrew Choi + * casefiddle.c (casify_region): Handle changes in byte-length + using replace_range_2 (sync to HEAD). - * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is - defined instead of MAC_OSX. +2008-02-01 Andreas Schwab - * s/darwin.h (select): Define select to sys_select only if - HAVE_CARBON is defined. - (HAVE_WORKING_VFORK): #undef it. Define vfork to fork. - (DONT_REOPEN_PTY): #def it. + * chartab.c (map_char_table): GCPRO table and arg. - * macterm.c (XTread_socket): Remove code to call - SendEventToEventTarget for keys with command modifiers when - mac_command_key_is_meta is nil. +2008-02-01 Kenichi Handa -2002-08-24 Andreas Schwab + * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is + already at limit. - * eval.c (Fdefvar): Fix last change. +2008-02-01 Kenichi Handa -2002-08-23 Richard M. Stallman + * fontset.c (fs_load_font): Use fast_string_match_ignore_case + instead of fast_c_string_match_ignore_case. + (find_font_encoding): Change argument to Lisp_Object. Use + fast_string_match_ignore_case instead of + fast_c_string_match_ignore_case. Change caller. - * eval.c (Fdefvar, Fdefconst, Fdefvaralias): - Record variables in load history as (defvar . VAR). - (Fdefvar): Don't record in load history if no initial value. - (Qdefvar): New variable. - (syms_of_eval): Init and staticpro it. +2008-02-01 Kenichi Handa - * lread.c (syms_of_lread): Doc fix. - (build_load_history): Use Fmember to see if a definition - is already in the Vload_history element. + * xdisp.c (get_next_display_element): In unibyte case, decide to + display in octal form by checking a chacter by + UNIBYTE_CHAR_HAS_MULTIBYTE_P. - * process.c (Fstart_process): Remove /: from program name. + * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table. - * emacs.c (decode_env_path): Don't add /: if file name handler - has a `safe-magic' property. + * character.c (unibyte_has_multibyte_table): New variable. - * callproc.c (Fcall_process): Remove /: from program name. + * character.h (unibyte_has_multibyte_table): Extern it. + (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro. -2002-08-23 Stefan Monnier +2008-02-01 Kenichi Handa - * regex.c (PATFETCH): Remove the translating fetch. - (PATFETCH_RAW): Rename to PATFETCH. - (set_image_of_range): New fun. - (SET_RANGE_TABLE_WORK_AREA): Use it. - (regex_compile): Don't translate the pattern chars so eagerly. - Only do it when inserting an `exactn' bytecode or when handling - a char-range. - (mutually_exclusive_p): Avoid empty statement. + * coding.c (encode_coding_iso_2022): Fix handling of charset + annotation. -2002-08-22 Kim F. Storm +2008-02-01 Kenichi Handa - * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we - end up on a partially visible line; this reverts a specific part - of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty - display error which has been reported several times now. - However it introduces the problem that changes was supposed to fix. - See my comments in the source if you want to debug this further. + * coding.c (setup_coding_system): If coding_system is nil, use + Qundecided. + (Fterminal_coding_system): Return nil if terminal coding system is + `undecided'. + (syms_of_coding): Define coding-system `undecided' here. Setup + terminal_coding as `undecided'. -2002-08-20 Kenichi Handa +2008-02-01 Kenichi Handa - * abbrev.c (Fexpand_abbrev): Fix for the multibyte case. + * xdisp.c (message_dolog, set_message_1): Call + unibyte_char_to_multibyte with arg type int. -2002-08-19 Eli Zaretskii + * lread.c (read1): Fix reading of a char-table. - * msdos.c (croak): Add `void' to definition. + * print.c (print_object): Include sub char-table in cicularities + detection. - * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]: - Don't define them, they are defined in msdos.c. +2008-02-01 Kenichi Handa - * mem-limits.h [MSDOS]: Declare etext. + * keymap.c (where_is_internal_2): Fix for the case that KEY is a + cons. Append the found sequences in car of ARGS instead of prepending. - * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg' - `const' since CORRECT_DIR_SEPS modifies its target. +2008-02-01 Kenichi Handa -2002-08-19 Kim F. Storm + * fileio.c (report_file_error): Make a unibyte string from + strerror (errorno). + (Fsubstitute_in_file_name): Fix the arg to + unibyte_char_to_multibyte. It is evaluated twice. - * keyboard.c (Fclear_this_command_keys): Add optional arg - KEEP-RECORD to avoid clearing lossage when we just want to clear - the current key sequence (kmacro needs this). +2008-02-01 Kenichi Handa -2002-08-19 Kenichi Handa + * charset.h (CHAR_CHARSET): Shortcut for ASCII case. - * composite.c (run_composition_function): Call FUNC if it is fboundp. +2008-02-01 Kenichi Handa - * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a - cons, return Qnil. + * coding.c (detect_coding_utf_16): Don't set detect_info->found if + BOM is not found. + (detect_coding, detect_coding_system): Optimization for ISO-2022 + when no 8-bit data is found. -2002-08-17 Richard M. Stallman +2008-02-01 Jason Rumney - * s/sol2-5.h (BROKEN_SIGIO): Add #undef. + * w32fns.c (x_to_w32_font): Update to use new coding struct. - * sysdep.c [!VMS]: Include sys/files.h. +2008-02-01 Kenichi Handa - * editfns.c (save_restriction_restore): Defend from unchained marker. + * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of + CHARS. - * buffer.c (overlays_at): Handle extending vec uniformly. - (overlays_in): Handle extending vec from length 0 as in overlays_at. +2008-02-01 Steven Tamm -2002-08-15 Andrew Choi + * macterm.c (mac_encode_char): Add charset argument and update + to use encoding_type. + (x_new_font,x_new_fontset): Merge in changes from xterm.c; + switch to pure fontset. + (decode_mac_font_name): Temporarily remove decoding. + (x_font_name_to_mac_font_name): Temporarily remove encoding. + (x_load_font): Temporarily remove encoding. - * mac.c (init_mac_osx_environment): New function. +2008-02-01 Kenichi Handa - * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment. + * xfaces.c (Fface_font): If frame is not on a window system, + ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't + refer to face->font. + (split_font_name_into_vector, build_font_name_from_vector) + (lookup_non_ascii_face, realize_non_ascii_face): Define them only + whne HAVE_WINDOW_SYSTEM is defined. -2002-08-14 Kim F. Storm +2008-02-01 Kenichi Handa - * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit - executing macro before appending to it (when used from Lisp). - (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function - which is called prior to each iteration of macro (for kmacro.el). - (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise. + * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL. + (x_produce_glyphs): Fix setting of members of cmp in case + cmp->glyph_len is zero. - * lisp.h (Fexecute_kbd_macro): Update prototype. + * fontset.c (Fset_fontset_font): Fix docstring. + (Ffontset_info): Make it backward compatible. New arg ALL. - * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro. +2008-02-01 Kim F. Storm -2002-08-14 Kenichi Handa + * process.c (read_process_output): Grow decoding_buf when needed; + this could cause a crash in allocate_string and compact_small_strings. - * xselect.c (QUTF8_STRING): New variable. - (symbol_to_x_atom): Pay attention to QUTF8_STRING. - (x_atom_to_symbol): Likewise. - (x_get_local_selection): New argument local_request. If it is - nonzero, call handler_fn with the second arg nil. - (x_handle_selection_request): Call x_get_local_selection with - local_request 0. - (lisp_data_to_selection_data): Don't encode the string here. - (Fx_get_selection_internal): Call x_get_local_selection with - local_request 1. - (syms_of_xselect): Intern and staticpro QUTF8_STRING. +2008-02-01 Kenichi Handa - * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING. + * fileio.c (WRITE_BUF_SIZE): Delete this macro. - * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING. +2008-02-01 Kenichi Handa -2002-08-13 Richard M. Stallman + * coding.c (setup_coding_system): Set coding->common_flags + correctly for raw-text. + (consume_chars): On encoding unibyte text by raw-text, don't check + multibyte form. + (encode_coding): On encoding by raw-text, never use translation tables. - * minibuf.c (Fminibufferp): New function. - (syms_of_minibuf): Defsubr it. - (Fminibuffer_prompt_end): Handle non-minibuffers specially. + * fileio.c (e_write): Short cut for the case of no encoding. -2002-08-13 Gerd Moellmann +2008-02-01 Kenichi Handa - * coding.c (Funencodable_char_position): Lisp_Object/int mixup. + * coding.c (detect_coding, detect_coding_system): Delete unused + variables. -2002-08-12 Richard M. Stallman +2008-02-01 Kenichi Handa - * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H. - [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED) - (WSTOPSIG, WTERMSIG): Define each one independently if not defined - already. + * coding.c (encode_coding_utf_8): Fix handling of raw-byte char. + (consume_chars): Fix handling of 8-bit bytes in unibyte source. - * buffer.c (syms_of_buffer) : Doc fix. +2008-02-01 Kenichi Handa -2002-08-11 Andrew Choi + * coding.c (Ffind_coding_systems_region_internal): Include + raw-text and no-conversion in the result. - * macterm.c (XTmouse_position): Check wp with is_emacs_window. - (Vmac_pass_command_to_system): New variable. - (Vmac_pass_control_to_system): New variable. - (do_mouse_moved): Check wp with is_emacs_window. - (XTread_socket): Check window_ptr with is_emacs_window. - Call FrontNonFloatingWindow instead of FrontWindow. Send keydown - events back to Mac Toolbox for processing, depending on values of - Vmac_pass_command_to_system and Vmac_pass_control_to_system. - (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and - Vmac_pass_control_to_system. +2008-02-01 Kenichi Handa -2002-08-10 Kenichi Handa + * fontset.c (find_font_encoding): Return `ascii' for unknown encoding. + (load_font_get_repertory): Delete unnecessary check of ENCODING of + FONT_DEF. + (font_def_arg, add_arg, from_arg, to_arg): New args. + (set_fontset_font): Change argument. + (Fset_fontset_font): Fix for the case that TARGET is a script + name and charset name. + (new_fontset_from_font_name): Fix argument to Fnew_fontset. - * coding.c (unencodable_char_position): New function. - (Funencodable_char_position): New function. - (syms_of_coding): Defsubr Funencodable_char_position. +2008-02-01 Kenichi Handa -2002-08-10 Andrew Choi + * fontset.c (fontset_font): Rename from fontset_face. Change return + value. + (face_suitable_for_char_p, face_for_char): Adjust for the change + of fontset_font. + (make_fontset_for_ascii_face): Fix setting of the fontset element + for ASCII. + (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR + to get a font name. + (Ffontset_info): Adjust for the change of fontset_font. - * mac.c (sys_select) [MAC_OSX]: New function. + * coding.c (emacs_mule_char): Check invalid code more regidly. - * macterm.c (MakeMeTheFrontProcess): New function. - (mac_initialize): Call MakeMeTheFrontProcess. + * character.h (LEADING_CODE_LATIN_1_MIN) + (LEADING_CODE_LATIN_1_MAX): Delete these macros. - * s/darwin.h: Define select to sys_select. +2008-02-01 Kenichi Handa -2002-08-09 Richard M. Stallman + * editfns.c (check_translation): New function. + (Ftranslate_region_internal): Handle M:N mapping. - * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT. +2008-02-01 Kenichi Handa -2002-08-09 Gerd Moellmann + * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE]. - * xdisp.c (forward_to_next_line_start): Return 0 when reaching the - end of the buffer. +2008-02-01 Kenichi Handa -2002-08-08 Ken Raeburn + * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of + goto invalid_code. + (decode_coding_iso_2022): Fix handling of invalid designation. - * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup. + * fileio.c (Finsert_file_contents): Be sure to call unbind_to + after calling code_conversion_save. - * puresize.h (BASE_PURESIZE): Increase to 910000. +2008-02-01 Kenichi Handa -2002-08-08 Kenichi Handa + * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup. - * coding.c (Ffind_operation_coding_system): For write-region, if - VISIT is a filename, make it the target. + * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup. -2002-08-07 Richard M. Stallman + * fontset.c: Include "intervals.h". + (fontset_face): Fix comparing of Lisp_Objects. + (free_face_fontset, new_fontset_from_font_name): Fix + Lisp_Object/int mixup. - * alloc.c (mark_object): Detect long lists for debugging. - (mark_object_loop_halt): New variable. + * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup. + + * coding.c: Add many prototypes for static functions. + (get_translation_table): Allow max_lookup to be NULL. + (decode_coding,Ffind_coding_systems_region_internal) + (Funencodable_char_position, Fcheck_coding_systems_region): Call + get_translation_table with max_lookup NULL. + +2008-02-01 Kenichi Handa + + * coding.c (get_translation_table): Declare it as Lisp_Object. + (LOOKUP_TRANSLATION_TABLE): New macro. + (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE + instead of CHAR_TABLE_REF. + +2008-02-01 Kenichi Handa + + * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of + annotation data format. + (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA): + Change arguments FROM and TO to single argument NCHARS. Change caller. + (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule) + (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5) + (decode_coding_ccl, decode_coding_charset): Pay attention to + coding->charbuf_used. + (get_translation): New function. + (produce_chars): New arguments translation_table and last_block. + Translate characters here. Return number of carryover chars. + Change caller. + (produce_composition): New argument pos. Change caller. + Adjust for the change of annotation data format. + (produce_charset, produce_annotation): Likewise. + (decode_coding, encode_coding): Don't call translate_chars. + (consume_chars): New arg translation_table. Change caller. + (translate_chars): Delete. + (syms_of_coding): Make translation-table's number of extra slots 2. + +2008-02-01 Kenichi Handa + + * search.c (simple_search): Fix setting this_pos_byte in backward + search. + + * coding.c (detect_coding_emacs_mule): Fix counting of encoded + byte sequence. + (detect_coding_ccl): Fix setting of the variable valids. - * s/hpux10.h (C_SWITCH_SYSTEM): #undef it. +2008-02-01 Kenichi Handa - * data.c (Fmake_variable_frame_local): Doc fix. + * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font. -2002-08-01 David Ponce + * coding.c (decode_coding_utf_16): Fix handling of surrogate pair. - * w32menu.c (local_heap, local_alloc, local_free): New macros. - (malloc_widget_value, free_widget_value) - (w32_free_submenu_strings): Use them. + * editfns.c (Ftranslate_region_internal): Rename from + Ftranslate_region. Accept a char-table in TABLE. + (syms_of_editfns): Defsubr Stranslate_region_internal. - (push_submenu_start, push_submenu_end, push_left_right_boundary) - (push_menu_pane, push_menu_item, single_keymap_panes) - (single_menu_item, Fx_popup_menu, menubar_selection_callback) - (single_submenu, set_frame_menubar) - (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE. + * xfaces.c (set_lface_from_font_name): If a font is specified for + a frame, generate a fontset from the font. + (build_scalable_font_name): If the scalable font is requested for + a specific size, don't change that size. + (try_font_list): Try a scalable font also in the case that a + pattern string is specified. - (Fx_popup_menu): Don't show pop up menu until preceding one is - actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block. +2008-02-01 Kenichi Handa - * w32menu.c: Changes adapted from xmenu.c - (set_frame_menubar): First parse all submenus, - then make widget_value trees from them. - Don't allocate any widget_value objects - until we are done with the parsing. - (parse_single_submenu): New function. - (digest_single_submenu): New function. - (single_submenu): Function deleted, replaced by those two. + * xfaces.c (Fface_font): New optional arg CHARACTER. -2002-08-04 Andrew Choi +2008-02-01 Kenichi Handa - * macterm.c (XTread_socket): Check that FrontNonFloatingWindow - returns a valid window pointer before proceeding for keyDown and - autoKey events. + * charset.h (CHARSET_OFFSET): New macro. -2002-08-03 Andrew Choi +2008-02-01 Kenichi Handa - * macterm.c (USE_CARBON_EVENTS): New macro. - (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros. - (x_iconify_frame): Call CollapseWindow. - (Vmac_reverse_ctrl_meta): New variable. - (Vmac_wheel_button_is_mouse_2): New variable. - (init_mac_drag_n_drop): New function. - (mac_do_receive_drag): New function. - (mac_handle_service_event): New function. - (init_service_handler): New function. - (mac_to_emacs_modifiers): New function. - (mac_event_to_emacs_modifiers): New function. - (mac_get_mouse_btn): New function. - (mac_convert_event_ref): New function. - (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent, - SendEventToEventTarget, mac_event_to_emacs_modifiers, and - mac_get_mouse_btn. - (mac_initialize): Call init_mac_drag_n_drop and init_service_handler. + * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset. - * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and - lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT. - (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and - TOOL_BAR_EVENT for MAC_OS as well. - (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well - as for WINDOWS_NT. - (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX. + * fontset.c (fontset_face): Handle the case that repertory is a + char-table. + (find_font_encoding): Return nil for unknown encoding. + (Fset_fontset_font): Ignore a font of unknown encoding. - * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX. +2008-02-01 Kenichi Handa -2002-08-03 Gerd Moellmann + * keymap.c (describe_vector): Handle default value of a char table. - * xdisp.c (forward_to_next_line_start): Fix a condition that - lead to a newline being skipped. + * fontset.c (fontset_face): Handle fallback fonts correctly. + (Ffontset_info): Return infomation about fallback fonts. -2002-08-02 Andrew Choi +2008-02-01 Kenichi Handa - * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p. + * fontset.c (FONTSET_DEFAULT): New macro. + (FONTSET_ADD, fontset_add): Handle the case that range is nil. + (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle + the case that it is nil. + (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK. + (syms_of_fontset): Set char-table-extra-slots property of fontset to 9. -2002-08-01 Richard M. Stallman + * charset.h (CHAR_CHARSET_P): Fix for the case that the method is + subset or superset. - * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o. +2008-02-01 Kenichi Handa -2002-07-31 Andrew Choi + * emacs.c (main): Call init_charset after syms_of_XXX. - * macfns.c: #undef init_process before #define-ing it. + * charset.c (Vcharset_map_directory): Delete. + (Vcharset_map_path): New variable + (load_charset_map_from_file): Use Vcharset_map_path instead. + (init_charset): Initialize Vcharset_map_path. + (syms_of_charset): Delete declaration of "charset-map-directory", + add declaration of "charset-map-path". - * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if - HAVE_CARBON is defined. +2008-02-01 Kenichi Handa -2002-07-31 Richard M. Stallman + * fns.c (string_char_to_byte, string_byte_to_char): Optimize for + ASCII only string. - * xmenu.c (set_frame_menubar): First parse all submenus, - then make widget_value trees from them. - Don't allocate any widget_value objects - until we are done with the parsing. - (parse_single_submenu): New function. - (digest_single_submenu): New function. - (single_submenu): Function deleted, replaced by those two. + * fileio.c (Finsert_file_contents): Avoid detecting a code twice. -2002-07-30 Juanma Barranquero + * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3. + (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte. - * w32proc.c (syms_of_ntproc): Fix docstring of - `w32-get-true-file-attributes'. +2008-02-01 Kenichi Handa -2002-07-28 Richard M. Stallman + * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros. - * s/hpux8.h (HPUX8): Define this before including hpux.h. - (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide. + * coding.c (QCmnemonic, QCdefalut_char) + (QCdecode_translation_table, QCencode_translation_table) + (QCpost_read_conversion, QCpre_write_conversion): New variables. + (get_translation_table): Return a list of translation tables if + necessary. + (decode_coding): Call get_translation_table with ENCODEP 0. + (char_encodable_p): If translation_table is non-nil, always call + translate_char. + (Fdefine_coding_system_internal): Accept list of translation + tables as :encode-translation-table and :decode-translation-table. + (Fcoding_system_put): New function. + (syms_of_coding): Declare new symbols. Defsubr + Scoding_system_put. + (decode_coding_sjis, encode_coding_sjis): Handle 4th charset, + typically JISX0212. + + * charset.c (map_charset_chars): Fix arg to map_charset_chars in + when the charset is superset type. + + * character.c (translate_char): Accept list of translation tables. + +2008-02-01 Kenichi Handa + + * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl. + (CODING_ATTR_TRANS_TBL): New macro. + + * coding.c (get_translation_table): New function. + (translate_chars): Fix the bug of skipping annotation data. + (decode_coding, encode_coding): Utilize get_translation_table. + (char_encodable_p, Funencodable_char_position): Translate char if + necessary. + (Ffind_coding_systems_region_internal) + (Fcheck_coding_systems_region): Setup translation table for encode + in a coding system attribute vector in advance. + (Fdefine_coding_system_internal): Allow a symbol as translation + table. For shift-jis type coding system, allow 4th charset. - * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8. +2008-02-01 Kenichi Handa - * keyboard.c (make_lispy_event): - Use #ifdef to test USE_TOOLKIT_SCROLL_BARS. - Explicitly clear up_modifier in event->modifiers. + * coding.c (decode_coding_sjis): Check the first byte rigidly. -2002-07-27 Richard M. Stallman + * xdisp.c (get_next_display_element): Pass -1 as POS to + FACE_FOR_CHAR if displaying a C-string. - * xterm.h (FRAME_CURSOR_WIDTH): New macro. +2008-02-01 Kenichi Handa - * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH - for bar cursor. + * composite.c (get_composition_id): Handle xoff and yoff in a + composition rule. -2002-07-26 Kenichi Handa + * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff. + (struct composition): New member lbearing and rbearing. - * coding.c (detect_coding_iso2022): While checking a byte sequence - for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check - it in the normal loop. + * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y). + (x_get_glyph_overhangs): Handle a composition glyph. + (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph. -2002-07-24 Gerd Moellmann + * xterm.c (x_compute_glyph_string_overhangs): Handle also a + composition glyph. - * xterm.c (expose_overlaps): New function. - (expose_window): Use it to fix the display of overlapping rows. +2008-02-01 Kenichi Handa - * xdisp.c (unwind_redisplay): Clear redisplay_updating_p. + * print.c: Include charset.h. + (Vprint_charset_text_property): New variable. + (Qdefault): Extern it. + (PRINT_STRING_NON_CHARSET_FOUND) + (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros. + (print_check_string_result): New variable. + (print_check_string_charset_prop): New function. + (print_prune_charset_plist): New variable. + (print_prune_string_charset): New function. + (print_object): Call print_prune_string_charset if + Vprint_charset_text_property is not t. + (print_interval): Print nothing if itnerval->plist is nil. + (syms_of_print): Declare Vprint_charset_text_property as a lisp + variable. Init and staticpro print_prune_charset_plist. -2002-07-23 Ken Raeburn +2008-02-01 Kenichi Handa - * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well, - since it only depends on XUINT. + * fontset.c (new_fontset_from_font_name): Use the specified font + for all characters in the new fontset. - * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT, - EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS, - PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR): - Macros deleted. + * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and + OBJECT args. - * mem-limits.h (start_of_data): If DATA_START is defined, prefer - its value over other approaches. - * sysdep.c (start_of_data): Don't define the function if a macro - form has been defined. + * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and + OBJECT args for composition too. -2002-07-23 Gerd Moellmann + * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and + OBJECT args. - * xdisp.c (redisplay_updating_p): New variable. - (init_iterator): Don't free realized faces when - redisplay_updating_p is set. - (redisplay_internal): Set redisplay_updating_p while updating - the display. +2008-02-01 Kenichi Handa -2002-07-23 Richard M. Stallman + * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT. - * editfns.c (Fmessage): Treat "" like nil. + * fontset.c (reorder_font_vector): Adjust for the change of + FONT_DEF format. + (fontset_face): New arg id. Change caller. + (face_for_char): New args pos and object. + (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF + format.n + (fs_query_fontset): Check NAME by Fassoc too. + (Fset_fontset_font): Allow non-XLFD font name. + (Ffontset_info): Adjust for the change of FONT_DEF format. -2002-07-23 Kenichi Handa + * fontset.h (face_for_char): Adjust prototype. - * xdisp.c (face_before_or_after_it_pos): - Call FETCH_MULTIBYTE_CHAR with byte postion, not char position. + * xdisp.c (face_before_or_after_it_pos, get_next_display_element) + (append_space, extend_face_to_end_of_line) + (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING) + (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args. + + * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with + POS and OBJECT args. -2002-07-22 Juanma Barranquero + * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with + POS and OBJECT args. - * callproc.c (init_callproc) [DOS_NT]: - Initialize Vshared_game_score_directory to nil. - (syms_of_callproc) [DOS_NT]: Likewise. +2008-02-01 Jason Rumney -2002-07-22 Gerd Moellmann + * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc + of GlobalAlloc'ed memory. - * xdisp.c (display_line): Replace an abort with xassert. +2008-02-01 Kenichi Handa -2002-07-21 Richard M. Stallman + * ccl.c (Fccl_execute_on_string): Fix the condition of loop. - * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED - and END_UNCHANGED when setting buffer_unchanged_p. - Use current_matrix_up_to_date_p to decide whether to use - try_cursor_movement. + * charset.h (charset_table_used): Delete extern. - * config.in (HAVE_SHARED_GAME_DIR): Undef deleted. + * charset.c (charset_table_used): Make it static. + (map_charset_chars): Fix args to c_function with. - * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in. + * chartab.c (map_sub_char_table_for_charset): Fix args to + c_function with. - * callproc.c (init_callproc): Set up Vshared_game_score_directory. - Set to nil if dir does not exist. - (syms_of_callproc): Init unconditionally and simply. + * coding.h (enum coding_result_code): Delete + CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC. - * buffer.c (Fbuffer_list): Doc fix. + * coding.c (Qinsufficient_source, Qinconsistent_eol) + (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables. + (Vlast_code_conversion_error): New variables. + (syms_of_coding): DEFSYM or DEFVAR_LISP them. + (ONE_MORE_BYTE): Record error if any instead of signaling an + error. If non-ASCII multibyte char is found, return the negative + value of the code. All callers changed to check it. + (ONE_MORE_BYTE_NO_CHECK): Likewise. + (record_conversion_result): New function. Change all codes setting + coding->result to call this function. + (detect_coding_utf_8, decode_coding_utf_8) + (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5): + Don't use the local variable incomplete. + (emacs_mule_char): Change the second arg to `const'. + (decode_coding): Fix of flushing out unprocessed data. + (make_conversion_work_buffer): Fix making of a work buffer. + (decode_coding_object): Return coding->dst_object; -2002-07-21 Ken Raeburn + * fontset.c (set_fontset_font): Fix args. - * sysdep.c (end_of_text, end_of_data): Unused functions deleted. + * lisp.h (CHARACTERBITS): Define as 22. - * buffer.c (mmap_realloc): When shrinking, make sure number of - pages to unmap is rounded towards zero. + * process.c (send_process): Be sure to set coding->src_multibyte. - * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted. - (XSETINT): Deleted. + * xdisp.c (handle_auto_composed_prop): Fix setting of limit. - * m/att3b.h (XINT): Don't define. - (VALBITS, VALMASK, XTYPE): Deleted. - (DATA_SEG_BITS): Define. - * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET, - ARRAY_MARK_FLAG): Deleted. - (DATA_SEG_BITS): Define. - * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted. - (DATA_SEG_BITS): Define. +2008-02-01 Kenichi Handa -2002-07-20 Richard M. Stallman + * xdisp.c (handle_auto_composed_prop): Give limit to + Fnext_single_char_property_change. - * print.c (print_error_message): New args CONTEXT and CALLER. - Calls changed. +2008-02-01 Kenichi Handa - * lisp.h (print_error_message): Declare new args. - - * keyboard.c (cmd_error_internal): Pass Vsignaling_function - and CONTEXT to print_error_message, don't print them here. - For a Quit, don't use Vsignaling_function. - Call message_log_maybe_newline. - - * Makefile.in (xsmfns.o): Don't depend on lisp.h. - -2002-07-20 Kim F. Storm - - * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p. - -2002-07-19 Ken Raeburn - - * bytecode.c (struct byte_stack): Pointers into byte string now - point to const. - * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to - const. - * charset.h (BCOPY_SHORT): Source pointer now points to const. - * coding.c (encode_eol, detect_coding, detect_eol): - (decode_coding, encode_coding, detect_coding_system): - Source strings now treated as const. - (decode_coding_string, encode_coding_string): Use STRING_COPYIN to - modify Lisp string contents. - * coding.h (decode_coding, encode_coding, detect_coding, - detect_eol): Declarations updated. - * composite.c (compose_chars_in_text): Treat Lisp string contents - as const. - * dispnew.c (safe_bcopy): Source pointer now points to const. - * lisp.h (STRING_COPYIN): New macro. - (detect_coding_system, safe_bcopy, temp_output_buffer_setup): - (internal_with_output_to_temp_buffer): Declarations updated. - * print.c (temp_output_buffer_setup): - (internal_with_output_to_temp_buffer): Buffer name argument is now - pointer to const. - * sound.c (struct sound_device): Function pointer field "write" - buffer argument now points to const. - (vox_write): Buffer argument points to const. - * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string - contents as const. - * sysdep.c (emacs_write): Buffer pointer now const. - * term.c (encode_terminal_code): Buffer pointer now const. - * xfaces.c (may_use_scalable_font_p): Argument now points to const. - (x_face_list_fonts, x_update_menu_appearance): - (hash_string_case_insensitive): Treat Lisp string contents as const. - -2002-07-19 Juanma Barranquero - - * xdisp.c (syms_of_xdisp): Remove redundant deprecation info. - - * fileio.c (syms_of_fileio): Likewise. - (Ffile_name_as_directory): Fix argument name in docstring. - (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP. - -2002-07-18 Richard M. Stallman - - * data.c (Fdefalias): Doc fix. - -2002-07-17 Dave Love - - * intervals.h (text_property_stickiness): Use P_. - - * ccl.c: Remove `emacs' conditionals. - (ccl_backtrace_table): Fix size spec. - (ccl_driver): Fix type errors. - -2002-07-16 Ken Raeburn - - * alloc.c (xstrdup, make_string, make_unibyte_string) - (make_multibyte_string, build_string): String pointer args now - point to const. - * charset.c (find_charset_in_text, c_string_width): - (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte): - * fileio.c (report_file_error): - * insdel.c (copy_text, count_size_as_multibyte, insert_1): - (count_combining_before, count_combining_after, insert_1_both): - (insert, insert_and_inherit, insert_string): - (insert_before_markers, insert_before_markers_and_inherit): - * lread.c (intern, oblookup, hash_string): - * minibuf.c (temp_echo_area_glyphs): - * search.c (fast_c_string_match_ignore_case): - * sysdep.c (emacs_open, set_file_times): - * xfaces.c (xstricmp): - * xdisp.c (store_frame_title, string_char_and_length): - (message_dolog, message2, message2_nolog, set_message): Likewise. - (set_message_1): Cast message string argument to const pointer. - * editfns.c (general_insert_function): Insertion function now - takes pointer to const for input data. - * charset.h (find_charset_in_text, c_string_width): - (parse_str_as_multibyte): Declarations updated. - * dispextern.h (xstricmp): Declaration updated. - * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text): - (count_size_as_multibyte, count_combining_before): - (count_combining_after, insert_1, insert_1_both, message_dolog): - (insert, insert_and_inherit, insert_before_markers) - (insert_before_markers_and_inherit, set_message, message2): - (message2_dolog, build_string, make_string, make_unibyte_string): - (make_multibyte_string, intern, oblookup, report_file_error): - (fast_c_string_match_ignore_case, temp_echo_area_glyphs): - (emacs_open, xstrdup): Declarations updated. - * systime.h (set_file_times): Declaration updated. - - * charset.c (find_charset_in_text, lisp_string_width): Use const - for pointer to lisp string data. - * charset.h (FETCH_STRING_CHAR_ADVANCE): - (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): - * coding.c (Ffind_coding_systems_region_interval): - * fileio.c (Ffile_name_directory, Ffile_name_nondirectory): - (Fmake_directory_internal, Fdelete_directory): - (Ffile_name_absolute_p, Fwrite_region, double_dollars): - * fontset.c (font_family_registry, fs_query_fontset): - (list_fontsets): - * frame.c (Fframe_parameter): - * keyboard.c (cmd_error_internal): - * keymap.c (Fdescribe_buffer_bindings): - * lread.c (complete_filename_p, openp): - * minibuf.c (Fminibuffer_complete_word): - * xdisp.c (string_pos_nchars_ahead, init_from_display_pos): - (face_before_or_after_it_pos, next_element_from_string): - (get_overlay_arrow_glyph_row, display_mode_element): - (decode_mode_spec_coding): - * xterm.c (same_x_server): Likewise. - - * buffer.c (reset_buffer_local_variables): Delete "#if 0" - settings of non-existent fields. - - * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to - copy a lisp value. - - * lread.c (Fintern_soft): Use string macros instead of - Lisp_String fields. - * keyboard.c (echo_char, parse_modifiers_uncached): - (parse_solitary_modifier, Fexecute_extended_command): Likewise. - * textprop.c (validate_interval_range, interval_of): Likewise. - - * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data. - - * charset.h (FETCH_STRING_CHAR_ADVANCE) - (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of - XSTRING()->size_byte. - - * lisp.h (SDATA, SREF): Produce rvalue. - (SSET): New macro. - * alloc.c (make_event_array): Use SSET for storing into a string. - * buffer.c (Fother_buffer): Use SREF when retrieving a byte from - a string. - * casefiddle.c (casify_object): Use SSET. - * charset.h (FETCH_STRING_CHAR_ADVANCE) - (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting - address of string contents. - * data.c (Faref): Use SDATA. - (Faset): Use SDATA, SSET. - * dired.c (directory_files_internal): Use SSET. - * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET. - (Fread_file_name): Use SREF, SSET. - * fns.c (concat): Use SSET. - (concat, Fdelete): Use SDATA. - * insdel.c (insert_from_string_1): Use SDATA. - * keyboard.c (Fevent_convert_list): Use SREF. - * lread.c (Fload): Use SDATA, SSET. - * macfns.c (validate_x_resource_name): Use SSET. - * process.c (status_message): Use SSET. - * search.c (wordify): Use SDATA. - (Freplace_match): Use SREF. - * w32fns.c (validate_x_resource_name): Use SSET. - * xfns.c (validate_x_resource_name): Use SSET. - * xterm.c (x_catch_errors, x_clear_errors): Use SSET. - -2002-07-16 Richard M. Stallman - - * s/hpux11.h (USG_SUBTTY_WORKS): Defined. - - * xdisp.c (reconsider_clip_changes): - Don't test prevent_redisplay_optimizations_p. - (redisplay_internal): Test prevent_redisplay_optimizations_p - along with clip_changed in some cases. - (try_window_id): Likewise. - (redisplay_window): New local var buffer_unchanged_p. - - * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass. - - * process.c (create_process): Test USG_SUBTTY_WORKS. - (process_send_signal): Clean up handling of GID. - Detect errors in ioctls meant to set GID. - - * window.c (temp_output_buffer_show): - Don't set prevent_redisplay_optimizations_p. - -2002-07-15 Juanma Barranquero - - * eval.c (Fdefvaralias): Add docstring argument. - -2002-07-15 Ken Raeburn - - * lisp.h (STRING_INTERVALS): Produce rvalue. - (STRING_SET_INTERVALS): New macro. - * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it. - * fns.c (Fstring_as_multibyte): Likewise. - * intervals.c (balance_possible_root_interval, delete_interval) - (create_root_interval, copy_intervals_to_string): Likewise. - * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL - instead of 0. - -2002-07-14 Ken Raeburn - - * lisp.h (STRING_SET_CHARS): New macro. - (SCHARS, SBYTES): Produce rvalues. - * dired.c (directory_files_internal): Use STRING_SET_CHARS. - * fns.c (concat): Likewise. - * lread.c (read_vector): Likewise. - - * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE. - (STRING_SET_UNIBYTE): New macro. - (SET_STRING_BYTES): Delete. Callers (all of which supplied a - length of -1) changed to use STRING_SET_UNIBYTE. - * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, - casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c, - composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c, - dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c, - fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c, - keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c, - minibuf.c, msdos.c, print.c, process.c, search.c, sound.c, - sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c, - w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c, - w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, - xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with - STRING_BYTES or indirection changed to SCHARS, SBYTES, - STRING_INTERVALS, SREF, SDATA; explicit size_byte references left - unchanged for now. - -2002-07-13 Kim F. Storm + * composite.c (syms_of_composite): Don't make the composition hash + table weak. - * keyboard.c (command_loop_1): Invert check on Vmemory_full. + * fontset.c (Fset_fontset_font): Fix docstring. -2002-07-12 Richard M. Stallman + * lisp.h (detect_coding_system): Adjust prototype. - * fileio.c (Fwrite_region): Doc fix. - - * print.c (print_error_message): Don't handle Vsignaling_function here. + * fileio.c (kill_workbuf_unwind): Delete this function. + (Finsert_file_contents): Adjust the call of detect_coding_system. + Get conversion_buffer by code_conversion_save. Use the macor + CODING_MAY_REQUIRE_DECODING. After decoding, update + coding_system. - * keyboard.c (cmd_error_internal): Handle Vsignaling_function here. - (command_loop_1): Avoid certain actions after memory-full error. - - * eval.c (Fsignal): Don't call cancel_hourglass. - For a memory-full error, don't call Vsignal_hook_function - and don't set Vsignaling_function. + * coding.h (make_conversion_work_buffer): Delete extern. + (code_conversion_save): Extern it. - * process.c (process_send_signal): Add abort call. + * coding.c (enum iso_code_class_type): Delete ISO_carriage_return. + (CODING_GET_INFO): Delete argument eol_type. Change callers. + (decode_coding_utf_8): Don't do eol converion. + (detect_coding_utf_16): Check coding->src_chars, not + coding->src_bytes. Add heuristics for those that have no signature. + (decode_coding_emacs_mule, decode_coding_iso_2022) + (decode_coding_sjis, decode_coding_big5, decode_coding_charset): + Don't do eol converion. + (adjust_coding_eol_type): Return a new coding system. + (detect_coding): Don't detect eol. Fix for utf-16 detection. + (decode_eol): In case of CRLF->LF conversion, use del_range_2 on + each change. + (decode_coding): Pay attention to undo_list. Do eol convesion for + all types of coding-systems (if necessary). + (Vcode_conversion_work_buf_list): Delete it. + (Vcode_conversion_reused_workbuf): Rename from + Vcode_conversion_reused_work_buf. + (Vcode_conversion_workbuf_name): New variable. + (reused_workbuf_in_use): New variable. + (make_conversion_work_buffer): Delete the arg DEPTH. + (code_conversion_restore): Change argument to cons. + (code_conversion_save): Delete the argument BUFFER. Change callers. + (detect_coding_system): New argument src_chars. Change callers. + Fix for utf-16 detection. + (init_coding_once): Don't use ISO_carriage_return. + (syms_of_coding): Initialize Vcode_conversion_workbuf_name and + reused_workbuf_in_use. -2002-07-11 Markus Rost +2008-02-01 Kenichi Handa - * keymap.c (Fkey_binding): Fix typo. + * keymap.c (store_in_keymap): Pay attention to the case that idx + is a cons specifying a character range. -2002-07-11 Richard M. Stallman +2008-02-01 Kenichi Handa - * alloc.c (Vmemory_full): New variable. - (Vmemory_signal_data): Rename from memory_signal_data. - Uses changed. - (syms_of_alloc): Defvar them. - (memory_full, buffer_memory_full): Set Vmemory_full. + * xdisp.c (handle_auto_composed_prop): Fix the case of returning + HANDLED_RECOMPUTE_PROPS. - * lisp.h (Vmemory_full): Add declaration. - (current_column, indented_beyond_p): Change declaration. + * coding.c (Fdefine_coding_system_internal): Fix checking of + ascii compatibility. - * indent.c (last_known_column): Declare as double, not float. - (current_column, current_column_1, string_display_width) - (position_indentation): Return `double'. - (indented_beyond_p): Arg `column' is `double'. Callers changed. +2008-02-01 Kenichi Handa - * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil. - (back_to_previous_visible_line_start) - (reseat_at_next_visible_line_start, next_element_from_buffer): - Use `double', not `float', when calling indented_beyond_p. + * charset.c (find_charsets_in_text): Delete unused locale variable. + (Fset_charset_priority): Update Vemacs_mule_charset_list too. - * s/hpux11.h (BROKEN_SA_RESTART): Define. + * coding.c (encode_coding_emacs_mule): Emit bytes with MSB. + Resync charset_list to Vemacs_mule_charset_list. - * sysdep.c (sys_signal): Test BROKEN_SA_RESTART. + * keymap.c (store_in_keymap): Pay attention to the case that idx + is a cons specifying a character range. -2002-07-11 Juanma Barranquero +2008-02-01 Kenichi Handa - * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c, - * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c, - * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c, - * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c, - * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c, - * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense. + * composite.c (update_compositions): Bind inhibit-read-only, etc + to t before calling remove-list-of-text-properties. -2002-07-10 Juanma Barranquero + * print.c (print_object): Always print ASCII chars as is. - * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. - All callers changed. +2008-02-01 Kenichi Handa -2002-07-09 Stefan Monnier + * keymap.c (Fdefine_key): Fix handling of Lucid style event type list. - * data.c (Fdefalias): Add an optional `docstring' argument. - (set_internal, Fsetq_default): Use XCAR/XCDR. + * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE + is a char table. - * composite.c (HASH_VALUE, HASH_KEY): - * ccl.c (HASH_VALUE): Remove (it's in lisp.h now). +2008-02-01 Kenichi Handa -2002-07-09 Kenichi Handa + * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary. - * callproc.c (Fcall_process): Fix previous change. +2008-02-01 Kenichi Handa -2002-07-07 Stefan Monnier + * xfaces.c (set_lface_from_font_name): Fix for the case that + FONTNAME is not fontset name. - * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion): - Add support for hash-tables. - (Ftry_completion): Return t even if the string appears multiple times. +2008-02-01 Kenichi Handa - * fns.c (Fnconc): Use XCDR. - (Fprovide): Use CONSP and XCDR. - (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX) - (HASH_TABLE_SIZE): Delete: moved to lisp.h. - (Fmake_hash_table): Accept `:size nil'. - (Fmakehash): Delete: moved to subr.el. - (syms_of_fns): Don't defsubr makehash. + * fns.c (base64_encode_1): Fix previous change. - * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX) - (HASH_TABLE_SIZE): Move from fns.c. +2008-02-01 Kenichi Handa -2002-07-07 Richard M. Stallman + * fontset.c (set_fontset_font): New function. + (Fset_fontset_font): If a font is specified for a charset, use + map_charset_chars to store the font spec in a fontset. - * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls. - Instead just return 0 when there is something to be done. - (try_scrolling): If make_cursor_line_fully_visible returns 0, - retry scrolling as if cursor were off the bottom. - (try_cursor_movement): If make_cursor_line_fully_visible returns 0, - return CURSOR_MOVEMENT_MUST_SCROLL. - (redisplay_window): If make_cursor_line_fully_visible returns 0, - go to try_to_scroll. +2008-02-01 Kenichi Handa - * buffer.c (Fbuffer_local_value): Store current value into its binding - so we get the up-to-date value for the binding that is loaded. + * fontset.c (fontset_face): Create a fallback fontset on demand + (make_fontset): Don't create a fallback fontset here. + (free_face_fontset): Free a fallback fontset (if any) too. + (n_auto_fontsets): Delete this variable. + (auto_fontset_alist): New variable. + (new_fontset_from_font_name): Check auto_fontset_alist. + (dump_fontset) [FONTSET_DEBUG]: Fully re-written. + (Ffontset_list_all) [FONTSET_DEBUG]: New function. + (syms_of_fontset): Initialize and staticpro auto_fontset_alist. + Defsubr Sfontset_list_all. - * eval.c (Fdefmacro): Doc fix. +2008-02-01 Kenichi Handa -2002-07-05 Dave Love + * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts. - * keyboard.c (read_key_sequence): Set initial_idleness_start_time - correctly. +2008-02-01 Kenichi Handa - * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE) - (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New. - (ccl_driver): Add cases for CCL_LookupIntConstTbl, - CCL_LookupCharConstTbl. - (syms_of_ccl): Defvar translation-hash-table-vector. + * fontset.c (Fnew_fontset): Check NAME more rigidly. -2002-07-05 Pavel Jan,Am(Bk +2008-02-01 Kenichi Handa - * xdisp.c: Remove unused variable `face'. + * editfns.c (Fgoto_char): Fix docstring. -2002-07-04 Juanma Barranquero +2008-02-01 Kenichi Handa - * keyboard.c (post_command_idle_hook): Remove redundant (and inexact) - obsolescence information. + * insdel.c (insert_from_gap): Adjust intervals correctly. -2002-07-03 Andrew Choi +2008-02-01 Jason Rumney - * macterm.c (x_list_fonts): Fix comment. Cache fonts matching - pattern. Search cache first. - (init_font_name_table): Also add entry for jisx0201.1976-0 coding - for Japanese font. - (XLoadQueryFont): Use it. + * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't. + (pfnGetFontUnicodeRanges): New dynamically loaded function. + (w32_initialize): Try to load it. + (x_get_font_repertory): Use it if available. + (w32_encode_char): Add shortcut for unicode output. -2002-07-02 Richard M. Stallman + * w32fns.c (w32_load_system_font): Default charset to -1. + (x_to_w32_charset): Match all fonts for unicode. + (w32_to_x_charset): New parameter matching. Don't return partial + or wildcard charsets. + (w32_to_all_x_charsets): Don't return partial or wildcard charsets. + (w32_codepage_for_font): Return CP_UNICODE for unicode. + (w32_to_x_font): Match charset to real charset. + (enum_font_cb2): Always list unicode versions. - * keymap.c (Fdefine_key): Doc fix. + * makefile.w32-in (temacs): Increase EMHEAP. - * xterm.c (x_term_init): Turn off polling around XtOpenDisplay. +2008-02-01 Jason Rumney -2002-07-02 Juanma Barranquero + * w32term.c (w32_encode_char): New charset parameter. + font_info.encoding becomes encoding_type. + (x_get_font_repertory): New function. Warning: stub only! + (x_new_font): Return quickly if font already set. + (x_new_fontset): fontsetname parameter is Lisp_Object. + Use new fs_query_fontset. Try new_fontset_from_font_name. Use + fontset_name for return value. - * keymap.c (syms_of_keymap): Fix typo. + * w32term.h: Declare x_get_font_repertory. -2002-07-01 Andrew Choi + * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in + place of find_charset_in_text. Use encode_coding_object in place + of encode_coding. + (Fw32_get_clipboard_data): Use decode_coding_c_string in place of + decode_coding. - * s/darwin.h: Define POSIX_SIGNALS. + * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version + of x_new_fontset. + (w32_load_system_font): Initialize charset as unicode. + font_info.encoding becomes encoding_type. + (w32_to_x_font): Use decode_coding_c_string in place of decode_coding. + (x_to_w32_font): Use encode_coding_object in place of encode_coding. + (syms_of_w32fns): Set get_font_repertory_func. - * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef - and FSRefMakePath to convert FSSpec returned with Apple Event to - Posix pathname. - (mac_initialize) [TARGET_API_MAC_CARBON]: - Call init_required_apple_events and disable the `Quit' menu item - provided automatically by the Carbon Toolbox. + * w32console.c: Include character.h. Use terminal_encode_buffer + from term.c. + (write_glyphs): Use new version of encode_terminal_code. Use + encode_coding_object in place of encode_coding. -2002-07-01 Dave Love + * w32bdf.c (w32_load_bdf_font): Clear font_info before filling. + encoding becomes encoding_type. - * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl - for K&R. + * term.c (terminal_encode_buffer): Make externally visible. - * xterm.c: Fix prototype for K&R. + * makefile.w32-in: Add character.h dependancies. + (character.o, chartab.o): New targets. - * term.c (costs_set): Declare static, non-initialized for pcc. +2008-02-01 Kenichi Handa -2002-07-01 Richard M. Stallman + * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro + CODING_ID_EOL_TYPE. - * keyboard.c (timer_last_idleness_start_time): New variable. - (timer_start_idle): Set that. - (read_key_sequence): Use that to reset timer_idleness_start_time - to previous value. +2008-02-01 Andreas Schwab - * window.c (Frecenter): With arg, set optional_new_start. + * coding.c (produce_chars): Revert last change. - * xdisp.c (redisplay_internal): Make optional_new_start really work. +2008-02-01 Kenichi Handa - * minibuf.c (Fminibuffer_complete_and_exit): Move to end of - buffer for completion. + * charset.h (charset_unicode): Extern it. -2002-06-29 Ken Raeburn + * charset.c (string_xstring_p): Check by (C >= 0x100). + (find_charsets_in_text): Change format of the arc CHARSETS. New + arg MULTIBYTE. + (Ffind_charset_region, Ffind_charset_string): Adjust for the + change of find_charsets_in_text. + (Fsplit_char): Fix doc. Never return unknown. - * xdisp.c (store_mode_line_string): Lisp_Object/int mixup. + * chartab.c (char_table_translate): Use CHARACTERP, not INETEGERP. -2002-06-28 Jan Dj,Ad(Brv + * coding.c (Fdefine_coding_system_alias): Update + Vcoding_system_list. - * keyboard.c (readable_filtered_events): New function that filters - FOCUS_IN_EVENT depending on parameter. - (readable_events): Calls readable_filtered_events, not filtering - FOCUS_IN_EVENT. - (get_filtered_input_pending): New function, filtering parameter passed - to readable_filtered_events. - (get_input_pending): Calls get_filtered_input_pending, not filtering - FOCUS_IN_EVENT. - (Finput_pending_p): Calls get_filtered_input_pending, DO filter - FOCUS_IN_EVENT. + * fontset.c (load_font_get_repertory): Pay attention to the case + that ENCODING of a font is specified by a char-table. - * xterm.h (struct x_output): Add focus_state. + * xterm.c (x_get_font_repertory): Handle the case that the + encoding of font is other than Unicode. - * xterm.c (x_focus_changed): New function. - (x_detect_focus_change): New function. - (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut - EnterNotify and LeaveNotify to track X focus changes. +2008-02-01 Kenichi Handa -2002-06-28 Andreas Schwab + * term.c (encode_terminal_code): Don't handle glyph-table. Check + if a character is encodable by the terminal coding system. If + not, produces proper number of `?'s. Update + terminal_encode_buffer and terminal_encode_buf_size if necessary. + (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P. - * lisp.h: Remove duplicate declaration of code_convert_string_norecord. +2008-02-01 Kenichi Handa -2002-06-27 Kim F. Storm + * term.c (terminal_encode_buffer, terminal_encode_buf_size): New + variables. + (encode_terminal_code): Change argument. Encode multiple + characters at once. Store the result of encoding in + terminal_encode_buffer. + (write_glyphs, insert_glyphs): Adjust for the change of + encode_terminal_code. + (term_init): Initialize terminal_encode_buffer and + terminal_encode_buf_size. - * xdisp.c (mode_line_string_list, mode_line_string_face) - (mode_line_string_face_prop): New variables. - (store_mode_line_string): New function. - (display_mode_element): Use store_mode_line_string to - add mode-line string elements to mode_line_string_list - when mode_line_string_list is non-nil. - (Fformat_mode_line): Now returns propertized string by - default. New arg NO-PROPS to ignore properties. - (decode_mode_spec): Only add two dashes for %- in propertized - mode-line string. - (syms_of_xdisp): Init and staticpro mode_line_string_list. + * coding.c (consume_chars): If coding->src_object is nil, don't + check annotation. -2002-06-27 Stefan Monnier +2008-02-01 Kenichi Handa - * minibuf.c (minibuffer_completion_contents): Add return type. + * character.c (char_string): Use ASCII_CHAR_P instead of + SINGLE_BYTE_CHAR_P. -2002-06-27 Juanma Barranquero +2008-02-01 Kenichi Handa - * charset.c (Fchar_bytes): Remove obsolescence info from docstring. + * xdisp.c (handle_auto_composed_prop): Check if the last + characters of auto-composed region is newly composed with the + following characters. + (handle_composition_prop): Fix checking of point being inside + composition. -2002-06-26 Juanma Barranquero +2008-02-01 Kenichi Handa - * fileio.c (read_file_name_cleanup): Add missing return. + * fns.c (concat): Don't change multibyteness of the result by + concatenating an 8-bit character. -2002-06-26 Richard M. Stallman + * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change + multibyteness of the result when newelt is an 8-bit character. - * window.c (Frecenter): Don't set force_start flag. +2008-02-01 Dave Love - * minibuf.c (do_completion, Fminibuffer_complete_word) - (Fminibuffer_completion_help): Complete just the text before point. - (minibuffer_completion_contents): New function. + * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used + EMACS_INT. - * buffer.c (Fbury_buffer): Use frames_discard_buffer. + * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars. - * frame.c (frames_bury_buffer): Function deleted. + * xfaces.c (face_numeric_value): Declare dim size_t. + (Finternal_lisp_face_equal_p): Remove unused f. -2002-06-25 Miles Bader + * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor) + (MATRIX_ROW): Remove unused vars. + (draw_glyphs, x_insert_glyphs, fast_find_position) + (fast_find_position, fast_find_string_pos): Use EMACS_INT for + byte/char counts. - * callint.c (Fcall_interactively): When checking to see if doprnt hit - the end of callint_message, allow for a terminating '\0'. + * regex.c (regex_compile): Remove unused var. -2002-06-24 Juanma Barranquero + * minibuf.c (Fminibuffer_complete_word): Remove unused var. - * w32select.c: Include composite.h. + * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap) + (Faccessible_keymaps, where_is_internal): Remove unused vars. - * w16select.c: Likewise. + * keyboard.c (cancel_hourglass_unwind): Return Qnil. -2002-06-24 Kenichi Handa + * frame.c (frame_name_fnn_p): Make len EMACS_INT. - * callproc.c (Fcall_process): If code detection is necessary, - call detect_coding directly here. + * fileio.c (Fwrite_region): Remove unused var. - * coding.c (detect_eol): Preserve coding->cmp_data. + * dispnew.c (adjust_frame_glyphs_for_frame_redisplay) + (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim. - * w16select.c (Fw16_get_clipboard_data): - * w32fns.c (w32_to_x_font): - * w32select.c (Fw32_get_clipboard_data): - * xselect.c (selection_data_to_lisp_data): - * xterm.c (XTread_socket): Disable composition handling. + * composite.c (Fremove_list_of_text_properties): Declare. -2002-06-24 Stefan Monnier + * coding.c (inhibit_pre_post_conversion): Remove (unused). + (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts. + (coding_inherit_eol_type): Remove unused attrs. + (detect_coding): Cast arg of detect_eol. - * print.c (temp_output_buffer_setup): Kill all local variables. + * charset.c (syms_of_charset): Remove unused var p. + (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for + byte/char counts. -2002-06-22 Stefan Monnier + * casetab.c (set_case_table): Remove unused var. - * lread.c (Fread): Remove redundant and imprecise declaration. + * window.c (Fdisplay_buffer, Fframe_selected_window): Remove + unused vars. - * xfns.c (check_x_display_info): Use check_x_frame. +2008-02-01 Dave Love - * .gdbinit (xprintsym): Use the new `xname' field. - (xsymbol): Use it. + * xterm.c (x_bitmap_mask): Declare. -2002-06-22 Jason Rumney +2008-02-01 Dave Love - * w32fns.c (file_dialog_callback): New function. - (Fx_file_dialog): Allow selecting directories as well as files. + * xterm.c (x_term_init): Fix type error. -2002-06-21 Pavel Jan,Am(Bk + * lisp.h: Add Funibyte_char_to_multibyte. - * m/pmax.h (START_FILES): Define START_FILES for NetBSD and - OpenBSD. Add support for mipseb-*-netbsd* machines. + * coding.c (Fread_coding_system): Fix arg of XSETSTRING. + (Fset_coding_system_priority): Doc fix. -2002-06-17 Andrew Choi + * ccl.c (ccl_driver): Fix arg of CHARACTERP. - * macterm.c (mac_scroll_area): Set foreground and backcolor to - black and white before scrolling. Restore frame background and - foreground color after scrolling. - (do_window_update): Call XClearWindow before calling expose_frame. - (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and - FRAME_FOREGROUND_PIXEL of frame. + * indent.c (check_composition): Make start and end EMACS_INT. - * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil, - test Mac command key as key. + * character.c (lisp_string_width): Make ignore and end EMACS_INT. -2002-06-17 Stefan Monnier + * xdisp.c (handle_composition_prop, check_point_in_composition): + Make buffer positions EMACS_INT. - * window.c (Fset_window_configuration): Lisp_Object/int mixup. + * composite.c (find_composition, run_composition_function) + (update_compositions, Ffind_composition_internal): Make buffer + positions EMACS_INT. - * keyboard.c (read_key_sequence): Be more careful with first_unbound. - Lookup keys in function-key-map immediately so that key-translation-map - can be applied earlier. - Remove function_key_possible and key_translation_possible, replaced - by checking `keytran_start < t'. + * composite.h (find_composition, update_compositions): Make + position args EMACS_INT. - * .gdbinit (xsymbol): Use the new `xname' field. + * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT. -2002-06-17 Andrew Choi + * intervals.c (get_property_and_range): + * intervals.h (get_property_and_range): Make start and end EMACS_INT. - * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil, - test Mac command key as key. + * unexalpha.c: Don't include varargs.h. - * mac.c (do_applescript): Call initialize_applescript if necessary - when first called. Dispose of result_desc only when there is no error. - (Fdo_applescript): Use %d format specifier instead of %ld. +2008-02-01 Dave Love -2002-06-16 Andrew Choi + * coding.h (ENCODE_UTF_8): New. - * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead - of FrontWindow for cases keyDown and autoKey. + * Makefile.in (gtkutil.o): Depend on coding.h. - * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of - Vdefault_fontset to Monaco with mac-roman coding. + * coding.c (Fset_coding_system_priority): Doc fix. - * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine - init_process before and after inclusion of Carbon/Carbon.h, resp. +2008-02-01 Kenichi Handa - * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and - cursor_gc. - (add_font_name_table_entry): New function. - (init_font_name_table): Use add_font_name_table_entry; add italic, - bold, and bold-italic entries for truetype fonts. + * fileio.c (Finsert_file_contents): Call setup_coding_system in + the case of auto saving. - * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces - for Mac too. - (try_font_list) [MAC_OS]: If no font matches given registry, try - fonts with any registry matching face_family. - (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here. +2008-02-01 Andreas Schwab - * s/darwin.h: If autoconf detects the Ncurses library, define - LIBS_TERMCAP to -lncurses to use it. + * chartab.c (map_char_table, map_char_table_for_charset): Protect + `range' from GC. -2002-06-16 Eli Zaretskii +2008-02-01 Kenichi Handa - * strftime.c [__hpux]: Include sys/_mbstate_t.h. + * coding.c (decode_coding_sjis): Check bytes more rigidly. -2002-06-15 Richard M. Stallman +2008-02-01 Kenichi Handa - * window.c (Fset_window_configuration): Explicitly preserve - the point value that new_current_buffer had at the start. + * fileio.c (choose_write_coding_system): Return a decided coding system. + (Fwrite_region): Set Vlast_coding_system_used to the return value + of choose_write_coding_system. -2002-06-14 Juanma Barranquero +2008-02-01 Kenichi Handa - * composite.c (Fcompose_region_internal, Fcompose_string_internal): - Fix typos. + * charset.c (Fset_charset_priority): Pay attention to duplicated + arguments. -2002-06-14 Kim F. Storm + * coding.c (QCcategory): New variable. + (syms_of_coding): Defsym it. Set all elements of + Vcoding_category_table and their symbol values. + (Fset_coding_system_priority): Doc fix. Update symbol qvalues of + coding-category-XXX, and coding-category-list. + (Fdefine_coding_system_internal): Add category in the plist. - * insdel.c (insert_1_both, insert_from_string_1) - (insert_from_buffer_1): Recalculate END_UNCHANGED in case the - insert happened in the end_unchanged region. Otherwise, the - redisplay may be confused and duplicate the last line in the - buffer [seen after save-buffer when require-final-newline==t]. +2008-02-01 Kenichi Handa -2002-06-13 Jason Rumney + * callproc.c (Fcall_process): Handle carryover correctly. - * w32.c (init_environment): Remove EMACSLOCKDIR. - (stat): Swap _S_IFDIR and _S_IFREG. + * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes. + (raw_text_coding_system): Check NILP (coding_system). + (coding_inherit_eol_type): Check NILP (coding_system) and + NILP (parent). + (consume_chars): Fix for the case of raw-text. -2002-06-13 Pavel Jan,Am(Bk + * process.c (read_process_output): Handle carryover correctly. - * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c - * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c, - * w32menu.c, w32inevt.c: Rename enum event_kind as follows: - ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke - to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to - NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click - to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT, - language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click - to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to - W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to - SELECTION_REQUEST_EVENT, selection_clear_event to - SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT, - delete_window_event to DELETE_WINDOW_EVENT, iconify_event to - ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT, - menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to - DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and - no_event to NO_EVENT. +2008-02-01 Dave Love -2002-06-12 Pavel Jan,Am(Bk + * regex.c (re_search_2): Fix last change. - * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind. +2008-02-01 Kenichi Handa -2002-06-12 Stefan Monnier + * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not + target_multibyte. Even in a unibyte case, return a converted + multibyte char. + (GET_CHAR_AFTER): New macro. + (PATFETCH): Translate via multibyte char. + (HANDLE_UNIBYTE_RANGE): Delete this macro. + (SETUP_MULTIBYTE_RANGE): New macro. + (regex_compile): Setup compiled code so that its multibyteness + matches that of a target. Fix the handling of "[X-YZ]" using + SETUP_MULTIBYTE_RANGE. + (analyse_first) : For filling fastmap for all multibyte + characters, don't check by BASE_LEADING_CODE_P. + (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is + the same as RE_MULTIBYTE_P (bufp) now. + (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)). + (TARGET_CHAR_AND_LENGTH): Delete this macro. + (TRANSLATE_VIA_MULTIBYTE): New macro. + (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp). + It is the same as RE_MULTIBYTE_P (bufp) now. + : Translate via multibyte. + : Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't + translate it. + : Fetch a character by + RE_STRING_CHAR_AND_LENGTH. Translate via multibyte. + : Call bcmp_translate with the last arg `multibyte'. + Fetch a character + by GET_CHAR_AFTER. + (bcmp_translate): Likewise. + + * search.c (compile_pattern): Check the member target_multibyte, + not the member multibyte of buf. + + * lread.c (read1): While reading a string, set force_singlebyte + and force_multibyte correctly. + + * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting + up of unibyte_to_multibyte_table. + +2008-02-01 Kenichi Handa + + * coding.c (setup_coding_system): If coding has + post-read-conversion or pre-write-conversion, set + CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK + respectively. + (decode_coding_gap): Run post-read-conversion if any. + + * fileio.c (Finsert_file_contents): Even if we read into a + unibyte buffer, check if we must decode the result or not. + +2008-02-01 Kenichi Handa + + * coding.c (make_conversion_work_buffer): Change the work buffer + name to the same one as that of Emacs 21. + +2008-02-01 Kenichi Handa + + * coding.h (make_conversion_work_buffer): Adjust prototype. + (code_conversion_restore): Don't extern it. + + * coding.c (detected_mask): Delete unused variable. + (decode_coding_iso_2022): Pay attention to the byte sequence of + CTEXT extended segment, and retain those bytes as is. + (decode_coding_ccl): Delete unused variable `valids'. + (setup_coding_system): Delete unused variable `category'. + (consume_chars): Delete unused variable `category'. Make it work + for non-multibyte case. + (make_conversion_work_buffer): Change argument. + (saved_coding): Delete unused variable. + (code_conversion_restore): Don't check saved_coding->destination. + (code_conversion_save): New function. + (decode_coding_gap, encode_coding_gap): Call code_conversion_save + instead of record_unwind_protect. + (decode_coding_object, encode_coding_object): Likewise. Recover PT. + (detect_coding_system): Delete unused variable `mask'. + (Fdefine_coding_system_internal): Delete unused vaiable id. + + * fileio.c (kill_workbuf_unwind): New function. + (Finsert_file_contents): On replacing, call + make_conversion_work_buffer with correct args, and call + record_unwind_protect with the first arg kill_workbuf_unwind. + + * lisp.h (Fgenerate_new_buffer_name): EXFUN it. + +2008-02-01 Kenichi Handa + + * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME. + (fontset_add): Fix for the case that TO is less than TO1. + (Ffontset_info): Don't use fallback fontset on checking the + default fontset. + (dump_fontset): New function for debugging. + + * coding.c (Fdefine_coding_system_internal): Fix for the case that + coding_type is Qcharset. + +2008-02-01 Kenichi Handa + + * chartab.c (map_sub_char_table): New argument DEFAULT_VAL. + (map_char_table): Don't inherit the value from the parent on + initializing VAL. Adjust for the above change. + +2008-02-01 Kenichi Handa + + * coding.c (Qsignature, Qendian): Delete these variables. + (syms_of_coding): Don't initialize them. + (CATEGORY_MASK_UTF_16_AUTO): New macro. + (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in + detect_info->found. + (decode_coding_utf_16): Don't detect BOM here. + (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding) + is NOT utf_16_without_bom. + (setup_coding_system): For a coding system of type utf-16, check + if the attribute :endian is Qbig or not (not nil or not), and set + CODING_REQUIRE_DETECTION_MASK if BOM detection is required. + (detect_coding): If coding type is utf-16 and BOM detection is + required, detect it. + (Fdefine_coding_system_internal): For a coding system of type + utf-16, check if the attribute :endian is Qbig or not (not nil or not). + +2008-02-01 Kenichi Handa + + * coding.c (coding_set_source): Fix for the case that the current + buffer is different from coding->src_object. + (decode_coding_object): Don't use the conversion work buffer if + DST_OBJECT is a buffer. + +2008-02-01 Dave Love + + * lread.c (read_emacs_mule_char) [len==2]: Index + emacs_mule_charset correctly. + +2008-02-01 Dave Love + + * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5) + (detect_coding_big5, decode_coding_big5, encode_coding_big5) + (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer + treated specially.) + (setup_coding_system, coding_category, CATEGORY_MASK_ANY) + (detected_mask): Remove Big5 bits. + +2008-02-01 Kenichi Handa + + The following changes are to make the font rescaling facility + compatible with Emacs 21. + + * xfaces.c (Vface_font_rescale_alist): Rename from + Vface_resizing_fonts. + (struct font_name): Rename member resizing_ratio to rescale_ratio. + (font_rescale_ratio): Rename from font_resizing_ratio. + (split_font_name): Set font->rescale_ratio. + (better_font_p): Pay attention to font->rescale_ratio. + (build_scalable_font_name): Likewise. Change RESX, and RESY + fields. + (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable. - * intervals.c (textget): Don't forget to `return'. - (lookup_char_property): Use XCAR/XCDR. +2008-02-01 Kenichi Handa -2002-06-12 Juanma Barranquero + * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig) + (Qutf_16_le): Remove these variables. + (syms_of_coding): Don't DEFSYM them. + (decode_coding_utf_16): Fix handling of BOM. + (encode_coding_utf_16): Fix handling of BOM. - * xdisp.c (Fformat_mode_line): Fix typo. +2008-02-01 Kenichi Handa -2002-06-12 Kim F. Storm + * fileio.c (Finsert_file_contents): On replacing, before decoding + the file into the work buffer, set point of the work buffer to the end. - * xdisp.c (Fformat_mode_line): New function. - (frame_title_buf, frame_title_buf_end, frame_title_ptr) - (store_frame_title_char, store_frame_title): Use unconditionally. - (init_xdisp): Defsubr Fformat_mode_line. - Initialize frame_title_buf etc. unconditionally. +2008-02-01 Dave Love -2002-06-11 Stefan Monnier + * coding.c (Fcheck_coding_systems_region): Fix type errors. - * keyboard.c (read_key_sequence): - Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass - things through those maps after downcasing events. - Enforce that keytran_end <= fkey_start, i.e. that key-translation-map - applies after function-key-map. - Make sure that keytran can be done in the middle in the sequence. - Be careful not to throw away events past the one we downcase. +2008-02-01 Dave Love - * lread.c (read_integer): Remove unused var `tem'. - (read1): Fix int/Lisp_Object mixup. + * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table + and fix C types. - * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed. +2008-02-01 Kenichi Handa -2002-06-11 Richard M. Stallman + * xdisp.c (SKIP_GLYPHS): New macro. + (set_cursor_from_row): Pay attention to string display properties. - * keyboard.c (readable_events): Ignore any number of - FOCUS_IN_EVENT events and return 0 if nothing else in buffer. + * category.c (copy_category_entry): Fix for the case that RANGE + is an integer. -2002-06-09 Miles Bader + * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil. - * xfaces.c (Ftty_supports_face_attributes_p): New function. - (parse_rgb_list, tty_lookup_color): New functions. - (tty_defined_color): Use `tty_lookup_color' to do all the work. - (color_distance, Fcolor_distance): New functions. - (TTY_SAME_COLOR_THRESHOLD): New macro. - (Qtty_color_standard_values): New variable. - (syms_of_xfaces): Initialize new vars & functions. + * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil. -2002-06-08 Colin Walters +2008-02-01 Kenichi Handa - * textprop.c (Vchar_property_alias_alist): New variable. - (syms_of_textprop) : DEFVAR_LISP. + * charset.c (Fcharset_id_internal): New function. + (syms_of_charset): Defsubr it. - * intervals.c (lookup_char_property): New function for looking up - overlay and text properties, created from textget. - (textget): Use it. + * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver + with the last arg charset_list acquired from coding. + (Fdefine_coding_system_internal): For ccl-based coding system, fix + the attribute coding_attr_ccl_valids. - * intervals.h (lookup_char_property): Declare. - (Vchar_property_alias_alist): Declare. + * coding.h (enum define_coding_ccl_arg_index): Set the first + member coding_arg_ccl_decoder to coding_arg_max. - * buffer.c (Foverlay_get): Use lookup_char_property. + * ccl.h (ccl_driver): Adjust prototype. -2002-06-07 Sam Steingold + * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros. + (ccl_driver): New arg CHARSET_LIST. Use the above macros instead + of DECODE_CAHR, ENCODE_CHAR, CHAR_CHARSET. + (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the + last arg Qnil. - * xselect.c (lisp_data_to_selection_data): Fix last change: - *data_ret is not a Lisp string, while unibyte_string is. +2008-02-01 Kenichi Handa -2002-06-07 Eli Zaretskii + * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET, + call encode_char. - * xselect.c (lisp_data_to_selection_data): Fix last change: - set size_ret. + * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET. -2002-06-07 Andreas Schwab +2008-02-01 Dave Love - * m/amdx86-64.h: New file. + * composite.c (syms_of_composite): Make composition_hash_table weak. -2002-06-05 Eli Zaretskii +2008-02-01 Kenichi Handa + + * dispextern.h (check_face_attributes, generate_ascii_font_name) + (font_name_registry): Don't extern them. + (split_font_name_into_vector, build_font_name_from_vector): Extern them. + + * fontset.h (Qfontset): Don't extern it. + (new_fontset_from_font_name): Extern it. + + * fontset.c: Give 8 extra slots to fontset objects. + (Qfontset_info): New variable. + (syms_of_fontset): Defsym it. + (FONTSET_FALLBACK): New macro. + (fontset_face): Try also the default fontset. + (make_fontset): Realize a fallback fontset from the default fontset. + (generate_ascii_font_name): Move from xfaces.c. Rewritten by + using split_font_name_into_vector and build_font_name_from_vector. + (Fset_fontset_font): Access the elements of font_spec by enum + FONT_SPEC_INDEX. If font_spec is a string, extract the registry + name by using split_font_name_into_vector. + (Fnew_fontset): If no ASCII font is specified in FONTLIST, + generate a proper font name from the fontset name. Update + Vfontset_alias_alist. + (n_auto_fontsets): New variable. + (new_fontset_from_font_name): New function. + (Ffont_info): Store the information about fonts generated from the + default fontset in the first extra slot of the returned char-table. + + * xfaces.c (generate_ascii_font_name): Move to fontset.c. + (font_name_registry): Delete function. + (split_font_name_into_vector): New function. + (build_font_name_from_vector): New function. + (font_list): The argument REGISTRY is now a list of registry names. + (choose_face_font): If we are choosing an ASCII font, and ATTRS + specifies an explicit font name, return the name as is. Make a + list of registy names. + + * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change + of x_new_fontset. + (Fx_create_frame): Don't call x_new_fontset here. Just use + x_list_fonts to check the existence of fonts. + + * xterm.h (x_new_fontset): Adjust prototype. + + * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp + string. Use new_fontset_from_font_name to create a fontset from a + font name. - * fns.c (Fstring_make_unibyte): Doc fix. +2008-02-01 Kenichi Handa + + * syntax.c (Vfind_word_boundary_function_table): New name for + Vnext_word_boundary_function_table. + (find-word-boundary-function-table): New name for + next-word-boundary-function-table. + +2008-02-01 Dave Love + + * Makefile.in: Fix some dependencies. + + * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but + set it to nil before returning. + + * composite.c (update_compositions): Fix type error. + + * syntax.c (skip_chars, skip_syntaxes): Fix type errors. + +2008-02-01 Kenichi Handa + + * xterm.c (x_new_font): Optimize for the case that the font is + already set for the frame. + +2008-02-01 Kenichi Handa + + * chartab.c (char_table_ascii): Check if the char table contents + is sub-char-table or not. + (char_table_set, char_table_set_range): Fix argument to + char_table_ascii. + + * coding.c (CATEGORY_MASK_RAW_TEXT): New macro. + (detect_coding_utf_8, detect_coding_utf_16) + (detect_coding_emacs_mule, detect_coding_iso_2022) + (detect_coding_sjis, detect_coding_big5) + (detect_coding_ccl, detect_coding_charset): Change argument MASK + to DETECT_INFO. Update DETECT_INFO and return 1 if the byte + sequence is valid in this coding system. Change callers. + (MAX_ANNOTATION_LENGTH): New macro. + (ADD_ANNOTATION_DATA): New macro. + (ADD_COMPOSITION_DATA): Change argument. Change callers. Call + ADD_ANNOTATION_DATA. Change the format of annotation data. + (ADD_CHARSET_DATA): New macro. + (emacs_mule_char): New argument ID. Change callers. + (decode_coding_emacs_mule, decode_coding_iso_2022) + (decode_coding_sjis, decode_coding_big5, decode_coding_charset): + Produce charset annotation data in coding->charbuf. + (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention + to charset annotation data in coding->charbuf. + (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK + coding->common_flags if the coding system is iso-2022 based and + uses designation. + (produce_composition): Adjust for the new annotation data format. + (produce_charset): New function. + (produce_annotation): Handle charset annotation. + (handle_composition_annotation, handle_charset_annotation): New + functions. + (consume_chars): Handle charset annotation. Utilize the above two + functions. + (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same + buffer, get the deleted text as a string and set + coding->src_object to that string. + (detect_coding, detect_coding_system): Use the new struct + coding_detection_info. - * xselect.c (lisp_data_to_selection_data): If the requested type - is STRING, call string_make_unibyte to encode the selected text - as a string. + * coding.h (struct coding_detection_info): New structure. + (struct coding_system): Adjust prototype of the member `detector'. + (CODING_ANNOTATE_CHARSET_MASK): New macro. - * window.c (Fset_window_hscroll): Doc fix. +2008-02-01 Kenichi Handa -2002-06-05 Pavel Jan,Am(Bk + * insdel.c (insert_from_gap): Fix argument to offset_intervals. - * fileio.c (choose_write_coding_system): - Call select-safe-coding-system properly. +2008-02-01 Dave Love -2002-06-03 Richard M. Stallman + * keymap.c (apropos_predicate, apropos_accumulate): Declare static. + (Fapropos_internal): Don't gcpro apropos_accumulate. Set result + to new local and nullify apropos_accumulate before returning. + (syms_of_keymap): Staticpro and initialize apropos_accumulate. - * xdisp.c (message_with_string): Error if STRING is not a string. +2008-02-01 Kenichi Handa - * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function. + * charset.c (Fdefine_charset_internal): Setup charset.fast_map + correctly. - * fileio.c (choose_write_coding_system): Pass FILE arg to - Vselect_safe_coding_system_function. +2008-02-01 Dave Love -2002-06-03 Ken Raeburn + * fns.c (Flanginfo): Call synchronize_system_time_locale. - * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change. +2008-02-01 Kenichi Handa -2002-06-02 Thien-Thi Nguyen + The following changes are to make character composition happen + automatically on displaying. - * bytecode.c (Fbyte_code): Cast `current_column' return value to int. - * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise. - * keymap.c (describe_command): Likewise. - * minibuf.c (read_minibuf): Likewise. + * Makefile.in (lisp, shortlisp): Add composite.elc - * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec): - Cast `current_column' return value to int. - (back_to_previous_visible_line_start) - (reseat_at_next_visible_line_start, next_element_from_buffer): - Cast `indented_beyond_p' 3rd arg to float. + * composite.h (Qauto_composed, Vauto_composition_function) + (Qauto_composition_function): Extern them. - * indent.c (last_known_column): Now a float. - (current_column_1, position_indentation, current_column) - (string_display_width): Return float. - (Fcurrent_column): Cast `current_column' return value to int. - (Fcurrent_indentation): Cast `position_indentation' retval to int. - (indented_beyond_p): Third arg now a float. - (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float. + * composite.c (Vcomposition_function_table) + (Qcomposition_function_table): Delete variables. + (Qauto_composed, Vauto_composition_function) + (Qauto_composition_function): New variables. + (run_composition_function): Don't call + compose-chars-after-function. + (update_compositions): Clear `auto-composed' text property. + (compose_chars_in_text): Delete this function. + (syms_of_composite): Staticpro Qauto_composed and + Qauto_composition_function. Declare Vauto_composition_function as + a Lisp variable. - * lisp.h (current_column): Now returns float. - (indented_beyond_p): 3rd arg now a float. + * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX. -2002-05-31 Eli Zaretskii + * xdisp.c (it_props): Add an entry for Qauto_composed. + (handle_auto_composed_prop): New function. - * xfns.c (x_encode_text): Return stringp non-NULL if coding_system - is Qcompound_text_with_extensions. + * xselect.c (selection_data_to_lisp_data): Don't call + compose_chars_in_text. - * xselect.c (lisp_data_to_selection_data): Always set selection - type as string if x_encode_text returns streingp non-NULL. +2008-02-01 Dave Love - * s/netbsd.h: Include /usr/pkg in the run time shared library path. + * keyboard.c (read_char): Modify checking around use of + Vkeyboard_translate_table. -2002-05-30 Richard M. Stallman + * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table + and fix C types. - * window.c (Fset_window_configuration): Correct the handling - of point in current buffer, to work with multiple windows. +2008-02-01 Kenichi Handa -2002-05-29 Colin Walters + * coding.c (decode_coding_utf_8, decode_coding_emacs_mule) + (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5) + (decode_coding_charset, produce_chars): When eol_type is Qdos, handle + the case that the last byte is '\r' correctly. + (decode_coding): Flush out the unprocessed data correctly. + (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode. - * lread.c (Fread_from_string): Don't depend on order of evaluation - for C function parameters. +2008-02-01 Dave Love -2002-05-28 Richard M. Stallman + * xterm.c (XTread_socket): Fix changes for defined keysyms. Add + XK_ISO... case. + (xaw_scroll_callback): Revert last change. - * xterm.c (x_display_and_set_cursor): Change the cursor in the same - way for blinked-off state and for a nonselected window. +2008-02-01 Kenichi Handa - * window.c (window_scroll_pixel_based): Don't call Fbolp; - instead, see if the new start pos is at beginning of line. + * charset.c (Fset_charset_priority): Update Viso_2022_charset_list. - * fileio.c (Fwrite_region): If START is a string, don't - make any annotations. +2008-02-01 Kenichi Handa - * eval.c (syms_of_eval): Doc fix. + * xfaces.c (Vface_resizing_fonts): New variable. + (struct font_name): New member `resizing_ratio'. + (font_resizing_ratio): New function. + (split_font_name): Set font->resizing_ratio. + (better_font_p): Pay attention to font->resizing_ratio. + (build_scalable_font_name): Likewise. Don't change POINT_SIZE, + RESX, and RESY fields. + (try_alternative_families): Try scalable fonts if + Vscalable_fonts_allowed is not Qt. + (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable. -2002-05-28 Colin Walters +2008-02-01 Dave Love - * emacs.c (USAGE1): Add --no-splash. - (standard_args): Ditto. + * xterm.c (xaw_scroll_callback): Cast correctly. -2002-05-28 Colin Walters +2008-02-01 Dave Love - * lread.c (readchar_count): New variable. - (readchar): Increment it. - (unreadchar): Decrement it. - (read_multibyte): Decrement it. - (Vread_with_symbol_positions): New variable. - (Vread_symbol_positions_list): New variable. - (read_internal_start): New function, created from Fread and - Fread_from_string. Handle Vread_symbol_positions_list and - Vread_with_symbol_positions. - (readevalloop, Fread, Fread_from_string): Use it. - (read1): Use readchar_count to add symbol positions to - Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil. - (syms_of_lread): DEFVAR_LISP and initialize them. + * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend. + (lispy_kana_keys): Comment out. + (make_lispy_event) [XK_kana_A]: Comment out. - * lread.c (read0, read1, read_list, read_vector, read_multibyte) - (substitute_object_recurse, substitute_object_in_subtree) - (substitute_in_interval): Prototype. - (read_multibyte): Return c if it's less than zero. + * xterm.c (xaw_scroll_callback): Cast call_data. + (XTread_socket): Deal with ASCII keysyms. + (syms_of_xterm) : Fix args of make_hash_table. -2002-05-28 Kim F. Storm +2008-02-01 Dave Love - * fileio.c (Fread_file_name_internal): Added brute-force - speed up for using predicate file-directory-p. + * xterm.c (Vx_keysym_table): New. + (syms_of_xterm): Initialize it. + (XTread_socket): Use it. + From head: Eliminate incorrect optimization that tried to avoid + decoding the output of X*LookupString. + (x_get_font_repertory): Delete charset declaration. -2002-05-28 Kim F. Storm +2008-02-01 Kenichi Handa - * fileio.c (Vread_file_name_function, Vread_file_name_predicate): - New variables. - (syms_of_fileio): DEFVAR_LISP them. - (read_file_name_cleanup): New unwind function. - (Fread_file_name_internal): Only return completions satifying - Vread_file_name_predicate. Temporarily unwind protect and rebind - default-directory while checking completions against the predicate. - (Fread_file_name): Added PREDICATE argument. Specbind it to - Vread_file_name_predicate during completion. - Call Vread_file_name_function to read the file name if non-nil. + * coding.c (detect_coding_charset): If only ASCII bytes are found, + return 0. + (Fdefine_coding_system_internal): Setup + CODING_ATTR_ASCII_COMPAT (attrs) correctly. - * lisp.h (Fread_file_name): Now has 6 args. +2008-02-01 Dave Love - * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p - predicate for Fread_file_name when reading directory name. - Supply Qnil for predicate in other calls to Fread_file_name. + * coding.c (Fcheck_coding_system): Doc fix. -2002-05-26 Miles Bader + * editfns.c (Finsert_byte): Return a proper value. - * term.c (tty_capable_p): New function. - * dispextern.h (tty_capable_p): New function declaration. - (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM) - (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros. +2008-02-01 Kenichi Handa -2002-05-23 Stefan Monnier + * coding.c (decode_coding): Fix args to translate_chars. Pay + attention to Vstandard_translation_table_for_decode. + (encode_coding): Fix args to translate_chars. Pay attention to + Vstandard_translation_table_for_encode. - * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE. - (Finsert_file_contents, build_annotations): Use XCAR, XCDR. - (Vwrite_region_annotate_functions): Docstring fix. + * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by + SINGLE_BYTE_CHAR_P. -2002-05-23 Kim F. Storm + * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P, + not by SINGLE_BYTE_CHAR_P. - * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current - phys_cursor's hpos is overwritten. This is still not completely - correct, as it doesn't really make sense to use hpos at all to - get the cursor glyph (as that is relative to the width of the - characters on the line, which may have changed during the update). + * fns.c (concat): Check CH by ASCII_CHAR_P, not by + SINGLE_BYTE_CHAR_P. -2002-05-22 Jason Rumney + * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by + SINGLE_BYTE_CHAR_P. - * w32fns.c (enumfont_t): Remove tail, make pattern a normal - Lisp_Object. - (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts): - Use modified enumfont_t struct. + * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not + by SINGLE_BYTE_CHAR_P. - * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR. + * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by + SINGLE_BYTE_CHAR_P. - * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed. - Handle the `hbar' cursor type. - (x_display_and_set_cursor): Handle the HBAR_CURSOR case. +2008-02-01 Dave Love - * w32fns.c (Qhbar): New variable. - (x_specified_cursor_type): Use it. + * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix. -2002-05-21 Ken Raeburn +2008-02-01 Dave Love - * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for - now, when the address is needed. + * fns.c (Flanginfo): Fix typo. -2002-05-21 Colin Walters + * unexelf.c (unexec): Make last change conditional on Irix 6.5. - * Makefile.in (shortlisp): Add font-core.el. +2008-02-01 Kenichi Handa -2002-05-20 Richard M. Stallman + * coding.c (detect_coding_utf_8, detect_coding_utf_16) + (detect_coding_emacs_mule, detect_coding_iso_2022) + (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check + incomplete byte sequence. Don't update *mask when correctly detected. + (decode_coding_sjis): Fix decoding of katakana-jisx0201. + (detect_eol): Delete the argument CODING, and add the argument CATEGORY. + (detect_coding, detect_coding_system): Adjust for the changes above. - * buffer.c (syms_of_buffer) : Doc fix. +2008-02-01 Kenichi Handa - * keyboard.c (read_char_minibuf_menu_prompt): Don't list - equivalent key bindings here. + * character.c (char_string): Rename from + char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK. + (string_char): Rename from string_char. -2002-05-20 Ken Raeburn + * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string + if C is greater than MAX_3_BYTE_CHAR. + (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call + string_char instead of string_char_with_unification. - Change symbol structure to contain a lisp object for the symbol - name: - * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp - object field named "xname". - (SYMBOL_NAME): New macro. - * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and - name field. - * alloc.c (Fmake_symbol): Set symbol xname field instead of name. - (mark_object, gc_sweep): Use symbol xname field and XSTRING - instead of name field. - * buffer.c (buffer_slot_type_mismatch): Use XSTRING and - SYMBOL_NAME instead of XSYMBOL and name field. - * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME - instead of XSYMBOL and name field. - * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING - and SYMBOL_NAME instead of XSYMBOL and name field. - * coding.c (Fread_coding_system, code_convert_region1) - (code_convert_string1, code_convert_string_norecord) - (Ffind_operation_coding_system): Use SYMBOL_NAME instead of - XSYMBOL and name field. - * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding) - (Fmake_variable_buffer_local, Fmake_local_variable) - (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead - of XSYMBOL and name field. - * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of - XSYMBOL and name field. - * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING - instead of XSYMBOL and name field. - * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of - XSYMBOL and name field. - * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash): - Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field. - * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING - instead of XSYMBOL and name field. - * keyboard.c (echo_char, record_char, parse_modifiers_uncached) - (parse_modifiers, apply_modifiers, Fevent_convert_list) - (parse_solitary_modifier, Fexecute_extended_command): - Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field. - * keymap.c (silly_event_symbol_error, Fsingle_key_description) - (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead - of XSYMBOL and name field. - (describe_command, describe_translation): Use SYMBOL_NAME and - assignment instead of XSYMBOL and name field and XSETSTRING. - * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING - instead of XSYMBOL and name field. - (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and - name field and XSETSTRING. - * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead - of XSYMBOL and name field. - * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and - assignment instead of XSYMBOL and name field and XSETSTRING. - * print.c (print_error_message, print_object): Use SYMBOL_NAME and - XSTRING instead of XSYMBOL and name field. - * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME - and XSTRING instead of XSYMBOL and name field. - * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME - and XSTRING instead of XSYMBOL and name field. - * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and - XSTRING instead of XSYMBOL and name field. - * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead - of XSYMBOL and name field. - * xselect.c (symbol_to_x_atom, x_get_foreign_selection): - Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field. +2008-02-01 Dave Love -2002-05-19 Ken Raeburn - - * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR - and XCDR real rvalues in most configurations. + * coding.c (decode_coding_utf_8): Treat surrogates as invalid. - * buffer.c (fix_overlays_in_range, fix_overlays_before): - Don't take the address of the cdr part of a cons cell; instead, track - the parent cell and call XSETCDR, or set the variable for the head - of the list if we haven't started down the list yet. +2008-02-01 Kenichi Handa -2002-05-19 Richard M. Stallman + * keymap.c (push_key_description): Pay attention to force_multibyte. - * doc.c (reread_doc_file): Don't ask for confirmation. + * regex.c (re_search_2): Fix for the case of unibyte buffer. -2002-05-18 Jason Rumney +2008-02-01 Dave Love - * w32fns.c (w32_create_pixmap_from_bitmap_data): New function. - (xbm_load_image): Use it. - (xbm_load): Ditto. - (xbm_read_bitmap_data): Reverted to xfns.c version. - From David Ponce . + * charset.c (define_charset_internal): Rename `supprementary'. -2002-05-17 Eli Zaretskii + * Makefile.in (lisp, shortlisp): Remove latin-N. - * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP - 2.02 and later. +2008-02-01 Dave Love -2002-05-16 Juanma Barranquero + * xfns.c (x_window, x_window): Use use_xim. - * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo. + * xterm.c (use_xim): Initialize. + (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim. + (x_term_init): Maybe set use_xim. -2002-05-15 Stefan Monnier + * xterm.h (use_xim) [HAVE_X_I18N]: Declare. - * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more - meaningful test. - (read_char_minibuf_menu_prompt): Fix typo. +2008-02-01 Kenichi Handa -2002-05-15 Eli Zaretskii + * search.c (search_buffer): Fix case-fold-search of multibyte + characters. + (boyer_moore): Rename the last argument to char_high_bits. - * eval.c (Fcommandp): Doc fix. +2008-02-01 Kenichi Handa -2002-05-13 Stefan Monnier + * xdisp.c (display_string): Fix for the case of zero width glyph. - * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent. - (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it. - (Fset_keymap_parent): Gcpro a bit more. - (access_keymap): Gcpro around meta_map call and around the main loop. - (get_keyelt): Gcpro when following indirect references. - (copy_keymap_item): New fun, extracted from Fcopy_keymap. - (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map. - (Fdefine_key, Flookup_key): Gcpro before calling get_keymap. - Remove useless ad-hoc remap code. + * xfns.c (x_set_font): Change the error message of the case that + x_new_fontset returns Qt. -2002-05-13 Richard M. Stallman + * xfaces.c (set_lface_from_font_name): Reject the default fontset. + (Finternal_set_lisp_face_attribute): Use signal_error for the + error of invalid fontset. - * search.c (search_buffer): Give up boyer moore search if inverse - translation change charset_base. + * xterm.c (x_new_fontset): If FONTSETNAME specifies the default + fontset, return Qt. -2002-05-12 Eli Zaretskii +2008-02-01 Dave Love - * coding.c (decode_coding) : If a lone CR - characters is carried over from the previous block of text, adjust - coding->produced to account for the extra character. + * unexelf.c (unexec): Make .got handling not SGI-specific. -2002-05-11 Andreas Schwab + * syntax.c (syms_of_syntax) : Doc fix. - * coding.c (intersection): Keep the elements of the returned list - in the same order as in the first list. + * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'. -2002-05-11 Kim F. Storm + * keyboard.c (read_key_sequence): Fix type error. - * keymap.c (current_minor_maps): Fix resizing of cmm_maps; - only update cmm_size if realloc actually succeeds. - Testing with initial size of 2 elements revealed that using - realloc on GNU/Linux would cause a random trap in xmalloc - later on, so I rewrote the code to use malloc/bcopy/free instead - of realloc. + * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix + type error. -2002-05-10 Jason Rumney + * fontset.c (fontset_add): Return Lisp_Object. - * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts. +2008-02-01 Dave Love -2002-05-10 Eli Zaretskii + * charset.h (charset_ordered_list_tick): Declare extern. - * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in - parens, to ensure correct evaluation order. +2008-02-01 Kenichi Handa -2002-05-10 Kim F. Storm + The following changes (and some of 2008-02-01 changes of mine) are + for handling syntax, category, and case conversion for unibyte + characters by converting them to multibyte on the fly. With these + changes, we don't have to setup syntax and case tables for unibyte + characters in each language environment. - * keymap.c (Vemulation_mode_map_alists): New variable. - (syms_of_keymap): DEFVAR_LISP it. - (current_minor_maps): Process keymap alists in that list before - minor-mode-overriding-map-alist and minor-mode-map-alist. + * abbrev.c (Fexpand_abbrev): Convert a unibyte character to + multibyte if necessary. -2002-05-09 Richard M. Stallman + * bytecode.c (Fbyte_code): Likewise. - * search.c (Freplace_match): Doc fix. + * character.h (LEADING_CODE_LATIN_1_MIN) + (LEADING_CODE_LATIN_1_MAX): New macros. + (unibyte_to_multibyte_table): Extern it. + (unibyte_char_to_multibyte): New macro. + (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table. + (CHAR_LEADING_CODE): New macro. + (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro. + + * character.c (unibyte_to_multibyte_table): New variable. + (unibyte_char_to_multibyte): Move to character.h and define as macro. + (multibyte_char_to_unibyte): If C is an eight-bit character, + convert it to the corresponding byte value. + + * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is + not 1, singals an error. Update the elements of + unibyte_to_multibyte_table. + (init_charset_once): Initialize unibyte_to_multibyte_table. + (syms_of_charset): Define the charset `iso-8859-1'. + + * cmds.c (internal_self_insert): In a multibyte buffer, insert C + as is without converting it to unibyte. In a unibyte buffer, + convert C to multibyte before checking the syntax. + + * lisp.h (unibyte_char_to_multibyte): Delete extern. + + * minibuf.c (Fminibuffer_complete_word): Use the macro + FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE. + + * regex.h (struct re_pattern_buffer): New member target_multibyte. + + * regex.c (RE_TARGET_MULTIBYTE_P): New macro. + (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If + that is zero, convert an eight-bit char to multibyte. + (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for + non-emacs case. + (PATFETCH): Convert an eight-bit char to multibyte. + (HANDLE_UNIBYTE_RANGE): New macro. + (regex_compile): Setup the compiled pattern for multibyte chars + even if the given regex string is unibyte. Use PATFETCH_RAW + instead of PATFETCH in many places. To handle `charset' + specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap + only for ASCII chars. + (analyse_first) : Simplify because the compiled pattern + is multibyte. + : Setup fastmap from bitmap only for ASCII chars. + : Use CHAR_LEADING_CODE to get leading codes. + : If multibyte, setup fastmap only for ASCII chars here. + (re_compile_fastmap) [emacs]: Call analyse_first with the arg + multibyte always 1. + (re_search_2): In emacs, set the locale variable multibyte to 1, + otherwise to 0. New local variable target_multibyte. Check it + to decide the multibyteness of STR1 and STR2. If + target_multibyte is zero, convert unibyte chars to multibyte + before translating and checking fastmap. + (TARGET_CHAR_AND_LENGTH): New macro. + (re_match_2_internal): In emacs, set the locale variable multibyte + to 1, otherwise to 0. New local variable target_multibyte. Check + it to decide the multibyteness of STR1 and STR2. Use + TARGET_CHAR_AND_LENGTH to fetch a character from D. + : If multibyte is nonzero, check fastmap + only for ASCII chars. Call bcmp_translate with + target_multibyte, not with multibyte. + : Declare the local variable C as `unsigned'. + (bcmp_translate): Change the last arg name to target_multibyte. + + * search.c (compile_pattern_1): Don't adjust the multibyteness of + the regexp pattern and the matching target. Set cp->buf.multibyte + to the multibyteness of the regexp pattern. Set + cp->but.target_multibyte to the multibyteness of the matching target. + (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of + FETCH_STRING_CHAR_ADVANCE. + (Freplace_match): Convert unibyte chars to multibyte. + + * syntax.c (char_quoted, back_comment, scan_words) + (Fforward_comment, scan_lists, Fbackward_prefix_chars) + (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert + unibyte chars to multibyte. + (skip_chars): Delete the arg syntaxp, and move the code for + handling syntaxes to skip_syntaxes. Change callers. + Fix the case that the multibyteness of STRING and the current + buffer doesn't match. + (skip_syntaxes): New function. + (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by + SINGLE_BYTE_CHAR_P. + +2008-02-01 Kenichi Handa + + * xfaces.c (QCfontset): New variable. + (LFACE_FONTSET): New macro. + (check_lface_attrs): Check also LFACE_FONTSET_INDEX. + (set_lface_from_font_name): Setup LFACE_FONTSET (lface). + (Finternal_set_lisp_face_attribute) + (Finternal_get_lisp_face_attribute): Handle QCfontset. + (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX, + check also LFACE_FONTSET_INDEX. + (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not + attrs[LFACE_FONT_INDEX]. + (syms_of_xfaces): Intern and staticpro QCfontset. -2002-05-09 Kim F. Storm + * dispextern.h (enum lface_attribute_index): New member + LFACE_FONTSET_INDEX. - * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1): - Enlarge cursor rectangle drawn around image with non-zero relief. + * fns.c (base64_encode_1): Handle eight-bit chars correctly. - * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1): - Enlarge cursor rectangle drawn around image with non-zero relief. +2008-02-01 Kenichi Handa - * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1): - Enlarge cursor rectangle drawn around image with non-zero relief. + * coding.c (coding_set_destination): Fix coding->destination for + the case converting a region. + (encode_coding_utf_8): Encode eight-bit chars as single byte. + (encode_coding_object): Fix coding->dst_pos and + coding->dst_pos_byte for the case converting a region. -2002-05-07 Eli Zaretskii + * insdel.c (insert_from_gap): Make it work even if PT != GTP. - * xselect.c (lisp_data_to_selection_data): Don't set selection - type if comes from the Lisp object's car. If the selection - contains a pure ASCII text, always return QSTRING as its type. + * character.h (BYTE8_STRING): New macro. -2002-05-06 Pavel Jan,Am(Bk + * fns.c (base64_decode_1): Insert eight-bit chars correctly. - * mac.c (mac-cut-function): Doc fix. +2008-02-01 Kenichi Handa -2002-05-05 Richard M. Stallman + * xdisp.c (get_next_display_element): Don't display unibyte 8-bit + characters by octal form. - * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it. + * abbrev.c (Fexpand_abbrev): Fix for the multibyte case. -2002-05-04 Jason Rumney + * buffer.h (_fetch_multibyte_char_len): Delete extern. + (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use + _fetch_multibyte_char_len. + (FETCH_CHAR_AS_MULTIBYTE): New macro. - * keyboard.c (make_lispy_event) : Set count to 1 - for event-click-count. + * casetab.c (set_canon, set_identity, shuffle): Simplify. - * process.c (init_process): Only add server subfeature if we can - use non-blocking I/O. + * casefiddle.c (casify_object): Simplify. Handle the case that + the case conversion change the byte length. + (casify_region): Likewise. -2002-05-04 Andrew Choi + * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros. - * macterm.c (XTread_socket): Call WaitNextEvent once instead of - repeatedly. + * character.c (_fetch_multibyte_char_len): Delet this variable. + (syms_of_character): Setup Vprintable_chars. -2002-05-03 Jason Rumney + * editfns.c (Fchar_equal): Fix for the unibyte case. + (Finsert_byte): New function. + (syms_of_editfns): Defsubr it. - * process.c (Fmake_network_process): Only support server sockets - when we can make them non-blocking. + * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead + of direct code 0x3ffff. - * s/ms-w32.h (HAVE_SELECT): Define. + * search.c (Freplace_match): Fix for the unibyte case. - * w32.h (FILE_NDELAY): New flag. +2008-02-01 Kenichi Handa - * w32.c (sys_getpeername, fcntl): New functions. - (_sys_read_ahead): Temporarily block on non-blocking sockets. + * lread.c (safe_to_load_p): Fix the logic. - * w32proc.c: Include sys/file.h. + * syntax.c (scan_words): Don't treat characters belonging to + different scripts as constituting a word. -2002-05-03 Colin Walters + * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P. - * callproc.c (Vgame_score_directory): Renamed to - Vshared_game_score_directory. + * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script. -2002-04-30 Richard M. Stallman + * emacs.c (main): In the case of --unibyte, instead of aborting on + finding non-empty buffer, make it unibyte. - * s/gnu.h [emacs]: Include stdio.h. - (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional. +2008-02-01 Kenichi Handa - * eval.c (do_autoload): Error if called while preparing to dump. + * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font' + to create a fontset. - * fns.c (Frequire): Error if need to load while preparing to dump. +2008-02-01 Dave Love -2002-04-28 Colin Walters + * character.c (Funibyte_char_to_multibyte): Doc fix. - * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]: - Default to "~/.emacs.d/games". + * xfns.c [HAVE_STDLIB_H]: Fix last change. -2002-04-29 Stefan Monnier +2008-02-01 Kenichi Handa - * lread.c (openp): Change arg exec_only to predicate. - (build_load_history): Use XCAR/XCDR. - (Flocate_file_internal): New fun. - (syms_of_lread): Defsubr it. - (Fload): Update call to openp. + * fontset.c (fontset_add): Make the type `int'. + (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined. - * lisp.h (openp): Update prototype. + * character.c (unibyte_char_to_multibyte) + (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to + charset_unibyte, not charset_primary. - * xfns.c (x_create_bitmap_from_file, x_find_image_file): - * w32proc.c (sys_spawnve): - * w32fns.c (x_create_bitmap_from_file, x_find_image_file): - * w32.c (check_windows_init_file): - * sound.c (Fplay_sound_internal): - * process.c (Fstart_process): - * macfns.c (x_create_bitmap_from_file, x_find_image_file): - * mac.c (run_mac_command): - * emacs.c (init_cmdargs): - * callproc.c (Fcall_process): Update call to openp. + * charset.h (charset_unibyte): Extern it instead of charset_primary. - * textprop.c (remove_properties): Don't use XCAR without CONSP. + * charset.c (charset_unibyte): Rename from charset_primary. + (Funibyte_charset): Rename from Fprimary_charset. + (Fset_unibyte_charset): Rename from Fset_primary_charset. + (syms_of_charset): Adjust for the above changes. - * xterm.c (XTread_socket): Disable the Xutf8LookupString code. + * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not + SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when + it->multibyte_p is zero. -2002-04-29 Pavel Jan,Am(Bk + * lisp.h (nonascii_insert_offset, Vnonascii_translation_table): + Delete extern. - * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN) - (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values. +2008-02-01 Kenichi Handa -2002-04-28 Richard M. Stallman + * coding.c (Fdefine_coding_system_internal): Fix category setting + for a coding system of type iso-2022. - * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp. +2008-02-01 Kenichi Handa - * eval.c (Fcommandp): New arg for_call_interactively. - * lisp.h (Fcommandp): Declare new arg. + * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1. -2002-04-28 Jason Rumney +2008-02-01 Kenichi Handa - * w32proc.c (syms_of_w32proc): Get true file attributes by default. + * syntax.c (Vnext_word_boundary_function_table): New variable. + (next-word-boundary-function-table): Declare it as a Lisp variable + in syms_of_syntax. + (scan_words): Call functions in Vnext_word_boundary_function_table + if any. - * w32.c (stat, fstat): Use file index information to generate - inodes for directories where available. + * xterm.c (x_load_font): Initialize fontp->fontset to -1. -2002-04-26 Andrew Choi + * fontset.c (fs_load_font): If fontp->charset is not negative, + return fontp without setting its members. - * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add. - [HAVE_CARBON]: Include Mac object files. +2008-02-01 Dave Love - * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c, - fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c, - termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8, - MAC_OSX, and MAC_OS instead of macintosh. + * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo). - * editfns.c [MAC_OS8]: Include stdio.h. + * m/sparc.h (HAVE_ALLOCA): Delete. - * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init. + * s/irix6-5.h: Don't include strings.h. + (bcopy, bzero, bcmp): Don't undef. - * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of - Apple Monaco. + * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef. - * process.c (QCfamily, QCfilte): Declare extern. - (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before - calling select. + * s/usg5-4.h (NO_SIOCTL_H): Don't define. + (TIOCSIGSEND): Don't test IRIX6. + (bcopy, bzero, bcmp): Define conditionally. - * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent. +2008-02-01 Kenichi Handa - * tparam.c [MAC_OSX]: Don't define BC and UP. + * buffer.c (Qas, Qmake, Qto): New variables. + (Fset_buffer_multibyte): New optional arg METHOD. Change caller. + (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto. - * config.in [HAVE_CARBON]: Add. + * callproc.c (Fcall_process): Don't call insert_1_both directly if + we are inserting a process output into a multibyte buffer. - * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h: - Move here from mac/src and mac/inc. + * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call + multibyte_char_to_unibyte. - * s/darwin.h, m/powermac.h, unexmacosx.c: New files. + * character.c (Funibyte_char_to_multibyte): If C can't be decoded + by the primary charset, make it eight-bit char. + (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8. -2002-04-26 Gerd Moellmann + * charset.c (charset_eight_bit, Qeight_bit_control): New variables. + (charset_8_bit__control, charset_8_bit_graphic) + (Qeight_bit_control, Qeight_bit_graphic): Delete these variables. + (define_charset_internal): New function. + (syms_of_charset): Call define_charset_internal for pre-defined + charsets. - * xterm.c (x_draw_phys_cursor_glyph): Undo last change. - Compute phys_cursor_width from the x position returned - by x_draw_glyhs, which is cheaper. - (x_display_and_set_cursor): Compute the buffer-local value - of `cursor-in-non-selected-windows' only when needed. + * charset.h (charset_8_bit): Extern it. -2002-04-25 Gerd Moellmann + * coding.c (make_conversion_work_buffer): Adjust for the change + of Fset_buffer_multibyte. + (encode_coding_raw_text): Increment p0 in the loop. - * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box - cursor on a stretch glyph has a width that depends on - x_stretch_cursor_p. + * lisp.h (Fset_buffer_multibyte): Adjust prototype. -2002-04-25 Pavel Jan,Am(Bk + * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust + for the change of Fset_buffer_multibyte. - * abbrev.c (abbrev-start-location): Doc fix. + * fns.c (Fstring_to_multibyte): New function. + (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine. - * indent.c (Fvertical_motion): Fix last change. +2008-02-01 Dave Love -2002-04-25 Gerd Moellmann + * xfns.c (x_put_x_image): Declare args. - * indent.c (Fvertical_motion): Move to the start of the line - containing PT before moving up or down. + * xfaces.c (font_name_registry, choose_face_font): Delete unused vars. + (try_font_list): Declare an arg. -2002-04-24 Gerd Moellmann + * xdisp.c (message2_nolog, set_message): Declare an arg. - * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the - case of writing a whole row, more or less analogous to the case of - writing only parts of a row. + * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm. - * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to - 0 for NO_CURSOR. + * syntax.c (scan_sexps_forward): Declare an arg. - * xterm.c (notice_overwritten_cursor): Fix an off by 1 error. + * scroll.c (calculate_scrolling, calculate_direct_scrolling): + Declare an arg. -2002-04-23 Colin Walters + * lisp.h (Fnew_fontset): Declare. - * buffer.c (syms_of_buffer): Doc fix. + * keymap.c (push_key_description): Call CHARACTERP correctly. -2002-04-23 Gerd Moellmann + * fontset.c (fontset_add): Declare args. Call make_number correctly. + (face_for_char): Delete unused vars. + (Fset_fontset_font): Doc fix. Delete unused vars. - * xterm.c (notice_overwritten_cursor): Handle the special case - of the cursor being in the first blank non-text line at the - end of a window. + * doc.c (Fsubstitute_command_keys): Delete unused vars. - * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor) - (x_draw_phys_cursor_glyph): Set phys_cursor_width here. - (x_display_and_set_cursor): Don't set phys_cursor_width here, for - bar cursors only, to make phys_cursor_width contain what its name - suggests. - (notice_overwritten_cursor): Consider the cursor image erased if - the output area intersects the cursor image in y-direction. + * composite.c (update_compositions): Declare arg. -2002-04-23 Simon Marshall + * cm.c (calccost, cmgoto): Declare args. - * xfns.c (x_set_mouse_color): Change default for cross_cursor - to XC_hand2. + * charset.c: Remove `emacs' conditional. Doc fixes. + (map_char_table_for_charset): Declare. -2002-04-23 Pavel Jan,Am(Bk + * character.c (syms_of_character) : Doc fix. - * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'. + * ccl.c: Remove `emacs' conditional. -2002-04-22 Kim F. Storm +2008-02-01 Kenichi Handa - * textprop.c (remove_properties): Fixed trap for malformed plist. + The following changes are to allow specifying multiple font + patterns for a character range (specified by script or charset). -2002-04-22 Richard M. Stallman + * Makefile.in (abbrev.o): Depend on syntax.h. + (xfaces.o): Depend on charset.h. - * cmds.c (Fend_of_line): Handle intangible text in mid line. + * alloc.c (Fmake_string): Use ASCII_CHAR_P, not + SINGLE_BYTE_CHAR_P. - * window.c (make_window): Initialize height_fixed_p, - last_cursor_off_p, and p->cursor_off_p slots. + * ccl.c (Fccl_execute_on_string): Add `const' to local variables. -2002-04-20 Pavel Jan,Am(Bk + * character.h (Vchar_script_table): Extern it. - * fns.c (use-dialog-box): Doc fix. + * character.c (Vscript_alist): Delete. + (Vchar_script_table, Qchar_script_table): New variable. + (syms_of_character): Declare Vchar_script_table as a lisp variable + and initialize it. -2002-04-19 Pavel Jan,Am(Bk + * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't + have property char-table-extra-slots, make no extra slot. - * xterm.c (note_mode_line_or_margin_highlight): Remove unused - variables `row', `i' and `area'. - (XTread_socket) : Pass KeyPress events when in menu to - toolkit library. + * dispextern.h (struct face): Delete member `charset'. + (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not + SINGLE_BYTE_CHAR_P. + (choose_face_font, lookup_non_ascii_face, font_name_registry): + Add prototypes. + (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype. + (generate_ascii_font_name): Rename from generate_ascii_font. + + * fontset.h (get_font_repertory_func): New prototype. + (make_fontset_for_ascii_face, fs_load_font): Fix prototypes. + (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii. + + * fontset.c (Qprepend, Qappend): New variables. + (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete. + (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros. + (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset. + (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros. + (fontset_ref_and_range, fontset_add, reorder_font_vector) + (load_font_get_repertory): New functions. + (fontset_set): Delete. + (fontset_face): New arg FACE. Return face ID, not face. + Complete re-write to handle new fontset structure. Change caller. + (free_face_fontset): Use ASET istead of AREF (X) = Y. + (face_for_char): Don't call lookup_face. + (make_fontset_for_ascii_face): New arg FACE. + (fs_load_font): New arg CHARSET_ID. Don't check + Vfont_encoding_alist here. + (find_font_encoding): New function. + (list_fontsets): Use STRINGP, not ! NILP. + (accumulate_script_ranges): New function. + (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely + re-written to handle new fontset structure. + (Ffontset_font): Return a copy of element. + (syms_of_fontset): Define symbols Qprepend and Qappend. Fix + docstring of font-encoding-alist. + + * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0). + (Fset_fotset_font): Fix arguments to 5. + + * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face. + + * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line): + Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P. + (highlight_trailing_whitespace): Adjust for the change of + lookup_named_face. + + * xfaces.c: Include charset.h. + (load_face_font): Delete argument C. Change caller. + (generate_ascii_font_name): Rename from generate_ascii_font. + (font_name_registry): New function. + (cache_face): Store ascii faces before non-ascii faces in buckets. + (lookup_face): Delete arguments C and BASE_FACE. Change caller. + Lookup only ascii faces. + (lookup_non_ascii_face): New function. + (lookup_named_face): Delete argument C. Change caller. + (lookup_derived_face): Delete argument C. Change caller. + (try_font_list): New arg PATTERN. Change caller. If PATTERN is + a string, just call font_list with it. + (choose_face_font): Delete arguments FACE and C. New arg + FONT_SPEC. Change caller. + (realize_face, realize_x_face): Delete arguments C and BASE_FACE. + Change caller. + (realize_non_ascii_face): New function. + (realize_x_face): Call load_face_font here. + (realize_tty_face): Delete argument C. Change caller. + (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to + get a face ID. + (dump_realized_face): Don't print charset of FACE. + + * xfns.c (x_set_font): Always call x_new_fontset and + store_frame_parameter. + (Fx_create_frame): Call x_new_fontset, not x_new_font. + (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory. + + * xterm.h (x_get_font_repertory): Extern it. + + * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not + SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when + it->multibyte_p is zero. + (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P. + (x_new_fontset): If FONTSETNAME doesn't match any existing + fontsets, create a new one. + (x_get_font_repertory): New function. + +2008-02-01 Kenichi Handa + + * coding.c (Ffind_coding_systems_region_internal): Detect an + ASCII only string correctly. + + * lread.c (Fload): Don't load with Qload_force_doc_strings t if + version is 0. + +2008-02-01 Kenichi Handa + + * lread.c: Include "coding.h". + (Qget_emacs_mule_file_char, Qload_force_doc_strings) + (load_each_byte, unread_char): New variables. + (readchar_backlog): Delete. + (readchar): Return a character unless load_each_byte is nonzero. + Handle the case that readcharfun is Qget_emacs_mule_file_char or a + cons. If unread_char is not -1, simply return it. + (unreadchar): Handle the case that readcharfun is + Qget_emacs_mule_file_char or a cons. Set unread_char if necessary. + (read_multibyte): Delete. + (readbyte_for_lambda, readbyte_from_file, readbyte_from_string) + (read_emacs_mule_char): New functions. + (Fload): Even if the file doesn't have the extention ".elc", if + safe_to_load_p returns a positive version number, assume that the + file contains bytecompiled code. If the version is less than 22, + load the file while decoding multibyte sequences by emacs-mule. + (readevalloop): Don't use readchar_backlog. + (Fread): Likewise. Pay attention to the case that STREAM is a cons. + (Fread_from_string): Pay attention to the case that STREAM is a cons. + (read_escape): Delete the arg BYTEREP. + (read1): Set load_each_byte to 1 temporarily while handling + #@NUMBER. Don't call read_multibyte. + (read_vector): Call Fread with a cons. If readcharfun is + Qget_emacs_mule_file_char, decode the read string by emacs-mule. + (read_list): If doc_reference is 2, make the cdr part string as unibyte. + (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char + and Qload_force_doc_strings. + +2008-02-01 Kenichi Handa + + * xdisp.c (face_before_or_after_it_pos): Call + FETCH_MULTIBYTE_CHAR with byte postion, not char position. + +2008-02-01 Kenichi Handa + + * character.h (TRAILING_CODE_P): New macro. + (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset. + (string_char_with_unification): Fix prototype. + (Vscript_alist): Extern it. + + * character.c (Vscript_alist): New variable. + (string_char_with_unification, str_as_unibyte) + (string_escape_byte8): Add `const' to local variables. + (syms_of_character): Declare script-alist as a Lisp variable. + + * charset.h (Vcharset_ordered_list): Extern it. + (charset_ordered_list_tick): Extern it. + (EMACS_MULE_LEADING_CODE_PRIVATE_11) + (EMACS_MULE_LEADING_CODE_PRIVATE_12) + (EMACS_MULE_LEADING_CODE_PRIVATE_21) + (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros + (Funify_charset): Adjust for the change of Funify_charset. + + * charset.c (charset_ordered_list_tick): New variable. + (Fdefine_charset_internal): Increment charset_ordered_list_tick. + (Funify_charset): New optional arg DEUNIFY. If it is non-nil, + deunify intead of unify a charset. + (string_xstring_p): Add `const' to local variables. + (find_charsets_in_text): Add `const' to arguemnts and local variables. + (encode_char): Adjust for the change of Funify_charset. Fix + detecting of invalid code. + (Fset_charset_priority): Increment charset_ordered_list_tick. + (Fmap_charset_chars): Fix handling of default value for FROM_CODE + and TO_CODE. -2002-04-19 Stefan Monnier + * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12) + (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros. + Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc. + (decode_coding_ccl, consume_chars) + (Ffind_coding_systems_region_internal) + (Fcheck_coding_systems_region): Add `const' to local variables. - * xfaces.c (clear_font_table): Don't free the default font of - a frame even if it's on another display. - (Finternal_set_lisp_face_attribute): Don't use XFRAME on something - that could be Qt. + * print.c (print_object): Use octal form for printing the + contents of a bool vector. -2002-04-19 Juanma Barranquero +2008-02-01 Dave Love - * indent.c (Fmove_to_column): Remove unused local variable - `next_boundary_byte'. - (current_column_1): Likewise. + * lread.c (Fload) : Don't leak fd. + : Refuse to load. -2002-04-19 Eli Zaretskii +2008-02-01 Dave Love - * msdos.c (Qhbar): New variable. - (syms_of_msdos): Intern and staticpro it. - (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar' - cursor type. + * fns.c: Move coding.h. + (Qcodeset, Qdays, Qmonths): New. + (concat): Use CHARACTERP instead of INTERGERP. + (Flocale_codeset): Delete. + (Flanginfo): New function. + (syms_of_fns): Change accordingly. -2002-04-19 Dave Lambert + * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup. - Theses change implement an underscore-like (`hbar') cursor. +2008-02-01 Dave Love - * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR. + * casetab.c (init_casetab_once, init_casetab_once): Fix + CHAR_TABLE_SET call. - * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed. - Handle the `hbar' cursor type. - (x_display_and_set_cursor): Handle the HBAR_CURSOR case. + * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call. - * xfns.c (Qhbar): New variable. - (syms_of_xfns): Intern and staticpro it. - (x_specified_cursor_type): Handle `hbar' cursor. + * character.c (syms_of_character): Fix CHAR_TABLE_SET call. - * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is - not defined. + * charset.c (Fmap_charset_chars): Check args. Convert Lisp types. + (load_charset_map, Fdeclare_equiv_charset, Fencode_char) + (Fset_charset_priority, syms_of_charset): Convert Lisp types. -2002-04-18 Richard M. Stallman + * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result. - * textprop.c (remove_properties): New arg LIST allows scanning - either a list or a plist. - (interval_has_some_properties_list): New function, like - interval_has_some_properties using list instead of plist. - All callers changed. - (Fremove_list_of_text_properties): New function. - (syms_of_textprop): Defsubr it. + * coding.c (ENCODE_DESIGNATION, decode_eol) + (make_conversion_work_buffer, code_conversion_restore) + (Fdefine_coding_system_internal): Convert Lisp types. + (code_conversion_restore): Use EQ, not ==. + (Fencode_coding_string): Fix code_convert_string call. -2002-04-17 Eli Zaretskii + * coding.h (code_convert_region): Fix prototype. - * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined. + * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove. -2002-04-17 Juanma Barranquero + * fontset.c (fontset_ref, fontset_set, fs_load_font) + (Ffontset_info): Convert Lisp types. - * indent.c (Fmove_to_column): Remove unused local variable `end_byte'. + * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number. -2002-04-17 Eli Zaretskii + * xterm.c (note_mouse_movement): Fix call of window_from_coordinates. - * window.c (coordinates_in_window): Don't report on margin area - if its width is zero. + * xdisp.c (display_mode_element): Fix call of Fset_text_properties. -2002-04-16 Jason Rumney + * chartab.c: Include "...h", not <...h> in some cases. - * w32fns.c (Fx_file_dialog): Decode file name before using. + * callproc.c (Fcall_process): Remove unused variables. - * w32term.c (construct_drag_n_drop): Likewise. +2008-02-01 Dave Love -2002-04-16 Eli Zaretskii + * coding.c (Fset_coding_system_priority): Allow null arg list. - * puresize.h (BASE_PURESIZE): Increase to 830000, since we now - store load-history in pure space. +2008-02-01 Dave Love - * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000. + * minibuf.c (Fminibuffer_complete_word): Remove unused var. + (Fself_insert_and_exit): Use CHARACTERP. -2002-04-16 Stefan Monnier + * callproc.c (Fcall_process): Remove unused vars. - * xterm.c (Qlatin_1, Qutf_8): New vars. - (syms_of_xterm): Initialize them. - (XTread_socket): Eliminate incorrect optimization that tried to avoid - decoding the output of X*LookupString. - Always use latin-1 to decode the output of XLookupString. - Try Xutf8LookupString if XmbLookupString failed. + * xterm.c (XTread_socket): Add extra dead keysyms. - * region-cache.c (new_region_cache): Use BEG. + * xdisp.c (decode_mode_spec_coding): Use CHARACTERP. -2002-04-16 Gerd Moellmann + * dispextern.h: Remove prototypes for redraw_frame, + redraw_garbaged_frames. - * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system - configuration files. - (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P - returns 0. + * cmds.c (Fself_insert_command): Use CHARACTERP. -2002-04-15 Andreas Schwab + * chartab.c (make_sub_char_table): Remove unused var. + (Fset_char_table_default, Fmap_char_table): Doc fix. - * config.in: Regenerated using autoheader. + * keymap.c (access_keymap): Remove generic char code. + (push_key_description): Use CHARACTERP. - * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h, - m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h, - m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h, - m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h, - m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h, - m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h, - m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h, - m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h, - m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h - m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h, - m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h, - m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h, - m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h, - m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h, - m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h, - s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and - STACK_DIRECTION, now set by autoconf. +2008-02-01 Dave Love -2002-04-14 Pavel Jan,Am(Bk + * charset.c: Doc fixes. + (Funify_charset): Extra checking. - * dispnew.c (marginal_area_string): Sort arguments. +2008-02-01 Dave Love - * dispextern.h (marginal_area_string): Add prototype. + * lread.c: Remove some unused variables. + (safe_to_load_p): If safe, return the magic number version byte. + (Fload): Maybe use load-with-code-conversion. -2002-04-13 Richard M. Stallman +2008-02-01 Kenichi Handa - * fileio.c (Finsert_file_contents): - Don't call temp_output_buffer_setup--do just part, by hand. + * category.c (Fmodify_category_entry): Don't modify the contents + of category_set for characters out of the range. Avoid + unnecessary modification. - * coding.c (run_pre_post_conversion_on_str): - Don't call temp_output_buffer_setup--do just part, by hand. + * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of + Vchar_unify_table. The default value of the table is now nil. - * keyboard.c (command_loop_1): Don't call start_hourglass - or cancel_hourglass when executing a macro. + * character.c (syms_of_character): Setup Vchar_width_table for + eight-bit-control and raw-byte chars. - * marker.c (count_markers): New function. + * charset.h (enum define_charset_arg_index): Delete + charset_arg_parents and add charset_arg_subset and + charset_arg_superset. + (enum charset_attr_index): Delete charset_parents and add + charset_subset and charset_superset. + (enum charset_method): Delete CHARSET_METHOD_INHERIT and add + CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET. + (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete. + (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET) + (CHARSET_SUPERSET): New macros. + (charset_work): Extern it. + (ENCODE_CHAR): Use charset_work. + (CHAR_CHARSET_P): Adjust for the change of encoder format. + (map_charset_chars): Extern it. - * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist - grow without limit. Move recently used elements to the front. + * charset.c (load_charset_map): Set the default value of encoder + and deunifier char-tables to nil. + (map_charset_chars): Change argument. Change callers. Use + map_char_table_for_charset instead of map_char_table. + (Fmap_charset_chars): New optional args from_code and to_code. + (Fdefine_charset_internal): Adjust for the change of + `define-charset' (:parents -> :subset or :superset). + (charset_work): New variable. + (encode_char, syms_of_charset): Adjust for the change of + Fdefine_charset_internal. + (Ffind_charset_string): Setup the vector `charsets' correctly. -2002-04-13 Eli Zaretskii + * chartab.c (sub_char_table_ref_and_range): New arg default. Fix + the previous change. + (char_table_ref_and_range): Adjust for the above change. + (map_sub_char_table_for_charset): New function. + (map_char_table_for_charset): New function. - * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20. + * keymap.c (describe_vector): Handle a char-table directly here. + (describe_char_table): Delete. -2002-04-12 Gerd Moellmann + * lisp.h (map_charset_chars): Delete. - * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame - rows marginal areas. - (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function. - (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it. +2008-02-01 Dave Love - * dispnew.c (marginal_area_string): Check that glyph row is enabled. + * fns.c (count_combining): Comment out (unused). + (Flocale_codeset): New. + (syms_of_fns): Defsubr it. -2002-04-12 Dave Love + * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New. + (size_t): Remove. - * dispnew.c (marginal_area_string): New. +2008-02-01 Dave Love - * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN. - (Qleft_margin, Qright_margin): Declare. - (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins. + * Makefile.in (chartab.o): Depend on charset.h. - * xterm.c (note_mode_line_or_margin_highlight): Renamed from - note_mode_line_highlight and extended. +2008-02-01 Kenichi Handa - * keyboard.c (Qleft_margin, Qright_margin): Declare. - (make_lispy_event): Deal with mouse events in margins. + * character.c (syms_of_character): Set the default value of + Vprintable_chars to Qnil. -2002-04-12 Stefan Monnier +2008-02-01 Dave Love - * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT. + * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el. - * keyboard.c (command_loop_1): Turn off transient-mark-mode rather - than deactivating the mark if tmm is set to `lambda'. - (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event): - Use a single event for HELP_EVENT. - (Fexecute_extended_command): Save last_point_position. +2008-02-01 Kenichi Handa -2002-04-12 Pavel Jan,Am(Bk + * charset.c (load_charset_map): Handle the case that from < to + correctly. - * lisp.h (Fpropertize): Add prototype. + * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022) + (encode_coding_sjis, encode_coding_big5, encode_coding_charset): + Pay attention to raw-8-bit chars. - * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt. +2008-02-01 Kenichi Handa -2002-04-10 Colin Walters + * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el. + It is not bytecompiled now. - * config.in: Add HAVE_SHARED_GAME_DIR. + * charset.c (charset_jisx0201_roman, charset_jisx0208_1978) + (charset_jisx0208): New variables. + (Fdefine_charset_internal): Setup them if appropriate. + (init_charset_once): Initialize them to -1. - * callproc.c (Vgame_score_directory): New variable. - (syms_of_callproc) : DEFVAR_LISP. + * charset.h (charset_jisx0201_roman, charset_jisx0208_1978) + (charset_jisx0208): Extern them. -2002-04-10 Richard M. Stallman + * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro + (CODING_ISO_FLAG_USE_OLDJIS): New macro. + (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition. + (setup_iso_safe_charsets): Fix arguments to Fassq. + (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1) + (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to + CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS. + (encode_coding_iso_2022): Change the 1st arg to + ENCODE_ISO_CHARACTER to a variable. - * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess. +2008-02-01 Kenichi Handa -2002-04-09 Stefan Monnier + * charset.h (enum define_charset_arg_index): New enums + charset_arg_min_code and charset_arg_max_code. + (struct charset): New member char_index_offset. - * minibuf.c (read_minibuf): Use empty_string. - (Ftry_completion): Allow lambda forms and lists of strings for `alist'. - Short-circuit the search as soon as it "failed". - (Fall_completions): Allow lambda forms and lists of strings for alist. - (Fcompleting_read): Set Qminibuffer_completion_confirm to nil - when require_match is nil. - (Ftest_completion): Rename from `test_completion' and export to elisp. - Call the predicate also when alist is a list. - Obey Vcompletion_regexp_list. - (do_completion, Fminibuffer_complete_and_exit): Use it. - (Fassoc_string): Rename from `assoc_for_completion'. - Allow list of strings as well and export to elisp. + * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT): + Take charset->char_index_offset into account. + (Fdefine_charset_internal): Handle args[charset_arg_min_code] and + args[charset_arg_max_code]. Setup charset.char_index_offset. + (syms_of_charset): Fix args to Fdefine_charset_internal. -2002-04-08 Stefan Monnier +2008-02-01 Dave Love - * puresize.h (BASE_PURESIZE): Increase to 900KB. + * coding.c (decode_coding_utf_8): Reject overlong sequences. -2002-04-08 Juanma Barranquero +2008-02-01 Dave Love - * w32.c (sys_accept): Don't hide variable `s'. + * coding.c: Doc fixes. + (Fcoding_system_aliases): Fix return value. + (Qmac): Remove (duplicated) definition. -2002-04-05 Gerd Moellmann +2008-02-01 Dave Love - * callint.c (Fcall_interactively): Use INTEGERP instead of - NUMBERP for checking Vhistory_length. + * charset.c (Fcharset_priority_list, Fset_charset_priority): New + functions. -2002-04-05 Pavel Jan,Am(Bk + * character.c (Fstring): Doc fix. - * sound.c (Fplay_sound_internal): Renamed from Fplay_sound. - Doc fix to reflect it. + * charset.c (Fdefine_charset_alias): Update Vcharset_list. -2002-04-04 Richard M. Stallman + * fontset.c (Ffontset_info): Doc fix. Return charset names, not + ids. + (font-encoding-alist): Doc fix. - * xdisp.c (display_mode_element): New arg RISKY. - Disregard text props found or specified within a variable - that isn't marked risky-local-variable. - (Qrisky_local_variable): New variable. - (syms_of_xdisp): Init and staticpro it. +2008-02-01 Dave Love -2002-04-04 Stefan Monnier + * term.c (costs_set): Declare static, non-initialized for pcc. + (encode_terminal_code): Remove unused var. - * undo.c (record_point): New fun. - (record_delete, record_insert): Use it. + * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl + for K&R. -2002-04-03 Juanma Barranquero + * xterm.c (xlwmenu_window_p): Fix prototype for K&R. - * doc.c (Fdocumentation): Add missing parentheses. - (Fdocumentation_property): Likewise. + * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R. + (suffixes): Move out of make_subsidiaries for K&R. -2002-04-03 Stefan Monnier + * charset.c (map_charset_chars): Fix c_function declaration for K&R. - * doc.c (Fdocumentation, Fdocumentation_property): When the doc - data is 0, just return nil. + * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'. -2002-04-03 Eli Zaretskii +2008-02-01 Dave Love - * msdos.c (syms_of_msdos): Fix last change with - mouse_autoselect_window. + * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP. -2002-04-03 Pavel Jan,Am(Bk + * category.c (Fmodify_category_entry): Doc fix. Remove unused vars. - * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to - mouse_autoselect_window. +2008-02-01 Yong Lu -2002-04-02 Stefan Monnier + * charset.c (Fdefine_charset_internal): Fix argument to bzero. - * keyboard.c (make_lispy_event): Handle unknown keysyms together - with system-specific keysyms. Use it also for unknown function keys. + * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96. - * doc.c (reread_doc_file): Return whether reload was attempted. - (Fdocumentation, Fdocumentation_property): Don't try to reload - if the doc is 0 and only ask once. +2008-02-01 Kenichi Handa - * Makefile.in (lisp, shortlisp): Add ucs-tables.elc. + * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el, + vietnamese.elc to vietnamese.el. They are not bytecompiled now. -2002-04-02 Eli Zaretskii +2008-02-01 Kenichi Handa - * keyboard.c (read_char): If the event was Qselect_window, - restore timer_idleness_start_time to its previous value. + * coding.c (decode_coding_charset): Adjust for the change of + Fdefine_coding_system_internal. + (Fdefine_coding_system_internal): For a coding system of + `charset' type, store a list of charset IDs in + `charset_attr_charset_valids' element of coding attributes. - * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required. +2008-02-01 Kenichi Handa -2002-04-01 Stefan Monnier + * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars. + (emacs_mule_char): New arg src. Delete arg `composition'. Change + caller. Handle 2-byte and 3-byte charsets correctly. + (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from + DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller. + (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro. + (DECODE_EMACS_MULE_21_COMPOSITION): Call + DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation + sequence. + (decode_coding_emacs_mule): Handle composition correctly. Rewind + `src' and `consumed_chars' correctly before calling emacs_mule_char. + (DECODE_COMPOSITION_START): Correctly handle the case of altchar + and alt&rule composition. + (decode_coding_iso_2022): Handle composition correctly. + (init_coding_once): Setup emacs_mule_bytes for private charsets. - * region-cache.c (new_region_cache): Use BEG. + * charset.c (Fdefine_charset_internal): Fix bug for the case of + re-defining a charset. If the charset has :emacs-mule-id, setup + emacs_mule_bytes. + (Fmake_char): If CODE1 is nil, use the minimum code of the charset. - * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos): - Use BEG and BEG_BYTE. +2008-02-01 Kenichi Handa - * doc.c (get_doc_string): Return nil if the location is wrong. - (reread_doc_file): New fun. - (Fdocumentation, Fdocumentation_property): - Call it if get_doc_string fails. - (Fsnarf_documentation): Make it work for a dumped Emacs. + * coding.c (encode_coding_iso_2022, encode_coding_sjis) + (encode_coding_big5, encode_coding_charset): If coding requires safe + encoding, produce a character specified by + CODING_INHIBIT_CHARACTER_SUBSTITUTION. - * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE. - Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case. +2008-02-01 Dave Love - * charset.c (Fstring): Allow 0 arguments. + * xterm.c (XSetIMValues): Declare. - * xterm.c (XTread_socket): Fix int/Lisp_Object confusion. + * process.c: Conditionally include sys/wait.h, pty.h. - * process.c (DATAGRAM_CONN_P, list_processes_1) - (Fprocess_datagram_address, Fset_process_datagram_address) - (Fset_network_process_options, server_accept_connection): - Fix some int/Lisp_Object confusions (thank you union types). + * print.c (print_object): Fix print format for 64-bit systems. -2002-04-01 Pavel Jan,Am(Bk + * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems. - * msdos.c: Rename x_autoselect_window_p to autoselect_window_p. + * buffer.c (emacs_strerror): Declare. - * w32term.c: Likewise. - (note_mouse_movement): Put code for x_autoselect_window_p in #if 0. + * fontset.c (Fclear_face_cache): Declare. + (accumulate_font_info): Comment-out (unused). + (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused + variables. - * keyboard.c (Qselect_window): New symbol. - (head_table): Use it. - (keys_of_keyboard): Bound select-window event to handle-select-window. - (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT. + * character.h (string_escape_byte8): Declare. - * xterm.c: Rename x_autoselect_window_p to autoselect_window_p. - (last_window): New variable. - (XTread_socket): Generate SELECT_WINDOW_EVENTs. - (note_mouse_movement): Remove reimplemented code in #if 0. - (XTread_socket): Generate SELECT_WINDOW_EVENTs only for - Emacs windows. + * charset.c (load_charset_map, load_charset_map_from_file): Remove + unused vars. + (Fdefine_charset_internal, Fsplit_char, syms_of_charset) + (Fmap_charset_chars): Doc fix. - * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'. + * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove. + (Fset_coding_system_priority, Fset_coding_system_priority) + (Fdefine_coding_system_internal): Doc fix. -2002-03-31 Gerd Moellmann +2008-02-01 Dave Love - * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P. - Callers changed. + * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics. -2002-03-30 Richard M. Stallman +2008-02-01 Kenichi Handa - * window.c (window_scroll_pixel_based): Exit the move_it_by_lines - loop whenever it stops making progress. + * character.c (string_escape_byte8): Make multibyte string with + correct size. - * widget.c (set_frame_size): Don't call change_frame_size. + * charset.c (Fmake_char): Delete unnecessary code. -2002-03-30 Gerd Moellmann +2008-02-01 Kenichi Handa - * dispnew.c (direct_output_for_insert): - Call mark_window_display_accurate. + * xfns.c (x_encode_text): Allocate coding.destination here, and + call encode_coding_object with dst_object Qnil. -2002-03-29 Jason Rumney + * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to + multibyte form correctly. - * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths. + * fontset.c (fs_load_font): Check fontp->full_name (not fontname) + against Vfont_encoding_alist. -2002-03-29 Eli Zaretskii + * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the + handling of charset list. + (encode_coding_iso_2022): Setup coding->safe_charsets in advance. + (decode_coding_object): Move point to coding->dst_pos before + calling post-read-conversion function. + (encode_coding_object): Give correct arguments to + pre-write-conversion. Ignore the return value of + pre-write-conversion function. Pay attention to the case that + pre-write-conversion changes the current buffer. If dst_object is + Qt, even if coding->src_bytes is zero, allocate at least one byte + to coding->destination. - * Makefile.in (lread.o): Depend on coding.h. + * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2). - * lread.c (openp, Fload): Encode the file name before passing it - to `stat', `access', and `emacs_open'. - (openp): GCPRO the encoded file name. Don't recompute Lisp - strings unnecessarily. + * charset.c (Fmake_char): Make it more backward compatible. + (Fmap_charset_chars): Fix docstring. -2002-03-29 Kim F. Storm +2008-02-01 Dave Love - * fns.c (Flax_plist_put): Doc fix. + * coding.c: Doc fixes. + (Fdefine_coding_system_alias): Use names, not symbols, in + coding-system-alist. -2002-03-28 Miles Bader +2008-02-01 Kenichi Handa - * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process. + * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead + of calling free_realized_face. -2002-03-27 Pavel Jan,Am(Bk +2008-02-01 Yong Lu - * process.c (set-network-process-options): Add usage. - (make-network-process): Doc fix. + * charset.c (read_hex): Don't treat SPC as a comment starter. + (decode_char): If CODE_POINT_TO_INDEX retruns -1, always return -1. + (Fdecode_char): Fix typo. -2002-03-26 Eli Zaretskii +2008-02-01 Kenichi Handa - * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed". + * charset.h (struct charset): New member `code_space_mask'. -2002-03-26 Richard M. Stallman + * coding.c (coding_set_source): Delete the local variable beg_byte. + (encode_coding_charset, Fdefine_coding_system_internal): + Delete the local variable charset. + (Fdefine_coding_system_internal): Setup + attrs[coding_attr_charset_valids] correctly. - * fns.c (Fsubstring_no_properties): New function. - (Flax_plist_get, Flax_plist_put): New functions. - (syms_of_fns): defsubr them. + * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask' + member to check if CODE is valid or not. + (Fdefine_charset_internal): Initialize `code_space_mask' member. + (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE + is within the range of charset->min_code and carset->max_code. - * xdisp.c (update_menu_bar): Test only update_mode_lines; - don't test or alter w->update_mode_line. +2008-02-01 Dave Love - * window.c (Fdisplay_buffer): Doc fix. + * syntax.h (syntax_temp) [!__GNUC__]: Declare. -2002-03-24 Richard M. Stallman + * dispextern.h (generate_ascii_font): Fix return type. - * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces. + * xfaces.c (generate_ascii_font): Fix arg declaration. -2002-03-24 Gerd Moellmann + * coding.c (coding_inherit_eol_type) + (Fset_terminal_coding_system_internal) + (Fset_safe_terminal_coding_system_internal): Fix arg declarations. - * eval.c (Qdeclare, Vmacro_declaration_function): New variables. - (Fdefmacro): Handle `(declare ...)'. - (syms_of_eval) : Initialize and staticpro. - (syms_of_eval) : DEFVAR_LISP. +2008-02-01 Kenichi Handa -2002-03-24 Jason Rumney + * coding.c (decode_coding_charset, encode_coding_charset): Handle + multiple charsets correctly. - * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data) - (xbm_file_p): Add prototypes. - (xbm_format, xbm_image_p): Sync with xfns.c. - (reflect_byte): New function. - (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows. - (xbm_load_image): Create bitmaps with a depth of 1. - (init_xfns): Enable XBM images. +2008-02-01 Kenichi Handa -2002-03-23 Jason Rumney + * search.c (boyer_moore): Fix handling of mulitbyte character + translation. - * w32term.c (w32_handle_tool_bar_click): Detect up and down events - correctly. Do not pass up_modifier to keyboard buffer. + * xdisp.c (display_mode_element): When the variable `elt' is + changed, update `this' and `lisp_string'. - * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals. +2008-02-01 Kenichi Handa -2002-03-22 Stefan Monnier + * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling. - * Makefile.in (bootstrapclean): New target. - (bootstrap-temacs, bootstrap-doc): Remove. - (bootstrap-emacs): Use a bog-standard `temacs'. - Don't bother to build a DOC file. + * callproc.c (Fcall_process): Be sure to give the current buffer + to decode_coding_c_string. Update PT and PT_BYTE after the insertion. - * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause. + * charset.c (struct charset_map_entries): New struct. + (load_charset_map): Rename from parse_charset_map. New args + entries and n_entries. Change caller. + (load_charset_map_from_file): Rename from load_charset_map. + Change caller. New arg control_flag. Call load_charset_map at + the tail. + (load_charset_map_from_vector): New function. + (Fdefine_charset_internal): Setup charset.compact_codes_p. + (encode_char): If the charset is compact, change a character index + to a code point. - * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup - in temacs even if !CANNOT_DUMP. - (standard_args): Keep --no-loadup even if !CANNOT_DUMP. + * coding.c (coding_alloc_by_making_gap): Check the case that the + source and destination are the same correctly. + (decode_coding_raw_text): Set coding->consumed_char and + coding->consumed to 0. + (produce_chars): If coding->chars_at_source is nonzero, update + coding->consumed_char and coding->consumed before calling + alloc_destination. + (Fdefine_coding_system_alias): Register ALIAS in + Vcoding_system_alist. + (syms_of_coding): Define `no-convesion' coding system at the tail. - * alloc.c (check_pure_size): Only output a warning. + * fileio.c (Finsert_file_contents): Set coding_system instead of + val. If the current buffer is multibyte, always call + decode_coding_gap. -2002-03-22 Jason Rumney + * xfaces.c (try_font_list): Give higher priority to fontset's + family than face's family. - * w32fns.c (Fx_create_frame): Enable tool-bar when images are - supported. +2008-02-01 Kenichi Handa - * w32term.c (zv_bits): Declare as short, for word alignment. - (w32_read_socket) : Fix last change. - (syms_of_w32term): Define x-use-underline-position-properties. + * callproc.c (Fcall_process): Be sure to give the current buffer + to decode_coding_c_string. - * w32fns.c (x_set_cursor_color): Set cursor_gc as well. - (clear_image_cache): Block input, fix logic, clear matrices in - all frames that share this cache. + * xfaces.c (try_font_list): Give a family specified in a fontset + higher priority than a family specified in a face. -2002-03-22 Eli Zaretskii +2008-02-01 Kenichi Handa - * emacs.c (main): Update the Copyright year in the blurb printed - by "emacs --version". + * fileio.c (Finsert_file_contents): Fix calculation of `inserted'. + Fix arguments to insert_from_buffer. - * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2. + * xdisp.c (display_mode_element): Fix calculation of `bytepos'. - * xterm.c (XTread_socket): If XK_ISO_Lock and - XK_ISO_Last_Group_Lock are defined, handle keysyms between - XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch. +2008-02-01 Kenichi Handa -2002-03-21 Kim F. Storm + * coding.c (produce_chars): Set the variable `multibytep' correctly. + (decode_coding_gap): Set coding->dst_multibyte correctly. - * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so - menu-bar bindings in keymap and local-map properties _are_ used. - But try keymap property first in accordance with 2002-01-03 patch. - Added comment describing why this is not always reliable. - (tool_bar_items): Ditto for tool-bar. +2008-02-01 Kenichi Handa -2002-03-21 Jason Rumney + * coding.c (encode_coding_utf_8): Initialize produced_chars to 0. + (decode_coding_utf_16): Fix converting high and low bytes to code-point. + (encode_coding_utf_16): Substitute coding->default_char for + non-Unicode characters. + (decode_coding): Don't call record_insert here. + (setup_coding_system): Initialize `surrogate' of + coding->spec.utf_16 to 0. + (EMIT_ONE_BYTE): Fix for multibyte case. - * w32fns.c (x_clear_image_1): Disable color table code. + * insdel.c (insert_from_gap): Call record_insert. -2002-03-21 Kim F. Storm +2008-02-01 Kenichi Handa - * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch - removed the wrong version of the DEFUN macro; fixed it. + * casefiddle.c (casify_region): Fix multibyte case. - * fns.c (Ffeaturep): Allow subfeature to be a list (test using - Fmember rather than Fmemq). - (Fprovide): Check that subfeatures is a list. + * character.c (c_string_width): Add return type `int'. + (char_string_with_unification): Delete arg ADVANCED. - * process.c (QCfeature, QCdatagram): Removed variables. - (QCtype, Qdatagram): New variables. - (network_process_featurep): Removed function. - (Fmake_network_process): Removed :feature check. - Use :type 'datagram instead of :datagram t to create a datagram - socket. This allows us to add other connection types (e.g. raw - sockets) later in a consistent manner. - (init_process) [subprocess, HAVE_SOCKETS]: Provide list of - supported subfeatures for feature make-network-process. - (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram. - Intern and staticpro QCtype and Qdatagram. - (syms_of_process) [!subprocess]: Intern and staticpro QCtype. + * character.h (CHAR_VALID_P): Don't call CHARACTERP. + (CHAR_STRING): Adjust for the change of char_string_with_unification. + (CHAR_STRING_ADVANCE): Make it do-while statement. - * xfns.c (QCtype): Remove duplicate declaration and - initialization (is now declared in process.c). + * chartab.c (sub_char_table_set_range): Optimize for the case + DEPTH == 3. Add workaround code for a GCC optimization bug. - * w32fns.c (QCtype): Remove duplicate declaration and - initialization (is now declared in process.c). + * charset.c (parse_charset_map): Remove an unused variable. -2002-03-21 Richard M. Stallman + * coding.c: Delete unused variables. - * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro. - (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT - when jumping to `fail' to avoid undoing reg changes in the - last iteration of the loop. - (GET_UNSIGNED_NUMBER): Skip spaces around the number. + * fileio.c (Finsert_file_contents): Set coding_system to Qnil + earlier. If inserted is zero and the coding system doesn't + require flushing, don't call decode_coding_gap. - * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o): - Depend on process.h. + * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number. -2002-03-20 Jason Rumney +2008-02-01 Kenichi Handa - Most of the following changes are still conditional on HAVE_IMAGES - which is not set by default on Windows. + The following changes are for using Unicode as an internal + character model, and use UTF-8 format for buffer/string + representation. - * emacs.c (main) [WINDOWSNT]: Call init_xfns. + * .gdbinit (xchartable): Adjust for the change of char table structure. + (xsubchartable, xcoding, xcharset, xcurbuf): New commands. - * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame. - (Fimage_size, Fimage_mask_p, XPutPixel): New functions. - (four_corners_best, x_clear_image_1, x_clear_image) - (x_alloc_image_color, postprocess_image) - (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image) - (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows. - (init_xfns, syms_of_w32fns): Initialize image functions and constants. + * Makefile.in (obj): Add character.o and chartab.o. + (lisp, shortlisp): Remove utf-8.elc: + (*.o): For many files, change dependency on charset.h to + character.h, and add dependency on character.h. + (character.o, chartab.o): New targets. - * w32gui.h (struct XImage): Define. + * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c: + * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c: + * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead + of "charset.h". - * w32term.c (w32_read_socket) : Use XFASTINT to - extract mouse co-ordinates. + * dired.c, filelock.c: Include "character.h". -2002-03-20 Jason Rumney + * alloc.c: Include "character.h" instead of "charset.h". + (Fmake_char_table, make_sub_char_table): Move to chartab.c. + (syms_of_alloc): Remove defsubr for Smake_char_table. - * w32.c (init_winsock): Dynamically load new server and UDP - socket functions. - (socket_to_fd): New function. - (sys_socket): Use it. - (sys_setsockopt, sys_listen, sys_getsockname, sys_accept) - (sys_recvfrom, sys_sendto): New wrapper functions. + * buffer.c: Include "character.h" instead of "charset.h", don't + include "coding.h". + (Fset_buffer_multibyte): Adjust for UTF-8. - * process.c (QCfamily, QCfilter): Remove duplicate declaration - and initialization. + * buffer.h: EXFUN Fbuffer_live_p. - * makefile.w32-in (LIBS): Remove $(WSOCK32). + * callproc.c: Include "character.h" instead of "charset.h". + (Fcall_process): Big change for the new code-conversion APIs. -2002-03-20 Eli Zaretskii + * casetab.c: Include "character.h" instead of "charset.h". + (set_canon, set_identity, shuffle): Adjust for the new + map_char_table spec. + (init_casetab_once): Call CHAR_TABLE_SET instead of directly + accessing the char table structure. - * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr): - Don't use "sun" as a variable, it's a predefined constant on Sun - machines. + * chartab.c: New file that implements char table. -2002-03-20 Pavel Jan,Am(Bk + * category.c: Include "character.h". + (copy_category_entry): New function. + (copy_category_table): Call map_char_table and copy_category_entry. + (Fmake_category_table): Initialize all top-vel slots. + (char_category_set): New function. + (modify_lower_category_set): Delete. + (Fmodify_category_entry): Call char_table_ref_and_range. - * bytecode.c (Fbyte_code): Revert last change. + * category.h (CATEGORY_SET): Just call char_category_set. -2002-03-19 Kim F. Storm + * ccl.c: Include "character.h". + (Qccl, Qcclp): New variables. + (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if + it's less than 256. + (CCL_WRITE_MULTIBYTE_CHAR): Delete. + (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC + and DST type. + (ccl_driver): Change types of argument, adjust code accordingly. + (Fccl_execute, Fccl_execute_on_string): Adjust for the change of + ccl_driver. + (syms_of_ccl): Intern and staticpro Qccl and Qcclp. - * makefile.w32-in (LIBS): Add $(WSOCK32). - From David Ponce . + * ccl.h (struct ccl_program): Delete members eol_type and multibyte. + New members src_multibyte, dst_multibyte, consumed, and produced. + (struct ccl_spec): Delete members decoder and encoder. New member ccl. + (CODING_SPEC_CCL_PROGRAM): New macro. + (ccl_driver): Update prototype. + (Qccl, Qcclp, Fccl_program_p): Extern them. + (CHECK_CCL_PROGRAM): New macro. -2002-03-18 Pavel Jan,Am(Bk + * character.c, character.h, chartab.c: New files. - * process.c (wait_reading_process_input): Move variables `pname' - and `pnamelen' down where they are used. + * charset.c: Mostly re-written. Move character and multibyte sequence + handling codes to character.c. - * bytecode.c (Fbyte_code): Discard unused computed value to - prevent gcc warning. + * charset.h: Mostly re-written. Move character and multibyte sequence + handling codes to character.h. - * lisp.h (Fplist_member): Add prototype. + * coding.c, coding.h: Mostly re-written. -2002-03-18 Kim F. Storm + * composite.c: Include "character.h" instead of "charset.h". + (CHAR_WIDTH): Move to character.h. + (HASH_KEY, HASH_VALUE): Delete. - * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT, - HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H. + * composite.h (enum composition_method): Change order of enumeration + symbols. - * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H. - Remove explicit GNU_LINUX settings for datagram support. + * data.c: Include "character.h" instead of "charset.h". + (Faref): Call CHAR_TABLE_REF for a char table. + (Faset): Call CHAR_TABLE_SET for a char table. -2002-03-18 Pavel Jan,Am(Bk + * dispextern.h (free_realized_face, check_face_attribytes) + (generate_ascii_font): Extern them. + (free_realized_multibyte_face): Delete extern. - * process.c (Fmake_network_process): Remove unused variable `sa'. - Doc fix. Add usage:. - (set_socket_options): Remove unused variables `optnum' and `opttype'. + * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char + table structure. + + * editfns.c: Include "character.h" instead of "charset.h". + (Fchar_to_string): Always call CHAR_STRING. + + * emacs.c (main): Call init_charset_once, init_charset, + syms_of_chartab, and syms_of_character. + + * fileio.c: Include "character.h" instead of "charset.h". + (Finsert_file_contents): Big change for the new code-conversion API. + (choose_write_coding_system, Fwrite_region): Likewise. + (build_annotations_2): Delete. + (e_write): Big change for the new code-conversion API. + + * fns.c: Include "character.h" instead of "charset.h". + (copy_sub_char_table): Move to chartab.c. + (Fcopy_sequence): Call copy_char_table for a char table. + (concat): Delete codes calling count_multibyte. + (string_char_to_byte, string_byte_to_char): Adjust for the new + multibyte form. + (internal_equal): Adjust for the change of char table structure. + (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent) + (Fchar_table_extra_slot, Fset_char_table_extra_slot) + (Fchar_table_range, Fset_char_table_range, Fset_char_table_default) + (char_table_translate, optimize_sub_char_table) + (Foptimize_char_table, map_char_table, Fmap_char_table): Move to + chartab.c. + (char_table_ref_and_index): Delete. + (HASH_KEY, HASH_VALUE): Move to lisp.h. + (Fmd5): Call preferred_coding_system instead of accessing + Vcoding_category_list. Adjust for the new code-conversion API. + (syms_of_fns): Move defsubr for char table related functions to + chartab.c. + + * fontset.c: Mostly re-written. + + * fontset.h (struct font_info): Change type of the member encoding_type. + (enum FONT_SPEC_INDEX): New enum. + (fontset_font_pattern, fs_load_font): Update prototype. + (FS_LOAD_FONT): Adjust for the change of fs_load_font. + + * indent.c: Include "character.h" instead of "charset.h". + (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD. + + * insdel.c: Include "character.h" instead of "charset.h". + (copy_text): Don't refer to Vnonascii_translation_table. + (insert_from_gap): New function. + + * keyboard.c: Include "character.h" instead of "charset.h". + (command_loop_1): Never call direct_output_forward_char before + a non-ASCII character. + (read_char): If Vkeyboard_translate_table is a char table, always + translate a character. + + * keymap.c: Include "character.h". + (store_in_keymap): Handle the case that IDX is a cons. + (Fdefine_key): Handle the case that KEY is a cons and the car part + is also a cons (range). + (push_key_description): Adjust for the new character code. + (describe_vector): Call describe_char_table for a char table. + (describe_char_table): New function. + + * keymap.h (describe_char_table): Extern it. + + * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE. + (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros. + (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS) + (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS): + Delete. + (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table + structure. + (CHAR_TABLE_TRANSLATE): Just call char_table_translate. + (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2) + (CHARTAB_SIZE_BITS_3): New macros. + (chartab_size): Extern it. + (struct Lisp_Char_Table): Re-design. + (struct Lisp_Sub_Char_Table): New structure. + (HASH_KEY, HASH_VALUE): Move from fns.c. + (CHARACTERBITS): Define as 22. + (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change. + (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE. + (GC_SUB_CHAR_TABLE_P): New macro. + (Fencode_coding_string, Fdecode_coding_string): Update EXFUN. + (code_convert_string_norecord): Deleted extern. + (init_character_once, syms_of_character, init_charset) + (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them. + + * lread.c: Include "character.h". + (read_multibyte): New arg NBYTES. + (read_escape): Change the meaning of returned *BYTEREP. + (to_multibyte): Delete. + (read1): Adjust the handling of char table and string. + + * print.c: Include "character.h" instead of "charset.h". + (print_string): Convert 8-bit raw bytes to octal form by + string_escape_byte8. + (print_object): Adjust for the new multibyte form. Print 8-bit + raw bytes always in octal form. Handle sub char table correctly. + + * process.c: Include "character.h" instead of "charset.h". + (read_process_output, send_process): Adjust for the new + code-conversion API. + + * puresize.h (BASE_PURESIZE): Increase. + + * regex.c: Include "character.h" instead of "charset.h". + (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros. + (regex_compile): Accept a range whose starting and ending + character have different leading bytes. + (analyse_first): Adjust for the above change. + + * search.c: Include "character.h" instead of "charset.h". + (search_buffer, boyer_moore): Adjust for the new multibyte form. + (Freplace_match): Adjust for the change of multibyte_char_to_unibyte. + + * syntax.c: Include "character.h" instead of "charset.h". + (syntax_parent_lookup): Delete. + (Fmodify_syntax_entry): Accept a cons as CHAR. + (skip_chars): Adjust for the new multibyte form. + (init_syntax_once): Call char_table_set_range instead of directly + accessing the structure of a char table. + + * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET. + (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro. + (SET_RAW_SYNTAX_ENTRY_RANGE): New macro. + (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF. + + * term.c: Include "buffer.h" and "character.h". + (encode_terminal_code, write_glyphs): Adjust for the new + code-conversion API. + (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH. + + * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT. + + * xdisp.c: Include "character.h". + (get_next_display_element): Adjust for the new multibyte form. + (disp_char_vector): Adjust for the new char table structure. + (decode_mode_spec_coding): Adjust for the new structure of + coding system. + (decode_mode_spec): Adjust for the new code-conversion API. + + * xfaces.c: Include "character.h" instead of "charset.h". + (load_face_font): Adjust for the change of choose_face_font and + FS_LOAD_FONT. + (generate_ascii_font): New function. + (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT. + (set_font_frame_param): Adjust for the change of choose_face_font. + (free_realized_face): Make it public. + (free_realized_faces_for_fontset): Rename from + free_realized_multibyte_face. Free also faces realized for ASCII. + (choose_face_font): Change arguments. Adjust for the change of + fontset_font_pattern and FS_LOAD_FONT. + + * xfns.c: Include "character.h". + (x_encode_text): Adjust for the new code-conversion API. + + * xselect.c: Don't include "charset.h". + (selection_data_to_lisp_data): Adjust for the new code conversion API. + + * xterm.c: Include "character.h". + (x_encode_char): New argument CHARSET. Change caller. + (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding): + Call ENCODE_CHAR instead of SPLIT_CHAR. + (x_produce_glyphs): Don't check Vnonascii_translation_table Call + CHAR_WIDTH instead of CHARSET_WIDTH. + (XTread_socket): Adjust for the new code-conversion API. + (x_new_font): Adjust for the change of FS_LOAD_FONT. + (x_load_font): Adjust for the change of struct font. + +2008-02-01 Stefan Monnier + + * xfaces.c (face_at_buffer_position): Remove unused vars. -2002-03-17 Richard M. Stallman +2008-02-01 Kenichi Handa - * xdisp.c (cursor_type_changed): New variable. - (redisplay_internal): Redisplay all windows if cursor_type_changed. - Clear it when clearing windows_or_buffers_changed. - (try_cursor_movement, redisplay_window, try_window_id) - (try_window_reusing_current_matrix): Test cursor_type_changed - along with windows_or_buffers_changed. + * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR): + Fix overflow checking. - * window.h (cursor_type_changed): New variable. +2008-02-01 Kenichi Handa - * xfns.c (x_set_cursor_type): Set cursor_type_changed, - not update_mode_lines, and always set it to 1. + * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver): + Cancel previous change. - * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed - if no frames needed redrawing. +2008-01-31 Kenichi Handa -2002-03-17 Kim F. Storm + * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when + ccl->eight_bit_control. Fix check for buffer overflow. + (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow. + (ccl_driver): Initialize extra_bytes to 0. - The following changes add support for network server processes, - datagram connections, and local (unix) sockets. +2008-01-31 Kenichi Handa - * process.h (struct Lisp_Process): New member log. - Doc fix: Member command used to indicate stopped network process. - Doc fix: Member childp contains plist for network process. - Doc fix: Member kill_without_query is inverse of query-on-exit flag. + * keyboard.c (make_ctrl_char): If C is a multibyte character, just + return it ORed with ctrl_modifier. - * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily) - (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop) - (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature): New - variables. - (NETCONN1_P): New macro. - (DATAGRAM_SOCKETS): New conditional symbol. - (datagram_address): New array. - (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros. - (status_message): Use concat3. - (Fprocess_status): Add `listen' status to doc string. Return - `stop' for a stopped network process. - (Fset_process_buffer): Update contact plist for network process. - (Fset_process_filter): Ditto. Don't enable input for stopped - network processes. Server must listen, even if filter is t. - (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag): - New functions. - (Fprocess_kill_without_query): Removed. Now defined in simple.el. - (Fprocess_contact): Added KEY argument. Handle datagrams. - (list_processes_1): Optionally show only processes with the query - on exit flag set. Dynamically adjust column widths. Omit tty - column if not needed. Report stopped network processes. Identify - server and datagram network processes. - (Flist_processes): New optional arg `query-only'. - (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size) - (conv_lisp_to_sockaddr, set_socket_options) - (network_process_featurep, unwind_request_sigio): New helper - functions. - (Fprocess_datagram_address, Fset_process_datagram_address): - (Fset_network_process_options): New lisp functions. - (Fopen_network_stream): Removed. Now defined in simple.el. - (Fmake_network_process): New lisp function. Code is based on - previous Fopen_network_stream, but heavily reworked with new - property list based argument list, support for datagrams, server - processes, and local sockets in addition to old client-only - functionality. - (server_accept_connection): New function. - (wait_reading_process_input): Use it to handle incoming connects. - Do not enable input on a new connection if process is stopped. - (read_process_output): Handle datagram sockets. Use 2k buffer for - them. - (send_process): Handle datagram sockets. - (Fstop_process, Fcontinue_process): Apply to network processes. A - stopped network process is indicated by setting command field to t. - (Fprocess_send_eof): No-op if datagram connection. - (Fstatus_notify): Don't read input for a stream server socket or a - stopped network process. - (init_process): Initialize datagram_address array. - (syms_of_process): Intern and staticpro new variables, defsubr new - functions. +2008-01-29 Miles Bader -2002-03-16 Jason Rumney + * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake. - * w32fns.c (w32_to_all_x_charsets): Return correct type in - startup case. +2008-01-28 Jason Rumney -2002-03-16 Richard M. Stallman + * w32.c (stat): Don't double check for networked drive. - * xdisp.c (redisplay_internal, redisplay_windows): - Use list_of_error to call internal_condition_case_1. - (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2} - so as to catch all errors with no possibility of debugger redisplay. - (list_of_error): New variable. - (syms_of_xdisp): Init and staticpro it. +2008-01-28 Stefan Monnier - * print.c (print_object): Delete `\ ' from printed rep of frame. + * window.c (run_window_configuration_change_hook): New function. + Code extracted from set_window_buffer. Set the selected frame. + (set_window_buffer): Use it. + * window.h (run_window_configuration_change_hook): Declare. + * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer. -2002-03-15 Eli Zaretskii + * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM). - * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature, - until its implementation is fixed. +2008-01-27 Dan Nicolaescu -2002-03-14 Pavel Jan,Am(Bk + * Makefile.in: Remove references to unused macros. - * xfns.c (png_load): Remove unused variable `gamma_str'. +2008-01-26 Eli Zaretskii -2002-03-14 Richard M. Stallman + * w32.c (g_b_init_get_sid_sub_authority) + (g_b_init_get_sid_sub_authority_count): New static variables. + (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs. + (get_sid_sub_authority, get_sid_sub_authority_count): New functions. + (init_user_info): Use them to retrieve uid and gid. + Use 500/513, the Windows defaults, as Administrator's uid/gid. + (fstat): Use pw_uid and pw_gid from the_passwd structure for + st_uid and st_gid of the file. - * xfns.c (x_real_positions): Handle failure in XQueryTree. +2008-01-26 Jason Rumney -2002-03-14 Miles Bader + * w32.c (logon_network_drive): New function. + (stat): Use it. - * intervals.c (adjust_for_invis_intang): New function. - (set_point_both): Use `adjust_for_invis_intang' to do most of the - work for dealing with invisible+intangible regions. Do so before - and after both forward and backward movements, to handle both - front-sticky and rear-sticky cases. - * textprop.c (text_property_stickiness): Function moved here from - `editfns.c'. - * intervals.h (text_property_stickiness): New declaration. - * editfns.c (char_property_eq): Function removed. - (text_property_stickiness): Function moved to `textprop.c'. +2008-01-26 Chong Yidong -2002-03-13 Jason Rumney + * xdisp.c (pos_visible_p): Handle the case where charpos falls on + invisible text covered with an ellipsis. - * config.in: Add STRFTIME_NO_POSIX2. +2008-01-25 Richard Stallman - * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX - and %OX when underlying strftime does not. + * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and + jump back to beginning. Move some other initializations after that. + (Qwindow_text_change_functions, Vwindow_text_change_functions): + New variables. + (syms_of_xdisp): Init them. -2002-03-13 Stefan Monnier + * keyboard.c (read_char): Restore echo_message_buffer after redisplay. - * xterm.c (x_set_toolkit_scroll_bar_thumb) : - Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per - line) to avoid annoying flicker. - (xm_scroll_callback): Get rid of the now unnecessary kludge. - (XTread_socket): Mark it static. + * buffer.c (reset_buffer_local_variables): + Implement `permanent-local-hook'. + (Qpermanent_local_hook): New variable. + (syms_of_buffer): Init and staticpro it. - * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup. +2008-01-25 Michael Albinus -2002-03-13 Kim F. Storm + * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux. - * puresize.h (BASE_PURESIZE): Increase to 775000. +2008-01-25 Thien-Thi Nguyen -2002-03-12 Juanma Barranquero + * fns.c (Fclrhash): Return TABLE. - * editfns.c (syms_of_editfns): Fix typo. +2008-01-23 YAMAMOTO Mitsuharu -2002-03-12 Gerd Moellmann + * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p. + (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p + is set even without positional changes. + (x_scroll_bar_clear): Set bar->redraw_needed_p. - * xsmfns.c: Include stdio.h because termhooks.h needs it. - Include termopt.h for interrupt_input. + * macterm.h (struct scroll_bar): New member `redraw_needed_p'. -2002-03-11 Andreas Schwab +2008-01-23 Jason Rumney - * coding.c (syms_of_coding) : Doc fix. + * xterm.c (handle_one_xevent): Revert to counting chars not bytes. -2002-03-11 Gerd Moellmann + * w32term.c (w32_read_socket) : Decode characters outside + the unicode range available in MULE by locale-coding-system. + Improve dbcs lead byte detection. Set event timestamp and modifiers + earlier. - * xterm.c (note_mouse_movement): Put code for - x_autoselect_window_p in #if 0. +2008-01-23 YAMAMOTO Mitsuharu - * lread.c (Fload): Don't assume that message_with_string uses the - string it is given like a C string. + * mac.c (mac_emacs_pid) [MAC_OSX]: New variable. + [MAC_OSX] (init_mac_osx_environment): Initialize it. + [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0 + when used on child processes. -2002-03-10 Jan Dj,Ad(Brv +2008-01-21 Michael Albinus - * xterm.h (x_session_check_input, x_session_initialize): Declare. + * dbusbind.c (Fdbus_method_return_internal): Rename from + Fdbus_method_return. + (Fdbus_unregister_object): Move to dbus.el. + (Fdbus_call_method, Fdbus_method_return_internal) + (Fdbus_send_signal): Improve debug messages. - * xterm.c (XTread_socket): Add call to x_session_check_input and - x_session_have_connection. - (x_initialize): Add call to x_session_initialize. +2008-01-20 Martin Rudalics - * termhooks.h (enum event_kind): Add save_session_event. + * undo.c (undo_inhibit_record_point): New variable. + (syms_of_undo): Initialize it. + (record_point): Don't record point when undo_inhibit_record_point + is set. - * keyboard.c: Add Emacs event save_session_event. +2008-01-19 Stefan Monnier - * emacs.c (main): Add call to syms_of_xsmfns. + * process.c (list_processes_1): Don't use SCHARS on a nil buffer name. - * lisp.h (syms_of_xsmfns): Declare extern. + * xdisp.c (Qauto_hscroll_mode): New var. + (syms_of_xdisp): Initialize it. + (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each + window's buffer. + (hscroll_windows): Don't check automatic_hscrolling_p here. - * config.in: Add HAVE_X_SM. + * window.c (set_window_buffer): Don't unnecessarily reset hscroll and + vscroll if we're setting window-buffer to the value it already has. - * Makefile.in (LIBXT): Add -lSM -lICE - if HAVE_X_SM and not USE_X_TOOLKIT. - (XOBJ): New file xsmfns.c added. +2008-01-18 Dan Nicolaescu - * xsmfns.c: New file for X session management. + * m/intel386.h: Remove references to XENIX. -2002-03-09 Jason Rumney +2008-01-17 Andreas Schwab - * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not - read-only when setting modified time. + * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR + instead of HAVE_X86_64_LIB64_DIR. + * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise. -2002-03-08 Gerd Moellmann +2008-01-17 Glenn Morris - * xdisp.c (move_it_vertically_backward): At the end of the function, - when moving forward by lines, treat terminal frames specially. + * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according + to HAVE_X86_64_LIB64_DIR. - * keyboard.c (echo_char): Make sure to add a separator between - keys even if echo_dash hasn't been called. +2008-01-16 Dan Nicolaescu - * xdisp.c: Use new string macros. - (update_echo_area): Pass number of bytes to message3 instead of - number of chars. - (set_message_1): Don't access a string's size_byte directly. - (decode_mode_spec_coding): Use number of bytes of eoltype string - instead number of chars. + * s/irix3-3.h: + * s/irix4-0.h: + * s/386-ix.h: + * s/domain.h: + * s/hpux9-x11r4.h: + * s/hpux9shxr4.h: Remove files for systems no longer supported. - * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros. + * sysdep.c: Remove code containing references to symbols defined + by unsupported systems. -2002-03-08 Juanma Barranquero +2008-01-16 Glenn Morris - * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to - 24-bit. + * coding.c (select-safe-coding-system-function): Doc fix. -2002-03-06 Jason Rumney +2008-01-15 Glenn Morris - * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor. + * config.in: Revert 2008-01-13 change: this is a generated file. -2002-03-06 Gerd Moellmann +2008-01-13 Tom Tromey - * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now) - (cancel_echoing, echo_length, echo_truncate): Changed to - work with new kboard definition. - (echo_now): Use message3_nolog instead of message2_nolog. + * lisp.h: Fix typo. - * alloc.c (mark_kboards): Mark echo_string. +2008-01-13 Dan Nicolaescu - * keyboard.h (ECHOBUFSIZE): Removed. - (struct kboard): Member echoptr removed, member echobuf renamed - to echo_string. + * m/sequent-ptx.h: + * m/sequent.h: + * s/ptx.h: + * s/ptx4-2.h: + * s/ptx4.h: Remove files for systems no longer supported. - * xdisp.c (message_with_string): Use Fformat instead of doprnt and - message3 instead of message2 to display the message using STRING's - text properties. + * callproc.c (Fcall_process): Fix previous change. -2002-03-05 Andreas Schwab +2008-01-13 Dan Nicolaescu + + * unexsunos4.c: Remove file, system not supported anymore. + + * m/mips.h: + * m/intel386.h: + * callproc.c: + * config.in: + * ecrt0.c: + * emacs.c: + * fileio.c: + * frame.c: + * getpagesize.h: + * keyboard.c: + * lread.c: + * process.c: + * puresize.h: + * sysdep.c: + * systty.h: + * syswait.h: + * unexec.c: + * xdisp.c: + * alloc.c: Remove code containing references to symbols defined by + unsupported systems. + +2008-01-11 Kenichi Handa + + * coding.c (detect_coding_mask): Fix previous change. + +2008-01-09 Kenichi Handa + + * coding.c (detect_coding_iso2022): New arg + latin_extra_code_state. Allow Latin extra codes only + when *latin_extra_code_state is nonzero. + (detect_coding_mask): If there is a NULL byte, detect the encoding + as UTF-16 or binary. If Latin extra codes exist, detect the + encoding as ISO-2022 only when there's no other proper encoding is + found. - * xdisp.c (hscroll_margin): Change to EMACS_INT. +2008-01-08 YAMAMOTO Mitsuharu -2002-03-05 Per Abrahamsen + * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of + #ifdef MAC_OS. - * frame.c (default-frame-alist): Explain that setting it doesn't - affect existing frames. +2008-01-08 Richard Stallman -2002-03-05 Stefan Monnier + * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes. - * indent.c (skip_invisible): Fix my brain fart. +2008-01-06 Nick Roberts + + * keyboard.c (parse_menu_item): Don't enclose key bindings on + menu bar in parentheses. + +2008-01-06 Dan Nicolaescu + + * m/7300.h: + * m/acorn.h: + * m/alliant-2800.h: + * m/alliant.h: + * m/alliant1.h: + * m/alliant4.h: + * m/altos.h: + * m/amdahl.h: + * m/apollo.h: + * m/att3b.h: + * m/aviion-intel.h: + * m/aviion.h: + * m/celerity.h: + * m/clipper.h: + * m/cnvrgnt.h: + * m/convex.h: + * m/cydra5.h: + * m/delta88k.h: + * m/dpx2.h: + * m/dual.h: + * m/elxsi.h: + * m/f301.h: + * m/gould-np1.h: + * m/gould.h: + * m/i860.h: + * m/ibmps2-aix.h: + * m/ibmrt-aix.h: + * m/ibmrt.h: + * m/irist.h: + * m/is386.h: + * m/isi-ov.h: + * m/mega68.h: + * m/mg1.h: + * m/news-r6.h: + * m/news-risc.h: + * m/news.h: + * m/nh3000.h: + * m/nh4000.h: + * m/ns16000.h: + * m/ns32000.h: + * m/nu.h: + * m/orion.h: + * m/orion105.h: + * m/paragon.h: + * m/pfa50.h: + * m/plexus.h: + * m/pyramid.h: + * m/pyrmips.h: + * m/sh3el.h: + * m/sps7.h: + * m/sr2k.h: + * m/stride.h: + * m/sun1.h: + * m/sun2.h: + * m/sun3-68881.h: + * m/sun3-fpa.h: + * m/sun3-soft.h: + * m/sun3.h: + * m/sun386.h: + * m/symmetry.h: + * m/tad68k.h: + * m/tahoe.h: + * m/targon31.h: + * m/tek4300.h: + * m/tekxd88.h: + * m/tower32.h: + * m/tower32v3.h: + * m/ustation.h: + * m/wicat.h: + * m/xps100.h: + * s/cxux.h: + * s/cxux7.h: + * s/dgux.h: + * s/dgux4.h: + * s/dgux5-4-3.h: + * s/dgux5-4r2.h: + * s/esix.h: + * s/esix5r4.h: + * s/hiuxmpp.h: + * s/hiuxwe2.h: + * s/iris3-5.h: + * s/iris3-6.h: + * s/isc2-2.h: + * s/isc3-0.h: + * s/isc4-0.h: + * s/isc4-1.h: + * s/newsos5.h: + * s/newsos6.h: + * s/osf1.h: + * s/osf5-0.h: + * s/riscix1-1.h: + * s/riscix12.h: + * s/sco4.h: + * s/sco5.h: + * s/sunos4-0.h: + * s/sunos4-1.h: + * s/sunos413.h: + * s/sunos4shr.h: + * s/umax.h: + * s/unipl5-2.h: + * s/xenix.h: + * cxux-crt0.s: + * unexapollo.c: + * unexconvex.c: + * unexenix.c: + * unexsni.c: Remove files for systems no longer supported. + + * m/intel386.h: Remove references to unsupported systems. + + * w32.c (get_emacs_configuration): Remove reference to i860. + + * sysdep.c: Remove dead code. + +2008-01-05 Dan Nicolaescu + + * s/rtu.h: + * m/masscomp.h: Remove files. Platform is obsolete. + +2008-01-04 Michael Albinus + + * dbusbind.c (Fdbus_method_return): New function. + (xd_read_message): Add the serial number to the event. + (Fdbus_register_method): Activate the function. + +2008-01-03 Stefan Monnier + + * keyboard.c (read_key_sequence): Fix typo. + +2008-01-03 Michael Albinus + + * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE. + (xd_signature, xd_append_arg): Handle element type detection for + empty arrays. + (Fdbus_call_method, Fdbus_send_signal): Undo type casting for + SDATA () calls; this must be solved more general. + (Fdbus_register_signal): Use SBYTES instead of strlen. + +2008-01-03 Magnus Henoch + + * dbusbind.c (xd_append_arg): Use unsigned char instead of + unsigned int for byte values (necessary for big-endian platform). + (Fdbus_call_method): Handle the case of no returned arguments. + +2007-12-31 Tom Tromey (tiny change) + + * dbusbind.c (xd_read_message): Use non-static input_event struct. + +2007-12-31 Magnus Henoch + + * dbusbind.c (xd_signature): Signature of variant is just "v". + +2007-12-30 Michael Albinus + + * dbusbind.c: Fix several errors and compiler warnings. + Reported by Tom Tromey + (XD_ERROR, XD_DEBUG_MESSAGE) + (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)". + (xd_append_arg): Part for basic D-Bus types rewitten. + (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and + DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not + appropriate. + (xd_read_message): Return Qnil. Don't signal an error; it is not + useful during event reading. + (Fdbus_register_signal): Signal an error if the check for + FUNCTIONP fails. + (Fdbus_register_method): New function. The implementation is not + complete, the call of the function signals an error therefore. + (Fdbus_unregister_object): New function, renamed from + Fdbus_unregister_signal. The initial check signals an error, if + the object is not well formed. + +2007-12-30 Richard Stallman + + * textprop.c (get_char_property_and_overlay): + Signal error if POSITION is out of range in a buffer. + +2007-12-29 Martin Rudalics + + * w32fns.c (Fx_create_frame): Make copy of frame parameters + because the original parameters are in pure storage now. - * dispnew.c (sit_for): Don't wait if executing a kbd macro. +2007-12-24 YAMAMOTO Mitsuharu -2002-03-04 Stefan Monnier + * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area. - * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c, - * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h, - * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c, - * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition - and variables to use EMACS_INT instead of just int. +2007-12-22 Eli Zaretskii - * buffer.c (syms_of_buffer): Allow non-string `mode-name'. + * callint.c (syms_of_callint) : Add reference to + history-length in the doc string. -2002-03-04 Eli Zaretskii +2007-12-17 Jason Rumney - * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the - environment, pass it down with corrected value. + * w32fns.c (w32_wnd_proc) : Cast char to unsigned + before passing as wParam. -2002-03-04 Pavel Jan,Am(Bk +2007-12-22 Michael Albinus - * lread.c (read_filtered_event): Do not call start_hourglass - before returning. + * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE, + DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64, + DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE. + Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit + as number. + (Fdbus_call_method): Fix docstring. -2002-03-04 Juanma Barranquero +2007-12-21 Michael Albinus - * w32term.c (x_display_and_set_cursor): Fix typo. + * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE): + New macros. + (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE. + (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE. + Simplify. + (xd_signature): New function. + (xd_append_arg): Compute also signatures. Major rewrite. + (xd_retrieve_arg): Make debug messages friendly. + (Fdbus_call_method, Fdbus_send_signal): Extend docstring. + Check for signatures of arguments. + +2007-12-19 Michael Albinus + + * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean) + (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32) + (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64) + (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path) + (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant) + (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols. + (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro. + (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types. + (xd_retrieve_value): Remove. Functionality included in ... + (xd_append_arg): New function. + (Fdbus_call_method, Fdbus_send_signal): Apply it. + +2007-12-16 Michael Albinus + + * dbusbind.c (top): Include . + (Fdbus_call_method, Fdbus_send_signal): Apply type cast in + dbus_message_new_method_call and dbus_message_new_signal. + (Fdbus_register_signal): Rename unique_name to uname. + Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of + non-existing unique name. Fix typos in matching rule. Return an + object which is useful in Fdbus_unregister_signal. + (Fdbus_unregister_signal): Reimplementation, in order to remove + only the corresponding entry. + (Vdbus_registered_functions_table): Change the order of entries. + Apply these changes in xd_read_message and Fdbus_register_signal. + +2007-12-16 Andreas Schwab + + * fileio.c (Finsert_file_contents): Fix overflow check to not + depend on undefined integer overflow. -2002-03-03 Richard M. Stallman +2007-12-14 Jason Rumney - * fileio.c (Fmake_temp_name): Doc fix. + * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT + for characters above 127. -2002-03-03 Gary Wong +2007-12-13 Jason Rumney - * termcap.c [!emacs]: Replace ospeed for building standalone - libtermcap, for binary compatibility. + * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check + before dereferencing array. + (lookup_vk_code): Remove zero comparison. - * tparam.c [!emacs]: Move #define of bcopy to after string.h. +2007-12-14 Michael Albinus -2002-03-03 Richard M. Stallman + * dbusbind.c (xd_retrieve_value, xd_retrieve_arg) + (Fdbus_call_method, Fdbus_send_signal, xd_read_message): + Use `unsigned int' instead of `uint'. + (xd_read_message, Fdbus_register_signal): Split expressions into + multiple lines before operators "&&" and "||", according to the + GNU Coding Standards. - * xrdb.c (file_p): Rename arg `path' to `filename'. +2007-12-14 Eli Zaretskii - * abbrev.c (Fexpand_abbrev): Increment plist as use count - only if it is an integer. + * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT. - * xfns.c (png_load): Set screen_gamma based on f->gamma. - If png_get_sRGB gives an answer, call png_set_gamma - using the default image gamma value. +2007-12-12 Juri Linkov - * lread.c (read1): When reading from a file, default string to - multibyte only if it has some multibyte characters. + * buffer.c (Frename_buffer): In interactive spec replace + `read-buffer' with `read-string' that uses `buffer-name-history' + as history, and the current buffer's name as default. - * print.c (print_object): Output multibyte chars 128...255 - using \x even if ! print_escape_multibyte. +2007-12-10 Stefan Monnier - * xdisp.c (display_mode_element): Move the places where - bytepos, charpos, this, and lisp_string are set. - Use lisp_string to set bytepos. + * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of + manipulating the backtrace manually. + (make_lispy_event): Merge the ASCII and MULTIBYTE cases. + (struct backtrace, backtrace_list): Remove. + (command_loop_1): Remove dead var `no_direct'. - * xdisp.c (redisplay_internal): - Call clear_image_cache only if HAVE_WINDOW_SYSTEM. + * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also + preserve non-built-in buffer-local variables. + (Fkill_all_local_variables): Don't re-create&re-set permanent + buffer-local variables. - * xdisp.c (display_mode_element): Merge properties specified with - :propertize onto those that come with the string. +2007-12-09 Juri Linkov -2002-03-03 Eli Zaretskii + * buffer.c (Frename_buffer): Change interactive spec from "s" to + Lisp code that uses `read-buffer' with current buffer as default. - * xdisp.c (syms_of_xdisp) : Renamed from - automatic-hscrolling. Users changed. - : Renamed from automatic-hscroll-margin. - Users changed. - : Renamed from automatic-hscroll-step. Users changed. +2007-12-08 Michael Albinus -2002-03-02 Eli Zaretskii + * dbusbind.c (xd_read_message): Generate an event for every + registered handler. There might be several handlers registered + for the same signal. + (Fdbus_register_signal): Don't overwrite a registration for the + same signal. Add a new registration if handlers are different. + (Vdbus_registered_functions_table): Rework doc string. - * buffer.c (syms_of_buffer) : Doc fix. +2007-12-07 Michael Albinus -2002-03-02 Kim F. Storm + * dbusbind.c (Fdbus_get_unique_name, xd_read_message) + (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and + DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths. + (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal): + Unify argument lists. + (xd_read_message, Fdbus_register_signal): Reorder and extend event + arguments and hash table keys. Use unique name for service. + (Fdbus_unregister_signal): Remove checks. + (Vdbus_registered_functions_table): Fix doc string. - * window.c (Fminibuffer_selected_window): New function. - (syms_of_window): Defsubr it. +2007-12-05 Magnus Henoch -2002-03-01 Kim F. Storm + * process.c (make_process): Initialize pty_flag to 0. - * window.h (struct window): New member phys_cursor_width. +2007-12-05 Jason Rumney - * window.c (make_window, replace_window): Init phys_cursor_width. + * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly + specified XBMs. - * xterm.c (x_display_and_set_cursor): Blink box cursor using - hollow box cursor. Blink bar cursor using 1 pixel wide bar. +2007-12-05 Richard Stallman - * w32term.c (x_display_and_set_cursor): Blink box cursor using - hollow box cursor. Blink bar cursor using 1 pixel wide bar. + * xdisp.c (syms_of_xdisp) : Doc fix. - * lisp.h (GCPRO6): New macro. +2007-12-05 YAMAMOTO Mitsuharu - * process.c (Fopen_network_stream): Use GCPRO6. + * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]: + New variable. + (mac_try_close_socket) [MAC_OSX]: New function. + [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: + Update cfsockets_for_select. Replace invalid CFRunLoop source. -2002-03-01 Kim F. Storm + * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]: + Use mac_try_close_socket. - * process.c (Qconnect, Qfailed): New variables. - (syms_of_process): Intern and staticpro them. - (Fprocess_status): Document connect and failed return values. - [NON_BLOCKING_CONNECT]: New conditional. - (connect_wait_mask, num_pending_connects): New variables. - (status_message): Convert Qfailed status. - (Fopen_network_stream): Added support for non-blocking connect. - New optional args: filter, sentinel, non_blocking. Doc updated. - [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code. - (deactivate_process): Handle pending non-blocking connect. - (wait_reading_process_input): Poll for status of non-blocking - connects. Exec sentinel directly when connect succeeds. - (status_notify): Don't read process output if not yet connected. +2007-12-05 YAMAMOTO Mitsuharu -2002-02-28 Kim F. Storm + * unexmacosx.c (unrelocate): New argument BASE. Use it instead of + reloc_base. + (copy_dysymtab): Compute relocation base here. + (rebase_reloc_address) [__ppc64__]: New function. + (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be + changed. - * window.c (minibuf_selected_window): Renamed from - Vminibuf_selected_window. Users changed. - (syms_of_window): Staticpro it. +2007-12-05 Jason Rumney -2002-02-26 Kim F. Storm + * w32proc.c (sys_spawnve): Quote args with wildcards. - The following changes add a new Vminibuf_selected_window variable - which is similar to Vminibuf_scroll_window, but which is only set - on entry to the minibuffer (from a non-minibuffer window): +2007-12-05 YAMAMOTO Mitsuharu - * window.c (Vminibuf_selected_window): New variable. - (struct save_window_data): New member minibuf_selected_window. - (Fset_window_configuration): Restore Vminibuf_selected_window. - (Fcurrent_window_configuration): Save Vminibuf_selected_window. - Set minibuf_scroll_window member to nil if minibuf_level is 0. - (compare_window_configurations): Compare minibuf_selected_window. + * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and + __objc_* sections. + (unrelocate) [_LP64]: Set relocation base to address of data segment. - * window.h (Vminibuf_selected_window): Declare extern. +2007-12-05 Michael Albinus - * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first - entry to minibuffer or on entry from a non-minibuffer window. + * dbusbind.c (xd_read_message): Return value is a Lisp_Object. + Move check for Vdbus_registered_functions_table to + xd_read_queued_messages. + (xd_read_queued_messages): Protect xd_read_message calls by + internal_condition_case_1. - * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with - Vminibuf_selected_window instead of Vminibuf_scroll_window. +2007-12-04 Michael Albinus - * xdisp.c (init_iterator): Compare with Vminibuf_selected_window - instead of Vminibuf_scroll_window when deciding in which window - the region should be highlighted. Consequently, the region remains - highlighteded even when a completion buffer is also displayed. + * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from + Qdbus_system_bus and Qdbus_session_bus, respectively. + (Vdbus_intern_symbols): Remove. + (Vdbus_registered_functions_table): New hash table. + (XD_SYMBOL_INTERN_SYMBOL): Remove. + (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal): + Rewrite in order to manage registered functions by hash table + Vdbus_registered_functions_table. -2002-02-26 Eli Zaretskii +2007-12-03 Jan Djärv - * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08. + * xterm.c: Update URL to Window Manager Specification in comment. - * xselect.c (Qcompound_text_with_extensions): Renamed from - Qcompound_text_no_extensions. - (lisp_data_to_selection_data, syms_of_xselect): Use the new name. +2007-12-02 Michael Albinus -2002-02-26 Juanma Barranquero + * config.in (HAVE_DBUS): Add. - * w32proc.c (syms_of_ntproc): Doc fix. + * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined. + (ALL_CFLAGS): Add ${DBUS_CFLAGS}. + (obj): Add $(DBUS_OBJ). + (LIBES): Add $(DBUS_LIBS). + (dbusbind.o): New target. -2002-02-24 Pavel Jan,Am(Bk + * dbusbind.c: New file. - * intervals.h: Include "dispextern.h" unconditionally. + * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined. -2002-02-24 Jason Rumney + * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS". + (Qdbus_event): New Lisp symbol. + (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT. + (gobble_input): Call xd_read_queued_messages, reading D-Bus messages. + (keys_of_keyboard ): Define dbus-event. - * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc - and disp-table.elc. - (lisp): Add emacs-lisp/backquote.elc. + * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined. -2002-02-24 Kim F. Storm +2007-12-01 Richard Stallman - * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch: - The validation of the event type was too strict as it didn't - allow string events; buffer names are used in bindings for - menu-bar-select-buffer (see `menu-bar-update-buffers'). + * search.c (syms_of_search) : Doc fix. -2002-02-23 Kim F. Storm +2007-11-30 Jason Rumney - The following changes rework my patch of 2002-02-06 which - added command remapping by entering the commands directly into - the keymaps. Now, command remapping uses an explicit `remap' - prefix in the keymaps, i.e. [remap COMMAND]. + * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window. + (w32con_reset_terminal_modes): Clear screen buffer. + (w32_face_attributes): Don't use color indexes that are out of range. + Only reverse the default colors. - * keymap.c (Qremap, remap_command_vector): New variables. - (is_command_symbol): Remove function. - (Fdefine_key): No longer accept a symbol for KEY. - Added validation of [remap COMMAND] argument for KEY. - The DEF is no longer required to be a symbol when remapping a command. - (Fremap_command): New function to remap command through keymaps. - (Flookup_key): Perform command remapping initiated by - Fremap_command directly for speed. - (Fkey_binding): Use Fremap_command for command remapping. - (where_is_internal): Handle new command remapping representation. - (syms_of_keymap): Intern Qremap, initialize remap_command_vector, - staticpro them. Defsubr Fremap_command. + * xfaces.c (map_tty_color, tty_color_name): Remove special case for + WINDOWSNT. - * keymap.h (Fremap_command): Declare extern. - (is_command_symbol): Remove extern. + * w32console.c, w32term.h (vga_stdcolor_name): Remove. - * keyboard.c (command_loop_1): Use Fremap_command for command - remapping; now try command remapping for all symbols. +2007-11-29 Jason Rumney -2002-02-23 Eli Zaretskii + * w32console.c: Leave HAVE_WINDOW_SYSTEM defined. + (w32_face_attributes): Use Vtty_defined_color_alist to determine + if the terminal colors are initialized. + (unspecified_fg, unspecified_bg): Remove unused declarations. - * coding.h (run_pre_post_conversion_on_str): Add prototype. +2007-11-29 Andreas Schwab -2002-02-23 Jason Rumney + * keyboard.c (apply_modifiers): Fix typo. - * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion - on the string before encoding it. - (Fw32_get_clipboard_data): Run post-read-conversion on the string - after decoding it. +2007-11-29 Richard Stallman - * w32fns.c (w32_wnd_proc) : Fix last change. + * keymap.c (Fcurrent_local_map): Doc fix. -2002-02-23 Pavel Jan,Am(Bk +2007-11-28 Petr Salinger (tiny change) - * w32term.c (enter_timestamp): Remove unused static variable to - prevent warning. + * s/gnu-kfreebsd.h: New file. - * xterm.c (enter_timestamp): Put in #if 0 to prevent warning. +2007-11-28 Stefan Monnier -2002-02-23 Eli Zaretskii + * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): + Don't cast redundantly. - * w16select.c (Fw16_get_clipboard_data): Fix last change. + * keyboard.c (KEY_TO_CHAR): New macro. + (parse_modifiers, apply_modifiers): Accept integer arguments. + (read_key_sequence): Use them to unify the "shift->unshift" mapping + for chars and symbol keys. + After doing such remapping, apply function-key-map again. - * xselect.c (selection_data_to_lisp_data): Fix last change. +2007-11-27 Dan Nicolaescu -2002-02-22 Jason Rumney + * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not + compiled anymore. - * w32term.h (struct w32_output): New member menu_command_in_progress. +2007-11-26 Andreas Schwab - * w32menu.c (menubar_selection_callback): Free the menu and - clear the menu_command_in_progress flag. + * process.c (list_processes_1): Fix indentation level of the + command column. - * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize. - (menu_free_timer): New variable. - (MENU_FREE_ID, MENU_FREE_DELAY): New constants. - (w32_wnd_proc) : Handle menu_free_timer. - : Delay before freeing menu. Do nothing if a - menu command is in progress. - : Set the menu_command_in_progress flag. - Kill any menu_free_timer that is running. +2007-11-23 Andreas Schwab - * w32term.c (w32_text_out): Renamed from W32_TEXTOUT. - Call ExtTextOutA rather than ExtTextOut. + * editfns.c (Fformat): Handle %c specially since it requires the + argument to be of type int. -2002-02-22 Eli Zaretskii +2007-11-23 Markus Triska - * puresize.h (BASE_PURESIZE): Increase to 755000. + * emacs.c (main): Call init_editfns before init_process, since + init_process sets Vprocess_connection_type depending on OS release -2002-02-22 Eli Zaretskii +2007-11-22 Stefan Monnier - * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion - on the string before encoding it. - (Fw16_get_clipboard_data): Run post-read-conversion on the string - after decoding it. + * data.c (do_symval_forwarding): Use same code as in find_symbol_value. + (find_symbol_value): Use do_symval_forwarding. -2002-02-22 Eli Zaretskii + * data.c (set_internal): Set the value in the `cons-cell' (for + Buffer_Local_values) not only for frame-local variables. - Support for ICCCM Extended Segments in X selections: +2007-11-22 Andreas Schwab - * xselect.c : New variable. - (syms_of_xselect): Intern and staticpro it. - (selection_data_to_lisp_data): Run post-read-conversion on decoded - selection text. - (lisp_data_to_selection_data): If next-selection-coding-system is - compound-text-no-extensions, set the type of selection to be - compound-text. + * data.c (Fnumber_to_string): Add cast when passing EMACS_INT + values to sprintf. + * keymap.c (Fsingle_key_description): Likewise. + * print.c (print_object): Likewise. - * xterm.h (x_encode_text): Update prototype. +2007-11-22 Jan Djärv - * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all - callers changed. If SELECTIONP is non-zero, run the - pre-write-conversion function before encoding the selection text. + * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if + file for image is nil. -2002-02-21 Kim F. Storm +2007-11-22 Dan Nicolaescu - * frame.c (syms_of_frame): Change mouse-highlight default to t. + * term.c: Include stdarg.h. + (fatal): Implement using varargs. + * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change). - * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]: - Correct composing of language-change event. +2007-11-21 Stefan Monnier -2002-02-20 Kim F. Storm + * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field. + * data.c (store_symval_forwarding): Get type from buffer_objfwd. + Update call to buffer_slot_type_mismatch. + * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove. + (buffer_slot_type_mismatch): Update. + * buffer.c (buffer_local_types): Remove. + (buffer_slot_type_mismatch): Get the symbol and type as arguments. + (defvar_per_buffer): Set the type in the buffer_objfwd. - * keyboard.c (menu_bar_items): Don't include keymap or local-map - bindings at PT when building menu (the menu is not updated often - enough for this to work reliable). - (tool_bar_items): Likewise. - (current_active_maps): Removed unused (and buggy) function. +2007-11-21 Jason Rumney -2002-02-20 Pavel Jan,Am(Bk + * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font): + CreateFileMapping returns NULL on failure. - * xfns.c (gif_load): Use correct width and height for GIF images. +2007-11-21 Stefan Monnier -2002-02-19 Eli Zaretskii + * search.c (Fset_match_data): Remove the `evaporate' feature. + (unwind_set_match_data): Don't use the `evaporate' feature. - * floatfns.c (Fatan): Accept an optional second arg and call - atan2 if passed 2 args. +2007-11-21 Jason Rumney -2002-02-18 Jason Rumney + * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type. - * w32term.c (glyph_rect): Determine the row and glyph more precisely. + * w32console.c (w32con_write_glyphs): Remove unused variables. -2002-02-17 Jason Rumney +2007-11-20 Dan Nicolaescu - * w32term.c (x_autoselect_window_p): New variable. - (syms_of_w32term): DEFVAR_BOOL and initialize it. - (note_mouse_movement): Use it. + * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor. - * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero. + * s/darwin.h (MULTI_KBOARD): Remove. - * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p. + * macfns.c (x_create_tip_frame, Fx_create_frame) + (x_create_tip_frame): Don't deal with MULTI_KBOARD. - * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth): - New variables. - (syms_of_w32fns): Intern and staticpro them. - (x_frame_parms) <"fullscreen">: New parameter. - (x_fullscreen_move, x_set_fullscreen): New functions. - (x_set_frame_parameters): Support Qfullscreen. - (x_real_positions): Save x/y_pixels_diff frame params. - (x_figure_window_size): Support full-screen frames. - (Fx_create_frame): Default the fullscreen parameter. - - * w32term.c (x_check_fullscreen, x_check_fullscreen_move) - (x_fullscreen_adjust): New functions. - (w32_read_socket) : Don't resize to - fullscreen. Call x_check_fullscreen_move, and set the - want_fullscreen member of output_data.w32 - : Call x_check_fullscreen. - - * w32term.h: New enum for FULLSCREEN_* constants. - (struct w32_output): New members want_fullscreen, x_pixels_diff, - y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff. - (x-fullscreen-adjust): New prototype. - -2002-02-17 Kim F. Storm - - * frame.c (Vmouse_highlight): New variable. - (syms_of_frame): DEFVAR_LISP it. - - * frame.h (Vmouse_highlight): Declare extern. - - * xterm.h (struct x_display_info): Add mouse_face_hidden. - - * xterm.c (disable_mouse_highlight): Removed variable. - (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil. - (show_mouse_face): Don't show highlight if mouse_face_hidden is set. - (XTread_socket): Turn mouse_face_hidden off after mouse movement, - and on after keyboard input. - (x_term_init): Initialize mouse_face_hidden. - - * msdos.h (struct display_info): Add mouse_face_hidden. - - * msdos.c (disable_mouse_highlight): Removed variable. - (show_mouse_face): Don't show highlight if mouse_face_hidden is set. - (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil. - (internal_terminal_init): Initialize mouse_face_hidden. - (dos_rawgetc): Turn mouse_face_hidden off after mouse movement, - and on after keyboard input. - - * w32term.h (struct w32_display_info): Add mouse_face_hidden. - - * w32term.c (disable_mouse_highlight): Removed variable. - (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil. - (show_mouse_face): Don't show highlight if mouse_face_hidden is set. - (w32_read_socket): Turn mouse_face_hidden off after mouse movement, - and on after keyboard input. - (w32_initialize_display_info): Initialize mouse_face_hidden. - -2002-02-16 Eli Zaretskii - - * msdos.c (last_mouse_window): New variable. - (dos_rawgetc): Fix last change--if the mouse is in the same window - as recorded in last_mouse_window, don't select this window. - - * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el. - - * msdos.c (x_autoselect_window_p): New variable. - (syms_of_msdos): Defvar it. - (dos_rawgetc): If x_autoselect_window_p is set, select the window in - which the last mouse movement occured, unless it is already selected. - - * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step): - New variables. - (syms_of_xdisp): DEVFAR them. - (hscroll_window_tree): Use automatic_hscroll_margin and - Vautomatic_hscroll_step to compute the amount of window scrolling. +2007-11-19 Stefan Monnier -2002-02-16 Pavel Jan,Am(Bk + * buffer.c (Fbuffer_local_value): Remove redundant test. + (swap_out_buffer_local_variables): Swap out binding in `buffer' rather + than in `current-buffer' to match the comment. + Do the swap using swap_in_global_binding. - * xterm.c (x-autoselect-window): New variable. - (note_mouse_movement): Use it. + * data.c (store_symval_forwarding, set_internal): + * eval.c (specbind): Remove dead code. - * keyboard.c: Do not include "systime.h" twice. + * coding.c (detect_coding, Fupdate_coding_systems_internal): + * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE + Since we do not want to see internal Lisp_*fwd objects here. -2002-02-15 Andreas Schwab +2007-11-18 Jan Djärv - * puresize.h (PURESIZE_RATIO): Increase to 9/5. + * sysdep.c (init_system_name): Use getaddrinfo if available. - * alloc.c (NSTATICS): Increase to 1280. + * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click) + (x_scroll_bar_note_movement): start, end, with, height in struct + scroll_bar are integers and not Lisp_Object, so remove XINT for them. -2002-02-15 Kai Gro,A_(Bjohann +2007-11-17 Dan Nicolaescu - * alloc.c (NSTATICS): Bump to 1026. + * puresize.h (BASE_PURESIZE): Increase to 1190000. - * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym) - (Vx_super_keysym): New variables. - (syms_of_xterm): DEFVAR_LISP them. - (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the - variables to determine which keys to use for the various modifiers. +2007-11-16 Stefan Monnier -2002-02-13 Kim F. Storm + * buffer.h (struct buffer): Move `undo_list' back to before `name'. + This undoes Richard's change of 14-Oct-2002. + + * alloc.c (allocate_other_vector): + * lisp.h (allocate_other_vector): Remove. + + * window.c (struct save_window_data): Move non-lisp data to the end + and make it `int' rather than Lisp_Object. + (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR. + Done wrap/unwrap integer values. + (Fset_window_configuration, compare_window_configurations): + Update use of fields to their new types. + + * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data. + Turn integer fields into `int'. Merge x_window_low and x_window_high. + (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW) + (SET_SCROLL_BAR_X_WINDOW): Remove. + (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET): + Access the new x_window field directly. + * xterm.c (x_scroll_bar_create): Use a pseudovector. + Don't wrap/unwrap integers into Lisp_Objects. + (XTset_vertical_scroll_bar, x_scroll_bar_handle_click) + (x_scroll_bar_report_motion): + Don't wrap/unwrap integers into Lisp_Objects. + (x_term_init): Use SDATA. + (x_window_to_scroll_bar, x_create_toolkit_scroll_bar) + (x_scroll_bar_set_handle, x_scroll_bar_remove) + (XTset_vertical_scroll_bar, x_scroll_bar_expose) + (x_scroll_bar_report_motion, x_scroll_bar_clear): + * xfns.c (x_set_background_color): + * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb): + Access the new x_window field directly. + + * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h. + (allocate_pseudovector): Make non-static. + + * lisp.h (enum pvec_type): New tag PVEC_OTHER. + (allocate_pseudovector): Declare. + (ALLOCATE_PSEUDOVECTOR): Move from alloc.c. - * window.c (Vmode_line_in_non_selected_windows): Removed. - (mode_line_in_non_selected_windows): New variable. - (syms_of_window): DEFVAR_BOOL it. +2007-11-15 Andreas Schwab - * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): - Use mode_line_in_non_selected_windows. - (mode_line_in_non_selected_windows): Declare extern. - (Vmode_line_in_non_selected_windows): Removed extern. + * editfns.c (Fformat): Correctly format EMACS_INT values. + Also take precision into account when formatting an integer. -2002-02-13 Richard M. Stallman + * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration. - * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector) - (Fthis_single_command_keys, Fthis_single_command_raw_keys) - (Fclear_this_command_keys): Doc fixes. +2007-11-15 Stefan Monnier - * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face) - (update_face_from_frame_parameter): Increment face_change_count - and windows_or_buffers_changed to force redisplay using changed faces. + * keyboard.c (Fevent_symbol_parse_modifiers): New function. + (syms_of_keyboard): Defsubr it. - * xdisp.c (QCpropertize): New variable. - (mode_line_proptrans_alist): New variable. - (display_mode_element): New arg PROPS; all calls changed. - Implement this, for strings. - Handle literal output of strings by sharing the - main-line code for strings, using local var `literal'. - Handle :propertize feature. - (syms_of_xdisp): Initialze and staticpro QCpropertize and - mode_line_proptrans_alist. + * data.c (swap_in_global_binding): Fix longstanding bug where + store_symval_forwarding was not called with the right second argument, + thus causing objfwd-ing from being dropped. -2002-02-11 Kim F. Storm +2007-11-14 Juanma Barranquero - * window.c (Vmode_line_in_non_selected_windows): New variable. - (syms_of_window): DEFVAR_LISP it. + * macfns.c (Fx_create_frame, Fx_display_pixel_width) + (Fx_display_pixel_height, Fx_display_planes) + (Fx_display_color_cells, Fx_server_max_request_size) + (Fx_server_vendor, Fx_server_version, Fx_display_backing_store) + (Fx_display_visual_class, Fx_display_save_under): + * w32fns.c (Fx_create_frame, Fx_display_pixel_width) + (Fx_display_pixel_height, Fx_display_planes) + (Fx_display_color_cells, Fx_server_max_request_size) + (Fx_server_vendor, Fx_server_version, Fx_display_screens) + (Fx_display_mm_height, Fx_display_mm_width) + (Fx_display_backing_store, Fx_display_visual_class) + (Fw32_select_font, Fx_display_save_under): + * xfns.c (Fx_create_frame, Fx_display_pixel_width) + (Fx_display_pixel_height, Fx_display_planes) + (Fx_display_color_cells, Fx_server_max_request_size) + (Fx_server_vendor, Fx_server_version, Fx_display_backing_store) + (Fx_display_save_under): Fix typos in docstrings. - * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro. - (CURRENT_MODE_LINE_FACE_ID): Use it. - (Vmode_line_in_non_selected_windows): Declare extern. +2007-11-14 Juanma Barranquero - * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3 - to get mode line face. + * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values + corresponding to deleted entries; they are an implementation detail. + (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits): + Remove variables. + (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames) + (w32_pass_multimedia_buttons_to_system, w32_strict_painting) + (Vw32_charset_info_alist, w32_to_x_color, w32_init_class) + (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers) + (w32_grabbed_keys, cancel_all_deferred_msgs): Make static. + (Fw32_define_rgb_color, Fw32_load_color_file) + (syms_of_w32fns) : + Fix typos in docstrings. + (Fx_server_version): Reflow docstring. + (Fw32_shell_execute): Doc fixes. -2002-02-11 Eli Zaretskii +2007-11-13 Juanma Barranquero - * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these - variables; cus-start.el doesn't need them anymore. + * w32fns.c (Fw32_register_hot_key): Don't try to register hot key + if w32_parse_hot_key returned nil. -2002-02-09 Kim F. Storm +2007-11-10 Stefan Monnier - * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap - reduction. This fixes a display problem where stray newlines were - inserted in the window (corrected by C-l). Clarified code (IMHO). + * xdisp.c (load_overlay_strings): Fix copy&paste typo. -2002-02-09 Eli Zaretskii +2007-11-09 Jason Rumney - * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change. + * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define. - * xdisp.c (display_mode_lines): Fix last change. + * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT. -2002-02-09 Jason Rumney + * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]: + Remove W32_SCROLL_BAR_CLICK_EVENT. - * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows - match each other. - (w32_load_system_font): Prevent Cleartype fonts from loading. - (Fx_show_tip): Ensure tip frames are above other topmost windows. + * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise. + Add MULTIMEDIA_KEY_EVENT. -2002-02-09 Kim F. Storm + * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys. + (lispy_multimedia_keys) [WINDOWSNT]: New array. + (make_lispy_event) [WINDOWSNT]: Use it to translate + MULTIMEDIA_KEY_EVENT. - * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro. - (CURRENT_MODE_LINE_HEIGHT): Use it. - (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID. + * w32term.h (WM_APPCOMMAND): Define if not already. + (GET_APPCOMMAND_LPARAM): Likewise. - * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID. - (pos_visible_p, handle_face_prop): Likewise. - (display_mode_lines): Likewise, but for the real selected window. - (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID. + * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from + WM_APPCOMMAND. - * xfaces.c (Qmode_line_inactive): New face variable for mode-line - in non-selected windows. - (realize_basic_faces): Realize it. - (syms_of_term): Intern and staticpro it. + * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option. + (syms_of_w32fns): Export and initialize it. + (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket. -2002-02-08 Kim F. Storm +2007-11-09 Chong Yidong - * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK): - Changed mail addresses to emacs-devel@gnu.org. + * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE + twice. -2002-02-08 Eli Zaretskii + * xdisp.c (handle_face_prop): Fix last change. - * fileio.c (Fsubstitute_in_file_name): If the file name includes - ~user, and there's no such user, don't discard everything before ~user. +2007-11-09 Richard Stallman - * floatfns.c (Fround): Doc fix. + * xdisp.c (handle_face_prop): Test for strings that came from overlays, + not just for after-strings and before-strings. + Call face_for_overlay_string and pass the overlay to it. + (handle_display_prop): Determine whether property came from an overlay. + Pass OVERLAY arg to handle_single_display_spec. + (handle_single_display_spec): New arg OVERLAY sets it->from_overlay. + (load_overlay_strings): Fill in it->string_overlays. + (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays. -2002-02-08 Pavel Jan,Am(Bk + * xfaces.c (face_for_overlay_string): Function renamed from + face_at_buffer_position_no_overlays, and add arg OVERLAY. - * sysdep.c (init_system_name): Put unused variable `p' in #if 0. + * dispextern.h (struct it): New elt string_overlays. + New elt from_overlay, also in stack. + Rearrange a few elements. + (face_for_overlay_string): Decl renamed from + face_at_buffer_position_no_overlays, and add argument. -2002-02-07 Stefan Monnier +2007-11-09 Richard Stallman - * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c). + * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays + to get the base face for an overlay string. -2002-02-07 Kim F. Storm + * dispextern.h (face_at_buffer_position_no_overlays): Add decl. - * keymap.c (where_is_internal): Only check whether definition is - remapped if it fulfills is_command_symbol. + * xfaces.c (face_at_buffer_position_no_overlays): New function. -2002-02-07 Andreas Schwab + * xdisp.c (handle_stop): Move some code out of loop. - * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k. +2007-11-09 YAMAMOTO Mitsuharu - * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4. + * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes): + Fix conversion from Lisp object to ATSUFontID. -2002-02-06 Kim F. Storm +2007-11-09 Jason Rumney - * keymap.c (Fdefine_key): Allow symbol as KEY argument for - defining command remapping. Doc updated. - (Flookup_key): Remap command through keymap if KEY is a symbol. - (is_command_symbol): New function. - (Fkey_binding): Use it. New optional argument NO-REMAP. - Doc updated. Callers changed. Perform command remapping via - recursive call unless that arg is non-nil. - (where_is_internal): New argument no_remap. Callers changed. - Call recursively to find original key bindings for a remapped - comand unless that arg is non-nil. - (Fwhere_is_internal): New optional argument NO-REMAP. - Doc updated. Callers changed. Pass arg to where_is_internal. + * xdisp.c (Fformat_mode_line): Do nothing when noninteractive. - * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype. - (is_command_symbol): Add prototype. +2007-11-09 YAMAMOTO Mitsuharu - * keyboard.c (Vthis_original_command): New variable. - (syms_of_keyboard): DEFVAR_LISP it. - (command_loop_1): Set it, and perform command remapping. + * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge): + Don't assume regions are aligned to page boundary. + (print_load_command_name): Add LC_UUID if defined. -2002-02-06 Pavel Jan,Am(Bk +2007-11-09 Richard Stallman - * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally. + * emacs.c (syms_of_emacs) : Reflow docstring. -2002-02-06 Jason Rumney +2007-11-07 Jason Rumney - * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change. + * s/windows95.h: Remove. -2002-02-06 Eli Zaretskii +2007-11-06 Jan Djärv - * charset.c (get_charset_id): Use if-else instead of ?:. + * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and + abort with a message on unhandled store_type values. -2002-02-06 Richard M. Stallman +2007-11-01 Jan Djärv - * filelock.c (S_ISLNK): Define if not defined. + * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h: + Remove HAVE_X11R5 and HAVE_X11R4. -2002-02-03 Richard M. Stallman +2007-11-01 Dan Nicolaescu - * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg. + * Makefile.in: Remove references to sunfns.c and sunfns.o. - * lread.c (read1): Redesign strategy for force_multibyte and - force_singlebyte. Now is_multibyte records whether read_buffer - is multibyte. Encountering any multibyte character makes it so. +2007-11-01 Johan Bockgård -2002-02-02 Stefan Monnier + * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string): + Don't set s->stippled_p here, since it has already been set by + x_set_glyph_string_gc from x_draw_glyph_string. - * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and - with the same sequence, map that sequence to f10 rather than f0. +2007-11-01 Dan Nicolaescu -2002-02-03 Andreas Schwab + * sunfns.c: Remove file - * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the - latter never being defined on GNU/Linux. + * m/sun386.h: + * m/sun2.h: + * m/sparc.h: Remove Sun windows code. -2002-02-02 Eli Zaretskii +2007-10-31 Stefan Monnier - * xfaces.c (realize_default_face): Don't set the weight and slant of - the default face to Qnormal, unless these attributes are unspecified. + * keyboard.c (syms_of_keyboard): Initialize the initial_kboard. + (init_keyboard): Set current_kboard's window-system to nil. + (tty_read_avail_input): Typo. + * frame.c (make_initial_frame): Don't initialize the initial_kboard. -2002-02-02 Pavel Jan,Am(Bk +2007-10-31 Dan Nicolaescu - * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]: - Call cancel_hourglass unconditionally. + * s/usg5-4.h: + * s/usg5-3.h: + * s/ptx.h: + * m/is386.h: + * m/ibmps2-aix.h: + * Makefile.in: Remove all mentions of X10 - * eval.c (Fsignal): Remove duplicated declaration of - the variable `display_hourglass_p'. + * dispnew.c (syms_of_display): Don't mention version 10. -2002-01-31 Richard M. Stallman +2007-10-28 Juanma Barranquero - * editfns.c (region_limit): Nicer error message. + * makefile.w32-in (OBJ1): Remove abbrev.$(O). + ($(BLD)/abbrev.$(O)): Remove. - * coding.c (decode_composition_emacs_mule): - Give up if NCOMPONENT gets too large to index `component'. +2007-10-28 Stefan Monnier - * callint.c (check_mark): New arg to specify clearer error message. - Callers changed. + Rewrite abbrev.c in Elisp. + * image.c (Qcount): Don't declare as extern. + (syms_of_image): Initialize and staticpro `Qcount'. + * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions. + * emacs.c (main): Don't call syms_of_abbrev. + * Makefile.in (obj): Remove abbrev.o. + (abbrev.o): Remove. + * abbrev.c: Remove. -2002-01-27 Richard M. Stallman +2007-10-26 Martin Rudalics - * minibuf.c (Fcompleting_read): Doc fix. + * window.c (window_min_size_2): Don't count header-line. -2002-01-27 Pavel Jan,Am(Bk +2007-10-26 Dan Nicolaescu - * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function) - (Fread_variable, Fread_buffer, minibuffer-completion-confirm): - Fix doc-strings. + * frame.h (struct frame): Move all bit fields after the first bit + field to take advantage of the available space. Group all the + chars together to reduce wasted space due to padding. -2002-01-26 Richard M. Stallman +2007-10-26 Juanma Barranquero - * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively. + * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings. - * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively - and scroll_up_aggressively. + * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings) + (Vdead, dont_register_blocks, staticvec, staticidx, interval_block) + (n_interval_blocks, init_strings, check_string_bytes, check_sblock) + (init_float, free_float, n_cons_blocks, init_cons, all_vectors) + (n_vectors, symbol_block, symbol_block_index, symbol_free_list) + (n_symbol_blocks, init_symbol, marker_block, marker_free_list) + (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float) + (last_marked, mark_object_loop_halt): Make static. -2002-01-26 Pavel Jan,Am(Bk + * frame.c (syms_of_frame) : + Fix typo in docstring. - * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes. +2007-10-25 Juanma Barranquero -2002-01-25 Stefan Monnier + * w32.c (init_environment): Fix tiny memory leak. + (w32_get_resource): Remove unused variable `ok'. - * textprop.c (Fnext_property_change, Fnext_single_property_change) - (Fprevious_property_change, Fprevious_single_property_change): - Stay within the narrowed-buffer boundaries. +2007-10-25 Stefan Monnier -2002-01-25 Eli Zaretskii + Make `window-system' into a keyboard-local variable (rather than + frame-local as done originally by multi-tty). - * term.c (Ftty_display_color_cells): New function. - (syms_of_term): Defsubr it. - (Ftty_display_color_cells, Ftty_display_color_p): Change the - argument name to DISPLAY. Doc fix. + * keyboard.h (struct kboard): Add Vwindow_system. + * keyboard.c (init_kboard): Set a default for Vwindow_system. + (mark_kboards): Mark Vwindow_system. - * dispextern.h: Add prototype for set_tty_color_mode and - tty_setup_colors. + * dispnew.c (syms_of_display) : Declare terminal-local. + (init_display): Don't set the obsolete `window-system' frame-param. -2002-01-24 Jason Rumney + * xterm.c (x_term_init): + * w32term.c (w32_create_terminal): + * term.c (init_tty): Set Vwindow_system. + * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the + multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system. - * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt. - If region left to draw is not what was expected, mark the frame as - garbaged. + * xfns.c (Fx_create_frame, x_create_tip_frame): + * w32fns.c (Fx_create_frame, x_create_tip_frame): + * macfns.c (Fx_create_frame): + Don't set the obsolete `window-system' frame-param. - * w32fns.c (w32_wnd_proc) : Initialize update_rect. - Combine the regions returned by BeginPaint and GetUpdateRect. + * frame.h (Qwindow_system): Remove. + * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well. + (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param. -2002-01-23 Jason Rumney +2007-10-24 Richard Stallman - * w32term.c (x_update_window_begin): Only hide caret if - w32_use_visible_system_caret is set. - (x_update_window_end): Only show caret if - w32_use_visible_system_caret is set. - (syms_of_w32term): Handle SystemParametersInfo call failing. + * frame.c (x_figure_window_size): For fullscreen case, + set USPosition | PPosition without clobbering rest of window_prompting. - * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd. + * keyboard.c (Fcurrent_idle_time): Doc fix. -2002-01-22 Richard M. Stallman + * print.c (Fwith_output_to_temp_buffer): Doc fix. - * unexelf.c (unexec): Define n so as to cause compilation error - for the code where people have often written n instead of nn. +2007-10-23 Stefan Monnier - * .gdbinit (hookpost-run): Defined. + * process.c (unwind_request_sigio): Only define if __ultrix__. -2002-01-22 Jan Dj,Ad(Brv + * callproc.c (child_setup): Remove spurious *. - * xfns.c (x_set_frame_parameters): Typo in previous fix corrected. + * lisp.h (Fget_text_property): Declare. + (have_menus_p): Declare it here rather than in sys-dep header files. + * macterm.h (have_menus_p): + * msdos.h (have_menus_p): + * xterm.h (have_menus_p): Remove. -2002-01-21 Jan Dj,Ad(Brv + * data.c (Fmake_variable_buffer_local, Fmake_local_variable) + (Fmake_variable_frame_local): Just check the variable's const-ness + rather than checking nil or t. - * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust - if fullscreen is being set. +2007-10-22 Jason Rumney -2002-01-21 Pavel Jan,Am(Bk + * w32fns.c: Include math.h. + (w32_abort): Declaration moved to nt/config.nt. - * minibuf.c (Fminibuffer_contents) - (Fminibuffer_contents_no_properties, Fread_from_minibuffer) - (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes. + * s/ms-w32.h (HAVE_STDLIB_H): Define. + (abort): Redefinition moved to nt/config.nt. -2002-01-21 Richard M. Stallman + * m/windowsnt.h: Remove. - * window.c (check_frame_size): Fix minimum height calculation. +2007-10-22 Juanma Barranquero -2002-01-20 Ken Raeburn + * emacs.c (Fdump_emacs): Fix typo in message. + (syms_of_emacs) : Fix typo in docstring. + : Reflow docstring. - * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window - height before comparison. - (WINDOW_WANTS_HEADER_LINE_P): Likewise. +2007-10-22 Juri Linkov -2002-01-20 Jason Rumney + * minibuf.c: Allow minibuffer default to be a list of default values. + With empty input use the first element of this list as returned default. + (string_to_object) + (read_minibuf_noninteractive): If defalt is cons, set val to its car. + (read_minibuf): If defalt is cons, set histstring to its car. + (Fread_string): If default_value is cons, set val to its car. + (Fread_buffer): If def is cons, use its car. + (Fcompleting_read): If defalt is cons, set val to its car. - * w32term.c (w32_system_caret_width): Remove. - (w32_use_visible_system_caret): New user flag. - (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether - Windows reports a screen reader running. - (x_update_window_begin): Hide the system caret. - (x_update_window_end): Show the system caret. - (x_display_and_set_cursor): Don't draw a cursor when - w32_use_visible_system_caret is set. Do not adjust width. +2007-10-21 Michael Albinus - * w32fns.c (w32_visible_system_caret_hwnd): New static variable. - (w32_wnd_proc) : Set it. - : Arrange for system caret to be visible if - the user requests it. Use system default width when creating. - : Handle new messages. + * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid. - * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET): - New window messages. +2007-10-20 Juanma Barranquero -2002-01-20 Richard M. Stallman + * doc.c (Fdocumentation): Check for advice in all cases. - * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1. +2007-10-19 Chong Yidong -2002-01-20 Pavel Jan,Am(Bk + * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags. - * doprnt.c (doprnt1): Fix typos in error call. +2007-10-19 Richard Stallman -2002-01-20 Eli Zaretskii + * doc.c (Fdocumentation): Check for and handle an advised function. - * unexelf.c (unexec) [__sgi]: Support the .got sections. +2007-10-19 Juanma Barranquero -2002-01-20 Jason Rumney + * process.c (Fset_process_filter): Doc fix. - * w32term.c (w32_native_per_char_metric): Don't trust the metrics - that Windows returns. If a double check fails, try to guess how - ExtTextOut is going to act. +2007-10-18 Stefan Monnier - * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp - in place of stricmp. - (w32_list_synthesized_fonts): Removed. - (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions. - (struct enumfont_t): New element; list. - (enum_font_cb2): List all style and charset variations of a font. - (Fw32_select_font): New optional argument; include_proportional. - Exclude vertical fonts. Exclude proportional fonts unless - include_proportional is non-nil. - (w32_enable_synthesized_fonts): Change to a boolean. - (Fw32_send_sys_command): Doc fix. + * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty + which caused key-translation-map to applied repeatedly (thus breaking + double-mode). -2002-01-19 Pavel Jan,Am(Bk +2007-10-17 Stefan Monnier - * dispnew.c (update_frame): Move the variable `tem' to the block - where it is used. + * xselect.c (x_own_selection, x_handle_selection_clear) + (x_clear_frame_selections): + * w32menu.c (list_of_panes, list_of_items): + * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list): + * textprop.c (validate_plist, interval_has_all_properties) + (interval_has_some_properties, interval_has_some_properties_list) + (add_properties, text_property_list): + * process.c (Fget_buffer_process, list_processes_1, status_notify): + * minibuf.c (Fassoc_string): + * macselect.c (x_own_selection, x_clear_frame_selections) + (Fx_disown_selection_internal): + * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree): + Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r. -2002-01-19 Jason Rumney +2007-10-17 Chong Yidong - * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around - call to face-set-after-frame-default. + * process.c: Link to libs for calling res_init() if available. + (Fmake_network_process): Call res_init() before getaddrinfo or + gethostbyname, if possible. -2002-01-18 Richard M. Stallman +2007-10-17 Stefan Monnier - * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1. - (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room. + * lread.c (read1): Set pvectype for char_tables. -2002-01-17 Richard M. Stallman + * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY) + (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE): + Add type checks. + (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove. - * window.c (enlarge_window): When exceeding size of parent, - directly delete all the siblings instead of trying to resize it. + * alloc.c (free_misc): Use XMISCTYPE. + (live_misc_p, gc_sweep): Use Lisp_Misc_Any. -2002-01-17 Pavel Jan,Am(Bk +2007-10-17 Glenn Morris - * term.c (set_tty_color_mode): Remove unused variable `tem'. + * minibuf.c (Qcompletion_ignore_case): New Lisp_Object. + (syms_of_minibuf): Add Qcompletion_ignore_case. + * dired.c (Qcompletion_ignore_case): Change to external. + (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case. + * fileio.c (Qcompletion_ignore_case): New external Lisp_Object. + (Fread_file_name): Use it rather than intern'ing. -2002-01-16 Henrik Enberg + * coding.c (Qcompletion_ignore_case): New external Lisp_Object. + (Fread_coding_system): Ignore case of user input. - * lread.c (init_lread): Move the installed-lisp dirs later in the path. +2007-10-16 YAMAMOTO Mitsuharu -2002-01-16 Kim F. Storm + * xdisp.c (handle_display_prop): Ignore display specs after + replacing one when string text is being replaced. + (handle_single_display_spec): Pretend as if characters with display + property haven't been consumed only when buffer text is being replaced. - * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row - is invisible. This can happen if cursor is on top line of a - window, and we switch to a buffer with a header line. +2007-10-16 Stefan Monnier + + * xfns.c (Fx_create_frame, Fx_display_list): + * window.c (window_fixed_size_p, enlarge_window) + (shrink_window_lowest_first): + * macterm.c (init_font_name_table): + * macfns.c (Fx_create_frame, Fx_display_list): + * lread.c (close_load_descs): + * keyboard.c (read_char_x_menu_prompt): + * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent): + * coding.c (code_convert_region_unwind): Test the type of an object + rather than just !NILP before extracting data from it. + + * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors. + + * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value. + (XMISCANY): New macro. + (XMISCTYPE): Use it. + (struct Lisp_Misc_Any): New type. + (union Lisp_Misc): Use it. + (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit. + * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding) + (find_symbol_value, set_internal, default_value, Fset_default) + (Fmake_variable_buffer_local, Fmake_local_variable) + (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p) + (Flocal_variable_if_set_p, Fvariable_binding_locus): + The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set. + * alloc.c (allocate_buffer): Set the size and tag. + (allocate_misc, mark_maybe_object, mark_object, survives_gc_p): + Use XMISCANY. + (die): Follow the GNU convention for error messages. + * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set. + * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the + tag any more. + (set_buffer_internal_1): + * frame.c (store_frame_param): + * eval.c (specbind): + * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP. - * w32term.c (x_erase_phys_cursor): Ditto. + * doc.c (Fsnarf_documentation): Simplify. -2002-01-16 Pavel Jan,Am(Bk +2007-10-14 Juanma Barranquero - * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of - `dont_resize' only when used. + * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static. + (syms_of_w32term) : Fix typo in docstring. - * xdisp.c: Remove forgotten extern declaration of `Qimage'. +2007-10-14 Stefan Monnier -2002-01-15 Eli Zaretskii + * buffer.c (Fmake_indirect_buffer): Set the buffer's tag. - * xdisp.c (display_mode_element): When computing charpos, depend - on multibyteness of elt, not the text in field. +2007-10-14 Juanma Barranquero -2002-01-15 Pavel Jan,Am(Bk + * eval.c (do_autoload): Don't save autoloads. - * buffer.c (Fkill_all_local_variables): - Increment `update_mode_lines' only once. + * data.c (Ffset): Save autoload of the function being set. -2002-01-14 Pavel Jan,Am(Bk +2007-10-07 John Paul Wallington - * lisp.h (adjust_after_replace_noundo) - (Fupdate_coding_systems_internal): Add prototypes. + * xfns.c (x_create_tip_frame): Set the `display-type' frame + parameter before setting up faces. - * sound.c (Fplay_sound): Initialize header_size also for :data case. +2007-10-13 Eli Zaretskii -2002-01-14 Eli Zaretskii + * ccl.c (Fregister_code_conversion_map): + * keyboard.c (append_tool_bar_item): Reformat last change. - Support for the --color command-line argument and tty-color-mode - frame parameter: + * lisp.h (eabs): Rename from `abs'. All callers changed. - * term.c (tty_default_color_capabilities, tty_setup_colors) - (set_tty_color_mode): New functions. - (term_init): Call tty_default_color_capabilities. - (Qtty_color_mode_alist): New variable. - (syms_of_term): Intern and staticpro it. +2007-10-05 Dmitry Antipov - * frame.c (store_frame_param): Call set_tty_color_mode for termcap - frames. - (do_switch_frame): For termcap frames, switch the tty - color mode as specified by the frame's parameters. - (Qtty_color_mode): New variable. - (syms_of_frame): Intern and staticpro it. + * buffer.c (add_overlay_mod_hooklist): + * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map): + * fontset.c (make_fontset): + * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item) + (append_tool_bar_item): + * macmenu.c (grow_menu_items): + * w32menu.c (grow_menu_items): + * xmenu.c (grow_menu_items): Use larger_vector. - * emacs.c (USAGE2): Add the --color option. - (standard_args): Ditto. +2007-10-13 Eli Zaretskii -2002-01-13 Jan Dj,Ad(Brv + * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving + selected frame'' on MSDOS). - * xterm.h (struct x_output): New members want_fullscreen, - x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and - y_pixels_outer_diff. - New enum for FULLSCREEN_* constants. - (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget - is NULL. - (x_fullscreen_adjust): Add prototype. +2007-10-12 Martin Rudalics - * emacs.c (USAGE2): Add the new full-screen arguments. - (standard_args): Ditto. + * frame.c (Qexplicit_name): New variable. + (x_report_frame_params): Report it in parameter alist. + (syms_of_frame): Intern and staticpro it. - * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth): - New variables. - (syms_of_xfns): Intern and staticpro them. - (x_frame_parms) <"fullscreen">: New parameter. - (x_fullscreen_move, x_set_fullscreen): New functions. - (x_set_frame_parameters): Support for Qfullscreen. - (x_real_positions): More accurate computation of the frame position. - (x_figure_window_size): Support full-screen frames. - (Fx_create_frame): Default the fullscreen parameter. +2007-10-10 Patrick Mahan (tiny change) - * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions. - (XTread_socket) : Call x_check_fullscreen. - : Don't resize to fullscreen. - Call x_check_fullscreen_move, and set the want_fullscreen member of - output_data.x. + * macfns.c (x_create_tip_frame): Set terminal for frame. -2002-01-13 Jason Rumney +2007-10-10 Stefan Monnier - * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages - for mice with more than 3 buttons. + * frame.c (Qenvironment): Remove. + (syms_of_frame) : Don't initialize. + (Fdelete_frame): Don't treat the `environment' param specially. + * frame.h (Qenvironment): Don't declare. + * callproc.c (set_initial_environment): Don't set unused frame param. - * w32term.c (parse_button): New parameter xbutton. Callers changed. - (w32_read_socket): Handle new "XBUTTON" messages. + * frame.c (Fframe_with_environment): Remove. + (syms_of_frame) : Don't declare. - * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option. - (syms_of_w32fns): DEFVAR_BOOL it. - (w32_wnd_proc): Handle new "XBUTTON" messages. + * lisp.h (Fframe_with_environment): Don't declare. -2002-01-13 Pavel Jan,Am(Bk +2007-10-10 Juanma Barranquero - * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'. + * indent.c (indent_tabs_mode, last_known_column) + (last_known_column_modified): Make static. + (syms_of_indent) : Remove redundant info in docstring. -2002-01-13 Andreas Schwab +2007-10-10 Katsumi Yamaoka - * xterm.c (x_load_font): Never set fonts_changed_p to zero. + * puresize.h (BASE_PURESIZE): Increase to 1170000. -2002-01-12 Andreas Schwab +2007-10-09 Jason Rumney - * .gdbinit (xbuffer): Remove address operator since data is now a - pointer. + * w32term.c (x_set_window_size): Disable code that attempts to tell + Lisp code about a size change before it actually happens. -2002-01-11 Richard M. Stallman +2007-10-09 Richard Stallman - * insdel.c (adjust_after_replace_noundo): New function. + * xdisp.c (handle_invisible_prop): After setting up an ellipsis, + return HANDLED_RETURN. - * coding.c (code_convert_region): Don't copy old text if undo disabled. +2007-10-08 Martin Rudalics -2002-01-09 Jason Rumney + * keyboard.c (kbd_buffer_get_event): Break loop waiting for input + when there's an unread command event. - * xdisp.c (x_consider_frame_title): Don't count the tooltip frame - when checking for multiple frames. + * frame.c (focus_follows_mouse): Move here from frame.el to allow + window autoselection act appropriately when leaving selected frame. + (syms_of_frame): Initialize focus_follows_mouse. + * frame.h (focus_follows_mouse): Extern it. + * macterm.c (XTread_socket): When focus_follows_mouse is nil + make SELECT_WINDOW_EVENT only if we don't leave the selected frame. + * msdos.c (dos_rawgetc): Likewise. + * w32term.c (w32_read_socket): Likewise. + * xterm.c (handle_one_xevent): Likewise. + * xdisp.c (syms_of_xdisp): In doc-string of + mouse-autoselect-window mention focus-follows-mouse. -2002-01-08 Richard M. Stallman +2007-10-08 YAMAMOTO Mitsuharu - * window.c (delete_window): Rewrite the code for changing the - selected window to handle the case where WINDOW is not a leaf. + * macterm.c (mac_load_query_font): Fix missing return value. + [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap): + Add BLOCK_INPUT. -2002-01-07 Eli Zaretskii +2007-10-08 Richard Stallman - * process.c (send_process): Set src_multibyte to 1 after the call - top setup_coding_system, not before the call. + * xdisp.c (get_window_cursor_type): Implement documented behavior + for cursor-in-non-selected-windows = t. -2002-01-07 Jason Rumney +2007-10-08 Jason Rumney - * xmenu.c (set_frame_menubar, xmenu_show): - (xdialog_show): Initialize wv->help to Qnil. + * w32.c (w32_get_resource): Always close registry keys. - * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show): - (w32_dialog_show): Initialize wv->help to Qnil. +2007-10-08 Jason Rumney -2002-01-06 Jason Rumney + * makefile.w32-in (LIBS): Add COMCTL32. - * xmenu.c (single_submenu): Initialize wv->help to Qnil. + * w32fns.c (globals_of_w32fns): Init common controls. - * w32menu.c (w32_menu_display_help): Revert last change. +2007-10-08 Richard Stallman - * xmenu.c (menu_highlight_callback): Revert last change. + * image.c (our_memory_buffer): Rename from omfib_buffer. -2002-01-06 Andreas Schwab +2007-10-08 Richard Stallman - * insdel.c (make_gap_larger): Make sure buffer size does not - overflow range of int. + * buffer.c (Foverlays_at): Doc fix. -2002-01-05 Jason Rumney +2007-10-08 Stefan Monnier - * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if - OVERLAPS_P. + * fns.c (Fplist_put): Preserve uneven tail data. - * w32menu.c (w32_menu_display_help): Hide any tooltip window. +2007-10-08 Peter O'Gorman (tiny change) - * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen - to the left or to the right of the pointer, put it against - the left screen edge. - (x_frame_parms): Add missing braces around initializer. + * termhooks.h (enum event_kind): Remove trailing comma. - * w32term.c (x_setup_relief_colors): Don't compute an image's - background color if it doesn't have a Pixmap. - (notice_overwritten_cursor): Don't depend on - output_cursor and updated_area. Compare pixel coordinates with - window's cursor pixel coordinates. - (x_draw_glyphs, x_clear_end_of_line, show_mouse_face): - Call notice_overwritten_cursor with new arg list. - (show_mouse_face): Fix bug setting a row's mouse_face_p flag - unconditionally. - (x_draw_image_relief): Use predefined macro instead of - constant when the value of `tool_bar_button_relief' is negative. + * frame.h (enum): Remove trailing comma. - * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types. +2007-10-08 Dhuvra Krishnamurthy (tiny change) -2002-01-04 Richard M. Stallman + * w32proc.c (delete_child): Don't terminate threads of zombies. - * xmenu.c (menu_highlight_callback): Hide any tooltip window. +2007-10-08 Martin Rudalics -2002-01-03 Richard M. Stallman + * keyboard.h (struct kboard): New elt Vlast_repeatable_command. - * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first. - (Fkey_binding): Try the `keymap' property map first. - (Fdescribe_buffer_bindings): Show `keymap' property bindings before - minor mode bindings. + * keyboard.c (syms_of_keyboard): Set up new Lisp variable + last-repeatable-command. + (init_kboard): Initialize Vlast_repeatable_command. + (command_loop_1): Set it to real_this_command unless that was + bound to an input event. + (mark_kboards): Mark it. -2002-01-03 Kim F. Storm +2007-10-08 Richard Stallman - * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy. + * eval.c (condition-case): Doc fix. -2002-01-02 Richard M. Stallman +2007-10-08 Masatake YAMATO - * keyboard.c (read_key_sequence): Handle the keymap property - before minor mode maps. + * xfaces.c (tty_supports_face_attributes_p): Fix code + for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code + was copied and not edited. - * editfns.c (Fformat): Update thissize from field_width - based on the actual width, in the string case. +2007-10-09 Stefan Monnier + + Add new `input-decode-map' keymap and use it for terminal + escape sequences. + * keyboard.h (struct kboard): Add Vinput_decode_map. + Remove Vlocal_key_translation_map. + * keyboard.c (read_key_sequence): Add support for input-decode-map. + (init_kboard): Init input-decode-map. + Replace local-key-translation-map back with key-translation-map. + (syms_of_keyboard): Declare input-decode-map. + Remove local-key-translation-map. Update docstrings. + (mark_kboards): Mark Vinput_decode_map. + Don't mark Vlocal_key_translation_map. + * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map. + Replace local-key-translation-map back with key-translation-map. + * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN): + Bind in input-decode-map rather than function-key-map. + + * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore. + This was made redundant by the previous introduction of XSETPVECTYPE. -2002-01-01 Pavel Jan,Am(Bk +2007-10-09 Richard Stallman - * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment - when used as truth value to prevent gcc warnings. + * image.c (free_bitmap_record): Rename from Free_Bitmap_Record. - * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c, - * w32proc.c: Include . +2007-09-29 Richard Stallman -2002-01-01 Andreas Schwab + * eval.c (internal_condition_case_2, internal_condition_case_1) + (internal_condition_case): Reenable abort if x_catching_errors () + to see if that really happens and why. - * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int, - not EMACS_INT, to make them compatible with DEFVAR_INT. - * lisp.h (max_specpdl_size): Adjust declaration. +2007-10-06 Andreas Schwab -2002-01-01 Richard M. Stallman + * fileio.c (Fwrite_region): Ignore EINVAL error from fsync. - * print.c (print_object): Test print_escape_nonascii only for - unibyte strings. - (PRINTPREPARE): Once again bind Qprint_escape_nonascii - when outputting to a multibyte buffer. +2007-10-04 Juanma Barranquero -2001-12-29 Richard M. Stallman + * image.c (syms_of_image) : Fix typo in docstring. - * print.c (print_object): In multibyte string, use hex escapes. - Use octal only for unibyte strings. - (PRINTPREPARE): Don't ever set Qprint_escape_nonascii. +2007-10-03 Stefan Monnier - * lread.c (read_escape): New arg BYTEREP for reporting whether - escape forces unibyte or multibyte. - (read1): When reading a string, take note of that info. + * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used. -2001-12-29 Ken Raeburn +2007-10-02 Stefan Monnier - * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero - comparison to test lisp value returned by Fget. + * window.h (struct window): + * window.c (struct save_window_data, struct saved_window): + * termhooks.h (struct terminal): + * process.h (struct Lisp_Process): + * frame.h (struct frame): + * buffer.h (struct buffer): + * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table) + (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table): + The size field of (pseudo)vectors is now unsigned. + (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly. -2001-12-29 Richard M. Stallman + * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end. + Turn `count' into an integer. - * lisp.h (max_specpdl_size): Add declaration. + * fns.c (make_hash_table, hash_put, hash_remove, hash_clear) + (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count): + * print.c (print_object) : `count' is an int. + * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR. + (mark_object) : Use mark_vectorlike. - * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message. + * alloc.c (allocate_pseudovector): New fun. + (ALLOCATE_PSEUDOVECTOR): New macro. + (allocate_window, allocate_terminal, allocate_frame) + (allocate_process): Use it. + (mark_vectorlike): New function. + (mark_object) : Use it. + (mark_terminals): Use it. + (Fmake_bool_vector, Fmake_char_table, make_sub_char_table) + (Fmake_byte_code): Use XSETPVECTYPE. - * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key. - Handle modifier bits. Correct typo in error message. + * frame.c (Fframe_parameters): Minor simplification. -2001-12-28 Richard M. Stallman + * insdel.c (adjust_markers_for_insert): Generalize assertion checks. - * abbrev.c: Use the plist of an abbrev for multiple params if nec. - (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev. - (Fdefine_global_abbrev, Fdefine_mode_abbrev): - Update calls to Fdefine_abbrev. - (write_abbrev): Update for changed data format. - Don't list "system" abbrevs. - (Fexpand_abbrev): Update use count with new data format. - (describe_abbrev): Update for changed data format. - (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG. + * marker.c (Fmarker_buffer): Make test for odd case into a failure. - * config.in (HAVE_MBSINIT): Add #undef. + * buffer.c (Fget_buffer_create, init_buffer_once): + * lread.c (defsubr): + * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE. - * strftime.c (mbsinit): Define as no-op if not available. + * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be + defined differently in the m/*.h files. + (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking. + (XSETPVECTYPE): New macro. + (XSETPSEUDOVECTOR): Use it. - * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen. - (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE. + * buffer.c (syms_of_buffer) : Move from abbrev.c. + (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c. - * keymap.c (Flookup_key): Error message if key has wrong data type. - (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc. - (exclude_key): New variable. + * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER): + * lread.c (defvar_per_buffer): + * abbrev.c (syms_of_abbrev) : Move to buffer.c. -2001-12-28 Gerd Moellmann + * window.c (candidate_window_p): Only consider as visible frames that + are on the same terminal. - * xterm.c (x_setup_relief_colors): Don't compute an image's - background color if it doesn't have a Pixmap. + * m/ibms390x.h (MARKBIT): Remove unused macro. - * xterm.c (notice_overwritten_cursor): Don't depend on - output_cursor and updated_area. Compare pixel coordinates with - window's cursor pixel coordinates. - (x_draw_glyphs, x_clear_end_of_line, show_mouse_face): - Call notice_overwritten_cursor with new arg list. - (show_mouse_face): Fix bug setting a row's mouse_face_p flag - unconditionally. +2007-10-01 Juanma Barranquero - * xdisp.c (try_scrolling) : Add the - height of the cursor line to the amount to scroll. + * lread.c (Fload): Fix typo in docstring. -2001-12-27 Richard M. Stallman +2007-10-01 Michaël Cadilhac - * intervals.c (set_point_both): The position after an invisible, - intangible character is not an acceptable stopping point. + * floatfns.c (Fexpt): Manually check for overflows, so that a power + of a non-zero value can't yield zero. -2001-12-27 Ken Raeburn +2007-09-29 Stefan Monnier - * window.c (enlarge_window): In new preserve_before code, convert - CURBEG from lisp object to integer before doing arithmetic. + * term.c (term_clear_mouse_face, term_mouse_highlight) + (tty_write_glyphs_with_face): Only define is HAVE_GPM. -2001-12-27 Richard M. Stallman + * print.c (safe_debug_print): Use XHASH. - * bytecode.c (Fbyte_code): Undo previous change. + * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of + Lisp elements such as tags. + (XHASH): New macro. + (EQ): Use it. + (SREF, SSET, STRING_COPYIN): Use SDATA. + (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove. -2001-12-26 Kim F. Storm + * alloc.c (mark_terminal): Remove left-over declaration. + (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE. + (allocate_vectorlike): Remove type argument. Adjust callers. + (live_vector_p, mark_maybe_pointer, valid_lisp_object_p): + Only handle the one remaining MEM_TYPE_VECTORLIKE. - * keyboard.c (record_char): Ignore duplicate help-echo events only - separated by mouse-movement. When tracking mouse, only record - first and last mouse-movement event in same window. - Don't record mouse-movement events in keyboard macros. + * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros + to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used. + (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc) + (lisp_align_free, make_interval, allocate_string, allocate_string_data) + (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc): + Use them. -2001-12-25 Richard M. Stallman + * xfaces.c (load_face_font, free_realized_face, clear_face_gcs): + Don't let signal handlers run when a GC is freed but not yet NULL'ed. + (x_free_gc): Remove BLOCK_INPUT since it's now redundant. - * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed. - (Fenlarge_window): New arg PRESERVE_BEFORE. +2007-09-28 Dan Nicolaescu - * bytecode.c (Fbyte_code): Use Fstring_make_unibyte - instead of Fstring_as_unibyte. + * Makefile.in (lisp, shortlisp): Delete server.elc, it is not + loaded by default. -2001-12-22 Pavel Jan,Am(Bk +2007-09-28 Stefan Monnier - The following changes remove mocklisp support: + * term.c (Fgpm_mouse_start): Don't signal an error if already activated + on this tty. + (Fgpm_mouse_stop): Only deactivate if it was activated on this tty. - * mocklisp.h, mocklisp.c: Files removed. + * term.c (mouse_face_window): Rename from Qmouse_face_window. + Update all users. + (handle_one_term_event): Use Gpm_DrawPointer. + (Fgpm_mouse_start): Rename from Fterm_open_connection. + Signal errors instead of returning nil. Always return nil. + (Fgpm_mouse_stop): Rename from Fterm_close_connection. + Make it a noop if gpm-mouse was not activated. + (syms_of_term): Update names. - * lisp.h: Remove declarations of variables `Vmocklisp_arguments', - `Qmocklisp' and `Qmocklisp_arguments'. - Remove prototype of syms_of_mocklisp. +2007-09-27 Stefan Monnier - * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files. + * sysdep.c (narrow_foreground_group, widen_foreground_group): Static. + (init_sys_modes): Check that gpm_tty is the current tty. - * callint.c: Do not include mocklisp.h. - (Fcall_interactively): Do not test for mocklisp case. + * alloc.c (allocate_terminal): Set the vector size to only count the + lisp fields. Initialize those to nil. + (mark_object): Don't treat terminals specially. + (mark_terminal): Remove. + (mark_terminals): Use mark_object instead. - * eval.c: Remove variables `Qmocklisp_arguments', - `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply. - (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda): - Do not test for mocklisp case. - (Fwhile): Remove unused variable `tem'. - (syms_of_eval): Remove variable `moclisp-arguments'. + * termhooks.h (struct terminal): Move all Lisp_Object fields traced by + the GC to the beginning. - * data.c (wrong_type_argument): Remove mocklisp case. + * indent.h: + * indent.c: Use EMACS_INT for ints coming from Elisp data. - * doc.c (Fdocumentation): Remove mocklisp case. + * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions. - * emacs.c (main): Do not call syms_of_mocklisp. +2007-09-25 Jason Rumney -2001-12-21 Richard M. Stallman + * frame.c (make_terminal_frame): Remove special case for WINDOWSNT. - * xfns.c (compute_tip_xy): If tooltip won't fit on the screen - to the left or to the right of the pointer, put it against - the left screen edge. + * w32console.c (create_w32cons_output): Remove. -2001-12-21 Eli Zaretskii + * term.c (init_tty): Call init_sys_modes on WINDOWSNT also. - * Makefile.in (distclean): Remove .gdbinit if we are building - outside the source tree. + * sysdep.c (init_sys_modes): Use set_terminal_modes_hook. + (reset_sys_modes): Use reset_terminal_modes_hook. -2001-12-19 Eli Zaretskii +2007-09-24 Stefan Monnier - * w32.c (emacs_root_dir): New function. + * eval.c (do_autoload): Don't output any message. - * msdos.c (emacs_root_dir): New function. +2007-09-24 Juri Linkov - * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory - of the current drive as the fallback for default_directory. + * emacs.c (standard_args): Change priority of "--no-splash" + from 40 to 3. Add "--no-desktop" with the same priority. - * dired.c (file_name_completion): Run the elements of - completion-ignored-extensions through ENCODE_FILE. +2007-09-23 Dmitry Antipov - * lisp.h (scmp): Remove prototype, since it's now a static - function private to dired.c. + * alloc.c (gc_sweep): Check cons cell mark bits word by word + and optimize the case where they are all 1. -2001-12-18 Richard M. Stallman +2007-09-23 Johannes Weiner - * dired.c (scmp): Function moved from minibuf.c. - Delete multibyte handling--used only on encoded strings. + * lisp.h (abs): Define if not defined. + * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c: + Don't define `abs', since it's defined in lisp.h. - * minibuf.c (scmp): Function moved to dired.c. +2007-09-22 Eli Zaretskii - * fns.c (merge): Add QUIT call. + * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows. + (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero. + (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty) + (init_tty): Use DEV_TTY instead of "/dev/tty". + [WINDOWSNT]: No need to protect from NAME arg being null. -2001-12-18 Dave Love +2007-09-21 Dan Nicolaescu - * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el, - language/georgian.el. + * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning + up the tty state. -2001-12-18 Eli Zaretskii +2007-09-21 Stefan Monnier - * Makefile.in (lisp, shortlisp): Synchronize with changes to - lisp/Makefile.in:DONTCOMPILE. + * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead. + (gpm_tty): Change its type. + * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead. + (gpm_tty): Change its type and initialize it. + (Fterm_open_connection): Check the frame is indeed a tty. + Use the new gpm_tty. + (Fterm_close_connection): Use the new gpm_tty. + * keyboard.c (tty_read_avail_input): Use the new gpm_tty. + * sysdep.c (init_sys_modes): term_gpm -> gpm_tty. -2001-12-18 Pavel Jan,Am(Bk +2007-09-21 Juanma Barranquero - * xdisp.c (window_box_height): Do not return negative values. - From Gerd Moellmann . + * w32term.c (x_draw_glyph_string): Use strike_through_color, not + underline_color, to draw strike-through. - * keyboard.c (head_table): Add missing braces around initializer. +2007-09-21 Stefan Monnier - * term.c (keys): Likewise. + * lisp.h (allocate_terminal): Declare. - * xfns.c (x_frame_parms, visual_classes): Likewise. + * window.c (candidate_window_p): Consider frames that are being placed + by the user as somewhere between visible and iconified. + (window_loop): Prefer windows on the current frame. + (Fselect_window): Move the use of select-frame to the beginning so we + can just delegate all the work (it'll call us back anyway). -2001-12-17 Sam Steingold + * frame.c (Qdisplay_environment_variable): + * frame.h (Qdisplay_environment_variable): Delete. - * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last - patch (COMPOSING_P, not COMPOSING). + * .gdbinit (xbacktrace): Print the arg's address rather than the value + of the first arg, since that value may be a union. -2001-12-17 Richard M. Stallman + * callproc.c (child_setup, getenv_internal): Use the frame's `display' + parameter rather than Qdisplay_environment_variable. If all else + fails, look for DISPLAY in initial-environment. - * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop. +2007-09-21 Glenn Morris - * coding.c (code_convert_region): Update coding->cmp_data->char_offset - before calling decode_coding. + * Makefile.in (emacstool): Remove target. + (lisp, shortlisp): Remove termdev.elc. - * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal. +2007-09-21 Markus Triska - * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding) - instead of only for COMPOSITION_DISABLED. + * xterm.c (x_delete_display): Compile session management conditionally. -2001-12-16 Richard M. Stallman +2007-09-20 Stefan Monnier - * alloc.c (pure_alloc): After overflow, allocate just a small block. + * callproc.c (getenv_internal_1): New function. + (getenv_internal): Use it. + (Fgetenv_internal): Use it. Accept an env-list as optional arg. - * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h. + * terminal.c (get_terminal): Don't accept ints to represent terminals. + (Fterminal_name, Fterminal_parameters, Fterminal_parameter) + (Fset_terminal_parameter): Work with dead terminals as well. + (Fmodify_terminal_parameters): Remove. - * buffer.h (struct buffer): New field `display_error_modiff'. - * buffer.c (reset_buffer): Initialize `display_error_modiff'. + * terminal.c (get_terminal): Handle terminals. + Make sure the terminal returned is live. + (create_terminal): Use allocate_terminal. + (mark_terminals): Move to alloc.c. + (delete_terminal): Use terminal->name as liveness status. + NULL out fields after freeing their contents. + Don't deallocate the object. + (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object + rather than an int. + (Fterminal_live_p): Accept non-integer arguments. + (Fterminal_list): Return terminal objects rather than an ints. - * window.c (Frecenter): Clear display_error_modiff field. + * alloc.c (enum mem_type): New member for `terminal' objects. + (allocate_terminal): New function. + (mark_maybe_pointer, valid_lisp_object_p, mark_object): + Handle terminals. + (mark_terminal): New fun. + (mark_terminals): Move from terminal.c. - * xdisp.c (redisplay_window_0, redisplay_window_1): New functions. - Call redisplay_window, but not if display_error_modiff field says no. - (redisplay_window_error): New function. - (displayed_buffer): New variable. - (redisplay_internal, redisplay_windows): Call the new functions - instead of redisplay_window directly. + * term.c (get_tty_terminal): Don't treat output_initial specially. + (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints. + (delete_tty): Use terminal->name as liveness status. -2001-12-15 Richard M. Stallman + * termhooks.h (struct terminal): Make it into a pseudovector. + Remove `deleted' replaced by checking `name's nullness. - * keyboard.c (syms_of_keyboard) : Doc fix. + * print.c (print_object): Handle terminals. -2001-12-14 Andrew Innes + * lisp.h (enum pvec_type): New `terminal' pseudovector. + (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros. - * makefile.w32-in (EMACSLOADPATH): Define. - ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs. - (bootstrap-temacs): Remove dependency on bootstrap-clean. + * frame.c (make_terminal_frame): + * keyboard.c (tty_read_avail_input): + * w32term.c (x_delete_terminal): + * xfns.c (Fx_create_frame, x_create_tip_frame): + * xterm.c (x_delete_terminal): Use terminal->name as liveness status. -2001-12-13 Eli Zaretskii +2007-09-20 Glenn Morris - * xfns.c (x_report_frame_params): Make the scroll-bar-width frame - parameter have a numeric value all the time. + * process.c (Fmake_network_process): Doc fix. - * w32fns.c (x_report_frame_params): Likewise. +2007-09-19 Jason Rumney -2001-12-12 Richard M. Stallman + * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument. - * fileio.c (Fwrite_region): Doc fix. +2007-09-19 Michaël Cadilhac - * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500. - (redisplay_internal): Call clear_image_cache only for window terminals. + * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form): + Fix a C warning regarding variable constness. -2001-12-12 Gerd Moellmann + * xterm.c (handle_one_xevent): Fix a C warning. - * xdisp.c (move_it_vertically_backward): Change heuristic - for the case that we didn't move far enough initially. +2007-09-18 Jason Rumney - * window.c (Frecenter): Simplify computation in the case of window - system frames and ARG < 0; use window_box_height. + * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame. -2001-12-11 Richard M. Stallman +2007-09-17 Jan Djärv - * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c: - * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX. + * gtkutil.c (gdpy_def): New variable. + (xg_initialize): Initialize gdpy_def. + (xg_display_close): If no other display exists, set gdpy_def to a + new connection. -2001-12-11 Andrew Innes +2007-09-16 Jan Djärv - * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if - arg is negative. + * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf + when we have no file name for the icon. + (xg_tool_bar_expose_callback): Remove. + (xg_create_tool_bar): Don't connect expose signal to + xg_tool_bar_expose_callback. + (xg_get_file_with_chooser): Move GCPRO1 after declarations. -2001-12-11 Richard M. Stallman +2007-09-16 Andreas Schwab - * m/hp800.h: Split the __hpux conditional into the parts - that are right for GNU/Linux too and the parts that are not. - Use the former if GNU_LINUX. - (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux. + * alloc.c (reset_malloc_hooks): Set the hooks to the previous + values instead of zapping them. - * s/gnu-linux.h (GNU_LINUX): Defined. +2007-09-14 Glenn Morris -2001-12-11 Pavel Jan,Am(Bk + * fringe.c (init_fringe_bitmap) : Move to file scope. + * gtkutil.c (xg_separator_p) : Move to file scope. + * image.c (our_memory_fill_input_buffer) : Move to file + scope and rename to omfib_buffer for clarity. + (gif_load) : Move to file scope. - * macros.c, msdos.c, w16select.c: Change doc-string comments to - `new style' [w/`doc:' keyword]. +2007-09-14 Kenichi Handa -2001-12-10 Jason Rumney + * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero. - * w32menu.c (w32_free_submenu_strings): Clear menu item struct - before using. +2007-09-13 Jason Rumney -2001-12-09 Pavel Jan,Am(Bk + * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument. - * dosfns.c: Change doc-string comments to `new style' [w/`doc:' - keyword]. + * w32term.c (w32_term_init): Pass rif to w32_init_fringe. -2001-12-09 Eli Zaretskii + * macterm.c (mac_initialize): Don't call mac_init_fringe here. + (mac_term_init): Call here instead, passing rif. - * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix. +2007-09-13 Glenn Morris - * s/hpux10.h (srand48): Don't undefine. + * s/hpux.h: No longer define `static' as nothing. -2001-12-09 Jason Rumney +2007-09-13 Johan Bockgård - * w32menu.c (_widget_value): Make `help' field a Lisp_Object. - Add comment to explain where the struct came from. - (single_submenu, w32_menu_show): Set `help' field as Lisp_Object. - (add_menu_item): Process pop-up menus first to avoid memory leak. - (add_menu_item, w32_menu_display_help): Use `help' field as - Lisp_Object. - (w32_free_submenu_strings): Only free owner-drawn strings. + * callint.c (Fcall_interactively): Remove unused var `fun'. -2001-12-09 Pavel Jan,Am(Bk +2007-09-12 Romain Francoise - * COPYING: Moved back. + * window.c (prefer_window_split_horizontally, display_buffer): + Revert 2007-09-08 change. - * charset.c (char_to_string_1, translate_char, Fdefine_charset): - Add parentheses around && within ||. +2007-09-12 Glenn Morris - * indent.c (compute_motion): Likewise. + * alloca.c: Remove file. + * Makefile.in (alloca): Do not undef. + (allocaobj, alloca.o): Remove. + (otherobj): Remove allocaobj. + * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block. + * regex.c (C_ALLOCA): Remove all references and code that was only + used when this was defined. + * search.c (boyer_moore): Remove #ifdef C_ALLOCA block. + * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block. + * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this. - * intervals.c (merge_properties_sticky): Likewise. + * Makefile.in (SOURCES, unlock, relock): Delete. - * coding.c (setup_coding_system, shrink_encoding_region) - (Fdecode_sjis_char): Likewise. + * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity. + (menu_grab_callback): All uses changed. -2001-12-07 Andreas Schwab + * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity. + (x_reply_selection_request): All uses changed. - * xdisp.c (display_mode_element): Don't read past end of string if - it ends with '%'. +2007-09-11 Stefan Monnier - * alloc.c (inhibit_garbage_collection): Don't exceed value an int - can hold. + * lread.c (load_warn_old_style_backquotes): Change message to look + better when it appears in the middle of byte-compiler messages. - * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum): - Rename from most_positive_fixnum and most_negative_fixnum, resp., and - type changed to Lisp_Object. - (syms_of_data): DEFVAR_LISP them. +2007-09-10 Dan Nicolaescu -2001-12-07 Richard M. Stallman + * s/darwin.h (MULTI_KBOARD): Only define for Carbon. - * callproc.c (init_callproc): Set Vdata_directory based on the source - location whenever Emacs was run uninstalled. + * xterm.c (x_create_terminal): Add comment. -2001-12-06 Paul Eggert + * term.c (clear_tty_hooks, set_tty_hooks): Add comments. - * config.in (HAVE_WORKING_VFORK): New #undefs. - * process.c (create_process): - Use HAVE_WORKING_VFORK, not HAVE_VFORK. - * m/cnvrgnt.h (HAVE_VFORK): Remove #define. - * m/ibm370aix.h (HAVE_VFORK): Remove #undef. - * m/ibmps2-aix.h (HAVE_VFORK): Remove #define. - * m/intel386.h (HAVE_VFORK): Likewise. - * m/mips-siemens.h (HAVE_VFORK): Likewise. - * m/mips.h (HAVE_VFORK): Likewise. - * s/freebsd.h (vfork): Remove #define. - * s/lynxos.h (HAVE_VFORK): Remove #undef. - * s/usg5-4-2.h: Fix comment about vfork. +2007-09-10 Richard Stallman -2001-12-06 Richard M. Stallman + * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME. - * s/hpux10.h (random): Add undef. - (HAVE_RANDOM): Define it just once. +2007-09-10 Michaël Cadilhac -2001-12-06 Stefan Monnier + * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'. + (DEFUN): Document `intspec', use it instead of `prompt'. - * eval.c: Undo last change: the standard syntax is not wanted. + * eval.c (Fcommandp): Change `->prompt' to `->intspec'. -2001-12-06 Eli Zaretskii + * data.c (Finteractive_form): If the interactive specification starts + with a `(', use it as a Lisp form. - * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the - scroll bars of the frame before deleting the frame itself. If the - frame has a widget, delete the frame with XtDestroyWidget, and do - not call XDestroyWindow before that. + * fileio.c (Fset_file_modes): Add an interactive spec that reads a file + name and file modes. -2001-12-06 Kim F. Storm + * callint.c (Fcall_interactively): Comment fixes. - * xfns.c (x_report_frame_params): Return actual fringe widths. +2007-09-10 Stefan Monnier - * w32fns.c (x_report_frame_params): Return actual fringe widths. + * callint.c (Fcall_interactively): Use Finteractive_form also for subrs + and compiled functions. -2001-12-05 Andrew Innes +2007-09-08 Fredrik Axelsson - * alloc.c (Fgarbage_collect): Shrink buffer gaps that are - excessively large. + * window.c (prefer_window_split_horizontally): New variable. + (display_buffer): Consider splitting window horizontally depending + on prefer_window_split_horizontally. - * insdel.c (make_gap_larger): New function. - (make_gap_smaller): New function. - (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]: - Call make_gap_smaller if arg is negative. +2007-09-08 Eli Zaretskii -2001-12-04 Stefan Monnier + * sysdep.c [WINDOWSNT]: Don't include sysselect.h. - * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype. - Pass a dummy argument when calling interrupt_signal. - (parse_menu_item): Mark disabled items before checking for empty def. - (read_char_minibuf_menu_prompt): Make safety more visible. - (read_key_sequence): Add a `first_unbound' variable. - Use it to detect C-c ESC ESC ESC ESC ... cases and drop the - unbound prefix as soon as we can detect it. +2007-09-07 Stefan Monnier - * doc.c (Fsnarf_documentation): Add prototype. - (get_doc_string): Handle negative arguments. - (Fdocumentation): Use AREF and ASIZE. - Move the calls to get_doc_string to a single place. - Don't confuse an interactive-spec for a docstring reference. - (Fdocumentation_property): Take advantage of the fact that - get_doc_string now ignores the sign of the docstring position. + * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking. - * eval.c: Use standard syntax for usage in docstrings. + * frame.c (x_set_frame_parameters): Check number is positive before + using XFASTINT. -2001-12-03 Pavel Jan,Am(Bk + * window.c (freeze_window_start): Don't presume selected_window holds + a window object. + (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd. - * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option. +2007-09-07 Angelo Graziosi (tiny change) -2001-12-02 Pavel Jan,Am(Bk + * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN. - * xterm.c (x_draw_image_relief): Use predefined macro instead of - constant when the value of `tool_bar_button_relief' is negative. +2007-09-07 Stefan Monnier -2001-12-02 Richard M. Stallman + * window.c (Vsplit_window_preferred_function): New var. + (Fdisplay_buffer): Use it. + (syms_of_window): Export, and initialize it. - * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object. - (single_submenu, xmenu_show): Set `help' field as Lisp_Object. +2007-09-06 Pixel (tiny change) - * fileio.c (read_non_regular): Delete Fsignal call. + * image.c (gif_load): Fix bug: Handle nonexistent colormap. -2001-12-01 Stefan Monnier +2007-09-06 Glenn Morris - * lisp.h (run_hook_list_with_args): Undo last change. + * gtkutil.c (menu_grab_callback) : + * xselect.c (x_reply_selection_request) : Move static + variable to file scope. -2001-12-01 Gerd Moellmann +2007-09-06 Stefan Monnier - * xterm.c (x_draw_fringe_bitmap): Always undo clipping. + * xdisp.c (redisplay_internal): Make sure Elisp code always sees + consistent values of selected_frame and selected_window. -2001-12-01 Jason Rumney +2007-09-04 Jason Rumney - * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c. + * w32console.c (initialize_w32_display): Zero unused hooks. - * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT) - [!WM_MOUSELEAVE]: Define. +2007-09-04 Dan Nicolaescu - * w32menu.c (current_popup_menu, get_menu_item_info): - (set_menu_item_info): New vars. - (set_frame_menubar): Doc fix clarifying GC interaction with menus. - (w32_menu_show): Set current_popup_menu. - (add_menu_item): Allocate new strings for owner-drawn menu items - and help strings. - Use owner-draw for disabled menu items again. - (w32_menu_display_help): Ignore owner-drawn items and popup menus. - (w32_free_submenu_strings, w32_free_menu_strings): New functions. + * term.c (Vsuspend_tty_functions, Vresume_tty_functions) + (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change. - * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars. - (w32_wnd_proc) : Notice when mouse enters frame. - : Free menu strings. - : Stop tracking mouse. - (x_create_tip_frame): Specify no minibuffer, modeline or fringes. +2007-09-04 Jason Rumney - * w32term.c (w32_read_socket) : Cancel help echo - and mouse face. + * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible + in w32console.c. Set up input. Remove XXX comments that have been + confirmed as correct. -2001-12-01 Kim F. Storm + * s/ms-w32.h (MULTI_KBOARD): Define. - The following changes add left-fringe and right-fringe - frame parameters to adjust fringe widths, or remove one or - both fringes. + * w32console.c (one_and_only_w32cons): Remove. + (initialize_w32_display): Take terminal argument. - * frame.h (struct frame): Remove trunc_area_pixel_width and - trunc_area_cols fields. - (Qleft_fringe, Qright_fringe): Declare. - (FRAME_RIGHT_FRINGE_WIDTH): New macro. + * term.c (init_tty) [WINDOWSNT]: Pass terminal to + initialize_w32_display. + (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too. - * frame.c (Qleft_fringe, Qright_fringe): New vars. - (syms_of_frame): Initialize them. + * termhooks.h (enum event_kind) : New event. - * window.c (coordinates_in_window): Handle separate left and right - fringe widths. + * keyboard.c (discard_mouse_events): Discard it. + (make_lispy_event): Translate it to a lisp event. + (lispy_wheel_names): Add wheel-left and right events. + (syms_of_keyboard): Enlarge wheel_syms. - * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width, - and fringe_cols fields. - (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros. - (FRAME_X_FRINGE_COLS): Use fringe_cols field. - (FRAME_X_FRINGE_WIDTH): Use fringes_extra field. - (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field. - (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field. - (x_compute_fringe_widths): Add prototype. + * w32fns.c (w32_wnd_proc) : Merge with WM_MOUSEWHEEL. + : Pass new system message to lisp. - * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to - fill fringe evenly with small dashes. - (x_draw_fringe_bitmap): Clear background if necessary. Align and - clip the new ZV bitmap to avoid jitter between rows. - (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear - background. Don't draw fringe bitmaps if fringe width is zero. - (x_compute_fringe_widths): New function. - (x_new_font, x_set_window_size_1): Use it. + * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't. - * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms. - (x_set_frame_parameters): Process `font' parameter before other - parameters as fringe widths depend on it. - (x_set_fringe_width): New function. - (x_figure_window_size): Use x_compute_fringe_widths. - (Fx_create_frame): Process `left-fringe' and `right-fringe' frame - parameters. + * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT + from WM_MOUSEHWHEEL. + (w32_read_socket) : Treat as WM_MOUSEWHEEL. - * widget.c (set_frame_size): Use x_compute_fringe_widths. - (EmacsFrameSetCharSize): Ditto. + * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from + terminal. - * w32term.h: Merged changes from xterm.h. - * w32term.c: Merged changes from xterm.c. - * w32fns.c: Merged changes from xfns.c. + * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new + keyboard for the terminal. -2001-11-29 Pavel Jan,Am(Bk +2007-09-04 Dan Nicolaescu - * COPYING: Removed. + * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions. + (Vresume_tty_hook): Rename from Vresume_tty_functions. + (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook + and resume-tty-function to resume-tty-hook. + (Fsuspend_tty, Fresume_tty): Use new names. -2001-11-29 Dave Love +2007-09-02 Jan Djärv - * coding.c (syms_of_coding) : Give it an - extra extra slot. - (detect_coding_mask): Fix call of detect_coding_iso2022. + * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon + if it starts with "n:". -2001-11-29 Pavel Jan,Am(Bk +2007-08-31 Jan Djärv - * fileio.c (file-name-coding-system) - (default-file-name-coding-system): Doc fix (links to referenced - variables added). + * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL. -2001-11-28 Stefan Monnier +2007-08-31 Stefan Monnier - * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5): - Add dummy uses of gcproN variables. + * frame.h: + * frame.c (Qterm_environment_variable): Remove. + (syms_of_frame): Don't init and staticpro it. - * category.c (describe_category, describe_category_1) - (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.) - (syms_of_category): Don't defsubr Sdescribe_categories. + * callproc.c (getenv_internal): Remove special case for $TERM. -2001-11-28 Richard M. Stallman + * callproc.c (Vinitial_environment): New variable. + (set_initial_environment): Initialize it. + (syms_of_callproc): Declare it. + (child_setup): Don't mess with TERM via Qterm_environment_variable; the + TERM under which a process runs is never related to the TERM in which + Emacs is running. - * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'. +2007-08-29 Dan Nicolaescu - * Makefile.in (lispdir): New variable, referring to build dir. - (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource). + * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here... + * s/darwin.h: ... do it here. -2001-11-28 Andrew Innes +2007-08-29 Stefan Monnier - * w32menu.c (w32_menu_display_help): Actually add the new argument - OWNER. + * lisp.h (set_initial_environment): Rename from set_global_environment. -2001-11-28 Jason Rumney + * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been + removed by mistake on the multi-tty branch. - * w32menu.c (add_menu_item): Do not use owner-draw for disabled - menu items. From David Ponce . - (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function - conditionally. - (w32_menu_display_help): New argument OWNER. Rewritten to store a - help event in the owner frame's keyboard buffer. + * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup. + (Fmodify_frame_parameters): Return a value. - * w32fns.c (w32_wnd_proc) : Display help directly. - (Fx_show_tip): Don't subtract last width from row width. + * image.c (png_load): Comment-out var only used in commented-out code. - * w32term.c (w32_read_socket) : Remove. - (w32_read_socket): Use EQ to compare frames. + * term.c (mark_ttys): Don't bother checking top_frame (incorrectly) + before passing it to mark_object. -2001-11-28 Gerd Moellmann + * xfaces.c (internal_resolve_face_name): Return a value. + (internal_resolve_face_name, resolve_face_name_error): Comment out. - * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if - OVERLAPS_P. + * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup. + (x_icon): Comment-out var only used in commented-out code. -2001-11-28 Pavel Jan,Am(Bk +2007-08-29 Romain Francoise - * xdisp.c (message_dolog): Remove unused variables `gcpro2', - `gcpro3' and `gcpro4'. + * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if + QUIT hasn't been provided. - * coding.c (decode_coding_string): Remove unused variable `gcpro1'. +2007-08-29 Dan Nicolaescu -2001-11-28 Stefan Monnier + * callproc.c (child_setup, getenv_internal): Use the + display-environment-variable and term-environment-variable frame params. + (set_initial_environment): Initialise Vprocess_environment. - * ccl.c: Use AREF and ASIZE. + * config.in: Disable multi-keyboard support on a mac. -2001-11-27 Stefan Monnier + * frame.c (Qterm_environment_variable) + (Qdisplay_environment_variable): New variables. + (syms_of_frame): Intern and staticpro them. + (Fmake_terminal_frame): Disable output method test. - * lisp.h (run_hook_list_with_args): Remove. - (LIST_END_P): Fix call to wrong_type_argument. - (make_fixnum_or_float): Use EMACS_INT rather than int. + * frame.h: Declare them here. -2001-11-26 Stefan Monnier + * macfns.c (x_set_mouse_color): Get rif from the frame. + (x_set_tool_bar_lines): Don't use updating_frame. + (mac_window): Add 2 new parameters for consistency with other systems. + (Fx_create_frame): Fix doc string. Rename the parameter. Set the + frame parameters following what is done in X11 and w32. Don't use + FRAME_MAC_DISPLAY_INFO. + (Fx_open_connection, start_hourglass): Remove window-system check. + (x_create_tip_frame): Get the keyboard from the terminal. - * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax. - (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove. + * macmenu.c: Reorder includes. + (Fx_popup_menu): Use terminal specific mouse_position_hook. - * eval.c: Use AREF and ASIZE. - (Ffetch_bytecode): Add the file name to the error message. + * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a + terminal parameter. + (x_clear_frame): Add a frame parameter. + (note_mouse_movement): Get rif from the frame. + (mac_term_init): Initialize the terminal. + (mac_initialize): Make static and move terminal initialization ... + (mac_create_terminal): ... to this new function. - * fileio.c (Ffind_file_name_handler): Give precedence to handlers - which match the end of the file-name. - (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR - is not a valid env var, but leave it as is instead. + * macterm.h (struct mac_display_info): Add terminal. + (mac_initialize): Delete declaration. - * keymap.c (access_keymap): Handle t bindings like nil bindings. - Make nil bindings in char-tables transparent. - (store_in_keymap): Turn a nil binding into a t binding for char-tables. + * puresize.h (BASE_PURESIZE): Increase base value to 1164000. -2001-11-26 Richard M. Stallman + * sysdep.c: Comment out text after #endif. - * textprop.c (set_text_properties_1): Allow START, END in either order. - Do nothing if range is empty. + * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD + is defined. Better initialize ttys in windows. Use terminal + specific mouse_position_hook. - * Makefile.in (mallocobj): Simplify logic using auxiliary vars. + * termhooks.h (union display_info): Add mac_display_info. - * Makefile.in (mostlyclean): Delete bootstrap-emacs here. - (clean): Not here. + * w32fns.c (Fx_create_frame): Use kboard from the terminal. + Set the default minibuffer frame, window_system and the rest of the + frame parameters following what is done in X11. -2001-11-25 Stefan Monnier + * w32term.c (w32_initialize): Make static. - * textprop.c (set_text_properties_1): Clearly mark that the - interval should not be empty. + * xselect.c (x_handle_selection_clear): Only access + terminal->kboard when MULTI_KBOARD is defined. - * intervals.c (graft_intervals_into_buffer): - Don't call set_text_properties_1 on an empty interval. + * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here. + (SYSTEM_PURESIZE_EXTRA): Only define on Carbon. -2001-11-25 Richard M. Stallman +2007-08-29 Jason Rumney - * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss". + * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined. + (make_terminal_frame) [WINDOWSNT]: Initialize terminal. - * callproc.c (Fcall_process): When we make a bigger buffer for bufptr, - don't lose the data in it. + * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]: + (mac_init_fringe) [MAC_OS]: Get rif from selected_frame. -2001-11-25 Juanma Barranquero + * keyboard.c (restore_kboard_configuration): Only define when + MULTI_KBOARD defined. - * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks. + * makefile.w32-in: Update dependancies from Makefile.in. + (OBJ1): Add terminal.$(O) - * buffer.c (Fkill_buffer): Likewise. + * term.c (dissociate_if_controlling_tty) [WINDOWSNT]: + Don't define function body. + (init_tty) [WINDOWSNT]: Use selected_frame for initializing. - * print.c (temp_output_buffer_setup): Likewise. + * termhooks.h (display_info) [WINDOWSNT]: Add w32. -2001-11-25 Stefan Monnier + * w32.c (request_sigio, unrequest_sigio): Remove. - * xfaces.c (merge_face_heights): Coerce back to int explicitly. + * w32console.c (w32con_move_cursor, w32con_clear_to_end) + (w32con_clear_frame, w32con_clear_end_of_line) + (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs) + (w32con_delete_glyphs, w32con_set_terminal_window) + (scroll_line, w32_sys_ring_bell): Add frame arg. + (w32con_set_terminal_modes, w32con_reset_terminal_modes): + Add terminal arg. + (PICK_FRAME): Remove. + (w32con_write_glyphs): Use frame specific terminal coding. + (one_and_only_w32cons): New global variable. + (initialize_w32_display): Use it for storing hooks. + (create_w32cons_output): New function. -2001-11-25 Eli Zaretskii + * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first + arg a frame. - * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi - Niemitalo . + * w32fns.c (x_create_tip_frame): Set terminal and ref count. + Set window_system. + (x_set_tool_bar_lines): Don't use updating_frame. + (Fx_create_frame): Set terminal and ref count. + (Fx_open_connection): Remove window-system check. -2001-11-25 Jason Rumney + * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook. - * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames. + * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor. + (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg. + (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines): + Add frame arg. + (x_delete_terminal, w32_create_terminal): New functions. + (w32_term_init): Create a terminal. + (w32_initialize): Move terminal specific initialization to + w32_create_terminal. - * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0. - (Fx_show_tip): Block input during frame creation. - (Fx_show_tip, Fx_hide_tip): Enable. + * w32term.h (x_output): Remove foreground_pixel and background_pixel. + (w32_clear_rect, w32_clear_area): Use background from frame. + (w32_display_info): Add terminal. + (w32_sys_ring_bell, x_delete_display): Declare here. -2001-11-24 Richard M. Stallman + * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type. - * lread.c (Fload): Detect recursive load error for more than 3 - nestings of the same file. - (Vrecursive_load_depth_limit): Variable deleted. - (syms_of_lread) : Variable deleted. + * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k. -2001-11-24 Jason Rumney +2007-08-29 Kalle Olavi Niemitalo (tiny change) - * xfns.c (compute_tip_xy): Initialize root_x and root_y from - mouse position if either left or top is not specified. + * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char): + Fix get_named_tty calls for the controlling tty. - * w32fns.c (w32_wnd_proc) : Revert last change. - : Let tip frames resize without restriction. - (my_create_tip_window, Fx_show_tip): Adjust size for external border. - (my_create_tip_window): Assign tip_window. - (x_create_tip_frame): Use same defaults as X. - (compute_tip_xy): Remove unused variable. Use full screen width. - (Fx_show_tip): Do not double height. Call ShowWindow directly. +2007-08-29 ARISAWA Akihiro (tiny change) - * w32term.c (x_after_update_window_line): Doc fix. - (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip - frames. - : Redo mouse highlight when hiding tip frame. + * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error. - * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame - for all Windowed systems. +2007-08-29 Yoshiaki Kasahara (tiny change) -2001-11-23 Eli Zaretskii + * term.c (tty_insert_glyphs): Add missing first parameter. - * msdos.c (IT_clear_screen): If the frame's faces are not yet - realized, use the initial screen colors to clear the screen. +2007-08-29 Károly Lőrentey -2001-11-23 Pavel Jan,Am(Bk + * buffer.c (Fbuffer_list, Fbury_buffer): + Take frame->buried_buffer_list into account. - * textprop.c (Fset_text_properties): Remove unused variables - `unchanged', `prev_changed', `s' and `len'. + * cm.c (current_tty): New variable, for cmputc(). + (cmputc): Use it. + (cmcheckmagic): Add tty parameter, look up terminal streams there. + (calccost): Add tty parameter. Use emacs_tputs() instead of tputs(). + (cmgoto): Add tty parameter. Pass it on to calccost(). + Use emacs_tputs() instead of tputs(). - * search.c (Freplace_match): Remove unused variable `inslen'. - - * keymap.c (access_keymap): Remove unused variables `c1' and `c2'. - -2001-11-22 Jason Rumney - - * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment. - (w32_wnd_proc) : Show help echo directly. - (my_create_tip_window): New function. - (x_create_tip_frame, compute_tip_xy): Adapt for Windows. - (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows. - -2001-11-20 Jason Rumney - - * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove. - (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system. - - * w32fns.c (Vw32_system_coding_system): Remove. - (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system. - -2001-11-19 Stefan Monnier - - * fileio.c (Fwrite_region): Move choose_write_coding_system to - after build_annotations. - - * syntax.c (describe_syntax): Add dummy arg. - (describe_syntax_1): Update call to describe_vector. - - * category.c (describe_category): Add dummy arg. - (describe_category_1): Update call to describe_vector. - - * keymap.c (Fdescribe_vector): Add `describer' parameter. - (describe_command, describe_translation): Add dummy second param. - (describe_map): Call elt_describer with two arguments. - (describe_vector_princ): Add `fun' parameter. - Call it instead of the hardcoded `princ'. - (describe_vector): Add arg `args'. - Pass it as a new second argument to elt_describer. + * cm.h (emacs_tputs): New macro to set current_tty, and then call + tputs(). + (current_tty): New variable, for cmputc(). + (cmcheckmagic, cmputc, cmgoto): Add prototypes. - * keymap.h (describe_vector): Update prototype. + * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors. + (internal_condition_case, internal_condition_case_1) + (internal_condition_case_2): Don't abort when x_catching_errors. - * frame.c: Don't include keymap.h any more. - (keys_of_frame): Remove. + * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals. + (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to + prevent crashes caused by bogus longjmps in read_char. - * lisp.h (keys_of_frame): Remove declaration. + * keymap.h (Fset_keymap_parent): Add EXFUN. - * emacs.c (main): Don't call `keys_of_frame' any more. + * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL) + * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): + Remove redundant definition. -2001-11-14 Andreas Schwab + * macfns.c (x_set_mouse_color, x_make_gc): + Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL. - * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS - if defined, 0 otherwise. - (MAP_FAILED): Define if not defined and use it to test mmap failure. - (unexec) [!MAP_ANON]: Use /dev/zero as file to map. + * w32term.c (x_free_frame_resources): + Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL. + (w32_initialize): Use the accessor macros for terminal characteristics. -2001-11-19 Richard M. Stallman + * macterm.c (mac_initialize): Use Fset_input_interrupt_mode. + Use the accessor macros for terminal characteristics. + * msdos.c (internal_terminal_init): Use the accessor macros for + terminal characteristics. + (ScreenVisualBell, internal_terminal_init): + Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL. - * indent.c (current_column_1): Fix handling of scan_bytes for mb chars. + * termopts.h (no_redraw_on_reenter): Declare. -2001-11-18 Jason Rumney + * alloc.c (emacs_blocked_malloc): Disable mallopt call. + (mark_terminals, mark_ttys): Declare. + (Fgarbage_collect): Call them. + (mark_object): Mark buried_buffer_list. - * w32term.c (note_mouse_highlight): Fix type of variable `ignore'. - (x_draw_bar_cursor): If the background color of the glyph under - the cursor equals the frame's cursor color, use the glyph's - foreground color for drawing the bar cursor. - (x_after_update_window_line): Clear internal border in different - circumstances. - (w32_set_vertical_scroll_bar): Check for width and height > 0. - (w32_draw_relief_rect): Correct relief by 1 pixel. - (x_set_glyph_string_background_width): - Set extends_to_end_of_line_p if the row's fill_line_p is set and - drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}. - (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR - if cursor_in_non_selected_windows is false. - (show_mouse_face): Clean up. Recognize overwritten cursor differently. - (x_draw_glyphs): Remove parameters REAL_START and REAL_END. - Notice if cursor gets overwritten. - (notice_overwritten_cursor): Renamed from - note_overwritten_text_cursor. Rewritten to take glyph widths - into account, and to take X positions as parameters. - (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p - around call to x_draw_glyphs. - (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and - `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background - color to use for image glyph reliefs. - (x_draw_image_relief): Accept zero tool_bar_button_relief. - (glyph_rect): Remove unused variable `area'. + * prefix-args.c: Include stdlib.h for exit. - * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for - some items. - (x_set_internal_border_width): Set frame garbaged when window - doesn't exist yet. - (Fx_create_frame): Accept zero tool_bar_button_relief. - (x_clear_image_1, four_corners_best, image_background) - (image_background_transparent): New functions. - (xpm_format, png_format, jpeg_format, tiff_format, gif_format) - (gs_format): Add `:background' entry. - (lookup_image): Set IMG's background color if specified. - (pbm_load, xbm_load_image, png_load): Set IMG's background field - when appropriate. - (x_clear_image_1): Reset `background_valid' and - `background_transparent_valid' fields. - (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of - calculating it here. Set IMG's background_transparent field. - (enum xpm_keyword_index): Add XPM_BACKGROUND. - (enum png_keyword_index): Add PNG_BACKGROUND. - (enum jpeg_keyword_index): Add JPEG_BACKGROUND. - (enum tiff_keyword_index): Add TIFF_BACKGROUND. - (enum gif_keyword_index): Add GIF_BACKGROUND. - (enum gs_keyword_index): Add GS_BACKGROUND. - (pbm_load, png_load, jpeg_load, tiff_load, gif_load): - Pre-calculate image background color where necessary. - (x_create_x_image_and_pixmap, xbm_load, gs_load): - Use display info's n_cbits entry for screen depth. - (Fx_show_tip): Remove unused variables `buffer', `top', - `left', `max_width' and `max_height'. + * syssignal.h: Add comment. - * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes. + * indent.c: Include stdio.h. -2001-11-18 Gerd Moellmann + * window.h (Vinitial_window_system): Declare. + (Vwindow_system): Delete declaration. - * puresize.h (BASE_PURESIZE): Increase to 750000. + * fontset.c (Finternal_char_font): Use FRAME_RIF. -2001-11-18 Pavel Jan,Am(Bk + * image.c (lookup_image): Don't initialize `c' until the xasserts + have been run. - * frame.c (Fframe_live_p): Doc fix. + * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and + FRAME_FOREGROUND_PIXEL. -2001-11-18 Richard M. Stallman + * print.c (print_preprocess): Don't lose print_depth levels while + iterating. - * xdisp.c (message_dolog_marker1, message_dolog_marker2) - (message_dolog_marker3): New static variables hold three markers. - (syms_of_xdisp): Initialize and staticpro them. - (message_dolog): Use message_dolog_marker1..3 instead of - allocating markers each time. Unchain them when done. + * widget.c (update_from_various_frame_slots): + Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL. -2001-11-17 Richard M. Stallman + * window.c (set_window_buffer): Don't call clear_mouse_face on tty + frames. + (window_internal_height): Remove bogus make_number call. + (init_window_once): Call make_terminal_frame with two zero parameters. - * doc.c (Fsnarf_documentation): Doc fix. + * fileio.c (Fread_file_name): Update comment. -2001-11-17 Andreas Schwab + * callint.c (Fcall_interactively): + Use temporarily_switch_to_single_kboard instead of single_kboard_state. + Make sure it is correctly unwound. + + * xsmfns.c (x_session_close): New function. + + * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding): + Delete declarations. + + * xterm.h: Remove declaration for x_fully_uncatch_errors. + (x_output): Remove background_pixel and foreground_pixel fields. + (x_display_info): Add new field TERMINAL. Remove KBOARD field. + (x_delete_device): + (x_session_close): Declare. + + * lread.c: Include setjmp.h. Update declaration of `read_char'. + (read_filtered_event): Call `read_char' with a local + `wrong_kboard_jmpbuf'. + + * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard. + Don't call single_kboard_state. Use FRAME_RIF. + + * process.c (Fmake_network_process): Don't unrequest_sigio on modern + systems. + + * lisp.h (set_process_environment): Rename to `set_global_environment'. + (Fframe_with_environment, Fset_input_meta_mode) + (Fset_quit_char): EXFUN. + (x_create_device, tty_output, terminal, tty_display_info): Declare. + (init_sys_modes, reset_sys_modes): Update prototypes. + (init_all_sys_modes, reset_all_sys_modes): New prototypes. + + * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map, + Vlocal_key_translation_map, and Vkeyboard_translate_table. + (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state): + Delete declarations. + (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard) + (temporarily_switch_to_single_kboard, tty_read_avail_input): + New declarations. + + * emacs.c (main): Don't call init_sys_modes(), the new term_init() + already does that during init_display(). Call syms_of_keymap + before syms_of_keyboard. Call `syms_of_terminal'. + Call set_initial_environment, not set_process_environment. + (shut_down_emacs): Call reset_all_sys_modes() instead of + reset_sys_modes(). + + * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG. + (internal_resolve_face_name, resolve_face_name_error): New functions. + (resolve_face_name): Protect against loops and errors thrown by Fget. + (realize_default_face): Don't use FRAME_FONT unless frame is an X frame. + (Ftty_supports_face_attributes_p): Update tty_capable_p call. + + * scroll.c: Replace CURTTY() with local variables throughout the + file (where applicable). + (calculate_scrolling, calculate_direct_scrolling) + (scrolling_1, scroll_cost): Use the accessor macros for terminal + characteristics. + + * keymap.c (Vfunction_key_map): Remove. + (Fdescribe_buffer_bindings): Update references to Vfunction_key_map. + (syms_of_keymap): Remove DEFVAR for Vfunction_key_map. + (Vkey_translation_map): Remove. + (syms_of_keymap): Remove DEFVAR for key-translation-map. + (Fdescribe_buffer_bindings): + (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards): + Update for terminal-local key-translation-map. + + * Makefile.in (callproc.o): Update dependencies. + (lisp, shortlisp): Add termdev.elc. + (obj): Add terminal.o. + (terminal.o): Add dependencies. + [HAVE_CARBON]: Make terminal.o depend on macgui.h. + (data.o, fns.o): Add termhooks.h dependency. + (SOME_MACHINE_LISP): Add dnd.elc. + (minibuf.o): Fix typo. + Update dependencies. + + * data.c (do_symval_forwarding, store_symval_forwarding) + (find_symbol_value): Use the selected frame's keyboard, not + current_kboard. + + * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of + Vwindow_system. + + * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from + Fmenu_bar_open. + (syms_of_xmenu): Update defsubr. + (mouse_position_for_popup, Fx_popup_menu) + (Fx_popup_dialog, x_activate_menubar, update_frame_menubar) + (set_frame_menubar, free_frame_menubar) + (create_and_show_popup_menu, xmenu_show, ) + (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not + an X frame. + + * xselect.c (x_own_selection): Abort if not an X frame. + (some_frame_on_display): Check if it is an X frame. + (x_handle_selection_clear): Deal with MULTI_KBOARD. + + * coding.c: Include frame.h and termhooks.h. + (terminal_coding, keyboard_coding): Delete. + (Fset_terminal_coding_system_internal): + (Fset_keyboard_coding_system_internal): + (Fkeyboard_coding_system): + (Fterminal_coding_system): Add a terminal parameter. + Get terminal_coding from the terminal. + (init_coding_once): Don't call setup_coding_system here. + + * dispextern.h (set_scroll_region, turn_off_insert) + (turn_off_highlight, background_highlight, clear_end_of_line_raw) + (tty_clear_end_of_line, tty_setup_colors) + (delete_tty, updating_frame) + (produce_special_glyphs, produce_glyphs, write_glyphs) + (insert_glyphs): Remove. + (raw_cursor_to, clear_to_end, tty_turn_off_insert) + (tty_turn_off_highlight, get_tty_size): Add declaration. + (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes. + + * frame.h (enum output_method): Add output_initial. + (struct x_output): Delete. + (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): + Access foreground_pixel and background_pixel directly from the frame. + (tty_display): Delete. + (struct frame): Add buried_buffer_list, foreground_pixel, + background_pixel and terminal. Delete kboard + (union output_data): Add tty. + (FRAME_KBOARD): Get the kboard from the terminal. + (FRAME_INITIAL_P): New macro. + (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment) + (Qterm_environment_variable, Qdisplay_environment_variable) + (make_terminal_frame, Qburied_buffer_list, Qwindow_system): + New declarations. + + * termchar.h (tty_output, tty_display_info): New structures. + (tty_list): Declare. + (FRAME_TTY, CURTTY): New macros. + (must_write_spaces, min_padding_speed, fast_clear_end_of_line) + (line_ins_del_ok, char_ins_del_ok, scroll_region_ok) + (scroll_region_cost, memory_below_frame, fast_clear_end_of_line) + (dont_calculate_costs, no_redraw_on_reenter): Remove declarations. + + * callproc.c: Include frame.h and termhooks.h, for terminal + parameters. + (add_env): New function. + (child_setup): Use it. + (child_setup, getenv_internal): Handle the new Vprocess_environment. + (getenv_internal): Fix get_terminal_param call. + (Fgetenv_internal, egetenv): Update doc. + (syms_of_callproc): Initialize Vprocess_environment to nil. + Register and initialize them. Remove obsolete defvars. Update doc + strings. + (child_setup): Handle Vlocal_environment_variables. + (getenv_internal): Add terminal parameter. + Handle Vlocal_environment_variables. + (Fgetenv_internal): Add terminal parameter. + (child_setup, getenv_internal, Fgetenv_internal): Store the local + environment in a frame (not terminal) parameter. Update doc strings. + (set_initial_environment): Rename from set_global_environment. + Store Emacs environment in initial frame parameter. + + * xdisp.c (redisplay_internal): Update references to + `previous_terminal_frame'. + (display_mode_line, Fformat_mode_line): Replace calls to + `push_frame_kboard' with `push_kboard'. + (get_glyph_string_clip_rects): Add extra parentheses and + braces to prevent compiler warnings. + (calc_pixel_width_or_height): Add xassert to check that the + frame is alive. Don't call `lookup_image' on a termcap frame. + (message2_nolog, message3_nolog, redisplay_internal) + (set_vertical_scroll_bar, redisplay_window, check_x_display_info) + (x_set_scroll_bar_foreground, x_set_scroll_bar_background) + (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p) + (Fx_display_pixel_width, Fx_display_pixel_height) + (Fx_display_planes, Fx_display_color_cells) + (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version) + (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width) + (Fx_display_backing_store, Fx_display_visual_class) + (Fx_display_save_under, Fx_close_connection, x_create_tip_frame): + Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF. + + * xfns.c (x_set_foreground_color x_set_background_color) + (x_set_mouse_color, x_set_cursor_color, x_make_gc): + Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL. + (Fx_create_frame, x_create_tip_frame, build_string, x_window) + (Fx_create_frame, x_create_tip_frame): Don't create frames on a + terminal that is being deleted. + (Fx_create_frame): Use `store_frame_param' to set `window-system' + frame parameter, and make sure it overrides any user-supplied setting. + (Fx_close_connection, Fx_synchronize): Unify argument names with + the rest of the DEFUNs. + + * dispnew.c (Fsend_string_to_terminal): Update call to + `get_tty_terminal'. + (Fredraw_frame, Fsend_string_to_terminal) + (Fsend_string_to_terminal, init_display): Use FRAME_RIF, + FRAME_TERMCAP_P and FRAME_TTY. + (window_change_signal): Don't believe width/height values that are + impossibly small. + (Vinitial_window_system): Rename from Vwindow_system. + (termscript, Wcm, rif): Delete. + + * termhooks.h (struct terminal): New struct containing the + previously global text display hooks and new members NAME, + DELETED and PARAM_ALIST. + (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING) + (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P) + (FRAME_RIF): New macros. + (get_terminal_param, get_device): New declarations. + (termscript): Delete declaration. + + * xterm.c (x_initialize): Use Fset_input_interrupt_mode. + (XTflash, x_free_frame_resources, x_scroll_bar_create) + (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and + FRAME_FOREGROUND_PIXEL. + (x_fully_uncatch_errors): Disable definition. + (x_scroll_bar_expose): Fix reference to foreground pixel. + (XTread_socket): Disable loop on all X displays. + (x_delete_terminal): Don't set terminal->deleted and let + delete_terminal delete the frames on the terminal. + (x_delete_display): Doc update to reflect changes in + delete_terminal. + (x_display_info) : Move member earlier in the struct. + (deleting_tty): Remove old variable. + (Fsuspend_tty): Call clear_tty_hooks. + (Fresume_tty, init_tty): Call set_tty_hooks. + (Ftty_display_color_p, Ftty_display_color_cells): Don't throw + errors on X frames. + (x_catch_errors_unwind): Abort if x_error_message is NULL. + (handle_one_xevent): Initialize `f' to NULL. + (x_delete_terminal, x_create_terminal): New functions. + (XTset_terminal_modes, XTreset_terminal_modes) + (XTread_socket, x_connection_closed, x_term_init) + (x_term_init, x_delete_display): Add terminal parameter. + (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary + X connections. + + * frame.c: Include termchar.h. + (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type) + (Qwindow_system, Qenvironment, Qterm_environment_variable) + (Qdisplay_environment_variable): New vars. + (Fframep): Deal with output_initial. + (Fframe-live-p): Doc fix. + (Fwindow-system): New function. + (x_set_screen_gamma, store_frame_param): Fix compilation errors. + (make_terminal_frame): Don't create frames on a terminal that is + being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL. + (store_frame_param): Check for found_for_frame before calling XFRAME. + (Fmake_terminal_frame): Handle NULL tty names correctly. + (syms_of_frame): Enhance doc string of `default-frame-alist'. + (Fdelete_frame): Remove unused variable `count'. Don't allow other + frames to refer to a deleted frame in their 'environment parameter. + (Fframe_with_environment): New function. + (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment. + (get_future_frame_param): New function. + (Fmake_terminal_frame): Use it. + (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF. + + * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames. + * sysdep.c (reset_sys_modes): Update for renames. + + * keyboard.c (tty_read_avail_input): New function. + (Fset_input_interrupt_mode, Fset_output_flow_control): New functions. + (syms_of_keyboard): Defsubr them. + (Fset_input_meta_mode, Fset_quit_char): New functions. + (Fset_input_mode): Split to above functions. + + (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf + parameter. Use it in call to `read_char'. + (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'. + Set wrong_kboard_jmpbuf correctly in recursive calls. + Use current_kboard to access Vkeyboard_translate_table. + Enhance comment before extra longjmp to wrong_kboard_jmpbuf. + Add wrong_kboard_jmpbuf parameter to allow for recursive calls. + Update longjmp invocations. Remember the original current_kboard, + and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel + changes it. Comment out unnecessary calls to + `record_single_kboard_state' and `any_kboard_state'. + Update recursive calls. + (wrong_kboard_jmpbuf): Remove global variable. + (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf. + Handle deleted interrupted_kboards correctly; that is a legal + case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp + and read_char calls. Abort if interrupted_kboard died in read_char. + (any_kboard_state, single_kboard_state) + (push_frame_kboard): Remove function. + (pop_kboard): Switch out of single_kboard mode if the kboard has + been deleted. Remove unused variable. Help debugging by not + changing current_kboard unnecessarily. Set current_kboard to the + kboard of the selected frame when the stored kboard object has + been deleted before pop_kboard. + (temporarily_switch_to_single_kboard): Change first parameter to a + frame pointer. Throw an error when caller wants to change kboards + while in single_kboard mode. Don't push_kboard if we weren't in + single kboard state. Don't pop_kboard if we popped into any + kboard state. + (restore_kboard_configuration): Abort if pop_kboard changed the + kboard in single_kboard mode. Call pop_kboard only after setting + up single_kboard mode. + (Frecursive_edit): Switch to single_kboard mode only in nested + command loops. + (cmd_error, command_loop, command_loop_1, timer_check): + Comment out unnecessary call to `any_kboard_state' and + `record_single_kboard_state'. + (delete_kboard): Exit single_kboard mode if we have just deleted + that kboard. Use FRAME_KBOARD. + (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not + `fatal_error_signal'. + (record_single_kboard_state): Don't push_kboard if we weren't in + single kboard state. Don't pop_kboard if we popped into any + kboard state. + (push_frame_kboard): Rename to push_kboard. + (kbd_buffer_get_event): Use FRAME_TERMINAL. + (read_avail_input): Read input from all terminals. + (mark_kboards): Also mark Vkeyboard_translate_table. + (kbd_buffer_store_event_hold): Simplify condition. + (read_key_sequence): Reinitialize fkey and keytran at each replay. + (Vkeyboard_translate_table): Move to struct kboard. + (init_kboard): Initialize Vkeyboard_translate_table. + (syms_of_keyboard): Use DEFVAR_KBOARD to define + Vkeyboard_translate_table. Update doc strings. Update docs of + local-function-key-map and function-key-map. + + * terminal.c: New file. + + * term.c: Include errno.h. + (Vring_bell_function, device_list, initial_device) + (next_device_id, ring_bell, update_begin, update_end) + (set_terminal_window, cursor_to, raw_cursor_to) + (clear_to_end, clear_frame, clear_end_of_line) + (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines) + (Fdisplay_name, create_device, delete_device): Move to terminal.c. + (syms_of_term): Move their initialization to terminal.c. + (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p) + (Ftty_display_color_cells) + (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output) + (clear_tty_hooks, set_tty_hooks) + (init_tty, maybe_fatal): New functions. + (Ftty_type): Return nil if terminal is not on a tty instead of + throwing an error. Doc update. + (syms_of_term) : + Doc update. Initialize new subrs and variables. + (delete_tty): Use terminal->deleted. + (tty_set_terminal_modes): Rename from set_terminal_modes. + (tty_reset_terminal_modes): Rename from reset_terminal_modes. + (set_scroll_region): Rename to `tty_set_scroll_region'. + (turn_on_insert): Rename to `tty_turn_on_insert'. + (turn_off_insert): Rename to `tty_turn_off_insert'. + (turn_off_highlight): Rename to `tty_turn_off_highlight'. + (turn_on_highlight): Rename to `tty_turn_on_highlight'. + (toggle_highligh): Rename to `tty_toggle_highlight'. + (background_highlight): Rename to `tty_background_highlight'. + (highlight_if_desired): Rename to `tty_highlight_if_desired'. + (tty_ring_bell, tty_update_end, tty_set_terminal_window) + (tty_set_scroll_region, tty_background_highlight) + (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end) + (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs) + (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines) + (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty): + Add static modifier. + (tty_reset_terminal_modes, tty_set_terminal_window) + (tty_set_scroll_region, tty_background_highlight) + (tty_highlight_if_desired, tty_cursor_to) + (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame) + (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs) + (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for + renames. + +2007-08-28 Jan Djärv - * xterm.c (note_mouse_highlight): Fix type of variable `ignore'. + * keyboard.c: Qrtl is new. + (parse_tool_bar_item): Handle :rtl keyword. + (syms_of_keyboard): Intern :rtl keyword. -2001-11-17 Richard M. Stallman + * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE. - * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object. + * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED + so no Lisp code is executed. + (file_for_image, find_rtl_image): New functions. + (xg_get_image_for_pixmap): Use file_for_image + (update_frame_tool_bar): If direction is RTL, use RTL image if + defined. Use Gtk stock images if defined. -2001-11-17 Jason Rumney +2007-08-27 YAMAMOTO Mitsuharu - * xterm.c (notice_overwritten_cursor): Take care of end < 0 case. + * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle + for nonexistent or zero-width glyph in composition glyph. -2001-11-17 Gerd Moellmann +2007-08-25 Stefan Monnier - * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property - with invalid position. + * m/amdx86-64.h: Redirect to intel386.h if compiling for i386. -2001-11-16 Richard M. Stallman + * xdisp.c (Finvisible_p): New function. + (syms_of_xdisp): defsubr it. - * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex. +2007-08-24 Juanma Barranquero - * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef. - * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef. - * s/hpux8.h (HAVE_SYS_WAIT_H): Define it. + * image.c (syms_of_image) : + Doc fixes. - * m/convex.h (HAVE_SYS_WAIT_H): Add #undef. +2007-08-24 YAMAMOTO Mitsuharu -2001-11-16 Stefan Monnier + * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes. - * fileio.c (build_annotations): Split off the tail. - (build_annotations_2): New fun. Extracted from build_annotations. - (Fwrite_region): Split the call to build_annotations into two - calls to build_annotations and build_annotations_2. +2007-08-24 Martin Rudalics -2001-11-16 Pavel Jan,Am(Bk + * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell + whether decoding has modified buffer contents. - * sysdep.c (wait_for_kbd_input) [VMS]: Do not call - clear_waiting_for_input with argument. +2007-08-24 Jason Rumney - * xterm.h (x_update_cursor): Remove duplicated prototype. + * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG. + (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols. + (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them. + (init_svg_functions) [HAVE_NTGUI]: New function. + (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines. + (svg_load_image): Use them. + (svg_load_image) [HAVE_NTGUI]: Implement background. - * keyboard.h (clear_waiting_for_input): Remove duplicated prototype. +2007-08-23 YAMAMOTO Mitsuharu - * xterm.c (waiting_for_input): Remove unnecessary declaration. + * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables. + (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@. + (LIBX): Remove @RSVG_LIBS@. + (LIBES): Add $(RSVG_LIBS). - * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix. + * image.c (svg_load_image): Blend with specified background if exists. + Use IMAGE_BACKGROUND. Add Mac OS Support. -2001-11-16 Stefan Monnier + * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable. + (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]: + Remove macros. + [MAC_OSX] (socket_callback): Do nothing. + [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of + ReceiveNextEvent. + [MAC_OSX] (sys_select): Likewise. Don't set context as argument to + socket_callback. + (mac_wakeup_from_rne) [MAC_OSX]: Do nothing. - * fileio.c (choose_write_coding_system): New fun, extracted - from Fwrite_region. - (Fwrite_region): Use it. +2007-08-22 Glenn Morris - * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT. - (funcall_lambda, run_hook_with_args): Make static and add prototype. - (ml_apply, find_handler_clause): Add prototype. + * image.c (x_find_image_file): Search in etc/images/ rather than etc/. -2001-11-16 Eli Zaretskii +2007-08-22 Paul Pogonyshev - * config.in: Add #undef HAVE_COFF_H. + * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS. - * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined. - Required for ISC 4.1. + * image.c: Add support for SVG images. Some additional comments + by Joakim Verona . When HAVE_RSVG is defined: + (svg_image_p): New function to test for SVG image. + (svg_load): New function to load SVG image. + (svg_load_image): New function, helper for svg_load. + (Qsvg): New Lisp_object. + (svg_keyword_index): New enum. + (svg_format): New static `image_keyword' struct. + (svg_type): New static `image_type' struct. + (librsvg/rsvg.h): Include it. -2001-11-16 Eli Zaretskii +2007-08-23 Stefan Monnier - * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by - Andrew Wiseman . + * lread.c (load_warn_old_style_backquotes): Fix up array size typo. -2001-11-16 Kim F. Storm +2007-08-22 Stefan Monnier - The following changes are made to clean up the various internal - references to the fringes to actually use the term `fringe' for - them. Previously, they were called `flags areas', `bitmap areas', - `left/right side of windows', or implicitly as `flags' or - `bitmaps': + * lread.c (Qold_style_backquotes): New var. + (syms_of_lread): Init and staticpro it. + (load_warn_old_style_backquotes): New fun. + (Fload): Use them to warn about old style backquotes. + (end_of_file_error, Fload): Remove unused vars. - * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID. - Comments fixed. Use renamed symbols. + * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare. - * dispnew.c: Comment fix. Use renamed symbols. + * lread.c (Vold_style_backquotes): New var. + (syms_of_lread): Init and export it to Elisp. + (read1): Set it when we find an old-style (back)quote. - * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS. - (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH. - (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH. +2007-08-22 Jason Rumney - * msdos.c: Comment fix. + * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator. - * w32fns.c: Use renamed symbols. +2007-08-22 Katsumi Yamaoka - * w32term.c: Comment fixes. Use renamed symbols. - (fringe_bitmap_type): Renamed from bitmap_type. - (NO_FRINGE_BITMAP): Renamed from NO_BITMAP. - (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap. - (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps. + * puresize.h (BASE_PURESIZE): Increase to 1140000. - * w32term.h: Comment fixes. Use renamed symbols. - (fringes_extra): Renamed from flags_areas_extra. - (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH. - (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT. - (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS. - (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH. - (FRAME_X_LEFT_FRINGE_WIDTH): - Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH. - (FRAME_X_RIGHT_FRINGE_WIDTH): - Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH. +2007-08-19 Richard Stallman - * widget.c: Use renamed symbols. + * eval.c (Ffunction, Fquote): Signal error if not 1 argument. - * window.c: Comment fixes. Use renamed symbols. - (coordinates-in-window-p): Doc fix. +2007-08-19 Andreas Schwab - * xdisp.c: Comment fixes. Use renamed symbols. + * alloc.c (pure): Round PURESIZE up. - * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID. +2007-08-17 Jan Djärv - * xfns.c: Use renamed symbols. + * xterm.c (handle_one_xevent): Remove check that mouse click is in + active frame. - * xterm.c: Comment fixes. Use renamed symbols. - (fringe_bitmap_type): Renamed from bitmap_type. - (NO_FRINGE_BITMAP): Renamed from NO_BITMAP. - (x_draw_fringe_bitmap): Renamed from x_draw_bitmap. - (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps. +2007-08-16 Richard Stallman - * xterm.h: Comment fixes. Use renamed symbols. - (fringes_extra): Renamed from flags_areas_extra. - (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH. - (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT. - (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS. - (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH. - (FRAME_X_LEFT_FRINGE_WIDTH): - Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH. - (FRAME_X_RIGHT_FRINGE_WIDTH): - Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH. + * eval.c (Fcommandp): Add parens to clarify. -2001-11-15 Jason Rumney + * minibuf.c (Fall_completions): Use enum for type of table. - * w32menu.c (add-menu-item): Make help_echo and radio buttons - work for most menu items. From David Ponce - . + * emacs.c (USAGE2): Improve text. -2001-11-15 Gerd Moellmann +2007-08-15 Philippe Waroquiers - * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07. - Some x_set_* function expect to be called even if old and new - value are equal. + * term.c (tty_default_color_capabilities): Declare static + variables in file scope, to avoid HPUX compiler problem. - * xdisp.c (build_desired_tool_bar_string): Accept zero - tool_bar_button_relief. +2007-08-13 Jan Djärv - * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief. + * gtkutil.c (update_frame_tool_bar): Use -1 as index + to gtk_toolbar_insert. - * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief. +2007-08-13 Stefan Monnier - * xterm.c (x_draw_bar_cursor): If the background color of the - glyph under the cursor equals the frame's cursor color, use - the glyph's foreground color for drawing the bar cursor. + * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup. - * dispnew.c (direct_output_forward_char): Fix character/byte - position comparison. + * insdel.c (reset_var_on_error): New fun. + (signal_before_change, signal_after_change): + Use it to reset (after|before)-change-functions to nil in case of error. + Bind inhibit-modification-hooks to t. + Don't bind (after|before)-change-functions to nil while they run. -2001-11-15 Miles Bader +2007-08-11 YAMAMOTO Mitsuharu - * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters. - (Fdelete_field, Ffield_string, Ffield_string_no_properties): - Update arguments to find_field. - (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field. - (Fconstrain_to_field): Use LIMIT arg to shorten search time. - * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl. - * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end. + * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when + filling pixmap with stippled background. -2001-11-14 Richard M. Stallman +2007-08-10 YAMAMOTO Mitsuharu - * editfns.c (Fpropertize): Allow call with 1 arg. + * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event): + Don't use invisible frame as parent window for repositioning. - * dispextern.h (image_background, image_background_transparent): - Conditionalize on HAVE_X_WINDOWS. +2007-08-10 Stefan Monnier -2001-11-13 Richard M. Stallman + * print.c (new_backquote_output): Rename from old_backquote_output. + (print): Inverse its logic (according to its name) so as to match the + behavior of new_backquote_flag in lread.c. - * print.c (Fprin1_to_string): Doc fix. +2007-08-09 YAMAMOTO Mitsuharu - * sunfns.c (Fsun_change_cursor_icon): Doc fix. + * gmalloc.c (posix_memalign): New function. - * floatfns.c (Fceiling, Ffloor): Doc fixes. + * macterm.c (frame_highlight, frame_unhighlight): Don't call + ActivateControl/DeactivateControl here. + [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when + frame-notice-user-settings is non-nil. + [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter + for kEventParamFMFontStyle. + [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check + mac_pass_command_to_system and mac_pass_control_to_system here. + (XTread_socket): Call ActivateControl/DeactivateControl here. + (XTread_socket) [TARGET_API_MAC_CARBON]: + Check mac_pass_command_to_system and mac_pass_control_to_system here. + (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround + for window repositioning. - * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes. +2007-08-08 Glenn Morris - * fileio.c (Ffile_accessible_directory_p): Doc fix. + * Replace `iff' in doc-strings and comments. - * eval.c (syms_of_eval): Doc fix. +2007-08-07 Chong Yidong - * coding.c (syms_of_coding): Doc fix. + * xdisp.c (move_it_by_lines): Remove incorrect optimization. - * doc.c (Fsnarf_documentation): Doc fix. +2007-08-07 Martin Rudalics - * dispnew.c (syms_of_display): Doc fix. + * fileio.c (Finsert_file_contents): Run format-decode and + after_insert_file_functions on entire buffer when REPLACE is + non-nil and inhibit modification_hooks and point_motion_hooks. + For consistency, run after_insert_file_functions iff something + got inserted. Move signal_after_change and update_compositions + after code running after_insert_file_functions. Make sure that + undo_list doesn't record intermediate steps of the decoding process. - * category.c (Fget_unused_category): Doc fix. +2007-08-07 YAMAMOTO Mitsuharu - * buffer.c (syms_of_buffer): Doc fixes. + * emacs.c (main) + [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]: + Call malloc_enable_thread on interactive startup. -2001-11-14 Eli Zaretskii + * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable. + (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS) + [USE_PTHREAD]: Conditionalize with it. + (malloc_atfork_handler_prepare, malloc_atfork_handler_parent) + (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]: + New functions. - * print.c (prin1, print): Doc fix. +2007-08-06 Chong Yidong -2001-11-14 Pavel Jan,Am(Bk + * xdisp.c (redisplay_window): When restoring original buffer + position, make sure it is still valid. - * fontset.h: Remove declarations of variables - `Vhighlight_wrong_size_font' and `Vclip_large_size_font'. + * image.c (png_load): Ignore png-supplied background color. - * fontset.c: Remove variables `Vhighlight_wrong_size_font' and - `Vclip_large_size_font'. +2007-08-06 YAMAMOTO Mitsuharu -2001-11-13 Jason Rumney + * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value. + Use kCFAbsoluteTimeIntervalSince1970. - * w32fns.c: Doc fix. + * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: + New variable. + [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog + event loop should be quit. + [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]: + Quit dialog event loop if quit_dialog_event_loop is set. -2001-11-13 Pavel Jan,Am(Bk + * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h. + (Selection): New typedef. Use instead of ScrapRef. + (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol. + (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p. + (mac_clear_selection): Rename from clear_scrap. + (get_flavor_type_from_symbol): New argument SEL and subsume function of + scrap_has_target_type. All uses changed. + (mac_get_selection_ownership_info, mac_valid_selection_value_p) + (mac_selection_has_target_p): New functions. + (mac_put_selection_value): Rename from put_scrap_string. + (mac_get_selection_value): Rename from get_scrap_string. + (mac_get_selection_target_list): Rename from get_scrap_target_type_list. + (put_scrap_private_timestamp, scrap_has_target_type) + (get_scrap_private_timestamp): Remove functions. + (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define. + (x_own_selection, x_get_local_selection): + Use mac_valid_selection_value_p. + (x_own_selection): Don't use put_scrap_private_timestamp. + Record OWNERSHIP-INFO into Vselection_alist instead. + (x_get_local_selection): Don't check type if request is local. + (Fx_selection_owner_p): Don't use get_scrap_private_timestamp. + Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead. - * xfaces.c (Fface_attributes_as_vector): Doc fix. +2007-08-04 Jan Djärv - * fns.c: Doc fix. + * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s, + add comment explaining why. - * emacs.c: Doc fix. +2007-08-03 Richard Stallman - * coding.c: Doc fix. + * fileio.c (Fvisited_file_modtime): Use make_time. - * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c, - * fontset.c, insdel.c, keymap.c: Change doc-string comments to - `new style' [w/`doc:' keyword]. +2007-08-01 Ryo Yoshitake (tiny change) -2001-11-12 Richard M. Stallman + * mac.c (init_mac_osx_environment): Adjust load-path on self-contained + build. - * xterm.c (XTread_socket): Don't update focus for EnterNotify or - LeaveNotify events. Only FocusIn and FocusOut do that now. - (x_display_and_set_cursor): Do display hollow cursors in active - minibuffer windows when they are not selected. +2007-07-31 Stefan Monnier -2001-11-12 Jason Rumney + * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT. - * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c, - * w32term.c: Change doc-string comments to `new style' - [w/`doc:' keyword]. Doc fixes. +2007-07-30 Katsumi Yamaoka - * w32fns.c: Don't define max. - (Fx_open_connection): Only execute once. + * puresize.h (BASE_PURESIZE): Increase to 1130000. -2001-11-12 Pavel Jan,Am(Bk +2007-07-30 Richard Stallman - * ccl.c: Change macros to use do-while block instead of if-else. - Use braces to follow GNU Coding Standards. + * lread.c (readevalloop, read1): Treat NBSP as whitespace. -2001-11-11 Richard M. Stallman +2007-07-29 Jan Djärv - * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR. + * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed. - * lread.c (read_escape): Use end_of_file_error for reporting eof. +2007-07-28 Nick Roberts - * insdel.c (replace_range): Use adjust_markers_for_replace - instead of adjust_markers_for_delete and adjust_markers_for_insert. + * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for + remote default-directory. - * intervals.h (set_text_properties, set_text_properties_1): Declare. + * buffer.c (mode-line-format): Update doc string. - * textprop.c (set_text_properties_1): New subroutine - broken out of set_text_properties. - (set_text_properties): Use set_text_properties_1. +2007-07-27 YAMAMOTO Mitsuharu - * intervals.c (graft_intervals_into_buffer): - Use set_text_properties_1 to clear out properties. + * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to + scroll bar gap. + (x_scroll_bar_create): Set bar->fringe_extended_p. + (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars + on frame edge. Check fringe background extension. Don't clear + extended fringe background area. - * search.c (Freplace_match): Use replace_range to insert - and delete. Don't request property inheritance from - surrounding text. + * w32term.h (struct scroll_bar): New member fringe_extended_p. + (w32_fill_area): Enclose multiple statements with do ... while (0). -2001-11-10 Jason Rumney + * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]: + Extend fringe background to scroll bar gap. + (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]: + Set bar->fringe_extended_p. + (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: + Put leftmost/rightmost scroll bars on frame edge. Check fringe + background extension. Don't clear extended fringe background area. - * w32fns.c (enum_font_cb2): Use leading @ on face name to detect - vertical fonts. Allow them if face name is explicitly specified. - Do not give up if we find a font that cannot be converted to an xlfd. + * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: + New member fringe_extended_p. -2001-11-10 Gerd Moellmann +2007-07-25 Glenn Morris - * unexelf.c (unexec): Use mmap/munmap to allocate buffers - instead of malloc/free. + * Relicense all FSF files to GPLv3 or later. -2001-11-09 Pavel Jan,Am(Bk + * COPYING: Switch to GPLv3. - * xfaces.c (merge_face_vectors): Use braces to follow GNU - Coding Standards. - (Finternal_set_lisp_face_attribute): Likewise. +2007-07-25 Stefan Monnier - * buffer.c (Fbury_buffer): Likewise. + * eval.c (Fcommandp): Pay attention to the `interactive-form' property. - * indent.c (current_column_1): Remove unused variable `prev_col'. + * data.c (Finteractive_form): Check for the presence of an + `interactive-form' symbol property more thoroughly. - * coding.c (encode_coding): Use precomputed value of `src'. - (encode_coding): Remove unused variable `src_end'. - (code_convert_region): Remove unused variables `count'. + * data.c (Finteractive_form): Use an `interactive-form' property if + present, analogous to the function-documentation property. -2001-11-07 Jason Rumney +2007-07-24 Jason Rumney - * w32term.c (x_display_and_set_cursor): Do not move system caret - if cursor_glyph is NULL. + * w32fns.c (x_real_positions): Get real position from OS instead of + calculating it. -2001-11-07 Pavel Jan,Am(Bk +2007-07-23 Jason Rumney - * keymap.c (access_keymap): Fix compilation error. + * filelock.c (current_lock_owner): Allow for @ sign in username. -2001-11-07 Miles Bader +2007-07-22 Nick Roberts - * xfns.c (x_set_frame_parameters): Avoid infinite recursion. + * xdisp.c (decode_mode_spec): Add case 'R' for to test for + remote default-directory. -2001-11-07 Pavel Jan,Am(Bk + * buffer.c (mode-line-format): Describe above case in doc string. - * intervals.c (graft_intervals_into_buffer): - Remove #ifdef'd-out code. - (graft_intervals_into_buffer): Remove unused variable `middle'. +2007-07-20 Eli Zaretskii - * lread.c (Feval_region): Remove obsolete #ifdef'd-out - code (eval-current-buffer). - Change doc-string comments to `new style' [w/`doc:' keyword]. + * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32): + Define if not defined. -2001-11-06 Richard M. Stallman +2007-07-18 Jason Rumney - * keymap.c (access_keymap): Don't use initializers on Lisp_Object. + * w32proc.c (w32_executable_type): Handle 64 bit executables. -2001-11-06 Stefan Monnier +2007-07-18 Richard Stallman - * lread.c (read1): Fix behavior with nested backquoting. + * data.c (Fsetq_default): Doc fix. - * keyboard.c (make_lispy_event): Check integerness and fix - Lisp_Object/int mixup. + * eval.c (Fsetq): Doc fix. -2001-11-06 Pavel Jan,Am(Bk +2007-07-18 Juanma Barranquero - * fns.c (copy_hash_table): Remove unused variable `v'. + * coding.c (Ffind_operation_coding_system): + * eval.c (For, Fand): Doc fixes. + Reported by Johan Bockgård. - * fontset.c (fontset_font_pattern): Remove unused variable - `family_registry'. +2007-07-18 Jan Djärv - * indent.c (current_column_1): Remove unused variable `prev_col'. + * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame. -2001-11-05 Richard M. Stallman + * xterm.h: Declare x_ewmh_activate_frame. - * m/news-risc.h (BROKEN_PROTOTYPES): Defined. + * xterm.c (x_ewmh_activate_frame): New function. + (XTframe_raise_lower): Move code to x_ewmh_activate_frame. - * buffer.c (Fkill_buffer): Don't delete auto save file - if buffer is modified. +2007-07-17 Martin Rudalics -2001-11-05 Andrew Innes + * window.c (Fdisplay_buffer): If largest or LRU window is the + only window, split it even if it is not eligible for splitting. + This restores the original behavior broken by the 2007-07-15 + change. - * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and - CHECK_NUMBER_CDR. +2007-07-17 Glenn Morris -2001-11-05 Richard M. Stallman + * abbrev.c (abbrev_check_chars): New function. + (Fdefine_global_abbrev, Fdefine_mode_abbrev): + Call abbrev_check_chars to check abbrev characters are word + constituents. Doc fix. - * unexelf.c (unexec): Minor changes; clean up comments. +2007-07-17 Stefan Monnier -2001-11-05 Sam Steingold + * process.c (Fstart_process, Fmake_network_process) + (read_process_output): Fix up last changes. - * w32term.c (x_display_and_set_cursor): Fix w32 compilation error. +2007-07-16 Eli Zaretskii -2001-11-05 Andreas Schwab + * makefile.w32-in (clean): Don't delete *~. - * sound.c (sound_perror): Save errno from being clobbered. +2007-07-16 Andreas Schwab -2001-11-05 Dale Hagglund + * window.c (Fdisplay_buffer): Use NILP. + (Fset_window_scroll_bars): Likewise. - * unexelf.c (unexec): Don't use `mmap'. Instead, read and write - the program image directly. +2007-07-15 Martin Rudalics -2001-11-05 Pavel Jan,Am(Bk + * window.c (window_min_size_2): New function. + (window_min_size_1, size_window, Fdisplay_buffer) + (Fsplit_window, adjust_window_trailing_edge): Use it to avoid + windows without mode- or header-lines when window-min-height is + too small. + (size_window): Reset nodelete_p after testing it, following an + earlier note by Kim F. Storm. + (display_buffer): Do not set split_height_threshold to twice the + value of window_min_height to avoid changing the value of a + customizable variable. Rather explicitly check whether the + height of the window that shall be splitted is at least as large + as split_height_threshold. + (Fwindow_full_width_p): New defun. + (syms_of_window): Defsubr it. - * buffer.h (Fbuffer_local_value): Add prototype. + * window.h: Add EXFUN for Fwindow_full_width_p. -2001-11-04 Richard M. Stallman +2007-07-14 Jason Rumney - * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL - and CHECK_BUFFER. + * process.c [WINDOWSNT]: Don't undefine AF_INET6. - * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth. - (record_char): Likewise. +2007-07-14 Richard Stallman - * keyboard.c (make_lispy_event): Don't insist a drag event must - move to a different buffer position. Instead, check for moving at - least double_click_fuzz. + * eval.c (maybe_call_debugger): New function. + (find_handler_clause): Use maybe_call_debugger. + Call it when the handler says `debug'. + Eliminate DEBUGGER_VALUE_PTR. + (Fsignal): Eliminate debugger_value. + (Qdebug): New variable. + (syms_of_eval): Initialize it. - * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength. +2007-07-14 Juanma Barranquero - * keyboard.c (echo-area-clear-hook): Undo Oct 29 change. + * eval.c (Fprogn): + * keyboard.c (Ftrack_mouse): + * print.c (Fwith_output_to_temp_buffer): + * window.c (Fsave_window_excursion): Doc fix. - * indent.c (current_column_1, Fmove_to_column): Separate the code - for display-table glyphs from the code for buffer text, to fix - bugs in the former. +2007-07-13 Stefan Monnier -2001-11-04 Michael Welsh Duggan + * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400. - * buffer.c (Fbuffer_local_value): New function. - (syms_of_buffer): Defsubr it. +2007-07-12 Stefan Monnier - * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local - value of `cursor-in-non-selected-windows'. + * process.h (struct Lisp_Process): Turn slots infd, outfd, + kill_without_query, pty_flag, tick, update_tick, decoding_carryover, + inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering, + read_output_delay, and read_output_skip from Lisp_Objects to ints. + Remove unused encoding_carryover. + * process.c: Adjust all functions accordingly. - * lisp.h (Qcursor_in_non_selected_windows): New declaration. - * xdisp.c (Qcursor_in_non_selected_windows): New variable. - (syms_of_xdisp): Initialize it. +2007-07-12 Richard Stallman -2001-11-04 Pavel Jan,Am(Bk + * term.c: Include unistd.h only if HAVE_UNISTD_H. - * xfns.c (Fx_create_frame): Doc fix. +2007-07-11 Jason Rumney - * coding.c: Change doc-string comments to `new style' [w/`doc:' - keyword]. + * makefile.w32-in (LIBS): Include OLE32. - * eval.c (top_level_value, top_level_set): Remove commented and - #ifdef'd-out code. - (Fdefvar): Fix usage in doc-string. + * w32fns.c (w32_msg_pump) : Initialize COM. + (w32_msg_pump) : Uninitialize COM. -2001-11-03 Richard M. Stallman +2007-07-11 Stefan Monnier - * xfns.c: Include unistd.h, if it exists. + * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer. + * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned + from a Lisp_Object into a bare pointer. + (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns): + Adjust the code correspondingly. - * editfns.c: Move the include of ctype.h after unistd.h. + * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'. - * gmalloc.c: Test BROKEN_PROTOTYPES. + * term.c: Include unistd.h for ttyname, used in handle_one_term_event. + (term_show_mouse_face): Remove unused var `j'. + (handle_one_term_event): Remove unused vars `i' and `j'. + Don't cast return value of ttyname since it's not necessary. -2001-11-03 Ken Raeburn +2007-07-10 Stefan Monnier - * lisp.h (CHECK_STRING_CAR): New macro. - * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of - treating XCAR and XCDR as lvalues. - (openp): Use CHECK_STRING_CAR. - (read_list): Use XSETCDR instead of treating XCDR as lvalue. + * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using + USE_LSB_TAG. Suggested by Dmitry Antipov . -2001-11-03 Eli Zaretskii + * fns.c (map_char_table): Use an array of int for `indices' rather than + an array of Lisp_Objects (which are only ever integers anyway). + (Fmap_char_table): Update caller. + * lisp.h: Update prototype. + * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap): + * fontset.c (Ffontset_info): + * casetab.c (set_case_table): Update callers. - * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE. - (SIGMASKTYPE): Define. + * editfns.c (Ftranspose_regions): Use EMACS_INT for positions. - * syssignal.h (sigunblock): Don't define if already defined. + * keymap.c (struct accessible_keymaps_data) + (struct where_is_internal_data): New structures. + (accessible_keymaps_1, where_is_internal_1): Use them to change + interface to adhere to the one used by map_keymap. + (Faccessible_keymaps, where_is_internal): Use map_keymap. + (accessible_keymaps_char_table, where_is_internal_2): Remove. -2001-11-02 Pavel Jan,Am(Bk + * keymap.h (map_keymap_function_t): More informative prototype. - * eval.c (debugger_may_continue, Vdebug_ignored_errors) - (call_debugger, Fcondition_case, skip_debugger, unbind_to): - Fix typos in comments. +2007-07-10 Guanpeng Xu - * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented - and #ifdef'd-out code. - Fix and reindent comments. + * search.c (Vinhibit_changing_match_data, search_regs_1): New vars. + (looking_at_1): Don't change search_regs and last_thing_searched + if `inhibit-changing-match-data' is non-nil. + (string_match_1, search_buffer, set_search_regs): Likewise. + (syms_of_search): Add Lisp level definition for + `inhibit-changing-match-data' and set it to nil. + (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute + start and end of the match, instead of using values in search_regs. - * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c. +2007-07-01 Stefan Monnier - * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused - argument `i' in macros. + * minibuf.c (Fcompleting_read): New value `confirm-only' + for `require-match'. - * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument - `i' in macros. +2007-06-28 Stefan Monnier - * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST) - (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE) - (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER) - (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER) - (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER) - (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT) - (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY) - (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i' - in macros. + * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as + part of the 2007-06-27 change to syms_of_fileio. - * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, - * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c, - * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c, - * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h, - * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c, - * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c, - * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c, - * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c, - * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros - (remove unused second argument). +2007-06-28 YAMAMOTO Mitsuharu -2001-11-02 Stefan Monnier + * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): + Check WINDOWP before using XWINDOW. Consolidate return statements. - * syntax.c (describe_syntax): New wrapper. - (Finternal_describe_syntax_value): Rename from describe_syntax. - Don't insert space at front and \n at the end. - (syms_of_syntax): Defsubr Sinternal_describe_syntax_value. +2007-06-27 Richard Stallman - * regex.c (re_wctype): Try to fix some warnings. - (regcomp, regexec): Don't forget the __restrict. + * fileio.c (syms_of_fileio) : Doc fix. -2001-11-02 Richard M. Stallman +2007-06-27 Juanma Barranquero - * textprop.c (Fget_char_property): Doc fix. + * buffer.c (syms_of_buffer) : Fix typo in docstring. -2001-11-02 Pavel Jan,Am(Bk +2007-06-26 YAMAMOTO Mitsuharu - * process.c (Fstart_process): Add usage to doc-string. + * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h. + (_aligned_blocks_mutex) [USE_PTHREAD]: New variable. + (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros. + (_free_internal, memalign): Use them. + (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]: + Initialize to PTHREAD_MUTEX_INITIALIZER. + (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex. + (morecore_nolock): Rename from morecore. All uses changed. + Use only nolock versions of internal allocation functions. + (_malloc_internal_nolock, _realloc_internal_nolock) + (_free_internal_nolock): New functions created from + _malloc_internal, _realloc_internal, and _free_internal. + (_malloc_internal, _realloc_internal, _free_internal): Use them. + Copy hook value to automatic variable before its use. + (memalign): Copy hook value to automatic variable before its use. - * data.c (Fsetq_default): Ditto. +2007-06-26 Kenichi Handa - * callint.c (Finteractive): Ditto. + * coding.c (Ffind_operation_coding_system): Docstring improved. + (syms_of_coding): Docstring of `file-coding-system-alist' improved. -2001-11-01 Stefan Monnier +2007-06-25 David Kastrup - * macros.c: Don't include keymap.h any more. + * keymap.c (Fcurrent_active_maps): Add `position' argument. + (Fwhere_is_internal): Adjust call to `current-active-maps' to + cater for additional parameter. -2001-11-01 Richard M. Stallman + * keymap.h: Adjust number of parameters to `current-active-maps'. - * data.c (Fmake_local_variable): Doc fix. + * doc.c (Fsubstitute_command_keys): Adjust call of + `current-active-maps'. - * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix. - (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix. +2007-06-25 David Kastrup - * keymap.c (Fdescribe_buffer_bindings): Print character property - bindings along with or instead of the buffer local map. - Make the overriding maps override what they should. + * callint.c (Fcall_interactively): Make the parsing of interactive + specs somewhat more readable. -2001-11-01 Pavel Jan,Am(Bk +2007-06-23 YAMAMOTO Mitsuharu - * window.c (grow_mini_window): Fix typo in comment. + * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background + to scroll bar gap also when bitmap fills fringe. Draw only foreground + if extended background has already been filled. -2001-11-01 Gerd Moellmann +2007-06-22 YAMAMOTO Mitsuharu - * xterm.c (x_scroll_bar_create): Check for width and height > 0. - (XTset_vertical_scroll_bar): Likewise. + * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI. + (USE_MAC_TOOLBAR): Require USE_CG_DRAWING. - * xfns.c (x_build_heuristic_mask): Use four_corners_best - instead of IMAGE_BACKGROUND. + * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]: + Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p + in #if 0 as it is not compatible with y-or-n-p-with-timeout. + (timer_check) [TARGET_API_MAC_CARBON]: Add extern. + [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop + instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls. + (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function. + [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind. + Run timers during dialog popup. + (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated. - * xfns.c (four_corners_best): Reindent. +2007-06-21 Jason Rumney - * xfaces.c (Finternal_set_lisp_face_attribute_from_resource): - Handle :box so that it is possible to specify sexprs. + * image.c (convert_mono_to_color_image): Swap fore and background. -2001-10-31 Eli Zaretskii +2007-06-20 Jason Rumney - * s/hpux11.h: New file. + * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished. + (w32_free_bdf_font): Unmap memory not handle. -2001-10-31 Pavel Jan,Am(Bk +2007-06-20 Sam Steingold - * emacs.c (USAGE1): Show command line option --no-window-system - instead of --no-windows in usage. - (standard_args): Rename --no-windows to --no-window-system. - (bug_reporting_address): Follow Emacs coding conventions. + * gmalloc.c (__morecore): Fix the declaration to comply with the + definition. - * eval.c (Fcommandp): Doc fix. - Change doc-string comments to `new style' [w/`doc:' keyword]. +2007-06-20 Juanma Barranquero - * frame.c (Fframe_live_p): Doc fix. + * w32term.c (w32_delete_display): Remove leftover declaration. + (w32_define_cursor, w32_initialize): Make static. - * buffer.c (selective-display-ellipses): Doc fix. + * w32.c (_wsa_errlist): Fix typo in error message. + (init_environment): Ignore any environment variable from the + registry having a null value. -2001-10-31 Gerd Moellmann +2007-06-20 Glenn Morris - * lread.c (to_multibyte): Fix computation of new read_buffer_size. + * Makefile.in (LIBGIF): Default to -lgif. - * xfaces.c (realize_x_face): If C is not a single-byte character, - set the face's colors_copied_bitwise_p instead of the defaulted_p - members which have a different meaning. - (free_face_colors): Do nothing for a face whose colors have been - copied bitwise. +2007-06-17 Jason Rumney - * dispextern.h (struct face) : New member. + * w32menu.c (add_menu_item): Don't use multibyte string functions on + unicode strings. -2001-10-31 Pavel Jan,Am(Bk +2007-06-16 Juanma Barranquero - * marker.c, mocklisp.c: Change doc-string comments to `new style' - [w/`doc:' keyword]. + * xdisp.c (syms_of_xdisp) : + Fix typo in docstring. -2001-10-31 Gerd Moellmann +2007-06-16 Eli Zaretskii - * fns.c (require_unwind): Return Lisp_Object. + * w32menu.c (add_menu_item): Escape `&' characters in menu items + and their keybindings. -2001-10-31 Pavel Jan,Am(Bk +2007-06-15 Chong Yidong - * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix. - (last-input-char): Revert doc-string to be the same as the - doc-string of `last-input-event'. + * composite.c (update_compositions): Fix last fix. - * xdisp.c: Fix typos in comments. +2007-06-14 Jason Rumney -2001-10-31 Gerd Moellmann + * w32.c (get_process_times_fn): New function pointer. + (globals_of_w32): Intialize it if present in kernel32.dll. + (w32_get_internal_run_time): New function. - * window.c (grow_mini_window): Handle case that the root - window is already smaller than the nominal mininum height. + * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it. -2001-10-30 Stefan Monnier +2007-06-14 Kenichi Handa - * emacs.c (main): Don't call keys_of_macros any more. + * composite.c (update_compositions): Check the validness of + compositions. - * lisp.h (keys_of_macros): Remove. +2007-06-14 YAMAMOTO Mitsuharu - * macros.c (keys_of_macros): Remove. + * frame.h (struct frame) [MAC_OS]: New member external_tool_bar. + (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it. - * xfaces.c (Fface_attribute_relative_p): Declare args. + * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity. + (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR. -2001-10-30 Jason Rumney + * macgui.h (USE_MAC_TOOLBAR): New define. - * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer. - (enum_font_cb2): Ignore fonts with vertical orientation. + * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler): + Return immediately unless popup is activated. -2001-10-30 Richard M. Stallman + * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe + background to scroll bar gap. + (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p. + (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost + scroll bars on frame edge. Check fringe background extension. + Don't clear extended fringe background area. + (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER) + (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P) + (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID): + [USE_MAC_TOOLBAR]: New macros. + (mac_move_window_with_gravity, mac_get_window_origin_with_gravity) + (mac_handle_toolbar_event, mac_image_spec_to_cg_image) + (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar) + (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event) + [USE_MAC_TOOLBAR]: New functions. + (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window + manually if previous repositioning has failed. + (mac_handle_keyboard_event): Use precomputed event kind. + (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region + as tool bar item click. Handle mouse movement over tool bar items. - * keyboard.c (Finput_pending_p): Doc fix. + * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member + toolbar_win_gravity. + (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p. + (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]: + Add externs. -2001-10-30 Gerd Moellmann + * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window) + [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display. - * xterm.c (x_after_update_window_line): Don't run the code - clearing in borders for rows whose visible height is 0. +2007-06-14 Chong Yidong - * xdisp.c (clear_garbaged_frames): Redraw the frame only if its - resized_p flag is set. If not set, use the much less flickering - method previously used. + * image.c (search_image_cache): Remove unused variable. - * dispnew.c (change_frame_size_1): Set frame's resized_p. +2007-06-13 Chong Yidong - * frame.h (struct frame) : New member. + * xfns.c, xmenu.c: Link to xaw3d if available. - * lread.c (to_multibyte): Ensure read_buffer is at least twice - as large as the number of bytes to convert. +2007-06-13 YAMAMOTO Mitsuharu - * lread.c (to_multibyte): New function. - (read1): Use it. + * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members + frame_foreground and frame_background. -2001-10-30 Eli Zaretskii + * image.c (lookup_image): Save frame foreground and background colors. + (search_image_cache): Check if saved and current frame colors match. - * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c). +2007-06-12 Stefan Monnier -2001-10-30 Gerd Moellmann + * regex.c (regex_compile): Remove the `regnum' counter. + Use bufp->re_nsub instead. Add support for \(?N:RE\). - * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel. - (x_set_glyph_string_background_width): Set extends_to_end_of_line_p - if the row's fill_line_p is set and drawing the last glyph with - DRAW_IMAGE_{RAISED,SUNKEN}. +2007-06-11 Stefan Monnier - * xdisp.c (clear_garbaged_frames): Call Fredraw_frame. + * term.c: Include intervals.h to declare Fget_text_property. -2001-10-29 Stefan Monnier +2007-06-10 Jason Rumney - * xmenu.c: Include coding.h and charset.h. - (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT. - (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part. - (single_submenu, xmenu_show): Use ENCODE_SYSTEM. - Explicitly set wv->help. Use `TRUE' rather than `True'. - (menu_help_callback): Use empty_string. + * w32fns.c (Fx_file_dialog): Take size from struct not pointer. - * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos. - (Fx_popup_dialog): Explicitly init f. - (w32_menu_display_help): Use empty_string. +2007-06-08 Juanma Barranquero -2001-10-29 Richard M. Stallman + * callint.c (Fcall_interactively): + * editfns.c (Fdelete_and_extract_region): + * fileio.c (Fread_file_name): + * fns.c (Fmapconcat): + * keyboard.c (cmd_error_internal): + * keymap.c (Fkey_description): + * lread.c (openp): + * minibuf.c (read_minibuf): + * search.c (wordify): + * sunfns.c (sel_read): + * xdisp.c (Fformat_mode_line, syms_of_xdisp): + * xfns.c (x_default_scroll_bar_color_parameter): + * xmenu.c (menu_help_callback): + * xselect.c (Fx_get_atom_name): + * xterm.c (x_term_init): Use empty_unibyte_string. - * fns.c (Frequire): Detect recursive try to require the same - feature 3 or more levels deep, and get error. - (require_unwind): New subroutine. - (require_nesting_list): New variable. - (syms_of_fns): Init and staticpro it. +2007-06-08 Dmitry Antipov (tiny change) - * print.c (print_object): Clarify indication of insertion type. + * alloc.c (init_strings): Initialize canonical empty strings. + (make_uninit_string, make_uninit_multibyte_string): Return appropriate + canonical empty string when the requested size is 0. -2001-10-29 Eli Zaretskii + * emacs.c (empty_unibyte_string): Rename from empty_string. + (empty_multibyte_string): New canonical empty string. + (syms_of_emacs): Don't initialize empty_string. - * coding.c (syms_of_coding): Document that locale-coding-system is - used for decoding input on X. + * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte + string, if appropriate. + (empty_unibyte_string, empty_multibyte_string): New externs. + (empty_string): Remove extern. - * window.c (Fscroll_left, Fscroll_right): Doc fix. + * lread.c (syms_of_lread): Use empty_unibyte_string. -2001-10-29 Pavel Jan,Am(Bk +2007-06-07 Jason Rumney - * keyboard.c (Finput_pending_p): Fix typo in doc-string. - (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it. + * s/ms-w32.h: Don't define HAVE_TZNAME. -2001-10-29 Gerd Moellmann + * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows. - * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area, - use NO_CURSOR if cursor_in_non_selected_windows is false. +2007-06-07 YAMAMOTO Mitsuharu - * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for - the slant attribute if FRAME is t. + * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT. - * xfns.c (x_set_internal_border_width): Set frame garbaged - when X window doesn't exist yet. + * macfns.c (mac_get_window_bounds): Move extern to macterm.h. + (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse. - * xterm.c (x_after_update_window_line): Clear internal border - in different circumstances. + * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler): + Don't call next handler. + [TARGET_API_MAC_CARBON] (install_menu_target_item_handler): + Remove argument. Install handler to application. + (set_frame_menubar): Don't change deep_p. + (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and + FRAME_OUTER_TO_INNER_DIFF_Y. + (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P) + (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID) + [HAVE_DIALOGS]: New macros. + [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog): + Use them. + (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString. - * xterm.c (XTread_socket) : Don't use - STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa - . + * macselect.c [MAC_OSX] (install_service_handler): Rename from + init_service_handler. All callers changed. Return OSStatus value. -2001-10-28 Eli Zaretskii + * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort. + All callers changed so as not to call SetPortWindowPort. + (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. + (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from + mac_draw_string_common. + (mac_draw_image_string_qd): Likewise. + (mac_draw_string_common): Use them. Add INLINE. + (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]: + Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and + GetGlobalMouse. + (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X + and FRAME_OUTER_TO_INNER_DIFF_Y. + [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise. + [USE_MAC_TSM] (mac_handle_text_input_event): Likewise. + (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for + repositioning window to mac_handle_window_event. + (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for + saving window location to mac_handle_window_event + [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here. + (install_menu_target_item_handler): Remove argument in extern. + [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers): + Also accept command events. + (do_keystroke): New function created from XTread_socket. + (init_command_handler): Remove functions. + [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window + and save window location by kEventWindowShowing and kEventWindowHiding + handlers here. Don't call next handler for window state change and + focus events. + (mac_handle_application_event, mac_handle_keyboard_event) + [TARGET_API_MAC_CARBON]: New functions. + (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for + kEventWindowShowing and kEventWindowHiding events. Move installation + of mouse, font, text input and menu target item handlers to + install_application_handler. + (install_application_handler) [TARGET_API_MAC_CARBON]: New function. + (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: + New function. + (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: + Register it. + (XTread_socket) [TARGET_API_MAC_CARBON]: + Consolidate SendEventToEventTarget calls. + Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y. + Move application activation handler to mac_handle_application_event. + Move keyboard handler to mac_handle_keyboard_event. + (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke. + (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call + init_command_handler. Call install_application_handler. - * m/ibms390.h: New file. From Adam Thornton - . + * macterm.h (mac_get_window_bounds): Move extern from macfns.c. + (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros. -2001-10-28 Gerd Moellmann +2007-06-07 Glenn Morris - * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color. + * emacs.c (main): Use `emacs-copyright' in --version output. - * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing - a loop counter. +2007-06-06 Chong Yidong -2001-10-28 Pavel Jan,Am(Bk + * image.c (xpm_load): Remove spurious call to xpm_init_color_cache. - * emacs.c: Use argv[0] instead of "emacs" when -t was specified. +2007-06-06 YAMAMOTO Mitsuharu - * keyboard.c: Change doc-string comments to `new style' [w/`doc:' - keyword]. - Fix typos in comments. + * macfns.c (mac_window): Replace WindowPtr with WindowRef. - * emacs.c (bug_reporting_address): New function. - Use it when displaying usage message. + * macgui.h: Replace WindowPtr with WindowRef. - * minibuf.c (read_minibuf): Remove unused external declaration of - variable `Qread_only'. + * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and + GetMenuRef, respectively. Replace WindowPtr with WindowRef. + Replace ControlHandle with ControlRef. + (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU. - * keymap.c (access_keymap): Remove unused variable `charset'. + * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and + GetMenuRef, respectively. Replace WindowPtr with WindowRef. + Replace ControlHandle with ControlRef. + (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead. + [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'. -2001-10-28 Miles Bader + * macterm.h (struct scroll_bar): Rename member control_handle_low + and control_handle_high to control_ref_low and control_ref_high. + All uses changed. + (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from + SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE, + respectively. All uses changed. + (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground) + (install_window_handler, remove_window_handler): Replace WindowPtr + with WindowRef in externs. - * xfaces.c (merge_face_heights): Handle TO being relative as well. - Remove #ifdef'd-out code. - (Fface_attribute_relative_p, Fmerge_face_attribute): New functions. - (syms_of_xfaces): Initialize them. +2007-06-05 Juanma Barranquero -2001-10-27 Jason Rumney + * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops. - * w32fns.c (w32_wnd_proc) : Destroy the system caret. - : Track cursor - position using the system caret. +2007-06-03 Nick Roberts - * w32term.c (w32_system_caret_hwnd, w32_system_caret_width) - (w32_system_caret_height, w32_system_caret_x) - (w32_system_caret_y): New variables for tracking system caret. - (w32_initialize): Initialize them. - (x_display_and_set_cursor): Make system caret follow the active cursor. + * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case. - * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET): - New messages types. + * frame.c (Fmouse_position, Fmouse_pixel_position): + Condition on HAVE_GPM too. - * w32term.c (note_mouse_highlight): Clear old help_echo. + * term.c (term_mouse_highlight): Remove unused variables. + (Fterm_open_connection): Set gpm_zerobased to 1. + (term_mouse_movement, term_mouse_click, handle_one_term_event): + Use zero based co-ordinates. + (handle_one_term_event): Report a drag as mouse movement too. -2001-10-27 Pavel Jan,Am(Bk + * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM. - * xterm.c: Fix typo in a comment. +2007-06-03 Chong Yidong - * emacs.c: Fix typos in comments. - Remove unnecessary spaces. - Change doc-string comments to `new style' [w/`doc:' keyword]. - (USAGE2): Fix typos in usage string. + * image.c (search_image_cache): New function. Require background + color match if background color is unspecified in the image spec. + (uncache_image, lookup_image): Use it. - * xterm.c: Fix typo in a comment. +2007-06-01 Juanma Barranquero - * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in - emacs.c. + * window.c (Fshrink_window): Reflow docstring. -2001-10-27 Gerd Moellmann +2007-06-02 Chong Yidong - * xdisp.c (move_it_vertically_backward): Use 2/3 line_height - instead of 1/2 line_height in the heuristic for skipping - farther backward when target_y was not reached. + * Version 22.1 released. - * sound.c (sound_perror): Unblock SIGIO, turn on atimers. - Display errno only if non-zero. - (sound_warning): New function. - (vox_configure): Don't treat failing to set sample rate as error. - (various places): Improve error messages. +2007-06-01 Richard Stallman -2001-10-26 Eli Zaretskii + * xfns.c (x_encode_text): Add GCPRO. - * fileio.c (Faccess_file): Run the argument filename through - Fexpand_file_name, before using it. +2007-06-01 YAMAMOTO Mitsuharu - * dispnew.c (syms_of_display) : Add a reference to - ring-bell-function. Suggested by Alf-Ivar Holm + * xfns.c (x_set_name_internal): Save encoded name before + x_encode_text in case string data is relocated. -2001-10-26 Gerd Moellmann +2007-05-31 Richard Stallman - * insdel.c (insert_1_both): Do nothing if NCHARS == 0. + * buffer.c (syms_of_buffer): Doc fix. - * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]: - Fix clearing in the case of scroll bars on the right. +2007-05-30 Nick Roberts -2001-10-26 Juanma Barranquero + * sysdep.c (init_sys_modes): Add rather than replace with + O_NONBLOCK. - * w32gui.h (XImage): Add a dummy typedef. + * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to + term_mouse_moveto. -2001-10-26 Gerd Moellmann + * termhooks.h (term_mouse_moveto): New extern. - * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison. + * term.c (mouse_face_window): Rename... + (Qmouse_face_window): ...to this. + (term_show_mouse_face, term_clear_mouse_face) + (term_mouse_highlight): Use Qmouse_face_window. + (term_mouse_moveto): New function. + (term_mouse_position): Make it work. + (syms_of_term): Uncomment assignment to mouse_position_hook. + Staticpro Qmouse_face_window. -2001-10-25 Eli Zaretskii +2007-05-28 YAMAMOTO Mitsuharu - * frame.c (Fframe_parameter): Fix last change. + * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t + around current_column call. - * fileio.c: Revert last change (which removed old commented-out - version of expand-file-name). Add a comment that explains why - this old version should not be removed. +2007-05-26 Dan Nicolaescu -2001-10-25 Gerd Moellmann + * xfaces.c (syms_of_xfaces): Delete stray semicolon. + * xdisp.c (next_element_from_buffer): + * window.c (delete_window): + * term.c (term_mouse_highlight): + * msdos.c (getdefdir): + * macterm.c (mac_create_bitmap_from_bitmap_data) + (init_font_name_table): + * fns.c (Fsxhash): + * data.c (Fmake_local_variable): + * ccl.c (ccl_driver): Likewise. - * frame.c (Fframe_parameter): Fix a bug whereby some - ``artificial'' frame parameters, like `minibuffer' were not - obtained by calling Fframe_parameters. +2007-05-24 YAMAMOTO Mitsuharu - * xterm.c (show_mouse_face): Clean up. Recognize overwritten - cursor differently. + * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event): + Call mac_wakeup_from_rne on window size change. - * xdisp.c (move_it_vertically_backward): Compute line height - differently. Add heuristic to try to be more compatible to 20.x. +2007-05-25 Chong Yidong -2001-10-25 Stefan Monnier + * image.c (uncache_image): Fix typo. - * lisp.h (make_fixnum_or_float): Coerce double to int explicitly. +2007-05-23 Johannes Weiner (tiny change) - * editfns.c (text_property_stickiness): Fix Lisp_Object used as - boolean. + * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too. -2001-10-25 Miles Bader +2007-05-22 Richard Stallman - * xfns.c (png_load): Make sure SPECIFIED_BG is a string. - BG is a pointer to a structure, not a structure. - (gif_format, png_format): Add missing commas. + * xterm.c (x_connection_closed): Remove NO_RETURN. -2001-10-24 Richard M. Stallman +2007-05-22 Martin Rudalics - * xfaces.c (Fface_attributes_as_vector): New function. - (syms_of_xfaces): Defsubr it. + * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD. -2001-10-24 Pavel Jan,Am(Bk +2007-05-21 Chong Yidong - * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused - variable `area'. + * image.c (uncache_image): New function. + (Fimage_refresh): New function. -2001-10-25 Pavel Jan,Am(Bk +2007-05-20 Jan Djärv - * search.c (scan_newline): Remove unused variable `selective_display'. + * Makefile.in: Move GPM check outside HAVE_X_WINDOWS. -2001-10-25 Miles Bader +2007-05-20 Nick Roberts - * dispextern.h (struct image): Add `background', - `background_valid', and `background_transparent' fields. - (image_background, image_background_transparent): New declarations. - (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros. - * xfns.c (image_background, image_background_transparent) - (four_corners_best): New functions. - (xpm_format, png_format, jpeg_format, tiff_format, gif_format) - (gs_format): Add `:background' entry. - (lookup_image): Set IMG's background color if specified. - (pbm_load, xbm_load_image, png_load): Set IMG's background field - when appropriate. - (x_clear_image_1): Reset `background_valid' and - `background_transparent_valid' fields. - (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of - calculating it here. Set IMG's background_transparent field. - (enum xpm_keyword_index): Add XPM_BACKGROUND. - (enum png_keyword_index): Add PNG_BACKGROUND. - (enum jpeg_keyword_index): Add JPEG_BACKGROUND. - (enum tiff_keyword_index): Add TIFF_BACKGROUND. - (enum gif_keyword_index): Add GIF_BACKGROUND. - (enum gs_keyword_index): Add GS_BACKGROUND. - (pbm_load, png_load, jpeg_load, tiff_load, gif_load): - Pre-calculate image background color where necessary. - * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and - `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background - color to use for image glyph reliefs. + * config.in, keyboard.c, Makefile.in, sysdep.c, term.c, + * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H. -2001-10-24 Gerd Moellmann +2007-05-20 Nick Roberts - * xterm.c (x_draw_glyphs): Don't check for cursor overwriting - in full-width rows. + * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT + conditional on [HAVE_GPM_H]. - * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]: - Fix clearing of area not covered by scroll bar. +2007-05-19 Stefan Monnier -2001-10-24 Pavel Jan,Am(Bk + * syntax.c (skip_chars): Update syntax-table only after we checked that + the new location is valid. - * xterm.c (x_insert_glyphs): Remove unused variables `real_end' - and `real_start'. - (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'. - (glyph_rect): Remove unused variable `area'. +2007-05-19 YAMAMOTO Mitsuharu -2001-10-24 Gerd Moellmann + * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around + mac_get_window_bounds. - * xdisp.c: Change #ifdef GLYPH_DEBUG to #if. +2007-05-20 Nick Roberts - * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos. - (row_containing_pos): Take additional argument DY. - Treat rows ending in middle of char differently. - (display_line): Handle tabs on window systems differently. + * Makefile.in (LIBGPM): Allow it to be set from configure. + If set then link Emacs with it. - * xterm.c, w32term.c (fast_find_position): Call row_containing_pos - with additional argument. + * config.in: Regenerate. - * dispextern.h (row_containing_pos): Adjust prototype. + * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor): + New externs. + + * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT. + Include gpm.h. + (handle_one_term_event, term_gpm): New externs. + + * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking + and allow it to be interrupted by SIGIO. + + * process.c (gpm_wait_mask, max_gpm_desc): New variables. + (wait_reading_process_output): Wait on gpm_fd too. + (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions. + (add_gpm_wait_descriptor_called_flag): New variable. + (delete_keyboard_wait_descriptor): Check gpm_wait_mask. + + * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message) + (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved) + (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard): + Extend HAVE_MOUSE ifdefs to HAVE_GPM_H. + (make_lispy_event): Add case GPM_CLICK_EVENT. + (read_avail_input): Handle mouse input. + + * term.c (write_glyphs_with_face): New function. + [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h. + (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row) + (mouse_face_end_col, mouse_face_past_end, mouse_face_window) + (mouse_face_face_id, term_gpm, pos_x, pos_y) + (last_mouse_x, last_mouse_y): New variables. + (term_show_mouse_face, term_clear_mouse_face, fast_find_position) + (term_mouse_highlight, term_mouse_movement, term_mouse_position) + (term_mouse_click, handle_one_term_event, Fterm_open_connection) + (Fterm_close_connection): New functions. + (term_init): Initialise mouse_face_window. + +2007-05-19 Chong Yidong - * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing) - (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables. - (try_window_id, try_window_reusing_current_matrix) - (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited. - (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables. + * xdisp.c (redisplay_window): If first window line is a + continuation line, recompute the new window start instead of + recentering. -2001-10-24 Pavel Jan,Am(Bk +2007-05-18 Glenn Morris - * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of - gnuemacs). - (HAVE_BOXES): Fix typo in comment. - (push_menu_pane): Fix typo in comment. + * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD. + Suggested by Alfred M. Szmidt . - * xdisp.c (display_prop_string_p): Remove unused local declaration - of `Qwhen'. - (single_display_prop_string_p): Remove unused local declarations - of `Qwhen' and `Qmargin'. - (string_buffer_position): Remove unused variable `around'. - (store_frame_title): Remove unused variable `width'. +2007-05-17 Glenn Morris - * window.c: Don't define max. - (coordinates_in_window): Remove unused variable `uy'. + * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD. - * widget.c: Don't define max. +2007-05-16 YAMAMOTO Mitsuharu - * process.c: Don't define max. - (create_process): Remove unused variable `buffer'. + * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert + dead key repeat and up events. -2001-10-23 Gerd Moellmann +2007-05-14 Chong Yidong - * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error. + * image.c (pbm_load): Check image size for monochrome pbm. -2001-10-23 Eli Zaretskii +2007-05-13 Chong Yidong - * xfaces.c (Finternal_set_lisp_face_attribute) - [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the - frame is on a windowed display. + * xterm.c (XTread_socket): Revert last change. -2001-10-23 Gerd Moellmann +2007-05-12 Chong Yidong - * dispnew.c (sync_window_with_frame_matrix_rows): - Fix handling of windows which aren't full-width, fix handling - of marginal areas. + * image.c (pbm_load): Correctly check image size for greyscale pbm. - * lread.c (syms_of_lread) : Raise to 50. + * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC). -2001-10-23 Andreas Schwab +2007-05-07 Stefan Monnier - * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override - LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc". + * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object + mixup (YAILOM). -2001-10-23 Gerd Moellmann +2007-05-07 Andreas Schwab - * xterm.c (x_draw_glyphs): Remove parameters READ_START and - REAL_END. Notice if cursor gets overwritten. - (notice_overwritten_cursor): Take X positions as parameters. - (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p - around call to x_draw_glyphs. + * keymap.c (Flookup_key): Fix typo in last change. -2001-10-23 Pavel Jan,Am(Bk +2007-05-07 Stefan Monnier - * syntax.c (modify-syntax-entry): Fix argument names (use CHAR - instead of C) and usage. + * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier + mapping for unibyte strings. - * editfns.c (char-to-string): Fix argument names (use CHAR instead - of C) and usage. +2007-05-01 YAMAMOTO Mitsuharu - * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top', - `left', `max_width' and `max_height'. + * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c. + (Fx_popup_dialog) [MAC_OSX]: Likewise. -2001-10-23 Gerd Moellmann +2007-04-29 Richard Stallman - * xdisp.c (display_line): For a tab continued to the next line, - set row's ends_in_middle_of_char_p. + * insdel.c (replace_range): For undo, record insertion first. -2001-10-22 Gerd Moellmann +2007-04-29 Andreas Schwab - * xdisp.c (display_line): Fix computation of continuation lines - width for TABs. + * lisp.h (VECSIZE): Use OFFSETOF. -2001-10-22 Pavel Jan,Am(Bk +2007-04-29 YAMAMOTO Mitsuharu - * xdisp.c (build_desired_tool_bar_string): Remove unused variable - `Qlaplace'. + * xdisp.c (try_window_reusing_current_matrix): Fix number of + disabled lines. - * fileio.c: Remove unused code. +2007-04-28 Richard Stallman -2001-10-22 Miles Bader + * lread.c (read_escape): In a string, \s is always space. - * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL) - (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD): - Remove `DOC_STRINGS_IN_COMMENTS' cases. +2007-04-27 Jan Djärv -2001-10-21 Jason Rumney + * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog. - * w32term.c (x_erase_phys_cursor): Remove inverse_p again. + * gtkutil.c (xg_update_menubar, create_menus): Create empty + submenu for menu bar items. -2001-10-21 Eli Zaretskii - - * mocklisp.c (Fml_if, Fml_provide_prefix_argument) - (Finsert_string): Avoid the multi-line string literals warning. - -2001-10-22 Miles Bader - - * doc.c (Vhelp_manyarg_func_alist): Variable removed. - (Fdocumentation): Don't use it. - (syms_of_doc): Don't initialize it. - - * keyboard.c (Ftrack_mouse): Add usage: string to doc string. - * print.c (Fwith_output_to_temp_buffer): Likewise. - * window.c (Fsave_window_excursion): Likewise. - * editfns.c (Fsave_excursion, Fsave_current_buffer) - (Fsave_restriction): Likewise. - * eval.c (Frun_hooks, Frun_hook_with_args) - (Frun_hook_with_args_until_failure) - (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif) - (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun) - (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch) - (Funwind_protect, Fcondition_case): Likewise. - * coding.c (Ffind_operation_coding_system): Likewise. - * keyboard.c (Ftrack_mouse): Likewise. - -2001-10-21 Miles Bader - - * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply) - (Fmake_hash_table): Add usage: string to doc string. - * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers) - (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat) - (Fencode_time, Finsert_and_inherit_before_markers): Likewise. - * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument) - (Fml_prefix_argument_loop): Likewise. - -2001-10-21 Pavel Jan,Am(Bk - - * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'. - - * sysdep.c (init_sys_modes): Change doc-string comments to `new - style' [w/`doc:' keyword]. - - * data.c, fileio.c, indent.c, print.c, search.c, sound.c, - * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string - comments to `new style' [w/`doc:' keyword]. - -2001-10-21 Jason Rumney - - * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName. - - * w32term.c (remember_mouse_glyph): New function. - (w32_mouse_position): Use it. - (note_mouse_movement): If the mouse moved off the glyph, remember - its new position. - - * w32term.h (struct w32_output): Correct spelling of x_compatible. - (w32_display_info): Add mouse_face_overlay. - - * w32term.c (notice_overwritten_cursor): Renamed from - note_overwritten_text_cursor. Rewritten to take glyph widths into - account. - (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P. - (fast_find_string_pos): New function. - (fast_find_position): Return the correct vpos. Add parameter - STOP. In the final row, stop before glyphs having STOP as object. - Don't consider glyphs that are not from a buffer. - (fast_find_position) [0]: Add a presumably more correct version - for after 21.1. - (expose_window_tree, expose_frame): Don't compute intersections here. - (expose_window): Do it here instead. - (expose_window_tree, expose_window, expose_line): Return 1 when - overwriting mouse-face. - (expose_window): If W is the window currently being updated, mark - the frame garbaged. - (expose_frame): If mouse-face was overwritten, redo it. - (x_use_underline_position_properties): New variable. - (syms_of_xterm): DEFVAR_BOOL it. - (x_draw_glyph_string): Add comment to use it in future. - (x_draw_glyph_string): Restore clipping after drawing box. - Fix a computation of the underline position. - (w32_get_glyph_string_clip_rect): Minor cleanup. - (x_fill_stretch_glyph_string): Remove an assertion. - (x_produce_glyphs): Don't convert multibyte characters - to unibyte characters in unibyte buffers. - (cursor_in_mouse_face_p): New function. - (x_draw_stretch_glyph_string): Use it to choose a different GC - when drawing a cursor within highlighted text. Don't draw - background again if it has already been drawn. - (x_draw_glyph_string_box): Don't draw a full-width - box just because the glyph row's full_width_p flag is set. - (x_draw_glyphs): Fix computation of rightmost x for - full-width rows. - (x_dump_glyph_string): Put in #if GLYPH_DEBUG. - (w32_draw_relief_rect): Extend left shadow to the bottom and left; - change bottom shadow accordingly. Some cleanup. - (x_update_window_end): Handle overwritten mouse face - also for tool bar windows. - (show_mouse_face): Set the glyph row's mouse_face_p flag also when - DRAW is DRAW_IMAGE_RAISED. - (clear_mouse_face): Return 1 if text with mouse face was - actually redrawn. Make the function static. - Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might - optimize away highlighting if we pass over that same overlay again. - (note_mouse_highlight): Call mouse_face_overlay_overlaps - to detect a case where we have to highlight a different region - despite not having left the currently highlighted region. - Set mouse_face_overlay in the x_display_info. Avoid changing the - mouse pointer shape when show_mouse_face has already done it, or - there is no need. Handle mouse-face and help-echo in strings. - (glyph_rect): New function. - (w32_mouse_position): Use it to raise the threshold for mouse - movement event generation. - (w32_initialize_display_info): Initialize the x_display_info's - mouse_face_overlay. - (w32_set_vertical_scroll_bar): Don't clear a zero height - or width area. - (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure - a widget to zero height. - - * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]: - Protect unibyte strings created by replacing their multibyte - equivalents in menu_items. - (w32_menu_show): Don't overwrite an item's name with its key - description in case the description is a multibyte string. - (single_submenu): Some cleanup. - - * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed. - (postprocess_image): New function. - (lookup_image): Call it for all image types except PostScript. - (x_kill_gs_process): Call postprocess_image. - (tiff_error_handler, tiff_warning_handler): New functions. - (tiff_load): Install them as handlers. - (x_kill_gs_process): Recognize if someone has cleared the image - cache under us. - (valid_image_p): Protect better against invalid image - specifications. Previous code could signal an error. - (Fx_hide_tip, Fshow_tip): Doc fix. - (Fv_max_tooltip_size): New variable. - (syns_of_xfns): DEFVAR_LISP it. - (Fx_show_tip): Add parameter TEXT. Set the tip frame's root - window buffer to *tip* right after creating the frame. Set frame's - window_width. Use a maximum tooltip size specified by - Vx_max_tooltip_size, if that has valid contents. - (compute_tip_xy): Add parameters WIDTH and HEIGHT. - Make sure the tooltip is completely visible. - (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil. - (Fx_create_frame): Adjust the frame's height for presence - of the tool bar before calling x_figure_window_size. - (x_set_tool_bar_lines): Clear the tool bar window's current matrix - when the window gets smaller. - (x_set_foreground_color): Set frame's cursor_pixel. - (x_set_foreground_color, x_set_background_color): Cleaned up. - (x_set_font): Handle case of x_new_fontset returning the same name - as before, although there was a change in fontsets. - -2001-10-21 Miles Bader - - * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior) - (Flogxor): Add usage: string to doc string. - * charset.c (Fstring): Likewise. - * callproc.c (Fcall_process_region, Fcall_process): Likewise. - * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise. - -2001-10-21 Pavel Jan,Am(Bk - - * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords. - - * alloc.c: Reindent DEFUNs with doc: keywords. - - * abbrev.c (Finsert_abbrev_table_description): Reindent. - - * frame.c: Change doc-string comments to `new style' [w/`doc:' - keyword]. - -See ChangeLog.9 for earlier changes. +See ChangeLog.10 for earlier changes. ;; Local Variables: -;; coding: iso-2022-7bit +;; coding: utf-8 ;; add-log-time-zone-rule: t ;; End: diff --cc src/ccl.c index 6fc6f29d42,19637e01fc..380403c6ec --- a/src/ccl.c +++ b/src/ccl.c @@@ -1946,8 -2110,10 +1947,9 @@@ setup_ccl_program (ccl, ccl_prog ccl->private_state = 0; ccl->status = 0; ccl->stack_idx = 0; - ccl->eol_type = CODING_EOL_LF; ccl->suppress_error = 0; ccl->eight_bit_control = 0; + ccl->quit_silently = 0; return 0; } diff --cc src/w32.c index 1108f22b11,e40f9a4b28..af7de20bc3 --- a/src/w32.c +++ b/src/w32.c @@@ -1921,20 -1815,23 +1921,35 @@@ readdir (DIR *dirp value returned by stat(). */ dir_static.d_ino = 1; + strcpy (dir_static.d_name, dir_find_data.cFileName); + + /* If the file name in cFileName[] includes `?' characters, it means + the original file name used characters that cannot be represented + by the current ANSI codepage. To avoid total lossage, retrieve + the short 8+3 alias of the long file name. */ + if (_mbspbrk (dir_static.d_name, "?")) + { + strcpy (dir_static.d_name, dir_find_data.cAlternateFileName); + downcase = 1; /* 8+3 aliases are returned in all caps */ + } + dir_static.d_namlen = strlen (dir_static.d_name); dir_static.d_reclen = sizeof (struct direct) - MAXNAMLEN + 3 + dir_static.d_namlen - dir_static.d_namlen % 4; + + /* If the file name in cFileName[] includes `?' characters, it means + the original file name used characters that cannot be represented + by the current ANSI codepage. To avoid total lossage, retrieve + the short 8+3 alias of the long file name. */ + if (_mbspbrk (dir_find_data.cFileName, "?")) + { + strcpy (dir_static.d_name, dir_find_data.cAlternateFileName); + /* 8+3 aliases are returned in all caps, which could break + various alists that look at filenames' extensions. */ + downcase = 1; + } + else + strcpy (dir_static.d_name, dir_find_data.cFileName); + dir_static.d_namlen = strlen (dir_static.d_name); if (dir_is_fat) _strlwr (dir_static.d_name); else if (downcase)