From: Tucker Johnson Date: Wed, 16 Jul 2025 02:30:58 +0000 (-0400) Subject: zeit script X-Git-Url: https://git.newer.systems/?a=commitdiff_plain;ds=sidebyside;p=dmenu.git zeit script --- diff --git a/Makefile b/Makefile index 95e6f6a..625833d 100644 --- a/Makefile +++ b/Makefile @@ -60,6 +60,7 @@ install: all chmod 755 $(DESTDIR)$(PREFIX)/bin/dm-streamselect chmod 755 $(DESTDIR)$(PREFIX)/bin/dm-sysact chmod 755 $(DESTDIR)$(PREFIX)/bin/dm-unicode + chmod 755 $(DESTDIR)$(PREFIX)/bin/dm-zeit mkdir -p $(DESTDIR)$(MANPREFIX)/man1 sed "s/VERSION/$(VERSION)/g" < dmenu.1 > $(DESTDIR)$(MANPREFIX)/man1/dmenu.1 sed "s/VERSION/$(VERSION)/g" < stest.1 > $(DESTDIR)$(MANPREFIX)/man1/stest.1 diff --git a/extras/dmenu-scripts/dm-zeit b/extras/dmenu-scripts/dm-zeit new file mode 100755 index 0000000..d7b0145 --- /dev/null +++ b/extras/dmenu-scripts/dm-zeit @@ -0,0 +1,35 @@ +#!/bin/sh + +# dmenu wrapper script for zeit project and task tracking. + +# Tucker Johnson (git.newer.systems) (tucker@newer.systems) + +# This script is to add out-of the box features to my dmenu build. If you want +# to make changes, make them in the source directory and reinstall. + +project() { \ + projName="$(dmenu -p 'Project:' < /dev/null)" + projColor="$(pastel random -n 1 | pastel format hex)" + [ -z $projName ] || notify-send "$(zeit project --color "$projColor" "$projName")" " $projName ($projColor)" +} + +track() { \ + projName="$(dmenu -p 'Project:' < /dev/null)" + taskName="$(dmenu -p 'Task:' < /dev/null)" + begin="$(dmenu -p 'Begin Time:' < /dev/null)" + if [ -z $begin ] + then + [ -z $projName ] || notify-send "$(zeit track --project "$projName" --task "$taskName" | sed $'s/[^[:print:]\t]//g' | sed 's/\[[0-9]*m//g' )" + else + [ -z $projName ] || notify-send "$(zeit track --project "$projName" --task "$taskName" --begin "$begin" | sed $'s/[^[:print:]\t]//g' | sed 's/\[[0-9]*m//g' )" + fi +} + +case "$(printf "🖲️ track\n⌛ finish\n⏲️ status\n🗒️ list\n✔️ task\n💡 project" | dmenu -i -p 'Command:')" in + '⏲️ status') notify-send "$(zeit tracking | sed $'s/[^[:print:]\t]//g' | sed 's/\[[0-9]*m//g' )" ;; + '🖲️ track') track ;; + '⌛ finish') notify-send "$(zeit finish | sed $'s/[^[:print:]\t]//g' | sed 's/\[[0-9]*m//g' )" ;; + '🗒️ list') notify-send "$(zeit list --range "today" --decimal --total | tail -n 2)" "$(zeit list --range "today" | sed $'s/[^[:print:]\t]//g' | sed 's/\[[0-9]*m//g' | cut -c 38- | sed 's/^/◆ /' )" ;; + '💡 project') project ;; + *) exit 1 ;; +esac