mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Replace some `string-match-p' calls in Tramp
* lisp/net/tramp.el (tramp-debug-message, tramp-set-completion-function) (tramp-get-completion-methods, tramp-get-completion-user-host): * lisp/net/tramp-adb.el (tramp-adb-handle-make-process): * lisp/net/tramp-sh.el (tramp-sh-handle-make-process) (tramp-open-connection-setup-interactive-shell) (tramp-convert-file-attributes): Use `string-prefix-p'. * lisp/net/tramp.el (tramp-dissect-file-name) (tramp-progress-reporter-update, tramp-handle-insert-directory): * lisp/net/tramp-cache.el (tramp-get-hash-table) (tramp-flush-directory-properties): * lisp/net/tramp-cmds.el (tramp-append-tramp-buffers): * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory) (tramp-call-local-coding-command, tramp-get-inline-coding): * lisp/net/tramp-smb.el (tramp-smb-handle-file-attributes) (tramp-smb-handle-file-name-all-completions) (tramp-smb-handle-file-writable-p) (tramp-smb-handle-insert-directory) (tramp-smb-handle-start-file-process, ) (tramp-smb-read-file-entry): Use `tramp-compat-string-search'.
This commit is contained in:
parent
1ab9fa60e7
commit
244acc5a05
6 changed files with 47 additions and 51 deletions
|
|
@ -1065,7 +1065,7 @@ implementation will be used."
|
|||
p))))
|
||||
|
||||
;; Save exit.
|
||||
(if (string-match-p tramp-temp-buffer-name (buffer-name))
|
||||
(if (string-prefix-p tramp-temp-buffer-name (buffer-name))
|
||||
(ignore-errors
|
||||
(set-process-buffer (tramp-get-connection-process v) nil)
|
||||
(kill-buffer (current-buffer)))
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ If KEY is `tramp-cache-undefined', don't create anything, and return nil."
|
|||
(puthash key (make-hash-table :test #'equal) tramp-cache-data)))
|
||||
(when (tramp-file-name-p key)
|
||||
(dolist (elt tramp-connection-properties)
|
||||
(when (string-match-p
|
||||
(when (tramp-compat-string-search
|
||||
(or (nth 0 elt) "")
|
||||
(tramp-make-tramp-file-name key 'noloc 'nohop))
|
||||
(tramp-set-connection-property key (nth 1 elt) (nth 2 elt)))))
|
||||
|
|
@ -268,8 +268,8 @@ Remove also properties of all files in subdirectories."
|
|||
(dolist (key (hash-table-keys tramp-cache-data))
|
||||
(when (and (tramp-file-name-p key)
|
||||
(stringp (tramp-file-name-localname key))
|
||||
(string-match-p (regexp-quote directory)
|
||||
(tramp-file-name-localname key)))
|
||||
(tramp-compat-string-search
|
||||
directory (tramp-file-name-localname key)))
|
||||
(remhash key tramp-cache-data)))
|
||||
;; Remove file properties of symlinks.
|
||||
(when (and (stringp truename)
|
||||
|
|
|
|||
|
|
@ -672,7 +672,7 @@ buffer in your bug report.
|
|||
(insert "\nload-path shadows:\n==================\n")
|
||||
(ignore-errors
|
||||
(mapc
|
||||
(lambda (x) (when (string-match-p "tramp" x) (insert x "\n")))
|
||||
(lambda (x) (when (tramp-compat-string-search "tramp" x) (insert x "\n")))
|
||||
(split-string (list-load-path-shadows t) "\n")))
|
||||
|
||||
;; Append buffers only when we are in message mode.
|
||||
|
|
|
|||
|
|
@ -2603,8 +2603,8 @@ The method used must be an out-of-band method."
|
|||
(save-restriction
|
||||
(narrow-to-region beg-marker end-marker)
|
||||
;; Some busyboxes are reluctant to discard colors.
|
||||
(unless
|
||||
(string-match-p "color" (tramp-get-connection-property v "ls" ""))
|
||||
(unless (tramp-compat-string-search
|
||||
"color" (tramp-get-connection-property v "ls" ""))
|
||||
(goto-char (point-min))
|
||||
(while (re-search-forward tramp-display-escape-sequence-regexp nil t)
|
||||
(replace-match "")))
|
||||
|
|
@ -2958,7 +2958,7 @@ implementation will be used."
|
|||
p)))
|
||||
|
||||
;; Save exit.
|
||||
(if (string-match-p tramp-temp-buffer-name (buffer-name))
|
||||
(if (string-prefix-p tramp-temp-buffer-name (buffer-name))
|
||||
(ignore-errors
|
||||
(set-process-buffer p nil)
|
||||
(kill-buffer (current-buffer)))
|
||||
|
|
@ -4309,7 +4309,7 @@ process to set up. VEC specifies the connection."
|
|||
;; Use MULE to select the right EOL convention for communicating
|
||||
;; with the process.
|
||||
(let ((cs (or (and (memq 'utf-8-hfs (coding-system-list))
|
||||
(string-match-p "^Darwin" uname)
|
||||
(string-prefix-p "Darwin" uname)
|
||||
(cons 'utf-8-hfs 'utf-8-hfs))
|
||||
(and (memq 'utf-8 (coding-system-list))
|
||||
(string-match-p "utf-?8" (tramp-get-remote-locale vec))
|
||||
|
|
@ -4322,7 +4322,7 @@ process to set up. VEC specifies the connection."
|
|||
cs-encode (or (cdr cs) 'undecided)
|
||||
cs-encode
|
||||
(coding-system-change-eol-conversion
|
||||
cs-encode (if (string-match-p "^Darwin" uname) 'mac 'unix)))
|
||||
cs-encode (if (string-prefix-p "Darwin" uname) 'mac 'unix)))
|
||||
(tramp-send-command vec "(echo foo ; echo bar)" t)
|
||||
(goto-char (point-min))
|
||||
(when (search-forward "\r" nil t)
|
||||
|
|
@ -4372,7 +4372,7 @@ process to set up. VEC specifies the connection."
|
|||
;; IRIX64 bash expands "!" even when in single quotes. This
|
||||
;; destroys our shell functions, we must disable it. See
|
||||
;; <https://stackoverflow.com/questions/3291692/irix-bash-shell-expands-expression-in-single-quotes-yet-shouldnt>.
|
||||
(when (string-match-p "^IRIX64" uname)
|
||||
(when (string-prefix-p "IRIX64" uname)
|
||||
(tramp-send-command vec "set +H" t))
|
||||
|
||||
;; Disable tab expansion.
|
||||
|
|
@ -4628,12 +4628,12 @@ means standard output and thus the current buffer), or nil (which
|
|||
means discard it)."
|
||||
(tramp-call-process
|
||||
nil tramp-encoding-shell
|
||||
(when (and input (not (string-match-p "%s" cmd))) input)
|
||||
(when (and input (not (tramp-compat-string-search "%s" cmd))) input)
|
||||
(if (eq output t) t nil)
|
||||
nil
|
||||
tramp-encoding-command-switch
|
||||
(concat
|
||||
(if (string-match-p "%s" cmd) (format cmd input) cmd)
|
||||
(if (tramp-compat-string-search "%s" cmd) (format cmd input) cmd)
|
||||
(if (stringp output) (concat " >" output) ""))))
|
||||
|
||||
(defconst tramp-inline-compress-commands
|
||||
|
|
@ -5223,7 +5223,7 @@ Return ATTR."
|
|||
(when (stringp (car attr))
|
||||
(aset (nth 8 attr) 0 ?l)))
|
||||
;; Convert directory indication bit.
|
||||
(when (string-match-p "^d" (nth 8 attr))
|
||||
(when (string-prefix-p "d" (nth 8 attr))
|
||||
(setcar attr t))
|
||||
;; Convert symlink from `tramp-do-file-attributes-with-stat'.
|
||||
;; Decode also multibyte string.
|
||||
|
|
@ -5803,12 +5803,13 @@ function cell is returned to be applied on a buffer."
|
|||
(with-tramp-connection-property (tramp-get-process vec) prop
|
||||
(tramp-find-inline-encoding vec)
|
||||
(tramp-get-connection-property (tramp-get-process vec) prop nil)))
|
||||
(prop1 (if (string-match-p "encoding" prop)
|
||||
(prop1 (if (tramp-compat-string-search "encoding" prop)
|
||||
"inline-compress" "inline-decompress"))
|
||||
compress)
|
||||
;; The connection property might have been cached. So we must
|
||||
;; send the script to the remote side - maybe.
|
||||
(when (and coding (symbolp coding) (string-match-p "remote" prop))
|
||||
(when (and coding (symbolp coding)
|
||||
(tramp-compat-string-search "remote" prop))
|
||||
(let ((name (symbol-name coding)))
|
||||
(while (string-match "-" name)
|
||||
(setq name (replace-match "_" nil t name)))
|
||||
|
|
@ -5820,7 +5821,7 @@ function cell is returned to be applied on a buffer."
|
|||
;; Return the value.
|
||||
(cond
|
||||
((and compress (symbolp coding))
|
||||
(if (string-match-p "decompress" prop1)
|
||||
(if (tramp-compat-string-search "decompress" prop1)
|
||||
`(lambda (beg end)
|
||||
(,coding beg end)
|
||||
(let ((coding-system-for-write 'binary)
|
||||
|
|
@ -5839,16 +5840,16 @@ function cell is returned to be applied on a buffer."
|
|||
(,coding (point-min) (point-max)))))
|
||||
((symbolp coding)
|
||||
coding)
|
||||
((and compress (string-match-p "decoding" prop))
|
||||
((and compress (tramp-compat-string-search "decoding" prop))
|
||||
(format
|
||||
;; Windows shells need the program file name after
|
||||
;; the pipe symbol be quoted if they use forward
|
||||
;; slashes as directory separators.
|
||||
(cond
|
||||
((and (string-match-p "local" prop)
|
||||
((and (tramp-compat-string-search "local" prop)
|
||||
(eq system-type 'windows-nt))
|
||||
"(%s | \"%s\")")
|
||||
((string-match-p "local" prop) "(%s | %s)")
|
||||
((tramp-compat-string-search "local" prop) "(%s | %s)")
|
||||
(t "(%s | %s >%%s)"))
|
||||
coding compress))
|
||||
(compress
|
||||
|
|
@ -5856,14 +5857,14 @@ function cell is returned to be applied on a buffer."
|
|||
;; Windows shells need the program file name after
|
||||
;; the pipe symbol be quoted if they use forward
|
||||
;; slashes as directory separators.
|
||||
(if (and (string-match-p "local" prop)
|
||||
(if (and (tramp-compat-string-search "local" prop)
|
||||
(eq system-type 'windows-nt))
|
||||
"(%s <%%s | \"%s\")"
|
||||
"(%s <%%s | %s)")
|
||||
compress coding))
|
||||
((string-match-p "decoding" prop)
|
||||
((tramp-compat-string-search "decoding" prop)
|
||||
(cond
|
||||
((string-match-p "local" prop) (format "%s" coding))
|
||||
((tramp-compat-string-search "local" prop) (format "%s" coding))
|
||||
(t (format "%s >%%s" coding))))
|
||||
(t
|
||||
(format "%s <%%s" coding)))))))
|
||||
|
|
|
|||
|
|
@ -849,7 +849,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
|
||||
;; Check result.
|
||||
(when entry
|
||||
(list (and (string-match-p "d" (nth 1 entry))
|
||||
(list (and (tramp-compat-string-search "d" (nth 1 entry))
|
||||
t) ;0 file type
|
||||
-1 ;1 link count
|
||||
uid ;2 uid
|
||||
|
|
@ -982,7 +982,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
(mapcar
|
||||
(lambda (x)
|
||||
(list
|
||||
(if (string-match-p "d" (nth 1 x))
|
||||
(if (tramp-compat-string-search "d" (nth 1 x))
|
||||
(file-name-as-directory (nth 0 x))
|
||||
(nth 0 x))))
|
||||
(tramp-smb-get-file-entries directory)))))))
|
||||
|
|
@ -1021,7 +1021,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
(defun tramp-smb-handle-file-writable-p (filename)
|
||||
"Like `file-writable-p' for Tramp files."
|
||||
(if (file-exists-p filename)
|
||||
(string-match-p
|
||||
(tramp-compat-string-search
|
||||
"w"
|
||||
(or (tramp-compat-file-attribute-modes (file-attributes filename)) ""))
|
||||
(let ((dir (file-name-directory filename)))
|
||||
|
|
@ -1076,9 +1076,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
;; Check for matching entries.
|
||||
(mapcar
|
||||
(lambda (x)
|
||||
(when (string-match-p
|
||||
(format "^%s" base) (nth 0 x))
|
||||
x))
|
||||
(when (string-match-p (format "^%s" base) (nth 0 x)) x))
|
||||
entries)
|
||||
;; We just need the only and only entry FILENAME.
|
||||
(list (assoc base entries)))))
|
||||
|
|
@ -1088,14 +1086,14 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
(sort
|
||||
entries
|
||||
(lambda (x y)
|
||||
(if (string-match-p "t" switches)
|
||||
(if (tramp-compat-string-search "t" switches)
|
||||
;; Sort by date.
|
||||
(time-less-p (nth 3 y) (nth 3 x))
|
||||
;; Sort by name.
|
||||
(string-lessp (nth 0 x) (nth 0 y))))))
|
||||
|
||||
;; Handle "-F" switch.
|
||||
(when (string-match-p "F" switches)
|
||||
(when (tramp-compat-string-search "F" switches)
|
||||
(mapc
|
||||
(lambda (x)
|
||||
(unless (zerop (length (car x)))
|
||||
|
|
@ -1124,7 +1122,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
(expand-file-name
|
||||
(nth 0 x) (file-name-directory filename))
|
||||
'string)))))
|
||||
(when (string-match-p "l" switches)
|
||||
(when (tramp-compat-string-search "l" switches)
|
||||
(insert
|
||||
(format
|
||||
"%10s %3d %-8s %-8s %8s %s "
|
||||
|
|
@ -1153,7 +1151,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
|
|||
(put-text-property start (point) 'dired-filename t))
|
||||
|
||||
;; Insert symlink.
|
||||
(when (and (string-match-p "l" switches)
|
||||
(when (and (tramp-compat-string-search "l" switches)
|
||||
(stringp (tramp-compat-file-attribute-type attr)))
|
||||
(insert " -> " (tramp-compat-file-attribute-type attr))))
|
||||
|
||||
|
|
@ -1551,7 +1549,7 @@ component is used as the target of the symlink."
|
|||
|
||||
;; Save exit.
|
||||
(with-current-buffer (tramp-get-connection-buffer v)
|
||||
(if (string-match-p tramp-temp-buffer-name (buffer-name))
|
||||
(if (tramp-compat-string-search tramp-temp-buffer-name (buffer-name))
|
||||
(progn
|
||||
(set-process-buffer (tramp-get-connection-process v) nil)
|
||||
(kill-buffer (current-buffer)))
|
||||
|
|
@ -1857,10 +1855,12 @@ are listed. Result is the list (LOCALNAME MODE SIZE MTIME)."
|
|||
mode (or (match-string 1 line) "")
|
||||
mode (format
|
||||
"%s%s"
|
||||
(if (string-match-p "D" mode) "d" "-")
|
||||
(if (tramp-compat-string-search "D" mode) "d" "-")
|
||||
(mapconcat
|
||||
(lambda (_x) "") " "
|
||||
(concat "r" (if (string-match-p "R" mode) "-" "w") "x")))
|
||||
(format
|
||||
"r%sx"
|
||||
(if (tramp-compat-string-search "R" mode) "-" "w"))))
|
||||
line (substring line 0 -6))
|
||||
(cl-return))
|
||||
|
||||
|
|
|
|||
|
|
@ -1625,7 +1625,8 @@ default values are used."
|
|||
(setq v (tramp-dissect-hop-name hop)
|
||||
hop (and hop (tramp-make-tramp-hop-name v))))
|
||||
(let ((tramp-default-host
|
||||
(or (and v (not (string-match-p "%h" (tramp-file-name-host v)))
|
||||
(or (and v (not (tramp-compat-string-search
|
||||
"%h" (tramp-file-name-host v)))
|
||||
(tramp-file-name-host v))
|
||||
tramp-default-host)))
|
||||
(setq method (tramp-find-method method user host)
|
||||
|
|
@ -1973,7 +1974,7 @@ ARGUMENTS to actually emit the message (if applicable)."
|
|||
(if (not btf)
|
||||
(setq fn "")
|
||||
(and (symbolp btf) (setq fn (symbol-name btf))
|
||||
(or (not (string-match-p "^tramp" fn))
|
||||
(or (not (string-prefix-p "tramp" fn))
|
||||
(get btf 'tramp-suppress-trace))
|
||||
(setq fn nil))
|
||||
(setq btn (1+ btn))))
|
||||
|
|
@ -2225,7 +2226,7 @@ If VAR is nil, then we bind `v' to the structure and `method', `user',
|
|||
"Report progress of an operation for Tramp."
|
||||
(let* ((parameters (cdr reporter))
|
||||
(message (aref parameters 3)))
|
||||
(when (string-match-p message (or (current-message) ""))
|
||||
(when (tramp-compat-string-search message (or (current-message) ""))
|
||||
(tramp-compat-progress-reporter-update reporter value suffix))))
|
||||
|
||||
(defmacro with-tramp-progress-reporter (vec level message &rest body)
|
||||
|
|
@ -2339,7 +2340,7 @@ Example:
|
|||
(unless (and (functionp (nth 0 (car v)))
|
||||
(cond
|
||||
;; Windows registry.
|
||||
((string-match-p "^HKEY_CURRENT_USER" (nth 1 (car v)))
|
||||
((string-prefix-p "HKEY_CURRENT_USER" (nth 1 (car v)))
|
||||
(and (memq system-type '(cygwin windows-nt))
|
||||
(zerop
|
||||
(tramp-call-process
|
||||
|
|
@ -2998,8 +2999,7 @@ remote host and localname (filename on remote host)."
|
|||
"Return all method completions for PARTIAL-METHOD."
|
||||
(mapcar
|
||||
(lambda (method)
|
||||
(and method
|
||||
(string-match-p (concat "^" (regexp-quote partial-method)) method)
|
||||
(and method (string-prefix-p partial-method method)
|
||||
(tramp-completion-make-tramp-file-name method nil nil nil)))
|
||||
(mapcar #'car tramp-methods)))
|
||||
|
||||
|
|
@ -3011,8 +3011,7 @@ PARTIAL-USER must match USER, PARTIAL-HOST must match HOST."
|
|||
(cond
|
||||
|
||||
((and partial-user partial-host)
|
||||
(if (and host
|
||||
(string-match-p (concat "^" (regexp-quote partial-host)) host)
|
||||
(if (and host (string-prefix-p partial-host host)
|
||||
(string-equal partial-user (or user partial-user)))
|
||||
(setq user partial-user)
|
||||
(setq user nil
|
||||
|
|
@ -3020,16 +3019,12 @@ PARTIAL-USER must match USER, PARTIAL-HOST must match HOST."
|
|||
|
||||
(partial-user
|
||||
(setq host nil)
|
||||
(unless
|
||||
(and user
|
||||
(string-match-p (concat "^" (regexp-quote partial-user)) user))
|
||||
(unless (and user (string-prefix-p partial-user user))
|
||||
(setq user nil)))
|
||||
|
||||
(partial-host
|
||||
(setq user nil)
|
||||
(unless
|
||||
(and host
|
||||
(string-match-p (concat "^" (regexp-quote partial-host)) host))
|
||||
(unless (and host (string-prefix-p partial-host host))
|
||||
(setq host nil)))
|
||||
|
||||
(t (setq user nil
|
||||
|
|
@ -3707,7 +3702,7 @@ User is always nil."
|
|||
(list filename switches wildcard full-directory-p))
|
||||
;; `ls-lisp' always returns full listings. We must remove
|
||||
;; superfluous parts.
|
||||
(unless (string-match-p "l" switches)
|
||||
(unless (tramp-compat-string-search "l" switches)
|
||||
(save-excursion
|
||||
(goto-char (point-min))
|
||||
(while (setq start
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue