Merge remote-tracking branch 'origin/master' into x250

This commit is contained in:
Dr. Amr Osman 2019-04-12 22:08:08 +02:00
commit 1e1af1fc46
5 changed files with 58 additions and 89 deletions

View File

@ -1,70 +1,47 @@
# generic-cancel ESC
# Calcurse keys configuration file generic-select SPC
# generic-credits @
# This file sets the keybindings used by Calcurse. generic-help ?
# Lines beginning with "#" are comments, and ignored by Calcurse. generic-quit q Q
# To assign a keybinding to an action, this file must contain a line generic-save s S ^S
# with the following syntax: generic-reload R
# generic-copy c
# ACTION KEY1 KEY2 ... KEYn generic-paste p ^V
# generic-change-view TAB
# Where ACTION is what will be performed when KEY1, KEY2, ..., or KEYn generic-import i I
# will be pressed. generic-export x X
# generic-goto g G
# To define bindings which use the CONTROL key, prefix the key with 'C-'. generic-other-cmd o O
# The escape, space bar and horizontal Tab key can be specified using generic-config-menu C
# the 'ESC', 'SPC' and 'TAB' keyword, respectively. generic-redraw ^R
# Arrow keys can also be specified with the UP, DWN, LFT, RGT keywords. generic-add-appt ^A
# Last, Home and End keys can be assigned using 'KEY_HOME' and 'KEY_END' generic-add-todo ^T
# keywords. generic-prev-day T ^H
# generic-next-day t ^L
# A description of what each ACTION keyword is used for is available generic-prev-week W ^K
# from calcurse online configuration menu. generic-next-week w ^J
generic-prev-month M
generic-cancel ESC generic-next-month m
generic-select SPC generic-prev-year Y
generic-credits @ generic-next-year y
generic-help ? generic-scroll-down ^N
generic-quit q Q generic-scroll-up ^P
generic-save s S ^S generic-goto-today ^G
generic-reload R generic-command :
generic-copy c move-right l L RGT
generic-paste p ^V move-left h H LFT
generic-change-view TAB move-down j J DWN
generic-import i I move-up k K UP
generic-export x X start-of-week 0
generic-goto g G end-of-week $
generic-other-cmd o O add-item a A
generic-config-menu C del-item d D
generic-redraw ^R edit-item e E
generic-add-appt ^A view-item v V
generic-add-todo ^T pipe-item |
generic-prev-day T ^H flag-item !
generic-next-day t ^L repeat r
generic-prev-week W ^K edit-note n N
generic-next-week w ^J view-note >
generic-prev-month M raise-priority +
generic-next-month m lower-priority -
generic-prev-year Y
generic-next-year y
generic-scroll-down ^N
generic-scroll-up ^P
generic-goto-today ^G
generic-command :
move-right l L RGT
move-left h H LFT
move-down j J DWN
move-up k K UP
start-of-week 0
end-of-week $
add-item a A
del-item d D
edit-item e E
view-item v V
pipe-item |
flag-item !
repeat r
edit-note n N
view-note >
raise-priority +
lower-priority -

0
.config/user-dirs.dirs Executable file → Normal file
View File

View File

