Commit graph

3288 commits

Author SHA1 Message Date
Michael Albinus
ab37ceb9ee Fix Bug#31489
* doc/misc/tramp.texi (Frequently Asked Questions):
Mention `tramp-ignored-file-name-regexp'.  Improve index.

; * etc/NEWS: Mention `tramp-ignored-file-name-regexp'.

* lisp/net/tramp.el (tramp-ignored-file-name-regexp): New defcustom.
(tramp-tramp-file-p): Use it.  Check also for `tramp-mode'.
(tramp-file-name-handler): Don't check for `tramp-mode'.  (Bug#31489)

* test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax):
Extend test.
2018-05-21 19:48:15 +02:00
Michael Albinus
01120ec3d2 Fix creation of Secret Service items in auth-source
* lisp/auth-source.el (auth-source-secrets-create): Use ´apply'.
(auth-source-secrets-saver): Handle `auth-source-save-behavior'
equal t.

* lisp/net/secrets.el (secrets-get-items): Do not call
`secrets-open-session' here ...
(top): ... but here.

* test/lisp/auth-source-tests.el
(auth-source-test-secrets-create-secret): Bind
`auth-source-save-behavior' to t.  Cleanup.

* test/lisp/net/secrets-tests.el (secrets-test00-availability):
After loading secets.el, a session is already opened.
(secrets-test02-collections, secrets-test03-items)
(secrets-test04-search): Open a new session.
2018-05-16 11:22:51 +02:00
Michael Albinus
b3956d85c7 Fix Bug#29575
* lisp/net/secrets.el (secrets-create-item): The new item does not
need a unique label.
(secrets-item-path, secrets-get-secret, secrets-get-attributes)
(secrets-get-attribute, secrets-delete-item): ITEM can also be an
object path.  (Bug#29575)

* test/lisp/net/secrets-tests.el (secrets-test03-items):
Test also creation of two items with same label.  Test
`secrets-get-secret', `secrets-get-attribute' and
`secrets-get-attributes' with object path.
(secrets-test04-search): Harden test.
2018-05-15 14:48:11 +02:00
Michael Albinus
c595d5dd00 Fix Bug#31068
* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
Unregister unless `tramp-archive-enabled'.  (Bug#31068)
2018-05-15 11:06:18 +02:00
Michael Albinus
30bd61d674 * lisp/net/ange-ftp.el (ange-ftp-allow-child-lookup):
Do not use obsolete ´dired-local-variables-file'.
2018-05-14 17:14:17 +02:00
Michael Albinus
e3d115ae86 Tramp updates
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
Parse multibyte symlinks correctly.

