Files
tmuxifier/libexec/tmuxifier-help

97 lines
2.6 KiB
Bash
Executable File

#! /usr/bin/env bash
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
# Provide tmuxifier completions
if [ "$1" == "--complete" ]; then
tmuxifier-commands
exit
fi
command="$1"
command_path="$(command -v "tmuxifier-$command" || true)"
# Attempt to resolve aliases
if [ -z "$command_path" ]; then
resolved="$(tmuxifier-alias "$command")"
if [ ! -z "$resolved" ]; then
command="$resolved"
command_path="$(command -v "tmuxifier-$command" || true)"
fi
fi
case "$command" in
"" )
echo "usage: tmuxifier <command> [<args>]
Some useful tmuxifier commands are:
<command> <alias>
load-session s Load the specified session layout.
load-window w Load the specified window layout into current session.
list ls List all session and window layouts.
list-sessions lss List session layouts.
list-windows lsw List window layouts.
new-session ns Create new session layout and open it with \$EDITOR.
new-window nw Create new window layout and open it with \$EDITOR.
edit-session es Edit specified session layout with \$EDITOR.
edit-window ew Edit specified window layout with \$EDITOR.
commands List all tmuxifier commands.
See 'tmuxifier help <command>' for information on a specific command."
;;
"load-session" )
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 switch to the existing one."
;;
"load-window" )
echo "usage: tmuxifier load-window <layout_name>
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."
;;
* )
if [ ! -z "$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'"
fi
;;
esac