1. 07 Oct, 2019 5 commits
  2. 06 Oct, 2019 13 commits
    • Juri Linkov's avatar
      Allow using last_tab_bar_item on no-x builds. · 785dda94
      Juri Linkov authored
      * src/frame.h (struct frame): Remove HAVE_WINDOW_SYSTEM
      around last_tab_bar_item.
      785dda94
    • Juri Linkov's avatar
      Implement tab-close-other bound to C-x 6 1 by analogy with C-x 5 1. · 01465915
      Juri Linkov authored
      * lisp/tab-bar.el (tab-close-other): New command bound to C-x 6 1.
      
      * doc/emacs/frames.texi (Tab Bars): Document it.
      01465915
    • Juri Linkov's avatar
      Use tabs in EWW (bug#37592) · d24a1977
      Juri Linkov authored
      * lisp/net/eww.el (eww-open-in-new-buffer): Call tab-new when tab-bar-mode
      is enabled.
      (eww-browse-url): Add docstring.  Call tab-new when tab-bar-mode
      is enabled.
      
      * lisp/net/shr.el (shr-map): Bind [C-down-mouse-1] to
      shr-mouse-browse-url-new-window.
      (shr-mouse-browse-url-new-window): New command.
      (shr-browse-url): Add optional arg new-window.
      
      * doc/misc/eww.texi (Basics): Mention opening tabs on M-RET.
      d24a1977
    • Stefan Monnier's avatar
      * eieio-core.el (eieio--full-class-object): New function. · 47cf2a37
      Stefan Monnier authored
      Rather than explicitly call eieio-class-un-autoload, the autoloading is
      now performed on-demand if you use eieio--full-class-object.
      
      * lisp/emacs-lisp/eieio-core.el (eieio-class-un-autoload): Remove.
      (eieio--full-class-object): New function, to replace it.
      (eieio-oref, eieio--class-precedence-list):
      * lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
      Use it instead of eieio-class-un-autoload.
      * lisp/emacs-lisp/eieio.el (eieio-class-parents, child-of-class-p):
      Load the class if needed.
      47cf2a37
    • Stefan Kangas's avatar
      Support changing font size using mouse wheel · dc8108e1
      Stefan Kangas authored
      * lisp/mwheel.el (mouse-wheel-mode): Support changing font size (text
      scaling) using mouse wheel.  (Bug#28182)
      (mouse-wheel-scroll-amount): Bind the Ctrl modifier to text scaling.
      (mwheel-installed-text-scale-bindings): New variable.
      (mouse-wheel--remove-bindings): New helper function for
      'mouse-wheel-mode'.
      
      * doc/emacs/frames.texi (Mouse Commands): Document this feature.
      * etc/NEWS: Announce it.
      dc8108e1
    • Juanma Barranquero's avatar
      Set alternate faces for some line numbers (bug#27734) · 8de2e69f
      Juanma Barranquero authored
      * lisp/faces.el (line-number-major-tick, line-number-minor-tick):
      New faces.
      * lisp/cus-start.el (display-line-numbers-major-tick)
      (display-line-numbers-minor-tick): Add customization info.
      * lisp/frame.el: Add `display-line-numbers-major-tick' and
      `display-line-numbers-minor-tick' to list of variables which
      should trigger redisplay of the current buffer.
      
      * src/xdisp.c (syms_of_xdisp) <display-line-numbers-major-tick>
      <display-line-numbers-major-tick>: Defvar new options.
      (syms_of_xdisp) <line-number-major-tick, line-number-minor-tick>:
      Defsym new faces.
      (maybe_produce_line_number): Use new faces for line numbers
      that are multiple of `display-line-numbers-major-tick' and
      `display-line-numbers-minor-tick'.
      
      * etc/NEWS (value): Announce new feature.
      * doc/emacs/display.texi (Display Custom): Describe it.  Wording by
      Robert Pluim <rpluim@gmail.com>
      8de2e69f
    • Juri Linkov's avatar
      Don't bind 'C-x 6' to '2C-mode-map' globally by default. · 29db34e3
      Juri Linkov authored
      * lisp/textmodes/two-column.el: Don't autoload global setting of
      "\C-x6" to 2C-command.
      
      * lisp/ldefs-boot.el: Update to remove setting "\C-x6" to 2C-command.
      
      * doc/emacs/commands.texi (Keys):
      * doc/emacs/text.texi (Two-Column):
      * doc/lispref/keymaps.texi (Prefix Keys):
      * doc/lispref/maps.texi (Standard Keymaps):
      Unbind 'C-x 6' from '2C-mode-map'.
      29db34e3
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/package.el (package--get-deps): Rewrite. · ef9124aa
      Stefan Monnier authored
      Avoid inf-recursion with dependency cycles.
      Remove unused `only` arg.  Prune duplicates early rather than late.
      (package--removable-packages): Simplify code accordingly.
      ef9124aa
    • Eli Zaretskii's avatar
    • Paul Eggert's avatar
      Port file-acl errno checking to non-GNU · 8ad41af3
      Paul Eggert authored
      Problem reported privately for FreeBSD 12 by Ashish Shukla.
      * src/fileio.c (Ffile_acl): Treat EINVAL etc. like ENOTSUP if
      acl_get_file fails, to port to FreeBSD 12 and other non-GNU
      platforms.
      8ad41af3
    • Eli Zaretskii's avatar
      Support mouse clicks on tab bar on TTY frames · ad76020a
      Eli Zaretskii authored
      This for now doesn't work on GPM.
      * src/xdisp.c (display_tab_bar): Make the loop over tab-bar
      items more efficient.
      (tab_bar_item_info, tool_bar_item_info): Correct data type for
      CHARPOS.
      (tty_get_tab_bar_item, tty_handle_tab_bar_click): New functions.
      (note_mouse_highlight): Handle help-echo of tab-bar tabs on
      TTY frames.
      * src/w32inevt.c (do_mouse_event): Call
      tty_handle_tab_bar_click to process mouse clicks on the tab bar.
      * src/termchar.h (tty_handle_tab_bar_click): Add prototype.
      * src/w32console.c (w32con_set_terminal_modes): Disable Quick
      Edit mode on entry, to make sure mouse events get reported to
      us.
      ad76020a
    • Paul Eggert's avatar
      Fix off-by-one bug in ISO 8601 BC years · 9d829b8b
      Paul Eggert authored
      * lisp/calendar/iso8601.el (iso8601--year-match)
      (iso8601--full-date-match, iso8601--without-day-match)
      (iso8601--week-date-match, iso8601--ordinal-date-match)
      (iso8601-parse-date):
      Don’t bother to separate the year’s sign from the year,
      as that distinction is not needed: ISO 8601 uses
      astronomical year numbering with a year zero, which
      is what the Emacs time functions use, so there’s no
      need to treat nonpositive years specially.
      (iso8601--adjust-year): Remove; no longer needed
      since callers can just use string-to-number.
      * test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years):
      Adjust test case to match fixed behavior.
      9d829b8b
    • Paul Eggert's avatar
      Improve documentation for year-zero issues · aadf7216
      Paul Eggert authored
      * doc/emacs/calendar.texi (Calendar Systems)
      * doc/lispref/os.texi (Time Conversion):
      Prefer "BC" to "B.C." since the documentation generally uses "BC".
      * doc/misc/emacs-mime.texi (time-date):
      * lisp/calendar/time-date.el (date-to-day, time-to-days):
      In the doc string, state the day origin more clearly, and more
      consistently with the rest of the documentation.
      * src/timefns.c (Fdecode_time): State the year origin in
      the doc string.
      aadf7216
  3. 05 Oct, 2019 16 commits
    • Juri Linkov's avatar
      More tab bar related key bindings. · 6b915359
      Juri Linkov authored
      * lisp/subr.el (ctl-x-6-map, ctl-x-6-prefix): Move here from tab-bar.el
      to make it available to other modes like dired for 'C-x 6 d'.
      
      * lisp/dired.el (dired-other-tab): New command bound to 'C-x 6 d'.
      
      * lisp/tab-bar.el: Bind 'C-x 6 o' to tab-next.
      
      * doc/emacs/frames.texi (Tab Bars): Describe C-x 6 prefix key bindings.
      6b915359
    • Juri Linkov's avatar
      * lisp/tab-bar.el: In tab switching allow absolute and relative args. · e3fcf1f3
      Juri Linkov authored
      * lisp/tab-bar.el (tab-bar-tab-hints): New defcustom.
      (tab-bar-make-keymap-1): Use tab-bar-tab-hints.
      (tab-bar--tab, tab-bar--current-tab, tab-bar--current-tab-index)
      (tab-bar--tab-index, tab-bar--tab-index-by-name): New internal functions.
      (tab-bar-select-tab): Use arg as absolute position of tab to select.
      (tab-bar-switch-to-next-tab, tab-bar-switch-to-prev-tab): Use arg
      as offset relative to the current tab.
      (tab-bar-switch-to-tab): New command.
      (tab-bar-new-tab): Simplify by using cl-pushnew.
      (tab-bar-close-current-tab): Remove (the current tab is closed
      by nil arg of tab-bar-close-tab).
      (tab-bar-close-tab): Use arg as absolute position of tab to close.
      (tab-bar-close-tab-by-name): New command.
      e3fcf1f3
    • Artyom Loenko's avatar
      Include new permission settings for macOS 10.15 (bug#37551) · 080e8084
      Artyom Loenko authored
      * nextstep/templates/Info.plist.in
      (NSDesktopFolderUsageDescription):
      (NSDocumentsFolderUsageDescription):
      (NSDownloadsFolderUsageDescription):
      (NSRemovableVolumesUsageDescription): Add description to enable
      setting in macOS 10.15.
      
      Copyright-paperwork-exempt: yes
      080e8084
    • Paul Smith's avatar
      Support GNU make error messages in compile mode. · e72e4990
      Paul Smith authored
      * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
      Match GNU make error messages.
      * test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data):
      Test GNU make error message matching.
      (compile-test-error-regexps): Update count of infos found.
      e72e4990
    • Lars Ingebrigtsen's avatar
      4f2de568
    • Lars Ingebrigtsen's avatar
      Remove some XEmacs compat code from esh*.el · 9f6a5984
      Lars Ingebrigtsen authored
      * lisp/eshell/esh-util.el: Remove some XEmacs compat functions.
      9f6a5984
    • Lars Ingebrigtsen's avatar
      Remove more XEmacs compat code from ezimage.el · 33dc4104
      Lars Ingebrigtsen authored
      * lisp/ezimage.el (ezimage-use-images)
      (ezimage-insert-over-text): Remove XEmacs compat code.
      33dc4104
    • Lars Ingebrigtsen's avatar
      Fix typo in frames.texi xref · 73c6192f
      Lars Ingebrigtsen authored
      * doc/emacs/frames.texi (Tab Bars): Fix typo in xref.
      73c6192f
    • Lars Ingebrigtsen's avatar
      Remove most of the XEmacs compat code from ediff*.el · 3c1635eb
      Lars Ingebrigtsen authored
      * lisp/vc/ediff-diff.el (ediff-word-1): Remove XEmacs compat code
      and declare compatibility functions for obsolete.  Adjust all callers.
      
      * lisp/vc/ediff-help.el (ediff-set-help-overlays):
      
      * lisp/vc/ediff-hook.el:
      (menu-bar-ediff-misc-menu, menu-bar-ediff-merge-menu)
      (menu-bar-ediff-menu, menu-bar-ediff-merge-menu)
      (menu-bar-epatch-menu, menu-bar-ediff-misc-menu):
      
      * lisp/vc/ediff-init.el (ediff-device-type)
      (ediff-window-display-p, ediff-has-face-support-p)
      (ediff-has-toolbar-support-p, ediff-has-gutter-support-p)
      (ediff-BAD-INFO, ediff-coding-system-for-write)
      (ediff-read-event, ediff-overlayp, ediff-make-overlay)
      (ediff-delete-overlay, ediff-color-display-p)
      (ediff-display-pixel-width, ediff-display-pixel-height)
      (ediff-region-help-echo, ediff-set-face-pixmap)
      (ediff-paint-background-regions-in-one-buffer)
      (ediff-clear-fine-diff-vector, ediff-mouse-event-p)
      (ediff-key-press-event-p, ediff-event-point, )
      (ediff-event-buffer, ediff-event-key, ediff-last-command-char)
      (ediff-frame-iconified-p, ediff-frame-char-width)
      (ediff-reset-mouse, ediff-frame-char-height)
      (ediff-overlay-start, ediff-overlay-end, ediff-overlay-buffer)
      (ediff-overlay-get, ediff-move-overlay, ediff-overlay-put)
      (ediff-abbreviate-file-name):
      
      * lisp/vc/ediff-mult.el (ediff-next-meta-item)
      (ediff-previous-meta-item)
      (ediff-replace-session-activity-marker-in-meta-buffer)
      (ediff-replace-session-status-in-meta-buffer)
      (ediff-redraw-directory-group-buffer)
      (ediff-update-markers-in-dir-meta-buffer)
      (ediff-update-session-marker-in-dir-meta-buffer)
      (ediff-redraw-registry-buffer, ediff-set-meta-overlay)
      (ediff-update-meta-buffer, ediff-get-meta-info)
      (ediff-get-meta-overlay-at-pos, )
      (ediff-get-session-number-at-pos, )
      (ediff-next-meta-overlay-start)
      (ediff-previous-meta-overlay-start, )
      (ediff-meta-mark-equal-files):
      
      * lisp/vc/ediff-util.el:
      (ediff-setup, ediff-setup-control-buffer, ediff-recenter)
      (ediff-recenter-one-window, ediff-toggle-read-only)
      (ediff-file-checked-out-p, ediff-file-checked-in-p)
      (ediff-toggle-wide-display, ediff-toggle-multiframe)
      (ediff-toggle-use-toolbar, ediff-kill-bottom-toolbar)
      (ediff-visible-region, ediff-scroll-vertically)
      (ediff-scroll-horizontally, ediff-jump-to-difference-at-point)
      (ediff-diff-to-diff, ediff-restore-diff)
      (ediff-toggle-regexp-match, ediff-really-quit)
      (ediff-cleanup-mess, ediff-highlight-diff-in-one-buffer)
      (ediff-unhighlight-diffs-totally-in-one-buffer)
      (ediff-save-buffer, ediff-make-cloned-buffer)
      (ediff-make-indirect-buffer, ediff-remove-flags-from-buffer)
      (ediff-place-flags-in-buffer1, ediff-get-diff-posn)
      (ediff-clear-diff-vector, ediff-make-bullet-proof-overlay)
      (ediff-submit-report, ediff-deactivate-mark)
      (ediff-activate-mark, ediff-profile, ediff-print-diff-vector):
      
      * lisp/vc/ediff-wind.el (ediff-control-frame-parameters)
      (ediff-get-window-by-clicking, ediff-select-lowest-window)
      (ediff-setup-windows-plain-merge)
      (ediff-setup-windows-plain-compare, ediff-setup-control-frame)
      (ediff-destroy-control-frame, ediff-make-frame-position)
      (ediff-make-wide-display, ediff-get-visible-buffer-window):
      
      * lisp/vc/ediff.el (ediff-version, ediff-documentation):
      3c1635eb
    • Eli Zaretskii's avatar
      Improve documentation of Tab bars · 9cf84544
      Eli Zaretskii authored
      * doc/emacs/frames.texi (Menu Bars, Tool Bars, Tab Bars):
      Don't start index entries from a capital letter.
      (Tab Bars): Improve wording and indexing.
      
      * etc/NEWS: Improve documentation of Tab bars.
      9cf84544
    • Eli Zaretskii's avatar
      Fix display of cursor in obscure use case on MS-Windows · 2fa9699f
      Eli Zaretskii authored
      * src/xdisp.c (redisplay_internal): Detect when the frame
      becomes garbaged inside the call to update_frame, and redraw
      the frame in that case.  (Bug#37579)
      2fa9699f
    • Philipp Stephani's avatar
    • Philipp Stephani's avatar
      7d8548a0
    • Paul Eggert's avatar
      Omit one more superfluous "-" in regexp · efd51ed0
      Paul Eggert authored
      Problem reported by Mattias Engdegård.
      * lisp/language/indian.el (gurmukhi-composable-pattern):
      Omit unnecessary "-".
      efd51ed0
    • Dmitry Gutov's avatar
      (project--vc-list-files): Make sure to expand file names · 677d6209
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project--vc-list-files): Make sure to
      expand file names.  Turns out, Grep doesn't like abbreviated ones.
      677d6209
    • Eli Zaretskii's avatar
      Fix vertical scrolling in image-mode · 9c66b099
      Eli Zaretskii authored
      * lisp/image-mode.el (image-set-window-vscroll): Interpret the
      argument VSCROLL value in pixel units.
      (image-mode-reapply-winprops): Interpret the 'vscroll'
      property value in pixel units.
      (image-next-line): Scroll the image with pixel resolution.
      (image-eob): Set the image vscroll in pixels.  (Bug#37578)
      9c66b099
  4. 04 Oct, 2019 6 commits
    • Juanma Barranquero's avatar
      Improve docstrings auto-generated by `define-minor-mode' · bbfa9995
      Juanma Barranquero authored
      * lisp/emacs-lisp/easy-mmode.el (easy-mmode--mode-docstring):
      When using `easy-mmode--arg-docstring' to auto-generate a
      docstring, refill it up to `emacs-lisp-docstring-fill-column'.
      bbfa9995
    • Eric Abrahamsen's avatar
      Don't manipulate gnus-newsrc-alist if it hasn't been initalized · 2ff16a48
      Eric Abrahamsen authored
      * lisp/gnus/gnus-group.el (gnus-group-set-info): Packages that use
      Gnus summary mode without actually booting Gnus might end up in this
      situation. See bug#36903
      2ff16a48
    • Paul Eggert's avatar
      Fix bugs found by 2019-09-29 regexp scanner · 8023715c
      Paul Eggert authored
      Problems reported by Mattias Engdegård in:
      https://lists.gnu.org/r/emacs-devel/2019-09/threads.html
      * lisp/calendar/iso8601.el (iso8601--year-match)
      (iso8601--full-date-match, iso8601--without-day-match)
      (iso8601--week-date-match, iso8601--ordinal-date-match)
      (iso8601--zone-match):
      * lisp/textmodes/rst.el (rst-re-alist-def):
      Put ‘-’ at the end of bracketed ranges, following the style
      suggestion in the Elisp manual.
      (iso8601--time-match): Use \([0-9]*\) instead of \([0-9]+\)?
      to pacify the regexp scanner.
      (iso8601-parse-time): Adjust accordingly.
      * lisp/language/burmese.el (burmese-composable-pattern):
      * lisp/language/indian.el (devanagari-composable-pattern)
      (bengali-composable-pattern, gurmukhi-composable-pattern)
      (gujarati-composable-pattern, oriya-composable-pattern)
      (telugu-composable-pattern, kannada-composable-pattern)
      (malayalam-composable-pattern):
      Prefer [ab] to [a-b] when the characters differ by 1,
      to pacify the regexp scanner.
      * lisp/language/burmese.el (burmese-composable-pattern):
      Fix missing-‘\u’ typos.
      * lisp/language/indian.el (gurmukhi-composable-pattern):
      Fix missing-‘\’ typo.
      * lisp/language/tibetan.el (tibetan-regexp):
      Quote ‘+’ in regexp to pacify the regexp scanner.  Simplify.
      * lisp/textmodes/rst.el (rst-re-alist-def): Fix ‘[]-'...]’
      typo by putting the ‘-’ at end of the bracketed expression.
      8023715c
    • Paul Eggert's avatar
      Minor style tweaks for recent tab changes · 81c7f3af
      Paul Eggert authored
      * src/dispextern.h (MR_PARTIALLY_VISIBLE_AT_TOP):
      * src/window.c (Fwindow_mode_line_height)
      (Fwindow_header_line_height, Fwindow_tab_line_height)
      (Fwindow_right_divider_width, Fwindow_bottom_divider_width)
      (Fwindow_scroll_bar_width, Fwindow_scroll_bar_height):
      (Fset_window_configuration, Fcurrent_window_configuration):
      Omit unnecessary parens.
      * src/dispextern.h (CURRENT_MODE_LINE_HEIGHT)
      (CURRENT_HEADER_LINE_HEIGHT, CURRENT_TAB_LINE_HEIGHT):
      Add parens needed to make these macros function-like.
      * src/window.c (window_resize_check):
      * src/window.h (WINDOW_TAB_BAR_P):
      * src/xdisp.c (tab_bar_item_info): Reindent.
      * src/window.c (window_wants_mode_line)
      (window_wants_header_line, window_wants_tab_line):
      Simplify (a && b ? 1 : 0) to (a && b).
      81c7f3af
    • Stefan Kangas's avatar
      Make mouse scroll show a message instead of dinging at buffer limits · be27f02b
      Stefan Kangas authored
      * lisp/mwheel.el (mwheel-scroll): Show a message instead of dinging at
      end of buffer and beginning of buffer.  This should be less intrusive,
      especially when using a trackpad.  (Bug#16196)
      be27f02b
    • Stefan Kangas's avatar
      Bind Scroll_Lock to scroll-lock-mode globally · 591c8bc7
      Stefan Kangas authored
      * lisp/bindings.el (global-map): Bind Scroll_Lock to
      scroll-lock-mode.  (Bug#6861)
      * lisp/scroll-lock.el (scroll-lock-mode): Note that the binding will
      not work if 'w32-scroll-lock-modifier' is non-nil.
      * etc/NEWS: Announce it.
      591c8bc7