* test/lisp/net/tramp/tramp-tests.el (tramp--test-utf8):
Improve backward compatibility.
2018-05-11 18:38:46 +02:00
Glenn Morris
766b057e41 Merge from origin/emacs-26
1d732d6 (origin/emacs-26) Fix gud-statement for pdb
91a68b5 ; * msdos/INSTALL: Add info about GCC versions.
7ddcc9a Document 'custom-group'
58f9e15 A minor addition to etc/DEBUG
4590414 Avoid errors in ispell.el when Enchant returns empty extra chars
d0d75f9 Make 'ispell-initialize-spellchecker-hook' work again
b90ce66 Handle selected_window change in prepare_menu_bars (Bug#31312)
79ad0b3 ; * INSTALL: Fix Emacs version number.  (Bug#31358)
91de88b Fix report-emacs-bug via mailclient on MS-Windows
f4b5ff2 Port collation tests to glibc 2.27
2018-05-07 07:50:49 -07:00
Michael Albinus
6464a8d702 Fix Bug#31272
* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
(tramp-do-directory-files-and-attributes-with-stat)
(tramp-sh-handle-insert-directory): Use "--show-control-chars".
(tramp-convert-file-attributes): Decode multibyte strings,
produced by "stat".  (Bug#31272)

* test/lisp/net/tramp-tests.el (tramp--test-utf8): Extend test.
2018-05-06 12:39:36 +02:00
Eli Zaretskii
91de88bfeb Fix report-emacs-bug via mailclient on MS-Windows
* lisp/net/browse-url.el (browse-url-default-windows-browser):
On MS-Windows, call url-unhex-string only for file:// URLs.
(Bug#31351)
2018-05-03 21:04:17 +03:00
Basil L. Contovounesios
f2c74543ed Fix off-by-one history pruning (bug#31211)
* lisp/subr.el (add-to-history): Clarify docstring.
Protect against negative history-length and unnecessary variable
modification, as per read_minibuf.

* lisp/ido.el (ido-record-command):
* lisp/international/mule-cmds.el (deactivate-input-method):
(set-language-environment-input-method):
* lisp/isearch.el (isearch-done):
* lisp/minibuffer.el (read-file-name-default):
* lisp/net/eww.el (eww-save-history):
* lisp/simple.el (edit-and-eval-command, repeat-complex-command):
(command-execute, kill-new, push-mark):
* src/callint.c (Fcall_interactively):
* src/minibuf.c (read_minibuf): Delegate to add-to-history.

* test/lisp/simple-tests.el (command-execute-prune-command-history):
* test/src/callint-tests.el
(call-interactively-prune-command-history): New tests.
2018-05-02 20:18:07 -04:00
Michael Albinus
a5246dc02b Adapt Tramp for auth-source
* lisp/net/tramp.el (tramp-read-passwd): auth-source could return
cascaded functions.
2018-05-02 18:12:48 +02:00
Michael Albinus
8ae7c424c4 Fix some edge cases of tramp-smb
* lisp/net/tramp-smb.el (tramp-smb-errors):
Add "NT_STATUS_REVISION_MISMATCH".
(tramp-smb-handle-delete-directory): Check, that the directory
has been removed indeed.
(tramp-smb-get-localname): Add further checks on filename syntax.

* lisp/net/tramp.el (tramp-localname-regexp): Do not allow linefeeds.

* test/lisp/net/tramp-tests.el (tramp-smb-get-localname): Declare.
(auth-source-save-behavior): Set it to nil.
(tramp-test01-file-name-syntax): Extend, checking for linefeeds.
(tramp-test03-file-name-host-rules, tramp--test-utf8): Refine tests.
(tramp-test03-file-name-method-rules): New test.
(tramp--test-ignore-add-name-to-file-error): New defmacro.
(tramp-test21-file-links): Use it.
2018-05-02 12:31:51 +02:00
Stefan Monnier
bca6c43480 * lisp/net/socks.el: Use lexical-binding and process properties
Remove unneeded requires.  Better following commenting conventions.
(socks-connections): Remove (use process properties instead).
(socks-wait-for-state-change): Make it a function.
(open-network-stream): Use an advice when overriding.
(socks-send-command): Avoid string-make-unibyte.
(socks--open-network-stream): New function (extracted from
socks-open-network-stream).
(socks-open-network-stream): Rewrite using it.
2018-04-29 22:25:09 -04:00
Glenn Morris
6e65b1e8a9 * lisp/net/eudc.el (split-string): Remove pre-21 fallback definition. 2018-04-25 14:40:28 -04:00
Glenn Morris
cab400aacd socks.el: remove pre-21 compatibility code
* lisp/net/socks.el (socks-split-string): Remove.
(socks-nslookup-host): Just use split-string.
2018-04-24 21:13:00 -04:00
Michael Albinus
0ecc10a777 Let Tramp save passwords
* lisp/auth-source.el (auth-source-secrets-saver): New defun.
(auth-source-secrets-create): Use it.

* lisp/net/secrets.el (secrets-struct-secret-content-type):
(secrets-create-item): Do not hard-code :xdg:schema.

* lisp/net/tramp.el (tramp-password-save-function): New defvar.
(tramp-read-passwd): Set it properly.
(tramp-process-actions):
* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
Save password.

* lisp/net/tramp-cmds.el (tramp-bug): Don't report
`tramp-password-save-function'.

* test/lisp/net/secrets-tests.el (secrets-test03-items):
Extend test with another :xdg:schema.
2018-04-23 10:16:06 +02:00
Michael Albinus
e7044d294c Ensure proper EOL handling for Tramp on macOS
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Ensure proper EOL handling for Darwin.
2018-04-23 10:01:27 +02:00
Glenn Morris
be96414a62 * lisp/net/newst-backend.el (newsticker--sentinel-work):
Replace obsolete form of libxml-parse-xml-region.
2018-04-20 13:46:45 -04:00
Michael Albinus
4e464fa98a Handle chrooted environments in Tramp
* doc/misc/tramp.texi (Frequently Asked Questions): New item, chrooted
environments.

* lisp/net/tramp.el (tramp-local-host-regexp): Make it a defcustom.
Allow nil.
(tramp-local-host-p):
* lisp/net/tramp-sh.el (tramp-compute-multi-hops): Handle this.
2018-04-19 11:04:01 +02:00
Basil L. Contovounesios
f10fa789ca Set :version of shr faces
* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
Set :version tag (bug#31200).
2018-04-17 21:46:26 +02:00
Lars Ingebrigtsen
d742d4ca2e shr doc string fix
* lisp/net/shr.el (shr-strike-through, shr-link)
(shr-selected-link): Doc string fix.
2018-04-17 21:43:34 +02:00
Basil L. Contovounesios
3dfec182d2 Modernise face specs and set version tags in eww/shr
* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
Set :version tag (bug#31200).

* lisp/net/eww.el (eww-form-text, eww-form-textarea):
* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
Use (DISPLAY . PLIST) face spec syntax as recommended in
'(elisp) Defining Faces'.
2018-04-17 21:42:04 +02:00
Lars Ingebrigtsen
d12800303f Tweak shr window width computation
* lisp/net/shr.el (shr-insert-document): The computation of the
window width is apparently one pixel too wide for the shr line
folding algorithm (bug#31196).
2018-04-17 20:34:12 +02:00
Lars Ingebrigtsen
950d6cc744 Reimplement shr-next-link' and shr-previous-link'
* lisp/net/shr.el (shr-next-link): Use
`text-property-search-forward'.
(shr-previous-link): Use `text-property-search-backward'.
2018-04-17 18:53:23 +02:00
Stefan Monnier
836dce63c3 EUDC: Enable lexical binding and do some cleanups
* lisp/net/eudc.el: Enable lexical binding.
(cl-lib): Always require cl-lib, not only when byte compiling.
(eudc-mode-map): Set parent keymap within let form.
(eudc-update-local-variables): Use #' read syntax for function
argument to map function.
(eudc-select): Likewise.
(eudc-format-attribute-name-for-display): Likewise
(eudc-filter-duplicate-attributes): Likewise.
(eudc-format-query): Likewise.
(eudc-expand-inline): Likewise.
(eudc-query-form): Likewise.
(eudc-print-attribute-value): Use mapc instead of mapcar.
(eudc-filter-partial-records): Use cl-every.
(eudc-distribute-field-on-records): Use delete-dups to
simplify function.
(eudc-expand-inline): Replace while with dolist and let form.
(eudc-query-form): Set inhibit-read-only after switching
buffers.  Remove useless and call.
(eudc-load-eudc): Add a FIXME comment.
2018-04-15 19:24:15 -04:00
Lars Ingebrigtsen
a37a14e0a8 Make eww handle "http://a/../../../g"
* lisp/net/eww.el (eww): Strip leading elements off URLs on the
form "http://a/../../../g", because that's what all the other
browsers do (bug#8622).
2018-04-15 22:20:28 +02:00
Lars Ingebrigtsen
60ec0c7960 Query the user whether to increase stack depth in shr
* lisp/net/shr.el (shr-insert-document): Bind `max-specpdl-size'
here... (bug#30675).
(shr-descend): So that we can increase it temporarily here if the
user wants to.
2018-04-15 19:01:32 +02:00
Lars Ingebrigtsen
a5f2403cc2 Avoid an infloop in shr filling when not using fonts
* lisp/net/shr.el (shr-fill-line): If we have an indentation
that's wider than the width of what we're trying to fill, just
give up.  This avoids an infloop when `shr-use-fonts' in nil.
2018-04-15 15:17:15 +02:00
Lars Ingebrigtsen
196dc887d8 Further shr line folding/link continuation tweaks
* lisp/net/shr.el (shr-fill-line): Tweak the link continuations
further when folding lines.
2018-04-14 22:38:53 +02:00
Lars Ingebrigtsen
7e012d0384 Tweak shr link text property adjustments when folding
* lisp/net/shr.el (shr-fill-line): If a link starts at the first
word on a new folded line, then don't copy the link properties to
the newline inserted.
2018-04-14 21:11:05 +02:00
Lars Ingebrigtsen
0a299bd9a0 Tweak mailcap precedence so that Emacs values are heeded better
* lisp/net/mailcap.el (mailcap-parse-mailcaps): Place entries from
system-wide mailcap files after the values that are distributed
with Emacs, and the ones from ~/.mailcap before.
(mailcap-parse-mailcap): Take an optional `after' parameter to
achieve that.
(mailcap-add-mailcap-entry): Ditto.
2018-04-14 14:50:14 +02:00
Lars Ingebrigtsen
0263216ec3 Don't bind image commands on eww non-image links
* lisp/net/eww.el (eww-link-keymap): Only inherit the normal shr
keymap.
(eww-image-link-keymap): New keymap with the image bindings.
(eww-tag-a): Use the appropriate one on links (bug#30148).
2018-04-14 00:17:36 +02:00
Lars Ingebrigtsen
bdc2453fe8 Tweak the fonts applied to shr indentation
* lisp/net/shr.el (shr-fill-line): Don't use fonts (especially
link fonts) over indentation, because that's ugly..
2018-04-13 22:27:21 +02:00
Lars Ingebrigtsen
7e47d44da4 Prefer settings from ~/.mailcap over system and Emacs settings
* doc/misc/emacs-mime.texi (mailcap): Document the variable and
how mailcap chooses which viewer to use.

* lisp/net/mailcap.el (mailcap-prefer-mailcap-viewers): New variable.
(mailcap-mime-info): Use it.
2018-04-13 19:08:16 +02:00
Lars Ingebrigtsen
712607b05a Fix bug in shr-urlify introduced in previous patch
* lisp/net/shr.el (shr-urlify): Not all URLs have domains, so
check for that before doing IDNA.
2018-04-13 18:35:07 +02:00
Lars Ingebrigtsen
b1943e84bc Make shr support inline <div>s
* lisp/net/shr.el (shr-tag-div): Support display: inline; for
<div>, since that's a very common thing (bug#25588).
2018-04-13 17:30:59 +02:00
Lars Ingebrigtsen
c194be368c Notify the user a bit more before clicking IDNA links
* lisp/net/shr.el (shr-urlify): Show the puny-encoded domain name
in the mouseover string (bug#25600).
2018-04-13 17:11:07 +02:00
Lars Ingebrigtsen
a53bac3142 gnutls.el now needs punycode
* lisp/net/gnutls.el (puny): Require punycode.
2018-04-13 16:39:17 +02:00
Lars Ingebrigtsen
4a63023303 Make Unicode domain names work again in URL after recent changes
* lisp/net/gnutls.el (open-gnutls-stream): IDNA-encode hostnames
before passing them on to gnutls for verification.

* lisp/net/network-stream.el (network-stream-open-starttls): Ditto.

* lisp/url/url-http.el (url-http--get-referer): Be IDNA-aware.
(url-http-create-request): Don't de-Unicodify host names, because
they may be IDNA names (that are later encoded).

* lisp/url/url-util.el (url-domain): Be IDNA-aware when doing
domain name computations.
2018-04-13 16:38:10 +02:00
Lars Ingebrigtsen
013bb2097e Use a separate history for the eww prompt
* lisp/net/eww.el (eww-prompt-history): A separate history
variable for the interactive eww prompt.
(eww): Use it.
2018-04-13 15:42:53 +02:00
Michael Albinus
1f31c1348c Fix Bug#30246
* lisp/auth-source.el (auth-source-secrets-search): Do not
suppress creation.
(auth-source-secrets-create): Implement it.  (Bug#30246)

* lisp/net/secrets.el (secrets-debug): Set default to nil.

* test/lisp/auth-source-tests.el (secrets): Require it.
(auth-source-test-secrets-create-secret): New test.
2018-04-13 15:21:24 +02:00
Peder O. Klingenberg
9822a6a570 Change gnutls-verify-error to be first-match
* doc/misc/url.texi (Customization): Describe the new user
option url-lastloc-privacy-level.

* lisp/net/eww.el (eww-render): Set url-current-lastloc to the
url we are rendering, to get the referer header right on
subsequent requests.

* lisp/url/url-http.el (url-http--get-referer): New function
to determine which referer to send, if any, considering the
users privacy settings and the target url we are visiting.
(url-http-referer): New variable keeping track of the referer
computed by url-http--get-referer
(url-http-create-request): Use url-http-referer instead of the
optional argument to set up the referer header.  Leave
checking of privacy settings to url-http--get-referer.
(url-http): Set up url-http-referer by using
url-http--get-referer.

* lisp/url/url-queue.el (url-queue): New struct member
context-buffer for keeping track of the context a queued job
started from.
(url-queue-retrieve): Store the current buffer in the queue
object.
(url-queue-start-retrieve): Make sure url-retrieve is called
in the context of the original buffer, if available.

* lisp/url/url-util.el (url-domain): New function to determine
the domain of a given URL.

* lisp/url/url-vars.el (url-current-lastloc): New variable to
keep track of the desired "last location" (referer header).
(url-lastloc-privacy-level): New custom setting for more
fine-grained control over how lastloc (referer) is sent to
servers (Bug#27012).
2018-04-13 15:08:18 +02:00
Lars Ingebrigtsen
fa41693799 Make #anchors work again in eww
* lisp/net/eww.el (eww-render): When we have a #link link, then
url.el will say that we have a redirect to a non-#link link, so
get the anchor before url.el mangles the URL (bug#28441).
(eww-display-html): ... and don't get it here, because it's gone
by now.

Test URL: http://www.gnu.org/s/hyperbole/#summary
2018-04-13 14:55:55 +02:00
Robert Pluim
0a71996423 Doc fix after previous gnutls patch
* lisp/net/gnutls.el (gnutls-verify-error): Mention that the
matching is first-match (bug#29977).
2018-04-13 14:44:41 +02:00
Robert Pluim
d5cf7330fa Change gnutls-verify-error to be first-match
* lisp/net/gnutls.el (gnutls-boot-parameters): Convert to
first-match for gnutls-verify-error rather than any-match
(bug#29977).
2018-04-13 14:24:11 +02:00
Lars Ingebrigtsen
4f4c7b8083 When opening external links in eww, blink the link
* lisp/net/eww.el (eww-follow-link): Ditto.

* lisp/net/shr.el (shr-selected-link): New face (bug#25096).
(shr--blink-link): New function to blink links.
(shr--current-link-region): New utility function.
(shr-browse-url): Use it to blink external links.

Blinking the link allows the user to get immediate feedback that the
action has been performed.  Opening the external browser may take a
while, and may not be obvious that is going on.
2018-04-13 14:17:51 +02:00
Lars Ingebrigtsen
93678bffe6 Remove unused local variable 2018-04-13 02:23:49 +02:00
Lars Ingebrigtsen
45c4c03f0d Make eww render <select> elements again
* lisp/net/eww.el (eww-tag-select): Actually render <select>
elements (bug#25703).
2018-04-13 02:08:40 +02:00
Lars Ingebrigtsen
dd0d2e0fdd <label> shouldn't introduce a line break
* lisp/net/shr.el (shr-tag-label): Remove so that labels don't
break lines (because they shouldn't: They're usually part of a
selection interface) (bug#30557).
2018-04-13 01:51:56 +02:00
Lars Ingebrigtsen
f8db783d09 Tweak the eww readability function
* lisp/net/eww.el (eww-highest-readability): Require that the
readable bit is at least 100 words (bug#30445).
2018-04-13 00:14:32 +02:00