bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Incorrect path canonicalisation at autocompletion


From: Chet Ramey
Subject: Re: Incorrect path canonicalisation at autocompletion
Date: Mon, 3 Dec 2018 09:58:33 -0500
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:60.0) Gecko/20100101 Thunderbird/60.3.2

On 12/3/18 9:49 AM, Mattias Andrée wrote:
> On Mon, 3 Dec 2018 09:33:48 -0500
> Chet Ramey <chet.ramey@case.edu> wrote:
> 
>> On 12/1/18 3:12 PM, Mattias Andrée wrote:
>>> Using Bash 4.4.023, type
>>>
>>>     cd
>>>     mkdir -p 1/2
>>>     cd 1/2
>>>     touch ../../3
>>>     ln -s ~ 4
>>>     touch 5
>>>     ls 4/../
>>>
>>> without pressing enter at the last line,
>>> instead press <tab> twice. 4/ and 5 will
>>> be suggested, but if you press <enter>
>>> you will see that it should suggest the> files in /home.  
>>
>> It's not a bug. Bash maintains a logical view of the file system and the
>> current directory for cd, pwd, and $PWD, as Posix specifies.  One of the
>> consequences is that the pathname of the current directory depends on the
>> path used to reach it, which affects how bash canonicalizes `..'. Bash is
>> consistent in  its use of this logical view across shell features, which
>> includes completion.
>>
>> If you want to see a physical view of the file system, use
>> `set -o physical'.
>>
> 
> Is there a way to only get physical view for
> completion but logical view for cd, pwd, and $PWD?

You can by using set -o physical within a completion function or running
with set -o physical all the time and using `cd -L' and `pwd -L'.

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]