1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-28 19:42:02 +00:00
Commit Graph

126113 Commits

Author SHA1 Message Date
Dmitry Gutov
963541a654 Publicize cl--generic-all-functions
* lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
Rename from cl--generic-all-functions.  Update both callers.

* lisp/cedet/semantic/db-el.el
(semanticdb-find-tags-external-children-of-type-method):
And use it here (bug#23042).
2016-05-10 01:16:06 +03:00
Lars Ingebrigtsen
c20cc0986c Move "Recent messages" earlier in report-emacs-bug
* lisp/mail/emacsbug.el (report-emacs-bug): Move the "Recent
messages" part earlier so that users can see it and remove it
if they want.
2016-05-09 22:07:06 +02:00
Michael Albinus
a88f22bdde Pacify byte compiler in tramp.el
* lisp/net/tramp.el (tramp-time-diff): Use `tramp-compat-funcall'.
2016-05-09 21:08:51 +02:00
Michael Albinus
3c581d56ad ; Fix typo 2016-05-09 20:39:36 +02:00
Alan Mackenzie
e58f900e6d Add some "safe-local-variable" declarations for compatibility with master.
These enable C files from the master repository to be visited in Emacs 25
without generating irritating questions about configuration variable safety.

* lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
functions.
(c-noise-macro-names, c-noise-macro-with-parens-names): give the
safe-local-variable property c-string-list-p.
(c-macro-names-with-semicolon): give the safe-local-variable property
c-string-or-string-list-p.
2016-05-09 18:12:52 +00:00
Paul Eggert
c8b7a6abd9 Merge from origin/emacs-25
3b47898 Fix doc string in `insert'
b479dea * doc/misc/emacs-mime.texi (time-date): Document now-builtins...
cd27f73 Say 'All results processed' at the end
4ffec91 Document automatic adjustment of process' logical window dime...
dc66271 ; Fix typos and stylistic glitches in NEWS
2016-05-09 10:59:29 -07:00
Paul Eggert
9418ab39bf ; Merge from origin/emacs-25
The following commit was skipped:

c760a60 tramp-sh.el: Work around a stat bug (backport from master)
2016-05-09 10:59:29 -07:00
Michael Albinus
d6dac367cc ; Instrument tramp.el 2016-05-09 19:55:49 +02:00
Alan Mackenzie
a8231e00cb CC Mode now uses the new :after-hook feature of define-derived-mode
It now runs internal variable setting functions after the mode hooks, no
longer runs the mode hooks twice, and declares the configuration variables for
noise macros and macros with semicolons as safe variables (when given suitable
arguments).

Fixes bug #16759 and bug #23476.

* .dir-locals: Put the c-noise-macros-with-paren-names setting back into the C
Mode value.

* lisp/progmodes/cc-mode.el: (c-basic-common-init): Remove the call to
c-make-macro-with-semi-re.
(c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode): Move
c-make-noise-macro-regexps and c-make-macro-with-semi-re (where appropriate)
and c-update-modeline into the :after-hook form.  Remove the explicit settings
of the syntax table, the abbreviation table and the local key map, since they
duplicate forms generated by define-derived-mode.  Remove the explicit
invocation of each mode's mode hook, since they duplicate ones generated by
define-derived-mode.

* lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
functions.
(c-noise-macro-names, c-noise-macro-with-parens-names): give the
save-local-variable property c-string-list-p.
(c-macro-names-with-semicolon): give the save-local-variable property
c-string-or-string-list-p.

* doc/misc/cc-mode.texi: (Macros with ;, Noise Macros): Note that it's not
necessary to call the regexp generating functions after setting the pertinent
configuration values in a mode hook.
2016-05-09 17:49:45 +00:00
Lars Ingebrigtsen
3b478989df Fix doc string in `insert'
* src/editfns.c (Finsert_and_inherit): The before-insertion
markers do not move.
(Finsert): Ditto.
2016-05-09 17:08:58 +02:00
Michael Albinus
608f2bd0ac ; Instrument tramp-tests.el 2016-05-09 16:53:49 +02:00
Dmitry Gutov
fd45b5276b Fix the jit-lock-fontify-now test names
* test/lisp/jit-lock-tests.el
(jit-lock-fontify-now-mends-the-gaps)
(jit-lock-fontify-now-does-not-refontify-unnecessarily):
Fix the test names.
2016-05-09 12:29:38 +03:00
Michael Albinus
60e9b006b5 Extend completion candidates in tramp.el
* lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
(tramp-get-completion-function): Use it.
2016-05-09 09:20:34 +02:00
Michael Albinus
001d59c604 Revert e2f785991d for tramp.el
* lisp/net/tramp.el (tramp-time-diff): Revert previous change due to backwards
compatibility.
2016-05-09 09:18:50 +02:00
Dmitry Gutov
80bea210ff Emulate interactive mode
* test/lisp/jit-lock-tests.el (jit-lock-tests--setup-buffer)
(jit-lock-does-not-refontify-unnecessarily):
Bind noninteractive to nil (bug#23278).
2016-05-09 03:42:14 +03:00
Paul Eggert
e2f785991d Simplify now that float-time etc. are built-in
This was prompted by warnings about calls to now-obsolete functions.
* lisp/calendar/time-date.el (encode-time-value):
Use setq rather than a recursive call, to avoid a warning
about calling this obsolete function.
* lisp/calendar/time-date.el (encode-time-value)
(with-decoded-time-value, time-to-seconds, time-to-number-of-days):
* lisp/erc/erc.el (erc-emacs-time-to-erc-time):
* lisp/net/rcirc.el (rcirc-float-time):
* lisp/org/org-compat.el (org-float-time):
Simplify now that time-add and float-time are now built-in.
* lisp/calendar/time-date.el (time-add, time-subtract, time-less-p):
* lisp/net/newst-backend.el (time-add):
* lisp/org/org.el (time-subtract):
Remove backward-compatibility definitions; they are now built-in.
* lisp/calendar/timeclock.el (timeclock-time-to-seconds)
(timeclock-seconds-to-time):
* lisp/net/rcirc.el (rcirc-float-time):
* lisp/org/org-compat.el (org-float-time):
Now obsolete, since callers can just use float-time and
seconds-to-time.  All uses changed.
* lisp/emacs-lisp/ert.el (ert-results-pop-to-timings):
* lisp/gnus/gnus-art.el (article-lapsed-string):
* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
* lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
* lisp/gnus/nndiary.el (nndiary-compute-reminders):
* lisp/net/tramp.el (tramp-time-diff):
* lisp/org/org-clock.el (org-clock-timestamps-change):
Prefer the time-subtract builtin to the subtract-time alias.
* lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
* test/lisp/character-fold-tests.el (character-fold--speed-test):
Prefer the float-time builtin to the time-to-seconds alias.
* lisp/org/org-agenda.el, lisp/org/org-clock.el, lisp/org/org-list.el:
* lisp/org/org-timer.el, lisp/org/org.el:
Adjust to org-float-time deprecation.
2016-05-08 12:46:22 -07:00
Paul Eggert
b479deadf4 * doc/misc/emacs-mime.texi (time-date): Document now-builtins better. 2016-05-08 11:50:19 -07:00
Alan Mackenzie
2eb6817ba9 Add :after-hook facility to define-derived-mode.
This allow a form to be evaluated _after_ a major mode's hooks have been run.
It is needed to solve some problems in CC Mode, including bug #16759 and
bug #23476.

* lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
`:after-hook', and generate the requisite code for it.
(derived-mode-make-docstring): Take account of the possibility of :after-hook.

* lisp/subr.el (delayed-after-hook-forms): New variable.
(run-mode-hooks): As the last thing evaluate the forms in
delayed-after-hook-forms.

* doc/lispref/modes.texi (Derived Modes): Document :after-hook.
(Mode Hooks): Document the new feature in run-mode-hooks.

* etc/NEWS: Note the new feature.
2016-05-08 13:24:20 +00:00
Michael Albinus
344eb61ab3 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2016-05-08 11:47:33 +02:00
Michael Albinus
6ef5944516 Fix recursive load of tramp.elc
* lisp/net/tramp.el (tramp-completion-file-name-handler):
Check also for `tramp-completion-mode-p'.
(tramp-completion-mode, tramp-completion-mode-p): Autoload them.
2016-05-08 11:47:08 +02:00
Paul Eggert
e8bda380bb Prefer grep -E/-F to egrep/fgrep
POSIX marked egrep and fgrep as legacy apps in SUSv2 (1997) and
withdrew them in SUSv3 (2001), and these days grep -E and grep -F
are probably more portable.
* lib-src/etags.c (main):
* lisp/eshell/em-unix.el (eshell-grep, eshell/egrep)
(eshell/fgrep):
* lisp/cedet/semantic/symref.el (semantic-symref-find-text):
* lisp/eshell/esh-var.el (eshell-apply-indices):
* lisp/progmodes/ada-xref.el (ada-xref-search-with-egrep)
(ada-find-in-src-path):
* lisp/textmodes/ispell.el (ispell-grep-command):
(ispell-lookup-words):
Use or document grep -E and grep -F instead of egrep and fgrep.
* lisp/textmodes/ispell.el (ispell-grep-options):
Use -Ei on all platforms, not just MS-Windows.
2016-05-07 18:40:55 -07:00
Dmitry Gutov
4c175a6af5 Avoid unnecessary work if a chunk is empty
* lisp/jit-lock.el (jit-lock-fontify-now): Avoid unnecessary work
if a chunk is empty (bug#23278).
2016-05-08 02:09:36 +03:00
Dmitry Gutov
950c9a5d4a * test/lisp/jit-lock-tests.el: New file. 2016-05-08 02:00:25 +03:00
Dmitry Gutov
cd27f7396b Say 'All results processed' at the end
* lisp/progmodes/xref.el (xref--query-replace-1):
Say 'All results processed' at the end if the user hadn't
cancelled the process (bug#23284).
2016-05-08 00:29:44 +03:00
Michael Albinus
97776f295d Continue to fix Bug#10085
* lisp/net/tramp.el (tramp-completion-file-name-handler-alist)
<expand-file-name>: Add handler.
(tramp-completion-handle-expand-file-name): New defun.
(tramp-handle-file-name-as-directory): Handle completion mode case.

* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
Fix test.
(tramp-test24-file-name-completion): Extend test.
2016-05-07 22:52:30 +02:00
Alan Mackenzie
2ac39b0699 Revert change 8e4595a... due to annoyance it causes the development team.
Change 8e4595a438 from 2016-04-30 17:28:24
+0000 was an enhancement to .dir-locals to allow correct fontification
of certain macro constructs.

* .dir-locals.el: Remove the two forms for C Mode dealing with noise macros.
2016-05-07 20:28:18 +00:00
Alan Mackenzie
23a071d87d * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): Give it a version number. 2016-05-07 17:10:36 +00:00
Simen Heggestøyl
29c9803c2a Add tests for CSS mode completion
* test/lisp/textmodes/css-mode-tests.el (css-test-property-values)
(css-test-property-values-no-duplicates)
(css-test-value-class-lookup): Use `seq-sort'.
(css-mode-tests--completions): New helper function for retrieving CSS
completions.
(css-test-complete-bang-rule, scss-test-complete-bang-rule)
(css-test-complete-property-value, css-test-complete-pseudo-class)
(css-test-complete-pseudo-element, css-test-complete-at-rule)
(scss-test-complete-at-rule, css-test-complete-property)
(css-test-complete-selector, css-test-complete-nested-selector)
(scss-test-complete-nested-selector): New tests.
2016-05-07 16:38:02 +02:00
Eli Zaretskii
4ffec91aa1 Document automatic adjustment of process' logical window dimensions
* doc/lispref/processes.texi (Process Buffers): Document
'set-process-window-size' and
'window-adjust-process-window-size-function'.

* etc/NEWS: Mention the new functionality and variable.

* src/process.c (Fset_process_window_size): Improve the doc string.
2016-05-07 12:16:27 +03:00
Alan Mackenzie
ed5282d239 Add an option in Edebug to prevent pauses after h', 'f', and o'.
Requested by Paul Pogonyshev.  Also add in documentation for Edebug config
variables which was missing.

* lisp/emacs-lisp/edebug.el (edebug-sit-on-break): New customizable option.
(edebug--display-1): Test edebug-sit-on-break before pausing 1 second.

* doc/lispref/edebug.texi (Jumping): Document the effect of the new option.
(Edebug Options): Document the new option.  Also add documentation for
edebug-eval-macro-args, edebug-print-length, edebug-print-level,
edebug-print-circle, edebug-sit-for-seconds.

* etc/NEWS: Note the new feature.
2016-05-07 06:42:29 +00:00
Jorgen Schaefer
bf7fc7a804 scheme.el: Turn literal tabs into \t
* lisp/progmodes/scheme.el: The last change to turn tabs into spaces
also caught some literal tabs in character classes. Fix this by
adding \t to those classes.
2016-05-07 12:24:27 +02:00
Tino Calancha
4a6d39b395 Make 'backtab' work in table-mode on text terminals
* lisp/textmodes/table.el (table-cell-bindings): Bind 'backtab'
explicitly.  (Bug#23456)
2016-05-07 11:19:26 +03:00
Eli Zaretskii
fa6a6edd1d Try to speed-up display of many all-blank lines
* src/bidi.c (bidi_initialize): Use anchored regexps for
paragraph start and paragraph separator sequences.  (Bug#23457)
2016-05-07 11:00:36 +03:00
Alan Mackenzie
26171e0277 Correct hack-local-variables change from Thu May 5 11:05:49 2016 +0000
Prevent hack-local-variables being called from the fundamental-mode mode call
early in normal-mode.  This fixes bug #23460 and bug #23463.

* lisp/files.el (normal-mode) Replace call to fundamental-mode with calls to
the things it calls, with the exception of hack-local-variables.

* etc/NEWS: Add an entry to note the calling of hack-local-variables at each
major mode initialization.
2016-05-06 18:58:49 +00:00
Paul Eggert
81204b276f Port xref-tests to master branch
Also, add a test to make this problem less likely in the future.
* test/Makefile.in (check-no-automated-subdir): New rule.
(check, check-expensive, check-maybe): Depend on it.
* test/automated/data/xref/file1.txt: Rename to ...
* test/data/xref/file1.txt: ... here.
* test/automated/data/xref/file2.txt: Rename to ...
* test/data/xref/file2.txt: ... here.
* test/automated/xref-tests.el: Rename to ...
* test/lisp/progmodes/xref-tests.el: ... here.
(xref-tests-data-dir): Use EMACS_TEST_DIRECTORY.
2016-05-06 10:09:53 -07:00
Michael Albinus
dc662713e2 ; Fix typos and stylistic glitches in NEWS 2016-05-06 17:53:18 +02:00
Michael Albinus
c760a600da tramp-sh.el: Work around a stat bug (backport from master)
* lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
stat versions which produce shell quoted output.  See also
coreutils Bug#23422.

(cherry picked from commit 6aad36ace9)
2016-05-06 08:13:08 +02:00
Paul Eggert
89ce83b202 Merge from origin/emacs-25
50650cb Doc fixes for fclist and grep
5e814e0 Minor doc fixes for quoting
3347a73 `nreverse' the marker pairs list
1a4127d Use save-excursion in xref-location-marker more
ab3ba91 shell-quote-argument DIR when appropriate
922c7a3 Rework xref-query-replace-in-results
3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
0932b94 Fix todo-mode bug involving archived items (bug#23447)
e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
4d8fd9c Handle "empty line" regexp in xref searches
f559b37 Add tests for xref-collect-matches
6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
6f82d8e Clear buffer-undo-list when showing xrefs
c68a091 Note the quote translation in `message' in section "incompati...
52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
93703c5 (Common Keywords): Correct what missing :group means
79e5800 Improve documentation of Dired's 'A' and 'Q' commands
2ea2a2f Doc fixes for quoting
8544b98 posnp doc clarification
805204f Mention what a missing :group does
ec554d7 Fix documentation of dired-aux search/replace commands
2016-05-05 23:11:11 -07:00
Paul Eggert
50650cb688 Doc fixes for fclist and grep
A newline is needed between two fc-list calls.
egrep and fgrep have been withdrawn from POSIX,
so document grep -E and grep -F instead.
2016-05-05 12:50:01 -07:00
Simen Heggestøyl
d546ed13b0 Support completion of HTML tags in CSS selectors
* lisp/textmodes/css-mode.el (css--html-tags): New variable holding a
list of HTML tags for completion.
(css--nested-selectors-allowed): New variable for determining whether
nested selectors are allowed in the current mode.
(css--complete-selector): New function for completing part of a CSS
selector.
(css-completion-at-point): Support completion of selectors.
(scss-mode): Allow nested selectors.
2016-05-05 21:22:36 +02:00
Lars Ingebrigtsen
67fa7f13d4 Make `R' in eww work more reliably
* lisp/net/eww.el (eww-score-readability): Protect against
null children.
2016-05-05 19:41:21 +02:00
Paul Eggert
5e814e02f0 Minor doc fixes for quoting
* doc/lispref/control.texi (Signaling Errors):
* doc/lispref/display.texi (Displaying Messages):
Don’t say that formats “generate”.  Try to word more clearly.
* etc/NEWS: Coalesce near-duplicate entries.
2016-05-05 06:40:12 -07:00
Dmitry Gutov
3347a733e0 `nreverse' the marker pairs list
* lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
the marker pairs list for each buffer before returning.
2016-05-05 16:01:52 +03:00
Alan Mackenzie
25f455815b Call hack-local-variables from major modes rather than from file visiting
This prevents file/directory local variables from being lost when the major
mode is set or changed.

This fixes bug #15577 and bug #23407.

* lisp/files.el (normal-mode): Call `hack-local-variables' when the major mode
function hasn't already done so.
(hack-local-variables): Rename parameter `mode-only' to `handle-mode', make
its previous non-nil setting be t, and introduce the following action for a
non-nil non-t value: apply all settings apart from `mode'.

* lisp/subr.el (run-mode-hooks): call `hack-local-variables' for buffers
which are visiting files.

* doc/emacs/custom.texi (File Variables): Note that setting a major mode also
sets file variables.
(Directory Variables): Note that `mode', `eval', and `unibyte' can be set as
dir local variables, but `coding' can't.

* doc/lispref/modes.texi (Major Mode Conventions): Say that `run-mode-hooks'
also calls `hack-local-variables'.
(Auto Major Mode): Say that `find-file' no longer runs `hack-local-variables',
as from 25.2.  Remove vagueness from `normal-mode' and `set-auto-mode' by
saying that the mode IS SET, not merely "selected" or "chosen".
(Mode Hooks): Document change to `run-mode-hooks'.

* doc/lispref/variables.texi (File Local Variables): Document change to
`hack-local-variables'.
2016-05-05 11:05:49 +00:00
Michael Albinus
6aad36ace9 tramp-sh.el: Work around a stat bug
* lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
stat versions which produce shell quoted output.  See also
coreutils Bug#23422.
2016-05-05 10:23:06 +02:00
Noam Postavsky
403cc9fad9 Fix autogen.sh for separate worktrees
* autogen.sh: Use the $hooks variable in the $sample_hooks loop, instead
of assuming .git/hooks is a directory.
2016-05-04 21:11:37 -07:00
Dmitry Gutov
1a4127dbd6 Use save-excursion in xref-location-marker more
* lisp/progmodes/elisp-mode.el (xref-location-marker): Use
save-excursion, in order not to alter the value of point if the
buffer is currently open in the background (problem reported by
Robert Weiner).

* lisp/progmodes/etags.el (xref-location-marker): Same.
2016-05-05 04:28:14 +03:00
Dmitry Gutov
ab3ba912fc shell-quote-argument DIR when appropriate
* lisp/progmodes/project.el (project-file-completion-table):
`shell-quote-argument' DIR as well.

* lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
`shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
pointing out the problem.  Assert that DIR doesn't start with `~'.
2016-05-05 04:15:23 +03:00
Dmitry Gutov
922c7a3e48 Rework xref-query-replace-in-results
* lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
all xrefs from the buffer first, then delegate most of the
processing to the value returned by xref--buf-pairs-iterator.
(xref--buf-pairs-iterator): New function.  Return an "iterator"
which partitions returned markers into buffers, and only processes
markers from one buffer at a time.  When an xref is out of date,
skip it with a message instead of signaling error (bug#23284).
(xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
CR from both strings before comparing.
(xref--query-replace-1): Remove the variable current-buf, no need
to track it anymore.  Simplify the filter-predicate and search
functions accordingly.  Iterate over buffer-markers pairs returned
by the iterator, and call `perform-replace' for each of them.  Use
multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
time after the first, in order not to jump between windows.

* test/automated/xref-tests.el
(xref--buf-pairs-iterator-groups-markers-by-buffers-1)
(xref--buf-pairs-iterator-groups-markers-by-buffers-2)
(xref--buf-pairs-iterator-cleans-up-markers): New tests.
2016-05-05 03:26:04 +03:00
Juri Linkov
3fe3510728 * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
to set minibuffer-local value of text-property-default-nonsticky.
(Bug#23418, bug#23127)
2016-05-04 23:05:33 +03:00