summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix documentation of eieio-class-nameLars Ingebrigtsen2019-11-271-3/+1
| | | | | * doc/misc/eieio.texi (Predicates): Update the documentation of eieio-class-name to say what it really returns (bug#38365).
* Make message-allow-no-recipients 'always workLars Ingebrigtsen2019-11-271-3/+3
| | | | | * lisp/gnus/message.el (message-send): Make message-allow-no-recipients 'always work.
* Fine-grained NS modifier key settings (bug#38296)Mattias Engdegård2019-11-274-72/+241
| | | | | | | | | | | | | | | | | | | | | | | | For the ns-KEY-modifier and ns-right-KEY-modifier variables, KEY being 'control', 'command', 'alternate' and 'function', allow values on the form (:ordinary SYMBOL :function :SYMBOL :mouse SYMBOL), so that the key can be used for different modifiers (or none) in different contexts. This is particularly useful for using the macOS Option key for extended character entry while still using it as an Emacs modifier for function keys and mouse clicks. * src/nsterm.m (mod_of_kind, right_mod, nil_or_none): Helper functions. (EV_MODIFIERS2): Add KIND argument. (EV_MODIFIERS): Adapt call to EV_MODIFIERS2. (ns_get_shifted_character): Use correct event kind for modifiers. (ns-alternate-modifier, ns-right-alternate-modifier) (ns-command-modifier, ns-right-command-modifier) (ns-control-modifier, ns-right-control-modifier) (ns-function-modifier): Rewrite doc strings for new data format. (QCordinary, QCfunction, QCmouse): Define symbols. * lisp/cus-start.el: Conform to new data types. * doc/emacs/macos.texi (Mac / GNUstep Basics) (Mac / GNUstep Customization): Improved documentation. * etc/NEWS: Mention the change.
* message uses minibuffer-message in the active minibuffer (bug#17272 bug#19064)Juri Linkov2019-11-278-15/+76
| | | | | | | | | | | | | | | | | | | | | | * doc/lispref/display.texi (Displaying Messages): Explain the behavior of using minibuffer-message if the minibuffer is active. * src/editfns.c (Fmessage_in_echo_area): New function with body copied from Fmessage. (Fmessage): Call minibuffer-message in the active minibuffer, otherwise call Fmessage_in_echo_area. (message-in-echo-area): New variable. * lisp/isearch.el (isearch--momentary-message, isearch-message): * lisp/minibuffer.el (minibuffer-message, minibuffer-completion-help): Use 'message-in-echo-area' instead of 'message' where necessary. * lisp/autorevert.el (auto-revert-handler): * lisp/man.el (Man-bgproc-sentinel): * lisp/subr.el (do-after-load-evaluation): Revert recent changes that replaced 'message' with 'minibuffer-message'. This is not needed anymore since 'message' uses 'minibuffer-message' in the active minibuffer.
* Allow recursive minibuffers for yes-or-no-p and y-or-n-p (bug#17272 bug#19064)Juri Linkov2019-11-272-2/+6
| | | | | | * lisp/subr.el (y-or-n-p): Let-bind enable-recursive-minibuffers to t. * src/fns.c (Fyes_or_no_p): Specbind Qenable_recursive_minibuffers to Qt.
* * lisp/tab-bar.el (display-buffer-in-tab): New function (bug#38354)Juri Linkov2019-11-271-0/+30
|
* etags: remove some arbitrary limitsPaul Eggert2019-11-266-194/+287
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | etags had undefined behavior if input files, lines, tags, etc., had more than INT_MAX bytes. Clean up the usage of integer types to fix the overflow errors I found. * admin/merge-gnulib (GNULIB_MODULES): Add mempcpy. * lib-src/etags.c: Include inttypes.h, intprops.h. (memcpyz): New function. Use it to simplify several occurrences of memcpy followed by storing a trailing '\0'. (xnew): Use xnmalloc, to catch overflow on integer multiplication. (xrnew): Change last arg to multiplier. The type is not needed. All callers changed. (node, lineno, charno, linecharno, invalidcharno, make_tag): (pfnote, add_node, number_len, C_symtype, lbz, Makefile_targets) (readline): Use intmax_t for line numbers and character positions, instead of int or long. (linebuffer, make_tag, pfnote, total_size_of_entries, put_entry) (in_word_set, C_symtype, token, cstack, pushclass_above): (popclass_above, write_classname, consider_token, C_entries) (Ruby_functions, Makefile_targets, Lua_functions, TeX_commands) (TeX_decode_env, erlang_func, erlang_attribute, erlang_atom) (substitute, regex_tag_multiline, nocase_tail, readline_interval) (readline, savenstr, concat, etags_getcwd, relative_filename) (linebuffer_setlen): Use ptrdiff_t for object sizes, instead of int or long or unsigned or size_t. (write_classname, C_entries): Avoid sprintf, as the result could exceed INT_MAX bytes and then behavior goes haywire. (main): Use int, instead of unsigned, for argv counts. (get_language_from_filename): Use bool for boolean. (Ruby_functions): Prefer strcpy to memcpy when copying "=". (linebuffer_setlen): Use ‘if’ instead of ‘while’. (memory_full, xnmalloc, xnrealloc): New functions. (xmalloc): Use memory_full, and take a ptrdiff_t instead of a size_t. (xrealloc): Remove; no longer needed. * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate. * lib/mempcpy.c, m4/mempcpy.m4: New files, copied from Gnulib.
* Fix previous change to (next|previous)-bufferJuanma Barranquero2019-11-262-6/+8
| | | | | | * lisp/window.el (next-buffer, previous-buffer): If no other buffer is available, signal 'user-error' only when called interactively.
* Update from GnulibPaul Eggert2019-11-2612-41/+216
| | | | | | | | | | | | | | | | | | | | | This incorporates: 2019-11-24 Fix errors in C++ mode on mingw 2019-11-24 time_r: Fix for mingw (regression from 2019-11-16) 2019-11-24 sys_time: Fix errors in C++ mode on mingw 2019-11-22 intprops: INT_MULTIPLY_WRAPV speedup for GCC 8.4+ 2019-11-21 Disable many _GL_CXXALIASWARN on non-glibc 2019-11-21 Fix various errors in _GL_CXXALIAS_SYS invocations 2019-11-19 intprops: INT_MULTIPLY_WRAPV speedup for GCC 9.3+ 2019-11-18 stdint: Define [u]intptr_t correctly on 64-bit native Windows 2019-11-18 stdint: Fix value of WINT_MAX when we override wint_t 2019-11-18 stdint: Avoid "conflicting types" error on mingw 5.22 2019-11-16 time_r: Fix for mingw 2019-11-06 regex: now back in sync with glibc * lib/intprops.h, lib/regexec.c, lib/signal.in.h: * lib/stdint.in.h, lib/stdio.in.h, lib/stdlib.in.h: * lib/string.in.h, lib/sys_select.in.h, lib/sys_time.in.h: * lib/time.in.h, lib/unistd.in.h, m4/time_r.m4: Copy from Gnulib.
* * lisp/subr.el (do-after-load-evaluation): Handle batch mode as wellStefan Monnier2019-11-261-17/+17
|
* Use 127.0.0.1 in nsm-testsRobert Pluim2019-11-261-2/+2
| | | | | | | Winsock doesn't like "127.1" * test/lisp/net/nsm-tests.el (nsm-check-local-subnet-ipv4): Spell numeric localhost as "127.0.0.1" instead of "127.1".
* * test/lisp/minibuffer-tests.el (completion-table-test-quoting): New testStefan Monnier2019-11-262-0/+21
| | | | * test/data/minibuffer-test-cttq$tion: New file-name test data.
* Support ':extend' in faces defined by list of key/value pairsEli Zaretskii2019-11-261-9/+99
| | | | | | | | | * src/xfaces.c: Update and improve commentary at the beginning of the file. (face_attr_sym): New static array. (init_xfaces): Initialize 'face_attr_sym'. (merge_face_ref): Handle the :extend attribute in faces specified as lists of key/value pairs. (Bug#37774)
* Fix MS-Windows build with mingw.org's MinGWEli Zaretskii2019-11-261-1/+79
| | | | | | | | | | | | | | | | | | mingw.org's MinGW by default targets Windows 9X, so _WIN32_WINNT is set to a value that bypasses declarations in system headers we need to compile network_interface_list. Also, the code needed a workaround for Windows XP, where some functionality is missing from the GetAdaptersAddresses API. * src/w32.c (_WIN32_WINNT): Define to 0x0501, if the value is lower, temporarily while processing iphlpapi.h. (address_prefix_match): New helper function. (network_interface_list): Work around the fact that the OnLinkPrefixLength member of IP_ADAPTER_UNICAST_ADDRESS is not available when _WIN32_WINNT < 0x0600. On Windows XP use special code that calls address_prefix_match to compute the network prefix length.
* * lisp/progmodes/asm-mode.el (asm-mode-map): Obey electric-indent-modeStefan Monnier2019-11-261-4/+2
|
* (next|previous)-buffer no longer fail silently (bug#38384)Juanma Barranquero2019-11-262-2/+8
| | | | | | | * lisp/window.el (next-buffer, previous-buffer): Signal 'user-error' if there is no buffer to switch to. * etc/NEWS: Document it.
* lisp/auth-source.el: Depend on cl-lib unconditionallyJuanma Barranquero2019-11-261-1/+1
| | | | A change in 2016-04-24 introduced a run-time dependency on cl-subseq.
* lisp/auth-source-pass.el: Require cl-lib unconditionallyJuanma Barranquero2019-11-261-2/+1
| | | | | Changes in 2019-05-05 and 2019-05-14 introduced run-time dependencies on cl-maplist and cl-remove-if-not.
* 2019-11-26 Martin Rudalics <rudalics@gmx.at>Martin Rudalics2019-11-263-53/+201
| | | | | | | | | | | | * lisp/window.el (switch-to-visible-buffer): Declare obsolete. (switch-to-prev-buffer-skip): New option. (switch-to-prev-buffer, switch-to-next-buffer): Obey 'switch-to-prev-buffer-skip'. * doc/lispref/windows.texi (Window History): Remove description of 'switch-to-visible-buffer'. Describe new option 'switch-to-prev-buffer-skip' * etc/NEWS: Mention switch from 'switch-to-visible-buffer' to 'switch-to-prev-buffer-skip'.
* Fix auth-source password lookupAlex Murray2019-11-261-1/+1
| | | | | | | | * lisp/net/network-stream.el (network-stream-certificate): Ensure :port is specified as a string to 'auth-source-search' (Bug#38371). Copyright-paperwork-exempt: yes
* Extend network-interface-list to return IPv6 and network infoRobert Pluim2019-11-267-74/+423
| | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#38218 * src/process.c (Fnetwork_interface_list): Extend argument list to allow requesting full network info and/or IPv4/IPv6 info. (network_interface_list) [HAVE_GETIFADDRS]: Use getifaddrs to retrieve interface IP addresses. * src/process.h: Update prototype of network_interface_list. * src/w32.c (g_b_init_get_adapters_addresses): New init flag. (globals_of_w32): Initialize it. (GetAdaptersAddresses_Proc): New function typedef. (get_adapters_addresses): New wrapper function. (init_winsock): Load htonl and ntohl. (sys_htonl, sys_ntohl): New wrapper functions. (network_interface_list): Implement in terms of get_adapters_addresses. * nt/inc/sys/socket.h: Add sys_htonl and sys_ntohl prototypes. * etc/NEWS: Announce IPv4/IPv6 changes in network-interface-list. * doc/lispref/processes.texi (Misc Network): Document updated arglist and return values for network-interface-list.
* Fix previous message.el point-restoring fixLars Ingebrigtsen2019-11-261-9/+8
| | | | | * lisp/gnus/message.el (message-send-and-exit): Restore window point before burying buffer so we actually bury the buffer.
* Remove outdated documentationLars Ingebrigtsen2019-11-261-5/+0
| | | | | * doc/misc/eieio.texi (Predicates): Remove documentation of same-class-fast-p, which was removed some years back (bug#38362).
* Fix test failures of test/lisp/auth-source-pass-tests.elJoão Távora2019-11-251-1/+1
| | | | | | | | Failures introduced by recent "Make auth-source-pass-search understand port lists", commit 92fda5a7f92162d610d57df14372bcfcee1f01b6. * lisp/auth-source-pass.el (auth-source-pass--generate-entry-suffixes): Fix test failures.
* ; * etc/NEWS: Elaborate the entry about ':extend' face attribute.Eli Zaretskii2019-11-251-2/+9
|
* Correct small misprint in defcustom's docstringFilipp Gunbin2019-11-251-1/+1
| | | | * lisp/custom.el (defcustom): Correct misprint in docstring.
* Fix face merging when some have :extend non-nil and some are inheritedEli Zaretskii2019-11-251-55/+55
| | | | | | | | | | | * src/xfaces.c (face_inherited_attr): New function. (merge_named_face): Call 'face_inherited_attr' when testing whether a face that inherits from another fits the filtering criteria specified by ATTR_FILTER. (merge_face_vectors): Revert the changes made in this function for filtering by ATTR_FILTER, and remove that argument as well. These tests are now completely done by the caller, see 'merge_named_face'. (Bug#37774)
* Handle auth-source-search failures in open-network-streamRobert Pluim2019-11-252-5/+12
| | | | | | | | | | | | | If the user cancels the gpg decryption pop-up, auth-source-search fails *and* epa pops up an error buffer. Fix epa to allow suppressing that, and ignore errors returned from auth-source-search. * lisp/epa.el (epa-suppress-error-buffer): New defvar. Bind non-nil to stop epa popping up an error buffer. * lisp/net/network-stream.el: require epa when byte-compiling. (network-stream-certificate): ignore errors when calling auth-source-search, and suppress the epa error buffer.
* Add eassert check for bad default facePaul Eggert2019-11-231-2/+2
| | | | | | * src/xdisp.c (append_space_for_newline): Add an eassert check that default_face is not null, by calling FACE_FROM_ID instead of FACE_FROM_ID_OR_NULL. Initialize a local only if needed.
* Port gnutls.c to --enable-gcc-warnings --without-gnutlsPaul Eggert2019-11-231-41/+41
| | | | | | | * src/gnutls.c: Move the "#ifdef HAVE_GNUTLS" earlier, so that "./configure --enable-gcc-warnings --without-gnutls" does not complain about macros being defined but never used. Indent "#" directives more consistently.
* Rework previous fix to bug#38222Juanma Barranquero2019-11-231-6/+3
| | | | | * lisp/help.el (help--doc-without-fn): Remove. (describe-mode): Use help-split-fundoc instead.
* Make help-split-fundoc more flexible about what returnsJuanma Barranquero2019-11-232-16/+84
| | | | | | | | * lisp/help.el (help-split-fundoc): New arg SECTION to return only the usage or doc parts of the docstring, or both even if there is no usage. * test/lisp/help-tests.el: New file.
* Use new macro debounce-reduce to make mouse scaling of images more responsiveJuri Linkov2019-11-243-12/+67
| | | | | | | | | | * lisp/emacs-lisp/timer.el (debounce, debounce-reduce): New macros. * lisp/image.el (image-increase-size, image-decrease-size): Use funcall to call image--change-size-function. (image--change-size-function): Move code from defun of image--change-size to defvar that has the value of lambda returned from debounce-reduce. (Bug#38187)
* Default network-stream-use-client-certificates to nilRobert Pluim2019-11-234-13/+19
| | | | | | | | | | | | | | | | * lisp/net/network-stream.el (network-stream-use-client-certificates): Default to nil. (open-network-stream): Adapt description to new default of network-stream-use-client-certificates. * etc/NEWS: network-stream-use-client-certificates defaults to nil now. * doc/lispref/processes.texi (Network): Flip network-stream-use-client-certificates description. * doc/misc/auth.texi (Help for users): Mention network-stream-use-client-certificates.
* Have what-cursor-position optionally show character nameRobert Pluim2019-11-233-10/+37
| | | | | | | | | | | * lisp/simple.el (what-cursor-show-names): New defcustom, default nil. (what-cursor-position): Show character names if what-cursor-show-names is non-nil. * doc/emacs/basic.texi (Position Info): Add what-cursor-show-names description. * etc/NEWS: Announce what-cursor-show-names.
* Always expand "total" in diredChristopher Schmidt2019-11-231-2/+3
| | | | | | * lisp/files.el (insert-directory): Always replace "total" with "total used in directory", even when we don't have free disk space (bug#13191). This makes the display more consistent.
* Fix edebug instrumentation removing from advised functionsMichael Heerdegen2019-11-231-6/+22
| | | | | * lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation): Handle advised functions correctly.
* Improve indexing of modifier keysEli Zaretskii2019-11-232-0/+9
| | | | | | | * doc/emacs/commands.texi (User Input): Add index entry for the Alt key serving as Meta. * doc/emacs/custom.texi (Modifier Keys): Add index entries for Alt, Super, and Hyper modifier keys. (Bug#38315)
* Fix cursor display at EOL before extended faceEli Zaretskii2019-11-231-3/+6
| | | | | | | * src/xdisp.c (extend_face_to_end_of_line): Make sure the character position of the stretch glyph inserted to extend the face is zero, as various other parts of the display code rely on that. (Bug#38330)
* Fix and speed up en/decoding of UTF-8 stringsEli Zaretskii2019-11-233-82/+125
| | | | | | | | | | | | * src/coding.c (get_char_bytes, encode_string_utf_8) (decode_string_utf_8): Fix commentary. (encode_string_utf_8): Return the original ASCII string only if NOCOPY is non-zero. (decode_string_utf_8): Accept 2 additional arguments STR and STR_LEN, which allow to pass the input text as a C string. (make_string_from_utf8): Delegate the job to decode_string_utf_8. * src/coding.h: Update the prototype of decode_string_utf_8. * src/json.c (json_encode): Call encode_string_utf_8.
* * lisp/minibuffer.el (completion-flex-nospace): Default to t.João Távora2019-11-231-2/+2
|
* help-follow-symbol now complains if no symbol found (bug#38248)Juanma Barranquero2019-11-222-4/+9
| | | | | | | * lisp/help-mode.el (help-follow-symbol): Signal 'user-error' if there's no symbol at POS. * etc/NEWS: Document it.
* Check gnus-mailing-list-groups in turn-on-gnus-mailing-list-modeFilipp Gunbin2019-11-221-1/+3
| | | | | * lisp/gnus/gnus-ml.el (turn-on-gnus-mailing-list-mode): Check also gnus-mailing-list-groups variable.
* Make gnus-mailing-list-archive recognize httpsFilipp Gunbin2019-11-221-1/+1
| | | | | * /lisp/gnus/gnus-ml.el (gnus-mailing-list-archive): Accept https in regexp.
* Unify docstrings of Gnus summary's copy/move/crosspost article functionsFilipp Gunbin2019-11-221-7/+3
| | | | | | * lisp/gnus/gnus-sum.el (gnus-summary-copy-article) (gnus-summary-crosspost-article): Make docstrings refer to gnus-summary-move-article.
* Refix conditional step clauses in cl-loopdickmao2019-11-222-63/+101
| | | | | | | | | | | | | * lisp/emacs-lisp/cl-macs.el (cl--loop-bindings, cl--loop-symbol-macs, cl-loop): Add cl--loop-conditions, remove cl--loop-guard-cond. (cl--push-clause-loop-body): Apply clause to both cl--loop-conditions and cl--loop-body (cl--parse-loop-clause): Use cl--push-clause-loop-body. * test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-and-assignment): Use docstring. (cl-macs-loop-for-as-arith): Removed expected failure. (cl-macs-loop-conditional-step-clauses): Add some tests (bug#29799).
* Fix uses of inhibit-message in package.elEli Zaretskii2019-11-221-5/+1
| | | | | | | | * lisp/emacs-lisp/package.el (package-generate-autoloads) (package--compile, package--save-selected-packages): Don't use 'inhibit-message' to bind 'noninteractive' and 'save-silently', since 'inhibit-message' already disables all messages. (Bug#38264)
* font-lock special attributes in python-modeHong Xu2019-11-221-2/+8
| | | | | * lisp/progmodes/python.el (python-font-lock-keywords-level-2): Add special attributes (bug#38318).
* Give better error messages in image-convertLars Ingebrigtsen2019-11-221-0/+3
| | | | | | * lisp/image/image-converter.el (image-convert): Make image-convert bug out earlier on a wrong IMAGE-FORMAT value (bug#38310).
* Make auth-source-pass-search understand port listsJoão Távora2019-11-221-3/+8
| | | | | | | | | | | | | | | For cases such as a typical IMAP Gnus setup, auto-source-pass-search is passed a list of "port aliases" like (993 "imaps" "imap" "993" "143") in hopes of finding a matching ~/.password-store entry. This modification makes this library understand and unroll the port list so that, i.e. "domain:993", "domain:imaps"", "domain:imap", etc. are computed as potential suffixes. Previously a nonsensical string "domain:(993 imaps imap ...)" was returned. * lisp/auth-source-pass.el (auth-source-pass--generate-entry-suffixes): Allow PORT to be a list of ports.