nix

configuration files that power my machines
Log | Files | Refs | README | LICENSE

commit e7f0d618c09f434d6981727e24cbb0408733934e
parent 26957b183b9fd36b425c2061de3b974ac2cfc9b8
Author: mtmn <miro@haravara.org>
Date:   Fri, 10 Apr 2026 22:39:56 +0200

dotfiles: extend todomenu

Diffstat:
Mmodules/mixins/dotfiles/bin/todomenu | 21+++++++++++++++++----
Rmodules/mixins/dotfiles/bin/yank-to-txt -> modules/mixins/dotfiles/bin/yank-to-todo | 0
Mmodules/mixins/dotfiles/config/river/init | 34+++++++++++++++++-----------------
3 files changed, 34 insertions(+), 21 deletions(-)

diff --git a/modules/mixins/dotfiles/bin/todomenu b/modules/mixins/dotfiles/bin/todomenu @@ -1,6 +1,19 @@ -#!/bin/sh -todo_file=~/misc/notes/nota/todo.txt +#!/bin/bash -if item=$(dmenu "$@" < /dev/null) && [ -n "$item" ]; then - printf "\n%s\ntodo: %s" "$(date --rfc-3339=s)" "$item" >> "$todo_file" +TODO_FILE="$HOME/misc/notes/nota/todo.txt" + +[ ! -f "$TODO_FILE" ] && exit 1 + +selected=$(awk '/^todo:/ { + match($0, /^todo: (.*)/, arr) + print arr[1] +}' "$TODO_FILE" | tac | dmenu "$@") + +if [ -n "$selected" ]; then + # Check if selection matches any existing todo item + if ! grep -q "^todo: $selected$" "$TODO_FILE"; then + printf "\n%s\ntodo: %s" "$(date --rfc-3339=s)" "$selected" >>"$TODO_FILE" + else + echo "$selected" | awk '{print $0}' | wl-copy + fi fi diff --git a/modules/mixins/dotfiles/bin/yank-to-txt b/modules/mixins/dotfiles/bin/yank-to-todo diff --git a/modules/mixins/dotfiles/config/river/init b/modules/mixins/dotfiles/config/river/init @@ -124,20 +124,20 @@ riverctl map normal $mod+Shift Tab send-to-previous-tags riverctl xcursor-theme OSX-ElCap 16 -swaybg -m fill -c "#120d15" -i "$HOME/misc/random/wallpapers/16.jpg" & -mkfifo "$wobsock" && tail -f "$wobsock" | wob & -wl-paste --watch cliphist store & - -services_to_start=( - battery-notify - dunst - pipewire - habitual - kanshi - psi-notify - khal_notifier -) - -for s in "${services_to_start[@]}"; do - "$s" 2>&1 | vlogger -t "$s" & -done +# swaybg -m fill -c "#120d15" -i "$HOME/misc/random/wallpapers/16.jpg" & +# mkfifo "$wobsock" && tail -f "$wobsock" | wob & +# wl-paste --watch cliphist store & + +# services_to_start=( +# battery-notify +# dunst +# pipewire +# habitual +# kanshi +# psi-notify +# khal_notifier +# ) + +# for s in "${services_to_start[@]}"; do +# "$s" 2>&1 | vlogger -t "$s" & +# done