[Bash-completion-commits] [SCM] bash-completion branch, master, updated. 1.3-124-g976ba44

Ville Skyttä ville.skytta at iki.fi
Mon Apr 25 12:53:42 UTC 2011


The following commit has been merged in the master branch:
commit 976ba448251af67514af323be80fa938ffbe699d
Author: Ville Skyttä <ville.skytta at iki.fi>
Date:   Mon Apr 25 15:51:33 2011 +0300

    Complete screen on commands (Alioth: #312164, RedHat: #547852).

diff --git a/completions/screen b/completions/screen
index f66f17f..e370c8e 100644
--- a/completions/screen
+++ b/completions/screen
@@ -22,6 +22,22 @@ _screen()
         esac
     fi
 
+    local i
+    for (( i=1; i <= cword; i++ )); do
+        case ${words[i]} in
+            -r|-R|-d|-D|-x|-s|-c|-T|-e|-h|-p|-S|-t)
+                (( i++ ))
+                continue
+                ;;
+            -*)
+                continue
+                ;;
+        esac
+
+        _command_offset $i
+        return
+    done
+
     case $prev in
         -[rR])
             # list detached
@@ -61,7 +77,7 @@ _screen()
             --version' -- "$cur" ) )
     fi
 } &&
-complete -F _screen -o default screen
+complete -F _screen screen
 
 # Local variables:
 # mode: shell-script
diff --git a/test/lib/completions/screen.exp b/test/lib/completions/screen.exp
index e5bc4c1..5e58517 100644
--- a/test/lib/completions/screen.exp
+++ b/test/lib/completions/screen.exp
@@ -12,15 +12,19 @@ setup
 
 
 assert_complete_any "screen -"
-
-
 sync_after_int
 
 
 assert_complete {bar "bar bar.d/" foo foo.d/} \
     "screen -c $::srcdir/fixtures/shared/default/" "-c should complete files/dirs"
+sync_after_int
+
+
+assert_complete_any "screen cat"
+sync_after_int
 
 
+assert_complete_any "screen -T foo cat"
 sync_after_int
 
 

-- 
bash-completion



More information about the Bash-completion-commits mailing list