1. 28 Nov, 2019 4 commits
  2. 27 Nov, 2019 10 commits
    • Juri Linkov's avatar
      Menu bar rearrangements, move Print menu items to submenu, etc. (bug#37594) · 79218117
      Juri Linkov authored
      * lisp/menu-bar.el (menu-bar-print-menu): New defvar.
      (menu-bar-file-menu): Move print entries to submenu.
      Add menu entries for tab-new, tab-close, make-frame-on-monitor.
      (menu-bar-showhide-menu): Add menu entry for global-tab-line-mode.
      Don't add toggle-tab-bar-mode-from-frame on ns where it's unavailable.
      (menu-bar-tools-menu): Add rgrep.
      * lisp/bindings.el (next-buffer, previous-buffer): Advertise bindings
      'C-x right' and 'C-x left' instead of 'XF86Forward' and 'XF86Back'.
    • Juri Linkov's avatar
      'C-1 C-x v L' asks for revision and shows its log entry with diff (bug#38044) · f655967b
      Juri Linkov authored
      * doc/emacs/maintaining.texi (VC Change Log): Explain the numeric prefix arg
      of 'C-x v L' (vc-print-root-log).
      * lisp/vc/vc-git.el (vc-git-print-log): Add command line option "-p"
      when vc-log-view-type is 'with-diff'.
      (vc-git-log-view-mode): Use long style when vc-log-view-type is 'with-diff'.
      * lisp/vc/vc.el (vc-print-log-internal): Add optional arg 'type'.
      (vc-log-internal-common): Use 'region-history-mode' when type is
      'with-diff' and backend supports 'region-history-mode'.
      (vc-print-root-log): Add optional arg 'revision'.  In interactive spec
      read a revision when current-prefix-arg is 1.  Use current-prefix-arg
      "as is" when it is a number.  Show revision in long style with diff
      when limit is 1 and revision is non-nil.
    • Juri Linkov's avatar
      * lisp/image-mode.el: Resize image on window resizing (bug#32672) · b31a966e
      Juri Linkov authored
      * lisp/image-mode.el (image--window-change): New function.
      (image--window-change-function): New variable.
      (image-mode--setup-mode): Add buffer-local hook image--window-change
      to window-size-change-functions, window-state-change-functions,
    • Eli Zaretskii's avatar
      Make some anonymous faces extend to EOL · 2435f811
      Eli Zaretskii authored
      * lisp/vc/log-edit.el (log-edit-font-lock-keywords):
      * lisp/mpc.el (mpc-separator):
      * lisp/help.el (describe-key):
      * lisp/help-fns.el (describe-symbol): Make the anonymous faces
      extend to EOL.
    • Eli Zaretskii's avatar
      ; Fix recent change in w32.c · 39b3bc00
      Eli Zaretskii authored
      * src/w32.c (network_interface_list): Correct an embarrassing
      typo and cleanup the code.
    • Mattias Engdegård's avatar
      Mouse rectangular region selection (bug#38013) · 4eb7db5d
      Mattias Engdegård authored
      Make it possible to select a rectangular region using the mouse.
      The standard binding is C-M-mouse-1.
      * lisp/mouse.el (mouse-scroll-subr): Add ADJUST argument.
      (mouse-drag-region-rectangle): New.
      * lisp/rect.el (rectangle--reset-point-crutches): New.
      (rectangle--reset-crutches): Use 'rectangle--reset-point-crutches'.
      * src/xdisp.c (remember_mouse_glyph, syms_of_xdisp):
      Add 'mouse-fine-grained-tracking'.
      * doc/lispref/commands.texi (Motion Events):
      Document 'mouse-fine-grained-tracking'.
      * doc/emacs/frames.texi (Mouse Commands):
      * doc/emacs/killing.texi (Rectangles):
      * etc/NEWS: Document rectangular selection with the mouse.
    • Andrii Kolomoiets's avatar
      Call vc-setup-buffer in vc-hg-log-incoming and vc-hg-log-outgoing · e7b4c248
      Andrii Kolomoiets authored
      * lisp/vc/vc-hg.el (vc-hg-log-incoming, vc-hg-log-outgoing):
      Call vc-setup-buffer.
    • Lars Ingebrigtsen's avatar
      Fix documentation of eieio-class-name · 99532a87
      Lars Ingebrigtsen authored
      * doc/misc/eieio.texi (Predicates): Update the documentation of
      eieio-class-name to say what it really returns (bug#38365).
    • Lars Ingebrigtsen's avatar
      Make message-allow-no-recipients 'always work · fd638805
      Lars Ingebrigtsen authored
      * lisp/gnus/message.el (message-send): Make
      message-allow-no-recipients 'always work.
    • Mattias Engdegård's avatar
      Fine-grained NS modifier key settings (bug#38296) · 215f678c
      Mattias Engdegård authored
      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.
  3. 26 Nov, 2019 20 commits
    • Juri Linkov's avatar
      message uses minibuffer-message in the active minibuffer (bug#17272 bug#19064) · aa89c84e
      Juri Linkov authored
      * 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.
    • Juri Linkov's avatar
      Allow recursive minibuffers for yes-or-no-p and y-or-n-p (bug#17272 bug#19064) · b3c0fb21
      Juri Linkov authored
      * 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.
    • Juri Linkov's avatar
    • Paul Eggert's avatar
      etags: remove some arbitrary limits · cffa5703
      Paul Eggert authored
      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)
      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)
      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.
    • Juanma Barranquero's avatar
      Fix previous change to (next|previous)-buffer · 75b41a38
      Juanma Barranquero authored
      * lisp/window.el (next-buffer, previous-buffer): If no other
      buffer is available, signal 'user-error' only when called
    • Paul Eggert's avatar
      Update from Gnulib · 1b9dbca8
      Paul Eggert authored
      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.
    • Stefan Monnier's avatar
    • Robert Pluim's avatar
      Use in nsm-tests · 95e218af
      Robert Pluim authored
      Winsock doesn't like "127.1"
      * test/lisp/net/nsm-tests.el (nsm-check-local-subnet-ipv4): Spell
      numeric localhost as "" instead of "127.1".
    • Stefan Monnier's avatar
      * test/lisp/minibuffer-tests.el (completion-table-test-quoting): New test · 384d1c47
      Stefan Monnier authored
      * test/data/minibuffer-test-cttq$tion: New file-name test data.
    • Eli Zaretskii's avatar
      Support ':extend' in faces defined by list of key/value pairs · d4515f3c
      Eli Zaretskii authored
      * 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)
    • Eli Zaretskii's avatar
      Fix MS-Windows build with mingw.org's MinGW · 094eb04c
      Eli Zaretskii authored
      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
      * 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.
    • Stefan Monnier's avatar
    • Juanma Barranquero's avatar
      (next|previous)-buffer no longer fail silently (bug#38384) · e495dbea
      Juanma Barranquero authored
      * lisp/window.el (next-buffer, previous-buffer):
      Signal 'user-error' if there is no buffer to switch to.
      * etc/NEWS: Document it.
    • Juanma Barranquero's avatar
      lisp/auth-source.el: Depend on cl-lib unconditionally · 90a7cd07
      Juanma Barranquero authored
      A change in 2016-04-24 introduced a run-time dependency on cl-subseq.
    • Juanma Barranquero's avatar
      lisp/auth-source-pass.el: Require cl-lib unconditionally · db2d6398
      Juanma Barranquero authored
      Changes in 2019-05-05 and 2019-05-14 introduced run-time dependencies
      on cl-maplist and cl-remove-if-not.
    • Martin Rudalics's avatar
      2019-11-26 Martin Rudalics <rudalics@gmx.at> · 261b060f
      Martin Rudalics authored
      * 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
      * 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
    • Alex Murray's avatar
      Fix auth-source password lookup · b006095b
      Alex Murray authored
      * 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
    • Robert Pluim's avatar
      Extend network-interface-list to return IPv6 and network info · 650a514e
      Robert Pluim authored
      * 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
      * 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.
    • Lars Ingebrigtsen's avatar
      Fix previous message.el point-restoring fix · 5c3d0cf7
      Lars Ingebrigtsen authored
      * lisp/gnus/message.el (message-send-and-exit): Restore window
      point before burying buffer so we actually bury the buffer.
    • Lars Ingebrigtsen's avatar
      Remove outdated documentation · c97c7bb2
      Lars Ingebrigtsen authored
      * doc/misc/eieio.texi (Predicates): Remove documentation of
      same-class-fast-p, which was removed some years back (bug#38362).
  4. 25 Nov, 2019 5 commits
  5. 23 Nov, 2019 1 commit
    • Paul Eggert's avatar
      Add eassert check for bad default face · 5a3e96b1
      Paul Eggert authored
      * 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.