* lisp/progmodes/compile.el: Cleanup text-properties namespace by using
`compilation-message' instead of `message', `compilation-directory'
instead of `directory', and `compilation-debug' instead of `debug'.
(compilation-last-buffer, compilation-parsing-end)
(compilation-error-list, compilation-old-error-list): Move to the
compatibility part of the code.
(compilation-error-properties): If `file' is a function, let it return
a file name.
(compilation-mode-font-lock-keywords): Be more conservative with the
omake "^ *" pattern prefix, to try and minimize the risk of
pathologically slow regexp matching.
(compilation-start): Use inhibit-read-only.
(compilation--unsetup): New function.
(compilation-shell-minor-mode, compilation-minor-mode): Use it.
(compilation-filter): Minor tweaks.
(compilation-next-error-function): Try and avoid abusing variable names.
(compilation--flush-file-structure): New fun.
(compilation-fake-loc): Use it for cleaner behavior when file is reused.
(debug-ignored-errors): Add "Moved past last ...".
(compilation--compat-error-properties)
(compilation--compat-parse-errors): Rename by doubling the "-".
* lisp/progmodes/grep.el (grep-regexp-alist): Tighten regexp.
(grep-mode-font-lock-keywords): Remove regexp that seems like
a left-over from before we used compile.el.
(grep-mode-font-lock-keywords): Call syntax-ppss-flush-cache when
modifying the buffer within with-silent-modifications.
Remove "all" from grep-files-aliases. Split grep-files-aliases by
whitespace, call wildcard-to-regexp on substrings and concat them
with "\\|". (Bug#6114)
(grep-highlight-matches): Add new options
`always' and `auto'. Doc fix.
(grep-process-setup): Check `grep-highlight-matches' for
`auto-detect' to determine the need to compute grep defaults.
Move Windows/DOS specific --colors settings handling
to `grep-compute-defaults'. Check `grep-highlight-matches'
to get the value of "--color=".
(grep-compute-defaults): Compute `grep-highlight-matches' when it
has the value `auto-detect'. Move Windows/DOS specific settings
from `grep-process-setup'.
(zrgrep): New command with alias `rzgrep'.
(grep-files-aliases): Add "all". Move "el" and "ch" to the top of
the list. Move "asm" to the bottom.
(grep-find-ignored-directories): Add `choice' with nil value
to empty the list easily.
(grep-find-ignored-files): New option.
(grep-files-history): Set to nil by default instead of '("ch" "el").
(grep-compute-defaults): Add "<X>" to `grep-template'.
(grep-read-files): Bind new local variables `default-alias' and
`default-extension'. Use a list of default values for the file prompt.
(lgrep): Add `--exclude=' command line options composed from
`grep-find-ignored-files'.
(rgrep): Add `-name' command line options composed from
`grep-find-ignored-files'. (Bug#4301)
set `dir' to `default-directory' unless `dir' is a non-nil
readable directory. (Bug#4052)
(lgrep, rgrep): Change a weird way to report an error
from using `read-string' to using `error'.
Instead of using interactive arguments in the function body,
add new argument `confirm'.
are looked up.
(grep-apply-setting): New function.
(grep-highlight-matches, grep-command, grep-template)
(grep-use-null-device, grep-find-command, grep-find-template):
Clarify role of grep-compute-defaults in docstrings. Use
grep-apply-setting to apply changes (Bug#3343).
Bind "g" to recompile and "q" to quit-window.
(grep-mode-map): Use `set-keymap-parent' to connect it
to `compilation-minor-mode-map' (instead of an explicit `cons').
compilation-directory after (funcall mode) as that resets local
variables, this fixes recompile in grep buffers.
* grep.el (grep-mode-map): Bind "g" to recompile (like in dired &c).
(standard-mode-line-position): Add mouse-face.
* progmodes/compile.el (compilation-menu-map):
(compilation-mode-map):
* progmodes/grep.el (grep-mode-map): Add :help.
* 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.
* term.el (term-mode-map): Define and initialize in one step.
* ediff-init.el (ediff-color-display-p): Simplify.
(Xor): Remove unused function.
(ediff-with-syntax-table): Simplify for emacs.
* ediff-hook.el (menu-bar-ediff-menu): Don't depend on the
menu-bar being loaded, it always is.
from the value of vc-directory-exclusion-list.
* vc-hooks (vc-directory-exclusion-list): Include "_darcs",
even though we don't have a back end for darcs yet.