[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#10319: 24.0.92; doc string of `file-remote-p'
From: |
Michael Albinus |
Subject: |
bug#10319: 24.0.92; doc string of `file-remote-p' |
Date: |
Tue, 20 Dec 2011 10:15:29 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux) |
"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.
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/17
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/18
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/18
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/19
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/19
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/19
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/19
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/19
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/19
- bug#10319: 24.0.92; doc string of `file-remote-p',
Michael Albinus <=
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/20
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/20
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/20
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/20
- bug#10319: 24.0.92; doc string of `file-remote-p', Drew Adams, 2011/12/20
- bug#10319: 24.0.92; doc string of `file-remote-p', Michael Albinus, 2011/12/21