On Mon, 3 Dec 2018 09:58:33 -0500 Chet Ramey <chet.ra...@case.edu> wrote:
> On 12/3/18 9:49 AM, Mattias Andrée wrote: > > On Mon, 3 Dec 2018 09:33:48 -0500 > > Chet Ramey <chet.ra...@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'. > Thanks!