Roland Winkler [Sun, 6 Dec 2009 05:05:36 +0000 (05:05 +0000)]
* textmodes/bibtex.el (bibtex-enclosing-field): Exclude entry delimiter
if it is at the end of the current line.
(bibtex-generate-url-list): Fix docstring.
Stefan Monnier [Sun, 6 Dec 2009 01:25:41 +0000 (01:25 +0000)]
(minibuffer-complete-and-exit): Don't replace the
minibuffer's content with itself.
Fold the confirm-after-completion case into the `confirm' case.
(completion-pcm-word-delimiters): Add : and / to the delimiters.
Juri Linkov [Sat, 5 Dec 2009 23:22:03 +0000 (23:22 +0000)]
Save and restore dired buffer's point positions too. (Bug#4880)
(dired-save-positions): Return in the first element
buffer's position in format (BUFFER DIRED-FILENAME BUFFER-POINT).
Doc fix.
(dired-restore-positions): First restore buffer's position.
While restoring window's positions, check if window still displays
the original buffer.
Chong Yidong [Sat, 5 Dec 2009 22:49:00 +0000 (22:49 +0000)]
* xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
if push failed.
(handle_line_prefix): Set avoid_cursor_p here. Check return value
of push_display_prop (Bug#5000).
Juri Linkov [Sat, 5 Dec 2009 19:49:47 +0000 (19:49 +0000)]
(Info-find-node-2): Set `Info-current-subfile' to nil
for virtual nodes. (Bug#4147)
(Info-find-node-2): Set `Info-current-node-virtual' to nil
when moving from a virtual node.
(Info-mode-menu): Add `Info-virtual-index' to the menu.
(Info-mode): Add `Info-virtual-index' to the docstring.
Roland Winkler [Sat, 5 Dec 2009 04:08:48 +0000 (04:08 +0000)]
(bibtex-map-entries): Use marker to keep
track of the buffer position of the end of a BibTeX entry as this
position may change during reformatting.
(bibtex-format-entry): Remove whitespace before processing
numerical fields so that we recognize the latter properly.
(bibtex-reformat): Do not use push which changes the global value
of bibtex-entry-format.
(bibtex-field-braces-alist, bibtex-field-strings-alist)
(bibtex-field-re-init): Replace only space characters by regexp
for whitespace.
(bibtex-generate-url-list, bibtex-cite-matcher-alist): Fix
docstring.
(bibtex-initialize): Also update bibtex-strings.
(bibtex-kill-field): Preserve white space at end of entry.
(bibtex-kill-entry, bibtex-yank-pop, bibtex-insert-kill): Update
bibtex-reference-keys.
Glenn Morris [Sat, 5 Dec 2009 03:08:30 +0000 (03:08 +0000)]
(Displaying the Diary): Holidays may be in the buffer
or mode line. Don't mention invisible text or the details of
diary-print-entries here, only in cal-xtra.
(Format of Diary File): Mention that the "date on first line" format
only really affects the simple display.
Glenn Morris [Sat, 5 Dec 2009 03:08:05 +0000 (03:08 +0000)]
(Advanced Calendar/Diary Usage): Update menu.
(Diary Customizing): Holidays may be in the buffer or mode line.
Move diary-print-entries to the "Diary Display" section.
(Diary Display): New section, split out from "Fancy Diary Display".
Explain the limitations of simple display, and how to print it.
Glenn Morris [Sat, 5 Dec 2009 03:07:26 +0000 (03:07 +0000)]
(Standard Hooks): Remove diary-display-hook, replaced by
diary-display-function, and no longer recommended to be a hook.
Update for changes in the names of calendar and diary hooks.
diary-print-entries-hook has changed section.
Juri Linkov [Fri, 4 Dec 2009 21:47:08 +0000 (21:47 +0000)]
(proced): Call `(proced-update t)' to update process
information instead of only running proced-post-display-hook.
(proced-send-signal): Add a leading space to the buffer name
" *Marked Processes*" to make this buffer ephemeral.
Juri Linkov [Fri, 4 Dec 2009 21:43:07 +0000 (21:43 +0000)]
Change roles of modes and functions in image-mode.el (Bug#5062).
* image-mode.el: Replace `image-mode-maybe' with `image-mode'
in `auto-mode-alist'.
(image-mode-previous-major-mode): New variable.
(image-minor-mode-map): Rename from `image-mode-text-map'.
(image-mode): Move graceful error-handling code from
`image-minor-mode' to here. On errors call `image-mode-as-text'.
(image-minor-mode): Remove all image-handling code.
Replace `image-mode-text-map' with `image-minor-mode-map'.
Check for `image-type' in mode-line format string.
(image-mode-maybe): Make obsolete with an alias to `image-mode'.
(image-mode-as-text): New function with most code from
`image-mode-maybe'.
(image-toggle-display-text): Move code that removes image
properties from `image-toggle-display' to here.
(image-toggle-display-image): New function with code that adds
image properties copied from `image-toggle-display'.
(image-toggle-display): Remove most code with leaving only code
that toggles between `image-mode-as-text' and `image-mode'.
Fix `string-to-number' to deal consistently with integers and floats.
* lread.c (isfloat_string): New argument ignore_trailing to accept all
trailing characters, not just whitespace.
(read1): Pass new arg 0 to keep old behavior.
* data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
trailing chars, as it is already done for integers. Doc fixes.
* lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
Stefan Monnier [Fri, 4 Dec 2009 04:39:21 +0000 (04:39 +0000)]
Minor cleanup.
* term.el (term-send-raw, term-send-raw-meta): Use read-key-sequence's
key decoding rather than do it manually via last-input-event + ascii-character.
(term-exec): Use delete-and-extract-region.
(term-handle-ansi-terminal-messages): Remove unused var `end'.
(term-process-pager): Remove unused var `i'.
(term-dynamic-simple-complete): Make obsolete.
(serial-update-config-menu): Remove unused vars `y' and `str'.
(term-update-mode-line): Remove unused var `temp'.
Dan Nicolaescu [Thu, 3 Dec 2009 19:12:52 +0000 (19:12 +0000)]
Limit the number of log entries displayed by default.
* vc.el (vc-print-log-internal): Fix check for limit-unsupported.
(vc-print-log, vc-print-root-log): Use vc-log-show-limit when not
using a prefix argument.
Stefan Monnier [Thu, 3 Dec 2009 18:51:32 +0000 (18:51 +0000)]
(Qseqpacket): New symbol.
(HAVE_SEQPACKET): New macro.
(Fmake_network_process): Accept new :type `seqpacket'.
(init_process): Add `seqpacket' feature when applicable.
(syms_of_process): Initialize Qseqpacket.
Alan Mackenzie [Thu, 3 Dec 2009 16:02:10 +0000 (16:02 +0000)]
Enhance `c-parse-state' to run efficiently in "brace desserts".
* progmodes/cc-mode.el (c-basic-common-init): Call
c-state-cache-init.
(c-neutralize-syntax-in-and-mark-CPP): Renamed from
c-extend-and-neutralize-syntax-in-CPP. Mark each CPP construct by
placing `category' properties value 'c-cpp-delimiter at its
boundaries.
* progmodes/cc-langs.el (c-before-font-lock-function):
c-extend-and-neutralize-syntax-in-CPP has been renamed
c-neutralize-syntax-in-and-mark-CPP.
* progmodes/cc-fonts.el (c-cpp-matchers): Mark template brackets
with `category' properties now, not `syntax-table' ones.
* progmodes/cc-engine.el (c-syntactic-end-of-macro): A new
enhanced (but slower) version of c-end-of-macro that won't land
inside a literal or on another awkward character.
(c-state-cache-too-far, c-state-cache-start)
(c-state-nonlit-pos-interval, c-state-nonlit-pos-cache)
(c-state-nonlit-pos-cache-limit, c-state-point-min)
(c-state-point-min-lit-type, c-state-point-min-lit-start)
(c-state-min-scan-pos, c-state-brace-pair-desert)
(c-state-old-cpp-beg, c-state-old-cpp-end): New constants and
buffer local variables.
(c-state-literal-at, c-state-lit-beg)
(c-state-cache-non-literal-place, c-state-get-min-scan-pos)
(c-state-mark-point-min-literal, c-state-cache-top-lparen)
(c-state-cache-top-paren, c-state-cache-after-top-paren)
(c-get-cache-scan-pos, c-get-fallback-scan-pos)
(c-state-balance-parens-backwards, c-parse-state-get-strategy)
(c-renarrow-state-cache)
(c-append-lower-brace-pair-to-state-cache)
(c-state-push-any-brace-pair, c-append-to-state-cache)
(c-remove-stale-state-cache)
(c-remove-stale-state-cache-backwards, c-state-cache-init)
(c-invalidate-state-cache-1, c-parse-state-1)
(c-invalidate-state-cache): New defuns/defmacros/defsubsts.
(c-parse-state): Enhanced and refactored.
(c-debug-parse-state): Amended to deal with all the new variables.
* progmodes/cc-defs.el (c-<-as-paren-syntax, c-mark-<-as-paren)
(c->-as-paren-syntax, c-mark->-as-paren, c-unmark-<->-as-paren):
modify to use category text properties rather than syntax-table
ones.
(c-suppress-<->-as-parens, c-restore-<->-as-parens): new defsubsts
to switch off/on the syntactic paren property of C++ template
delimiters using the category property.
(c-with-<->-as-parens-suppressed): Macro to invoke code with
template delims suppressed.
(c-cpp-delimiter, c-set-cpp-delimiters, c-clear-cpp-delimiters):
New constant/macros which apply category properties to the start
and end of preprocessor constructs.
(c-comment-out-cpps, c-uncomment-out-cpps): defsubsts which
"comment out" the syntactic value of characters in preprocessor
constructs.
(c-with-cpps-commented-out)
(c-with-all-but-one-cpps-commented-out): Macros to invoke code
with characters in all or all but one preprocessor constructs
"commented out".
* net/tramp.el (tramp-handle-file-remote-p): Expand FILENAME for
the benefit of returning an expanded localname.
(tramp-tramp-file-p): Handle the case NAME is not a string.
Dan Nicolaescu [Thu, 3 Dec 2009 04:08:08 +0000 (04:08 +0000)]
Support applying stashes. Improve UI.
* vc-git.el (vc-git-dir-extra-headers): Add tooltips.
(vc-git-stash-apply, vc-git-stash-pop)
(vc-git-stash-apply-at-point, vc-git-stash-pop-at-point)
(vc-git-stash-menu): New functions.
(vc-git-stash-menu-map): New variable.
(vc-git-stash-map): Add bindings to popup a menu and to apply stashes.
Stefan Monnier [Wed, 2 Dec 2009 18:31:26 +0000 (18:31 +0000)]
Use completion-in-buffer and remove uses of dynamic scoping.
* progmodes/pascal.el (pascal-str, pascal-all, pascal-pred)
(pascal-buffer-to-use, pascal-flag): Don't declare.
(pascal-func-completion, pascal-type-completion, pascal-var-completion)
(pascal-get-completion-decl, pascal-keyword-completion):
Add `pascal-str' argument, save-excursion,
return the found completions, and don't filter with pascal-pred.
(pascal-completion-cache): New var.
(pascal-completion): Don't switch buffer any more (it was never
necessary). Don't save-excursion any more (it's done by the called
subroutines). Use a cache to avoid redundant computations.
Use complete-with-action rather than pascal-completion-response and
let it apply the predicate as well.
(pascal-complete-word): Use completion-in-buffer when
pascal-toggle-completions is nil.
(pascal-show-completions): Don't bind pascal-buffer-to-use since it's
not used any more.
(pascal-comp-defun): Don't change buffer any more.
Use complete-with-action rather than pascal-completion-response and
let it apply the predicate as well.
(pascal-goto-defun): Change buffer before calling pascal-comp-defun
when neded.
Stefan Monnier [Wed, 2 Dec 2009 04:11:08 +0000 (04:11 +0000)]
Use completion-in-buffer.
(widget-field-text-end): New function.
(widget-field-value-get): Use it.
(widget-string-complete, widget-file-complete)
(widget-color-complete): Use it and completion-in-region.
(widget-complete): Don't narrow the buffer.