bash completion


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting bash completion
# 1  
Old 05-08-2010
bash completion

hello,

I have been trying for a couple days to figure this out to no avail. I am converting some csh code to bash. I have converted everything except the completion code.

Code:
#bashrc (I set this alias in my bashrc)
alias test='source ${PATH}/test.sh'

#${PATH}/test.sh (returns some aliases and env variables to the current shell)
ARGS="$@"
eval "`/usr/bin/python ${BPATH}/test $ARGS`"

#${PATH}/test.py (has options -h "help" -c "config" -p "packages")

#${PATH}/configurationsandpackages.py
# returns available configurations and packages
# so if I run /usr/bin/python ${PATH}/configurationsandpackages.py in a shell it returns a list of configurations and
# if I run /usr/bin/python ${PATH}/configurationsandpackages.py 1 it returns a list of packages

so my problem is that for -c and -p I want to set up completion to give me that list of configs or packages, ie:
Code:
localhost:~ medwards$ test -c<TAB>
default  development etc
localhost:~ medwards$ test -c

localhost:~ medwards$ test -p<TAB>
environment  defaults etc  
localhost:~ medwards$ test -p

so in my bashrc after create the alias test='source ${PATH}/test.sh'
I want to create completion code to accomplish the above stated.

this works in csh.
Code:
complete test 'n@-c@`/usr/bin/python '${PATH}'/configurationsandpackages.py `@'  'n@-p@`/usr/bin/python '${PATH}'/configurationsandpackages.py 1`@'

I appreciate any insight, I have never programmed completion before and can find very little useful info from google.

regards, mark

Last edited by Scott; 05-08-2010 at 04:37 AM.. Reason: Please use code tags
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Bash-Completion, installed but not applied

Heyas For my project TUI i had prepared bash completion. Bash-completion works, at least if i source that file manualy. However, when i'm installing it, it wont apply, not even for new opened terminals. Allthough i had it working once, i dont get why it doesnt work now. <...> + '' +... (0 Replies)
Discussion started by: sea
0 Replies

2. UNIX for Advanced & Expert Users

Bash-Completion, one list shown, the other not.

Heyas I'm trying to read out a file which contains a variable and use that list to complete a bash command. Difficult part on this is, that 2 (actualy 3) different lists are to be used, but the 'dynamic' ones from the external file dont work properly. It only seems to work with the list... (2 Replies)
Discussion started by: sea
2 Replies

3. Shell Programming and Scripting

Bash-Completion, an example

Hello I've followed several bash-completion threads, usualy none were answered, because of obvious reasons. (of which i'm just aware since a day or a few) Non-the-less, because i was writing scripts, i never considered it to be possible to add this functionality. Also, because i though that... (0 Replies)
Discussion started by: sea
0 Replies

4. UNIX for Dummies Questions & Answers

Bash-completion on shell script

Hello I want use bash_completion on a script but the information on the internet give me not a solution. The scrip start with "cd" to a direction Than the script do "ls" Than I must give a name of a sub-direction and here I want to use <TAB>, so when I have a direction with the name smith... (2 Replies)
Discussion started by: thailand
2 Replies

5. UNIX for Dummies Questions & Answers

Bash Tab Completion Hanging

Hi, I'm having a problem with tab completion at the bash command line. For some reason, whenever I type g<tab>, the terminal will freeze up for 5-10 seconds before asking me if I want to display all 325 possibilities. I thought that maybe it's because of the high number of commands, but I have... (4 Replies)
Discussion started by: Raz716
4 Replies

6. Shell Programming and Scripting

Programmable completion for two arguments in bash

Hi there! I have this script which handles bookmarks. Bookmarks are basically a string that point to a certain path, e.g., project -> ~/code/projects/project. Currently I have working completion for the bookmarks: ~ $ m p<Tab> ~ $ m project What I want to implement now is the cd... (0 Replies)
Discussion started by: KevinSjoberg
0 Replies

7. Shell Programming and Scripting

configure bash completion for multiple possibilities

Hello, Bash completion is great, but there are some features I'd like to change. One thing is the behaviour when there are lots of very similar possibilities. E.g., my directory contains 133 files, from pubmed_result1.txt to pubmed_result133.txt $ ls Lyonprim/p Display all 133... (2 Replies)
Discussion started by: jossojjos
2 Replies

8. Ubuntu

set completion-ignore-case on doesn't work in bash

completion-ignore-case option doesn't work in my version: /home/user $ echo $BASH_VERSION 3.2.48(1)-release /home/user $ ls -l * -rw-r--r-- 1 user user 0 2009-10-18 00:09 somefile -rw-r--r-- 1 user user 0 2009-10-18 00:09 Somefile /home/user $ set completion-ignore-case on But when I... (2 Replies)
Discussion started by: Sapfeer
2 Replies

9. Shell Programming and Scripting

[tcsh2bash] Tab completion - 'enhanced' equivalent in bash?

I really like tcsh's: set completion='enhanced' because it treats underscores and dash signs the same. I don't have to reach for the shift key when trying to complete files that have underscores. As far as I know, there is nothing like this in bash. Does such a thing exist in bash? If... (2 Replies)
Discussion started by: sarnobat
2 Replies
Login or Register to Ask a Question