diff --git a/hypr/.config/hypr/hypridle.conf b/hypr/.config/hypr/hypridle.conf new file mode 100644 index 0000000..18d19f5 --- /dev/null +++ b/hypr/.config/hypr/hypridle.conf @@ -0,0 +1,34 @@ +general { + lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances. + before_sleep_cmd = loginctl lock-session # lock before suspend. + after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display. +} + +listener { + timeout = 150 # 2.5min. + on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor. + on-resume = brightnessctl -r # monitor backlight restore. +} + +# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight. +listener { + timeout = 150 # 2.5min. + on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight. + on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight. +} + +listener { + timeout = 300 # 5min + on-timeout = loginctl lock-session # lock screen when timeout has passed +} + +listener { + timeout = 330 # 5.5min + on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed + on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired. +} + +listener { + timeout = 1800 # 30min + on-timeout = systemctl suspend # suspend pc +} diff --git a/hypr/.config/hypr/hyprland.conf b/hypr/.config/hypr/hyprland.conf new file mode 100644 index 0000000..d948cb9 --- /dev/null +++ b/hypr/.config/hypr/hyprland.conf @@ -0,0 +1,337 @@ + +# ####################################################################################### +# AUTOGENERATED HYPR CONFIG. +# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, +# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. +# ####################################################################################### + +# autogenerated = 1 # remove this line to remove the warning + +# This is an example Hyprland config file. +# Refer to the wiki for more information. +# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/ + +# Please note not all available settings / options are set here. +# For a full list, see the wiki + +# You can split this configuration into multiple files +# Create your files separately and then link them to this file like this: +# source = ~/.config/hypr/myColors.conf + + +################ +### MONITORS ### +################ + +# See https://wiki.hyprland.org/Configuring/Monitors/ +monitor=,preferred,auto,1.25 + + +################### +### MY PROGRAMS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ + +# Set programs that you use +$terminal = kitty +$fileManager = dolphin +$menu = rofi -show run + + +################# +### AUTOSTART ### +################# + +# Autostart necessary processes (like notifications daemons, status bars, etc.) +# Or execute your favorite apps at launch like this: + +# exec-once = $terminal +# exec-once = nm-applet & +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = $HOME/.config/hypr/scripts/polkit.sh +exec-once = nm-applet --indicator +exec-once = waybar & hyprpaper & dunst & swaync & hypridle + +############################# +### ENVIRONMENT VARIABLES ### +############################# + +# See https://wiki.hyprland.org/Configuring/Environment-variables/ + +env = XCURSOR_SIZE,24 +env = HYPRCURSOR_THEME,Bibata-Modern-Ice +env = HYPRCURSOR_SIZE,24 +env = SDL_VIDEODRIVER,wayland +env = CLUTTER_BACKEND,wayland +env = ELECTRON_OZONE_PLATFORM_HINT,wayland + + +##################### +### LOOK AND FEEL ### +##################### + +# Refer to https://wiki.hyprland.org/Configuring/Variables/ + +# https://wiki.hyprland.org/Configuring/Variables/#general +general { + gaps_in = 5 + gaps_out = 5 + + border_size = 2 + + # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors + col.active_border = rgb(81a1c1) rgb(a3be8c) 45deg + col.inactive_border = rgb(4c566a) + + # Set to true enable resizing windows by clicking and dragging on borders and gaps + resize_on_border = false + + # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on + allow_tearing = false + + layout = dwindle +} + +# https://wiki.hyprland.org/Configuring/Variables/#decoration +decoration { + rounding = 5 + + # Change transparency of focused and unfocused windows + active_opacity = 0.9 + inactive_opacity = 0.8 + + drop_shadow = true + shadow_range = 4 + shadow_render_power = 3 + col.shadow = rgba(2e3440aa) + + # https://wiki.hyprland.org/Configuring/Variables/#blur + blur { + enabled = true + size = 3 + passes = 1 + + vibrancy = 0.1696 + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#animations +animations { + enabled = true + + # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default +} + +# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more +dwindle { + pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = true # You probably want this +} + +# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more +master { + new_is_master = false +} + +# https://wiki.hyprland.org/Configuring/Variables/#misc +misc { + force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers + disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :( +} + + +############# +### INPUT ### +############# + +# https://wiki.hyprland.org/Configuring/Variables/#input +input { + kb_layout = gb + kb_variant = + kb_model = + kb_options = + kb_rules = + + follow_mouse = 0 + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + + touchpad { + natural_scroll = true + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#gestures +gestures { + workspace_swipe = true +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more +device { + name = epic-mouse-v1 + sensitivity = -0.5 +} + + +#################### +### KEYBINDINGSS ### +#################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ +$mainMod = SUPER # Sets "Windows" key as main modifier +$scriptsDir = $HOME/.config/hypr/scripts + +bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0 +bind = $mainMod, Q, killactive, +bind = $mainMod, F, fullscreen +bind = $mainMod SHIFT, Q, closewindow, +bind = $mainMod SHIFT, F, togglefloating, +bind = $mainMod ALT, F, exec, hyprctl dispatch workspaceopt allfloat + +# Master Layout +bind = $mainMod CTRL, D, layoutmsg, removemaster +bind = $mainMod, I, layoutmsg, addmaster +bind = $mainMod, J, layoutmsg, cyclenext +bind = $mainMod, K, layoutmsg, cycleprev +bind = $mainMod, M, exec, hyprctl dispatch splitratio 0.3 +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod CTRL, Return, layoutmsg, swapwithmaster +bind = $mainMod, Space, exec, $menu +bind = $mainMod, Return, exec, $terminal + +# group +bind = $mainMod, G, togglegroup +bind = ALT, tab, changegroupactive #change focus to another window + +# Special Keys / Hot Keys +bind = , xf86audioraisevolume, exec, $scriptsDir/Volume.sh --inc #volume up +bind = , xf86audiolowervolume, exec, $scriptsDir/Volume.sh --dec #volume down +bind = , xf86AudioMicMute, exec, $scriptsDir/Volume.sh --toggle-mic #mute mic +bind = , xf86audiomute, exec, $scriptsDir/Volume.sh --toggle +bind = , xf86Sleep, exec, systemctl suspend # sleep button +bind = , xf86Rfkill, exec, $scriptsDir/AirplaneMode.sh #Airplane mode + +binde = , xf86MonBrightnessDown, exec, $scriptsDir/Brightness.sh --dec +binde = , xf86MonBrightnessUp, exec, $scriptsDir/Brightness.sh --inc + +# media controls using keyboards +bind = , xf86AudioPlayPause, exec, $scriptsDir/MediaCtrl.sh --pause +bind = , xf86AudioPause, exec, $scriptsDir/MediaCtrl.sh --pause +bind = , xf86AudioPlay, exec, $scriptsDir/MediaCtrl.sh --pause +bind = , xf86AudioNext, exec, $scriptsDir/MediaCtrl.sh --nxt +bind = , xf86AudioPrev, exec, $scriptsDir/MediaCtrl.sh --prv +bind = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop + +# Screenshot keybindings NOTE: You may need to press Fn key as well +bind = $mainMod, Print, exec, $scriptsDir/ScreenShot.sh --now +bind = $mainMod SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --area +bind = $mainMod CTRL, Print, exec, $scriptsDir/ScreenShot.sh --in5 #screenshot in 5 secs +bind = $mainMod CTRL SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs +bind = ALT, Print, exec, $scriptsDir/ScreenShot.sh --active #take screenshot of active window + +# screenshot with swappy (another screenshot tool) +bind = $mainMod SHIFT, S, exec, $scriptsDir/ScreenShot.sh --swappy + +# Resize windows +binde = $mainMod SHIFT, left, resizeactive,-50 0 +binde = $mainMod SHIFT, right, resizeactive,50 0 +binde = $mainMod SHIFT, up, resizeactive,0 -50 +binde = $mainMod SHIFT, down, resizeactive,0 50 + +# Move windows +bind = $mainMod CTRL, left, movewindow, l +bind = $mainMod CTRL, right, movewindow, r +bind = $mainMod CTRL, up, movewindow, u +bind = $mainMod CTRL, down, movewindow, d + +# Move focus with mainMod + arrow keys +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Workspaces related +bind = $mainMod, tab, workspace, m+1 +bind = $mainMod SHIFT, tab, workspace, m-1 + +# Special workspace +bind = $mainMod SHIFT, U, movetoworkspace, special +bind = $mainMod, U, togglespecialworkspace, + +# The following mappings use the key codes to better support various keyboard layouts +# 1 is code:10, 2 is code 11, etc +# Switch workspaces with mainMod + [0-9] +bind = $mainMod, code:10, workspace, 1 +bind = $mainMod, code:11, workspace, 2 +bind = $mainMod, code:12, workspace, 3 +bind = $mainMod, code:13, workspace, 4 +bind = $mainMod, code:14, workspace, 5 +bind = $mainMod, code:15, workspace, 6 +bind = $mainMod, code:16, workspace, 7 +bind = $mainMod, code:17, workspace, 8 +bind = $mainMod, code:18, workspace, 9 +bind = $mainMod, code:19, workspace, 10 + +# Move active window and follow to workspace mainMod + SHIFT [0-9] +bind = $mainMod SHIFT, code:10, movetoworkspace, 1 +bind = $mainMod SHIFT, code:11, movetoworkspace, 2 +bind = $mainMod SHIFT, code:12, movetoworkspace, 3 +bind = $mainMod SHIFT, code:13, movetoworkspace, 4 +bind = $mainMod SHIFT, code:14, movetoworkspace, 5 +bind = $mainMod SHIFT, code:15, movetoworkspace, 6 +bind = $mainMod SHIFT, code:16, movetoworkspace, 7 +bind = $mainMod SHIFT, code:17, movetoworkspace, 8 +bind = $mainMod SHIFT, code:18, movetoworkspace, 9 +bind = $mainMod SHIFT, code:19, movetoworkspace, 10 +bind = $mainMod SHIFT, bracketleft, movetoworkspace, -1 # brackets [ or ] +bind = $mainMod SHIFT, bracketright, movetoworkspace, +1 + +# Move active window to a workspace silently mainMod + CTRL [0-9] +bind = $mainMod CTRL, code:10, movetoworkspacesilent, 1 +bind = $mainMod CTRL, code:11, movetoworkspacesilent, 2 +bind = $mainMod CTRL, code:12, movetoworkspacesilent, 3 +bind = $mainMod CTRL, code:13, movetoworkspacesilent, 4 +bind = $mainMod CTRL, code:14, movetoworkspacesilent, 5 +bind = $mainMod CTRL, code:15, movetoworkspacesilent, 6 +bind = $mainMod CTRL, code:16, movetoworkspacesilent, 7 +bind = $mainMod CTRL, code:17, movetoworkspacesilent, 8 +bind = $mainMod CTRL, code:18, movetoworkspacesilent, 9 +bind = $mainMod CTRL, code:19, movetoworkspacesilent, 10 +bind = $mainMod CTRL, bracketleft, movetoworkspacesilent, -1 # brackets [ or ] +bind = $mainMod CTRL, bracketright, movetoworkspacesilent, +1 + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 +bind = $mainMod, period, workspace, e+1 +bind = $mainMod, comma, workspace, e-1 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow +############################## +### WINDOWS AND WORKSPACES ### +############################## + +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more +# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules + +# Example windowrule v1 +# windowrule = float, ^(kitty)$ + +# Example windowrule v2 +# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ + +windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. diff --git a/hypr/.config/hypr/hyprlock.conf b/hypr/.config/hypr/hyprlock.conf new file mode 100644 index 0000000..363958f --- /dev/null +++ b/hypr/.config/hypr/hyprlock.conf @@ -0,0 +1,28 @@ +background { + monitor = + path = /home/lucxjo/Pictures/Wallpapers/nord-arch.png # supports png, jpg, webp (no animations, though) + color = rgba(25, 20, 20, 1.0) + + # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations + blur_passes = 0 # 0 disables blurring + blur_size = 7 + noise = 0.0117 + contrast = 0.8916 + brightness = 0.8172 + vibrancy = 0.1696 + vibrancy_darkness = 0.0 +} + +label { + monitor = + text = Hi there, $USER + text_align = center # center/right or any value for default left. multi-line text alignment inside label container + color = rgba(200, 200, 200, 1.0) + font_size = 25 + font_family = Noto Sans + rotate = 0 # degrees, counter-clockwise + + position = 0, 80 + halign = center + valign = center +} diff --git a/hypr/.config/hypr/hyprpaper.conf b/hypr/.config/hypr/hyprpaper.conf new file mode 100644 index 0000000..65bb3ed --- /dev/null +++ b/hypr/.config/hypr/hyprpaper.conf @@ -0,0 +1,3 @@ + +preload = $HOME/Pictures/Wallpapers/nord-arch.png +wallpaper = , $HOME/Pictures/Wallpapers/nord-arch.png diff --git a/hypr/.config/hypr/scripts/AirplaneMode.sh b/hypr/.config/hypr/scripts/AirplaneMode.sh new file mode 100755 index 0000000..1587a2b --- /dev/null +++ b/hypr/.config/hypr/scripts/AirplaneMode.sh @@ -0,0 +1,16 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Airplane Mode. Turning on or off all wifi using rfkill. + +notif="$HOME/.config/swaync/images/bell.png" + +# Check if any wireless device is blocked +wifi_blocked=$(rfkill list wifi | grep -o "Soft blocked: yes") + +if [ -n "$wifi_blocked" ]; then + rfkill unblock wifi + notify-send -u low -i "$notif" 'Airplane mode: OFF' +else + rfkill block wifi + notify-send -u low -i "$notif" 'Airplane mode: ON' +fi diff --git a/hypr/.config/hypr/scripts/Brightness.sh b/hypr/.config/hypr/scripts/Brightness.sh new file mode 100755 index 0000000..7d43f57 --- /dev/null +++ b/hypr/.config/hypr/scripts/Brightness.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Script for Monitor backlights (if supported) using brightnessctl + +iDIR="$HOME/.config/swaync/icons" +notification_timeout=1000 + +# Get brightness +get_backlight() { + echo $(brightnessctl -m | cut -d, -f4) +} + +# Get icons +get_icon() { + current=$(get_backlight | sed 's/%//') + if [ "$current" -le "20" ]; then + icon="$iDIR/brightness-20.png" + elif [ "$current" -le "40" ]; then + icon="$iDIR/brightness-40.png" + elif [ "$current" -le "60" ]; then + icon="$iDIR/brightness-60.png" + elif [ "$current" -le "80" ]; then + icon="$iDIR/brightness-80.png" + else + icon="$iDIR/brightness-100.png" + fi +} + +# Notify +notify_user() { + notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%" +} + +# Change brightness +change_backlight() { + brightnessctl set "$1" && get_icon && notify_user +} + +# Execute accordingly +case "$1" in + "--get") + get_backlight + ;; + "--inc") + change_backlight "+10%" + ;; + "--dec") + change_backlight "10%-" + ;; + *) + get_backlight + ;; +esac \ No newline at end of file diff --git a/hypr/.config/hypr/scripts/BrightnessKbd.sh b/hypr/.config/hypr/scripts/BrightnessKbd.sh new file mode 100755 index 0000000..92083e7 --- /dev/null +++ b/hypr/.config/hypr/scripts/BrightnessKbd.sh @@ -0,0 +1,51 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Script for keyboard backlights (if supported) using brightnessctl + +iDIR="$HOME/.config/swaync/icons" + +# Get keyboard brightness +get_kbd_backlight() { + echo $(brightnessctl -d '*::kbd_backlight' -m | cut -d, -f4) +} + +# Get icons +get_icon() { + current=$(get_kbd_backlight | sed 's/%//') + if [ "$current" -le "20" ]; then + icon="$iDIR/brightness-20.png" + elif [ "$current" -le "40" ]; then + icon="$iDIR/brightness-40.png" + elif [ "$current" -le "60" ]; then + icon="$iDIR/brightness-60.png" + elif [ "$current" -le "80" ]; then + icon="$iDIR/brightness-80.png" + else + icon="$iDIR/brightness-100.png" + fi +} +# Notify +notify_user() { + notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard Brightness : $current%" +} + +# Change brightness +change_kbd_backlight() { + brightnessctl -d *::kbd_backlight set "$1" && get_icon && notify_user +} + +# Execute accordingly +case "$1" in + "--get") + get_kbd_backlight + ;; + "--inc") + change_kbd_backlight "+30%" + ;; + "--dec") + change_kbd_backlight "30%-" + ;; + *) + get_kbd_backlight + ;; +esac diff --git a/hypr/.config/hypr/scripts/ChangeBlur.sh b/hypr/.config/hypr/scripts/ChangeBlur.sh new file mode 100755 index 0000000..321b8ec --- /dev/null +++ b/hypr/.config/hypr/scripts/ChangeBlur.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Script for changing blurs on the fly + +notif="$HOME/.config/swaync/images/bell.png" + +STATE=$(hyprctl -j getoption decoration:blur:passes | jq ".int") + +if [ "${STATE}" == "2" ]; then + hyprctl keyword decoration:blur:size 2 + hyprctl keyword decoration:blur:passes 1 + notify-send -e -u low -i "$notif" "Less blur" +else + hyprctl keyword decoration:blur:size 5 + hyprctl keyword decoration:blur:passes 2 + notify-send -e -u low -i "$notif" "Normal blur" +fi diff --git a/hypr/.config/hypr/scripts/ChangeLayout.sh b/hypr/.config/hypr/scripts/ChangeLayout.sh new file mode 100755 index 0000000..75823ba --- /dev/null +++ b/hypr/.config/hypr/scripts/ChangeLayout.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# for changing Hyprland Layouts (Master or Dwindle) on the fly + +notif="$HOME/.config/swaync/images/bell.png" + +LAYOUT=$(hyprctl -j getoption general:layout | jq '.str' | sed 's/"//g') + +case $LAYOUT in +"master") + hyprctl keyword general:layout dwindle + hyprctl keyword unbind SUPER,J + hyprctl keyword unbind SUPER,K + hyprctl keyword bind SUPER,J,cyclenext + hyprctl keyword bind SUPER,K,cyclenext,prev + hyprctl keyword bind SUPER,O,togglesplit + notify-send -e -u low -i "$notif" "Dwindle Layout" + ;; +"dwindle") + hyprctl keyword general:layout master + hyprctl keyword unbind SUPER,J + hyprctl keyword unbind SUPER,K + hyprctl keyword unbind SUPER,O + hyprctl keyword bind SUPER,J,layoutmsg,cyclenext + hyprctl keyword bind SUPER,K,layoutmsg,cycleprev + notify-send -e -u low -i "$notif" "Master Layout" + ;; +*) ;; + +esac diff --git a/hypr/.config/hypr/scripts/ClipManager.sh b/hypr/.config/hypr/scripts/ClipManager.sh new file mode 100755 index 0000000..ddce299 --- /dev/null +++ b/hypr/.config/hypr/scripts/ClipManager.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Clipboard Manager. This script uses cliphist, rofi, and wl-copy. + +# Actions: +# CTRL Del to delete an entry +# ALT Del to wipe clipboard contents + +while true; do + result=$( + rofi -i -dmenu \ + -kb-custom-1 "Control-Delete" \ + -kb-custom-2 "Alt-Delete" \ + -config ~/.config/rofi/config-clipboard.rasi < <(cliphist list) + ) + + case "$?" in + 1) + exit + ;; + 0) + case "$result" in + "") + continue + ;; + *) + cliphist decode <<<"$result" | wl-copy + exit + ;; + esac + ;; + 10) + cliphist delete <<<"$result" + ;; + 11) + cliphist wipe + ;; + esac +done + diff --git a/hypr/.config/hypr/scripts/DarkLight.sh b/hypr/.config/hypr/scripts/DarkLight.sh new file mode 100755 index 0000000..e6f212f --- /dev/null +++ b/hypr/.config/hypr/scripts/DarkLight.sh @@ -0,0 +1,226 @@ +#!/bin/bash +## /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# For Dark and Light switching +# Note: Scripts are looking for keywords Light or Dark except for wallpapers as the are in a separate folders + +# Paths +wallpaper_base_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers" +dark_wallpapers="$wallpaper_base_path/Dark" +light_wallpapers="$wallpaper_base_path/Light" +hypr_config_path="$HOME/.config/hypr" +swaync_style="$HOME/.config/swaync/style.css" +ags_style="$HOME/.config/ags/user/style.css" +SCRIPTSDIR="$HOME/.config/hypr/scripts" +notif="$HOME/.config/swaync/images/bell.png" +wallust_rofi="$HOME/.config/wallust/templates/colors-rofi.rasi" + +wallust_config="$HOME/.config/wallust/wallust.toml" +pallete_dark="dark16" +pallete_light="light16" + +# kill swaybg if running +pkill swaybg + +# Initialize swww if needed +swww query || swww-daemon + +# Set swww options +swww="swww img" +effect="--transition-bezier .43,1.19,1,.4 --transition-fps 60 --transition-type grow --transition-pos 0.925,0.977 --transition-duration 2" + +# Determine current theme mode +if [ "$(cat $HOME/.cache/.theme_mode)" = "Light" ]; then + next_mode="Dark" + # Logic for Dark mode + wallpaper_path="$dark_wallpapers" +else + next_mode="Light" + # Logic for Light mode + wallpaper_path="$light_wallpapers" +fi + +# Function to update theme mode for the next cycle +update_theme_mode() { + echo "$next_mode" > ~/.cache/.theme_mode +} + +# Function to notify user +notify_user() { + notify-send -u low -i "$notif" "Switching to $1 mode" +} + +# Use sed to replace the palette setting in the wallust config file +if [ "$next_mode" = "Dark" ]; then + sed -i 's/^palette = .*/palette = "'"$pallete_dark"'"/' "$wallust_config" +else + sed -i 's/^palette = .*/palette = "'"$pallete_light"'"/' "$wallust_config" +fi + +# Function to set Waybar style +set_waybar_style() { + theme="$1" + waybar_styles="$HOME/.config/waybar/style" + waybar_style_link="$HOME/.config/waybar/style.css" + style_prefix="\\[${theme}\\].*\\.css$" + + style_file=$(find "$waybar_styles" -maxdepth 1 -type f -regex ".*$style_prefix" | shuf -n 1) + + if [ -n "$style_file" ]; then + ln -sf "$style_file" "$waybar_style_link" + else + echo "Style file not found for $theme theme." + fi +} + +# Call the function after determining the mode +set_waybar_style "$next_mode" +notify_user "$next_mode" + + +# swaync color change +if [ "$next_mode" = "Dark" ]; then + sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.8);/' "${swaync_style}" + sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${swaync_style}" +else + sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.9);/' "${swaync_style}" + sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${swaync_style}" +fi + +# ags color change +if [ "$next_mode" = "Dark" ]; then + sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.4);/' "${ags_style}" + sed -i '/@define-color text-color/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.7);/' "${ags_style}" + sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${ags_style}" +else + sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.4);/' "${ags_style}" + sed -i '/@define-color text-color/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.7);/' "${ags_style}" + sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${ags_style}" +fi + +# Set Dynamic Wallpaper for Dark or Light Mode +if [ "$next_mode" = "Dark" ]; then + next_wallpaper="$(find "${dark_wallpapers}" -type f \( -iname "*.jpg" -o -iname "*.png" \) -print0 | shuf -n1 -z | xargs -0)" +else + next_wallpaper="$(find "${light_wallpapers}" -type f \( -iname "*.jpg" -o -iname "*.png" \) -print0 | shuf -n1 -z | xargs -0)" +fi + +# Update wallpaper using swww command +$swww "${next_wallpaper}" $effect + + +# Set Kvantum Manager theme & QT5/QT6 settings +if [ "$next_mode" = "Dark" ]; then + kvantum_theme="Catppuccin-Mocha" + qt5ct_color_scheme="$HOME/.config/qt5ct/colors/Catppuccin-Mocha.conf" + qt6ct_color_scheme="$HOME/.config/qt6ct/colors/Catppuccin-Mocha.conf" +else + kvantum_theme="Catppuccin-Latte" + qt5ct_color_scheme="$HOME/.config/qt5ct/colors/Catppuccin-Latte.conf" + qt6ct_color_scheme="$HOME/.config/qt6ct/colors/Catppuccin-Latte.conf" +fi + +sed -i "s|^color_scheme_path=.*$|color_scheme_path=$qt5ct_color_scheme|" "$HOME/.config/qt5ct/qt5ct.conf" +sed -i "s|^color_scheme_path=.*$|color_scheme_path=$qt6ct_color_scheme|" "$HOME/.config/qt6ct/qt6ct.conf" +kvantummanager --set "$kvantum_theme" + + +# set the rofi color for background +if [ "$next_mode" = "Dark" ]; then + sed -i '24s/.*/background: rgba(0,0,0,0.7);/' $wallust_rofi +else + sed -i '24s/.*/background: rgba(255,255,255,0.9);/' $wallust_rofi +fi + + +# GTK themes and icons switching +set_custom_gtk_theme() { + mode=$1 + gtk_themes_directory="$HOME/.themes" + icon_directory="$HOME/.icons" + color_setting="org.gnome.desktop.interface color-scheme" + theme_setting="org.gnome.desktop.interface gtk-theme" + icon_setting="org.gnome.desktop.interface icon-theme" + + if [ "$mode" == "Light" ]; then + search_keywords="*Light*" + gsettings set $color_setting 'prefer-light' + elif [ "$mode" == "Dark" ]; then + search_keywords="*Dark*" + gsettings set $color_setting 'prefer-dark' + else + echo "Invalid mode provided." + return 1 + fi + + themes=() + icons=() + + while IFS= read -r -d '' theme_search; do + themes+=("$(basename "$theme_search")") + done < <(find "$gtk_themes_directory" -maxdepth 1 -type d -iname "$search_keywords" -print0) + + while IFS= read -r -d '' icon_search; do + icons+=("$(basename "$icon_search")") + done < <(find "$icon_directory" -maxdepth 1 -type d -iname "$search_keywords" -print0) + + if [ ${#themes[@]} -gt 0 ]; then + if [ "$mode" == "Dark" ]; then + selected_theme=${themes[RANDOM % ${#themes[@]}]} + else + selected_theme=${themes[$RANDOM % ${#themes[@]}]} + fi + echo "Selected GTK theme for $mode mode: $selected_theme" + gsettings set $theme_setting "$selected_theme" + + # Flatpak GTK apps (themes) + if command -v flatpak &> /dev/null; then + flatpak --user override --filesystem=$HOME/.themes + sleep 0.5 + flatpak --user override --env=GTK_THEME="$selected_theme" + fi + else + echo "No $mode GTK theme found" + fi + + if [ ${#icons[@]} -gt 0 ]; then + if [ "$mode" == "Dark" ]; then + selected_icon=${icons[RANDOM % ${#icons[@]}]} + else + selected_icon=${icons[$RANDOM % ${#icons[@]}]} + fi + echo "Selected icon theme for $mode mode: $selected_icon" + gsettings set $icon_setting "$selected_icon" + + ## QT5ct icon_theme + sed -i "s|^icon_theme=.*$|icon_theme=$selected_icon|" "$HOME/.config/qt5ct/qt5ct.conf" + sed -i "s|^icon_theme=.*$|icon_theme=$selected_icon|" "$HOME/.config/qt6ct/qt6ct.conf" + + # Flatpak GTK apps (icons) + if command -v flatpak &> /dev/null; then + flatpak --user override --filesystem=$HOME/.icons + sleep 0.5 + flatpak --user override --env=ICON_THEME="$selected_icon" + fi + else + echo "No $mode icon theme found" + fi +} + +# Call the function to set GTK theme and icon theme based on mode +set_custom_gtk_theme "$next_mode" + +# Update theme mode for the next cycle +update_theme_mode + +sleep 0.5 +# Run remaining scripts +${SCRIPTSDIR}/WallustSwww.sh +sleep 1 +${SCRIPTSDIR}/Refresh.sh + +sleep 0.3 +# Display notifications for theme and icon changes +notify-send -u normal -i "$notif" "Themes in $next_mode Mode" + +exit 0 + diff --git a/hypr/.config/hypr/scripts/GameMode.sh b/hypr/.config/hypr/scripts/GameMode.sh new file mode 100755 index 0000000..5ad268c --- /dev/null +++ b/hypr/.config/hypr/scripts/GameMode.sh @@ -0,0 +1,31 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Game Mode. Turning off all animations + +notif="$HOME/.config/swaync/images/bell.png" +SCRIPTSDIR="$HOME/.config/hypr/scripts" + + +HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}') +if [ "$HYPRGAMEMODE" = 1 ] ; then + hyprctl --batch "\ + keyword animations:enabled 0;\ + keyword decoration:drop_shadow 0;\ + keyword decoration:blur:passes 0;\ + keyword general:gaps_in 0;\ + keyword general:gaps_out 0;\ + keyword general:border_size 1;\ + keyword decoration:rounding 0" + swww kill + notify-send -e -u low -i "$notif" "gamemode enabled. All animations off" + exit +else + swww-daemon && swww img "$HOME/.config/rofi/.current_wallpaper" & + sleep 0.1 + ${SCRIPTSDIR}/WallustSwww.sh + sleep 0.5 + ${SCRIPTSDIR}/Refresh.sh + notify-send -e -u normal -i "$notif" "gamemode disabled. All animations normal" + exit +fi +hyprctl reload diff --git a/hypr/.config/hypr/scripts/KeyHints.sh b/hypr/.config/hypr/scripts/KeyHints.sh new file mode 100755 index 0000000..55ed690 --- /dev/null +++ b/hypr/.config/hypr/scripts/KeyHints.sh @@ -0,0 +1,78 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Keyhints. Idea got from Garuda Hyprland + +# Detect monitor resolution and scale +x_mon=$(hyprctl -j monitors | jq '.[] | select(.focused==true) | .width') +y_mon=$(hyprctl -j monitors | jq '.[] | select(.focused==true) | .height') +hypr_scale=$(hyprctl -j monitors | jq '.[] | select (.focused == true) | .scale' | sed 's/\.//') + +# Calculate width and height based on percentages and monitor resolution +width=$((x_mon * hypr_scale / 100)) +height=$((y_mon * hypr_scale / 100)) + +# Set maximum width and height +max_width=1200 +max_height=1000 + +# Set percentage of screen size for dynamic adjustment +percentage_width=70 +percentage_height=70 + +# Calculate dynamic width and height +dynamic_width=$((width * percentage_width / 100)) +dynamic_height=$((height * percentage_height / 100)) + +# Limit width and height to maximum values +dynamic_width=$(($dynamic_width > $max_width ? $max_width : $dynamic_width)) +dynamic_height=$(($dynamic_height > $max_height ? $max_height : $dynamic_height)) + +# Launch yad with calculated width and height +yad --width=$dynamic_width --height=$dynamic_height \ + --center \ + --title="Keybindings" \ + --no-buttons \ + --list \ + --column=Key: \ + --column=Description: \ + --column=Command: \ + --timeout-indicator=bottom \ +"ESC" "close this app" "๏—" "๏…ผ=๏…บ" "SUPER KEY (Windows Key)" "(SUPER KEY)" \ +"๏…ผ enter" "Terminal" "(kitty)" \ +"๏…ผ SHIFT enter" "DropDown Terminal" "(kitty-pyprland)" \ +"๏…ผ A" "Desktop Overview" "(AGS Overview)" \ +"๏…ผ D" "App Launcher" "(rofi-wayland)" \ +"๏…ผ T" "Open File Manager" "(Thunar)" \ +"๏…ผ S" "Google Search" "(rofi)" \ +"๏…ผ Q" "close active window" "(not kill)" \ +"๏…ผ Shift Q " "closes a specified window" "(window)" \ +"๏…ผ Z" "Desktop Zoom" "(pyprland)" \ +"๏…ผ Alt V" "Clipboard Manager" "(cliphist)" \ +"๏…ผ W" "Choose wallpaper" "(Wallpaper Menu)" \ +"CTRL ALT W" "Random wallpaper" "(via swww)" \ +"๏…ผ B" "Hide/UnHide Waybar" "waybar" \ +"๏…ผ CTRL B" "Choose waybar styles" "(waybar styles)" \ +"๏…ผ ALT B" "Choose waybar layout" "(waybar layout)" \ +"๏…ผ ALT R" "Reload Waybar swaync Rofi" "CHECK NOTIFICATION FIRST!!!" \ +"๏…ผ SHIFT N" "Launch Notification Panel" "swaync Notification Center" \ +"๏…ผ Print" "screenshot" "(grim)" \ +"๏…ผ Shift Print" "screenshot region" "(grim + slurp)" \ +"๏…ผ Shift S" "screenshot region" "(swappy)" \ +"๏…ผ CTRL Print" "screenshot timer 5 secs " "(grim)" \ +"๏…ผ CTRL SHIFT Print" "screenshot timer 10 secs " "(grim)" \ +"ALT Print" "Screenshot active window" "active window only" \ +"CTRL ALT P" "power-menu" "(wlogout)" \ +"CTRL ALT L" "screen lock" "(hyprlock)" \ +"CTRL ALT Del" "Hyprland Exit" "(SAVE YOUR WORK!!!)" \ +"๏…ผ F" "Fullscreen" "Toggles to full screen" \ +"๏…ผ ALT L" "Toggle Dwindle | Master Layout" "Hyprland Layout" \ +"๏…ผ Shift F" "Toggle float" "single window" \ +"๏…ผ ALT F" "Toggle all windows to float" "all windows" \ +"๏…ผ Shift B" "Toggle Blur" "normal or less blur" \ +"๏…ผ SHIFT G" "Gamemode! All animations OFF or ON" "toggle" \ +"๏…ผ ALT E" "Rofi Emoticons" "Emoticon" \ +"๏…ผ ALT V" "Clipboard Manager" "cliphist" \ +"๏…ผ H" "Launch this app" "" \ +"๏…ผ E" "View or EDIT Keybinds, Settings, Monitor" "" \ +"" "" "" \ +"More tips:" "https://github.com/JaKooLit/Hyprland-Dots/wiki" ""\ diff --git a/hypr/.config/hypr/scripts/LockScreen.sh b/hypr/.config/hypr/scripts/LockScreen.sh new file mode 100755 index 0000000..ce2320a --- /dev/null +++ b/hypr/.config/hypr/scripts/LockScreen.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## + +# For Hyprlock +hyprlock -q --immediate \ No newline at end of file diff --git a/hypr/.config/hypr/scripts/MediaCtrl.sh b/hypr/.config/hypr/scripts/MediaCtrl.sh new file mode 100755 index 0000000..b3f9429 --- /dev/null +++ b/hypr/.config/hypr/scripts/MediaCtrl.sh @@ -0,0 +1,61 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Playerctl + +music_icon="$HOME/.config/swaync/icons/music.png" + +# Play the next track +play_next() { + playerctl next + show_music_notification +} + +# Play the previous track +play_previous() { + playerctl previous + show_music_notification +} + +# Toggle play/pause +toggle_play_pause() { + playerctl play-pause + show_music_notification +} + +# Stop playback +stop_playback() { + playerctl stop + notify-send -e -u low -i "$music_icon" "Playback Stopped" +} + +# Display notification with song information +show_music_notification() { + status=$(playerctl status) + if [[ "$status" == "Playing" ]]; then + song_title=$(playerctl metadata title) + song_artist=$(playerctl metadata artist) + notify-send -e -u low -i "$music_icon" "Now Playing:" "$song_title\nby $song_artist" + elif [[ "$status" == "Paused" ]]; then + notify-send -e -u low -i "$music_icon" "Playback Paused" + fi +} + +# Get media control action from command line argument +case "$1" in + "--nxt") + play_next + ;; + "--prv") + play_previous + ;; + "--pause") + toggle_play_pause + ;; + "--stop") + stop_playback + ;; + *) + echo "Usage: $0 [--nxt|--prv|--pause|--stop]" + exit 1 + ;; +esac diff --git a/hypr/.config/hypr/scripts/Polkit-NixOS.sh b/hypr/.config/hypr/scripts/Polkit-NixOS.sh new file mode 100755 index 0000000..51675ef --- /dev/null +++ b/hypr/.config/hypr/scripts/Polkit-NixOS.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# For NixOS starting of polkit-gnome. Dec 2023, the settings stated in NixOS wiki does not work so have to manual start it + +# Find all polkit-gnome executables in the Nix store +polkit_gnome_paths=$(find /nix/store -name 'polkit-gnome-authentication-agent-1' -type f 2>/dev/null) + +for polkit_gnome_path in $polkit_gnome_paths; do + # Extract the directory containing the executable + polkit_gnome_dir=$(dirname "$polkit_gnome_path") + + # Check if the executable is valid and exists + if [ -x "$polkit_gnome_dir/polkit-gnome-authentication-agent-1" ]; then + # Start the Polkit-GNOME Authentication Agent + "$polkit_gnome_dir/polkit-gnome-authentication-agent-1" & + exit 0 + fi +done + +# If no valid executable is found, report an error +echo "No valid Polkit-GNOME Authentication Agent executable found." \ No newline at end of file diff --git a/hypr/.config/hypr/scripts/Polkit.sh b/hypr/.config/hypr/scripts/Polkit.sh new file mode 100755 index 0000000..80310ba --- /dev/null +++ b/hypr/.config/hypr/scripts/Polkit.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# This is for polkits, it will start from top and will stop if the top is executed + +# Polkit possible paths files to check +polkit=( + "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" + "/usr/lib/polkit-kde-authentication-agent-1" + "/usr/lib/polkit-gnome-authentication-agent-1" + "/usr/libexec/polkit-gnome-authentication-agent-1" + "/usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1" + "/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1" +) + +executed=false # Flag to track if a file has been executed + +# Loop through the list of files +for file in "${polkit[@]}"; do + if [ -e "$file" ]; then + echo "File $file found, executing command..." + exec "$file" + executed=true + break + fi +done + +# If none of the files were found, you can add a fallback command here +if [ "$executed" == false ]; then + echo "None of the specified files were found. Install a Polkit" +fi diff --git a/hypr/.config/hypr/scripts/PortalHyprland.sh b/hypr/.config/hypr/scripts/PortalHyprland.sh new file mode 100755 index 0000000..59f2e1d --- /dev/null +++ b/hypr/.config/hypr/scripts/PortalHyprland.sh @@ -0,0 +1,16 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# For manually starting xdg-desktop-portal + +sleep 1 +killall xdg-desktop-portal-hyprland +killall xdg-desktop-portal-wlr +killall xdg-desktop-portal-gnome +killall xdg-desktop-portal +sleep 1 +/usr/lib/xdg-desktop-portal-hyprland & +/usr/libexec/xdg-desktop-portal-hyprland & +sleep 2 +/usr/lib/xdg-desktop-portal-hyprland & +/usr/libexec/xdg-desktop-portal & + diff --git a/hypr/.config/hypr/scripts/Refresh.sh b/hypr/.config/hypr/scripts/Refresh.sh new file mode 100755 index 0000000..42e7089 --- /dev/null +++ b/hypr/.config/hypr/scripts/Refresh.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Scripts for refreshing ags waybar, rofi, swaync, wallust + +SCRIPTSDIR=$HOME/.config/hypr/scripts +UserScripts=$HOME/.config/hypr/UserScripts + +# Define file_exists function +file_exists() { + if [ -e "$1" ]; then + return 0 # File exists + else + return 1 # File does not exist + fi +} + +# Kill already running processes +_ps=(waybar rofi swaync ags) +for _prs in "${_ps[@]}"; do + if pidof "${_prs}" >/dev/null; then + pkill "${_prs}" + fi +done + +# quit ags +ags -q + +sleep 0.3 +# Relaunch waybar +waybar & + +# relaunch swaync +sleep 0.5 +swaync > /dev/null 2>&1 & + +# relaunch ags +ags & + +# Relaunching rainbow borders if the script exists +sleep 1 +if file_exists "${UserScripts}/RainbowBorders.sh"; then + ${UserScripts}/RainbowBorders.sh & +fi + + +exit 0 \ No newline at end of file diff --git a/hypr/.config/hypr/scripts/RefreshNoWaybar.sh b/hypr/.config/hypr/scripts/RefreshNoWaybar.sh new file mode 100755 index 0000000..70a4aeb --- /dev/null +++ b/hypr/.config/hypr/scripts/RefreshNoWaybar.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## + +# Modified version of Refresh but no waybar refresh +# Used by automatic wallpaper change +# Modified inorder to refresh rofi background, Wallust, SwayNC + +SCRIPTSDIR=$HOME/.config/hypr/scripts +UserScripts=$HOME/.config/hypr/UserScripts + +# Define file_exists function +file_exists() { + if [ -e "$1" ]; then + return 0 # File exists + else + return 1 # File does not exist + fi +} + +# Kill already running processes +_ps=(rofi) +for _prs in "${_ps[@]}"; do + if pidof "${_prs}" >/dev/null; then + pkill "${_prs}" + fi +done + +# quit ags +ags -q + +# Wallust refresh +${SCRIPTSDIR}/WallustSwww.sh & + +# Relaunching rainbow borders if the script exists +sleep 1 +if file_exists "${UserScripts}/RainbowBorders.sh"; then + ${UserScripts}/RainbowBorders.sh & +fi + + +exit 0 \ No newline at end of file diff --git a/hypr/.config/hypr/scripts/RofiEmoji.sh b/hypr/.config/hypr/scripts/RofiEmoji.sh new file mode 100755 index 0000000..c92aec8 --- /dev/null +++ b/hypr/.config/hypr/scripts/RofiEmoji.sh @@ -0,0 +1,1860 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Rofi Emoticons. Not my own. Cant remember the source + +sed '1,/^# # DATA # #$/d' $0 | +rofi -i -dmenu -config ~/.config/rofi/config-emoji.rasi| +cut -d ' ' -f 1 | tr -d '\n' | wl-copy + +exit +# # DATA # # +๐Ÿ˜€ grinning face face smile happy joy :D grin +๐Ÿ˜ƒ grinning face with big eyes face happy joy haha :D :) smile funny +๐Ÿ˜„ grinning face with smiling eyes face happy joy funny haha laugh like :D :) smile +๐Ÿ˜ beaming face with smiling eyes face happy smile joy kawaii +๐Ÿ˜† grinning squinting face happy joy lol satisfied haha face glad XD laugh +๐Ÿ˜… grinning face with sweat face hot happy laugh sweat smile relief +๐Ÿคฃ rolling on the floor laughing face rolling floor laughing lol haha rofl +๐Ÿ˜‚ face with tears of joy face cry tears weep happy happytears haha +๐Ÿ™‚ slightly smiling face face smile +๐Ÿ™ƒ upside down face face flipped silly smile +๐Ÿ˜‰ winking face face happy mischievous secret ;) smile eye +๐Ÿ˜Š smiling face with smiling eyes face smile happy flushed crush embarrassed shy joy +๐Ÿ˜‡ smiling face with halo face angel heaven halo +๐Ÿฅฐ smiling face with hearts face love like affection valentines infatuation crush hearts adore +๐Ÿ˜ smiling face with heart eyes face love like affection valentines infatuation crush heart +๐Ÿคฉ star struck face smile starry eyes grinning +๐Ÿ˜˜ face blowing a kiss face love like affection valentines infatuation kiss +๐Ÿ˜— kissing face love like face 3 valentines infatuation kiss +โ˜บ๏ธ smiling face face blush massage happiness +๐Ÿ˜š kissing face with closed eyes face love like affection valentines infatuation kiss +๐Ÿ˜™ kissing face with smiling eyes face affection valentines infatuation kiss +๐Ÿ˜‹ face savoring food happy joy tongue smile face silly yummy nom delicious savouring +๐Ÿ˜› face with tongue face prank childish playful mischievous smile tongue +๐Ÿ˜œ winking face with tongue face prank childish playful mischievous smile wink tongue +๐Ÿคช zany face face goofy crazy +๐Ÿ˜ squinting face with tongue face prank playful mischievous smile tongue +๐Ÿค‘ money mouth face face rich dollar money +๐Ÿค— hugging face face smile hug +๐Ÿคญ face with hand over mouth face whoops shock surprise +๐Ÿคซ shushing face face quiet shhh +๐Ÿค” thinking face face hmmm think consider +๐Ÿค zipper mouth face face sealed zipper secret +๐Ÿคจ face with raised eyebrow face distrust scepticism disapproval disbelief surprise +๐Ÿ˜ neutral face indifference meh :| neutral +๐Ÿ˜‘ expressionless face face indifferent - - meh deadpan +๐Ÿ˜ถ face without mouth face hellokitty +๐Ÿ˜ smirking face face smile mean prank smug sarcasm +๐Ÿ˜’ unamused face indifference bored straight face serious sarcasm unimpressed skeptical dubious side eye +๐Ÿ™„ face with rolling eyes face eyeroll frustrated +๐Ÿ˜ฌ grimacing face face grimace teeth +๐Ÿคฅ lying face face lie pinocchio +๐Ÿ˜Œ relieved face face relaxed phew massage happiness +๐Ÿ˜” pensive face face sad depressed upset +๐Ÿ˜ช sleepy face face tired rest nap +๐Ÿคค drooling face face +๐Ÿ˜ด sleeping face face tired sleepy night zzz +๐Ÿ˜ท face with medical mask face sick ill disease +๐Ÿค’ face with thermometer sick temperature thermometer cold fever +๐Ÿค• face with head bandage injured clumsy bandage hurt +๐Ÿคข nauseated face face vomit gross green sick throw up ill +๐Ÿคฎ face vomiting face sick +๐Ÿคง sneezing face face gesundheit sneeze sick allergy +๐Ÿฅต hot face face feverish heat red sweating +๐Ÿฅถ cold face face blue freezing frozen frostbite icicles +๐Ÿฅด woozy face face dizzy intoxicated tipsy wavy +๐Ÿ˜ต dizzy face spent unconscious xox dizzy +๐Ÿคฏ exploding head face shocked mind blown +๐Ÿค  cowboy hat face face cowgirl hat +๐Ÿฅณ partying face face celebration woohoo +๐Ÿ˜Ž smiling face with sunglasses face cool smile summer beach sunglass +๐Ÿค“ nerd face face nerdy geek dork +๐Ÿง face with monocle face stuffy wealthy +๐Ÿ˜• confused face face indifference huh weird hmmm :/ +๐Ÿ˜Ÿ worried face face concern nervous :( +๐Ÿ™ slightly frowning face face frowning disappointed sad upset +โ˜น๏ธ frowning face face sad upset frown +๐Ÿ˜ฎ face with open mouth face surprise impressed wow whoa :O +๐Ÿ˜ฏ hushed face face woo shh +๐Ÿ˜ฒ astonished face face xox surprised poisoned +๐Ÿ˜ณ flushed face face blush shy flattered +๐Ÿฅบ pleading face face begging mercy +๐Ÿ˜ฆ frowning face with open mouth face aw what +๐Ÿ˜ง anguished face face stunned nervous +๐Ÿ˜จ fearful face face scared terrified nervous oops huh +๐Ÿ˜ฐ anxious face with sweat face nervous sweat +๐Ÿ˜ฅ sad but relieved face face phew sweat nervous +๐Ÿ˜ข crying face face tears sad depressed upset :'( +๐Ÿ˜ญ loudly crying face face cry tears sad upset depressed +๐Ÿ˜ฑ face screaming in fear face munch scared omg +๐Ÿ˜– confounded face face confused sick unwell oops :S +๐Ÿ˜ฃ persevering face face sick no upset oops +๐Ÿ˜ž disappointed face face sad upset depressed :( +๐Ÿ˜“ downcast face with sweat face hot sad tired exercise +๐Ÿ˜ฉ weary face face tired sleepy sad frustrated upset +๐Ÿ˜ซ tired face sick whine upset frustrated +๐Ÿฅฑ yawning face tired sleepy +๐Ÿ˜ค face with steam from nose face gas phew proud pride +๐Ÿ˜ก pouting face angry mad hate despise +๐Ÿ˜  angry face mad face annoyed frustrated +๐Ÿคฌ face with symbols on mouth face swearing cursing cussing profanity expletive +๐Ÿ˜ˆ smiling face with horns devil horns +๐Ÿ‘ฟ angry face with horns devil angry horns +๐Ÿ’€ skull dead skeleton creepy death +โ˜ ๏ธ skull and crossbones poison danger deadly scary death pirate evil +๐Ÿ’ฉ pile of poo hankey shitface fail turd shit +๐Ÿคก clown face face +๐Ÿ‘น ogre monster red mask halloween scary creepy devil demon japanese ogre +๐Ÿ‘บ goblin red evil mask monster scary creepy japanese goblin +๐Ÿ‘ป ghost halloween spooky scary +๐Ÿ‘ฝ alien UFO paul weird outer space +๐Ÿ‘พ alien monster game arcade play +๐Ÿค– robot computer machine bot +๐Ÿ˜บ grinning cat animal cats happy smile +๐Ÿ˜ธ grinning cat with smiling eyes animal cats smile +๐Ÿ˜น cat with tears of joy animal cats haha happy tears +๐Ÿ˜ป smiling cat with heart eyes animal love like affection cats valentines heart +๐Ÿ˜ผ cat with wry smile animal cats smirk +๐Ÿ˜ฝ kissing cat animal cats kiss +๐Ÿ™€ weary cat animal cats munch scared scream +๐Ÿ˜ฟ crying cat animal tears weep sad cats upset cry +๐Ÿ˜พ pouting cat animal cats +๐Ÿ™ˆ see no evil monkey monkey animal nature haha +๐Ÿ™‰ hear no evil monkey animal monkey nature +๐Ÿ™Š speak no evil monkey monkey animal nature omg +๐Ÿ’‹ kiss mark face lips love like affection valentines +๐Ÿ’Œ love letter email like affection envelope valentines +๐Ÿ’˜ heart with arrow love like heart affection valentines +๐Ÿ’ heart with ribbon love valentines +๐Ÿ’– sparkling heart love like affection valentines +๐Ÿ’— growing heart like love affection valentines pink +๐Ÿ’“ beating heart love like affection valentines pink heart +๐Ÿ’ž revolving hearts love like affection valentines +๐Ÿ’• two hearts love like affection valentines heart +๐Ÿ’Ÿ heart decoration purple-square love like +โฃ๏ธ heart exclamation decoration love +๐Ÿ’” broken heart sad sorry break heart heartbreak +โค๏ธ red heart love like valentines +๐Ÿงก orange heart love like affection valentines +๐Ÿ’› yellow heart love like affection valentines +๐Ÿ’š green heart love like affection valentines +๐Ÿ’™ blue heart love like affection valentines +๐Ÿ’œ purple heart love like affection valentines +๐ŸคŽ brown heart coffee +๐Ÿ–ค black heart evil +๐Ÿค white heart pure +๐Ÿ’ฏ hundred points score perfect numbers century exam quiz test pass hundred +๐Ÿ’ข anger symbol angry mad +๐Ÿ’ฅ collision bomb explode explosion collision blown +๐Ÿ’ซ dizzy star sparkle shoot magic +๐Ÿ’ฆ sweat droplets water drip oops +๐Ÿ’จ dashing away wind air fast shoo fart smoke puff +๐Ÿ•ณ๏ธ hole embarrassing +๐Ÿ’ฃ bomb boom explode explosion terrorism +๐Ÿ’ฌ speech balloon bubble words message talk chatting +๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ eye in speech bubble info +๐Ÿ—จ๏ธ left speech bubble words message talk chatting +๐Ÿ—ฏ๏ธ right anger bubble caption speech thinking mad +๐Ÿ’ญ thought balloon bubble cloud speech thinking dream +๐Ÿ’ค zzz sleepy tired dream +๐Ÿ‘‹ waving hand hands gesture goodbye solong farewell hello hi palm +๐Ÿคš raised back of hand fingers raised backhand +๐Ÿ–๏ธ hand with fingers splayed hand fingers palm +โœ‹ raised hand fingers stop highfive palm ban +๐Ÿ–– vulcan salute hand fingers spock star trek +๐Ÿ‘Œ ok hand fingers limbs perfect ok okay +๐Ÿค pinching hand tiny small size +โœŒ๏ธ victory hand fingers ohyeah hand peace victory two +๐Ÿคž crossed fingers good lucky +๐ŸคŸ love you gesture hand fingers gesture +๐Ÿค˜ sign of the horns hand fingers evil eye sign of horns rock on +๐Ÿค™ call me hand hands gesture shaka +๐Ÿ‘ˆ backhand index pointing left direction fingers hand left +๐Ÿ‘‰ backhand index pointing right fingers hand direction right +๐Ÿ‘† backhand index pointing up fingers hand direction up +๐Ÿ–• middle finger hand fingers rude middle flipping +๐Ÿ‘‡ backhand index pointing down fingers hand direction down +โ˜๏ธ index pointing up hand fingers direction up +๐Ÿ‘ thumbs up thumbsup yes awesome good agree accept cool hand like +1 +๐Ÿ‘Ž thumbs down thumbsdown no dislike hand -1 +โœŠ raised fist fingers hand grasp +๐Ÿ‘Š oncoming fist angry violence fist hit attack hand +๐Ÿค› left facing fist hand fistbump +๐Ÿคœ right facing fist hand fistbump +๐Ÿ‘ clapping hands hands praise applause congrats yay +๐Ÿ™Œ raising hands gesture hooray yea celebration hands +๐Ÿ‘ open hands fingers butterfly hands open +๐Ÿคฒ palms up together hands gesture cupped prayer +๐Ÿค handshake agreement shake +๐Ÿ™ folded hands please hope wish namaste highfive pray +โœ๏ธ writing hand lower left ballpoint pen stationery write compose +๐Ÿ’… nail polish beauty manicure finger fashion nail +๐Ÿคณ selfie camera phone +๐Ÿ’ช flexed biceps arm flex hand summer strong biceps +๐Ÿฆพ mechanical arm accessibility +๐Ÿฆฟ mechanical leg accessibility +๐Ÿฆต leg kick limb +๐Ÿฆถ foot kick stomp +๐Ÿ‘‚ ear face hear sound listen +๐Ÿฆป ear with hearing aid accessibility +๐Ÿ‘ƒ nose smell sniff +๐Ÿง  brain smart intelligent +๐Ÿฆท tooth teeth dentist +๐Ÿฆด bone skeleton +๐Ÿ‘€ eyes look watch stalk peek see +๐Ÿ‘๏ธ eye face look see watch stare +๐Ÿ‘… tongue mouth playful +๐Ÿ‘„ mouth mouth kiss +๐Ÿ‘ถ baby child boy girl toddler +๐Ÿง’ child gender-neutral young +๐Ÿ‘ฆ boy man male guy teenager +๐Ÿ‘ง girl female woman teenager +๐Ÿง‘ person gender-neutral person +๐Ÿ‘ฑ person blond hair hairstyle +๐Ÿ‘จ man mustache father dad guy classy sir moustache +๐Ÿง” man beard person bewhiskered +๐Ÿ‘จโ€๐Ÿฆฐ man red hair hairstyle +๐Ÿ‘จโ€๐Ÿฆฑ man curly hair hairstyle +๐Ÿ‘จโ€๐Ÿฆณ man white hair old elder +๐Ÿ‘จโ€๐Ÿฆฒ man bald hairless +๐Ÿ‘ฉ woman female girls lady +๐Ÿ‘ฉโ€๐Ÿฆฐ woman red hair hairstyle +๐Ÿง‘โ€๐Ÿฆฐ person red hair hairstyle +๐Ÿ‘ฉโ€๐Ÿฆฑ woman curly hair hairstyle +๐Ÿง‘โ€๐Ÿฆฑ person curly hair hairstyle +๐Ÿ‘ฉโ€๐Ÿฆณ woman white hair old elder +๐Ÿง‘โ€๐Ÿฆณ person white hair elder old +๐Ÿ‘ฉโ€๐Ÿฆฒ woman bald hairless +๐Ÿง‘โ€๐Ÿฆฒ person bald hairless +๐Ÿ‘ฑโ€โ™€๏ธ woman blond hair woman female girl blonde person +๐Ÿ‘ฑโ€โ™‚๏ธ man blond hair man male boy blonde guy person +๐Ÿง“ older person human elder senior gender-neutral +๐Ÿ‘ด old man human male men old elder senior +๐Ÿ‘ต old woman human female women lady old elder senior +๐Ÿ™ person frowning worried +๐Ÿ™โ€โ™‚๏ธ man frowning male boy man sad depressed discouraged unhappy +๐Ÿ™โ€โ™€๏ธ woman frowning female girl woman sad depressed discouraged unhappy +๐Ÿ™Ž person pouting upset +๐Ÿ™Žโ€โ™‚๏ธ man pouting male boy man +๐Ÿ™Žโ€โ™€๏ธ woman pouting female girl woman +๐Ÿ™… person gesturing no decline +๐Ÿ™…โ€โ™‚๏ธ man gesturing no male boy man nope +๐Ÿ™…โ€โ™€๏ธ woman gesturing no female girl woman nope +๐Ÿ™† person gesturing ok agree +๐Ÿ™†โ€โ™‚๏ธ man gesturing ok men boy male blue human man +๐Ÿ™†โ€โ™€๏ธ woman gesturing ok women girl female pink human woman +๐Ÿ’ person tipping hand information +๐Ÿ’โ€โ™‚๏ธ man tipping hand male boy man human information +๐Ÿ’โ€โ™€๏ธ woman tipping hand female girl woman human information +๐Ÿ™‹ person raising hand question +๐Ÿ™‹โ€โ™‚๏ธ man raising hand male boy man +๐Ÿ™‹โ€โ™€๏ธ woman raising hand female girl woman +๐Ÿง deaf person accessibility +๐Ÿงโ€โ™‚๏ธ deaf man accessibility +๐Ÿงโ€โ™€๏ธ deaf woman accessibility +๐Ÿ™‡ person bowing respectiful +๐Ÿ™‡โ€โ™‚๏ธ man bowing man male boy +๐Ÿ™‡โ€โ™€๏ธ woman bowing woman female girl +๐Ÿคฆ person facepalming disappointed +๐Ÿคฆโ€โ™‚๏ธ man facepalming man male boy disbelief +๐Ÿคฆโ€โ™€๏ธ woman facepalming woman female girl disbelief +๐Ÿคท person shrugging regardless +๐Ÿคทโ€โ™‚๏ธ man shrugging man male boy confused indifferent doubt +๐Ÿคทโ€โ™€๏ธ woman shrugging woman female girl confused indifferent doubt +๐Ÿง‘โ€โš•๏ธ health worker hospital +๐Ÿ‘จโ€โš•๏ธ man health worker doctor nurse therapist healthcare man human +๐Ÿ‘ฉโ€โš•๏ธ woman health worker doctor nurse therapist healthcare woman human +๐Ÿง‘โ€๐ŸŽ“ student learn +๐Ÿ‘จโ€๐ŸŽ“ man student graduate man human +๐Ÿ‘ฉโ€๐ŸŽ“ woman student graduate woman human +๐Ÿง‘โ€๐Ÿซ teacher professor +๐Ÿ‘จโ€๐Ÿซ man teacher instructor professor man human +๐Ÿ‘ฉโ€๐Ÿซ woman teacher instructor professor woman human +๐Ÿง‘โ€โš–๏ธ judge law +๐Ÿ‘จโ€โš–๏ธ man judge justice court man human +๐Ÿ‘ฉโ€โš–๏ธ woman judge justice court woman human +๐Ÿง‘โ€๐ŸŒพ farmer crops +๐Ÿ‘จโ€๐ŸŒพ man farmer rancher gardener man human +๐Ÿ‘ฉโ€๐ŸŒพ woman farmer rancher gardener woman human +๐Ÿง‘โ€๐Ÿณ cook food kitchen culinary +๐Ÿ‘จโ€๐Ÿณ man cook chef man human +๐Ÿ‘ฉโ€๐Ÿณ woman cook chef woman human +๐Ÿง‘โ€๐Ÿ”ง mechanic worker technician +๐Ÿ‘จโ€๐Ÿ”ง man mechanic plumber man human wrench +๐Ÿ‘ฉโ€๐Ÿ”ง woman mechanic plumber woman human wrench +๐Ÿง‘โ€๐Ÿญ factory worker labor +๐Ÿ‘จโ€๐Ÿญ man factory worker assembly industrial man human +๐Ÿ‘ฉโ€๐Ÿญ woman factory worker assembly industrial woman human +๐Ÿง‘โ€๐Ÿ’ผ office worker business +๐Ÿ‘จโ€๐Ÿ’ผ man office worker business manager man human +๐Ÿ‘ฉโ€๐Ÿ’ผ woman office worker business manager woman human +๐Ÿง‘โ€๐Ÿ”ฌ scientist chemistry +๐Ÿ‘จโ€๐Ÿ”ฌ man scientist biologist chemist engineer physicist man human +๐Ÿ‘ฉโ€๐Ÿ”ฌ woman scientist biologist chemist engineer physicist woman human +๐Ÿง‘โ€๐Ÿ’ป technologist computer +๐Ÿ‘จโ€๐Ÿ’ป man technologist coder developer engineer programmer software man human laptop computer +๐Ÿ‘ฉโ€๐Ÿ’ป woman technologist coder developer engineer programmer software woman human laptop computer +๐Ÿง‘โ€๐ŸŽค singer song artist performer +๐Ÿ‘จโ€๐ŸŽค man singer rockstar entertainer man human +๐Ÿ‘ฉโ€๐ŸŽค woman singer rockstar entertainer woman human +๐Ÿง‘โ€๐ŸŽจ artist painting draw creativity +๐Ÿ‘จโ€๐ŸŽจ man artist painter man human +๐Ÿ‘ฉโ€๐ŸŽจ woman artist painter woman human +๐Ÿง‘โ€โœˆ๏ธ pilot fly plane airplane +๐Ÿ‘จโ€โœˆ๏ธ man pilot aviator plane man human +๐Ÿ‘ฉโ€โœˆ๏ธ woman pilot aviator plane woman human +๐Ÿง‘โ€๐Ÿš€ astronaut outerspace +๐Ÿ‘จโ€๐Ÿš€ man astronaut space rocket man human +๐Ÿ‘ฉโ€๐Ÿš€ woman astronaut space rocket woman human +๐Ÿง‘โ€๐Ÿš’ firefighter fire +๐Ÿ‘จโ€๐Ÿš’ man firefighter fireman man human +๐Ÿ‘ฉโ€๐Ÿš’ woman firefighter fireman woman human +๐Ÿ‘ฎ police officer cop +๐Ÿ‘ฎโ€โ™‚๏ธ man police officer man police law legal enforcement arrest 911 +๐Ÿ‘ฎโ€โ™€๏ธ woman police officer woman police law legal enforcement arrest 911 female +๐Ÿ•ต๏ธ detective human spy detective +๐Ÿ•ต๏ธโ€โ™‚๏ธ man detective crime +๐Ÿ•ต๏ธโ€โ™€๏ธ woman detective human spy detective female woman +๐Ÿ’‚ guard protect +๐Ÿ’‚โ€โ™‚๏ธ man guard uk gb british male guy royal +๐Ÿ’‚โ€โ™€๏ธ woman guard uk gb british female royal woman +๐Ÿ‘ท construction worker labor build +๐Ÿ‘ทโ€โ™‚๏ธ man construction worker male human wip guy build construction worker labor +๐Ÿ‘ทโ€โ™€๏ธ woman construction worker female human wip build construction worker labor woman +๐Ÿคด prince boy man male crown royal king +๐Ÿ‘ธ princess girl woman female blond crown royal queen +๐Ÿ‘ณ person wearing turban headdress +๐Ÿ‘ณโ€โ™‚๏ธ man wearing turban male indian hinduism arabs +๐Ÿ‘ณโ€โ™€๏ธ woman wearing turban female indian hinduism arabs woman +๐Ÿ‘ฒ man with skullcap male boy chinese +๐Ÿง• woman with headscarf female hijab mantilla tichel +๐Ÿคต man in tuxedo couple marriage wedding groom +๐Ÿ‘ฐ bride with veil couple marriage wedding woman bride +๐Ÿคฐ pregnant woman baby +๐Ÿคฑ breast feeding nursing baby +๐Ÿ‘ผ baby angel heaven wings halo +๐ŸŽ… santa claus festival man male xmas father christmas +๐Ÿคถ mrs claus woman female xmas mother christmas +๐Ÿฆธ superhero marvel +๐Ÿฆธโ€โ™‚๏ธ man superhero man male good hero superpowers +๐Ÿฆธโ€โ™€๏ธ woman superhero woman female good heroine superpowers +๐Ÿฆน supervillain marvel +๐Ÿฆนโ€โ™‚๏ธ man supervillain man male evil bad criminal hero superpowers +๐Ÿฆนโ€โ™€๏ธ woman supervillain woman female evil bad criminal heroine superpowers +๐Ÿง™ mage magic +๐Ÿง™โ€โ™‚๏ธ man mage man male mage sorcerer +๐Ÿง™โ€โ™€๏ธ woman mage woman female mage witch +๐Ÿงš fairy wings magical +๐Ÿงšโ€โ™‚๏ธ man fairy man male +๐Ÿงšโ€โ™€๏ธ woman fairy woman female +๐Ÿง› vampire blood twilight +๐Ÿง›โ€โ™‚๏ธ man vampire man male dracula +๐Ÿง›โ€โ™€๏ธ woman vampire woman female +๐Ÿงœ merperson sea +๐Ÿงœโ€โ™‚๏ธ merman man male triton +๐Ÿงœโ€โ™€๏ธ mermaid woman female merwoman ariel +๐Ÿง elf magical +๐Ÿงโ€โ™‚๏ธ man elf man male +๐Ÿงโ€โ™€๏ธ woman elf woman female +๐Ÿงž genie magical wishes +๐Ÿงžโ€โ™‚๏ธ man genie man male +๐Ÿงžโ€โ™€๏ธ woman genie woman female +๐ŸงŸ zombie dead +๐ŸงŸโ€โ™‚๏ธ man zombie man male dracula undead walking dead +๐ŸงŸโ€โ™€๏ธ woman zombie woman female undead walking dead +๐Ÿ’† person getting massage relax +๐Ÿ’†โ€โ™‚๏ธ man getting massage male boy man head +๐Ÿ’†โ€โ™€๏ธ woman getting massage female girl woman head +๐Ÿ’‡ person getting haircut hairstyle +๐Ÿ’‡โ€โ™‚๏ธ man getting haircut male boy man +๐Ÿ’‡โ€โ™€๏ธ woman getting haircut female girl woman +๐Ÿšถ person walking move +๐Ÿšถโ€โ™‚๏ธ man walking human feet steps +๐Ÿšถโ€โ™€๏ธ woman walking human feet steps woman female +๐Ÿง person standing still +๐Ÿงโ€โ™‚๏ธ man standing still +๐Ÿงโ€โ™€๏ธ woman standing still +๐ŸงŽ person kneeling pray respectful +๐ŸงŽโ€โ™‚๏ธ man kneeling pray respectful +๐ŸงŽโ€โ™€๏ธ woman kneeling respectful pray +๐Ÿง‘โ€๐Ÿฆฏ person with probing cane blind +๐Ÿ‘จโ€๐Ÿฆฏ man with probing cane blind +๐Ÿ‘ฉโ€๐Ÿฆฏ woman with probing cane blind +๐Ÿง‘โ€๐Ÿฆผ person in motorized wheelchair disability accessibility +๐Ÿ‘จโ€๐Ÿฆผ man in motorized wheelchair disability accessibility +๐Ÿ‘ฉโ€๐Ÿฆผ woman in motorized wheelchair disability accessibility +๐Ÿง‘โ€๐Ÿฆฝ person in manual wheelchair disability accessibility +๐Ÿ‘จโ€๐Ÿฆฝ man in manual wheelchair disability accessibility +๐Ÿ‘ฉโ€๐Ÿฆฝ woman in manual wheelchair disability accessibility +๐Ÿƒ person running move +๐Ÿƒโ€โ™‚๏ธ man running man walking exercise race running +๐Ÿƒโ€โ™€๏ธ woman running woman walking exercise race running female +๐Ÿ’ƒ woman dancing female girl woman fun +๐Ÿ•บ man dancing male boy fun dancer +๐Ÿ•ด๏ธ man in suit levitating suit business levitate hover jump +๐Ÿ‘ฏ people with bunny ears perform costume +๐Ÿ‘ฏโ€โ™‚๏ธ men with bunny ears male bunny men boys +๐Ÿ‘ฏโ€โ™€๏ธ women with bunny ears female bunny women girls +๐Ÿง– person in steamy room relax spa +๐Ÿง–โ€โ™‚๏ธ man in steamy room male man spa steamroom sauna +๐Ÿง–โ€โ™€๏ธ woman in steamy room female woman spa steamroom sauna +๐Ÿง— person climbing sport +๐Ÿง—โ€โ™‚๏ธ man climbing sports hobby man male rock +๐Ÿง—โ€โ™€๏ธ woman climbing sports hobby woman female rock +๐Ÿคบ person fencing sports fencing sword +๐Ÿ‡ horse racing animal betting competition gambling luck +โ›ท๏ธ skier sports winter snow +๐Ÿ‚ snowboarder sports winter +๐ŸŒ๏ธ person golfing sports business +๐ŸŒ๏ธโ€โ™‚๏ธ man golfing sport +๐ŸŒ๏ธโ€โ™€๏ธ woman golfing sports business woman female +๐Ÿ„ person surfing sport sea +๐Ÿ„โ€โ™‚๏ธ man surfing sports ocean sea summer beach +๐Ÿ„โ€โ™€๏ธ woman surfing sports ocean sea summer beach woman female +๐Ÿšฃ person rowing boat sport move +๐Ÿšฃโ€โ™‚๏ธ man rowing boat sports hobby water ship +๐Ÿšฃโ€โ™€๏ธ woman rowing boat sports hobby water ship woman female +๐ŸŠ person swimming sport pool +๐ŸŠโ€โ™‚๏ธ man swimming sports exercise human athlete water summer +๐ŸŠโ€โ™€๏ธ woman swimming sports exercise human athlete water summer woman female +โ›น๏ธ person bouncing ball sports human +โ›น๏ธโ€โ™‚๏ธ man bouncing ball sport +โ›น๏ธโ€โ™€๏ธ woman bouncing ball sports human woman female +๐Ÿ‹๏ธ person lifting weights sports training exercise +๐Ÿ‹๏ธโ€โ™‚๏ธ man lifting weights sport +๐Ÿ‹๏ธโ€โ™€๏ธ woman lifting weights sports training exercise woman female +๐Ÿšด person biking sport move +๐Ÿšดโ€โ™‚๏ธ man biking sports bike exercise hipster +๐Ÿšดโ€โ™€๏ธ woman biking sports bike exercise hipster woman female +๐Ÿšต person mountain biking sport move +๐Ÿšตโ€โ™‚๏ธ man mountain biking transportation sports human race bike +๐Ÿšตโ€โ™€๏ธ woman mountain biking transportation sports human race bike woman female +๐Ÿคธ person cartwheeling sport gymnastic +๐Ÿคธโ€โ™‚๏ธ man cartwheeling gymnastics +๐Ÿคธโ€โ™€๏ธ woman cartwheeling gymnastics +๐Ÿคผ people wrestling sport +๐Ÿคผโ€โ™‚๏ธ men wrestling sports wrestlers +๐Ÿคผโ€โ™€๏ธ women wrestling sports wrestlers +๐Ÿคฝ person playing water polo sport +๐Ÿคฝโ€โ™‚๏ธ man playing water polo sports pool +๐Ÿคฝโ€โ™€๏ธ woman playing water polo sports pool +๐Ÿคพ person playing handball sport +๐Ÿคพโ€โ™‚๏ธ man playing handball sports +๐Ÿคพโ€โ™€๏ธ woman playing handball sports +๐Ÿคน person juggling performance balance +๐Ÿคนโ€โ™‚๏ธ man juggling juggle balance skill multitask +๐Ÿคนโ€โ™€๏ธ woman juggling juggle balance skill multitask +๐Ÿง˜ person in lotus position meditate +๐Ÿง˜โ€โ™‚๏ธ man in lotus position man male meditation yoga serenity zen mindfulness +๐Ÿง˜โ€โ™€๏ธ woman in lotus position woman female meditation yoga serenity zen mindfulness +๐Ÿ›€ person taking bath clean shower bathroom +๐Ÿ›Œ person in bed bed rest +๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ people holding hands friendship +๐Ÿ‘ญ women holding hands pair friendship couple love like female people human +๐Ÿ‘ซ woman and man holding hands pair people human love date dating like affection valentines marriage +๐Ÿ‘ฌ men holding hands pair couple love like bromance friendship people human +๐Ÿ’ kiss pair valentines love like dating marriage +๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ kiss woman man love +๐Ÿ‘จโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ kiss man man pair valentines love like dating marriage +๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ kiss woman woman pair valentines love like dating marriage +๐Ÿ’‘ couple with heart pair love like affection human dating valentines marriage +๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ couple with heart woman man love +๐Ÿ‘จโ€โค๏ธโ€๐Ÿ‘จ couple with heart man man pair love like affection human dating valentines marriage +๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ couple with heart woman woman pair love like affection human dating valentines marriage +๐Ÿ‘ช family home parents child mom dad father mother people human +๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ family man woman boy love +๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง family man woman girl home parents people human child +๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family man woman girl boy home parents people human children +๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family man woman boy boy home parents people human children +๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง family man woman girl girl home parents people human children +๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆ family man man boy home parents people human children +๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง family man man girl home parents people human children +๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family man man girl boy home parents people human children +๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family man man boy boy home parents people human children +๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง family man man girl girl home parents people human children +๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ family woman woman boy home parents people human children +๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง family woman woman girl home parents people human children +๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family woman woman girl boy home parents people human children +๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family woman woman boy boy home parents people human children +๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง family woman woman girl girl home parents people human children +๐Ÿ‘จโ€๐Ÿ‘ฆ family man boy home parent people human child +๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family man boy boy home parent people human children +๐Ÿ‘จโ€๐Ÿ‘ง family man girl home parent people human child +๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family man girl boy home parent people human children +๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง family man girl girl home parent people human children +๐Ÿ‘ฉโ€๐Ÿ‘ฆ family woman boy home parent people human child +๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ family woman boy boy home parent people human children +๐Ÿ‘ฉโ€๐Ÿ‘ง family woman girl home parent people human child +๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ family woman girl boy home parent people human children +๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง family woman girl girl home parent people human children +๐Ÿ—ฃ๏ธ speaking head user person human sing say talk +๐Ÿ‘ค bust in silhouette user person human +๐Ÿ‘ฅ busts in silhouette user person human group team +๐Ÿ‘ฃ footprints feet tracking walking beach +๐Ÿต monkey face animal nature circus +๐Ÿ’ monkey animal nature banana circus +๐Ÿฆ gorilla animal nature circus +๐Ÿฆง orangutan animal +๐Ÿถ dog face animal friend nature woof puppy pet faithful +๐Ÿ• dog animal nature friend doge pet faithful +๐Ÿฆฎ guide dog animal blind +๐Ÿ•โ€๐Ÿฆบ service dog blind animal +๐Ÿฉ poodle dog animal 101 nature pet +๐Ÿบ wolf animal nature wild +๐ŸฆŠ fox animal nature face +๐Ÿฆ raccoon animal nature +๐Ÿฑ cat face animal meow nature pet kitten +๐Ÿˆ cat animal meow pet cats +๐Ÿฆ lion animal nature +๐Ÿฏ tiger face animal cat danger wild nature roar +๐Ÿ… tiger animal nature roar +๐Ÿ† leopard animal nature +๐Ÿด horse face animal brown nature +๐ŸŽ horse animal gamble luck +๐Ÿฆ„ unicorn animal nature mystical +๐Ÿฆ“ zebra animal nature stripes safari +๐ŸฆŒ deer animal nature horns venison +๐Ÿฎ cow face beef ox animal nature moo milk +๐Ÿ‚ ox animal cow beef +๐Ÿƒ water buffalo animal nature ox cow +๐Ÿ„ cow beef ox animal nature moo milk +๐Ÿท pig face animal oink nature +๐Ÿ– pig animal nature +๐Ÿ— boar animal nature +๐Ÿฝ pig nose animal oink +๐Ÿ ram animal sheep nature +๐Ÿ‘ ewe animal nature wool shipit +๐Ÿ goat animal nature +๐Ÿช camel animal hot desert hump +๐Ÿซ two hump camel animal nature hot desert hump +๐Ÿฆ™ llama animal nature alpaca +๐Ÿฆ’ giraffe animal nature spots safari +๐Ÿ˜ elephant animal nature nose th circus +๐Ÿฆ rhinoceros animal nature horn +๐Ÿฆ› hippopotamus animal nature +๐Ÿญ mouse face animal nature cheese wedge rodent +๐Ÿ mouse animal nature rodent +๐Ÿ€ rat animal mouse rodent +๐Ÿน hamster animal nature +๐Ÿฐ rabbit face animal nature pet spring magic bunny +๐Ÿ‡ rabbit animal nature pet magic spring +๐Ÿฟ๏ธ chipmunk animal nature rodent squirrel +๐Ÿฆ” hedgehog animal nature spiny +๐Ÿฆ‡ bat animal nature blind vampire +๐Ÿป bear animal nature wild +๐Ÿจ koala animal nature +๐Ÿผ panda animal nature panda +๐Ÿฆฅ sloth animal +๐Ÿฆฆ otter animal +๐Ÿฆจ skunk animal +๐Ÿฆ˜ kangaroo animal nature australia joey hop marsupial +๐Ÿฆก badger animal nature honey +๐Ÿพ paw prints animal tracking footprints dog cat pet feet +๐Ÿฆƒ turkey animal bird +๐Ÿ” chicken animal cluck nature bird +๐Ÿ“ rooster animal nature chicken +๐Ÿฃ hatching chick animal chicken egg born baby bird +๐Ÿค baby chick animal chicken bird +๐Ÿฅ front facing baby chick animal chicken baby bird +๐Ÿฆ bird animal nature fly tweet spring +๐Ÿง penguin animal nature +๐Ÿ•Š๏ธ dove animal bird +๐Ÿฆ… eagle animal nature bird +๐Ÿฆ† duck animal nature bird mallard +๐Ÿฆข swan animal nature bird +๐Ÿฆ‰ owl animal nature bird hoot +๐Ÿฆฉ flamingo animal +๐Ÿฆš peacock animal nature peahen bird +๐Ÿฆœ parrot animal nature bird pirate talk +๐Ÿธ frog animal nature croak toad +๐ŸŠ crocodile animal nature reptile lizard alligator +๐Ÿข turtle animal slow nature tortoise +๐ŸฆŽ lizard animal nature reptile +๐Ÿ snake animal evil nature hiss python +๐Ÿฒ dragon face animal myth nature chinese green +๐Ÿ‰ dragon animal myth nature chinese green +๐Ÿฆ• sauropod animal nature dinosaur brachiosaurus brontosaurus diplodocus extinct +๐Ÿฆ– t rex animal nature dinosaur tyrannosaurus extinct +๐Ÿณ spouting whale animal nature sea ocean +๐Ÿ‹ whale animal nature sea ocean +๐Ÿฌ dolphin animal nature fish sea ocean flipper fins beach +๐ŸŸ fish animal food nature +๐Ÿ  tropical fish animal swim ocean beach nemo +๐Ÿก blowfish animal nature food sea ocean +๐Ÿฆˆ shark animal nature fish sea ocean jaws fins beach +๐Ÿ™ octopus animal creature ocean sea nature beach +๐Ÿš spiral shell nature sea beach +๐ŸŒ snail slow animal shell +๐Ÿฆ‹ butterfly animal insect nature caterpillar +๐Ÿ› bug animal insect nature worm +๐Ÿœ ant animal insect nature bug +๐Ÿ honeybee animal insect nature bug spring honey +๐Ÿž lady beetle animal insect nature ladybug +๐Ÿฆ— cricket animal cricket chirp +๐Ÿ•ท๏ธ spider animal arachnid +๐Ÿ•ธ๏ธ spider web animal insect arachnid silk +๐Ÿฆ‚ scorpion animal arachnid +๐ŸฆŸ mosquito animal nature insect malaria +๐Ÿฆ  microbe amoeba bacteria germs virus +๐Ÿ’ bouquet flowers nature spring +๐ŸŒธ cherry blossom nature plant spring flower +๐Ÿ’ฎ white flower japanese spring +๐Ÿต๏ธ rosette flower decoration military +๐ŸŒน rose flowers valentines love spring +๐Ÿฅ€ wilted flower plant nature flower +๐ŸŒบ hibiscus plant vegetable flowers beach +๐ŸŒป sunflower nature plant fall +๐ŸŒผ blossom nature flowers yellow +๐ŸŒท tulip flowers plant nature summer spring +๐ŸŒฑ seedling plant nature grass lawn spring +๐ŸŒฒ evergreen tree plant nature +๐ŸŒณ deciduous tree plant nature +๐ŸŒด palm tree plant vegetable nature summer beach mojito tropical +๐ŸŒต cactus vegetable plant nature +๐ŸŒพ sheaf of rice nature plant +๐ŸŒฟ herb vegetable plant medicine weed grass lawn +โ˜˜๏ธ shamrock vegetable plant nature irish clover +๐Ÿ€ four leaf clover vegetable plant nature lucky irish +๐Ÿ maple leaf nature plant vegetable ca fall +๐Ÿ‚ fallen leaf nature plant vegetable leaves +๐Ÿƒ leaf fluttering in wind nature plant tree vegetable grass lawn spring +๐Ÿ‡ grapes fruit food wine +๐Ÿˆ melon fruit nature food +๐Ÿ‰ watermelon fruit food picnic summer +๐ŸŠ tangerine food fruit nature orange +๐Ÿ‹ lemon fruit nature +๐ŸŒ banana fruit food monkey +๐Ÿ pineapple fruit nature food +๐Ÿฅญ mango fruit food tropical +๐ŸŽ red apple fruit mac school +๐Ÿ green apple fruit nature +๐Ÿ pear fruit nature food +๐Ÿ‘ peach fruit nature food +๐Ÿ’ cherries food fruit +๐Ÿ“ strawberry fruit food nature +๐Ÿฅ kiwi fruit fruit food +๐Ÿ… tomato fruit vegetable nature food +๐Ÿฅฅ coconut fruit nature food palm +๐Ÿฅ‘ avocado fruit food +๐Ÿ† eggplant vegetable nature food aubergine +๐Ÿฅ” potato food tuber vegatable starch +๐Ÿฅ• carrot vegetable food orange +๐ŸŒฝ ear of corn food vegetable plant +๐ŸŒถ๏ธ hot pepper food spicy chilli chili +๐Ÿฅ’ cucumber fruit food pickle +๐Ÿฅฌ leafy green food vegetable plant bok choy cabbage kale lettuce +๐Ÿฅฆ broccoli fruit food vegetable +๐Ÿง„ garlic food spice cook +๐Ÿง… onion cook food spice +๐Ÿ„ mushroom plant vegetable +๐Ÿฅœ peanuts food nut +๐ŸŒฐ chestnut food squirrel +๐Ÿž bread food wheat breakfast toast +๐Ÿฅ croissant food bread french +๐Ÿฅ– baguette bread food bread french +๐Ÿฅจ pretzel food bread twisted +๐Ÿฅฏ bagel food bread bakery schmear +๐Ÿฅž pancakes food breakfast flapjacks hotcakes +๐Ÿง‡ waffle food breakfast +๐Ÿง€ cheese wedge food chadder +๐Ÿ– meat on bone good food drumstick +๐Ÿ— poultry leg food meat drumstick bird chicken turkey +๐Ÿฅฉ cut of meat food cow meat cut chop lambchop porkchop +๐Ÿฅ“ bacon food breakfast pork pig meat +๐Ÿ” hamburger meat fast food beef cheeseburger mcdonalds burger king +๐ŸŸ french fries chips snack fast food +๐Ÿ• pizza food party +๐ŸŒญ hot dog food frankfurter +๐Ÿฅช sandwich food lunch bread +๐ŸŒฎ taco food mexican +๐ŸŒฏ burrito food mexican +๐Ÿฅ™ stuffed flatbread food flatbread stuffed gyro +๐Ÿง† falafel food +๐Ÿฅš egg food chicken breakfast +๐Ÿณ cooking food breakfast kitchen egg +๐Ÿฅ˜ shallow pan of food food cooking casserole paella +๐Ÿฒ pot of food food meat soup +๐Ÿฅฃ bowl with spoon food breakfast cereal oatmeal porridge +๐Ÿฅ— green salad food healthy lettuce +๐Ÿฟ popcorn food movie theater films snack +๐Ÿงˆ butter food cook +๐Ÿง‚ salt condiment shaker +๐Ÿฅซ canned food food soup +๐Ÿฑ bento box food japanese box +๐Ÿ˜ rice cracker food japanese +๐Ÿ™ rice ball food japanese +๐Ÿš cooked rice food china asian +๐Ÿ› curry rice food spicy hot indian +๐Ÿœ steaming bowl food japanese noodle chopsticks +๐Ÿ spaghetti food italian noodle +๐Ÿ  roasted sweet potato food nature +๐Ÿข oden food japanese +๐Ÿฃ sushi food fish japanese rice +๐Ÿค fried shrimp food animal appetizer summer +๐Ÿฅ fish cake with swirl food japan sea beach narutomaki pink swirl kamaboko surimi ramen +๐Ÿฅฎ moon cake food autumn +๐Ÿก dango food dessert sweet japanese barbecue meat +๐ŸฅŸ dumpling food empanada pierogi potsticker +๐Ÿฅ  fortune cookie food prophecy +๐Ÿฅก takeout box food leftovers +๐Ÿฆ€ crab animal crustacean +๐Ÿฆž lobster animal nature bisque claws seafood +๐Ÿฆ shrimp animal ocean nature seafood +๐Ÿฆ‘ squid animal nature ocean sea +๐Ÿฆช oyster food +๐Ÿฆ soft ice cream food hot dessert summer +๐Ÿง shaved ice hot dessert summer +๐Ÿจ ice cream food hot dessert +๐Ÿฉ doughnut food dessert snack sweet donut +๐Ÿช cookie food snack oreo chocolate sweet dessert +๐ŸŽ‚ birthday cake food dessert cake +๐Ÿฐ shortcake food dessert +๐Ÿง cupcake food dessert bakery sweet +๐Ÿฅง pie food dessert pastry +๐Ÿซ chocolate bar food snack dessert sweet +๐Ÿฌ candy snack dessert sweet lolly +๐Ÿญ lollipop food snack candy sweet +๐Ÿฎ custard dessert food +๐Ÿฏ honey pot bees sweet kitchen +๐Ÿผ baby bottle food container milk +๐Ÿฅ› glass of milk beverage drink cow +โ˜• hot beverage beverage caffeine latte espresso coffee +๐Ÿต teacup without handle drink bowl breakfast green british +๐Ÿถ sake wine drink drunk beverage japanese alcohol booze +๐Ÿพ bottle with popping cork drink wine bottle celebration +๐Ÿท wine glass drink beverage drunk alcohol booze +๐Ÿธ cocktail glass drink drunk alcohol beverage booze mojito +๐Ÿน tropical drink beverage cocktail summer beach alcohol booze mojito +๐Ÿบ beer mug relax beverage drink drunk party pub summer alcohol booze +๐Ÿป clinking beer mugs relax beverage drink drunk party pub summer alcohol booze +๐Ÿฅ‚ clinking glasses beverage drink party alcohol celebrate cheers wine champagne toast +๐Ÿฅƒ tumbler glass drink beverage drunk alcohol liquor booze bourbon scotch whisky glass shot +๐Ÿฅค cup with straw drink soda +๐Ÿงƒ beverage box drink +๐Ÿง‰ mate drink tea beverage +๐ŸงŠ ice water cold +๐Ÿฅข chopsticks food +๐Ÿฝ๏ธ fork and knife with plate food eat meal lunch dinner restaurant +๐Ÿด fork and knife cutlery kitchen +๐Ÿฅ„ spoon cutlery kitchen tableware +๐Ÿ”ช kitchen knife knife blade cutlery kitchen weapon +๐Ÿบ amphora vase jar +๐ŸŒ globe showing europe africa globe world international +๐ŸŒŽ globe showing americas globe world USA international +๐ŸŒ globe showing asia australia globe world east international +๐ŸŒ globe with meridians earth international world internet interweb i18n +๐Ÿ—บ๏ธ world map location direction +๐Ÿ—พ map of japan nation country japanese asia +๐Ÿงญ compass magnetic navigation orienteering +๐Ÿ”๏ธ snow capped mountain photo nature environment winter cold +โ›ฐ๏ธ mountain photo nature environment +๐ŸŒ‹ volcano photo nature disaster +๐Ÿ—ป mount fuji photo mountain nature japanese +๐Ÿ•๏ธ camping photo outdoors tent +๐Ÿ–๏ธ beach with umbrella weather summer sunny sand mojito +๐Ÿœ๏ธ desert photo warm saharah +๐Ÿ๏ธ desert island photo tropical mojito +๐Ÿž๏ธ national park photo environment nature +๐ŸŸ๏ธ stadium photo place sports concert venue +๐Ÿ›๏ธ classical building art culture history +๐Ÿ—๏ธ building construction wip working progress +๐Ÿงฑ brick bricks +๐Ÿ˜๏ธ houses buildings photo +๐Ÿš๏ธ derelict house abandon evict broken building +๐Ÿ  house building home +๐Ÿก house with garden home plant nature +๐Ÿข office building building bureau work +๐Ÿฃ japanese post office building envelope communication +๐Ÿค post office building email +๐Ÿฅ hospital building health surgery doctor +๐Ÿฆ bank building money sales cash business enterprise +๐Ÿจ hotel building accomodation checkin +๐Ÿฉ love hotel like affection dating +๐Ÿช convenience store building shopping groceries +๐Ÿซ school building student education learn teach +๐Ÿฌ department store building shopping mall +๐Ÿญ factory building industry pollution smoke +๐Ÿฏ japanese castle photo building +๐Ÿฐ castle building royalty history +๐Ÿ’’ wedding love like affection couple marriage bride groom +๐Ÿ—ผ tokyo tower photo japanese +๐Ÿ—ฝ statue of liberty american newyork +โ›ช church building religion christ +๐Ÿ•Œ mosque islam worship minaret +๐Ÿ›• hindu temple religion +๐Ÿ• synagogue judaism worship temple jewish +โ›ฉ๏ธ shinto shrine temple japan kyoto +๐Ÿ•‹ kaaba mecca mosque islam +โ›ฒ fountain photo summer water fresh +โ›บ tent photo camping outdoors +๐ŸŒ foggy photo mountain +๐ŸŒƒ night with stars evening city downtown +๐Ÿ™๏ธ cityscape photo night life urban +๐ŸŒ„ sunrise over mountains view vacation photo +๐ŸŒ… sunrise morning view vacation photo +๐ŸŒ† cityscape at dusk photo evening sky buildings +๐ŸŒ‡ sunset photo good morning dawn +๐ŸŒ‰ bridge at night photo sanfrancisco +โ™จ๏ธ hot springs bath warm relax +๐ŸŽ  carousel horse photo carnival +๐ŸŽก ferris wheel photo carnival londoneye +๐ŸŽข roller coaster carnival playground photo fun +๐Ÿ’ˆ barber pole hair salon style +๐ŸŽช circus tent festival carnival party +๐Ÿš‚ locomotive transportation vehicle train +๐Ÿšƒ railway car transportation vehicle +๐Ÿš„ high speed train transportation vehicle +๐Ÿš… bullet train transportation vehicle speed fast public travel +๐Ÿš† train transportation vehicle +๐Ÿš‡ metro transportation blue-square mrt underground tube +๐Ÿšˆ light rail transportation vehicle +๐Ÿš‰ station transportation vehicle public +๐ŸšŠ tram transportation vehicle +๐Ÿš monorail transportation vehicle +๐Ÿšž mountain railway transportation vehicle +๐Ÿš‹ tram car transportation vehicle carriage public travel +๐ŸšŒ bus car vehicle transportation +๐Ÿš oncoming bus vehicle transportation +๐ŸšŽ trolleybus bart transportation vehicle +๐Ÿš minibus vehicle car transportation +๐Ÿš‘ ambulance health 911 hospital +๐Ÿš’ fire engine transportation cars vehicle +๐Ÿš“ police car vehicle cars transportation law legal enforcement +๐Ÿš” oncoming police car vehicle law legal enforcement 911 +๐Ÿš• taxi uber vehicle cars transportation +๐Ÿš– oncoming taxi vehicle cars uber +๐Ÿš— automobile red transportation vehicle +๐Ÿš˜ oncoming automobile car vehicle transportation +๐Ÿš™ sport utility vehicle transportation vehicle +๐Ÿšš delivery truck cars transportation +๐Ÿš› articulated lorry vehicle cars transportation express +๐Ÿšœ tractor vehicle car farming agriculture +๐ŸŽ๏ธ racing car sports race fast formula f1 +๐Ÿ๏ธ motorcycle race sports fast +๐Ÿ›ต motor scooter vehicle vespa sasha +๐Ÿฆฝ manual wheelchair accessibility +๐Ÿฆผ motorized wheelchair accessibility +๐Ÿ›บ auto rickshaw move transportation +๐Ÿšฒ bicycle sports bicycle exercise hipster +๐Ÿ›ด kick scooter vehicle kick razor +๐Ÿ›น skateboard board +๐Ÿš bus stop transportation wait +๐Ÿ›ฃ๏ธ motorway road cupertino interstate highway +๐Ÿ›ค๏ธ railway track train transportation +๐Ÿ›ข๏ธ oil drum barrell +โ›ฝ fuel pump gas station petroleum +๐Ÿšจ police car light police ambulance 911 emergency alert error pinged law legal +๐Ÿšฅ horizontal traffic light transportation signal +๐Ÿšฆ vertical traffic light transportation driving +๐Ÿ›‘ stop sign stop +๐Ÿšง construction wip progress caution warning +โš“ anchor ship ferry sea boat +โ›ต sailboat ship summer transportation water sailing +๐Ÿ›ถ canoe boat paddle water ship +๐Ÿšค speedboat ship transportation vehicle summer +๐Ÿ›ณ๏ธ passenger ship yacht cruise ferry +โ›ด๏ธ ferry boat ship yacht +๐Ÿ›ฅ๏ธ motor boat ship +๐Ÿšข ship transportation titanic deploy +โœˆ๏ธ airplane vehicle transportation flight fly +๐Ÿ›ฉ๏ธ small airplane flight transportation fly vehicle +๐Ÿ›ซ airplane departure airport flight landing +๐Ÿ›ฌ airplane arrival airport flight boarding +๐Ÿช‚ parachute fly glide +๐Ÿ’บ seat sit airplane transport bus flight fly +๐Ÿš helicopter transportation vehicle fly +๐ŸšŸ suspension railway vehicle transportation +๐Ÿš  mountain cableway transportation vehicle ski +๐Ÿšก aerial tramway transportation vehicle ski +๐Ÿ›ฐ๏ธ satellite communication gps orbit spaceflight NASA ISS +๐Ÿš€ rocket launch ship staffmode NASA outer space outer space fly +๐Ÿ›ธ flying saucer transportation vehicle ufo +๐Ÿ›Ž๏ธ bellhop bell service +๐Ÿงณ luggage packing travel +โŒ› hourglass done time clock oldschool limit exam quiz test +โณ hourglass not done oldschool time countdown +โŒš watch time accessories +โฐ alarm clock time wake +โฑ๏ธ stopwatch time deadline +โฒ๏ธ timer clock alarm +๐Ÿ•ฐ๏ธ mantelpiece clock time +๐Ÿ•› twelve o clock time noon midnight midday late early schedule +๐Ÿ•ง twelve thirty time late early schedule +๐Ÿ• one o clock time late early schedule +๐Ÿ•œ one thirty time late early schedule +๐Ÿ•‘ two o clock time late early schedule +๐Ÿ• two thirty time late early schedule +๐Ÿ•’ three o clock time late early schedule +๐Ÿ•ž three thirty time late early schedule +๐Ÿ•“ four o clock time late early schedule +๐Ÿ•Ÿ four thirty time late early schedule +๐Ÿ•” five o clock time late early schedule +๐Ÿ•  five thirty time late early schedule +๐Ÿ•• six o clock time late early schedule dawn dusk +๐Ÿ•ก six thirty time late early schedule +๐Ÿ•– seven o clock time late early schedule +๐Ÿ•ข seven thirty time late early schedule +๐Ÿ•— eight o clock time late early schedule +๐Ÿ•ฃ eight thirty time late early schedule +๐Ÿ•˜ nine o clock time late early schedule +๐Ÿ•ค nine thirty time late early schedule +๐Ÿ•™ ten o clock time late early schedule +๐Ÿ•ฅ ten thirty time late early schedule +๐Ÿ•š eleven o clock time late early schedule +๐Ÿ•ฆ eleven thirty time late early schedule +๐ŸŒ‘ new moon nature twilight planet space night evening sleep +๐ŸŒ’ waxing crescent moon nature twilight planet space night evening sleep +๐ŸŒ“ first quarter moon nature twilight planet space night evening sleep +๐ŸŒ” waxing gibbous moon nature night sky gray twilight planet space evening sleep +๐ŸŒ• full moon nature yellow twilight planet space night evening sleep +๐ŸŒ– waning gibbous moon nature twilight planet space night evening sleep waxing gibbous moon +๐ŸŒ— last quarter moon nature twilight planet space night evening sleep +๐ŸŒ˜ waning crescent moon nature twilight planet space night evening sleep +๐ŸŒ™ crescent moon night sleep sky evening magic +๐ŸŒš new moon face nature twilight planet space night evening sleep +๐ŸŒ› first quarter moon face nature twilight planet space night evening sleep +๐ŸŒœ last quarter moon face nature twilight planet space night evening sleep +๐ŸŒก๏ธ thermometer weather temperature hot cold +โ˜€๏ธ sun weather nature brightness summer beach spring +๐ŸŒ full moon face nature twilight planet space night evening sleep +๐ŸŒž sun with face nature morning sky +๐Ÿช ringed planet outerspace +โญ star night yellow +๐ŸŒŸ glowing star night sparkle awesome good magic +๐ŸŒ  shooting star night photo +๐ŸŒŒ milky way photo space stars +โ˜๏ธ cloud weather sky +โ›… sun behind cloud weather nature cloudy morning fall spring +โ›ˆ๏ธ cloud with lightning and rain weather lightning +๐ŸŒค๏ธ sun behind small cloud weather +๐ŸŒฅ๏ธ sun behind large cloud weather +๐ŸŒฆ๏ธ sun behind rain cloud weather +๐ŸŒง๏ธ cloud with rain weather +๐ŸŒจ๏ธ cloud with snow weather +๐ŸŒฉ๏ธ cloud with lightning weather thunder +๐ŸŒช๏ธ tornado weather cyclone twister +๐ŸŒซ๏ธ fog weather +๐ŸŒฌ๏ธ wind face gust air +๐ŸŒ€ cyclone weather swirl blue cloud vortex spiral whirlpool spin tornado hurricane typhoon +๐ŸŒˆ rainbow nature happy unicorn face photo sky spring +๐ŸŒ‚ closed umbrella weather rain drizzle +โ˜‚๏ธ umbrella weather spring +โ˜” umbrella with rain drops rainy weather spring +โ›ฑ๏ธ umbrella on ground weather summer +โšก high voltage thunder weather lightning bolt fast +โ„๏ธ snowflake winter season cold weather christmas xmas +โ˜ƒ๏ธ snowman winter season cold weather christmas xmas frozen +โ›„ snowman without snow winter season cold weather christmas xmas frozen without snow +โ˜„๏ธ comet space +๐Ÿ”ฅ fire hot cook flame +๐Ÿ’ง droplet water drip faucet spring +๐ŸŒŠ water wave sea water wave nature tsunami disaster +๐ŸŽƒ jack o lantern halloween light pumpkin creepy fall +๐ŸŽ„ christmas tree festival vacation december xmas celebration +๐ŸŽ† fireworks photo festival carnival congratulations +๐ŸŽ‡ sparkler stars night shine +๐Ÿงจ firecracker dynamite boom explode explosion explosive +โœจ sparkles stars shine shiny cool awesome good magic +๐ŸŽˆ balloon party celebration birthday circus +๐ŸŽ‰ party popper party congratulations birthday magic circus celebration tada +๐ŸŽŠ confetti ball festival party birthday circus +๐ŸŽ‹ tanabata tree plant nature branch summer +๐ŸŽ pine decoration plant nature vegetable panda pine decoration +๐ŸŽŽ japanese dolls japanese toy kimono +๐ŸŽ carp streamer fish japanese koinobori carp banner +๐ŸŽ wind chime nature ding spring bell +๐ŸŽ‘ moon viewing ceremony photo japan asia tsukimi +๐Ÿงง red envelope gift +๐ŸŽ€ ribbon decoration pink girl bowtie +๐ŸŽ wrapped gift present birthday christmas xmas +๐ŸŽ—๏ธ reminder ribbon sports cause support awareness +๐ŸŽŸ๏ธ admission tickets sports concert entrance +๐ŸŽซ ticket event concert pass +๐ŸŽ–๏ธ military medal award winning army +๐Ÿ† trophy win award contest place ftw ceremony +๐Ÿ… sports medal award winning +๐Ÿฅ‡ 1st place medal award winning first +๐Ÿฅˆ 2nd place medal award second +๐Ÿฅ‰ 3rd place medal award third +โšฝ soccer ball sports football +โšพ baseball sports balls +๐ŸฅŽ softball sports balls +๐Ÿ€ basketball sports balls NBA +๐Ÿ volleyball sports balls +๐Ÿˆ american football sports balls NFL +๐Ÿ‰ rugby football sports team +๐ŸŽพ tennis sports balls green +๐Ÿฅ flying disc sports frisbee ultimate +๐ŸŽณ bowling sports fun play +๐Ÿ cricket game sports +๐Ÿ‘ field hockey sports +๐Ÿ’ ice hockey sports +๐Ÿฅ lacrosse sports ball stick +๐Ÿ“ ping pong sports pingpong +๐Ÿธ badminton sports +๐ŸฅŠ boxing glove sports fighting +๐Ÿฅ‹ martial arts uniform judo karate taekwondo +๐Ÿฅ… goal net sports +โ›ณ flag in hole sports business flag hole summer +โ›ธ๏ธ ice skate sports +๐ŸŽฃ fishing pole food hobby summer +๐Ÿคฟ diving mask sport ocean +๐ŸŽฝ running shirt play pageant +๐ŸŽฟ skis sports winter cold snow +๐Ÿ›ท sled sleigh luge toboggan +๐ŸฅŒ curling stone sports +๐ŸŽฏ direct hit game play bar target bullseye +๐Ÿช€ yo yo toy +๐Ÿช kite wind fly +๐ŸŽฑ pool 8 ball pool hobby game luck magic +๐Ÿ”ฎ crystal ball disco party magic circus fortune teller +๐Ÿงฟ nazar amulet bead charm +๐ŸŽฎ video game play console PS4 controller +๐Ÿ•น๏ธ joystick game play +๐ŸŽฐ slot machine bet gamble vegas fruit machine luck casino +๐ŸŽฒ game die dice random tabletop play luck +๐Ÿงฉ puzzle piece interlocking puzzle piece +๐Ÿงธ teddy bear plush stuffed +โ™ ๏ธ spade suit poker cards suits magic +โ™ฅ๏ธ heart suit poker cards magic suits +โ™ฆ๏ธ diamond suit poker cards magic suits +โ™ฃ๏ธ club suit poker cards magic suits +โ™Ÿ๏ธ chess pawn expendable +๐Ÿƒ joker poker cards game play magic +๐Ÿ€„ mahjong red dragon game play chinese kanji +๐ŸŽด flower playing cards game sunset red +๐ŸŽญ performing arts acting theater drama +๐Ÿ–ผ๏ธ framed picture photography +๐ŸŽจ artist palette design paint draw colors +๐Ÿงต thread needle sewing spool string +๐Ÿงถ yarn ball crochet knit +๐Ÿ‘“ glasses fashion accessories eyesight nerdy dork geek +๐Ÿ•ถ๏ธ sunglasses face cool accessories +๐Ÿฅฝ goggles eyes protection safety +๐Ÿฅผ lab coat doctor experiment scientist chemist +๐Ÿฆบ safety vest protection +๐Ÿ‘” necktie shirt suitup formal fashion cloth business +๐Ÿ‘• t shirt fashion cloth casual shirt tee +๐Ÿ‘– jeans fashion shopping +๐Ÿงฃ scarf neck winter clothes +๐Ÿงค gloves hands winter clothes +๐Ÿงฅ coat jacket +๐Ÿงฆ socks stockings clothes +๐Ÿ‘— dress clothes fashion shopping +๐Ÿ‘˜ kimono dress fashion women female japanese +๐Ÿฅป sari dress +๐Ÿฉฑ one piece swimsuit fashion +๐Ÿฉฒ briefs clothing +๐Ÿฉณ shorts clothing +๐Ÿ‘™ bikini swimming female woman girl fashion beach summer +๐Ÿ‘š woman s clothes fashion shopping bags female +๐Ÿ‘› purse fashion accessories money sales shopping +๐Ÿ‘œ handbag fashion accessory accessories shopping +๐Ÿ‘ clutch bag bag accessories shopping +๐Ÿ›๏ธ shopping bags mall buy purchase +๐ŸŽ’ backpack student education bag backpack +๐Ÿ‘ž man s shoe fashion male +๐Ÿ‘Ÿ running shoe shoes sports sneakers +๐Ÿฅพ hiking boot backpacking camping hiking +๐Ÿฅฟ flat shoe ballet slip-on slipper +๐Ÿ‘  high heeled shoe fashion shoes female pumps stiletto +๐Ÿ‘ก woman s sandal shoes fashion flip flops +๐Ÿฉฐ ballet shoes dance +๐Ÿ‘ข woman s boot shoes fashion +๐Ÿ‘‘ crown king kod leader royalty lord +๐Ÿ‘’ woman s hat fashion accessories female lady spring +๐ŸŽฉ top hat magic gentleman classy circus +๐ŸŽ“ graduation cap school college degree university graduation cap hat legal learn education +๐Ÿงข billed cap cap baseball +โ›‘๏ธ rescue worker s helmet construction build +๐Ÿ“ฟ prayer beads dhikr religious +๐Ÿ’„ lipstick female girl fashion woman +๐Ÿ’ ring wedding propose marriage valentines diamond fashion jewelry gem engagement +๐Ÿ’Ž gem stone blue ruby diamond jewelry +๐Ÿ”‡ muted speaker sound volume silence quiet +๐Ÿ”ˆ speaker low volume sound volume silence broadcast +๐Ÿ”‰ speaker medium volume volume speaker broadcast +๐Ÿ”Š speaker high volume volume noise noisy speaker broadcast +๐Ÿ“ข loudspeaker volume sound +๐Ÿ“ฃ megaphone sound speaker volume +๐Ÿ“ฏ postal horn instrument music +๐Ÿ”” bell sound notification christmas xmas chime +๐Ÿ”• bell with slash sound volume mute quiet silent +๐ŸŽผ musical score treble clef compose +๐ŸŽต musical note score tone sound +๐ŸŽถ musical notes music score +๐ŸŽ™๏ธ studio microphone sing recording artist talkshow +๐ŸŽš๏ธ level slider scale +๐ŸŽ›๏ธ control knobs dial +๐ŸŽค microphone sound music PA sing talkshow +๐ŸŽง headphone music score gadgets +๐Ÿ“ป radio communication music podcast program +๐ŸŽท saxophone music instrument jazz blues +๐ŸŽธ guitar music instrument +๐ŸŽน musical keyboard piano instrument compose +๐ŸŽบ trumpet music brass +๐ŸŽป violin music instrument orchestra symphony +๐Ÿช• banjo music instructment +๐Ÿฅ drum music instrument drumsticks snare +๐Ÿ“ฑ mobile phone technology apple gadgets dial +๐Ÿ“ฒ mobile phone with arrow iphone incoming +โ˜Ž๏ธ telephone technology communication dial telephone +๐Ÿ“ž telephone receiver technology communication dial +๐Ÿ“Ÿ pager bbcall oldschool 90s +๐Ÿ“  fax machine communication technology +๐Ÿ”‹ battery power energy sustain +๐Ÿ”Œ electric plug charger power +๐Ÿ’ป laptop technology laptop screen display monitor +๐Ÿ–ฅ๏ธ desktop computer technology computing screen +๐Ÿ–จ๏ธ printer paper ink +โŒจ๏ธ keyboard technology computer type input text +๐Ÿ–ฑ๏ธ computer mouse click +๐Ÿ–ฒ๏ธ trackball technology trackpad +๐Ÿ’ฝ computer disk technology record data disk 90s +๐Ÿ’พ floppy disk oldschool technology save 90s 80s +๐Ÿ’ฟ optical disk technology dvd disk disc 90s +๐Ÿ“€ dvd cd disk disc +๐Ÿงฎ abacus calculation +๐ŸŽฅ movie camera film record +๐ŸŽž๏ธ film frames movie +๐Ÿ“ฝ๏ธ film projector video tape record movie +๐ŸŽฌ clapper board movie film record +๐Ÿ“บ television technology program oldschool show television +๐Ÿ“ท camera gadgets photography +๐Ÿ“ธ camera with flash photography gadgets +๐Ÿ“น video camera film record +๐Ÿ“ผ videocassette record video oldschool 90s 80s +๐Ÿ” magnifying glass tilted left search zoom find detective +๐Ÿ”Ž magnifying glass tilted right search zoom find detective +๐Ÿ•ฏ๏ธ candle fire wax +๐Ÿ’ก light bulb light electricity idea +๐Ÿ”ฆ flashlight dark camping sight night +๐Ÿฎ red paper lantern light paper halloween spooky +๐Ÿช” diya lamp lighting +๐Ÿ“” notebook with decorative cover classroom notes record paper study +๐Ÿ“• closed book read library knowledge textbook learn +๐Ÿ“– open book book read library knowledge literature learn study +๐Ÿ“— green book read library knowledge study +๐Ÿ“˜ blue book read library knowledge learn study +๐Ÿ“™ orange book read library knowledge textbook study +๐Ÿ“š books literature library study +๐Ÿ““ notebook stationery record notes paper study +๐Ÿ“’ ledger notes paper +๐Ÿ“ƒ page with curl documents office paper +๐Ÿ“œ scroll documents ancient history paper +๐Ÿ“„ page facing up documents office paper information +๐Ÿ“ฐ newspaper press headline +๐Ÿ—ž๏ธ rolled up newspaper press headline +๐Ÿ“‘ bookmark tabs favorite save order tidy +๐Ÿ”– bookmark favorite label save +๐Ÿท๏ธ label sale tag +๐Ÿ’ฐ money bag dollar payment coins sale +๐Ÿ’ด yen banknote money sales japanese dollar currency +๐Ÿ’ต dollar banknote money sales bill currency +๐Ÿ’ถ euro banknote money sales dollar currency +๐Ÿ’ท pound banknote british sterling money sales bills uk england currency +๐Ÿ’ธ money with wings dollar bills payment sale +๐Ÿ’ณ credit card money sales dollar bill payment shopping +๐Ÿงพ receipt accounting expenses +๐Ÿ’น chart increasing with yen green-square graph presentation stats +๐Ÿ’ฑ currency exchange money sales dollar travel +๐Ÿ’ฒ heavy dollar sign money sales payment currency buck +โœ‰๏ธ envelope letter postal inbox communication +๐Ÿ“ง e mail communication inbox +๐Ÿ“จ incoming envelope email inbox +๐Ÿ“ฉ envelope with arrow email communication +๐Ÿ“ค outbox tray inbox email +๐Ÿ“ฅ inbox tray email documents +๐Ÿ“ฆ package mail gift cardboard box moving +๐Ÿ“ซ closed mailbox with raised flag email inbox communication +๐Ÿ“ช closed mailbox with lowered flag email communication inbox +๐Ÿ“ฌ open mailbox with raised flag email inbox communication +๐Ÿ“ญ open mailbox with lowered flag email inbox +๐Ÿ“ฎ postbox email letter envelope +๐Ÿ—ณ๏ธ ballot box with ballot election vote +โœ๏ธ pencil stationery write paper writing school study +โœ’๏ธ black nib pen stationery writing write +๐Ÿ–‹๏ธ fountain pen stationery writing write +๐Ÿ–Š๏ธ pen stationery writing write +๐Ÿ–Œ๏ธ paintbrush drawing creativity art +๐Ÿ–๏ธ crayon drawing creativity +๐Ÿ“ memo write documents stationery pencil paper writing legal exam quiz test study compose +๐Ÿ’ผ briefcase business documents work law legal job career +๐Ÿ“ file folder documents business office +๐Ÿ“‚ open file folder documents load +๐Ÿ—‚๏ธ card index dividers organizing business stationery +๐Ÿ“… calendar calendar schedule +๐Ÿ“† tear off calendar schedule date planning +๐Ÿ—’๏ธ spiral notepad memo stationery +๐Ÿ—“๏ธ spiral calendar date schedule planning +๐Ÿ“‡ card index business stationery +๐Ÿ“ˆ chart increasing graph presentation stats recovery business economics money sales good success +๐Ÿ“‰ chart decreasing graph presentation stats recession business economics money sales bad failure +๐Ÿ“Š bar chart graph presentation stats +๐Ÿ“‹ clipboard stationery documents +๐Ÿ“Œ pushpin stationery mark here +๐Ÿ“ round pushpin stationery location map here +๐Ÿ“Ž paperclip documents stationery +๐Ÿ–‡๏ธ linked paperclips documents stationery +๐Ÿ“ straight ruler stationery calculate length math school drawing architect sketch +๐Ÿ“ triangular ruler stationery math architect sketch +โœ‚๏ธ scissors stationery cut +๐Ÿ—ƒ๏ธ card file box business stationery +๐Ÿ—„๏ธ file cabinet filing organizing +๐Ÿ—‘๏ธ wastebasket bin trash rubbish garbage toss +๐Ÿ”’ locked security password padlock +๐Ÿ”“ unlocked privacy security +๐Ÿ” locked with pen security secret +๐Ÿ” locked with key security privacy +๐Ÿ”‘ key lock door password +๐Ÿ—๏ธ old key lock door password +๐Ÿ”จ hammer tools build create +๐Ÿช“ axe tool chop cut +โ›๏ธ pick tools dig +โš’๏ธ hammer and pick tools build create +๐Ÿ› ๏ธ hammer and wrench tools build create +๐Ÿ—ก๏ธ dagger weapon +โš”๏ธ crossed swords weapon +๐Ÿ”ซ pistol violence weapon pistol revolver +๐Ÿน bow and arrow sports +๐Ÿ›ก๏ธ shield protection security +๐Ÿ”ง wrench tools diy ikea fix maintainer +๐Ÿ”ฉ nut and bolt handy tools fix +โš™๏ธ gear cog +๐Ÿ—œ๏ธ clamp tool +โš–๏ธ balance scale law fairness weight +๐Ÿฆฏ probing cane accessibility +๐Ÿ”— link rings url +โ›“๏ธ chains lock arrest +๐Ÿงฐ toolbox tools diy fix maintainer mechanic +๐Ÿงฒ magnet attraction magnetic +โš—๏ธ alembic distilling science experiment chemistry +๐Ÿงช test tube chemistry experiment lab science +๐Ÿงซ petri dish bacteria biology culture lab +๐Ÿงฌ dna biologist genetics life +๐Ÿ”ฌ microscope laboratory experiment zoomin science study +๐Ÿ”ญ telescope stars space zoom science astronomy +๐Ÿ“ก satellite antenna communication future radio space +๐Ÿ’‰ syringe health hospital drugs blood medicine needle doctor nurse +๐Ÿฉธ drop of blood period hurt harm wound +๐Ÿ’Š pill health medicine doctor pharmacy drug +๐Ÿฉน adhesive bandage heal +๐Ÿฉบ stethoscope health +๐Ÿšช door house entry exit +๐Ÿ›๏ธ bed sleep rest +๐Ÿ›‹๏ธ couch and lamp read chill +๐Ÿช‘ chair sit furniture +๐Ÿšฝ toilet restroom wc washroom bathroom potty +๐Ÿšฟ shower clean water bathroom +๐Ÿ› bathtub clean shower bathroom +๐Ÿช’ razor cut +๐Ÿงด lotion bottle moisturizer sunscreen +๐Ÿงท safety pin diaper +๐Ÿงน broom cleaning sweeping witch +๐Ÿงบ basket laundry +๐Ÿงป roll of paper roll +๐Ÿงผ soap bar bathing cleaning lather +๐Ÿงฝ sponge absorbing cleaning porous +๐Ÿงฏ fire extinguisher quench +๐Ÿ›’ shopping cart trolley +๐Ÿšฌ cigarette kills tobacco cigarette joint smoke +โšฐ๏ธ coffin vampire dead die death rip graveyard cemetery casket funeral box +โšฑ๏ธ funeral urn dead die death rip ashes +๐Ÿ—ฟ moai rock easter island moai +๐Ÿง atm sign money sales cash blue-square payment bank +๐Ÿšฎ litter in bin sign blue-square sign human info +๐Ÿšฐ potable water blue-square liquid restroom cleaning faucet +โ™ฟ wheelchair symbol blue-square disabled accessibility +๐Ÿšน men s room toilet restroom wc blue-square gender male +๐Ÿšบ women s room purple-square woman female toilet loo restroom gender +๐Ÿšป restroom blue-square toilet refresh wc gender +๐Ÿšผ baby symbol orange-square child +๐Ÿšพ water closet toilet restroom blue-square +๐Ÿ›‚ passport control custom blue-square +๐Ÿ›ƒ customs passport border blue-square +๐Ÿ›„ baggage claim blue-square airport transport +๐Ÿ›… left luggage blue-square travel +โš ๏ธ warning exclamation wip alert error problem issue +๐Ÿšธ children crossing school warning danger sign driving yellow-diamond +โ›” no entry limit security privacy bad denied stop circle +๐Ÿšซ prohibited forbid stop limit denied disallow circle +๐Ÿšณ no bicycles cyclist prohibited circle +๐Ÿšญ no smoking cigarette blue-square smell smoke +๐Ÿšฏ no littering trash bin garbage circle +๐Ÿšฑ non potable water drink faucet tap circle +๐Ÿšท no pedestrians rules crossing walking circle +๐Ÿ“ต no mobile phones iphone mute circle +๐Ÿ”ž no one under eighteen 18 drink pub night minor circle +โ˜ข๏ธ radioactive nuclear danger +โ˜ฃ๏ธ biohazard danger +โฌ†๏ธ up arrow blue-square continue top direction +โ†—๏ธ up right arrow blue-square point direction diagonal northeast +โžก๏ธ right arrow blue-square next +โ†˜๏ธ down right arrow blue-square direction diagonal southeast +โฌ‡๏ธ down arrow blue-square direction bottom +โ†™๏ธ down left arrow blue-square direction diagonal southwest +โฌ…๏ธ left arrow blue-square previous back +โ†–๏ธ up left arrow blue-square point direction diagonal northwest +โ†•๏ธ up down arrow blue-square direction way vertical +โ†”๏ธ left right arrow shape direction horizontal sideways +โ†ฉ๏ธ right arrow curving left back return blue-square undo enter +โ†ช๏ธ left arrow curving right blue-square return rotate direction +โคด๏ธ right arrow curving up blue-square direction top +โคต๏ธ right arrow curving down blue-square direction bottom +๐Ÿ”ƒ clockwise vertical arrows sync cycle round repeat +๐Ÿ”„ counterclockwise arrows button blue-square sync cycle +๐Ÿ”™ back arrow arrow words return +๐Ÿ”š end arrow words arrow +๐Ÿ”› on arrow arrow words +๐Ÿ”œ soon arrow arrow words +๐Ÿ” top arrow words blue-square +๐Ÿ› place of worship religion church temple prayer +โš›๏ธ atom symbol science physics chemistry +๐Ÿ•‰๏ธ om hinduism buddhism sikhism jainism +โœก๏ธ star of david judaism +โ˜ธ๏ธ wheel of dharma hinduism buddhism sikhism jainism +โ˜ฏ๏ธ yin yang balance +โœ๏ธ latin cross christianity +โ˜ฆ๏ธ orthodox cross suppedaneum religion +โ˜ช๏ธ star and crescent islam +โ˜ฎ๏ธ peace symbol hippie +๐Ÿ•Ž menorah hanukkah candles jewish +๐Ÿ”ฏ dotted six pointed star purple-square religion jewish hexagram +โ™ˆ aries sign purple-square zodiac astrology +โ™‰ taurus purple-square sign zodiac astrology +โ™Š gemini sign zodiac purple-square astrology +โ™‹ cancer sign zodiac purple-square astrology +โ™Œ leo sign purple-square zodiac astrology +โ™ virgo sign zodiac purple-square astrology +โ™Ž libra sign purple-square zodiac astrology +โ™ scorpio sign zodiac purple-square astrology scorpio +โ™ sagittarius sign zodiac purple-square astrology +โ™‘ capricorn sign zodiac purple-square astrology +โ™’ aquarius sign purple-square zodiac astrology +โ™“ pisces purple-square sign zodiac astrology +โ›Ž ophiuchus sign purple-square constellation astrology +๐Ÿ”€ shuffle tracks button blue-square shuffle music random +๐Ÿ” repeat button loop record +๐Ÿ”‚ repeat single button blue-square loop +โ–ถ๏ธ play button blue-square right direction play +โฉ fast forward button blue-square play speed continue +โญ๏ธ next track button forward next blue-square +โฏ๏ธ play or pause button blue-square play pause +โ—€๏ธ reverse button blue-square left direction +โช fast reverse button play blue-square +โฎ๏ธ last track button backward +๐Ÿ”ผ upwards button blue-square triangle direction point forward top +โซ fast up button blue-square direction top +๐Ÿ”ฝ downwards button blue-square direction bottom +โฌ fast down button blue-square direction bottom +โธ๏ธ pause button pause blue-square +โน๏ธ stop button blue-square +โบ๏ธ record button blue-square +โ๏ธ eject button blue-square +๐ŸŽฆ cinema blue-square record film movie curtain stage theater +๐Ÿ”… dim button sun afternoon warm summer +๐Ÿ”† bright button sun light +๐Ÿ“ถ antenna bars blue-square reception phone internet connection wifi bluetooth bars +๐Ÿ“ณ vibration mode orange-square phone +๐Ÿ“ด mobile phone off mute orange-square silence quiet +โ™€๏ธ female sign woman women lady girl +โ™‚๏ธ male sign man boy men +โš•๏ธ medical symbol health hospital +โ™พ๏ธ infinity forever +โ™ป๏ธ recycling symbol arrow environment garbage trash +โšœ๏ธ fleur de lis decorative scout +๐Ÿ”ฑ trident emblem weapon spear +๐Ÿ“› name badge fire forbid +๐Ÿ”ฐ japanese symbol for beginner badge shield +โญ• hollow red circle circle round +โœ… check mark button green-square ok agree vote election answer tick +โ˜‘๏ธ check box with check ok agree confirm black-square vote election yes tick +โœ”๏ธ check mark ok nike answer yes tick +โœ–๏ธ multiplication sign math calculation +โŒ cross mark no delete remove cancel red +โŽ cross mark button x green-square no deny +โž• plus sign math calculation addition more increase +โž– minus sign math calculation subtract less +โž— division sign divide math calculation +โžฐ curly loop scribble draw shape squiggle +โžฟ double curly loop tape cassette +ใ€ฝ๏ธ part alternation mark graph presentation stats business economics bad +โœณ๏ธ eight spoked asterisk star sparkle green-square +โœด๏ธ eight pointed star orange-square shape polygon +โ‡๏ธ sparkle stars green-square awesome good fireworks +โ€ผ๏ธ double exclamation mark exclamation surprise +โ‰๏ธ exclamation question mark wat punctuation surprise +โ“ question mark doubt confused +โ” white question mark doubts gray huh confused +โ• white exclamation mark surprise punctuation gray wow warning +โ— exclamation mark heavy exclamation mark danger surprise punctuation wow warning +ใ€ฐ๏ธ wavy dash draw line moustache mustache squiggle scribble +ยฉ๏ธ copyright ip license circle law legal +ยฎ๏ธ registered alphabet circle +โ„ข๏ธ trade mark trademark brand law legal +#๏ธโƒฃ keycap symbol blue-square twitter +*๏ธโƒฃ keycap star keycap +0๏ธโƒฃ keycap 0 0 numbers blue-square null +1๏ธโƒฃ keycap 1 blue-square numbers 1 +2๏ธโƒฃ keycap 2 numbers 2 prime blue-square +3๏ธโƒฃ keycap 3 3 numbers prime blue-square +4๏ธโƒฃ keycap 4 4 numbers blue-square +5๏ธโƒฃ keycap 5 5 numbers blue-square prime +6๏ธโƒฃ keycap 6 6 numbers blue-square +7๏ธโƒฃ keycap 7 7 numbers blue-square prime +8๏ธโƒฃ keycap 8 8 blue-square numbers +9๏ธโƒฃ keycap 9 blue-square numbers 9 +๐Ÿ”Ÿ keycap 10 numbers 10 blue-square +๐Ÿ”  input latin uppercase alphabet words blue-square +๐Ÿ”ก input latin lowercase blue-square alphabet +๐Ÿ”ข input numbers numbers blue-square +๐Ÿ”ฃ input symbols blue-square music note ampersand percent glyphs characters +๐Ÿ”ค input latin letters blue-square alphabet +๐Ÿ…ฐ๏ธ a button red-square alphabet letter +๐Ÿ†Ž ab button red-square alphabet +๐Ÿ…ฑ๏ธ b button red-square alphabet letter +๐Ÿ†‘ cl button alphabet words red-square +๐Ÿ†’ cool button words blue-square +๐Ÿ†“ free button blue-square words +โ„น๏ธ information blue-square alphabet letter +๐Ÿ†” id button purple-square words +โ“‚๏ธ circled m alphabet blue-circle letter +๐Ÿ†• new button blue-square words start +๐Ÿ†– ng button blue-square words shape icon +๐Ÿ…พ๏ธ o button alphabet red-square letter +๐Ÿ†— ok button good agree yes blue-square +๐Ÿ…ฟ๏ธ p button cars blue-square alphabet letter +๐Ÿ†˜ sos button help red-square words emergency 911 +๐Ÿ†™ up button blue-square above high +๐Ÿ†š vs button words orange-square +๐Ÿˆ japanese here button blue-square here katakana japanese destination +๐Ÿˆ‚๏ธ japanese service charge button japanese blue-square katakana +๐Ÿˆท๏ธ japanese monthly amount button chinese month moon japanese orange-square kanji +๐Ÿˆถ japanese not free of charge button orange-square chinese have kanji +๐Ÿˆฏ japanese reserved button chinese point green-square kanji +๐Ÿ‰ japanese bargain button chinese kanji obtain get circle +๐Ÿˆน japanese discount button cut divide chinese kanji pink-square +๐Ÿˆš japanese free of charge button nothing chinese kanji japanese orange-square +๐Ÿˆฒ japanese prohibited button kanji japanese chinese forbidden limit restricted red-square +๐Ÿ‰‘ japanese acceptable button ok good chinese kanji agree yes orange-circle +๐Ÿˆธ japanese application button chinese japanese kanji orange-square +๐Ÿˆด japanese passing grade button japanese chinese join kanji red-square +๐Ÿˆณ japanese vacancy button kanji japanese chinese empty sky blue-square +ใŠ—๏ธ japanese congratulations button chinese kanji japanese red-circle +ใŠ™๏ธ japanese secret button privacy chinese sshh kanji red-circle +๐Ÿˆบ japanese open for business button japanese opening hours orange-square +๐Ÿˆต japanese no vacancy button full chinese japanese red-square kanji +๐Ÿ”ด red circle shape error danger +๐ŸŸ  orange circle round +๐ŸŸก yellow circle round +๐ŸŸข green circle round +๐Ÿ”ต blue circle shape icon button +๐ŸŸฃ purple circle round +๐ŸŸค brown circle round +โšซ black circle shape button round +โšช white circle shape round +๐ŸŸฅ red square +๐ŸŸง orange square +๐ŸŸจ yellow square +๐ŸŸฉ green square +๐ŸŸฆ blue square +๐ŸŸช purple square +๐ŸŸซ brown square +โฌ› black large square shape icon button +โฌœ white large square shape icon stone button +โ—ผ๏ธ black medium square shape button icon +โ—ป๏ธ white medium square shape stone icon +โ—พ black medium small square icon shape button +โ—ฝ white medium small square shape stone icon button +โ–ช๏ธ black small square shape icon +โ–ซ๏ธ white small square shape icon +๐Ÿ”ถ large orange diamond shape jewel gem +๐Ÿ”ท large blue diamond shape jewel gem +๐Ÿ”ธ small orange diamond shape jewel gem +๐Ÿ”น small blue diamond shape jewel gem +๐Ÿ”บ red triangle pointed up shape direction up top +๐Ÿ”ป red triangle pointed down shape direction bottom +๐Ÿ’  diamond with a dot jewel blue gem crystal fancy +๐Ÿ”˜ radio button input old music circle +๐Ÿ”ณ white square button shape input +๐Ÿ”ฒ black square button shape input frame +๐Ÿ chequered flag contest finishline race gokart +๐Ÿšฉ triangular flag mark milestone place +๐ŸŽŒ crossed flags japanese nation country border +๐Ÿด black flag pirate +๐Ÿณ๏ธ white flag losing loser lost surrender give up fail +๐Ÿณ๏ธโ€๐ŸŒˆ rainbow flag flag rainbow pride gay lgbt glbt queer homosexual lesbian bisexual transgender +๐Ÿดโ€โ˜ ๏ธ pirate flag skull crossbones flag banner +๐Ÿ‡ฆ๐Ÿ‡จ flag ascension island +๐Ÿ‡ฆ๐Ÿ‡ฉ flag andorra ad flag nation country banner andorra +๐Ÿ‡ฆ๐Ÿ‡ช flag united arab emirates united arab emirates flag nation country banner united arab emirates +๐Ÿ‡ฆ๐Ÿ‡ซ flag afghanistan af flag nation country banner afghanistan +๐Ÿ‡ฆ๐Ÿ‡ฌ flag antigua barbuda antigua barbuda flag nation country banner antigua barbuda +๐Ÿ‡ฆ๐Ÿ‡ฎ flag anguilla ai flag nation country banner anguilla +๐Ÿ‡ฆ๐Ÿ‡ฑ flag albania al flag nation country banner albania +๐Ÿ‡ฆ๐Ÿ‡ฒ flag armenia am flag nation country banner armenia +๐Ÿ‡ฆ๐Ÿ‡ด flag angola ao flag nation country banner angola +๐Ÿ‡ฆ๐Ÿ‡ถ flag antarctica aq flag nation country banner antarctica +๐Ÿ‡ฆ๐Ÿ‡ท flag argentina ar flag nation country banner argentina +๐Ÿ‡ฆ๐Ÿ‡ธ flag american samoa american ws flag nation country banner american samoa +๐Ÿ‡ฆ๐Ÿ‡น flag austria at flag nation country banner austria +๐Ÿ‡ฆ๐Ÿ‡บ flag australia au flag nation country banner australia +๐Ÿ‡ฆ๐Ÿ‡ผ flag aruba aw flag nation country banner aruba +๐Ÿ‡ฆ๐Ÿ‡ฝ flag aland islands ร…land islands flag nation country banner aland islands +๐Ÿ‡ฆ๐Ÿ‡ฟ flag azerbaijan az flag nation country banner azerbaijan +๐Ÿ‡ง๐Ÿ‡ฆ flag bosnia herzegovina bosnia herzegovina flag nation country banner bosnia herzegovina +๐Ÿ‡ง๐Ÿ‡ง flag barbados bb flag nation country banner barbados +๐Ÿ‡ง๐Ÿ‡ฉ flag bangladesh bd flag nation country banner bangladesh +๐Ÿ‡ง๐Ÿ‡ช flag belgium be flag nation country banner belgium +๐Ÿ‡ง๐Ÿ‡ซ flag burkina faso burkina faso flag nation country banner burkina faso +๐Ÿ‡ง๐Ÿ‡ฌ flag bulgaria bg flag nation country banner bulgaria +๐Ÿ‡ง๐Ÿ‡ญ flag bahrain bh flag nation country banner bahrain +๐Ÿ‡ง๐Ÿ‡ฎ flag burundi bi flag nation country banner burundi +๐Ÿ‡ง๐Ÿ‡ฏ flag benin bj flag nation country banner benin +๐Ÿ‡ง๐Ÿ‡ฑ flag st barthelemy saint barthรฉlemy flag nation country banner st barthelemy +๐Ÿ‡ง๐Ÿ‡ฒ flag bermuda bm flag nation country banner bermuda +๐Ÿ‡ง๐Ÿ‡ณ flag brunei bn darussalam flag nation country banner brunei +๐Ÿ‡ง๐Ÿ‡ด flag bolivia bo flag nation country banner bolivia +๐Ÿ‡ง๐Ÿ‡ถ flag caribbean netherlands bonaire flag nation country banner caribbean netherlands +๐Ÿ‡ง๐Ÿ‡ท flag brazil br flag nation country banner brazil +๐Ÿ‡ง๐Ÿ‡ธ flag bahamas bs flag nation country banner bahamas +๐Ÿ‡ง๐Ÿ‡น flag bhutan bt flag nation country banner bhutan +๐Ÿ‡ง๐Ÿ‡ป flag bouvet island norway +๐Ÿ‡ง๐Ÿ‡ผ flag botswana bw flag nation country banner botswana +๐Ÿ‡ง๐Ÿ‡พ flag belarus by flag nation country banner belarus +๐Ÿ‡ง๐Ÿ‡ฟ flag belize bz flag nation country banner belize +๐Ÿ‡จ๐Ÿ‡ฆ flag canada ca flag nation country banner canada +๐Ÿ‡จ๐Ÿ‡จ flag cocos islands cocos keeling islands flag nation country banner cocos islands +๐Ÿ‡จ๐Ÿ‡ฉ flag congo kinshasa congo democratic republic flag nation country banner congo kinshasa +๐Ÿ‡จ๐Ÿ‡ซ flag central african republic central african republic flag nation country banner central african republic +๐Ÿ‡จ๐Ÿ‡ฌ flag congo brazzaville congo flag nation country banner congo brazzaville +๐Ÿ‡จ๐Ÿ‡ญ flag switzerland ch flag nation country banner switzerland +๐Ÿ‡จ๐Ÿ‡ฎ flag cote d ivoire ivory coast flag nation country banner cote d ivoire +๐Ÿ‡จ๐Ÿ‡ฐ flag cook islands cook islands flag nation country banner cook islands +๐Ÿ‡จ๐Ÿ‡ฑ flag chile flag nation country banner chile +๐Ÿ‡จ๐Ÿ‡ฒ flag cameroon cm flag nation country banner cameroon +๐Ÿ‡จ๐Ÿ‡ณ flag china china chinese prc flag country nation banner china +๐Ÿ‡จ๐Ÿ‡ด flag colombia co flag nation country banner colombia +๐Ÿ‡จ๐Ÿ‡ต flag clipperton island +๐Ÿ‡จ๐Ÿ‡ท flag costa rica costa rica flag nation country banner costa rica +๐Ÿ‡จ๐Ÿ‡บ flag cuba cu flag nation country banner cuba +๐Ÿ‡จ๐Ÿ‡ป flag cape verde cabo verde flag nation country banner cape verde +๐Ÿ‡จ๐Ÿ‡ผ flag curacao curaรงao flag nation country banner curacao +๐Ÿ‡จ๐Ÿ‡ฝ flag christmas island christmas island flag nation country banner christmas island +๐Ÿ‡จ๐Ÿ‡พ flag cyprus cy flag nation country banner cyprus +๐Ÿ‡จ๐Ÿ‡ฟ flag czechia cz flag nation country banner czechia +๐Ÿ‡ฉ๐Ÿ‡ช flag germany german nation flag country banner germany +๐Ÿ‡ฉ๐Ÿ‡ฌ flag diego garcia +๐Ÿ‡ฉ๐Ÿ‡ฏ flag djibouti dj flag nation country banner djibouti +๐Ÿ‡ฉ๐Ÿ‡ฐ flag denmark dk flag nation country banner denmark +๐Ÿ‡ฉ๐Ÿ‡ฒ flag dominica dm flag nation country banner dominica +๐Ÿ‡ฉ๐Ÿ‡ด flag dominican republic dominican republic flag nation country banner dominican republic +๐Ÿ‡ฉ๐Ÿ‡ฟ flag algeria dz flag nation country banner algeria +๐Ÿ‡ช๐Ÿ‡ฆ flag ceuta melilla +๐Ÿ‡ช๐Ÿ‡จ flag ecuador ec flag nation country banner ecuador +๐Ÿ‡ช๐Ÿ‡ช flag estonia ee flag nation country banner estonia +๐Ÿ‡ช๐Ÿ‡ฌ flag egypt eg flag nation country banner egypt +๐Ÿ‡ช๐Ÿ‡ญ flag western sahara western sahara flag nation country banner western sahara +๐Ÿ‡ช๐Ÿ‡ท flag eritrea er flag nation country banner eritrea +๐Ÿ‡ช๐Ÿ‡ธ flag spain spain flag nation country banner spain +๐Ÿ‡ช๐Ÿ‡น flag ethiopia et flag nation country banner ethiopia +๐Ÿ‡ช๐Ÿ‡บ flag european union european union flag banner +๐Ÿ‡ซ๐Ÿ‡ฎ flag finland fi flag nation country banner finland +๐Ÿ‡ซ๐Ÿ‡ฏ flag fiji fj flag nation country banner fiji +๐Ÿ‡ซ๐Ÿ‡ฐ flag falkland islands falkland islands malvinas flag nation country banner falkland islands +๐Ÿ‡ซ๐Ÿ‡ฒ flag micronesia micronesia federated states flag nation country banner micronesia +๐Ÿ‡ซ๐Ÿ‡ด flag faroe islands faroe islands flag nation country banner faroe islands +๐Ÿ‡ซ๐Ÿ‡ท flag france banner flag nation france french country france +๐Ÿ‡ฌ๐Ÿ‡ฆ flag gabon ga flag nation country banner gabon +๐Ÿ‡ฌ๐Ÿ‡ง flag united kingdom united kingdom great britain northern ireland flag nation country banner british UK english england union jack united kingdom +๐Ÿ‡ฌ๐Ÿ‡ฉ flag grenada gd flag nation country banner grenada +๐Ÿ‡ฌ๐Ÿ‡ช flag georgia ge flag nation country banner georgia +๐Ÿ‡ฌ๐Ÿ‡ซ flag french guiana french guiana flag nation country banner french guiana +๐Ÿ‡ฌ๐Ÿ‡ฌ flag guernsey gg flag nation country banner guernsey +๐Ÿ‡ฌ๐Ÿ‡ญ flag ghana gh flag nation country banner ghana +๐Ÿ‡ฌ๐Ÿ‡ฎ flag gibraltar gi flag nation country banner gibraltar +๐Ÿ‡ฌ๐Ÿ‡ฑ flag greenland gl flag nation country banner greenland +๐Ÿ‡ฌ๐Ÿ‡ฒ flag gambia gm flag nation country banner gambia +๐Ÿ‡ฌ๐Ÿ‡ณ flag guinea gn flag nation country banner guinea +๐Ÿ‡ฌ๐Ÿ‡ต flag guadeloupe gp flag nation country banner guadeloupe +๐Ÿ‡ฌ๐Ÿ‡ถ flag equatorial guinea equatorial gn flag nation country banner equatorial guinea +๐Ÿ‡ฌ๐Ÿ‡ท flag greece gr flag nation country banner greece +๐Ÿ‡ฌ๐Ÿ‡ธ flag south georgia south sandwich islands south georgia sandwich islands flag nation country banner south georgia south sandwich islands +๐Ÿ‡ฌ๐Ÿ‡น flag guatemala gt flag nation country banner guatemala +๐Ÿ‡ฌ๐Ÿ‡บ flag guam gu flag nation country banner guam +๐Ÿ‡ฌ๐Ÿ‡ผ flag guinea bissau gw bissau flag nation country banner guinea bissau +๐Ÿ‡ฌ๐Ÿ‡พ flag guyana gy flag nation country banner guyana +๐Ÿ‡ญ๐Ÿ‡ฐ flag hong kong sar china hong kong flag nation country banner hong kong sar china +๐Ÿ‡ญ๐Ÿ‡ฒ flag heard mcdonald islands +๐Ÿ‡ญ๐Ÿ‡ณ flag honduras hn flag nation country banner honduras +๐Ÿ‡ญ๐Ÿ‡ท flag croatia hr flag nation country banner croatia +๐Ÿ‡ญ๐Ÿ‡น flag haiti ht flag nation country banner haiti +๐Ÿ‡ญ๐Ÿ‡บ flag hungary hu flag nation country banner hungary +๐Ÿ‡ฎ๐Ÿ‡จ flag canary islands canary islands flag nation country banner canary islands +๐Ÿ‡ฎ๐Ÿ‡ฉ flag indonesia flag nation country banner indonesia +๐Ÿ‡ฎ๐Ÿ‡ช flag ireland ie flag nation country banner ireland +๐Ÿ‡ฎ๐Ÿ‡ฑ flag israel il flag nation country banner israel +๐Ÿ‡ฎ๐Ÿ‡ฒ flag isle of man isle man flag nation country banner isle of man +๐Ÿ‡ฎ๐Ÿ‡ณ flag india in flag nation country banner india +๐Ÿ‡ฎ๐Ÿ‡ด flag british indian ocean territory british indian ocean territory flag nation country banner british indian ocean territory +๐Ÿ‡ฎ๐Ÿ‡ถ flag iraq iq flag nation country banner iraq +๐Ÿ‡ฎ๐Ÿ‡ท flag iran iran islamic republic flag nation country banner iran +๐Ÿ‡ฎ๐Ÿ‡ธ flag iceland is flag nation country banner iceland +๐Ÿ‡ฎ๐Ÿ‡น flag italy italy flag nation country banner italy +๐Ÿ‡ฏ๐Ÿ‡ช flag jersey je flag nation country banner jersey +๐Ÿ‡ฏ๐Ÿ‡ฒ flag jamaica jm flag nation country banner jamaica +๐Ÿ‡ฏ๐Ÿ‡ด flag jordan jo flag nation country banner jordan +๐Ÿ‡ฏ๐Ÿ‡ต flag japan japanese nation flag country banner japan +๐Ÿ‡ฐ๐Ÿ‡ช flag kenya ke flag nation country banner kenya +๐Ÿ‡ฐ๐Ÿ‡ฌ flag kyrgyzstan kg flag nation country banner kyrgyzstan +๐Ÿ‡ฐ๐Ÿ‡ญ flag cambodia kh flag nation country banner cambodia +๐Ÿ‡ฐ๐Ÿ‡ฎ flag kiribati ki flag nation country banner kiribati +๐Ÿ‡ฐ๐Ÿ‡ฒ flag comoros km flag nation country banner comoros +๐Ÿ‡ฐ๐Ÿ‡ณ flag st kitts nevis saint kitts nevis flag nation country banner st kitts nevis +๐Ÿ‡ฐ๐Ÿ‡ต flag north korea north korea nation flag country banner north korea +๐Ÿ‡ฐ๐Ÿ‡ท flag south korea south korea nation flag country banner south korea +๐Ÿ‡ฐ๐Ÿ‡ผ flag kuwait kw flag nation country banner kuwait +๐Ÿ‡ฐ๐Ÿ‡พ flag cayman islands cayman islands flag nation country banner cayman islands +๐Ÿ‡ฐ๐Ÿ‡ฟ flag kazakhstan kz flag nation country banner kazakhstan +๐Ÿ‡ฑ๐Ÿ‡ฆ flag laos lao democratic republic flag nation country banner laos +๐Ÿ‡ฑ๐Ÿ‡ง flag lebanon lb flag nation country banner lebanon +๐Ÿ‡ฑ๐Ÿ‡จ flag st lucia saint lucia flag nation country banner st lucia +๐Ÿ‡ฑ๐Ÿ‡ฎ flag liechtenstein li flag nation country banner liechtenstein +๐Ÿ‡ฑ๐Ÿ‡ฐ flag sri lanka sri lanka flag nation country banner sri lanka +๐Ÿ‡ฑ๐Ÿ‡ท flag liberia lr flag nation country banner liberia +๐Ÿ‡ฑ๐Ÿ‡ธ flag lesotho ls flag nation country banner lesotho +๐Ÿ‡ฑ๐Ÿ‡น flag lithuania lt flag nation country banner lithuania +๐Ÿ‡ฑ๐Ÿ‡บ flag luxembourg lu flag nation country banner luxembourg +๐Ÿ‡ฑ๐Ÿ‡ป flag latvia lv flag nation country banner latvia +๐Ÿ‡ฑ๐Ÿ‡พ flag libya ly flag nation country banner libya +๐Ÿ‡ฒ๐Ÿ‡ฆ flag morocco ma flag nation country banner morocco +๐Ÿ‡ฒ๐Ÿ‡จ flag monaco mc flag nation country banner monaco +๐Ÿ‡ฒ๐Ÿ‡ฉ flag moldova moldova republic flag nation country banner moldova +๐Ÿ‡ฒ๐Ÿ‡ช flag montenegro me flag nation country banner montenegro +๐Ÿ‡ฒ๐Ÿ‡ซ flag st martin +๐Ÿ‡ฒ๐Ÿ‡ฌ flag madagascar mg flag nation country banner madagascar +๐Ÿ‡ฒ๐Ÿ‡ญ flag marshall islands marshall islands flag nation country banner marshall islands +๐Ÿ‡ฒ๐Ÿ‡ฐ flag north macedonia macedonia flag nation country banner north macedonia +๐Ÿ‡ฒ๐Ÿ‡ฑ flag mali ml flag nation country banner mali +๐Ÿ‡ฒ๐Ÿ‡ฒ flag myanmar mm flag nation country banner myanmar +๐Ÿ‡ฒ๐Ÿ‡ณ flag mongolia mn flag nation country banner mongolia +๐Ÿ‡ฒ๐Ÿ‡ด flag macao sar china macao flag nation country banner macao sar china +๐Ÿ‡ฒ๐Ÿ‡ต flag northern mariana islands northern mariana islands flag nation country banner northern mariana islands +๐Ÿ‡ฒ๐Ÿ‡ถ flag martinique mq flag nation country banner martinique +๐Ÿ‡ฒ๐Ÿ‡ท flag mauritania mr flag nation country banner mauritania +๐Ÿ‡ฒ๐Ÿ‡ธ flag montserrat ms flag nation country banner montserrat +๐Ÿ‡ฒ๐Ÿ‡น flag malta mt flag nation country banner malta +๐Ÿ‡ฒ๐Ÿ‡บ flag mauritius mu flag nation country banner mauritius +๐Ÿ‡ฒ๐Ÿ‡ป flag maldives mv flag nation country banner maldives +๐Ÿ‡ฒ๐Ÿ‡ผ flag malawi mw flag nation country banner malawi +๐Ÿ‡ฒ๐Ÿ‡ฝ flag mexico mx flag nation country banner mexico +๐Ÿ‡ฒ๐Ÿ‡พ flag malaysia my flag nation country banner malaysia +๐Ÿ‡ฒ๐Ÿ‡ฟ flag mozambique mz flag nation country banner mozambique +๐Ÿ‡ณ๐Ÿ‡ฆ flag namibia na flag nation country banner namibia +๐Ÿ‡ณ๐Ÿ‡จ flag new caledonia new caledonia flag nation country banner new caledonia +๐Ÿ‡ณ๐Ÿ‡ช flag niger ne flag nation country banner niger +๐Ÿ‡ณ๐Ÿ‡ซ flag norfolk island norfolk island flag nation country banner norfolk island +๐Ÿ‡ณ๐Ÿ‡ฌ flag nigeria flag nation country banner nigeria +๐Ÿ‡ณ๐Ÿ‡ฎ flag nicaragua ni flag nation country banner nicaragua +๐Ÿ‡ณ๐Ÿ‡ฑ flag netherlands nl flag nation country banner netherlands +๐Ÿ‡ณ๐Ÿ‡ด flag norway no flag nation country banner norway +๐Ÿ‡ณ๐Ÿ‡ต flag nepal np flag nation country banner nepal +๐Ÿ‡ณ๐Ÿ‡ท flag nauru nr flag nation country banner nauru +๐Ÿ‡ณ๐Ÿ‡บ flag niue nu flag nation country banner niue +๐Ÿ‡ณ๐Ÿ‡ฟ flag new zealand new zealand flag nation country banner new zealand +๐Ÿ‡ด๐Ÿ‡ฒ flag oman om symbol flag nation country banner oman +๐Ÿ‡ต๐Ÿ‡ฆ flag panama pa flag nation country banner panama +๐Ÿ‡ต๐Ÿ‡ช flag peru pe flag nation country banner peru +๐Ÿ‡ต๐Ÿ‡ซ flag french polynesia french polynesia flag nation country banner french polynesia +๐Ÿ‡ต๐Ÿ‡ฌ flag papua new guinea papua new guinea flag nation country banner papua new guinea +๐Ÿ‡ต๐Ÿ‡ญ flag philippines ph flag nation country banner philippines +๐Ÿ‡ต๐Ÿ‡ฐ flag pakistan pk flag nation country banner pakistan +๐Ÿ‡ต๐Ÿ‡ฑ flag poland pl flag nation country banner poland +๐Ÿ‡ต๐Ÿ‡ฒ flag st pierre miquelon saint pierre miquelon flag nation country banner st pierre miquelon +๐Ÿ‡ต๐Ÿ‡ณ flag pitcairn islands pitcairn flag nation country banner pitcairn islands +๐Ÿ‡ต๐Ÿ‡ท flag puerto rico puerto rico flag nation country banner puerto rico +๐Ÿ‡ต๐Ÿ‡ธ flag palestinian territories palestine palestinian territories flag nation country banner palestinian territories +๐Ÿ‡ต๐Ÿ‡น flag portugal pt flag nation country banner portugal +๐Ÿ‡ต๐Ÿ‡ผ flag palau pw flag nation country banner palau +๐Ÿ‡ต๐Ÿ‡พ flag paraguay py flag nation country banner paraguay +๐Ÿ‡ถ๐Ÿ‡ฆ flag qatar qa flag nation country banner qatar +๐Ÿ‡ท๐Ÿ‡ช flag reunion rรฉunion flag nation country banner reunion +๐Ÿ‡ท๐Ÿ‡ด flag romania ro flag nation country banner romania +๐Ÿ‡ท๐Ÿ‡ธ flag serbia rs flag nation country banner serbia +๐Ÿ‡ท๐Ÿ‡บ flag russia russian federation flag nation country banner russia +๐Ÿ‡ท๐Ÿ‡ผ flag rwanda rw flag nation country banner rwanda +๐Ÿ‡ธ๐Ÿ‡ฆ flag saudi arabia flag nation country banner saudi arabia +๐Ÿ‡ธ๐Ÿ‡ง flag solomon islands solomon islands flag nation country banner solomon islands +๐Ÿ‡ธ๐Ÿ‡จ flag seychelles sc flag nation country banner seychelles +๐Ÿ‡ธ๐Ÿ‡ฉ flag sudan sd flag nation country banner sudan +๐Ÿ‡ธ๐Ÿ‡ช flag sweden se flag nation country banner sweden +๐Ÿ‡ธ๐Ÿ‡ฌ flag singapore sg flag nation country banner singapore +๐Ÿ‡ธ๐Ÿ‡ญ flag st helena saint helena ascension tristan cunha flag nation country banner st helena +๐Ÿ‡ธ๐Ÿ‡ฎ flag slovenia si flag nation country banner slovenia +๐Ÿ‡ธ๐Ÿ‡ฏ flag svalbard jan mayen +๐Ÿ‡ธ๐Ÿ‡ฐ flag slovakia sk flag nation country banner slovakia +๐Ÿ‡ธ๐Ÿ‡ฑ flag sierra leone sierra leone flag nation country banner sierra leone +๐Ÿ‡ธ๐Ÿ‡ฒ flag san marino san marino flag nation country banner san marino +๐Ÿ‡ธ๐Ÿ‡ณ flag senegal sn flag nation country banner senegal +๐Ÿ‡ธ๐Ÿ‡ด flag somalia so flag nation country banner somalia +๐Ÿ‡ธ๐Ÿ‡ท flag suriname sr flag nation country banner suriname +๐Ÿ‡ธ๐Ÿ‡ธ flag south sudan south sd flag nation country banner south sudan +๐Ÿ‡ธ๐Ÿ‡น flag sao tome principe sao tome principe flag nation country banner sao tome principe +๐Ÿ‡ธ๐Ÿ‡ป flag el salvador el salvador flag nation country banner el salvador +๐Ÿ‡ธ๐Ÿ‡ฝ flag sint maarten sint maarten dutch flag nation country banner sint maarten +๐Ÿ‡ธ๐Ÿ‡พ flag syria syrian arab republic flag nation country banner syria +๐Ÿ‡ธ๐Ÿ‡ฟ flag eswatini sz flag nation country banner eswatini +๐Ÿ‡น๐Ÿ‡ฆ flag tristan da cunha +๐Ÿ‡น๐Ÿ‡จ flag turks caicos islands turks caicos islands flag nation country banner turks caicos islands +๐Ÿ‡น๐Ÿ‡ฉ flag chad td flag nation country banner chad +๐Ÿ‡น๐Ÿ‡ซ flag french southern territories french southern territories flag nation country banner french southern territories +๐Ÿ‡น๐Ÿ‡ฌ flag togo tg flag nation country banner togo +๐Ÿ‡น๐Ÿ‡ญ flag thailand th flag nation country banner thailand +๐Ÿ‡น๐Ÿ‡ฏ flag tajikistan tj flag nation country banner tajikistan +๐Ÿ‡น๐Ÿ‡ฐ flag tokelau tk flag nation country banner tokelau +๐Ÿ‡น๐Ÿ‡ฑ flag timor leste timor leste flag nation country banner timor leste +๐Ÿ‡น๐Ÿ‡ฒ flag turkmenistan flag nation country banner turkmenistan +๐Ÿ‡น๐Ÿ‡ณ flag tunisia tn flag nation country banner tunisia +๐Ÿ‡น๐Ÿ‡ด flag tonga to flag nation country banner tonga +๐Ÿ‡น๐Ÿ‡ท flag turkey turkey flag nation country banner turkey +๐Ÿ‡น๐Ÿ‡น flag trinidad tobago trinidad tobago flag nation country banner trinidad tobago +๐Ÿ‡น๐Ÿ‡ป flag tuvalu flag nation country banner tuvalu +๐Ÿ‡น๐Ÿ‡ผ flag taiwan tw flag nation country banner taiwan +๐Ÿ‡น๐Ÿ‡ฟ flag tanzania tanzania united republic flag nation country banner tanzania +๐Ÿ‡บ๐Ÿ‡ฆ flag ukraine ua flag nation country banner ukraine +๐Ÿ‡บ๐Ÿ‡ฌ flag uganda ug flag nation country banner uganda +๐Ÿ‡บ๐Ÿ‡ฒ flag u s outlying islands +๐Ÿ‡บ๐Ÿ‡ณ flag united nations un flag banner +๐Ÿ‡บ๐Ÿ‡ธ flag united states united states america flag nation country banner united states +๐Ÿ‡บ๐Ÿ‡พ flag uruguay uy flag nation country banner uruguay +๐Ÿ‡บ๐Ÿ‡ฟ flag uzbekistan uz flag nation country banner uzbekistan +๐Ÿ‡ป๐Ÿ‡ฆ flag vatican city vatican city flag nation country banner vatican city +๐Ÿ‡ป๐Ÿ‡จ flag st vincent grenadines saint vincent grenadines flag nation country banner st vincent grenadines +๐Ÿ‡ป๐Ÿ‡ช flag venezuela ve bolivarian republic flag nation country banner venezuela +๐Ÿ‡ป๐Ÿ‡ฌ flag british virgin islands british virgin islands bvi flag nation country banner british virgin islands +๐Ÿ‡ป๐Ÿ‡ฎ flag u s virgin islands virgin islands us flag nation country banner u s virgin islands +๐Ÿ‡ป๐Ÿ‡ณ flag vietnam viet nam flag nation country banner vietnam +๐Ÿ‡ป๐Ÿ‡บ flag vanuatu vu flag nation country banner vanuatu +๐Ÿ‡ผ๐Ÿ‡ซ flag wallis futuna wallis futuna flag nation country banner wallis futuna +๐Ÿ‡ผ๐Ÿ‡ธ flag samoa ws flag nation country banner samoa +๐Ÿ‡ฝ๐Ÿ‡ฐ flag kosovo xk flag nation country banner kosovo +๐Ÿ‡พ๐Ÿ‡ช flag yemen ye flag nation country banner yemen +๐Ÿ‡พ๐Ÿ‡น flag mayotte yt flag nation country banner mayotte +๐Ÿ‡ฟ๐Ÿ‡ฆ flag south africa south africa flag nation country banner south africa +๐Ÿ‡ฟ๐Ÿ‡ฒ flag zambia zm flag nation country banner zambia +๐Ÿ‡ฟ๐Ÿ‡ผ flag zimbabwe zw flag nation country banner zimbabwe +๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ flag england flag english +๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ flag scotland flag scottish +๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ flag wales flag welsh +๐Ÿฅฒ smiling face with tear sad cry pretend +๐Ÿฅธ disguised face pretent brows glasses moustache +๐ŸคŒ pinched fingers size tiny small +๐Ÿซ€ anatomical heart health heartbeat +๐Ÿซ lungs breathe +๐Ÿฅท ninja ninjutsu skills japanese +๐Ÿคตโ€โ™‚๏ธ man in tuxedo formal fashion +๐Ÿคตโ€โ™€๏ธ woman in tuxedo formal fashion +๐Ÿ‘ฐโ€โ™‚๏ธ man with veil wedding marriage +๐Ÿ‘ฐโ€โ™€๏ธ woman with veil wedding marriage +๐Ÿ‘ฉโ€๐Ÿผ woman feeding baby birth food +๐Ÿ‘จโ€๐Ÿผ man feeding baby birth food +๐Ÿง‘โ€๐Ÿผ person feeding baby birth food +๐Ÿง‘โ€๐ŸŽ„ mx claus christmas +๐Ÿซ‚ people hugging care +๐Ÿˆโ€โฌ› black cat superstition luck +๐Ÿฆฌ bison ox +๐Ÿฆฃ mammoth elephant tusks +๐Ÿฆซ beaver animal rodent +๐Ÿปโ€โ„๏ธ polar bear animal arctic +๐Ÿฆค dodo animal bird +๐Ÿชถ feather bird fly +๐Ÿฆญ seal animal creature sea +๐Ÿชฒ beetle insect +๐Ÿชณ cockroach insect pests +๐Ÿชฐ fly insect +๐Ÿชฑ worm animal +๐Ÿชด potted plant greenery house +๐Ÿซ blueberries fruit +๐Ÿซ’ olive fruit +๐Ÿซ‘ bell pepper fruit plant +๐Ÿซ“ flatbread flour food +๐Ÿซ” tamale food masa +๐Ÿซ• fondue cheese pot food +๐Ÿซ– teapot drink hot +๐Ÿง‹ bubble tea taiwan boba milk tea straw +๐Ÿชจ rock stone +๐Ÿชต wood nature timber trunk +๐Ÿ›– hut house structure +๐Ÿ›ป pickup truck car transportation +๐Ÿ›ผ roller skate footwear sports +๐Ÿช„ magic wand supernature power +๐Ÿช… pinata mexico candy celebration +๐Ÿช† nesting dolls matryoshka toy +๐Ÿชก sewing needle stitches +๐Ÿชข knot rope scout +๐Ÿฉด thong sandal footwear summer +๐Ÿช– military helmet army protection +๐Ÿช— accordion music +๐Ÿช˜ long drum music +๐Ÿช™ coin money currency +๐Ÿชƒ boomerang weapon +๐Ÿชš carpentry saw cut chop +๐Ÿช› screwdriver tools +๐Ÿช hook tools +๐Ÿชœ ladder tools +๐Ÿ›— elevator lift +๐Ÿชž mirror reflection +๐ŸชŸ window scenery +๐Ÿช  plunger toilet +๐Ÿชค mouse trap cheese +๐Ÿชฃ bucket water container +๐Ÿชฅ toothbrush hygiene dental +๐Ÿชฆ headstone death rip grave +๐Ÿชง placard announcement +โšง๏ธ transgender symbol lgbtq +๐Ÿณ๏ธโ€โšง๏ธ transgender flag lgbtq +๐Ÿ˜ถโ€๐ŸŒซ๏ธ face in clouds shower steam dream +๐Ÿ˜ฎโ€๐Ÿ’จ face exhaling relieve relief tired sigh +๐Ÿ˜ตโ€๐Ÿ’ซ face with spiral eyes sick ill confused nauseous nausea +โค๏ธโ€๐Ÿ”ฅ heart on fire passionate enthusiastic +โค๏ธโ€๐Ÿฉน mending heart broken heart bandage wounded +๐Ÿง”โ€โ™‚๏ธ man beard facial hair +๐Ÿง”โ€โ™€๏ธ woman beard facial hair +๐Ÿซ  melting face hot heat +๐Ÿซข face with open eyes and hand over mouth silence secret shock surprise +๐Ÿซฃ face with peeking eye scared frightening embarrassing +๐Ÿซก saluting face respect salute +๐Ÿซฅ dotted line face invisible lonely isolation depression +๐Ÿซค face with diagonal mouth skeptic confuse frustrated indifferent +๐Ÿฅน face holding back tears touched gratitude +๐Ÿซฑ rightwards hand palm offer +๐Ÿซฒ leftwards hand palm offer +๐Ÿซณ palm down hand palm drop +๐Ÿซด palm up hand lift offer demand +๐Ÿซฐ hand with index finger and thumb crossed heart love money expensive +๐Ÿซต index pointing at the viewer you recruit +๐Ÿซถ heart hands love appreciation support +๐Ÿซฆ biting lip flirt sexy pain worry +๐Ÿซ… person with crown royalty power +๐Ÿซƒ pregnant man baby belly +๐Ÿซ„ pregnant person baby belly +๐ŸงŒ troll mystical monster +๐Ÿชธ coral ocean sea reef +๐Ÿชท lotus flower calm meditation +๐Ÿชน empty nest bird +๐Ÿชบ nest with eggs bird +๐Ÿซ˜ beans food +๐Ÿซ— pouring liquid cup water +๐Ÿซ™ jar container sauce +๐Ÿ› playground slide fun park +๐Ÿ›ž wheel car transport +๐Ÿ›Ÿ ring buoy life saver life preserver +๐Ÿชฌ hamsa religion protection +๐Ÿชฉ mirror ball disco dance party +๐Ÿชซ low battery drained dead +๐Ÿฉผ crutch accessibility assist +๐Ÿฉป x-ray skeleton medicine +๐Ÿซง bubbles soap fun carbonation sparkling +๐Ÿชช identification card document +๐ŸŸฐ heavy equals sign math +( อกยฐ อœส– อกยฐ) lenny face that face diff --git a/hypr/.config/hypr/scripts/RofiSearch.sh b/hypr/.config/hypr/scripts/RofiSearch.sh new file mode 100755 index 0000000..9b7e4bd --- /dev/null +++ b/hypr/.config/hypr/scripts/RofiSearch.sh @@ -0,0 +1,17 @@ +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Modified Script for Google Search +# Original Submitted by https://github.com/LeventKaanOguz + +# Opens rofi in dmenu mod and waits for input. Then pushes the input to the query of the URL. + +rofi_config="$HOME/.config/rofi/config-search.rasi" + +# Kill Rofi if already running before execution +if pgrep -x "rofi" >/dev/null; then + pkill rofi + exit 0 +fi + +# Open rofi with a dmenu and pass the selected item to xdg-open for Google search +echo "" | rofi -dmenu -config "$rofi_config" -p "Search:" | xargs -I{} xdg-open "https://www.google.com/search?q={}" + diff --git a/hypr/.config/hypr/scripts/ScreenShot.sh b/hypr/.config/hypr/scripts/ScreenShot.sh new file mode 100755 index 0000000..d2ee51a --- /dev/null +++ b/hypr/.config/hypr/scripts/ScreenShot.sh @@ -0,0 +1,128 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Screenshots scripts + +iDIR="$HOME/.config/swaync/icons" +sDIR="$HOME/.config/hypr/scripts" +notify_cmd_shot="notify-send -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png" + +time=$(date "+%d-%b_%H-%M-%S") +dir="$(xdg-user-dir)/Pictures/Screenshots" +file="Screenshot_${time}_${RANDOM}.png" + +active_window_class=$(hyprctl -j activewindow | jq -r '(.class)') +active_window_file="Screenshot_${time}_${active_window_class}.png" +active_window_path="${dir}/${active_window_file}" + +# notify and view screenshot +notify_view() { + if [[ "$1" == "active" ]]; then + if [[ -e "${active_window_path}" ]]; then + ${notify_cmd_shot} "Screenshot of '${active_window_class}' Saved." + "${sDIR}/Sounds.sh" --screenshot + else + ${notify_cmd_shot} "Screenshot of '${active_window_class}' not Saved" + fi + elif [[ "$1" == "swappy" ]]; then + ${notify_cmd_shot} "Screenshot Captured." + else + local check_file="$dir/$file" + if [[ -e "$check_file" ]]; then + ${notify_cmd_shot} "Screenshot Saved." + "${sDIR}/Sounds.sh" --screenshot + else + ${notify_cmd_shot} "Screenshot NOT Saved." + fi + fi +} + + + +# countdown +countdown() { + for sec in $(seq $1 -1 1); do + notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec" + sleep 1 + done +} + +# take shots +shotnow() { + cd ${dir} && grim - | tee "$file" | wl-copy + sleep 2 + notify_view +} + +shot5() { + countdown '5' + sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy + sleep 1 + notify_view + +} + +shot10() { + countdown '10' + sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy + notify_view +} + +shotwin() { + w_pos=$(hyprctl activewindow | grep 'at:' | cut -d':' -f2 | tr -d ' ' | tail -n1) + w_size=$(hyprctl activewindow | grep 'size:' | cut -d':' -f2 | tr -d ' ' | tail -n1 | sed s/,/x/g) + cd ${dir} && grim -g "$w_pos $w_size" - | tee "$file" | wl-copy + notify_view +} + +shotarea() { + tmpfile=$(mktemp) + grim -g "$(slurp)" - >"$tmpfile" + if [[ -s "$tmpfile" ]]; then + wl-copy <"$tmpfile" + mv "$tmpfile" "$dir/$file" + fi + rm "$tmpfile" + notify_view +} + +shotactive() { + active_window_class=$(hyprctl -j activewindow | jq -r '(.class)') + active_window_file="Screenshot_${time}_${active_window_class}.png" + active_window_path="${dir}/${active_window_file}" + + hyprctl -j activewindow | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"' | grim -g - "${active_window_path}" + sleep 1 + notify_view "active" +} + +shotswappy() { + tmpfile=$(mktemp) + grim -g "$(slurp)" - >"$tmpfile" && "${sDIR}/Sounds.sh" --screenshot && notify_view "swappy" + swappy -f - <"$tmpfile" + rm "$tmpfile" +} + + +if [[ ! -d "$dir" ]]; then + mkdir -p "$dir" +fi + +if [[ "$1" == "--now" ]]; then + shotnow +elif [[ "$1" == "--in5" ]]; then + shot5 +elif [[ "$1" == "--in10" ]]; then + shot10 +elif [[ "$1" == "--win" ]]; then + shotwin +elif [[ "$1" == "--area" ]]; then + shotarea +elif [[ "$1" == "--active" ]]; then + shotactive +elif [[ "$1" == "--swappy" ]]; then + shotswappy +else + echo -e "Available Options : --now --in5 --in10 --win --area --active --swappy" +fi + +exit 0 diff --git a/hypr/.config/hypr/scripts/Sounds.sh b/hypr/.config/hypr/scripts/Sounds.sh new file mode 100755 index 0000000..e19feea --- /dev/null +++ b/hypr/.config/hypr/scripts/Sounds.sh @@ -0,0 +1,72 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# This script is used to play system sounds. +# Script is used by Volume.Sh and ScreenShots.sh + +theme="freedesktop" # Set the theme for the system sounds. +mute=false # Set to true to mute the system sounds. + +# Mute individual sounds here. +muteScreenshots=false +muteVolume=false + +# Exit if the system sounds are muted. +if [[ "$mute" = true ]]; then + exit 0 +fi + +# Choose the sound to play. +if [[ "$1" == "--screenshot" ]]; then + if [[ "$muteScreenshots" = true ]]; then + exit 0 + fi + soundoption="screen-capture.*" +elif [[ "$1" == "--volume" ]]; then + if [[ "$muteVolume" = true ]]; then + exit 0 + fi + soundoption="audio-volume-change.*" +else + echo -e "Available sounds: --screenshot, --volume" + exit 0 +fi + +# Set the directory defaults for system sounds. +if [ -d "/run/current-system/sw/share/sounds" ]; then + systemDIR="/run/current-system/sw/share/sounds" # NixOS +else + systemDIR="/usr/share/sounds" +fi +userDIR="$HOME/.local/share/sounds" +defaultTheme="freedesktop" + +# Prefer the user's theme, but use the system's if it doesn't exist. +sDIR="$systemDIR/$defaultTheme" +if [ -d "$userDIR/$theme" ]; then + sDIR="$userDIR/$theme" +elif [ -d "$systemDIR/$theme" ]; then + sDIR="$systemDIR/$theme" +fi + +# Get the theme that it inherits. +iTheme=$(cat "$sDIR/index.theme" | grep -i "inherits" | cut -d "=" -f 2) +iDIR="$sDIR/../$iTheme" + +# Find the sound file and play it. +sound_file=$(find $sDIR/stereo -name "$soundoption" -print -quit) +if ! test -f "$sound_file"; then + sound_file=$(find $iDIR/stereo -name "$soundoption" -print -quit) + if ! test -f "$sound_file"; then + sound_file=$(find $userDIR/$defaultTheme/stereo -name "$soundoption" -print -quit) + if ! test -f "$sound_file"; then + sound_file=$(find $systemDIR/$defaultTheme/stereo -name "$soundoption" -print -quit) + if ! test -f "$sound_file"; then + echo "Error: Sound file not found." + exit 1 + fi + fi + fi +fi + +# pipewire priority, fallback pulseaudio +pw-play "$sound_file" || pa-play "$sound_file" \ No newline at end of file diff --git a/hypr/.config/hypr/scripts/SwitchKeyboardLayout.sh b/hypr/.config/hypr/scripts/SwitchKeyboardLayout.sh new file mode 100755 index 0000000..cbacd74 --- /dev/null +++ b/hypr/.config/hypr/scripts/SwitchKeyboardLayout.sh @@ -0,0 +1,78 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# This is for changing kb_layouts. Set kb_layouts in $settings_file + +layout_f="$HOME/.cache/kb_layout" +settings_file="$HOME/.config/hypr/UserConfigs/UserSettings.conf" +notif="$HOME/.config/swaync/images/bell.png" + +# Check if ~/.cache/kb_layout exists and create it with a default layout from Settings.conf if not found +if [ ! -f "$layout_f" ]; then + default_layout=$(grep 'kb_layout=' "$settings_file" | cut -d '=' -f 2 | cut -d ',' -f 1 2>/dev/null) + if [ -z "$default_layout" ]; then + default_layout="us" # Default to 'us' layout if Settings.conf or 'kb_layout' is not found + fi + echo "$default_layout" > "$layout_f" +fi + +current_layout=$(cat "$layout_f") + +# Read keyboard layout settings from Settings.conf +if [ -f "$settings_file" ]; then + kb_layout_line=$(grep 'kb_layout=' "$settings_file" | cut -d '=' -f 2) + IFS=',' read -ra layout_mapping <<< "$kb_layout_line" +fi + +layout_count=${#layout_mapping[@]} + +# Find the index of the current layout in the mapping +for ((i = 0; i < layout_count; i++)); do + if [ "$current_layout" == "${layout_mapping[i]}" ]; then + current_index=$i + break + fi +done + +# Calculate the index of the next layout +next_index=$(( (current_index + 1) % layout_count )) +new_layout="${layout_mapping[next_index]}" + +# Update the keyboard layout +hyprctl switchxkblayout "at-translated-set-2-keyboard" "$new_layout" +echo "$new_layout" > "$layout_f" + +# Created by T-Crypt + +get_keyboard_names() { + hyprctl devices -j | jq -r '.keyboards[].name' +} + +change_layout() { + local got_error=false + + while read -r name; do + hyprctl switchxkblayout "$name" next + if [[ $? -eq 0 ]]; then + echo "Switched the layout for $name." + else + >&2 echo "Error while switching the layout for $name." + got_error=true + fi + done <<< "$(get_keyboard_names)" + + if [ "$got_error" = true ]; then + >&2 echo "Some errors were found during the process..." + return 1 + fi + + return 0 # All layouts had been cycled successfully +} + +if ! change_layout; then + notify-send -u low -t 2000 'Keyboard layout' 'Error: Layout change failed' + >&2 echo "Layout change failed." + exit 1 +else + # Notification for the new keyboard layout + notify-send -u low -i "$notif" "new KB_Layout: $new_layout" +fi diff --git a/hypr/.config/hypr/scripts/TouchPad.sh b/hypr/.config/hypr/scripts/TouchPad.sh new file mode 100755 index 0000000..e94ee06 --- /dev/null +++ b/hypr/.config/hypr/scripts/TouchPad.sh @@ -0,0 +1,27 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# For disabling touchpad. +# Edit the Touchpad_Device according to your system +# use hyprctl devices to get your system touchpad device name + + +Touchpad_Device="asue1209:00-04f3:319f-touchpad" +notif="$HOME/.config/swaync/images/bell.png" + +XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR:-/run/user/$(id -u)} +STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status" + +toggle_touchpad() { + if [ ! -f "$STATUS_FILE" ] || [ "$(cat "$STATUS_FILE")" = "false" ]; then + echo "true" > "$STATUS_FILE" + action="enabled" + else + echo "false" > "$STATUS_FILE" + action="disabled" + fi + + notify-send -u low -i "$notif" "Touchpad $action" + hyprctl keyword "device[$Touchpad_Device]:enabled" "$(cat "$STATUS_FILE")" +} + +toggle_touchpad diff --git a/hypr/.config/hypr/scripts/UptimeNixOS.sh b/hypr/.config/hypr/scripts/UptimeNixOS.sh new file mode 100755 index 0000000..654ae2c --- /dev/null +++ b/hypr/.config/hypr/scripts/UptimeNixOS.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +# Script parses /proc/uptime to get the system uptime +# and prints it in a human-readable format +# This is a workaround for system where `uptime` command is taken from coreutils +# where `uptime -p` is not supported + +if [[ -r /proc/uptime ]]; then + s=$(< /proc/uptime) + s=${s/.*} +else + echo "Error UptimeNixOS.sh: Uptime could not be determined." >&2 + exit 1 +fi + +d="$((s / 60 / 60 / 24)) days" +h="$((s / 60 / 60 % 24)) hours" +m="$((s / 60 % 60)) minutes" + +# Remove plural if < 2. +((${d/ *} == 1)) && d=${d/s} +((${h/ *} == 1)) && h=${h/s} +((${m/ *} == 1)) && m=${m/s} + +# Hide empty fields. +((${d/ *} == 0)) && unset d +((${h/ *} == 0)) && unset h +((${m/ *} == 0)) && unset m + +uptime=${d:+$d, }${h:+$h, }$m +uptime=${uptime%', '} +uptime=${uptime:-$s seconds} + +echo "up $uptime" diff --git a/hypr/.config/hypr/scripts/Volume.sh b/hypr/.config/hypr/scripts/Volume.sh new file mode 100644 index 0000000..19868ca --- /dev/null +++ b/hypr/.config/hypr/scripts/Volume.sh @@ -0,0 +1,143 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Scripts for volume controls for audio and mic + +iDIR="$HOME/.config/swaync/icons" +sDIR="$HOME/.config/hypr/scripts" + +# Get Volume +get_volume() { + volume=$(pamixer --get-volume) + if [[ "$volume" -eq "0" ]]; then + echo "Muted" + else + echo "$volume%" + fi +} + +# Get icons +get_icon() { + current=$(get_volume) + if [[ "$current" == "Muted" ]]; then + echo "$iDIR/volume-mute.png" + elif [[ "${current%\%}" -le 30 ]]; then + echo "$iDIR/volume-low.png" + elif [[ "${current%\%}" -le 60 ]]; then + echo "$iDIR/volume-mid.png" + else + echo "$iDIR/volume-high.png" + fi +} + +# Notify +notify_user() { + if [[ "$(get_volume)" == "Muted" ]]; then + notify-send -e -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: Muted" + else + notify-send -e -h int:value:"$(get_volume | sed 's/%//')" -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: $(get_volume)" + "$sDIR/Sounds.sh" --volume + fi +} + +# Increase Volume +inc_volume() { + if [ "$(pamixer --get-mute)" == "true" ]; then + toggle_mute + else + pamixer -i 5 --allow-boost --set-limit 150 && notify_user + fi +} + +# Decrease Volume +dec_volume() { + if [ "$(pamixer --get-mute)" == "true" ]; then + toggle_mute + else + pamixer -d 5 && notify_user + fi +} + +# Toggle Mute +toggle_mute() { + if [ "$(pamixer --get-mute)" == "false" ]; then + pamixer -m && notify-send -e -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF" + elif [ "$(pamixer --get-mute)" == "true" ]; then + pamixer -u && notify-send -e -u low -i "$(get_icon)" "Volume Switched ON" + fi +} + +# Toggle Mic +toggle_mic() { + if [ "$(pamixer --default-source --get-mute)" == "false" ]; then + pamixer --default-source -m && notify-send -e -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF" + elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then + pamixer -u --default-source u && notify-send -e -u low -i "$iDIR/microphone.png" "Microphone Switched ON" + fi +} +# Get Mic Icon +get_mic_icon() { + current=$(pamixer --default-source --get-volume) + if [[ "$current" -eq "0" ]]; then + echo "$iDIR/microphone-mute.png" + else + echo "$iDIR/microphone.png" + fi +} + +# Get Microphone Volume +get_mic_volume() { + volume=$(pamixer --default-source --get-volume) + if [[ "$volume" -eq "0" ]]; then + echo "Muted" + else + echo "$volume%" + fi +} + +# Notify for Microphone +notify_mic_user() { + volume=$(get_mic_volume) + icon=$(get_mic_icon) + notify-send -e -h int:value:"$volume" -h "string:x-canonical-private-synchronous:volume_notif" -u low -i "$icon" "Mic-Level: $volume" +} + +# Increase MIC Volume +inc_mic_volume() { + if [ "$(pamixer --default-source --get-mute)" == "true" ]; then + toggle_mic + else + pamixer --default-source -i 5 && notify_mic_user + fi +} + +# Decrease MIC Volume +dec_mic_volume() { + if [ "$(pamixer --default-source --get-mute)" == "true" ]; then + toggle-mic + else + pamixer --default-source -d 5 && notify_mic_user + fi +} + +# Execute accordingly +if [[ "$1" == "--get" ]]; then + get_volume +elif [[ "$1" == "--inc" ]]; then + inc_volume +elif [[ "$1" == "--dec" ]]; then + dec_volume +elif [[ "$1" == "--toggle" ]]; then + toggle_mute +elif [[ "$1" == "--toggle-mic" ]]; then + toggle_mic +elif [[ "$1" == "--get-icon" ]]; then + get_icon +elif [[ "$1" == "--get-mic-icon" ]]; then + get_mic_icon +elif [[ "$1" == "--mic-inc" ]]; then + inc_mic_volume +elif [[ "$1" == "--mic-dec" ]]; then + dec_mic_volume +else + get_volume +fi diff --git a/hypr/.config/hypr/scripts/WallustSwww.sh b/hypr/.config/hypr/scripts/WallustSwww.sh new file mode 100755 index 0000000..2a71102 --- /dev/null +++ b/hypr/.config/hypr/scripts/WallustSwww.sh @@ -0,0 +1,37 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Wallust Colors for current wallpaper + +# Define the path to the swww cache directory +cache_dir="$HOME/.cache/swww/" + +# Get a list of monitor outputs +monitor_outputs=($(ls "$cache_dir")) + +# Initialize a flag to determine if the ln command was executed +ln_success=false + +# Get current focused monitor +current_monitor=$(hyprctl monitors | awk '/^Monitor/{name=$2} /focused: yes/{print name}') +echo $current_monitor +# Construct the full path to the cache file +cache_file="$cache_dir$current_monitor" +echo $cache_file +# Check if the cache file exists for the current monitor output +if [ -f "$cache_file" ]; then + # Get the wallpaper path from the cache file + wallpaper_path=$(cat "$cache_file") + echo $wallpaper_path + # Copy the wallpaper to the location Rofi can access + if ln -sf "$wallpaper_path" "$HOME/.config/rofi/.current_wallpaper"; then + ln_success=true # Set the flag to true upon successful execution + fi +fi + +# Check the flag before executing further commands +if [ "$ln_success" = true ]; then + # execute wallust + echo 'about to execute wallust' + # execute wallust skipping tty and terminal changes + wallust run "$wallpaper_path" -s & +fi diff --git a/hypr/.config/hypr/scripts/WaybarCava.sh b/hypr/.config/hypr/scripts/WaybarCava.sh new file mode 100755 index 0000000..3c4b0f5 --- /dev/null +++ b/hypr/.config/hypr/scripts/WaybarCava.sh @@ -0,0 +1,39 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## + +# Not my own work. This was added through Github PR. Credit to original author + +#----- Optimized bars animation without much CPU usage increase -------- +bar="โ–โ–‚โ–ƒโ–„โ–…โ–†โ–‡โ–ˆ" +dict="s/;//g" + +# Calculate the length of the bar outside the loop +bar_length=${#bar} + +# Create dictionary to replace char with bar +for ((i = 0; i < bar_length; i++)); do + dict+=";s/$i/${bar:$i:1}/g" +done + +# Create cava config +config_file="/tmp/bar_cava_config" +cat >"$config_file" </dev/null; then + pkill waybar + sleep 0.1 # Delay for Waybar to completely terminate + fi + "${SCRIPTSDIR}/Refresh.sh" & +} + +# Main function +main() { + choice=$(menu | rofi -i -dmenu -config "$rofi_config") + + if [[ -z "$choice" ]]; then + echo "No option selected. Exiting." + exit 0 + fi + + case $choice in + "no panel") + pgrep -x "waybar" && pkill waybar || true + ;; + *) + apply_config "$choice" + ;; + esac +} + +# Kill Rofi if already running before execution +if pgrep -x "rofi" >/dev/null; then + pkill rofi + exit 0 +fi + +main diff --git a/hypr/.config/hypr/scripts/WaybarStyles.sh b/hypr/.config/hypr/scripts/WaybarStyles.sh new file mode 100755 index 0000000..2e99478 --- /dev/null +++ b/hypr/.config/hypr/scripts/WaybarStyles.sh @@ -0,0 +1,59 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## +# Script for waybar styles + +set -euo pipefail +IFS=$'\n\t' + +# Define directories +waybar_styles="$HOME/.config/waybar/style" +waybar_style="$HOME/.config/waybar/style.css" +SCRIPTSDIR="$HOME/.config/hypr/scripts" +rofi_config="$HOME/.config/rofi/config-waybar-style.rasi" + +# Function to display menu options +menu() { + options=() + while IFS= read -r file; do + if [ -f "$waybar_styles/$file" ]; then + options+=("$(basename "$file" .css)") + fi + done < <(find "$waybar_styles" -maxdepth 1 -type f -name '*.css' -exec basename {} \; | sort) + + printf '%s\n' "${options[@]}" +} + +# Apply selected style +apply_style() { + ln -sf "$waybar_styles/$1.css" "$waybar_style" + restart_waybar_if_needed +} + +# Restart Waybar if it's running +restart_waybar_if_needed() { + if pgrep -x "waybar" >/dev/null; then + pkill waybar + sleep 0.1 # Delay for Waybar to completely terminate + fi + "${SCRIPTSDIR}/Refresh.sh" & +} + +# Main function +main() { + choice=$(menu | rofi -i -dmenu -config "$rofi_config") + + if [[ -z "$choice" ]]; then + echo "No option selected. Exiting." + exit 0 + fi + + apply_style "$choice" +} + +# Kill Rofi if already running before execution +if pgrep -x "rofi" >/dev/null; then + pkill rofi + exit 0 +fi + +main diff --git a/hypr/.config/hypr/scripts/Wlogout.sh b/hypr/.config/hypr/scripts/Wlogout.sh new file mode 100755 index 0000000..e212601 --- /dev/null +++ b/hypr/.config/hypr/scripts/Wlogout.sh @@ -0,0 +1,57 @@ +#!/bin/bash +# /* ---- ๐Ÿ’ซ https://github.com/JaKooLit ๐Ÿ’ซ ---- */ ## + +# wlogout (Power, Screen Lock, Suspend, etc) + +# Set variables for parameters +A_2160=450 +B_2160=450 +A_1600=400 +B_1600=400 +A_1440=350 +B_1440=350 +A_1080=350 +B_1080=350 +A_720=50 +B_720=50 + +# Check if wlogout is already running +if pgrep -x "wlogout" > /dev/null; then + pkill -x "wlogout" + exit 0 +fi + +# Detect monitor resolution and scaling factor +resolution=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .height / .scale' | awk -F'.' '{print $1}') +hypr_scale=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .scale') + +# Set parameters based on screen resolution and scaling factor +if ((resolution >= 2160)); then + T_val=$(awk "BEGIN {printf \"%.0f\", $A_2160 * 2160 * $hypr_scale / $resolution}") + B_val=$(awk "BEGIN {printf \"%.0f\", $B_2160 * 2160 * $hypr_scale / $resolution}") + echo "Setting parameters for resolution >= 4k" + wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & +elif ((resolution >= 1600 && resolution < 2160)); then + T_val=$(awk "BEGIN {printf \"%.0f\", $A_1600 * 1600 * $hypr_scale / $resolution}") + B_val=$(awk "BEGIN {printf \"%.0f\", $B_1600 * 1600 * $hypr_scale / $resolution}") + echo "Setting parameters for resolution >= 2.5k and < 4k" + wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & +elif ((resolution >= 1440 && resolution < 1600)); then + T_val=$(awk "BEGIN {printf \"%.0f\", $A_1440 * 1440 * $hypr_scale / $resolution}") + B_val=$(awk "BEGIN {printf \"%.0f\", $B_1440 * 1440 * $hypr_scale / $resolution}") + echo "Setting parameters for resolution >= 2k and < 2.5k" + wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & +elif ((resolution >= 1080 && resolution < 1440)); then + T_val=$(awk "BEGIN {printf \"%.0f\", $A_1080 * 1080 * $hypr_scale / $resolution}") + B_val=$(awk "BEGIN {printf \"%.0f\", $B_1080 * 1080 * $hypr_scale / $resolution}") + echo "Setting parameters for resolution >= 1080p and < 2k" + wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & +elif ((resolution >= 720 && resolution < 1080)); then + T_val=$(awk "BEGIN {printf \"%.0f\", $A_720 * 720 * $hypr_scale / $resolution}") + B_val=$(awk "BEGIN {printf \"%.0f\", $B_720 * 720 * $hypr_scale / $resolution}") + echo "Setting parameters for resolution >= 720p and < 1080p" + wlogout --protocol layer-shell -b 3 -T $T_val -B $B_val & +else + echo "Setting default parameters" + wlogout & +fi diff --git a/hypr/.config/hypr/scripts/polkit.sh b/hypr/.config/hypr/scripts/polkit.sh new file mode 100644 index 0000000..ca5db2b --- /dev/null +++ b/hypr/.config/hypr/scripts/polkit.sh @@ -0,0 +1,16 @@ + +polkit=( + "/usr/lib/polkit-kde-authentication-agent-1" + "/usr/lib/x86_64-linux-gnu/libexec/polkit-authentication-agent-1" +) + +executed=false + +for file in "${polkit[@]}"; do + if [ -e "$file" ]; then + echo "File $file found" + exec "$file" + executed=true + break + fi +done diff --git a/nvim/.config/nvim/after/plugin/lsp.lua b/nvim/.config/nvim/after/plugin/lsp.lua index 0817d6b..ad3b56c 100644 --- a/nvim/.config/nvim/after/plugin/lsp.lua +++ b/nvim/.config/nvim/after/plugin/lsp.lua @@ -121,15 +121,42 @@ lsp['lua_ls'].setup{ flags = lsp_flags, } +local project_features_env = os.getenv("RUST_FEATURES") +local project_features = {} + +if project_features_env ~= nil and project_features_env ~= "" then + local function split(str, sep) + local result = {} + local regex = ("([^%s]+)"):format(sep) + for each in str:gmatch(regex) do + table.insert(result, each) + end + return result + end + project_features = split(project_features_env, ",") +end + lsp['rust_analyzer'].setup{ - on_attach = on_attach, + on_attach = function(client, bufnr) + vim.lsp.inlay_hint.enable(true, { bufnr = bufnr }) + end, flags = lsp_flags, cmd = { - "rustup", "run", "stable", "rust-analyzer", + "rustup", "run", "nightly", "rust-analyzer", }, settings = { ["rust-analyzer"] = { + cargo = { + features = project_features, + buildScripts = { + enable = true, + } + }, + check = { + features = project_features + }, procMacro = { + enable = true, ignored = { leptos_macro = { "island", @@ -141,6 +168,11 @@ lsp['rust_analyzer'].setup{ }, } +lsp['pylsp'].setup{ + on_attach = on_attach, + flags = lsp_flags, +} + lsp.clangd.setup{ on_attach = on_attach, flags = lsp_flags, diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index 0fa7396..ac383f6 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -1,39 +1,39 @@ { - "LuaSnip": { "branch": "master", "commit": "b152822e1a4bafb6bdf11a16cc26525cbd95ee00" }, + "LuaSnip": { "branch": "master", "commit": "878ace11983444d865a72e1759dbcc331d1ace4c" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "editorconfig-vim": { "branch": "master", "commit": "8b7da79e9daee7a3f3a8d4fe29886b9756305aff" }, "formatter.nvim": { "branch": "master", "commit": "ad246d34ce7a32f752071ed81b09b94e6b127fad" }, - "friendly-snippets": { "branch": "main", "commit": "d5f74ce4dfdd82848f3f4eac65fe6e29ac5df4c2" }, - "gitsigns.nvim": { "branch": "main", "commit": "790355f00af1fc2c330ea1b2b7f68d65f19b57c9" }, + "friendly-snippets": { "branch": "main", "commit": "d0610077b6129cf9f7f78afbe3a1425d60f6e2f1" }, + "gitsigns.nvim": { "branch": "main", "commit": "75dc649106827183547d3bedd4602442340d2f7f" }, "glow.nvim": { "branch": "main", "commit": "238070a686c1da3bccccf1079700eb4b5e19aea4" }, "headlines.nvim": { "branch": "master", "commit": "618ef1b2502c565c82254ef7d5b04402194d9ce3" }, - "lazy.nvim": { "branch": "main", "commit": "3f13f080434ac942b150679223d54f5ca91e0d52" }, + "lazy.nvim": { "branch": "main", "commit": "eab487c2520f0fe9e54eb5e3ea0606e20512492e" }, "lspkind.nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" }, - "lspsaga.nvim": { "branch": "main", "commit": "052234296f13e2705d5d290c7bd5a36d3dd81fde" }, + "lspsaga.nvim": { "branch": "main", "commit": "4e9d6162863d2f532751db91a1193cfe1f3a4361" }, "lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "273fdde8ac5e51f3a223ba70980e52bbc09d9f6f" }, - "mason.nvim": { "branch": "main", "commit": "751b1fcbf3d3b783fcf8d48865264a9bcd8f9b10" }, - "noice.nvim": { "branch": "main", "commit": "0cbe3f88d038320bdbda3c4c5c95f43a13c3aa12" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "a4caa0d083aab56f6cd5acf2d42331b74614a585" }, + "mason.nvim": { "branch": "main", "commit": "0fb4e56837f13b81a972fcc0554be1327b39061e" }, + "noice.nvim": { "branch": "main", "commit": "69c6ad5c1f1c0777125d0275f9871d8609cb0521" }, "nord.nvim": { "branch": "master", "commit": "80c1e5321505aeb22b7a9f23eb82f1e193c12470" }, - "nui.nvim": { "branch": "main", "commit": "cbd2668414331c10039278f558630ed19b93e69b" }, - "nvim-cmp": { "branch": "main", "commit": "8f3c541407e691af6163e2447f3af1bd6e17f9a3" }, - "nvim-dap": { "branch": "master", "commit": "6ae8a14828b0f3bff1721a35a1dfd604b6a933bb" }, - "nvim-dap-ui": { "branch": "master", "commit": "5934302d63d1ede12c0b22b6f23518bb183fc972" }, - "nvim-lint": { "branch": "master", "commit": "861a04313501563bb1b11f125ae9b7237a517b9b" }, - "nvim-lspconfig": { "branch": "master", "commit": "aa5f4f4ee10b2688fb37fa46215672441d5cd5d9" }, - "nvim-notify": { "branch": "master", "commit": "5371f4bfc1f6d3adf4fe9d62cd3a9d44356bfd15" }, - "nvim-treesitter": { "branch": "master", "commit": "1a4274c9e1226fb4c2009f4c0c3521b1931b0c5c" }, - "nvim-web-devicons": { "branch": "master", "commit": "794bba734ec95eaff9bb82fbd112473be2087283" }, - "oil.nvim": { "branch": "master", "commit": "f3a31eba24587bc038592103d8f7e64648292115" }, - "plenary.nvim": { "branch": "master", "commit": "08e301982b9a057110ede7a735dd1b5285eb341f" }, + "nui.nvim": { "branch": "main", "commit": "b1b3dcd6ed8f355c78bad3d395ff645be5f8b6ae" }, + "nvim-cmp": { "branch": "main", "commit": "5260e5e8ecadaf13e6b82cf867a909f54e15fd07" }, + "nvim-dap": { "branch": "master", "commit": "1f609cbc48718571c2e69b8bdc75ab74ab98354d" }, + "nvim-dap-ui": { "branch": "master", "commit": "b7267003ba4dd860350be86f75b9d9ea287cedca" }, + "nvim-lint": { "branch": "master", "commit": "2f90fe977ef21db3bf3b7a1ceaf4a1e3aafb2b26" }, + "nvim-lspconfig": { "branch": "master", "commit": "710a8fa7379db32199545f30ea01dd8446b9302f" }, + "nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" }, + "nvim-treesitter": { "branch": "master", "commit": "979beffc1a86e7ba19bd6535c0370d8e1aaaad3c" }, + "nvim-web-devicons": { "branch": "master", "commit": "b77921fdc44833c994fdb389d658ccbce5490c16" }, + "oil.nvim": { "branch": "master", "commit": "2cb39e838e9dcd8b374f09a3a87a2e5ec9d372f6" }, + "plenary.nvim": { "branch": "master", "commit": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" }, - "telescope.nvim": { "branch": "master", "commit": "35f94f0ef32d70e3664a703cefbe71bd1456d899" }, - "todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" }, + "telescope.nvim": { "branch": "master", "commit": "dfa230be84a044e7f546a6c2b0a403c739732b86" }, + "todo-comments.nvim": { "branch": "main", "commit": "e1549807066947818113a7d7ed48f637e49620d3" }, "undotree": { "branch": "master", "commit": "56c684a805fe948936cda0d1b19505b84ad7e065" }, "vim-grammarous": { "branch": "master", "commit": "db46357465ce587d5325e816235b5e92415f8c05" }, "vim-wakatime": { "branch": "master", "commit": "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23" }, - "vimtex": { "branch": "master", "commit": "a80934749c69cc6875b3c9b13ef59573a4824fb2" } + "vimtex": { "branch": "master", "commit": "cf259f47fc18977f3fbe87ec527d9766b423900a" } } \ No newline at end of file diff --git a/setup.sh b/setup.sh index c85ab03..7aa0e7a 100755 --- a/setup.sh +++ b/setup.sh @@ -2,11 +2,14 @@ # what directories should be installable by all users including the root user base=( + sway ) # folders that should, or only need to be installed for a local user useronly=( nvim + waybar + hypr ) # run the stow command for the passed in directory ($2) in location $1 @@ -29,7 +32,7 @@ done # install only user space folders for app in ${useronly[@]}; do - if [[! "$(whoami)" = *"root"*]]; then + if ! [[ "$(whoami)" = *"root"* ]]; then stowit "${HOME}" $app fi done diff --git a/waybar/.config/waybar/config.jsonc b/waybar/.config/waybar/config.jsonc new file mode 100644 index 0000000..2f196b1 --- /dev/null +++ b/waybar/.config/waybar/config.jsonc @@ -0,0 +1,137 @@ +{ + "position": "top", + "layer": "top", + "height": 16, + + "modules-left": ["custom/launcher","custom/playerctl","custom/playerlabel","cava"], + "modules-center": ["hyprland/workspaces"], + "modules-right": ["disk","memory","cpu","battery","pulseaudio","clock"], + + "custom/launcher": { + "format": "๏Œƒ", + "on-click": "wlogout", + "tooltip": "Power Menu" + }, + +"cava": { + // "cava_config": "$XDG_CONFIG_HOME/cava/config", + "framerate": 30, + "autosens": 1, + "sensitivity": 1, + "bars": 14, + "lower_cutoff_freq": 50, + "higher_cutoff_freq": 10000, + "method": "pulse", + "source": "auto", + "stereo": true, + "reverse": false, + "bar_delimiter": 0, + "monstercat": false, + "waves": false, + "noise_reduction": 0.77, + "input_delay": 2, + "format-icons" : ["โ–", "โ–‚", "โ–ƒ", "โ–„", "โ–…", "โ–†", "โ–‡", "โ–ˆ" ], + "actions": { + "on-click-right": "mode" + } + }, +"clock": { + "interval": 1, + "format": "๓ฐƒญ {:%Y-%m-%d ๏€— %H:%M}", + "format-alt": "๏€— {:%H:%M}", + "on-click-middle": "gnome-calendar", + "tooltip-format": "\n{calendar}", + "calendar": { + "mode" : "month", + "mode-mon-col" : 3, + "on-scroll" : 1, + "on-click-right": "mode", + "format": { + "months": "{}", + "days": "{}", + "weekdays": "{}", + "today": "{}" + } + } + }, + "custom/playerctl": { + "format": "{icon}", + "return-type": "json", + "exec": "playerctl --player=mpd -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F", + "on-click": "playerctl --player=mpd play-pause", + "on-click-middle": "playerctl --player=mpd previous", + "on-click-right": "playerctl --player=mpd next", + "format-icons": { + "Playing": "๏•˜ ", + "Paused": "๏ฃค ", + }, + }, + "custom/playerlabel": { + "format": "{}", + "return-type": "json", + "max-length": 48, + "exec": "playerctl --player=mpd -a metadata --format '{\"text\": \"{{title}} - {{markup_escape(artist)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(artist)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F", + "on-click": "playerctl --player=mpd play-pause", + "on-click-middle": "playerctl --player=mpd previous", + "on-click-right": "playerctl --player=mpd next", + }, + + "pulseaudio": { + "format": "{icon} {volume}%", + "format-muted": "๏€ฆ {volume}%", + "format-icons": { + "headphone": "๏€ฅ", + "hands-free": "๏Š”", + "headset": "๏€ฅ", + "phone": "๏‚•", + "portable": "๏‚•", + "car": "๏†น", + "default": ["๏€ง ", "๏€จ "], + }, + "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle", + "on-click-right": "pavucontrol", + }, + + "tray": { + "icon-size": 16, + "spacing": 8, + }, + + "memory": { + "format": "๏‹› {}%", + "format-alt": "๏‹› {used}/{total} GiB", + "interval": 5, + }, + "cpu": { + "format": "๓ฐ› {usage}%", + "format-alt": "๓ฐ› {avg_frequency} GHz", + "interval": 5, + }, + "disk": { + "format": "๓ฐ‹Š {}%", + "format-alt": "๓ฐ‹Š {used}/{total} GiB", + "interval": 20, + "path": "/" + }, + + "hyprland/window": { + "format": "{}", + "max-length": 25, + "separate-outputs": true + }, + + "battery": { + "states": { + // "good": 95, + "warning": 30, + "critical": 15 + }, + "format": "{icon} {capacity}%", + "format-full": "{icon} {capacity}%", + "format-charging": "๏—ง {capacity}%", + "format-plugged": "๏‡ฆ {capacity}%", + "format-alt": "{time} {icon}", + "format-icons": ["๏‰„", "๏‰ƒ", "๏‰‚", "๏‰", "๏‰€"] + }, + +} diff --git a/waybar/.config/waybar/style.css b/waybar/.config/waybar/style.css new file mode 100644 index 0000000..02277da --- /dev/null +++ b/waybar/.config/waybar/style.css @@ -0,0 +1,220 @@ +* { + border: none; + border-radius: 0px; + font-family: FontAwesome, FiraCode Nerd Font, Inter, sans-serif; + font-size: 13px; + font-style: normal; + min-height: 0; +} + +window#waybar { + background: rgba(76,86,106,0); + color: #cdd6f4 +} + +#workspaces { + background: #434c5e; + margin: 5px 5px; + padding: 8px 5px; + border-radius: 16px; + border: solid 0px #cdd6f4; + font-weight: normal; + font-style: normal; +} +#workspaces button { + padding: 0px 5px; + margin: 0px 3px; + border-radius: 16px; + color: #eceff4; + background-color: #6f7787; + transition: all 0.3s ease-in-out; +} +#workspaces button.active { + color: #2e3440; + background-color: #d8dee9; + border-radius: 16px; + min-width: 50px; + background-size: 400% 400%; + transition: all 0.3s ease-in-out; +} +#workspaces button:hover { + background-color: #8fbcbb; + color: #2e3440; + border-radius: 16px; + min-width: 50px; + background-size: 400% 400%; +} + +#clock, +#pulseaudio, +#network, +#custom-launcher, +#custom-pacmanAlt, +#cpu, +#memory, +#disk, +#cava, +#language, +#windows, + +#cava{ + background-color: #434c5e; + color: #a3be8c; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +} + +#battery { + background-color: #434c5e; + color: #a3be8c; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +} + +#tray { + background: #434c5e; + margin: 5px 5px 5px 5px; + border-radius: 16px; + padding: 0px 12px; + /*border-right: solid 1px #282738;*/ +} + +#clock { + color: #cdd6f4; + background-color: #434c5e; + border-radius: 0px 0px 0px 24px; + padding-left: 13px; + padding-right: 15px; + margin-right: 0px; + margin-left: 10px; + margin-top: 0px; + margin-bottom: 0px; + font-weight: bold; + /*border-left: solid 1px #282738;*/ +} + +#network { + color: #cdd6f4; + border-radius: 8px; + margin-right: 5px; + font-weight: bold; +} + +#pulseaudio { + color: #5e81ac; + background: #434c5e; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +} + +#custom-launcher { + color: #cdd6f4; + background-color: #434c5e; + border-radius: 0px 24px 0px 0px; + margin: 0px 0px 0px 0px; + padding: 0 20px 0 13px; + /*border-right: solid 1px #282738;*/ + font-size: 20px; +} + +#custom-launcher button:hover { + background-color: #FB4934; + color: transparent; + border-radius: 8px; + margin-right: -5px; + margin-left: 10px; +} + +#custom-playerctl { + background: #2e3440; + padding: 0px 5px 0px 10px; + border-radius: 16px; + /*border-left: solid 1px #282738;*/ + /*border-right: solid 1px #282738;*/ + margin: 5px 7px; + font-weight: normal; + font-style: normal; + font-size: 16px; +} + +#custom-playerlabel { + background: transparent; + padding-left: 10px; + padding-right: 5px; + border-radius: 16px; + /*border-left: solid 1px #282738;*/ + /*border-right: solid 1px #282738;*/ + margin-top: 5px; + margin-bottom: 5px; + font-weight: normal; + font-style: normal; +} + +#window { + background: #2e3440; + padding-left: 15px; + padding-right: 15px; + border-radius: 16px; + /*border-left: solid 1px #282738;*/ + /*border-right: solid 1px #282738;*/ + margin-top: 5px; + margin-bottom: 5px; + font-weight: normal; + font-style: normal; +} + +#cpu { + background-color: #434c5e; + color: #bf616a; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +} + +#memory { + background-color: #434c5e; + color: #b48ead; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +} + +#disk { + background-color: #434c5e; + color: #d08770; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +} + +#language { + background-color: #434c5e; + color: #a3be8c; + border-radius: 16px; + margin: 5px; + margin-left: 5px; + margin-right: 5px; + padding: 0px 10px 0px 10px; + font-weight: bold; +}