lkml.org 
[lkml]   [2013]   [Nov]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 06/25] perf completion: Factor out call to __ltrim_colon_completions
    Date
    From: Ramkumar Ramachandra <artagnon@gmail.com>

    In our sole callsite, __ltrim_colon_completions is called after
    __perfcomp, to modify the COMPREPLY set by the invocation.

    This is problematic, because in the zsh equivalent (using compset/
    compadd), we'll have to generate completions in one-shot.

    So factor out this entire callsite into a special override'able
    __perfcomp_colon function; we will override it when introducing zsh
    support.

    Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Link: http://lkml.kernel.org/r/1384704807-15779-4-git-send-email-artagnon@gmail.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/perf/bash_completion | 9 +++++++--
    1 file changed, 7 insertions(+), 2 deletions(-)

    diff --git a/tools/perf/bash_completion b/tools/perf/bash_completion
    index 824312681601..573599b42be2 100644
    --- a/tools/perf/bash_completion
    +++ b/tools/perf/bash_completion
    @@ -94,6 +94,12 @@ __perfcomp ()
    COMPREPLY=( $( compgen -W "$1" -- "$2" ) )
    }

    +__perfcomp_colon ()
    +{
    + __perfcomp "$1" "$2"
    + __ltrim_colon_completions $cur
    +}
    +
    __perf_main ()
    {
    local cmd
    @@ -114,8 +120,7 @@ __perf_main ()
    # List possible events for -e option
    elif [[ $prev == "-e" && "${words[1]}" == @(record|stat|top) ]]; then
    evts=$($cmd list --raw-dump)
    - __perfcomp "$evts" "$cur"
    - __ltrim_colon_completions $cur
    + __perfcomp_colon "$evts" "$cur"
    # List long option names
    elif [[ $cur == --* ]]; then
    subcmd=${words[1]}
    --
    1.8.1.4


    \
     
     \ /
      Last update: 2013-11-25 20:21    [W:4.036 / U:0.680 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site