simple editor for cclip

This commit is contained in:
2018-08-14 10:52:05 +03:00
parent 07c2ae2acb
commit 43c072fd6a

View File

@@ -8,10 +8,11 @@ _help() {
Usage: $SELF [command] [name] [filename] Usage: $SELF [command] [name] [filename]
Commands: Commands:
(r)ead (r)ead Display on screen / copies to file
(w)rite (w)rite Save from stdin / from file
(d)elete (d)elete Delete an entry
(l)ist [default] (e)dit Edit contents, with \$EDITOR
(l)ist [default] List names of clipboards
Name: Any string for the clipboard name. default: 0 Name: Any string for the clipboard name. default: 0
Filename: Filename:
@@ -148,6 +149,14 @@ _get_file() {
return 0 return 0
} }
_edit() {
EDITOR=${EDITOR:-vi}
[[ -d "$STORAGE/$NAME" ]] && {
_msg "$NAME is a directory, can not edit"
exit 1
}
$EDITOR "$STORAGE/$NAME"
}
for (( i=1; i<=$#; i++ )); do for (( i=1; i<=$#; i++ )); do
[[ "${!i}" = "-h" ]] && _help [[ "${!i}" = "-h" ]] && _help
[[ "${!i}" = "--help" ]] && _help [[ "${!i}" = "--help" ]] && _help
@@ -161,6 +170,7 @@ CMD=list
[[ "$1" = "w" || "$1" = "write" ]] && { CMD=write; ARG1=$CMD; } [[ "$1" = "w" || "$1" = "write" ]] && { CMD=write; ARG1=$CMD; }
[[ "$1" = "d" || "$1" = "delete" || "$1" = "del" ]] && { CMD=delete; ARG1=$CMD; } [[ "$1" = "d" || "$1" = "delete" || "$1" = "del" ]] && { CMD=delete; ARG1=$CMD; }
[[ "$1" = "l" || "$1" = "list" ]] && { CMD=list; ARG1=$CMD; } [[ "$1" = "l" || "$1" = "list" ]] && { CMD=list; ARG1=$CMD; }
[[ "$1" = "e" || "$1" = "edit" ]] && { CMD=edit; ARG1=$CMD; }
[[ "$1" = "h" || "$1" = "help" ]] && _help [[ "$1" = "h" || "$1" = "help" ]] && _help
[[ -n "$1" ]] && [[ -e "$STORAGE"/"$1" ]] && CMD=read [[ -n "$1" ]] && [[ -e "$STORAGE"/"$1" ]] && CMD=read
# if stdout redirected, default to read # if stdout redirected, default to read
@@ -186,6 +196,10 @@ _get_file
_write _write
exit $? exit $?
} }
[[ "$CMD" = edit ]] && {
_edit
exit $?
}
# TODO: # TODO: