F12: bash-completion issues?

JD jd1008 at gmail.com
Thu Aug 12 23:59:57 UTC 2010


  On 08/12/2010 03:41 PM, Daniel B. Thurman wrote:
> On 08/12/2010 03:32 PM, Mikkel wrote:
>> On 08/12/2010 05:26 PM, Daniel B. Thurman wrote:
>>
>>> On 08/12/2010 03:09 PM, JD wrote:
>>>
>>>>    On 08/12/2010 02:10 PM, Daniel B. Thurman wrote:
>>>>
>>>>
>>>>> Perhaps I am assuming wrong, but it appears that bash-completion
>>>>> is not working for local files in the gnome-terminal?
>>>>>
>>>>> For example, I know there is a file in my desktop called "ListAvailable"
>>>>> so I tried this:
>>>>>
>>>>> # yum list available>   List<tab>
>>>>>
>>>>> and bash completion refuses to locate the local file and to expand it.
>>>>>
>>>>> Is this expected?
>>>>>
>>>>>
>>>>>
>>>>>
>>>> In your .bashrc
>>>>
>>>> set complete-file ^I^I
>>>> (that's Control-I twice)
>>>>
>>>>
>>> I tried it (logged out and back in) and it does not
>>> change anything.  Same behaviour.
>>>
>>> It is interesting there are different behaviours:
>>>
>>> # L<Tab>
>>> LabPlot       LibraryLocal
>>> # cd Desk<Tab>   (expanded to Desktop, so it worked)
>>> # L<Tab>
>>> LabPlot       LibraryLocal
>>> # List<Tab>  (Beeps everytime a Tab is hit, but no list is given)
>>>
>>>
>>>
>> Dumb question - is there a file List or List<something>  in the
>> current directory? From what you describe, it does not sound like
>> there is...
>>
>> As for running "List<Tab>", do you have a command List or
>> List<something>  in your path?
>>
>> Mikkel
>>
> Yes, in the original post, I said that there is a ListAvailable file in
> the Desktop
> directory, so bash-completion does not find any matching file there.  It
> seems
> that bash-completion does not work on local files that are known to be
> there,
> and I tried it on links, and directories (except for "Desktop" which it
> did expand)
> UNLESS it is prefixed with certain commands in front of it, such as:
>
> # cd ~/Desktop
> # ls List<Tab>
> ListAvailable
>
> So it worked.
>
> But these fails:
> # List<Tab>
> # ./List<Tab>
> # yum list available>  List<Tab>
>
If the file is NOT  executable then
typeing part of the filename and pressing tab will not give you enything.
But If your first input an executable command like    vi List<Tab> then the
non-executable filename will be compteted.
The shell is savvy enough to distinguish between command filename
and an argument filename.



More information about the users mailing list