From murdoch@dunc@n @end|ng |rom gm@||@com  Thu Jun  6 23:50:27 2019
From: murdoch@dunc@n @end|ng |rom gm@||@com (Duncan Murdoch)
Date: Thu, 6 Jun 2019 17:50:27 -0400
Subject: [Rd] [R] Open a file which name contains a tilde
In-Reply-To: <CABcYAdLgLrBwNW4A4EgYx0RwD9zjCo4Mpe7S05SeohoNmMQSGg@mail.gmail.com>
References: <20190605160714.GA24635@debian64>
 <20190606135957.0be4db10@trisector>
 <CABcYAdLgLrBwNW4A4EgYx0RwD9zjCo4Mpe7S05SeohoNmMQSGg@mail.gmail.com>
Message-ID: <c4d513f5-f083-16f2-cb5a-dadf0697f242@gmail.com>

On 06/06/2019 5:04 p.m., Richard O'Keefe wrote:
> How can expanding tildes anywhere but the beginning of a file name NOT be
> considered a bug?

It looks like a bug in R, but not necessarily a bug in libreadline:  we 
may just be using tilde_expand improperly.

Duncan Murdoch

> 
> 
> On Thu, 6 Jun 2019 at 23:04, Ivan Krylov <krylov.r00t at gmail.com> wrote:
> 
>> On Wed, 5 Jun 2019 18:07:15 +0200
>> Frank Schwidom <schwidom at gmx.net> wrote:
>>
>>> +> path.expand("a ~ b")
>>> [1] "a /home/user b"
>>
>>> How can I switch off any file crippling activity?
>>
>> It doesn't seem to be possible if readline is enabled and works
>> correctly.
>>
>> Calls to path.expand [1] end up [2] in R_ExpandFileName [3], which
>> calls R_ExpandFileName_readline [4], which uses libreadline function
>> tilde_expand [5]. tilde_expand seems to be designed to expand '~'
>> anywhere in the string it is handed, i.e. operate on whole command
>> lines, not file paths.
>>
>> I am taking the liberty of Cc-ing R-devel in case this can be
>> considered a bug.
>>
>> --
>> Best regards,
>> Ivan
>>
>> [1]
>>
>> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/names.c#L807
>>
>> [2]
>>
>> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/main/platform.c#L1915
>>
>> [3]
>>
>> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-unix.c#L147
>>
>> [4]
>>
>> https://github.com/wch/r-source/blob/12d1d2d232d84aa355e333348b81180a0e2c6f2f/src/unix/sys-std.c#L494
>>
>> [5]
>> https://git.savannah.gnu.org/cgit/readline.git/tree/tilde.c?h=devel#n187
>>
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



[Rd] [R] Open a file which name contains a tilde
Duncan Murdoch