Mattias Engdegård [Tue, 6 Aug 2019 11:09:20 +0000 (13:09 +0200)]
Suppress relint errors in fortran.el
* lisp/progmodes/fortran.el (fortran-indent-to-column):
Suppress relint complaints about duplicated character in skip-set;
it's intentional and harmless.
Mattias Engdegård [Sat, 3 Aug 2019 10:08:27 +0000 (12:08 +0200)]
Fix XTerm OSC 52 selection retrieval (bug#36879)
When asking XTerm for the selection via OSC 52, use ST as string
terminator in the request to get ST as terminator in the reply,
because BEL is messy to receive in many ways.
* lisp/term/xterm.el (gui-backend-get-selection):
Use ST as string terminator in request and reply.
Use a time-out when reading the reply.
Glenn Morris [Wed, 7 Aug 2019 16:24:15 +0000 (09:24 -0700)]
Tests need to be moved when source files are
* test/lisp/obsolete/cl-tests.el: Move from test/lisp/emacs-lisp.
Michael Albinus [Wed, 7 Aug 2019 14:36:00 +0000 (16:36 +0200)]
; Still working on tramp--test-file-attributes-equal-p
Michael Albinus [Wed, 7 Aug 2019 12:59:19 +0000 (14:59 +0200)]
; Instrument tramp--test-file-attributes-equal-p
Michael Albinus [Wed, 7 Aug 2019 12:12:14 +0000 (14:12 +0200)]
Continue to work on Bug#36940
* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
Make the check more precise. (Bug#36940)
Paul Eggert [Wed, 7 Aug 2019 01:39:20 +0000 (18:39 -0700)]
Re-port dump_bitset_clear to -fsanitize=undefined
* src/pdumper.c (dump_bitset_clear): Skip the memset if the
size is zero, because in that case the destination might be NULL.
This fixes a bug introduced in 2019-07-26T06:17:52Zeggert@cs.ucla.edu.
Add a comment to make the bug less likely to reoccur.
Stefan Monnier [Wed, 7 Aug 2019 00:42:59 +0000 (20:42 -0400)]
* lisp/gnus/message.el (message-sendmail-f-is-evil): Revert recent change
(bug#36937)
Michael Albinus [Tue, 6 Aug 2019 19:47:57 +0000 (21:47 +0200)]
Fix Bug#36940
* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
Make the check more precise. (Bug#36940)
(tramp-test19-directory-files-and-attributes): Move some checks to
`tramp--test-file-attributes-equal-p'.
Alan Mackenzie [Tue, 6 Aug 2019 16:49:29 +0000 (16:49 +0000)]
C++ Mode: Prevent End of statement being found after {} in "count << vec{} <<"
* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): Check for
operators which cannot start a statement, which may follow a closing brace.
Don't recognise an end of statement in such a case.
* lisp/progmodes/cc-langs.el (c-operator-re, c-bin-tern-operators)
(c-unary-operators, c-non-after-{}-operators, c-non-after-{}-ops-re): New lang
consts and vars.
Eli Zaretskii [Tue, 6 Aug 2019 14:53:03 +0000 (17:53 +0300)]
Fix minor compilation problems on MS-Windows
* src/w32fns.c (Fdefault_printer_name): Fix size of local
buffer.
* src/image.c [WINDOWSNT]: Test __MINGW_MAJOR_VERSION as well
to shut up compiler warnings.
Mattias Engdegård [Tue, 30 Jul 2019 15:33:19 +0000 (17:33 +0200)]
Fix various Calc date conversions (bug#36822)
* lisp/calc/calc-forms.el (math-absolute-from-gregorian-dt):
Rewrite in a way that I understand, and that actually seems to work.
(math-absolute-from-julian-dt): Use Julian, not Gregorian, leap year
rules for counting days within a year.
(math-julian-date-beginning, math-julian-date-beginning-int):
Change constants to be consistent with their doc strings and the code:
use Rata Die epoch at Dec 31, 1 BC Gregorian proleptic, not Julian.
* doc/misc/calc.texi (Date Forms): Correct difference between Julian
Day and Rata Die.
* test/lisp/calc/calc-tests.el (calc-test-calendar): New test.
Mattias Engdegård [Wed, 31 Jul 2019 17:45:06 +0000 (19:45 +0200)]
Add conditional operator xor to subr.el
Suggested by Oleh Krehel and implemented by Basil Contovounesios in
the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00547.html
* lisp/array.el (xor): Move unused function from here...
* lisp/subr.el: ...to here, and improve.
* lisp/gnus/spam.el (spam-xor):
* lisp/play/5x5.el (5x5-xor):
* lisp/proced.el (proced-xor):
* lisp/progmodes/idlwave.el (idlwave-xor):
* lisp/vc/diff-mode.el (diff-xor): Define as obsolete aliases of,
and replace all uses with, xor.
* lisp/jsonrpc.el: Remove unused dependency on array.el.
* lisp/org/org.el (org-xor): Move from here...
* lisp/org/org-compat.el (org-xor): ...to here, as a compatibility
shim for xor.
* lisp/progmodes/idlw-shell.el (idlwave-shell-enable-all-bp):
* lisp/simple.el (exchange-point-and-mark):
* lisp/windmove.el (windmove-display-in-direction): Use xor.
* lisp/strokes.el (strokes-xor): Remove commented-out xor
implementation.
* doc/lispref/control.texi (Control Structures): Extend menu entry
for new combining condition.
(Combining Conditions):
* etc/NEWS (Lisp Changes): Document xor.
* test/lisp/subr-tests.el (subr-test-xor): New test.
Stefan Monnier [Tue, 6 Aug 2019 08:01:49 +0000 (04:01 -0400)]
Move cl.el to lisp/obsolete
* lisp/emacs-lisp/cl.el: Move from here...
* lisp/obsolete/cl.el: ...to here.
* lisp/subr.el (do-after-load-evaluation): Use "deprecated" in the
message when loading packages from lisp/obsolete.
Stefan Monnier [Tue, 6 Aug 2019 07:58:50 +0000 (03:58 -0400)]
* lisp/mail/rfc2047.el (rfc2047-encodable-p): Don't require `message`.
Use bound-and-true-p rather than requiring `message` to get
message-posting-charset (since it defaults to nil anyway).
Stefan Monnier [Tue, 6 Aug 2019 07:56:51 +0000 (03:56 -0400)]
* lisp/mh-e: Use cl-lib
Also, use underscore prefixes and defvar in preparation for lexical binding
* lisp/mh-e/mh-acros.el: Require cl-lib instead of cl.
Rename all cl.el uses by adding `cl-` prefix.
(mh-require-cl): Remove. Not needed any more. Remove all calls.
(mh-defstruct): Remove. Replace all uses with cl-defstruct.
(mh-dlet*): New macro.
* lisp/mh-e/mh-comp.el (mh-user-agent-compose): Fold all ignored
optional args into the &rest arg.
* lisp/mh-e/mh-e.el: Require cl-lib instead of using mh-require-cl.
(mh-variants): Don't add-to-list on a local var.
* lisp/mh-e/mh-folder.el (mh-restore-desktop-buffer): Use shorter arg
names that don't collide with global vars.
* lisp/mh-e/mh-mime.el (mh-insert-mime-button):
(mh-insert-mime-security-button): Use mh-dlet*.
* lisp/mh-e/mh-search.el (mh-swish-next-result, mh-grep-next-result)
(mh-namazu-next-result): Use `or`.
* lisp/mh-e/mh-thread.el (mh-thread-generate)
(mh-thread-prune-containers): Use underscore rather than declare+ignore.
* lisp/mh-e/mh-tool-bar.el (mh-tool-bar-define): Use mh-dlet*.
(mh-tool-bar-define): Prefer the more precise \`...\' regexp ops.
Prefer Elisp's `eval-and-compile` over `cl-eval-when`.
* lisp/mh-e/mh-xface.el (mh-picon-get-image): Don't use
mh-funcall-if-exists for ietf-drums-parse-address.
Avoid the use of `cl-return` and hence use plain `defun`.
Replace some `cl-loop` with `dolist`.
Paul Eggert [Tue, 6 Aug 2019 00:38:53 +0000 (17:38 -0700)]
decode-time now returns subsec too
The list that decode-time returns now contains an extra
trailing component that counts the subseconds part of the
original timestamp (Bug#36549).
This builds on a suggestion by Lars Ingebrigtsen in:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00734.html
* doc/lispref/os.texi (Time Conversion):
* doc/misc/emacs-mime.texi (time-date):
* etc/NEWS: Document this.
* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
* lisp/calendar/iso8601.el (iso8601-parse)
(iso8601-parse-time, iso8601-parse-duration)
(iso8601--decoded-time):
* lisp/calendar/parse-time.el (parse-time-string):
* lisp/calendar/time-date.el (make-decoded-time)
(decoded-time-set-defaults):
* lisp/org/org.el (org-fix-decoded-time)
(org-parse-time-string):
* src/timefns.c (Fdecode_time):
Generate subsec member for decoded time.
* lisp/calendar/time-date.el (decoded-time-add)
Add the decoded subsec too.
* lisp/simple.el (decoded-time): New subsec member.
* src/data.c (Frem): Simplify zero-check to match that of new Fmod.
(integer_mod): New function, with most of the guts of the old Fmod.
Remove redundant zero-check.
(Fmod): Use it.
* src/timefns.c (Fencode_time): Handle new subsec member
or (with the obsolescent calling convention) subsec arg.
It defaults to 0.
* test/lisp/calendar/icalendar-tests.el:
(icalendar--decode-isodatetime):
* test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years)
(test-iso8601-date-dates, test-iso8601-date-obsolete)
(test-iso8601-date-weeks, test-iso8601-date-ordinals)
(test-iso8601-time, test-iso8601-combined)
(test-iso8601-duration, test-iso8601-intervals)
(standard-test-dates, standard-test-time-of-day-fractions)
(standard-test-time-of-day-beginning-of-day)
(standard-test-time-of-day-utc)
(standard-test-time-of-day-zone)
(standard-test-date-and-time-of-day, standard-test-interval):
* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
* test/src/timefns-tests.el (format-time-string-with-zone)
(encode-time-dst-numeric-zone):
Adjust to match new behavior.
Paul Eggert [Tue, 6 Aug 2019 00:38:52 +0000 (17:38 -0700)]
New function time-convert
This replaces the awkward reuse of encode-time to both convert
calendrical timestamps to Lisp timestamps, and to convert Lisp
timestamps to other forms. Now, encode-time does just the
former and the new function does just the latter.
The new function builds on a suggestion by Lars Ingebrigtsen in:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00801.html
and refined by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2019-07/msg00803.html
* doc/lispref/os.texi (Time of Day, Time Conversion):
* doc/misc/emacs-mime.texi (time-date):
* etc/NEWS: Update documentation.
* lisp/calendar/cal-dst.el (calendar-next-time-zone-transition):
* lisp/calendar/time-date.el (seconds-to-time, days-to-time):
* lisp/calendar/timeclock.el (timeclock-seconds-to-time):
* lisp/cedet/ede/detect.el (ede-detect-qtest):
* lisp/completion.el (cmpl-hours-since-origin):
* lisp/ecomplete.el (ecomplete-add-item):
* lisp/emacs-lisp/cl-extra.el (cl--random-time):
* lisp/emacs-lisp/timer.el (timer--time-setter)
(timer-next-integral-multiple-of-time):
* lisp/find-lisp.el (find-lisp-format-time):
* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
* lisp/gnus/gnus-group.el (gnus-group-set-timestamp):
* lisp/gnus/gnus-icalendar.el (gnus-icalendar-show-org-agenda):
* lisp/gnus/nnrss.el (nnrss-normalize-date):
* lisp/gnus/nnspool.el (nnspool-request-newgroups):
* lisp/net/ntlm.el (ntlm-compute-timestamp):
* lisp/net/pop3.el (pop3-uidl-dele):
* lisp/obsolete/vc-arch.el (vc-arch-add-tagline):
* lisp/org/org-clock.el (org-clock-get-clocked-time)
(org-clock-resolve, org-resolve-clocks, org-clock-in)
(org-clock-out, org-clock-sum):
* lisp/org/org-id.el (org-id-uuid, org-id-time-to-b36):
* lisp/org/ox-publish.el (org-publish-cache-ctime-of-src):
* lisp/proced.el (proced-format-time):
* lisp/progmodes/cc-cmds.el (c-progress-init)
(c-progress-update):
* lisp/progmodes/cperl-mode.el (cperl-time-fontification):
* lisp/progmodes/flymake.el (flymake--schedule-timer-maybe):
* lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
(vhdl-fix-case-region-1):
* lisp/tar-mode.el (tar-octal-time):
* lisp/time.el (emacs-uptime):
* lisp/url/url-auth.el (url-digest-auth-make-cnonce):
* lisp/url/url-util.el (url-lazy-message):
* lisp/vc/vc-cvs.el (vc-cvs-parse-entry):
* lisp/vc/vc-hg.el (vc-hg-state-fast):
* lisp/xt-mouse.el (xterm-mouse-event):
* test/lisp/emacs-lisp/timer-tests.el:
(timer-next-integral-multiple-of-time-2):
Use time-convert, not encode-time.
* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
Don’t use now-removed FORM argument for encode-time.
It wasn’t crucial anyway.
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add time-convert.
* lisp/emacs-lisp/elint.el (elint-unknown-builtin-args):
Update encode-time signature to match current arg set.
* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
Use timer-convert with t rather than doing it by hand.
* src/timefns.c (time_hz_ticks, time_form_stamp, lisp_time_form_stamp):
Remove; no longer needed.
(decode_lisp_time): Rturn the form instead of having a *PFORM arg.
All uses changed.
(time_arith): Just return TICKS if HZ is 1.
(Fencode_time): Remove argument FORM. All callers changed.
Do not attempt to encode time values; just encode
decoded (calendrical) times.
Unless CURRENT_TIME_LIST, just return VALUE since HZ is 1.
(Ftime_convert): New function, which does the time value
conversion that bleeding-edge encode-time formerly did.
Return TIME if it is easy to see that it is already
of the correct form.
(Fcurrent_time): Mention in doc that the form is planned to change.
* test/src/timefns-tests.el (decode-then-encode-time):
Don’t use (encode-time nil).
Paul Eggert [Tue, 6 Aug 2019 00:37:47 +0000 (17:37 -0700)]
Fix minor Org timestamp inefficiencies
* lisp/org/org-id.el (org-id-time-to-b36):
Remove unnecessary ‘or’.
* lisp/org/org.el (org-parse-time-string):
Remove unnecessary ‘encode-time’.
Juri Linkov [Mon, 5 Aug 2019 21:38:58 +0000 (00:38 +0300)]
* lisp/cus-start.el: Add :safe to display-fill-column-indicator (bug#36861)
(display-fill-column-indicator)
(display-fill-column-indicator-column)
(display-fill-column-indicator-character): Add :safe predicates.
Juri Linkov [Mon, 5 Aug 2019 21:10:37 +0000 (00:10 +0300)]
* lisp/frameset.el (frameset--minibufferless-last-p): Fix pcase-let.
This makes frameset sorting stable. (Bug#36894)
Juri Linkov [Mon, 5 Aug 2019 21:04:07 +0000 (00:04 +0300)]
* lisp/dired-x.el (dired-guess-shell-alist-default): Use git when possible.
Check for Git backend and provide "git apply" for patch files (bug#36895).
Juri Linkov [Mon, 5 Aug 2019 20:56:36 +0000 (23:56 +0300)]
* lisp/dired.el (dired-special): Rename face from dired-socket (bug#24547).
(dired-re-special): Rename from dired-re-socket.
Juri Linkov [Mon, 5 Aug 2019 20:37:32 +0000 (23:37 +0300)]
* lisp/isearch.el (isearch-define-mode-toggle): Ensure isearch-mode is active.
Call 'isearch-mode' when it's nil. (Bug#36871)
Eli Zaretskii [Mon, 5 Aug 2019 16:15:08 +0000 (19:15 +0300)]
Fix compilation with CHECK_STRUCTS
* src/pdumper.c (dump_hash_table): Update hash of
HASH_Lisp_Hash_Table. (Bug#36929)
Lars Ingebrigtsen [Mon, 5 Aug 2019 13:49:28 +0000 (15:49 +0200)]
Revert "Make `view-lossage' output of chars read from `read-char' more logical"
This reverts commit
1abf76877847226daa5ab7e07000ac1d4aba3478.
This change apparently led to problems with kmacro.
Michael Albinus [Mon, 5 Aug 2019 11:09:26 +0000 (13:09 +0200)]
Improve Tramp's caching
* lisp/net/tramp.el (tramp-handle-add-name-to-file)
(tramp-handle-write-region):
* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory)
(tramp-adb-handle-delete-directory)
(tramp-adb-handle-delete-file, tramp-adb-handle-write-region)
(tramp-adb-handle-set-file-modes)
(tramp-adb-handle-set-file-times, tramp-adb-handle-copy-file)
(tramp-adb-handle-rename-file):
* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
(tramp-gvfs-handle-delete-directory)
(tramp-gvfs-handle-delete-file)
(tramp-gvfs-handle-make-directory)
(tramp-gvfs-handle-set-file-modes)
(tramp-gvfs-handle-set-file-times, tramp-gvfs-set-file-uid-gid):
* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file)
(tramp-rclone-handle-delete-directory)
(tramp-rclone-handle-delete-file):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
(tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
(tramp-sh-handle-add-name-to-file)
(tramp-sh-handle-copy-directory, tramp-do-copy-or-rename-file)
(tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
(tramp-sh-handle-write-region):
* lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
(tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
(tramp-smb-handle-delete-directory)
(tramp-smb-handle-delete-file)
(tramp-smb-handle-make-directory-internal)
(tramp-smb-handle-make-symbolic-link)
(tramp-smb-handle-rename-file, tramp-smb-handle-write-region):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-add-name-to-file)
(tramp-sudoedit-do-copy-or-rename-file)
(tramp-sudoedit-handle-delete-directory)
(tramp-sudoedit-handle-delete-file)
(tramp-sudoedit-handle-set-file-modes)
(tramp-sudoedit-handle-set-file-times)
(tramp-sudoedit-handle-make-symbolic-link): Do not flush all file
properties of upper directory.
* lisp/net/tramp-cache.el (tramp-flush-file-upper-properties):
New defun.
(tramp-flush-file-properties, tramp-flush-directory-properties):
Use it.
* test/lisp/net/tramp-tests.el (tramp-time-diff): Declare.
(tramp--test-file-attributes-equal-p): Handle also modification
and status change time.
Lars Ingebrigtsen [Mon, 5 Aug 2019 10:43:09 +0000 (12:43 +0200)]
Make `view-lossage' output of chars read from `read-char' more logical
* lisp/help.el (view-lossage): Use the new data format to output
data from `read-char' and the like in a more understandable
fashion (bug#21867).
* src/keyboard.c (command_loop_1): Record (in recent_keys) the end
of commands.
(Frecent_keys): Don't include `end-of-command' in non-command outputs.
(syms_of_keyboard): Define `end-of-command'.
Lars Ingebrigtsen [Mon, 5 Aug 2019 10:18:40 +0000 (12:18 +0200)]
save-some-buffers-default-predicate doc clarification
* lisp/files.el (save-some-buffers-default-predicate): Clarify
calling convention.
Mattias Engdegård [Mon, 5 Aug 2019 08:28:17 +0000 (10:28 +0200)]
; * doc/lispref/searching.texi: Typo fix
Martin Rudalics [Mon, 5 Aug 2019 08:23:01 +0000 (10:23 +0200)]
Fix doc-strings of 'display-buffer-*' functions (Bug#19461)
* lisp/window.el (display-buffer-in-atom-window)
(display-buffer-in-side-window, display-buffer-record-window)
(display-buffer-use-some-frame, display-buffer-same-window)
(display-buffer-reuse-window, display-buffer-pop-up-frame)
(display-buffer-pop-up-window, display-buffer-in-child-frame)
(display-buffer-in-direction, display-buffer-below-selected)
(display-buffer-at-bottom, display-buffer-in-previous-window)
(display-buffer-use-some-window)
(display-buffer--maybe-pop-up-frame-or-window)
(display-buffer--maybe-pop-up-frame): Fix doc-strings
(Bug#19461).
Paul Eggert [Sun, 4 Aug 2019 22:54:17 +0000 (15:54 -0700)]
Fix one more 2019-08-04 regex lint
Problem clarified by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2019-08/msg00087.html
* lisp/isearch.el (isearch-symbol-regexp):
Remove \s@ from regexp as it cannot match.
Basil L. Contovounesios [Thu, 11 Jul 2019 14:11:35 +0000 (15:11 +0100)]
Support reverting Apropos buffers (bug#36588)
* lisp/apropos.el (apropos--current): New variable akin to
help-xref-stack-item storing information for revert-buffer.
(apropos--revert-buffer): New function.
(apropos-mode): Use it as revert-buffer-function.
(apropos-command, apropos, apropos-library, apropos-value)
(apropos-local-value, apropos-documentation): Set apropos--current
in low-level commands, i.e., those which do not call other commands.
Paul Eggert [Sun, 4 Aug 2019 18:39:03 +0000 (11:39 -0700)]
Fix 2019-08-04 regex lint
Problem reported by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2019-08/msg00085.html
* lisp/calendar/diary-lib.el (diary-glob-file-regexp-prefix):
Omit unnecessary ‘\’ before ordinary char.
* lisp/cedet/inversion.el (inversion-decoders):
* lisp/org/ob-haskell.el (org-babel-haskell-export-to-lhs):
Omit unnecessary ‘?’ after nullable pattern.
* lisp/org/org-capture.el (org-capture-fill-template):
Match upper-case as well as lower-case letters.
* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings)
(c-after-change-mark-abnormal-strings):
Simplify ‘.|\r’ to ‘.’.
* lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
Put ‘-’ at end of bracket expression.
Paul Eggert [Sun, 4 Aug 2019 17:04:18 +0000 (10:04 -0700)]
Tweak time arithmetic performance
* src/timefns.c (lispint_arith): New function, which
should be a bit faster if B is 0, or if A is a bignum
and B a fixnum with absolute value in unsigned long range.
(time_arith): Use it.
Paul Eggert [Sun, 4 Aug 2019 16:57:27 +0000 (09:57 -0700)]
Improve time function doc
* doc/misc/emacs-mime.texi (time-date): Don’t give
parse-iso8601-time-string in the example, as the function is
not autoloaded.
* lisp/gnus/nndiary.el (nndiary-compute-reminders):
No need to call encode-time or use floating point here.
Eli Zaretskii [Sun, 4 Aug 2019 16:38:08 +0000 (19:38 +0300)]
Fix the MS-Windows build broken by recent changes
* src/inotify.c (syms_of_inotify) <Qignored>: Don't define here...
* src/coding.c (syms_of_coding) <Qignored>: ...define it here,
because it is needed also on platforms that don't compile
inotify.c.
Paul Eggert [Sun, 4 Aug 2019 16:18:46 +0000 (09:18 -0700)]
Minor fix to recent coding.c change
* src/coding.c (get_buffer_gap_address):
Don’t assume string or buffer length fits in int.
Also, improve wording of comments.
Michael Albinus [Sun, 4 Aug 2019 14:43:25 +0000 (16:43 +0200)]
* .dir-locals.el: Enable `bug-reference-mode' for further major modes.
Lars Ingebrigtsen [Sun, 4 Aug 2019 12:50:07 +0000 (14:50 +0200)]
Capitalise a couple of node names
* doc/lispref/functions.texi (Advising Functions): Capitalise node
names (bug#17717).
(Advice Combinators, Porting Old Advice): Capitalise.
Michael Heerdegen [Sun, 4 Aug 2019 12:43:43 +0000 (14:43 +0200)]
Clarify macroexp-let* doc string
* lisp/emacs-lisp/macroexp.el (macroexp-let2*): Clarify doc
string (bug#19371).
K. Handa [Sun, 4 Aug 2019 12:15:27 +0000 (21:15 +0900)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
K. Handa [Sun, 4 Aug 2019 12:14:26 +0000 (21:14 +0900)]
Add Unicode-safe UTF-8 converter
* src/coding.c (encode_string_utf_8, decode_string_utf_8): New functions.
* src/coding.h (encode_string_utf_8, decode_string_utf_8): Extern them.
Lars Ingebrigtsen [Sun, 4 Aug 2019 12:07:06 +0000 (14:07 +0200)]
Core Advising Primitives `interactive' clarification
* doc/lispref/functions.texi (Core Advising Primitives): Clarify
when the interactive spec is a function (bug#17871).
Michael Albinus [Sun, 4 Aug 2019 10:47:43 +0000 (12:47 +0200)]
Implement set-file-* functions for tramp-gvfs.el
* lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping):
Add "gvfs-set-attribute".
(tramp-gvfs-file-name-handler-alist):
Add `tramp-gvfs-handle-set-file-modes',
`tramp-gvfs-handle-set-file-times' and
`tramp-gvfs-handle-set-file-uid-gid'.
(tramp-gvfs-handle-set-file-modes)
(tramp-gvfs-handle-set-file-times)
(tramp-sh-handle-set-file-uid-gid): New defuns.
* lisp/net/tramp.el (tramp-handle-write-region): Set file modes.
* test/lisp/net/tramp-tests.el (tramp-test20-file-modes)
(tramp-test22-file-times): Do not skip for tramp-gvfs.el.
Martin Rudalics [Sun, 4 Aug 2019 07:21:18 +0000 (09:21 +0200)]
Fix two mouse drag and drop issues (Bug#28620, Bug#36269)
Allow 'mouse-drag-and-drop-region' to move/copy text from one
frame to another (Bug#28620). Prevent mouse avoidance mode from
interfering with 'mouse-drag-and-drop-region' (Bug#36269).
* lisp/avoid.el (mouse-avoidance-ignore-p): Suspend avoidance
when 'track-mouse' equals 'dropping'.
* lisp/mouse.el (mouse-drag-and-drop-region): Set
'track-mouse' to 'dropping'. Continue reading events also
when switching frames.
* src/keyboard.c (Finternal_track_mouse): Rename from
Ftrack_mouse.
(some_mouse_moved): Return NULL also when mouse is not tracked.
(show_help_echo, readable_events, kbd_buffer_get_event): Don't
check whether mouse is tracked, some_mouse_moved does it now.
(track_mouse): Rename variable from do_mouse_tracking. Adjust
all users. In doc-string explain meanings of special values
'dragging' and 'dropping'.
* src/nsterm.m (ns_mouse_position): During drag and drop
consider last mouse frame only when there is no currently
focused frame.
* src/w32fns.c (w32_wnd_proc): Don't set mouse capture during a
drag and drop operation.
* src/w32term.c (w32_mouse_position): Track frame under mouse
during mouse drag and drop.
(mouse_or_wdesc_frame): New function.
(w32_read_socket): Call mouse_or_wdesc_frame on mouse events.
* src/xdisp.c (define_frame_cursor1): Don't change mouse cursor
shape during mouse drag and drop.
(syms_of_xdisp): New symbol Qdropping.
* src/xterm.c (XTmouse_position): Allow mouse drag and drop move
to another frame
(mouse_or_wdesc_frame): New function.
(handle_one_xevent): Use mouse_or_wdesc_frame for mouse events.
Noam Postavsky [Fri, 5 Jul 2019 00:32:39 +0000 (20:32 -0400)]
Improved ChangeLog generation for vc log (Bug#16301)
* lisp/vc/diff-mode.el (diff-find-source-location): Fix docstring.
* lisp/vc/add-log.el (change-log-unindented-file-names-re)
(change-log-read-entries, change-log-read-defuns)
(change-log-insert-entries):
* lisp/vc/diff-mode.el (diff-add-log-current-defuns):
* lisp/vc/log-edit.el (log-edit--insert-filled-defuns)
(log-edit-fill-entry): New functions.
(log-edit-mode): Set `log-edit-fill-entry' as
`fill-paragraph-function'.
(log-edit-generate-changelog-from-diff): New command.
(log-edit-mode-map): Bind it to C-c C-w.
* doc/emacs/maintaining.texi (Types of Log File, Log Buffer):
* CONTRIBUTE: Document it.
* etc/NEWS: Announce it.
* test/lisp/vc/log-edit-tests.el (log-edit-fill-entry)
(log-edit-fill-entry-joining): New tests.
Eric Abrahamsen [Sun, 4 Aug 2019 00:01:52 +0000 (17:01 -0700)]
Fix Gnus group name reference in gnus-mark-xrefs-as-read
* lisp/gnus/gnus-sum.el (gnus-mark-xrefs-as-read): There's already a
local binding for "group", don't need another "name". This was left
over from the obarray-to-hashtable change.
Eric Abrahamsen [Fri, 7 Jun 2019 03:43:27 +0000 (20:43 -0700)]
Temporarily preserve encoded Gnus group names in Gnus files
Non-ascii Gnus groups should be written to files in their encoded
version until we're ready to bump Gnus' version and add an upgrade
routine.
* lisp/gnus/gnus-start.el (gnus-gnus-to-quick-newsrc-format):
* lisp/gnus/gnus-agent.el (gnus-category-read):
(gnus-category-write): Handle non-ascii group names appropriately.
* lisp/gnus/gnus-registry.el (gnus-registry--munge-group-names): New
function to encode/decode group names.
(gnus-registry-fixup-registry):
(gnus-registry-save): Use function.
Eric Abrahamsen [Fri, 16 Nov 2018 20:53:56 +0000 (12:53 -0800)]
Remove Gnus group name encoding/decoding
This completes the process started in
c1b63af445. Gnus group names are
now fully decoded inside the Gnus system.
* lisp/gnus/gnus-agent.el (gnus-agent-file-coding-system): Change
default to utf-8-emacs.
(gnus-agent-decoded-group-names, gnus-agent-decoded-group-name):
Remove variable and function. Remove all usage in this file.
* lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-names,
gnus-cache-unified-group-names, gnus-cache-decoded-group-name):
Remove these variables and function. Remove all usage in this file.
* lisp/gnus/gnus-group.el (gnus-tmp-decoded-group): Remove this
variable, gnus-tmp-group is now decoded.
(gnus-group-completing-read): Don't encode or decode group names
here.
(gnus-group-make-group): Remove ENCODED argument.
* lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Decode group
names here.
* lisp/gnus/gnus-start.el (gnus-make-hashtable-from-newsrc-alist):
check for encoded group names and decode.
(gnus-active-to-gnus-format): Make sure incoming group names are
decoded.
(gnus-read-newsrc-el-file): Check for encoded group names in
gnus-topic-alist.
* lisp/gnus/nnagent.el: Don't use a unibyte buffer.
* lisp/gnus/nnheader.el (nnheader-file-coding-system): Switch default
from 'raw-text to 'undecided, on the assumption that 'undecided will
probably write 'utf-8-emacs unless the user has arranged things
otherwise.
* lisp/gnus/nnimap.el (nnimap-decode-gnus-group,
nnimap-encode-gnus-group): Remove functions and their use.
* lisp/gnus/nnmail.el (nnmail-parse-active): Remove encoding.
(nnmail-active-file-coding-system): Default to 'utf-8-emacs instead
of 'raw-text.
(nnmail-group-names-not-encoded-p): Obsolete this variable; stop
using it.
* lisp/gnus/gnus-art.el:
* lisp/gnus/gnus-cus.el:
* lisp/gnus/gnus-msg.el:
* lisp/gnus/gnus-start.el:
* lisp/gnus/gnus-sum.el:
* lisp/gnus/gnus.el:
* lisp/gnus/nnml.el:
* lisp/gnus/message.el:
* lisp/gnus/nnrss.el: Stop using gnus-group-decoded-name in all these
files.
Eric Abrahamsen [Sat, 3 Aug 2019 21:43:44 +0000 (14:43 -0700)]
Fix ordering of Gnus groups after yanking
* lisp/gnus/gnus-start.el (gnus-group-change-level): Fix docstring to
note that the inserted group is inserted *before* the PREVIOUS
group. Fix indexing -- shouldn't have been adding one to the index.
Paul Eggert [Sat, 3 Aug 2019 21:12:29 +0000 (14:12 -0700)]
Remove stale .pdmp files with ‘make clean’
Problem reported by Sven Joachim (Bug#36907).
* admin/make-emacs: Simplify, now that clean does versionclean.
* src/Makefile.in ($(etc)/DOC, versionclean, extraclean):
Don’t ignore rm -f failures.
(versionclean): Also remove emacs-*.*.*[0-9].pdmp and ../etc/DOC*.
(clean): Depend on versionclean and simplify.
Glenn Morris [Sat, 3 Aug 2019 20:54:25 +0000 (13:54 -0700)]
* doc/lispref/display.texi (SVG Images): Remove menu.
Not needed since SVG Path Commands was changed to not be a node.
Lars Ingebrigtsen [Sat, 3 Aug 2019 20:35:17 +0000 (22:35 +0200)]
Clarify hi-lock-file-patterns-prefix doc string
* lisp/hi-lock.el (hi-lock-file-patterns-prefix): Clarify doc
string (bug#17993).
Lars Ingebrigtsen [Sat, 3 Aug 2019 20:23:47 +0000 (22:23 +0200)]
Mention `themed-value' in Variable Definitions node
* doc/lispref/customize.texi (Variable Definitions): Mention
`themed-value' (bug#17996).
Oleh Krehel [Sat, 3 Aug 2019 20:00:40 +0000 (22:00 +0200)]
calc mode line touch up
* lisp/calc/calc.el (calc-set-mode-line): Don't put excessive
white space in mode line (bug#18079).
Paul Eggert [Sat, 3 Aug 2019 19:45:19 +0000 (12:45 -0700)]
Fix rare undefined behaviors in replace-match
* src/search.c (Freplace_match): Simplify by caching search_regs
components. Fix sanity check for out-of-range subscripts;
it incorrectly allowed negative subscripts, subscripts
equal to search_regs.num_regs, and it had undefined
behavior for subscripts outside ptrdiff_t range.
Improve wording of newly-introduced replace-match diagnostic.
Rework use of opoint, to avoid setting point to an out-of-range value
in rare cases involving modification hooks.
Pierre-Yves Luyten [Sat, 3 Aug 2019 19:46:40 +0000 (21:46 +0200)]
cua-rect help: check for 'control value
* lisp/emulation/cua-rect.el (cua-help-for-rectangle): Check for
'control value (bug#18120).
Copyright-paperwork-exempt: yes
Lars Ingebrigtsen [Sat, 3 Aug 2019 19:14:23 +0000 (21:14 +0200)]
delete-backward/forward-char doc string clarification
* lisp/simple.el (delete-backward-char): Doc string clarification
(bug#18192).
(delete-forward-char): Ditto.
Lars Ingebrigtsen [Sat, 3 Aug 2019 18:56:48 +0000 (20:56 +0200)]
ido-find-file doc string addition
* lisp/ido.el (ido-find-file): Mention ido-reread-directory
(bug#18275). Suggested by Rob Browning.
Kevin Ryde [Sat, 3 Aug 2019 18:32:24 +0000 (20:32 +0200)]
easy-menu-define doc string fix
* emacs-lisp/easymenu.el (easy-menu-define): Docstring :label and
:help of the menu itself.
Lars Ingebrigtsen [Sat, 3 Aug 2019 17:19:17 +0000 (19:19 +0200)]
Add some function index entries for ido.texi
* doc/misc/ido.texi: Add index entries for functions (bug#18691).
Andreas Politz [Sat, 3 Aug 2019 14:33:06 +0000 (16:33 +0200)]
Tweak tq queue processing
* lisp/emacs-lisp/tq.el (tq-process-buffer): Pop the queue before
calling the function because the function may add new entries to
the queue (bug#19016). Also report errors.
Lars Ingebrigtsen [Sat, 3 Aug 2019 14:10:31 +0000 (16:10 +0200)]
Tweak tango-dark-theme hightlight face
* etc/themes/tango-dark-theme.el (class): Make highlight a bit
less yellow to make the cursor visible on it (bug#19189).
Lars Ingebrigtsen [Sat, 3 Aug 2019 14:00:20 +0000 (16:00 +0200)]
Fix error message in replace-match for subexpressions
* src/search.c (Freplace_match): Output a more understandable
error message when replacing a subexpression (bug#19208).
Lars Ingebrigtsen [Sat, 3 Aug 2019 13:29:04 +0000 (15:29 +0200)]
Clarify Freplace_match logic
* src/search.c (Freplace_match): Add some doc strings to clarify
the logic and do a minor clean up (bug#19208).
Lars Ingebrigtsen [Sat, 3 Aug 2019 12:59:53 +0000 (14:59 +0200)]
Don't refer to non-existent functions in mode line examples
* doc/lispintro/emacs-lisp-intro.texi (Mode Line): Ditto.
* doc/lispref/modes.texi (Mode Line Top): In the :eval example,
use a function that exists to avoid confusion (bug#19224).
Lars Ingebrigtsen [Sat, 3 Aug 2019 11:47:40 +0000 (13:47 +0200)]
Fix previous macroexp-progn doc string fix
* lisp/emacs-lisp/macroexp.el (macroexp-progn): Fix previous doc
string clarification.
Eli Zaretskii [Sat, 3 Aug 2019 11:15:16 +0000 (14:15 +0300)]
; * etc/NEWS: Fix a typo. (Bug#36829)
Eli Zaretskii [Sat, 3 Aug 2019 09:59:18 +0000 (12:59 +0300)]
Minor doc fix in etags.el
* lisp/progmodes/etags.el
(etags-xref-find-definitions-tag-order): Doc fix. (Bug#32510)
Eli Zaretskii [Sat, 3 Aug 2019 09:41:35 +0000 (12:41 +0300)]
Improve documentation of debugging Lisp syntax error
* doc/lispref/debugging.texi (Syntax Errors, Excess Open)
(Excess Close): Name the commands invoked by the key
sequences. Add cross-references to appropriate sections of
the Emacs manual. (Bug#21385)
Eli Zaretskii [Sat, 3 Aug 2019 09:15:03 +0000 (12:15 +0300)]
Improve documentation of 'display-buffer-*' functions
* lisp/window.el (display-buffer-in-atom-window)
(display-buffer-in-side-window, display-buffer-same-window)
(display-buffer--maybe-same-window)
(display-buffer-reuse-window)
(display-buffer-reuse-mode-window)
(display-buffer-pop-up-frame, display-buffer-pop-up-window)
(display-buffer--maybe-pop-up-frame-or-window)
(display-buffer--maybe-pop-up-frame)
(display-buffer-in-child-frame, display-buffer-in-direction)
(display-buffer-below-selected, display-buffer-at-bottom)
(display-buffer-in-previous-window)
(display-buffer-use-some-window, display-buffer-no-window):
More details about the ALIST argument in the doc string. (Bug#19461)
Lars Ingebrigtsen [Fri, 2 Aug 2019 21:11:28 +0000 (23:11 +0200)]
macroexp doc fixes
* lisp/emacs-lisp/macroexp.el (macroexp-progn): Doc clarification
(bug#19371).
(macroexp-let*): Doc fix.
Lars Ingebrigtsen [Fri, 2 Aug 2019 21:03:47 +0000 (23:03 +0200)]
macroexp--cons doc fix
* lisp/emacs-lisp/macroexp.el (macroexp--cons): Doc fix (bug#19371).
Lars Ingebrigtsen [Fri, 2 Aug 2019 20:36:38 +0000 (22:36 +0200)]
Fix some minor inconsistencies in the Package examples
* doc/lispref/package.texi (Simple Packages): Use one of the
approved keywords (bug#19490).
* doc/lispref/tips.texi (Library Headers): Use URL instead of
Homepage to make things consistent with "Simple Packages".
Lars Ingebrigtsen [Fri, 2 Aug 2019 20:04:38 +0000 (22:04 +0200)]
Don't but out on ~/.git files in ede
* lisp/cedet/ede/detect.el (ede--detect-ldf-root-predicate): Make
this work with ~/ as the dir (bug#19521).
Lars Ingebrigtsen [Fri, 2 Aug 2019 19:45:19 +0000 (21:45 +0200)]
browse-url doc string fixup
* lisp/net/browse-url.el (browse-url-browser-function)
(browse-url-secondary-browser-function): Mention each other in the
doc strings.
Lars Ingebrigtsen [Fri, 2 Aug 2019 19:25:29 +0000 (21:25 +0200)]
Make Info-find-file ensure that Info is initialised
* lisp/info.el (Info-find-file): Ensure that Info is initialised,
because libraries call that function (bug#19880).
Lars Ingebrigtsen [Fri, 2 Aug 2019 19:21:23 +0000 (21:21 +0200)]
Fix progression in hideshow.el
* lisp/progmodes/hideshow.el (hs-hide-all): Ensure progression in
a less brittle fashion (bug#19892).
Michael Heerdegen [Fri, 2 Aug 2019 19:04:22 +0000 (21:04 +0200)]
Fix example code in hideshow.el
* lisp/progmodes/hideshow.el: The original example would infloop
(bug#19892).
Michael Albinus [Fri, 2 Aug 2019 18:14:23 +0000 (20:14 +0200)]
Use default value of `parse-time-months' in tramp-smb.el
* lisp/net/tramp-smb.el (tramp-smb-read-file-entry): Use default
value of `parse-time-months'.
Michael Albinus [Fri, 2 Aug 2019 18:13:44 +0000 (20:13 +0200)]
; Fix typo in filenotify-tests.el
Tassilo Horn [Fri, 2 Aug 2019 16:05:13 +0000 (18:05 +0200)]
Improve pretty-printing of multiple JSON snippets in a region
* lisp/json.el (json-pretty-print): Improve pretty-printing of
multiple JSON snippets in a region. Don't lose the region contents
starting with the first non-JSON-parseable text. Also, don't swallow
errors that occurred while parsing (bug#34160).
Basil L. Contovounesios [Fri, 2 Aug 2019 13:39:53 +0000 (16:39 +0300)]
; Docfixes for recent browse-url.el additions
* lisp/net/browse-url.el (browse-url-secondary-browser-function)
(browse-url-button-copy): Fix punctuation in and clarify docstrings.
Alan Mackenzie [Fri, 2 Aug 2019 13:38:13 +0000 (13:38 +0000)]
CC Mode: Fix error in macro cache. This fixes bug #36802
* lisp/progmodes/cc-engine.el (c-invalidate-macro-cache): Add in a cond arm
to handle the change position being less than the recorded CPP contruct end.
Basil L. Contovounesios [Mon, 22 Jul 2019 20:57:39 +0000 (21:57 +0100)]
Make gravatar.el more configurable
For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
* etc/NEWS: Announce changes in gravatar.el user options.
* lisp/image/gravatar.el (gravatar-cache-ttl): Change :type to
number of seconds without changing the default value and while still
accepting other timestamp formats.
(gravatar-rating): Restrict :type to ratings recognized by Gravatar.
(gravatar-size): Allow nil as a value, in which case Gravatar's
default size is used.
(gravatar-default-image, gravatar-force-default): New user options
controlling the Gravatar query parameters 'default' and
'forcedefault', respectively.
(gravatar-base-url): Use HTTPS.
(gravatar--query-string): New helper function to facilitate testing.
(gravatar-build-url): Use it.
* test/lisp/image/gravatar-tests.el (gravatar-size)
(gravatar-default-image, gravatar-force-default)
(gravatar-build-url): New tests.
Basil L. Contovounesios [Mon, 22 Jul 2019 20:48:45 +0000 (21:48 +0100)]
Fix some minor gravatar.el issues
For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
* lisp/image/gravatar.el (gravatar-hash): Trim leading and trailing
whitespace in given address, as per the Gravatar docs.
(gravatar-retrieve-synchronously): Silence call to
url-retrieve-synchronously for consistency with gravatar-retrieve.
(gravatar-retrieved): Only cache buffer on successful retrieval.
* test/lisp/image/gravatar-tests.el: New file.
Basil L. Contovounesios [Mon, 22 Jul 2019 20:49:47 +0000 (21:49 +0100)]
DRY in gravatar.el
For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
* lisp/image/gravatar.el (gravatar-data->image): Remove.
(gravatar-retrieve, gravatar-retrieve-synchronously): Reuse
url-fetch-from-cache and gravatar-retrieved to reduce duplication.
(gravatar-retrieved): Only cache buffer if url-current-object is
non-nil and return result of callback. This affords reusing this
function in cached URL buffers.
Basil L. Contovounesios [Mon, 22 Jul 2019 21:06:22 +0000 (22:06 +0100)]
Use lexical-binding for Gravatar support
For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
* lisp/gnus/gnus-gravatar.el: Use lexical-binding. Link custom
group 'gnus-gravatar' to 'gravatar'.
(gnus-gravatar-size, gnus-gravatar-too-ugly): Doc fix.
(gnus-gravatar-insert): Check liveness of article buffer sooner.
(gnus-treat-from-gravatar, gnus-treat-mail-gravatar): Use
interactive spec "p" instead of emulating it.
* lisp/image/gravatar.el: Use lexical-binding.
(gravatar-cache-expired): Remove. Change all callers to use
url-cache-expired instead.
(gravatar-get-data, gravatar-retrieve)
(gravatar-retrieve-synchronously): Simplify.
Alan Mackenzie [Fri, 2 Aug 2019 12:57:40 +0000 (12:57 +0000)]
CC Mode: Fix spurious recognition of operators beginning with, e.g. "or"
This fixes bug #36801.
* lisp/progmodes/cc-langs.el (c-pre-lambda-tokens-re): Use c-make-keywords-re
rather than regexp-opt to make an optimised regexp out of a list of tokens.
Lars Ingebrigtsen [Fri, 2 Aug 2019 12:46:48 +0000 (14:46 +0200)]
pdb doc clarification
* lisp/progmodes/gud.el (pdb): Clarify what the parameters mean
(bug#20106).
Lars Ingebrigtsen [Fri, 2 Aug 2019 12:16:25 +0000 (14:16 +0200)]
Mention that some dired commands work on the current file, too
* lisp/dired-aux.el (dired-do-search): Mention that it works on
file under point (bug#20194).
(dired-do-find-regexp-and-replace): Ditto.
(dired-do-find-regexp): Ditto.
Alan Mackenzie [Fri, 2 Aug 2019 11:24:38 +0000 (11:24 +0000)]
CC Mode: Fix the timing of application and removal of string fence properties
This fixes bug #36897.
* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Check
string fence text properties are actually present on string delimiters before
trying to remove them.
(c-before-change): Amend the nesting of unwind-protect, widen,
c-restore-string-fences, and c-clear-string-fences. Move
invalidate-state-cache to outside of the widening.
(c-after-change): Amend the nesting of unwind-protect, widen,
c-restore-string-fences, and c-clear-string-fences.
Lars Ingebrigtsen [Fri, 2 Aug 2019 10:44:31 +0000 (12:44 +0200)]
Use "rebinding keys" in the "Rebinding" section of the manual
* doc/emacs/custom.texi (Rebinding): Use the term "rebinding keys"
instead of "redefining keys", because the former seems more
logical (bug#21036).
Mattias Engdegård [Mon, 22 Jul 2019 15:10:37 +0000 (17:10 +0200)]
Clean up file-size-function
It is now called `byte-count-to-string-function', and used instead of
calling `file-size-human-readable' directly where appropriate.
* lisp/files.el (file-size-human-readable-iec): New.
(file-size-function): Rename to byte-count-to-string-function. Better
default value. Eliminate lambda. Better default for custom choice.
Put in group `files'. More descriptive doc string. Move.
(out-of-memory-warning-percentage, warn-maybe-out-of-memory)
(get-free-disk-space):
* lisp/dired.el (dired-number-of-marked-files):
* lisp/url/url-http.el (url-http-simple-after-change-function)
(url-http-content-length-after-change-function):
Use byte-count-to-string-function.
* test/lisp/files-test.el (files-test-file-size-human-readable):
Test file-size-human-readable-iec.
Eli Zaretskii [Fri, 2 Aug 2019 09:24:53 +0000 (12:24 +0300)]
Mention font-backend related crashes in PROBLEMS
* etc/PROBLEMS: Mention the crash in the Cairo build when
.emacs.desktop messes with font-backend. (Bug#36835)
Paul Eggert [Thu, 1 Aug 2019 22:34:35 +0000 (15:34 -0700)]
Fix two parse-time-months invalid assumptions
* lisp/gnus/nnimap.el: Do not require parse-time.
* lisp/gnus/nnimap.el (nnimap-find-expired-articles):
* lisp/net/pop3.el (pop3-make-date):
Just use system-time-locale and format-time-string; no need to
refer to parse-time-months.
* lisp/net/pop3.el (parse-time-months): Remove defvar.
* lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
Add FIXME comment about this.
Paul Eggert [Thu, 1 Aug 2019 22:31:07 +0000 (15:31 -0700)]
Port standard-test-interval to Los Angeles
* test/lisp/calendar/iso8601-tests.el (standard-test-interval):
Use UTC to avoid DST glitches in the test.
Lars Ingebrigtsen [Thu, 1 Aug 2019 22:15:13 +0000 (00:15 +0200)]
Document that --eval makes emacsclient ignore -n
* doc/man/emacsclient.1: Mention that -n is ignored if --eval is
given (bug#20524).
Lars Ingebrigtsen [Thu, 1 Aug 2019 21:16:24 +0000 (23:16 +0200)]
Document batch-byte-compile directory behavior
* lisp/emacs-lisp/bytecomp.el (batch-byte-compile): Document the
behaviour with directories (bug#20867).