[bibtex] Use rofi to show bib-due files
This commit is contained in:
parent
d4774b165c
commit
1d80d988b7
2 changed files with 33 additions and 2 deletions
31
bibtex/.local/bin/rofi-bib-due
Executable file
31
bibtex/.local/bin/rofi-bib-due
Executable file
|
@ -0,0 +1,31 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
exist rofi normal
|
||||||
|
|
||||||
|
_rofi() {
|
||||||
|
rofi -dmenu -no-auto-select -i "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
bib=${1:-$BIBFILE}
|
||||||
|
|
||||||
|
# call for whatever file is passed in
|
||||||
|
results="$(bib-due "$1")"
|
||||||
|
|
||||||
|
# mark priority 1 items as urgent in rofi
|
||||||
|
urgent="$(
|
||||||
|
# find all lines with priority 1, (marked as `(1):` );
|
||||||
|
# print them on 1 line, -1 since dmenu is 0 indexed
|
||||||
|
echo "$results" | grep -n '(1):' | cut -d: -f1 | awk '{ $0=$0-1; print $0 }' ORS=','
|
||||||
|
)"
|
||||||
|
|
||||||
|
# get user choice, exit if nothing selected
|
||||||
|
choice=$(echo "$results" | _rofi -u "$urgent" -columns 1)
|
||||||
|
[ -z "$choice" ] && exit 0
|
||||||
|
|
||||||
|
key=$(echo "$choice" | sed -E 's/.*\((\w+)\)$/\1/')
|
||||||
|
|
||||||
|
# get library pdf folder (only searches for default ./pdf path)
|
||||||
|
library="$(dirname "$(realpath "$bib")")/pdf"
|
||||||
|
|
||||||
|
# find and open the key-associated pdf file
|
||||||
|
${FILEREADER:-xdg-open} "$(find "$library" -type f -name "$key *.pdf")"
|
|
@ -224,9 +224,9 @@ click-right = kill -USR2 %pid%
|
||||||
; display information on remaining papers to read for the upcoming week
|
; display information on remaining papers to read for the upcoming week
|
||||||
[module/papersdue]
|
[module/papersdue]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = bib-due $BIBFILE | wc -l
|
exec = bib-due | wc -l
|
||||||
exec-if = type bib-due
|
exec-if = type bib-due
|
||||||
click-left = tdrop -w "15%" -h $(echo "$(bib-due $BIBFILE | wc -l) * 25" | bc ) -x "45%" -y "15" -ma alacritty -e watch -t bib-due $BIBFILE
|
click-left = exist rofi-bib-due normal && rofi-bib-due
|
||||||
format-foreground = ${colors.primary}
|
format-foreground = ${colors.primary}
|
||||||
format-prefix = ""
|
format-prefix = ""
|
||||||
interval = 120
|
interval = 120
|
||||||
|
|
Loading…
Reference in a new issue