32 lines
946 B
Bash
Executable File
32 lines
946 B
Bash
Executable File
#!/bin/sh
|
|
|
|
clipboard_text=$(wl-paste)
|
|
bookmarks_file="$HOME/.local/share/bookmarks/bookmarks"
|
|
|
|
if [ ! -f "$bookmarks_file" ]; then
|
|
notify-send "Error" "Bookmark file doesn't exist. Please pull the repo."
|
|
echo "Bookmark file doesn't exist. Please pull the repo." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Trim leading/trailing whitespace
|
|
clipboard_text=$(echo "$clipboard_text" | xargs)
|
|
|
|
# Remove trailing slashes
|
|
clipboard_text=$(echo "$clipboard_text" | sed 's#/$##')
|
|
|
|
# Check if clipboard is not empty
|
|
if [ -n "$clipboard_text" ]; then
|
|
if grep -Fxq "$clipboard_text" "$bookmarks_file"; then
|
|
notify-send "Bookmark already exists!" "$clipboard_text"
|
|
else
|
|
echo "$clipboard_text" >> "$bookmarks_file"
|
|
notify-send "Bookmark saved" "$clipboard_text"
|
|
|
|
# Run git update script
|
|
sh "$HOME/.local/bin/bookmark_update"
|
|
fi
|
|
else
|
|
notify-send "No text selected" "Please highlight some text to save as a bookmark."
|
|
fi
|