aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Christopher Vogt <oss.nsp@cvogt.org>2017-03-12 15:37:49 -0400
committerGitHub <noreply@github.com>2017-03-12 15:37:49 -0400
commita6eadada6e6d1f9efa1b5edecef5ce42b2099706 (patch)
treec5c1eed7067c7ee119b3a4235dcdfa11797e5302
parent8fd9b9e01d763734953f722e1ba33c5025d53e63 (diff)
parent9cf4a6a1023dda70072b76bd881efbd12c2270d1 (diff)
downloadcbt-a6eadada6e6d1f9efa1b5edecef5ce42b2099706.tar.gz
cbt-a6eadada6e6d1f9efa1b5edecef5ce42b2099706.tar.bz2
cbt-a6eadada6e6d1f9efa1b5edecef5ce42b2099706.zip
Merge pull request #415 from cvogt/completions
rename taskNames to complete and pass in current readline buffer in fish for zsh and bash this still needs to be done. Also interpreting the buffer to complete the current command
-rwxr-xr-xshell-integration/cbt-completions.bash6
-rw-r--r--shell-integration/cbt-completions.fish2
-rwxr-xr-xshell-integration/cbt-completions.zsh6
-rw-r--r--stage2/BasicBuild.scala4
4 files changed, 12 insertions, 6 deletions
diff --git a/shell-integration/cbt-completions.bash b/shell-integration/cbt-completions.bash
index 925ba4b..deb88c1 100755
--- a/shell-integration/cbt-completions.bash
+++ b/shell-integration/cbt-completions.bash
@@ -1,11 +1,13 @@
-#!/bin/bash
+# this does currently not support for completion of nested methods, e.g. snapshot.comp<tab>
+# bash 4 should be able to do that via $READLINE_LINE and $READLINE_POINT, see
+# http://unix.stackexchange.com/questions/106761/simulating-readline-line-in-bash-4-0/106832
__cbt()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
- opts="$(cbt taskNames)"
+ opts="$(cbt complete)"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
}
diff --git a/shell-integration/cbt-completions.fish b/shell-integration/cbt-completions.fish
index fbca62d..d51114d 100644
--- a/shell-integration/cbt-completions.fish
+++ b/shell-integration/cbt-completions.fish
@@ -1 +1 @@
-complete --command cbt --no-files -a '(cbt taskNames)' #|fzf --height 90% --reverse)'
+complete --command cbt --no-files -a '(cbt complete (commandline --current-buffer) (commandline --cursor))' #|fzf --height 90% --reverse)'
diff --git a/shell-integration/cbt-completions.zsh b/shell-integration/cbt-completions.zsh
index d11307d..d8f2d6d 100755
--- a/shell-integration/cbt-completions.zsh
+++ b/shell-integration/cbt-completions.zsh
@@ -1,7 +1,9 @@
-#! /usr/bin/env zsh
+# this does currently not support for completion of nested methods, e.g. snapshot.comp<tab>
+# zsh should be able to do that via $BUFFER, see
+# http://unix.stackexchange.com/questions/14230/zsh-tab-completion-on-empty-line
_cbt() {
- reply=( "${(ps:\n:)$(cbt taskNames)}" )
+ reply=( "${(ps:\n:)$(cbt complete)}" )
}
compctl -K _cbt cbt
diff --git a/stage2/BasicBuild.scala b/stage2/BasicBuild.scala
index d7bdfee..1308155 100644
--- a/stage2/BasicBuild.scala
+++ b/stage2/BasicBuild.scala
@@ -42,7 +42,9 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge
final def help: String = lib.usage(this.getClass, show)
- final def taskNames: String = lib.taskNames(this.getClass).sorted.mkString("\n")
+ final def complete: String = {
+ lib.taskNames(this.getClass).sorted.mkString("\n")
+ }
// ========== meta data ==========