1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-26 07:00:35 -08:00
Commit graph

130436 commits

Author SHA1 Message Date
Lars Ingebrigtsen
d32dfc2c7a Revert "Bind C-c keys in the article buffer"
This reverts commit 6b4195f2ac.

The commit somehow lead to problems in other parts of Emacs.
2017-01-25 22:53:07 +01:00
Eli Zaretskii
cd0e636524 ; * doc/lispref/lists.texi (List Elements): Fix last change. 2017-01-25 22:49:35 +02:00
Lars Ingebrigtsen
097b1686b6 Document how to quote MML tags
* doc/misc/emacs-mime.texi (MML Definition): Mention how to
quote MML tags (bug#18881).
2017-01-25 21:47:28 +01:00
Lars Ingebrigtsen
27accec970 Make address parsing more robust
* lisp/mail/ietf-drums.el (ietf-drums-parse-address): Don't
bug out on addresses like
(ietf-drums-parse-address "\"Foo \"bar\" <larsi@gnus.org>")
(bug#18572).
2017-01-25 21:21:40 +01:00
Lars Ingebrigtsen
e0e95199b9 Fix the %P (line number) thing in Gnus summary buffers
* lisp/gnus/gnus-salt.el (gnus-pick-line-number): Remove hack.

* lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Reset the
"pick" mode line number on entry instead of relying in a hack (bug#18311).
2017-01-25 20:57:52 +01:00
Lars Ingebrigtsen
36cbe217c8 Fix wrong documentation on nnmairix keystrokes
* doc/misc/gnus.texi (nnmairix keyboard shortcuts): The
nnmairix commands are on G G, not $ (bug#18260).
2017-01-25 20:43:27 +01:00
Lars Ingebrigtsen
6b4195f2ac Bind C-c keys in the article buffer
* lisp/gnus/gnus-art.el (gnus-article-mode-map): Also bind the
C-c keys so that they execute in the summary buffer
(bug#18257).  This makes commands like `C-c C-f' work from the
article buffer.
2017-01-25 20:40:27 +01:00
Lars Ingebrigtsen
c5442adaa6 Don't mark articles in Gnus as displayed when they aren't
* lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Don't
mark any articles as selected if we're not selecting any
articles (bug#18255).
2017-01-25 20:33:56 +01:00
Vibhav Pant
4e6140b283 * lisp/emacs-lisp/disass.el: Display jump tables for switch. 2017-01-26 01:02:16 +05:30
Vibhav Pant
19cb3985a3 * lisp/emacs-lisp/bytecomp.el:Use correct size for switch jump-table 2017-01-26 01:00:41 +05:30
Vibhav Pant
c52a9b6ddd * lisp/emacs-lisp/bytecomp.el: Simplify b-c-cond-valid-obj2-p 2017-01-26 00:58:36 +05:30
Vibhav Pant
8189b97e5c * lisp/emacs-lisp/bytecomp.el: Fix byte-switch codegen with symbols. 2017-01-26 00:57:10 +05:30
Vibhav Pant
0d3c57dcf3 * lisp/emacs-lisp/byte-opt.el: Add support for decompiling switch
* lisp/emacs-lisp/byte-opt.el: (byte-decompile-bytecode-1) When the
  constant encountered precedes a byte-switch op, replace all the
  addresses in the jump table with tags.
2017-01-26 00:54:59 +05:30
Mark Oteiza
43eba49553 Move cXXXr and cXXXXr to subr.el
* etc/NEWS: Mention new core Elisp.
* doc/lispref/lists.texi (List Elements): Document and index the new
functions.
* doc/misc/cl.texi (List Functions): Change "defines" to "aliases".
* lisp/subr.el (caaar, caadr, cadar, caddr, cdaar, cdadr, cddar)
(cdddr, caaaar caaadr, caadar, caaddr, cadaar, cadadr, caddar):
(cadddr, cdaaar, cdaadr, cdadar, cdaddr, cddaar, cddadr, cdddar):
(cddddr): New functions.
* lisp/emacs-lisp/cl-lib.el (cl-caaar, cl-caadr, cl-cadar, cl-caddr):
(cl-cdaar, cl-cdadr, cl-cddar cl-cdddr, cl-caaaar cl-caaadr):
(cl-caadar, cl-caaddr, cl-cadaar, cl-cadadr, cl-caddar, cl-cadddr):
(cl-cdaaar, cl-cdaadr, cl-cdadar, cl-cdaddr, cl-cddaar, cl-cddadr):
(cl-cdddar, cl-cddddr): Alias to new subr functions.
* lisp/emacs-lisp/cl.el (cl-unload-function): Remove cXXXr and cXXXXr
elements.
2017-01-25 14:21:10 -05:00
Lars Ingebrigtsen
ff9ccf6883 Only save .newsrc file if the native method is NNTP
* lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Only save
the .newsrc file if the native select method is NNTP
(bug#18198).  This avoids problems with invalid IMAP group
names and the like in the .newsrc file.
2017-01-25 19:30:33 +01:00
Lars Ingebrigtsen
544b996915 Only save .newsrc file if the native method is NNTP
* lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Only save
the .newsrc file if the native select method is NNTP
(bug#18198).  This avoids problems with invalid IMAP group
names and the like in the .newsrc file.
2017-01-25 19:30:22 +01:00
Lars Ingebrigtsen
7a7c0b170b Gnus custom spec fix
* lisp/gnus/gnus-art.el (gnus-signature-limit): Fix customize
spec to match the doc string (bug#17679).
2017-01-25 18:31:42 +01:00
Lars Ingebrigtsen
87e2657baf Clarify confusing Gnus error message
* lisp/gnus/gnus-topic.el (gnus-topic-unindent): Clarify
confusing error message (bug#17677).
2017-01-25 18:27:33 +01:00
Lars Ingebrigtsen
00591a8ee7 Make C-u C-x m work with Message as documented
* lisp/gnus/message.el (message-mail): Respect the CONTINUE
parameter (bug#17175).
2017-01-25 18:14:00 +01:00
Lars Ingebrigtsen
82b6b3cf8f Fix problem with auto-mode and dir-locals-collect-variables
* lisp/files.el (dir-locals-collect-variables): When run from
auto-mode, the file in question may not be an absolute path
name (bug#24016).

Example backtrace:

Debugger entered--Lisp error: (args-out-of-range "compile-1st-in-loa
  dir-locals-collect-variables(((emacs-lisp-mode (indent-tabs-mode))
  hack-dir-local-variables()
  hack-local-variables(no-mode)
  run-mode-hooks(diff-mode-hook)
  diff-mode()
  mm-display-inline-fontify((#<buffer  *mm*-923037> ("text/x-diff" (
2017-01-25 17:43:44 +01:00
Lars Ingebrigtsen
97934ffb56 Attach text files correctly in Message
* lisp/gnus/mml.el (mml-generate-mime-1): Detect which coding
system has been used in attached text files, and don't try to
do any encoding of these files (bug#13808).
2017-01-25 17:28:17 +01:00
Lars Ingebrigtsen
6bfa9e9abc Build fix for older gnutls versions
* src/gnutls.c (emacs_gnutls_handle_error):
GNUTLS_E_PREMATURE_TERMINATION is apparently only present in
gnutls-3.
2017-01-25 14:21:22 +01:00
Tino Calancha
cf9ce4fcfc ediff-difference-vector-alist: Drop duplicated definition
* lisp/vc/ediff-init.el (ediff-difference-vector-alist):
Drop duplicated definition.
(ediff-difference-vector-A, ediff-difference-vector-B)
(ediff-difference-vector-C, ediff-difference-vector-Ancestor):
Move definition before 'ediff-difference-vector-alist'.
2017-01-25 15:15:16 +09:00
Lars Ingebrigtsen
f580ea195b Revert "nnimap.el: support additional expunge options"
This reverts commit 4e9baea6ab.

The patch broke fetching new mail:

Debugger entered--Lisp error: (error "Format specifier doesn’t match argument type")
  format("%d .*\n" (t ("OK" ("HIGHESTMODSEQ" "914696") "Expunge" "completed.") ("VANISHED" "1825937") ("0" "RECENT")))
  (looking-at (format "%d .*\n" sequence))
  (not (looking-at (format "%d .*\n" sequence)))
  (progn (while (and (not (bobp)) (progn (forward-line -1) (looking-at "\\*\\|[0-9]+ OK NOOP")))) (not (looking-at (format "%d .*\n" sequence))))
2017-01-25 01:18:43 +01:00
Nikolaus Rath
4e9baea6ab nnimap.el: support additional expunge options
* lisp/gnus/nnimap.el (nnimap-close-group)
(nnimap-request-expire-articles, nnimap-delete-article)
(nnimap-request-scan): add new 'never, 'immediate, and 'on-exit
settings for nnimap-expunge (bug#20670).
2017-01-25 00:46:13 +01:00
Lars Ingebrigtsen
b6fa580723 Don't tag Gnus bugs with "gnus"
* lisp/gnus/gnus-msg.el (gnus-bug): Remove the bug package tags.

* lisp/gnus/gnus.el (gnus-bug-package): Removed; Gnus doesn't
have its own package any more in the bug tracker.
2017-01-25 00:29:24 +01:00
Lars Ingebrigtsen
42e2367413 Tweak TLS error messaging on closed connections
* src/gnutls.c (emacs_gnutls_handle_error): Demote the normal
peer-closed-connection "The TLS connection was non-properly
terminated" message to a lower level so that it isn't shown to
the user by default.
2017-01-25 00:23:28 +01:00
Lars Ingebrigtsen
456696a838 Avoid having eww unexpectedly open external browsers
* lisp/net/eww.el (eww-render): Instead of opening unsupported
content types like audio/mpeg directly in an external browser
(which can be very confusing especially when something
redirects to a file like that), just display a simple
interstitial that people can choose to click on or not
(bug#22671).
2017-01-24 23:39:05 +01:00
Lars Ingebrigtsen
fd42a19260 When opening new eww buffers, use buffer names based on the host name
* lisp/net/eww.el (eww-browse-url): When opening in a new
window, use a buffer name based on the host name (bug#23738).
(eww--dwim-expand-url): Refactored out into its own function
for easier reuse.
2017-01-24 23:14:31 +01:00
David Engster
aea6701839 xml: Fix parsing of default namespace with quoted names
* lisp/xml.el (xml-parse-attlist): Properly extract namespace when
  parsing is done with quoted symbol names (bug#23440).
* test/lisp/xml-tests.el (xml-parse-test--default-namespace-qnames)
  (xml-parse-test-default-namespace-qnames): Test for the above.
2017-01-24 22:56:05 +01:00
Lars Ingebrigtsen
267c98ae48 Fix rendering of some complex SVG images
* lisp/net/shr.el (shr-parse-image-data): Don't transform
SVG->DOM->XML unless we're blocking images, as this is apt to
destroy the SVG (bug#24111).
2017-01-24 22:21:45 +01:00
Lars Ingebrigtsen
3180deacf5 Clarify the last clarification
* lisp/net/shr.el (shr-width): Clarify the interaction with
`shr-use-fonts' (bug#24928).
2017-01-24 21:33:51 +01:00
Lars Ingebrigtsen
253fdf799b shr-width doc clarification
* lisp/net/shr.el (shr-width): Clarify the interaction with
`shr-use-fonts' (bug#24928).
2017-01-24 21:31:17 +01:00
Lars Ingebrigtsen
37567393a0 Allow passing in max-width/height
* lisp/net/shr.el (shr-rescale-image): Allow passing in
max-width/height (bug#25287).
2017-01-24 21:17:45 +01:00
Stefan Monnier
52a87c894d * lisp/progmodes/vhdl-mode.el: Avoid add-to-list on local vars
Require `cl' for `pushnew'.
(vhdl-scan-project-contents, vhdl-compose-wire-components)
(vhdl-uniquify): Use `pushnew' instead of `add-to-list'.
2017-01-24 11:31:11 -05:00
Noam Postavsky
201dfe3118 Fix comment detection on open parens
Characters having both open paren syntax and comment start syntax were
being detected as open parens even when they should have been part a
comment starter (Bug#24870).

* src/syntax.c (in_2char_comment_start): New function, extracted from
`scan_sexps_forward'.
(scan_sexps_forward): Add check for a 2-char comment starter before the
loop.  Inside the loop, do that check after incrementing the 'from'
character index.  Move the single char comment syntax cases into the
switch instead of special casing them before.
* test/src/syntax-tests.el (parse-partial-sexp-paren-comments):
(parse-partial-sexp-continue-over-comment-marker): New tests.
2017-01-23 19:28:30 -05:00
Alan Mackenzie
0c31ff43b6 Give , and .@ doc strings. Fixes bug #24561.
Also make *Help* links to ``' possible.  Also make usable as such doc strings
on the function-documentation property of a symbol.

* lisp/emacs-lisp/backquote.el (top-level): Give , and '@ doc strings on the
function-documentation property.  Also give these symbols a reader-construct
property.

* lisp/help-fns.el (describe-function): Allow the function-documentation
property to work.  Use princ rather than prin1 to print the function's name
when it has a reader-construct property.
(help-fns-signature): Don't insert `high-usage' for a reader-construct.
(describe-function-1): Adapt to process documentation on the
function-documentation property.  Print "a reader construct" when appropriate.

* lisp/help-mode.el (help-xref-symbol-regexp): Amend this regexp also to match
``'.
2017-01-23 19:00:49 +00:00
Mark Oteiza
03de82fe7c ; Fix previous commit
* lisp/play/dunnet.el (dun-drop): Nix assignment of nonexistent binding.
2017-01-22 10:18:42 -05:00
Paul Eggert
0a49f158f1 Improve uses of CHECK_LIST etc.
* src/eval.c (FletX): Report an error for invalid constructs like
‘(let* (a . 0))’, so that ‘let*’ is more consistent with ‘let’.
(lambda_arity): Use plain CHECK_CONS.
* src/fns.c (CHECK_LIST_END): Move from here to lisp.h.
(Fcopy_alist): Remove unnecessary CHECK_LIST call, since
concat does that for us.
(Fnthcdr, Fmember, Fmemql, Fdelete, Fnreverse):
Use CHECK_LIST_END, not CHECK_LIST_CONS.  This hoists a
runtime check out of the loop.
(Fmemq): Simplify and use CHECK_LIST_END instead of CHECK_LIST.
(Fassq, Fassoc, Frassq, Frassoc):
Simplify and use CHECK_LIST_END instead of CAR.
(assq_no_quit, assoc_no_quit): Simplify and assume proper list.
(Fnconc): Use plain CHECK_CONS, and do-while instead of while loop.
* src/fontset.c (Fnew_fontset):
* src/frame.c (Fmodify_frame_parameters):
Use CHECK_LIST_END at end, rather than CHECK_LIST at start, for a
more-complete check.
* src/gfilenotify.c (Fgfile_add_watch):
Omit unnecessary CHECK_LIST, since Fmember does that for us.
* src/lisp.h (lisp_h_CHECK_LIST_CONS, CHECK_LIST_CONS):
Remove; no longer used.
(CHECK_LIST_END): New inline function.
2017-01-22 00:25:35 -08:00
Tino Calancha
ade0652cc2 Prevent to use tabulated-list--near-rows unbound
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
Make sure 'tabulated-list--near-rows' is bound before use it (Bug#25506).
2017-01-22 14:23:45 +09:00
Juri Linkov
ad29e145b1 * lisp/simple.el (region-bounds): New function.
(region-noncontiguous-p): Use it.
http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00044.html
2017-01-22 01:18:53 +02:00
Eli Zaretskii
07d1516427 ; * etc/NEWS: Describe how to disable double-buffering. (Bug#25474) 2017-01-21 20:31:33 +02:00
Alan Mackenzie
de3336051e Fix low-level handling of (big) C macros.
In particular, ensure that a comment detected by its syntax is not a CPP
construct marked with generic comment delimiter syntax-table text
properties.

* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Set
c-macro-cache-syntactic to nil when the cached macro changes.
(c-syntactic-end-of-macro, c-no-comment-end-of-macro)
(c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
(c-state-pp-to-literal, c-parse-ps-state-to-cache)
(c-state-cache-non-literal-place, c-literal-limits, c-literal-start)
(c-determine-limit): When checking a parse syntax for a comment, check that
we're not in a CPP construct marked by syntax-table generic comment delimiter
text property.
(c-state-pp-to-literal): Change from a defsubst to a defun.

* lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Check a
parse syntax as described above under cc-engine.el.
2017-01-21 15:16:49 +00:00
Vibhav Pant
23a130ee0d * lisp/emacs-lisp/bytecomp.el: Remove unused debugging statements. 2017-01-21 11:37:20 +05:30
Noam Postavsky
6a788d2fc1 Don't wait for frame to become visible
* src/xterm.c (x_make_frame_visible): Remove code that waits for the
frame to become visible.  We have to deal with invisible frames anyway,
the loop could sometimes before the frame turned visible, and for some
window managers (e.g., XMonad, i3wm) it caused Emacs to get stuck in a
busy loop (Bug#24091).
2017-01-20 23:36:26 -05:00
Tino Calancha
e5e42cefd7 diff-hunk-kill independent of point inside headers
Make diff-apply-hunk and diff-hunk-kill independent of the point
position in a diff header (Bug#17544).
This change allows to apply hunks in order.  It also makes possible to
press M-k repeatedly to kill hunks in the order they appear in the buffer.
See discussion on #Bug25105.
* lisp/vc/diff-mode.el (diff-file-junk-re):
Move definition before it's used.
(diff--at-diff-header-p): New predicate; return non-nil when point
is inside a hunk header, a file header, or within a line
matching diff-file-junk-re.
(diff-beginning-of-hunk): Use it.
Check if the point is inside a diff header, in the middle of a hunk,
or before the first hunk.
(diff-apply-hunk): Call diff-beginning-of-hunk with non-nil arg
before apply the hunk.
(diff-hunk-kill, diff-file-kill):
Call diff-beginning-of-hunk with non-nil arg after kill the hunks.
(diff-post-command-hook): Call diff-beginning-of-hunk with non-nil argument.
2017-01-21 11:54:55 +09:00
Tino Calancha
1508b538fd ; Revert "Improve diff-mode navigation/manipulation"
This reverts commit 2c8a7e50d2.
This change causes regressions:
https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00738.html
The following related commits are reverted as well:
61c6a10e31
a283d655db
6b6abe0dba
e5ef59b87d
73349822cb

Fixes: debbugs:25105, 25400.
2017-01-21 11:54:38 +09:00
Tino Calancha
06695a02fd ; Fix a typo in ediff-merg.el
* lisp/vc/ediff-merg.el (ediff-skip-merge-regions-that-differ-from-default):
Fix a typo in docstring.
2017-01-21 00:31:40 +09:00
Eli Zaretskii
954e9e983b Improve documentation of hooks related to saving buffers
* lisp/files.el (write-file-functions, write-contents-functions)
(before-save-hook, after-save-hook): Note that these are only used
by save-buffer.

* doc/lispref/backups.texi (Auto-Saving):
* doc/lispref/files.texi (Saving Buffers): Mention that
save-related hooks are not run by auto-saving.  (Bug#25460)
2017-01-20 10:57:14 +02:00
Eli Zaretskii
9fcab85efd Improve documentation of auto-save-visited-file-name
* doc/emacs/files.texi (Auto Save Files): Mention subtle
differences between saving the buffer and auto-saving with
auto-save-visited-file-name set non-nil.  (Bug#25478)
2017-01-20 10:34:15 +02:00