]> git.rmz.io Git - dotfiles.git/blobdiff - vim/ultisnips/sh.snippets
nvim: add FPP copyright snippet
[dotfiles.git] / vim / ultisnips / sh.snippets
index 8393d023c8ba9bf5a6c752a8ec26ea51ac4c222b..13c141958cb1ad7400a71e811c06685a226f37b6 100644 (file)
@@ -8,10 +8,31 @@ snippet !env "#!/usr/bin/env (!env)" b
 
 endsnippet
 
+snippet script_dir "Get dir of current script" b
+${1:script_dir}="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+$0
+endsnippet
+
 snippet ar "${array[@]}" w
 \${${1:array}[${2:@}]}$0
 endsnippet
 
+snippet choice "Read a choice from stdin" b
+read -r -p "${1:Question?} [Yn] " choice
+case "$choice" in
+       Y|y) echo "yes" ;;
+       '')  echo "yes" ;;
+       N|n) echo "no"  ;;
+       *)   echo "invalid"
+esac
+endsnippet
+
+snippet readline "Read a file line by line" b
+while ${1:IFS='' }read -r ${2:line} || [[ -n "$$2" ]]; do
+       ${0:echo "Text read from file: $$2"}
+done < "\$${3:file}"
+endsnippet
+
 snippet getopt
 version="${1:0.1}"
 
@@ -36,7 +57,7 @@ while [[ $# -gt 0 ]]; do
                        echo -e "\n  Option does not exist : $opt\n"
                        usage; exit 1 ;;
 
-               *) args+=($opt); shift ;;
+               *) args+=("$opt"); shift ;;
        esac
 done
 endsnippet