small improvements

This commit is contained in:
arcan1s 2015-02-17 00:47:43 +03:00
parent bd9b2cff37
commit bc3a96bf30
7 changed files with 45 additions and 43 deletions

2
vimrc
View File

@ -65,7 +65,7 @@ set ignorecase
"" navigation "" navigation
" save indents on paste " save indents on paste
set pastetoggle=<P> set pastetoggle=P
" move coursor on typing " move coursor on typing
set whichwrap=b,<,>,[,],l,h set whichwrap=b,<,>,[,],l,h

View File

@ -5,9 +5,10 @@ rm() {
echo "$@" | grep -qe '-h\|--help' && { echo "Usage: rm FILE..."; return 0 } echo "$@" | grep -qe '-h\|--help' && { echo "Usage: rm FILE..."; return 0 }
echo "$@" | grep -q " -" && echo "Warning: this function doesn't support any flags" echo "$@" | grep -q " -" && echo "Warning: this function doesn't support any flags"
# set trash path # set trash path
TRASHDIR="$HOME/.local/share/Trash" local DIRECTORY FILE
TRASHFILE="${TRASHDIR}/files" local TRASHDIR="${HOME}/.local/share/Trash"
TRASHINFO="${TRASHDIR}/info" local TRASHFILE="${TRASHDIR}/files"
local TRASHINFO="${TRASHDIR}/info"
for DIRECTORY in "${TRASHDIR}" "${TRASHFILE}" "${TRASHINFO}"; do for DIRECTORY in "${TRASHDIR}" "${TRASHFILE}" "${TRASHINFO}"; do
if [ -e "${DIRECTORY}" ]; then if [ -e "${DIRECTORY}" ]; then
[ -d "${DIRECTORY}" ] || { echo "'${DIRECTORY}' is a file"; return 1 } [ -d "${DIRECTORY}" ] || { echo "'${DIRECTORY}' is a file"; return 1 }
@ -16,25 +17,25 @@ rm() {
fi fi
done done
# confirm # confirm
CONFIRM="" local CONFIRM=""
echo -n "Do you realy want to remove '$@'? [ny] "; read -k1 CONFIRM; echo echo -n "Do you realy want to remove '$@'? [ny] "; read -k1 CONFIRM; echo
[[ ! $CONFIRM =~ [yY] ]] && return 1 [[ ! ${CONFIRM} =~ [yY] ]] && return 1
# move # move
for FILE in "$@"; do for FILE in "$@"; do
DESTFILE="$(basename -- "${FILE}")" local DESTFILE="$(basename -- "${FILE}")"
SUFFIX=''; local SUFFIX='';
ITER=0; local ITER=0;
while [ -e "${TRASHFILE}/${DESTFILE}${SUFFIX}" ]; do while [ -e "${TRASHFILE}/${DESTFILE}${SUFFIX}" ]; do
SUFFIX="_${ITER}"; SUFFIX="_${ITER}";
ITER=$(expr ${ITER} + 1) ITER=$(expr ${ITER} + 1)
done done
echo "Remove '${FILE}'" echo "Remove '${FILE}'"
if [ "$(dirname -- "$(realpath -- "${FILE}")")" == "${TRASHFILE}" ]; then if [ "$(dirname -- "$(readlink -f -- "${FILE}")")" == "${TRASHFILE}" ]; then
/usr/bin/rm -rf -- "${FILE}" /bin/rm -rf -- "${FILE}"
/usr/bin/rm -rf -- "${TRASHINFO}/${DESTFILE}.trashinfo" /bin/rm -rf -- "${TRASHINFO}/${DESTFILE}.trashinfo"
else else
mv -- "${FILE}" "${TRASHFILE}/${DESTFILE}${SUFFIX}" || return 1 mv -- "${FILE}" "${TRASHFILE}/${DESTFILE}${SUFFIX}" || return 1
echo "[Trash Info]\nPath=$(realpath -- "${FILE}")\nDeletionDate=$(date +%Y-%m-%dT%H:%M:%S)" > "${TRASHINFO}/${DESTFILE}${SUFFIX}.trashinfo" || return 1 echo "[Trash Info]\nPath=$(readlink -f -- "${FILE}")\nDeletionDate=$(date +%Y-%m-%dT%H:%M:%S)" > "${TRASHINFO}/${DESTFILE}${SUFFIX}.trashinfo" || return 1
fi fi
done done
} }

View File

@ -1,15 +1,15 @@
# redefine su command # redefine su command
su() { su() {
CHECKSU=0 local CHECKSU=0
for FLAG in $*; do for FLAG in $*; do
[[ $FLAG == "-" ]] && CHECKSU=1 [[ ${FLAG} == "-" ]] && CHECKSU=1
[[ $FLAG == "-l" ]] && CHECKSU=1 [[ ${FLAG} == "-l" ]] && CHECKSU=1
[[ $FLAG == "--login" ]] && CHECKSU=1 [[ ${FLAG} == "--login" ]] && CHECKSU=1
done done
if [[ $CHECKSU == 0 ]]; then if [[ ${CHECKSU} == 0 ]]; then
echo "Use 'su -', Luke" echo "Use 'su -', Luke"
/usr/bin/su - $* /bin/su - $*
else else
/usr/bin/su $* /bin/su $*
fi fi
} }

View File

@ -1,7 +1,8 @@
# alias -s # alias -s
alias -s {avi,mpeg,mpg,mov,m2v,mkv}=mpv alias -s {avi,mpeg,mpg,mov,m2v,mkv}=mpv
alias -s {jpg,jpeg,png,svg,eps}=gwenview
alias -s {mp3,flac}=qmmp alias -s {mp3,flac}=qmmp
alias -s {odt,doc,xls,ppt,docx,xlsx,pptx,csv}=libreoffice alias -s {odt,doc,xls,ppt,docx,xlsx,pptx,csv}=libreoffice
alias -s {pdf}=okular alias -s {pdf,djvu,djv}=okular
autoload -U pick-web-browser autoload -U pick-web-browser
alias -s {html,htm}=firefox alias -s {html,htm}=firefox

View File

@ -2,11 +2,11 @@
# functions to contorl xrandr # functions to contorl xrandr
# EXAMPLE: projctl 1024x768 # EXAMPLE: projctl 1024x768
projctl() { projctl() {
MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')" local MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')"
echo "Available monitors are: ${MONITORS}" echo "Available monitors are: ${MONITORS}"
FIRSTMON="LVDS1" local FIRSTMON="LVDS1"
SECONDMON="VGA1" local SECONDMON="VGA1"
RESOLUTION="1366x768" local RESOLUTION="1366x768"
until [ -z $1 ]; do until [ -z $1 ]; do
case "$1" in case "$1" in
"-h" | "--help" ) echo "Usage: projctl [ off/resol ] [ -o MON | --output MON ]" && return 0 ;; "-h" | "--help" ) echo "Usage: projctl [ off/resol ] [ -o MON | --output MON ]" && return 0 ;;
@ -25,11 +25,11 @@ projctl() {
} }
twinmon() { twinmon() {
MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')" local MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')"
echo "Available monitors are: ${MONITORS}" echo "Available monitors are: ${MONITORS}"
FIRSTMON="LVDS1" local FIRSTMON="LVDS1"
SECONDMON="VGA1" local SECONDMON="VGA1"
MODE="on" local MODE="on"
until [ -z $1 ]; do until [ -z $1 ]; do
case "$1" in case "$1" in
"-h" | "--help" ) echo "Usage: twinmon [ off ] [ -o MON | --output MON ]" && return 0 ;; "-h" | "--help" ) echo "Usage: twinmon [ off ] [ -o MON | --output MON ]" && return 0 ;;

View File

@ -2,11 +2,11 @@
# functions to contorl xrandr # functions to contorl xrandr
# EXAMPLE: projctl 1024x768 # EXAMPLE: projctl 1024x768
projctl() { projctl() {
MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')" local MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')"
echo "Available monitors are: ${MONITORS}" echo "Available monitors are: ${MONITORS}"
FIRSTMON="eDP1" local FIRSTMON="eDP1"
SECONDMON="DP2" local SECONDMON="DP2"
RESOLUTION="1600x900" local RESOLUTION="1600x900"
until [ -z $1 ]; do until [ -z $1 ]; do
case "$1" in case "$1" in
"-h" | "--help" ) echo "Usage: projctl [ off/resol ] [ -o MON | --output MON ]" && return 0 ;; "-h" | "--help" ) echo "Usage: projctl [ off/resol ] [ -o MON | --output MON ]" && return 0 ;;
@ -26,11 +26,11 @@ projctl() {
} }
twinmon() { twinmon() {
MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')" local MONITORS="$(xrandr | grep connected | cut -d ' ' -f 1 | tr '\n' ' ')"
echo "Available monitors are: ${MONITORS}" echo "Available monitors are: ${MONITORS}"
FIRSTMON="eDP1" local FIRSTMON="eDP1"
SECONDMON="DP2" local SECONDMON="DP2"
MODE="on" local MODE="on"
until [ -z $1 ]; do until [ -z $1 ]; do
case "$1" in case "$1" in
"-h" | "--help" ) echo "Usage: twinmon [ off ] [ -o MON | --output MON ]" && return 0 ;; "-h" | "--help" ) echo "Usage: twinmon [ off ] [ -o MON | --output MON ]" && return 0 ;;

12
zshrc
View File

@ -80,12 +80,12 @@ alias lt='ll -t --reverse'
alias lm='la | more' alias lm='la | more'
# global alias # global alias
alias -g g='| grep' alias -g _g='| grep'
alias -g l='| less' alias -g _l='| less'
alias -g t='| tail' alias -g _t='| tail'
alias -g h='| head' alias -g _h='| head'
alias -g n='| wc -l' alias -g _n='| wc -l'
alias -g dn='&> /dev/null &' alias -g _dn='&> /dev/null &'
# to run command ignoring aliases # to run command ignoring aliases
hash -d b="/bin" hash -d b="/bin"