]> git.eshelyaron.com Git - emacs.git/log
emacs.git
7 years ago* lisp/buff-menu.el: Turn on lexical-binding.
Mark Oteiza [Mon, 13 Feb 2017 01:02:26 +0000 (20:02 -0500)]
* lisp/buff-menu.el: Turn on lexical-binding.

7 years ago* lisp/replace.el (query-replace-from-to-separator): Move propertize
Juri Linkov [Mon, 13 Feb 2017 00:37:52 +0000 (02:37 +0200)]
* lisp/replace.el (query-replace-from-to-separator): Move propertize

and char-displayable-p test to query-replace-read-from.
Add choice nil to disable this feature.
(query-replace-read-from): Don't reevaluate custom setting.
Use char-displayable-p to test the first non-whitespace character
in query-replace-from-to-separator, use " -> " when fails.
Add prompt for the case when separator is nil but
query-replace-defaults is non-nil.
Remove unused test for regexp-flag.
Thanks to Thierry Volpiatto <thierry.volpiatto@gmail.com>

7 years agoConvert more uses of `looking-at' to `following-char'
Karl Fogel [Sun, 12 Feb 2017 23:21:06 +0000 (17:21 -0600)]
Convert more uses of `looking-at' to `following-char'

This follows up to Mark Oteiza's commit of 12 Feb 2017, 14:46:03 UTC
(commit 91478f46238a) with more of the same.

* lisp/bookmark.el (bookmark-send-edited-annotation):
  (bookmark-bmenu-execute-deletions): Replace instances of looking-at
  with char comparisons using following-char.

7 years agoFix typos in tests for lax-plist-get etc.
Paul Eggert [Sun, 12 Feb 2017 20:55:11 +0000 (12:55 -0800)]
Fix typos in tests for lax-plist-get etc.

Problem reported by Eli Zaretskii (Bug#25606#62).
* test/src/fns-tests.el (test-cycle-lax-plist-get)
(test-cycle-plist-put, test-cycle-lax-plist-put):
Fix tests to match behavior.

7 years agoFix bug#25607
Michael Albinus [Sun, 12 Feb 2017 17:19:32 +0000 (18:19 +0100)]
Fix bug#25607

* lisp/net/tramp.el (tramp-completion-file-name-handler):
Improve autoloaded version.
(tramp-autoload-file-name-handler): Avoid recursive load.
(tramp-completion-handle-expand-file-name): Handle empty NAME.
(Bug#25607)

7 years agoRemove server-buffer-clients string from minor-mode-alist
Mark Oteiza [Sun, 12 Feb 2017 16:51:19 +0000 (11:51 -0500)]
Remove server-buffer-clients string from minor-mode-alist

* lisp/server.el: Don't put an element for server-buffer-clients into
minor-mode-alist. (Bug#20201)

7 years agoNix some useless uses of looking-at, looking-back
Mark Oteiza [Sun, 12 Feb 2017 14:46:03 +0000 (09:46 -0500)]
Nix some useless uses of looking-at, looking-back

* lisp/allout.el (allout-kill-topic):
(allout-next-topic-pending-encryption):
* lisp/bookmark.el (bookmark-kill-line):
* lisp/cus-edit.el (custom-save-variables, custom-save-faces):
* lisp/cus-theme.el (custom-theme-write-variables):
(custom-theme-write-faces):
* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer):
* lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-loop):
(checkdoc-interactive-ispell-loop):
(checkdoc-message-interactive-ispell-loop, checkdoc-this-string-valid):
(checkdoc-this-string-valid-engine):
* lisp/emacs-lisp/elint.el (elint-get-top-forms):
* lisp/emulation/viper-cmd.el (viper-backward-indent):
* lisp/image-dired.el (image-dired-delete-char):
* lisp/simple.el (kill-visual-line): Replace instances of looking-at,
looking-back with char comparisons using following-char, preceding-char.

7 years agoRecognize JS regexp literals more correctly
Tom Tromey [Sun, 5 Feb 2017 18:40:18 +0000 (11:40 -0700)]
Recognize JS regexp literals more correctly

Bug#25529
* lisp/progmodes/js.el (js--syntax-propertize-regexp-regexp): New
constant.
(js-syntax-propertize-regexp): Use it.  Remove "end" argument.
(js--syntax-propertize-regexp-syntax-table): Remove.
(js-syntax-propertize): Update.
* test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax-bug-25529):
New test.

7 years agoFix bug in css--mdn-find-symbol
Tom Tromey [Sat, 11 Feb 2017 15:43:33 +0000 (08:43 -0700)]
Fix bug in css--mdn-find-symbol

* lisp/textmodes/css-mode.el (css--mdn-find-symbol): Skip whitespace
before skipping word characters.
test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): Add
regression test.

7 years agoFix handling of XBM images on MS-Windows
Eli Zaretskii [Sat, 11 Feb 2017 09:55:11 +0000 (11:55 +0200)]
Fix handling of XBM images on MS-Windows

