From 42d7bb5c6e610040a286f2370787cafb60876d13 Mon Sep 17 00:00:00 2001 From: Hadi <112569860+anotherhadi@users.noreply.github.com> Date: Wed, 20 Mar 2024 22:38:49 +0100 Subject: [PATCH] Nerdfont icons finder, folder arch.. Former-commit-id: e97e2705b5a01fa18e7fd49fb550b7b0447756cc --- README.md | 12 +++++++++ home/home.nix | 3 +-- home/qutebrowser/default.nix | 2 +- home/{ => qutebrowser}/homepage/default.nix | 1 + home/scripts/default.nix | 1 + home/scripts/misc.nix | 6 ++++- home/scripts/nerdfont_fzf.nix | 26 +++++++++++++++++++ .../{variables => }/theme/config/template.nix | 0 home/{variables => }/theme/default.nix | 0 home/{variables => }/theme/nixy.nix | 0 10 files changed, 47 insertions(+), 4 deletions(-) rename home/{ => qutebrowser}/homepage/default.nix (99%) create mode 100644 home/scripts/nerdfont_fzf.nix rename home/{variables => }/theme/config/template.nix (100%) rename home/{variables => }/theme/default.nix (100%) rename home/{variables => }/theme/nixy.nix (100%) diff --git a/README.md b/README.md index be78f608..7ca00d8d 100644 --- a/README.md +++ b/README.md @@ -136,6 +136,18 @@ Blue light filter, using wlsunset +### Nerdfont FZF + +
+Click to expand + +Nerdfont fzf is a quick way to search for nerdfont icons locally. +It will copy the selected icon to the clipboard. + +- `nerdfont-fzf` + +
+ ## Installation ```sh diff --git a/home/home.nix b/home/home.nix index 1f39694c..1eb555a7 100644 --- a/home/home.nix +++ b/home/home.nix @@ -3,7 +3,6 @@ imports = [ ./hyprland ./nvim - ./homepage ./waybar ./kitty ./dunst @@ -16,7 +15,7 @@ ./scripts ./neofetch ./spicetify - ./variables/theme + ./theme ./wallpapers ./lf ./sops # REMOVE diff --git a/home/qutebrowser/default.nix b/home/qutebrowser/default.nix index 888d35c6..9336a919 100644 --- a/home/qutebrowser/default.nix +++ b/home/qutebrowser/default.nix @@ -1,6 +1,6 @@ { config, ... }: { - imports = [ ./duckduckgo-colorscheme.nix ]; + imports = [ ./duckduckgo-colorscheme.nix ./homepage/default.nix ]; programs.qutebrowser = { enable = true; diff --git a/home/homepage/default.nix b/home/qutebrowser/homepage/default.nix similarity index 99% rename from home/homepage/default.nix rename to home/qutebrowser/homepage/default.nix index a16d1c20..5cf4f595 100644 --- a/home/homepage/default.nix +++ b/home/qutebrowser/homepage/default.nix @@ -10,6 +10,7 @@ let {text: "Nixvim", url: "https://nix-community.github.io/nixvim/", icon: ""}, {text: "Hyprland Wiki", url: "https://wiki.hyprland.org/", icon: "󰖬"}, {text: "Nerdfont", url: "https://www.nerdfonts.com/cheat-sheet", icon: ""}, + {text: "Youtube", url: "https://youtube.com", icon: "󰗃"}, ], Home: [ {text: "Casa", url: "http://192.168.2.16:8081/#/", icon: "󰋜"}, diff --git a/home/scripts/default.nix b/home/scripts/default.nix index 5719c4fa..0159d6f0 100644 --- a/home/scripts/default.nix +++ b/home/scripts/default.nix @@ -9,5 +9,6 @@ ./night-shift.nix ./screenshot.nix ./startup.nix + ./nerdfont_fzf.nix ]; } diff --git a/home/scripts/misc.nix b/home/scripts/misc.nix index ebc1ced7..f916af84 100644 --- a/home/scripts/misc.nix +++ b/home/scripts/misc.nix @@ -23,4 +23,8 @@ let nmcli connection import type wireguard file "$1" ''; -in { home.packages = with pkgs; [ menu wireguard-import powermenu ]; } + vault = pkgs.writeShellScriptBin "vault" '' + nvim $HOME/Nextcloud/obsidian + ''; + +in { home.packages = with pkgs; [ menu wireguard-import powermenu vault ]; } diff --git a/home/scripts/nerdfont_fzf.nix b/home/scripts/nerdfont_fzf.nix new file mode 100644 index 00000000..20ae0327 --- /dev/null +++ b/home/scripts/nerdfont_fzf.nix @@ -0,0 +1,26 @@ +{ pkgs, config, ... }: +let + homedir = config.home.homeDirectory; + + nerdfont-fzf = pkgs.writeShellScriptBin "nerdfont-fzf" '' + # Dependencies: jq, fzf, wl-copy, wget + icons=$(jq -r 'to_entries[] | "\(.key):\(.value.char)"' "${homedir}/.config/nerdfont_glyphnames.json" | awk -F: '{print "\033[95m"$2"\033[0m "$1}') + fzf_result=$(echo "$icons" | fzf --ansi | awk '{print $1}') || exit 1 + + echo "Copied to clipboard: \033[95m$fzf_result\033[0m" + printf "$fzf_result" | wl-copy + ''; + + nerdfont-fzf-fetch = pkgs.writeShellScriptBin "nerdfont-fzf-fetch" '' + wget "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/master/glyphnames.json" -O "glyphnames.json" || exit 1 + jq 'del(.METADATA)' "glyphnames.json" + ''; + +in { + home.packages = with pkgs; [ nerdfont-fzf nerdfont-fzf-fetch ]; + + xdg.configFile."nerdfont_glyphnames.json" = { + source = ../misc/nerdfont_glyphnames.json; + }; + +} diff --git a/home/variables/theme/config/template.nix b/home/theme/config/template.nix similarity index 100% rename from home/variables/theme/config/template.nix rename to home/theme/config/template.nix diff --git a/home/variables/theme/default.nix b/home/theme/default.nix similarity index 100% rename from home/variables/theme/default.nix rename to home/theme/default.nix diff --git a/home/variables/theme/nixy.nix b/home/theme/nixy.nix similarity index 100% rename from home/variables/theme/nixy.nix rename to home/theme/nixy.nix