This commit is contained in:
clemtre 2024-01-13 12:08:34 +01:00
parent f7b068fb78
commit 8f3241aae9
4 changed files with 2761 additions and 0 deletions

1154
BOOKMARKS Normal file

File diff suppressed because it is too large Load Diff

28
TODO.md Normal file
View File

@ -0,0 +1,28 @@
unsorted list of things that would be nice to have
* *make a make*file in order to variabilize language in add.sh prompts
and make overall config easier
* pin links
→ add an optional boolean to the records implictly false if absent.
if true, the link sits on top of the pile
* search select tags for filtering
→ tags inside \<nav> would be \<button>s instead of \<p>s and filter
the links accordingly
* a better way to capture url
→ something that grabs current page to clipboard
* hardcode bookmark ids in awk rather than css so that ids are
persistant and don't slide if a link is removed
→ add.sh id++
* make other ways to edit and generate bookmarks if dmenu is too much of
a struggle to install.
* plug other pages / tools to it - ie :
* unicode dictionnary, css colors
* notes (report, files recently written)
* agenda ← big textual dreams about this one
* weather forecast -- in the form of a line in the bookmarks maybe ??
* documentations, html/css properties quickref
* images, something like signet.sh but for images and their metadata.
entries from an IMAGES file database would be attached to downloaded
images, the most recent ones cascading in a line as thumbnails
somewhere alongside links...

49
edit_bookmarks_dmenu.sh Executable file
View File

@ -0,0 +1,49 @@
#!/bin/bash
dmenu_style() {
local font='junicode-18'
local normal_bg='#000000'
local normal_fg='#FFFFFF'
local selected_bg='#AAAAAA'
local selected_fg='#000000'
echo "-fn $font -nb $normal_bg -nf $normal_fg -sb $selected_bg -sf $selected_fg"
}
BOOKMARKS="BOOKMARKS"
local url=$(xclip -o -selection clipboard)
url_regex="^(https?|ftp|file)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]*[-A-Za-z0-9+&@#/%=~_|]"
# If the given string ressembles to a url, continue.
if [[ $url =~ $url_regex ]]; then
echo "The string is a URL: $url"
url=$(xclip -o -selection clipboard | dmenu -p "Enter the URL:" $(dmenu_style))
# what we used to need htmlq for :
#name=$(curl $url | ~/.cargo/bin/htmlq title --text | sed -r '/^\s*$/d' | sed 's/^ *//g')
# This is a blocking process and will pause the programm in case
# internet shuts :^)
name=$(curl $url awk -v RS='</title>' '
/<title>/ {gsub(/.*<title>/, ""); print}
' $url | tr -d '\n')
description=$(echo "" | dmenu -p "Enter a description:" $(dmenu_style))
tags=$(echo "" | dmenu -p "Enter comma-separated tags:" $(dmenu_style))
bookmark_file="$BOOKMARKS"
# Save the data to the file.
echo "URL: $url" >> "$BOOKMARKS"
echo "Name: $name" >> "$BOOKMARKS"
echo "Description: $description" >> "$BOOKMARKS"
echo "Tags: $tags" >> "$BOOKMARKS"
echo "Date: $(date +%s)" >> "$BOOKMARKS"
echo >> "$BOOKMARKS"
else
xclip -o -selection clipboard | dmenu -p "≉" $(dmenu_style)
fi

1530
index.html Normal file

File diff suppressed because it is too large Load Diff