@ -3,7 +3,6 @@
# If they're in /etc/fstab, they'll be mounted automatically. # If they're in /etc/fstab, they'll be mounted automatically.
# Otherwise, you'll be prompted to give a mountpoint from already existsing directories. # Otherwise, you'll be prompted to give a mountpoint from already existsing directories.
# If you input a novel directory, it will prompt you to create that directory. # If you input a novel directory, it will prompt you to create that directory.
pgrep -x dmenu && exit
getmount() { \ getmount() { \
[ -z "$chosen" ] && exit 1 [ -z "$chosen" ] && exit 1
@ -17,7 +16,7 @@ getmount() { \
mountusb() { \ mountusb() { \
chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?" | awk '{print $1}')" chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?" | awk '{print $1}')"
sudo -A mount "$chosen" && notify-send "$chosen mounted." && exit 0 sudo -A mount "$chosen" && notify-send "💻 USB mounting" "$chosen mounted." && exit 0
alreadymounted=$(lsblk -nrpo "name,type,mountpoint" | awk '$2=="part"&&$3!~/\/boot|\/home$|SWAP/&&length($3)>1{printf "-not \( -path *%s -prune \) \ \n",$3}') alreadymounted=$(lsblk -nrpo "name,type,mountpoint" | awk '$2=="part"&&$3!~/\/boot|\/home$|SWAP/&&length($3)>1{printf "-not \( -path *%s -prune \) \ \n",$3}')
getmount "/mnt /media /mount /home -maxdepth 5 -type d $alreadymounted" getmount "/mnt /media /mount /home -maxdepth 5 -type d $alreadymounted"
partitiontype="$(lsblk -no "fstype" "$chosen")" partitiontype="$(lsblk -no "fstype" "$chosen")"
@ -25,14 +24,14 @@ mountusb() { \
"vfat") sudo -A mount -t vfat "$chosen" "$mp" -o rw,umask=0000;; "vfat") sudo -A mount -t vfat "$chosen" "$mp" -o rw,umask=0000;;
*) sudo -A mount "$chosen" "$mp"; user="$(whoami)"; ug="$(groups | awk '{print $1}')"; sudo -A chown "$user":"$ug" 741 "$mp";; *) sudo -A mount "$chosen" "$mp"; user="$(whoami)"; ug="$(groups | awk '{print $1}')"; sudo -A chown "$user":"$ug" 741 "$mp";;
esac esac
notify-send "$chosen mounted to $mp." notify-send "💻 USB mounting" "$chosen mounted to $mp."
} }
mountandroid() { \ mountandroid() { \
chosen=$(echo "$anddrives" | dmenu -i -p "Which Android device?" | cut -d : -f 1) chosen=$(echo "$anddrives" | dmenu -i -p "Which Android device?" | cut -d : -f 1)
getmount "$HOME -maxdepth 3 -type d" getmount "$HOME -maxdepth 3 -type d"
simple-mtpfs --device "$chosen" "$mp" simple-mtpfs --device "$chosen" "$mp"
notify-send "Android device mounted to $mp." notify-send "🤖 Android Mounting" "Android device mounted to $mp."
} }
asktype() { \ asktype() { \

View File

@ -7,17 +7,17 @@ unmountusb() {
[ -z "$drives" ] && exit [ -z "$drives" ] && exit
chosen=$(echo "$drives" | dmenu -i -p "Unmount which drive?" | awk '{print $1}') chosen=$(echo "$drives" | dmenu -i -p "Unmount which drive?" | awk '{print $1}')
[ -z "$chosen" ] && exit [ -z "$chosen" ] && exit
sudo -A umount "$chosen" && pgrep -x dunst && notify-send "$chosen unmounted." sudo -A umount "$chosen" && notify-send "💻 USB unmounting" "$chosen unmounted."
} }
unmountandroid() { \ unmountandroid() { \
chosen=$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu -i -p "Unmount which device?") chosen=$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu -i -p "Unmount which device?")
[ -z "$chosen" ] && exit [ -z "$chosen" ] && exit
sudo -A umount -l "$chosen" && pgrep -x dunst && notify-send "$chosen unmounted." sudo -A umount -l "$chosen" && notify-send "🤖 Android unmounting" "$chosen unmounted."
} }
asktype() { \ asktype() { \
case $(printf "USB\\nAndroid" | dmenu -i -p "Unmount a USB drive or Android device?") in case "$(printf "USB\\nAndroid" | dmenu -i -p "Unmount a USB drive or Android device?")" in
USB) unmountusb ;; USB) unmountusb ;;
Android) unmountandroid ;; Android) unmountandroid ;;
esac esac

View File

@ -1,21 +1,14 @@
#!/bin/sh #!/bin/sh
[ -z "$1" ] && echo "Give either a pdf file or a DOI as an argument." && exit
# Give this script a .pdf and it will attempt if [ -f "$1" ]; then
# to return a proper .bib citation via doi. # Try to get DOI from pdfinfo or pdftotext output.
# Internet connection required.
if [ -f "$1" ];
then
# Get the doi from metadata, if not possible, get
# doi from pdftotext output, if not possible, exit.
doi=$(pdfinfo "$1" | grep -io "doi:.*") || doi=$(pdfinfo "$1" | grep -io "doi:.*") ||
doi=$(pdftotext "$1" 2>/dev/null - | grep -o "doi:.*" -m 1) || doi=$(pdftotext "$1" 2>/dev/null - | grep -io "doi:.*" -m 1) ||
exit 1 exit 1
else else
# If not given file, assume argument is doi
doi="$1" doi="$1"
fi fi
# Check crossref.org for the bib citation. # Check crossref.org for the bib citation.
curl -s "http://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n" | curl -s "http://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n"
sed -e "/^[^\\(\\t\\|@\\|}\\)]/d"