Re-organize and improve help command and help info for each command

This commit is contained in:
2013-06-02 20:09:59 +03:00
parent 5363ac555b
commit 55cf26b9e6
16 changed files with 170 additions and 94 deletions

View File

@@ -2,6 +2,14 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier alias <alias>
Resolve a command alias to it's full name."
exit
fi
case "$1" in
"session" | "ses" | "s" )
echo "load-session"

View File

@@ -2,6 +2,15 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier commands
List all available commands, includes internal commands not intended for
normal use by users."
exit
fi
shopt -s nullglob
{ for path in ${PATH//:/$'\n'}; do

View File

@@ -2,6 +2,14 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier completion <command>
Print a list of available completions for specified command."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
tmuxifier-commands
@@ -9,7 +17,7 @@ if [ "$1" == "--complete" ]; then
fi
has-completions() {
grep -i "^# provide tmuxifier completions" "$1" >/dev/null
grep -i "^# Provide tmuxifier completions" "$1" >/dev/null
}
command="$1"

View File

@@ -2,6 +2,14 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier current-session
Outputs the name of the current Tmux session."
exit
fi
if [ -n "$TMUX" ]; then
for item in $(tmux list-pane -F "#{session_name}");do
echo $item

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier edit-session <layout_name>
Aliases: edit-ses, es
Open specified session layout for editing in \$EDITOR."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
for item in $(tmuxifier-list-sessions); do

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier edit-window <layout_name>
Aliases: edit-win, ew
Open specified window layout for editing in \$EDITOR."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
for item in $(tmuxifier-list-windows); do

View File

@@ -2,25 +2,25 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
tmuxifier-help
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
tmuxifier-commands
exit
fi
has-help() {
grep -i "^# Provide tmuxifier help" "$1" >/dev/null
}
command="$1"
# Ensure we have the correct command name in case an alias was given.
if [ -n "$command" ]; then
! resolved="$(tmuxifier-alias "$command")"
if [ -n "$resolved" ]; then
command="$resolved"
fi
fi
case "$command" in
"" )
echo "usage: tmuxifier <command> [<args>]
if [ -z "$command" ]; then
echo "usage: tmuxifier <command> [<args>]
Some useful tmuxifier commands are:
<command> <alias>
@@ -38,87 +38,23 @@ Some useful tmuxifier commands are:
help Show this message.
See 'tmuxifier help <command>' for information on a specific command."
;;
"load-session" )
echo "usage: tmuxifier load-session <layout_name>
exit
fi
Aliases: session, ses, s
! command_path="$(tmuxifier-resolve-command-path "$command")"
Create a session using the session layout, unless the session already exists
in which case, we simply switch to the existing one."
;;
"load-window" )
echo "usage: tmuxifier load-window <layout_name>
if [ -z "$command_path" ]; then
echo "tmuxifier: no such command '$command'" >&2
exit 1
fi
Aliases: window, win, w
Create a new window using the specified window layout in the current session."
;;
"new-session" )
echo "usage: tmuxifier new-session <layout_name>
Aliases: new-ses, ns
Create a new session layout and open it for editing in \$EDITOR."
;;
"new-window" )
echo "usage: tmuxifier new-window <layout_name>
Aliases: new-win, ws
Create a new window layout and open it for editing in \$EDITOR."
;;
"edit-session" )
echo "usage: tmuxifier edit-session <layout_name>
Aliases: edit-ses, es
Open specified session layout for editing in \$EDITOR."
;;
"edit-window" )
echo "usage: tmuxifier edit-window <layout_name>
Aliases: edit-win, ew
Open specified window layout for editing in \$EDITOR."
;;
"completions" )
echo "usage: tmuxifier completion <command>
Print a list of available completions for specified command."
;;
"list" )
echo "usage: tmuxifier list
Aliases: ls
List all available session and window layouts."
;;
"list-sessions" )
echo "usage: tmuxifier list-sessions
Aliases: list-ses, lss
List all session layouts."
;;
"list-windows" )
echo "usage: tmuxifier list-windows
Aliases: list-win, lsw
List all window layouts."
;;
* )
! command_path="$(tmuxifier-resolve-command-path "$command")"
if [ -n "$command_path" ]; then
echo "Sorry, the '$command' command isn't documented yet."
echo
echo "You can view the command's source here:"
echo "$command_path"
echo
else
echo "tmuxifier: no such command '$command'" >&2
exit 1
fi
;;
esac
if has-help "$command_path"; then
shift
exec "$command_path" --help "$@"
else
echo "Sorry, the '$command' command isn't documented yet."
echo ""
echo "You can view the command's source here:"
echo "$command_path"
echo ""
fi

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier list
Aliases: ls
List all available session and window layouts."
exit
fi
echo ""
echo "Sessions:"
tmuxifier-list-sessions

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier list-sessions
Aliases: list-ses, lss
List all session layouts."
exit
fi
list=$(find -L "$TMUXIFIER_LAYOUT_PATH" -name "*.session.sh")
for file in $list; do
file=${file/$TMUXIFIER_LAYOUT_PATH\//}

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier list-windows
Aliases: list-win, lsw
List all window layouts."
exit
fi
list=$(find -L "$TMUXIFIER_LAYOUT_PATH" -name "*.window.sh")
for file in $list; do
file=${file/$TMUXIFIER_LAYOUT_PATH\//}

View File

@@ -2,6 +2,17 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier load-session <layout_name>
Aliases: session, ses, s
Create a session using the session layout, unless the session already exists
in which case, we simply attach/switch to the existing one."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
for item in $(tmuxifier-list-sessions); do

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier load-window <layout_name>
Aliases: window, win, w
Create a new window using the specified window layout in the current session."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
for item in $(tmuxifier-list-windows); do

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier new-session <layout_name>
Aliases: new-ses, ns
Create a new session layout and open it for editing in \$EDITOR."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
for item in $(tmuxifier-list-sessions); do

View File

@@ -2,6 +2,16 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier new-window <layout_name>
Aliases: new-win, ws
Create a new window layout and open it for editing in \$EDITOR."
exit
fi
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
for item in $(tmuxifier-list-windows); do

View File

@@ -2,6 +2,14 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier resolve-command-path <command_or_alias>
Outputs the absolute path to the given command or command alias."
exit
fi
if [ -n "$1" ]; then
! command_path="$(command -v "tmuxifier-$1")"
if [ -z "$command_path" ]; then

View File

@@ -2,4 +2,12 @@
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier help
if [ "$1" == "--help" ]; then
echo "usage: tmuxifier version
Outputs Tmuxifier version."
exit
fi
echo "0.5.0"