* src/image.c (xbm_load) [HAVE_NTGUI]: Fix calculation of
'nbytes' when inverting XBM data bits.  (Bug#25661)

7 years ago; Fix typo in etc/NEWS
Michael Albinus [Sat, 11 Feb 2017 09:29:29 +0000 (10:29 +0100)]
; Fix typo in etc/NEWS

7 years agoFix handling of PBM data
Eli Zaretskii [Sat, 11 Feb 2017 09:09:33 +0000 (11:09 +0200)]
Fix handling of PBM data

* src/image.c (pbm_load): Handle PBM data with no blanks between
individual pixel values correctly.  (Bug#25660)

7 years agoFix warnings in debug tracing code
Noam Postavsky [Fri, 10 Feb 2017 20:33:05 +0000 (15:33 -0500)]
Fix warnings in debug tracing code

* src/xdisp.c (dump_glyph, dump_glyph_string):
* src/xfaces.c (dump_realized_face): Cast arguments or adjust format
specifiers to match signedness.

7 years agoExtract grep-find-ignored-directories processing from rgrep-default-command
Sam Steingold [Fri, 10 Feb 2017 19:53:02 +0000 (14:53 -0500)]
Extract grep-find-ignored-directories processing from rgrep-default-command

(rgrep-find-ignored-directories): Extract from `rgrep-default-command'.
Some Emacs packages use `grep-find-ignored-directories' to ignore some
directories, so will use this function instead of custom code.
(rgrep-default-command): Use `rgrep-find-ignored-directories'.

7 years agoFix a few integer-overflow glitches
Paul Eggert [Fri, 10 Feb 2017 16:34:57 +0000 (08:34 -0800)]
Fix a few integer-overflow glitches

* src/composite.c (composition_compute_stop_pos, composition_reseat_it):
* src/dispextern.h (struct composition_it.rule_idx):
* src/keyboard.c (Fset__this_command_keys):
* src/xwidget.c (webkit_js_to_lisp):
Don’t assume object sizes fit in ‘int’.
* src/xwidget.c (Fxwidget_resize):
Don’t assume Emacs integers fit in ‘int’.

7 years agoFix a bug with displaying an image after a TAB
Eli Zaretskii [Fri, 10 Feb 2017 16:19:11 +0000 (18:19 +0200)]
Fix a bug with displaying an image after a TAB

* src/xdisp.c (display_line): Handle TAB at end of screen line
specially only when we are displaying characters.  (Bug#25662)

7 years agoMove cyclic tests to fns-tests.el
Paul Eggert [Fri, 10 Feb 2017 09:52:41 +0000 (11:52 +0200)]
Move cyclic tests to fns-tests.el

* test/src/fns-tests.el (cyc1, cyc2, dot1, dot2): New functions.
(test-cycle-length, test-cycle-safe-length, test-cycle-member)
(test-cycle-memq, test-cycle-memql, test-cycle-assq)
(test-cycle-assoc, test-cycle-rassq, test-cycle-rassoc)
(test-cycle-delq, test-cycle-delete, test-cycle-reverse)
(test-cycle-plist-get, test-cycle-lax-plist-get)
(test-cycle-plist-member, test-cycle-plist-put)
(test-cycle-lax-plist-put, test-cycle-equal, test-cycle-nconc):
New tests.
* test/manual/cyclic-tests.el: File deleted.

7 years agoFix instrumenting code with propertized strings in Edebug
Gemini Lasswell [Fri, 10 Feb 2017 09:35:20 +0000 (11:35 +0200)]
Fix instrumenting code with propertized strings in Edebug

* lisp/emacs-lisp/edebug.el (edebug-read-function): Allow
'read' to decide what is and isn't a syntax error.  (Bug#25068)

7 years agoImprove fontification in bat-mode
Vladimir Panteleev [Fri, 10 Feb 2017 09:23:24 +0000 (11:23 +0200)]
Improve fontification in bat-mode

* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Match
word and symbol constituents when looking for variable names
to fontify; also, correct the syntax table and mark the equal
sign (=) character as punctuation.  Improve fontification
accuracy of iteration/positional variables.
(bat-mode): Set comment-start-skip.  (Bug#25541)

* test/lisp/progmodes/bat-mode-tests.el: New file, tests for
bat-mode.el.

7 years agoRestore special setting of this-command-keys by M-x
Eli Zaretskii [Fri, 10 Feb 2017 08:57:41 +0000 (10:57 +0200)]
Restore special setting of this-command-keys by M-x

It was lost when execute-extended-command was reimplemented in Lisp.

* src/keyboard.c (Fset__this_command_keys): New function.
(syms_of_keyboard): Defsubr it.

* lisp/simple.el (execute-extended-command): Set this-command-keys
as novice.el expects.  (Bug#25612)

7 years ago* lisp/isearch.el (isearch-search-fun-default): Set isearch-adjusted
Juri Linkov [Thu, 9 Feb 2017 22:35:22 +0000 (00:35 +0200)]
* lisp/isearch.el (isearch-search-fun-default): Set isearch-adjusted

to t to display "Pending" in the search prompt for lax
word/symbol search (bug#25562).  Don't use lax for lazy-highlighting
when 'bound' is non-nil.
(word-search-regexp, isearch-symbol-regexp): Don't depend on lax
at the beginning of regexp (bug#22589).

* lisp/info.el (Info-isearch-search):
Use isearch--lax-regexp-function-p.

* doc/emacs/search.texi (Word Search, Symbol Search):
Mention "Pending" prompt for lax word/symbol search.

7 years agoIbuffer: Update mode documentation
Tino Calancha [Thu, 9 Feb 2017 12:36:32 +0000 (21:36 +0900)]
Ibuffer: Update mode documentation

* lisp/ibuffer.el (ibuffer-mode): List newest commands in mode documentation.

7 years agoFix environment variable for xdg-data-dirs
Steven Allen [Thu, 9 Feb 2017 06:08:09 +0000 (22:08 -0800)]
Fix environment variable for xdg-data-dirs

* lisp/xdg.el (xdg-data-dirs): Use XDG_DATA_DIRS, not XDG_CONFIG_DIRS

Copyright-paperwork-exempt: yes

7 years ago; Theme updates
Tassilo Horn [Thu, 9 Feb 2017 11:02:43 +0000 (12:02 +0100)]
; Theme updates

; * etc/themes/tsdh-light-theme.el (tsdh-light): Theme updates.

7 years agoIbuffer: Erase output buffer before shell commands
Tino Calancha [Thu, 9 Feb 2017 09:14:10 +0000 (18:14 +0900)]
Ibuffer: Erase output buffer before shell commands

* lisp/ibuf-macs.el (define-ibuffer-op): Add keyword arguments
BEFORE and AFTER; they are forms to run before/after the operation.
* lisp/ibuf-ext.el (ibuffer--maybe-erase-shell-cmd-output):
New defun; if shell-command-dont-erase-buffer is nil, then
erase shell command output buffer.
(ibuffer-do-shell-command-pipe, ibuffer-do-shell-command-file): Use it.

7 years agoIbuffer: Don't truncate shell command output
Tino Calancha [Thu, 9 Feb 2017 09:13:59 +0000 (18:13 +0900)]
Ibuffer: Don't truncate shell command output

* lisp/ibuf-ext.el (ibuffer-do-shell-command-pipe)
(ibuffer-do-shell-command-pipe-replace)
Use 'call-shell-region' (Bug#22679).
(ibuffer-do-shell-command-file): Use call-process-shell-command.
If FILE, the file that the buffer object is visiting,
exists and the buffer is up-to-date, then use
FILE instead of creating a temporary file (Bug#22679).

7 years agoMake sure eshell pipelines don't drop data
Noam Postavsky [Thu, 2 Feb 2017 14:19:43 +0000 (09:19 -0500)]
Make sure eshell pipelines don't drop data

* lisp/eshell/esh-proc.el (eshell-sentinel): If called while still
handling output of the process, make sure to close the pipes only later,
so that the next process in the pipeline recieves EOF only after getting
all its input (Bug#25549).

7 years agoMake mm-shr use mail-parse-charset by default
Katsumi Yamaoka [Thu, 9 Feb 2017 00:41:19 +0000 (00:41 +0000)]
Make mm-shr use mail-parse-charset by default

* lisp/gnus/mm-decode.el (mm-shr): Use mail-parse-charset by default.
This helps an html message with no charset spec to be decoded.

7 years agodescribe-char: unambiguous name for inserting ASCII 7
Stephen Berman [Wed, 8 Feb 2017 21:38:39 +0000 (22:38 +0100)]
describe-char: unambiguous name for inserting ASCII 7

* lisp/descr-text.el (describe-char): Make the input
suggestion for inserting ASCII character 7 by name use the
unambiguous name "BELL (BEL)" (bug#25641).

7 years agoModify suppressing `vc-refresh-state' in filenotify-tests.el
Michael Albinus [Wed, 8 Feb 2017 18:33:52 +0000 (19:33 +0100)]
Modify suppressing `vc-refresh-state' in filenotify-tests.el

* test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
Use an advice rather than an alias for suppressing `vc-refresh-state'.

7 years agoSuppress undesired error messages in filenotify-tests.el
Michael Albinus [Tue, 7 Feb 2017 20:42:12 +0000 (21:42 +0100)]
Suppress undesired error messages in filenotify-tests.el

* test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
Suppress `vc-refresh-state', it produces undesired error messages.

7 years agoEnsure that Gnus bugs show up in the Emacs tracker
Lars Ingebrigtsen [Tue, 7 Feb 2017 14:52:36 +0000 (15:52 +0100)]
Ensure that Gnus bugs show up in the Emacs tracker

* lisp/gnus/gnus.el (gnus-bug-package): Include Emacs in the
package spec.

7 years agoRevert "Don't tag Gnus bugs with "gnus""
Lars Ingebrigtsen [Tue, 7 Feb 2017 14:50:39 +0000 (15:50 +0100)]
Revert "Don't tag Gnus bugs with "gnus""

This reverts commit b6fa58072304c2a24f1fe8a0e06a4739a7f8211b.

The debbugs syntax requires a package name

7 years agoAdd xdg library
Mark Oteiza [Tue, 7 Feb 2017 04:27:47 +0000 (23:27 -0500)]
Add xdg library

* etc/NEWS: Mention new library.
* lisp/xdg.el: New file.

7 years agoDo not trick info/dir’s timestamp
Paul Eggert [Tue, 7 Feb 2017 02:00:13 +0000 (18:00 -0800)]
Do not trick info/dir’s timestamp

* Makefile.in (${srcdir}/info/dir): When making this file, do not
do anything special about its timestamp.  Previously this rule
used move-if-change, which meant that this file’s timestamp could
end up being older than the files it depends on, and this caused
‘make --question info’ to fail, which caused ‘make-dist’ to fail
now that ‘make-dist’ invokes ‘make --question info’.

7 years agoMake FOR_EACH_TAIL more like other FOR_EACH macros
Paul Eggert [Tue, 7 Feb 2017 01:15:14 +0000 (17:15 -0800)]
Make FOR_EACH_TAIL more like other FOR_EACH macros

See comments by Stefan Monnier in:
http://lists.gnu.org/archive/html/emacs-devel/2017-02/msg00181.html
and by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2017-02/msg00207.html
* src/fns.c (internal_equal): Do not bypass check for depth
overflow when tail-recursing via a dotted list tail or an overlay
plist, to avoid a rare infloop.
* src/lisp.h (FOR_EACH_TAIL, FOR_EACH_TAIL_SAFE): Take TAIL as an
arg, and update it at each iteration, rather than have callers
access it.tail.  All callers changed.
(FOR_EACH_TAIL): Do not check for dotted lists, as this is now
the caller’s responsibility.  All callers changed.
(FOR_EACH_TAIL_CONS): Remove.  All callers changed.
(struct for_each_tail_internal.tail): Remove; no longer needed.
(FOR_EACH_TAIL_INTERNAL): Remove dotted arg, and set the tail
arg each time through the loop.  All callers changed.

7 years agoPort to clang 3.8.0
Paul Eggert [Sun, 5 Feb 2017 22:07:11 +0000 (14:07 -0800)]
Port to clang 3.8.0

It does not allow a for-loop's control var to be an anonymous struct.
* src/lisp.h (struct for_each_tail_internal): New type.
(FOR_EACH_TAIL_INTERNAL): Use it.

7 years agoAdd cyclic-list tests
Paul Eggert [Sun, 5 Feb 2017 21:25:37 +0000 (13:25 -0800)]
Add cyclic-list tests

* test/manual/cycle-tests.el: New file (Bug#25606).

7 years agoFOR_EACH_TAIL now checks for quit
Paul Eggert [Sun, 5 Feb 2017 21:25:37 +0000 (13:25 -0800)]
FOR_EACH_TAIL now checks for quit

As per Eli Zaretskii (Bug#25606#20).  Although these calls to
maybe_quit are unnecessary in practice, Eli was not convinced
that the calls are unnecessary.
* src/lisp.h (FOR_EACH_TAIL, FOR_EACH_TAIL_CONS):
Call maybe_quit every so often.
(FOR_EACH_TAIL_INTERNAL): New arg CHECK_QUIT.  All callers changed.

7 years agoSignal list cycles in ‘length’ etc.
Paul Eggert [Sun, 5 Feb 2017 21:25:37 +0000 (13:25 -0800)]
Signal list cycles in ‘length’ etc.

Use macros like FOR_EACH_TAIL instead of maybe_quit to
catch list cycles automatically instead of relying on the
user becoming impatient and typing C-g (Bug#25606).
* src/fns.c (Flength, Fmember, Fmemq, Fmemql, Fassq, Fassoc, Frassq)
(Frassoc, Fdelete, Freverse):
Use FOR_EACH_TAIL instead of maybe_quit.
(Fnreverse): Use simple EQ to check for circular list instead
of rarely_quit, as this suffices in this unusual case.
(Fplist_put, Flax_plist_put, Flax_plist_put):
Use FOR_EACH_TAIL_CONS instead of maybe_quit.
(internal_equal): Use FOR_EACH_TAIL_CONS to check lists, instead
of by-hand tail recursion that did not catch cycles.
* src/fns.c (Fsafe_length, Fplist_get):
* src/xdisp.c (display_mode_element):
Use FOR_EACH_TAIL_SAFE instead of by-hand Floyd’s algorithm.
* src/lisp.h (QUIT_COUNT_HEURISTIC): Remove; no longer needed.
(rarely_quit): Simply count toward USHRT_MAX + 1, since the
fancier versions are no longer needed.
(FOR_EACH_TAIL_CONS, FOR_EACH_TAIL_SAFE)
(FOR_EACH_TAIL_INTERNAL): New macros, the last with definiens
mostly taken from FOR_EACH_TAIL.
(FOR_EACH_TAIL): Rewrite in terms of FOR_EACH_TAIL_INTERNAL.

7 years agoSimplify use of FOR_EACH_TAIL
Paul Eggert [Sun, 5 Feb 2017 21:25:37 +0000 (13:25 -0800)]
Simplify use of FOR_EACH_TAIL

* src/data.c (circular_list): New function.
* src/lisp.h (FOR_EACH_TAIL): Use Brent’s algorithm and C99 for-loop
decl, to eliminate the need for the args TAIL, TORTOISE and N, and
to speed things up a bit on typical hosts with optimization.
All uses changed (Bug#25605).

7 years ago* lisp/textmodes/css-mode.el: Require subr-x at compile time
Simen Heggestøyl [Sun, 5 Feb 2017 21:17:41 +0000 (22:17 +0100)]
* lisp/textmodes/css-mode.el: Require subr-x at compile time

7 years agotypo fix
Tom Tromey [Sat, 4 Feb 2017 20:22:39 +0000 (13:22 -0700)]
typo fix

(css--colon-inside-selector-p): Fix typo in docstring.

7 years agoSet comment-multi-line in js-mode
Tom Tromey [Wed, 18 Jan 2017 04:50:14 +0000 (21:50 -0700)]
Set comment-multi-line in js-mode

Bug#6806:
* lisp/progmodes/js.el (js-mode): Set comment-multi-line to t.
* test/lisp/progmodes/js-tests.el (js-mode-auto-fill): New test.

7 years ago* test/manual/indent/scss-mode.scss: Fix indentation
Simen Heggestøyl [Sat, 4 Feb 2017 19:33:58 +0000 (20:33 +0100)]
* test/manual/indent/scss-mode.scss: Fix indentation

7 years agoFix indentation of multiline CSS property values
Simen Heggestøyl [Thu, 2 Feb 2017 19:05:32 +0000 (20:05 +0100)]
Fix indentation of multiline CSS property values

* lisp/textmodes/css-mode.el (css-smie-grammar): Give colons belonging
to properties higher precedence.
(css--colon-inside-selector-p, css--colon-inside-funcall): New
functions for helping SMIE during tokenization.
(css-smie--forward-token, css-smie--backward-token): Distinguish
colons belonging to properties from other colons.

* test/manual/indent/css-mode.css: Add tests for the changes above.

* test/manual/indent/scss-mode.scss: Ditto.

7 years agoAdd tests for lisp/kmacro.el
Gemini Lasswell [Sat, 4 Feb 2017 11:55:47 +0000 (13:55 +0200)]
Add tests for lisp/kmacro.el

* test/lisp/kmacro-tests.el: New file.  (Bug#24939)

7 years agoFix autorevert-tests on MS-Windows
Eli Zaretskii [Sat, 4 Feb 2017 11:49:55 +0000 (13:49 +0200)]
Fix autorevert-tests on MS-Windows

* test/lisp/autorevert-tests.el
(auto-revert-test02-auto-revert-deleted-file): Don't check that
auto-revert-use-notify was reset to nil on w32.

7 years agoNew macro 'ert-with-message-capture'
Gemini Lasswell [Sat, 4 Feb 2017 11:36:43 +0000 (13:36 +0200)]
New macro 'ert-with-message-capture'

* lisp/emacs-lisp/ert-x.el (ert-with-message-capture): New macro.
(Bug#25158)

* test/lisp/autorevert-tests.el (auto-revert--wait-for-revert)
(auto-revert-test00-auto-revert-mode)
(auto-revert-test01-auto-revert-several-files)
(auto-revert-test02-auto-revert-deleted-file)
(auto-revert-test03-auto-revert-tail-mode)
(auto-revert-test04-auto-revert-mode-dired):
* test/lisp/filenotify-tests.el (file-notify-test03-autorevert): Use
ert-with-message-capture.

7 years agoAvoid invalid read syntax errors due to 'ert-with-test-buffer'
Gemini Lasswell [Sat, 4 Feb 2017 11:18:29 +0000 (13:18 +0200)]
Avoid invalid read syntax errors due to 'ert-with-test-buffer'

* lisp/emacs-lisp/ert-x.el (ert-with-test-buffer): Fix the
'declare' form.  (Bug#24722)

7 years agoFix a syntax error when evaluating pcase.el under Edebug
Eli Zaretskii [Sat, 4 Feb 2017 11:12:14 +0000 (13:12 +0200)]
Fix a syntax error when evaluating pcase.el under Edebug

* lisp/emacs-lisp/pcase.el (pcase-MACRO): Replace def-edebug-spec
with an explicit 'put' form.  Suggested by Gemini Lasswell
<gazally@runbox.com>.  (Bug#24717)

7 years ago; * lisp/files.el (save-some-buffers-default-predicate): Add :version.
Eli Zaretskii [Sat, 4 Feb 2017 10:59:41 +0000 (12:59 +0200)]
; * lisp/files.el (save-some-buffers-default-predicate): Add :version.

7 years agoChange edebug-max-depth from defconst to defcustom
Gemini Lasswell [Sat, 4 Feb 2017 10:56:19 +0000 (12:56 +0200)]
Change edebug-max-depth from defconst to defcustom

* lisp/emacs-lisp/edebug.el (edebug-max-depth): Add defcustom.
(Bug#24713)

* etc/NEWS: Mention edebug-max-depth.

* doc/lispref/edebug.texi (Checking Whether to Stop): Mention
edebug-max-depth and index it.  Add cross-references for
max-lisp-eval-depth and max-specpdl-size.

Co-authored-by: Eli Zaretskii <eliz@gnu.org>
7 years agoSupport options with embedded whitespace in 'dired-listing-switches'
Eli Zaretskii [Sat, 4 Feb 2017 10:02:55 +0000 (12:02 +0200)]
Support options with embedded whitespace in 'dired-listing-switches'

* lisp/dired.el (dired-listing-switches): Document how to quote
options with embedded whitespace.

* lisp/files.el (insert-directory): Use split-string-and-unquote
to support dired-listing-switches that specify command-line
options with embedded spaces.  (Bug#25485)

7 years agoAdd tests for lisp/emacs-lisp/testcover.el
Gemini Lasswell [Sat, 4 Feb 2017 09:43:50 +0000 (11:43 +0200)]
Add tests for lisp/emacs-lisp/testcover.el

* test/lisp/emacs-lisp/testcover-tests.el: New file.
* test/lisp/emacs-lisp/testcover-resources/testcases.el: New file.

Co-authored-by: Noam Postavsky <npostavs@users.sourceforge.net>
7 years agoDocument 'save-some-buffers-default-predicate'
Eli Zaretskii [Sat, 4 Feb 2017 09:33:54 +0000 (11:33 +0200)]
Document 'save-some-buffers-default-predicate'

* doc/lispref/files.texi (Saving Buffers):
* doc/emacs/files.texi (Save Commands): Document
save-some-buffers-default-predicate.

7 years agoNew defcustom 'save-some-buffers-default-predicate'
Richard Stallman [Sat, 4 Feb 2017 09:16:55 +0000 (11:16 +0200)]
New defcustom 'save-some-buffers-default-predicate'

* lisp/files.el (save-some-buffers-default-predicate): New defcustom.
(save-some-buffers): Use it when PRED is nil or omitted.

7 years agoRename to if-let* and when-let*
Mark Oteiza [Sat, 4 Feb 2017 02:42:42 +0000 (21:42 -0500)]
Rename to if-let* and when-let*

Make the existing if-let and when-let aliases.
* lisp/emacs-lisp/subr-x.el (if-let*, when-let*): New macros.  Rewrite
docstrings, incorporating that from let* and the existing if-let.
(if-let, when-let, and-let*): Alias them.

7 years agoRe-port alloc.c to Solaris sparc and simplify
Paul Eggert [Fri, 3 Feb 2017 05:28:45 +0000 (21:28 -0800)]
Re-port alloc.c to Solaris sparc and simplify

alloc.c had bitrotted a bit, and used an undefined symbol
stack_base when Emacs was built on Solaris sparc, leading to
compilation failures.  Also, code related to __builtin_unwind_init
was unnecessarily duplicated.  Fix the bitrot and remove some
duplication.
* src/alloc.c: Remove uses of GC_SAVE_REGISTERS_ON_STACK, since it
is never defined.
(test_setjmp) [!HAVE___BUILTIN_UNWIND_INIT && GC_SETJMP_WORKS]:
Define a no-op dummy, to simplify use.
(test_setjmp) [!GC_SETJMP_WORKS]: Test setjmp_tested_p here rather
than in the caller, to simplify use.
(stacktop_sentry): New type.
(__builtin_unwind_init) [!HAVE___BUILTIN_UNWIND_INIT]: New macro.
(SET_STACK_TOP_ADDRESS): New macro, containing code that was duplicated.
(flush_stack_call_func, Fgarbage_collect): Use it.
(init_alloc): Omit unnecessary initialization.
After dumping, Emacs need not re-test setjmp.

7 years ago; Merge: fixes and updates to scroll margin (Bug#5718)
Noam Postavsky [Fri, 3 Feb 2017 02:35:51 +0000 (21:35 -0500)]
; Merge: fixes and updates to scroll margin (Bug#5718)

- add new option `maximum-sroll-margin'
- refactor and fix scroll margin calculation

7 years agoAdd tests for scrolling
Noam Postavsky [Sat, 28 Jan 2017 21:54:33 +0000 (16:54 -0500)]
Add tests for scrolling

* test/manual/scroll-tests.el: New tests for scroll-margin behavior.

7 years agoFix scrolling with partial lines
Noam Postavsky [Sat, 21 Jan 2017 18:24:47 +0000 (13:24 -0500)]
Fix scrolling with partial lines

* src/xdisp.c (partial_line_height): New function.
(try_scrolling):
* src/window.c (window_scroll_pixel_based): Use it for calculating the
pixel scroll margin correctly in a window with partial lines.

7 years agoMake limit on scroll-margin variable
Noam Postavsky [Sun, 11 Sep 2016 15:09:57 +0000 (11:09 -0400)]
Make limit on scroll-margin variable

* src/xdisp.c (maximum-scroll-margin): New variable.
* lisp/cus-start.el: Make it customizable.
* etc/NEWS: Mention it.
* doc/emacs/display.texi (Auto Scrolling):
* doc/lispref/windows.texi (Textual Scrolling): Document it.
* src/window.c (window_scroll_pixel_based): Use it instead of hardcoding
division by 4 (Bug #5718).

7 years agoDon't count mode line for scroll-margin limit
Noam Postavsky [Sun, 28 Aug 2016 21:23:04 +0000 (17:23 -0400)]
Don't count mode line for scroll-margin limit

* src/window.c (window_scroll_margin): Use window_box_height to avoid
counting header line, scrollbars for scroll-margin limit (Bug #5718).

7 years agoRefactor uses of scroll_margin to a function
Noam Postavsky [Sun, 28 Aug 2016 20:38:04 +0000 (16:38 -0400)]
Refactor uses of scroll_margin to a function

Its effective range needs to be clamped between 0 and (window height /
4), so it's better to have this constraint in a single place.

* src/window.c (window_scroll_margin): New function.
(window_scroll_pixel_based, window_scroll_line_based):
(Frecenter, Fmove_to_window_line):
* src/xdisp.c (try_scrolling, try_cursor_movement):
(redisplay_window, try_window, try_window_id): Use it.

7 years ago(xref-collect-matches): Use '-E' together with '-e'
Dmitry Gutov [Fri, 3 Feb 2017 01:10:30 +0000 (03:10 +0200)]
(xref-collect-matches): Use '-E' together with '-e'

* lisp/progmodes/xref.el (xref-collect-matches): Use '-E'
together with '-e', as suggested by Noam Postavsky
(http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00780.html).

7 years agoPacify Oracle Studio 12.5
Paul Eggert [Thu, 2 Feb 2017 23:52:59 +0000 (15:52 -0800)]
Pacify Oracle Studio 12.5

* src/emacs.c (main): Do not silently convert char * to bool.

7 years ago; Fix recent documentation changes
Eli Zaretskii [Thu, 2 Feb 2017 21:06:48 +0000 (23:06 +0200)]
; Fix recent documentation changes

* doc/emacs/search.texi (Other Repeating Search): Index recently
introduced variables and faces.

7 years agoFix lisp.h underparenthesization
Paul Eggert [Thu, 2 Feb 2017 17:52:20 +0000 (09:52 -0800)]
Fix lisp.h underparenthesization

* src/lisp.h (STACK_CONS, AUTO_STRING_WITH_LEN):
Parenthesize compound literals that are function call args.
Although this does not fix any bugs, it is the proper style for
macro parenthesization as it means this code will continue to
work even if make_lisp_ptr is changed to a macro.

7 years ago* lisp/doc-view.el (doc-view-mode): Don't require a final newline
Stefan Monnier [Thu, 2 Feb 2017 15:57:37 +0000 (10:57 -0500)]
* lisp/doc-view.el (doc-view-mode): Don't require a final newline

(doc-view-revert-buffer): Silence overflow warnings.

7 years agoMerge from gnulib
Paul Eggert [Thu, 2 Feb 2017 15:49:55 +0000 (07:49 -0800)]
Merge from gnulib

2017-01-30 Port to PGI 16.10 x86-64
2017-01-20 time_rz: fix comment typo
2017-01-14 strftime: %z is -00 if unknown
This incorporates:
* doc/misc/texinfo.tex, lib/c-ctype.h, lib/strftime.c:
* lib/time-internal.h, lib/verify.h:
Copy from gnulib.

7 years agoCheck if there are hunks before kill or refine a hunk
Tino Calancha [Thu, 2 Feb 2017 13:27:33 +0000 (22:27 +0900)]
Check if there are hunks before kill or refine a hunk

* lisp/vc/diff-mode.el (diff--some-hunks-p): New predicate.
(diff-hunk-kill, diff-file-kill, diff-refine-hunk): Use it (Bug#25571).

7 years agoIgnore error after kill last file or hunk
Tino Calancha [Thu, 2 Feb 2017 13:27:18 +0000 (22:27 +0900)]
Ignore error after kill last file or hunk

* lisp/vc/diff-mode.el (diff-hunk-kill): Go to beginning of hunk before kill.
Ignore error after kill last hunk (Bug#25570).
(diff-file-kill): Idem.

7 years agoShow current line highlighted in *Occur* buffer
Tino Calancha [Thu, 2 Feb 2017 10:13:27 +0000 (19:13 +0900)]
Show current line highlighted in *Occur* buffer

* lisp/replace.el (list-matching-lines-current-line-face)
(list-matching-lines-jump-to-current-line): New user options.
(occur--orig-line, occur--orig-line-str): New variables.
(occur, occur-engine): Use them.
(occur--final-pos): New variable.
(occur-1): Use it.
(occur-engine): Idem.
Show the current line with 'list-matching-lines-current-line-face'.
Set point on the first matching line after the current one.
* etc/NEWS: Add entry for the new option.

7 years agoAllow occur command to operate on the region
Tino Calancha [Thu, 2 Feb 2017 10:13:05 +0000 (19:13 +0900)]
Allow occur command to operate on the region

See discussion in:
https://lists.gnu.org/archive/html/emacs-devel/2016-12/msg01084.html
* lisp/replace.el (occur--region-start, occur--region-end)
(occur--matches-threshold): New variables.
(occur-engine): Use them.
(occur): Idem.
Add optional arg REGION; if non-nil occur applies in that region.
* doc/lispintro/emacs-lisp-intro.texi (Keybindings): Update manual
* doc/emacs/search.texi (Other Repeating Search): Idem.
; etc/NEWS: Add entry for the new feature.

7 years agoTreat list-buffers-directory as a string
Mark Oteiza [Thu, 2 Feb 2017 03:07:03 +0000 (22:07 -0500)]
Treat list-buffers-directory as a string

Another step in the long history of list-buffers-directory.  A thread
branch discussing the meaning/use of the variable starts here
https://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00684.html
Also see (info "(elisp) Buffer File Name").
* lisp/buff-menu.el: Relocate special case code into info.el.  Nix
Info-* defvars.
(Buffer-menu--pretty-file-name): Remove special case.  Use
bound-and-true-p.
(Buffer-menu-info-node-description): Remove.
* lisp/ibuffer.el (ibuffer-buffer-file-name): Treat
list-buffers-directory as a string.
* lisp/info.el (Info-node-description): New function.
(Info-select-node): Use it.

7 years agoTurn on lexical-binding in parse-time.el
Mark Oteiza [Thu, 2 Feb 2017 02:01:45 +0000 (21:01 -0500)]
Turn on lexical-binding in parse-time.el

* lisp/calendar/parse-time.el: Turn on lexical-binding.
(parse-time-iso8601-regexp, parse-iso8601-time-string): Remove unused
bindings.

7 years agoPrevent creating thumbnails of all gif frames
Mark Oteiza [Thu, 2 Feb 2017 01:51:00 +0000 (20:51 -0500)]
Prevent creating thumbnails of all gif frames

With the previous defaults, doing image-dired on a directory with an
animated foo.gif would cause creation of foo.thumb-N.gif for each of
N frames in foo.gif.  By default image-dired looks for foo.thumb.gif, so
there additionally is no usable thumbnail after all the needless effort.
image-dired never handled animation, regardless.
* lisp/image-dired.el: Mention limitation.
(image-dired-cmd-create-thumbnail-options):
(image-dired-cmd-create-temp-image-options):
(image-dired-cmd-create-standard-thumbnail-options): Append [0] to
filename to indicate only converting the 0th frame.
(image-dired-display-image-mode): Don't show a cursor.

7 years agoFix quitting bug when buffers are frozen
Paul Eggert [Wed, 1 Feb 2017 23:18:44 +0000 (15:18 -0800)]
Fix quitting bug when buffers are frozen

Problem noted by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00721.html
This patch also fixes some other issues in that report.
* src/lisp.h (incr_rarely_quit): Remove.
All callers changed to use rarely_quit directly.
* src/search.c (freeze_buffer_relocation)
(thaw_buffer_relocation): New functions.
(looking_at_1, fast_looking_at, search_buffer):
Use them to fix bug when quitting when buffers are frozen.
* src/sysdep.c (emacs_intr_read): Rename from emacs_nointr_read.
All uses changed.

7 years agoRevamp quitting and fix infloops
Paul Eggert [Wed, 1 Feb 2017 23:18:44 +0000 (15:18 -0800)]
Revamp quitting and fix infloops

This fixes some infinite loops that cannot be quitted out of,
e.g., (defun foo () (nth most-positive-fixnum '#1=(1 . #1#)))
when byte-compiled and when run under X.  See:
http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00577.html
This also attempts to keep the performance improvements I recently
added, as much as possible under the constraint that the infloops
must be caught.  In some cases this fixes infloop bugs recently
introduced when I removed immediate_quit.
* src/alloc.c (Fmake_list):
Use rarely_quit, not maybe_quit, for speed in the usual case.
* src/bytecode.c (exec_byte_code):
* src/editfns.c (Fcompare_buffer_substrings):
* src/fns.c (Fnthcdr):
* src/syntax.c (scan_words, skip_chars, skip_syntaxes)
(Fbackward_prefix_chars):
Use rarely_quit so that users can C-g out of long loops.
* src/callproc.c (call_process_cleanup, call_process):
* src/fileio.c (read_non_regular, Finsert_file_contents):
* src/indent.c (compute_motion):
* src/syntax.c (scan_words, Fforward_comment):
Remove now-unnecessary maybe_quit calls.
* src/callproc.c (call_process):
* src/doc.c (get_doc_string, Fsnarf_documentation):
* src/fileio.c (Fcopy_file, read_non_regular, Finsert_file_contents):
* src/lread.c (safe_to_load_version):
* src/sysdep.c (system_process_attributes) [GNU_LINUX]:
Use emacs_read_quit instead of emacs_read in places where
C-g handling is safe.
* src/eval.c (maybe_quit): Move comment here from lisp.h.
* src/fileio.c (Fcopy_file, e_write):
Use emacs_write_quit instead of emacs_write_sig in places where
C-g handling is safe.
* src/filelock.c (create_lock_file): Use emacs_write, not
plain write, as emacs_write no longer has a problem.
(read_lock_data): Use emacs_read, not read, as emacs_read
no longer has a problem.
* src/fns.c (rarely_quit): Move to lisp.h and rename to
incr_rarely_quit.  All uses changed..
* src/fns.c (Fmemq, Fmemql, Fassq, Frassq, Fplist_put, Fplist_member):
* src/indent.c (compute_motion):
* src/syntax.c (find_defun_start, back_comment, forw_comment)
(Fforward_comment, scan_lists, scan_sexps_forward):
Use incr_rarely_quit so that users can C-g out of long loops.
* src/fns.c (Fnconc): Move incr_rarely_quit call to within
inner loop, so that it catches C-g there too.
* src/keyboard.c (tty_read_avail_input): Remove commented-out
and now-obsolete code dealing with interrupts.
* src/lisp.h (rarely_quit, incr_rarely_quit): New functions,
the latter moved here from fns.c and renamed from rarely_quit.
(emacs_read_quit, emacs_write_quit): New decls.
* src/search.c (find_newline, search_buffer, find_newline1):
Add maybe_quit to catch C-g.
* src/sysdep.c (get_child_status): Always invoke maybe_quit
if interruptible, so that the caller need not bother.
(emacs_nointr_read, emacs_read_quit, emacs_write_quit):
New functions.
(emacs_read): Rewrite in terms of emacs_nointr_read.
Do not handle C-g or signals; that is now for emacs_read_quit.
(emacs_full_write): Replace PROCESS_SIGNALS two-way arg
with INTERRUPTIBLE three-way arg.  All uses changed.

7 years agoRemove immediate_quit.
Paul Eggert [Wed, 1 Feb 2017 23:18:43 +0000 (15:18 -0800)]
Remove immediate_quit.

The old code that sets and clears immediate_quit was
ineffective except when Emacs is running in terminal mode, and
has problematic race conditions anyway, so remove it.  This
will introduce some hangs when Emacs runs in terminal mode,
and these hangs should be fixed in followup patches.
* src/keyboard.c (immediate_quit): Remove.  All uses removed.

7 years agoAllow C++ nested brace-list-entries to be better indented.
Alan Mackenzie [Wed, 1 Feb 2017 20:20:09 +0000 (20:20 +0000)]
Allow C++ nested brace-list-entries to be better indented.

This fixes bug #24431.  The key change of this bug fix is correctly analyzing
nested brace lists when the opening element stands on the same line as both
its introductory brace and an enclosing parameter list parenthesis.

* list/progmodes/cc-align.el (c-lineup-under-anchor): New line-up function.

* list/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Accept the
presence of exactly an identifier between an open parenthesis and an open
brace as evidence of the brace starting a brace list.
(c-looking-at-statement-block): New function, extracted from
c-looking-at-inexpr-block.  Enhance it to analyze inner blocks recursively
when needed.
(c-looking-at-inexpr-block): Extract new function (see above) and call it.
(c-add-stmt-syntax): Enhance, with new &optional parameter, to supply the
prime syntactic symbol with a fixed anchor point.  When this is used, restrict
all added syntactic symbols to those having an anchor point on the same line.
Add, in addition to the current additional symbols, c-brace-list-entry when
needed; use c-looking-at-statement-block to determine the latter.
(c-guess-basic-syntax, CASE 9D): Use c-add-stmt-syntax rather than just
c-add-syntax, to assemble the syntactic context of a 'brace-list-entry, thus
getting, possibly, several accompanying syntactic entries.

* lisp/progmodes/cc-styles.el (c-style-alist, "gnu" style): New entry for
'brace-list-intro, namely c-lineup-arglist-intro-after-paren.

* lisp/progmodes/cc-vars.el (c-offsets-alist): Change the factory default
offset for 'brace-list-entry from 0 to c-lineup-under-anchor.

* doc/misc/cc-mode.texi (Syntactic Symbols): Amend the definition of
brace-list-intro.
(Brace List Symbols): Amend the example to show the new analysis of brace
lists when the first element comes on the same line as the opening brace.
(Misc Line-Up): Document the new line-up function c-lineup-under-anchor.

7 years agoRevert "DOn't use string-as-unibyte in Gnus"
Lars Ingebrigtsen [Wed, 1 Feb 2017 12:48:02 +0000 (13:48 +0100)]
Revert "DOn't use string-as-unibyte in Gnus"

This reverts commit d1c931009004aef847105b7bac6b6ffafd985b82.

Not all the cases where we had string-as-unibyte were characters,
so this needs to be considered more thoroughly before being redone.

7 years agoFix a subtle problem in Tramp with timers
Michael Albinus [Wed, 1 Feb 2017 09:06:37 +0000 (10:06 +0100)]
Fix a subtle problem in Tramp with timers

* lisp/net/tramp.el (tramp-accept-process-output): Change argument
list.  Make it work when called inside a timer.  See
<http://lists.gnu.org/archive/html/tramp-devel/2017-01/msg00010.html>.

7 years ago; Bump let-alist
Mark Oteiza [Wed, 1 Feb 2017 00:46:28 +0000 (19:46 -0500)]
; Bump let-alist

* lisp/emacs-lisp/let-alist.el: Bump micro version (bug#24641).

7 years agoread-multiple-choice: explain dialog popups more
Ted Zlatanov [Tue, 31 Jan 2017 19:17:58 +0000 (14:17 -0500)]
read-multiple-choice: explain dialog popups more

* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Explain
when a graphical popup is used and how it can be avoided.

7 years agoauth-source-user-and-password: add forgotten user parameter
Ted Zlatanov [Tue, 31 Jan 2017 19:12:41 +0000 (14:12 -0500)]
auth-source-user-and-password: add forgotten user parameter

* lisp/auth-source.el (auth-source-user-and-password): Use
          accidentally unused "user" parameter.
          Reported by Oscar Najera <najera.oscar@gmail.com>.

7 years agoFix typo in a NEWS entry for CSS mode
Simen Heggestøyl [Tue, 31 Jan 2017 19:08:54 +0000 (20:08 +0100)]
Fix typo in a NEWS entry for CSS mode

7 years agoDOn't use string-as-unibyte in Gnus
Lars Ingebrigtsen [Tue, 31 Jan 2017 16:52:51 +0000 (17:52 +0100)]
DOn't use string-as-unibyte in Gnus

* lisp/gnus/nnmail.el (nnmail-parse-active): Don't use
string-as-unibyte.
(nnmail-insert-xref): Ditto.

* lisp/gnus/canlock.el (canlock-make-cancel-key): Ditto.

* lisp/gnus/gnus-art.el (gnus-article-browse-html-parts): Ditto.

* lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Ditto.
(gnus-browse-foreign-server): Ditto.
(gnus-browse-foreign-server): Ditto.

* lisp/gnus/gnus-start.el
(gnus-update-active-hashtb-from-killed): Ditto.
(gnus-read-newsrc-el-file): Ditto.

* lisp/gnus/mml.el (mml-generate-mime-1): Ditto.

* lisp/gnus/nnir.el (nnir-get-active): Ditto.
(nnir-get-active): Ditto.

7 years agoAllow C-s C-w to yank ' to the search ring in the Gnus article buffer
Juri Linkov [Tue, 31 Jan 2017 16:36:06 +0000 (17:36 +0100)]
Allow C-s C-w to yank ' to the search ring in the Gnus article buffer

* lisp/gnus/gnus-art.el (gnus-article-mode-syntax-table): Make
M-. in article buffers work for `foo' strings, and still allow
C-s C-w to yank ' to the search ring (bug#22248).

7 years ago* src/alloc.c, src/lisp.h: Fix minor glitches in recent changes.
Paul Eggert [Tue, 31 Jan 2017 16:29:02 +0000 (08:29 -0800)]
* src/alloc.c, src/lisp.h: Fix minor glitches in recent changes.

7 years ago* test/lisp/vc/diff-mode-tests.el: Require diff-mode.
Tino Calancha [Tue, 31 Jan 2017 16:20:46 +0000 (01:20 +0900)]
* test/lisp/vc/diff-mode-tests.el: Require diff-mode.

7 years agoNew test for diff-mode handling trailing --
Dima Kogan [Tue, 31 Jan 2017 07:40:54 +0000 (23:40 -0800)]
New test for diff-mode handling trailing --

test/lisp/vc/diff-mode-tests.el: New test file

7 years agoHandle patch terminators produced by git and bzr patch export
Dima Kogan [Tue, 31 Jan 2017 05:43:32 +0000 (21:43 -0800)]
Handle patch terminators produced by git and bzr patch export

Patch by Juri Linkov posted in the #9597 bug report

* lisp/vc/diff-mode.el (diff-sanity-check-hunk): Find and ignore
terminator (Bug #9597, #5302)

7 years agoRevert two accidental commits
Dima Kogan [Tue, 31 Jan 2017 15:46:10 +0000 (07:46 -0800)]
Revert two accidental commits

This reverts commit f3c77d11af65f3b319b1784b4c3cf08c51aa7997.
This reverts commit 3c941b900007c9e79c00af0f21d88154f6d8af1a.

7 years agostash
Dima Kogan [Tue, 6 Dec 2016 05:42:20 +0000 (21:42 -0800)]
stash

7 years agocomint-get-old-input-default: behavior follows docstring
Dima Kogan [Fri, 25 Nov 2016 21:15:12 +0000 (13:15 -0800)]
comint-get-old-input-default: behavior follows docstring

lisp/comint.el (comint-get-old-input-default): Modify behavior to follow
docstring: if `comint-use-prompt-regexp' is nil, then return the CURRENT LINE,
if point is on an output field.

7 years agocss-mode documentation lookup feature
Tom Tromey [Fri, 20 Jan 2017 04:40:38 +0000 (21:40 -0700)]
css-mode documentation lookup feature

* etc/NEWS: Mention new feature.
* lisp/textmodes/css-mode.el (css-mode-map): New defvar.
(css--mdn-lookup-history): New defvar.
(css-lookup-url-format): New defcustom.
(css--mdn-property-regexp, css--mdn-completion-list): New defconsts.
(css--mdn-after-render, css--mdn-find-symbol, css-lookup-symbol): New
defuns.
* test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): New
test.

7 years agoedt-mapper: just loading a library should not run code
Glenn Morris [Mon, 30 Jan 2017 22:22:32 +0000 (17:22 -0500)]
edt-mapper: just loading a library should not run code

* lisp/emulation/edt-mapper.el (edt-mapper): New function,
containing code previously at top-level.
* lisp/emulation/edt.el (edt-load-keys): After loading edt-mapper,
run edt-mapper function.

7 years agomh-compat.el: remove duplicate definition
Glenn Morris [Mon, 30 Jan 2017 21:59:37 +0000 (16:59 -0500)]
mh-compat.el: remove duplicate definition

* lisp/mh-e/mh-compat.el (mh-make-obsolete-variable):
Remove duplicate definition.