Files
tmuxifier/libexec/tmuxifier-new-session
Jim Myhrberg d2122044ee Make layout API-interface a bit simpler
Additionally, also fix a bug when creating a window, where as if the
session name was the same as a window that already existed, it would
fail, accidentally using the window rather than the session at a target.
2012-04-25 00:25:11 +01:00

30 lines
713 B
Bash
Executable File

#! /usr/bin/env bash
set -e
[ -n "$TMUXIFIER_DEBUG" ] && set -x
if [ -z "$1" ]; then
echo "$(tmuxifier-help new-session)" >&2
exit 1
fi
layout_name="$1"
layout_file="$TMUXIFIER_LAYOUT_PATH/${layout_name}.session.sh"
template="$TMUXIFIER/templates/session.sh"
if [ ! -f "$template" ]; then
echo "tmuxifier: session layout template not found: $template" >&2
exit 1
fi
if [ -f "$layout_file" ]; then
echo "session layout '$layout_name' already exists." >&2
echo "" >&2
echo "You can edit it with:" >&2
echo " tmuxifier edit-session \"$layout_name\"" >&2
exit 1
fi
content="$(cat "$template")"
echo "${content/\{\{SESSION_NAME\}\}/$layout_name}" > "$layout_file"
exec "$EDITOR" "$layout_file"