From: Michael Albinus <michael.albinus@gmx.de>
To: "Drew Adams" <drew.adams@oracle.com>
Cc: 10319@debbugs.gnu.org
Subject: bug#10319: 24.0.92; doc string of `file-remote-p'
Date: Tue, 20 Dec 2011 10:15:29 +0100 [thread overview]
Message-ID: <87zkend2oe.fsf@gmx.de> (raw)
In-Reply-To: <9F8218E3FA3645D9B59B2F8EEE480A8C@us.oracle.com> (Drew Adams's message of "Mon, 19 Dec 2011 13:29:31 -0800")
"Drew Adams" <drew.adams@oracle.com> writes:
>> The second sentence means that a relative filename like
>> "/sudo::../../.." does not make sense, because it cannot
>> expand out of the "/sudo::" jail.
>
> So what are we trying to tell _users_ here?
> Is this what we are really trying to say?
>
> FILE must be an absolute file name.
>
> If so, what should we say happens if you nevertheless pass a relative
> file name? Return value is unspecified (could be nil or non-nil)? An
> error is raised? What should we tell users is the behavior?
Any relative filename cannot expand to a different remote connection, or
a filename of your local filesystem. But you are right, this information
is irrelevant for the docstring of `file-remote-p'.
>> > We should also perhaps say what "the complete
>> > identification" is/means. IOW, when IDENTIFICATION is nil,
>> > what can we say about the return value?
>>
>> In that case, the returned string could make a local file
>> name remote. We could always offer to apply
>> (concat (file-remote-p "whatever") "local-file-name")
>> given that `concat' accepts nil as argument.
>
> Sorry, I just don't understand your reply to my question (what is the
> complete identification - what is returned if IDENTIFICATION is nil).
> Could you rephrase or elaborate?
When IDENTIFICATION is nil, the returned string is everything until the
last ":" (with expanded default method, default user, default host).
(file-remote-p "/sudo::/") => "/sudo:root@localhost:"
(file-remote-p "/localhost:/") => "/scpc:localhost:"
What I have tried to explain is a common technique for creation of new
remote filenames, derived from an existing one. Let's say you have a
variable `file' containing the remote filename "/sudo::/path/to/file",
and you want to create a new remote filename for the file "/bin/sh". You
apply then (concat (file-remote-p file) "/bin/sh")
> Thx - Drew
Best reards, Michael.
next prev parent reply other threads:[~2011-12-20 9:15 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-18 2:17 bug#10319: 24.0.92; doc string of `file-remote-p' Drew Adams
2011-12-18 8:33 ` Michael Albinus
2011-12-18 15:02 ` Drew Adams
2011-12-19 8:40 ` Michael Albinus
2011-12-19 16:10 ` Drew Adams
2011-12-19 18:26 ` Michael Albinus
2011-12-19 19:44 ` Drew Adams
2011-12-19 21:18 ` Michael Albinus
2011-12-19 21:29 ` Drew Adams
2011-12-20 9:15 ` Michael Albinus [this message]
2011-12-20 15:53 ` Drew Adams
2011-12-20 17:02 ` Michael Albinus
2011-12-20 17:08 ` Drew Adams
2011-12-20 17:14 ` Michael Albinus
2011-12-20 17:33 ` Drew Adams
2011-12-21 18:34 ` Michael Albinus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zkend2oe.fsf@gmx.de \
--to=michael.albinus@gmx.de \
--cc=10319@debbugs.gnu.org \
--cc=drew.adams@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.