1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-20 10:23:57 +00:00
Commit Graph

1032 Commits

Author SHA1 Message Date
Martin Rudalics
89d612214e Don't handle splits status.
* window.h (window): Remove splits slot.
* window.c (Fwindow_splits, Fset_window_splits): Remove.
(Fdelete_other_windows_internal, make_parent_window)
(make_window, Fsplit_window_internal, Fdelete_window_internal)
(Fset_window_configuration, save_window_save): Don't deal with
split status of windows.
(saved_window): Remove splits slot.
(Vwindow_splits): Rewrite doc-string.
* window.el (window-resize, delete-window): Use window-splits
variable instead of function.
(window-state-get-1, window-state-put-2, window-state-put):
Don't deal with windows' splits status.
* windows.texi (Splitting Windows, Deleting Windows): Remove
references to splits status of windows.
2011-11-12 10:55:50 +01:00
Glenn Morris
b2621720c3 toggle-read-only fixes for bugs#7292, 10006.
* doc/lispref/buffers.texi (Read Only Buffers): Expand a bit on why
toggle-read-only should only be used interactively.

* lisp/files.el (toggle-read-only): Mention that it should only
be used interactively.

* lisp/emacs-lisp/bytecomp.el (byte-compile-interactive-only-functions):
Add toggle-read-only.
2011-11-09 21:17:45 -05:00
Juanma Barranquero
c4e7c63af1 Fix typos. 2011-11-09 17:18:33 +01:00
Chong Yidong
d2ad7ee1ad Document window-pixel-edges etc in Lisp manual.
* doc/lispref/windows.texi (Window Sizes): Document window-pixel-edges,
window-inside-pixel-edges. window-absolute-pixel-edges, and
window-inside-absolute-pixel-edges.
(Resizing Windows): shrink-window-if-larger-than-buffer works on
non-full-width windows.
2011-11-09 22:37:25 +08:00
Martin Rudalics
2cffd68198 Rewrite window-resizable.
* window.el (window-size-fixed-p): Rewrite doc-string.
(window-resizable-p): Rename to window--resizable-p.  Update
callers.
(window--resizable): New function.  Make all callers of
window-resizable call window--resizable instead.
(window-resizable): Rewrite in terms of window--resizable.
* windows.texi (Resizing Windows): Rewrite documentation of
window-resizable.
2011-11-09 10:36:05 +01:00
Chong Yidong
f6f6d7e7b1 * doc/lispref/windows.texi (Splitting Windows): Simplify example. 2011-11-09 15:56:50 +08:00
Chong Yidong
e7313f3389 * doc/lispref/windows.texi (Resizing Windows): Simplify introduction.
Don't document enlarge-window, shrink-window, enlarge-window-horizontally,
and shrink-window-horizontally; they are no longer preferred for calling
from Lisp, and are already documented in the Emacs manual.
2011-11-08 23:34:21 +08:00
Chong Yidong
a79db6e012 Edits to Window Sizes node of Lisp manual.
* doc/lispref/windows.texi (Window Sizes): Copyedits.  Document
window-text-height.  Remove window-min-height and window-min-width
discussion, referring instead to Emacs manual.
(Splitting Windows, Resizing Windows): Add xref to Emacs manual.
2011-11-08 15:43:30 +08:00
Glenn Morris
441950c75d * doc/lispref/windows.texi (Choosing Window): Fix keybinding typo. 2011-11-07 09:49:54 -08:00
Martin Rudalics
be7f55452c Remove term "subwindow" from code and documentation.
* window.h: Declare delete_all_child_windows instead of
delete_all_subwindows.
* window.c (Fwindow_nest, Fset_window_nest)
(Fset_window_new_total, Fset_window_new_normal)
(Fwindow_resize_apply): Don't use term subwindow in doc-strings.
(delete_all_subwindows): Rename to delete_all_child_windows.
(Fdelete_other_windows_internal, Fset_window_configuration):
Call delete_all_child_windows instead of delete_all_subwindows.
* frame.c (delete_frame): Call delete_all_child_windows instead
of delete_all_subwindows.

* window.el (window-combinations): Make WINDOW argument
mandatory.  Rewrite doc-string.
(walk-window-subtree, window-atom-check, window-min-delta)
(window-max-delta, window--resize-this-window)
(window--resize-root-window-vertically, window-tree)
(balance-windows, window-state-put): Rewrite doc-strings as to
not mention the term "subwindow".
(window--resize-subwindows-skip-p): Rename to
window--resize-child-windows-skip-p.
(window--resize-subwindows-normal): Rename to
window--resize-child-windows-normal.
(window--resize-subwindows): Rename to
window--resize-child-windows.
(window-or-subwindow-p): Rename to window--in-subtree-p.

* windows.texi (Resizing Windows, Splitting Windows)
(Window Configurations): Use "child window" instead of
"subwindow".
2011-11-07 10:51:08 +01:00
Chong Yidong
291d142b33 Manual updates for window changes.
* doc/emacs/windows.texi (Basic Window): Add xref to Cursor Display.
(Split Window): Document negative arg for splitting commands.
(Other Window): Document mouse-1 in text area of window.
(Change Window): Don't mention window attributes, since they
aren't defined.  C-x 1 can't be used with minibuffer windows.
Windows are no longer auto-deleted.
(Window Choice): Add xref to Choosing Window in Lisp manual.
(Window Convenience): Note that windmove disables shift-selection.
Move M-x compare-windows here from Other Window node.

* doc/emacs/custom.texi (Mouse Buttons):
* doc/emacs/search.texi (Isearch Scroll):
* doc/emacs/windows.texi (Split Window): Use new names split-window-below
and split-window-right.

* doc/lispref/windows.texi (Basic Windows): Clarify various definitions.
Treat window-normalize-* as internal; don't document them.
(Windows and Frames): Various clarifications, e.g. non-live
windows also belong to frames.  Fix window-list description.
Simplify window nesting example.
(Splitting Windows, Window Configurations): Use
split-window-below.
2011-11-06 14:14:01 +08:00
Eli Zaretskii
89bd5ee15a Fix documentation per bug #9949.
src/window.c (Fwindow_body_size): Mention in the doc string that the
 return value is in frame's canonical units.
 lisp/window.el (window-body-height, window-body-width): Mention in
 the doc string that the return values are in frame's canonical
 units.
 doc/lispref/windows.texi (Window Sizes): Mention in the doc string that the
 return values of `window-body-height' and `window-body-width' are
 in frame's canonical units.
2011-11-04 12:09:41 +02:00
Martin Rudalics
3d8daefefa Remove "iso-" infix from window combination functions.
* window.el (window-iso-combination-p, window-iso-combined-p)
(window-iso-combinations): Remove "iso-" infix.  Suggested by
Chong Yidong.
(window-min-size-1, window-size-fixed-1, window-min-delta-1)
(window-max-delta-1, window-resize, window--resize-siblings)
(window--resize-this-window, adjust-window-trailing-edge)
(split-window, balance-windows-1)
(shrink-window-if-larger-than-buffer):
* calendar/calendar.el (calendar-generate-window):
* help.el (resize-temp-buffer-window): Adjust callers
accordingly.
* windows.texi (Windows and Frames): Remove "iso-" infix from
documentation of window-iso-combined-p.
2011-10-30 09:29:56 +01:00
Chong Yidong
60754666a5 * doc/emacs/modes.texi (Running Hooks): Document with-wrapper-hook. 2011-10-26 08:47:58 +08:00
Chong Yidong
d366bd532d Edits to Display chapter of Emacs manual.
* doc/emacs/display.texi (Faces): Simplify discussion.  Move documentation
of list-faces-display here, from Standard Faces node.  Note
special role of `default' background.
(Standard Faces): Note special role of `default' background.  Note
that region face may be taken fom GTK.  Add xref to Text Display.
(Text Scale): Rename from "Temporary Face Changes".  Callers
changed.  Don't bother documenting variable-pitch-mode.
(Font Lock): Copyedits.  Remove font-lock-maximum-size.
(Useless Whitespace): Simplify description of
delete-trailing-whitespace.  Note active region case.
(Text Display): Fix description of escape-glyph face assignment.
Remove unibye mode discussion.  Update some parts for Unicode.
Move glyphless chars documentation to Lisp manual.

* doc/emacs/frames.texi (Tooltips): Document x-gtk-use-system-tooltips.

* doc/lispref/display.texi (Glyphless Chars): New node.
2011-10-17 21:42:28 -04:00
Chong Yidong
50b063c300 Update Killing chapter in Emacs manual. Other misc manual tweaks.
* doc/emacs/killing.texi (Deletion): Add xref to Using Region.
(Yanking): Move yank-excluded-properties to Lisp manual.  Move C-y
description here.  Recommend C-u C-SPC for jumping to mark.
(Kill Ring): Move kill ring variable documentation here.
(Primary Selection): Copyedits.
(Rectangles): Document new command rectangle-number-lines.
(CUA Bindings): Note that this disables the mark-even-if-inactive
behavior for C-x and C-c.

* doc/emacs/mark.texi (Mark): Mention "active region" terminology.
(Using Region): Document delete-active-region.

* doc/lispref/text.texi (Yanking): Document yank-excluded-properties.

* doc/lispref/package.texi (Packaging Basics): The commentary should say how
to begin using the package.
2011-10-13 12:03:49 -04:00
Martin Rudalics
c72063fa83 Mention which window gets selected when deleting the selected window.
* windows.texi (Deleting Windows): Mention which window gets selected
when deleting the selected window.
2011-10-11 11:27:08 +02:00
Martin Rudalics
d83dc65b3f Describe frame-auto-hide-function and related issues.
* buffers.texi (The Buffer List): Describe how bury-buffer deals
with the selected window.
* windows.texi (Buffers and Windows): Reformulate text on how
replace-buffer-in-windows deals with a window.
(Quitting Windows): Describe how quit-window deals with a
standalone frame.  Describe new option frame-auto-hide-function.
2011-10-09 14:26:29 +02:00
Glenn Morris
48bca61974 * doc/lispref/symbols.texi (Other Plists): Markup fix. (Bug#9702) 2011-10-08 13:53:06 -07:00
Glenn Morris
c599682c2a * doc/lispref/positions.texi (Excursions): Update warning message. 2011-10-08 13:52:03 -07:00
Chong Yidong
969aa7346f * display.texi (Low-Level Font, Face Attributes, Font Lookup): Fix xref.
Fixes: debbugs:9675
2011-10-05 17:39:54 -04:00
Chong Yidong
717a1362e3 Fix manual description of display-buffer-pop-up-window.
Also, tweaks to NEWS.

* doc/lispref/windows.texi (Display Action Functions): Fix description of
display-buffer-pop-up-window.
2011-10-01 18:16:24 -04:00
Chong Yidong
550f41cdba Document some Emacs 24 scrolling changes.
* doc/emacs/basic.texi (Moving Point):
* doc/emacs/custom.texi (Mouse Buttons):
* doc/emacs/rmail.texi (Rmail Scrolling):
* doc/emacs/search.texi (Isearch Scroll):

* doc/emacs/display.texi (Scrolling): Replace scroll-up/down with
scroll-up/down-command.  Fix scroll-preserve-screen-position
description.  Document scroll-error-top-bottom.

* doc/lispref/windows.texi (Textual Scrolling): Document scroll-up-command,
scroll-down-command, scroll-error-top-bottom, and the
scroll-command symbol property.
2011-10-01 17:54:33 -04:00
Juanma Barranquero
a239d4e9c0 Fix typos. 2011-09-28 02:59:28 +02:00
Martin Rudalics
c419f5cb55 Describe window quitting, configuration and parameter additions.
* windows.texi (Quitting Windows): New node.
(Window Configurations): Add descriptions of window-state-get
and window-state-put.
(Window Parameters): Describe variable ignore-window-parameters.
Sketch some window parameters currently in use.
* elisp.texi (Top): Update node listing.
2011-09-25 17:08:25 +02:00
Martin Rudalics
590c056d7e Some minor changes in windows section.
* windows.texi (Windows and Frames, Display Action Functions)
(Switching Buffers): Fix some typos.
(Buffers and Windows): Remove reference to window-auto-delete.
Reword description of replace-buffer-in-windows.
(Window History): Fix some typos and refer to frame local buffer
list.
2011-09-25 12:11:25 +02:00
Chong Yidong
9ec20d36df Document display-buffer-alist and related variables in Lisp manual.
* doc/lispref/windows.texi (Display Action Functions)
(Choosing Window Options): New nodes.
2011-09-24 23:32:51 -04:00
Chong Yidong
0e406a72ed Document display-buffer and other window changes in Lisp manual.
* doc/lispref/windows.texi (Window History): New node.  Move text here
from Buffers and Windows.
(Switching Buffers): Rename from Displaying Buffers, since we
don't document display-buffer here; callers changed.  Document
FORCE-SAME-WINDOW arg to switch-to-buffer and
switch-to-buffer-other-frame.  Delete duplicate
replace-buffer-in-windows doc.
(Choosing Window): Document display actions.
2011-09-24 18:49:32 -04:00
Eli Zaretskii
6bf7006fa2 Change the default value of redisplay-dont-pause to t.
src/dispnew.c (syms_of_display) <redisplay-dont-pause>: Default
 value is now t.  Doc fix.
 doc/lispref/display.texi (Forcing Redisplay): Update the description of
 redisplay-dont-pause due to change in the default value.
 etc/NEWS: Mention the change of the default value.
2011-09-24 17:38:16 +03:00
Martin Rudalics
c4682d186f Document some window code changes in NEWS. 2011-09-23 17:01:49 +02:00
Martin Rudalics
b33b68a32c Document changes to windows code.
* frames.texi (Frames and Windows): Move section and rename to
Windows and Frames in windows.texi.
* windows.texi (Windows): Restructure.
(Basic Windows): Rewrite.  Explain live and internal windows and
normalization functions.
(Windows and Frames): Move section here from frames.texi.
Describe subwindows, window combinations, window tree, and
corresponding functions including window-list here.
(Window Sizes): Rename section from Size of Window and move it
up in chapter.  Describe total and body sizes and the
corresponding functions.  Explain new semantics of
window-min-height/-width.
(Resizing Windows): Move section up in chapter.  Describe new
resize functions.
(Splitting Windows): Describe new behavior of split-window,
split-window-above-each-other and split-window-side-by-side.
Provide examples.  Describe window-nest and window-splits
options.
(Deleting Windows): Minor rewrite.
(Selecting Windows): Minor rewrite.  Describe
frame-selected-window and set-frame-selected-window here.
(Cyclic Window Ordering): Minor rewrite.  Describe
window-list-1.
(Buffers and Windows): Rewrite.  Explain a window's previous and
next buffers and the corresponding functions.
* elisp.texi (Top): Update node listings for frames and windows
sections.
2011-09-23 11:12:53 +02:00
Stefan Monnier
4d3786ace1 * doc/lispref/display.texi (Face Functions): `face-list' returns faces.
Fixes: debbugs:9564
2011-09-20 21:33:33 -04:00
Lars Magne Ingebrigtsen
713df35b6d * errors.texi (Standard Errors): Remove apparent placeholder text (bug#9491). 2011-09-19 10:14:13 +02:00
Chong Yidong
33ed493bca Fix handling of X resource for window icons.
* src/xfns.c (Fx_create_frame): Handle bitmapIcon resource as a boolean.

* doc/emacs/cmdargs.texi (Icons X): Fix description of Emacs icon.

* doc/emacs/xresources.texi (Table of Resources): Fix documentation of
bitmapIcon.

* doc/lispref/frames.texi (Management Parameters): Fix description of
icon-type parameter.

Fixes: debbugs:9154
2011-09-18 16:01:37 -04:00
Chong Yidong
b8f0a954b8 * doc/lispref/tips.texi: Don't bind a key sequence ending in C-g.
Suggested by Edward O'Connor.
2011-09-17 15:49:57 -04:00
Eli Zaretskii
eddf142cfa Fix bug #9525 with indexing most-positive/negative-fixnum.
doc/lispref/numbers.texi (Integer Basics): Add indexing for
 most-positive-fixnum and most-negative-fixnum.
2011-09-17 11:18:48 +03:00
Dani Moncayo
bf1af6c786 * doc/lispref/lists.texi (Sets And Lists): Fix typo. (tiny change) 2011-09-13 23:52:54 -07:00
Juanma Barranquero
cec2eab875 * processes.texi (Network Servers): Clarify what the process buffer is used for.
Fixes: debbugs:9233
2011-09-11 04:04:07 +02:00
Chong Yidong
51751aa26f Merge changes from emacs-23 branch 2011-08-30 18:43:43 -04:00
Chong Yidong
35137ed3a5 Document new Emacs 24 faces in Lisp manual.
* doc/lispref/display.texi (Basic Faces): New node.  Document new faces.

* doc/lispref/modes.texi (Major Mode Conventions): Move some text there.
(Mode Help): Remove major-mode var, duplicated in Major Modes.
2011-08-30 11:24:07 -04:00
Chong Yidong
3fd50d5c65 Update and edit manual sections on major modes.
* doc/emacs/modes.texi (Choosing Modes): auto-mode-case-fold is now t.

* doc/lispref/modes.texi (Basic Major Modes): New node.  Callers updated.
(Major Modes): Document fundamental-mode and major-mode.
(Major Mode Basics): Node deleted; text moved to Major Modes.
(Derived Modes): Document derived-mode-p.
2011-08-29 18:02:21 -04:00
Chong Yidong
e2aeef63a6 Add xrefs to View Mode node to Emacs manual.
* doc/emacs/files.texi (File Archives):
* doc/emacs/cal-xtra.texi (Diary Display):
* doc/emacs/help.texi (Help Mode): Add xref to View Mode.
2011-08-28 17:15:20 -04:00
Chong Yidong
a632608298 Document copy-directory and related changes in manuals.
* doc/emacs/buffers.texi (Misc Buffer): Move view-buffer to View Mode.

* doc/emacs/display.texi (View Mode): New node.  Move view-file here from
Misc File Ops.  Move view-buffer here from Misc Buffer.

* doc/emacs/files.texi (Misc File Ops): Document new
delete-by-moving-to-trash behavior.  Remove view-file.

* doc/lispref/files.texi (Changing Files, Create/Delete Dirs): Document new
arguments for delete-file, delete-directory, and copy-directory.
2011-08-28 17:07:10 -04:00
Chong Yidong
04e2ce72d0 Document trash changes in manual.
* doc/emacs/dired.texi (Dired Deletion): Shorten description of Trash.

* doc/emacs/files.texi (Misc File Ops): Document new
delete-by-moving-to-trash behavior.

* doc/lispref/files.texi (Changing Files, Create/Delete Dirs): Document TRASH
argument.
2011-08-28 16:22:10 -04:00
Dani Moncayo
1f403cb991 * dic/lispref/lists.texi (Building Lists): Fix typo. 2011-08-28 15:08:45 -04:00
Chong Yidong
ddb54206dd Update manuals for some Emacs 24 changes.
* doc/emacs/misc.texi (emacsclient Options): Document server-port.

* doc/lispref/display.texi (Progress): Document spinner functionality.

* doc/lispref/frames.texi (Layout Parameters): The defaults for the
menu-bar-lines and tool-bar-lines parameters depend on the mode.

* doc/lispref/objects.texi (Symbol Type): Document ## print representation.

* doc/lispref/os.texi (Killing Emacs): Note that kill-emacs can be called by
operating system signals.  Refer to save-buffers-kill-terminal
instead of save-buffers-kill-emacs.
2011-08-28 14:49:59 -04:00
Eli Zaretskii
0c95fcf739 Handle `(space ...)' display spec as paragraph separator.
src/xdisp.c (compute_display_string_pos): Return 2 in DISP_PROP when
 the display spec is of the form `(space ...)'.
 (handle_display_spec): Return the value returned by
 handle_single_display_spec, not just 1 or zero.
 (handle_single_display_spec): If the display spec is of the form
 `(space ...)', and specifies display in the text area, return 2
 rather than 1.
 src/dispextern.h (struct bidi_it): Rename the disp_prop_p member
 into disp_prop; all users changed.
 src/bidi.c (bidi_fetch_char): If compute_display_string_pos returns
 DISP_PROP = 2, substitute the u+2029 PARAGRAPH SEPARATOR character
 for the text covered by the display property.
 lisp/buff-menu.el (Buffer-menu-buffer+size): Remove calls to
 bidi-string-mark-left-to-right; they are unnecessary now.
 doc/lispref/display.texi (Specified Space): Mention that `space' specs
 influence bidi reordering.
 (Bidirectional Display): Explain how to use `(space . PROPS)' for
 separating fields with bidirectional content.
2011-08-25 13:45:33 +03:00
Eli Zaretskii
5980d4c6db Fix current-bidi-paragraph-direction and its doc.
src/xdisp.c (Fcurrent_bidi_paragraph_direction): For unibyte
 buffers, return left-to-right.
 doc/lispref/display.texi (Bidirectional Display): Document return value in
 buffers that are not bidi-reordered for display, and in unibyte
 buffers.
2011-08-24 14:49:54 +03:00
Eli Zaretskii
bca633fb29 Followup for character properties in 2011-08-23T11:48:07Z!handa@m17n.org.
src/bidi.c (bidi_get_type): Abort if we get zero as the bidi type of
 a character.
 admin/unidata/unidata-gen.el (unidata-prop-alist): Update the default
 values of bidi-class according to DerivedBidiClass.txt from the
 latest UCD.
 lisp/international/uni-bidi.el: Regenerated.
 doc/lispref/nonascii.texi (Character Properties): Document the values for
 unassigned codepoints.
2011-08-23 17:45:14 +03:00
Eli Zaretskii
92b714445a Rename string-mark-left-to-right to bidi-string-mark-left-to-right in the manual. 2011-08-18 19:27:59 +03:00
Eli Zaretskii
c094bb0cf7 Improve documentation of bidi in ELisp manual.
doc/lispref/nonascii.texi (Character Properties): Document use of
 `bidi-class' and `mirroring' properties as part of reordering.
 Provide cross-references to "Bidirectional Display".
 doc/lispref/display.texi (Bidirectional Display): Document the pitfalls of
 concatenating strings with bidirectional content, with possible
 solutions.  Document string-mark-left-to-right.  Mention paragraph
 direction in modes that inherit from prog-mode.  Document use of
 `bidi-class' and `mirroring' properties as part of reordering.
 etc/NEWS: Mark string-mark-left-to-right as documented.
2011-08-18 13:53:55 +03:00
Eli Zaretskii
9adfcd0bf5 Improve documentation of `special' modes.
doc/lispref/modes.texi (Major Mode Conventions): Improve the documentation
 of `mode-class' `special' modes.
2011-08-16 11:40:31 +03:00
Eli Zaretskii
1086287381 Document the new "mirroring" Unicode character property.
src/nonascii.texi (Character Properties): Document the `mirroring'
 property.  Add index entries.
2011-08-16 11:26:46 +03:00
Eli Zaretskii
1ea897d542 Improve documentation of regexp search for categories.
doc/lispref/searching.texi (Regexp Backslash): Document how to display
 existing categories.  Mention the possibility of adding
 categories, and add an xref to where this is described.  Add an
 index entry.
 doc/lispref/syntax.texi (Categories): Add an example of defining a new
 category and category table.
2011-08-16 10:53:33 +03:00
Chong Yidong
ebb552ed38 Note in Lisp manual that mouse-face cannot change the text size.
* doc/lispref/text.texi (Special Properties):
* doc/lispref/display.texi (Overlay Properties): Note that mouse-face cannot
change the text size.

Fixes: debbugs:8530
2011-08-09 17:14:11 -04:00
Chong Yidong
51a714e101 Fix explanation about setting the time zone in Lisp manual.
* doc/lispref/os.texi (Time of Day): Remove set-time-zone-rule, and
recommend using setenv instead.
2011-08-08 12:06:34 -04:00
Eli Zaretskii
4cc60b9b85 Turn on bidi-display-reordering by default.
src/buffer.c (init_buffer_once, syms_of_buffer): Set
 bidi-display-reordering to t by default.
 doc/emacs/mule.texi (Bidirectional Editing): Document the fact that
 bidi-display-reordering is t by default.
 lispref/display.texi (Bidirectional Display): Document the fact that
 bidi-display-reordering is t by default.
2011-07-28 20:18:25 +03:00
Eli Zaretskii
5deb92fd9f doc/lispref/display.texi (Bidirectional Display): New section. 2011-07-23 18:36:52 +03:00
Glenn Morris
67f9b9f8b0 ChangeLog fix. 2011-07-16 13:05:20 -07:00
Glenn Morris
aa57197f1f Grammar tweak. 2011-07-16 13:02:57 -07:00
Lars Magne Ingebrigtsen
011b0ad6b5 Document toolkit differences for menus
(Toolkit Differences): New node with text from Tim
Cross (tiny change) and Glenn Morris.
2011-07-16 19:58:16 +02:00
Andreas Schwab
4baf28e616 * doc/lispref/help.texi (Keys in Documentation): Revert last change. 2011-07-15 20:43:23 +02:00
Lars Magne Ingebrigtsen
f863868c45 Clarify that \= only quotes the next character 2011-07-15 16:31:14 +02:00
Lars Magne Ingebrigtsen
662498421e (Using Debugger): Mention @code{eval-expression-debug-on-error}
Fixes: debbugs:8549
2011-07-15 15:16:11 +02:00
Lars Magne Ingebrigtsen
3073fc1414 * variables.texi (Lexical Binding): Mention `defcustom'.
Fixes: debbugs:8459
2011-07-15 14:45:51 +02:00
Eli Zaretskii
0bb2392728 Support bidi reordering of overlay and display strings.
Fix bugs #7616, #8133, #8867.

 src/xdisp.c (compute_display_string_pos)
 (compute_display_string_end): Accept additional argument STRING.
 (init_iterator, reseat_1): Initialize bidi_it->string.s to NULL.
 (reseat_to_string): Initialize bidi_it->string.s and
 bidi_it->string.schars.
 (Fcurrent_bidi_paragraph_direction): Initialize itb.string.s to
 NULL (avoids a crash in bidi_paragraph_init).  Initialize
 itb.string.lstring.
 (init_iterator): Call bidi_init_it only of a valid
 buffer position was specified.  Initialize paragraph_embedding to
 L2R.
 (reseat_to_string): Initialize the bidi iterator.
 (display_string): If we need to ignore text properties of
 LISP_STRING, set IT->stop_charpos to IT->end_charpos.  (The
 original value of -1 will not work with bidi.)
 (compute_display_string_pos): First arg is now struct
 `text_pos *'; all callers changed.  Support display properties on
 Lisp strings.
 (compute_display_string_end): Support display properties on Lisp
 strings.
 (init_iterator, reseat_1, reseat_to_string): Initialize the
 string.bufpos member to 0 (zero, for compatibility with IT_CHARPOS
 when iterating on a string not from display properties).
 (compute_display_string_pos, compute_display_string_end): Fix
 calculation of the object to scan.  Fixes an error when using
 arrow keys.
 (next_element_from_buffer): Don't abort when IT_CHARPOS is before
 base_level_stop; instead, set base_level_stop to BEGV.  Fixes
 crashes in vertical-motion.
 (next_element_from_buffer): Improve commentary for when
 the iterator is before prev_stop.
 (init_iterator): Initialize bidi_p from the default value of
 bidi-display-reordering, not from buffer-local value.  Use the
 buffer-local value only if initializing for buffer iteration.
 (handle_invisible_prop): Support invisible properties on strings
 that are being bidi-reordered.
 (set_iterator_to_next): Support bidi reordering of C strings and
 Lisp strings.
 (next_element_from_string): Support bidi reordering of Lisp
 strings.
 (handle_stop_backwards): Support Lisp strings as well.
 (display_string): Support display of R2L glyph rows.  Use
 IT_STRING_CHARPOS when displaying from a Lisp string.
 (init_iterator): Don't initialize it->bidi_p for strings
 here.
 (reseat_to_string): Initialize it->bidi_p for strings here.
 (next_element_from_string, next_element_from_c_string)
 (next_element_from_buffer): Add xassert's for correspondence
 between IT's object being iterated and it->bidi_it.string
 structure.
 (face_before_or_after_it_pos): Support bidi iteration.
 (next_element_from_c_string): Handle the case of the first string
 character that is not the first one in the visual order.
 (get_visually_first_element): New function, refactored from common
 parts of next_element_from_buffer, next_element_from_string, and
 next_element_from_c_string.
 (tool_bar_lines_needed, redisplay_tool_bar)
 (display_menu_bar): Force left-to-right direction.  Add a FIXME
 comment for making that be controlled by a user option.
 (push_it, pop_it): Save and restore the state of the
 bidi iterator.  Save and restore the bidi_p flag.
 (pop_it): Iterate out of display property for string iteration as
 well.
 (iterate_out_of_display_property): Support iteration over strings.
 (handle_single_display_spec): Set up it->bidi_it for iteration
 over a display string, and call bidi_init_it.
 (handle_single_display_spec, next_overlay_string)
 (get_overlay_strings_1, push_display_prop): Set up the bidi
 iterator for displaying display or overlay strings.
 (forward_to_next_line_start): Don't use the shortcut if
 bidi-iterating.
 (back_to_previous_visible_line_start): If handle_display_prop
 pushed the iterator stack, restore the internal state of the bidi
 iterator by calling bidi_pop_it same number of times.
 (reseat_at_next_visible_line_start): If ON_NEWLINE_P is non-zero,
 and we are bidi-iterating, don't decrement the iterator position;
 instead, set the first_elt flag in the bidi iterator, to produce
 the same effect.
 (reseat_1): Remove redundant setting of string_from_display_prop_p.
 (push_display_prop): xassert that we are iterating a buffer.
 (push_it, pop_it): Save and restore paragraph_embedding member.
 (handle_single_display_spec, next_overlay_string)
 (get_overlay_strings_1, reseat_1, reseat_to_string)
 (push_display_prop): Set up the `unibyte' member of bidi_it.string
 correctly.  Don't assume unibyte strings are not bidi-reordered.
 (compute_display_string_pos)
 (compute_display_string_end): Fix handling the case of C string.
 (push_it, pop_it): Save and restore from_disp_prop_p.
 (handle_single_display_spec, push_display_prop): Set the
 from_disp_prop_p flag.
 (get_overlay_strings_1): Reset the from_disp_prop_p flag.
 (pop_it): Call iterate_out_of_display_property only if we are
 popping after iteration over a string that came from a display
 property.  Fix a typo in popping stretch info.  Add an assertion
 for verifying that the iterator position is in sync with the bidi
 iterator.
 (handle_single_display_spec, get_overlay_strings_1)
 (push_display_prop): Fix initialization of paragraph direction for
 string when that of the parent object is not yet determined.
 (reseat_1): Call bidi_init_it to resync the bidi
 iterator with IT's position.  (Bug#7616)
 (find_row_edges): If ROW->start.pos gives position
 smaller than min_pos, use it as ROW->minpos.  (Bug#7616)
 (handle_stop, back_to_previous_visible_line_start, reseat_1):
 Reset the from_disp_prop_p flag.
 (SAVE_IT, RESTORE_IT): New macros.
 (pos_visible_p, face_before_or_after_it_pos)
 (back_to_previous_visible_line_start)
 (move_it_in_display_line_to, move_it_in_display_line)
 (move_it_to, move_it_vertically_backward, move_it_by_lines)
 (try_scrolling, redisplay_window, display_line): Use them when
 saving a temporary copy of the iterator and restoring it back.
 (back_to_previous_visible_line_start, reseat_1)
 (init_iterator): Empty the bidi cache "stack".
 (move_it_in_display_line_to): If iterator ended up at
 EOL, but we never saw any buffer positions smaller than
 to_charpos, return MOVE_POS_MATCH_OR_ZV.  Fixes vertical cursor
 motion in bidi-reordered lines.
 (move_it_in_display_line_to): Record prev_method and prev_pos
 immediately before the call to set_iterator_to_next.  Fixes cursor
 motion in bidi-reordered lines with stretch glyphs and strings
 displayed in margins.  (Bug#8133) (Bug#8867)
 Return MOVE_POS_MATCH_OR_ZV only if iterator position is past
 TO_CHARPOS.
 (pos_visible_p): Support positions in bidi-reordered lines.  Save
 and restore bidi cache.
 src/bidi.c (bidi_level_of_next_char): clen should be EMACS_NT, not int.
 (bidi_paragraph_info): Delete unused struct.
 (bidi_cache_idx, bidi_cache_last_idx): Declare EMACS_INT.
 (bidi_cache_start): New variable.
 (bidi_cache_reset): Reset bidi_cache_idx to bidi_cache_start, not
 to zero.
 (bidi_cache_fetch_state, bidi_cache_search)
 (bidi_cache_find_level_change, bidi_cache_iterator_state)
 (bidi_cache_find, bidi_peek_at_next_level)
 (bidi_level_of_next_char, bidi_find_other_level_edge)
 (bidi_move_to_visually_next): Compare cache index with
 bidi_cache_start rather than with zero.
 (bidi_fetch_char): Accept new argument STRING; all callers
 changed.  Support iteration over a string.  Support strings with
 display properties.  Support unibyte strings.  Fix the type of
 `len' according to what STRING_CHAR_AND_LENGTH expects.
 (bidi_paragraph_init, bidi_resolve_explicit_1)
 (bidi_resolve_explicit, bidi_resolve_weak)
 (bidi_level_of_next_char, bidi_move_to_visually_next): Support
 iteration over a string.
 (bidi_set_sor_type, bidi_resolve_explicit_1)
 (bidi_resolve_explicit, bidi_type_of_next_char): ignore_bn_limit
 can now be zero (for strings); special values 0 and -1 were
 changed to -1 and -2, respectively.
 (bidi_char_at_pos): New function.
 (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak):
 Call it instead of FETCH_MULTIBYTE_CHAR.
 (bidi_move_to_visually_next): Abort if charpos or bytepos were not
 initialized to valid values.
 (bidi_init_it): Don't initialize charpos and bytepos with invalid
 values.
 (bidi_level_of_next_char): Allow the sentinel "position" to pass
 the test for valid cached positions.  Fix the logic for looking up
 the sentinel state in the cache.  GCPRO the Lisp string we are
 iterating.
 (bidi_push_it, bidi_pop_it): New functions.
 (bidi_initialize): Initialize the bidi cache start stack pointer.
 (bidi_cache_ensure_space): New function, refactored from part of
 bidi_cache_iterator_state.  Don't assume the required size is just
 one BIDI_CACHE_CHUNK away.
 (bidi_cache_start_stack, bidi_push_it): Use IT_STACK_SIZE.
 (bidi_count_bytes, bidi_char_at_pos): New functions.
 (bidi_cache_search): Don't assume bidi_cache_last_idx is
 always valid if bidi_cache_idx is valid.
 (bidi_cache_find_level_change): xassert that bidi_cache_last_idx
 is valid if it's going to be used.
 (bidi_shelve_cache, bidi_unshelve_cache): New functions.
 (bidi_cache_fetch_state, bidi_cache_search)
 (bidi_cache_find_level_change, bidi_cache_ensure_space)
 (bidi_cache_iterator_state, bidi_cache_find)
 (bidi_find_other_level_edge, bidi_cache_start_stack): All
 variables related to cache indices are now EMACS_INT.
 src/dispextern.h (struct bidi_string_data): New structure.
 (struct bidi_it): New member `string'.  Make flag members be 1-bit
 fields, and put them last in the struct.
 (compute_display_string_pos, compute_display_string_end): Update
 prototypes.
 (bidi_push_it, bidi_pop_it): Add prototypes.
 (struct iterator_stack_entry): New members bidi_p,
 paragraph_embedding, and from_disp_prop_p.
 (struct it): Member bidi_p is now a bit field 1 bit wide.
 (bidi_shelve_cache, bidi_unshelve_cache): Declare
 prototypes.
 src/.gdbinit (xvectype, xvector, xcompiled, xchartable, xboolvector)
 (xpr, xfont, xbacktrace): Use "header.size" when accessing vectors
 and vector-like objects.
 src/dispnew.c (buffer_posn_from_coords): Save and restore the bidi
 cache around display iteration.
 src/window.c (Fwindow_end, window_scroll_pixel_based)
 (displayed_window_lines, Frecenter): Save and restore the bidi
 cache around display iteration.
 lisp/buff-menu.el (Buffer-menu-buffer+size): Accept an additional
 argument LRM; if non-nil, append an invisible LRM character to the
 buffer name.
 (list-buffers-noselect): Call Buffer-menu-buffer+size with the
 last argument non-nil, when formatting buffer names.
 (Buffer-menu-mode, list-buffers-noselect): Force left-to-right
 paragraph direction.
 doc/lispref/display.texi (Other Display Specs): Document that `left-fringe'
 and `right-fringe' display specifications are of the "replacing"
 kind.
2011-07-14 20:28:42 +03:00
Lars Magne Ingebrigtsen
f2027cdf5a (Documentation Basics): Add a link to the Function Documentation node.
Fixes: debbugs:6580
2011-07-14 02:02:09 +02:00
Lars Magne Ingebrigtsen
0bc59b255e Mention :visible menu bar separators
* keymaps.texi (Menu Bar): Mention :visible and :enable
(bug#6344).  Text by Drew Adams.

Fixes: debbugs:6334
2011-07-14 01:17:24 +02:00
Lars Magne Ingebrigtsen
63d55f1f91 * modes.texi (Running Hooks): Mention buffer-local hook variables
Fixes: debbugs:6218
2011-07-13 23:42:54 +02:00
Lars Magne Ingebrigtsen
f987fde448 (General Escape Syntax): "a with grave accent" is ?xe0, not ?x8e0.
Fixes: debbugs:5259
2011-07-13 17:07:57 +02:00
Chong Yidong
b752763931 Minor xref additions to Lisp manual.
* doc/lispref/display.texi (Face Attributes, Font Selection): Add
references to the Fonts node in the Emacs manual.

Fixes: debbugs:4178
2011-07-12 18:09:28 -04:00
Chong Yidong
c830e5aeea Remove frame-local vars from Lisp manual; obsolete since Emacs 22.3.
* display.texi (Window Systems): `window-system' is terminal-local.

* doc/lispref/frames.texi (Frame Parameters, Parameter Access): Don't mention
frame-local variables.

* doc/lispref/variables.texi (Buffer-Local Variables): Don't mention obsolete
frame-local variables.  (Frame-Local Variables): Node deleted.

* doc/lispref/elisp.texi (Top): Update node listing.
2011-07-12 13:33:18 -04:00
Lars Magne Ingebrigtsen
91223e541e * elisp.texi: Change "inferiors" to "subnodes" in three places 2011-07-12 14:50:42 +02:00
Chong Yidong
963578d396 More documentation of Emacs 24 X selection changes.
* doc/emacs/frames.texi (Mouse Commands): Document mouse-yank-primary.

* doc/emacs/killing.texi (Primary Selection): Document `only' setting for
select-active-regions.

* doc/emacs/mark.texi (Setting Mark): Reference Shift Selection node.

* doc/lispref/frames.texi (Window System Selections): Discussion of
x-select-enable-clipboard moved to Emacs manual.
2011-07-11 14:40:48 -04:00
Deniz Dogan
07151e498f * lispref/commands.texi (Prefix Command Arguments): Remove excessive apostrophe. 2011-07-11 19:45:01 +02:00
Lars Magne Ingebrigtsen
ad21a12a3a Clarify that the ". 23" syntax description is a string
Fixes: debbugs:3313
2011-07-11 17:30:28 +02:00
Lars Magne Ingebrigtsen
7261e1cfbb (Display Feature Testing): Try to explain what all the visual classes mean
Fixes: debbugs:3042
2011-07-11 16:35:46 +02:00
Lars Magne Ingebrigtsen
18d59e29f9 (Mode Line Variables): Document mode-line-remote' and mode-line-client'
Fixes: debbugs:2975
2011-07-10 17:12:36 +02:00
Lars Magne Ingebrigtsen
568f7b7950 (Insertion): Clarify marker movements.
Text from Drew Adams.

Fixes: debbugs:1651
2011-07-10 16:32:19 +02:00
Lars Magne Ingebrigtsen
d94d85e91e * text.texi (Special Properties): Clarify the format of `face'
Fixes: debbugs:1375
2011-07-07 22:37:54 +02:00
Lars Magne Ingebrigtsen
54e1018443 Clarify the `call-interactively' doc string, and add an example. 2011-07-07 18:59:26 +02:00
Lars Magne Ingebrigtsen
413c488ddb * functions.texi (Calling Functions): Link to the "Interactive
Call" node.

Fixes: debbugs:1001
2011-07-06 20:34:55 +02:00
Glenn Morris
322b7dab59 Merge from emacs-23; up to 2010-06-16T23:27:20Z!jay.p.belanger@gmail.com. 2011-07-05 19:42:10 -07:00
Tobias C. Rittweiler
d2a6c43b6f * searching.texi (Match Data): Note that match data can be
overwritten by most functions.

Fixes: debbugs:2499
2011-07-03 20:44:53 +02:00
Lars Magne Ingebrigtsen
a9ab721e7f Clarify what the "-" and "0" flags mean in the `format' function
(bug#6659).
2011-07-03 15:02:43 +02:00
Lars Magne Ingebrigtsen
c7844a2764 * functions.texi (What Is a Function): Document the autoload
object.

Fixes: debbugs:6496
2011-07-03 14:33:37 +02:00
Chong Yidong
3deead93c4 * customize.texi (Composite Types): Move alist/plist from Simple Types (Bug#7545).
* elisp.texi (Top): Update menu description.
2011-07-02 20:45:24 -04:00
Chong Yidong
b00d8c1a00 * display.texi (Face Attributes): Document negative line widths (Bug#6113). 2011-07-02 20:24:00 -04:00
Lars Magne Ingebrigtsen
8a20ca4cb0 Clarify that SETFUNCTION is only used in the Customize user interface
(bug#6089).
2011-07-03 01:52:35 +02:00
Lars Magne Ingebrigtsen
6dd56db46d Typo fix. 2011-07-02 23:38:52 +02:00
Lars Magne Ingebrigtsen
f68d76d0d4 * display.texi (Showing Images): Mention the point of sliced images (bug bug#7836). 2011-07-02 23:38:19 +02:00
Eli Zaretskii
7018dbe72c Fix incorrect usage of @kindex.
doc/lispref/variables.texi (Defining Variables, Void Variables)
 (Constant Variables): Fix incorrect usage of @kindex.
2011-07-02 20:18:16 +03:00
Lars Magne Ingebrigtsen
8d4294e957 (Defining Variables): Use @findex for functions. 2011-07-02 19:10:29 +02:00
Lars Magne Ingebrigtsen
4051493f74 Remove spurious newline introduced by last checkin. 2011-07-02 18:20:15 +02:00
Lars Magne Ingebrigtsen
28ee97c77e * variables.texi (Defining Variables): Add an index entry for
`set-variable' (bug#7262).
2011-07-02 17:32:03 +02:00
Lars Magne Ingebrigtsen
8862ffd571 * frames.texi (Basic Parameters): Document the `explicit-name'
parameter (bug#6951).
2011-07-02 16:14:57 +02:00
Lars Magne Ingebrigtsen
0ec389b977 * customize.texi (Type Keywords): Clarify that :value provides a
default value for all types.

Fixes: debbugs:7386
2011-07-02 15:36:11 +02:00
Lars Magne Ingebrigtsen
36cb87a1f4 * streams.texi (Output Functions): Document `pp'. 2011-07-02 15:08:07 +02:00
Eli Zaretskii
a2eaa31ddf Fix the use case of popping from display property.
src/dispextern.h (struct iterator_stack_entry, struct it): New
 member from_disp_prop_p.
 src/xdisp.c (push_it, pop_it): Save and restore from_disp_prop_p.
 (handle_single_display_spec, push_display_prop): Set the
 from_disp_prop_p flag.
 (get_overlay_strings_1): Reset the from_disp_prop_p flag.
 (pop_it): Call iterate_out_of_display_property only if we are
 popping after iteration over a string that came from a display
 property.  Fix a typo in popping stretch info.  Add an assertion
 for verifying that the iterator position is in sync with the bidi
 iterator.
 (handle_single_display_spec, get_overlay_strings_1)
 (push_display_prop): Fix initialization of paragraph direction for
 string when that of the parent object is not yet determined.
2011-07-02 13:05:14 +03:00
Glenn Morris
11fdef7d0c Merge from emacs-23; up to 2010-06-15T03:34:12Z!rgm@gnu.org. 2011-06-25 11:21:00 -07:00
Chong Yidong
eeafcea7ee * doc/lispref/text.texi (Special Properties): Clarify role of font-lock-face. 2011-06-15 14:45:28 -04:00
Lars Magne Ingebrigtsen
b96e6cde3e Renamed process-alive-p' to process-live-p' for consistency with other `-live-p' functions. 2011-06-15 19:30:41 +02:00
Chong Yidong
dfc47e3511 Fix errors in 2011-05-29 change to Lisp manual.
* doc/lispref/keymaps.texi (Searching Keymaps):
* doc/lispref/display.texi (Overlay Properties): Fix errors in 2011-05-29
change.  Suggested by Johan Bockgård.
2011-06-14 11:13:26 -04:00
Paul Eggert
001903b549 Merge: Document wide integers better. 2011-06-06 12:43:39 -07:00
Paul Eggert
2d365993f1 Document wide integers better.
* files.texi (File Attributes):
ino_t values no longer map to anything larger than a single cons.
2011-06-03 12:04:41 -07:00
Paul Eggert
be14b9ab10 Document wide integers better.
* files.texi (File Attributes): Document ino_t values better.
* numbers.texi (Integer Basics, Integer Basics, Arithmetic Operations):
(Bitwise Operations):
* objects.texi (Integer Type): Integers are typically 62 bits now.
* os.texi (Time Conversion): Document time_t values better.
2011-06-03 11:49:33 -07:00
Lars Magne Ingebrigtsen
bcd54f8370 Add the tiny convenience function `process-alive-p'. 2011-05-31 20:40:00 +02:00
Glenn Morris
ed7f1a6c5c Merge from emacs-23; up to 2010-06-12T11:17:12Z!eliz@gnu.org. 2011-05-29 15:41:06 -07:00
Chong Yidong
58539c631a Clarify Remapping Commands node in Lisp manual (Bug#8350).
* keymaps.texi (Remapping Commands): Emphasize that the keymap
needs to be active.
2011-05-29 15:00:00 -04:00
Chong Yidong
049bcbcba6 Tweaks to lisp manual to remove over/underflows in printed version.
* help.texi (Accessing Documentation):
* display.texi (Pixel Specification):
* processes.texi (Serial Ports, Serial Ports):
* nonascii.texi (Character Properties, Default Coding Systems):
* text.texi (Changing Properties, Special Properties):
* windows.texi (Window Start and End):
* modes.texi (SMIE Indentation Example, SMIE Tricks):
* keymaps.texi (Searching Keymaps, Tool Bar):
* minibuf.texi (Basic Completion):
* compile.texi (Eval During Compile):
* strings.texi (Formatting Strings): Tweaks to avoid overflowing
7x9 paper in printed manual.

* lists.texi (Sets And Lists): Fix misplaced text.
2011-05-29 13:18:46 -04:00
Chong Yidong
b4d52accc5 * doc/lispref/minibuf.texi (Reading File Names): Clarify (Bug#8480). 2011-05-28 15:58:43 -04:00
Chong Yidong
6b5681bf6b Remove antediluvian filename limit recommendation from tips.texi (Bug#8538).
* doc/lispref/tips.texi (Coding Conventions): Remove antediluvian filename limit recommendation.
2011-05-28 15:05:36 -04:00
Glenn Morris
9545957184 Tweak previous modes.texi change. 2011-05-26 21:43:15 -04:00
Glenn Morris
e145f1881a Make set-auto-mode respect mode: entries at the end of the file (bug#8586)
* lisp/files.el (set-auto-mode):
Also respect mode: entries at the end of the file.

* doc/lispref/modes.texi (Auto Major Mode):
Update for set-auto-mode changes.

* doc/emacs/custom.texi (Specifying File Variables):
Major modes no longer need come first.

* etc/NEWS: Mention this.
2011-05-26 21:00:53 -04:00
Glenn Morris
2d3ba9e768 * variables.texi (File Local Variables): More hack-local-variables details. 2011-05-26 09:20:21 -07:00
Glenn Morris
eafed945b7 Tiny doc/lispref/variables.texi update.
* doc/lispref/variables.texi (File Local Variables):
Update hack-local-variables `mode-only' return value.
2011-05-25 20:54:27 -04:00
Glenn Morris
b28c06e83b Fix whitespace in previous change. 2011-05-19 00:23:18 -07:00
Glenn Morris
bc8410afd8 * doc/lispref/lists.texi (Sets And Lists): Mention cl provides union etc. 2011-05-18 23:59:50 -07:00
Nix
35a30759f3 Misc small lispref fixes.
* windows.texi (Displaying Buffers): pop-to-buffer is not a command.

* text.texi (Parsing HTML): Update for function name changes.

* syntax.texi (Syntax Flags): Small fix.

* keymaps.texi (Active Keymaps): Typo fix.
(Changing Key Bindings): Grammar fix.

* frames.texi (Minibuffers and Frames): Grammar fix.
(Window System Selections): x-select-enable-clipboard now defaults to t.

* customize.texi (Common Keywords):
* display.texi (Abstract Display):
* modes.texi (Auto-Indentation):
* nonascii.texi (Converting Representations): Typo fixes.

* control.texi (Examples of Catch): Call it "goto" not "go to".
2011-05-18 23:54:27 -07:00
Eli Zaretskii
bc039a3b7d Fix minor errors in ELisp manual.
doc/lispref/nonascii.texi (Character Properties): Fix inconsistencies with
 implementation.
2011-05-14 17:50:46 +03:00
Eli Zaretskii
e3934a8a48 Fix bug #8652 with indentation of variable docs.
doc/lispref/text.texi (Special Properties): Move @defvar's out of the
 @table.
2011-05-14 11:46:11 +03:00
Glenn Morris
79b70037f6 Put ChangeLog entries in the correct files. 2011-05-12 09:30:17 -07:00
Glenn Morris
e2c9421814 * doc/lispref/display.texi (Image Descriptors): Fix typo. (Bug#8495) 2011-05-12 00:27:35 -07:00
Glenn Morris
d2fc7e3d0f Merge from emacs-23; up to 2010-06-10T12:56:11Z!michael.albinus@gmx.de. 2011-05-12 00:07:06 -07:00
U. Ser
9b053e766d fix many doubled-word typos 2011-05-10 15:57:12 +02:00
Eli Zaretskii
3ee240faef Typo fix in doc/lispref/files.texi. 2011-05-09 23:38:50 +03:00
Stefan Monnier
bc3bea9cf0 * lispref/modes.texi (Region to Refontify): Rename from "Region to Fontify".
(Multiline Font Lock):
* lispref/vol2.texi (Top):
* lispref/vol1.texi (Top):
* lispref/elisp.texi (Top): Update menu accordingly.
2011-05-06 11:32:26 -03:00
Paul Eggert
b08a63ccec Do not assume EMACS_INT is the same width as a pointer.
This prepares for a future patch that will prefer 64-bit EMACS_INT if
available.  That patch can be tried now, by compiling with -DWIDE_EMACS_INT,
but it is temporarily not the default so that it can be further tested.

Also, install some other fixes for problems discovered by the static
checking of GCC 4.6.0.

Fixes: debbugs:8545 debbugs:8601 debbugs:8600 debbugs:8602
2011-05-06 00:13:19 -07:00
Drew Adams
e6dc6206e9 doc/lispref/modes.texi (Region to Fontify): Fix typo. 2011-05-06 01:04:47 +02:00
Paul Eggert
c717b32678 Revert to wraparound integer arithmetic, instead of going to float. 2011-05-04 23:31:14 -07:00
Paul Eggert
59dba0f4d8 Add Bug#. 2011-05-03 11:57:49 -07:00
Paul Eggert
680186416d [etc/ChangeLog]
* NEWS: Integer overflow now yields floating-point instead of
wrapping around.
[doc/lispref/ChangeLog]
* numbers.texi (Arithmetic Operations, Math Functions): Large integers go to
floats instead of wrapping around.
* objects.texi (Integer Type): Likewise.
2011-05-03 09:33:36 -07:00
Paul Eggert
fed14fd752 * numbers.texi (Integer Basics): Large integers are treated as floats. 2011-05-03 00:41:32 -07:00
Lars Magne Ingebrigtsen
1ef14cb4b0 Extend call-process' to take the (:file "file")' syntax to redirect
STDOUT to a file.
2011-05-01 02:04:17 +02:00
Glenn Morris
4ffd0d6b56 Merge from emacs-23; up to 2010-06-09T17:54:28Z!albinus@detlef. 2011-04-22 20:07:16 -07:00
Juanma Barranquero
7ee6a1d372 Fix typos. 2011-04-13 13:50:12 +02:00
Chong Yidong
4095436808 Doc fix for left-fringe and right-fringe parameters (Bug#6930)
* doc/lispref/frames.texi (Layout Parameters): Note the difference
between querying and setting parameters for left-fringe and
right-fringe.
2011-04-10 16:43:35 -04:00
Chong Yidong
6b8bc57071 Merge changes from emacs-23 branch 2011-04-08 14:53:26 -04:00
Juanma Barranquero
3338398778 Update and split ChangeLogs. 2011-04-06 14:18:10 +02:00
Stefan Monnier
034086489c Merge from lexical-binding branch.
* doc/lispref/eval.texi (Eval): Discourage the use of `eval'.
Document its new `lexical' argument.

* doc/lispref/variables.texi (Defining Variables): Mention the new meaning of `defvar'.
(Lexical Binding): New sub-section.

* lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS, BYTE_COMPILE_FLAGS):
New variables.
(compile-onefile, .el.elc, compile-calc, recompile): Use them.
(COMPILE_FIRST): Add macroexp and cconv.
* lisp/makefile.w32-in: Mirror changes in Makefile.in.

* lisp/vc/cvs-status.el:
* lisp/vc/diff-mode.el:
* lisp/vc/log-edit.el:
* lisp/vc/log-view.el:
* lisp/vc/smerge-mode.el:
* lisp/textmodes/bibtex-style.el:
* textmodes/css.el:
* lisp/startup.el:
* lisp/uniquify.el:
* lisp/minibuffer.el: 
* lisp/newcomment.el: 
* lisp/reveal.el: 
* lisp/server.el: 
* lisp/mpc.el: 
* lisp/emacs-lisp/smie.el: 
* lisp/doc-view.el: 
* lisp/dired.el: 
* lisp/abbrev.el: Use lexical binding.

* lisp/custom.el (custom-initialize-default, custom-declare-variable):
Use `defvar'.

* lisp/files.el (lexical-binding): Declare safe.

* lisp/help-fns.el (help-split-fundoc): Return nil if there's nothing else
than the arglist.
(help-add-fundoc-usage): Don't add `Not documented'.
(help-function-arglist): Handle closures, subroutines, and new
byte-code-functions.
(help-make-usage): Remove leading underscores.
(describe-function-1): Handle closures.
(describe-variable): Use special-variable-p for completion.

* lisp/simple.el (with-wrapper-hook, apply-partially): Move to subr.el.

* lisp/subr.el (apply-partially): Use new closures rather than CL.
(--dolist-tail--, --dotimes-limit--): Don't declare dynamic.
(dolist, dotimes): Use slightly different expansion for lexical code.
(functionp): Move to C.
(letrec): New macro.
(with-wrapper-hook): Use it and apply-partially instead of CL.
(eval-after-load): Preserve lexical-binding.
(save-window-excursion, with-output-to-temp-buffer): Turn them
into macros.

* lisp/emacs-lisp/advice.el (ad-arglist): Use help-function-arglist.

* lisp/emacs-lisp/autoload.el (make-autoload): Don't burp on trivial macros.

* lisp/emacs-lisp/byte-opt.el: Use lexical binding.
(byte-inline-lapcode): Remove (to bytecomp).
(byte-compile-inline-expand): Pay attention to inlining to/from
lexically bound code.
(byte-compile-unfold-lambda): Don't handle byte-code-functions
any more.
(byte-optimize-form-code-walker): Don't handle save-window-excursion
any more and don't call compiler-macros.
(byte-compile-splice-in-already-compiled-code): Remove.
(byte-code): Don't inline any more.
(disassemble-offset): Receive `bytes' as argument rather than via
dynamic scoping.
(byte-compile-tag-number): Declare before first use.
(byte-decompile-bytecode-1): Handle new byte-codes, don't change
`return' even if make-spliceable.
(byte-compile-side-effect-and-error-free-ops): Add stack-ref, remove
obsolete interactive-p.
(byte-optimize-lapcode): Optimize new lap-codes.
Don't trip up on new form of `byte-constant' lap code.

* lisp/emacs-lisp/byte-run.el (make-obsolete): Don't set the `byte-compile'
handler any more.

* lisp/emacs-lisp/bytecomp.el: Use lexical binding instead of
a "bytecomp-" prefix.  Macroexpand everything as a separate phase.
(byte-compile-initial-macro-environment):
Handle declare-function here.
(byte-compile--lexical-environment): New var.
(byte-stack-ref, byte-stack-set, byte-discardN)
(byte-discardN-preserve-tos): New lap codes.
(byte-interactive-p): Don't use any more.
(byte-compile-push-bytecodes, byte-compile-push-bytecode-const2):
New macros.
(byte-compile-lapcode): Use them and handle new lap codes.
(byte-compile-obsolete): Remove.
(byte-compile-arglist-signature): Handle new byte-code arg"lists".
(byte-compile-arglist-warn): Check late def of inlinable funs.
(byte-compile-cl-warn): Don't silence warnings for compiler-macros
since they should have been expanded by now.
(byte-compile--outbuffer): Rename from bytecomp-outbuffer.
(byte-compile-from-buffer): Remove unused second arg.
(byte-compile-preprocess): New function.
(byte-compile-toplevel-file-form): New function to distinguish
file-form calls from outside from file-form calls from hunk-handlers.
(byte-compile-file-form): Simplify.
(byte-compile-file-form-defsubst): Remove.
(byte-compile-file-form-defmumble): Simplify now that
byte-compile-lambda always returns a byte-code-function.
(byte-compile): Preprocess.
(byte-compile-byte-code-maker, byte-compile-byte-code-unmake):
Remove, not used any more.
(byte-compile-arglist-vars, byte-compile-make-lambda-lexenv)
(byte-compile-make-args-desc): New funs.
(byte-compile-lambda): Handle lexical functions.  Always return
a byte-code-function.
(byte-compile-reserved-constants): New var, to make up room for
closed-over variables.
(byte-compile-constants-vector): Obey it.
(byte-compile-top-level): New args `lexenv' and `reserved-csts'.
(byte-compile-macroexpand-declare-function): New function.
(byte-compile-form): Call byte-compile-unfold-bcf to inline immediate
byte-code-functions.
(byte-compile-form): Check obsolescence here.
(byte-compile-inline-lapcode, byte-compile-unfold-bcf): New functions.
(byte-compile-variable-ref): Remove.
(byte-compile-dynamic-variable-op): New fun.
(byte-compile-dynamic-variable-bind, byte-compile-variable-ref)
(byte-compile-variable-set): New funs.
(byte-compile-discard): Add 2 args.
(byte-compile-stack-ref, byte-compile-stack-set)
(byte-compile-make-closure, byte-compile-get-closed-var): New funs.
(byte-compile-funarg, byte-compile-funarg-2): Remove, handled in
macroexpand-all instead.
(byte-compile-quote-form): Remove.
(byte-compile-push-binding-init, byte-compile-not-lexical-var-p)
(byte-compile-bind, byte-compile-unbind): New funs.
(byte-compile-let): Handle let* and lexical binding.
(byte-compile-let*): Remove.
(byte-compile-catch, byte-compile-unwind-protect)
(byte-compile-track-mouse, byte-compile-condition-case):
Handle a new :fun-body form, used for lexical scoping.
(byte-compile-save-window-excursion)
(byte-compile-with-output-to-temp-buffer): Remove.
(byte-compile-defun): Simplify.
(byte-compile-stack-adjustment): New fun.
(byte-compile-out): Use it.
(byte-compile-refresh-preloaded): Don't reload byte-compiler files.

* lisp/emacs-lisp/cconv.el: New file.

* lisp/emacs-lisp/cl-extra.el (cl-macroexpand-all): Properly quote CL
closures.

* lisp/emacs-lisp/cl-macs.el (cl-byte-compile-block)
(cl-byte-compile-throw): Remove.
(cl-block-wrapper, cl-block-throw): Use compiler-macros instead.

* lisp/emacs-lisp/cl.el (pushnew): Silence warning.

* lisp/emacs-lisp/disass.el (disassemble-internal): Handle new
`closure' objects.
(disassemble-1): Handle new byte codes.

* lisp/emacs-lisp/edebug.el (edebug-eval-defun)
(edebug-eval-top-level-form): Use eval-sexp-add-defvars.
(edebug-toggle): Avoid `eval'.

* lisp/emacs-lisp/eieio-comp.el: Remove.

* lisp/emacs-lisp/eieio.el (byte-compile-file-form-defmethod):
Don't autoload.
(eieio-defgeneric-form-primary-only-one): Use `byte-compile' rather
than the internal `byte-compile-lambda'.
(defmethod): Don't hide code under quotes.
(eieio-defmethod): New `code' argument.

* lisp/emacs-lisp/float-sup.el (pi): Don't declare as dynamically bound.

* lisp/emacs-lisp/lisp-mode.el (eval-last-sexp-1):
Use eval-sexp-add-defvars.
(eval-sexp-add-defvars): New fun.

* lisp/emacs-lisp/macroexp.el: Use lexical binding.
(macroexpand-all-1): Check obsolete macros.  Expand compiler-macros.
Don't convert ' to #' without checking that it's indeed quoting
a lambda.

* lisp/emacs-lisp/pcase.el: Don't use destructuring-bind.
(pcase--memoize): Rename from pcase-memoize.  Change weakness.
(pcase): Add `let' pattern.
Change memoization so it actually works.
(pcase-mutually-exclusive-predicates): Add byte-code-function-p.
(pcase--u1) <guard, pred>: Fix possible shadowing problem.
<let>: New case.

* src/alloc.c (Fmake_symbol): Init new `declared_special' field.

* src/buffer.c (defvar_per_buffer): Set new `declared_special' field.

* src/bytecode.c (Bstack_ref, Bstack_set, Bstack_set2, BdiscardN):
New byte-codes.
(exec_byte_code): New function extracted from Fbyte_code to handle new
calling convention for byte-code-functions.  Add new byte-codes.

* src/callint.c (Fcall_interactively): Preserve lexical-binding mode for
interactive spec.

* src/doc.c (Fdocumentation, store_function_docstring):
* src/data.c (Finteractive_form): Handle closures.

* src/eval.c (Fsetq): Handle lexical vars.
(Fdefun, Fdefmacro, Ffunction): Make closures when needed.
(Fdefconst, Fdefvaralias, Fdefvar): Mark as dynamic.
(FletX, Flet): Obey lexical binding.
(Fcommandp): Handle closures.
(Feval): New `lexical' arg.
(eval_sub): New function extracted from Feval.  Use it almost
everywhere where Feval was used.  Look up vars in lexical env.
Handle closures.
(Ffunctionp): Move from subr.el.
(Ffuncall): Handle closures.
(apply_lambda): Remove `eval_flags'.
(funcall_lambda): Handle closures and new byte-code-functions.
(Fspecial_variable_p): New function.
(syms_of_eval): Initialize the Vinternal_interpreter_environment var,
but without exporting it to Lisp.

* src/fns.c (concat, mapcar1): Accept byte-code-functions.

* src/image.c (parse_image_spec): Use Ffunctionp.

* src/keyboard.c (eval_dyn): New fun.
(menu_item_eval_property): Use it.

* src/lisp.h (struct Lisp_Symbol): New field `declared_special'.

* src/lread.c (lisp_file_lexically_bound_p): New function.
(Fload): Bind Qlexical_binding.
(readevalloop): Remove `evalfun' arg.
Bind Qinternal_interpreter_environment.
(Feval_buffer): Bind Qlexical_binding.
(defvar_int, defvar_bool, defvar_lisp_nopro, defvar_kboard):
Mark as dynamic.
(syms_of_lread): Declare `lexical-binding'.

* src/window.c (Ftemp_output_buffer_show): New fun.
(Fsave_window_excursion):
* src/print.c (Fwith_output_to_temp_buffer): Move to subr.el.
2011-04-01 13:19:52 -04:00
Stefan Monnier
7200d79c65 Miscellanous cleanups in preparation for the merge.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Remove debug statement.
* lisp/emacs-lisp/bytecomp.el (byte-compile-single-version)
(byte-compile-version-cond, byte-compile-delay-out)
(byte-compile-delayed-out): Remove, unused.
* src/bytecode.c (Fbyte_code): Revert to old calling convention.
* src/lisp.h (COMPILED_PUSH_ARGS): Remove, unused.
2011-04-01 11:16:50 -04:00
Stefan Monnier
40d83b412f Merge from trunk 2011-03-31 00:24:03 -04:00
Stefan Monnier
f6d6298639 Don't reset post-command-hook to nil upon error.
* src/eval.c (enum run_hooks_condition): Remove.
(funcall_nil, funcall_not): New functions.
(run_hook_with_args): Call each function through a `funcall' argument.
Remove `cond' argument, now redundant.
(Frun_hooks, Frun_hook_with_args, Frun_hook_with_args_until_success)
(Frun_hook_with_args_until_failure): Adjust accordingly.
(run_hook_wrapped_funcall, Frun_hook_wrapped): New functions.
* src/keyboard.c (safe_run_hook_funcall): New function.
(safe_run_hooks_1, safe_run_hooks_error, safe_run_hooks): On error,
don't set the hook to nil, but remove the offending function instead.
(Qcommand_hook_internal): Remove, unused.
(syms_of_keyboard): Don't initialize Qcommand_hook_internal nor define
Vcommand_hook_internal.
* doc/lispref/commands.texi (Command Overview): post-command-hook is not reset
to nil any more.
2011-03-28 16:26:35 -04:00
Stefan Monnier
cafdcef32d Merge from trunk 2011-03-21 12:42:16 -04:00
Stefan Monnier
fd5a8ae8a3 * doc/lispref/minibuf.texi (Basic Completion): Be a bit more precise about the
valid kinds of completion tables.
(Programmed Completion): Remove obsolete text about lambda expressions
not being valid completion tables.
2011-03-21 11:30:01 -04:00
Glenn Morris
84ea55580d Fix date of merged entry. 2011-03-20 17:20:24 -07:00
Chong Yidong
c1bcd0d5d1 Clarify relationship between save-excursion and current buffer.
Suggested by Uday S Reddy.

* positions.texi (Excursions): Explain the "save-excursion
defeated by set-buffer" warning.

* buffers.texi (Current Buffer): Copyedits.  Don't recommend using
save-excursion.
2011-03-19 16:31:30 -04:00
Chong Yidong
b14e3e21ec Merge changes from emacs-23 branch 2011-03-19 14:49:31 -04:00
Stefan Monnier
e4021ec1d7 * strings.texi (String Conversion): Don't mention string-make-(uni|multi)byte.
* nonascii.texi (Converting Representations): Fix up range.
* keymaps.texi (Key Binding Commands): Update code point, avoid
"unibyte character" and remove mention of unibyte bindings.

Fixes: debbugs:8262
2011-03-16 10:54:21 -04:00
Stefan Monnier
ba83908c4b Misc fixes, and use lexical-binding in more files.
* lisp/subr.el (letrec): New macro.
(with-wrapper-hook): Move from lisp/simple.el and don't use CL.
* simple.el (with-wrapper-hook): Move with-wrapper-hook to subr.el.
* lisp/help-fns.el (help-function-arglist): Handle subroutines as well.
(describe-variable): Use special-variable-p to filter completions.
* lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Don't expand `declare'
in defmacros.
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form):
Handle `declare'.
* lisp/emacs-lisp/cl.el (pushnew): Silence unfixable warning.
* lisp/emacs-lisp/cl-macs.el (defstruct, define-compiler-macro):
Mark unused arg as unused.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Use memq.
* lisp/emacs-lisp/autoload.el (make-autoload): Don't assume the macro's
first sexp is a list.
(autoload-generate-file-autoloads): Improve error message.
* lisp/emacs-lisp/advice.el (ad-arglist): Use help-function-arglist
to understand the new byte-code arg format.
* lisp/vc/smerge-mode.el:
* lisp/vc/log-view.el:
* lisp/vc/log-edit.el:
* lisp/vc/cvs-status.el:
* lisp/uniquify.el:
* lisp/textmodes/css-mode.el:
* lisp/textmodes/bibtex-style.el:
* lisp/reveal.el:
* lisp/newcomment.el:
* lisp/emacs-lisp/smie.el:
* lisp/abbrev.el: Use lexical-binding.
* src/eval.c (Fprog1, Fprog2): Simplify and use XCDR/XCAR.
(Fdefvar): Remove redundant SYMBOLP check.
(Ffunctionp): Don't signal an error for undefined aliases.
* doc/lispref/variables.texi (Converting to Lexical Binding): New node.
2011-03-11 15:04:22 -05:00