vimrc/sources_non_forked/vim-snippets/snippets/sh.snippets

107 lines
2.1 KiB
Text
Raw Normal View History

# Shebang. Executing bash via /usr/bin/env makes scripts more portable.
snippet #!
2015-03-14 20:02:10 +00:00
#!/usr/bin/env sh
2017-05-26 09:30:32 +00:00
snippet s#!
#!/usr/bin/env sh
2020-01-29 02:07:36 +00:00
set -eu
2017-05-26 09:30:32 +00:00
snippet safe
2020-01-29 02:07:36 +00:00
set -eu
2017-05-26 09:30:32 +00:00
2015-03-14 20:02:10 +00:00
snippet bash
#!/usr/bin/env bash
2013-07-17 23:06:05 +00:00
2016-04-03 20:59:57 +00:00
snippet sbash
#!/usr/bin/env bash
set -euo pipefail
IFS=$'\n\t'
snippet if
if [[ ${1:condition} ]]; then
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
fi
snippet elif
elif [[ ${1:condition} ]]; then
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
snippet for
for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
done
snippet fori
for ${1:needle} in ${2:haystack} ; do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
done
snippet wh
while [[ ${1:condition} ]]; do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
done
snippet until
until [[ ${1:condition} ]]; do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
done
snippet case
case ${1:word} in
${2:pattern})
${0};;
esac
2013-07-17 23:06:05 +00:00
snippet go
while getopts '${1:o}' ${2:opts}
do
case $$2 in
${3:o0})
${0:#staments};;
esac
done
# Set SCRIPT_DIR variable to directory script is located.
snippet sdir
2022-08-08 13:45:56 +00:00
SCRIPT_DIR="\$( cd "\$( dirname "\${BASH_SOURCE[0]}" )" && pwd )"
# getopt
snippet getopt
__ScriptVersion="${1:version}"
#=== FUNCTION ================================================================
# NAME: usage
# DESCRIPTION: Display usage information.
#===============================================================================
function usage ()
{
2022-08-08 13:45:56 +00:00
echo "Usage : \$${0:0} [options] [--]
2015-03-14 20:02:10 +00:00
Options:
-h|help Display this message
-v|version Display script version"
} # ---------- end of function usage ----------
#-----------------------------------------------------------------------
# Handle command line arguments
#-----------------------------------------------------------------------
while getopts ":hv" opt
do
2022-08-08 13:45:56 +00:00
case \$opt in
h|help ) usage; exit 0 ;;
2022-08-08 13:45:56 +00:00
v|version ) echo "\$${0:0} -- Version \$__ScriptVersion"; exit 0 ;;
2022-08-08 13:45:56 +00:00
* ) echo -e "\\n Option does not exist : \$OPTARG\\n"
usage; exit 1 ;;
esac # --- end of case ---
done
2022-08-08 13:45:56 +00:00
shift \$(($OPTIND-1))
snippet root
2014-07-02 11:18:18 +00:00
if [ \$(id -u) -ne 0 ]; then exec sudo \$0; fi
2015-03-14 20:02:10 +00:00
snippet fun-sh
${1:function_name}() {
${0:#function_body}
}
2015-03-14 20:02:10 +00:00
snippet fun
function ${1:function_name}() {
${0:#function_body}
}