]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years agoMerge remote-tracking branch 'origin/master' into scratch/tsdh-vc-list-files scratch/tsdh-vc-list-files
Tassilo Horn [Sun, 22 Sep 2019 09:02:39 +0000 (11:02 +0200)]
Merge remote-tracking branch 'origin/master' into scratch/tsdh-vc-list-files

4 years ago; more on vc list-files
Tassilo Horn [Sun, 22 Sep 2019 09:02:18 +0000 (11:02 +0200)]
; more on vc list-files

5 years agoFix up the previous mh-mime warning suppression
Lars Ingebrigtsen [Wed, 18 Sep 2019 13:21:25 +0000 (15:21 +0200)]
Fix up the previous mh-mime warning suppression

* lisp/mh-e/mh-acros.el (mh-dlet*): Suppress warnings about
prefix-less bindings.
* lisp/mh-e/mh-mime.el (mh-insert-mime-security-button): Remove
the warning removal here.
(mh-insert-mime-button): And here.

5 years agoImprove support of the Tai-Viet script
Eli Zaretskii [Wed, 18 Sep 2019 12:55:08 +0000 (15:55 +0300)]
Improve support of the Tai-Viet script

* lisp/language/tai-viet.el ("TaiViet"): Update the doc
string.  Suggested by Jim Brase <jim_brase@sil.org>.
(Bug#5806)

* etc/HELLO: Add a Tai Viet entry.

5 years agoOut-of-datedness .elc check is merely a file test
Paul Eggert [Wed, 18 Sep 2019 12:17:03 +0000 (05:17 -0700)]
Out-of-datedness .elc check is merely a file test

* src/fileio.c (file_test_errno): Now extern.
* src/lread.c (Fload): Use file_test_errno instead,
since this is really just a file test (the attributes
are not given to the user).

5 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Wed, 18 Sep 2019 12:15:33 +0000 (15:15 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

5 years agoFix the MS-Windows build broken by recent errno changes
Eli Zaretskii [Wed, 18 Sep 2019 12:14:15 +0000 (15:14 +0300)]
Fix the MS-Windows build broken by recent errno changes

* src/fileio.c (file_directory_p): If the file exists, but is
not a directory, set errno to ENOTDIR, like the Posix branch
does; openp expects that.

5 years agoSimplify tramp-tests.el check for owncloud/nextcloud
Michael Albinus [Wed, 18 Sep 2019 12:12:54 +0000 (14:12 +0200)]
Simplify tramp-tests.el check for owncloud/nextcloud

* test/lisp/net/tramp-tests.el (tramp-test11-copy-file):
Simplify check for owncloud/nextcloud connections.

5 years agoAdd extra args for zsh in Tramp
Michael Albinus [Wed, 18 Sep 2019 12:11:55 +0000 (14:11 +0200)]
Add extra args for zsh in Tramp

* doc/misc/tramp.texi (Remote shell setup): New subsection
"Changing the default remote shell".

* lisp/net/tramp-sh.el (tramp-sh-extra-args): Add entry for zsh.

5 years agoBe less picky about EACCES in file test predicates
Paul Eggert [Wed, 18 Sep 2019 11:21:19 +0000 (04:21 -0700)]
Be less picky about EACCES in file test predicates

Problem reported by Tino Calancha (Bug#37445) and others.
* src/fileio.c (PICKY_EACCES): New constant, false by default.
(file_test_errno): Ignore EACCES if not picky.
(check_file_access): Investigate EACCES problems further
if picky.

5 years agoFix permission-denied issue in MS-Windows startup
Paul Eggert [Wed, 18 Sep 2019 10:06:10 +0000 (03:06 -0700)]
Fix permission-denied issue in MS-Windows startup

* src/callproc.c (init_callproc): Use file_access_p rather
than Ffile_exists_p during startup (Bug#37445).

5 years agoImprove reporting of I/O, access errors
Paul Eggert [Wed, 18 Sep 2019 02:18:14 +0000 (19:18 -0700)]
Improve reporting of I/O, access errors

Signal an error for file-oriented errors that are not tame
errors like ENOENT and ENOTDIR (Bug#37389).
Do this for primitives exposed to Lisp; the lower
level internal C API merely makes errno values available
to higher-level C code.
* doc/lispref/files.texi (Testing Accessibility)
(File Attributes, Extended Attributes): Do not say that the
functions return nil when the return value cannot be determined.
* etc/NEWS: Mention the change.
* src/dired.c (Ffile_attributes): Fix doc string confusion
about opening a file vs getting its attributes.
(file_attributes): Signal serious errors.
* src/fileio.c (check_existing, check_executable)
(check_writable): Remove.  All callers changed to use
check_file_access or file_access_p.
(file_access_p, file_metadata_errno, file_attribute_errno)
(file_test_errno, check_file_access, check_emacs_readlinkat):
New functions.
* src/fileio.c (Ffile_executable_p, Ffile_readable_p)
(Ffile_name_case_insensitive_p, Frename_file, Ffile_exists_p):
(Ffile_symlink_p, Ffile_directory_p)
(Ffile_accessible_directory_p, Ffile_regular_p)
(Ffile_selinux_context, Ffile_acl, Ffile_modes)
(Ffile_newer_than_file_p, Fset_visited_file_modtime)
(Ffile_system_info):
* src/filelock.c (unlock_file, Ffile_locked_p):
* src/lread.c (Fload):
Signal serious errors.
* src/fileio.c (Ffile_writable_p): Remove unnecessary CHECK_STRING.
(emacs_readlinkat): Now static.
* src/filelock.c (current_lock_owner, lock_if_free): Return a
positive errno on error, and the negative of the old old value
on success.  All callers changed.
* src/lread.c (openp): Propagate serious errno values to caller.

5 years agoSubstituted deprecated WebKitGTK+ api.
Jimmy Aguilar Mena [Tue, 17 Sep 2019 20:00:21 +0000 (22:00 +0200)]
Substituted deprecated WebKitGTK+ api.

* src/xwidget.c : Substituted WebKitGTK+ API calls and use
JavaScriptCore GLib API instead.

5 years agoFix an assignment to free variable warning
Tino Calancha [Tue, 17 Sep 2019 16:07:50 +0000 (18:07 +0200)]
Fix an assignment to free variable warning

It fixes a bug introduced by commit
'query-replace-regexp undo: Update next-replacement after undo'
(30c4f35a6fc8a6507930923766c3126ac1c2063f)

See https://lists.gnu.org/archive/html/emacs-devel/2019-09/msg00364.html
* lisp/replace.el(perform-replace): Rename variable
to next-replacement-replaced.

5 years ago* src/w32fns.c (Fw32_read_registry): Doc fix
Juanma Barranquero [Tue, 17 Sep 2019 14:29:23 +0000 (16:29 +0200)]
* src/w32fns.c (Fw32_read_registry): Doc fix

5 years agoSuppress some warnings about un-prefixed dynamic variables
Lars Ingebrigtsen [Tue, 17 Sep 2019 12:18:52 +0000 (14:18 +0200)]
Suppress some warnings about un-prefixed dynamic variables

* lisp/mh-e/mh-mime.el (mh-insert-mime-security-button): Suppress
warnings about un-prefixed dynamic variables.
(mh-insert-mime-button): Ditto.

5 years agoTouch up naming of ipv6-expand
Lars Ingebrigtsen [Tue, 17 Sep 2019 12:11:53 +0000 (14:11 +0200)]
Touch up naming of ipv6-expand

* lisp/net/net-utils.el (nslookup--ipv6-expand): Rename to avoid
make prefix more regular.
(nslookup-host-ipv6): Rename call.

5 years agoUpdated to match more recent versions of Praat.
W. Garrett Mitchener [Tue, 17 Sep 2019 11:56:28 +0000 (13:56 +0200)]
Updated to match more recent versions of Praat.

* lisp/leim/quail/ipa-praat.el ("ipa-praat"): Update to match
more recent versions of Praat (bug#36198).

- \rh was used for ram's horns (a vowel) and rhoticity hook (a
  diacritic).  Praat uses \hr for the hook, so I made that changed.

- \e3v for the slightly rounded diacritic seems to have been a typo
  related to the use of e in the example.  Changed it to \3v to match
  Praat.

- Added examples to the table of tone diacritics

- Added \^h for superscript h

- Added \^H for superscript h with hook

- Added \^w for superscript w (labialization)

- Added \^j for superscript j (palatalization)

- Added \^g for superscript symbol (velarization)

- Added \^9 for superscript symbol (pharyngealization)

5 years agoUpdate doc marker -- smtpmail-retries is documented
Lars Ingebrigtsen [Tue, 17 Sep 2019 11:54:19 +0000 (13:54 +0200)]
Update doc marker -- smtpmail-retries is documented

5 years agoImprove font lookup on MS-Windows
Eli Zaretskii [Tue, 17 Sep 2019 11:19:54 +0000 (14:19 +0300)]
Improve font lookup on MS-Windows

* src/w32font.c (struct font_callback_data): New member
'known_fonts'.
(w32font_list_internal, w32font_match_internal): Set up
match_data.known_fonts if the font spec includes :script that
names one of the non-USB scripts.
(add_font_entity_to_list): If font_matches_spec returns zero
for a font, and we have some fonts in match_data->known_fonts,
consider the font to be a match if it is named in known_fonts.
(font_supported_scripts): Update the Unicode Subranges.  In
particular, map bit 74 to 'burmese', as this is the name Emacs
uses, not 'myanmar'.  Add a list of scripts that have no USBs
defined for them.
(syms_of_w32font) <Qburmese, Qcuneiform_numbers_and_punctuation>
<Qaegean_number, Qw32_non_USB_fonts>: New symbols.

* lisp/term/w32-win.el (w32-no-usb-subranges): New defconst.
(w32--filter-USB-scripts, w32-find-non-USB-fonts): New functions.
(w32-non-USB-fonts): New defvar.

* lisp/international/fontset.el (setup-default-fontset): Add
more scripts to automatic setup by representative characters.

* doc/emacs/msdos.texi (Windows Fonts): Document
'w32-find-non-USB-fonts' and 'w32-non-USB-fonts'.

* etc/NEWS: Mention 'w32-find-non-USB-fonts' and
'w32-non-USB-fonts'.

5 years agoPacify GCC -Wmaybe-uninitialized
Paul Eggert [Tue, 17 Sep 2019 11:01:00 +0000 (04:01 -0700)]
Pacify GCC -Wmaybe-uninitialized

* src/dired.c (directory_files_internal):
Pacify GCC 7.4.0-1ubuntu1~18.04.1 x86-64.

5 years agoDon’t round file-system-info counts
Paul Eggert [Tue, 17 Sep 2019 10:54:41 +0000 (03:54 -0700)]
Don’t round file-system-info counts

* src/fileio.c (blocks_to_bytes): Convert the byte count to an
integer, since we have bignums now.  This avoids possible rounding
errors for file systems containing more than 8 PiB or so.

5 years ago* doc/lispref/searching.texi (Rx Constructs): Fix typo.
Mattias Engdegård [Tue, 17 Sep 2019 10:01:15 +0000 (12:01 +0200)]
* doc/lispref/searching.texi (Rx Constructs): Fix typo.

5 years ago; * etc/NEWS: Minor copyedits.
Eli Zaretskii [Tue, 17 Sep 2019 09:45:04 +0000 (12:45 +0300)]
; * etc/NEWS: Minor copyedits.

5 years agoFix some file-mode races
Paul Eggert [Tue, 17 Sep 2019 00:43:56 +0000 (17:43 -0700)]
Fix some file-mode races

* lisp/emacs-lisp/autoload.el (autoload-ensure-file-writeable):
* lisp/files.el (after-find-file):
* lisp/gnus/gnus-start.el (gnus-dribble-read-file):
* lisp/htmlfontify.el (hfy-copy-and-fontify-file):
* lisp/server.el (server-ensure-safe-dir):
Avoid a race when getting file permissions.

5 years agovc-cvs-revert: fix off-by-one file mode
Paul Eggert [Tue, 17 Sep 2019 00:22:48 +0000 (17:22 -0700)]
vc-cvs-revert: fix off-by-one file mode

* lisp/vc/vc-cvs.el (vc-cvs-revert): 3950 (#o7556) is wrong as
it keeps other-write but disables other-execute permissions.
3949 (#o7555) was intended here.  Use octal notation for clarity.

5 years agoFix imenu menu when we're auto-refreshing
Lars Ingebrigtsen [Mon, 16 Sep 2019 23:39:37 +0000 (01:39 +0200)]
Fix imenu menu when we're auto-refreshing

* lisp/imenu.el (imenu--make-index-alist): Don't add a *Refresh*
item if we're auto-refreshing (bug#30449).

5 years agoAdd a new variable smtpmail-retries
Lars Ingebrigtsen [Mon, 16 Sep 2019 23:26:43 +0000 (01:26 +0200)]
Add a new variable smtpmail-retries

* doc/misc/smtpmail.texi (Server workarounds): Mention it (bug#34177).

* lisp/mail/smtpmail.el (smtpmail-retries): New variable.
(smtpmail-via-smtp): Use it.

5 years agoAllow `M-u' to work when editing fields in Customize
Michał Kondraciuk [Mon, 16 Sep 2019 23:13:08 +0000 (01:13 +0200)]
Allow `M-u' to work when editing fields in Customize

* lisp/cus-edit.el (custom-notify): Allow more editing commands to
work in the Customize buffers (bug#31205).

Copyright-paperwork-exempt: yes

5 years agoTry resending when getting a transient 4xx SMTP code
Lars Ingebrigtsen [Mon, 16 Sep 2019 21:45:34 +0000 (23:45 +0200)]
Try resending when getting a transient 4xx SMTP code

* lisp/mail/smtpmail.el (smtpmail-via-smtp): Try resending when
getting a transient error message (bug#34177).

5 years agoRemove obsolete Lint directives
Paul Eggert [Mon, 16 Sep 2019 21:04:04 +0000 (14:04 -0700)]
Remove obsolete Lint directives

Most of the directives were wrong anyway.  Apparently
traditional lint hasn’t been used to check Emacs for years.
* src/callint.c (Finteractive):
* src/cm.c (evalcost):
* src/emacs.c (main):
* src/eval.c (call1, call2, call3, call4, call5, call6, call7, call8):
* src/fns.c (concat2, concat3, nconc2):
* src/term.c (calculate_ins_del_char_costs):
Omit ARGSUSED comments.
* src/eval.c (call1): Omit VARARGS comment.

5 years agoAdd backquote tests
Tino Calancha [Mon, 16 Sep 2019 20:57:25 +0000 (22:57 +0200)]
Add backquote tests

* test/lisp/emacs-lisp/backquote-tests.el: New file (bug#37432).

5 years agodirectory-files cleanup and speed tweaking
Paul Eggert [Mon, 16 Sep 2019 20:54:57 +0000 (13:54 -0700)]
directory-files cleanup and speed tweaking

* src/dired.c (directory_files_internal):
Check ‘match’ before doing anything heavyweight.
Move decls closer to use.
Remove obsolete comments about GC.
No need to encode ‘directory’ or to call multibyte_chars_in_text.
Remove no-longer-needed bug check.
Skip finalname construction if file_attributes fails.

5 years agomm-inline-large-images-proportion doc clarification
Lars Ingebrigtsen [Mon, 16 Sep 2019 20:31:29 +0000 (22:31 +0200)]
mm-inline-large-images-proportion doc clarification

* lisp/gnus/mm-view.el (mm-inline-large-images-proportion): Doc
clarification.

5 years agoDefault to rescaling images in mm buffers
Lars Ingebrigtsen [Mon, 16 Sep 2019 20:30:04 +0000 (22:30 +0200)]
Default to rescaling images in mm buffers

* doc/misc/emacs-mime.texi (Display Customization): Document it.

* lisp/gnus/mm-decode.el (mm-inline-large-images): Change default
to `resize'.

5 years agomm-inline-large-images doc string clarification
Lars Ingebrigtsen [Mon, 16 Sep 2019 20:22:54 +0000 (22:22 +0200)]
mm-inline-large-images doc string clarification

* lisp/gnus/mm-decode.el (mm-inline-large-images): Clarify doc string.

5 years agoWith tooltip-mode disabled, don't unconditionally clear the echo area
Mauro Aranda [Mon, 16 Sep 2019 20:17:51 +0000 (22:17 +0200)]
With tooltip-mode disabled, don't unconditionally clear the echo area

* lisp/tooltip.el (tooltip-show-help-non-mode): Only clear the
echo area when the current message displayed is a tooltip message
(Bug#3192).

5 years agoMinor fix for previous maintaining.texi change
Lars Ingebrigtsen [Mon, 16 Sep 2019 20:08:57 +0000 (22:08 +0200)]
Minor fix for previous maintaining.texi change

* doc/emacs/maintaining.texi (VC Directory Commands): Use @file
for files.

5 years agoDocument vc-dir-ignore
Lars Ingebrigtsen [Mon, 16 Sep 2019 20:02:19 +0000 (22:02 +0200)]
Document vc-dir-ignore

* doc/emacs/maintaining.texi (VC Directory Commands): Document
vc-dir-ignore.

5 years agoImprove error reporting in file_accessible_directory_p
Eli Zaretskii [Mon, 16 Sep 2019 19:19:16 +0000 (22:19 +0300)]
Improve error reporting in file_accessible_directory_p

* src/w32.c (w32_accessible_directory_p): Set errno, so that
file_accessible_directory_p does on MS-Windows, to live up to
its callers' expectations.

5 years agoFix initialization of shared-game-score-directory on MS-Windows
Eli Zaretskii [Mon, 16 Sep 2019 14:51:25 +0000 (17:51 +0300)]
Fix initialization of shared-game-score-directory on MS-Windows

* src/callproc.c (init_callproc) [WINDOWSNT]: Run PATH_GAME
through w32_relocate, to expand %emacs_dir%.
[DOS_NT]: Accept EACCES as not "unusual" errno value.
Reported by Richard Copley <rcopley@gmail.com>.

5 years ago; Disable traces in shadowfile-tests
Michael Albinus [Mon, 16 Sep 2019 13:00:37 +0000 (15:00 +0200)]
; Disable traces in shadowfile-tests

5 years agoRemove NEWS entry that talks about a change that was reverted (bug#37257)
Lars Ingebrigtsen [Mon, 16 Sep 2019 12:32:17 +0000 (14:32 +0200)]
Remove NEWS entry that talks about a change that was reverted (bug#37257)

5 years agoAdd bindings for ligature oe to iso-transl-char-map
Robert Pluim [Mon, 16 Sep 2019 07:58:09 +0000 (09:58 +0200)]
Add bindings for ligature oe to iso-transl-char-map

* lisp/international/iso-transl.el (iso-transl-char-map): Add bindings
for small and capital ligature oe.  (Bug#23420)

5 years agoFix some file-name-case-insensitive glitches
Paul Eggert [Mon, 16 Sep 2019 05:15:04 +0000 (22:15 -0700)]
Fix some file-name-case-insensitive glitches

* src/fileio.c (file_name_directory): New static function,
broken out of Ffile_name_directory.
(file_name_case_insensitive_err, Ffile_writable_p, Fdo_auto_save):
Use it.
(file_name_case_insensitive_err): Rename from
file_name_case_insensitive_p.  Accept an unencoded Lisp_Object
rather than an encoded char *, so that platforms other than
Cygwin and macOS need not encode the file name.  Return an int
-1, 0, errno rather than a bool (setting errno if false),
so that the caller can distinguish an error from false.
All callers changed.
(Ffile_name_case_insensitive_p): Don’t issue system calls on
platforms other than Cygwin and macOS.  Fix bug that broke the
attempt to move up the filesystem tree (it moved up only one
level).

5 years ago; * etc/NEWS: Fix typo.
Stefan Kangas [Mon, 16 Sep 2019 04:55:02 +0000 (06:55 +0200)]
; * etc/NEWS: Fix typo.

5 years agoFix unknown-vs-nonexistent glitch for file timestamps
Paul Eggert [Mon, 16 Sep 2019 03:17:43 +0000 (20:17 -0700)]
Fix unknown-vs-nonexistent glitch for file timestamps

* src/fileio.c (time_error_value): EACCES means the file
timestamp is unknown, not that the file does not exist.

5 years agoImprove directory-access diagnostics
Paul Eggert [Mon, 16 Sep 2019 03:12:07 +0000 (20:12 -0700)]
Improve directory-access diagnostics

* src/callproc.c (init_callproc): Diagnose I/O errors,
access errors, etc. for the game directory.
* src/charset.c (init_charset): Improve quality of diagnostic
when the charsets directory has I/O errors, access errors, etc.

5 years agoMerge from origin/emacs-26
Glenn Morris [Sun, 15 Sep 2019 23:38:23 +0000 (16:38 -0700)]
Merge from origin/emacs-26

30c4f35 (origin/emacs-26) query-replace-regexp undo: Update next-repl...
c596be0 Amend the menu caption for page "Display Property" in the Eli...
13b9510 Add description of chinese-sisheng

5 years ago; Merge from origin/emacs-26
Glenn Morris [Sun, 15 Sep 2019 23:38:23 +0000 (16:38 -0700)]
; Merge from origin/emacs-26

The following commit was skipped:

7e527af Fix non-deterministic process test

5 years agoMerge from origin/emacs-26
Glenn Morris [Sun, 15 Sep 2019 23:38:20 +0000 (16:38 -0700)]
Merge from origin/emacs-26

8e420c0 Clarify the use of left/right-margin-width in determining cur...

5 years ago; Merge from origin/emacs-26
Glenn Morris [Sun, 15 Sep 2019 23:38:20 +0000 (16:38 -0700)]
; Merge from origin/emacs-26

The following commit was skipped:

0c3fc71 ; Bump Emacs version to 26.3.50

5 years ago* admin/upload-manuals: Move a basic check earlier.
Glenn Morris [Sun, 15 Sep 2019 23:36:06 +0000 (16:36 -0700)]
* admin/upload-manuals: Move a basic check earlier.

5 years ago* lisp/subr.el (major-mode-suspend): Doc fix
Juanma Barranquero [Sun, 15 Sep 2019 18:37:26 +0000 (20:37 +0200)]
* lisp/subr.el (major-mode-suspend): Doc fix

5 years agoUse also truname of temporary-file-directory in shadowfile-tests.el
Michael Albinus [Sun, 15 Sep 2019 14:52:22 +0000 (16:52 +0200)]
Use also truname of temporary-file-directory in shadowfile-tests.el

* test/lisp/shadowfile-tests.el (top): Use truename of
`temporary-file-directory' and
`shadow-test-remote-temporary-file-directory'.  (Bug#37202)
(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
Do not bind `shadow-test-remote-temporary-file-directory'.

5 years agoMake widget-browse-at always detect an editable-field
Mauro Aranda [Sun, 15 Sep 2019 13:21:08 +0000 (15:21 +0200)]
Make widget-browse-at always detect an editable-field

* lisp/wid-browse.el (widget-browse-at): Also look for the real-field
property when detecting a field (bug#37199).

5 years agoDo not use error messages as list of ignored files in vc-svn
Wolfgang Scherer [Sun, 15 Sep 2019 13:14:44 +0000 (15:14 +0200)]
Do not use error messages as list of ignored files in vc-svn

* lisp/vc/vc-svn.el: (vc-svn-ignore-completion-table) Ignore buffer
contents, if exit status is not 0.  Split buffer by lines (bug#37214).

5 years agoFix vc-default-ignore
Wolfgang Scherer [Sun, 15 Sep 2019 13:03:33 +0000 (15:03 +0200)]
Fix vc-default-ignore

* lisp/vc/vc.el: (vc-default-ignore) Treat FILE parameter as relative
to DIRECTORY parameter.  Construct a file-path relative to directory
of ignore file.  When removing, use properly anchored regexp.  Remove
entire line, not just the match (bug#37217).

5 years agoProvide facility to ignore all marked files in vc
Wolfgang Scherer [Sun, 15 Sep 2019 13:00:20 +0000 (15:00 +0200)]
Provide facility to ignore all marked files in vc

* lisp/vc/vc-dir.el: (vc-dir-ignore) With prefix argument, ignore all
marked files (bug#37240).

5 years agoRevert "emacsclient: ignore --eval parameters when starting alternate editor"
Lars Ingebrigtsen [Sun, 15 Sep 2019 12:11:14 +0000 (14:11 +0200)]
Revert "emacsclient: ignore --eval parameters when starting alternate editor"

This reverts commit 6fe661342a24edcaea255c3ba9a37613031554da.

The alternate editor may be Emacs, which is useful when you want to eval something in an existing Emacs (if it exists), or in a new Emacs if there's no server running.

5 years agofile_name_case_insensitive_p int->long fix
Paul Eggert [Sun, 15 Sep 2019 05:00:20 +0000 (22:00 -0700)]
file_name_case_insensitive_p int->long fix

* src/fileio.c (file_name_case_insensitive_p):
Don’t assume ‘long int’ fits in ‘int’.

5 years agoFix gc-elapsed rounding bug
Paul Eggert [Sat, 14 Sep 2019 17:55:53 +0000 (10:55 -0700)]
Fix gc-elapsed rounding bug

* src/alloc.c (garbage_collect): Don’t accumulate rounding
errors when computing gc-elapsed.

5 years agoImprove doc of GC thresholds
Paul Eggert [Sat, 14 Sep 2019 17:53:24 +0000 (10:53 -0700)]
Improve doc of GC thresholds

* doc/lispref/internals.texi (Garbage Collection), etc/NEWS:
Warn that control over GC is only approximate.

5 years agoFix picon installation instructions in the Gnus manual
Bruno Félix Rezende Ribeiro [Sat, 14 Sep 2019 15:00:40 +0000 (17:00 +0200)]
Fix picon installation instructions in the Gnus manual

* doc/misc/gnus.texi (Picons): Fix instructions for installing
picons on Debian (bug#37247).

Copyright-paperwork-exempt: yes

5 years agoFix fileless eww form submission
Basil L. Contovounesios [Sat, 14 Sep 2019 14:55:24 +0000 (16:55 +0200)]
Fix fileless eww form submission

* lisp/net/eww.el (eww-submit): Ignore file inputs with no
associated file name (bug#36520).

5 years agoAdd default foreground colours to SVG images
Lars Ingebrigtsen [Sat, 14 Sep 2019 14:48:21 +0000 (16:48 +0200)]
Add default foreground colours to SVG images

* lisp/net/shr.el (svg--wrap-svg): Add a default foreground colour
to SVG images (bug#37159).  This helps with images like the ones
in https://en.wikipedia.org/wiki/Banach_fixed-point_theorem that
specify no foreground or background colours.
(shr-parse-image-data): Use it.

5 years agoMake eww more liberal when interpreting some invalid HTML
Lars Ingebrigtsen [Sat, 14 Sep 2019 14:07:34 +0000 (16:07 +0200)]
Make eww more liberal when interpreting some invalid HTML

* lisp/net/eww.el (eww--preprocess-html): New function (bug#37009)
to be more lenient with invalid HTML and translate common invalid
HTML like "a <= b" into "a &lt;= b" to be more liberal in what we
accept before parsing.
(eww-display-html): Use it.
(eww-readable): Ditto.

5 years ago* src/print.c (PRINT_CIRCLE_CANDIDATE_P): Fix a thinko. (Bug#36566)
Eli Zaretskii [Sat, 14 Sep 2019 14:04:30 +0000 (17:04 +0300)]
* src/print.c (PRINT_CIRCLE_CANDIDATE_P): Fix a thinko.  (Bug#36566)

5 years agoAdd a debug declaration to widget-specify-insert
Tobias Zawada [Sat, 14 Sep 2019 12:20:03 +0000 (14:20 +0200)]
Add a debug declaration to widget-specify-insert

* lisp/wid-edit.el (widget-specify-insert): Add a debug
declaration (bug#37368).

Copyright-paperwork-exempt: yes

5 years ago; * etc/NEWS: Fix last change.
Eli Zaretskii [Sat, 14 Sep 2019 08:21:40 +0000 (11:21 +0300)]
; * etc/NEWS: Fix last change.

5 years agoAllow gamegrid-add-score to treat lower scores as better.
Federico Tedin [Tue, 3 Sep 2019 22:18:11 +0000 (00:18 +0200)]
Allow gamegrid-add-score to treat lower scores as better.

* lisp/play/gamegrid.el (gamegrid-add-score): Add 'reverse' parameter.
(gamegrid-add-score-with-update-game-score): Add 'reverse' parameter.
(gamegrid-add-score-with-update-game-score-1): Add 'reverse'
parameter.  Pass on "-r" argument to update-game-score.
(gamegrid-add-score-insecure): Add 'reverse' parameter, reverse scores
when it's non-nil.  (Bug#36867)

* etc/NEWS: Announce the change.

5 years agoImprove gc-cons-percentage calculation
Paul Eggert [Sat, 14 Sep 2019 07:32:01 +0000 (00:32 -0700)]
Improve gc-cons-percentage calculation

The old calculation relied on a hodgpodge of partly updated GC
stats to find a number to multiply gc-cons-percentage by.
The new one counts data found by the previous GC, plus half of
the data allocated since then; this is more systematic albeit
still ad hoc.
* src/alloc.c (consing_until_gc, gc_threshold, consing_threshold):
Now EMACS_INT, not intmax_t.
(HI_THRESHOLD): New macro.
(tally_consing): New function.
(make_interval, allocate_string, allocate_string_data)
(make_float, free_cons, allocate_vectorlike, Fmake_symbol): Use it.
(allow_garbage_collection, inhibit_garbage_collection)
(consing_threshold, garbage_collect):
Use HI_THRESHOLD rather than INTMAX_MAX.
(consing_threshold): New arg SINCE_GC.  All callers changed.
(bump_consing_until_gc): Return new consing_until_gc, instead of
nil.  All callers changed.  Don’t worry about overflow since we
now saturate at HI_THRESHOLD.  Guess that half of
recently-allocated objects are still alive, instead of relying on
the previous (even less-accurate) hodgepodge.
(maybe_garbage_collect): New function.
(garbage_collect): Work even if a finalizer disables or enables
memory profiling.  Do not use malloc_probe if GC reclaimed nothing.
* src/lisp.h (maybe_gc): Call maybe_garbage_collect instead
of garbage_collect.

5 years agoSimplify GC statistics-gathering
Paul Eggert [Fri, 13 Sep 2019 23:09:48 +0000 (16:09 -0700)]
Simplify GC statistics-gathering

* src/alloc.c (make_interval, allocate_string, make_float)
(free_cons, Fcons, setup_on_free_list)
(allocate_vector_from_block, Fmake_symbol):
Do not update gcstat, since it is for statistics from the most
recent GC, not for a partially-updated hodgepodge.
(sweep_vectors): Update gcstat, since setup_on_free_list
no longer does.
(garbage_collect_1): Rename to garbage_collect and adopt its API.
Remove the old garbage_collect, which is no longer needed.
All callers changed.

5 years agoDon't build print-number-table unless it will be used
Gemini Lasswell [Sun, 4 Aug 2019 04:39:29 +0000 (21:39 -0700)]
Don't build print-number-table unless it will be used

There are only a few users of print-number-table, and none of them use
it when print-circle is nil.  A couple of them used to.  print_object
was changed in 2012-04-20 "* src/print.c (print_preprocess): Only
check print_depth if print-circle is nil".
byte-compile-output-docform which uses print-number-table binds
print-circle to t before printing unless
byte-compile-disable-print-circle is set, but that variable has been
marked obsolete since 24.1.

* src/print.c (print_preprocess): Assert Vprint_circle is non-nil.
Remove code handling the case when Vprint_circle is nil.
(print, Fprint_preprocess): Don't call print_preprocess unless
Vprint_circle is non-nil.
(print_object): Remove comment referencing removed code in
print_preprocess.

5 years agoCreate common tests for print.c and cl-print.el
Gemini Lasswell [Sun, 4 Aug 2019 22:56:12 +0000 (15:56 -0700)]
Create common tests for print.c and cl-print.el

* test/lisp/emacs-lisp/cl-print-tests.el
(cl-print--test, cl-print-tests-1, cl-print-tests-2)
(cl-print-tests-3, cl-print-tests-4, cl-print-tests-5)
(cl-print-tests-strings, cl-print-circle, cl-print-circle-2):
Remove.
* test/src/print-tests.el (print-tests--prin1-to-string): New
alias.
(print-tests--deftest): New macro.
(print-hex-backslash, print-read-roundtrip, print-bignum): Define with
print-tests--deftest and use print-tests--prin1-to-string.
(print-tests--prints-with-charset-p): Use
print-tests--prin1-to-string.
(print-tests--print-charset-text-property-nil)
(print-tests--print-charset-text-property-t)
(print-tests--print-charset-text-property-default): Define with
print-tests--deftest.
(print-tests-print-gensym)
(print-tests-continuous-numbering, print-tests-1, print-tests-2)
(print-tests-3, print-tests-4, print-tests-5)
(print-tests-strings, print-circle, print-circle-2): New tests.
(print--test, print-tests-struct): New cl-defstructs.

5 years agoFix unnecessary hash table creation in cl-prin1 (bug#36566)
Gemini Lasswell [Sat, 3 Aug 2019 19:33:20 +0000 (12:33 -0700)]
Fix unnecessary hash table creation in cl-prin1 (bug#36566)

cl-prin1 prints all its punctuation by passing strings to prin1.  When
print-circle was set, print_preprocess was creating a new hash table
for each string, causing excessive garbage collection when printing
large Lisp objects with cl-prin1.

* src/print.c (print_number_index): Fix typo in comment above.
(PRINT_CIRCLE_CANDIDATE_P): Don't create print_number_table
for top-level strings with no properties, except when
print_continuous_numbering is on.

5 years agoImprove performance of backtrace printing (bug#36566)
Gemini Lasswell [Tue, 30 Jul 2019 18:56:51 +0000 (11:56 -0700)]
Improve performance of backtrace printing (bug#36566)

* lisp/emacs-lisp/cl-print.el (cl-print-to-string-with-limit): Reduce
print-level and print-length more quickly when the structure being
printed is very large.

5 years agoImprove print output options commands in backtrace-mode (bug#36566)
Gemini Lasswell [Tue, 30 Jul 2019 17:00:27 +0000 (10:00 -0700)]
Improve print output options commands in backtrace-mode (bug#36566)

* lisp/emacs-lisp/backtrace.el (backtrace-view): Mention
:print-gensym in docstring.
(backtrace-mode-map): Add keyboard binding for
backtrace-toggle-print-gensym.  Add menu entries for
backtrace-toggle-print-circle and backtrace-toggle-print-gensym.
(backtrace--with-output-variables): Bind print-gensym with value
of :print-gensym found in view plist.
(backtrace-toggle-print-circle): Remove description of
implementation details from docstring.
(backtrace-toggle-print-gensym): New command.
(backtrace--toggle-feature): Add echo area message describing result
of command.

* test/lisp/emacs-lisp/backtrace-tests.el
(backtrace-tests--print-circle): New test.

* doc/lispref/debugging.texi (Backtraces): Document keyboard
binding for backtrace-toggle-print-gensym.

5 years ago; Remove debbugging (message ...)
Tassilo Horn [Fri, 13 Sep 2019 20:36:10 +0000 (22:36 +0200)]
; Remove debbugging (message ...)

5 years ago; Remove unused requires
Tassilo Horn [Fri, 13 Sep 2019 20:31:43 +0000 (22:31 +0200)]
; Remove unused requires

5 years ago; Improve vc-svn-list-files
Tassilo Horn [Fri, 13 Sep 2019 20:25:55 +0000 (22:25 +0200)]
; Improve vc-svn-list-files

5 years ago* lisp/help-mode.el (help-mode-menu): Fix typo. (Bug#36485)
Stefan Kangas [Mon, 1 Jul 2019 06:45:24 +0000 (08:45 +0200)]
* lisp/help-mode.el (help-mode-menu): Fix typo.  (Bug#36485)

5 years ago* doc/misc/efaq.texi: Update ancient formats. (Bug#37143)
Stefan Kangas [Thu, 22 Aug 2019 14:11:52 +0000 (16:11 +0200)]
* doc/misc/efaq.texi: Update ancient formats. (Bug#37143)

5 years agoRemove leftover XEmacs compat code and doc fixes
Stefan Kangas [Fri, 13 Sep 2019 16:06:31 +0000 (18:06 +0200)]
Remove leftover XEmacs compat code and doc fixes

* lisp/mail/feedmail.el (top-level): Remove outdated comment.
(feedmail-run-the-queue): Remove leftover XEmacs compat code.
(feedmail-nuke-bcc): Doc fix.

* lisp/emulation/viper.el (top-level, viper-mode)
* lisp/net/rfc2104.el (top-level): Doc fix.

* lisp/textmodes/table.el (top-level): Remove obsolete todo.

5 years agoChange gui--selection-value-internal comment into doc string
Stefan Kangas [Fri, 13 Sep 2019 12:53:41 +0000 (14:53 +0200)]
Change gui--selection-value-internal comment into doc string

* lisp/select.el (gui--selection-value-internal): Change comment into
doc string.  (Bug#25528)

5 years ago; Fix a typo by last commit
Michael Albinus [Fri, 13 Sep 2019 12:33:06 +0000 (14:33 +0200)]
; Fix a typo by last commit

5 years ago; Add traces in shadowfile.el
Michael Albinus [Fri, 13 Sep 2019 12:25:56 +0000 (14:25 +0200)]
; Add traces in shadowfile.el

5 years agoFix problems in tramp-test33-environment-variables
Michael Albinus [Fri, 13 Sep 2019 10:08:34 +0000 (12:08 +0200)]
Fix problems in tramp-test33-environment-variables

* test/lisp/net/tramp-tests.el (tramp-test33-environment-variables):
Use ${parameter:-word} construct.  Remove PS1 entry from
"printenv" output.
(tramp--test-check-files): Use "printenv".

5 years agoMake recent Tramp patch work for tramp-archive.el
Michael Albinus [Fri, 13 Sep 2019 10:08:02 +0000 (12:08 +0200)]
Make recent Tramp patch work for tramp-archive.el

* lisp/net/tramp.el (tramp-connectable-p): Make it work also for
tramp-archive.el.

5 years agoFix assertion violations due to non-ASCII text in menus
Eli Zaretskii [Fri, 13 Sep 2019 07:47:28 +0000 (10:47 +0300)]
Fix assertion violations due to non-ASCII text in menus

* src/xdisp.c (tool_bar_height, redisplay_tool_bar)
(display_menu_bar): If the Lisp string to be displayed in the
menu-bar or tool-bar window is multibyte, tell the display
engine to treat it as multibyte, instead of relying on the
initial determination by init_iterator (which is based on the
multibyteness of the current buffer).  (Bug#37385)

5 years agoFix saving user-defined calc commands with compositions (Bug#36720)
Jack Coughlin [Thu, 18 Jul 2019 15:16:50 +0000 (08:16 -0700)]
Fix saving user-defined calc commands with compositions (Bug#36720)

* lisp/calc/calc-prog.el (calc-user-define-permanent): Correctly save
the composition when the user specifies their formula by its command
name or key.

Copyright-paperwork-exempt: yes

5 years agoFix fill-paragraph in python docstrings (Bug#36056)
Noam Postavsky [Sun, 8 Sep 2019 14:42:19 +0000 (10:42 -0400)]
Fix fill-paragraph in python docstrings (Bug#36056)

* lisp/progmodes/python.el (python-do-auto-fill): New function.
(python-mode): Set it as normal-auto-fill-function, and don't set
fill-indent-according-to-mode.  Having the latter set during
fill-paragraph gives wrongs result, because python-indent-line doesn't
remove indentation added by filling.
* test/lisp/progmodes/python-tests.el (python-fill-docstring): New
test.

5 years ago* lisp/progmodes/sh-script.el (sh--assignment-collect): Only after `=`!
Stefan Monnier [Thu, 12 Sep 2019 19:43:50 +0000 (15:43 -0400)]
* lisp/progmodes/sh-script.el (sh--assignment-collect): Only after `=`!

5 years ago* lisp/progmodes/sh-script.el (sh-mode-map): Don't bind `=`
Stefan Monnier [Thu, 12 Sep 2019 18:26:40 +0000 (14:26 -0400)]
* lisp/progmodes/sh-script.el (sh-mode-map): Don't bind `=`

(sh-shell-initialize-variables): Use sh--assignment-collect on
post-self-insert-hook instead.
(sh--assignment-collect): New function, extracted from sh-assignment.
(sh-assignment): Use it and mark as obsolete.

5 years agoAdd `isearch-yank-until-char'
Karl Fogel [Thu, 12 Sep 2019 17:42:13 +0000 (12:42 -0500)]
Add `isearch-yank-until-char'

* lisp/isearch.el (isearch-yank-until-char): New function.
  (isearch-mode-map, isearch-menu-bar-yank-map): Add it.
  (isearch-forward): Document the new binding.

* doc/emacs/search.texi (Isearch Yanking): Document the feature.

* etc/NEWS: Mention the above.

5 years agoOptimize host name completion in Tramp
Michael Albinus [Thu, 12 Sep 2019 14:38:48 +0000 (16:38 +0200)]
Optimize host name completion in Tramp

* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-maybe-open-connection):
Throw `non-essential' at the beginning of the function.

* lisp/net/tramp.el (tramp-handle-file-exists-p):
* lisp/net/tramp-sh.el (tramp-sh-handle-file-exists-p):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-exists-p):
Run only when host is connectable.  This is due to host name
completion, which shall be optimized.

* lisp/net/tramp-smb.el (tramp-smb-do-file-attributes-with-stat)
(tramp-smb-get-file-entries): Access connection buffer only after
sending the command.

* lisp/net/tramp.el (tramp-get-buffer, tramp-get-connection-buffer):
New argument DONT-CREATE.
(tramp-message): Use it.
(tramp-get-mutex): Check, whether host is connectable.
(tramp-file-name-handler): Set thread only when host is connectable.
(tramp-connectable-p): Allow also VEC as argument.
(tramp-completion-handle-file-name-completion): Do not expand directory.

5 years ago* src/profiler.c: Leave `key` hashslots as Qunbound (bug#37382)
Stefan Monnier [Thu, 12 Sep 2019 12:25:13 +0000 (08:25 -0400)]
* src/profiler.c: Leave `key` hashslots as Qunbound (bug#37382)

Now that "key == Qunbound" is used to determine if a hash table entry
is available, we can't stash pre-allocated vectors into the `key` slot
anymore, so use the `value` slot instead.

(make_log): Pre-fill the `value` slots i.s.o `key`.
(evict_lower_half): Stash key back into `value`, i.s.o `key`.
(record_backtrace): Get pre-allocated vector for `value` i.s.o `key`.

5 years agoFix file name encoding when open_directory signals
Paul Eggert [Thu, 12 Sep 2019 07:25:47 +0000 (00:25 -0700)]
Fix file name encoding when open_directory signals

* src/dired.c (open_directory): New arg ENCODED_DIRNAME.
All callers changed.  Signal error with original name,
not encoded name.

5 years agoImprove error reporting for DOC file problems
Paul Eggert [Thu, 12 Sep 2019 06:45:32 +0000 (23:45 -0700)]
Improve error reporting for DOC file problems

* src/doc.c (get_doc_string): Report all serious errors
when DOC cannot be opened, not just fd-exhaustion errors.

5 years agoFix directory-files-and-attributes race
Paul Eggert [Thu, 12 Sep 2019 06:22:46 +0000 (23:22 -0700)]
Fix directory-files-and-attributes race

* src/dired.c (directory_files_internal): Fix race condition:
when some other process removed a file between the readdir and
the ensuing lstat, directory-files-and-attributes would return
a list containing nil.