From bcb0c530790054031f802d19f81e405136a9f7e2 Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Sun, 6 Feb 2022 21:45:56 +0100 Subject: [PATCH] Remove bukurun --- binaries.org | 340 --------------------------------------------------- 1 file changed, 340 deletions(-) diff --git a/binaries.org b/binaries.org index d9dc351..ceddb70 100644 --- a/binaries.org +++ b/binaries.org @@ -164,346 +164,6 @@ else fi #+end_src -* =bukurun= - Open link from Buku -:PROPERTIES: -:CUSTOM_ID: bukurun -:END: - -Script taken from [[https://github.com/carnager/buku_run][here]] that acts as a buku frontend using Rofi. - -#+begin_src bash :tangle ~/.local/bin/bukurun -_rofi () { - rofi -dmenu -i -no-levenshtein-sort -width 1000 "$@" -} - -# display settings -display_type=1 -max_str_width=80 - -# keybindings -switch_view="Alt+Tab" -new_bookmark="Alt+n" -actions="Alt+a" -edit="Alt+e" -delete="Alt+d" - -# colors -help_color="#334433" - -# source global config -if [[ -f /etc/buku_run.config ]] -then - source /etc/buku_run.config -fi - -# source local config: -if [[ -z $XDG_CONFIG_DIR ]] -then - if [[ -f $HOME/.config/buku_run/config ]] - then - source $HOME/.config/buku_run/config - else - echo "User config file \'~/.config/buku_run/config\' not found. using global config" - fi -else - if [[ -f "${XDG_CONFIG_DIR}/buku_run/config" ]] - then - source "${XDG_CONFIG_DIR}/buku_run/config" - else - echo "User config file \'~/.config/buku_run/config\' not found. using global config" - fi -fi - - -main () { - HELP="Welcome to Buku. Use ${new_bookmark} to add a new Bookmark -Use ${switch_view} to switch View. ${actions} for actions" - if [[ $mode == "bookmarks" ]]; then - content=$(parseBuku) - menu=$(echo "${content}" | _rofi -p '> ' -filter "${filter}" -mesg "${HELP}" -kb-custom-1 "${new_bookmark}" -kb-custom-2 "${switch_view}" -kb-custom-3 "${actions}" -kb-custom-4 "${edit}" -kb-custom-5 "${delete}") - elif [[ $mode == "tags" ]]; then - menu=$(buku --np --st | awk '{$NF=""; print $0}' | cut -d ' ' -f2- | _rofi -p '> ' -mesg "${HELP}" -kb-custom-1 "${new_bookmark}" -kb-custom-2 "${switch_view}" -kb-custom-3 "${actions}" -kb-custom-4 "${edit}" -kb-custom-5 "${delete}") - fi - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 12 ]]; then - optionsMenu - elif [[ $val -eq 10 ]]; then - addMark - elif [[ $val -eq 14 ]]; then - deleteMenu - elif [[ $val -eq 13 ]]; then - editMenu - elif [[ $val -eq 11 ]]; then - if [[ $mode == "bookmarks" ]]; then - export mode="tags" - mode=tags main - elif [[ $mode == "tags" ]]; then - export mode="bookmarks" - mode=bookmarks main - fi - elif [[ $val -eq 0 ]]; then - if [[ $mode == "bookmarks" ]]; then - id=$(getId "$content" "$menu") - for bm in ${id}; do - buku -o "${bm}" - done - elif [[ $mode == "tags" ]]; then - filter="${menu}" mode="bookmarks" main - fi - fi -} - -optionsMenu () { - if [[ $mode == "bookmarks" ]]; then - askmenu=$(echo -e "< Return\n---\n1. Edit\n2. Delete" | _rofi -p '> ' -mesg "Choose Action for bookmark") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $askmenu == "< Return" ]]; then - export mode=bookmarks - main - elif [[ $askmenu == "1. Edit" ]]; then - editMenu - elif [[ $askmenu == "2. Delete" ]]; then - deleteMenu - fi - fi - elif [[ $mode == "tags" ]]; then - askmenu=$(echo -e "< Return\n---\n1. Replace Tag\n2. Delete Tag" | _rofi -p '> ' -mesg "Choose Action for tag \"${menu}\"") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $askmenu == "< Return" ]]; then - export mode=tags - main - elif [[ $askmenu == "1. Replace Tag" ]]; then - newtag=$(echo | _rofi -p '> ' -mesg "Enter new tag name for tag \"${menu}\"") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $newtag == "" ]]; then - mode=tags main - else - buku -r "${menu}" "${newtag}" - mode=tags main - fi - fi - elif [[ $askmenu == "2. Delete Tag" ]]; then - delask=$(echo -e "1. Yes\n2. No" | _rofi -p '> ' -mesg "Really delete tag?") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $delask == "1. Yes" ]]; then - buku -r "${menu}" - mode=tags main - elif [[ $delask == "2. No" ]]; then - mode=tags main - fi - fi - fi - fi - fi -} - -deleteMenu () { - id=$(getId "$content" "$menu") - delask=$(echo -e "1. Yes\n2. No" | _rofi -p '> ' -mesg "Really delete bookmark?") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $delask == "1. Yes" ]]; then - buku -d ${id} --tacit - mode=bookmarks main - elif [[ $delask == "2. No" ]]; then - optionsMenu - fi - fi -} - -editMenu () { - id=$(getId "$content" "$menu") - title="$(getTitleFromId $id)" - bookmark="$(getUrlFromId $id)" - tags="$(getTagsFromId $id)" - content=$(echo -e "1. title: $title\n2. url: $bookmark\n3. tags: $tags") - editmenu=$(echo -e "< Return\n---\n${content}" | _rofi -p '> ') - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $editmenu == "< Return" ]]; then - main - elif [[ $editmenu == "tags: NOTAG" ]]; then - addTags --update - elif [[ $editmenu =~ tags:* ]]; then - tags="${tags}" editTags - elif [[ $editmenu =~ url:* ]]; then - editBookmark - elif [[ $editmenu =~ title:* ]]; then - editTitle - fi - fi -} - -editTags () { - edittagsmenu=$(echo | _rofi -filter "${tags}" -p '> ' -mesg "Edit Tags and hit Enter") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - buku -u ${id} --tag "${edittagsmenu}" - fi - mode=bookmarks main -} - -editBookmark () { - bmarkmenu=$(echo "" | _rofi -p "> " -filter "${bookmark}" -mesg "Edit Bookmark and hit Enter") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $bmarkmenu == "http"* ]]; then - buku -u "${id}" --url "${bmarkmenu}" - else - echo "" | rofi -e "Not a valid URI, Make sure URLs start with http" - editBookmark - fi - fi - mode=bookmarks main -} - -editTitle () { - titlemenu=$(echo "" | _rofi -p "> " -filter "${title}" -mesg "Edit Title and hit Enter") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - buku -u "${id}" --title "${titlemenu}" - fi - mode=bookmarks main -} - -addMark () { - inserturl=$(echo -e "$(xclip -o)" | _rofi -p '> ' -mesg "Use URL below or type manually") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - addTags - fi -} - -addTags () { - inserttags=$(buku --np --st | awk '{$NF=""; print $0}' | cut -d ' ' -f2- | _rofi -p '> ' -mesg "Add some tags. Separate tags with ', '") - val=$? - if [[ $val -eq 1 ]]; then - exit - elif [[ $val -eq 0 ]]; then - if [[ $(echo "${inserttags}" | wc -l) -gt 1 ]]; then - taglist=$(echo "${inserttags}" | tr '\n' ',') - tags=() - for tag in $taglist; do - tags+=("$tag") - done - else - tags=${inserttags} - fi - if [[ $1 == "--update" ]]; then - buku -u "${id}" --tag ${tags} - else - buku -a ${inserturl} ${tags} - fi - fi -} - -parseBuku () { - echo "$(buku --nc -p | gawk -v max="$max_str_width" -v type="$display_type" ' -BEGIN { - RS="" - FS="\n" -} -{ - if ($3 == "") - $3 = " # NOTAG" - id = gensub(/([0-9]+)\.(.*)/, "\\1", "g", $1) - url = substr(gensub(/\s+> (.*)/, "\\1", "g", $2),0,max) - tags = gensub(/\s+# (.*)/, "\\1", "g", $3) - title = substr(gensub(/[0-9]+\.\s*(.*)/, "\\1", "g", $1),0,max) - - if (type == 1) - print id "\t" url "\t" tags - else - print id "\t" title "\t" tags - if (type == 3) - print " \t" url "\t " - print "" -} -' | column -t -s $'\t')" -} - -getId () { - id=$(echo "${2%% *}") - if [ -z "$id" ]; then - prev="" - IFS=$'\n' - for line in $1; do - if [ "$2" = "$line" ]; then - id=$(echo "${prev%% *}") - break - else - prev="$line" - fi - done - fi - echo $id -} - -getTitleFromId () { - echo "$(buku --nc -p $1 | gawk ' - BEGIN { - RS="" - FS="\n" - } - { - print gensub(/[0-9]+\.\s*(.*)/, "\\1", "g", $1) - } - ')" -} - -getUrlFromId () { - echo "$(buku --nc -p $1 | gawk ' - BEGIN { - RS="" - FS="\n" - } - { - print gensub(/\s+> (.*)/, "\\1", "g", $2) - } - ')" -} - -getTagsFromId () { - echo "$(buku --nc -p $1 | gawk ' - BEGIN { - RS="" - FS="\n" - } - { - print gensub(/\s+# (.*)/, "\\1", "g", $3) - } - ')" -} - -mode=bookmarks main -#+end_src - * =i3exit= - Manage lock, suspend, reboot, ... :PROPERTIES: :CUSTOM_ID: i3exit