1*eda6f593SDavid van Moolenbroek# START tmux completion
2*eda6f593SDavid van Moolenbroek# This file is in the public domain
3*eda6f593SDavid van Moolenbroek# See: http://www.debian-administration.org/articles/317 for how to write more.
4*eda6f593SDavid van Moolenbroek# Usage: Put "source bash_completion_tmux.sh" into your .bashrc
5*eda6f593SDavid van Moolenbroek_tmux()
6*eda6f593SDavid van Moolenbroek{
7*eda6f593SDavid van Moolenbroek    local cur prev opts
8*eda6f593SDavid van Moolenbroek    COMPREPLY=()
9*eda6f593SDavid van Moolenbroek    cur="${COMP_WORDS[COMP_CWORD]}"
10*eda6f593SDavid van Moolenbroek    prev="${COMP_WORDS[COMP_CWORD-1]}"
11*eda6f593SDavid van Moolenbroek
12*eda6f593SDavid van Moolenbroek    opts=" \
13*eda6f593SDavid van Moolenbroek    attach-session \
14*eda6f593SDavid van Moolenbroek    bind-key \
15*eda6f593SDavid van Moolenbroek    break-pane \
16*eda6f593SDavid van Moolenbroek    capture-pane \
17*eda6f593SDavid van Moolenbroek    choose-client \
18*eda6f593SDavid van Moolenbroek    choose-session \
19*eda6f593SDavid van Moolenbroek    choose-window \
20*eda6f593SDavid van Moolenbroek    clear-history \
21*eda6f593SDavid van Moolenbroek    clock-mode \
22*eda6f593SDavid van Moolenbroek    command-prompt \
23*eda6f593SDavid van Moolenbroek    confirm-before \
24*eda6f593SDavid van Moolenbroek    copy-buffer \
25*eda6f593SDavid van Moolenbroek    copy-mode \
26*eda6f593SDavid van Moolenbroek    delete-buffer \
27*eda6f593SDavid van Moolenbroek    detach-client \
28*eda6f593SDavid van Moolenbroek    display-message \
29*eda6f593SDavid van Moolenbroek    display-panes \
30*eda6f593SDavid van Moolenbroek    down-pane \
31*eda6f593SDavid van Moolenbroek    find-window \
32*eda6f593SDavid van Moolenbroek    has-session \
33*eda6f593SDavid van Moolenbroek    if-shell \
34*eda6f593SDavid van Moolenbroek    join-pane \
35*eda6f593SDavid van Moolenbroek    kill-pane \
36*eda6f593SDavid van Moolenbroek    kill-server \
37*eda6f593SDavid van Moolenbroek    kill-session \
38*eda6f593SDavid van Moolenbroek    kill-window \
39*eda6f593SDavid van Moolenbroek    last-window \
40*eda6f593SDavid van Moolenbroek    link-window \
41*eda6f593SDavid van Moolenbroek    list-buffers \
42*eda6f593SDavid van Moolenbroek    list-clients \
43*eda6f593SDavid van Moolenbroek    list-commands \
44*eda6f593SDavid van Moolenbroek    list-keys \
45*eda6f593SDavid van Moolenbroek    list-panes \
46*eda6f593SDavid van Moolenbroek    list-sessions \
47*eda6f593SDavid van Moolenbroek    list-windows \
48*eda6f593SDavid van Moolenbroek    load-buffer \
49*eda6f593SDavid van Moolenbroek    lock-client \
50*eda6f593SDavid van Moolenbroek    lock-server \
51*eda6f593SDavid van Moolenbroek    lock-session \
52*eda6f593SDavid van Moolenbroek    move-window \
53*eda6f593SDavid van Moolenbroek    new-session \
54*eda6f593SDavid van Moolenbroek    new-window \
55*eda6f593SDavid van Moolenbroek    next-layout \
56*eda6f593SDavid van Moolenbroek    next-window \
57*eda6f593SDavid van Moolenbroek    paste-buffer \
58*eda6f593SDavid van Moolenbroek    pipe-pane \
59*eda6f593SDavid van Moolenbroek    previous-layout \
60*eda6f593SDavid van Moolenbroek    previous-window \
61*eda6f593SDavid van Moolenbroek    refresh-client \
62*eda6f593SDavid van Moolenbroek    rename-session \
63*eda6f593SDavid van Moolenbroek    rename-window \
64*eda6f593SDavid van Moolenbroek    resize-pane \
65*eda6f593SDavid van Moolenbroek    respawn-window \
66*eda6f593SDavid van Moolenbroek    rotate-window \
67*eda6f593SDavid van Moolenbroek    run-shell \
68*eda6f593SDavid van Moolenbroek    save-buffer \
69*eda6f593SDavid van Moolenbroek    select-layout \
70*eda6f593SDavid van Moolenbroek    select-pane \
71*eda6f593SDavid van Moolenbroek    select-prompt \
72*eda6f593SDavid van Moolenbroek    select-window \
73*eda6f593SDavid van Moolenbroek    send-keys \
74*eda6f593SDavid van Moolenbroek    send-prefix \
75*eda6f593SDavid van Moolenbroek    server-info \
76*eda6f593SDavid van Moolenbroek    set-buffer \
77*eda6f593SDavid van Moolenbroek    set-environment \
78*eda6f593SDavid van Moolenbroek    set-option \
79*eda6f593SDavid van Moolenbroek    set-window-option \
80*eda6f593SDavid van Moolenbroek    show-buffer \
81*eda6f593SDavid van Moolenbroek    show-environment \
82*eda6f593SDavid van Moolenbroek    show-messages \
83*eda6f593SDavid van Moolenbroek    show-options \
84*eda6f593SDavid van Moolenbroek    show-window-options \
85*eda6f593SDavid van Moolenbroek    source-file \
86*eda6f593SDavid van Moolenbroek    split-window \
87*eda6f593SDavid van Moolenbroek    start-server \
88*eda6f593SDavid van Moolenbroek    suspend-client \
89*eda6f593SDavid van Moolenbroek    swap-pane \
90*eda6f593SDavid van Moolenbroek    swap-window \
91*eda6f593SDavid van Moolenbroek    switch-client \
92*eda6f593SDavid van Moolenbroek    unbind-key \
93*eda6f593SDavid van Moolenbroek    unlink-window \
94*eda6f593SDavid van Moolenbroek    up-pane"
95*eda6f593SDavid van Moolenbroek
96*eda6f593SDavid van Moolenbroek    COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
97*eda6f593SDavid van Moolenbroek    return 0
98*eda6f593SDavid van Moolenbroek
99*eda6f593SDavid van Moolenbroek}
100*eda6f593SDavid van Moolenbroekcomplete -F _tmux tmux
101*eda6f593SDavid van Moolenbroek
102*eda6f593SDavid van Moolenbroek# END tmux completion
103*eda6f593SDavid van Moolenbroek
104*eda6f593SDavid van Moolenbroek
105*eda6f593SDavid van Moolenbroek
106