mirror of
https://github.com/tmux-plugins/tmux-resurrect.git
synced 2024-11-18 02:18:49 +00:00
33 lines
743 B
Bash
Executable File
33 lines
743 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# "vim session strategy"
|
|
#
|
|
# Restores a vim session from 'Session.vim' file, if it exists.
|
|
# If 'Session.vim' does not exist, it falls back to invoking the original
|
|
# command (without the `-S` flag).
|
|
|
|
ORIGINAL_COMMAND="$1"
|
|
DIRECTORY="$2"
|
|
|
|
vim_session_file_exists() {
|
|
[ -e "${DIRECTORY}/Session.vim" ]
|
|
}
|
|
|
|
original_command_contains_session_flag() {
|
|
[[ "$ORIGINAL_COMMAND" =~ "-S" ]]
|
|
}
|
|
|
|
main() {
|
|
if vim_session_file_exists; then
|
|
echo "vim -S"
|
|
elif original_command_contains_session_flag; then
|
|
# Session file does not exist, yet the original vim command contains
|
|
# session flag `-S`. This will cause an error, so we're falling back to
|
|
# starting plain vim.
|
|
echo "vim"
|
|
else
|
|
echo "$ORIGINAL_COMMAND"
|
|
fi
|
|
}
|
|
main
|