diff options
author | Jan Christopher Vogt <oss.nsp@cvogt.org> | 2017-03-12 15:37:49 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-12 15:37:49 -0400 |
commit | a6eadada6e6d1f9efa1b5edecef5ce42b2099706 (patch) | |
tree | c5c1eed7067c7ee119b3a4235dcdfa11797e5302 | |
parent | 8fd9b9e01d763734953f722e1ba33c5025d53e63 (diff) | |
parent | 9cf4a6a1023dda70072b76bd881efbd12c2270d1 (diff) | |
download | cbt-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-x | shell-integration/cbt-completions.bash | 6 | ||||
-rw-r--r-- | shell-integration/cbt-completions.fish | 2 | ||||
-rwxr-xr-x | shell-integration/cbt-completions.zsh | 6 | ||||
-rw-r--r-- | stage2/BasicBuild.scala | 4 |
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 ========== |