diff --git a/applications.org b/applications.org index 67bceca..dd54ff0 100644 --- a/applications.org +++ b/applications.org @@ -1,21 +1,5 @@ #+TITLE:Desktop file for the applications -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+SETUPFILE: ./setup/org-setup-file.org * Mime Applications :PROPERTIES: diff --git a/bash.org b/bash.org index 634e876..819e9bc 100644 --- a/bash.org +++ b/bash.org @@ -1,36 +1,21 @@ #+TITLE: Bash Configuration -:DRAWER: -#+STARTUP: overview +#+SETUPFILE: ./setup/org-setup-file.org -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: - -* Bashrc +* =~/.bashrc= :PROPERTIES: :header-args:bash: :tangle ~/.bashrc :header-args:bash+: :comments both :mkdirp yes +:CUSTOM_ID: bashrc :END: -** What does that do? +** If not running interactively, don't do anything #+BEGIN_SRC bash -[[ $- != *i* ]] && return + [[ $- != *i* ]] && return #+END_SRC ** Bash Completion #+BEGIN_SRC bash -[ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion + [ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion #+END_SRC ** FZF @@ -38,68 +23,32 @@ source /usr/share/fzf/key-bindings.bash #+end_src -** Ignore case for autocompletion +** Ignore case for auto-completion #+BEGIN_SRC bash -bind "set completion-ignore-case on" -bind "set show-all-if-ambiguous on" + bind "set completion-ignore-case on" + bind "set show-all-if-ambiguous on" #+END_SRC ** Use Color #+BEGIN_SRC bash use_color=true - alias ls='ls -hN --color=auto --group-directories-first' - alias grep='grep --colour=auto' -#+END_SRC - -** Set colorful PS1 only on colorful terminals. -dircolors --print-database uses its own built-in database instead of using /etc/DIR_COLORS. Try to use the external file first to take advantage of user additions. Use internal bash globbing instead of external grep binary. - -#+BEGIN_SRC bash - safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM - match_lhs="" - [[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)" - [[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(/dev/null \ - && match_lhs=$(dircolors --print-database) - [[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true - - if ${use_color} ; then - # Enable colors for ls, etc. Prefer ~/.dir_colors #64489 - if type -P dircolors >/dev/null ; then - if [[ -f ~/.dir_colors ]] ; then - eval $(dircolors -b ~/.dir_colors) - elif [[ -f /etc/DIR_COLORS ]] ; then - eval $(dircolors -b /etc/DIR_COLORS) - fi - fi - - if [[ ${EUID} == 0 ]] ; then - PS1='\[\033[01;31m\][\h\[\033[01;36m\] \W\[\033[01;31m\]]\$\[\033[00m\] ' - else - PS1='\[\033[01;32m\][\u@\h\[\033[01;37m\] \W\[\033[01;32m\]]\$\[\033[00m\] ' - fi - else - if [[ ${EUID} == 0 ]] ; then - # show root@ when we don't have colors - PS1='\u@\h \W \$ ' - else - PS1='\u@\h \w \$ ' - fi - fi #+END_SRC ** Some config #+BEGIN_SRC bash + # Unset some variables unset use_color safe_term match_lhs sh + # Allow local processes with root privileges to connect to the locally running X server xhost +local:root > /dev/null 2>&1 + # Autocomplete sudo commands complete -cf sudo # Line wrap on window resize shopt -s checkwinsize + # Expand Aliases shopt -s expand_aliases # Auto "cd" when entering just a path @@ -109,7 +58,7 @@ dircolors --print-database uses its own built-in database instead of using /etc/ shopt -s histappend #+END_SRC -** Prompt +** Prompt - =PS1= #+BEGIN_SRC bash export PS1="\[$(tput bold)\]\[$(tput setaf 1)\][\[$(tput setaf 3)\]\u\[$(tput setaf 2)\]@\[$(tput setaf 4)\]\h \[$(tput setaf 5)\]\W\[$(tput setaf 1)\]]\[$(tput setaf 7)\]\\$ \[$(tput sgr0)\]" #+END_SRC @@ -123,6 +72,8 @@ dircolors --print-database uses its own built-in database instead of using /etc/ ** Aliases *** Better defaults for some commands #+BEGIN_SRC bash + alias ls='ls -hN --color=auto --group-directories-first' + alias grep='grep --colour=auto' alias cp="cp -i" # confirm before overwriting something alias df='df -h' # human-readable sizes alias free='free -m' # show sizes in MB @@ -138,9 +89,7 @@ dircolors --print-database uses its own built-in database instead of using /etc/ alias sv='sudo -E nvim' alias g="git" alias m="neomutt" - alias y="yadm" alias o="xdg-open" - alias x="sxiv -ft *" #+END_SRC *** Neovim @@ -148,17 +97,6 @@ dircolors --print-database uses its own built-in database instead of using /etc/ command -v nvim >/dev/null && alias vim="nvim" vimdiff="nvim -d" # Use neovim for vim if present. #+end_src -*** Magit -#+BEGIN_SRC bash - # alias magit="emacsclient -create-frame --alternate-editor=\"\" --eval '(magit-status)'" - alias magit="nvim -c MagitOnly" -#+END_SRC - -*** Homelab Relative -#+begin_src bash - alias dlab="aria2p --port 6800 --host http://dl.tdehaeze.xyz --secret $(pass dl.tdehaeze.xyz/tdehaeze | sed -n 1p)" -#+end_src - *** Vim-like #+BEGIN_SRC bash alias :q=exit @@ -171,7 +109,7 @@ dircolors --print-database uses its own built-in database instead of using /etc/ #+END_SRC ** Functions -*** Display colors +*** =colors= - Display colors #+BEGIN_SRC bash colors() { local fgc bgc vals seq0 @@ -201,7 +139,7 @@ dircolors --print-database uses its own built-in database instead of using /etc/ } #+END_SRC -*** Tree display +*** =tre= - Tree display =tre= is a shorthand for =tree= with hidden files and color enabled, ignoring the =.git= directory, listing directories first. The output gets piped into =less= with options to preserve color and line numbers, unless the output is @@ -213,14 +151,14 @@ small enough for one screen. } #+END_SRC -*** Create a new directory and enter it +*** =mkd= - Create a new directory and enter it #+BEGIN_SRC bash function mkd() { mkdir -p "$@" && cd "$_"; } #+END_SRC -*** Filesize of directory +*** =fs= - Filesize of directory #+BEGIN_SRC bash function fs() { if du -b /dev/null > /dev/null 2>&1; then @@ -236,16 +174,17 @@ small enough for one screen. } #+END_SRC -*** Redirect both standard output and standard error, as well as sending to background +*** =nullify= - Redirect both standard output and standard error, as well as sending to background #+BEGIN_SRC bash function nullify() { "$@" >/dev/null 2>&1 } #+END_SRC -*** Send SMS +*** =sms= - Send SMS https://doronbehar.com/articles/using-kdeconnect-to-comfortably-send-sms-messages-from-the-shell/#kdeconnects-builtin-sms-interface -#+begin_src bash + +#+begin_src bash :tangle no sms(){ local args="$@" # local phone_number name phone_type @@ -255,14 +194,12 @@ https://doronbehar.com/articles/using-kdeconnect-to-comfortably-send-sms-message echo No recipient was chosen >&2 return else - # echo "${name}"$'\t'"${phone_number}"$'\t'"${phone_type}" > ${_KDECONNECT_SMS_LAST_RECIPIENT} kdeconnect-cli --send-sms "${args}" --destination "${phone_number}" --device 4de3b5de2264a17c - # kdeconnect-cli --device ${_KDECONNECT_DEFAULT_DEVICE} --send-sms "${args}" --destination "${phone_number}" && \ - # echo sent sms message to ${name} | fribidi fi } #+end_src + ** Bash History Undocumented feature which sets the size to "unlimited". http://stackoverflow.com/questions/9457233/unlimited-bash-history @@ -284,10 +221,11 @@ Force prompt to write history after every command. http://superuser.com/question PROMPT_COMMAND="history -a; $PROMPT_COMMAND" #+END_SRC -* Bash Profile +* =~/.bash_profile= :PROPERTIES: :header-args:bash: :tangle ~/.bash_profile :header-args:bash+: :comments both :mkdirp yes +:CUSTOM_ID: bash_profile :END: #+BEGIN_SRC bash @@ -295,10 +233,11 @@ Force prompt to write history after every command. http://superuser.com/question [[ -f ~/.bashrc ]] && . ~/.bashrc #+END_SRC -* Profile +* =~/.profile= :PROPERTIES: :header-args:bash: :tangle ~/.profile :header-args:bash+: :comments both :mkdirp yes +:CUSTOM_ID: profile :END: ** QT And GTK Themes @@ -313,6 +252,7 @@ Force prompt to write history after every command. http://superuser.com/question #+END_SRC ** Gnome Keyring Daemon +Enable the keyring for applications run through the terminal #+begin_src bash if [ -n "$DESKTOP_SESSION" ];then eval $(gnome-keyring-daemon --start) @@ -320,7 +260,7 @@ Force prompt to write history after every command. http://superuser.com/question fi #+end_src -** Default +** Export some default applications #+begin_src bash export EDITOR="nvim" export TERMINAL="termite" @@ -341,11 +281,6 @@ This is important for termite to work when sshing in remote machines. export XDG_CONFIG_HOME="$HOME/.config" #+end_src -*** Better yaourt colors -#+begin_src bash - export YAOURT_COLORS="nb=1:pkg=1:ver=1;32:lver=1;45:installed=1;42:grp=1;34:od=1;41;5:votes=1;44:dsc=0:other=1;35" -#+end_src - *** Use Ripgrep for FZF #+begin_src bash export FZF_DEFAULT_COMMAND='rg --files --no-ignore --hidden --follow --glob "!.git/*"' @@ -367,12 +302,16 @@ This is important for termite to work when sshing in remote machines. export BW_SESSION="HH0yycfocRSuGtq/iW1e6v13PQ1sShMXbMhdb/En94S6OcIXFnJlLEyU+dySsmf2YShY4CImoB5FrxgdPsY9Qw==" #+end_src +*** Python Path +#+begin_src bash + export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3.9/site-packages/configobj" +#+end_src + ** Path #+begin_src bash PATH=$HOME/appimages:$PATH PATH=$HOME/.gem/ruby/2.5.0/bin:$PATH PATH=$GOPATH:$GOPATH/bin:$PATH - PATH=~/.local/bin:$PATH PATH=~/.emacs.d/bin:$PATH export PATH #+END_SRC @@ -384,10 +323,11 @@ This is important for termite to work when sshing in remote machines. fi #+end_src -* Input +* =~/.inputrc= :PROPERTIES: :header-args: :tangle ~/.inputrc :header-args+: :comments both :mkdirp yes +:CUSTOM_ID: inputrc :END: Completion: diff --git a/binaries-private.org b/binaries-private.org index 7305a8d..0e69777 100644 --- a/binaries-private.org +++ b/binaries-private.org @@ -1,26 +1,14 @@ #+TITLE: My own specific binaries -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:bash :comments both :mkdirp yes #+PROPERTY: header-args:bash+ :shebang "#!/usr/bin/env bash" -:END: * =remote-desktop= - Remote Desktop Connect +:PROPERTIES: +:CUSTOM_ID: remote-desktop +:END: + #+begin_src bash :tangle ~/.local/bin/remote-desktop computer=$(echo -e 'RNICE\nPCMEL1\nPCNASS1\nPCMEG01' | dmenu -p 'Computer:' -l 20); @@ -47,6 +35,9 @@ #+end_src * =print-rnice= - Print on Rnice +:PROPERTIES: +:CUSTOM_ID: print-rnice +:END: #+begin_src bash :tangle ~/.local/bin/print-rnice nbpage=$(echo -e '1\n2\n4' | dmenu -p 'Number of pages per sheet' -l 20); @@ -64,6 +55,10 @@ #+end_src * =tmp14= - Mount/Umount tmp_14_days folder +:PROPERTIES: +:CUSTOM_ID: tmp14 +:END: + #+begin_src bash :tangle ~/.local/bin/tmp_14_days if [ $1 == "mount" ]; then if sshfs -o allow_other,default_permissions -p 5022 dehaeze@firewall.esrf.fr:/tmp_14_days/ ~/mnt/ESRF; then @@ -82,6 +77,9 @@ * =nas= - Interact with the NAS +:PROPERTIES: +:CUSTOM_ID: nas +:END: As an alternative, =sshfs= can be used: #+begin_src bash :tangle no @@ -105,14 +103,30 @@ As an alternative, =sshfs= can be used: #+end_src * =torrent-add= - Download Torrent +:PROPERTIES: +:CUSTOM_ID: torrent-add +:END: + #+begin_src bash :tangle ~/.local/bin/torrent-add transmission-remote ***REMOVED***:9091 --auth tdehaeze:$(pass nas/transmission | sed -n 1p) -a $1 && \ dunstify 'Torrent' 'Successfully added' || \ dunstify 'Torrent' 'Error' +#+end_src +* =dl-add= - Direct Download with Aria2 +:PROPERTIES: +:CUSTOM_ID: dl-add +:END: + +#+begin_src bash :tangle ~/.local/bin/dl-add + aria2p --port 6800 --host http://dl.tdehaeze.xyz --secret $(pass dl.tdehaeze.xyz/tdehaeze | sed -n 1p) add $1 #+end_src * =note-extract-fig= - Extract Figure from note file +:PROPERTIES: +:CUSTOM_ID: note-extract-fig +:END: + Script used to convert a figure drawn on my Boox note2 to a png file that can then be imported into a document. #+begin_src bash :tangle ~/.local/bin/note-extract-fig @@ -126,6 +140,10 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th #+end_src * =share= - Share file with self-hosted =transfer.sh= +:PROPERTIES: +:CUSTOM_ID: share +:END: + #+begin_src bash :tangle ~/.local/bin/share if [ $TMUX ]; then tmux split -v -l 1 "curl --progress-bar -F\"file=@$1\" https://file.tdehaeze.xyz/ | xsel -ib && dunstify 'Upload' 'Successful' || dunstify --urgency=critical 'Upload' 'Failed';" && tmux select-pane -U @@ -137,6 +155,10 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th #+end_src * =screen-select= - Xrandr pre-defined scripts +:PROPERTIES: +:CUSTOM_ID: screen-select +:END: + #+begin_src bash :tangle ~/.local/bin/screen-select option=$(echo -e "Work\nXPS\nHome" | rofi -i -dmenu) @@ -148,7 +170,7 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th xrandr --output eDP1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output DP1 --off --output DP1-1 --off --output DP1-2 --off --output DP2 --off --output VIRTUAL1 --off ;; "Home") - xrandr --output eDP1 --off --output DP2-2 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output DP1 --off --output VIRTUAL1 --off + xrandr --output eDP1 --off --output DP2-1 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output DP1 --off --output VIRTUAL1 --off ;; ,*) echo "== ! missing or invalid argument ! ==" @@ -156,12 +178,16 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th esac setbg && \ # Fix background if screen size/arangement has changed. - $HOME/.config/polybar/scripts/launch.sh # restart polybar + polybar-msg cmd restart # restart polybar exit 0 #+end_src * =color-picker= - Pick color and copy to clipboard +:PROPERTIES: +:CUSTOM_ID: color-picker +:END: + #+begin_src bash :tangle ~/.local/bin/color-picker - xcolor | xsel -b + xcolor | tr -d '\n' | xsel -b #+end_src diff --git a/binaries.org b/binaries.org index efa6419..b1d0913 100644 --- a/binaries.org +++ b/binaries.org @@ -1,109 +1,14 @@ #+TITLE: Binaries -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:bash :comments both :mkdirp yes #+PROPERTY: header-args:bash+ :shebang "#!/usr/bin/env bash" -:END: - -* =displayselect= - Select Screen -Script taken from Luke Smith. - -#+begin_src bash :tangle ~/.local/bin/displayselect - twoscreen() { # If multi-monitor is selected and there are two screens. - - mirror=$(printf "no\\nyes" | dmenu -i -p "Mirror displays?") - # Mirror displays using native resolution of external display and a scaled - # version for the internal display - if [ "$mirror" = "yes" ]; then - external=$(echo "$screens" | dmenu -i -p "Optimize resolution for:") - internal=$(echo "$screens" | grep -v "$external") - - res_external=$(xrandr --query | sed -n "/^$external/,/\+/p" | \ - tail -n 1 | awk '{print $1}') - res_internal=$(xrandr --query | sed -n "/^$internal/,/\+/p" | \ - tail -n 1 | awk '{print $1}') - - res_ext_x=$(echo "$res_external" | sed 's/x.*//') - res_ext_y=$(echo "$res_external" | sed 's/.*x//') - res_int_x=$(echo "$res_internal" | sed 's/x.*//') - res_int_y=$(echo "$res_internal" | sed 's/.*x//') - - scale_x=$(echo "$res_ext_x / $res_int_x" | bc -l) - scale_y=$(echo "$res_ext_y / $res_int_y" | bc -l) - - xrandr --output "$external" --auto --scale 1.0x1.0 \ - --output "$internal" --auto --same-as "$external" \ - --scale "$scale_x"x"$scale_y" - else - - primary=$(echo "$screens" | dmenu -i -p "Select primary display:") - secondary=$(echo "$screens" | grep -v "$primary") - direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?") - xrandr --output "$primary" --auto --scale 1.0x1.0 --output "$secondary" --"$direction"-of "$primary" --auto --scale 1.0x1.0 - fi - } - - morescreen() { # If multi-monitor is selected and there are more than two screens. - primary=$(echo "$screens" | dmenu -i -p "Select primary display:") - secondary=$(echo "$screens" | grep -v "$primary" | dmenu -i -p "Select secondary display:") - direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?") - tertiary=$(echo "$screens" | grep -v "$primary" | grep -v "$secondary" | dmenu -i -p "Select third display:") - xrandr --output "$primary" --auto --output "$secondary" --"$direction"-of "$primary" --auto --output "$tertiary" --"$(printf "left\\nright" | grep -v "$direction")"-of "$primary" --auto - } - - multimon() { # Multi-monitor handler. - case "$(echo "$screens" | wc -l)" in - 2) twoscreen ;; - ,*) morescreen ;; - esac ;} - - onescreen() { # If only one output available or chosen. - xrandr --output "$1" --auto --scale 1.0x1.0 "$(echo "$allposs" | grep -v "$1" | awk '{print "--output", $1, "--off"}' | paste -sd ' ')" - } - - postrun() { # Stuff to run to clean up. - setbg # Fix background if screen size/arangement has changed. - $HOME/.config/polybar/scripts/launch.sh # restart polybar - { killall dunst ; setsid -f dunst ;} >/dev/null 2>&1 # Restart dunst to ensure proper location on screen - } - - # Get all possible displays - allposs=$(xrandr -q | grep "connected") - - # Get all connected screens. - screens=$(echo "$allposs" | awk '/ connected/ {print $1}') - - # If there's only one screen - [ "$(echo "$screens" | wc -l)" -lt 2 ] && - { onescreen "$screens"; postrun; notify-send "💻 Only one screen detected." "Using it in its optimal settings..."; exit ;} - - # Get user choice including multi-monitor and manual selection: - chosen=$(printf "%s\\nmulti-monitor\\nmanual selection" "$screens" | dmenu -i -p "Select display arangement:") && - case "$chosen" in - "manual selection") arandr ; exit ;; - "multi-monitor") multimon ;; - ,*) onescreen "$chosen" ;; - esac - - postrun -#+end_src * =dmenumount= - Mount USB and Android +:PROPERTIES: +:CUSTOM_ID: dmenumount +:END: + Script taken from Luke Smith. #+begin_src bash :tangle ~/.local/bin/dmenumount @@ -169,6 +74,10 @@ Script taken from Luke Smith. #+end_src * =dmenuumount= - Unmount USB and Android devices +:PROPERTIES: +:CUSTOM_ID: dmenuumount +:END: + Script taken from Luke Smith. #+begin_src bash :tangle ~/.local/bin/dmenuumount @@ -212,18 +121,36 @@ Script taken from Luke Smith. fi #+end_src -* =vpntoggle= - Connect to VPN using NordVPN -#+begin_src bash :tangle ~/.local/bin/vpntoggle +* =nordvpn-toggle= - Connect to VPN using NordVPN +:PROPERTIES: +:CUSTOM_ID: nordvpn-toggle +:END: + +To use this this, =nordvpn= must be installed: =yay -S nordvpn-bin=. + +#+begin_src bash :tangle ~/.local/bin/nordvpn-toggle + tmpfile="/tmp/vpnstatus"; + if [[ $(nordvpn status) == *"Connected"* ]]; then - nordvpn disconnect && dunstify --replace=23198 "VPN" "Disconnected"; + nordvpn disconnect && \ + dunstify --replace=23198 "VPN" "Disconnected" && \ + echo "off" > $tmpfile; else - country=`cat ~/.local/data/nordvpn_countries.txt | sed 's/\s*\t\s*/ /g ; s/\s/\n/g ; s/_/ /g ; /^[a-zA-Z]/!d ; s/\(.*\)/\L\1/' | rofi -i -dmenu | sed 's/\s/_/g'`; - dunstify --replace=23198 "VPN" "Connecting to $country..."; - nordvpn connect $country && dunstify --replace=23198 "VPN" "Connected to $country"; + # Select Country to connect to + country=`cat ~/.local/data/nordvpn_countries.txt | rofi -i -dmenu | sed 's/\s/_/g'`; + dunstify --replace=23198 "VPN" "Connecting to $country..."; + nordvpn connect $country && \ + dunstify --replace=23198 "VPN" "Connected to $country" && \ + echo "on" > $tmpfile; fi #+end_src * =bukurun= - Open link from Buku +:PROPERTIES: +:CUSTOM_ID: bukurun +:END: + +Script taken from [[https://github.com/carnager/buku_run][here]] that acts as a buku frontend using Rofi. #+begin_src bash :tangle ~/.local/bin/bukurun _rofi () { @@ -559,6 +486,9 @@ Script taken from Luke Smith. #+end_src * =i3exit= - Manage lock, suspend, reboot, ... +:PROPERTIES: +:CUSTOM_ID: i3exit +:END: #+begin_src bash :tangle ~/.local/bin/i3exit option=$(echo -e "Lock\nExit\nLogout\nSuspend\nHibernate\nReboot\nShutdown" | rofi -i -dmenu) @@ -568,7 +498,7 @@ Script taken from Luke Smith. ~/.local/bin/lockscreen ;; "Exit") - dm-tool switch-to-greeter + pkill -15 -t tty"$XDG_VTNR" Xorg ;; "Logout") loginctl terminate-session `loginctl session-status | head -n 1 | awk '{print $1}'` @@ -604,8 +534,13 @@ Script taken from Luke Smith. #+end_src * =askpass-rofi= - GUI prompt for passwords +:PROPERTIES: +:CUSTOM_ID: askpass-rofi +:END: + Take password prompt from STDIN, print password to STDOUT. The sed piece just removes the colon from the provided prompt: =rofi -p= already gives us a colon + #+BEGIN_SRC bash :tangle ~/.local/bin/askpass-rofi rofi -dmenu \ -password \ @@ -614,37 +549,55 @@ The sed piece just removes the colon from the provided prompt: =rofi -p= already #+END_SRC * =screenshot= - Take Screenshot +:PROPERTIES: +:CUSTOM_ID: screenshot +:END: #+begin_src bash :tangle ~/.local/bin/screenshot - status=$(echo -e "All\nGUI\nSelection\nCropped\nCopy\nShadow\nActive" | rofi -i -dmenu -p "Type") + # Ask for screenshot type + status=$(echo -e "All\nGUI\nSelection\nCropped\nCopy\nPretty\nShadow\nWindow" | rofi -i -dmenu -p "Type") if [ -z "$status" ]; then - exit; + exit; fi - name=$(echo -e "screenshot-$(date +"%m-%d-%y_%H-%M-%S")" | rofi -i -dmenu -p "Filename") - if [ -z "$name" ]; then - exit; + # Ask for filename if not copying the image + if [[ $status != "Copy" ]]; then + name=$(echo -e "screenshot-$(date +"%m-%d-%y_%H-%M-%S")" | rofi -i -dmenu -p "Filename") + if [ -z "$name" ]; then + exit; + fi + filename=~/Pictures/$name.png fi case "$status" in "All") - maim ~/Pictures/$name.png ;; + maim -u $filename ;; "GUI") - flameshot gui -r > ~/Pictures/$name.png ;; + flameshot gui -r > $filename && \ + pkill flameshot;; "Selection") - maim -s ~/Pictures/$name.png ;; + maim -u -s $filename ;; "Cropped") - maim -s ~/Pictures/$name.png && convert -trim ~/Pictures/$name.png ~/Pictures/$name.png;; + maim -u -s $filename && convert -trim $filename $filename ;; "Copy") - maim -s | xclip -selection clipboard -t image/png ;; + maim -u -s | xclip -selection clipboard -t image/png ;; "Shadow") - maim -st 9999999 | convert - \( +clone -background black -shadow 80x3+5+5 \) +swap -background none -layers merge +repage ~/Pictures/$name.png ;; - "Active") - maim -i $(xdotool getactivewindow) ~/Pictures/$name.png ;; + maim -u -s | convert - \( +clone -background black -shadow 80x3+5+5 \) +swap -background none -layers merge +repage $filename ;; + "Pretty") + maim -u -s $filename && \ + convert $filename \( +clone -alpha extract -draw 'fill black polygon 0,0 0,5 5,0 fill white circle 5,5 5,0' \( +clone -flip \) -compose Multiply -composite \( +clone -flop \) -compose Multiply -composite \) -alpha off -compose CopyOpacity -composite $filename && \ + convert $filename \( +clone -background black -shadow 40x5+0+0 \) +swap -background none -layers merge +repage $filename ;; + "Window") + maim -u -i $(xdotool selectwindow) $filename ;; esac #+end_src * =network-toggle= - Toggle Network +:PROPERTIES: +:CUSTOM_ID: network-toggle +:END: + +Minimal network manager to just toggle the Wifi or Ethernet connection. #+begin_src bash :tangle ~/.local/bin/network-toggle result=$(nmcli device | sed '1d' | dmenu -l 20); @@ -659,11 +612,15 @@ The sed piece just removes the colon from the provided prompt: =rofi -p= already fi #+end_src -* =make-gif= - Make GIF +* =make-gif= - Convert an =MP4= video to =GIF= +:PROPERTIES: +:CUSTOM_ID: make-gif +:END: + +First argument is the =mp4= file and the second argument is the output =gif= file. #+begin_src bash :tangle ~/.local/bin/make-gif palette="/tmp/palette.png" - filters="fps=15,scale=320:-1:flags=lanczos" ffmpeg -v warning -i $1 -vf "$filters,palettegen" -y $palette @@ -671,6 +628,9 @@ The sed piece just removes the colon from the provided prompt: =rofi -p= already #+end_src * =yt-audio= - Download-Audio from youtube +:PROPERTIES: +:CUSTOM_ID: yt-audio +:END: #+begin_src bash :tangle ~/.local/bin/yt-audio if [ $TMUX ]; then @@ -682,6 +642,9 @@ fi #+end_src * =yt-video= - Download-Video from youtube +:PROPERTIES: +:CUSTOM_ID: yt-video +:END: #+begin_src bash :tangle ~/.local/bin/yt-video if [ $TMUX ]; then @@ -692,18 +655,33 @@ else fi #+end_src * =setbg= - Set Background +:PROPERTIES: +:CUSTOM_ID: setbg +:END: + +First argument is either: +- the background file +- a directory, in such case it will pick a random picture file from that directory #+begin_src bash :tangle ~/.local/bin/setbg bgloc="${XDG_CACHE_HOME:-$HOME/.cache/}/bg" + # If the argument is a file [ -f "$1" ] && ln -sf "$(readlink -f "$1")" "$bgloc" + # If the argument is a directory [ -d "$1" ] && ln -sf "$(find "$(readlink -f "$1")" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$bgloc" + # Set the wallpaper xwallpaper --zoom "$bgloc" #+end_src * =insert-unicode= - Insert Unicode Icon +:PROPERTIES: +:CUSTOM_ID: insert-unicode +:END: + +The list of emojis is available [[file:data.org::#emojis][here]]. #+begin_src bash :tangle ~/.local/bin/insert-unicode # Must have xclip installed to even show menu. @@ -723,6 +701,11 @@ fi #+end_src * =insert-nerd-fonts= - Insert Nerd Font Icon +:PROPERTIES: +:CUSTOM_ID: insert-nerd-fonts +:END: + +The list of emojis is available [[file:data.org::#nerd-fonts][here]]. #+begin_src bash :tangle ~/.local/bin/insert-nerd-fonts # Must have xsel installed to even show menu. @@ -742,92 +725,71 @@ fi #+end_src * =linkhandler= - Open with Default application -Inspired from =linkhandler= https://github.com/LukeSmithxyz/voidrice/ -This is used in =newsboat= to handle links +:PROPERTIES: +:CUSTOM_ID: linkhandler +:END: + +Inspired from =linkhandler= script ([[https://github.com/LukeSmithxyz/voidrice/][github]]). +This is used to open any type of file with the wanted program. +It can be used in =newsboat=, =neomutt= and =ranger= for instance. #+begin_src bash :tangle ~/.local/bin/linkhandler [ -z "$1" ] && { "$BROWSER"; exit; } case "$1" in - ,*mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtu.be*|*hooktube.com*|*bitchute.com*) + ,*mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtu.be*) setsid mpv --input-ipc-server=/tmp/mpvsoc$(date +%s) -quiet "$1" >/dev/null 2>&1 & ;; ,*png|*jpg|*jpe|*jpeg|*gif) curl -sL "$1" > "/tmp/$(echo "$1" | sed "s/.*\///")" && sxiv -a "/tmp/$(echo "$1" | sed "s/.*\///")" >/dev/null 2>&1 & ;; ,*mp3|*flac|*opus|*mp3?source*) - setsid tsp curl -LO "$1" >/dev/null 2>&1 & ;; + setsid curl -LO "$1" >/dev/null 2>&1 & ;; ,*) if [ -f "$1" ]; then "$TERMINAL" -e "$EDITOR $1" else setsid $BROWSER "$1" >/dev/null 2>&1 & fi ;; esac #+end_src -* =lockscreen= - LockScreen + +* =lockscreen= - Lock Screen :PROPERTIES: +:CUSTOM_ID: lockscreen :header-args: :tangle ~/.local/bin/lockscreen :END: -First, turn off dunst -#+begin_src bash - killall -SIGUSR1 dunst && echo "off" > /tmp/dunststatus; -#+end_src +A nice lockscreen that uses =i3lock=. +It takes a screenshot, pixelize it and overlay an image in the lockscreens folder. -Turn off the music if it is playing. #+begin_src bash + # First, turn off dunst + killall -SIGUSR1 dunst && echo "off" > /tmp/dunststatus; + + # Turn off the music if it is playing. MPC_STATE=$(mpc | sed -n '2p' | cut -d "[" -f2 | cut -d "]" -f1) if [[ $MPC_STATE == "playing" ]]; then - mpc pause + mpc pause fi -#+end_src -Then take a screenshot and process it. -#+begin_src bash + # Take the screenshot and process it nicely temp_file="/tmp/screen.png" - rm -f $temp_file + maim $temp_file && \ + # Pixelize the Screenshot + convert $temp_file -scale 10% -scale 1000% $temp_file && \ + # Overlay a random image in the lockscreens folder + composite -gravity center $(find ~/.local/data/lockscreens/ -type f | shuf -n 1) $temp_file $temp_file; - maim $temp_file - convert $temp_file -scale 10% -scale 1000% $temp_file -#+end_src - -Finally, lock the screen using =i3lock=. -#+begin_src bash - i3lock --no-unlock-indicator --ignore-empty-password --nofork --image=$temp_file && killall -SIGUSR2 dunst && echo "on" > /tmp/dunststatus -#+end_src - -#+begin_src bash :tangle no - revert() { - xset dpms 0 0 0 - } - trap revert HUP INT TERM - # turn off screen after 5 seconds - xset +dpms dpms 5 5 5 - - # Parameters - temp_file="/tmp/screen.png" - icon="$HOME/Pictures/Evil_Rick_Sprite.png" - width=1920 - height=1080 - blur_factor=6 - lock_blur_factor=0 - - # Take the screen shot, blur the image and add the icon - ffmpeg -f x11grab -video_size "${width}x${height}" -y -i $DISPLAY -i $icon -filter_complex "boxblur=$blur_factor:$blur_factor,overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2,boxblur=$lock_blur_factor:$lock_blur_factor" -vframes 1 $temp_file - - # Alternative - # maim -d 1 $temp_file - # convert -blur 0x8 $temp_file $temp_file - # convert -composite $temp_file $icon -gravity South -geometry -20x1200 $temp_file - - # Lock the screen with the image - i3lock --no-unlock-indicator --ignore-empty-password --show-failed-attempts --nofork --image=$temp_file - - # Remove the screenshot - rm $temp_file - - # Don't turn off screen when back from lock - revert + # Finally, lock the screen using =i3lock= + i3lock --ignore-empty-password --nofork --image=$temp_file && \ + # When unlocking, restart dunst + killall -SIGUSR2 dunst && echo "on" > /tmp/dunststatus #+end_src * =mopidy-restart= - Restart Mopidy +:PROPERTIES: +:CUSTOM_ID: mopidy-restart +:END: + +Sometimes =mopidy= need to be restarted... + #+begin_src bash :tangle ~/.local/bin/mopidy-restart pids=( $(pgrep -f mopidy) ) @@ -836,14 +798,20 @@ Finally, lock the screen using =i3lock=. kill "$pid" fi done - echo "Killed mopidy." + echo "Restarting mopidy..." mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null 2>&1 & echo "Done" #+end_src * =upload= - Upload Script +:PROPERTIES: +:CUSTOM_ID: upload +:END: + +Upload a file to https://0x0.st/ and copy the generated url. + #+begin_src bash :tangle ~/.local/bin/upload if [ $TMUX ]; then tmux split -v -l 1 "curl --progress-bar -F\"file=@$1\" https://0x0.st | xsel -ib;" && tmux select-pane -U @@ -855,6 +823,12 @@ Finally, lock the screen using =i3lock=. #+end_src * =weather= - Display Weather in terminal +:PROPERTIES: +:CUSTOM_ID: weather +:END: + +Get the weather from http://wttr.in/. + #+begin_src bash :tangle ~/.local/bin/weather if [ -n "$*" ]; then address="wttr.in/" @@ -878,16 +852,21 @@ Finally, lock the screen using =i3lock=. #+end_src * =readbib= - Open Bibliography File +:PROPERTIES: +:CUSTOM_ID: readbib +:END: + +List all =pdf= files and open selected one with zathura. + #+begin_src bash :tangle ~/.local/bin/readbib cd ~/Cloud/pdfs/ && ls | rofi -dmenu -lines 20 | xargs -I {} zathura {} #+end_src -* =readnotes= - Open Note File -#+begin_src bash :tangle ~/.local/bin/readnotes - cd ~/Cloud/thesis/ressources/notes/pdfs/ && ls *.pdf | rofi -dmenu -lines 20 | xargs -I {} zathura {} -#+end_src - * =pdf2bib= - Extract bibtex entry from PDF file +:PROPERTIES: +:CUSTOM_ID: pdf2bib +:END: + #+begin_src bash :tangle ~/.local/bin/pdf2bib pdf2doi () { pdfinfo "$1" | grep -io "doi:.*" | grep -Poi "10.\d+/[^\s]+" || \ @@ -919,13 +898,143 @@ Finally, lock the screen using =i3lock=. #+end_src * =pdf2png= - Convert a PDF to PNG +:PROPERTIES: +:CUSTOM_ID: pdf2png +:END: + #+begin_src bash :tangle ~/.local/bin/pdf2png + # Check if the input argumetn is a PDF file if [[ -f "$1" && "$1" == *.pdf ]]; then pdftoppm -png "$1" > "$(echo "$1" | cut -f 1 -d '.' | sed 's/$/.png/')" fi #+end_src +* =convert-file= - Convert any file to another filetype +:PROPERTIES: +:CUSTOM_ID: convert-file +:END: + +#+begin_src bash :tangle ~/.local/bin/convert-file + # Get filename + filename_with_extension=$(basename -- "$1") + # Extract extension of the file + in_ext="${filename_with_extension##*.}" + # filename without extension + filename_without_extension=${filename_with_extension%.*} + + # Convert SVG Files + svg2() { \ + out_ext=$(echo -e "pdf\npng" | rofi -i -dmenu -p "Convert SVG to") + + if [ -z "$out_ext" ]; then + exit; + fi + + case "$out_ext" in + "png") + inkscape --export-type="$out_ext" --export-dpi=200 --export-area-drawing "$filename_with_extension" + ;; + "pdf") + inkscape --export-type="$out_ext" "$filename_with_extension" + # pdf2svg file.pdf file.svg + ;; + esac + } + + # Convert PDF Files + pdf2() { \ + out_ext=$(echo -e "svg\npng" | rofi -i -dmenu -p "Convert PDF to") + + # Ask if crop? + + if [ -z "$out_ext" ]; then + exit; + fi + + case "$out_ext" in + "png") + inkscape --export-type="$out_ext" --export-dpi=200 --export-area-drawing "$filename_with_extension" + ;; + "svg") + inkscape --export-type="$out_ext" "$filename_with_extension" + ;; + esac + } + + # Convert DOCX/PPTX Files + docx2() { \ + out_ext=$(echo -e "pdf" | rofi -i -dmenu -p "Convert DOCX/PPTX to") + + if [ -z "$out_ext" ]; then + exit; + fi + + case "$out_ext" in + "pdf") + lowriter --convert-to pdf "$filename_with_extension" + ;; + esac + } + + # Convert PNG Files + png2() { \ + out_ext=$(echo -e "pdf" | rofi -i -dmenu -p "Convert PNG to") + + if [ -z "$out_ext" ]; then + exit; + fi + + case "$out_ext" in + "pdf") + convert "$filename_with_extension" "$filename_without_extension.pdf" + ;; + esac + } + + # Convert MP4 Files + mp42() { \ + out_ext=$(echo -e "gif" | rofi -i -dmenu -p "Convert MP4 to") + + if [ -z "$out_ext" ]; then + exit; + fi + + case "$out_ext" in + "gif") + make-gif "$filename_with_extension" "$filename_without_extension.gif" + ;; + esac + } + + case "$in_ext" in + "svg") + svg2 + ;; + "pdf") + pdf2 + ;; + "mp4") + mp42 + ;; + "png") + png2 + ;; + "docx") + docx2 + ;; + "pttx") + docx2 + ;; + esac +#+end_src + * =pdf-shrink= - Pdf Shrink +:PROPERTIES: +:CUSTOM_ID: pdf-shrink +:END: + +Simply reduces the size of a given pdf file. + #+begin_src bash :tangle ~/.local/bin/pdf-shrink shrink () { @@ -984,7 +1093,7 @@ Finally, lock the screen using =i3lock=. OFILE="-" fi - # Output resolution defaults to 72 unless given: + # Output resolution defaults to 90 unless given: if [ ! -z "$3" ]; then res="$3" else @@ -996,20 +1105,31 @@ Finally, lock the screen using =i3lock=. check_smaller "$IFILE" "$OFILE" #+end_src * =pdf-delete-annotations= - Delete Annotations from PDFs -From: https://gist.github.com/stefanschmidt/5248592 +:PROPERTIES: +:CUSTOM_ID: pdf-delete-annotations +:END: + +Taken from this [[https://gist.github.com/stefanschmidt/5248592][gist]]. #+begin_src bash :tangle ~/.local/bin/pdf-delete-annotations - pdftk $1 output /tmp/uncompressed.pdf uncompress - LANG=C sed -n '/^\/Annots/!p' /tmp/uncompressed.pdf > /tmp/stripped.pdf - pdftk /tmp/stripped.pdf output $1 compress + # Check if the input argumetn is a PDF file + if [[ -f "$1" && "$1" == *.pdf ]]; then + pdftk $1 output /tmp/uncompressed.pdf uncompress + LANG=C sed -n '/^\/Annots/!p' /tmp/uncompressed.pdf > /tmp/stripped.pdf + pdftk /tmp/stripped.pdf output $1 compress + fi #+end_src * =pdf-delete-first-page= - Delete first page of PDF +:PROPERTIES: +:CUSTOM_ID: pdf-delete-first-page +:END: + The requirement is to have =pdftk= or =stapler= installed. #+begin_src bash :tangle ~/.local/bin/pdf-delete-first-page + # Check if the input argumetn is a PDF file if [[ -f $1 && $1 == *.pdf ]]; then - # Argument if a file if type stapler > /dev/null 2>&1; then stapler del "$1" 1 /tmp/pdftk_out.pdf && mv /tmp/pdftk_out.pdf "$1" elif type pdftk > /dev/null 2>&1; then @@ -1020,18 +1140,27 @@ The requirement is to have =pdftk= or =stapler= installed. fi #+end_src - - * =rofi-calc= - Simple Calculation using Rofi +:PROPERTIES: +:CUSTOM_ID: rofi-calc +:END: + +Run some simple calculations with =rofi=. #+begin_src bash :tangle ~/.local/bin/rofi-calc rofi -show calc -mode calc -no-show-match -no-sort #+end_src * =pass-gen= - Generate Random Alphanumeric Password +:PROPERTIES: +:CUSTOM_ID: pass-gen +:END: #+begin_src bash :tangle ~/.local/bin/pass-gen + # Ask for the wanted number of caracters num=$(rofi -dmenu -p "Number of caracters") + + # Random generation of alphanumeric caracters pass=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) re='^[0-9]+$' @@ -1039,6 +1168,19 @@ The requirement is to have =pdftk= or =stapler= installed. pass=${pass:0:$num} fi + # Send the password to the clipboard printf "$pass" | xclip -sel clip && \ dunstify 'Password' 'Generated' #+end_src + + +* =sxhkd-help= - List of keybindings using Rofi +:PROPERTIES: +:CUSTOM_ID: sxhkd-help +:END: + +#+begin_src bash :tangle ~/.local/bin/sxhkd-help + awk '/^[a-z]/ && last {print "",$0,"\t",last,""} {last=""} /^#/{last=$0}' ~/.config/sxhkd/sxhkdrc{,.i3} | + column -t -s $'\t' | + rofi -dmenu -i -markup-rows -no-show-icons -width 1000 -lines 15 -yoffset 40 +#+end_src diff --git a/bookmarks.org b/bookmarks.org deleted file mode 100644 index 647a07f..0000000 --- a/bookmarks.org +++ /dev/null @@ -1,48 +0,0 @@ -#+TITLE: Bukurun (Bookmark Manager) -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - -#+PROPERTY: header-args :tangle ~/.config/buku_run/config -#+PROPERTY: header-args+ :comments both :mkdirp yes -#+PROPERTY: header-args+ :shebang "#!/usr/bin/env bash" -:END: - -#+BEGIN_SRC conf - _rofi () { - rofi -dmenu -i -no-levenshtein-sort -width 1000 "$@" - } -#+END_SRC - -Display settings -#+BEGIN_SRC conf - display_type=1 - max_str_width=80 -#+END_SRC - -Keybindings -#+BEGIN_SRC conf - switch_view="Alt+Tab" - new_bookmark="Alt+n" - actions="Alt+a" - edit="Alt+e" - delete="Alt+d" -#+END_SRC - -Colors -#+BEGIN_SRC conf - help_color="#2d7ed8" -#+END_SRC diff --git a/bspwm.org b/bspwm.org index 4982eff..794a616 100644 --- a/bspwm.org +++ b/bspwm.org @@ -1,26 +1,10 @@ #+TITLE: BSPWM -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:bash :comments both #+PROPERTY: header-args:bash+ :mkdirp yes #+PROPERTY: header-args:bash+ :shebang "#!/bin/sh" #+PROPERTY: header-args:bash+ :tangle ~/.config/bspwm/bspwmrc -:END: * List Desktops #+begin_src bash @@ -64,6 +48,6 @@ Use =xprop= to obtain information about the window. * Run Polybar and SXHKD #+begin_src bash - $HOME/.config/polybar/scripts/launch.sh + polybar top >>/tmp/polybar.log 2>&1 & sxhkd -m 1 -c ~/.config/sxhkd/sxhkdrc.bspwm & #+end_src diff --git a/calendar.org b/calendar.org index 9e511d2..6570a00 100644 --- a/calendar.org +++ b/calendar.org @@ -1,23 +1,7 @@ #+TITLE:Calendar Configuration -:DRAWER: -#+STARTUP: overview +#+SETUPFILE: ./setup/org-setup-file.org -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: - -* Vdirsyncer +* =vdirsyncer= - Synchronize calendars and contacts :PROPERTIES: :header-args: :tangle ~/.config/vdirsyncer/config :header-args+: :comments both :mkdirp yes :noweb no-export @@ -63,7 +47,7 @@ client_secret = "<>" #+END_SRC -* Khal +* =khal= - CLI calendar application :PROPERTIES: :header-args: :tangle ~/.config/khal/config :header-args+: :comments both :mkdirp yes diff --git a/compositor.org b/compositor.org index 2a8c226..7c5ae54 100644 --- a/compositor.org +++ b/compositor.org @@ -1,24 +1,8 @@ #+TITLE: Picom (Compositor) -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args :tangle ~/.config/picom/picom.conf #+PROPERTY: header-args+ :comments both :mkdirp yes -:END: * Shadow #+BEGIN_SRC conf diff --git a/config.org b/config.org index ec6c0ed..e1b738f 100644 --- a/config.org +++ b/config.org @@ -1,21 +1,5 @@ #+TITLE: Configuration Files -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+SETUPFILE: ./setup/org-setup-file.org * SSH :PROPERTIES: @@ -176,3 +160,35 @@ LC_ALL= #+END_SRC +* =bukurun= Rofi Frontend for Buku (Bookmark Manager) +:PROPERTIES: +:header-args: :tangle ~/.config/buku_run/config +:header-args+: :comments both :mkdirp yes +:header-args+: :shebang "#!/usr/bin/env bash" +:END: + +#+BEGIN_SRC conf + _rofi () { + rofi -dmenu -i -no-levenshtein-sort -width 1000 "$@" + } +#+END_SRC + +Display settings +#+BEGIN_SRC conf + display_type=1 + max_str_width=80 +#+END_SRC + +Keybindings +#+BEGIN_SRC conf + switch_view="Alt+Tab" + new_bookmark="Alt+n" + actions="Alt+a" + edit="Alt+e" + delete="Alt+d" +#+END_SRC + +Colors +#+BEGIN_SRC conf + help_color="#2d7ed8" +#+END_SRC diff --git a/contacts.org b/contacts.org index 5045012..6ea3398 100644 --- a/contacts.org +++ b/contacts.org @@ -1,21 +1,5 @@ -#+TITLE:Calendar Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+TITLE: Contact Configuration +#+SETUPFILE: ./setup/org-setup-file.org * Khard :PROPERTIES: @@ -23,53 +7,50 @@ :header-args+: :comments both :mkdirp yes :END: - #+BEGIN_SRC conf -# example configuration file for khard version >= 0.13.0 -# place it under $HOME/.config/khard/khard.conf +#+BEGIN_SRC conf + [addressbooks] + [[google]] + path = ~/.contacts/default/ -[addressbooks] -[[google]] -path = ~/.contacts/default/ + [general] + debug = no + default_action = list + editor = vim + merge_editor = vimdiff -[general] -debug = no -default_action = list -editor = vim -merge_editor = vimdiff + [contact table] + # display names by first or last name: first_name / last_name + display = first_name + # group by address book: yes / no + group_by_addressbook = no + # reverse table ordering: yes / no + reverse = no + # append nicknames to name column: yes / no + show_nicknames = no + # show uid table column: yes / no + show_uids = yes + # sort by first or last name: first_name / last_name + sort = last_name + # localize dates: yes / no + localize_dates = yes + # set a comma separated list of preferred phone number types in descending priority + # or nothing for non-filtered alphabetical order + preferred_phone_number_type = pref, cell, home + # set a comma separated list of preferred email address types in descending priority + # or nothing for non-filtered alphabetical order + preferred_email_address_type = pref, work, home -[contact table] -# display names by first or last name: first_name / last_name -display = first_name -# group by address book: yes / no -group_by_addressbook = no -# reverse table ordering: yes / no -reverse = no -# append nicknames to name column: yes / no -show_nicknames = no -# show uid table column: yes / no -show_uids = yes -# sort by first or last name: first_name / last_name -sort = last_name -# localize dates: yes / no -localize_dates = yes -# set a comma separated list of preferred phone number types in descending priority -# or nothing for non-filtered alphabetical order -preferred_phone_number_type = pref, cell, home -# set a comma separated list of preferred email address types in descending priority -# or nothing for non-filtered alphabetical order -preferred_email_address_type = pref, work, home - -[vcard] -# extend contacts with your own private objects -# these objects are stored with a leading "X-" before the object name in the vcard files -# every object label may only contain letters, digits and the - character -# example: -# private_objects = Jabber, Skype, Twitter -private_objects = Jabber, Skype, Twitter -# preferred vcard version: 3.0 / 4.0 -preferred_version = 3.0 -# Look into source vcf files to speed up search queries: yes / no -search_in_source_files = no -# skip unparsable vcard files: yes / no -skip_unparsable = no - #+END_SRC + [vcard] + # extend contacts with your own private objects + # these objects are stored with a leading "X-" before the object name in the vcard files + # every object label may only contain letters, digits and the - character + # example: + # private_objects = Jabber, Skype, Twitter + private_objects = Jabber, Skype, Twitter + # preferred vcard version: 3.0 / 4.0 + preferred_version = 3.0 + # Look into source vcf files to speed up search queries: yes / no + search_in_source_files = no + # skip unparsable vcard files: yes / no + skip_unparsable = no +#+END_SRC diff --git a/data.org b/data.org index bcc5e10..5dc6953 100644 --- a/data.org +++ b/data.org @@ -1,26 +1,13 @@ #+TITLE: Data -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:conf :comments none :mkdirp yes -:END: * Nerd Fonts -#+begin_src conf :tangle ~/.local/data/nerd-fonts +:PROPERTIES: +:CUSTOM_ID: nerd-fonts +:END: + +#+begin_src conf :tangle ~/.local/datd/nerd-fonts  - i_dev_bing_small  - i_dev_css_tricks  - i_dev_git @@ -3713,7 +3700,12 @@  - i_weather_moon_alt_waning_crescent_6  - i_weather_moon_alt_new #+end_src + * Emojis +:PROPERTIES: +:CUSTOM_ID: emojis +:END: + #+begin_src conf :tangle ~/.local/data/emojis 😀 grinning face; U+1F600 😃 grinning face with big eyes; U+1F603 @@ -5099,3 +5091,69 @@ 🏳️‍🌈 rainbow flag; U+1F3F3 U+FE0F U+200D U+1F308 🏴‍☠️ pirate flag; U+1F3F4 U+200D U+2620 U+FE0F #+end_src + +* Nordvpn Countries +:PROPERTIES: +:CUSTOM_ID: nordvpn-countries +:END: + +#+begin_src conf :tangle ~/.local/data/nordvpn_countries.txt + Albania + Bulgaria + Denmark + Hong_Kong + Italy + Netherlands + Serbia + Sweden + United_States + Argentina + Canada + Estonia + Hungary + Japan + New_Zealand + Singapore + Switzerland + Vietnam + Australia + Chile + Finland + Iceland + Latvia + North_Macedonia + Slovakia + Taiwan + Austria + Costa_Rica + France + India + Luxembourg + Norway + Slovenia + Thailand + Belgium + Croatia + Georgia + Indonesia + Malaysia + Poland + South_Africa + Turkey + Bosnia_And_Herzegovina + Cyprus + Germany + Ireland + Mexico + Portugal + South_Korea + Ukraine + Brazil + Czech_Republic + Greece + Israel + Moldova + Romania + Spain + United_Kingdom +#+end_src diff --git a/docs/applications.html b/docs/applications.html index 2980f12..486d1cf 100644 --- a/docs/applications.html +++ b/docs/applications.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Desktop file for the applications - - - - - - + +
@@ -26,207 +22,207 @@

Table of Contents

-
-

Mime Applications

-
+
+

Mime Applications

+
-
[Default Applications]
-text/plain=nvim.desktop
-x-scheme-handler/magnet=torrent.desktop;
-text/x-shellscript=nvim.desktop;
-image/png=img.desktop;
-image/jpeg=img.desktop;
-image/gif=img.desktop;
-application/rss+xml=rss.desktop
-x-scheme-handler/mailto=neomutt.desktop
-message/rfc822=neomutt.desktop
-application/x-bittorrent=deluge.desktop
-application/pdf=zathura.desktop
-x-scheme-handler/http=qutebrowser.desktop
-x-scheme-handler/https=qutebrowser.desktop
-x-scheme-handler/ftp=qutebrowser.desktop
-x-scheme-handler/chrome=qutebrowser.desktop
-text/html=qutebrowser.desktop
-application/x-extension-htm=qutebrowser.desktop
-application/x-extension-html=qutebrowser.desktop
-application/x-extension-shtml=qutebrowser.desktop
-application/xhtml+xml=qutebrowser.desktop
-application/x-extension-xhtml=qutebrowser.desktop
-application/x-extension-xht=qutebrowser.desktop
+
[Default Applications]
+text/plain=nvim.desktop
+x-scheme-handler/magnet=torrent.desktop;
+text/x-shellscript=nvim.desktop;
+image/png=img.desktop;
+image/jpeg=img.desktop;
+image/gif=img.desktop;
+application/rss+xml=rss.desktop
+x-scheme-handler/mailto=neomutt.desktop
+message/rfc822=neomutt.desktop
+application/x-bittorrent=deluge.desktop
+application/pdf=zathura.desktop
+x-scheme-handler/http=qutebrowser.desktop
+x-scheme-handler/https=qutebrowser.desktop
+x-scheme-handler/ftp=qutebrowser.desktop
+x-scheme-handler/chrome=qutebrowser.desktop
+text/html=qutebrowser.desktop
+application/x-extension-htm=qutebrowser.desktop
+application/x-extension-html=qutebrowser.desktop
+application/x-extension-shtml=qutebrowser.desktop
+application/xhtml+xml=qutebrowser.desktop
+application/x-extension-xhtml=qutebrowser.desktop
+application/x-extension-xht=qutebrowser.desktop
 
-[Added Associations]
-text/plain=mousepad.desktop;
-application/x-bittorrent=deluge.desktop;
+[Added Associations]
+text/plain=mousepad.desktop;
+application/x-bittorrent=deluge.desktop;
 
-
-

Neomutt

-
+
+

Neomutt

+
-
[Desktop Entry]
-Name=Neomutt
-GenericName=Email client
-Exec=$TERMINAL -e neomutt %u
-Type=Application
-Icon=/usr/share/icons/Papirus/64x64/apps/mutt.svg
-Categories=Network;Email;
-MimeType=message/rfc822;x-scheme-handler/mailto;application/x-xpinstall;
-StartupNotify=true
+
[Desktop Entry]
+Name=Neomutt
+GenericName=Email client
+Exec=$TERMINAL -e neomutt %u
+Type=Application
+Icon=/usr/share/icons/Papirus/64x64/apps/mutt.svg
+Categories=Network;Email;
+MimeType=message/rfc822;x-scheme-handler/mailto;application/x-xpinstall;
+StartupNotify=true
 
-
-

Weechat

-
+
+

Weechat

+
-
[Desktop Entry]
-Encoding=UTF-8
-MultipleArgs=false
-Terminal=false
-Exec=$TERMINAL --class=WeeChat -e 'weechat'
-StartupWMClass=WeeChat
-Icon=/usr/share/icons/Papirus/64x64/apps/weechat.svg
-Type=Application
-Categories=Network;IRCClient;
-StartupNotify=true
-Name=WeeChat
-GenericName=IRC Client
+
[Desktop Entry]
+Encoding=UTF-8
+MultipleArgs=false
+Terminal=false
+Exec=$TERMINAL --class=WeeChat -e 'weechat'
+StartupWMClass=WeeChat
+Icon=/usr/share/icons/Papirus/64x64/apps/weechat.svg
+Type=Application
+Categories=Network;IRCClient;
+StartupNotify=true
+Name=WeeChat
+GenericName=IRC Client
 
-
-

Matlab

-
+
+

Matlab

+
-
[Desktop Entry]
-Version=R2020a
-Type=Application
-Terminal=false
-MimeType=text/x-matlab
-Exec=/usr/local/MATLAB/R2020a/bin/matlab -desktop -nosplash
-Name=MATLAB
-Icon=matlab
-Categories=Development;Math;Science
-Comment=Scientific computing environment
-StartupNotify=true
+
[Desktop Entry]
+Version=R2020a
+Type=Application
+Terminal=false
+MimeType=text/x-matlab
+Exec=/usr/local/MATLAB/R2020a/bin/matlab -desktop -nosplash
+Name=MATLAB
+Icon=matlab
+Categories=Development;Math;Science
+Comment=Scientific computing environment
+StartupNotify=true
 
-
-

Neovim

-
+
+

Neovim

+
-
[Desktop Entry]
-Name=Neovim
-GenericName=Text Editor
-Comment=Edit text files
-Exec=nvim %F
-Terminal=true
-Type=Application
-Keywords=Text;editor;
-Icon=/usr/share/icons/Papirus/48x48/apps/nvim.svg
-Categories=Utility;TextEditor;
-StartupNotify=false
-MimeType=text/english;text/plain;text/x-makefile;
+
[Desktop Entry]
+Name=Neovim
+GenericName=Text Editor
+Comment=Edit text files
+Exec=nvim %F
+Terminal=true
+Type=Application
+Keywords=Text;editor;
+Icon=/usr/share/icons/Papirus/48x48/apps/nvim.svg
+Categories=Utility;TextEditor;
+StartupNotify=false
+MimeType=text/english;text/plain;text/x-makefile;
 
-
-

Images

-
+
+

Images

+
-
[Desktop Entry]
-Type=Application
-Name=Image viewer
-Exec=/usr/bin/sxiv -a %u
+
[Desktop Entry]
+Type=Application
+Name=Image viewer
+Exec=/usr/bin/sxiv -a %u
 
-
-

Org-Protocol

-
+
+

Org-Protocol

+
-
[Desktop Entry]
-Name=org-protocol
-Exec=emacsclient %u
-Icon=emacs-icon
-Type=Application
-Terminal=false
-MimeType=x-scheme-handler/org-protocol;
+
[Desktop Entry]
+Name=org-protocol
+Exec=emacsclient %u
+Icon=emacs-icon
+Type=Application
+Terminal=false
+MimeType=x-scheme-handler/org-protocol;
 
-
-

Ranger

-
+
+

Ranger

+
-
[Desktop Entry]
-Type=Application
-Name=ranger
-Comment=Launches the ranger file manager
-Icon=utilities-terminal
-Terminal=true
-Exec=ranger
-Categories=ConsoleOnly;System;FileTools;FileManager
-MimeType=inode/directory;inode/mount-point;x-scheme-handler/ssh;x-scheme-handler/smb;x-scheme-handler/nfs;x-scheme-handler/ftp;
+
[Desktop Entry]
+Type=Application
+Name=ranger
+Comment=Launches the ranger file manager
+Icon=utilities-terminal
+Terminal=true
+Exec=ranger
+Categories=ConsoleOnly;System;FileTools;FileManager
+MimeType=inode/directory;inode/mount-point;x-scheme-handler/ssh;x-scheme-handler/smb;x-scheme-handler/nfs;x-scheme-handler/ftp;
 
-
-

Emacs Client

-
+
+

Emacs Client

+
-
[Desktop Entry]
-Name=Emacs Client
-Exec=emacsclient -c %u
-Icon=emacs-icon
-Type=Application
-Terminal=false
-MimeType=x-scheme-handler/org-protocol;
-NoDisplay=true
+
[Desktop Entry]
+Name=Emacs Client
+Exec=emacsclient -c %u
+Icon=emacs-icon
+Type=Application
+Terminal=false
+MimeType=x-scheme-handler/org-protocol;
+NoDisplay=true
 
-
-

Torrent with Transmission

-
+
+

Torrent with Transmission

+
-
[Desktop Entry]
-Type=Application
-Name=Torrent
-Exec=tremc %U
+
[Desktop Entry]
+Type=Application
+Name=Torrent
+Exec=tremc %U
 
@@ -234,7 +230,7 @@ Exec=tremc %U

Author: Dehaeze Thomas

-

Created: 2020-05-26 mar. 08:40

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/bash.html b/docs/bash.html index 7126106..aa438bf 100644 --- a/docs/bash.html +++ b/docs/bash.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Bash Configuration - - - - - - + +
@@ -26,75 +22,73 @@

Table of Contents

-
-

Bashrc

-
+
+

~/.bashrc

+
-
-

What does that do?

-
+
+

If not running interactively, don’t do anything

+
[[ $- != *i* ]] && return
 
@@ -102,9 +96,9 @@
-
-

Bash Completion

-
+
+

Bash Completion

+
[ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion
 
@@ -112,9 +106,19 @@
-
-

Ignore case for autocompletion

-
+
+

FZF

+
+
+
source /usr/share/fzf/key-bindings.bash
+
+
+
+
+ +
+

Ignore case for auto-completion

+
bind "set completion-ignore-case on"
 bind "set show-all-if-ambiguous on"
@@ -123,76 +127,33 @@
 
-
-

Use Color

-
+
+

Use Color

+
use_color=true
-alias ls='ls -hN --color=auto --group-directories-first'
-alias grep='grep --colour=auto'
 
-
-

Set colorful PS1 only on colorful terminals.

-
-

-dircolors –print-database uses its own built-in database instead of using /etc/DIR_COLORS. Try to use the external file first to take advantage of user additions. Use internal bash globbing instead of external grep binary. -

- +
+

Some config

+
-
safe_term=${TERM//[^[:alnum:]]/?}   # sanitize TERM
-match_lhs=""
-[[ -f ~/.dir_colors   ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
-[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
-[[ -z ${match_lhs}    ]] \
-  && type -P dircolors >/dev/null \
-  && match_lhs=$(dircolors --print-database)
-[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true
-
-if ${use_color} ; then
-  # Enable colors for ls, etc.  Prefer ~/.dir_colors #64489
-  if type -P dircolors >/dev/null ; then
-    if [[ -f ~/.dir_colors ]] ; then
-      eval $(dircolors -b ~/.dir_colors)
-    elif [[ -f /etc/DIR_COLORS ]] ; then
-      eval $(dircolors -b /etc/DIR_COLORS)
-    fi
-  fi
-
-  if [[ ${EUID} == 0 ]] ; then
-    PS1='\[\033[01;31m\][\h\[\033[01;36m\] \W\[\033[01;31m\]]\$\[\033[00m\] '
-  else
-    PS1='\[\033[01;32m\][\u@\h\[\033[01;37m\] \W\[\033[01;32m\]]\$\[\033[00m\] '
-  fi
-else
-  if [[ ${EUID} == 0 ]] ; then
-    # show root@ when we don't have colors
-    PS1='\u@\h \W \$ '
-  else
-    PS1='\u@\h \w \$ '
-  fi
-fi
-
-
-
-
- -
-

Some config

-
-
-
unset use_color safe_term match_lhs sh
+
# Unset some variables
+unset use_color safe_term match_lhs sh
 
+# Allow local processes with root privileges to connect to the locally running X server
 xhost +local:root > /dev/null 2>&1
 
+# Autocomplete sudo commands
 complete -cf sudo
 
 # Line wrap on window resize
 shopt -s checkwinsize
 
+# Expand Aliases
 shopt -s expand_aliases
 
 # Auto "cd" when entering just a path
@@ -205,9 +166,9 @@ xhost +local:root > /dev/null 2
 
-
-

Prompt

-
+
+

Prompt - PS1

+
export PS1="\[$(tput bold)\]\[$(tput setaf 1)\][\[$(tput setaf 3)\]\u\[$(tput setaf 2)\]@\[$(tput setaf 4)\]\h \[$(tput setaf 5)\]\W\[$(tput setaf 1)\]]\[$(tput setaf 7)\]\\$ \[$(tput sgr0)\]"
 
@@ -215,24 +176,9 @@ xhost +local:root > /dev/null 2
-
-

SSH Agent

-
-
-
# if ! pgrep -u "$USER" ssh-agent > /dev/null; then
-#     ssh-agent > "$XDG_RUNTIME_DIR/ssh-agent.env"
-# fi
-# if [[ ! "$SSH_AUTH_SOCK" ]]; then
-#     eval "$(<"$XDG_RUNTIME_DIR/ssh-agent.env")"
-# fi
-
-
-
-
- -
-

Rebind up and down arrow keys to search through bash history

-
+
+

Rebind up and down arrow keys to search through bash history

+
bind '"\e[A": history-search-backward'
 bind '"\e[B": history-search-forward'
@@ -241,15 +187,17 @@ xhost +local:root > /dev/null 2
 
-
-

Aliases

-
+
+

Aliases

+
-
-

Better defaults for some commands

-
+
+

Better defaults for some commands

+
-
alias cp="cp -i"     # confirm before overwriting something
+
alias ls='ls -hN --color=auto --group-directories-first'
+alias grep='grep --colour=auto'
+alias cp="cp -i"     # confirm before overwriting something
 alias df='df -h'     # human-readable sizes
 alias free='free -m' # show sizes in MB
 alias mutt="neomutt"
@@ -259,9 +207,9 @@ xhost +local:root > /dev/null 2
 
-
-

One letter aliases

-
+
+

One letter aliases

+
alias r="ranger"
 alias t="tmux"
@@ -269,17 +217,15 @@ xhost +local:root > /dev/null 2alias sv='sudo -E nvim'
 alias g="git"
 alias m="neomutt"
-alias y="yadm"
 alias o="xdg-open"
-alias x="sxiv -ft *"
 
-
-

Neovim

-
+
+

Neovim

+
command -v nvim >/dev/null && alias vim="nvim" vimdiff="nvim -d" # Use neovim for vim if present.
 
@@ -287,30 +233,9 @@ xhost +local:root > /dev/null 2
-
-

Magit

-
-
-
# alias magit="emacsclient -create-frame --alternate-editor=\"\" --eval '(magit-status)'"
-alias magit="nvim -c MagitOnly"
-
-
-
-
- -
-

Homelab Relative

-
-
-
alias dlab="aria2p --port 6800 --host http://dl.tdehaeze.xyz --secret $(pass dl.tdehaeze.xyz/tdehaeze | sed -n 1p)"
-
-
-
-
- -
-

Vim-like

-
+
+

Vim-like

+
alias :q=exit
 alias :e=nvim
@@ -319,9 +244,9 @@ xhost +local:root > /dev/null 2
 
-
-

Print each PATH entry on a separate line

-
+
+

Print each PATH entry on a separate line

+
alias path='echo -e ${PATH//:/\\n}'
 
@@ -330,13 +255,13 @@ xhost +local:root > /dev/null 2
-
-

Functions

-
+
+

Functions

+
-
-

Display colors

-
+
+

colors - Display colors

+
colors() {
     local fgc bgc vals seq0
@@ -369,9 +294,9 @@ xhost +local:root > /dev/null 2
 
-
-

Tree display

-
+
+

tre - Tree display

+

tre is a shorthand for tree with hidden files and color enabled, ignoring the .git directory, listing directories first. The output gets piped into @@ -388,9 +313,9 @@ small enough for one screen.

-
-

Create a new directory and enter it

-
+
+

mkd - Create a new directory and enter it

+
function mkd() {
     mkdir -p "$@" && cd "$_";
@@ -400,9 +325,9 @@ small enough for one screen.
 
-
-

Filesize of directory

-
+
+

fs - Filesize of directory

+
function fs() {
     if du -b /dev/null > /dev/null 2>&1; then
@@ -421,9 +346,9 @@ small enough for one screen.
 
-
-

Redirect both standard output and standard error, as well as sending to background

-
+
+

nullify - Redirect both standard output and standard error, as well as sending to background

+
function nullify() {
     "$@" >/dev/null 2>&1
@@ -433,12 +358,13 @@ small enough for one screen.
 
-
-

Send SMS

-
+
+

sms - Send SMS

+

https://doronbehar.com/articles/using-kdeconnect-to-comfortably-send-sms-messages-from-the-shell/#kdeconnects-builtin-sms-interface

+
sms(){
     local args="$@"
@@ -449,10 +375,7 @@ small enough for one screen.
         echo No recipient was chosen >&2
         return
     else
-        # echo "${name}"$'\t'"${phone_number}"$'\t'"${phone_type}" > ${_KDECONNECT_SMS_LAST_RECIPIENT}
         kdeconnect-cli --send-sms "${args}" --destination "${phone_number}" --device 4de3b5de2264a17c
-        # kdeconnect-cli --device ${_KDECONNECT_DEFAULT_DEVICE} --send-sms "${args}" --destination "${phone_number}" && \
-            # echo sent sms message to ${name} | fribidi
     fi
 }
 
@@ -461,9 +384,10 @@ small enough for one screen.
 
-
-

Bash History

-
+ +
+

Bash History

+

Undocumented feature which sets the size to “unlimited”. http://stackoverflow.com/questions/9457233/unlimited-bash-history

@@ -496,9 +420,9 @@ Force prompt to write history after every command. -

Bash Profile

-
+
+

~/.bash_profile

+
[[ -f ~/.profile ]] && . ~/.profile
 [[ -f ~/.bashrc ]] && . ~/.bashrc
@@ -507,14 +431,14 @@ Force prompt to write history after every command. 
-

Profile

-
+
+

~/.profile

+
-
-

QT And GTK Themes

-
+
+

QT And GTK Themes

+
export QT_QPA_PLATFORMTHEME="qt5ct"
 export GTK2_RC_FILES="$HOME/.gtkrc-2.0"
@@ -523,9 +447,9 @@ Force prompt to write history after every command. 
-

Gui program to ask for sudo password

-
+
+

Gui program to ask for sudo password

+
export SUDO_ASKPASS=~/.local/bin/askpass-rofi
 
@@ -533,9 +457,12 @@ Force prompt to write history after every command.
-

Gnome Keyring Daemon

-
+
+

Gnome Keyring Daemon

+
+

+Enable the keyring for applications run through the terminal +

if [ -n "$DESKTOP_SESSION" ];then
     eval $(gnome-keyring-daemon --start)
@@ -546,9 +473,9 @@ Force prompt to write history after every command. 
-

Default

-
+
+

Export some default applications

+
export EDITOR="nvim"
 export TERMINAL="termite"
@@ -560,13 +487,13 @@ Force prompt to write history after every command. 
-

Exports

-
+
+

Exports

+
-
-

Term

-
+
+

Term

+

This is important for termite to work when sshing in remote machines.

@@ -577,9 +504,9 @@ This is important for termite to work when sshing in remote machines.
-
-

XDG Default

-
+
+

XDG Default

+
export XDG_CONFIG_HOME="$HOME/.config"
 
@@ -587,19 +514,9 @@ This is important for termite to work when sshing in remote machines.
-
-

Better yaourt colors

-
-
-
export YAOURT_COLORS="nb=1:pkg=1:ver=1;32:lver=1;45:installed=1;42:grp=1;34:od=1;41;5:votes=1;44:dsc=0:other=1;35"
-
-
-
-
- -
-

Use Ripgrep for FZF

-
+
+

Use Ripgrep for FZF

+
export FZF_DEFAULT_COMMAND='rg --files --no-ignore --hidden --follow --glob "!.git/*"'
 export FZF_DEFAULT_OPTS='--layout=reverse --height=20'
@@ -608,9 +525,9 @@ This is important for termite to work when sshing in remote machines.
 
-
-

Goland

-
+
+

Goland

+
export GOPATH=$HOME/go
 
@@ -618,9 +535,9 @@ This is important for termite to work when sshing in remote machines.
-
-

Latex Path

-
+
+

Latex Path

+
export TEXMFHOME=$HOME/.local/share/texmf
 
@@ -628,36 +545,57 @@ This is important for termite to work when sshing in remote machines.
-
-

Bitwarden Session

-
+
+

Bitwarden Session

+
export BW_SESSION="HH0yycfocRSuGtq/iW1e6v13PQ1sShMXbMhdb/En94S6OcIXFnJlLEyU+dySsmf2YShY4CImoB5FrxgdPsY9Qw=="
 
-
-
-

Path

-
+
+

Python Path

+
-
PATH=$HOME/appimages:$PATH
-PATH=$HOME/.gem/ruby/2.5.0/bin:$PATH
-PATH=$GOPATH:$GOPATH/bin:$PATH
-PATH=~/.local/bin:$PATH
-PATH=~/.emacs.d/bin:$PATH
-export PATH
+
export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3.9/site-packages/configobj"
 
-
-

Input

-
+
+

Path

+
+
+
PATH=$HOME/appimages:$PATH
+PATH=$HOME/.gem/ruby/2.5.0/bin:$PATH
+PATH=$GOPATH:$GOPATH/bin:$PATH
+PATH=~/.emacs.d/bin:$PATH
+export PATH
+
+
+
+
+ +
+

Automatically run startx

+
+
+
if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then
+    exec startx
+fi
+
+
+
+
+
+ +
+

~/.inputrc

+

Completion:

@@ -735,7 +673,7 @@ Don’t echo ^C after Ctrl+C is pressed.

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/binaries-private.html b/docs/binaries-private.html index a57eaa0..d6d585b 100644 --- a/docs/binaries-private.html +++ b/docs/binaries-private.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + My own specific binaries - - - - - - + +
-
-

remote-desktop - Remote Desktop Connect

-
+
+

remote-desktop - Remote Desktop Connect

+
computer=$(echo -e 'RNICE\nPCMEL1\nPCNASS1\nPCMEG01' | dmenu -p 'Computer:' -l 20);
 
@@ -70,9 +67,9 @@ dunstify --replace=89891 
 
-
-

print-rnice - Print on Rnice

-
+
+ +
nbpage=$(echo -e '1\n2\n4' | dmenu -p 'Number of pages per sheet' -l 20);
 sides=$(echo -e 'one-sided\ntwo-sided-long-edge\ntwo-sided-short-edge' | dmenu -p 'Two Sided:' -l 20);
@@ -91,9 +88,9 @@ dunstify --replace=89891 
 
-
-

tmp14 - Mount/Umount tmp_14_days folder

-
+
+

tmp14 - Mount/Umount tmp_14_days folder

+
if [ $1 == "mount" ]; then
     if sshfs -o allow_other,default_permissions -p 5022 dehaeze@firewall.esrf.fr:/tmp_14_days/ ~/mnt/ESRF; then
@@ -114,9 +111,9 @@ dunstify --replace=89891 
 
 
-
-

nas - Interact with the NAS

-
+
+

nas - Interact with the NAS

+

As an alternative, sshfs can be used:

@@ -144,22 +141,31 @@ As an alternative, sshfs can be used:
-
-

torrent-add - Download Torrent

-
+
+

torrent-add - Download Torrent

+
transmission-remote ***REMOVED***:9091 --auth tdehaeze:$(pass nas/transmission | sed -n 1p) -a $1 && \
     dunstify 'Torrent' 'Successfully added' || \
     dunstify 'Torrent' 'Error'
-
 
-
-

note-extract-fig - Extract Figure from note file

-
+
+

dl-add - Direct Download with Aria2

+
+
+
aria2p --port 6800 --host http://dl.tdehaeze.xyz --secret $(pass dl.tdehaeze.xyz/tdehaeze | sed -n 1p) add $1
+
+
+
+
+ +
+

note-extract-fig - Extract Figure from note file

+

Script used to convert a figure drawn on my Boox note2 to a png file that can then be imported into a document.

@@ -177,9 +183,9 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th
-
-

share - Share file with self-hosted transfer.sh

-
+
+

share - Share file with self-hosted transfer.sh

+
if [ $TMUX ]; then
     tmux split -v -l 1 "curl --progress-bar -F\"file=@$1\" https://file.tdehaeze.xyz/ | xsel -ib && dunstify 'Upload' 'Successful' || dunstify --urgency=critical 'Upload' 'Failed';" && tmux select-pane -U
@@ -193,9 +199,9 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th
 
-
-

screen-select - Xrandr pre-defined scripts

-
+
+

screen-select - Xrandr pre-defined scripts

+
option=$(echo -e "Work\nXPS\nHome" | rofi -i -dmenu)
 
@@ -207,15 +213,15 @@ Script used to convert a figure drawn on my Boox note2 to a png file that can th
         xrandr --output eDP1 --primary --mode 1920x1080 --pos 0x0 --rotate normal --output DP1 --off --output DP1-1 --off --output DP1-2 --off --output DP2 --off --output VIRTUAL1 --off
         ;;
     "Home")
-        xrandr --output eDP1 --off --output DP1 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output DP2 --off --output VIRTUAL1 --off
+        xrandr --output eDP1 --off --output DP2-1 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output DP1 --off --output VIRTUAL1 --off
         ;;
     *)
         echo "== ! missing or invalid argument ! =="
         exit 2
 esac
 
-setbg    # Fix background if screen size/arangement has changed.
-$HOME/.config/polybar/scripts/launch.sh # restart polybar
+setbg && \    # Fix background if screen size/arangement has changed.
+  polybar-msg cmd restart # restart polybar
 
 exit 0
 
@@ -223,11 +229,11 @@ $HOME/.config/polybar/scripts/launch.sh <
-
-

color-picker - Pick color and copy to clipboard

-
+
+

color-picker - Pick color and copy to clipboard

+
-
xcolor | xsel -b
+
xcolor | tr -d '\n' | xsel -b
 
@@ -235,7 +241,7 @@ $HOME/.config/polybar/scripts/launch.sh <

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:08

diff --git a/docs/binaries.html b/docs/binaries.html index c40e6db..1e00a7f 100644 --- a/docs/binaries.html +++ b/docs/binaries.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Binaries - - - - - - + +
@@ -26,132 +22,42 @@

Table of Contents

-
-

displayselect - Select Screen

-
-

-Script taken from Luke Smith. -

- -
-
twoscreen() { # If multi-monitor is selected and there are two screens.
-
-    mirror=$(printf "no\\nyes" | dmenu -i -p "Mirror displays?")
-    # Mirror displays using native resolution of external display and a scaled
-    # version for the internal display
-    if [ "$mirror" = "yes" ]; then
-        external=$(echo "$screens" | dmenu -i -p "Optimize resolution for:")
-        internal=$(echo "$screens" | grep -v "$external")
-
-        res_external=$(xrandr --query | sed -n "/^$external/,/\+/p" | \
-            tail -n 1 | awk '{print $1}')
-        res_internal=$(xrandr --query | sed -n "/^$internal/,/\+/p" | \
-            tail -n 1 | awk '{print $1}')
-
-        res_ext_x=$(echo "$res_external" | sed 's/x.*//')
-        res_ext_y=$(echo "$res_external" | sed 's/.*x//')
-        res_int_x=$(echo "$res_internal" | sed 's/x.*//')
-        res_int_y=$(echo "$res_internal" | sed 's/.*x//')
-
-        scale_x=$(echo "$res_ext_x / $res_int_x" | bc -l)
-        scale_y=$(echo "$res_ext_y / $res_int_y" | bc -l)
-
-        xrandr --output "$external" --auto --scale 1.0x1.0 \
-            --output "$internal" --auto --same-as "$external" \
-            --scale "$scale_x"x"$scale_y"
-    else
-
-        primary=$(echo "$screens" | dmenu -i -p "Select primary display:")
-        secondary=$(echo "$screens" | grep -v "$primary")
-        direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?")
-        xrandr --output "$primary" --auto --scale 1.0x1.0 --output "$secondary" --"$direction"-of "$primary" --auto --scale 1.0x1.0
-    fi
-}
-
-morescreen() { # If multi-monitor is selected and there are more than two screens.
-    primary=$(echo "$screens" | dmenu -i -p "Select primary display:")
-    secondary=$(echo "$screens" | grep -v "$primary" | dmenu -i -p "Select secondary display:")
-    direction=$(printf "left\\nright" | dmenu -i -p "What side of $primary should $secondary be on?")
-    tertiary=$(echo "$screens" | grep -v "$primary" | grep -v "$secondary" | dmenu -i -p "Select third display:")
-    xrandr --output "$primary" --auto --output "$secondary" --"$direction"-of "$primary" --auto --output "$tertiary" --"$(printf "left\\nright" | grep -v "$direction")"-of "$primary" --auto
-}
-
-multimon() { # Multi-monitor handler.
-    case "$(echo "$screens" | wc -l)" in
-        2) twoscreen ;;
-        *) morescreen ;;
-    esac ;}
-
-onescreen() { # If only one output available or chosen.
-    xrandr --output "$1" --auto --scale 1.0x1.0 "$(echo "$allposs" | grep -v "$1" | awk '{print "--output", $1, "--off"}' | paste -sd ' ')"
-}
-
-postrun() { # Stuff to run to clean up.
-    setbg    # Fix background if screen size/arangement has changed.
-    $HOME/.config/polybar/scripts/launch.sh # restart polybar
-    { killall dunst ; setsid -f dunst ;} >/dev/null 2>&1 # Restart dunst to ensure proper location on screen
-}
-
-# Get all possible displays
-allposs=$(xrandr -q | grep "connected")
-
-# Get all connected screens.
-screens=$(echo "$allposs" | awk '/ connected/ {print $1}')
-
-# If there's only one screen
-[ "$(echo "$screens" | wc -l)" -lt 2 ] &&
-    { onescreen "$screens"; postrun; notify-send "💻 Only one screen detected." "Using it in its optimal settings...";  exit ;}
-
-# Get user choice including multi-monitor and manual selection:
-chosen=$(printf "%s\\nmulti-monitor\\nmanual selection" "$screens" | dmenu -i -p "Select display arangement:") &&
-    case "$chosen" in
-        "manual selection") arandr ; exit ;;
-        "multi-monitor") multimon ;;
-        *) onescreen "$chosen" ;;
-    esac
-
-postrun
-
-
-
-
- -
-

dmenumount - Mount USB and Android

-
+
+

dmenumount - Mount USB and Android

+

Script taken from Luke Smith.

@@ -221,9 +127,9 @@ Script taken from Luke Smith.
-
-

dmenuumount - Unmount USB and Android devices

-
+
+

dmenuumount - Unmount USB and Android devices

+

Script taken from Luke Smith.

@@ -272,25 +178,40 @@ Script taken from Luke Smith.
-
-

vpntoggle - Connect to VPN using NordVPN

-
+
+

nordvpn-toggle - Connect to VPN using NordVPN

+
+

+To use this this, nordvpn must be installed: yay -S nordvpn-bin. +

+
-
if [[ $(nordvpn status) == *"Connected"* ]]; then
-  nordvpn disconnect && dunstify --replace=23198 "VPN" "Disconnected";
+
tmpfile="/tmp/vpnstatus";
+
+if [[ $(nordvpn status) == *"Connected"* ]]; then
+    nordvpn disconnect && \
+        dunstify --replace=23198 "VPN" "Disconnected" && \
+        echo "off" > $tmpfile;
 else
-  country=`cat ~/.local/data/nordvpn_countries.txt | sed 's/\s*\t\s*/ /g ; s/\s/\n/g ; s/_/ /g ; /^[a-zA-Z]/!d ; s/\(.*\)/\L\1/' | rofi -i -dmenu | sed 's/\s/_/g'`;
-  dunstify --replace=23198 "VPN" "Connecting to $country...";
-  nordvpn connect $country && dunstify --replace=23198 "VPN" "Connected to $country";
+    # Select Country to connect to
+    country=`cat ~/.local/data/nordvpn_countries.txt | rofi -i -dmenu | sed 's/\s/_/g'`;
+    dunstify --replace=23198 "VPN" "Connecting to $country...";
+    nordvpn connect $country && \
+        dunstify --replace=23198 "VPN" "Connected to $country" && \
+        echo "on" > $tmpfile;
 fi
 
-
-

bukurun - Open link from Buku

-
+
+

bukurun - Open link from Buku

+
+

+Script taken from here that acts as a buku frontend using Rofi. +

+
_rofi () {
     rofi -dmenu -i -no-levenshtein-sort -width 1000 "$@"
@@ -627,9 +548,9 @@ Script taken from Luke Smith.
 
-
-

i3exit - Manage lock, suspend, reboot, …

-
+
+

i3exit - Manage lock, suspend, reboot, …

+
option=$(echo -e "Lock\nExit\nLogout\nSuspend\nHibernate\nReboot\nShutdown" | rofi -i -dmenu)
 
@@ -638,7 +559,7 @@ Script taken from Luke Smith.
         ~/.local/bin/lockscreen
         ;;
     "Exit")
-        dm-tool switch-to-greeter
+        pkill -15 -t tty"$XDG_VTNR" Xorg
         ;;
     "Logout")
         loginctl terminate-session `loginctl session-status | head -n 1 | awk '{print $1}'`
@@ -676,13 +597,14 @@ Script taken from Luke Smith.
 
-
-

askpass-rofi - GUI prompt for passwords

-
+
+

askpass-rofi - GUI prompt for passwords

+

Take password prompt from STDIN, print password to STDOUT. The sed piece just removes the colon from the provided prompt: rofi -p already gives us a colon

+
rofi -dmenu \
      -password \
@@ -693,44 +615,58 @@ The sed piece just removes the colon from the provided prompt: rofi -p
 
-
-

screenshot - Take Screenshot

-
+
+

screenshot - Take Screenshot

+
-
status=$(echo -e "All\nGUI\nSelection\nCropped\nCopy\nShadow\nActive" | rofi -i -dmenu -p "Type")
+
# Ask for screenshot type
+status=$(echo -e "All\nGUI\nSelection\nCropped\nCopy\nPretty\nShadow\nWindow" | rofi -i -dmenu -p "Type")
 if [ -z "$status" ]; then
-  exit;
+    exit;
 fi
 
-name=$(echo -e "screenshot-$(date +"%m-%d-%y_%H-%M-%S")" | rofi -i -dmenu -p "Filename")
-if [ -z "$name" ]; then
-  exit;
+# Ask for filename if not copying the image
+if [[ $status != "Copy" ]]; then
+    name=$(echo -e "screenshot-$(date +"%m-%d-%y_%H-%M-%S")" | rofi -i -dmenu -p "Filename")
+    if [ -z "$name" ]; then
+        exit;
+    fi
+    filename=~/Pictures/$name.png
 fi
 
 case "$status" in
     "All")
-        maim ~/Pictures/$name.png ;;
+        maim -u $filename ;;
     "GUI")
-        flameshot gui -r > ~/Pictures/$name.png ;;
+        flameshot gui -r > $filename && \
+            pkill flameshot;;
     "Selection")
-        maim -s ~/Pictures/$name.png ;;
+        maim -u -s $filename ;;
     "Cropped")
-        maim -s ~/Pictures/$name.png && convert -trim ~/Pictures/$name.png ~/Pictures/$name.png;;
+        maim -u -s $filename && convert -trim $filename $filename ;;
     "Copy")
-        maim -s | xclip -selection clipboard -t image/png ;;
+        maim -u -s | xclip -selection clipboard -t image/png ;;
     "Shadow")
-        maim -st 9999999 | convert - \( +clone -background black -shadow 80x3+5+5 \) +swap -background none -layers merge +repage ~/Pictures/$name.png ;;
-    "Active")
-        maim -i $(xdotool getactivewindow) ~/Pictures/$name.png ;;
+        maim -u -s | convert - \( +clone -background black -shadow 80x3+5+5 \) +swap -background none -layers merge +repage $filename ;;
+    "Pretty")
+        maim -u -s $filename && \
+            convert $filename \( +clone  -alpha extract -draw 'fill black polygon 0,0 0,5 5,0 fill white circle 5,5 5,0' \( +clone -flip \) -compose Multiply -composite \( +clone -flop \) -compose Multiply -composite \) -alpha off -compose CopyOpacity -composite $filename && \
+            convert $filename \( +clone -background black -shadow 40x5+0+0 \) +swap -background none -layers merge +repage $filename ;;
+    "Window")
+        maim -u -i $(xdotool selectwindow) $filename ;;
 esac
 
-
-

network-toggle - Toggle Network

-
+
+

network-toggle - Toggle Network

+
+

+Minimal network manager to just toggle the Wifi or Ethernet connection. +

+
result=$(nmcli device | sed '1d' | dmenu -l 20);
 
@@ -747,12 +683,15 @@ The sed piece just removes the colon from the provided prompt: rofi -p
 
-
-

make-gif - Make GIF

-
+
+

make-gif - Convert an MP4 video to GIF

+
+

+First argument is the mp4 file and the second argument is the output gif file. +

+
palette="/tmp/palette.png"
-
 filters="fps=15,scale=320:-1:flags=lanczos"
 
 ffmpeg -v warning -i $1 -vf "$filters,palettegen" -y $palette
@@ -762,9 +701,9 @@ ffmpeg -v warning -i $1 -i $
 
-
-

yt-audio - Download-Audio from youtube

-
+
+

yt-audio - Download-Audio from youtube

+
if [ $TMUX ]; then
     tmux split -v -l 5 "cd ~/Downloads/ && youtube-dl --add-metadata -xic -f bestaudio/best $1" && tmux select-pane -U
@@ -777,9 +716,9 @@ ffmpeg -v warning -i $1 -i $
 
-
-

yt-video - Download-Video from youtube

-
+
+

yt-video - Download-Video from youtube

+
if [ $TMUX ]; then
     tmux split -v -l 5 "cd ~/Downloads/ && youtube-dl --add-metadata -ic $1" && tmux select-pane -U
@@ -791,25 +730,40 @@ ffmpeg -v warning -i $1 -i $
 
-
-

setbg - Set Background

-
+
+

setbg - Set Background

+
+

+First argument is either: +

+
    +
  • the background file
  • +
  • a directory, in such case it will pick a random picture file from that directory
  • +
+
bgloc="${XDG_CACHE_HOME:-$HOME/.cache/}/bg"
 
+# If the argument is a file
 [ -f "$1" ] && ln -sf "$(readlink -f "$1")" "$bgloc"
 
+# If the argument is a directory
 [ -d "$1" ] && ln -sf "$(find "$(readlink -f "$1")" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$bgloc"
 
+# Set the wallpaper
 xwallpaper --zoom "$bgloc"
 
-
-

insert-unicode - Insert Unicode Icon

-
+
+

insert-unicode - Insert Unicode Icon

+
+

+The list of emojis is available here. +

+
# Must have xclip installed to even show menu.
 xclip -h 2>/dev/null || exit 1
@@ -830,9 +784,13 @@ xclip -h 2>/dev/null || 
 
-
-

insert-nerd-fonts - Insert Nerd Font Icon

-
+
+

insert-nerd-fonts - Insert Nerd Font Icon

+
+

+The list of emojis is available here. +

+
# Must have xsel installed to even show menu.
 xsel -h 2>/dev/null || exit 1
@@ -853,24 +811,25 @@ xsel -h 2>/dev/null || 
 
-
-

linkhandler - Open with Default application

-
+
+

linkhandler - Open with Default application

+

-Inspired from linkhandler https://github.com/LukeSmithxyz/voidrice/ -This is used in newsboat to handle links +Inspired from linkhandler script (github). +This is used to open any type of file with the wanted program. +It can be used in newsboat, neomutt and ranger for instance.

[ -z "$1" ] && { "$BROWSER"; exit; }
 
 case "$1" in
-    *mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtu.be*|*hooktube.com*|*bitchute.com*)
+    *mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtu.be*)
         setsid mpv --input-ipc-server=/tmp/mpvsoc$(date +%s) -quiet "$1" >/dev/null 2>&1 & ;;
     *png|*jpg|*jpe|*jpeg|*gif)
         curl -sL "$1" > "/tmp/$(echo "$1" | sed "s/.*\///")" && sxiv -a "/tmp/$(echo "$1" | sed "s/.*\///")"  >/dev/null 2>&1 & ;;
     *mp3|*flac|*opus|*mp3?source*)
-        setsid tsp curl -LO "$1" >/dev/null 2>&1 & ;;
+        setsid curl -LO "$1" >/dev/null 2>&1 & ;;
     *)
         if [ -f "$1" ]; then "$TERMINAL" -e "$EDITOR $1"
         else setsid $BROWSER "$1" >/dev/null 2>&1 & fi ;;
@@ -879,89 +838,50 @@ This is used in newsboat to handle links
 
-
-

lockscreen - LockScreen

-
-

-First, turn off dunst -

-
-
killall -SIGUSR1 dunst && echo "off" > /tmp/dunststatus;
-
-
+
+

lockscreen - Lock Screen

+

-Turn off the music if it is playing. +A nice lockscreen that uses i3lock. +It takes a screenshot, pixelize it and overlay an image in the lockscreens folder.

+
-
MPC_STATE=$(mpc | sed -n '2p' | cut -d "[" -f2 | cut -d "]" -f1)
+
# First, turn off dunst
+killall -SIGUSR1 dunst && echo "off" > /tmp/dunststatus;
+
+# Turn off the music if it is playing.
+MPC_STATE=$(mpc | sed -n '2p' | cut -d "[" -f2 | cut -d "]" -f1)
 if [[ $MPC_STATE == "playing" ]]; then
-  mpc pause
+    mpc pause
 fi
-
-
-

-Then take a screenshot and process it. -

-
-
temp_file="/tmp/screen.png"
-
-rm -f $temp_file
-
-maim $temp_file
-convert $temp_file -scale 10% -scale 1000% $temp_file
-
-
- -

-Finally, lock the screen using i3lock. -

-
-
i3lock --no-unlock-indicator --ignore-empty-password --nofork --image=$temp_file && killall -SIGUSR2 dunst && echo "on" > /tmp/dunststatus
-
-
- -
-
revert() {
-    xset dpms 0 0 0
-}
-trap revert HUP INT TERM
-# turn off screen after 5 seconds
-xset +dpms dpms 5 5 5
-
-# Parameters
+# Take the screenshot and process it nicely
 temp_file="/tmp/screen.png"
-icon="$HOME/Pictures/Evil_Rick_Sprite.png"
-width=1920
-height=1080
-blur_factor=6
-lock_blur_factor=0
+rm -f $temp_file
+maim $temp_file && \
+    # Pixelize the Screenshot
+    convert $temp_file -scale 10% -scale 1000% $temp_file && \
+    # Overlay a random image in the lockscreens folder
+    composite -gravity center $(find ~/.local/data/lockscreens/ -type f | shuf -n 1) $temp_file $temp_file;
 
-# Take the screen shot, blur the image and add the icon
-ffmpeg -f x11grab -video_size "${width}x${height}" -y -i $DISPLAY -i $icon -filter_complex "boxblur=$blur_factor:$blur_factor,overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2,boxblur=$lock_blur_factor:$lock_blur_factor" -vframes 1 $temp_file
-
-# Alternative
-# maim -d 1 $temp_file
-# convert -blur 0x8 $temp_file $temp_file
-# convert -composite $temp_file $icon -gravity South -geometry -20x1200 $temp_file
-
-# Lock the screen with the image
-i3lock --no-unlock-indicator --ignore-empty-password --show-failed-attempts --nofork --image=$temp_file
-
-# Remove the screenshot
-rm $temp_file
-
-# Don't turn off screen when back from lock
-revert
+# Finally, lock the screen using =i3lock=
+i3lock --ignore-empty-password --nofork --image=$temp_file && \
+    # When unlocking, restart dunst
+    killall -SIGUSR2 dunst && echo "on" > /tmp/dunststatus
 
-
-

mopidy-restart - Restart Mopidy

-
+
+

mopidy-restart - Restart Mopidy

+
+

+Sometimes mopidy need to be restarted… +

+
pids=( $(pgrep -f mopidy) )
 
@@ -970,8 +890,8 @@ revert
         kill "$pid"
     fi
 done
-
 echo "Killed mopidy."
+
 echo "Restarting mopidy..."
 mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null 2>&1 &
 echo "Done"
@@ -980,9 +900,13 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null 
-

upload - Upload Script

-
+
+

upload - Upload Script

+
+

+Upload a file to https://0x0.st/ and copy the generated url. +

+
if [ $TMUX ]; then
     tmux split -v -l 1 "curl --progress-bar -F\"file=@$1\" https://0x0.st | xsel -ib;" && tmux select-pane -U
@@ -996,9 +920,13 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null 
-

weather - Display Weather in terminal

-
+
+

weather - Display Weather in terminal

+
+

+Get the weather from http://wttr.in/. +

+
if [ -n "$*" ]; then
     address="wttr.in/"
@@ -1024,9 +952,13 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null 
-

readbib - Open Bibliography File

-
+
+

readbib - Open Bibliography File

+
+

+List all pdf files and open selected one with zathura. +

+
cd ~/Cloud/pdfs/ && ls | rofi -dmenu -lines 20 | xargs -I {} zathura {}
 
@@ -1034,19 +966,9 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null -

readnotes - Open Note File

-
-
-
cd ~/Cloud/thesis/ressources/notes/pdfs/ && ls *.pdf | rofi -dmenu -lines 20 | xargs -I {} zathura {}
-
-
-
-
- -
-

pdf2bib - Extract bibtex entry from PDF file

-
+
+

pdf2bib - Extract bibtex entry from PDF file

+
pdf2doi () {
     pdfinfo "$1" | grep -io "doi:.*" | grep -Poi "10.\d+/[^\s]+" || \
@@ -1080,11 +1002,12 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null 
-

pdf2png - Convert a PDF to PNG

-
+
+

pdf2png - Convert a PDF to PNG

+
-
if [[ -f "$1" && "$1" == *.pdf ]]; then
+
# Check if the input argumetn is a PDF file
+if [[ -f "$1" && "$1" == *.pdf ]]; then
     pdftoppm -png "$1" > "$(echo "$1" | cut -f 1 -d '.' | sed 's/$/.png/')"
 fi
 
@@ -1092,9 +1015,133 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null -

pdf-shrink - Pdf Shrink

-
+
+

convert-file - Convert any file to another filetype

+
+
+
# Get filename
+filename_with_extension=$(basename -- "$1")
+# Extract extension of the file
+in_ext="${filename_with_extension##*.}"
+# filename without extension
+filename_without_extension=${filename_with_extension%.*}
+
+# Convert SVG Files
+svg2() { \
+    out_ext=$(echo -e "pdf\npng" | rofi -i -dmenu -p "Convert SVG to")
+
+    if [ -z "$out_ext" ]; then
+        exit;
+    fi
+
+    case "$out_ext" in
+        "png")
+            inkscape --export-type="$out_ext" --export-dpi=200 --export-area-drawing "$filename_with_extension"
+            ;;
+        "pdf")
+            inkscape --export-type="$out_ext" "$filename_with_extension"
+            # pdf2svg file.pdf file.svg
+            ;;
+    esac
+}
+
+# Convert PDF Files
+pdf2() { \
+    out_ext=$(echo -e "svg\npng" | rofi -i -dmenu -p "Convert PDF to")
+
+    # Ask if crop?
+
+    if [ -z "$out_ext" ]; then
+        exit;
+    fi
+
+    case "$out_ext" in
+        "png")
+            inkscape --export-type="$out_ext" --export-dpi=200 --export-area-drawing "$filename_with_extension"
+            ;;
+        "svg")
+            inkscape --export-type="$out_ext" "$filename_with_extension"
+            ;;
+    esac
+}
+
+# Convert DOCX/PPTX Files
+docx2() { \
+    out_ext=$(echo -e "pdf" | rofi -i -dmenu -p "Convert DOCX/PPTX to")
+
+    if [ -z "$out_ext" ]; then
+        exit;
+    fi
+
+    case "$out_ext" in
+        "pdf")
+            lowriter --convert-to pdf "$filename_with_extension"
+            ;;
+    esac
+}
+
+# Convert PNG Files
+png2() { \
+    out_ext=$(echo -e "pdf" | rofi -i -dmenu -p "Convert PNG to")
+
+    if [ -z "$out_ext" ]; then
+        exit;
+    fi
+
+    case "$out_ext" in
+        "pdf")
+            convert "$filename_with_extension" "$filename_without_extension.pdf"
+            ;;
+    esac
+}
+
+# Convert MP4 Files
+mp42() { \
+    out_ext=$(echo -e "gif" | rofi -i -dmenu -p "Convert MP4 to")
+
+    if [ -z "$out_ext" ]; then
+        exit;
+    fi
+
+    case "$out_ext" in
+        "gif")
+            make-gif "$filename_with_extension" "$filename_without_extension.gif"
+            ;;
+    esac
+}
+
+case "$in_ext" in
+    "svg")
+        svg2
+        ;;
+    "pdf")
+        pdf2
+        ;;
+    "mp4")
+        mp42
+        ;;
+    "png")
+        png2
+        ;;
+    "docx")
+        docx2
+        ;;
+    "pttx")
+        docx2
+        ;;
+esac
+
+
+
+
+ +
+

pdf-shrink - Pdf Shrink

+
+

+Simply reduces the size of a given pdf file. +

+
shrink ()
 {
@@ -1153,7 +1200,7 @@ mopidy --config ~/.config/mopidy/mopidy.conf >/dev/null OFILE="-"
 fi
 
-# Output resolution defaults to 72 unless given:
+# Output resolution defaults to 90 unless given:
 if [ ! -z "$3" ]; then
     res="$3"
 else
@@ -1167,32 +1214,35 @@ check_smaller "
 
-
-

pdf-delete-annotations - Delete Annotations from PDFs

-
+
+

pdf-delete-annotations - Delete Annotations from PDFs

+

-From: https://gist.github.com/stefanschmidt/5248592 +Taken from this gist.

-
pdftk $1 output /tmp/uncompressed.pdf uncompress
-LANG=C sed -n '/^\/Annots/!p' /tmp/uncompressed.pdf > /tmp/stripped.pdf
-pdftk /tmp/stripped.pdf output $1 compress
+
# Check if the input argumetn is a PDF file
+if [[ -f "$1" && "$1" == *.pdf ]]; then
+    pdftk $1 output /tmp/uncompressed.pdf uncompress
+    LANG=C sed -n '/^\/Annots/!p' /tmp/uncompressed.pdf > /tmp/stripped.pdf
+    pdftk /tmp/stripped.pdf output $1 compress
+fi
 
-
-

pdf-delete-first-page - Delete first page of PDF

-
+
+

pdf-delete-first-page - Delete first page of PDF

+

The requirement is to have pdftk or stapler installed.

-
if [[ -f $1 && $1 == *.pdf ]]; then
-    # Argument if a file
+
# Check if the input argumetn is a PDF file
+if [[ -f $1 && $1 == *.pdf ]]; then
     if type stapler > /dev/null 2>&1; then
         stapler del "$1" 1 /tmp/pdftk_out.pdf && mv /tmp/pdftk_out.pdf "$1"
     elif type pdftk > /dev/null 2>&1; then
@@ -1206,11 +1256,13 @@ The requirement is to have pdftk or stapler installed.
 
+
+

rofi-calc - Simple Calculation using Rofi

+
+

+Run some simple calculations with rofi. +

- -
-

rofi-calc - Simple Calculation using Rofi

-
rofi -show calc -mode calc -no-show-match -no-sort
 
@@ -1218,11 +1270,14 @@ The requirement is to have pdftk or stapler installed.
-
-

pass-gen - Generate Random Alphanumeric Password

-
+
+

pass-gen - Generate Random Alphanumeric Password

+
-
num=$(rofi -dmenu -p "Number of caracters")
+
# Ask for the wanted number of caracters
+num=$(rofi -dmenu -p "Number of caracters")
+
+# Random generation of alphanumeric caracters
 pass=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
 
 re='^[0-9]+$'
@@ -1230,16 +1285,30 @@ The requirement is to have pdftk or stapler installed.
     pass=${pass:0:$num}
 fi
 
+# Send the password to the clipboard
 printf "$pass" | xclip -sel clip &&  \
     dunstify 'Password' 'Generated'
 
+ + +
+

sxhkd-help - List of keybindings using Rofi

+
+
+
awk '/^[a-z]/ && last {print "<small>",$0,"\t",last,"</small>"} {last=""} /^#/{last=$0}' ~/.config/sxhkd/sxhkdrc{,.i3} |
+    column -t -s $'\t' |
+    rofi -dmenu -i -markup-rows -no-show-icons -width 1000 -lines 15 -yoffset 40
+
+
+
+

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/bookmarks.html b/docs/bookmarks.html index 8b06486..249b206 100644 --- a/docs/bookmarks.html +++ b/docs/bookmarks.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Bukurun (Bookmark Manager) @@ -60,7 +60,7 @@ Colors

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 14:56

diff --git a/docs/bspwm.html b/docs/bspwm.html index c1b3560..59fa628 100644 --- a/docs/bspwm.html +++ b/docs/bspwm.html @@ -1,251 +1,15 @@ - - + - BSPWM - - - - - - - - + +
@@ -258,18 +22,18 @@ for the JavaScript code in this tag.

Table of Contents

-
-

List Desktops

-
+
+

List Desktops

+
bspc monitor -d code web mail misc figs
 
@@ -277,9 +41,9 @@ for the JavaScript code in this tag.
-
-

Basic Config

-
+
+

Basic Config

+
bspc config border_width         1
 bspc config window_gap           8
@@ -295,9 +59,9 @@ bspc config focus_follows_pointer       true
 
-
-

Colors

-
+
+

Colors

+
bspc config normal_border_color \#32302f
 bspc config focused_border_color \#bdae93
@@ -306,9 +70,9 @@ bspc config focused_border_color \#bdae93
 
-
-

Rules

-
+
+

Rules

+

Use xprop to obtain information about the window.

@@ -329,11 +93,11 @@ bspc rule --add Blueman-manager state=flo
-
-

Run Polybar and SXHKD

-
+
+

Run Polybar and SXHKD

+
-
$HOME/.config/polybar/scripts/launch.sh
+
polybar top >>/tmp/polybar.log 2>&1 &
 sxhkd -m 1 -c ~/.config/sxhkd/sxhkdrc.bspwm &
 
@@ -342,7 +106,7 @@ sxhkd -m 1 -c ~/.config/sxhkd/

Author: Dehaeze Thomas

-

Created: 2020-01-11 sam. 22:19

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/calendar.html b/docs/calendar.html index d899cc9..07c9971 100644 --- a/docs/calendar.html +++ b/docs/calendar.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Calendar Configuration - - - - - - + + -
-

Vdirsyncer

-
+
+

vdirsyncer - Synchronize calendars and contacts

+
-
[general]
-status_path = "~/.config/vdirsyncer/status/"
+
[general]
+status_path = "~/.config/vdirsyncer/status/"
 
-[pair google_calendar]
-a = "google_calendar_remote"
-b = "google_calendar_local"
-collections = ["dehaeze.thomas@gmail.com", "8kjmhe2ar0abnm054ill1fb0gc@group.calendar.google.com"]
-conflict_resolution = "a wins"
+[pair google_calendar]
+a = "google_calendar_remote"
+b = "google_calendar_local"
+collections = ["dehaeze.thomas@gmail.com", "8kjmhe2ar0abnm054ill1fb0gc@group.calendar.google.com"]
+conflict_resolution = "a wins"
 
-[storage google_calendar_remote]
-type = "google_calendar"
-token_file = "~/.config/dotfiles/private/token_file"
-client_id = "188415318767-802h28ig8gromo0f72blrbg6cgcop6m8.apps.googleusercontent.com"
-client_secret = "<<get-password(passname="calendar/google_client_secret")>>"
+[storage google_calendar_remote]
+type = "google_calendar"
+token_file = "~/.config/dotfiles/private/token_file"
+client_id = "188415318767-802h28ig8gromo0f72blrbg6cgcop6m8.apps.googleusercontent.com"
+client_secret = "<<get-password(passname="calendar/google_client_secret")>>"
 
-[storage google_calendar_local]
-type = "filesystem"
-path = "~/.calendars/google/"
-fileext = ".ics"
+[storage google_calendar_local]
+type = "filesystem"
+path = "~/.calendars/google/"
+fileext = ".ics"
 
 
-[pair google_contacts]
-a = "google_contacts_remote"
-b = "google_contacts_local"
-collections = ["from a", "from b"]
-conflict_resolution = "a wins"
+[pair google_contacts]
+a = "google_contacts_remote"
+b = "google_contacts_local"
+collections = ["from a", "from b"]
+conflict_resolution = "a wins"
 
-[storage google_contacts_local]
-type = "filesystem"
-path = "~/.contacts/"
-fileext = ".vcf"
+[storage google_contacts_local]
+type = "filesystem"
+path = "~/.contacts/"
+fileext = ".vcf"
 
-[storage google_contacts_remote]
-type = "google_contacts"
-token_file = "~/.config/dotfiles/private/token_file_carddav"
-client_id = "188415318767-802h28ig8gromo0f72blrbg6cgcop6m8.apps.googleusercontent.com"
-client_secret = "<<get-password(passname="contacts/google_client_secret")>>"
+[storage google_contacts_remote]
+type = "google_contacts"
+token_file = "~/.config/dotfiles/private/token_file_carddav"
+client_id = "188415318767-802h28ig8gromo0f72blrbg6cgcop6m8.apps.googleusercontent.com"
+client_secret = "<<get-password(passname="contacts/google_client_secret")>>"
 
-
-

Khal

-
+
+

khal - CLI calendar application

+
-
[calendars]
+
[calendars]
 
-[[home]]
-path = ~/.calendars/google/dehaeze.thomas@gmail.com/
-color = "#B8BB26"
+[[home]]
+path = ~/.calendars/google/dehaeze.thomas@gmail.com/
+color = "#B8BB26"
 
-[[work]]
-path = ~/.calendars/google/8kjmhe2ar0abnm054ill1fb0gc@group.calendar.google.com/
-color = "#FB4934"
+[[work]]
+path = ~/.calendars/google/8kjmhe2ar0abnm054ill1fb0gc@group.calendar.google.com/
+color = "#FB4934"
 
-[highlight_days]
-multiple = "#FABD2F"
+[highlight_days]
+multiple = "#FABD2F"
 
-[default]
-highlight_event_days = True
+[default]
+highlight_event_days = True
 
-[locale]
-local_timezone= Europe/Berlin
-default_timezone= Europe/Berlin
-timeformat= %H:%M
-dateformat= %d.%m.
-longdateformat= %d.%m.%Y
-datetimeformat= %d.%m. %H:%M
-longdatetimeformat= %d.%m.%Y %H:%M
+[locale]
+local_timezone= Europe/Berlin
+default_timezone= Europe/Berlin
+timeformat= %H:%M
+dateformat= %d.%m.
+longdateformat= %d.%m.%Y
+datetimeformat= %d.%m. %H:%M
+longdatetimeformat= %d.%m.%Y %H:%M
 
-[keybindings]
-delete = d
-today = .
-new = c
+[keybindings]
+delete = d
+today = .
+new = c
 
@@ -118,7 +114,7 @@ new = c

Author: Dehaeze Thomas

-

Created: 2020-05-26 mar. 08:39

+

Created: 2021-01-01 ven. 20:08

diff --git a/docs/compositor.html b/docs/compositor.html index 65134cf..c1c6132 100644 --- a/docs/compositor.html +++ b/docs/compositor.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Picom (Compositor) - - - - - - + +
@@ -26,18 +22,18 @@

Table of Contents

-
-

Shadow

-
+
+

Shadow

+
shadow = true;
 shadow-radius = 12;
@@ -57,9 +53,9 @@
 
-
-

Opacity

-
+
+

Opacity

+
inactive-opacity = 1.0;
 frame-opacity = 1.0;
@@ -69,9 +65,9 @@
 
-
-

Fading

-
+
+

Fading

+
fading = false;
 fade-in-step = 0.03;
@@ -81,9 +77,9 @@
 
-
-

Other

-
+
+

Other

+
backend = "xrender";
 mark-wmwin-focused = true;
@@ -96,9 +92,9 @@
 
-
-

Window Type Setting

-
+
+

Window Type Setting

+
wintypes:
 {
@@ -113,7 +109,7 @@
 

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/config.html b/docs/config.html index 54b7887..7a3ef22 100644 --- a/docs/config.html +++ b/docs/config.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Configuration Files - - - - - - + + -
-

SSH

-
+
+

SSH

+
AddKeysToAgent  yes
 
@@ -76,9 +73,9 @@ Host nas
 
-
-

Font

-
+
+

Font

+
<?xml version='1.0'?>
 <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
@@ -107,9 +104,9 @@ Host nas
 
-
-

GnuPG

-
+
+

GnuPG

+
default-cache-ttl 60480000
 max-cache-ttl 60480000
@@ -118,9 +115,9 @@ max-cache-ttl 60480000
 
-
-

Redshift

-
+
+

Redshift

+
[redshift]
 temp-day=5700
@@ -143,9 +140,9 @@ max-cache-ttl 60480000
 
-
-

dmenu

-
+
+

dmenu

+
# define the font for dmenu to be used
 DMENU_FN="Hack Nerd Font 12"
@@ -172,9 +169,9 @@ max-cache-ttl 60480000
 
-
-

Locale

-
+
+

Locale

+
LANG=en_US.UTF-8
 LC_CTYPE="en_US.UTF-8"
@@ -194,10 +191,51 @@ max-cache-ttl 60480000
 
+ +
+

bukurun Rofi Frontend for Buku (Bookmark Manager)

+
+
+
_rofi () {
+    rofi -dmenu -i -no-levenshtein-sort -width 1000 "$@"
+}
+
+
+ +

+Display settings +

+
+
display_type=1
+max_str_width=80
+
+
+ +

+Keybindings +

+
+
switch_view="Alt+Tab"
+new_bookmark="Alt+n"
+actions="Alt+a"
+edit="Alt+e"
+delete="Alt+d"
+
+
+ +

+Colors +

+
+
help_color="#2d7ed8"
+
+
+
+

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/contacts.html b/docs/contacts.html index ec4c65e..8a1ad44 100644 --- a/docs/contacts.html +++ b/docs/contacts.html @@ -1,229 +1,15 @@ - - + - -Calendar Configuration +Contact Configuration - - - - - - - - + +
@@ -231,24 +17,21 @@ | HOME
-

Calendar Configuration

+

Contact Configuration

Table of Contents

-
-

Khard

-
+
+

Khard

+
-
# example configuration file for khard version >= 0.13.0
-# place it under $HOME/.config/khard/khard.conf
-
-[addressbooks]
+
[addressbooks]
 [[google]]
 path = ~/.contacts/default/
 
@@ -300,7 +83,7 @@
 

Author: Dehaeze Thomas

-

Created: 2020-03-01 dim. 22:50

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/css/htmlize.css b/docs/css/htmlize.css deleted file mode 100644 index 0b32a03..0000000 --- a/docs/css/htmlize.css +++ /dev/null @@ -1,145 +0,0 @@ -.org-bold { /* bold */ font-weight: bold; } -.org-bold-italic { /* bold-italic */ font-weight: bold; font-style: italic; } -.org-buffer-menu-buffer { /* buffer-menu-buffer */ font-weight: bold; } -.org-builtin { /* font-lock-builtin-face */ color: #7a378b; } -.org-button { /* button */ text-decoration: underline; } -.org-calendar-today { /* calendar-today */ text-decoration: underline; } -.org-change-log-acknowledgement { /* change-log-acknowledgement */ color: #b22222; } -.org-change-log-conditionals { /* change-log-conditionals */ color: #a0522d; } -.org-change-log-date { /* change-log-date */ color: #8b2252; } -.org-change-log-email { /* change-log-email */ color: #a0522d; } -.org-change-log-file { /* change-log-file */ color: #0000ff; } -.org-change-log-function { /* change-log-function */ color: #a0522d; } -.org-change-log-list { /* change-log-list */ color: #a020f0; } -.org-change-log-name { /* change-log-name */ color: #008b8b; } -.org-comint-highlight-input { /* comint-highlight-input */ font-weight: bold; } -.org-comint-highlight-prompt { /* comint-highlight-prompt */ color: #00008b; } -.org-comment { /* font-lock-comment-face */ color: #999988; font-style: italic; } -.org-comment-delimiter { /* font-lock-comment-delimiter-face */ color: #999988; font-style: italic; } -.org-completions-annotations { /* completions-annotations */ font-style: italic; } -.org-completions-common-part { /* completions-common-part */ color: #000000; background-color: #ffffff; } -.org-completions-first-difference { /* completions-first-difference */ font-weight: bold; } -.org-constant { /* font-lock-constant-face */ color: #008b8b; } -.org-diary { /* diary */ color: #ff0000; } -.org-diff-context { /* diff-context */ color: #7f7f7f; } -.org-diff-file-header { /* diff-file-header */ background-color: #b3b3b3; font-weight: bold; } -.org-diff-function { /* diff-function */ background-color: #cccccc; } -.org-diff-header { /* diff-header */ background-color: #cccccc; } -.org-diff-hunk-header { /* diff-hunk-header */ background-color: #cccccc; } -.org-diff-index { /* diff-index */ background-color: #b3b3b3; font-weight: bold; } -.org-diff-nonexistent { /* diff-nonexistent */ background-color: #b3b3b3; font-weight: bold; } -.org-diff-refine-change { /* diff-refine-change */ background-color: #d9d9d9; } -.org-dired-directory { /* dired-directory */ color: #0000ff; } -.org-dired-flagged { /* dired-flagged */ color: #ff0000; font-weight: bold; } -.org-dired-header { /* dired-header */ color: #228b22; } -.org-dired-ignored { /* dired-ignored */ color: #7f7f7f; } -.org-dired-mark { /* dired-mark */ color: #008b8b; } -.org-dired-marked { /* dired-marked */ color: #ff0000; font-weight: bold; } -.org-dired-perm-write { /* dired-perm-write */ color: #b22222; } -.org-dired-symlink { /* dired-symlink */ color: #a020f0; } -.org-dired-warning { /* dired-warning */ color: #ff0000; font-weight: bold; } -.org-doc { /* font-lock-doc-face */ color: #8b2252; } -.org-escape-glyph { /* escape-glyph */ color: #a52a2a; } -.org-file-name-shadow { /* file-name-shadow */ color: #7f7f7f; } -.org-flyspell-duplicate { /* flyspell-duplicate */ color: #cdad00; font-weight: bold; text-decoration: underline; } -.org-flyspell-incorrect { /* flyspell-incorrect */ color: #ff4500; font-weight: bold; text-decoration: underline; } -.org-fringe { /* fringe */ background-color: #f2f2f2; } -.org-function-name { /* font-lock-function-name-face */ color: teal; } -.org-header-line { /* header-line */ color: #333333; background-color: #e5e5e5; } -.org-help-argument-name { /* help-argument-name */ font-style: italic; } -.org-highlight { /* highlight */ background-color: #b4eeb4; } -.org-holiday { /* holiday */ background-color: #ffc0cb; } -.org-isearch { /* isearch */ color: #b0e2ff; background-color: #cd00cd; } -.org-isearch-fail { /* isearch-fail */ background-color: #ffc1c1; } -.org-italic { /* italic */ font-style: italic; } -.org-keyword { /* font-lock-keyword-face */ color: #0086b3; } -.org-lazy-highlight { /* lazy-highlight */ background-color: #afeeee; } -.org-link { /* link */ color: #0000ff; text-decoration: underline; } -.org-link-visited { /* link-visited */ color: #8b008b; text-decoration: underline; } -.org-log-edit-header { /* log-edit-header */ color: #a020f0; } -.org-log-edit-summary { /* log-edit-summary */ color: #0000ff; } -.org-log-edit-unknown-header { /* log-edit-unknown-header */ color: #b22222; } -.org-match { /* match */ background-color: #ffff00; } -.org-next-error { /* next-error */ background-color: #eedc82; } -.org-nobreak-space { /* nobreak-space */ color: #a52a2a; text-decoration: underline; } -.org-org-archived { /* org-archived */ color: #7f7f7f; } -.org-org-block { /* org-block */ color: #7f7f7f; } -.org-org-block-begin-line { /* org-block-begin-line */ color: #b22222; } -.org-org-block-end-line { /* org-block-end-line */ color: #b22222; } -.org-org-checkbox { /* org-checkbox */ font-weight: bold; } -.org-org-checkbox-statistics-done { /* org-checkbox-statistics-done */ color: #228b22; font-weight: bold; } -.org-org-checkbox-statistics-todo { /* org-checkbox-statistics-todo */ color: #ff0000; font-weight: bold; } -.org-org-clock-overlay { /* org-clock-overlay */ background-color: #ffff00; } -.org-org-code { /* org-code */ color: #7f7f7f; } -.org-org-column { /* org-column */ background-color: #e5e5e5; } -.org-org-column-title { /* org-column-title */ background-color: #e5e5e5; font-weight: bold; text-decoration: underline; } -.org-org-date { /* org-date */ color: #a020f0; text-decoration: underline; } -.org-org-document-info { /* org-document-info */ color: #191970; } -.org-org-document-info-keyword { /* org-document-info-keyword */ color: #7f7f7f; } -.org-org-document-title { /* org-document-title */ color: #191970; font-size: 144%; font-weight: bold; } -.org-org-done { /* org-done */ color: #228b22; font-weight: bold; } -.org-org-drawer { /* org-drawer */ color: #0000ff; } -.org-org-ellipsis { /* org-ellipsis */ color: #b8860b; text-decoration: underline; } -.org-org-footnote { /* org-footnote */ color: #a020f0; text-decoration: underline; } -.org-org-formula { /* org-formula */ color: #b22222; } -.org-org-headline-done { /* org-headline-done */ color: #bc8f8f; } -.org-org-hide { /* org-hide */ color: #ffffff; } -.org-org-latex-and-export-specials { /* org-latex-and-export-specials */ color: #8b4513; } -.org-org-level-1 { /* org-level-1 */ color: #0000ff; } -.org-org-level-2 { /* org-level-2 */ color: #a0522d; } -.org-org-level-3 { /* org-level-3 */ color: #a020f0; } -.org-org-level-4 { /* org-level-4 */ color: #b22222; } -.org-org-level-5 { /* org-level-5 */ color: #228b22; } -.org-org-level-6 { /* org-level-6 */ color: #008b8b; } -.org-org-level-7 { /* org-level-7 */ color: #7a378b; } -.org-org-level-8 { /* org-level-8 */ color: #8b2252; } -.org-org-link { /* org-link */ color: #0000ff; text-decoration: underline; } -.org-org-meta-line { /* org-meta-line */ color: #b22222; } -.org-org-mode-line-clock { /* org-mode-line-clock */ color: #000000; background-color: #bfbfbf; } -.org-org-mode-line-clock-overrun { /* org-mode-line-clock-overrun */ color: #000000; background-color: #ff0000; } -.org-org-quote { /* org-quote */ color: #7f7f7f; } -.org-org-scheduled { /* org-scheduled */ color: #006400; } -.org-org-scheduled-previously { /* org-scheduled-previously */ color: #b22222; } -.org-org-scheduled-today { /* org-scheduled-today */ color: #006400; } -.org-org-sexp-date { /* org-sexp-date */ color: #a020f0; } -.org-org-special-keyword { /* org-special-keyword */ color: #a020f0; } -.org-org-table { /* org-table */ color: #0000ff; } -.org-org-tag { /* org-tag */ font-weight: bold; } -.org-org-target { /* org-target */ text-decoration: underline; } -.org-org-time-grid { /* org-time-grid */ color: #b8860b; } -.org-org-todo { /* org-todo */ color: #ff0000; font-weight: bold; } -.org-org-upcoming-deadline { /* org-upcoming-deadline */ color: #b22222; } -.org-org-verbatim { /* org-verbatim */ color: #7f7f7f; } -.org-org-verse { /* org-verse */ color: #7f7f7f; } -.org-org-warning { /* org-warning */ color: #ff0000; font-weight: bold; } -.org-outline-1 { /* outline-1 */ color: #0000ff; } -.org-outline-2 { /* outline-2 */ color: #a0522d; } -.org-outline-3 { /* outline-3 */ color: #a020f0; } -.org-outline-4 { /* outline-4 */ color: #b22222; } -.org-outline-5 { /* outline-5 */ color: #228b22; } -.org-outline-6 { /* outline-6 */ color: #008b8b; } -.org-outline-7 { /* outline-7 */ color: #7a378b; } -.org-outline-8 { /* outline-8 */ color: #8b2252; } -.org-preprocessor { /* font-lock-preprocessor-face */ color: #7a378b; } -.org-query-replace { /* query-replace */ color: #b0e2ff; background-color: #cd00cd; } -.org-regexp-grouping-backslash { /* font-lock-regexp-grouping-backslash */ font-weight: bold; } -.org-regexp-grouping-construct { /* font-lock-regexp-grouping-construct */ font-weight: bold; } -.org-region { /* region */ background-color: #eedc82; } -.org-secondary-selection { /* secondary-selection */ background-color: #ffff00; } -.org-shadow { /* shadow */ color: #7f7f7f; } -.org-show-paren-match { /* show-paren-match */ background-color: #40e0d0; } -.org-show-paren-mismatch { /* show-paren-mismatch */ color: #ffffff; background-color: #a020f0; } -.org-string { /* font-lock-string-face */ color: #dd1144; } -.org-tool-bar { /* tool-bar */ color: #000000; background-color: #bfbfbf; } -.org-tooltip { /* tooltip */ color: #000000; background-color: #ffffe0; } -.org-trailing-whitespace { /* trailing-whitespace */ background-color: #ff0000; } -.org-type { /* font-lock-type-face */ color: #228b22; } -.org-underline { /* underline */ text-decoration: underline; } -.org-variable-name { /* font-lock-variable-name-face */ color: teal; } -.org-warning { /* font-lock-warning-face */ color: #ff0000; font-weight: bold; } -.org-widget-button { /* widget-button */ font-weight: bold; } -.org-widget-button-pressed { /* widget-button-pressed */ color: #ff0000; } -.org-widget-documentation { /* widget-documentation */ color: #006400; } -.org-widget-field { /* widget-field */ background-color: #d9d9d9; } -.org-widget-inactive { /* widget-inactive */ color: #7f7f7f; } -.org-widget-single-line-field { /* widget-single-line-field */ background-color: #d9d9d9; } diff --git a/docs/css/readtheorg.css b/docs/css/readtheorg.css deleted file mode 100644 index 1690bd0..0000000 --- a/docs/css/readtheorg.css +++ /dev/null @@ -1,1095 +0,0 @@ -@import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic|Roboto+Slab:400,700|Inconsolata:400,700); -@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css); - -h1,h2,h3,h4,h5,h6,legend{ - font-family:"Roboto Slab","ff-tisa-web-pro","Georgia",Arial,sans-serif; - font-weight:700; - margin-top:0; -} - -h1{ - font-size:175%; -} - -.subtitle{ - font-size:95%; /* of h1 */ -} - -h2{ - font-size:150%; -} - -h3{ - font-size:125%; -} - -h4{ - font-size:115%; -} - -h5{ - font-size:110%; -} - -h6{ - font-size:100%; -} - -h4,h5,h6{ - color:#2980B9; - font-weight:300; -} - -html{ - -ms-text-size-adjust:100%; - -webkit-text-size-adjust:100%; - font-size:100%; - height:100%; - overflow-x:hidden; -} - -body{ - background:#edf0f2; - color:#404040; - font-family:"Lato","proxima-nova","Helvetica Neue",Arial,sans-serif; - font-weight:normal; - margin:0; - min-height:100%; - overflow-x:hidden; -} - -#content{ - background:#fcfcfc; - height:100%; - margin-left:300px; - /* margin:auto; */ - max-width:1200px; - min-height:100%; - padding:1.618em 3.236em; -} - -p{ - font-size:16px; - line-height:24px; - margin:0px 0px 24px 0px; -} - -b,strong{ - font-weight:bold} - -blockquote{ - background-color: #F0F0F0; - border-left:5px solid #CCCCCC; - font-style:italic; - line-height:24px; - margin:0px 0px 24px 0px; - /* margin-left:24px; */ - padding: 6px 20px; -} - -ul,ol,dl{ - line-height:24px; - list-style-image:none; - /* list-style:none; */ - margin:0px 0px 24px 0px; - padding:0; -} - -li{ - margin-left: 24px; -} - -dd{ - margin:0; -} - -#content .section ul,#content .toctree-wrapper ul,article ul{ - list-style:disc; - line-height:24px; - margin-bottom:24px} - -#content .section ul li,#content .toctree-wrapper ul li,article ul li{ - list-style:disc; - margin-left:24px} - -#content .section ul li p:last-child,#content .toctree-wrapper ul li p:last-child,article ul li p:last-child{ - margin-bottom:0} - -#content .section ul li ul,#content .toctree-wrapper ul li ul,article ul li ul{ - margin-bottom:0} - -#content .section ul li li,#content .toctree-wrapper ul li li,article ul li li{ - list-style:circle} - -#content .section ul li li li,#content .toctree-wrapper ul li li li,article ul li li li{ - list-style:square} - -#content .section ul li ol li,#content .toctree-wrapper ul li ol li,article ul li ol li{ - list-style:decimal} - -#content .section ol,#content ol,article ol{ - list-style:decimal; - line-height:24px; - margin-bottom:24px} - -#content .section ol li,#content ol li,article ol li{ - list-style:decimal; - margin-left:24px} - -#content .section ol li p:last-child,#content ol li p:last-child,article ol li p:last-child{ - margin-bottom:0} - -#content .section ol li ul,#content ol li ul,article ol li ul{ - margin-bottom:0} - -#content .section ol li ul li,#content ol li ul li,article ol li ul li{ - list-style:disc} - -dl dt{ - font-weight:bold; -} - -dl p,dl table,dl ul,dl ol{ - margin-bottom:12px !important; -} - -dl dd{ - margin:0 0 12px 24px; -} - -@media print{ - .codeblock,pre.src{ - white-space:pre.src-wrap} -} - -@media print{ - html,body,section{ - background:none !important} - - *{ - box-shadow:none !important; - text-shadow:none !important; - filter:none !important; - -ms-filter:none !important} - - a,a:visited{ - text-decoration:underline} - - pre.src,blockquote{ - page-break-inside:avoid} - - thead{ - display:table-header-group} - - tr,img{ - page-break-inside:avoid} - - img{ - max-width:100% !important} - - @page{ - margin:0.5cm} - - p,h2,h3{ - orphans:3; - widows:3} - - h2,h3{ - page-break-after:avoid} -} - -@media print{ - #postamble{ - display:none} - - #content{ - margin-left:0} -} - -@media print{ - #table-of-contents{ - display:none} - - @page{ - size: auto; - margin: 25mm 25mm 25mm 25mm;} - - body { - margin: 0px;} -} - -@media screen and (max-width: 768px){ -} - -@media only screen and (max-width: 480px){ -} - -@media screen and (max-width: 768px){ - .tablet-hide{ - display:none} -} - -@media screen and (max-width: 480px){ - .mobile-hide{ - display:none} -} - -@media screen and (max-width: 480px){ -} - -@media screen and (max-width: 768px){ - #content{ - margin-left:0} - - #content #content{ - padding:1.618em} - - #content.shift{ - position:fixed; - min-width:100%; - left:85%; - top:0; - height:100%; - overflow:hidden} -} - -@media screen and (min-width: 1400px){ - #content{ - background:rgba(0,0,0,0.05)} - - #content{ - background:#fcfcfc} -} - -@media screen and (max-width: 768px){ - #copyright{ - width:85%; - display:none} - - #copyright.shift{ - display:block} - - img{ - width:100%; - height:auto} -} - -@media screen and (max-width: 480px){ - #content .sidebar{ - width:100%} -} - -code{ - background:#fff; - border:solid 1px #e1e4e5; - /* color:#000; for clickable code */ - font-family:Consolas,"Andale Mono WT","Andale Mono","Lucida Console","Lucida Sans Typewriter","DejaVu Sans Mono","Bitstream Vera Sans Mono","Liberation Mono","Nimbus Mono L",Monaco,"Courier New",Courier,monospace; - font-size:75%; - max-width:100%; - overflow-x:auto; - padding:0 5px; - white-space:nowrap; -} - -.codeblock-example{ - border:1px solid #e1e4e5; - border-bottom:none; - padding:24px; - padding-top:48px; - font-weight:500; - background:#fff; - position:relative} - -.codeblock-example:after{ - content:"Example"; - position:absolute; - top:0px; - left:0px; - background:#9B59B6; - color:#fff; - padding:6px 12px} - -.codeblock-example.prettyprint-example-only{ - border:1px solid #e1e4e5; - margin-bottom:24px} - -.codeblock,pre.src,#content .literal-block{ - border:1px solid #e1e4e5; - padding:12px; - overflow-x:auto; - background:#fff; - margin:1px 0 24px 0} - -pre.src{ - /* color:#404040; */ - display:block; - font-family:Consolas,"Andale Mono WT","Andale Mono","Lucida Console","Lucida Sans Typewriter","DejaVu Sans Mono","Bitstream Vera Sans Mono","Liberation Mono","Nimbus Mono L",Monaco,"Courier New",Courier,monospace; - font-size:12px; - line-height:1.5; - margin:1px 0px 24px 0px; - overflow:auto; - padding:12px; - white-space:pre; -} - -.example{ - background:#f3f6f6; - border:1px solid #e1e4e5; - color:#404040; - font-size: 12px; - line-height: 1.5; - margin-bottom:24px; - padding:12px; -} - -table{ - border-collapse:collapse; - border-spacing:0; - empty-cells:show; - margin-bottom:24px; - border-bottom:1px solid #e1e4e5; -} - -td{ - vertical-align:top} - -table td,table th{ - font-size:90%; - margin:0; - overflow:visible; - padding:8px 16px; - background-color:white; - border:1px solid #e1e4e5; -} - -table thead th{ - font-weight:bold; - border-top:3px solid #e1e4e5; - border-bottom:1px solid #e1e4e5; -} - -table caption{ - color:#000; - font:italic 85%/1 arial,sans-serif; - padding:1em 0; -} - -table tr:nth-child(2n-1) td{ - background-color:#f3f6f6; -} - -table tr:nth-child(2n) td{ - background-color:white; -} - -.figure p{ - color:#000; - font:italic 85%/1 arial,sans-serif; - padding:1em 0; -} - -.rotate-90{ - -webkit-transform:rotate(90deg); - -moz-transform:rotate(90deg); - -ms-transform:rotate(90deg); - -o-transform:rotate(90deg); - transform:rotate(90deg); -} - -.rotate-270{ - -webkit-transform:rotate(270deg); - -moz-transform:rotate(270deg); - -ms-transform:rotate(270deg); - -o-transform:rotate(270deg); - transform:rotate(270deg); -} - -#toggle-sidebar, -#table-of-contents .close-sidebar { - display: none; -} - -@media screen and (max-width: 768px) { - #table-of-contents { - display: none; - width: 60%; - } - - #table-of-contents h2 a { - display: block; - } - - #table-of-contents:target { - display: block; - } - - #copyright, #postamble { - display: none; - } - - #toggle-sidebar { - background-color: #2980B9; - display: block; - margin-bottom: 1.6em; - padding: 0.6em; - text-align: center; - } - - #toggle-sidebar h2 { - background-color:#2980B9; - width:100%; - height:50px; - left:0; - top:0; - color: white; - font-size: 100%; - line-height: 50px; - position:fixed; - margin: 0; - padding: 0; - opacity:0.7; - } - - #table-of-contents .close-sidebar { - color: rgba(255, 255, 255, 0.3); - display: inline-block; - margin: 0px 10px 0px 45px; - padding: 10px; - } -} - -*{ - -webkit-box-sizing:border-box; - -moz-box-sizing:border-box; - box-sizing:border-box; -} - -figcaption,figure,footer,header,hgroup,nav{ - display:block} - -ins{ - background:#ff9; - color:#000; - text-decoration:none} - -mark{ - background:#ff0; - color:#000; - font-style:italic; - font-weight:bold} - -small{ - font-size:85%} - -sub,sup{ - font-size:75%; - line-height:0; - position:relative; - vertical-align:baseline} - -sup{ - top:-0.5em} - -sub{ - bottom:-0.25em} - -img{ - -ms-interpolation-mode:bicubic; - vertical-align:middle; - max-width:100%} - -svg:not(:root){ - overflow:hidden} - -figure{ - margin:0} - -label{ - cursor:pointer} - -legend{ - border:0; - margin-left:-7px; - padding:0; - white-space:normal} - -.fa:before,#content .admonition-title:before,#content h1 .headerlink:before,#content h2 .headerlink:before,#content h3 .headerlink:before,#content h4 .headerlink:before,#content h5 .headerlink:before,#content h6 .headerlink:before,#content dl dt .headerlink:before,.icon:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-alert,#content .note,#content .attention,#content .caution,#content .danger,#content .error,#content .hint,#content .important,#content .tip,#content .warning,#content .seealso,#content .admonitiontodo,.btn,input[type="text"],input[type="password"],input[type="email"],input[type="url"],input[type="date"],input[type="month"],input[type="time"],input[type="datetime"],input[type="datetime-local"],input[type="week"],input[type="number"],input[type="search"],input[type="tel"],input[type="color"],select,textarea,#table-of-contents li.on a,#table-of-contents li.current>a,.wy-side-nav-search>a,.wy-side-nav-search .wy-dropdown>a,.wy-nav-top a{ - -webkit-font-smoothing:antialiased} - -/*! - * Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome - * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{ - font-family:'FontAwesome'; - src:url("../fonts/fontawesome-webfont.eot?v=4.1.0"); - src:url("../fonts/fontawesome-webfont.eot?#iefix&v=4.1.0") format("embedded-opentype"),url("../fonts/fontawesome-webfont.woff?v=4.1.0") format("woff"),url("../fonts/fontawesome-webfont.ttf?v=4.1.0") format("truetype"),url("../fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular") format("svg"); - font-weight:normal; - font-style:normal} - -.fa,#content .admonition-title,.icon{ - display:inline-block; - font-family:FontAwesome; - font-style:normal; - font-weight:normal; - line-height:1; - -webkit-font-smoothing:antialiased; - -moz-osx-font-smoothing:grayscale} - -.fa-ul{ - padding-left:0; - margin-left:2.14286em; - list-style-type:none} - -.fa-ul>li{ - position:relative} - -.fa-li{ - position:absolute; - left:-2.14286em; - width:2.14286em; - top:0.14286em; - text-align:center} - -.fa-li.fa-lg{ - left:-1.85714em} - -.fa-border{ - padding:.2em .25em .15em; - border:solid 0.08em #eee; - border-radius:.1em} - -.fa,#content .admonition-title{ - font-family:inherit} - -.fa:before,#content .admonition-title:before{ - font-family:"FontAwesome"; - display:inline-block; - font-style:normal; - font-weight:normal; - line-height:1; - text-decoration:inherit} - -a .fa,a #content .admonition-title,#content a .admonition-title{ - display:inline-block; - text-decoration:inherit} - -.nav #content .admonition-title,#content .nav .admonition-title,.nav .icon{ - display:inline} - -.wy-alert,#content .note,#content .attention,#content .caution,#content .danger,#content .error,#content .hint,#content .important,#content .tip,#content .warning,#content .seealso,#content .admonitiontodo{ - padding:12px; - line-height:24px; - margin-bottom:24px; - /* background:#e7f2fa; */ -} - -.wy-alert-title,#content .admonition-title{ - color:#fff; - font-weight:bold; - display:block; - color:#fff; - /* background:#6ab0de; */ - /* margin:-12px; */ - padding:6px 12px; - margin-bottom:0px} - -#content .danger,#content .error{ - background:#fdf3f2} - -.wy-alert.wy-alert-warning,#content .wy-alert-warning.note,#content .attention,#content .caution,#content .wy-alert-warning.danger,#content .wy-alert-warning.error,#content .wy-alert-warning.hint,#content .wy-alert-warning.important,#content .wy-alert-warning.tip,#content .warning,#content .wy-alert-warning.seealso,#content .admonitiontodo{ - background:#ffedcc} - -#content .admonition-title.note:before, #content .admonition-title.seealso:before, -#content .admonition-title.warning:before, #content .admonition-title.caution:before, -#content .admonition-title.attention:before, -#content .admonition-title.tip:before, #content .admonition-title.hint:before, -#content .admonition-title.important:before, -#content .admonition-title.error:before, #content .admonition-title.danger:before{ - font-family:FontAwesome; - content: "";} - -#content .note,#content .seealso{ - background:#e7f2fa} - -.wy-alert p:last-child,#content .note p:last-child,#content .attention p:last-child,#content .caution p:last-child,#content .danger p:last-child,#content .error p:last-child,#content .hint p:last-child,#content .important p:last-child,#content .tip p:last-child,#content .warning p:last-child,#content .seealso p:last-child,#content .admonitiontodo p:last-child{ - margin-bottom:0} - -#content .admonition-title.tip,#content .admonition-title.important,#content .admonition-title.hint{ - line-height: 1; - background:#1abc9c} - -#content .important,#content .tip,#content .hint{ - background:#dbfaf4} - -#content .admonition-title.note,#content .admonition-title.seealso{ - line-height: 1; - background:#6ab0de} - -#content .admonition-title.warning,#content .admonition-title.caution,#content .admonition-title.attention{ - line-height: 1; - background:#F0B37E} - -#content .admonition-title.error,#content .admonition-title.danger{ - line-height: 1; - background:#f29f97} - -legend{ - display:block; - width:100%; - border:0; - padding:0; - white-space:normal; - margin-bottom:24px; - font-size:150%; - *margin-left:-7px} - -label{ - display:block; - margin:0 0 0.3125em 0; - color:#333; - font-size:90%} - -a{ - color:#2980B9; - text-decoration:none; - cursor:pointer} - - -a:hover,a:active{ - outline:0; -} - -a:hover{ - color:#3091d1} - -a:visited{ - color:#9B59B6} - -.left{ - text-align:left} - -.center{ - text-align:center} - -.right{ - text-align:right} - -hr{ - display:block; - height:1px; - border:0; - border-top:1px solid #e1e4e5; - margin:24px 0; - padding:0} - -#table-of-contents li{ - list-style:none; - margin-left: 0px; -} - -#table-of-contents header{ - height:32px; - display:inline-block; - line-height:32px; - padding:0 1.618em; - display:block; - font-weight:bold; - text-transform:uppercase; - font-size:80%; - color:#2980B9; - white-space:nowrap} - -#table-of-contents ul{ - margin-bottom:0} - -#table-of-contents li.divide-top{ - border-top:solid 1px #404040} - -#table-of-contents li.divide-bottom{ - border-bottom:solid 1px #404040} - -#table-of-contents li.current{ - background:#e3e3e3} - -#table-of-contents li.current a{ - color:gray; - border-right:solid 1px #c9c9c9; - padding:0.4045em 2.427em} - -#table-of-contents li.current a:hover{ - background:#d6d6d6} - -#table-of-contents li a{ - /* color:#404040; */ - padding:0.4045em 1.618em; - position:relative; - /* background:#fcfcfc; */ - border:none; - /* border-bottom:solid 1px #c9c9c9; */ - /* border-top:solid 1px #c9c9c9; */ - padding-left:1.618em -4px} - -#table-of-contents li.on a:hover,#table-of-contents li.current>a:hover{ - background:#fcfcfc} - -#table-of-contents li ul li a{ - /* background:#c9c9c9; */ - padding:0.4045em 2.427em} - -#table-of-contents li ul li ul li a{ - padding:0.4045em 3.236em} - -#table-of-contents li.current ul{ - display:block} - -/* #table-of-contents li ul{ */ -/* margin-bottom:0; */ -/* display:none} */ - -#table-of-contents .local-toc li ul{ - display:block} - -#table-of-contents li ul li a{ - margin-bottom:0; - color:#b3b3b3; - font-weight:normal} - -#table-of-contents a{ - display:inline-block; - line-height:18px; - padding:0.4045em 1.618em; - display:block; - position:relative; - font-size:90%; - color:#b3b3b3; - direction: ltr; -} - -#table-of-contents a:hover{ - background-color:#4e4a4a; - cursor:pointer} - -/* #text-table-of-contents { */ -/* overflow:scroll; */ -/* } */ - -#table-of-contents{ - position:fixed; - top:0; - left:0; - width:300px; - overflow-x:hidden; - overflow-y:scroll; - height:100%; - background:#343131; - z-index:200; - scrollbar-base-color: #1F1D1D; - scrollbar-arrow-color: #b3b3b3; - scrollbar-shadow-color: #1F1D1D; - scrollbar-track-color : #343131; -} - -#table-of-contents h2{ - z-index:200; - background-color:#2980B9; - text-align:center; - padding:0.809em; - display:block; - color:#fcfcfc; - font-size: 100%; - margin-bottom:0.809em} - -ul.nav li ul li { - display: none; -} - -ul.nav li ul li ul li { - display: none; -} - -ul.nav li.active ul li { - display: inline; -} - -ul.nav li.active ul li ul li { - display: inline; -} - -ul.nav li.active ul li a { - background-color: #E3E3E3; - color: #8099B0; - border-right:solid 1px #c9c9c9 !important; -} - -ul.nav li.active ul li.active a { - background-color: #C9C9C9; - color: black !important; - font-weight: bold !important; -} - -ul.nav li.active ul li.active ul li.active a { - color: black !important; - font-weight: bold !important; - display: block !important; -} - -ul.nav li.active ul li.active ul li a { - color: #808080 !important; - font-weight: normal !important; - display: block !important; -} - -ul.nav li.active ul li ul li a { - display: none !important; -} - -/* ul.nav li ul li ul li { */ -/* display: none !important; /\* as long as nav is on multiple levels of ul *\/ */ -/* /\* display: none; /\* as long as nav is on multiple levels of ul *\\/ *\/ */ -/* } */ - -ul.nav li ul li ul li ul li { - display: none !important; /* as long as nav is on multiple levels of ul */ - /* display: none; /* as long as nav is on multiple levels of ul *\/ */ -} - -ul.nav li.active > a { - border-bottom:solid 1px #c9c9c9 !important; /* XXX Restrict it to 2nd level */ - border-right:solid 1px #c9c9c9 !important; -} - -ul.nav li.active a { - color: gray !important; - font-weight:bold; - background-color: white; - border-right:solid 0px white !important; -} - -ul.nav > li.active > a { - color: black !important; -} - -footer{ - color:#999} - -footer p{ - margin-bottom:12px} - -#copyright, #postamble{ - position:fixed; - bottom:0; - left:0; - width:300px; - color:#fcfcfc; - background:#1f1d1d; - border-top:solid 10px #343131; - font-family:"Lato","proxima-nova","Helvetica Neue",Arial,sans-serif; - font-size: 90%; - z-index:400; - padding:12px; -} - -#postamble .author { - font-size: 100%; - margin-bottom: 0px; -} - -#postamble .date { - font-size: 90%; - margin-bottom: 0px; - color: #27AE60; -} - -#postamble .creator,#postamble .validation { - display:none; -} - -#copyright a{ - color:#2980B9; - text-decoration:none} - -#copyright .rst-current-version{ - padding:12px; - background-color:#272525; - display:block; - text-align:right; - font-size:90%; - cursor:pointer; - color:#27AE60; - *zoom:1} - -#content img{ - max-width:100%; -} - -#content div.figure{ - margin-bottom:24px} - -#content div.figure.align-center{ - text-align:center} - -#content .section>img,#content .section>a>img{ - margin-bottom:24px} - -.verse{ - border-left:5px solid #6AB0DE; - background-color: #E7F2FA; - padding: 6px 20px; - font-style:italic; -} - -#content .note .last,#content .attention .last,#content .caution .last,#content .danger .last,#content .error .last,#content .hint .last,#content .important .last,#content .tip .last,#content .warning .last,#content .seealso .last,#content .admonitiontodo .last{ - margin-bottom:0} - -#content .admonition-title:before{ - margin-right:4px} - -#content .section ol p,#content .section ul p{ - margin-bottom:12px} - -#content h1 .headerlink,#content h2 .headerlink,#content h3 .headerlink,#content h4 .headerlink,#content h5 .headerlink,#content h6 .headerlink,#content dl dt .headerlink{ - display:none; - visibility:hidden; - font-size:14px} - -#content h1 .headerlink:after,#content h2 .headerlink:after,#content h3 .headerlink:after,#content h4 .headerlink:after,#content h5 .headerlink:after,#content h6 .headerlink:after,#content dl dt .headerlink:after{ - visibility:visible; - content:""; - font-family:FontAwesome; - display:inline-block} - -#content h1:hover .headerlink,#content h2:hover .headerlink,#content h3:hover .headerlink,#content h4:hover .headerlink,#content h5:hover .headerlink,#content h6:hover .headerlink,#content dl dt:hover .headerlink{ - display:inline-block} - -#content .sidebar{ - float:right; - width:40%; - display:block; - margin:0 0 24px 24px; - padding:24px; - background:#f3f6f6; - border:solid 1px #e1e4e5} - -#content .sidebar p,#content .sidebar ul,#content .sidebar dl{ - font-size:90%} - -#content .sidebar .last{ - margin-bottom:0} - -#content .sidebar .sidebar-title{ - display:block; - font-family:"Roboto Slab","ff-tisa-web-pro","Georgia",Arial,sans-serif; - font-weight:bold; - background:#e1e4e5; - padding:6px 12px; - margin:-24px; - margin-bottom:24px; - font-size:100%} - -#content .highlighted{ - background:#F1C40F; - display:inline-block; - font-weight:bold; - padding:0 6px} - -#content .footnote-reference,#content .citation-reference{ - vertical-align:super; - font-size:90%} - -span[id*='MathJax-Span']{ - color:#404040} - -.math{ - text-align:center} - -#footnotes{ - border-top:1px solid #e1e4e5; - padding-top: 36px; -} - -h2.footnotes{ - display:none; -} - -.footnum, .footref{ - color: #2980b9; - font-size: 170%; - font-family:"Lato","proxima-nova","Helvetica Neue",Arial,sans-serif; -} - -.footnum:before, .footref:before{ - content:"["; -} - -.footnum:after, .footref:after{ - content:"]"; -} - -.footpara { - color: #999; - font-size: 90%; - font-family:"Lato","proxima-nova","Helvetica Neue",Arial,sans-serif; - padding-bottom: 8px; - padding-left: 16px; - padding-right: 16px; - padding-top: 8px; - line-height: 1.25em; - /* display: inline; */ -} - -.todo{ - background-color: #f29f97; - padding: 0px 4px; - color: #fff; -} - -.WAIT, .nilWAIT{ - background-color: #6AB097; -} - -.done{ - background-color: #6ab0de; - padding: 0px 4px; - color: #fff; -} - -.tag span { - background-color: #EDEDED; - border: 1px solid #EDEDED; - color: #939393; - cursor: pointer; - display: block; - float: right; - font-size: 80%; - font-weight: normal; - margin: 0 3px; - padding: 1px 2px; - border-radius: 10px; -} - -.tag .FLAGGED { - background-color: #DB2D27; - border: 1px solid #DB2D27; - color: white; - font-weight: bold; -} - -.timestamp { - font-family: Consolas,"Andale Mono WT","Andale Mono","Lucida Console","Lucida Sans Typewriter","DejaVu Sans Mono","Bitstream Vera Sans Mono","Liberation Mono","Nimbus Mono L",Monaco,"Courier New",Courier,monospace; - font-size: 90%; - color: navy; -} - -.nav .timestamp { - color: inherit; -} - -.inlinetask { - background: #FFF9E3; /* url(dialog-todo.png) no-repeat 10px 8px; */ - border: 3px solid #FFEB8E; - /* border-right-style: none; */ - /* border-left-style: none; */ - /* padding: 10px 20px 10px 60px; */ - padding: 9px 12px; - margin-bottom: 24px; - font-family:"Roboto Slab","ff-tisa-web-pro","Georgia",Arial,sans-serif} diff --git a/docs/data.html b/docs/data.html index 268df95..b98a2ce 100644 --- a/docs/data.html +++ b/docs/data.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Data - - - - - - + +
@@ -26,5098 +22,5167 @@

Table of Contents

-
-

Nerd Fonts

-
+
+

Nerd Fonts

+
-
 - i_dev_bing_small
- - i_dev_css_tricks
- - i_dev_git
- - i_dev_bitbucket
- - i_dev_mysql
- - i_dev_streamline
- - i_dev_database
- - i_dev_dropbox
- - i_dev_github_alt
- - i_dev_github_badge
- - i_dev_github
- - i_dev_wordpress
- - i_dev_visualstudio
- - i_dev_jekyll_small
- - i_dev_android
- - i_dev_windows
- - i_dev_stackoverflow
- - i_dev_apple
- - i_dev_linux
- - i_dev_appstore
- - i_dev_ghost_small
- - i_dev_yahoo
- - i_dev_codepen
- - i_dev_github_full
- - i_dev_nodejs_small
- - i_dev_nodejs
- - i_dev_hackernews
- - i_dev_ember
- - i_dev_dojo
- - i_dev_django
- - i_dev_npm
- - i_dev_ghost
- - i_dev_modernizr
- - i_dev_unity_small
- - i_dev_rasberry_pi
- - i_dev_blackberry
- - i_dev_go
- - i_dev_git_branch
- - i_dev_git_pull_request
- - i_dev_git_merge
- - i_dev_git_compare
- - i_dev_git_commit
- - i_dev_cssdeck
- - i_dev_yahoo_small
- - i_dev_techcrunch
- - i_dev_smashing_magazine
- - i_dev_netmagazine
- - i_dev_codrops
- - i_dev_phonegap
- - i_dev_google_drive
- - i_dev_html5_multimedia
- - i_dev_html5_device_access
- - i_dev_html5_connectivity
- - i_dev_html5_3d_effects
- - i_dev_html5
- - i_dev_scala
- - i_dev_java
- - i_dev_ruby
- - i_dev_ubuntu
- - i_dev_ruby_on_rails
- - i_dev_python
- - i_dev_php
- - i_dev_markdown
- - i_dev_laravel
- - i_dev_magento
- - i_dev_joomla
- - i_dev_drupal
- - i_dev_chrome
- - i_dev_ie
- - i_dev_firefox
- - i_dev_opera
- - i_dev_bootstrap
- - i_dev_safari
- - i_dev_css3
- - i_dev_css3_full
- - i_dev_sass
- - i_dev_grunt
- - i_dev_bower
- - i_dev_javascript
- - i_dev_javascript_shield
- - i_dev_jquery
- - i_dev_coffeescript
- - i_dev_backbone
- - i_dev_angular
- - i_dev_jquery_ui
- - i_dev_swift
- - i_dev_symfony
- - i_dev_symfony_badge
- - i_dev_less
- - i_dev_stylus
- - i_dev_trello
- - i_dev_atlassian
- - i_dev_jira
- - i_dev_envato
- - i_dev_snap_svg
- - i_dev_raphael
- - i_dev_chart
- - i_dev_compass
- - i_dev_onedrive
- - i_dev_gulp
- - i_dev_atom
- - i_dev_cisco
- - i_dev_nancy
- - i_dev_jenkins
- - i_dev_clojure
- - i_dev_perl
- - i_dev_clojure_alt
- - i_dev_celluloid
- - i_dev_w3c
- - i_dev_redis
- - i_dev_postgresql
- - i_dev_webplatform
- - i_dev_requirejs
- - i_dev_opensource
- - i_dev_typo3
- - i_dev_uikit
- - i_dev_doctrine
- - i_dev_groovy
- - i_dev_nginx
- - i_dev_haskell
- - i_dev_zend
- - i_dev_gnu
- - i_dev_yeoman
- - i_dev_heroku
- - i_dev_msql_server
- - i_dev_debian
- - i_dev_travis
- - i_dev_dotnet
- - i_dev_codeigniter
- - i_dev_javascript_badge
- - i_dev_yii
- - i_dev_composer
- - i_dev_krakenjs_badge
- - i_dev_krakenjs
- - i_dev_mozilla
- - i_dev_firebase
- - i_dev_sizzlejs
- - i_dev_creativecommons
- - i_dev_creativecommons_badge
- - i_dev_mitlicence
- - i_dev_senchatouch
- - i_dev_bugsense
- - i_dev_extjs
- - i_dev_mootools_badge
- - i_dev_mootools
- - i_dev_ruby_rough
- - i_dev_komodo
- - i_dev_coda
- - i_dev_bintray
- - i_dev_terminal
- - i_dev_code
- - i_dev_responsive
- - i_dev_dart
- - i_dev_aptana
- - i_dev_mailchimp
- - i_dev_netbeans
- - i_dev_dreamweaver
- - i_dev_brackets
- - i_dev_eclipse
- - i_dev_cloud9
- - i_dev_scrum
- - i_dev_prolog
- - i_dev_terminal_badge
- - i_dev_code_badge
- - i_dev_mongodb
- - i_dev_meteor
- - i_dev_meteorfull
- - i_dev_fsharp
- - i_dev_rust
- - i_dev_ionic
- - i_dev_sublime
- - i_dev_appcelerator
- - i_dev_asterisk
- - i_dev_aws
- - i_dev_digital_ocean
- - i_dev_dlang
- - i_dev_docker
- - i_dev_erlang
- - i_dev_google_cloud_platform
- - i_dev_grails
- - i_dev_illustrator
- - i_dev_intellij
- - i_dev_materializecss
- - i_dev_openshift
- - i_dev_photoshop
- - i_dev_rackspace
- - i_dev_react
- - i_dev_redhat
- - i_dev_scriptcs
- - i_dev_sqllite
- - i_dev_vim
- - i_fae_smaller
- - i_fae_snowing
- - i_fae_soda
- - i_fae_sofa
- - i_fae_soup
- - i_fae_spermatozoon
- - i_fae_spin_double
- - i_fae_stomach
- - i_fae_storm
- - i_fae_telescope
- - i_fae_thermometer
- - i_fae_thermometer_high
- - i_fae_thermometer_low
- - i_fae_thin_close
- - i_fae_toilet
- - i_fae_tools
- - i_fae_tooth
- - i_fae_uterus
- - i_fae_w3c
- - i_fae_walking
- - i_fae_virus
- - i_fae_telegram_circle
- - i_fae_slash
- - i_fae_telegram
- - i_fae_shirt
- - i_fae_tacos
- - i_fae_sushi
- - i_fae_triangle_ruler
- - i_fae_tree
- - i_fae_sun_cloud
- - i_fae_ruby_o
- - i_fae_ruler
- - i_fae_umbrella
- - i_fae_medicine
- - i_fae_microscope
- - i_fae_milk_bottle
- - i_fae_minimize
- - i_fae_molecule
- - i_fae_moon_cloud
- - i_fae_mushroom
- - i_fae_mustache
- - i_fae_mysql
- - i_fae_nintendo
- - i_fae_palette_color
- - i_fae_pi
- - i_fae_pizza
- - i_fae_planet
- - i_fae_plant
- - i_fae_playstation
- - i_fae_poison
- - i_fae_popcorn
- - i_fae_popsicle
- - i_fae_pulse
- - i_fae_python
- - i_fae_quora_circle
- - i_fae_quora_square
- - i_fae_radioactive
- - i_fae_raining
- - i_fae_real_heart
- - i_fae_refrigerator
- - i_fae_restore
- - i_fae_ring
- - i_fae_ruby
- - i_fae_fingerprint
- - i_fae_floppy
- - i_fae_footprint
- - i_fae_freecodecamp
- - i_fae_galaxy
- - i_fae_galery
- - i_fae_glass
- - i_fae_google_drive
- - i_fae_google_play
- - i_fae_gps
- - i_fae_grav
- - i_fae_guitar
- - i_fae_gut
- - i_fae_halter
- - i_fae_hamburger
- - i_fae_hat
- - i_fae_hexagon
- - i_fae_high_heel
- - i_fae_hotdog
- - i_fae_ice_cream
- - i_fae_id_card
- - i_fae_imdb
- - i_fae_infinity
- - i_fae_java
- - i_fae_layers
- - i_fae_lips
- - i_fae_lipstick
- - i_fae_liver
- - i_fae_lung
- - i_fae_makeup_brushes
- - i_fae_maximize
- - i_fae_wallet
- - i_fae_chess_horse
- - i_fae_chess_king
- - i_fae_chess_pawn
- - i_fae_chess_queen
- - i_fae_chess_tower
- - i_fae_cheese
- - i_fae_chilli
- - i_fae_chip
- - i_fae_cicling
- - i_fae_cloud
- - i_fae_cockroach
- - i_fae_coffe_beans
- - i_fae_coins
- - i_fae_comb
- - i_fae_comet
- - i_fae_crown
- - i_fae_cup_coffe
- - i_fae_dice
- - i_fae_disco
- - i_fae_dna
- - i_fae_donut
- - i_fae_dress
- - i_fae_drop
- - i_fae_ello
- - i_fae_envelope_open
- - i_fae_envelope_open_o
- - i_fae_equal
- - i_fae_equal_bigger
- - i_fae_feedly
- - i_fae_file_export
- - i_fae_file_import
- - i_fae_wind
- - i_fae_atom
- - i_fae_bacteria
- - i_fae_banana
- - i_fae_bath
- - i_fae_bed
- - i_fae_benzene
- - i_fae_bigger
- - i_fae_biohazard
- - i_fae_blogger_circle
- - i_fae_blogger_square
- - i_fae_bones
- - i_fae_book_open
- - i_fae_book_open_o
- - i_fae_brain
- - i_fae_bread
- - i_fae_butterfly
- - i_fae_carot
- - i_fae_cc_by
- - i_fae_cc_cc
- - i_fae_cc_nc
- - i_fae_cc_nc_eu
- - i_fae_cc_nc_jp
- - i_fae_cc_nd
- - i_fae_cc_remix
- - i_fae_cc_sa
- - i_fae_cc_share
- - i_fae_cc_zero
- - i_fae_checklist_o
- - i_fae_cherry
- - i_fae_chess_bishop
- - i_fae_xbox
- - i_fae_apple_fruit
- - i_fae_chicken_thigh
- - i_fae_gift_card
- - i_fae_injection
- - i_fae_isle
- - i_fae_lollipop
- - i_fae_loyalty_card
- - i_fae_meat
- - i_fae_mountains
- - i_fae_orange
- - i_fae_peach
- - i_fae_pear
- - i_fa_glass
- - i_fa_music
- - i_fa_search
- - i_fa_envelope_o
- - i_fa_heart
- - i_fa_star
- - i_fa_star_o
- - i_fa_user
- - i_fa_film
- - i_fa_th_large
- - i_fa_th
- - i_fa_th_list
- - i_fa_check
- - i_fa_times i_fa_close_fa_times i_fa_remove_fa_times
- - i_fa_search_plus
- - i_fa_search_minus
- - i_fa_power_off
- - i_fa_signal
- - i_fa_cog i_fa_gear_fa_cog
- - i_fa_trash_o
- - i_fa_home
- - i_fa_file_o
- - i_fa_clock_o
- - i_fa_road
- - i_fa_download
- - i_fa_arrow_circle_o_down
- - i_fa_arrow_circle_o_up
- - i_fa_inbox
- - i_fa_play_circle_o
- - i_fa_repeat i_fa_rotate_right_fa_repeat
- - i_fa_refresh
- - i_fa_list_alt
- - i_fa_lock
- - i_fa_flag
- - i_fa_headphones
- - i_fa_volume_off
- - i_fa_volume_down
- - i_fa_volume_up
- - i_fa_qrcode
- - i_fa_barcode
- - i_fa_tag
- - i_fa_tags
- - i_fa_book
- - i_fa_bookmark
- - i_fa_print
- - i_fa_camera
- - i_fa_font
- - i_fa_bold
- - i_fa_italic
- - i_fa_text_height
- - i_fa_text_width
- - i_fa_align_left
- - i_fa_align_center
- - i_fa_align_right
- - i_fa_align_justify
- - i_fa_list
- - i_fa_outdent i_fa_dedent_fa_outdent
- - i_fa_indent
- - i_fa_video_camera
- - i_fa_picture_o i_fa_image_fa_picture_o i_fa_photo_fa_picture_o
- - i_fa_pencil
- - i_fa_map_marker
- - i_fa_adjust
- - i_fa_tint
- - i_fa_pencil_square_o i_fa_edit_fa_pencil_square_o
- - i_fa_share_square_o
- - i_fa_check_square_o
- - i_fa_arrows
- - i_fa_step_backward
- - i_fa_fast_backward
- - i_fa_backward
- - i_fa_play
- - i_fa_pause
- - i_fa_stop
- - i_fa_forward
- - i_fa_fast_forward
- - i_fa_step_forward
- - i_fa_eject
- - i_fa_chevron_left
- - i_fa_chevron_right
- - i_fa_plus_circle
- - i_fa_minus_circle
- - i_fa_times_circle
- - i_fa_check_circle
- - i_fa_question_circle
- - i_fa_info_circle
- - i_fa_crosshairs
- - i_fa_times_circle_o
- - i_fa_check_circle_o
- - i_fa_ban
- - i_fa_arrow_left
- - i_fa_arrow_right
- - i_fa_arrow_up
- - i_fa_arrow_down
- - i_fa_share i_fa_mail_forward_fa_share
- - i_fa_expand
- - i_fa_compress
- - i_fa_plus
- - i_fa_minus
- - i_fa_asterisk
- - i_fa_exclamation_circle
- - i_fa_gift
- - i_fa_leaf
- - i_fa_fire
- - i_fa_eye
- - i_fa_eye_slash
- - i_fa_exclamation_triangle i_fa_warning_fa_exclamation_triangle
- - i_fa_plane
- - i_fa_calendar
- - i_fa_random
- - i_fa_comment
- - i_fa_magnet
- - i_fa_chevron_up
- - i_fa_chevron_down
- - i_fa_retweet
- - i_fa_shopping_cart
- - i_fa_folder
- - i_fa_folder_open
- - i_fa_arrows_v
- - i_fa_arrows_h
- - i_fa_bar_chart i_fa_bar_chart_o_fa_bar_chart
- - i_fa_twitter_square
- - i_fa_facebook_square
- - i_fa_camera_retro
- - i_fa_key
- - i_fa_cogs i_fa_gears_fa_cogs
- - i_fa_comments
- - i_fa_thumbs_o_up
- - i_fa_thumbs_o_down
- - i_fa_star_half
- - i_fa_heart_o
- - i_fa_sign_out
- - i_fa_linkedin_square
- - i_fa_thumb_tack
- - i_fa_external_link
- - i_fa_sign_in
- - i_fa_trophy
- - i_fa_github_square
- - i_fa_upload
- - i_fa_lemon_o
- - i_fa_phone
- - i_fa_square_o
- - i_fa_bookmark_o
- - i_fa_phone_square
- - i_fa_twitter
- - i_fa_facebook i_fa_facebook_f_fa_facebook
- - i_fa_github
- - i_fa_unlock
- - i_fa_credit_card
- - i_fa_rss i_fa_feed_fa_rss
- - i_fa_hdd_o
- - i_fa_bullhorn
- - i_fa_bell_o
- - i_fa_certificate
- - i_fa_hand_o_right
- - i_fa_hand_o_left
- - i_fa_hand_o_up
- - i_fa_hand_o_down
- - i_fa_arrow_circle_left
- - i_fa_arrow_circle_right
- - i_fa_arrow_circle_up
- - i_fa_arrow_circle_down
- - i_fa_globe
- - i_fa_wrench
- - i_fa_tasks
- - i_fa_filter
- - i_fa_briefcase
- - i_fa_arrows_alt
- - i_fa_users i_fa_group_fa_users
- - i_fa_link i_fa_chain_fa_link
- - i_fa_cloud
- - i_fa_flask
- - i_fa_scissors i_fa_cut_fa_scissors
- - i_fa_files_o i_fa_copy_fa_files_o
- - i_fa_paperclip
- - i_fa_floppy_o i_fa_save_fa_floppy_o
- - i_fa_square
- - i_fa_bars i_fa_navicon_fa_bars i_fa_reorder_fa_bars
- - i_fa_list_ul
- - i_fa_list_ol
- - i_fa_strikethrough
- - i_fa_underline
- - i_fa_table
- - i_fa_magic
- - i_fa_truck
- - i_fa_pinterest
- - i_fa_pinterest_square
- - i_fa_google_plus_square
- - i_fa_google_plus
- - i_fa_money
- - i_fa_caret_down
- - i_fa_caret_up
- - i_fa_caret_left
- - i_fa_caret_right
- - i_fa_columns
- - i_fa_sort i_fa_unsorted_fa_sort
- - i_fa_sort_desc i_fa_sort_down_fa_sort_desc
- - i_fa_sort_asc i_fa_sort_up_fa_sort_asc
- - i_fa_envelope
- - i_fa_linkedin
- - i_fa_undo i_fa_rotate_left_fa_undo
- - i_fa_gavel i_fa_legal_fa_gavel
- - i_fa_tachometer i_fa_dashboard_fa_tachometer
- - i_fa_comment_o
- - i_fa_comments_o
- - i_fa_bolt i_fa_flash_fa_bolt
- - i_fa_sitemap
- - i_fa_umbrella
- - i_fa_clipboard i_fa_paste_fa_clipboard
- - i_fa_lightbulb_o
- - i_fa_exchange
- - i_fa_cloud_download
- - i_fa_cloud_upload
- - i_fa_user_md
- - i_fa_stethoscope
- - i_fa_suitcase
- - i_fa_bell
- - i_fa_coffee
- - i_fa_cutlery
- - i_fa_file_text_o
- - i_fa_building_o
- - i_fa_hospital_o
- - i_fa_ambulance
- - i_fa_medkit
- - i_fa_fighter_jet
- - i_fa_beer
- - i_fa_h_square
- - i_fa_plus_square
- - i_fa_angle_double_left
- - i_fa_angle_double_right
- - i_fa_angle_double_up
- - i_fa_angle_double_down
- - i_fa_angle_left
- - i_fa_angle_right
- - i_fa_angle_up
- - i_fa_angle_down
- - i_fa_desktop
- - i_fa_laptop
- - i_fa_tablet
- - i_fa_mobile i_fa_mobile_phone_fa_mobile
- - i_fa_circle_o
- - i_fa_quote_left
- - i_fa_quote_right
- - i_fa_spinner
- - i_fa_circle
- - i_fa_reply i_fa_mail_reply_fa_reply
- - i_fa_github_alt
- - i_fa_folder_o
- - i_fa_folder_open_o
- - i_fa_smile_o
- - i_fa_frown_o
- - i_fa_meh_o
- - i_fa_gamepad
- - i_fa_keyboard_o
- - i_fa_flag_o
- - i_fa_flag_checkered
- - i_fa_terminal
- - i_fa_code
- - i_fa_reply_all i_fa_mail_reply_all_fa_reply_all
- - i_fa_star_half_o i_fa_star_half_empty_fa_star_half_o i_fa_star_half_full_fa_star_half_o
- - i_fa_location_arrow
- - i_fa_crop
- - i_fa_code_fork
- - i_fa_chain_broken i_fa_unlink_fa_chain_broken
- - i_fa_question
- - i_fa_info
- - i_fa_exclamation
- - i_fa_superscript
- - i_fa_subscript
- - i_fa_eraser
- - i_fa_puzzle_piece
- - i_fa_microphone
- - i_fa_microphone_slash
- - i_fa_shield
- - i_fa_calendar_o
- - i_fa_fire_extinguisher
- - i_fa_rocket
- - i_fa_maxcdn
- - i_fa_chevron_circle_left
- - i_fa_chevron_circle_right
- - i_fa_chevron_circle_up
- - i_fa_chevron_circle_down
- - i_fa_html5
- - i_fa_css3
- - i_fa_anchor
- - i_fa_unlock_alt
- - i_fa_bullseye
- - i_fa_ellipsis_h
- - i_fa_ellipsis_v
- - i_fa_rss_square
- - i_fa_play_circle
- - i_fa_ticket
- - i_fa_minus_square
- - i_fa_minus_square_o
- - i_fa_level_up
- - i_fa_level_down
- - i_fa_check_square
- - i_fa_pencil_square
- - i_fa_external_link_square
- - i_fa_share_square
- - i_fa_compass
- - i_fa_caret_square_o_down i_fa_toggle_down_fa_caret_square_o_down
- - i_fa_caret_square_o_up i_fa_toggle_up_fa_caret_square_o_up
- - i_fa_caret_square_o_right i_fa_toggle_right_fa_caret_square_o_right
- - i_fa_eur i_fa_euro_fa_eur
- - i_fa_gbp
- - i_fa_usd i_fa_dollar_fa_usd
- - i_fa_inr i_fa_rupee_fa_inr
- - i_fa_jpy i_fa_cny_fa_jpy i_fa_rmb_fa_jpy i_fa_yen_fa_jpy
- - i_fa_rub i_fa_rouble_fa_rub i_fa_ruble_fa_rub
- - i_fa_krw i_fa_won_fa_krw
- - i_fa_btc i_fa_bitcoin_fa_btc
- - i_fa_file
- - i_fa_file_text
- - i_fa_sort_alpha_asc
- - i_fa_sort_alpha_desc
- - i_fa_sort_amount_asc
- - i_fa_sort_amount_desc
- - i_fa_sort_numeric_asc
- - i_fa_sort_numeric_desc
- - i_fa_thumbs_up
- - i_fa_thumbs_down
- - i_fa_youtube_square
- - i_fa_youtube
- - i_fa_xing
- - i_fa_xing_square
- - i_fa_youtube_play
- - i_fa_dropbox
- - i_fa_stack_overflow
- - i_fa_instagram
- - i_fa_flickr
- - i_fa_adn
- - i_fa_bitbucket
- - i_fa_bitbucket_square
- - i_fa_tumblr
- - i_fa_tumblr_square
- - i_fa_long_arrow_down
- - i_fa_long_arrow_up
- - i_fa_long_arrow_left
- - i_fa_long_arrow_right
- - i_fa_apple
- - i_fa_windows
- - i_fa_android
- - i_fa_linux
- - i_fa_dribbble
- - i_fa_skype
- - i_fa_foursquare
- - i_fa_trello
- - i_fa_female
- - i_fa_male
- - i_fa_gratipay i_fa_gittip_fa_gratipay
- - i_fa_sun_o
- - i_fa_moon_o
- - i_fa_archive
- - i_fa_bug
- - i_fa_vk
- - i_fa_weibo
- - i_fa_renren
- - i_fa_pagelines
- - i_fa_stack_exchange
- - i_fa_arrow_circle_o_right
- - i_fa_arrow_circle_o_left
- - i_fa_caret_square_o_left i_fa_toggle_left_fa_caret_square_o_left
- - i_fa_dot_circle_o
- - i_fa_wheelchair
- - i_fa_vimeo_square
- - i_fa_try i_fa_turkish_lira_fa_try
- - i_fa_plus_square_o
- - i_fa_space_shuttle
- - i_fa_slack
- - i_fa_envelope_square
- - i_fa_wordpress
- - i_fa_openid
- - i_fa_university i_fa_bank_fa_university i_fa_institution_fa_university
- - i_fa_graduation_cap i_fa_mortar_board_fa_graduation_cap
- - i_fa_yahoo
- - i_fa_google
- - i_fa_reddit
- - i_fa_reddit_square
- - i_fa_stumbleupon_circle
- - i_fa_stumbleupon
- - i_fa_delicious
- - i_fa_digg
- - i_fa_pied_piper_pp
- - i_fa_pied_piper_alt
- - i_fa_drupal
- - i_fa_joomla
- - i_fa_language
- - i_fa_fax
- - i_fa_building
- - i_fa_child
- - i_fa_paw
- - i_fa_spoon
- - i_fa_cube
- - i_fa_cubes
- - i_fa_behance
- - i_fa_behance_square
- - i_fa_steam
- - i_fa_steam_square
- - i_fa_recycle
- - i_fa_car i_fa_automobile_fa_car
- - i_fa_taxi i_fa_cab_fa_taxi
- - i_fa_tree
- - i_fa_spotify
- - i_fa_deviantart
- - i_fa_soundcloud
- - i_fa_database
- - i_fa_file_pdf_o
- - i_fa_file_word_o
- - i_fa_file_excel_o
- - i_fa_file_powerpoint_o
- - i_fa_file_image_o i_fa_file_photo_o_fa_file_image_o i_fa_file_picture_o_fa_file_image_o
- - i_fa_file_archive_o i_fa_file_zip_o_fa_file_archive_o
- - i_fa_file_audio_o i_fa_file_sound_o_fa_file_audio_o
- - i_fa_file_video_o i_fa_file_movie_o_fa_file_video_o
- - i_fa_file_code_o
- - i_fa_vine
- - i_fa_codepen
- - i_fa_jsfiddle
- - i_fa_life_ring i_fa_life_bouy_fa_life_ring i_fa_life_buoy_fa_life_ring i_fa_life_saver_fa_life_ring i_fa_support_fa_life_ring
- - i_fa_circle_o_notch
- - i_fa_rebel i_fa_ra_fa_rebel i_fa_resistance_fa_rebel
- - i_fa_empire i_fa_ge_fa_empire
- - i_fa_git_square
- - i_fa_git
- - i_fa_hacker_news i_fa_y_combinator_square_fa_hacker_news i_fa_yc_square_fa_hacker_news
- - i_fa_tencent_weibo
- - i_fa_qq
- - i_fa_weixin i_fa_wechat_fa_weixin
- - i_fa_paper_plane i_fa_send_fa_paper_plane
- - i_fa_paper_plane_o i_fa_send_o_fa_paper_plane_o
- - i_fa_history
- - i_fa_circle_thin
- - i_fa_header
- - i_fa_paragraph
- - i_fa_sliders
- - i_fa_share_alt
- - i_fa_share_alt_square
- - i_fa_bomb
- - i_fa_futbol_o i_fa_soccer_ball_o_fa_futbol_o
- - i_fa_tty
- - i_fa_binoculars
- - i_fa_plug
- - i_fa_slideshare
- - i_fa_twitch
- - i_fa_yelp
- - i_fa_newspaper_o
- - i_fa_wifi
- - i_fa_calculator
- - i_fa_paypal
- - i_fa_google_wallet
- - i_fa_cc_visa
- - i_fa_cc_mastercard
- - i_fa_cc_discover
- - i_fa_cc_amex
- - i_fa_cc_paypal
- - i_fa_cc_stripe
- - i_fa_bell_slash
- - i_fa_bell_slash_o
- - i_fa_trash
- - i_fa_copyright
- - i_fa_at
- - i_fa_eyedropper
- - i_fa_paint_brush
- - i_fa_birthday_cake
- - i_fa_area_chart
- - i_fa_pie_chart
- - i_fa_line_chart
- - i_fa_lastfm
- - i_fa_lastfm_square
- - i_fa_toggle_off
- - i_fa_toggle_on
- - i_fa_bicycle
- - i_fa_bus
- - i_fa_ioxhost
- - i_fa_angellist
- - i_fa_cc
- - i_fa_ils i_fa_shekel_fa_ils i_fa_sheqel_fa_ils
- - i_fa_meanpath
- - i_fa_buysellads
- - i_fa_connectdevelop
- - i_fa_dashcube
- - i_fa_forumbee
- - i_fa_leanpub
- - i_fa_sellsy
- - i_fa_shirtsinbulk
- - i_fa_simplybuilt
- - i_fa_skyatlas
- - i_fa_cart_plus
- - i_fa_cart_arrow_down
- - i_fa_diamond
- - i_fa_ship
- - i_fa_user_secret
- - i_fa_motorcycle
- - i_fa_street_view
- - i_fa_heartbeat
- - i_fa_venus
- - i_fa_mars
- - i_fa_mercury
- - i_fa_transgender i_fa_intersex_fa_transgender
- - i_fa_transgender_alt
- - i_fa_venus_double
- - i_fa_mars_double
- - i_fa_venus_mars
- - i_fa_mars_stroke
- - i_fa_mars_stroke_v
- - i_fa_mars_stroke_h
- - i_fa_neuter
- - i_fa_genderless
- - i_fa_facebook_official
- - i_fa_pinterest_p
- - i_fa_whatsapp
- - i_fa_server
- - i_fa_user_plus
- - i_fa_user_times
- - i_fa_bed i_fa_hotel_fa_bed
- - i_fa_viacoin
- - i_fa_train
- - i_fa_subway
- - i_fa_medium
- - i_fa_y_combinator i_fa_yc_fa_y_combinator
- - i_fa_optin_monster
- - i_fa_opencart
- - i_fa_expeditedssl
- - i_fa_battery_full i_fa_battery_fa_battery_full i_fa_battery_4_fa_battery_full
- - i_fa_battery_three_quarters i_fa_battery_3_fa_battery_three_quarters
- - i_fa_battery_half i_fa_battery_2_fa_battery_half
- - i_fa_battery_quarter i_fa_battery_1_fa_battery_quarter
- - i_fa_battery_empty i_fa_battery_0_fa_battery_empty
- - i_fa_mouse_pointer
- - i_fa_i_cursor
- - i_fa_object_group
- - i_fa_object_ungroup
- - i_fa_sticky_note
- - i_fa_sticky_note_o
- - i_fa_cc_jcb
- - i_fa_cc_diners_club
- - i_fa_clone
- - i_fa_balance_scale
- - i_fa_hourglass_o
- - i_fa_hourglass_start i_fa_hourglass_1_fa_hourglass_start
- - i_fa_hourglass_half i_fa_hourglass_2_fa_hourglass_half
- - i_fa_hourglass_end i_fa_hourglass_3_fa_hourglass_end
- - i_fa_hourglass
- - i_fa_hand_rock_o i_fa_hand_grab_o_fa_hand_rock_o
- - i_fa_hand_paper_o i_fa_hand_stop_o_fa_hand_paper_o
- - i_fa_hand_scissors_o
- - i_fa_hand_lizard_o
- - i_fa_hand_spock_o
- - i_fa_hand_pointer_o
- - i_fa_hand_peace_o
- - i_fa_trademark
- - i_fa_registered
- - i_fa_creative_commons
- - i_fa_gg
- - i_fa_gg_circle
- - i_fa_tripadvisor
- - i_fa_odnoklassniki
- - i_fa_odnoklassniki_square
- - i_fa_get_pocket
- - i_fa_wikipedia_w
- - i_fa_safari
- - i_fa_chrome
- - i_fa_firefox
- - i_fa_opera
- - i_fa_internet_explorer
- - i_fa_television i_fa_tv_fa_television
- - i_fa_contao
- - i_fa_500px
- - i_fa_amazon
- - i_fa_calendar_plus_o
- - i_fa_calendar_minus_o
- - i_fa_calendar_times_o
- - i_fa_calendar_check_o
- - i_fa_industry
- - i_fa_map_pin
- - i_fa_map_signs
- - i_fa_map_o
- - i_fa_map
- - i_fa_commenting
- - i_fa_commenting_o
- - i_fa_houzz
- - i_fa_vimeo
- - i_fa_black_tie
- - i_fa_fonticons
- - i_fa_reddit_alien
- - i_fa_edge
- - i_fa_credit_card_alt
- - i_fa_codiepie
- - i_fa_modx
- - i_fa_fort_awesome
- - i_fa_usb
- - i_fa_product_hunt
- - i_fa_mixcloud
- - i_fa_scribd
- - i_fa_pause_circle
- - i_fa_pause_circle_o
- - i_fa_stop_circle
- - i_fa_stop_circle_o
- - i_fa_shopping_bag
- - i_fa_shopping_basket
- - i_fa_hashtag
- - i_fa_bluetooth
- - i_fa_bluetooth_b
- - i_fa_percent
- - i_fa_gitlab
- - i_fa_wpbeginner
- - i_fa_wpforms
- - i_fa_envira
- - i_fa_universal_access
- - i_fa_wheelchair_alt
- - i_fa_question_circle_o
- - i_fa_blind
- - i_fa_audio_description
- - i_fa_volume_control_phone
- - i_fa_braille
- - i_fa_assistive_listening_systems
- - i_fa_american_sign_language_interpreting i_fa_asl_interpreting_fa_american_sign_language_interpreting
- - i_fa_deaf i_fa_deafness_fa_deaf i_fa_hard_of_hearing_fa_deaf
- - i_fa_glide
- - i_fa_glide_g
- - i_fa_sign_language i_fa_signing_fa_sign_language
- - i_fa_low_vision
- - i_fa_viadeo
- - i_fa_viadeo_square
- - i_fa_snapchat
- - i_fa_snapchat_ghost
- - i_fa_snapchat_square
- - i_fa_pied_piper
- - i_fa_first_order
- - i_fa_yoast
- - i_fa_themeisle
- - i_fa_google_plus_official i_fa_google_plus_circle_fa_google_plus_official
- - i_fa_font_awesome i_fa_fa_fa_font_awesome
- - i_fa_handshake_o
- - i_fa_envelope_open
- - i_fa_envelope_open_o
- - i_fa_linode
- - i_fa_address_book
- - i_fa_address_book_o
- - i_fa_address_card i_fa_vcard_fa_address_card
- - i_fa_address_card_o i_fa_vcard_o_fa_address_card_o
- - i_fa_user_circle
- - i_fa_user_circle_o
- - i_fa_user_o
- - i_fa_id_badge
- - i_fa_id_card i_fa_drivers_license_fa_id_card
- - i_fa_id_card_o i_fa_drivers_license_o_fa_id_card_o
- - i_fa_quora
- - i_fa_free_code_camp
- - i_fa_telegram
- - i_fa_thermometer_full i_fa_thermometer_fa_thermometer_full i_fa_thermometer_4_fa_thermometer_full
- - i_fa_thermometer_three_quarters i_fa_thermometer_3_fa_thermometer_three_quarters
- - i_fa_thermometer_half i_fa_thermometer_2_fa_thermometer_half
- - i_fa_thermometer_quarter i_fa_thermometer_1_fa_thermometer_quarter
- - i_fa_thermometer_empty i_fa_thermometer_0_fa_thermometer_empty
- - i_fa_shower
- - i_fa_bath i_fa_bathtub_fa_bath i_fa_s15_fa_bath
- - i_fa_podcast
- - i_fa_window_maximize
- - i_fa_window_minimize
- - i_fa_window_restore
- - i_fa_window_close i_fa_times_rectangle_fa_window_close
- - i_fa_window_close_o i_fa_times_rectangle_o_fa_window_close_o
- - i_fa_bandcamp
- - i_fa_grav
- - i_fa_etsy
- - i_fa_imdb
- - i_fa_ravelry
- - i_fa_eercast
- - i_fa_microchip
- - i_fa_snowflake_o
- - i_fa_superpowers
- - i_fa_wpexplorer
- - i_fa_meetup
-⏻ - i_iec_power
-⏼ - i_iec_toggle_power
-⏽ - i_iec_power_on
-⏾ - i_iec_sleep_mode
-⭘ - i_iec_power_off
- - i_linux_alpine
- - i_linux_aosc
- - i_linux_apple
- - i_linux_archlinux
- - i_linux_centos
- - i_linux_coreos
- - i_linux_debian
- - i_linux_devuan
- - i_linux_docker
- - i_linux_elementary
- - i_linux_fedora
- - i_linux_fedora_inverse
- - i_linux_freebsd
- - i_linux_gentoo
- - i_linux_linuxmint
- - i_linux_linuxmint_inverse
- - i_linux_mageia
- - i_linux_mandriva
- - i_linux_manjaro
- - i_linux_nixos
- - i_linux_opensuse
- - i_linux_raspberry_pi
- - i_linux_redhat
- - i_linux_sabayon
- - i_linux_slackware
- - i_linux_slackware_inverse
- - i_linux_tux
- - i_linux_ubuntu
- - i_linux_ubuntu_inverse
- - i_mdi_vector_square
- - i_mdi_access_point
- - i_mdi_access_point_network
- - i_mdi_account
- - i_mdi_account_alert
- - i_mdi_account_box
- - i_mdi_account_box_outline
- - i_mdi_account_check
- - i_mdi_account_circle
- - i_mdi_account_convert
- - i_mdi_account_key
- - i_mdi_account_location
- - i_mdi_account_minus
- - i_mdi_account_multiple
- - i_mdi_account_multiple_outline
- - i_mdi_account_multiple_plus
- - i_mdi_account_network
- - i_mdi_account_off
- - i_mdi_account_outline
- - i_mdi_account_plus
- - i_mdi_account_remove
- - i_mdi_account_search
- - i_mdi_account_star
- - i_mdi_orbit
- - i_mdi_account_switch
- - i_mdi_adjust
- - i_mdi_air_conditioner
- - i_mdi_airballoon
- - i_mdi_airplane
- - i_mdi_airplane_off
- - i_mdi_airplay
- - i_mdi_alarm
- - i_mdi_alarm_check
- - i_mdi_alarm_multiple
- - i_mdi_alarm_off
- - i_mdi_alarm_plus
- - i_mdi_album
- - i_mdi_alert
- - i_mdi_alert_box
- - i_mdi_alert_circle
- - i_mdi_alert_octagon
- - i_mdi_alert_outline
- - i_mdi_alpha
- - i_mdi_alphabetical
- - i_mdi_amazon
- - i_mdi_amazon_clouddrive
- - i_mdi_ambulance
- - i_mdi_amplifier
- - i_mdi_anchor
- - i_mdi_android
- - i_mdi_android_debug_bridge
- - i_mdi_android_studio
- - i_mdi_apple
- - i_mdi_apple_finder
- - i_mdi_apple_ios
- - i_mdi_apple_mobileme
- - i_mdi_apple_safari
- - i_mdi_font_awesome
- - i_mdi_apps
- - i_mdi_archive
- - i_mdi_arrange_bring_forward
- - i_mdi_arrange_bring_to_front
- - i_mdi_arrange_send_backward
- - i_mdi_arrange_send_to_back
- - i_mdi_arrow_all
- - i_mdi_arrow_bottom_left
- - i_mdi_arrow_bottom_right
- - i_mdi_arrow_collapse_all
- - i_mdi_arrow_down
- - i_mdi_arrow_down_thick
- - i_mdi_arrow_down_bold_circle
- - i_mdi_arrow_down_bold_circle_outline
- - i_mdi_arrow_down_bold_hexagon_outline
- - i_mdi_arrow_down_drop_circle
- - i_mdi_arrow_down_drop_circle_outline
- - i_mdi_arrow_expand_all
- - i_mdi_arrow_left
- - i_mdi_arrow_left_thick
- - i_mdi_arrow_left_bold_circle
- - i_mdi_arrow_left_bold_circle_outline
- - i_mdi_arrow_left_bold_hexagon_outline
- - i_mdi_arrow_left_drop_circle
- - i_mdi_arrow_left_drop_circle_outline
- - i_mdi_arrow_right
- - i_mdi_arrow_right_thick
- - i_mdi_arrow_right_bold_circle
- - i_mdi_arrow_right_bold_circle_outline
- - i_mdi_arrow_right_bold_hexagon_outline
- - i_mdi_arrow_right_drop_circle
- - i_mdi_arrow_right_drop_circle_outline
- - i_mdi_arrow_top_left
- - i_mdi_arrow_top_right
- - i_mdi_arrow_up
- - i_mdi_arrow_up_thick
- - i_mdi_arrow_up_bold_circle
- - i_mdi_arrow_up_bold_circle_outline
- - i_mdi_arrow_up_bold_hexagon_outline
- - i_mdi_arrow_up_drop_circle
- - i_mdi_arrow_up_drop_circle_outline
- - i_mdi_assistant
- - i_mdi_at
- - i_mdi_attachment
- - i_mdi_audiobook
- - i_mdi_auto_fix
- - i_mdi_auto_upload
- - i_mdi_autorenew
- - i_mdi_av_timer
- - i_mdi_baby
- - i_mdi_backburger
- - i_mdi_backspace
- - i_mdi_backup_restore
- - i_mdi_bank
- - i_mdi_barcode
- - i_mdi_barcode_scan
- - i_mdi_barley
- - i_mdi_barrel
- - i_mdi_basecamp
- - i_mdi_basket
- - i_mdi_basket_fill
- - i_mdi_basket_unfill
- - i_mdi_battery
- - i_mdi_battery_10
- - i_mdi_battery_20
- - i_mdi_battery_30
- - i_mdi_battery_40
- - i_mdi_battery_50
- - i_mdi_battery_60
- - i_mdi_battery_70
- - i_mdi_battery_80
- - i_mdi_battery_90
- - i_mdi_battery_alert
- - i_mdi_battery_charging
- - i_mdi_battery_charging_100
- - i_mdi_battery_charging_20
- - i_mdi_battery_charging_30
- - i_mdi_battery_charging_40
- - i_mdi_battery_charging_60
- - i_mdi_battery_charging_80
- - i_mdi_battery_charging_90
- - i_mdi_battery_minus
- - i_mdi_battery_negative
- - i_mdi_battery_outline
- - i_mdi_battery_plus
- - i_mdi_battery_positive
- - i_mdi_battery_unknown
- - i_mdi_beach
- - i_mdi_flask
- - i_mdi_flask_empty
- - i_mdi_flask_empty_outline
- - i_mdi_flask_outline
- - i_mdi_beats
- - i_mdi_beer
- - i_mdi_behance
- - i_mdi_bell
- - i_mdi_bell_off
- - i_mdi_bell_outline
- - i_mdi_bell_plus
- - i_mdi_bell_ring
- - i_mdi_bell_ring_outline
- - i_mdi_bell_sleep
- - i_mdi_beta
- - i_mdi_bible
- - i_mdi_bike
- - i_mdi_bing
- - i_mdi_binoculars
- - i_mdi_bio
- - i_mdi_biohazard
- - i_mdi_bitbucket
- - i_mdi_black_mesa
- - i_mdi_blackberry
- - i_mdi_blender
- - i_mdi_blinds
- - i_mdi_block_helper
- - i_mdi_blogger
- - i_mdi_bluetooth
- - i_mdi_bluetooth_audio
- - i_mdi_bluetooth_connect
- - i_mdi_bluetooth_off
- - i_mdi_bluetooth_settings
- - i_mdi_bluetooth_transfer
- - i_mdi_blur
- - i_mdi_blur_linear
- - i_mdi_blur_off
- - i_mdi_blur_radial
- - i_mdi_bone
- - i_mdi_book
- - i_mdi_book_multiple
- - i_mdi_book_multiple_variant
- - i_mdi_book_open
- - i_mdi_book_open_variant
- - i_mdi_book_variant
- - i_mdi_bookmark
- - i_mdi_bookmark_check
- - i_mdi_bookmark_music
- - i_mdi_bookmark_outline
- - i_mdi_bookmark_plus_outline
- - i_mdi_bookmark_plus
- - i_mdi_bookmark_remove
- - i_mdi_border_all
- - i_mdi_border_bottom
- - i_mdi_border_color
- - i_mdi_border_horizontal
- - i_mdi_border_inside
- - i_mdi_border_left
- - i_mdi_border_none
- - i_mdi_border_outside
- - i_mdi_border_right
- - i_mdi_border_style
- - i_mdi_border_top
- - i_mdi_border_vertical
- - i_mdi_bowling
- - i_mdi_box
- - i_mdi_box_cutter
- - i_mdi_briefcase
- - i_mdi_briefcase_check
- - i_mdi_briefcase_download
- - i_mdi_briefcase_upload
- - i_mdi_brightness_1
- - i_mdi_brightness_2
- - i_mdi_brightness_3
- - i_mdi_brightness_4
- - i_mdi_brightness_5
- - i_mdi_brightness_6
- - i_mdi_brightness_7
- - i_mdi_brightness_auto
- - i_mdi_broom
- - i_mdi_brush
- - i_mdi_bug
- - i_mdi_bulletin_board
- - i_mdi_bullhorn
- - i_mdi_bus
- - i_mdi_cached
- - i_mdi_cake
- - i_mdi_cake_layered
- - i_mdi_cake_variant
- - i_mdi_calculator
- - i_mdi_calendar
- - i_mdi_calendar_blank
- - i_mdi_calendar_check
- - i_mdi_calendar_clock
- - i_mdi_calendar_multiple
- - i_mdi_calendar_multiple_check
- - i_mdi_calendar_plus
- - i_mdi_calendar_remove
- - i_mdi_calendar_text
- - i_mdi_calendar_today
- - i_mdi_call_made
- - i_mdi_call_merge
- - i_mdi_call_missed
- - i_mdi_call_received
- - i_mdi_call_split
- - i_mdi_camcorder
- - i_mdi_camcorder_box
- - i_mdi_camcorder_box_off
- - i_mdi_camcorder_off
- - i_mdi_camera
- - i_mdi_camera_enhance
- - i_mdi_camera_front
- - i_mdi_camera_front_variant
- - i_mdi_camera_iris
- - i_mdi_camera_party_mode
- - i_mdi_camera_rear
- - i_mdi_camera_rear_variant
- - i_mdi_camera_switch
- - i_mdi_camera_timer
- - i_mdi_candycane
- - i_mdi_car
- - i_mdi_car_battery
- - i_mdi_car_connected
- - i_mdi_car_wash
- - i_mdi_carrot
- - i_mdi_cart
- - i_mdi_cart_outline
- - i_mdi_cart_plus
- - i_mdi_case_sensitive_alt
- - i_mdi_cash
- - i_mdi_cash_100
- - i_mdi_cash_multiple
- - i_mdi_cash_usd
- - i_mdi_cast
- - i_mdi_cast_connected
- - i_mdi_castle
- - i_mdi_cat
- - i_mdi_cellphone
- - i_mdi_cellphone_android
- - i_mdi_cellphone_basic
- - i_mdi_cellphone_dock
- - i_mdi_cellphone_iphone
- - i_mdi_cellphone_link
- - i_mdi_cellphone_link_off
- - i_mdi_cellphone_settings
- - i_mdi_certificate
- - i_mdi_chair_school
- - i_mdi_chart_arc
- - i_mdi_chart_areaspline
- - i_mdi_chart_bar
- - i_mdi_chart_histogram
- - i_mdi_chart_line
- - i_mdi_chart_pie
- - i_mdi_check
- - i_mdi_check_all
- - i_mdi_checkbox_blank
- - i_mdi_checkbox_blank_circle
- - i_mdi_checkbox_blank_circle_outline
- - i_mdi_checkbox_blank_outline
- - i_mdi_checkbox_marked
- - i_mdi_checkbox_marked_circle
- - i_mdi_checkbox_marked_circle_outline
- - i_mdi_checkbox_marked_outline
- - i_mdi_checkbox_multiple_blank
- - i_mdi_checkbox_multiple_blank_outline
- - i_mdi_checkbox_multiple_marked
- - i_mdi_checkbox_multiple_marked_outline
- - i_mdi_checkerboard
- - i_mdi_chemical_weapon
- - i_mdi_chevron_double_down
- - i_mdi_chevron_double_left
- - i_mdi_chevron_double_right
- - i_mdi_chevron_double_up
- - i_mdi_chevron_down
- - i_mdi_chevron_left
- - i_mdi_chevron_right
- - i_mdi_chevron_up
- - i_mdi_church
- - i_mdi_cisco_webex
- - i_mdi_city
- - i_mdi_clipboard
- - i_mdi_clipboard_account
- - i_mdi_clipboard_alert
- - i_mdi_clipboard_arrow_down
- - i_mdi_clipboard_arrow_left
- - i_mdi_clipboard_check
- - i_mdi_clipboard_outline
- - i_mdi_clipboard_text
- - i_mdi_clippy
- - i_mdi_clock
- - i_mdi_clock_end
- - i_mdi_clock_fast
- - i_mdi_clock_in
- - i_mdi_clock_out
- - i_mdi_clock_start
- - i_mdi_close
- - i_mdi_close_box
- - i_mdi_close_box_outline
- - i_mdi_close_circle
- - i_mdi_close_circle_outline
- - i_mdi_close_network
- - i_mdi_close_octagon
- - i_mdi_close_octagon_outline
- - i_mdi_closed_caption
- - i_mdi_cloud
- - i_mdi_cloud_check
- - i_mdi_cloud_circle
- - i_mdi_cloud_download
- - i_mdi_cloud_outline
- - i_mdi_cloud_off_outline
- - i_mdi_cloud_print
- - i_mdi_cloud_print_outline
- - i_mdi_cloud_upload
- - i_mdi_code_array
- - i_mdi_code_braces
- - i_mdi_code_brackets
- - i_mdi_code_equal
- - i_mdi_code_greater_than
- - i_mdi_code_greater_than_or_equal
- - i_mdi_code_less_than
- - i_mdi_code_less_than_or_equal
- - i_mdi_code_not_equal
- - i_mdi_code_not_equal_variant
- - i_mdi_code_parentheses
- - i_mdi_code_string
- - i_mdi_code_tags
- - i_mdi_codepen
- - i_mdi_coffee
- - i_mdi_coffee_to_go
- - i_mdi_coin
- - i_mdi_color_helper
- - i_mdi_comment
- - i_mdi_comment_account
- - i_mdi_comment_account_outline
- - i_mdi_comment_alert
- - i_mdi_comment_alert_outline
- - i_mdi_comment_check
- - i_mdi_comment_check_outline
- - i_mdi_comment_multiple_outline
- - i_mdi_comment_outline
- - i_mdi_comment_plus_outline
- - i_mdi_comment_processing
- - i_mdi_comment_processing_outline
- - i_mdi_comment_question_outline
- - i_mdi_comment_remove_outline
- - i_mdi_comment_text
- - i_mdi_comment_text_outline
- - i_mdi_compare
- - i_mdi_compass
- - i_mdi_compass_outline
- - i_mdi_console
- - i_mdi_contact_mail
- - i_mdi_content_copy
- - i_mdi_content_cut
- - i_mdi_content_duplicate
- - i_mdi_content_paste
- - i_mdi_content_save
- - i_mdi_content_save_all
- - i_mdi_contrast
- - i_mdi_contrast_box
- - i_mdi_contrast_circle
- - i_mdi_cookie
- - i_mdi_counter
- - i_mdi_cow
- - i_mdi_credit_card
- - i_mdi_credit_card_multiple
- - i_mdi_credit_card_scan
- - i_mdi_crop
- - i_mdi_crop_free
- - i_mdi_crop_landscape
- - i_mdi_crop_portrait
- - i_mdi_crop_square
- - i_mdi_crosshairs
- - i_mdi_crosshairs_gps
- - i_mdi_crown
- - i_mdi_cube
- - i_mdi_cube_outline
- - i_mdi_cube_send
- - i_mdi_cube_unfolded
- - i_mdi_cup
- - i_mdi_cup_water
- - i_mdi_currency_btc
- - i_mdi_currency_eur
- - i_mdi_currency_gbp
- - i_mdi_currency_inr
- - i_mdi_currency_ngn
- - i_mdi_currency_rub
- - i_mdi_currency_try
- - i_mdi_currency_usd
- - i_mdi_cursor_default
- - i_mdi_cursor_default_outline
- - i_mdi_cursor_move
- - i_mdi_cursor_pointer
- - i_mdi_database
- - i_mdi_database_minus
- - i_mdi_database_plus
- - i_mdi_debug_step_into
- - i_mdi_debug_step_out
- - i_mdi_debug_step_over
- - i_mdi_decimal_decrease
- - i_mdi_decimal_increase
- - i_mdi_delete
- - i_mdi_delete_variant
- - i_mdi_delta
- - i_mdi_deskphone
- - i_mdi_desktop_mac
- - i_mdi_desktop_tower
- - i_mdi_details
- - i_mdi_deviantart
- - i_mdi_diamond
- - i_mdi_creation
- - i_mdi_dice_1
- - i_mdi_dice_2
- - i_mdi_dice_3
- - i_mdi_dice_4
- - i_mdi_dice_5
- - i_mdi_dice_6
- - i_mdi_directions
- - i_mdi_disk_alert
- - i_mdi_disqus
- - i_mdi_disqus_outline
- - i_mdi_division
- - i_mdi_division_box
- - i_mdi_dns
- - i_mdi_domain
- - i_mdi_dots_horizontal
- - i_mdi_dots_vertical
- - i_mdi_download
- - i_mdi_drag
- - i_mdi_drag_horizontal
- - i_mdi_drag_vertical
- - i_mdi_drawing
- - i_mdi_drawing_box
- - i_mdi_dribbble
- - i_mdi_dribbble_box
- - i_mdi_drone
- - i_mdi_dropbox
- - i_mdi_drupal
- - i_mdi_duck
- - i_mdi_dumbbell
- - i_mdi_earth
- - i_mdi_earth_off
- - i_mdi_edge
- - i_mdi_eject
- - i_mdi_elevation_decline
- - i_mdi_elevation_rise
- - i_mdi_elevator
- - i_mdi_email
- - i_mdi_email_open
- - i_mdi_email_outline
- - i_mdi_email_secure
- - i_mdi_emoticon
- - i_mdi_emoticon_cool
- - i_mdi_emoticon_devil
- - i_mdi_emoticon_happy
- - i_mdi_emoticon_neutral
- - i_mdi_emoticon_poop
- - i_mdi_emoticon_sad
- - i_mdi_emoticon_tongue
- - i_mdi_engine
- - i_mdi_engine_outline
- - i_mdi_equal
- - i_mdi_equal_box
- - i_mdi_eraser
- - i_mdi_escalator
- - i_mdi_ethernet
- - i_mdi_ethernet_cable
- - i_mdi_ethernet_cable_off
- - i_mdi_etsy
- - i_mdi_evernote
- - i_mdi_exclamation
- - i_mdi_exit_to_app
- - i_mdi_export
- - i_mdi_eye
- - i_mdi_eye_off
- - i_mdi_eyedropper
- - i_mdi_eyedropper_variant
- - i_mdi_facebook
- - i_mdi_facebook_box
- - i_mdi_facebook_messenger
- - i_mdi_factory
- - i_mdi_fan
- - i_mdi_fast_forward
- - i_mdi_fax
- - i_mdi_ferry
- - i_mdi_file
- - i_mdi_file_chart
- - i_mdi_file_check
- - i_mdi_file_cloud
- - i_mdi_file_delimited
- - i_mdi_file_document
- - i_mdi_file_document_box
- - i_mdi_file_excel
- - i_mdi_file_excel_box
- - i_mdi_file_export
- - i_mdi_file_find
- - i_mdi_file_image
- - i_mdi_file_import
- - i_mdi_file_lock
- - i_mdi_file_multiple
- - i_mdi_file_music
- - i_mdi_file_outline
- - i_mdi_file_pdf
- - i_mdi_file_pdf_box
- - i_mdi_file_powerpoint
- - i_mdi_file_powerpoint_box
- - i_mdi_file_presentation_box
- - i_mdi_file_send
- - i_mdi_file_video
- - i_mdi_file_word
- - i_mdi_file_word_box
- - i_mdi_file_xml
- - i_mdi_film
- - i_mdi_filmstrip
- - i_mdi_filmstrip_off
- - i_mdi_filter
- - i_mdi_filter_outline
- - i_mdi_filter_remove
- - i_mdi_filter_remove_outline
- - i_mdi_filter_variant
- - i_mdi_fingerprint
- - i_mdi_fire
- - i_mdi_firefox
- - i_mdi_fish
- - i_mdi_flag
- - i_mdi_flag_checkered
- - i_mdi_flag_outline
- - i_mdi_flag_variant_outline
- - i_mdi_flag_triangle
- - i_mdi_flag_variant
- - i_mdi_flash
- - i_mdi_flash_auto
- - i_mdi_flash_off
- - i_mdi_flashlight
- - i_mdi_flashlight_off
- - i_mdi_flattr
- - i_mdi_flip_to_back
- - i_mdi_flip_to_front
- - i_mdi_floppy
- - i_mdi_flower
- - i_mdi_folder
- - i_mdi_folder_account
- - i_mdi_folder_download
- - i_mdi_folder_google_drive
- - i_mdi_folder_image
- - i_mdi_folder_lock
- - i_mdi_folder_lock_open
- - i_mdi_folder_move
- - i_mdi_folder_multiple
- - i_mdi_folder_multiple_image
- - i_mdi_folder_multiple_outline
- - i_mdi_folder_outline
- - i_mdi_folder_plus
- - i_mdi_folder_remove
- - i_mdi_folder_upload
- - i_mdi_food
- - i_mdi_food_apple
- - i_mdi_food_variant
- - i_mdi_football
- - i_mdi_football_australian
- - i_mdi_football_helmet
- - i_mdi_format_align_center
- - i_mdi_format_align_justify
- - i_mdi_format_align_left
- - i_mdi_format_align_right
- - i_mdi_format_bold
- - i_mdi_format_clear
- - i_mdi_format_color_fill
- - i_mdi_format_float_center
- - i_mdi_format_float_left
- - i_mdi_format_float_none
- - i_mdi_format_float_right
- - i_mdi_format_header_1
- - i_mdi_format_header_2
- - i_mdi_format_header_3
- - i_mdi_format_header_4
- - i_mdi_format_header_5
- - i_mdi_format_header_6
- - i_mdi_format_header_decrease
- - i_mdi_format_header_equal
- - i_mdi_format_header_increase
- - i_mdi_format_header_pound
- - i_mdi_format_indent_decrease
- - i_mdi_format_indent_increase
- - i_mdi_format_italic
- - i_mdi_format_line_spacing
- - i_mdi_format_list_bulleted
- - i_mdi_format_list_bulleted_type
- - i_mdi_format_list_numbers
- - i_mdi_format_paint
- - i_mdi_format_paragraph
- - i_mdi_format_quote_close
- - i_mdi_format_size
- - i_mdi_format_strikethrough
- - i_mdi_format_strikethrough_variant
- - i_mdi_format_subscript
- - i_mdi_format_superscript
- - i_mdi_format_text
- - i_mdi_format_textdirection_l_to_r
- - i_mdi_format_textdirection_r_to_l
- - i_mdi_format_underline
- - i_mdi_format_wrap_inline
- - i_mdi_format_wrap_square
- - i_mdi_format_wrap_tight
- - i_mdi_format_wrap_top_bottom
- - i_mdi_forum
- - i_mdi_forward
- - i_mdi_foursquare
- - i_mdi_fridge
- - i_mdi_fridge_filled
- - i_mdi_fridge_filled_bottom
- - i_mdi_fridge_filled_top
- - i_mdi_fullscreen
- - i_mdi_fullscreen_exit
- - i_mdi_function
- - i_mdi_gamepad
- - i_mdi_gamepad_variant
- - i_mdi_gas_station
- - i_mdi_gate
- - i_mdi_gauge
- - i_mdi_gavel
- - i_mdi_gender_female
- - i_mdi_gender_male
- - i_mdi_gender_male_female
- - i_mdi_gender_transgender
- - i_mdi_ghost
- - i_mdi_gift
- - i_mdi_git
- - i_mdi_github_box
- - i_mdi_github_circle
- - i_mdi_glass_flute
- - i_mdi_glass_mug
- - i_mdi_glass_stange
- - i_mdi_glass_tulip
- - i_mdi_glassdoor
- - i_mdi_glasses
- - i_mdi_gmail
- - i_mdi_gnome
- - i_mdi_google
- - i_mdi_google_cardboard
- - i_mdi_google_chrome
- - i_mdi_google_circles
- - i_mdi_google_circles_communities
- - i_mdi_google_circles_extended
- - i_mdi_google_circles_group
- - i_mdi_google_controller
- - i_mdi_google_controller_off
- - i_mdi_google_drive
- - i_mdi_google_earth
- - i_mdi_google_glass
- - i_mdi_google_nearby
- - i_mdi_google_pages
- - i_mdi_google_physical_web
- - i_mdi_google_play
- - i_mdi_google_plus
- - i_mdi_google_plus_box
- - i_mdi_google_translate
- - i_mdi_google_wallet
- - i_mdi_grid
- - i_mdi_grid_off
- - i_mdi_group
- - i_mdi_guitar_electric
- - i_mdi_guitar_pick
- - i_mdi_guitar_pick_outline
- - i_mdi_hand_pointing_right
- - i_mdi_hanger
- - i_mdi_hangouts
- - i_mdi_harddisk
- - i_mdi_headphones
- - i_mdi_headphones_box
- - i_mdi_headphones_settings
- - i_mdi_headset
- - i_mdi_headset_dock
- - i_mdi_headset_off
- - i_mdi_heart
- - i_mdi_heart_box
- - i_mdi_heart_box_outline
- - i_mdi_heart_broken
- - i_mdi_heart_outline
- - i_mdi_help
- - i_mdi_help_circle
- - i_mdi_hexagon
- - i_mdi_hexagon_outline
- - i_mdi_history
- - i_mdi_hololens
- - i_mdi_home
- - i_mdi_home_modern
- - i_mdi_home_variant
- - i_mdi_hops
- - i_mdi_hospital
- - i_mdi_hospital_building
- - i_mdi_hospital_marker
- - i_mdi_hotel
- - i_mdi_houzz
- - i_mdi_houzz_box
- - i_mdi_human
- - i_mdi_human_child
- - i_mdi_human_male_female
- - i_mdi_image
- - i_mdi_image_album
- - i_mdi_image_area
- - i_mdi_image_area_close
- - i_mdi_image_broken
- - i_mdi_image_broken_variant
- - i_mdi_image_filter
- - i_mdi_image_filter_black_white
- - i_mdi_image_filter_center_focus
- - i_mdi_image_filter_center_focus_weak
- - i_mdi_image_filter_drama
- - i_mdi_image_filter_frames
- - i_mdi_image_filter_hdr
- - i_mdi_image_filter_none
- - i_mdi_image_filter_tilt_shift
- - i_mdi_image_filter_vintage
- - i_mdi_image_multiple
- - i_mdi_import
- - i_mdi_inbox_arrow_down
- - i_mdi_information
- - i_mdi_information_outline
- - i_mdi_instagram
- - i_mdi_instapaper
- - i_mdi_internet_explorer
- - i_mdi_invert_colors
- - i_mdi_jeepney
- - i_mdi_jira
- - i_mdi_jsfiddle
- - i_mdi_keg
- - i_mdi_key
- - i_mdi_key_change
- - i_mdi_key_minus
- - i_mdi_key_plus
- - i_mdi_key_remove
- - i_mdi_key_variant
- - i_mdi_keyboard
- - i_mdi_keyboard_backspace
- - i_mdi_keyboard_caps
- - i_mdi_keyboard_close
- - i_mdi_keyboard_off
- - i_mdi_keyboard_return
- - i_mdi_keyboard_tab
- - i_mdi_keyboard_variant
- - i_mdi_kodi
- - i_mdi_label
- - i_mdi_label_outline
- - i_mdi_lan
- - i_mdi_lan_connect
- - i_mdi_lan_disconnect
- - i_mdi_lan_pending
- - i_mdi_language_csharp
- - i_mdi_language_css3
- - i_mdi_language_html5
- - i_mdi_language_javascript
- - i_mdi_language_php
- - i_mdi_language_python
- - i_mdi_language_python_text
- - i_mdi_laptop
- - i_mdi_laptop_chromebook
- - i_mdi_laptop_mac
- - i_mdi_laptop_windows
- - i_mdi_lastfm
- - i_mdi_launch
- - i_mdi_layers
- - i_mdi_layers_off
- - i_mdi_leaf
- - i_mdi_led_off
- - i_mdi_led_on
- - i_mdi_led_outline
- - i_mdi_led_variant_off
- - i_mdi_led_variant_on
- - i_mdi_led_variant_outline
- - i_mdi_library
- - i_mdi_library_books
- - i_mdi_library_music
- - i_mdi_library_plus
- - i_mdi_lightbulb
- - i_mdi_lightbulb_outline
- - i_mdi_link
- - i_mdi_link_off
- - i_mdi_link_variant
- - i_mdi_link_variant_off
- - i_mdi_linkedin
- - i_mdi_linkedin_box
- - i_mdi_linux
- - i_mdi_lock
- - i_mdi_lock_open
- - i_mdi_lock_open_outline
- - i_mdi_lock_outline
- - i_mdi_login
- - i_mdi_logout
- - i_mdi_looks
- - i_mdi_loupe
- - i_mdi_lumx
- - i_mdi_magnet
- - i_mdi_magnet_on
- - i_mdi_magnify
- - i_mdi_magnify_minus
- - i_mdi_magnify_plus
- - i_mdi_mail_ru
- - i_mdi_map
- - i_mdi_map_marker
- - i_mdi_map_marker_circle
- - i_mdi_map_marker_multiple
- - i_mdi_map_marker_off
- - i_mdi_map_marker_radius
- - i_mdi_margin
- - i_mdi_markdown
- - i_mdi_marker_check
- - i_mdi_martini
- - i_mdi_material_ui
- - i_mdi_math_compass
- - i_mdi_maxcdn
- - i_mdi_medium
- - i_mdi_memory
- - i_mdi_menu
- - i_mdi_menu_down
- - i_mdi_menu_left
- - i_mdi_menu_right
- - i_mdi_menu_up
- - i_mdi_message
- - i_mdi_message_alert
- - i_mdi_message_draw
- - i_mdi_message_image
- - i_mdi_message_outline
- - i_mdi_message_processing
- - i_mdi_message_reply
- - i_mdi_message_reply_text
- - i_mdi_message_text
- - i_mdi_message_text_outline
- - i_mdi_message_video
- - i_mdi_microphone
- - i_mdi_microphone_off
- - i_mdi_microphone_outline
- - i_mdi_microphone_settings
- - i_mdi_microphone_variant
- - i_mdi_microphone_variant_off
- - i_mdi_microsoft
- - i_mdi_minecraft
- - i_mdi_minus
- - i_mdi_minus_box
- - i_mdi_minus_circle
- - i_mdi_minus_circle_outline
- - i_mdi_minus_network
- - i_mdi_monitor
- - i_mdi_monitor_multiple
- - i_mdi_more
- - i_mdi_motorbike
- - i_mdi_mouse
- - i_mdi_mouse_off
- - i_mdi_mouse_variant
- - i_mdi_mouse_variant_off
- - i_mdi_movie
- - i_mdi_multiplication
- - i_mdi_multiplication_box
- - i_mdi_music_box
- - i_mdi_music_box_outline
- - i_mdi_music_circle
- - i_mdi_music_note
- - i_mdi_music_note_eighth
- - i_mdi_music_note_half
- - i_mdi_music_note_off
- - i_mdi_music_note_quarter
- - i_mdi_music_note_sixteenth
- - i_mdi_music_note_whole
- - i_mdi_nature
- - i_mdi_nature_people
- - i_mdi_navigation
- - i_mdi_needle
- - i_mdi_nest_protect
- - i_mdi_nest_thermostat
- - i_mdi_new_box
- - i_mdi_newspaper
- - i_mdi_nfc
- - i_mdi_nfc_tap
- - i_mdi_nfc_variant
- - i_mdi_nodejs
- - i_mdi_note
- - i_mdi_note_outline
- - i_mdi_note_plus
- - i_mdi_note_plus_outline
- - i_mdi_note_text
- - i_mdi_notification_clear_all
- - i_mdi_numeric
- - i_mdi_numeric_0_box
- - i_mdi_numeric_0_box_multiple_outline
- - i_mdi_numeric_0_box_outline
- - i_mdi_numeric_1_box
- - i_mdi_numeric_1_box_multiple_outline
- - i_mdi_numeric_1_box_outline
- - i_mdi_numeric_2_box
- - i_mdi_numeric_2_box_multiple_outline
- - i_mdi_numeric_2_box_outline
- - i_mdi_numeric_3_box
- - i_mdi_numeric_3_box_multiple_outline
- - i_mdi_numeric_3_box_outline
- - i_mdi_numeric_4_box
- - i_mdi_numeric_4_box_multiple_outline
- - i_mdi_numeric_4_box_outline
- - i_mdi_numeric_5_box
- - i_mdi_numeric_5_box_multiple_outline
- - i_mdi_numeric_5_box_outline
- - i_mdi_numeric_6_box
- - i_mdi_numeric_6_box_multiple_outline
- - i_mdi_numeric_6_box_outline
- - i_mdi_numeric_7_box
- - i_mdi_numeric_7_box_multiple_outline
- - i_mdi_numeric_7_box_outline
- - i_mdi_numeric_8_box
- - i_mdi_numeric_8_box_multiple_outline
- - i_mdi_numeric_8_box_outline
- - i_mdi_numeric_9_box
- - i_mdi_numeric_9_box_multiple_outline
- - i_mdi_numeric_9_box_outline
- - i_mdi_numeric_9_plus_box
- - i_mdi_numeric_9_plus_box_multiple_outline
- - i_mdi_numeric_9_plus_box_outline
- - i_mdi_nutrition
- - i_mdi_octagon
- - i_mdi_octagon_outline
- - i_mdi_odnoklassniki
- - i_mdi_office
- - i_mdi_oil
- - i_mdi_oil_temperature
- - i_mdi_omega
- - i_mdi_onedrive
- - i_mdi_open_in_app
- - i_mdi_open_in_new
- - i_mdi_openid
- - i_mdi_opera
- - i_mdi_ornament
- - i_mdi_ornament_variant
- - i_mdi_inbox_arrow_up
- - i_mdi_owl
- - i_mdi_package
- - i_mdi_package_down
- - i_mdi_package_up
- - i_mdi_package_variant
- - i_mdi_package_variant_closed
- - i_mdi_palette
- - i_mdi_palette_advanced
- - i_mdi_panda
- - i_mdi_pandora
- - i_mdi_panorama
- - i_mdi_panorama_fisheye
- - i_mdi_panorama_horizontal
- - i_mdi_panorama_vertical
- - i_mdi_panorama_wide_angle
- - i_mdi_paper_cut_vertical
- - i_mdi_paperclip
- - i_mdi_parking
- - i_mdi_pause
- - i_mdi_pause_circle
- - i_mdi_pause_circle_outline
- - i_mdi_pause_octagon
- - i_mdi_pause_octagon_outline
- - i_mdi_paw
- - i_mdi_pen
- - i_mdi_pencil
- - i_mdi_pencil_box
- - i_mdi_pencil_box_outline
- - i_mdi_pencil_lock
- - i_mdi_pencil_off
- - i_mdi_percent
- - i_mdi_pharmacy
- - i_mdi_phone
- - i_mdi_phone_bluetooth
- - i_mdi_phone_forward
- - i_mdi_phone_hangup
- - i_mdi_phone_in_talk
- - i_mdi_phone_incoming
- - i_mdi_phone_locked
- - i_mdi_phone_log
- - i_mdi_phone_missed
- - i_mdi_phone_outgoing
- - i_mdi_phone_paused
- - i_mdi_phone_settings
- - i_mdi_phone_voip
- - i_mdi_pi
- - i_mdi_pi_box
-豈 - i_mdi_pig
-更 - i_mdi_pill
-車 - i_mdi_pin
-賈 - i_mdi_pin_off
-滑 - i_mdi_pine_tree
-串 - i_mdi_pine_tree_box
-句 - i_mdi_pinterest
-龜 - i_mdi_pinterest_box
-龜 - i_mdi_pizza
-契 - i_mdi_play
-金 - i_mdi_play_box_outline
-喇 - i_mdi_play_circle
-奈 - i_mdi_play_circle_outline
-懶 - i_mdi_play_pause
-癩 - i_mdi_play_protected_content
-羅 - i_mdi_playlist_minus
-蘿 - i_mdi_playlist_play
-螺 - i_mdi_playlist_plus
-裸 - i_mdi_playlist_remove
-邏 - i_mdi_playstation
-樂 - i_mdi_plus
-洛 - i_mdi_plus_box
-烙 - i_mdi_plus_circle
-珞 - i_mdi_plus_circle_multiple_outline
-落 - i_mdi_plus_circle_outline
-酪 - i_mdi_plus_network
-駱 - i_mdi_plus_one
-亂 - i_mdi_pocket
-卵 - i_mdi_pokeball
-欄 - i_mdi_polaroid
-爛 - i_mdi_poll
-蘭 - i_mdi_poll_box
-鸞 - i_mdi_polymer
-嵐 - i_mdi_popcorn
-濫 - i_mdi_pound
-藍 - i_mdi_pound_box
-襤 - i_mdi_power
-拉 - i_mdi_power_settings
-臘 - i_mdi_power_socket
-蠟 - i_mdi_presentation
-廊 - i_mdi_presentation_play
-朗 - i_mdi_printer
-浪 - i_mdi_printer_3d
-狼 - i_mdi_printer_alert
-郎 - i_mdi_professional_hexagon
-來 - i_mdi_projector
-冷 - i_mdi_projector_screen
-勞 - i_mdi_pulse
-擄 - i_mdi_puzzle
-櫓 - i_mdi_qrcode
-爐 - i_mdi_qrcode_scan
-盧 - i_mdi_quadcopter
-老 - i_mdi_quality_high
-蘆 - i_mdi_quicktime
-虜 - i_mdi_radar
-路 - i_mdi_radiator
-露 - i_mdi_radio
-魯 - i_mdi_radio_handheld
-鷺 - i_mdi_radio_tower
-碌 - i_mdi_radioactive
-祿 - i_mdi_radiobox_blank
-綠 - i_mdi_radiobox_marked
-菉 - i_mdi_raspberrypi
-錄 - i_mdi_ray_end
-鹿 - i_mdi_ray_end_arrow
-論 - i_mdi_ray_start
-壟 - i_mdi_ray_start_arrow
-弄 - i_mdi_ray_start_end
-籠 - i_mdi_ray_vertex
-聾 - i_mdi_lastpass
-牢 - i_mdi_read
-磊 - i_mdi_youtube_tv
-賂 - i_mdi_receipt
-雷 - i_mdi_record
-壘 - i_mdi_record_rec
-屢 - i_mdi_recycle
-樓 - i_mdi_reddit
-淚 - i_mdi_redo
-漏 - i_mdi_redo_variant
-累 - i_mdi_refresh
-縷 - i_mdi_regex
-陋 - i_mdi_relative_scale
-勒 - i_mdi_reload
-肋 - i_mdi_remote
-凜 - i_mdi_rename_box
-凌 - i_mdi_repeat
-稜 - i_mdi_repeat_off
-綾 - i_mdi_repeat_once
-菱 - i_mdi_replay
-陵 - i_mdi_reply
-讀 - i_mdi_reply_all
-拏 - i_mdi_reproduction
-樂 - i_mdi_resize_bottom_right
-諾 - i_mdi_responsive
-丹 - i_mdi_rewind
-寧 - i_mdi_ribbon
-怒 - i_mdi_road
-率 - i_mdi_road_variant
-異 - i_mdi_rocket
-北 - i_mdi_rotate_3d
-磻 - i_mdi_rotate_left
-便 - i_mdi_rotate_left_variant
-復 - i_mdi_rotate_right
-不 - i_mdi_rotate_right_variant
-泌 - i_mdi_router_wireless
-數 - i_mdi_routes
-索 - i_mdi_rss
-參 - i_mdi_rss_box
-塞 - i_mdi_ruler
-省 - i_mdi_run_fast
-葉 - i_mdi_sale
-說 - i_mdi_satellite
-殺 - i_mdi_satellite_variant
-辰 - i_mdi_scale
-沈 - i_mdi_scale_bathroom
-拾 - i_mdi_school
-若 - i_mdi_screen_rotation
-掠 - i_mdi_screen_rotation_lock
-略 - i_mdi_screwdriver
-亮 - i_mdi_script
-兩 - i_mdi_sd
-凉 - i_mdi_seal
-梁 - i_mdi_seat_flat
-糧 - i_mdi_seat_flat_angled
-良 - i_mdi_seat_individual_suite
-諒 - i_mdi_seat_legroom_extra
-量 - i_mdi_seat_legroom_normal
-勵 - i_mdi_seat_legroom_reduced
-呂 - i_mdi_seat_recline_extra
-女 - i_mdi_seat_recline_normal
-廬 - i_mdi_security
-旅 - i_mdi_security_network
-濾 - i_mdi_select
-礪 - i_mdi_select_all
-閭 - i_mdi_select_inverse
-驪 - i_mdi_select_off
-麗 - i_mdi_selection
-黎 - i_mdi_send
-力 - i_mdi_server
-曆 - i_mdi_server_minus
-歷 - i_mdi_server_network
-轢 - i_mdi_server_network_off
-年 - i_mdi_server_off
-憐 - i_mdi_server_plus
-戀 - i_mdi_server_remove
-撚 - i_mdi_server_security
-漣 - i_mdi_settings
-煉 - i_mdi_settings_box
-璉 - i_mdi_shape_plus
-秊 - i_mdi_share
-練 - i_mdi_share_variant
-聯 - i_mdi_shield
-輦 - i_mdi_shield_outline
-蓮 - i_mdi_shopping
-連 - i_mdi_shopping_music
-鍊 - i_mdi_shredder
-列 - i_mdi_shuffle
-劣 - i_mdi_shuffle_disabled
-咽 - i_mdi_shuffle_variant
-烈 - i_mdi_sigma
-裂 - i_mdi_sign_caution
-說 - i_mdi_signal
-廉 - i_mdi_silverware
-念 - i_mdi_silverware_fork
-捻 - i_mdi_silverware_spoon
-殮 - i_mdi_silverware_variant
-簾 - i_mdi_sim
-獵 - i_mdi_sim_alert
-令 - i_mdi_sim_off
-囹 - i_mdi_sitemap
-寧 - i_mdi_skip_backward
-嶺 - i_mdi_skip_forward
-怜 - i_mdi_skip_next
-玲 - i_mdi_skip_previous
-瑩 - i_mdi_skype
-羚 - i_mdi_skype_business
-聆 - i_mdi_slack
-鈴 - i_mdi_sleep
-零 - i_mdi_sleep_off
-靈 - i_mdi_smoking
-領 - i_mdi_smoking_off
-例 - i_mdi_snapchat
-禮 - i_mdi_snowman
-醴 - i_mdi_soccer
-隸 - i_mdi_sofa
-惡 - i_mdi_sort
-了 - i_mdi_sort_alphabetical
-僚 - i_mdi_sort_ascending
-寮 - i_mdi_sort_descending
-尿 - i_mdi_sort_numeric
-料 - i_mdi_sort_variant
-樂 - i_mdi_soundcloud
-燎 - i_mdi_source_fork
-療 - i_mdi_source_pull
-蓼 - i_mdi_speaker
-遼 - i_mdi_speaker_off
-龍 - i_mdi_speedometer
-暈 - i_mdi_spellcheck
-阮 - i_mdi_spotify
-劉 - i_mdi_spotlight
-杻 - i_mdi_spotlight_beam
-柳 - i_mdi_square_inc
-流 - i_mdi_square_inc_cash
-溜 - i_mdi_stack_overflow
-琉 - i_mdi_stairs
-留 - i_mdi_star
-硫 - i_mdi_star_circle
-紐 - i_mdi_star_half
-類 - i_mdi_star_off
-六 - i_mdi_star_outline
-戮 - i_mdi_steam
-陸 - i_mdi_steering
-倫 - i_mdi_step_backward
-崙 - i_mdi_step_backward_2
-淪 - i_mdi_step_forward
-輪 - i_mdi_step_forward_2
-律 - i_mdi_stethoscope
-慄 - i_mdi_stocking
-栗 - i_mdi_stop
-率 - i_mdi_store
-隆 - i_mdi_store_24_hour
-利 - i_mdi_stove
-吏 - i_mdi_subway_variant
-履 - i_mdi_sunglasses
-易 - i_mdi_swap_horizontal
-李 - i_mdi_swap_vertical
-梨 - i_mdi_swim
-泥 - i_mdi_switch
-理 - i_mdi_sword
-痢 - i_mdi_sync
-罹 - i_mdi_sync_alert
-裏 - i_mdi_sync_off
-裡 - i_mdi_tab
-里 - i_mdi_tab_unselected
-離 - i_mdi_table
-匿 - i_mdi_table_column_plus_after
-溺 - i_mdi_table_column_plus_before
-吝 - i_mdi_table_column_remove
-燐 - i_mdi_table_column_width
-璘 - i_mdi_table_edit
-藺 - i_mdi_table_large
-隣 - i_mdi_table_row_height
-鱗 - i_mdi_table_row_plus_after
-麟 - i_mdi_table_row_plus_before
-林 - i_mdi_table_row_remove
-淋 - i_mdi_tablet
-臨 - i_mdi_tablet_android
-立 - i_mdi_tablet_ipad
-笠 - i_mdi_tag
-粒 - i_mdi_tag_faces
-狀 - i_mdi_tag_multiple
-炙 - i_mdi_tag_outline
-識 - i_mdi_tag_text_outline
-什 - i_mdi_target
-茶 - i_mdi_taxi
-刺 - i_mdi_teamviewer
-切 - i_mdi_telegram
-度 - i_mdi_television
-拓 - i_mdi_television_guide
-糖 - i_mdi_temperature_celsius
-宅 - i_mdi_temperature_fahrenheit
-洞 - i_mdi_temperature_kelvin
-暴 - i_mdi_tennis
-輻 - i_mdi_tent
-行 - i_mdi_terrain
-降 - i_mdi_text_to_speech
-見 - i_mdi_text_to_speech_off
-廓 - i_mdi_texture
-兀 - i_mdi_theater
-嗀 - i_mdi_theme_light_dark
-﨎 - i_mdi_thermometer
-﨏 - i_mdi_thermometer_lines
-塚 - i_mdi_thumb_down
-﨑 - i_mdi_thumb_down_outline
-晴 - i_mdi_thumb_up
-﨓 - i_mdi_thumb_up_outline
-﨔 - i_mdi_thumbs_up_down
-凞 - i_mdi_ticket
-猪 - i_mdi_ticket_account
-益 - i_mdi_ticket_confirmation
-礼 - i_mdi_tie
-神 - i_mdi_timelapse
-祥 - i_mdi_timer
-福 - i_mdi_timer_10
-靖 - i_mdi_timer_3
-精 - i_mdi_timer_off
-羽 - i_mdi_timer_sand
-﨟 - i_mdi_timetable
-蘒 - i_mdi_toggle_switch
-﨡 - i_mdi_toggle_switch_off
-諸 - i_mdi_tooltip
-﨣 - i_mdi_tooltip_edit
-﨤 - i_mdi_tooltip_image
-逸 - i_mdi_tooltip_outline
-都 - i_mdi_tooltip_outline_plus
-﨧 - i_mdi_tooltip_text
-﨨 - i_mdi_tooth
-﨩 - i_mdi_tor
-飯 - i_mdi_traffic_light
-飼 - i_mdi_train
-館 - i_mdi_tram
-鶴 - i_mdi_transcribe
-郞 - i_mdi_transcribe_close
-隷 - i_mdi_transfer
-侮 - i_mdi_tree
-僧 - i_mdi_trello
-免 - i_mdi_trending_down
-勉 - i_mdi_trending_neutral
-勤 - i_mdi_trending_up
-卑 - i_mdi_triangle
-喝 - i_mdi_triangle_outline
-嘆 - i_mdi_trophy
-器 - i_mdi_trophy_award
-塀 - i_mdi_trophy_outline
-墨 - i_mdi_trophy_variant
-層 - i_mdi_trophy_variant_outline
-屮 - i_mdi_truck
-悔 - i_mdi_truck_delivery
-慨 - i_mdi_tshirt_crew
-憎 - i_mdi_tshirt_v
-懲 - i_mdi_tumblr
-敏 - i_mdi_tumblr_reblog
-既 - i_mdi_twitch
-暑 - i_mdi_twitter
-梅 - i_mdi_twitter_box
-海 - i_mdi_twitter_circle
-渚 - i_mdi_twitter_retweet
-漢 - i_mdi_ubuntu
-煮 - i_mdi_umbraco
-爫 - i_mdi_umbrella
-琢 - i_mdi_umbrella_outline
-碑 - i_mdi_undo
-社 - i_mdi_undo_variant
-祉 - i_mdi_unfold_less_horizontal
-祈 - i_mdi_unfold_more_horizontal
-祐 - i_mdi_ungroup
-祖 - i_mdi_untappd
-祝 - i_mdi_upload
-禍 - i_mdi_usb
-禎 - i_mdi_vector_arrange_above
-穀 - i_mdi_vector_arrange_below
-突 - i_mdi_vector_circle
-節 - i_mdi_vector_circle_variant
-練 - i_mdi_vector_combine
-縉 - i_mdi_vector_curve
-繁 - i_mdi_vector_difference
-署 - i_mdi_vector_difference_ab
-者 - i_mdi_vector_difference_ba
-臭 - i_mdi_vector_intersection
-艹 - i_mdi_vector_line
-艹 - i_mdi_vector_point
-著 - i_mdi_vector_polygon
-褐 - i_mdi_vector_polyline
-視 - i_mdi_vector_selection
-謁 - i_mdi_vector_triangle
-謹 - i_mdi_vector_union
-賓 - i_mdi_verified
-贈 - i_mdi_vibrate
-辶 - i_mdi_video
-逸 - i_mdi_video_off
-難 - i_mdi_video_switch
-響 - i_mdi_view_agenda
-頻 - i_mdi_view_array
-恵 - i_mdi_view_carousel
-𤋮 - i_mdi_view_column
-舘 - i_mdi_view_dashboard
-﩮 - i_mdi_view_day
-﩯 - i_mdi_view_grid
-並 - i_mdi_view_headline
-况 - i_mdi_view_list
-全 - i_mdi_view_module
-侀 - i_mdi_view_quilt
-充 - i_mdi_view_stream
-冀 - i_mdi_view_week
-勇 - i_mdi_vimeo
-勺 - i_mdi_venmo
-喝 - i_mdi_vk
-啕 - i_mdi_vk_box
-喙 - i_mdi_vk_circle
-嗢 - i_mdi_vlc
-塚 - i_mdi_voicemail
-墳 - i_mdi_volume_high
-奄 - i_mdi_volume_low
-奔 - i_mdi_volume_medium
-婢 - i_mdi_volume_off
-嬨 - i_mdi_vpn
-廒 - i_mdi_walk
-廙 - i_mdi_wallet
-彩 - i_mdi_wallet_giftcard
-徭 - i_mdi_wallet_membership
-惘 - i_mdi_wallet_travel
-慎 - i_mdi_wan
-愈 - i_mdi_watch
-憎 - i_mdi_watch_export
-慠 - i_mdi_watch_import
-懲 - i_mdi_water
-戴 - i_mdi_water_off
-揄 - i_mdi_water_percent
-搜 - i_mdi_water_pump
-摒 - i_mdi_weather_cloudy
-敖 - i_mdi_weather_fog
-晴 - i_mdi_weather_hail
-朗 - i_mdi_weather_lightning
-望 - i_mdi_weather_night
-杖 - i_mdi_weather_partlycloudy
-歹 - i_mdi_weather_pouring
-殺 - i_mdi_weather_rainy
-流 - i_mdi_weather_snowy
-滛 - i_mdi_weather_sunny
-滋 - i_mdi_weather_sunset
-漢 - i_mdi_weather_sunset_down
-瀞 - i_mdi_weather_sunset_up
-煮 - i_mdi_weather_windy
-瞧 - i_mdi_weather_windy_variant
-爵 - i_mdi_web
-犯 - i_mdi_webcam
-猪 - i_mdi_weight
-瑱 - i_mdi_weight_kilogram
-甆 - i_mdi_whatsapp
-画 - i_mdi_wheelchair_accessibility
-瘝 - i_mdi_white_balance_auto
-瘟 - i_mdi_white_balance_incandescent
-益 - i_mdi_white_balance_iridescent
-盛 - i_mdi_white_balance_sunny
-直 - i_mdi_wifi
-睊 - i_mdi_wifi_off
-着 - i_mdi_wii
-磌 - i_mdi_wikipedia
-窱 - i_mdi_window_close
-節 - i_mdi_window_closed
-类 - i_mdi_window_maximize
-絛 - i_mdi_window_minimize
-練 - i_mdi_window_open
-缾 - i_mdi_window_restore
-者 - i_mdi_windows
-荒 - i_mdi_wordpress
-華 - i_mdi_worker
-蝹 - i_mdi_wrap
-襁 - i_mdi_wrench
-覆 - i_mdi_wunderlist
-視 - i_mdi_xbox
-調 - i_mdi_xbox_controller
-諸 - i_mdi_xbox_controller_off
-請 - i_mdi_xda
-謁 - i_mdi_xing
-諾 - i_mdi_xing_box
-諭 - i_mdi_xing_circle
-謹 - i_mdi_xml
-變 - i_mdi_yeast
-贈 - i_mdi_yelp
-輸 - i_mdi_youtube_play
-遲 - i_mdi_zip_box
-醙 - i_mdi_surround_sound
-鉶 - i_mdi_vector_rectangle
-陼 - i_mdi_playlist_check
-難 - i_mdi_format_line_style
-靖 - i_mdi_format_line_weight
-韛 - i_mdi_translate
-響 - i_mdi_voice
-頋 - i_mdi_opacity
-頻 - i_mdi_near_me
-鬒 - i_mdi_clock_alert
-龜 - i_mdi_human_pregnant
-𢡊 - i_mdi_sticker
-𢡄 - i_mdi_scale_balance
-𣏕 - i_mdi_account_card_details
-㮝 - i_mdi_account_multiple_minus
-䀘 - i_mdi_airplane_landing
-䀹 - i_mdi_airplane_takeoff
-𥉉 - i_mdi_alert_circle_outline
-𥳐 - i_mdi_altimeter
-𧻓 - i_mdi_animation
-齃 - i_mdi_book_minus
-龎 - i_mdi_book_open_page_variant
-﫚 - i_mdi_book_plus
-﫛 - i_mdi_boombox
-﫜 - i_mdi_bullseye
-﫝 - i_mdi_comment_remove
-﫞 - i_mdi_camera_off
-﫟 - i_mdi_check_circle
-﫠 - i_mdi_check_circle_outline
-﫡 - i_mdi_candle
-﫢 - i_mdi_chart_bubble
-﫣 - i_mdi_credit_card_off
-﫤 - i_mdi_cup_off
-﫥 - i_mdi_copyright
-﫦 - i_mdi_cursor_text
-﫧 - i_mdi_delete_forever
-﫨 - i_mdi_delete_sweep
-﫩 - i_mdi_dice_d20
-﫪 - i_mdi_dice_d4
-﫫 - i_mdi_dice_d6
-﫬 - i_mdi_dice_d8
-﫭 - i_mdi_disk
-﫮 - i_mdi_email_open_outline
-﫯 - i_mdi_email_variant
-﫰 - i_mdi_ev_station
-﫱 - i_mdi_food_fork_drink
-﫲 - i_mdi_food_off
-﫳 - i_mdi_format_title
-﫴 - i_mdi_google_maps
-﫵 - i_mdi_heart_pulse
-﫶 - i_mdi_highway
-﫷 - i_mdi_home_map_marker
-﫸 - i_mdi_incognito
-﫹 - i_mdi_kettle
-﫺 - i_mdi_lock_plus
-﫻 - i_mdi_login_variant
-﫼 - i_mdi_logout_variant
-﫽 - i_mdi_music_note_bluetooth
-﫾 - i_mdi_music_note_bluetooth_off
-﫿 - i_mdi_page_first
-ff - i_mdi_page_last
-fi - i_mdi_phone_classic
-fl - i_mdi_priority_high
-ffi - i_mdi_priority_low
-ffl - i_mdi_qqchat
-ſt - i_mdi_pool
-st - i_mdi_rounded_corner
-﬇ - i_mdi_rowing
-﬈ - i_mdi_saxophone
-﬉ - i_mdi_signal_variant
-﬊ - i_mdi_stackexchange
-﬋ - i_mdi_subdirectory_arrow_left
-﬌ - i_mdi_subdirectory_arrow_right
-﬍ - i_mdi_textbox
-﬎ - i_mdi_violin
-﬏ - i_mdi_visualstudio
-﬐ - i_mdi_wechat
-﬑ - i_mdi_watermark
-﬒ - i_mdi_file_hidden
-ﬓ - i_mdi_application
-ﬔ - i_mdi_arrow_collapse
-ﬕ - i_mdi_arrow_expand
-ﬖ - i_mdi_bowl
-ﬗ - i_mdi_bridge
-﬘ - i_mdi_buffer
-﬙ - i_mdi_chip
-﬚ - i_mdi_content_save_settings
-﬛ - i_mdi_dialpad
-﬜ - i_mdi_dictionary
-יִ - i_mdi_format_horizontal_align_center
-ﬞ - i_mdi_format_horizontal_align_left
-ײַ - i_mdi_format_horizontal_align_right
-ﬠ - i_mdi_format_vertical_align_bottom
-ﬡ - i_mdi_format_vertical_align_center
-ﬢ - i_mdi_format_vertical_align_top
-ﬣ - i_mdi_hackernews
-ﬤ - i_mdi_help_circle_outline
-ﬥ - i_mdi_json
-ﬦ - i_mdi_lambda
-ﬧ - i_mdi_matrix
-ﬨ - i_mdi_meteor
-﬩ - i_mdi_mixcloud
-שׁ - i_mdi_sigma_lower
-שׂ - i_mdi_source_branch
-שּׁ - i_mdi_source_merge
-שּׂ - i_mdi_tune
-אַ - i_mdi_webhook
-אָ - i_mdi_account_settings
-אּ - i_mdi_account_settings_variant
-בּ - i_mdi_apple_keyboard_caps
-גּ - i_mdi_apple_keyboard_command
-דּ - i_mdi_apple_keyboard_control
-הּ - i_mdi_apple_keyboard_option
-וּ - i_mdi_apple_keyboard_shift
-זּ - i_mdi_box_shadow
-﬷ - i_mdi_cards
-טּ - i_mdi_cards_outline
-יּ - i_mdi_cards_playing_outline
-ךּ - i_mdi_checkbox_multiple_blank_circle
-כּ - i_mdi_checkbox_multiple_blank_circle_outline
-לּ - i_mdi_checkbox_multiple_marked_circle
-﬽ - i_mdi_checkbox_multiple_marked_circle_outline
-מּ - i_mdi_cloud_sync
-﬿ - i_mdi_collage
-נּ - i_mdi_directions_fork
-סּ - i_mdi_eraser_variant
-﭂ - i_mdi_face
-ףּ - i_mdi_face_profile
-פּ - i_mdi_file_tree
-﭅ - i_mdi_format_annotation_plus
-צּ - i_mdi_gas_cylinder
-קּ - i_mdi_grease_pencil
-רּ - i_mdi_human_female
-שּ - i_mdi_human_greeting
-תּ - i_mdi_human_handsdown
-וֹ - i_mdi_human_handsup
-בֿ - i_mdi_human_male
-כֿ - i_mdi_information_variant
-פֿ - i_mdi_lead_pencil
-ﭏ - i_mdi_map_marker_minus
-ﭐ - i_mdi_map_marker_plus
-ﭑ - i_mdi_marker
-ﭒ - i_mdi_message_plus
-ﭓ - i_mdi_microscope
-ﭔ - i_mdi_move_resize
-ﭕ - i_mdi_move_resize_variant
-ﭖ - i_mdi_paw_off
-ﭗ - i_mdi_phone_minus
-ﭘ - i_mdi_phone_plus
-ﭙ - i_mdi_pot
-ﭚ - i_mdi_pot_mix
-ﭛ - i_mdi_serial_port
-ﭜ - i_mdi_shape_circle_plus
-ﭝ - i_mdi_shape_polygon_plus
-ﭞ - i_mdi_shape_rectangle_plus
-ﭟ - i_mdi_shape_square_plus
-ﭠ - i_mdi_skip_next_circle
-ﭡ - i_mdi_skip_next_circle_outline
-ﭢ - i_mdi_skip_previous_circle
-ﭣ - i_mdi_skip_previous_circle_outline
-ﭤ - i_mdi_spray
-ﭥ - i_mdi_stop_circle
-ﭦ - i_mdi_stop_circle_outline
-ﭧ - i_mdi_test_tube
-ﭨ - i_mdi_text_shadow
-ﭩ - i_mdi_tune_vertical
-ﭪ - i_mdi_cart_off
-ﭫ - i_mdi_chart_gantt
-ﭬ - i_mdi_chart_scatterplot_hexbin
-ﭭ - i_mdi_chart_timeline
-ﭮ - i_mdi_discord
-ﭯ - i_mdi_file_restore
-ﭰ - i_mdi_language_c
-ﭱ - i_mdi_language_cpp
-ﭲ - i_mdi_xaml
-ﭳ - i_mdi_bandcamp
-ﭴ - i_mdi_credit_card_plus
-ﭵ - i_mdi_itunes
-ﭶ - i_mdi_bow_tie
-ﭷ - i_mdi_calendar_range
-ﭸ - i_mdi_currency_usd_off
-ﭹ - i_mdi_flash_red_eye
-ﭺ - i_mdi_oar
-ﭻ - i_mdi_piano
-ﭼ - i_mdi_weather_lightning_rainy
-ﭽ - i_mdi_weather_snowy_rainy
-ﭾ - i_mdi_yin_yang
-ﭿ - i_mdi_tower_beach
-ﮀ - i_mdi_tower_fire
-ﮁ - i_mdi_delete_circle
-ﮂ - i_mdi_dna
-ﮃ - i_mdi_hamburger
-ﮄ - i_mdi_gondola
-ﮅ - i_mdi_inbox
-ﮆ - i_mdi_reorder_horizontal
-ﮇ - i_mdi_reorder_vertical
-ﮈ - i_mdi_security_home
-ﮉ - i_mdi_tag_heart
-ﮊ - i_mdi_skull
-ﮋ - i_mdi_solid
-ﮌ - i_mdi_alarm_snooze
-ﮍ - i_mdi_baby_buggy
-ﮎ - i_mdi_beaker
-ﮏ - i_mdi_bomb
-ﮐ - i_mdi_calendar_question
-ﮑ - i_mdi_camera_burst
-ﮒ - i_mdi_code_tags_check
-ﮓ - i_mdi_coins
-ﮔ - i_mdi_crop_rotate
-ﮕ - i_mdi_developer_board
-ﮖ - i_mdi_do_not_disturb
-ﮗ - i_mdi_do_not_disturb_off
-ﮘ - i_mdi_douban
-ﮙ - i_mdi_emoticon_dead
-ﮚ - i_mdi_emoticon_excited
-ﮛ - i_mdi_folder_star
-ﮜ - i_mdi_format_color_text
-ﮝ - i_mdi_format_section
-ﮞ - i_mdi_gradient
-ﮟ - i_mdi_home_outline
-ﮠ - i_mdi_message_bulleted
-ﮡ - i_mdi_message_bulleted_off
-ﮢ - i_mdi_nuke
-ﮣ - i_mdi_power_plug
-ﮤ - i_mdi_power_plug_off
-ﮥ - i_mdi_publish
-ﮦ - i_mdi_restore
-ﮧ - i_mdi_robot
-ﮨ - i_mdi_format_rotate_90
-ﮩ - i_mdi_scanner
-ﮪ - i_mdi_subway
-ﮫ - i_mdi_timer_sand_empty
-ﮬ - i_mdi_transit_transfer
-ﮭ - i_mdi_unity
-ﮮ - i_mdi_update
-ﮯ - i_mdi_watch_vibrate
-ﮰ - i_mdi_angular
-ﮱ - i_mdi_dolby
-﮲ - i_mdi_emby
-﮳ - i_mdi_lamp
-﮴ - i_mdi_menu_down_outline
-﮵ - i_mdi_menu_up_outline
-﮶ - i_mdi_note_multiple
-﮷ - i_mdi_note_multiple_outline
-﮸ - i_mdi_plex
-﮹ - i_mdi_plane_shield
-﮺ - i_mdi_account_edit
-﮻ - i_mdi_alert_decagram
-﮼ - i_mdi_all_inclusive
-﮽ - i_mdi_angularjs
-﮾ - i_mdi_arrow_down_box
-﮿ - i_mdi_arrow_left_box
-﯀ - i_mdi_arrow_right_box
-﯁ - i_mdi_arrow_up_box
-﯂ - i_mdi_asterisk
-﯃ - i_mdi_bomb_off
-﯄ - i_mdi_bootstrap
-﯅ - i_mdi_cards_variant
-﯆ - i_mdi_clipboard_flow
-﯇ - i_mdi_close_outline
-﯈ - i_mdi_coffee_outline
-﯉ - i_mdi_contacts
-﯊ - i_mdi_delete_empty
-﯋ - i_mdi_earth_box
-﯌ - i_mdi_earth_box_off
-﯍ - i_mdi_email_alert
-﯎ - i_mdi_eye_outline
-﯏ - i_mdi_eye_off_outline
-﯐ - i_mdi_fast_forward_outline
-﯑ - i_mdi_feather
-﯒ - i_mdi_find_replace
-ﯓ - i_mdi_flash_outline
-ﯔ - i_mdi_format_font
-ﯕ - i_mdi_format_page_break
-ﯖ - i_mdi_format_pilcrow
-ﯗ - i_mdi_garage
-ﯘ - i_mdi_garage_open
-ﯙ - i_mdi_github_face
-ﯚ - i_mdi_google_keep
-ﯛ - i_mdi_google_photos
-ﯜ - i_mdi_heart_half_full
-ﯝ - i_mdi_heart_half
-ﯞ - i_mdi_heart_half_outline
-ﯟ - i_mdi_hexagon_multiple
-ﯠ - i_mdi_hook
-ﯡ - i_mdi_hook_off
-ﯢ - i_mdi_infinity
-ﯣ - i_mdi_language_swift
-ﯤ - i_mdi_language_typescript
-ﯥ - i_mdi_laptop_off
-ﯦ - i_mdi_lightbulb_on
-ﯧ - i_mdi_lightbulb_on_outline
-ﯨ - i_mdi_lock_pattern
-ﯩ - i_mdi_loop
-ﯪ - i_mdi_magnify_minus_outline
-ﯫ - i_mdi_magnify_plus_outline
-ﯬ - i_mdi_mailbox
-ﯭ - i_mdi_medical_bag
-ﯮ - i_mdi_message_settings
-ﯯ - i_mdi_message_settings_variant
-ﯰ - i_mdi_minus_box_outline
-ﯱ - i_mdi_network
-ﯲ - i_mdi_download_network
-ﯳ - i_mdi_help_network
-ﯴ - i_mdi_upload_network
-ﯵ - i_mdi_npm
-ﯶ - i_mdi_nut
-ﯷ - i_mdi_octagram
-ﯸ - i_mdi_page_layout_body
-ﯹ - i_mdi_page_layout_footer
-ﯺ - i_mdi_page_layout_header
-ﯻ - i_mdi_page_layout_sidebar_left
-ﯼ - i_mdi_page_layout_sidebar_right
-ﯽ - i_mdi_pencil_circle
-ﯾ - i_mdi_pentagon
-ﯿ - i_mdi_pentagon_outline
-ﰀ - i_mdi_pillar
-ﰁ - i_mdi_pistol
-ﰂ - i_mdi_plus_box_outline
-ﰃ - i_mdi_plus_outline
-ﰄ - i_mdi_prescription
-ﰅ - i_mdi_printer_settings
-ﰆ - i_mdi_react
-ﰇ - i_mdi_restart
-ﰈ - i_mdi_rewind_outline
-ﰉ - i_mdi_rhombus
-ﰊ - i_mdi_rhombus_outline
-ﰋ - i_mdi_roomba
-ﰌ - i_mdi_run
-ﰍ - i_mdi_search_web
-ﰎ - i_mdi_shovel
-ﰏ - i_mdi_shovel_off
-ﰐ - i_mdi_signal_2g
-ﰑ - i_mdi_signal_3g
-ﰒ - i_mdi_signal_4g
-ﰓ - i_mdi_signal_hspa
-ﰔ - i_mdi_signal_hspa_plus
-ﰕ - i_mdi_snowflake
-ﰖ - i_mdi_source_commit
-ﰗ - i_mdi_source_commit_end
-ﰘ - i_mdi_source_commit_end_local
-ﰙ - i_mdi_source_commit_local
-ﰚ - i_mdi_source_commit_next_local
-ﰛ - i_mdi_source_commit_start
-ﰜ - i_mdi_source_commit_start_next_local
-ﰝ - i_mdi_speaker_wireless
-ﰞ - i_mdi_stadium
-ﰟ - i_mdi_svg
-ﰠ - i_mdi_tag_plus
-ﰡ - i_mdi_tag_remove
-ﰢ - i_mdi_ticket_percent
-ﰣ - i_mdi_tilde
-ﰤ - i_mdi_treasure_chest
-ﰥ - i_mdi_truck_trailer
-ﰦ - i_mdi_view_parallel
-ﰧ - i_mdi_view_sequential
-ﰨ - i_mdi_washing_machine
-ﰩ - i_mdi_webpack
-ﰪ - i_mdi_widgets
-ﰫ - i_mdi_wiiu
-ﰬ - i_mdi_arrow_down_bold
-ﰭ - i_mdi_arrow_down_bold_box
-ﰮ - i_mdi_arrow_down_bold_box_outline
-ﰯ - i_mdi_arrow_left_bold
-ﰰ - i_mdi_arrow_left_bold_box
-ﰱ - i_mdi_arrow_left_bold_box_outline
-ﰲ - i_mdi_arrow_right_bold
-ﰳ - i_mdi_arrow_right_bold_box
-ﰴ - i_mdi_arrow_right_bold_box_outline
-ﰵ - i_mdi_arrow_up_bold
-ﰶ - i_mdi_arrow_up_bold_box
-ﰷ - i_mdi_arrow_up_bold_box_outline
-ﰸ - i_mdi_cancel
-ﰹ - i_mdi_file_account
-ﰺ - i_mdi_gesture_double_tap
-ﰻ - i_mdi_gesture_swipe_down
-ﰼ - i_mdi_gesture_swipe_left
-ﰽ - i_mdi_gesture_swipe_right
-ﰾ - i_mdi_gesture_swipe_up
-ﰿ - i_mdi_gesture_tap
-ﱀ - i_mdi_gesture_two_double_tap
-ﱁ - i_mdi_gesture_two_tap
-ﱂ - i_mdi_humble_bundle
-ﱃ - i_mdi_kickstarter
-ﱄ - i_mdi_netflix
-ﱅ - i_mdi_onenote
-ﱆ - i_mdi_periscope
-ﱇ - i_mdi_uber
-ﱈ - i_mdi_vector_radius
-ﱉ - i_mdi_xbox_controller_battery_alert
-ﱊ - i_mdi_xbox_controller_battery_empty
-ﱋ - i_mdi_xbox_controller_battery_full
-ﱌ - i_mdi_xbox_controller_battery_low
-ﱍ - i_mdi_xbox_controller_battery_medium
-ﱎ - i_mdi_xbox_controller_battery_unknown
-ﱏ - i_mdi_clipboard_plus
-ﱐ - i_mdi_file_plus
-ﱑ - i_mdi_format_align_bottom
-ﱒ - i_mdi_format_align_middle
-ﱓ - i_mdi_format_align_top
-ﱔ - i_mdi_format_list_checks
-ﱕ - i_mdi_format_quote_open
-ﱖ - i_mdi_grid_large
-ﱗ - i_mdi_heart_off
-ﱘ - i_mdi_music
-ﱙ - i_mdi_music_off
-ﱚ - i_mdi_tab_plus
-ﱛ - i_mdi_volume_plus
-ﱜ - i_mdi_volume_minus
-ﱝ - i_mdi_volume_mute
-ﱞ - i_mdi_unfold_less_vertical
-ﱟ - i_mdi_unfold_more_vertical
-ﱠ - i_mdi_taco
-ﱡ - i_mdi_square_outline
-ﱢ - i_mdi_square
-ﱣ - i_mdi_circle
-ﱤ - i_mdi_circle_outline
-ﱥ - i_mdi_alert_octagram
-ﱦ - i_mdi_atom
-ﱧ - i_mdi_ceiling_light
-ﱨ - i_mdi_chart_bar_stacked
-ﱩ - i_mdi_chart_line_stacked
-ﱪ - i_mdi_decagram
-ﱫ - i_mdi_decagram_outline
-ﱬ - i_mdi_dice_multiple
-ﱭ - i_mdi_dice_d10
-ﱮ - i_mdi_folder_open
-ﱯ - i_mdi_guitar_acoustic
-ﱰ - i_mdi_loading
-ﱱ - i_mdi_lock_reset
-ﱲ - i_mdi_ninja
-ﱳ - i_mdi_octagram_outline
-ﱴ - i_mdi_pencil_circle_outline
-ﱵ - i_mdi_selection_off
-ﱶ - i_mdi_set_all
-ﱷ - i_mdi_set_center
-ﱸ - i_mdi_set_center_right
-ﱹ - i_mdi_set_left
-ﱺ - i_mdi_set_left_center
-ﱻ - i_mdi_set_left_right
-ﱼ - i_mdi_set_none
-ﱽ - i_mdi_set_right
-ﱾ - i_mdi_shield_half_full
-ﱿ - i_mdi_sign_direction
-ﲀ - i_mdi_sign_text
-ﲁ - i_mdi_signal_off
-ﲂ - i_mdi_square_root
-ﲃ - i_mdi_sticker_emoji
-ﲄ - i_mdi_summit
-ﲅ - i_mdi_sword_cross
-ﲆ - i_mdi_truck_fast
-ﲇ - i_mdi_yammer
-ﲈ - i_mdi_cast_off
-ﲉ - i_mdi_help_box
-ﲊ - i_mdi_timer_sand_full
-ﲋ - i_mdi_waves
-ﲌ - i_mdi_alarm_bell
-ﲍ - i_mdi_alarm_light
-ﲎ - i_mdi_android_head
-ﲏ - i_mdi_approval
-ﲐ - i_mdi_arrow_collapse_down
-ﲑ - i_mdi_arrow_collapse_left
-ﲒ - i_mdi_arrow_collapse_right
-ﲓ - i_mdi_arrow_collapse_up
-ﲔ - i_mdi_arrow_expand_down
-ﲕ - i_mdi_arrow_expand_left
-ﲖ - i_mdi_arrow_expand_right
-ﲗ - i_mdi_arrow_expand_up
-ﲘ - i_mdi_book_secure
-ﲙ - i_mdi_book_unsecure
-ﲚ - i_mdi_bus_articulated_end
-ﲛ - i_mdi_bus_articulated_front
-ﲜ - i_mdi_bus_double_decker
-ﲝ - i_mdi_bus_school
-ﲞ - i_mdi_bus_side
-ﲟ - i_mdi_camera_gopro
-ﲠ - i_mdi_camera_metering_center
-ﲡ - i_mdi_camera_metering_matrix
-ﲢ - i_mdi_camera_metering_partial
-ﲣ - i_mdi_camera_metering_spot
-ﲤ - i_mdi_cannabis
-ﲥ - i_mdi_car_convertible
-ﲦ - i_mdi_car_estate
-ﲧ - i_mdi_car_hatchback
-ﲨ - i_mdi_car_pickup
-ﲩ - i_mdi_car_side
-ﲪ - i_mdi_car_sports
-ﲫ - i_mdi_caravan
-ﲬ - i_mdi_cctv
-ﲭ - i_mdi_chart_donut
-ﲮ - i_mdi_chart_donut_variant
-ﲯ - i_mdi_chart_line_variant
-ﲰ - i_mdi_chili_hot
-ﲱ - i_mdi_chili_medium
-ﲲ - i_mdi_chili_mild
-ﲳ - i_mdi_cloud_braces
-ﲴ - i_mdi_cloud_tags
-ﲵ - i_mdi_console_line
-ﲶ - i_mdi_corn
-ﲷ - i_mdi_currency_chf
-ﲸ - i_mdi_currency_cny
-ﲹ - i_mdi_currency_eth
-ﲺ - i_mdi_currency_jpy
-ﲻ - i_mdi_currency_krw
-ﲼ - i_mdi_currency_sign
-ﲽ - i_mdi_currency_twd
-ﲾ - i_mdi_desktop_classic
-ﲿ - i_mdi_dip_switch
-ﳀ - i_mdi_donkey
-ﳁ - i_mdi_dots_horizontal_circle
-ﳂ - i_mdi_dots_vertical_circle
-ﳃ - i_mdi_ear_hearing
-ﳄ - i_mdi_elephant
-ﳅ - i_mdi_eventbrite
-ﳆ - i_mdi_food_croissant
-ﳇ - i_mdi_forklift
-ﳈ - i_mdi_fuel
-ﳉ - i_mdi_gesture
-ﳊ - i_mdi_google_analytics
-ﳋ - i_mdi_google_assistant
-ﳌ - i_mdi_headphones_off
-ﳍ - i_mdi_high_definition
-ﳎ - i_mdi_home_assistant
-ﳏ - i_mdi_home_automation
-ﳐ - i_mdi_home_circle
-ﳑ - i_mdi_language_go
-ﳒ - i_mdi_language_r
-ﳓ - i_mdi_lava_lamp
-ﳔ - i_mdi_led_strip
-ﳕ - i_mdi_locker
-ﳖ - i_mdi_locker_multiple
-ﳗ - i_mdi_map_marker_outline
-ﳘ - i_mdi_metronome
-ﳙ - i_mdi_metronome_tick
-ﳚ - i_mdi_micro_sd
-ﳛ - i_mdi_mixer
-ﳜ - i_mdi_movie_roll
-ﳝ - i_mdi_mushroom
-ﳞ - i_mdi_mushroom_outline
-ﳟ - i_mdi_nintendo_switch
-ﳠ - i_mdi_null
-ﳡ - i_mdi_passport
-ﳢ - i_mdi_periodic_table_co2
-ﳣ - i_mdi_pipe
-ﳤ - i_mdi_pipe_disconnected
-ﳥ - i_mdi_power_socket_eu
-ﳦ - i_mdi_power_socket_uk
-ﳧ - i_mdi_power_socket_us
-ﳨ - i_mdi_rice
-ﳩ - i_mdi_ring
-ﳪ - i_mdi_sass
-ﳫ - i_mdi_send_secure
-ﳬ - i_mdi_soy_sauce
-ﳭ - i_mdi_standard_definition
-ﳮ - i_mdi_surround_sound_2_0
-ﳯ - i_mdi_surround_sound_3_1
-ﳰ - i_mdi_surround_sound_5_1
-ﳱ - i_mdi_surround_sound_7_1
-ﳲ - i_mdi_television_classic
-ﳳ - i_mdi_textbox_password
-ﳴ - i_mdi_thought_bubble
-ﳵ - i_mdi_thought_bubble_outline
-ﳶ - i_mdi_trackpad
-ﳷ - i_mdi_ultra_high_definition
-ﳸ - i_mdi_van_passenger
-ﳹ - i_mdi_van_utility
-ﳺ - i_mdi_vanish
-ﳻ - i_mdi_video_3d
-ﳼ - i_mdi_wall
-ﳽ - i_mdi_xmpp
-ﳾ - i_mdi_account_multiple_plus_outline
-ﳿ - i_mdi_account_plus_outline
-ﴀ - i_mdi_allo
-ﴁ - i_mdi_artist
-ﴂ - i_mdi_atlassian
-ﴃ - i_mdi_azure
-ﴄ - i_mdi_basketball
-ﴅ - i_mdi_battery_charging_wireless
-ﴆ - i_mdi_battery_charging_wireless_10
-ﴇ - i_mdi_battery_charging_wireless_20
-ﴈ - i_mdi_battery_charging_wireless_30
-ﴉ - i_mdi_battery_charging_wireless_40
-ﴊ - i_mdi_battery_charging_wireless_50
-ﴋ - i_mdi_battery_charging_wireless_60
-ﴌ - i_mdi_battery_charging_wireless_70
-ﴍ - i_mdi_battery_charging_wireless_80
-ﴎ - i_mdi_battery_charging_wireless_90
-ﴏ - i_mdi_battery_charging_wireless_alert
-ﴐ - i_mdi_battery_charging_wireless_outline
-ﴑ - i_mdi_bitcoin
-ﴒ - i_mdi_briefcase_outline
-ﴓ - i_mdi_cellphone_wireless
-ﴔ - i_mdi_clover
-ﴕ - i_mdi_comment_question
-ﴖ - i_mdi_content_save_outline
-ﴗ - i_mdi_delete_restore
-ﴘ - i_mdi_door
-ﴙ - i_mdi_door_closed
-ﴚ - i_mdi_door_open
-ﴛ - i_mdi_fan_off
-ﴜ - i_mdi_file_percent
-ﴝ - i_mdi_finance
-ﴞ - i_mdi_flash_circle
-ﴟ - i_mdi_floor_plan
-ﴠ - i_mdi_forum_outline
-ﴡ - i_mdi_golf
-ﴢ - i_mdi_google_home
-ﴣ - i_mdi_guy_fawkes_mask
-ﴤ - i_mdi_home_account
-ﴥ - i_mdi_home_heart
-ﴦ - i_mdi_hot_tub
-ﴧ - i_mdi_hulu
-ﴨ - i_mdi_ice_cream
-ﴩ - i_mdi_image_off
-ﴪ - i_mdi_karate
-ﴫ - i_mdi_ladybug
-ﴬ - i_mdi_notebook
-ﴭ - i_mdi_phone_return
-ﴮ - i_mdi_poker_chip
-ﴯ - i_mdi_shape
-ﴰ - i_mdi_shape_outline
-ﴱ - i_mdi_ship_wheel
-ﴲ - i_mdi_soccer_field
-ﴳ - i_mdi_table_column
-ﴴ - i_mdi_table_of_contents
-ﴵ - i_mdi_table_row
-ﴶ - i_mdi_table_settings
-ﴷ - i_mdi_television_box
-ﴸ - i_mdi_television_classic_off
-ﴹ - i_mdi_television_off
-ﴺ - i_mdi_towing
-ﴻ - i_mdi_upload_multiple
-ﴼ - i_mdi_video_4k_box
-ﴽ - i_mdi_video_input_antenna
-﴾ - i_mdi_video_input_component
-﴿ - i_mdi_video_input_hdmi
-﵀ - i_mdi_video_input_svideo
-﵁ - i_mdi_view_dashboard_variant
-﵂ - i_mdi_vuejs
-﵃ - i_mdi_xamarin
-﵄ - i_mdi_xamarin_outline
-﵅ - i_mdi_youtube_creator_studio
-﵆ - i_mdi_youtube_gaming
-♥ - i_oct_heart
-⚡ - i_oct_zap
- - i_oct_light_bulb
- - i_oct_repo
- - i_oct_repo_forked
- - i_oct_repo_push
- - i_oct_repo_pull
- - i_oct_book
- - i_oct_octoface
- - i_oct_git_pull_request
- - i_oct_mark_github
- - i_oct_cloud_download
- - i_oct_cloud_upload
- - i_oct_keyboard
- - i_oct_gist
- - i_oct_file_code
- - i_oct_file_text
- - i_oct_file_media
- - i_oct_file_zip
- - i_oct_file_pdf
- - i_oct_tag
- - i_oct_file_directory
- - i_oct_file_submodule
- - i_oct_person
- - i_oct_jersey
- - i_oct_git_commit
- - i_oct_git_branch
- - i_oct_git_merge
- - i_oct_mirror
- - i_oct_issue_opened
- - i_oct_issue_reopened
- - i_oct_issue_closed
- - i_oct_star
- - i_oct_comment
- - i_oct_question
- - i_oct_alert
- - i_oct_search
- - i_oct_gear
- - i_oct_radio_tower
- - i_oct_tools
- - i_oct_sign_out
- - i_oct_rocket
- - i_oct_rss
- - i_oct_clippy
- - i_oct_sign_in
- - i_oct_organization
- - i_oct_device_mobile
- - i_oct_unfold
- - i_oct_check
- - i_oct_mail
- - i_oct_mail_read
- - i_oct_arrow_up
- - i_oct_arrow_right
- - i_oct_arrow_down
- - i_oct_arrow_left
- - i_oct_pin
- - i_oct_gift
- - i_oct_graph
- - i_oct_triangle_left
- - i_oct_credit_card
- - i_oct_clock
- - i_oct_ruby
- - i_oct_broadcast
- - i_oct_key
- - i_oct_repo_force_push
- - i_oct_repo_clone
- - i_oct_diff
- - i_oct_eye
- - i_oct_comment_discussion
- - i_oct_mail_reply
- - i_oct_primitive_dot
- - i_oct_primitive_square
- - i_oct_device_camera
- - i_oct_device_camera_video
- - i_oct_pencil
- - i_oct_info
- - i_oct_triangle_right
- - i_oct_triangle_down
- - i_oct_link
- - i_oct_plus
- - i_oct_three_bars
- - i_oct_code
- - i_oct_location
- - i_oct_list_unordered
- - i_oct_list_ordered
- - i_oct_quote
- - i_oct_versions
- - i_oct_calendar
- - i_oct_lock
- - i_oct_diff_added
- - i_oct_diff_removed
- - i_oct_diff_modified
- - i_oct_diff_renamed
- - i_oct_horizontal_rule
- - i_oct_arrow_small_right
- - i_oct_milestone
- - i_oct_checklist
- - i_oct_megaphone
- - i_oct_chevron_right
- - i_oct_bookmark
- - i_oct_settings
- - i_oct_dashboard
- - i_oct_history
- - i_oct_link_external
- - i_oct_mute
- - i_oct_x
- - i_oct_circle_slash
- - i_oct_pulse
- - i_oct_sync
- - i_oct_telescope
- - i_oct_gist_secret
- - i_oct_home
- - i_oct_stop
- - i_oct_bug
- - i_oct_logo_github
- - i_oct_file_binary
- - i_oct_database
- - i_oct_server
- - i_oct_diff_ignored
- - i_oct_ellipsis
- - i_oct_no_newline
- - i_oct_hubot
- - i_oct_arrow_small_up
- - i_oct_arrow_small_down
- - i_oct_arrow_small_left
- - i_oct_chevron_up
- - i_oct_chevron_down
- - i_oct_chevron_left
- - i_oct_triangle_up
- - i_oct_git_compare
- - i_oct_logo_gist
- - i_oct_file_symlink_file
- - i_oct_file_symlink_directory
- - i_oct_squirrel
- - i_oct_globe
- - i_oct_unmute
- - i_oct_mention
- - i_oct_package
- - i_oct_browser
- - i_oct_terminal
- - i_oct_markdown
- - i_oct_dash
- - i_oct_fold
- - i_oct_inbox
- - i_oct_trashcan
- - i_oct_paintcan
- - i_oct_flame
- - i_oct_briefcase
- - i_oct_plug
- - i_oct_circuit_board
- - i_oct_mortar_board
- - i_oct_law
- - i_oct_thumbsup
- - i_oct_thumbsdown
- - i_oct_desktop_download
- - i_oct_beaker
- - i_oct_bell
- - i_oct_watch
- - i_oct_shield
- - i_oct_bold
- - i_oct_text_size
- - i_oct_italic
- - i_oct_tasklist
- - i_oct_verified
- - i_oct_smiley
- - i_oct_unverified
- - i_oct_ellipses
- - i_oct_file
- - i_oct_grabber
- - i_oct_plus_small
- - i_oct_reply
- - i_oct_device_desktop
- - i_pl_branch
- - i_pl_line_number i_pl_current_line_pl_line_number
- - i_pl_hostname i_pl_readonly_pl_hostname
- - i_ple_column_number i_ple_current_column_ple_column_number
- - i_pl_left_hard_divider
- - i_pl_left_soft_divider
- - i_pl_right_hard_divider
- - i_pl_right_soft_divider
- - i_ple_right_half_circle_thick
- - i_ple_right_half_circle_thin
- - i_ple_left_half_circle_thick
- - i_ple_left_half_circle_thin
- - i_ple_lower_left_triangle
- - i_ple_backslash_separator
- - i_ple_lower_right_triangle
- - i_ple_forwardslash_separator
- - i_ple_upper_left_triangle
- - i_ple_forwardslash_separator_redundant
- - i_ple_upper_right_triangle
- - i_ple_backslash_separator_redundant
- - i_ple_flame_thick
- - i_ple_flame_thin
- - i_ple_flame_thick_mirrored
- - i_ple_flame_thin_mirrored
- - i_ple_pixelated_squares_small
- - i_ple_pixelated_squares_small_mirrored
- - i_ple_pixelated_squares_big
- - i_ple_pixelated_squares_big_mirrored
- - i_ple_ice_waveform
- - i_ple_ice_waveform_mirrored
- - i_ple_honeycomb
- - i_ple_honeycomb_outline
- - i_ple_lego_separator
- - i_ple_lego_separator_thin
- - i_ple_lego_block_facing
- - i_ple_lego_block_sideways
- - i_ple_trapezoid_top_bottom
- - i_ple_trapezoid_top_bottom_mirrored
- - i_pom_clean_code
- - i_pom_pomodoro_done
- - i_pom_pomodoro_estimated
- - i_pom_pomodoro_ticking
- - i_pom_pomodoro_squashed
- - i_pom_short_pause
- - i_pom_long_pause
- - i_pom_away
- - i_pom_pair_programming
- - i_pom_internal_interruption
- - i_pom_external_interruption
- - i_custom_folder_npm
- - i_custom_folder_git i_custom_folder_git_branch_custom_folder_git
- - i_custom_folder_config
- - i_custom_folder_github
- - i_custom_folder_open
- - i_custom_folder
- - i_seti_stylus
- - i_seti_project
- - i_seti_play_arrow
- - i_seti_sass
- - i_seti_rails
- - i_seti_ruby
- - i_seti_python
- - i_seti_heroku
- - i_seti_php
- - i_seti_markdown
- - i_seti_license
- - i_seti_json i_seti_less_seti_json
- - i_seti_javascript
- - i_seti_image
- - i_seti_html
- - i_seti_mustache
- - i_seti_gulp
- - i_seti_grunt
- - i_seti_default i_seti_text_seti_default
- - i_seti_folder
- - i_seti_css
- - i_seti_config
- - i_seti_npm
- - i_seti_home
- - i_seti_ejs
- - i_seti_xml
- - i_seti_bower
- - i_seti_coffee i_seti_cjsx_seti_coffee
- - i_seti_twig
- - i_custom_cpp
- - i_custom_c
- - i_seti_haskell
- - i_seti_lua
- - i_indent_line i_indentation_line_indent_line i_indent_dotted_guide_indent_line
- - i_seti_karma
- - i_seti_favicon
- - i_seti_julia
- - i_seti_react
- - i_custom_go
- - i_seti_go
- - i_seti_typescript
- - i_custom_msdos
- - i_custom_windows
- - i_custom_vim
- - i_custom_elm
- - i_custom_elixir
- - i_custom_electron
- - i_weather_day_cloudy_gusts
- - i_weather_day_cloudy_windy
- - i_weather_day_cloudy
- - i_weather_day_fog
- - i_weather_day_hail
- - i_weather_day_lightning
- - i_weather_day_rain_mix
- - i_weather_day_rain_wind
- - i_weather_day_rain
- - i_weather_day_showers
- - i_weather_day_snow
- - i_weather_day_sprinkle
- - i_weather_day_sunny_overcast
- - i_weather_day_sunny
- - i_weather_day_storm_showers
- - i_weather_day_thunderstorm
- - i_weather_cloudy_gusts
- - i_weather_cloudy_windy
- - i_weather_cloudy
- - i_weather_fog
- - i_weather_hail
- - i_weather_lightning
- - i_weather_rain_mix
- - i_weather_rain_wind
- - i_weather_rain
- - i_weather_showers
- - i_weather_snow
- - i_weather_sprinkle
- - i_weather_storm_showers
- - i_weather_thunderstorm
- - i_weather_windy
- - i_weather_night_alt_cloudy_gusts
- - i_weather_night_alt_cloudy_windy
- - i_weather_night_alt_hail
- - i_weather_night_alt_lightning
- - i_weather_night_alt_rain_mix
- - i_weather_night_alt_rain_wind
- - i_weather_night_alt_rain
- - i_weather_night_alt_rain_mix
- - i_weather_night_alt_snow
- - i_weather_night_alt_sprinkle
- - i_weather_night_alt_storm_showers
- - i_weather_night_alt_thunderstorm
- - i_weather_night_clear
- - i_weather_night_cloudy_gusts
- - i_weather_night_cloudy_windy
- - i_weather_night_cloudy
- - i_weather_night_hail
- - i_weather_night_lightning
- - i_weather_night_rain_mix
- - i_weather_night_rain_wind
- - i_weather_night_rain
- - i_weather_night_showers
- - i_weather_night_snow
- - i_weather_night_sprinkle
- - i_weather_night_storm_showers
- - i_weather_night_thunderstorm
- - i_weather_celsius
- - i_weather_cloud_down
- - i_weather_cloud_refresh
- - i_weather_cloud_up
- - i_weather_cloud
- - i_weather_degrees
- - i_weather_direction_down_left
- - i_weather_direction_down
- - i_weather_fahrenheit
- - i_weather_horizon_alt
- - i_weather_horizon
- - i_weather_direction_left
- - i_weather_aliens
- - i_weather_night_fog
- - i_weather_refresh_alt
- - i_weather_refresh
- - i_weather_direction_right
- - i_weather_raindrops
- - i_weather_strong_wind
- - i_weather_sunrise
- - i_weather_sunset
- - i_weather_thermometer_exterior
- - i_weather_thermometer_internal
- - i_weather_thermometer
- - i_weather_tornado
- - i_weather_direction_up_right
- - i_weather_direction_up
- - i_weather_wind_west
- - i_weather_wind_south_west
- - i_weather_wind_south_east
- - i_weather_wind_south
- - i_weather_wind_north_west
- - i_weather_wind_north_east
- - i_weather_wind_north
- - i_weather_wind_east
- - i_weather_smoke
- - i_weather_dust
- - i_weather_snow_wind
- - i_weather_day_snow_wind
- - i_weather_night_snow_wind
- - i_weather_night_alt_snow_wind
- - i_weather_day_sleet_storm
- - i_weather_night_sleet_storm
- - i_weather_night_alt_sleet_storm
- - i_weather_day_snow_thunderstorm
- - i_weather_night_snow_thunderstorm
- - i_weather_night_alt_snow_thunderstorm
- - i_weather_solar_eclipse
- - i_weather_lunar_eclipse
- - i_weather_meteor
- - i_weather_hot
- - i_weather_hurricane
- - i_weather_smog
- - i_weather_alien
- - i_weather_snowflake_cold
- - i_weather_stars
- - i_weather_raindrop
- - i_weather_barometer
- - i_weather_humidity
- - i_weather_na
- - i_weather_flood
- - i_weather_day_cloudy_high
- - i_weather_night_alt_cloudy_high
- - i_weather_night_cloudy_high
- - i_weather_night_alt_partly_cloudy
- - i_weather_sandstorm
- - i_weather_night_partly_cloudy
- - i_weather_umbrella
- - i_weather_day_windy
- - i_weather_night_alt_cloudy
- - i_weather_direction_up_left
- - i_weather_direction_down_right
- - i_weather_time_12
- - i_weather_time_1
- - i_weather_time_2
- - i_weather_time_3
- - i_weather_time_4
- - i_weather_time_5
- - i_weather_time_6
- - i_weather_time_7
- - i_weather_time_8
- - i_weather_time_9
- - i_weather_time_10
- - i_weather_time_11
- - i_weather_moon_new
- - i_weather_moon_waxing_crescent_1
- - i_weather_moon_waxing_crescent_2
- - i_weather_moon_waxing_crescent_3
- - i_weather_moon_waxing_crescent_4
- - i_weather_moon_waxing_crescent_5
- - i_weather_moon_waxing_crescent_6
- - i_weather_moon_first_quarter
- - i_weather_moon_waxing_gibbous_1
- - i_weather_moon_waxing_gibbous_2
- - i_weather_moon_waxing_gibbous_3
- - i_weather_moon_waxing_gibbous_4
- - i_weather_moon_waxing_gibbous_5
- - i_weather_moon_waxing_gibbous_6
- - i_weather_moon_full
- - i_weather_moon_waning_gibbous_1
- - i_weather_moon_waning_gibbous_2
- - i_weather_moon_waning_gibbous_3
- - i_weather_moon_waning_gibbous_4
- - i_weather_moon_waning_gibbous_5
- - i_weather_moon_waning_gibbous_6
- - i_weather_moon_third_quarter
- - i_weather_moon_waning_crescent_1
- - i_weather_moon_waning_crescent_2
- - i_weather_moon_waning_crescent_3
- - i_weather_moon_waning_crescent_4
- - i_weather_moon_waning_crescent_5
- - i_weather_moon_waning_crescent_6
- - i_weather_wind_direction
- - i_weather_day_sleet
- - i_weather_night_sleet
- - i_weather_night_alt_sleet
- - i_weather_sleet
- - i_weather_day_haze
- - i_weather_wind_beaufort_0
- - i_weather_wind_beaufort_1
- - i_weather_wind_beaufort_2
- - i_weather_wind_beaufort_3
- - i_weather_wind_beaufort_4
- - i_weather_wind_beaufort_5
- - i_weather_wind_beaufort_6
- - i_weather_wind_beaufort_7
- - i_weather_wind_beaufort_8
- - i_weather_wind_beaufort_9
- - i_weather_wind_beaufort_10
- - i_weather_wind_beaufort_11
- - i_weather_wind_beaufort_12
- - i_weather_day_light_wind
- - i_weather_tsunami
- - i_weather_earthquake
- - i_weather_fire
- - i_weather_volcano
- - i_weather_moonrise
- - i_weather_moonset
- - i_weather_train
- - i_weather_small_craft_advisory
- - i_weather_gale_warning
- - i_weather_storm_warning
- - i_weather_hurricane_warning
- - i_weather_moon_alt_waxing_crescent_1
- - i_weather_moon_alt_waxing_crescent_2
- - i_weather_moon_alt_waxing_crescent_3
- - i_weather_moon_alt_waxing_crescent_4
- - i_weather_moon_alt_waxing_crescent_5
- - i_weather_moon_alt_waxing_crescent_6
- - i_weather_moon_alt_first_quarter
- - i_weather_moon_alt_waxing_gibbous_1
- - i_weather_moon_alt_waxing_gibbous_2
- - i_weather_moon_alt_waxing_gibbous_3
- - i_weather_moon_alt_waxing_gibbous_4
- - i_weather_moon_alt_waxing_gibbous_5
- - i_weather_moon_alt_waxing_gibbous_6
- - i_weather_moon_alt_full
- - i_weather_moon_alt_waning_gibbous_1
- - i_weather_moon_alt_waning_gibbous_2
- - i_weather_moon_alt_waning_gibbous_3
- - i_weather_moon_alt_waning_gibbous_4
- - i_weather_moon_alt_waning_gibbous_5
- - i_weather_moon_alt_waning_gibbous_6
- - i_weather_moon_alt_third_quarter
- - i_weather_moon_alt_waning_crescent_1
- - i_weather_moon_alt_waning_crescent_2
- - i_weather_moon_alt_waning_crescent_3
- - i_weather_moon_alt_waning_crescent_4
- - i_weather_moon_alt_waning_crescent_5
- - i_weather_moon_alt_waning_crescent_6
- - i_weather_moon_alt_new
+
 - i_dev_bing_small
+ - i_dev_css_tricks
+ - i_dev_git
+ - i_dev_bitbucket
+ - i_dev_mysql
+ - i_dev_streamline
+ - i_dev_database
+ - i_dev_dropbox
+ - i_dev_github_alt
+ - i_dev_github_badge
+ - i_dev_github
+ - i_dev_wordpress
+ - i_dev_visualstudio
+ - i_dev_jekyll_small
+ - i_dev_android
+ - i_dev_windows
+ - i_dev_stackoverflow
+ - i_dev_apple
+ - i_dev_linux
+ - i_dev_appstore
+ - i_dev_ghost_small
+ - i_dev_yahoo
+ - i_dev_codepen
+ - i_dev_github_full
+ - i_dev_nodejs_small
+ - i_dev_nodejs
+ - i_dev_hackernews
+ - i_dev_ember
+ - i_dev_dojo
+ - i_dev_django
+ - i_dev_npm
+ - i_dev_ghost
+ - i_dev_modernizr
+ - i_dev_unity_small
+ - i_dev_rasberry_pi
+ - i_dev_blackberry
+ - i_dev_go
+ - i_dev_git_branch
+ - i_dev_git_pull_request
+ - i_dev_git_merge
+ - i_dev_git_compare
+ - i_dev_git_commit
+ - i_dev_cssdeck
+ - i_dev_yahoo_small
+ - i_dev_techcrunch
+ - i_dev_smashing_magazine
+ - i_dev_netmagazine
+ - i_dev_codrops
+ - i_dev_phonegap
+ - i_dev_google_drive
+ - i_dev_html5_multimedia
+ - i_dev_html5_device_access
+ - i_dev_html5_connectivity
+ - i_dev_html5_3d_effects
+ - i_dev_html5
+ - i_dev_scala
+ - i_dev_java
+ - i_dev_ruby
+ - i_dev_ubuntu
+ - i_dev_ruby_on_rails
+ - i_dev_python
+ - i_dev_php
+ - i_dev_markdown
+ - i_dev_laravel
+ - i_dev_magento
+ - i_dev_joomla
+ - i_dev_drupal
+ - i_dev_chrome
+ - i_dev_ie
+ - i_dev_firefox
+ - i_dev_opera
+ - i_dev_bootstrap
+ - i_dev_safari
+ - i_dev_css3
+ - i_dev_css3_full
+ - i_dev_sass
+ - i_dev_grunt
+ - i_dev_bower
+ - i_dev_javascript
+ - i_dev_javascript_shield
+ - i_dev_jquery
+ - i_dev_coffeescript
+ - i_dev_backbone
+ - i_dev_angular
+ - i_dev_jquery_ui
+ - i_dev_swift
+ - i_dev_symfony
+ - i_dev_symfony_badge
+ - i_dev_less
+ - i_dev_stylus
+ - i_dev_trello
+ - i_dev_atlassian
+ - i_dev_jira
+ - i_dev_envato
+ - i_dev_snap_svg
+ - i_dev_raphael
+ - i_dev_chart
+ - i_dev_compass
+ - i_dev_onedrive
+ - i_dev_gulp
+ - i_dev_atom
+ - i_dev_cisco
+ - i_dev_nancy
+ - i_dev_jenkins
+ - i_dev_clojure
+ - i_dev_perl
+ - i_dev_clojure_alt
+ - i_dev_celluloid
+ - i_dev_w3c
+ - i_dev_redis
+ - i_dev_postgresql
+ - i_dev_webplatform
+ - i_dev_requirejs
+ - i_dev_opensource
+ - i_dev_typo3
+ - i_dev_uikit
+ - i_dev_doctrine
+ - i_dev_groovy
+ - i_dev_nginx
+ - i_dev_haskell
+ - i_dev_zend
+ - i_dev_gnu
+ - i_dev_yeoman
+ - i_dev_heroku
+ - i_dev_msql_server
+ - i_dev_debian
+ - i_dev_travis
+ - i_dev_dotnet
+ - i_dev_codeigniter
+ - i_dev_javascript_badge
+ - i_dev_yii
+ - i_dev_composer
+ - i_dev_krakenjs_badge
+ - i_dev_krakenjs
+ - i_dev_mozilla
+ - i_dev_firebase
+ - i_dev_sizzlejs
+ - i_dev_creativecommons
+ - i_dev_creativecommons_badge
+ - i_dev_mitlicence
+ - i_dev_senchatouch
+ - i_dev_bugsense
+ - i_dev_extjs
+ - i_dev_mootools_badge
+ - i_dev_mootools
+ - i_dev_ruby_rough
+ - i_dev_komodo
+ - i_dev_coda
+ - i_dev_bintray
+ - i_dev_terminal
+ - i_dev_code
+ - i_dev_responsive
+ - i_dev_dart
+ - i_dev_aptana
+ - i_dev_mailchimp
+ - i_dev_netbeans
+ - i_dev_dreamweaver
+ - i_dev_brackets
+ - i_dev_eclipse
+ - i_dev_cloud9
+ - i_dev_scrum
+ - i_dev_prolog
+ - i_dev_terminal_badge
+ - i_dev_code_badge
+ - i_dev_mongodb
+ - i_dev_meteor
+ - i_dev_meteorfull
+ - i_dev_fsharp
+ - i_dev_rust
+ - i_dev_ionic
+ - i_dev_sublime
+ - i_dev_appcelerator
+ - i_dev_asterisk
+ - i_dev_aws
+ - i_dev_digital_ocean
+ - i_dev_dlang
+ - i_dev_docker
+ - i_dev_erlang
+ - i_dev_google_cloud_platform
+ - i_dev_grails
+ - i_dev_illustrator
+ - i_dev_intellij
+ - i_dev_materializecss
+ - i_dev_openshift
+ - i_dev_photoshop
+ - i_dev_rackspace
+ - i_dev_react
+ - i_dev_redhat
+ - i_dev_scriptcs
+ - i_dev_sqllite
+ - i_dev_vim
+ - i_fae_smaller
+ - i_fae_snowing
+ - i_fae_soda
+ - i_fae_sofa
+ - i_fae_soup
+ - i_fae_spermatozoon
+ - i_fae_spin_double
+ - i_fae_stomach
+ - i_fae_storm
+ - i_fae_telescope
+ - i_fae_thermometer
+ - i_fae_thermometer_high
+ - i_fae_thermometer_low
+ - i_fae_thin_close
+ - i_fae_toilet
+ - i_fae_tools
+ - i_fae_tooth
+ - i_fae_uterus
+ - i_fae_w3c
+ - i_fae_walking
+ - i_fae_virus
+ - i_fae_telegram_circle
+ - i_fae_slash
+ - i_fae_telegram
+ - i_fae_shirt
+ - i_fae_tacos
+ - i_fae_sushi
+ - i_fae_triangle_ruler
+ - i_fae_tree
+ - i_fae_sun_cloud
+ - i_fae_ruby_o
+ - i_fae_ruler
+ - i_fae_umbrella
+ - i_fae_medicine
+ - i_fae_microscope
+ - i_fae_milk_bottle
+ - i_fae_minimize
+ - i_fae_molecule
+ - i_fae_moon_cloud
+ - i_fae_mushroom
+ - i_fae_mustache
+ - i_fae_mysql
+ - i_fae_nintendo
+ - i_fae_palette_color
+ - i_fae_pi
+ - i_fae_pizza
+ - i_fae_planet
+ - i_fae_plant
+ - i_fae_playstation
+ - i_fae_poison
+ - i_fae_popcorn
+ - i_fae_popsicle
+ - i_fae_pulse
+ - i_fae_python
+ - i_fae_quora_circle
+ - i_fae_quora_square
+ - i_fae_radioactive
+ - i_fae_raining
+ - i_fae_real_heart
+ - i_fae_refrigerator
+ - i_fae_restore
+ - i_fae_ring
+ - i_fae_ruby
+ - i_fae_fingerprint
+ - i_fae_floppy
+ - i_fae_footprint
+ - i_fae_freecodecamp
+ - i_fae_galaxy
+ - i_fae_galery
+ - i_fae_glass
+ - i_fae_google_drive
+ - i_fae_google_play
+ - i_fae_gps
+ - i_fae_grav
+ - i_fae_guitar
+ - i_fae_gut
+ - i_fae_halter
+ - i_fae_hamburger
+ - i_fae_hat
+ - i_fae_hexagon
+ - i_fae_high_heel
+ - i_fae_hotdog
+ - i_fae_ice_cream
+ - i_fae_id_card
+ - i_fae_imdb
+ - i_fae_infinity
+ - i_fae_java
+ - i_fae_layers
+ - i_fae_lips
+ - i_fae_lipstick
+ - i_fae_liver
+ - i_fae_lung
+ - i_fae_makeup_brushes
+ - i_fae_maximize
+ - i_fae_wallet
+ - i_fae_chess_horse
+ - i_fae_chess_king
+ - i_fae_chess_pawn
+ - i_fae_chess_queen
+ - i_fae_chess_tower
+ - i_fae_cheese
+ - i_fae_chilli
+ - i_fae_chip
+ - i_fae_cicling
+ - i_fae_cloud
+ - i_fae_cockroach
+ - i_fae_coffe_beans
+ - i_fae_coins
+ - i_fae_comb
+ - i_fae_comet
+ - i_fae_crown
+ - i_fae_cup_coffe
+ - i_fae_dice
+ - i_fae_disco
+ - i_fae_dna
+ - i_fae_donut
+ - i_fae_dress
+ - i_fae_drop
+ - i_fae_ello
+ - i_fae_envelope_open
+ - i_fae_envelope_open_o
+ - i_fae_equal
+ - i_fae_equal_bigger
+ - i_fae_feedly
+ - i_fae_file_export
+ - i_fae_file_import
+ - i_fae_wind
+ - i_fae_atom
+ - i_fae_bacteria
+ - i_fae_banana
+ - i_fae_bath
+ - i_fae_bed
+ - i_fae_benzene
+ - i_fae_bigger
+ - i_fae_biohazard
+ - i_fae_blogger_circle
+ - i_fae_blogger_square
+ - i_fae_bones
+ - i_fae_book_open
+ - i_fae_book_open_o
+ - i_fae_brain
+ - i_fae_bread
+ - i_fae_butterfly
+ - i_fae_carot
+ - i_fae_cc_by
+ - i_fae_cc_cc
+ - i_fae_cc_nc
+ - i_fae_cc_nc_eu
+ - i_fae_cc_nc_jp
+ - i_fae_cc_nd
+ - i_fae_cc_remix
+ - i_fae_cc_sa
+ - i_fae_cc_share
+ - i_fae_cc_zero
+ - i_fae_checklist_o
+ - i_fae_cherry
+ - i_fae_chess_bishop
+ - i_fae_xbox
+ - i_fae_apple_fruit
+ - i_fae_chicken_thigh
+ - i_fae_gift_card
+ - i_fae_injection
+ - i_fae_isle
+ - i_fae_lollipop
+ - i_fae_loyalty_card
+ - i_fae_meat
+ - i_fae_mountains
+ - i_fae_orange
+ - i_fae_peach
+ - i_fae_pear
+ - i_fa_glass
+ - i_fa_music
+ - i_fa_search
+ - i_fa_envelope_o
+ - i_fa_heart
+ - i_fa_star
+ - i_fa_star_o
+ - i_fa_user
+ - i_fa_film
+ - i_fa_th_large
+ - i_fa_th
+ - i_fa_th_list
+ - i_fa_check
+ - i_fa_times i_fa_close_fa_times i_fa_remove_fa_times
+ - i_fa_search_plus
+ - i_fa_search_minus
+ - i_fa_power_off
+ - i_fa_signal
+ - i_fa_cog i_fa_gear_fa_cog
+ - i_fa_trash_o
+ - i_fa_home
+ - i_fa_file_o
+ - i_fa_clock_o
+ - i_fa_road
+ - i_fa_download
+ - i_fa_arrow_circle_o_down
+ - i_fa_arrow_circle_o_up
+ - i_fa_inbox
+ - i_fa_play_circle_o
+ - i_fa_repeat i_fa_rotate_right_fa_repeat
+ - i_fa_refresh
+ - i_fa_list_alt
+ - i_fa_lock
+ - i_fa_flag
+ - i_fa_headphones
+ - i_fa_volume_off
+ - i_fa_volume_down
+ - i_fa_volume_up
+ - i_fa_qrcode
+ - i_fa_barcode
+ - i_fa_tag
+ - i_fa_tags
+ - i_fa_book
+ - i_fa_bookmark
+ - i_fa_print
+ - i_fa_camera
+ - i_fa_font
+ - i_fa_bold
+ - i_fa_italic
+ - i_fa_text_height
+ - i_fa_text_width
+ - i_fa_align_left
+ - i_fa_align_center
+ - i_fa_align_right
+ - i_fa_align_justify
+ - i_fa_list
+ - i_fa_outdent i_fa_dedent_fa_outdent
+ - i_fa_indent
+ - i_fa_video_camera
+ - i_fa_picture_o i_fa_image_fa_picture_o i_fa_photo_fa_picture_o
+ - i_fa_pencil
+ - i_fa_map_marker
+ - i_fa_adjust
+ - i_fa_tint
+ - i_fa_pencil_square_o i_fa_edit_fa_pencil_square_o
+ - i_fa_share_square_o
+ - i_fa_check_square_o
+ - i_fa_arrows
+ - i_fa_step_backward
+ - i_fa_fast_backward
+ - i_fa_backward
+ - i_fa_play
+ - i_fa_pause
+ - i_fa_stop
+ - i_fa_forward
+ - i_fa_fast_forward
+ - i_fa_step_forward
+ - i_fa_eject
+ - i_fa_chevron_left
+ - i_fa_chevron_right
+ - i_fa_plus_circle
+ - i_fa_minus_circle
+ - i_fa_times_circle
+ - i_fa_check_circle
+ - i_fa_question_circle
+ - i_fa_info_circle
+ - i_fa_crosshairs
+ - i_fa_times_circle_o
+ - i_fa_check_circle_o
+ - i_fa_ban
+ - i_fa_arrow_left
+ - i_fa_arrow_right
+ - i_fa_arrow_up
+ - i_fa_arrow_down
+ - i_fa_share i_fa_mail_forward_fa_share
+ - i_fa_expand
+ - i_fa_compress
+ - i_fa_plus
+ - i_fa_minus
+ - i_fa_asterisk
+ - i_fa_exclamation_circle
+ - i_fa_gift
+ - i_fa_leaf
+ - i_fa_fire
+ - i_fa_eye
+ - i_fa_eye_slash
+ - i_fa_exclamation_triangle i_fa_warning_fa_exclamation_triangle
+ - i_fa_plane
+ - i_fa_calendar
+ - i_fa_random
+ - i_fa_comment
+ - i_fa_magnet
+ - i_fa_chevron_up
+ - i_fa_chevron_down
+ - i_fa_retweet
+ - i_fa_shopping_cart
+ - i_fa_folder
+ - i_fa_folder_open
+ - i_fa_arrows_v
+ - i_fa_arrows_h
+ - i_fa_bar_chart i_fa_bar_chart_o_fa_bar_chart
+ - i_fa_twitter_square
+ - i_fa_facebook_square
+ - i_fa_camera_retro
+ - i_fa_key
+ - i_fa_cogs i_fa_gears_fa_cogs
+ - i_fa_comments
+ - i_fa_thumbs_o_up
+ - i_fa_thumbs_o_down
+ - i_fa_star_half
+ - i_fa_heart_o
+ - i_fa_sign_out
+ - i_fa_linkedin_square
+ - i_fa_thumb_tack
+ - i_fa_external_link
+ - i_fa_sign_in
+ - i_fa_trophy
+ - i_fa_github_square
+ - i_fa_upload
+ - i_fa_lemon_o
+ - i_fa_phone
+ - i_fa_square_o
+ - i_fa_bookmark_o
+ - i_fa_phone_square
+ - i_fa_twitter
+ - i_fa_facebook i_fa_facebook_f_fa_facebook
+ - i_fa_github
+ - i_fa_unlock
+ - i_fa_credit_card
+ - i_fa_rss i_fa_feed_fa_rss
+ - i_fa_hdd_o
+ - i_fa_bullhorn
+ - i_fa_bell_o
+ - i_fa_certificate
+ - i_fa_hand_o_right
+ - i_fa_hand_o_left
+ - i_fa_hand_o_up
+ - i_fa_hand_o_down
+ - i_fa_arrow_circle_left
+ - i_fa_arrow_circle_right
+ - i_fa_arrow_circle_up
+ - i_fa_arrow_circle_down
+ - i_fa_globe
+ - i_fa_wrench
+ - i_fa_tasks
+ - i_fa_filter
+ - i_fa_briefcase
+ - i_fa_arrows_alt
+ - i_fa_users i_fa_group_fa_users
+ - i_fa_link i_fa_chain_fa_link
+ - i_fa_cloud
+ - i_fa_flask
+ - i_fa_scissors i_fa_cut_fa_scissors
+ - i_fa_files_o i_fa_copy_fa_files_o
+ - i_fa_paperclip
+ - i_fa_floppy_o i_fa_save_fa_floppy_o
+ - i_fa_square
+ - i_fa_bars i_fa_navicon_fa_bars i_fa_reorder_fa_bars
+ - i_fa_list_ul
+ - i_fa_list_ol
+ - i_fa_strikethrough
+ - i_fa_underline
+ - i_fa_table
+ - i_fa_magic
+ - i_fa_truck
+ - i_fa_pinterest
+ - i_fa_pinterest_square
+ - i_fa_google_plus_square
+ - i_fa_google_plus
+ - i_fa_money
+ - i_fa_caret_down
+ - i_fa_caret_up
+ - i_fa_caret_left
+ - i_fa_caret_right
+ - i_fa_columns
+ - i_fa_sort i_fa_unsorted_fa_sort
+ - i_fa_sort_desc i_fa_sort_down_fa_sort_desc
+ - i_fa_sort_asc i_fa_sort_up_fa_sort_asc
+ - i_fa_envelope
+ - i_fa_linkedin
+ - i_fa_undo i_fa_rotate_left_fa_undo
+ - i_fa_gavel i_fa_legal_fa_gavel
+ - i_fa_tachometer i_fa_dashboard_fa_tachometer
+ - i_fa_comment_o
+ - i_fa_comments_o
+ - i_fa_bolt i_fa_flash_fa_bolt
+ - i_fa_sitemap
+ - i_fa_umbrella
+ - i_fa_clipboard i_fa_paste_fa_clipboard
+ - i_fa_lightbulb_o
+ - i_fa_exchange
+ - i_fa_cloud_download
+ - i_fa_cloud_upload
+ - i_fa_user_md
+ - i_fa_stethoscope
+ - i_fa_suitcase
+ - i_fa_bell
+ - i_fa_coffee
+ - i_fa_cutlery
+ - i_fa_file_text_o
+ - i_fa_building_o
+ - i_fa_hospital_o
+ - i_fa_ambulance
+ - i_fa_medkit
+ - i_fa_fighter_jet
+ - i_fa_beer
+ - i_fa_h_square
+ - i_fa_plus_square
+ - i_fa_angle_double_left
+ - i_fa_angle_double_right
+ - i_fa_angle_double_up
+ - i_fa_angle_double_down
+ - i_fa_angle_left
+ - i_fa_angle_right
+ - i_fa_angle_up
+ - i_fa_angle_down
+ - i_fa_desktop
+ - i_fa_laptop
+ - i_fa_tablet
+ - i_fa_mobile i_fa_mobile_phone_fa_mobile
+ - i_fa_circle_o
+ - i_fa_quote_left
+ - i_fa_quote_right
+ - i_fa_spinner
+ - i_fa_circle
+ - i_fa_reply i_fa_mail_reply_fa_reply
+ - i_fa_github_alt
+ - i_fa_folder_o
+ - i_fa_folder_open_o
+ - i_fa_smile_o
+ - i_fa_frown_o
+ - i_fa_meh_o
+ - i_fa_gamepad
+ - i_fa_keyboard_o
+ - i_fa_flag_o
+ - i_fa_flag_checkered
+ - i_fa_terminal
+ - i_fa_code
+ - i_fa_reply_all i_fa_mail_reply_all_fa_reply_all
+ - i_fa_star_half_o i_fa_star_half_empty_fa_star_half_o i_fa_star_half_full_fa_star_half_o
+ - i_fa_location_arrow
+ - i_fa_crop
+ - i_fa_code_fork
+ - i_fa_chain_broken i_fa_unlink_fa_chain_broken
+ - i_fa_question
+ - i_fa_info
+ - i_fa_exclamation
+ - i_fa_superscript
+ - i_fa_subscript
+ - i_fa_eraser
+ - i_fa_puzzle_piece
+ - i_fa_microphone
+ - i_fa_microphone_slash
+ - i_fa_shield
+ - i_fa_calendar_o
+ - i_fa_fire_extinguisher
+ - i_fa_rocket
+ - i_fa_maxcdn
+ - i_fa_chevron_circle_left
+ - i_fa_chevron_circle_right
+ - i_fa_chevron_circle_up
+ - i_fa_chevron_circle_down
+ - i_fa_html5
+ - i_fa_css3
+ - i_fa_anchor
+ - i_fa_unlock_alt
+ - i_fa_bullseye
+ - i_fa_ellipsis_h
+ - i_fa_ellipsis_v
+ - i_fa_rss_square
+ - i_fa_play_circle
+ - i_fa_ticket
+ - i_fa_minus_square
+ - i_fa_minus_square_o
+ - i_fa_level_up
+ - i_fa_level_down
+ - i_fa_check_square
+ - i_fa_pencil_square
+ - i_fa_external_link_square
+ - i_fa_share_square
+ - i_fa_compass
+ - i_fa_caret_square_o_down i_fa_toggle_down_fa_caret_square_o_down
+ - i_fa_caret_square_o_up i_fa_toggle_up_fa_caret_square_o_up
+ - i_fa_caret_square_o_right i_fa_toggle_right_fa_caret_square_o_right
+ - i_fa_eur i_fa_euro_fa_eur
+ - i_fa_gbp
+ - i_fa_usd i_fa_dollar_fa_usd
+ - i_fa_inr i_fa_rupee_fa_inr
+ - i_fa_jpy i_fa_cny_fa_jpy i_fa_rmb_fa_jpy i_fa_yen_fa_jpy
+ - i_fa_rub i_fa_rouble_fa_rub i_fa_ruble_fa_rub
+ - i_fa_krw i_fa_won_fa_krw
+ - i_fa_btc i_fa_bitcoin_fa_btc
+ - i_fa_file
+ - i_fa_file_text
+ - i_fa_sort_alpha_asc
+ - i_fa_sort_alpha_desc
+ - i_fa_sort_amount_asc
+ - i_fa_sort_amount_desc
+ - i_fa_sort_numeric_asc
+ - i_fa_sort_numeric_desc
+ - i_fa_thumbs_up
+ - i_fa_thumbs_down
+ - i_fa_youtube_square
+ - i_fa_youtube
+ - i_fa_xing
+ - i_fa_xing_square
+ - i_fa_youtube_play
+ - i_fa_dropbox
+ - i_fa_stack_overflow
+ - i_fa_instagram
+ - i_fa_flickr
+ - i_fa_adn
+ - i_fa_bitbucket
+ - i_fa_bitbucket_square
+ - i_fa_tumblr
+ - i_fa_tumblr_square
+ - i_fa_long_arrow_down
+ - i_fa_long_arrow_up
+ - i_fa_long_arrow_left
+ - i_fa_long_arrow_right
+ - i_fa_apple
+ - i_fa_windows
+ - i_fa_android
+ - i_fa_linux
+ - i_fa_dribbble
+ - i_fa_skype
+ - i_fa_foursquare
+ - i_fa_trello
+ - i_fa_female
+ - i_fa_male
+ - i_fa_gratipay i_fa_gittip_fa_gratipay
+ - i_fa_sun_o
+ - i_fa_moon_o
+ - i_fa_archive
+ - i_fa_bug
+ - i_fa_vk
+ - i_fa_weibo
+ - i_fa_renren
+ - i_fa_pagelines
+ - i_fa_stack_exchange
+ - i_fa_arrow_circle_o_right
+ - i_fa_arrow_circle_o_left
+ - i_fa_caret_square_o_left i_fa_toggle_left_fa_caret_square_o_left
+ - i_fa_dot_circle_o
+ - i_fa_wheelchair
+ - i_fa_vimeo_square
+ - i_fa_try i_fa_turkish_lira_fa_try
+ - i_fa_plus_square_o
+ - i_fa_space_shuttle
+ - i_fa_slack
+ - i_fa_envelope_square
+ - i_fa_wordpress
+ - i_fa_openid
+ - i_fa_university i_fa_bank_fa_university i_fa_institution_fa_university
+ - i_fa_graduation_cap i_fa_mortar_board_fa_graduation_cap
+ - i_fa_yahoo
+ - i_fa_google
+ - i_fa_reddit
+ - i_fa_reddit_square
+ - i_fa_stumbleupon_circle
+ - i_fa_stumbleupon
+ - i_fa_delicious
+ - i_fa_digg
+ - i_fa_pied_piper_pp
+ - i_fa_pied_piper_alt
+ - i_fa_drupal
+ - i_fa_joomla
+ - i_fa_language
+ - i_fa_fax
+ - i_fa_building
+ - i_fa_child
+ - i_fa_paw
+ - i_fa_spoon
+ - i_fa_cube
+ - i_fa_cubes
+ - i_fa_behance
+ - i_fa_behance_square
+ - i_fa_steam
+ - i_fa_steam_square
+ - i_fa_recycle
+ - i_fa_car i_fa_automobile_fa_car
+ - i_fa_taxi i_fa_cab_fa_taxi
+ - i_fa_tree
+ - i_fa_spotify
+ - i_fa_deviantart
+ - i_fa_soundcloud
+ - i_fa_database
+ - i_fa_file_pdf_o
+ - i_fa_file_word_o
+ - i_fa_file_excel_o
+ - i_fa_file_powerpoint_o
+ - i_fa_file_image_o i_fa_file_photo_o_fa_file_image_o i_fa_file_picture_o_fa_file_image_o
+ - i_fa_file_archive_o i_fa_file_zip_o_fa_file_archive_o
+ - i_fa_file_audio_o i_fa_file_sound_o_fa_file_audio_o
+ - i_fa_file_video_o i_fa_file_movie_o_fa_file_video_o
+ - i_fa_file_code_o
+ - i_fa_vine
+ - i_fa_codepen
+ - i_fa_jsfiddle
+ - i_fa_life_ring i_fa_life_bouy_fa_life_ring i_fa_life_buoy_fa_life_ring i_fa_life_saver_fa_life_ring i_fa_support_fa_life_ring
+ - i_fa_circle_o_notch
+ - i_fa_rebel i_fa_ra_fa_rebel i_fa_resistance_fa_rebel
+ - i_fa_empire i_fa_ge_fa_empire
+ - i_fa_git_square
+ - i_fa_git
+ - i_fa_hacker_news i_fa_y_combinator_square_fa_hacker_news i_fa_yc_square_fa_hacker_news
+ - i_fa_tencent_weibo
+ - i_fa_qq
+ - i_fa_weixin i_fa_wechat_fa_weixin
+ - i_fa_paper_plane i_fa_send_fa_paper_plane
+ - i_fa_paper_plane_o i_fa_send_o_fa_paper_plane_o
+ - i_fa_history
+ - i_fa_circle_thin
+ - i_fa_header
+ - i_fa_paragraph
+ - i_fa_sliders
+ - i_fa_share_alt
+ - i_fa_share_alt_square
+ - i_fa_bomb
+ - i_fa_futbol_o i_fa_soccer_ball_o_fa_futbol_o
+ - i_fa_tty
+ - i_fa_binoculars
+ - i_fa_plug
+ - i_fa_slideshare
+ - i_fa_twitch
+ - i_fa_yelp
+ - i_fa_newspaper_o
+ - i_fa_wifi
+ - i_fa_calculator
+ - i_fa_paypal
+ - i_fa_google_wallet
+ - i_fa_cc_visa
+ - i_fa_cc_mastercard
+ - i_fa_cc_discover
+ - i_fa_cc_amex
+ - i_fa_cc_paypal
+ - i_fa_cc_stripe
+ - i_fa_bell_slash
+ - i_fa_bell_slash_o
+ - i_fa_trash
+ - i_fa_copyright
+ - i_fa_at
+ - i_fa_eyedropper
+ - i_fa_paint_brush
+ - i_fa_birthday_cake
+ - i_fa_area_chart
+ - i_fa_pie_chart
+ - i_fa_line_chart
+ - i_fa_lastfm
+ - i_fa_lastfm_square
+ - i_fa_toggle_off
+ - i_fa_toggle_on
+ - i_fa_bicycle
+ - i_fa_bus
+ - i_fa_ioxhost
+ - i_fa_angellist
+ - i_fa_cc
+ - i_fa_ils i_fa_shekel_fa_ils i_fa_sheqel_fa_ils
+ - i_fa_meanpath
+ - i_fa_buysellads
+ - i_fa_connectdevelop
+ - i_fa_dashcube
+ - i_fa_forumbee
+ - i_fa_leanpub
+ - i_fa_sellsy
+ - i_fa_shirtsinbulk
+ - i_fa_simplybuilt
+ - i_fa_skyatlas
+ - i_fa_cart_plus
+ - i_fa_cart_arrow_down
+ - i_fa_diamond
+ - i_fa_ship
+ - i_fa_user_secret
+ - i_fa_motorcycle
+ - i_fa_street_view
+ - i_fa_heartbeat
+ - i_fa_venus
+ - i_fa_mars
+ - i_fa_mercury
+ - i_fa_transgender i_fa_intersex_fa_transgender
+ - i_fa_transgender_alt
+ - i_fa_venus_double
+ - i_fa_mars_double
+ - i_fa_venus_mars
+ - i_fa_mars_stroke
+ - i_fa_mars_stroke_v
+ - i_fa_mars_stroke_h
+ - i_fa_neuter
+ - i_fa_genderless
+ - i_fa_facebook_official
+ - i_fa_pinterest_p
+ - i_fa_whatsapp
+ - i_fa_server
+ - i_fa_user_plus
+ - i_fa_user_times
+ - i_fa_bed i_fa_hotel_fa_bed
+ - i_fa_viacoin
+ - i_fa_train
+ - i_fa_subway
+ - i_fa_medium
+ - i_fa_y_combinator i_fa_yc_fa_y_combinator
+ - i_fa_optin_monster
+ - i_fa_opencart
+ - i_fa_expeditedssl
+ - i_fa_battery_full i_fa_battery_fa_battery_full i_fa_battery_4_fa_battery_full
+ - i_fa_battery_three_quarters i_fa_battery_3_fa_battery_three_quarters
+ - i_fa_battery_half i_fa_battery_2_fa_battery_half
+ - i_fa_battery_quarter i_fa_battery_1_fa_battery_quarter
+ - i_fa_battery_empty i_fa_battery_0_fa_battery_empty
+ - i_fa_mouse_pointer
+ - i_fa_i_cursor
+ - i_fa_object_group
+ - i_fa_object_ungroup
+ - i_fa_sticky_note
+ - i_fa_sticky_note_o
+ - i_fa_cc_jcb
+ - i_fa_cc_diners_club
+ - i_fa_clone
+ - i_fa_balance_scale
+ - i_fa_hourglass_o
+ - i_fa_hourglass_start i_fa_hourglass_1_fa_hourglass_start
+ - i_fa_hourglass_half i_fa_hourglass_2_fa_hourglass_half
+ - i_fa_hourglass_end i_fa_hourglass_3_fa_hourglass_end
+ - i_fa_hourglass
+ - i_fa_hand_rock_o i_fa_hand_grab_o_fa_hand_rock_o
+ - i_fa_hand_paper_o i_fa_hand_stop_o_fa_hand_paper_o
+ - i_fa_hand_scissors_o
+ - i_fa_hand_lizard_o
+ - i_fa_hand_spock_o
+ - i_fa_hand_pointer_o
+ - i_fa_hand_peace_o
+ - i_fa_trademark
+ - i_fa_registered
+ - i_fa_creative_commons
+ - i_fa_gg
+ - i_fa_gg_circle
+ - i_fa_tripadvisor
+ - i_fa_odnoklassniki
+ - i_fa_odnoklassniki_square
+ - i_fa_get_pocket
+ - i_fa_wikipedia_w
+ - i_fa_safari
+ - i_fa_chrome
+ - i_fa_firefox
+ - i_fa_opera
+ - i_fa_internet_explorer
+ - i_fa_television i_fa_tv_fa_television
+ - i_fa_contao
+ - i_fa_500px
+ - i_fa_amazon
+ - i_fa_calendar_plus_o
+ - i_fa_calendar_minus_o
+ - i_fa_calendar_times_o
+ - i_fa_calendar_check_o
+ - i_fa_industry
+ - i_fa_map_pin
+ - i_fa_map_signs
+ - i_fa_map_o
+ - i_fa_map
+ - i_fa_commenting
+ - i_fa_commenting_o
+ - i_fa_houzz
+ - i_fa_vimeo
+ - i_fa_black_tie
+ - i_fa_fonticons
+ - i_fa_reddit_alien
+ - i_fa_edge
+ - i_fa_credit_card_alt
+ - i_fa_codiepie
+ - i_fa_modx
+ - i_fa_fort_awesome
+ - i_fa_usb
+ - i_fa_product_hunt
+ - i_fa_mixcloud
+ - i_fa_scribd
+ - i_fa_pause_circle
+ - i_fa_pause_circle_o
+ - i_fa_stop_circle
+ - i_fa_stop_circle_o
+ - i_fa_shopping_bag
+ - i_fa_shopping_basket
+ - i_fa_hashtag
+ - i_fa_bluetooth
+ - i_fa_bluetooth_b
+ - i_fa_percent
+ - i_fa_gitlab
+ - i_fa_wpbeginner
+ - i_fa_wpforms
+ - i_fa_envira
+ - i_fa_universal_access
+ - i_fa_wheelchair_alt
+ - i_fa_question_circle_o
+ - i_fa_blind
+ - i_fa_audio_description
+ - i_fa_volume_control_phone
+ - i_fa_braille
+ - i_fa_assistive_listening_systems
+ - i_fa_american_sign_language_interpreting i_fa_asl_interpreting_fa_american_sign_language_interpreting
+ - i_fa_deaf i_fa_deafness_fa_deaf i_fa_hard_of_hearing_fa_deaf
+ - i_fa_glide
+ - i_fa_glide_g
+ - i_fa_sign_language i_fa_signing_fa_sign_language
+ - i_fa_low_vision
+ - i_fa_viadeo
+ - i_fa_viadeo_square
+ - i_fa_snapchat
+ - i_fa_snapchat_ghost
+ - i_fa_snapchat_square
+ - i_fa_pied_piper
+ - i_fa_first_order
+ - i_fa_yoast
+ - i_fa_themeisle
+ - i_fa_google_plus_official i_fa_google_plus_circle_fa_google_plus_official
+ - i_fa_font_awesome i_fa_fa_fa_font_awesome
+ - i_fa_handshake_o
+ - i_fa_envelope_open
+ - i_fa_envelope_open_o
+ - i_fa_linode
+ - i_fa_address_book
+ - i_fa_address_book_o
+ - i_fa_address_card i_fa_vcard_fa_address_card
+ - i_fa_address_card_o i_fa_vcard_o_fa_address_card_o
+ - i_fa_user_circle
+ - i_fa_user_circle_o
+ - i_fa_user_o
+ - i_fa_id_badge
+ - i_fa_id_card i_fa_drivers_license_fa_id_card
+ - i_fa_id_card_o i_fa_drivers_license_o_fa_id_card_o
+ - i_fa_quora
+ - i_fa_free_code_camp
+ - i_fa_telegram
+ - i_fa_thermometer_full i_fa_thermometer_fa_thermometer_full i_fa_thermometer_4_fa_thermometer_full
+ - i_fa_thermometer_three_quarters i_fa_thermometer_3_fa_thermometer_three_quarters
+ - i_fa_thermometer_half i_fa_thermometer_2_fa_thermometer_half
+ - i_fa_thermometer_quarter i_fa_thermometer_1_fa_thermometer_quarter
+ - i_fa_thermometer_empty i_fa_thermometer_0_fa_thermometer_empty
+ - i_fa_shower
+ - i_fa_bath i_fa_bathtub_fa_bath i_fa_s15_fa_bath
+ - i_fa_podcast
+ - i_fa_window_maximize
+ - i_fa_window_minimize
+ - i_fa_window_restore
+ - i_fa_window_close i_fa_times_rectangle_fa_window_close
+ - i_fa_window_close_o i_fa_times_rectangle_o_fa_window_close_o
+ - i_fa_bandcamp
+ - i_fa_grav
+ - i_fa_etsy
+ - i_fa_imdb
+ - i_fa_ravelry
+ - i_fa_eercast
+ - i_fa_microchip
+ - i_fa_snowflake_o
+ - i_fa_superpowers
+ - i_fa_wpexplorer
+ - i_fa_meetup
+⏻ - i_iec_power
+⏼ - i_iec_toggle_power
+⏽ - i_iec_power_on
+⏾ - i_iec_sleep_mode
+⭘ - i_iec_power_off
+ - i_linux_alpine
+ - i_linux_aosc
+ - i_linux_apple
+ - i_linux_archlinux
+ - i_linux_centos
+ - i_linux_coreos
+ - i_linux_debian
+ - i_linux_devuan
+ - i_linux_docker
+ - i_linux_elementary
+ - i_linux_fedora
+ - i_linux_fedora_inverse
+ - i_linux_freebsd
+ - i_linux_gentoo
+ - i_linux_linuxmint
+ - i_linux_linuxmint_inverse
+ - i_linux_mageia
+ - i_linux_mandriva
+ - i_linux_manjaro
+ - i_linux_nixos
+ - i_linux_opensuse
+ - i_linux_raspberry_pi
+ - i_linux_redhat
+ - i_linux_sabayon
+ - i_linux_slackware
+ - i_linux_slackware_inverse
+ - i_linux_tux
+ - i_linux_ubuntu
+ - i_linux_ubuntu_inverse
+ - i_mdi_vector_square
+ - i_mdi_access_point
+ - i_mdi_access_point_network
+ - i_mdi_account
+ - i_mdi_account_alert
+ - i_mdi_account_box
+ - i_mdi_account_box_outline
+ - i_mdi_account_check
+ - i_mdi_account_circle
+ - i_mdi_account_convert
+ - i_mdi_account_key
+ - i_mdi_account_location
+ - i_mdi_account_minus
+ - i_mdi_account_multiple
+ - i_mdi_account_multiple_outline
+ - i_mdi_account_multiple_plus
+ - i_mdi_account_network
+ - i_mdi_account_off
+ - i_mdi_account_outline
+ - i_mdi_account_plus
+ - i_mdi_account_remove
+ - i_mdi_account_search
+ - i_mdi_account_star
+ - i_mdi_orbit
+ - i_mdi_account_switch
+ - i_mdi_adjust
+ - i_mdi_air_conditioner
+ - i_mdi_airballoon
+ - i_mdi_airplane
+ - i_mdi_airplane_off
+ - i_mdi_airplay
+ - i_mdi_alarm
+ - i_mdi_alarm_check
+ - i_mdi_alarm_multiple
+ - i_mdi_alarm_off
+ - i_mdi_alarm_plus
+ - i_mdi_album
+ - i_mdi_alert
+ - i_mdi_alert_box
+ - i_mdi_alert_circle
+ - i_mdi_alert_octagon
+ - i_mdi_alert_outline
+ - i_mdi_alpha
+ - i_mdi_alphabetical
+ - i_mdi_amazon
+ - i_mdi_amazon_clouddrive
+ - i_mdi_ambulance
+ - i_mdi_amplifier
+ - i_mdi_anchor
+ - i_mdi_android
+ - i_mdi_android_debug_bridge
+ - i_mdi_android_studio
+ - i_mdi_apple
+ - i_mdi_apple_finder
+ - i_mdi_apple_ios
+ - i_mdi_apple_mobileme
+ - i_mdi_apple_safari
+ - i_mdi_font_awesome
+ - i_mdi_apps
+ - i_mdi_archive
+ - i_mdi_arrange_bring_forward
+ - i_mdi_arrange_bring_to_front
+ - i_mdi_arrange_send_backward
+ - i_mdi_arrange_send_to_back
+ - i_mdi_arrow_all
+ - i_mdi_arrow_bottom_left
+ - i_mdi_arrow_bottom_right
+ - i_mdi_arrow_collapse_all
+ - i_mdi_arrow_down
+ - i_mdi_arrow_down_thick
+ - i_mdi_arrow_down_bold_circle
+ - i_mdi_arrow_down_bold_circle_outline
+ - i_mdi_arrow_down_bold_hexagon_outline
+ - i_mdi_arrow_down_drop_circle
+ - i_mdi_arrow_down_drop_circle_outline
+ - i_mdi_arrow_expand_all
+ - i_mdi_arrow_left
+ - i_mdi_arrow_left_thick
+ - i_mdi_arrow_left_bold_circle
+ - i_mdi_arrow_left_bold_circle_outline
+ - i_mdi_arrow_left_bold_hexagon_outline
+ - i_mdi_arrow_left_drop_circle
+ - i_mdi_arrow_left_drop_circle_outline
+ - i_mdi_arrow_right
+ - i_mdi_arrow_right_thick
+ - i_mdi_arrow_right_bold_circle
+ - i_mdi_arrow_right_bold_circle_outline
+ - i_mdi_arrow_right_bold_hexagon_outline
+ - i_mdi_arrow_right_drop_circle
+ - i_mdi_arrow_right_drop_circle_outline
+ - i_mdi_arrow_top_left
+ - i_mdi_arrow_top_right
+ - i_mdi_arrow_up
+ - i_mdi_arrow_up_thick
+ - i_mdi_arrow_up_bold_circle
+ - i_mdi_arrow_up_bold_circle_outline
+ - i_mdi_arrow_up_bold_hexagon_outline
+ - i_mdi_arrow_up_drop_circle
+ - i_mdi_arrow_up_drop_circle_outline
+ - i_mdi_assistant
+ - i_mdi_at
+ - i_mdi_attachment
+ - i_mdi_audiobook
+ - i_mdi_auto_fix
+ - i_mdi_auto_upload
+ - i_mdi_autorenew
+ - i_mdi_av_timer
+ - i_mdi_baby
+ - i_mdi_backburger
+ - i_mdi_backspace
+ - i_mdi_backup_restore
+ - i_mdi_bank
+ - i_mdi_barcode
+ - i_mdi_barcode_scan
+ - i_mdi_barley
+ - i_mdi_barrel
+ - i_mdi_basecamp
+ - i_mdi_basket
+ - i_mdi_basket_fill
+ - i_mdi_basket_unfill
+ - i_mdi_battery
+ - i_mdi_battery_10
+ - i_mdi_battery_20
+ - i_mdi_battery_30
+ - i_mdi_battery_40
+ - i_mdi_battery_50
+ - i_mdi_battery_60
+ - i_mdi_battery_70
+ - i_mdi_battery_80
+ - i_mdi_battery_90
+ - i_mdi_battery_alert
+ - i_mdi_battery_charging
+ - i_mdi_battery_charging_100
+ - i_mdi_battery_charging_20
+ - i_mdi_battery_charging_30
+ - i_mdi_battery_charging_40
+ - i_mdi_battery_charging_60
+ - i_mdi_battery_charging_80
+ - i_mdi_battery_charging_90
+ - i_mdi_battery_minus
+ - i_mdi_battery_negative
+ - i_mdi_battery_outline
+ - i_mdi_battery_plus
+ - i_mdi_battery_positive
+ - i_mdi_battery_unknown
+ - i_mdi_beach
+ - i_mdi_flask
+ - i_mdi_flask_empty
+ - i_mdi_flask_empty_outline
+ - i_mdi_flask_outline
+ - i_mdi_beats
+ - i_mdi_beer
+ - i_mdi_behance
+ - i_mdi_bell
+ - i_mdi_bell_off
+ - i_mdi_bell_outline
+ - i_mdi_bell_plus
+ - i_mdi_bell_ring
+ - i_mdi_bell_ring_outline
+ - i_mdi_bell_sleep
+ - i_mdi_beta
+ - i_mdi_bible
+ - i_mdi_bike
+ - i_mdi_bing
+ - i_mdi_binoculars
+ - i_mdi_bio
+ - i_mdi_biohazard
+ - i_mdi_bitbucket
+ - i_mdi_black_mesa
+ - i_mdi_blackberry
+ - i_mdi_blender
+ - i_mdi_blinds
+ - i_mdi_block_helper
+ - i_mdi_blogger
+ - i_mdi_bluetooth
+ - i_mdi_bluetooth_audio
+ - i_mdi_bluetooth_connect
+ - i_mdi_bluetooth_off
+ - i_mdi_bluetooth_settings
+ - i_mdi_bluetooth_transfer
+ - i_mdi_blur
+ - i_mdi_blur_linear
+ - i_mdi_blur_off
+ - i_mdi_blur_radial
+ - i_mdi_bone
+ - i_mdi_book
+ - i_mdi_book_multiple
+ - i_mdi_book_multiple_variant
+ - i_mdi_book_open
+ - i_mdi_book_open_variant
+ - i_mdi_book_variant
+ - i_mdi_bookmark
+ - i_mdi_bookmark_check
+ - i_mdi_bookmark_music
+ - i_mdi_bookmark_outline
+ - i_mdi_bookmark_plus_outline
+ - i_mdi_bookmark_plus
+ - i_mdi_bookmark_remove
+ - i_mdi_border_all
+ - i_mdi_border_bottom
+ - i_mdi_border_color
+ - i_mdi_border_horizontal
+ - i_mdi_border_inside
+ - i_mdi_border_left
+ - i_mdi_border_none
+ - i_mdi_border_outside
+ - i_mdi_border_right
+ - i_mdi_border_style
+ - i_mdi_border_top
+ - i_mdi_border_vertical
+ - i_mdi_bowling
+ - i_mdi_box
+ - i_mdi_box_cutter
+ - i_mdi_briefcase
+ - i_mdi_briefcase_check
+ - i_mdi_briefcase_download
+ - i_mdi_briefcase_upload
+ - i_mdi_brightness_1
+ - i_mdi_brightness_2
+ - i_mdi_brightness_3
+ - i_mdi_brightness_4
+ - i_mdi_brightness_5
+ - i_mdi_brightness_6
+ - i_mdi_brightness_7
+ - i_mdi_brightness_auto
+ - i_mdi_broom
+ - i_mdi_brush
+ - i_mdi_bug
+ - i_mdi_bulletin_board
+ - i_mdi_bullhorn
+ - i_mdi_bus
+ - i_mdi_cached
+ - i_mdi_cake
+ - i_mdi_cake_layered
+ - i_mdi_cake_variant
+ - i_mdi_calculator
+ - i_mdi_calendar
+ - i_mdi_calendar_blank
+ - i_mdi_calendar_check
+ - i_mdi_calendar_clock
+ - i_mdi_calendar_multiple
+ - i_mdi_calendar_multiple_check
+ - i_mdi_calendar_plus
+ - i_mdi_calendar_remove
+ - i_mdi_calendar_text
+ - i_mdi_calendar_today
+ - i_mdi_call_made
+ - i_mdi_call_merge
+ - i_mdi_call_missed
+ - i_mdi_call_received
+ - i_mdi_call_split
+ - i_mdi_camcorder
+ - i_mdi_camcorder_box
+ - i_mdi_camcorder_box_off
+ - i_mdi_camcorder_off
+ - i_mdi_camera
+ - i_mdi_camera_enhance
+ - i_mdi_camera_front
+ - i_mdi_camera_front_variant
+ - i_mdi_camera_iris
+ - i_mdi_camera_party_mode
+ - i_mdi_camera_rear
+ - i_mdi_camera_rear_variant
+ - i_mdi_camera_switch
+ - i_mdi_camera_timer
+ - i_mdi_candycane
+ - i_mdi_car
+ - i_mdi_car_battery
+ - i_mdi_car_connected
+ - i_mdi_car_wash
+ - i_mdi_carrot
+ - i_mdi_cart
+ - i_mdi_cart_outline
+ - i_mdi_cart_plus
+ - i_mdi_case_sensitive_alt
+ - i_mdi_cash
+ - i_mdi_cash_100
+ - i_mdi_cash_multiple
+ - i_mdi_cash_usd
+ - i_mdi_cast
+ - i_mdi_cast_connected
+ - i_mdi_castle
+ - i_mdi_cat
+ - i_mdi_cellphone
+ - i_mdi_cellphone_android
+ - i_mdi_cellphone_basic
+ - i_mdi_cellphone_dock
+ - i_mdi_cellphone_iphone
+ - i_mdi_cellphone_link
+ - i_mdi_cellphone_link_off
+ - i_mdi_cellphone_settings
+ - i_mdi_certificate
+ - i_mdi_chair_school
+ - i_mdi_chart_arc
+ - i_mdi_chart_areaspline
+ - i_mdi_chart_bar
+ - i_mdi_chart_histogram
+ - i_mdi_chart_line
+ - i_mdi_chart_pie
+ - i_mdi_check
+ - i_mdi_check_all
+ - i_mdi_checkbox_blank
+ - i_mdi_checkbox_blank_circle
+ - i_mdi_checkbox_blank_circle_outline
+ - i_mdi_checkbox_blank_outline
+ - i_mdi_checkbox_marked
+ - i_mdi_checkbox_marked_circle
+ - i_mdi_checkbox_marked_circle_outline
+ - i_mdi_checkbox_marked_outline
+ - i_mdi_checkbox_multiple_blank
+ - i_mdi_checkbox_multiple_blank_outline
+ - i_mdi_checkbox_multiple_marked
+ - i_mdi_checkbox_multiple_marked_outline
+ - i_mdi_checkerboard
+ - i_mdi_chemical_weapon
+ - i_mdi_chevron_double_down
+ - i_mdi_chevron_double_left
+ - i_mdi_chevron_double_right
+ - i_mdi_chevron_double_up
+ - i_mdi_chevron_down
+ - i_mdi_chevron_left
+ - i_mdi_chevron_right
+ - i_mdi_chevron_up
+ - i_mdi_church
+ - i_mdi_cisco_webex
+ - i_mdi_city
+ - i_mdi_clipboard
+ - i_mdi_clipboard_account
+ - i_mdi_clipboard_alert
+ - i_mdi_clipboard_arrow_down
+ - i_mdi_clipboard_arrow_left
+ - i_mdi_clipboard_check
+ - i_mdi_clipboard_outline
+ - i_mdi_clipboard_text
+ - i_mdi_clippy
+ - i_mdi_clock
+ - i_mdi_clock_end
+ - i_mdi_clock_fast
+ - i_mdi_clock_in
+ - i_mdi_clock_out
+ - i_mdi_clock_start
+ - i_mdi_close
+ - i_mdi_close_box
+ - i_mdi_close_box_outline
+ - i_mdi_close_circle
+ - i_mdi_close_circle_outline
+ - i_mdi_close_network
+ - i_mdi_close_octagon
+ - i_mdi_close_octagon_outline
+ - i_mdi_closed_caption
+ - i_mdi_cloud
+ - i_mdi_cloud_check
+ - i_mdi_cloud_circle
+ - i_mdi_cloud_download
+ - i_mdi_cloud_outline
+ - i_mdi_cloud_off_outline
+ - i_mdi_cloud_print
+ - i_mdi_cloud_print_outline
+ - i_mdi_cloud_upload
+ - i_mdi_code_array
+ - i_mdi_code_braces
+ - i_mdi_code_brackets
+ - i_mdi_code_equal
+ - i_mdi_code_greater_than
+ - i_mdi_code_greater_than_or_equal
+ - i_mdi_code_less_than
+ - i_mdi_code_less_than_or_equal
+ - i_mdi_code_not_equal
+ - i_mdi_code_not_equal_variant
+ - i_mdi_code_parentheses
+ - i_mdi_code_string
+ - i_mdi_code_tags
+ - i_mdi_codepen
+ - i_mdi_coffee
+ - i_mdi_coffee_to_go
+ - i_mdi_coin
+ - i_mdi_color_helper
+ - i_mdi_comment
+ - i_mdi_comment_account
+ - i_mdi_comment_account_outline
+ - i_mdi_comment_alert
+ - i_mdi_comment_alert_outline
+ - i_mdi_comment_check
+ - i_mdi_comment_check_outline
+ - i_mdi_comment_multiple_outline
+ - i_mdi_comment_outline
+ - i_mdi_comment_plus_outline
+ - i_mdi_comment_processing
+ - i_mdi_comment_processing_outline
+ - i_mdi_comment_question_outline
+ - i_mdi_comment_remove_outline
+ - i_mdi_comment_text
+ - i_mdi_comment_text_outline
+ - i_mdi_compare
+ - i_mdi_compass
+ - i_mdi_compass_outline
+ - i_mdi_console
+ - i_mdi_contact_mail
+ - i_mdi_content_copy
+ - i_mdi_content_cut
+ - i_mdi_content_duplicate
+ - i_mdi_content_paste
+ - i_mdi_content_save
+ - i_mdi_content_save_all
+ - i_mdi_contrast
+ - i_mdi_contrast_box
+ - i_mdi_contrast_circle
+ - i_mdi_cookie
+ - i_mdi_counter
+ - i_mdi_cow
+ - i_mdi_credit_card
+ - i_mdi_credit_card_multiple
+ - i_mdi_credit_card_scan
+ - i_mdi_crop
+ - i_mdi_crop_free
+ - i_mdi_crop_landscape
+ - i_mdi_crop_portrait
+ - i_mdi_crop_square
+ - i_mdi_crosshairs
+ - i_mdi_crosshairs_gps
+ - i_mdi_crown
+ - i_mdi_cube
+ - i_mdi_cube_outline
+ - i_mdi_cube_send
+ - i_mdi_cube_unfolded
+ - i_mdi_cup
+ - i_mdi_cup_water
+ - i_mdi_currency_btc
+ - i_mdi_currency_eur
+ - i_mdi_currency_gbp
+ - i_mdi_currency_inr
+ - i_mdi_currency_ngn
+ - i_mdi_currency_rub
+ - i_mdi_currency_try
+ - i_mdi_currency_usd
+ - i_mdi_cursor_default
+ - i_mdi_cursor_default_outline
+ - i_mdi_cursor_move
+ - i_mdi_cursor_pointer
+ - i_mdi_database
+ - i_mdi_database_minus
+ - i_mdi_database_plus
+ - i_mdi_debug_step_into
+ - i_mdi_debug_step_out
+ - i_mdi_debug_step_over
+ - i_mdi_decimal_decrease
+ - i_mdi_decimal_increase
+ - i_mdi_delete
+ - i_mdi_delete_variant
+ - i_mdi_delta
+ - i_mdi_deskphone
+ - i_mdi_desktop_mac
+ - i_mdi_desktop_tower
+ - i_mdi_details
+ - i_mdi_deviantart
+ - i_mdi_diamond
+ - i_mdi_creation
+ - i_mdi_dice_1
+ - i_mdi_dice_2
+ - i_mdi_dice_3
+ - i_mdi_dice_4
+ - i_mdi_dice_5
+ - i_mdi_dice_6
+ - i_mdi_directions
+ - i_mdi_disk_alert
+ - i_mdi_disqus
+ - i_mdi_disqus_outline
+ - i_mdi_division
+ - i_mdi_division_box
+ - i_mdi_dns
+ - i_mdi_domain
+ - i_mdi_dots_horizontal
+ - i_mdi_dots_vertical
+ - i_mdi_download
+ - i_mdi_drag
+ - i_mdi_drag_horizontal
+ - i_mdi_drag_vertical
+ - i_mdi_drawing
+ - i_mdi_drawing_box
+ - i_mdi_dribbble
+ - i_mdi_dribbble_box
+ - i_mdi_drone
+ - i_mdi_dropbox
+ - i_mdi_drupal
+ - i_mdi_duck
+ - i_mdi_dumbbell
+ - i_mdi_earth
+ - i_mdi_earth_off
+ - i_mdi_edge
+ - i_mdi_eject
+ - i_mdi_elevation_decline
+ - i_mdi_elevation_rise
+ - i_mdi_elevator
+ - i_mdi_email
+ - i_mdi_email_open
+ - i_mdi_email_outline
+ - i_mdi_email_secure
+ - i_mdi_emoticon
+ - i_mdi_emoticon_cool
+ - i_mdi_emoticon_devil
+ - i_mdi_emoticon_happy
+ - i_mdi_emoticon_neutral
+ - i_mdi_emoticon_poop
+ - i_mdi_emoticon_sad
+ - i_mdi_emoticon_tongue
+ - i_mdi_engine
+ - i_mdi_engine_outline
+ - i_mdi_equal
+ - i_mdi_equal_box
+ - i_mdi_eraser
+ - i_mdi_escalator
+ - i_mdi_ethernet
+ - i_mdi_ethernet_cable
+ - i_mdi_ethernet_cable_off
+ - i_mdi_etsy
+ - i_mdi_evernote
+ - i_mdi_exclamation
+ - i_mdi_exit_to_app
+ - i_mdi_export
+ - i_mdi_eye
+ - i_mdi_eye_off
+ - i_mdi_eyedropper
+ - i_mdi_eyedropper_variant
+ - i_mdi_facebook
+ - i_mdi_facebook_box
+ - i_mdi_facebook_messenger
+ - i_mdi_factory
+ - i_mdi_fan
+ - i_mdi_fast_forward
+ - i_mdi_fax
+ - i_mdi_ferry
+ - i_mdi_file
+ - i_mdi_file_chart
+ - i_mdi_file_check
+ - i_mdi_file_cloud
+ - i_mdi_file_delimited
+ - i_mdi_file_document
+ - i_mdi_file_document_box
+ - i_mdi_file_excel
+ - i_mdi_file_excel_box
+ - i_mdi_file_export
+ - i_mdi_file_find
+ - i_mdi_file_image
+ - i_mdi_file_import
+ - i_mdi_file_lock
+ - i_mdi_file_multiple
+ - i_mdi_file_music
+ - i_mdi_file_outline
+ - i_mdi_file_pdf
+ - i_mdi_file_pdf_box
+ - i_mdi_file_powerpoint
+ - i_mdi_file_powerpoint_box
+ - i_mdi_file_presentation_box
+ - i_mdi_file_send
+ - i_mdi_file_video
+ - i_mdi_file_word
+ - i_mdi_file_word_box
+ - i_mdi_file_xml
+ - i_mdi_film
+ - i_mdi_filmstrip
+ - i_mdi_filmstrip_off
+ - i_mdi_filter
+ - i_mdi_filter_outline
+ - i_mdi_filter_remove
+ - i_mdi_filter_remove_outline
+ - i_mdi_filter_variant
+ - i_mdi_fingerprint
+ - i_mdi_fire
+ - i_mdi_firefox
+ - i_mdi_fish
+ - i_mdi_flag
+ - i_mdi_flag_checkered
+ - i_mdi_flag_outline
+ - i_mdi_flag_variant_outline
+ - i_mdi_flag_triangle
+ - i_mdi_flag_variant
+ - i_mdi_flash
+ - i_mdi_flash_auto
+ - i_mdi_flash_off
+ - i_mdi_flashlight
+ - i_mdi_flashlight_off
+ - i_mdi_flattr
+ - i_mdi_flip_to_back
+ - i_mdi_flip_to_front
+ - i_mdi_floppy
+ - i_mdi_flower
+ - i_mdi_folder
+ - i_mdi_folder_account
+ - i_mdi_folder_download
+ - i_mdi_folder_google_drive
+ - i_mdi_folder_image
+ - i_mdi_folder_lock
+ - i_mdi_folder_lock_open
+ - i_mdi_folder_move
+ - i_mdi_folder_multiple
+ - i_mdi_folder_multiple_image
+ - i_mdi_folder_multiple_outline
+ - i_mdi_folder_outline
+ - i_mdi_folder_plus
+ - i_mdi_folder_remove
+ - i_mdi_folder_upload
+ - i_mdi_food
+ - i_mdi_food_apple
+ - i_mdi_food_variant
+ - i_mdi_football
+ - i_mdi_football_australian
+ - i_mdi_football_helmet
+ - i_mdi_format_align_center
+ - i_mdi_format_align_justify
+ - i_mdi_format_align_left
+ - i_mdi_format_align_right
+ - i_mdi_format_bold
+ - i_mdi_format_clear
+ - i_mdi_format_color_fill
+ - i_mdi_format_float_center
+ - i_mdi_format_float_left
+ - i_mdi_format_float_none
+ - i_mdi_format_float_right
+ - i_mdi_format_header_1
+ - i_mdi_format_header_2
+ - i_mdi_format_header_3
+ - i_mdi_format_header_4
+ - i_mdi_format_header_5
+ - i_mdi_format_header_6
+ - i_mdi_format_header_decrease
+ - i_mdi_format_header_equal
+ - i_mdi_format_header_increase
+ - i_mdi_format_header_pound
+ - i_mdi_format_indent_decrease
+ - i_mdi_format_indent_increase
+ - i_mdi_format_italic
+ - i_mdi_format_line_spacing
+ - i_mdi_format_list_bulleted
+ - i_mdi_format_list_bulleted_type
+ - i_mdi_format_list_numbers
+ - i_mdi_format_paint
+ - i_mdi_format_paragraph
+ - i_mdi_format_quote_close
+ - i_mdi_format_size
+ - i_mdi_format_strikethrough
+ - i_mdi_format_strikethrough_variant
+ - i_mdi_format_subscript
+ - i_mdi_format_superscript
+ - i_mdi_format_text
+ - i_mdi_format_textdirection_l_to_r
+ - i_mdi_format_textdirection_r_to_l
+ - i_mdi_format_underline
+ - i_mdi_format_wrap_inline
+ - i_mdi_format_wrap_square
+ - i_mdi_format_wrap_tight
+ - i_mdi_format_wrap_top_bottom
+ - i_mdi_forum
+ - i_mdi_forward
+ - i_mdi_foursquare
+ - i_mdi_fridge
+ - i_mdi_fridge_filled
+ - i_mdi_fridge_filled_bottom
+ - i_mdi_fridge_filled_top
+ - i_mdi_fullscreen
+ - i_mdi_fullscreen_exit
+ - i_mdi_function
+ - i_mdi_gamepad
+ - i_mdi_gamepad_variant
+ - i_mdi_gas_station
+ - i_mdi_gate
+ - i_mdi_gauge
+ - i_mdi_gavel
+ - i_mdi_gender_female
+ - i_mdi_gender_male
+ - i_mdi_gender_male_female
+ - i_mdi_gender_transgender
+ - i_mdi_ghost
+ - i_mdi_gift
+ - i_mdi_git
+ - i_mdi_github_box
+ - i_mdi_github_circle
+ - i_mdi_glass_flute
+ - i_mdi_glass_mug
+ - i_mdi_glass_stange
+ - i_mdi_glass_tulip
+ - i_mdi_glassdoor
+ - i_mdi_glasses
+ - i_mdi_gmail
+ - i_mdi_gnome
+ - i_mdi_google
+ - i_mdi_google_cardboard
+ - i_mdi_google_chrome
+ - i_mdi_google_circles
+ - i_mdi_google_circles_communities
+ - i_mdi_google_circles_extended
+ - i_mdi_google_circles_group
+ - i_mdi_google_controller
+ - i_mdi_google_controller_off
+ - i_mdi_google_drive
+ - i_mdi_google_earth
+ - i_mdi_google_glass
+ - i_mdi_google_nearby
+ - i_mdi_google_pages
+ - i_mdi_google_physical_web
+ - i_mdi_google_play
+ - i_mdi_google_plus
+ - i_mdi_google_plus_box
+ - i_mdi_google_translate
+ - i_mdi_google_wallet
+ - i_mdi_grid
+ - i_mdi_grid_off
+ - i_mdi_group
+ - i_mdi_guitar_electric
+ - i_mdi_guitar_pick
+ - i_mdi_guitar_pick_outline
+ - i_mdi_hand_pointing_right
+ - i_mdi_hanger
+ - i_mdi_hangouts
+ - i_mdi_harddisk
+ - i_mdi_headphones
+ - i_mdi_headphones_box
+ - i_mdi_headphones_settings
+ - i_mdi_headset
+ - i_mdi_headset_dock
+ - i_mdi_headset_off
+ - i_mdi_heart
+ - i_mdi_heart_box
+ - i_mdi_heart_box_outline
+ - i_mdi_heart_broken
+ - i_mdi_heart_outline
+ - i_mdi_help
+ - i_mdi_help_circle
+ - i_mdi_hexagon
+ - i_mdi_hexagon_outline
+ - i_mdi_history
+ - i_mdi_hololens
+ - i_mdi_home
+ - i_mdi_home_modern
+ - i_mdi_home_variant
+ - i_mdi_hops
+ - i_mdi_hospital
+ - i_mdi_hospital_building
+ - i_mdi_hospital_marker
+ - i_mdi_hotel
+ - i_mdi_houzz
+ - i_mdi_houzz_box
+ - i_mdi_human
+ - i_mdi_human_child
+ - i_mdi_human_male_female
+ - i_mdi_image
+ - i_mdi_image_album
+ - i_mdi_image_area
+ - i_mdi_image_area_close
+ - i_mdi_image_broken
+ - i_mdi_image_broken_variant
+ - i_mdi_image_filter
+ - i_mdi_image_filter_black_white
+ - i_mdi_image_filter_center_focus
+ - i_mdi_image_filter_center_focus_weak
+ - i_mdi_image_filter_drama
+ - i_mdi_image_filter_frames
+ - i_mdi_image_filter_hdr
+ - i_mdi_image_filter_none
+ - i_mdi_image_filter_tilt_shift
+ - i_mdi_image_filter_vintage
+ - i_mdi_image_multiple
+ - i_mdi_import
+ - i_mdi_inbox_arrow_down
+ - i_mdi_information
+ - i_mdi_information_outline
+ - i_mdi_instagram
+ - i_mdi_instapaper
+ - i_mdi_internet_explorer
+ - i_mdi_invert_colors
+ - i_mdi_jeepney
+ - i_mdi_jira
+ - i_mdi_jsfiddle
+ - i_mdi_keg
+ - i_mdi_key
+ - i_mdi_key_change
+ - i_mdi_key_minus
+ - i_mdi_key_plus
+ - i_mdi_key_remove
+ - i_mdi_key_variant
+ - i_mdi_keyboard
+ - i_mdi_keyboard_backspace
+ - i_mdi_keyboard_caps
+ - i_mdi_keyboard_close
+ - i_mdi_keyboard_off
+ - i_mdi_keyboard_return
+ - i_mdi_keyboard_tab
+ - i_mdi_keyboard_variant
+ - i_mdi_kodi
+ - i_mdi_label
+ - i_mdi_label_outline
+ - i_mdi_lan
+ - i_mdi_lan_connect
+ - i_mdi_lan_disconnect
+ - i_mdi_lan_pending
+ - i_mdi_language_csharp
+ - i_mdi_language_css3
+ - i_mdi_language_html5
+ - i_mdi_language_javascript
+ - i_mdi_language_php
+ - i_mdi_language_python
+ - i_mdi_language_python_text
+ - i_mdi_laptop
+ - i_mdi_laptop_chromebook
+ - i_mdi_laptop_mac
+ - i_mdi_laptop_windows
+ - i_mdi_lastfm
+ - i_mdi_launch
+ - i_mdi_layers
+ - i_mdi_layers_off
+ - i_mdi_leaf
+ - i_mdi_led_off
+ - i_mdi_led_on
+ - i_mdi_led_outline
+ - i_mdi_led_variant_off
+ - i_mdi_led_variant_on
+ - i_mdi_led_variant_outline
+ - i_mdi_library
+ - i_mdi_library_books
+ - i_mdi_library_music
+ - i_mdi_library_plus
+ - i_mdi_lightbulb
+ - i_mdi_lightbulb_outline
+ - i_mdi_link
+ - i_mdi_link_off
+ - i_mdi_link_variant
+ - i_mdi_link_variant_off
+ - i_mdi_linkedin
+ - i_mdi_linkedin_box
+ - i_mdi_linux
+ - i_mdi_lock
+ - i_mdi_lock_open
+ - i_mdi_lock_open_outline
+ - i_mdi_lock_outline
+ - i_mdi_login
+ - i_mdi_logout
+ - i_mdi_looks
+ - i_mdi_loupe
+ - i_mdi_lumx
+ - i_mdi_magnet
+ - i_mdi_magnet_on
+ - i_mdi_magnify
+ - i_mdi_magnify_minus
+ - i_mdi_magnify_plus
+ - i_mdi_mail_ru
+ - i_mdi_map
+ - i_mdi_map_marker
+ - i_mdi_map_marker_circle
+ - i_mdi_map_marker_multiple
+ - i_mdi_map_marker_off
+ - i_mdi_map_marker_radius
+ - i_mdi_margin
+ - i_mdi_markdown
+ - i_mdi_marker_check
+ - i_mdi_martini
+ - i_mdi_material_ui
+ - i_mdi_math_compass
+ - i_mdi_maxcdn
+ - i_mdi_medium
+ - i_mdi_memory
+ - i_mdi_menu
+ - i_mdi_menu_down
+ - i_mdi_menu_left
+ - i_mdi_menu_right
+ - i_mdi_menu_up
+ - i_mdi_message
+ - i_mdi_message_alert
+ - i_mdi_message_draw
+ - i_mdi_message_image
+ - i_mdi_message_outline
+ - i_mdi_message_processing
+ - i_mdi_message_reply
+ - i_mdi_message_reply_text
+ - i_mdi_message_text
+ - i_mdi_message_text_outline
+ - i_mdi_message_video
+ - i_mdi_microphone
+ - i_mdi_microphone_off
+ - i_mdi_microphone_outline
+ - i_mdi_microphone_settings
+ - i_mdi_microphone_variant
+ - i_mdi_microphone_variant_off
+ - i_mdi_microsoft
+ - i_mdi_minecraft
+ - i_mdi_minus
+ - i_mdi_minus_box
+ - i_mdi_minus_circle
+ - i_mdi_minus_circle_outline
+ - i_mdi_minus_network
+ - i_mdi_monitor
+ - i_mdi_monitor_multiple
+ - i_mdi_more
+ - i_mdi_motorbike
+ - i_mdi_mouse
+ - i_mdi_mouse_off
+ - i_mdi_mouse_variant
+ - i_mdi_mouse_variant_off
+ - i_mdi_movie
+ - i_mdi_multiplication
+ - i_mdi_multiplication_box
+ - i_mdi_music_box
+ - i_mdi_music_box_outline
+ - i_mdi_music_circle
+ - i_mdi_music_note
+ - i_mdi_music_note_eighth
+ - i_mdi_music_note_half
+ - i_mdi_music_note_off
+ - i_mdi_music_note_quarter
+ - i_mdi_music_note_sixteenth
+ - i_mdi_music_note_whole
+ - i_mdi_nature
+ - i_mdi_nature_people
+ - i_mdi_navigation
+ - i_mdi_needle
+ - i_mdi_nest_protect
+ - i_mdi_nest_thermostat
+ - i_mdi_new_box
+ - i_mdi_newspaper
+ - i_mdi_nfc
+ - i_mdi_nfc_tap
+ - i_mdi_nfc_variant
+ - i_mdi_nodejs
+ - i_mdi_note
+ - i_mdi_note_outline
+ - i_mdi_note_plus
+ - i_mdi_note_plus_outline
+ - i_mdi_note_text
+ - i_mdi_notification_clear_all
+ - i_mdi_numeric
+ - i_mdi_numeric_0_box
+ - i_mdi_numeric_0_box_multiple_outline
+ - i_mdi_numeric_0_box_outline
+ - i_mdi_numeric_1_box
+ - i_mdi_numeric_1_box_multiple_outline
+ - i_mdi_numeric_1_box_outline
+ - i_mdi_numeric_2_box
+ - i_mdi_numeric_2_box_multiple_outline
+ - i_mdi_numeric_2_box_outline
+ - i_mdi_numeric_3_box
+ - i_mdi_numeric_3_box_multiple_outline
+ - i_mdi_numeric_3_box_outline
+ - i_mdi_numeric_4_box
+ - i_mdi_numeric_4_box_multiple_outline
+ - i_mdi_numeric_4_box_outline
+ - i_mdi_numeric_5_box
+ - i_mdi_numeric_5_box_multiple_outline
+ - i_mdi_numeric_5_box_outline
+ - i_mdi_numeric_6_box
+ - i_mdi_numeric_6_box_multiple_outline
+ - i_mdi_numeric_6_box_outline
+ - i_mdi_numeric_7_box
+ - i_mdi_numeric_7_box_multiple_outline
+ - i_mdi_numeric_7_box_outline
+ - i_mdi_numeric_8_box
+ - i_mdi_numeric_8_box_multiple_outline
+ - i_mdi_numeric_8_box_outline
+ - i_mdi_numeric_9_box
+ - i_mdi_numeric_9_box_multiple_outline
+ - i_mdi_numeric_9_box_outline
+ - i_mdi_numeric_9_plus_box
+ - i_mdi_numeric_9_plus_box_multiple_outline
+ - i_mdi_numeric_9_plus_box_outline
+ - i_mdi_nutrition
+ - i_mdi_octagon
+ - i_mdi_octagon_outline
+ - i_mdi_odnoklassniki
+ - i_mdi_office
+ - i_mdi_oil
+ - i_mdi_oil_temperature
+ - i_mdi_omega
+ - i_mdi_onedrive
+ - i_mdi_open_in_app
+ - i_mdi_open_in_new
+ - i_mdi_openid
+ - i_mdi_opera
+ - i_mdi_ornament
+ - i_mdi_ornament_variant
+ - i_mdi_inbox_arrow_up
+ - i_mdi_owl
+ - i_mdi_package
+ - i_mdi_package_down
+ - i_mdi_package_up
+ - i_mdi_package_variant
+ - i_mdi_package_variant_closed
+ - i_mdi_palette
+ - i_mdi_palette_advanced
+ - i_mdi_panda
+ - i_mdi_pandora
+ - i_mdi_panorama
+ - i_mdi_panorama_fisheye
+ - i_mdi_panorama_horizontal
+ - i_mdi_panorama_vertical
+ - i_mdi_panorama_wide_angle
+ - i_mdi_paper_cut_vertical
+ - i_mdi_paperclip
+ - i_mdi_parking
+ - i_mdi_pause
+ - i_mdi_pause_circle
+ - i_mdi_pause_circle_outline
+ - i_mdi_pause_octagon
+ - i_mdi_pause_octagon_outline
+ - i_mdi_paw
+ - i_mdi_pen
+ - i_mdi_pencil
+ - i_mdi_pencil_box
+ - i_mdi_pencil_box_outline
+ - i_mdi_pencil_lock
+ - i_mdi_pencil_off
+ - i_mdi_percent
+ - i_mdi_pharmacy
+ - i_mdi_phone
+ - i_mdi_phone_bluetooth
+ - i_mdi_phone_forward
+ - i_mdi_phone_hangup
+ - i_mdi_phone_in_talk
+ - i_mdi_phone_incoming
+ - i_mdi_phone_locked
+ - i_mdi_phone_log
+ - i_mdi_phone_missed
+ - i_mdi_phone_outgoing
+ - i_mdi_phone_paused
+ - i_mdi_phone_settings
+ - i_mdi_phone_voip
+ - i_mdi_pi
+ - i_mdi_pi_box
+豈 - i_mdi_pig
+更 - i_mdi_pill
+車 - i_mdi_pin
+賈 - i_mdi_pin_off
+滑 - i_mdi_pine_tree
+串 - i_mdi_pine_tree_box
+句 - i_mdi_pinterest
+龜 - i_mdi_pinterest_box
+龜 - i_mdi_pizza
+契 - i_mdi_play
+金 - i_mdi_play_box_outline
+喇 - i_mdi_play_circle
+奈 - i_mdi_play_circle_outline
+懶 - i_mdi_play_pause
+癩 - i_mdi_play_protected_content
+羅 - i_mdi_playlist_minus
+蘿 - i_mdi_playlist_play
+螺 - i_mdi_playlist_plus
+裸 - i_mdi_playlist_remove
+邏 - i_mdi_playstation
+樂 - i_mdi_plus
+洛 - i_mdi_plus_box
+烙 - i_mdi_plus_circle
+珞 - i_mdi_plus_circle_multiple_outline
+落 - i_mdi_plus_circle_outline
+酪 - i_mdi_plus_network
+駱 - i_mdi_plus_one
+亂 - i_mdi_pocket
+卵 - i_mdi_pokeball
+欄 - i_mdi_polaroid
+爛 - i_mdi_poll
+蘭 - i_mdi_poll_box
+鸞 - i_mdi_polymer
+嵐 - i_mdi_popcorn
+濫 - i_mdi_pound
+藍 - i_mdi_pound_box
+襤 - i_mdi_power
+拉 - i_mdi_power_settings
+臘 - i_mdi_power_socket
+蠟 - i_mdi_presentation
+廊 - i_mdi_presentation_play
+朗 - i_mdi_printer
+浪 - i_mdi_printer_3d
+狼 - i_mdi_printer_alert
+郎 - i_mdi_professional_hexagon
+來 - i_mdi_projector
+冷 - i_mdi_projector_screen
+勞 - i_mdi_pulse
+擄 - i_mdi_puzzle
+櫓 - i_mdi_qrcode
+爐 - i_mdi_qrcode_scan
+盧 - i_mdi_quadcopter
+老 - i_mdi_quality_high
+蘆 - i_mdi_quicktime
+虜 - i_mdi_radar
+路 - i_mdi_radiator
+露 - i_mdi_radio
+魯 - i_mdi_radio_handheld
+鷺 - i_mdi_radio_tower
+碌 - i_mdi_radioactive
+祿 - i_mdi_radiobox_blank
+綠 - i_mdi_radiobox_marked
+菉 - i_mdi_raspberrypi
+錄 - i_mdi_ray_end
+鹿 - i_mdi_ray_end_arrow
+論 - i_mdi_ray_start
+壟 - i_mdi_ray_start_arrow
+弄 - i_mdi_ray_start_end
+籠 - i_mdi_ray_vertex
+聾 - i_mdi_lastpass
+牢 - i_mdi_read
+磊 - i_mdi_youtube_tv
+賂 - i_mdi_receipt
+雷 - i_mdi_record
+壘 - i_mdi_record_rec
+屢 - i_mdi_recycle
+樓 - i_mdi_reddit
+淚 - i_mdi_redo
+漏 - i_mdi_redo_variant
+累 - i_mdi_refresh
+縷 - i_mdi_regex
+陋 - i_mdi_relative_scale
+勒 - i_mdi_reload
+肋 - i_mdi_remote
+凜 - i_mdi_rename_box
+凌 - i_mdi_repeat
+稜 - i_mdi_repeat_off
+綾 - i_mdi_repeat_once
+菱 - i_mdi_replay
+陵 - i_mdi_reply
+讀 - i_mdi_reply_all
+拏 - i_mdi_reproduction
+樂 - i_mdi_resize_bottom_right
+諾 - i_mdi_responsive
+丹 - i_mdi_rewind
+寧 - i_mdi_ribbon
+怒 - i_mdi_road
+率 - i_mdi_road_variant
+異 - i_mdi_rocket
+北 - i_mdi_rotate_3d
+磻 - i_mdi_rotate_left
+便 - i_mdi_rotate_left_variant
+復 - i_mdi_rotate_right
+不 - i_mdi_rotate_right_variant
+泌 - i_mdi_router_wireless
+數 - i_mdi_routes
+索 - i_mdi_rss
+參 - i_mdi_rss_box
+塞 - i_mdi_ruler
+省 - i_mdi_run_fast
+葉 - i_mdi_sale
+說 - i_mdi_satellite
+殺 - i_mdi_satellite_variant
+辰 - i_mdi_scale
+沈 - i_mdi_scale_bathroom
+拾 - i_mdi_school
+若 - i_mdi_screen_rotation
+掠 - i_mdi_screen_rotation_lock
+略 - i_mdi_screwdriver
+亮 - i_mdi_script
+兩 - i_mdi_sd
+凉 - i_mdi_seal
+梁 - i_mdi_seat_flat
+糧 - i_mdi_seat_flat_angled
+良 - i_mdi_seat_individual_suite
+諒 - i_mdi_seat_legroom_extra
+量 - i_mdi_seat_legroom_normal
+勵 - i_mdi_seat_legroom_reduced
+呂 - i_mdi_seat_recline_extra
+女 - i_mdi_seat_recline_normal
+廬 - i_mdi_security
+旅 - i_mdi_security_network
+濾 - i_mdi_select
+礪 - i_mdi_select_all
+閭 - i_mdi_select_inverse
+驪 - i_mdi_select_off
+麗 - i_mdi_selection
+黎 - i_mdi_send
+力 - i_mdi_server
+曆 - i_mdi_server_minus
+歷 - i_mdi_server_network
+轢 - i_mdi_server_network_off
+年 - i_mdi_server_off
+憐 - i_mdi_server_plus
+戀 - i_mdi_server_remove
+撚 - i_mdi_server_security
+漣 - i_mdi_settings
+煉 - i_mdi_settings_box
+璉 - i_mdi_shape_plus
+秊 - i_mdi_share
+練 - i_mdi_share_variant
+聯 - i_mdi_shield
+輦 - i_mdi_shield_outline
+蓮 - i_mdi_shopping
+連 - i_mdi_shopping_music
+鍊 - i_mdi_shredder
+列 - i_mdi_shuffle
+劣 - i_mdi_shuffle_disabled
+咽 - i_mdi_shuffle_variant
+烈 - i_mdi_sigma
+裂 - i_mdi_sign_caution
+說 - i_mdi_signal
+廉 - i_mdi_silverware
+念 - i_mdi_silverware_fork
+捻 - i_mdi_silverware_spoon
+殮 - i_mdi_silverware_variant
+簾 - i_mdi_sim
+獵 - i_mdi_sim_alert
+令 - i_mdi_sim_off
+囹 - i_mdi_sitemap
+寧 - i_mdi_skip_backward
+嶺 - i_mdi_skip_forward
+怜 - i_mdi_skip_next
+玲 - i_mdi_skip_previous
+瑩 - i_mdi_skype
+羚 - i_mdi_skype_business
+聆 - i_mdi_slack
+鈴 - i_mdi_sleep
+零 - i_mdi_sleep_off
+靈 - i_mdi_smoking
+領 - i_mdi_smoking_off
+例 - i_mdi_snapchat
+禮 - i_mdi_snowman
+醴 - i_mdi_soccer
+隸 - i_mdi_sofa
+惡 - i_mdi_sort
+了 - i_mdi_sort_alphabetical
+僚 - i_mdi_sort_ascending
+寮 - i_mdi_sort_descending
+尿 - i_mdi_sort_numeric
+料 - i_mdi_sort_variant
+樂 - i_mdi_soundcloud
+燎 - i_mdi_source_fork
+療 - i_mdi_source_pull
+蓼 - i_mdi_speaker
+遼 - i_mdi_speaker_off
+龍 - i_mdi_speedometer
+暈 - i_mdi_spellcheck
+阮 - i_mdi_spotify
+劉 - i_mdi_spotlight
+杻 - i_mdi_spotlight_beam
+柳 - i_mdi_square_inc
+流 - i_mdi_square_inc_cash
+溜 - i_mdi_stack_overflow
+琉 - i_mdi_stairs
+留 - i_mdi_star
+硫 - i_mdi_star_circle
+紐 - i_mdi_star_half
+類 - i_mdi_star_off
+六 - i_mdi_star_outline
+戮 - i_mdi_steam
+陸 - i_mdi_steering
+倫 - i_mdi_step_backward
+崙 - i_mdi_step_backward_2
+淪 - i_mdi_step_forward
+輪 - i_mdi_step_forward_2
+律 - i_mdi_stethoscope
+慄 - i_mdi_stocking
+栗 - i_mdi_stop
+率 - i_mdi_store
+隆 - i_mdi_store_24_hour
+利 - i_mdi_stove
+吏 - i_mdi_subway_variant
+履 - i_mdi_sunglasses
+易 - i_mdi_swap_horizontal
+李 - i_mdi_swap_vertical
+梨 - i_mdi_swim
+泥 - i_mdi_switch
+理 - i_mdi_sword
+痢 - i_mdi_sync
+罹 - i_mdi_sync_alert
+裏 - i_mdi_sync_off
+裡 - i_mdi_tab
+里 - i_mdi_tab_unselected
+離 - i_mdi_table
+匿 - i_mdi_table_column_plus_after
+溺 - i_mdi_table_column_plus_before
+吝 - i_mdi_table_column_remove
+燐 - i_mdi_table_column_width
+璘 - i_mdi_table_edit
+藺 - i_mdi_table_large
+隣 - i_mdi_table_row_height
+鱗 - i_mdi_table_row_plus_after
+麟 - i_mdi_table_row_plus_before
+林 - i_mdi_table_row_remove
+淋 - i_mdi_tablet
+臨 - i_mdi_tablet_android
+立 - i_mdi_tablet_ipad
+笠 - i_mdi_tag
+粒 - i_mdi_tag_faces
+狀 - i_mdi_tag_multiple
+炙 - i_mdi_tag_outline
+識 - i_mdi_tag_text_outline
+什 - i_mdi_target
+茶 - i_mdi_taxi
+刺 - i_mdi_teamviewer
+切 - i_mdi_telegram
+度 - i_mdi_television
+拓 - i_mdi_television_guide
+糖 - i_mdi_temperature_celsius
+宅 - i_mdi_temperature_fahrenheit
+洞 - i_mdi_temperature_kelvin
+暴 - i_mdi_tennis
+輻 - i_mdi_tent
+行 - i_mdi_terrain
+降 - i_mdi_text_to_speech
+見 - i_mdi_text_to_speech_off
+廓 - i_mdi_texture
+兀 - i_mdi_theater
+嗀 - i_mdi_theme_light_dark
+﨎 - i_mdi_thermometer
+﨏 - i_mdi_thermometer_lines
+塚 - i_mdi_thumb_down
+﨑 - i_mdi_thumb_down_outline
+晴 - i_mdi_thumb_up
+﨓 - i_mdi_thumb_up_outline
+﨔 - i_mdi_thumbs_up_down
+凞 - i_mdi_ticket
+猪 - i_mdi_ticket_account
+益 - i_mdi_ticket_confirmation
+礼 - i_mdi_tie
+神 - i_mdi_timelapse
+祥 - i_mdi_timer
+福 - i_mdi_timer_10
+靖 - i_mdi_timer_3
+精 - i_mdi_timer_off
+羽 - i_mdi_timer_sand
+﨟 - i_mdi_timetable
+蘒 - i_mdi_toggle_switch
+﨡 - i_mdi_toggle_switch_off
+諸 - i_mdi_tooltip
+﨣 - i_mdi_tooltip_edit
+﨤 - i_mdi_tooltip_image
+逸 - i_mdi_tooltip_outline
+都 - i_mdi_tooltip_outline_plus
+﨧 - i_mdi_tooltip_text
+﨨 - i_mdi_tooth
+﨩 - i_mdi_tor
+飯 - i_mdi_traffic_light
+飼 - i_mdi_train
+館 - i_mdi_tram
+鶴 - i_mdi_transcribe
+郞 - i_mdi_transcribe_close
+隷 - i_mdi_transfer
+侮 - i_mdi_tree
+僧 - i_mdi_trello
+免 - i_mdi_trending_down
+勉 - i_mdi_trending_neutral
+勤 - i_mdi_trending_up
+卑 - i_mdi_triangle
+喝 - i_mdi_triangle_outline
+嘆 - i_mdi_trophy
+器 - i_mdi_trophy_award
+塀 - i_mdi_trophy_outline
+墨 - i_mdi_trophy_variant
+層 - i_mdi_trophy_variant_outline
+屮 - i_mdi_truck
+悔 - i_mdi_truck_delivery
+慨 - i_mdi_tshirt_crew
+憎 - i_mdi_tshirt_v
+懲 - i_mdi_tumblr
+敏 - i_mdi_tumblr_reblog
+既 - i_mdi_twitch
+暑 - i_mdi_twitter
+梅 - i_mdi_twitter_box
+海 - i_mdi_twitter_circle
+渚 - i_mdi_twitter_retweet
+漢 - i_mdi_ubuntu
+煮 - i_mdi_umbraco
+爫 - i_mdi_umbrella
+琢 - i_mdi_umbrella_outline
+碑 - i_mdi_undo
+社 - i_mdi_undo_variant
+祉 - i_mdi_unfold_less_horizontal
+祈 - i_mdi_unfold_more_horizontal
+祐 - i_mdi_ungroup
+祖 - i_mdi_untappd
+祝 - i_mdi_upload
+禍 - i_mdi_usb
+禎 - i_mdi_vector_arrange_above
+穀 - i_mdi_vector_arrange_below
+突 - i_mdi_vector_circle
+節 - i_mdi_vector_circle_variant
+練 - i_mdi_vector_combine
+縉 - i_mdi_vector_curve
+繁 - i_mdi_vector_difference
+署 - i_mdi_vector_difference_ab
+者 - i_mdi_vector_difference_ba
+臭 - i_mdi_vector_intersection
+艹 - i_mdi_vector_line
+艹 - i_mdi_vector_point
+著 - i_mdi_vector_polygon
+褐 - i_mdi_vector_polyline
+視 - i_mdi_vector_selection
+謁 - i_mdi_vector_triangle
+謹 - i_mdi_vector_union
+賓 - i_mdi_verified
+贈 - i_mdi_vibrate
+辶 - i_mdi_video
+逸 - i_mdi_video_off
+難 - i_mdi_video_switch
+響 - i_mdi_view_agenda
+頻 - i_mdi_view_array
+恵 - i_mdi_view_carousel
+𤋮 - i_mdi_view_column
+舘 - i_mdi_view_dashboard
+﩮 - i_mdi_view_day
+﩯 - i_mdi_view_grid
+並 - i_mdi_view_headline
+况 - i_mdi_view_list
+全 - i_mdi_view_module
+侀 - i_mdi_view_quilt
+充 - i_mdi_view_stream
+冀 - i_mdi_view_week
+勇 - i_mdi_vimeo
+勺 - i_mdi_venmo
+喝 - i_mdi_vk
+啕 - i_mdi_vk_box
+喙 - i_mdi_vk_circle
+嗢 - i_mdi_vlc
+塚 - i_mdi_voicemail
+墳 - i_mdi_volume_high
+奄 - i_mdi_volume_low
+奔 - i_mdi_volume_medium
+婢 - i_mdi_volume_off
+嬨 - i_mdi_vpn
+廒 - i_mdi_walk
+廙 - i_mdi_wallet
+彩 - i_mdi_wallet_giftcard
+徭 - i_mdi_wallet_membership
+惘 - i_mdi_wallet_travel
+慎 - i_mdi_wan
+愈 - i_mdi_watch
+憎 - i_mdi_watch_export
+慠 - i_mdi_watch_import
+懲 - i_mdi_water
+戴 - i_mdi_water_off
+揄 - i_mdi_water_percent
+搜 - i_mdi_water_pump
+摒 - i_mdi_weather_cloudy
+敖 - i_mdi_weather_fog
+晴 - i_mdi_weather_hail
+朗 - i_mdi_weather_lightning
+望 - i_mdi_weather_night
+杖 - i_mdi_weather_partlycloudy
+歹 - i_mdi_weather_pouring
+殺 - i_mdi_weather_rainy
+流 - i_mdi_weather_snowy
+滛 - i_mdi_weather_sunny
+滋 - i_mdi_weather_sunset
+漢 - i_mdi_weather_sunset_down
+瀞 - i_mdi_weather_sunset_up
+煮 - i_mdi_weather_windy
+瞧 - i_mdi_weather_windy_variant
+爵 - i_mdi_web
+犯 - i_mdi_webcam
+猪 - i_mdi_weight
+瑱 - i_mdi_weight_kilogram
+甆 - i_mdi_whatsapp
+画 - i_mdi_wheelchair_accessibility
+瘝 - i_mdi_white_balance_auto
+瘟 - i_mdi_white_balance_incandescent
+益 - i_mdi_white_balance_iridescent
+盛 - i_mdi_white_balance_sunny
+直 - i_mdi_wifi
+睊 - i_mdi_wifi_off
+着 - i_mdi_wii
+磌 - i_mdi_wikipedia
+窱 - i_mdi_window_close
+節 - i_mdi_window_closed
+类 - i_mdi_window_maximize
+絛 - i_mdi_window_minimize
+練 - i_mdi_window_open
+缾 - i_mdi_window_restore
+者 - i_mdi_windows
+荒 - i_mdi_wordpress
+華 - i_mdi_worker
+蝹 - i_mdi_wrap
+襁 - i_mdi_wrench
+覆 - i_mdi_wunderlist
+視 - i_mdi_xbox
+調 - i_mdi_xbox_controller
+諸 - i_mdi_xbox_controller_off
+請 - i_mdi_xda
+謁 - i_mdi_xing
+諾 - i_mdi_xing_box
+諭 - i_mdi_xing_circle
+謹 - i_mdi_xml
+變 - i_mdi_yeast
+贈 - i_mdi_yelp
+輸 - i_mdi_youtube_play
+遲 - i_mdi_zip_box
+醙 - i_mdi_surround_sound
+鉶 - i_mdi_vector_rectangle
+陼 - i_mdi_playlist_check
+難 - i_mdi_format_line_style
+靖 - i_mdi_format_line_weight
+韛 - i_mdi_translate
+響 - i_mdi_voice
+頋 - i_mdi_opacity
+頻 - i_mdi_near_me
+鬒 - i_mdi_clock_alert
+龜 - i_mdi_human_pregnant
+𢡊 - i_mdi_sticker
+𢡄 - i_mdi_scale_balance
+𣏕 - i_mdi_account_card_details
+㮝 - i_mdi_account_multiple_minus
+䀘 - i_mdi_airplane_landing
+䀹 - i_mdi_airplane_takeoff
+𥉉 - i_mdi_alert_circle_outline
+𥳐 - i_mdi_altimeter
+𧻓 - i_mdi_animation
+齃 - i_mdi_book_minus
+龎 - i_mdi_book_open_page_variant
+﫚 - i_mdi_book_plus
+﫛 - i_mdi_boombox
+﫜 - i_mdi_bullseye
+﫝 - i_mdi_comment_remove
+﫞 - i_mdi_camera_off
+﫟 - i_mdi_check_circle
+﫠 - i_mdi_check_circle_outline
+﫡 - i_mdi_candle
+﫢 - i_mdi_chart_bubble
+﫣 - i_mdi_credit_card_off
+﫤 - i_mdi_cup_off
+﫥 - i_mdi_copyright
+﫦 - i_mdi_cursor_text
+﫧 - i_mdi_delete_forever
+﫨 - i_mdi_delete_sweep
+﫩 - i_mdi_dice_d20
+﫪 - i_mdi_dice_d4
+﫫 - i_mdi_dice_d6
+﫬 - i_mdi_dice_d8
+﫭 - i_mdi_disk
+﫮 - i_mdi_email_open_outline
+﫯 - i_mdi_email_variant
+﫰 - i_mdi_ev_station
+﫱 - i_mdi_food_fork_drink
+﫲 - i_mdi_food_off
+﫳 - i_mdi_format_title
+﫴 - i_mdi_google_maps
+﫵 - i_mdi_heart_pulse
+﫶 - i_mdi_highway
+﫷 - i_mdi_home_map_marker
+﫸 - i_mdi_incognito
+﫹 - i_mdi_kettle
+﫺 - i_mdi_lock_plus
+﫻 - i_mdi_login_variant
+﫼 - i_mdi_logout_variant
+﫽 - i_mdi_music_note_bluetooth
+﫾 - i_mdi_music_note_bluetooth_off
+﫿 - i_mdi_page_first
+ff - i_mdi_page_last
+fi - i_mdi_phone_classic
+fl - i_mdi_priority_high
+ffi - i_mdi_priority_low
+ffl - i_mdi_qqchat
+ſt - i_mdi_pool
+st - i_mdi_rounded_corner
+﬇ - i_mdi_rowing
+﬈ - i_mdi_saxophone
+﬉ - i_mdi_signal_variant
+﬊ - i_mdi_stackexchange
+﬋ - i_mdi_subdirectory_arrow_left
+﬌ - i_mdi_subdirectory_arrow_right
+﬍ - i_mdi_textbox
+﬎ - i_mdi_violin
+﬏ - i_mdi_visualstudio
+﬐ - i_mdi_wechat
+﬑ - i_mdi_watermark
+﬒ - i_mdi_file_hidden
+ﬓ - i_mdi_application
+ﬔ - i_mdi_arrow_collapse
+ﬕ - i_mdi_arrow_expand
+ﬖ - i_mdi_bowl
+ﬗ - i_mdi_bridge
+﬘ - i_mdi_buffer
+﬙ - i_mdi_chip
+﬚ - i_mdi_content_save_settings
+﬛ - i_mdi_dialpad
+﬜ - i_mdi_dictionary
+יִ - i_mdi_format_horizontal_align_center
+ﬞ - i_mdi_format_horizontal_align_left
+ײַ - i_mdi_format_horizontal_align_right
+ﬠ - i_mdi_format_vertical_align_bottom
+ﬡ - i_mdi_format_vertical_align_center
+ﬢ - i_mdi_format_vertical_align_top
+ﬣ - i_mdi_hackernews
+ﬤ - i_mdi_help_circle_outline
+ﬥ - i_mdi_json
+ﬦ - i_mdi_lambda
+ﬧ - i_mdi_matrix
+ﬨ - i_mdi_meteor
+﬩ - i_mdi_mixcloud
+שׁ - i_mdi_sigma_lower
+שׂ - i_mdi_source_branch
+שּׁ - i_mdi_source_merge
+שּׂ - i_mdi_tune
+אַ - i_mdi_webhook
+אָ - i_mdi_account_settings
+אּ - i_mdi_account_settings_variant
+בּ - i_mdi_apple_keyboard_caps
+גּ - i_mdi_apple_keyboard_command
+דּ - i_mdi_apple_keyboard_control
+הּ - i_mdi_apple_keyboard_option
+וּ - i_mdi_apple_keyboard_shift
+זּ - i_mdi_box_shadow
+﬷ - i_mdi_cards
+טּ - i_mdi_cards_outline
+יּ - i_mdi_cards_playing_outline
+ךּ - i_mdi_checkbox_multiple_blank_circle
+כּ - i_mdi_checkbox_multiple_blank_circle_outline
+לּ - i_mdi_checkbox_multiple_marked_circle
+﬽ - i_mdi_checkbox_multiple_marked_circle_outline
+מּ - i_mdi_cloud_sync
+﬿ - i_mdi_collage
+נּ - i_mdi_directions_fork
+סּ - i_mdi_eraser_variant
+﭂ - i_mdi_face
+ףּ - i_mdi_face_profile
+פּ - i_mdi_file_tree
+﭅ - i_mdi_format_annotation_plus
+צּ - i_mdi_gas_cylinder
+קּ - i_mdi_grease_pencil
+רּ - i_mdi_human_female
+שּ - i_mdi_human_greeting
+תּ - i_mdi_human_handsdown
+וֹ - i_mdi_human_handsup
+בֿ - i_mdi_human_male
+כֿ - i_mdi_information_variant
+פֿ - i_mdi_lead_pencil
+ﭏ - i_mdi_map_marker_minus
+ﭐ - i_mdi_map_marker_plus
+ﭑ - i_mdi_marker
+ﭒ - i_mdi_message_plus
+ﭓ - i_mdi_microscope
+ﭔ - i_mdi_move_resize
+ﭕ - i_mdi_move_resize_variant
+ﭖ - i_mdi_paw_off
+ﭗ - i_mdi_phone_minus
+ﭘ - i_mdi_phone_plus
+ﭙ - i_mdi_pot
+ﭚ - i_mdi_pot_mix
+ﭛ - i_mdi_serial_port
+ﭜ - i_mdi_shape_circle_plus
+ﭝ - i_mdi_shape_polygon_plus
+ﭞ - i_mdi_shape_rectangle_plus
+ﭟ - i_mdi_shape_square_plus
+ﭠ - i_mdi_skip_next_circle
+ﭡ - i_mdi_skip_next_circle_outline
+ﭢ - i_mdi_skip_previous_circle
+ﭣ - i_mdi_skip_previous_circle_outline
+ﭤ - i_mdi_spray
+ﭥ - i_mdi_stop_circle
+ﭦ - i_mdi_stop_circle_outline
+ﭧ - i_mdi_test_tube
+ﭨ - i_mdi_text_shadow
+ﭩ - i_mdi_tune_vertical
+ﭪ - i_mdi_cart_off
+ﭫ - i_mdi_chart_gantt
+ﭬ - i_mdi_chart_scatterplot_hexbin
+ﭭ - i_mdi_chart_timeline
+ﭮ - i_mdi_discord
+ﭯ - i_mdi_file_restore
+ﭰ - i_mdi_language_c
+ﭱ - i_mdi_language_cpp
+ﭲ - i_mdi_xaml
+ﭳ - i_mdi_bandcamp
+ﭴ - i_mdi_credit_card_plus
+ﭵ - i_mdi_itunes
+ﭶ - i_mdi_bow_tie
+ﭷ - i_mdi_calendar_range
+ﭸ - i_mdi_currency_usd_off
+ﭹ - i_mdi_flash_red_eye
+ﭺ - i_mdi_oar
+ﭻ - i_mdi_piano
+ﭼ - i_mdi_weather_lightning_rainy
+ﭽ - i_mdi_weather_snowy_rainy
+ﭾ - i_mdi_yin_yang
+ﭿ - i_mdi_tower_beach
+ﮀ - i_mdi_tower_fire
+ﮁ - i_mdi_delete_circle
+ﮂ - i_mdi_dna
+ﮃ - i_mdi_hamburger
+ﮄ - i_mdi_gondola
+ﮅ - i_mdi_inbox
+ﮆ - i_mdi_reorder_horizontal
+ﮇ - i_mdi_reorder_vertical
+ﮈ - i_mdi_security_home
+ﮉ - i_mdi_tag_heart
+ﮊ - i_mdi_skull
+ﮋ - i_mdi_solid
+ﮌ - i_mdi_alarm_snooze
+ﮍ - i_mdi_baby_buggy
+ﮎ - i_mdi_beaker
+ﮏ - i_mdi_bomb
+ﮐ - i_mdi_calendar_question
+ﮑ - i_mdi_camera_burst
+ﮒ - i_mdi_code_tags_check
+ﮓ - i_mdi_coins
+ﮔ - i_mdi_crop_rotate
+ﮕ - i_mdi_developer_board
+ﮖ - i_mdi_do_not_disturb
+ﮗ - i_mdi_do_not_disturb_off
+ﮘ - i_mdi_douban
+ﮙ - i_mdi_emoticon_dead
+ﮚ - i_mdi_emoticon_excited
+ﮛ - i_mdi_folder_star
+ﮜ - i_mdi_format_color_text
+ﮝ - i_mdi_format_section
+ﮞ - i_mdi_gradient
+ﮟ - i_mdi_home_outline
+ﮠ - i_mdi_message_bulleted
+ﮡ - i_mdi_message_bulleted_off
+ﮢ - i_mdi_nuke
+ﮣ - i_mdi_power_plug
+ﮤ - i_mdi_power_plug_off
+ﮥ - i_mdi_publish
+ﮦ - i_mdi_restore
+ﮧ - i_mdi_robot
+ﮨ - i_mdi_format_rotate_90
+ﮩ - i_mdi_scanner
+ﮪ - i_mdi_subway
+ﮫ - i_mdi_timer_sand_empty
+ﮬ - i_mdi_transit_transfer
+ﮭ - i_mdi_unity
+ﮮ - i_mdi_update
+ﮯ - i_mdi_watch_vibrate
+ﮰ - i_mdi_angular
+ﮱ - i_mdi_dolby
+﮲ - i_mdi_emby
+﮳ - i_mdi_lamp
+﮴ - i_mdi_menu_down_outline
+﮵ - i_mdi_menu_up_outline
+﮶ - i_mdi_note_multiple
+﮷ - i_mdi_note_multiple_outline
+﮸ - i_mdi_plex
+﮹ - i_mdi_plane_shield
+﮺ - i_mdi_account_edit
+﮻ - i_mdi_alert_decagram
+﮼ - i_mdi_all_inclusive
+﮽ - i_mdi_angularjs
+﮾ - i_mdi_arrow_down_box
+﮿ - i_mdi_arrow_left_box
+﯀ - i_mdi_arrow_right_box
+﯁ - i_mdi_arrow_up_box
+﯂ - i_mdi_asterisk
+﯃ - i_mdi_bomb_off
+﯄ - i_mdi_bootstrap
+﯅ - i_mdi_cards_variant
+﯆ - i_mdi_clipboard_flow
+﯇ - i_mdi_close_outline
+﯈ - i_mdi_coffee_outline
+﯉ - i_mdi_contacts
+﯊ - i_mdi_delete_empty
+﯋ - i_mdi_earth_box
+﯌ - i_mdi_earth_box_off
+﯍ - i_mdi_email_alert
+﯎ - i_mdi_eye_outline
+﯏ - i_mdi_eye_off_outline
+﯐ - i_mdi_fast_forward_outline
+﯑ - i_mdi_feather
+﯒ - i_mdi_find_replace
+ﯓ - i_mdi_flash_outline
+ﯔ - i_mdi_format_font
+ﯕ - i_mdi_format_page_break
+ﯖ - i_mdi_format_pilcrow
+ﯗ - i_mdi_garage
+ﯘ - i_mdi_garage_open
+ﯙ - i_mdi_github_face
+ﯚ - i_mdi_google_keep
+ﯛ - i_mdi_google_photos
+ﯜ - i_mdi_heart_half_full
+ﯝ - i_mdi_heart_half
+ﯞ - i_mdi_heart_half_outline
+ﯟ - i_mdi_hexagon_multiple
+ﯠ - i_mdi_hook
+ﯡ - i_mdi_hook_off
+ﯢ - i_mdi_infinity
+ﯣ - i_mdi_language_swift
+ﯤ - i_mdi_language_typescript
+ﯥ - i_mdi_laptop_off
+ﯦ - i_mdi_lightbulb_on
+ﯧ - i_mdi_lightbulb_on_outline
+ﯨ - i_mdi_lock_pattern
+ﯩ - i_mdi_loop
+ﯪ - i_mdi_magnify_minus_outline
+ﯫ - i_mdi_magnify_plus_outline
+ﯬ - i_mdi_mailbox
+ﯭ - i_mdi_medical_bag
+ﯮ - i_mdi_message_settings
+ﯯ - i_mdi_message_settings_variant
+ﯰ - i_mdi_minus_box_outline
+ﯱ - i_mdi_network
+ﯲ - i_mdi_download_network
+ﯳ - i_mdi_help_network
+ﯴ - i_mdi_upload_network
+ﯵ - i_mdi_npm
+ﯶ - i_mdi_nut
+ﯷ - i_mdi_octagram
+ﯸ - i_mdi_page_layout_body
+ﯹ - i_mdi_page_layout_footer
+ﯺ - i_mdi_page_layout_header
+ﯻ - i_mdi_page_layout_sidebar_left
+ﯼ - i_mdi_page_layout_sidebar_right
+ﯽ - i_mdi_pencil_circle
+ﯾ - i_mdi_pentagon
+ﯿ - i_mdi_pentagon_outline
+ﰀ - i_mdi_pillar
+ﰁ - i_mdi_pistol
+ﰂ - i_mdi_plus_box_outline
+ﰃ - i_mdi_plus_outline
+ﰄ - i_mdi_prescription
+ﰅ - i_mdi_printer_settings
+ﰆ - i_mdi_react
+ﰇ - i_mdi_restart
+ﰈ - i_mdi_rewind_outline
+ﰉ - i_mdi_rhombus
+ﰊ - i_mdi_rhombus_outline
+ﰋ - i_mdi_roomba
+ﰌ - i_mdi_run
+ﰍ - i_mdi_search_web
+ﰎ - i_mdi_shovel
+ﰏ - i_mdi_shovel_off
+ﰐ - i_mdi_signal_2g
+ﰑ - i_mdi_signal_3g
+ﰒ - i_mdi_signal_4g
+ﰓ - i_mdi_signal_hspa
+ﰔ - i_mdi_signal_hspa_plus
+ﰕ - i_mdi_snowflake
+ﰖ - i_mdi_source_commit
+ﰗ - i_mdi_source_commit_end
+ﰘ - i_mdi_source_commit_end_local
+ﰙ - i_mdi_source_commit_local
+ﰚ - i_mdi_source_commit_next_local
+ﰛ - i_mdi_source_commit_start
+ﰜ - i_mdi_source_commit_start_next_local
+ﰝ - i_mdi_speaker_wireless
+ﰞ - i_mdi_stadium
+ﰟ - i_mdi_svg
+ﰠ - i_mdi_tag_plus
+ﰡ - i_mdi_tag_remove
+ﰢ - i_mdi_ticket_percent
+ﰣ - i_mdi_tilde
+ﰤ - i_mdi_treasure_chest
+ﰥ - i_mdi_truck_trailer
+ﰦ - i_mdi_view_parallel
+ﰧ - i_mdi_view_sequential
+ﰨ - i_mdi_washing_machine
+ﰩ - i_mdi_webpack
+ﰪ - i_mdi_widgets
+ﰫ - i_mdi_wiiu
+ﰬ - i_mdi_arrow_down_bold
+ﰭ - i_mdi_arrow_down_bold_box
+ﰮ - i_mdi_arrow_down_bold_box_outline
+ﰯ - i_mdi_arrow_left_bold
+ﰰ - i_mdi_arrow_left_bold_box
+ﰱ - i_mdi_arrow_left_bold_box_outline
+ﰲ - i_mdi_arrow_right_bold
+ﰳ - i_mdi_arrow_right_bold_box
+ﰴ - i_mdi_arrow_right_bold_box_outline
+ﰵ - i_mdi_arrow_up_bold
+ﰶ - i_mdi_arrow_up_bold_box
+ﰷ - i_mdi_arrow_up_bold_box_outline
+ﰸ - i_mdi_cancel
+ﰹ - i_mdi_file_account
+ﰺ - i_mdi_gesture_double_tap
+ﰻ - i_mdi_gesture_swipe_down
+ﰼ - i_mdi_gesture_swipe_left
+ﰽ - i_mdi_gesture_swipe_right
+ﰾ - i_mdi_gesture_swipe_up
+ﰿ - i_mdi_gesture_tap
+ﱀ - i_mdi_gesture_two_double_tap
+ﱁ - i_mdi_gesture_two_tap
+ﱂ - i_mdi_humble_bundle
+ﱃ - i_mdi_kickstarter
+ﱄ - i_mdi_netflix
+ﱅ - i_mdi_onenote
+ﱆ - i_mdi_periscope
+ﱇ - i_mdi_uber
+ﱈ - i_mdi_vector_radius
+ﱉ - i_mdi_xbox_controller_battery_alert
+ﱊ - i_mdi_xbox_controller_battery_empty
+ﱋ - i_mdi_xbox_controller_battery_full
+ﱌ - i_mdi_xbox_controller_battery_low
+ﱍ - i_mdi_xbox_controller_battery_medium
+ﱎ - i_mdi_xbox_controller_battery_unknown
+ﱏ - i_mdi_clipboard_plus
+ﱐ - i_mdi_file_plus
+ﱑ - i_mdi_format_align_bottom
+ﱒ - i_mdi_format_align_middle
+ﱓ - i_mdi_format_align_top
+ﱔ - i_mdi_format_list_checks
+ﱕ - i_mdi_format_quote_open
+ﱖ - i_mdi_grid_large
+ﱗ - i_mdi_heart_off
+ﱘ - i_mdi_music
+ﱙ - i_mdi_music_off
+ﱚ - i_mdi_tab_plus
+ﱛ - i_mdi_volume_plus
+ﱜ - i_mdi_volume_minus
+ﱝ - i_mdi_volume_mute
+ﱞ - i_mdi_unfold_less_vertical
+ﱟ - i_mdi_unfold_more_vertical
+ﱠ - i_mdi_taco
+ﱡ - i_mdi_square_outline
+ﱢ - i_mdi_square
+ﱣ - i_mdi_circle
+ﱤ - i_mdi_circle_outline
+ﱥ - i_mdi_alert_octagram
+ﱦ - i_mdi_atom
+ﱧ - i_mdi_ceiling_light
+ﱨ - i_mdi_chart_bar_stacked
+ﱩ - i_mdi_chart_line_stacked
+ﱪ - i_mdi_decagram
+ﱫ - i_mdi_decagram_outline
+ﱬ - i_mdi_dice_multiple
+ﱭ - i_mdi_dice_d10
+ﱮ - i_mdi_folder_open
+ﱯ - i_mdi_guitar_acoustic
+ﱰ - i_mdi_loading
+ﱱ - i_mdi_lock_reset
+ﱲ - i_mdi_ninja
+ﱳ - i_mdi_octagram_outline
+ﱴ - i_mdi_pencil_circle_outline
+ﱵ - i_mdi_selection_off
+ﱶ - i_mdi_set_all
+ﱷ - i_mdi_set_center
+ﱸ - i_mdi_set_center_right
+ﱹ - i_mdi_set_left
+ﱺ - i_mdi_set_left_center
+ﱻ - i_mdi_set_left_right
+ﱼ - i_mdi_set_none
+ﱽ - i_mdi_set_right
+ﱾ - i_mdi_shield_half_full
+ﱿ - i_mdi_sign_direction
+ﲀ - i_mdi_sign_text
+ﲁ - i_mdi_signal_off
+ﲂ - i_mdi_square_root
+ﲃ - i_mdi_sticker_emoji
+ﲄ - i_mdi_summit
+ﲅ - i_mdi_sword_cross
+ﲆ - i_mdi_truck_fast
+ﲇ - i_mdi_yammer
+ﲈ - i_mdi_cast_off
+ﲉ - i_mdi_help_box
+ﲊ - i_mdi_timer_sand_full
+ﲋ - i_mdi_waves
+ﲌ - i_mdi_alarm_bell
+ﲍ - i_mdi_alarm_light
+ﲎ - i_mdi_android_head
+ﲏ - i_mdi_approval
+ﲐ - i_mdi_arrow_collapse_down
+ﲑ - i_mdi_arrow_collapse_left
+ﲒ - i_mdi_arrow_collapse_right
+ﲓ - i_mdi_arrow_collapse_up
+ﲔ - i_mdi_arrow_expand_down
+ﲕ - i_mdi_arrow_expand_left
+ﲖ - i_mdi_arrow_expand_right
+ﲗ - i_mdi_arrow_expand_up
+ﲘ - i_mdi_book_secure
+ﲙ - i_mdi_book_unsecure
+ﲚ - i_mdi_bus_articulated_end
+ﲛ - i_mdi_bus_articulated_front
+ﲜ - i_mdi_bus_double_decker
+ﲝ - i_mdi_bus_school
+ﲞ - i_mdi_bus_side
+ﲟ - i_mdi_camera_gopro
+ﲠ - i_mdi_camera_metering_center
+ﲡ - i_mdi_camera_metering_matrix
+ﲢ - i_mdi_camera_metering_partial
+ﲣ - i_mdi_camera_metering_spot
+ﲤ - i_mdi_cannabis
+ﲥ - i_mdi_car_convertible
+ﲦ - i_mdi_car_estate
+ﲧ - i_mdi_car_hatchback
+ﲨ - i_mdi_car_pickup
+ﲩ - i_mdi_car_side
+ﲪ - i_mdi_car_sports
+ﲫ - i_mdi_caravan
+ﲬ - i_mdi_cctv
+ﲭ - i_mdi_chart_donut
+ﲮ - i_mdi_chart_donut_variant
+ﲯ - i_mdi_chart_line_variant
+ﲰ - i_mdi_chili_hot
+ﲱ - i_mdi_chili_medium
+ﲲ - i_mdi_chili_mild
+ﲳ - i_mdi_cloud_braces
+ﲴ - i_mdi_cloud_tags
+ﲵ - i_mdi_console_line
+ﲶ - i_mdi_corn
+ﲷ - i_mdi_currency_chf
+ﲸ - i_mdi_currency_cny
+ﲹ - i_mdi_currency_eth
+ﲺ - i_mdi_currency_jpy
+ﲻ - i_mdi_currency_krw
+ﲼ - i_mdi_currency_sign
+ﲽ - i_mdi_currency_twd
+ﲾ - i_mdi_desktop_classic
+ﲿ - i_mdi_dip_switch
+ﳀ - i_mdi_donkey
+ﳁ - i_mdi_dots_horizontal_circle
+ﳂ - i_mdi_dots_vertical_circle
+ﳃ - i_mdi_ear_hearing
+ﳄ - i_mdi_elephant
+ﳅ - i_mdi_eventbrite
+ﳆ - i_mdi_food_croissant
+ﳇ - i_mdi_forklift
+ﳈ - i_mdi_fuel
+ﳉ - i_mdi_gesture
+ﳊ - i_mdi_google_analytics
+ﳋ - i_mdi_google_assistant
+ﳌ - i_mdi_headphones_off
+ﳍ - i_mdi_high_definition
+ﳎ - i_mdi_home_assistant
+ﳏ - i_mdi_home_automation
+ﳐ - i_mdi_home_circle
+ﳑ - i_mdi_language_go
+ﳒ - i_mdi_language_r
+ﳓ - i_mdi_lava_lamp
+ﳔ - i_mdi_led_strip
+ﳕ - i_mdi_locker
+ﳖ - i_mdi_locker_multiple
+ﳗ - i_mdi_map_marker_outline
+ﳘ - i_mdi_metronome
+ﳙ - i_mdi_metronome_tick
+ﳚ - i_mdi_micro_sd
+ﳛ - i_mdi_mixer
+ﳜ - i_mdi_movie_roll
+ﳝ - i_mdi_mushroom
+ﳞ - i_mdi_mushroom_outline
+ﳟ - i_mdi_nintendo_switch
+ﳠ - i_mdi_null
+ﳡ - i_mdi_passport
+ﳢ - i_mdi_periodic_table_co2
+ﳣ - i_mdi_pipe
+ﳤ - i_mdi_pipe_disconnected
+ﳥ - i_mdi_power_socket_eu
+ﳦ - i_mdi_power_socket_uk
+ﳧ - i_mdi_power_socket_us
+ﳨ - i_mdi_rice
+ﳩ - i_mdi_ring
+ﳪ - i_mdi_sass
+ﳫ - i_mdi_send_secure
+ﳬ - i_mdi_soy_sauce
+ﳭ - i_mdi_standard_definition
+ﳮ - i_mdi_surround_sound_2_0
+ﳯ - i_mdi_surround_sound_3_1
+ﳰ - i_mdi_surround_sound_5_1
+ﳱ - i_mdi_surround_sound_7_1
+ﳲ - i_mdi_television_classic
+ﳳ - i_mdi_textbox_password
+ﳴ - i_mdi_thought_bubble
+ﳵ - i_mdi_thought_bubble_outline
+ﳶ - i_mdi_trackpad
+ﳷ - i_mdi_ultra_high_definition
+ﳸ - i_mdi_van_passenger
+ﳹ - i_mdi_van_utility
+ﳺ - i_mdi_vanish
+ﳻ - i_mdi_video_3d
+ﳼ - i_mdi_wall
+ﳽ - i_mdi_xmpp
+ﳾ - i_mdi_account_multiple_plus_outline
+ﳿ - i_mdi_account_plus_outline
+ﴀ - i_mdi_allo
+ﴁ - i_mdi_artist
+ﴂ - i_mdi_atlassian
+ﴃ - i_mdi_azure
+ﴄ - i_mdi_basketball
+ﴅ - i_mdi_battery_charging_wireless
+ﴆ - i_mdi_battery_charging_wireless_10
+ﴇ - i_mdi_battery_charging_wireless_20
+ﴈ - i_mdi_battery_charging_wireless_30
+ﴉ - i_mdi_battery_charging_wireless_40
+ﴊ - i_mdi_battery_charging_wireless_50
+ﴋ - i_mdi_battery_charging_wireless_60
+ﴌ - i_mdi_battery_charging_wireless_70
+ﴍ - i_mdi_battery_charging_wireless_80
+ﴎ - i_mdi_battery_charging_wireless_90
+ﴏ - i_mdi_battery_charging_wireless_alert
+ﴐ - i_mdi_battery_charging_wireless_outline
+ﴑ - i_mdi_bitcoin
+ﴒ - i_mdi_briefcase_outline
+ﴓ - i_mdi_cellphone_wireless
+ﴔ - i_mdi_clover
+ﴕ - i_mdi_comment_question
+ﴖ - i_mdi_content_save_outline
+ﴗ - i_mdi_delete_restore
+ﴘ - i_mdi_door
+ﴙ - i_mdi_door_closed
+ﴚ - i_mdi_door_open
+ﴛ - i_mdi_fan_off
+ﴜ - i_mdi_file_percent
+ﴝ - i_mdi_finance
+ﴞ - i_mdi_flash_circle
+ﴟ - i_mdi_floor_plan
+ﴠ - i_mdi_forum_outline
+ﴡ - i_mdi_golf
+ﴢ - i_mdi_google_home
+ﴣ - i_mdi_guy_fawkes_mask
+ﴤ - i_mdi_home_account
+ﴥ - i_mdi_home_heart
+ﴦ - i_mdi_hot_tub
+ﴧ - i_mdi_hulu
+ﴨ - i_mdi_ice_cream
+ﴩ - i_mdi_image_off
+ﴪ - i_mdi_karate
+ﴫ - i_mdi_ladybug
+ﴬ - i_mdi_notebook
+ﴭ - i_mdi_phone_return
+ﴮ - i_mdi_poker_chip
+ﴯ - i_mdi_shape
+ﴰ - i_mdi_shape_outline
+ﴱ - i_mdi_ship_wheel
+ﴲ - i_mdi_soccer_field
+ﴳ - i_mdi_table_column
+ﴴ - i_mdi_table_of_contents
+ﴵ - i_mdi_table_row
+ﴶ - i_mdi_table_settings
+ﴷ - i_mdi_television_box
+ﴸ - i_mdi_television_classic_off
+ﴹ - i_mdi_television_off
+ﴺ - i_mdi_towing
+ﴻ - i_mdi_upload_multiple
+ﴼ - i_mdi_video_4k_box
+ﴽ - i_mdi_video_input_antenna
+﴾ - i_mdi_video_input_component
+﴿ - i_mdi_video_input_hdmi
+﵀ - i_mdi_video_input_svideo
+﵁ - i_mdi_view_dashboard_variant
+﵂ - i_mdi_vuejs
+﵃ - i_mdi_xamarin
+﵄ - i_mdi_xamarin_outline
+﵅ - i_mdi_youtube_creator_studio
+﵆ - i_mdi_youtube_gaming
+♥ - i_oct_heart
+⚡ - i_oct_zap
+ - i_oct_light_bulb
+ - i_oct_repo
+ - i_oct_repo_forked
+ - i_oct_repo_push
+ - i_oct_repo_pull
+ - i_oct_book
+ - i_oct_octoface
+ - i_oct_git_pull_request
+ - i_oct_mark_github
+ - i_oct_cloud_download
+ - i_oct_cloud_upload
+ - i_oct_keyboard
+ - i_oct_gist
+ - i_oct_file_code
+ - i_oct_file_text
+ - i_oct_file_media
+ - i_oct_file_zip
+ - i_oct_file_pdf
+ - i_oct_tag
+ - i_oct_file_directory
+ - i_oct_file_submodule
+ - i_oct_person
+ - i_oct_jersey
+ - i_oct_git_commit
+ - i_oct_git_branch
+ - i_oct_git_merge
+ - i_oct_mirror
+ - i_oct_issue_opened
+ - i_oct_issue_reopened
+ - i_oct_issue_closed
+ - i_oct_star
+ - i_oct_comment
+ - i_oct_question
+ - i_oct_alert
+ - i_oct_search
+ - i_oct_gear
+ - i_oct_radio_tower
+ - i_oct_tools
+ - i_oct_sign_out
+ - i_oct_rocket
+ - i_oct_rss
+ - i_oct_clippy
+ - i_oct_sign_in
+ - i_oct_organization
+ - i_oct_device_mobile
+ - i_oct_unfold
+ - i_oct_check
+ - i_oct_mail
+ - i_oct_mail_read
+ - i_oct_arrow_up
+ - i_oct_arrow_right
+ - i_oct_arrow_down
+ - i_oct_arrow_left
+ - i_oct_pin
+ - i_oct_gift
+ - i_oct_graph
+ - i_oct_triangle_left
+ - i_oct_credit_card
+ - i_oct_clock
+ - i_oct_ruby
+ - i_oct_broadcast
+ - i_oct_key
+ - i_oct_repo_force_push
+ - i_oct_repo_clone
+ - i_oct_diff
+ - i_oct_eye
+ - i_oct_comment_discussion
+ - i_oct_mail_reply
+ - i_oct_primitive_dot
+ - i_oct_primitive_square
+ - i_oct_device_camera
+ - i_oct_device_camera_video
+ - i_oct_pencil
+ - i_oct_info
+ - i_oct_triangle_right
+ - i_oct_triangle_down
+ - i_oct_link
+ - i_oct_plus
+ - i_oct_three_bars
+ - i_oct_code
+ - i_oct_location
+ - i_oct_list_unordered
+ - i_oct_list_ordered
+ - i_oct_quote
+ - i_oct_versions
+ - i_oct_calendar
+ - i_oct_lock
+ - i_oct_diff_added
+ - i_oct_diff_removed
+ - i_oct_diff_modified
+ - i_oct_diff_renamed
+ - i_oct_horizontal_rule
+ - i_oct_arrow_small_right
+ - i_oct_milestone
+ - i_oct_checklist
+ - i_oct_megaphone
+ - i_oct_chevron_right
+ - i_oct_bookmark
+ - i_oct_settings
+ - i_oct_dashboard
+ - i_oct_history
+ - i_oct_link_external
+ - i_oct_mute
+ - i_oct_x
+ - i_oct_circle_slash
+ - i_oct_pulse
+ - i_oct_sync
+ - i_oct_telescope
+ - i_oct_gist_secret
+ - i_oct_home
+ - i_oct_stop
+ - i_oct_bug
+ - i_oct_logo_github
+ - i_oct_file_binary
+ - i_oct_database
+ - i_oct_server
+ - i_oct_diff_ignored
+ - i_oct_ellipsis
+ - i_oct_no_newline
+ - i_oct_hubot
+ - i_oct_arrow_small_up
+ - i_oct_arrow_small_down
+ - i_oct_arrow_small_left
+ - i_oct_chevron_up
+ - i_oct_chevron_down
+ - i_oct_chevron_left
+ - i_oct_triangle_up
+ - i_oct_git_compare
+ - i_oct_logo_gist
+ - i_oct_file_symlink_file
+ - i_oct_file_symlink_directory
+ - i_oct_squirrel
+ - i_oct_globe
+ - i_oct_unmute
+ - i_oct_mention
+ - i_oct_package
+ - i_oct_browser
+ - i_oct_terminal
+ - i_oct_markdown
+ - i_oct_dash
+ - i_oct_fold
+ - i_oct_inbox
+ - i_oct_trashcan
+ - i_oct_paintcan
+ - i_oct_flame
+ - i_oct_briefcase
+ - i_oct_plug
+ - i_oct_circuit_board
+ - i_oct_mortar_board
+ - i_oct_law
+ - i_oct_thumbsup
+ - i_oct_thumbsdown
+ - i_oct_desktop_download
+ - i_oct_beaker
+ - i_oct_bell
+ - i_oct_watch
+ - i_oct_shield
+ - i_oct_bold
+ - i_oct_text_size
+ - i_oct_italic
+ - i_oct_tasklist
+ - i_oct_verified
+ - i_oct_smiley
+ - i_oct_unverified
+ - i_oct_ellipses
+ - i_oct_file
+ - i_oct_grabber
+ - i_oct_plus_small
+ - i_oct_reply
+ - i_oct_device_desktop
+ - i_pl_branch
+ - i_pl_line_number i_pl_current_line_pl_line_number
+ - i_pl_hostname i_pl_readonly_pl_hostname
+ - i_ple_column_number i_ple_current_column_ple_column_number
+ - i_pl_left_hard_divider
+ - i_pl_left_soft_divider
+ - i_pl_right_hard_divider
+ - i_pl_right_soft_divider
+ - i_ple_right_half_circle_thick
+ - i_ple_right_half_circle_thin
+ - i_ple_left_half_circle_thick
+ - i_ple_left_half_circle_thin
+ - i_ple_lower_left_triangle
+ - i_ple_backslash_separator
+ - i_ple_lower_right_triangle
+ - i_ple_forwardslash_separator
+ - i_ple_upper_left_triangle
+ - i_ple_forwardslash_separator_redundant
+ - i_ple_upper_right_triangle
+ - i_ple_backslash_separator_redundant
+ - i_ple_flame_thick
+ - i_ple_flame_thin
+ - i_ple_flame_thick_mirrored
+ - i_ple_flame_thin_mirrored
+ - i_ple_pixelated_squares_small
+ - i_ple_pixelated_squares_small_mirrored
+ - i_ple_pixelated_squares_big
+ - i_ple_pixelated_squares_big_mirrored
+ - i_ple_ice_waveform
+ - i_ple_ice_waveform_mirrored
+ - i_ple_honeycomb
+ - i_ple_honeycomb_outline
+ - i_ple_lego_separator
+ - i_ple_lego_separator_thin
+ - i_ple_lego_block_facing
+ - i_ple_lego_block_sideways
+ - i_ple_trapezoid_top_bottom
+ - i_ple_trapezoid_top_bottom_mirrored
+ - i_pom_clean_code
+ - i_pom_pomodoro_done
+ - i_pom_pomodoro_estimated
+ - i_pom_pomodoro_ticking
+ - i_pom_pomodoro_squashed
+ - i_pom_short_pause
+ - i_pom_long_pause
+ - i_pom_away
+ - i_pom_pair_programming
+ - i_pom_internal_interruption
+ - i_pom_external_interruption
+ - i_custom_folder_npm
+ - i_custom_folder_git i_custom_folder_git_branch_custom_folder_git
+ - i_custom_folder_config
+ - i_custom_folder_github
+ - i_custom_folder_open
+ - i_custom_folder
+ - i_seti_stylus
+ - i_seti_project
+ - i_seti_play_arrow
+ - i_seti_sass
+ - i_seti_rails
+ - i_seti_ruby
+ - i_seti_python
+ - i_seti_heroku
+ - i_seti_php
+ - i_seti_markdown
+ - i_seti_license
+ - i_seti_json i_seti_less_seti_json
+ - i_seti_javascript
+ - i_seti_image
+ - i_seti_html
+ - i_seti_mustache
+ - i_seti_gulp
+ - i_seti_grunt
+ - i_seti_default i_seti_text_seti_default
+ - i_seti_folder
+ - i_seti_css
+ - i_seti_config
+ - i_seti_npm
+ - i_seti_home
+ - i_seti_ejs
+ - i_seti_xml
+ - i_seti_bower
+ - i_seti_coffee i_seti_cjsx_seti_coffee
+ - i_seti_twig
+ - i_custom_cpp
+ - i_custom_c
+ - i_seti_haskell
+ - i_seti_lua
+ - i_indent_line i_indentation_line_indent_line i_indent_dotted_guide_indent_line
+ - i_seti_karma
+ - i_seti_favicon
+ - i_seti_julia
+ - i_seti_react
+ - i_custom_go
+ - i_seti_go
+ - i_seti_typescript
+ - i_custom_msdos
+ - i_custom_windows
+ - i_custom_vim
+ - i_custom_elm
+ - i_custom_elixir
+ - i_custom_electron
+ - i_weather_day_cloudy_gusts
+ - i_weather_day_cloudy_windy
+ - i_weather_day_cloudy
+ - i_weather_day_fog
+ - i_weather_day_hail
+ - i_weather_day_lightning
+ - i_weather_day_rain_mix
+ - i_weather_day_rain_wind
+ - i_weather_day_rain
+ - i_weather_day_showers
+ - i_weather_day_snow
+ - i_weather_day_sprinkle
+ - i_weather_day_sunny_overcast
+ - i_weather_day_sunny
+ - i_weather_day_storm_showers
+ - i_weather_day_thunderstorm
+ - i_weather_cloudy_gusts
+ - i_weather_cloudy_windy
+ - i_weather_cloudy
+ - i_weather_fog
+ - i_weather_hail
+ - i_weather_lightning
+ - i_weather_rain_mix
+ - i_weather_rain_wind
+ - i_weather_rain
+ - i_weather_showers
+ - i_weather_snow
+ - i_weather_sprinkle
+ - i_weather_storm_showers
+ - i_weather_thunderstorm
+ - i_weather_windy
+ - i_weather_night_alt_cloudy_gusts
+ - i_weather_night_alt_cloudy_windy
+ - i_weather_night_alt_hail
+ - i_weather_night_alt_lightning
+ - i_weather_night_alt_rain_mix
+ - i_weather_night_alt_rain_wind
+ - i_weather_night_alt_rain
+ - i_weather_night_alt_rain_mix
+ - i_weather_night_alt_snow
+ - i_weather_night_alt_sprinkle
+ - i_weather_night_alt_storm_showers
+ - i_weather_night_alt_thunderstorm
+ - i_weather_night_clear
+ - i_weather_night_cloudy_gusts
+ - i_weather_night_cloudy_windy
+ - i_weather_night_cloudy
+ - i_weather_night_hail
+ - i_weather_night_lightning
+ - i_weather_night_rain_mix
+ - i_weather_night_rain_wind
+ - i_weather_night_rain
+ - i_weather_night_showers
+ - i_weather_night_snow
+ - i_weather_night_sprinkle
+ - i_weather_night_storm_showers
+ - i_weather_night_thunderstorm
+ - i_weather_celsius
+ - i_weather_cloud_down
+ - i_weather_cloud_refresh
+ - i_weather_cloud_up
+ - i_weather_cloud
+ - i_weather_degrees
+ - i_weather_direction_down_left
+ - i_weather_direction_down
+ - i_weather_fahrenheit
+ - i_weather_horizon_alt
+ - i_weather_horizon
+ - i_weather_direction_left
+ - i_weather_aliens
+ - i_weather_night_fog
+ - i_weather_refresh_alt
+ - i_weather_refresh
+ - i_weather_direction_right
+ - i_weather_raindrops
+ - i_weather_strong_wind
+ - i_weather_sunrise
+ - i_weather_sunset
+ - i_weather_thermometer_exterior
+ - i_weather_thermometer_internal
+ - i_weather_thermometer
+ - i_weather_tornado
+ - i_weather_direction_up_right
+ - i_weather_direction_up
+ - i_weather_wind_west
+ - i_weather_wind_south_west
+ - i_weather_wind_south_east
+ - i_weather_wind_south
+ - i_weather_wind_north_west
+ - i_weather_wind_north_east
+ - i_weather_wind_north
+ - i_weather_wind_east
+ - i_weather_smoke
+ - i_weather_dust
+ - i_weather_snow_wind
+ - i_weather_day_snow_wind
+ - i_weather_night_snow_wind
+ - i_weather_night_alt_snow_wind
+ - i_weather_day_sleet_storm
+ - i_weather_night_sleet_storm
+ - i_weather_night_alt_sleet_storm
+ - i_weather_day_snow_thunderstorm
+ - i_weather_night_snow_thunderstorm
+ - i_weather_night_alt_snow_thunderstorm
+ - i_weather_solar_eclipse
+ - i_weather_lunar_eclipse
+ - i_weather_meteor
+ - i_weather_hot
+ - i_weather_hurricane
+ - i_weather_smog
+ - i_weather_alien
+ - i_weather_snowflake_cold
+ - i_weather_stars
+ - i_weather_raindrop
+ - i_weather_barometer
+ - i_weather_humidity
+ - i_weather_na
+ - i_weather_flood
+ - i_weather_day_cloudy_high
+ - i_weather_night_alt_cloudy_high
+ - i_weather_night_cloudy_high
+ - i_weather_night_alt_partly_cloudy
+ - i_weather_sandstorm
+ - i_weather_night_partly_cloudy
+ - i_weather_umbrella
+ - i_weather_day_windy
+ - i_weather_night_alt_cloudy
+ - i_weather_direction_up_left
+ - i_weather_direction_down_right
+ - i_weather_time_12
+ - i_weather_time_1
+ - i_weather_time_2
+ - i_weather_time_3
+ - i_weather_time_4
+ - i_weather_time_5
+ - i_weather_time_6
+ - i_weather_time_7
+ - i_weather_time_8
+ - i_weather_time_9
+ - i_weather_time_10
+ - i_weather_time_11
+ - i_weather_moon_new
+ - i_weather_moon_waxing_crescent_1
+ - i_weather_moon_waxing_crescent_2
+ - i_weather_moon_waxing_crescent_3
+ - i_weather_moon_waxing_crescent_4
+ - i_weather_moon_waxing_crescent_5
+ - i_weather_moon_waxing_crescent_6
+ - i_weather_moon_first_quarter
+ - i_weather_moon_waxing_gibbous_1
+ - i_weather_moon_waxing_gibbous_2
+ - i_weather_moon_waxing_gibbous_3
+ - i_weather_moon_waxing_gibbous_4
+ - i_weather_moon_waxing_gibbous_5
+ - i_weather_moon_waxing_gibbous_6
+ - i_weather_moon_full
+ - i_weather_moon_waning_gibbous_1
+ - i_weather_moon_waning_gibbous_2
+ - i_weather_moon_waning_gibbous_3
+ - i_weather_moon_waning_gibbous_4
+ - i_weather_moon_waning_gibbous_5
+ - i_weather_moon_waning_gibbous_6
+ - i_weather_moon_third_quarter
+ - i_weather_moon_waning_crescent_1
+ - i_weather_moon_waning_crescent_2
+ - i_weather_moon_waning_crescent_3
+ - i_weather_moon_waning_crescent_4
+ - i_weather_moon_waning_crescent_5
+ - i_weather_moon_waning_crescent_6
+ - i_weather_wind_direction
+ - i_weather_day_sleet
+ - i_weather_night_sleet
+ - i_weather_night_alt_sleet
+ - i_weather_sleet
+ - i_weather_day_haze
+ - i_weather_wind_beaufort_0
+ - i_weather_wind_beaufort_1
+ - i_weather_wind_beaufort_2
+ - i_weather_wind_beaufort_3
+ - i_weather_wind_beaufort_4
+ - i_weather_wind_beaufort_5
+ - i_weather_wind_beaufort_6
+ - i_weather_wind_beaufort_7
+ - i_weather_wind_beaufort_8
+ - i_weather_wind_beaufort_9
+ - i_weather_wind_beaufort_10
+ - i_weather_wind_beaufort_11
+ - i_weather_wind_beaufort_12
+ - i_weather_day_light_wind
+ - i_weather_tsunami
+ - i_weather_earthquake
+ - i_weather_fire
+ - i_weather_volcano
+ - i_weather_moonrise
+ - i_weather_moonset
+ - i_weather_train
+ - i_weather_small_craft_advisory
+ - i_weather_gale_warning
+ - i_weather_storm_warning
+ - i_weather_hurricane_warning
+ - i_weather_moon_alt_waxing_crescent_1
+ - i_weather_moon_alt_waxing_crescent_2
+ - i_weather_moon_alt_waxing_crescent_3
+ - i_weather_moon_alt_waxing_crescent_4
+ - i_weather_moon_alt_waxing_crescent_5
+ - i_weather_moon_alt_waxing_crescent_6
+ - i_weather_moon_alt_first_quarter
+ - i_weather_moon_alt_waxing_gibbous_1
+ - i_weather_moon_alt_waxing_gibbous_2
+ - i_weather_moon_alt_waxing_gibbous_3
+ - i_weather_moon_alt_waxing_gibbous_4
+ - i_weather_moon_alt_waxing_gibbous_5
+ - i_weather_moon_alt_waxing_gibbous_6
+ - i_weather_moon_alt_full
+ - i_weather_moon_alt_waning_gibbous_1
+ - i_weather_moon_alt_waning_gibbous_2
+ - i_weather_moon_alt_waning_gibbous_3
+ - i_weather_moon_alt_waning_gibbous_4
+ - i_weather_moon_alt_waning_gibbous_5
+ - i_weather_moon_alt_waning_gibbous_6
+ - i_weather_moon_alt_third_quarter
+ - i_weather_moon_alt_waning_crescent_1
+ - i_weather_moon_alt_waning_crescent_2
+ - i_weather_moon_alt_waning_crescent_3
+ - i_weather_moon_alt_waning_crescent_4
+ - i_weather_moon_alt_waning_crescent_5
+ - i_weather_moon_alt_waning_crescent_6
+ - i_weather_moon_alt_new
 
-
-

Emojis

-
+ +
+

Emojis

+
-
😀 grinning face; U+1F600
-😃 grinning face with big eyes; U+1F603
-😄 grinning face with smiling eyes; U+1F604
-😁 beaming face with smiling eyes; U+1F601
-😆 grinning squinting face; U+1F606
-😅 grinning face with sweat; U+1F605
-🤣 rolling on the floor laughing; U+1F923
-😂 face with tears of joy; U+1F602
-🙂 slightly smiling face; U+1F642
-🙃 upside-down face; U+1F643
-😉 winking face; U+1F609
-😊 smiling face with smiling eyes; U+1F60A
-😇 smiling face with halo; U+1F607
-🥰 smiling face with 3 hearts; U+1F970
-😍 smiling face with heart-eyes; U+1F60D
-🤩 star-struck; U+1F929
-😘 face blowing a kiss; U+1F618
-😗 kissing face; U+1F617
-☺ smiling face; U+263A
-😚 kissing face with closed eyes; U+1F61A
-😙 kissing face with smiling eyes; U+1F619
-😋 face savoring food; U+1F60B
-😛 face with tongue; U+1F61B
-😜 winking face with tongue; U+1F61C
-🤪 zany face; U+1F92A
-😝 squinting face with tongue; U+1F61D
-🤑 money-mouth face; U+1F911
-🤗 hugging face; U+1F917
-🤭 face with hand over mouth; U+1F92D
-🤫 shushing face; U+1F92B
-🤔 thinking face; U+1F914
-🤐 zipper-mouth face; U+1F910
-🤨 face with raised eyebrow; U+1F928
-😐 neutral face; U+1F610
-😑 expressionless face; U+1F611
-😶 face without mouth; U+1F636
-😏 smirking face; U+1F60F
-😒 unamused face; U+1F612
-🙄 face with rolling eyes; U+1F644
-😬 grimacing face; U+1F62C
-🤥 lying face; U+1F925
-😌 relieved face; U+1F60C
-😔 pensive face; U+1F614
-😪 sleepy face; U+1F62A
-🤤 drooling face; U+1F924
-😴 sleeping face; U+1F634
-😷 face with medical mask; U+1F637
-🤒 face with thermometer; U+1F912
-🤕 face with head-bandage; U+1F915
-🤢 nauseated face; U+1F922
-🤮 face vomiting; U+1F92E
-🤧 sneezing face; U+1F927
-🥵 hot face; U+1F975
-🥶 cold face; U+1F976
-🥴 woozy face; U+1F974
-😵 dizzy face; U+1F635
-🤯 exploding head; U+1F92F
-🤠 cowboy hat face; U+1F920
-🥳 partying face; U+1F973
-😎 smiling face with sunglasses; U+1F60E
-🤓 nerd face; U+1F913
-🧐 face with monocle; U+1F9D0
-😕 confused face; U+1F615
-😟 worried face; U+1F61F
-🙁 slightly frowning face; U+1F641
-☹ frowning face; U+2639
-😮 face with open mouth; U+1F62E
-😯 hushed face; U+1F62F
-😲 astonished face; U+1F632
-😳 flushed face; U+1F633
-🥺 pleading face; U+1F97A
-😦 frowning face with open mouth; U+1F626
-😧 anguished face; U+1F627
-😨 fearful face; U+1F628
-😰 anxious face with sweat; U+1F630
-😥 sad but relieved face; U+1F625
-😢 crying face; U+1F622
-😭 loudly crying face; U+1F62D
-😱 face screaming in fear; U+1F631
-😖 confounded face; U+1F616
-😣 persevering face; U+1F623
-😞 disappointed face; U+1F61E
-😓 downcast face with sweat; U+1F613
-😩 weary face; U+1F629
-😫 tired face; U+1F62B
-😤 face with steam from nose; U+1F624
-😡 pouting face; U+1F621
-😠 angry face; U+1F620
-🤬 face with symbols on mouth; U+1F92C
-😈 smiling face with horns; U+1F608
-👿 angry face with horns; U+1F47F
-💀 skull; U+1F480
-☠ skull and crossbones; U+2620
-💩 pile of poo; U+1F4A9
-🤡 clown face; U+1F921
-👹 ogre; U+1F479
-👺 goblin; U+1F47A
-👻 ghost; U+1F47B
-👽 alien; U+1F47D
-👾 alien monster; U+1F47E
-🤖 robot face; U+1F916
-😺 grinning cat face; U+1F63A
-😸 grinning cat face with smiling eyes; U+1F638
-😹 cat face with tears of joy; U+1F639
-😻 smiling cat face with heart-eyes; U+1F63B
-😼 cat face with wry smile; U+1F63C
-😽 kissing cat face; U+1F63D
-🙀 weary cat face; U+1F640
-😿 crying cat face; U+1F63F
-😾 pouting cat face; U+1F63E
-🙈 see-no-evil monkey; U+1F648
-🙉 hear-no-evil monkey; U+1F649
-🙊 speak-no-evil monkey; U+1F64A
-💋 kiss mark; U+1F48B
-💌 love letter; U+1F48C
-💘 heart with arrow; U+1F498
-💝 heart with ribbon; U+1F49D
-💖 sparkling heart; U+1F496
-💗 growing heart; U+1F497
-💓 beating heart; U+1F493
-💞 revolving hearts; U+1F49E
-💕 two hearts; U+1F495
-💟 heart decoration; U+1F49F
-❣ heavy heart exclamation; U+2763
-💔 broken heart; U+1F494
-❤ red heart; U+2764
-🧡 orange heart; U+1F9E1
-💛 yellow heart; U+1F49B
-💚 green heart; U+1F49A
-💙 blue heart; U+1F499
-💜 purple heart; U+1F49C
-🖤 black heart; U+1F5A4
-💯 hundred points; U+1F4AF
-💢 anger symbol; U+1F4A2
-💥 collision; U+1F4A5
-💫 dizzy; U+1F4AB
-💦 sweat droplets; U+1F4A6
-💨 dashing away; U+1F4A8
-🕳 hole; U+1F573
-💣 bomb; U+1F4A3
-💬 speech balloon; U+1F4AC
-👁️‍🗨️ eye in speech bubble; U+1F441 U+FE0F U+200D U+1F5E8 U+FE0F
-🗨 left speech bubble; U+1F5E8
-🗯 right anger bubble; U+1F5EF
-💭 thought balloon; U+1F4AD
-💤 zzz; U+1F4A4
-👋 waving hand; U+1F44B
-🤚 raised back of hand; U+1F91A
-🖐 hand with fingers splayed; U+1F590
-✋ raised hand; U+270B
-🖖 vulcan salute; U+1F596
-👌 OK hand; U+1F44C
-✌ victory hand; U+270C
-🤞 crossed fingers; U+1F91E
-🤟 love-you gesture; U+1F91F
-🤘 sign of the horns; U+1F918
-🤙 call me hand; U+1F919
-👈 backhand index pointing left; U+1F448
-👉 backhand index pointing right; U+1F449
-👆 backhand index pointing up; U+1F446
-🖕 middle finger; U+1F595
-👇 backhand index pointing down; U+1F447
-☝ index pointing up; U+261D
-👍 thumbs up; U+1F44D
-👎 thumbs down; U+1F44E
-✊ raised fist; U+270A
-👊 oncoming fist; U+1F44A
-🤛 left-facing fist; U+1F91B
-🤜 right-facing fist; U+1F91C
-👏 clapping hands; U+1F44F
-🙌 raising hands; U+1F64C
-👐 open hands; U+1F450
-🤲 palms up together; U+1F932
-🤝 handshake; U+1F91D
-🙏 folded hands; U+1F64F
-✍ writing hand; U+270D
-💅 nail polish; U+1F485
-🤳 selfie; U+1F933
-💪 flexed biceps; U+1F4AA
-🦵 leg; U+1F9B5
-🦶 foot; U+1F9B6
-👂 ear; U+1F442
-👃 nose; U+1F443
-🧠 brain; U+1F9E0
-🦷 tooth; U+1F9B7
-🦴 bone; U+1F9B4
-👀 eyes; U+1F440
-👁 eye; U+1F441
-👅 tongue; U+1F445
-👄 mouth; U+1F444
-👶 baby; U+1F476
-🧒 child; U+1F9D2
-👦 boy; U+1F466
-👧 girl; U+1F467
-🧑 person; U+1F9D1
-👱 person: blond hair; U+1F471
-👨 man; U+1F468
-👱‍♂️ man: blond hair; U+1F471 U+200D U+2642 U+FE0F
-👨‍🦰 man: red hair; U+1F468 U+200D U+1F9B0
-👨‍🦱 man: curly hair; U+1F468 U+200D U+1F9B1
-👨‍🦳 man: white hair; U+1F468 U+200D U+1F9B3
-👨‍🦲 man: bald; U+1F468 U+200D U+1F9B2
-🧔 man: beard; U+1F9D4
-👩 woman; U+1F469
-👱‍♀️ woman: blond hair; U+1F471 U+200D U+2640 U+FE0F
-👩‍🦰 woman: red hair; U+1F469 U+200D U+1F9B0
-👩‍🦱 woman: curly hair; U+1F469 U+200D U+1F9B1
-👩‍🦳 woman: white hair; U+1F469 U+200D U+1F9B3
-👩‍🦲 woman: bald; U+1F469 U+200D U+1F9B2
-🧓 older person; U+1F9D3
-👴 old man; U+1F474
-👵 old woman; U+1F475
-🙍 person frowning; U+1F64D
-🙍‍♂️ man frowning; U+1F64D U+200D U+2642 U+FE0F
-🙍‍♀️ woman frowning; U+1F64D U+200D U+2640 U+FE0F
-🙎 person pouting; U+1F64E
-🙎‍♂️ man pouting; U+1F64E U+200D U+2642 U+FE0F
-🙎‍♀️ woman pouting; U+1F64E U+200D U+2640 U+FE0F
-🙅 person gesturing NO; U+1F645
-🙅‍♂️ man gesturing NO; U+1F645 U+200D U+2642 U+FE0F
-🙅‍♀️ woman gesturing NO; U+1F645 U+200D U+2640 U+FE0F
-🙆 person gesturing OK; U+1F646
-🙆‍♂️ man gesturing OK; U+1F646 U+200D U+2642 U+FE0F
-🙆‍♀️ woman gesturing OK; U+1F646 U+200D U+2640 U+FE0F
-💁 person tipping hand; U+1F481
-💁‍♂️ man tipping hand; U+1F481 U+200D U+2642 U+FE0F
-💁‍♀️ woman tipping hand; U+1F481 U+200D U+2640 U+FE0F
-🙋 person raising hand; U+1F64B
-🙋‍♂️ man raising hand; U+1F64B U+200D U+2642 U+FE0F
-🙋‍♀️ woman raising hand; U+1F64B U+200D U+2640 U+FE0F
-🙇 person bowing; U+1F647
-🙇‍♂️ man bowing; U+1F647 U+200D U+2642 U+FE0F
-🙇‍♀️ woman bowing; U+1F647 U+200D U+2640 U+FE0F
-🤦 person facepalming; U+1F926
-🤦‍♂️ man facepalming; U+1F926 U+200D U+2642 U+FE0F
-🤦‍♀️ woman facepalming; U+1F926 U+200D U+2640 U+FE0F
-🤷 person shrugging; U+1F937
-🤷‍♂️ man shrugging; U+1F937 U+200D U+2642 U+FE0F
-🤷‍♀️ woman shrugging; U+1F937 U+200D U+2640 U+FE0F
-👨‍⚕️ man health worker; U+1F468 U+200D U+2695 U+FE0F
-👩‍⚕️ woman health worker; U+1F469 U+200D U+2695 U+FE0F
-👨‍🎓 man student; U+1F468 U+200D U+1F393
-👩‍🎓 woman student; U+1F469 U+200D U+1F393
-👨‍🏫 man teacher; U+1F468 U+200D U+1F3EB
-👩‍🏫 woman teacher; U+1F469 U+200D U+1F3EB
-👨‍⚖️ man judge; U+1F468 U+200D U+2696 U+FE0F
-👩‍⚖️ woman judge; U+1F469 U+200D U+2696 U+FE0F
-👨‍🌾 man farmer; U+1F468 U+200D U+1F33E
-👩‍🌾 woman farmer; U+1F469 U+200D U+1F33E
-👨‍🍳 man cook; U+1F468 U+200D U+1F373
-👩‍🍳 woman cook; U+1F469 U+200D U+1F373
-👨‍🔧 man mechanic; U+1F468 U+200D U+1F527
-👩‍🔧 woman mechanic; U+1F469 U+200D U+1F527
-👨‍🏭 man factory worker; U+1F468 U+200D U+1F3ED
-👩‍🏭 woman factory worker; U+1F469 U+200D U+1F3ED
-👨‍💼 man office worker; U+1F468 U+200D U+1F4BC
-👩‍💼 woman office worker; U+1F469 U+200D U+1F4BC
-👨‍🔬 man scientist; U+1F468 U+200D U+1F52C
-👩‍🔬 woman scientist; U+1F469 U+200D U+1F52C
-👨‍💻 man technologist; U+1F468 U+200D U+1F4BB
-👩‍💻 woman technologist; U+1F469 U+200D U+1F4BB
-👨‍🎤 man singer; U+1F468 U+200D U+1F3A4
-👩‍🎤 woman singer; U+1F469 U+200D U+1F3A4
-👨‍🎨 man artist; U+1F468 U+200D U+1F3A8
-👩‍🎨 woman artist; U+1F469 U+200D U+1F3A8
-👨‍✈️ man pilot; U+1F468 U+200D U+2708 U+FE0F
-👩‍✈️ woman pilot; U+1F469 U+200D U+2708 U+FE0F
-👨‍🚀 man astronaut; U+1F468 U+200D U+1F680
-👩‍🚀 woman astronaut; U+1F469 U+200D U+1F680
-👨‍🚒 man firefighter; U+1F468 U+200D U+1F692
-👩‍🚒 woman firefighter; U+1F469 U+200D U+1F692
-👮 police officer; U+1F46E
-👮‍♂️ man police officer; U+1F46E U+200D U+2642 U+FE0F
-👮‍♀️ woman police officer; U+1F46E U+200D U+2640 U+FE0F
-🕵 detective; U+1F575
-🕵️‍♂️ man detective; U+1F575 U+FE0F U+200D U+2642 U+FE0F
-🕵️‍♀️ woman detective; U+1F575 U+FE0F U+200D U+2640 U+FE0F
-💂 guard; U+1F482
-💂‍♂️ man guard; U+1F482 U+200D U+2642 U+FE0F
-💂‍♀️ woman guard; U+1F482 U+200D U+2640 U+FE0F
-👷 construction worker; U+1F477
-👷‍♂️ man construction worker; U+1F477 U+200D U+2642 U+FE0F
-👷‍♀️ woman construction worker; U+1F477 U+200D U+2640 U+FE0F
-🤴 prince; U+1F934
-👸 princess; U+1F478
-👳 person wearing turban; U+1F473
-👳‍♂️ man wearing turban; U+1F473 U+200D U+2642 U+FE0F
-👳‍♀️ woman wearing turban; U+1F473 U+200D U+2640 U+FE0F
-👲 man with Chinese cap; U+1F472
-🧕 woman with headscarf; U+1F9D5
-🤵 man in tuxedo; U+1F935
-👰 bride with veil; U+1F470
-🤰 pregnant woman; U+1F930
-🤱 breast-feeding; U+1F931
-👼 baby angel; U+1F47C
-🎅 Santa Claus; U+1F385
-🤶 Mrs. Claus; U+1F936
-🦸 superhero; U+1F9B8
-🦸‍♂️ man superhero; U+1F9B8 U+200D U+2642 U+FE0F
-🦸‍♀️ woman superhero; U+1F9B8 U+200D U+2640 U+FE0F
-🦹 supervillain; U+1F9B9
-🦹‍♂️ man supervillain; U+1F9B9 U+200D U+2642 U+FE0F
-🦹‍♀️ woman supervillain; U+1F9B9 U+200D U+2640 U+FE0F
-🧙 mage; U+1F9D9
-🧙‍♂️ man mage; U+1F9D9 U+200D U+2642 U+FE0F
-🧙‍♀️ woman mage; U+1F9D9 U+200D U+2640 U+FE0F
-🧚 fairy; U+1F9DA
-🧚‍♂️ man fairy; U+1F9DA U+200D U+2642 U+FE0F
-🧚‍♀️ woman fairy; U+1F9DA U+200D U+2640 U+FE0F
-🧛 vampire; U+1F9DB
-🧛‍♂️ man vampire; U+1F9DB U+200D U+2642 U+FE0F
-🧛‍♀️ woman vampire; U+1F9DB U+200D U+2640 U+FE0F
-🧜 merperson; U+1F9DC
-🧜‍♂️ merman; U+1F9DC U+200D U+2642 U+FE0F
-🧜‍♀️ mermaid; U+1F9DC U+200D U+2640 U+FE0F
-🧝 elf; U+1F9DD
-🧝‍♂️ man elf; U+1F9DD U+200D U+2642 U+FE0F
-🧝‍♀️ woman elf; U+1F9DD U+200D U+2640 U+FE0F
-🧞 genie; U+1F9DE
-🧞‍♂️ man genie; U+1F9DE U+200D U+2642 U+FE0F
-🧞‍♀️ woman genie; U+1F9DE U+200D U+2640 U+FE0F
-🧟 zombie; U+1F9DF
-🧟‍♂️ man zombie; U+1F9DF U+200D U+2642 U+FE0F
-🧟‍♀️ woman zombie; U+1F9DF U+200D U+2640 U+FE0F
-💆 person getting massage; U+1F486
-💆‍♂️ man getting massage; U+1F486 U+200D U+2642 U+FE0F
-💆‍♀️ woman getting massage; U+1F486 U+200D U+2640 U+FE0F
-💇 person getting haircut; U+1F487
-💇‍♂️ man getting haircut; U+1F487 U+200D U+2642 U+FE0F
-💇‍♀️ woman getting haircut; U+1F487 U+200D U+2640 U+FE0F
-🚶 person walking; U+1F6B6
-🚶‍♂️ man walking; U+1F6B6 U+200D U+2642 U+FE0F
-🚶‍♀️ woman walking; U+1F6B6 U+200D U+2640 U+FE0F
-🏃 person running; U+1F3C3
-🏃‍♂️ man running; U+1F3C3 U+200D U+2642 U+FE0F
-🏃‍♀️ woman running; U+1F3C3 U+200D U+2640 U+FE0F
-💃 woman dancing; U+1F483
-🕺 man dancing; U+1F57A
-🕴 man in suit levitating; U+1F574
-👯 people with bunny ears; U+1F46F
-👯‍♂️ men with bunny ears; U+1F46F U+200D U+2642 U+FE0F
-👯‍♀️ women with bunny ears; U+1F46F U+200D U+2640 U+FE0F
-🧖 person in steamy room; U+1F9D6
-🧖‍♂️ man in steamy room; U+1F9D6 U+200D U+2642 U+FE0F
-🧖‍♀️ woman in steamy room; U+1F9D6 U+200D U+2640 U+FE0F
-🧗 person climbing; U+1F9D7
-🧗‍♂️ man climbing; U+1F9D7 U+200D U+2642 U+FE0F
-🧗‍♀️ woman climbing; U+1F9D7 U+200D U+2640 U+FE0F
-🤺 person fencing; U+1F93A
-🏇 horse racing; U+1F3C7
-⛷ skier; U+26F7
-🏂 snowboarder; U+1F3C2
-🏌 person golfing; U+1F3CC
-🏌️‍♂️ man golfing; U+1F3CC U+FE0F U+200D U+2642 U+FE0F
-🏌️‍♀️ woman golfing; U+1F3CC U+FE0F U+200D U+2640 U+FE0F
-🏄 person surfing; U+1F3C4
-🏄‍♂️ man surfing; U+1F3C4 U+200D U+2642 U+FE0F
-🏄‍♀️ woman surfing; U+1F3C4 U+200D U+2640 U+FE0F
-🚣 person rowing boat; U+1F6A3
-🚣‍♂️ man rowing boat; U+1F6A3 U+200D U+2642 U+FE0F
-🚣‍♀️ woman rowing boat; U+1F6A3 U+200D U+2640 U+FE0F
-🏊 person swimming; U+1F3CA
-🏊‍♂️ man swimming; U+1F3CA U+200D U+2642 U+FE0F
-🏊‍♀️ woman swimming; U+1F3CA U+200D U+2640 U+FE0F
-⛹ person bouncing ball; U+26F9
-⛹️‍♂️ man bouncing ball; U+26F9 U+FE0F U+200D U+2642 U+FE0F
-⛹️‍♀️ woman bouncing ball; U+26F9 U+FE0F U+200D U+2640 U+FE0F
-🏋 person lifting weights; U+1F3CB
-🏋️‍♂️ man lifting weights; U+1F3CB U+FE0F U+200D U+2642 U+FE0F
-🏋️‍♀️ woman lifting weights; U+1F3CB U+FE0F U+200D U+2640 U+FE0F
-🚴 person biking; U+1F6B4
-🚴‍♂️ man biking; U+1F6B4 U+200D U+2642 U+FE0F
-🚴‍♀️ woman biking; U+1F6B4 U+200D U+2640 U+FE0F
-🚵 person mountain biking; U+1F6B5
-🚵‍♂️ man mountain biking; U+1F6B5 U+200D U+2642 U+FE0F
-🚵‍♀️ woman mountain biking; U+1F6B5 U+200D U+2640 U+FE0F
-🤸 person cartwheeling; U+1F938
-🤸‍♂️ man cartwheeling; U+1F938 U+200D U+2642 U+FE0F
-🤸‍♀️ woman cartwheeling; U+1F938 U+200D U+2640 U+FE0F
-🤼 people wrestling; U+1F93C
-🤼‍♂️ men wrestling; U+1F93C U+200D U+2642 U+FE0F
-🤼‍♀️ women wrestling; U+1F93C U+200D U+2640 U+FE0F
-🤽 person playing water polo; U+1F93D
-🤽‍♂️ man playing water polo; U+1F93D U+200D U+2642 U+FE0F
-🤽‍♀️ woman playing water polo; U+1F93D U+200D U+2640 U+FE0F
-🤾 person playing handball; U+1F93E
-🤾‍♂️ man playing handball; U+1F93E U+200D U+2642 U+FE0F
-🤾‍♀️ woman playing handball; U+1F93E U+200D U+2640 U+FE0F
-🤹 person juggling; U+1F939
-🤹‍♂️ man juggling; U+1F939 U+200D U+2642 U+FE0F
-🤹‍♀️ woman juggling; U+1F939 U+200D U+2640 U+FE0F
-🧘 person in lotus position; U+1F9D8
-🧘‍♂️ man in lotus position; U+1F9D8 U+200D U+2642 U+FE0F
-🧘‍♀️ woman in lotus position; U+1F9D8 U+200D U+2640 U+FE0F
-🛀 person taking bath; U+1F6C0
-🛌 person in bed; U+1F6CC
-👭 women holding hands; U+1F46D
-👫 woman and man holding hands; U+1F46B
-👬 men holding hands; U+1F46C
-💏 kiss; U+1F48F
-👩‍❤️‍💋‍👨 kiss: woman, man; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F468
-👨‍❤️‍💋‍👨 kiss: man, man; U+1F468 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F468
-👩‍❤️‍💋‍👩 kiss: woman, woman; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F469
-💑 couple with heart; U+1F491
-👩‍❤️‍👨 couple with heart: woman, man; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F468
-👨‍❤️‍👨 couple with heart: man, man; U+1F468 U+200D U+2764 U+FE0F U+200D U+1F468
-👩‍❤️‍👩 couple with heart: woman, woman; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F469
-👪 family; U+1F46A
-👨‍👩‍👦 family: man, woman, boy; U+1F468 U+200D U+1F469 U+200D U+1F466
-👨‍👩‍👧 family: man, woman, girl; U+1F468 U+200D U+1F469 U+200D U+1F467
-👨‍👩‍👧‍👦 family: man, woman, girl, boy; U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466
-👨‍👩‍👦‍👦 family: man, woman, boy, boy; U+1F468 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466
-👨‍👩‍👧‍👧 family: man, woman, girl, girl; U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467
-👨‍👨‍👦 family: man, man, boy; U+1F468 U+200D U+1F468 U+200D U+1F466
-👨‍👨‍👧 family: man, man, girl; U+1F468 U+200D U+1F468 U+200D U+1F467
-👨‍👨‍👧‍👦 family: man, man, girl, boy; U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F466
-👨‍👨‍👦‍👦 family: man, man, boy, boy; U+1F468 U+200D U+1F468 U+200D U+1F466 U+200D U+1F466
-👨‍👨‍👧‍👧 family: man, man, girl, girl; U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F467
-👩‍👩‍👦 family: woman, woman, boy; U+1F469 U+200D U+1F469 U+200D U+1F466
-👩‍👩‍👧 family: woman, woman, girl; U+1F469 U+200D U+1F469 U+200D U+1F467
-👩‍👩‍👧‍👦 family: woman, woman, girl, boy; U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466
-👩‍👩‍👦‍👦 family: woman, woman, boy, boy; U+1F469 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466
-👩‍👩‍👧‍👧 family: woman, woman, girl, girl; U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467
-👨‍👦 family: man, boy; U+1F468 U+200D U+1F466
-👨‍👦‍👦 family: man, boy, boy; U+1F468 U+200D U+1F466 U+200D U+1F466
-👨‍👧 family: man, girl; U+1F468 U+200D U+1F467
-👨‍👧‍👦 family: man, girl, boy; U+1F468 U+200D U+1F467 U+200D U+1F466
-👨‍👧‍👧 family: man, girl, girl; U+1F468 U+200D U+1F467 U+200D U+1F467
-👩‍👦 family: woman, boy; U+1F469 U+200D U+1F466
-👩‍👦‍👦 family: woman, boy, boy; U+1F469 U+200D U+1F466 U+200D U+1F466
-👩‍👧 family: woman, girl; U+1F469 U+200D U+1F467
-👩‍👧‍👦 family: woman, girl, boy; U+1F469 U+200D U+1F467 U+200D U+1F466
-👩‍👧‍👧 family: woman, girl, girl; U+1F469 U+200D U+1F467 U+200D U+1F467
-🗣 speaking head; U+1F5E3
-👤 bust in silhouette; U+1F464
-👥 busts in silhouette; U+1F465
-👣 footprints; U+1F463
-🦰 red hair; U+1F9B0
-🦱 curly hair; U+1F9B1
-🦳 white hair; U+1F9B3
-🦲 bald; U+1F9B2
-🐵 monkey face; U+1F435
-🐒 monkey; U+1F412
-🦍 gorilla; U+1F98D
-🐶 dog face; U+1F436
-🐕 dog; U+1F415
-🐩 poodle; U+1F429
-🐺 wolf face; U+1F43A
-🦊 fox face; U+1F98A
-🦝 raccoon; U+1F99D
-🐱 cat face; U+1F431
-🐈 cat; U+1F408
-🦁 lion face; U+1F981
-🐯 tiger face; U+1F42F
-🐅 tiger; U+1F405
-🐆 leopard; U+1F406
-🐴 horse face; U+1F434
-🐎 horse; U+1F40E
-🦄 unicorn face; U+1F984
-🦓 zebra; U+1F993
-🦌 deer; U+1F98C
-🐮 cow face; U+1F42E
-🐂 ox; U+1F402
-🐃 water buffalo; U+1F403
-🐄 cow; U+1F404
-🐷 pig face; U+1F437
-🐖 pig; U+1F416
-🐗 boar; U+1F417
-🐽 pig nose; U+1F43D
-🐏 ram; U+1F40F
-🐑 ewe; U+1F411
-🐐 goat; U+1F410
-🐪 camel; U+1F42A
-🐫 two-hump camel; U+1F42B
-🦙 llama; U+1F999
-🦒 giraffe; U+1F992
-🐘 elephant; U+1F418
-🦏 rhinoceros; U+1F98F
-🦛 hippopotamus; U+1F99B
-🐭 mouse face; U+1F42D
-🐁 mouse; U+1F401
-🐀 rat; U+1F400
-🐹 hamster face; U+1F439
-🐰 rabbit face; U+1F430
-🐇 rabbit; U+1F407
-🐿 chipmunk; U+1F43F
-🦔 hedgehog; U+1F994
-🦇 bat; U+1F987
-🐻 bear face; U+1F43B
-🐨 koala; U+1F428
-🐼 panda face; U+1F43C
-🦘 kangaroo; U+1F998
-🦡 badger; U+1F9A1
-🐾 paw prints; U+1F43E
-🦃 turkey; U+1F983
-🐔 chicken; U+1F414
-🐓 rooster; U+1F413
-🐣 hatching chick; U+1F423
-🐤 baby chick; U+1F424
-🐥 front-facing baby chick; U+1F425
-🐦 bird; U+1F426
-🐧 penguin; U+1F427
-🕊 dove; U+1F54A
-🦅 eagle; U+1F985
-🦆 duck; U+1F986
-🦢 swan; U+1F9A2
-🦉 owl; U+1F989
-🦚 peacock; U+1F99A
-🦜 parrot; U+1F99C
-🐸 frog face; U+1F438
-🐊 crocodile; U+1F40A
-🐢 turtle; U+1F422
-🦎 lizard; U+1F98E
-🐍 snake; U+1F40D
-🐲 dragon face; U+1F432
-🐉 dragon; U+1F409
-🦕 sauropod; U+1F995
-🦖 T-Rex; U+1F996
-🐳 spouting whale; U+1F433
-🐋 whale; U+1F40B
-🐬 dolphin; U+1F42C
-🐟 fish; U+1F41F
-🐠 tropical fish; U+1F420
-🐡 blowfish; U+1F421
-🦈 shark; U+1F988
-🐙 octopus; U+1F419
-🐚 spiral shell; U+1F41A
-🐌 snail; U+1F40C
-🦋 butterfly; U+1F98B
-🐛 bug; U+1F41B
-🐜 ant; U+1F41C
-🐝 honeybee; U+1F41D
-🐞 lady beetle; U+1F41E
-🦗 cricket; U+1F997
-🕷 spider; U+1F577
-🕸 spider web; U+1F578
-🦂 scorpion; U+1F982
-🦟 mosquito; U+1F99F
-🦠 microbe; U+1F9A0
-💐 bouquet; U+1F490
-🌸 cherry blossom; U+1F338
-💮 white flower; U+1F4AE
-🏵 rosette; U+1F3F5
-🌹 rose; U+1F339
-🥀 wilted flower; U+1F940
-🌺 hibiscus; U+1F33A
-🌻 sunflower; U+1F33B
-🌼 blossom; U+1F33C
-🌷 tulip; U+1F337
-🌱 seedling; U+1F331
-🌲 evergreen tree; U+1F332
-🌳 deciduous tree; U+1F333
-🌴 palm tree; U+1F334
-🌵 cactus; U+1F335
-🌾 sheaf of rice; U+1F33E
-🌿 herb; U+1F33F
-☘ shamrock; U+2618
-🍀 four leaf clover; U+1F340
-🍁 maple leaf; U+1F341
-🍂 fallen leaf; U+1F342
-🍃 leaf fluttering in wind; U+1F343
-🍇 grapes; U+1F347
-🍈 melon; U+1F348
-🍉 watermelon; U+1F349
-🍊 tangerine; U+1F34A
-🍋 lemon; U+1F34B
-🍌 banana; U+1F34C
-🍍 pineapple; U+1F34D
-🥭 mango; U+1F96D
-🍎 red apple; U+1F34E
-🍏 green apple; U+1F34F
-🍐 pear; U+1F350
-🍑 peach; U+1F351
-🍒 cherries; U+1F352
-🍓 strawberry; U+1F353
-🥝 kiwi fruit; U+1F95D
-🍅 tomato; U+1F345
-🥥 coconut; U+1F965
-🥑 avocado; U+1F951
-🍆 eggplant; U+1F346
-🥔 potato; U+1F954
-🥕 carrot; U+1F955
-🌽 ear of corn; U+1F33D
-🌶 hot pepper; U+1F336
-🥒 cucumber; U+1F952
-🥬 leafy green; U+1F96C
-🥦 broccoli; U+1F966
-🍄 mushroom; U+1F344
-🥜 peanuts; U+1F95C
-🌰 chestnut; U+1F330
-🍞 bread; U+1F35E
-🥐 croissant; U+1F950
-🥖 baguette bread; U+1F956
-🥨 pretzel; U+1F968
-🥯 bagel; U+1F96F
-🥞 pancakes; U+1F95E
-🧀 cheese wedge; U+1F9C0
-🍖 meat on bone; U+1F356
-🍗 poultry leg; U+1F357
-🥩 cut of meat; U+1F969
-🥓 bacon; U+1F953
-🍔 hamburger; U+1F354
-🍟 french fries; U+1F35F
-🍕 pizza; U+1F355
-🌭 hot dog; U+1F32D
-🥪 sandwich; U+1F96A
-🌮 taco; U+1F32E
-🌯 burrito; U+1F32F
-🥙 stuffed flatbread; U+1F959
-🥚 egg; U+1F95A
-🍳 cooking; U+1F373
-🥘 shallow pan of food; U+1F958
-🍲 pot of food; U+1F372
-🥣 bowl with spoon; U+1F963
-🥗 green salad; U+1F957
-🍿 popcorn; U+1F37F
-🧂 salt; U+1F9C2
-🥫 canned food; U+1F96B
-🍱 bento box; U+1F371
-🍘 rice cracker; U+1F358
-🍙 rice ball; U+1F359
-🍚 cooked rice; U+1F35A
-🍛 curry rice; U+1F35B
-🍜 steaming bowl; U+1F35C
-🍝 spaghetti; U+1F35D
-🍠 roasted sweet potato; U+1F360
-🍢 oden; U+1F362
-🍣 sushi; U+1F363
-🍤 fried shrimp; U+1F364
-🍥 fish cake with swirl; U+1F365
-🥮 moon cake; U+1F96E
-🍡 dango; U+1F361
-🥟 dumpling; U+1F95F
-🥠 fortune cookie; U+1F960
-🥡 takeout box; U+1F961
-🦀 crab; U+1F980
-🦞 lobster; U+1F99E
-🦐 shrimp; U+1F990
-🦑 squid; U+1F991
-🍦 soft ice cream; U+1F366
-🍧 shaved ice; U+1F367
-🍨 ice cream; U+1F368
-🍩 doughnut; U+1F369
-🍪 cookie; U+1F36A
-🎂 birthday cake; U+1F382
-🍰 shortcake; U+1F370
-🧁 cupcake; U+1F9C1
-🥧 pie; U+1F967
-🍫 chocolate bar; U+1F36B
-🍬 candy; U+1F36C
-🍭 lollipop; U+1F36D
-🍮 custard; U+1F36E
-🍯 honey pot; U+1F36F
-🍼 baby bottle; U+1F37C
-🥛 glass of milk; U+1F95B
-☕ hot beverage; U+2615
-🍵 teacup without handle; U+1F375
-🍶 sake; U+1F376
-🍾 bottle with popping cork; U+1F37E
-🍷 wine glass; U+1F377
-🍸 cocktail glass; U+1F378
-🍹 tropical drink; U+1F379
-🍺 beer mug; U+1F37A
-🍻 clinking beer mugs; U+1F37B
-🥂 clinking glasses; U+1F942
-🥃 tumbler glass; U+1F943
-🥤 cup with straw; U+1F964
-🥢 chopsticks; U+1F962
-🍽 fork and knife with plate; U+1F37D
-🍴 fork and knife; U+1F374
-🥄 spoon; U+1F944
-🔪 kitchen knife; U+1F52A
-🏺 amphora; U+1F3FA
-🌍 globe showing Europe-Africa; U+1F30D
-🌎 globe showing Americas; U+1F30E
-🌏 globe showing Asia-Australia; U+1F30F
-🌐 globe with meridians; U+1F310
-🗺 world map; U+1F5FA
-🗾 map of Japan; U+1F5FE
-🧭 compass; U+1F9ED
-🏔 snow-capped mountain; U+1F3D4
-⛰ mountain; U+26F0
-🌋 volcano; U+1F30B
-🗻 mount fuji; U+1F5FB
-🏕 camping; U+1F3D5
-🏖 beach with umbrella; U+1F3D6
-🏜 desert; U+1F3DC
-🏝 desert island; U+1F3DD
-🏞 national park; U+1F3DE
-🏟 stadium; U+1F3DF
-🏛 classical building; U+1F3DB
-🏗 building construction; U+1F3D7
-🧱 brick; U+1F9F1
-🏘 houses; U+1F3D8
-🏚 derelict house; U+1F3DA
-🏠 house; U+1F3E0
-🏡 house with garden; U+1F3E1
-🏢 office building; U+1F3E2
-🏣 Japanese post office; U+1F3E3
-🏤 post office; U+1F3E4
-🏥 hospital; U+1F3E5
-🏦 bank; U+1F3E6
-🏨 hotel; U+1F3E8
-🏩 love hotel; U+1F3E9
-🏪 convenience store; U+1F3EA
-🏫 school; U+1F3EB
-🏬 department store; U+1F3EC
-🏭 factory; U+1F3ED
-🏯 Japanese castle; U+1F3EF
-🏰 castle; U+1F3F0
-💒 wedding; U+1F492
-🗼 Tokyo tower; U+1F5FC
-🗽 Statue of Liberty; U+1F5FD
-⛪ church; U+26EA
-🕌 mosque; U+1F54C
-🕍 synagogue; U+1F54D
-⛩ shinto shrine; U+26E9
-🕋 kaaba; U+1F54B
-⛲ fountain; U+26F2
-⛺ tent; U+26FA
-🌁 foggy; U+1F301
-🌃 night with stars; U+1F303
-🏙 cityscape; U+1F3D9
-🌄 sunrise over mountains; U+1F304
-🌅 sunrise; U+1F305
-🌆 cityscape at dusk; U+1F306
-🌇 sunset; U+1F307
-🌉 bridge at night; U+1F309
-♨ hot springs; U+2668
-🌌 milky way; U+1F30C
-🎠 carousel horse; U+1F3A0
-🎡 ferris wheel; U+1F3A1
-🎢 roller coaster; U+1F3A2
-💈 barber pole; U+1F488
-🎪 circus tent; U+1F3AA
-🚂 locomotive; U+1F682
-🚃 railway car; U+1F683
-🚄 high-speed train; U+1F684
-🚅 bullet train; U+1F685
-🚆 train; U+1F686
-🚇 metro; U+1F687
-🚈 light rail; U+1F688
-🚉 station; U+1F689
-🚊 tram; U+1F68A
-🚝 monorail; U+1F69D
-🚞 mountain railway; U+1F69E
-🚋 tram car; U+1F68B
-🚌 bus; U+1F68C
-🚍 oncoming bus; U+1F68D
-🚎 trolleybus; U+1F68E
-🚐 minibus; U+1F690
-🚑 ambulance; U+1F691
-🚒 fire engine; U+1F692
-🚓 police car; U+1F693
-🚔 oncoming police car; U+1F694
-🚕 taxi; U+1F695
-🚖 oncoming taxi; U+1F696
-🚗 automobile; U+1F697
-🚘 oncoming automobile; U+1F698
-🚙 sport utility vehicle; U+1F699
-🚚 delivery truck; U+1F69A
-🚛 articulated lorry; U+1F69B
-🚜 tractor; U+1F69C
-🏎 racing car; U+1F3CE
-🏍 motorcycle; U+1F3CD
-🛵 motor scooter; U+1F6F5
-🚲 bicycle; U+1F6B2
-🛴 kick scooter; U+1F6F4
-🛹 skateboard; U+1F6F9
-🚏 bus stop; U+1F68F
-🛣 motorway; U+1F6E3
-🛤 railway track; U+1F6E4
-🛢 oil drum; U+1F6E2
-⛽ fuel pump; U+26FD
-🚨 police car light; U+1F6A8
-🚥 horizontal traffic light; U+1F6A5
-🚦 vertical traffic light; U+1F6A6
-🛑 stop sign; U+1F6D1
-🚧 construction; U+1F6A7
-⚓ anchor; U+2693
-⛵ sailboat; U+26F5
-🛶 canoe; U+1F6F6
-🚤 speedboat; U+1F6A4
-🛳 passenger ship; U+1F6F3
-⛴ ferry; U+26F4
-🛥 motor boat; U+1F6E5
-🚢 ship; U+1F6A2
-✈ airplane; U+2708
-🛩 small airplane; U+1F6E9
-🛫 airplane departure; U+1F6EB
-🛬 airplane arrival; U+1F6EC
-💺 seat; U+1F4BA
-🚁 helicopter; U+1F681
-🚟 suspension railway; U+1F69F
-🚠 mountain cableway; U+1F6A0
-🚡 aerial tramway; U+1F6A1
-🛰 satellite; U+1F6F0
-🚀 rocket; U+1F680
-🛸 flying saucer; U+1F6F8
-🛎 bellhop bell; U+1F6CE
-🧳 luggage; U+1F9F3
-⌛ hourglass done; U+231B
-⏳ hourglass not done; U+23F3
-⌚ watch; U+231A
-⏰ alarm clock; U+23F0
-⏱ stopwatch; U+23F1
-⏲ timer clock; U+23F2
-🕰 mantelpiece clock; U+1F570
-🕛 twelve o’clock; U+1F55B
-🕧 twelve-thirty; U+1F567
-🕐 one o’clock; U+1F550
-🕜 one-thirty; U+1F55C
-🕑 two o’clock; U+1F551
-🕝 two-thirty; U+1F55D
-🕒 three o’clock; U+1F552
-🕞 three-thirty; U+1F55E
-🕓 four o’clock; U+1F553
-🕟 four-thirty; U+1F55F
-🕔 five o’clock; U+1F554
-🕠 five-thirty; U+1F560
-🕕 six o’clock; U+1F555
-🕡 six-thirty; U+1F561
-🕖 seven o’clock; U+1F556
-🕢 seven-thirty; U+1F562
-🕗 eight o’clock; U+1F557
-🕣 eight-thirty; U+1F563
-🕘 nine o’clock; U+1F558
-🕤 nine-thirty; U+1F564
-🕙 ten o’clock; U+1F559
-🕥 ten-thirty; U+1F565
-🕚 eleven o’clock; U+1F55A
-🕦 eleven-thirty; U+1F566
-🌑 new moon; U+1F311
-🌒 waxing crescent moon; U+1F312
-🌓 first quarter moon; U+1F313
-🌔 waxing gibbous moon; U+1F314
-🌕 full moon; U+1F315
-🌖 waning gibbous moon; U+1F316
-🌗 last quarter moon; U+1F317
-🌘 waning crescent moon; U+1F318
-🌙 crescent moon; U+1F319
-🌚 new moon face; U+1F31A
-🌛 first quarter moon face; U+1F31B
-🌜 last quarter moon face; U+1F31C
-🌡 thermometer; U+1F321
-☀ sun; U+2600
-🌝 full moon face; U+1F31D
-🌞 sun with face; U+1F31E
-⭐ star; U+2B50
-🌟 glowing star; U+1F31F
-🌠 shooting star; U+1F320
-☁ cloud; U+2601
-⛅ sun behind cloud; U+26C5
-⛈ cloud with lightning and rain; U+26C8
-🌤 sun behind small cloud; U+1F324
-🌥 sun behind large cloud; U+1F325
-🌦 sun behind rain cloud; U+1F326
-🌧 cloud with rain; U+1F327
-🌨 cloud with snow; U+1F328
-🌩 cloud with lightning; U+1F329
-🌪 tornado; U+1F32A
-🌫 fog; U+1F32B
-🌬 wind face; U+1F32C
-🌀 cyclone; U+1F300
-🌈 rainbow; U+1F308
-🌂 closed umbrella; U+1F302
-☂ umbrella; U+2602
-☔ umbrella with rain drops; U+2614
-⛱ umbrella on ground; U+26F1
-⚡ high voltage; U+26A1
-❄ snowflake; U+2744
-☃ snowman; U+2603
-⛄ snowman without snow; U+26C4
-☄ comet; U+2604
-🔥 fire; U+1F525
-💧 droplet; U+1F4A7
-🌊 water wave; U+1F30A
-🎃 jack-o-lantern; U+1F383
-🎄 Christmas tree; U+1F384
-🎆 fireworks; U+1F386
-🎇 sparkler; U+1F387
-🧨 firecracker; U+1F9E8
-✨ sparkles; U+2728
-🎈 balloon; U+1F388
-🎉 party popper; U+1F389
-🎊 confetti ball; U+1F38A
-🎋 tanabata tree; U+1F38B
-🎍 pine decoration; U+1F38D
-🎎 Japanese dolls; U+1F38E
-🎏 carp streamer; U+1F38F
-🎐 wind chime; U+1F390
-🎑 moon viewing ceremony; U+1F391
-🧧 red envelope; U+1F9E7
-🎀 ribbon; U+1F380
-🎁 wrapped gift; U+1F381
-🎗 reminder ribbon; U+1F397
-🎟 admission tickets; U+1F39F
-🎫 ticket; U+1F3AB
-🎖 military medal; U+1F396
-🏆 trophy; U+1F3C6
-🏅 sports medal; U+1F3C5
-1st place medal; U+1F947 🥇
-2nd place medal; U+1F948 🥈
-3rd place medal; U+1F949 🥉
-⚽ soccer ball; U+26BD
-⚾ baseball; U+26BE
-🥎 softball; U+1F94E
-🏀 basketball; U+1F3C0
-🏐 volleyball; U+1F3D0
-🏈 american football; U+1F3C8
-🏉 rugby football; U+1F3C9
-🎾 tennis; U+1F3BE
-🥏 flying disc; U+1F94F
-🎳 bowling; U+1F3B3
-🏏 cricket game; U+1F3CF
-🏑 field hockey; U+1F3D1
-🏒 ice hockey; U+1F3D2
-🥍 lacrosse; U+1F94D
-🏓 ping pong; U+1F3D3
-🏸 badminton; U+1F3F8
-🥊 boxing glove; U+1F94A
-🥋 martial arts uniform; U+1F94B
-🥅 goal net; U+1F945
-⛳ flag in hole; U+26F3
-⛸ ice skate; U+26F8
-🎣 fishing pole; U+1F3A3
-🎽 running shirt; U+1F3BD
-🎿 skis; U+1F3BF
-🛷 sled; U+1F6F7
-🥌 curling stone; U+1F94C
-🎯 direct hit; U+1F3AF
-🎱 pool 8 ball; U+1F3B1
-🔮 crystal ball; U+1F52E
-🧿 nazar amulet; U+1F9FF
-🎮 video game; U+1F3AE
-🕹 joystick; U+1F579
-🎰 slot machine; U+1F3B0
-🎲 game die; U+1F3B2
-🧩 jigsaw; U+1F9E9
-🧸 teddy bear; U+1F9F8
-♠ spade suit; U+2660
-♥ heart suit; U+2665
-♦ diamond suit; U+2666
-♣ club suit; U+2663
-♟ chess pawn; U+265F
-🃏 joker; U+1F0CF
-🀄 mahjong red dragon; U+1F004
-🎴 flower playing cards; U+1F3B4
-🎭 performing arts; U+1F3AD
-🖼 framed picture; U+1F5BC
-🎨 artist palette; U+1F3A8
-🧵 thread; U+1F9F5
-🧶 yarn; U+1F9F6
-👓 glasses; U+1F453
-🕶 sunglasses; U+1F576
-🥽 goggles; U+1F97D
-🥼 lab coat; U+1F97C
-👔 necktie; U+1F454
-👕 t-shirt; U+1F455
-👖 jeans; U+1F456
-🧣 scarf; U+1F9E3
-🧤 gloves; U+1F9E4
-🧥 coat; U+1F9E5
-🧦 socks; U+1F9E6
-👗 dress; U+1F457
-👘 kimono; U+1F458
-👙 bikini; U+1F459
-👚 woman’s clothes; U+1F45A
-👛 purse; U+1F45B
-👜 handbag; U+1F45C
-👝 clutch bag; U+1F45D
-🛍 shopping bags; U+1F6CD
-🎒 backpack; U+1F392
-👞 man’s shoe; U+1F45E
-👟 running shoe; U+1F45F
-🥾 hiking boot; U+1F97E
-🥿 flat shoe; U+1F97F
-👠 high-heeled shoe; U+1F460
-👡 woman’s sandal; U+1F461
-👢 woman’s boot; U+1F462
-👑 crown; U+1F451
-👒 woman’s hat; U+1F452
-🎩 top hat; U+1F3A9
-🎓 graduation cap; U+1F393
-🧢 billed cap; U+1F9E2
-⛑ rescue worker’s helmet; U+26D1
-📿 prayer beads; U+1F4FF
-💄 lipstick; U+1F484
-💍 ring; U+1F48D
-💎 gem stone; U+1F48E
-🔇 muted speaker; U+1F507
-🔈 speaker low volume; U+1F508
-🔉 speaker medium volume; U+1F509
-🔊 speaker high volume; U+1F50A
-📢 loudspeaker; U+1F4E2
-📣 megaphone; U+1F4E3
-📯 postal horn; U+1F4EF
-🔔 bell; U+1F514
-🔕 bell with slash; U+1F515
-🎼 musical score; U+1F3BC
-🎵 musical note; U+1F3B5
-🎶 musical notes; U+1F3B6
-🎙 studio microphone; U+1F399
-🎚 level slider; U+1F39A
-🎛 control knobs; U+1F39B
-🎤 microphone; U+1F3A4
-🎧 headphone; U+1F3A7
-📻 radio; U+1F4FB
-🎷 saxophone; U+1F3B7
-🎸 guitar; U+1F3B8
-🎹 musical keyboard; U+1F3B9
-🎺 trumpet; U+1F3BA
-🎻 violin; U+1F3BB
-🥁 drum; U+1F941
-📱 mobile phone; U+1F4F1
-📲 mobile phone with arrow; U+1F4F2
-☎ telephone; U+260E
-📞 telephone receiver; U+1F4DE
-📟 pager; U+1F4DF
-📠 fax machine; U+1F4E0
-🔋 battery; U+1F50B
-🔌 electric plug; U+1F50C
-💻 laptop computer; U+1F4BB
-🖥 desktop computer; U+1F5A5
-🖨 printer; U+1F5A8
-⌨ keyboard; U+2328
-🖱 computer mouse; U+1F5B1
-🖲 trackball; U+1F5B2
-💽 computer disk; U+1F4BD
-💾 floppy disk; U+1F4BE
-💿 optical disk; U+1F4BF
-📀 dvd; U+1F4C0
-🧮 abacus; U+1F9EE
-🎥 movie camera; U+1F3A5
-🎞 film frames; U+1F39E
-📽 film projector; U+1F4FD
-🎬 clapper board; U+1F3AC
-📺 television; U+1F4FA
-📷 camera; U+1F4F7
-📸 camera with flash; U+1F4F8
-📹 video camera; U+1F4F9
-📼 videocassette; U+1F4FC
-🔍 magnifying glass tilted left; U+1F50D
-🔎 magnifying glass tilted right; U+1F50E
-🕯 candle; U+1F56F
-💡 light bulb; U+1F4A1
-🔦 flashlight; U+1F526
-🏮 red paper lantern; U+1F3EE
-📔 notebook with decorative cover; U+1F4D4
-📕 closed book; U+1F4D5
-📖 open book; U+1F4D6
-📗 green book; U+1F4D7
-📘 blue book; U+1F4D8
-📙 orange book; U+1F4D9
-📚 books; U+1F4DA
-📓 notebook; U+1F4D3
-📒 ledger; U+1F4D2
-📃 page with curl; U+1F4C3
-📜 scroll; U+1F4DC
-📄 page facing up; U+1F4C4
-📰 newspaper; U+1F4F0
-🗞 rolled-up newspaper; U+1F5DE
-📑 bookmark tabs; U+1F4D1
-🔖 bookmark; U+1F516
-🏷 label; U+1F3F7
-💰 money bag; U+1F4B0
-💴 yen banknote; U+1F4B4
-💵 dollar banknote; U+1F4B5
-💶 euro banknote; U+1F4B6
-💷 pound banknote; U+1F4B7
-💸 money with wings; U+1F4B8
-💳 credit card; U+1F4B3
-🧾 receipt; U+1F9FE
-💹 chart increasing with yen; U+1F4B9
-💱 currency exchange; U+1F4B1
-💲 heavy dollar sign; U+1F4B2
-✉ envelope; U+2709
-📧 e-mail; U+1F4E7
-📨 incoming envelope; U+1F4E8
-📩 envelope with arrow; U+1F4E9
-📤 outbox tray; U+1F4E4
-📥 inbox tray; U+1F4E5
-📦 package; U+1F4E6
-📫 closed mailbox with raised flag; U+1F4EB
-📪 closed mailbox with lowered flag; U+1F4EA
-📬 open mailbox with raised flag; U+1F4EC
-📭 open mailbox with lowered flag; U+1F4ED
-📮 postbox; U+1F4EE
-🗳 ballot box with ballot; U+1F5F3
-✏ pencil; U+270F
-✒ black nib; U+2712
-🖋 fountain pen; U+1F58B
-🖊 pen; U+1F58A
-🖌 paintbrush; U+1F58C
-🖍 crayon; U+1F58D
-📝 memo; U+1F4DD
-💼 briefcase; U+1F4BC
-📁 file folder; U+1F4C1
-📂 open file folder; U+1F4C2
-🗂 card index dividers; U+1F5C2
-📅 calendar; U+1F4C5
-📆 tear-off calendar; U+1F4C6
-🗒 spiral notepad; U+1F5D2
-🗓 spiral calendar; U+1F5D3
-📇 card index; U+1F4C7
-📈 chart increasing; U+1F4C8
-📉 chart decreasing; U+1F4C9
-📊 bar chart; U+1F4CA
-📋 clipboard; U+1F4CB
-📌 pushpin; U+1F4CC
-📍 round pushpin; U+1F4CD
-📎 paperclip; U+1F4CE
-🖇 linked paperclips; U+1F587
-📏 straight ruler; U+1F4CF
-📐 triangular ruler; U+1F4D0
-✂ scissors; U+2702
-🗃 card file box; U+1F5C3
-🗄 file cabinet; U+1F5C4
-🗑 wastebasket; U+1F5D1
-🔒 locked; U+1F512
-🔓 unlocked; U+1F513
-🔏 locked with pen; U+1F50F
-🔐 locked with key; U+1F510
-🔑 key; U+1F511
-🗝 old key; U+1F5DD
-🔨 hammer; U+1F528
-⛏ pick; U+26CF
-⚒ hammer and pick; U+2692
-🛠 hammer and wrench; U+1F6E0
-🗡 dagger; U+1F5E1
-⚔ crossed swords; U+2694
-🔫 pistol; U+1F52B
-🏹 bow and arrow; U+1F3F9
-🛡 shield; U+1F6E1
-🔧 wrench; U+1F527
-🔩 nut and bolt; U+1F529
-⚙ gear; U+2699
-🗜 clamp; U+1F5DC
-⚖ balance scale; U+2696
-🔗 link; U+1F517
-⛓ chains; U+26D3
-🧰 toolbox; U+1F9F0
-🧲 magnet; U+1F9F2
-⚗ alembic; U+2697
-🧪 test tube; U+1F9EA
-🧫 petri dish; U+1F9EB
-🧬 dna; U+1F9EC
-🔬 microscope; U+1F52C
-🔭 telescope; U+1F52D
-📡 satellite antenna; U+1F4E1
-💉 syringe; U+1F489
-💊 pill; U+1F48A
-🚪 door; U+1F6AA
-🛏 bed; U+1F6CF
-🛋 couch and lamp; U+1F6CB
-🚽 toilet; U+1F6BD
-🚿 shower; U+1F6BF
-🛁 bathtub; U+1F6C1
-🧴 lotion bottle; U+1F9F4
-🧷 safety pin; U+1F9F7
-🧹 broom; U+1F9F9
-🧺 basket; U+1F9FA
-🧻 roll of paper; U+1F9FB
-🧼 soap; U+1F9FC
-🧽 sponge; U+1F9FD
-🧯 fire extinguisher; U+1F9EF
-🛒 shopping cart; U+1F6D2
-🚬 cigarette; U+1F6AC
-⚰ coffin; U+26B0
-⚱ funeral urn; U+26B1
-🗿 moai; U+1F5FF
-🏧 ATM sign; U+1F3E7
-🚮 litter in bin sign; U+1F6AE
-🚰 potable water; U+1F6B0
-♿ wheelchair symbol; U+267F
-🚹 men’s room; U+1F6B9
-🚺 women’s room; U+1F6BA
-🚻 restroom; U+1F6BB
-🚼 baby symbol; U+1F6BC
-🚾 water closet; U+1F6BE
-🛂 passport control; U+1F6C2
-🛃 customs; U+1F6C3
-🛄 baggage claim; U+1F6C4
-🛅 left luggage; U+1F6C5
-⚠ warning; U+26A0
-🚸 children crossing; U+1F6B8
-⛔ no entry; U+26D4
-🚫 prohibited; U+1F6AB
-🚳 no bicycles; U+1F6B3
-🚭 no smoking; U+1F6AD
-🚯 no littering; U+1F6AF
-🚱 non-potable water; U+1F6B1
-🚷 no pedestrians; U+1F6B7
-📵 no mobile phones; U+1F4F5
-🔞 no one under eighteen; U+1F51E
-☢ radioactive; U+2622
-☣ biohazard; U+2623
-⬆ up arrow; U+2B06
-↗ up-right arrow; U+2197
-➡ right arrow; U+27A1
-↘ down-right arrow; U+2198
-⬇ down arrow; U+2B07
-↙ down-left arrow; U+2199
-⬅ left arrow; U+2B05
-↖ up-left arrow; U+2196
-↕ up-down arrow; U+2195
-↔ left-right arrow; U+2194
-↩ right arrow curving left; U+21A9
-↪ left arrow curving right; U+21AA
-⤴ right arrow curving up; U+2934
-⤵ right arrow curving down; U+2935
-🔃 clockwise vertical arrows; U+1F503
-🔄 counterclockwise arrows button; U+1F504
-🔙 BACK arrow; U+1F519
-🔚 END arrow; U+1F51A
-🔛 ON! arrow; U+1F51B
-🔜 SOON arrow; U+1F51C
-🔝 TOP arrow; U+1F51D
-🛐 place of worship; U+1F6D0
-⚛ atom symbol; U+269B
-🕉 om; U+1F549
-✡ star of David; U+2721
-☸ wheel of dharma; U+2638
-☯ yin yang; U+262F
-✝ latin cross; U+271D
-☦ orthodox cross; U+2626
-☪ star and crescent; U+262A
-☮ peace symbol; U+262E
-🕎 menorah; U+1F54E
-🔯 dotted six-pointed star; U+1F52F
-♈ Aries; U+2648
-♉ Taurus; U+2649
-♊ Gemini; U+264A
-♋ Cancer; U+264B
-♌ Leo; U+264C
-♍ Virgo; U+264D
-♎ Libra; U+264E
-♏ Scorpio; U+264F
-♐ Sagittarius; U+2650
-♑ Capricorn; U+2651
-♒ Aquarius; U+2652
-♓ Pisces; U+2653
-⛎ Ophiuchus; U+26CE
-🔀 shuffle tracks button; U+1F500
-🔁 repeat button; U+1F501
-🔂 repeat single button; U+1F502
-▶ play button; U+25B6
-⏩ fast-forward button; U+23E9
-⏭ next track button; U+23ED
-⏯ play or pause button; U+23EF
-◀ reverse button; U+25C0
-⏪ fast reverse button; U+23EA
-⏮ last track button; U+23EE
-🔼 upwards button; U+1F53C
-⏫ fast up button; U+23EB
-🔽 downwards button; U+1F53D
-⏬ fast down button; U+23EC
-⏸ pause button; U+23F8
-⏹ stop button; U+23F9
-⏺ record button; U+23FA
-⏏ eject button; U+23CF
-🎦 cinema; U+1F3A6
-🔅 dim button; U+1F505
-🔆 bright button; U+1F506
-📶 antenna bars; U+1F4F6
-📳 vibration mode; U+1F4F3
-📴 mobile phone off; U+1F4F4
-♀ female sign; U+2640
-♂ male sign; U+2642
-⚕ medical symbol; U+2695
-♾ infinity; U+267E
-♻ recycling symbol; U+267B
-⚜ fleur-de-lis; U+269C
-🔱 trident emblem; U+1F531
-📛 name badge; U+1F4DB
-🔰 Japanese symbol for beginner; U+1F530
-⭕ heavy large circle; U+2B55
-✅ white heavy check mark; U+2705
-☑ ballot box with check; U+2611
-✔ heavy check mark; U+2714
-✖ heavy multiplication x; U+2716
-❌ cross mark; U+274C
-❎ cross mark button; U+274E
-➕ heavy plus sign; U+2795
-➖ heavy minus sign; U+2796
-➗ heavy division sign; U+2797
-➰ curly loop; U+27B0
-➿ double curly loop; U+27BF
-〽 part alternation mark; U+303D
-✳ eight-spoked asterisk; U+2733
-✴ eight-pointed star; U+2734
-❇ sparkle; U+2747
-‼ double exclamation mark; U+203C
-⁉ exclamation question mark; U+2049
-❓ question mark; U+2753
-❔ white question mark; U+2754
-❕ white exclamation mark; U+2755
-❗ exclamation mark; U+2757
-〰 wavy dash; U+3030
-© copyright; U+00A9
-® registered; U+00AE
-™ trade mark; U+2122
-#️⃣ keycap: #; U+0023 U+FE0F U+20E3
-*️⃣ keycap: *; U+002A U+FE0F U+20E3
-0️⃣ keycap: 0; U+0030 U+FE0F U+20E3
-1️⃣ keycap: 1; U+0031 U+FE0F U+20E3
-2️⃣ keycap: 2; U+0032 U+FE0F U+20E3
-3️⃣ keycap: 3; U+0033 U+FE0F U+20E3
-4️⃣ keycap: 4; U+0034 U+FE0F U+20E3
-5️⃣ keycap: 5; U+0035 U+FE0F U+20E3
-6️⃣ keycap: 6; U+0036 U+FE0F U+20E3
-7️⃣ keycap: 7; U+0037 U+FE0F U+20E3
-8️⃣ keycap: 8; U+0038 U+FE0F U+20E3
-9️⃣ keycap: 9; U+0039 U+FE0F U+20E3
-🔟 keycap: 10; U+1F51F
-🔠 input latin uppercase; U+1F520
-🔡 input latin lowercase; U+1F521
-🔢 input numbers; U+1F522
-🔣 input symbols; U+1F523
-🔤 input latin letters; U+1F524
-🅰 A button (blood type); U+1F170
-🆎 AB button (blood type); U+1F18E
-🅱 B button (blood type); U+1F171
-🆑 CL button; U+1F191
-🆒 COOL button; U+1F192
-🆓 FREE button; U+1F193
-ℹ information; U+2139
-🆔 ID button; U+1F194
-Ⓜ circled M; U+24C2
-🆕 NEW button; U+1F195
-🆖 NG button; U+1F196
-🅾 O button (blood type); U+1F17E
-🆗 OK button; U+1F197
-🅿 P button; U+1F17F
-🆘 SOS button; U+1F198
-🆙 UP! button; U+1F199
-🆚 VS button; U+1F19A
-🈁 Japanese “here” button; U+1F201
-🈂 Japanese “service charge” button; U+1F202
-🈷 Japanese “monthly amount” button; U+1F237
-🈶 Japanese “not free of charge” button; U+1F236
-🈯 Japanese “reserved” button; U+1F22F
-🉐 Japanese “bargain” button; U+1F250
-🈹 Japanese “discount” button; U+1F239
-🈚 Japanese “free of charge” button; U+1F21A
-🈲 Japanese “prohibited” button; U+1F232
-🉑 Japanese “acceptable” button; U+1F251
-🈸 Japanese “application” button; U+1F238
-🈴 Japanese “passing grade” button; U+1F234
-🈳 Japanese “vacancy” button; U+1F233
-㊗ Japanese “congratulations” button; U+3297
-㊙ Japanese “secret” button; U+3299
-🈺 Japanese “open for business” button; U+1F23A
-🈵 Japanese “no vacancy” button; U+1F235
-🔴 red circle; U+1F534
-🔵 blue circle; U+1F535
-⚪ white circle; U+26AA
-⚫ black circle; U+26AB
-⬜ white large square; U+2B1C
-⬛ black large square; U+2B1B
-◼ black medium square; U+25FC
-◻ white medium square; U+25FB
-◽ white medium-small square; U+25FD
-◾ black medium-small square; U+25FE
-▫ white small square; U+25AB
-▪ black small square; U+25AA
-🔶 large orange diamond; U+1F536
-🔷 large blue diamond; U+1F537
-🔸 small orange diamond; U+1F538
-🔹 small blue diamond; U+1F539
-🔺 red triangle pointed up; U+1F53A
-🔻 red triangle pointed down; U+1F53B
-💠 diamond with a dot; U+1F4A0
-🔘 radio button; U+1F518
-🔲 black square button; U+1F532
-🔳 white square button; U+1F533
-🏁 chequered flag; U+1F3C1
-🚩 triangular flag; U+1F6A9
-🎌 crossed flags; U+1F38C
-🏴 black flag; U+1F3F4
-🏳 white flag; U+1F3F3
-🏳️‍🌈 rainbow flag; U+1F3F3 U+FE0F U+200D U+1F308
-🏴‍☠️ pirate flag; U+1F3F4 U+200D U+2620 U+FE0F
+
😀 grinning face; U+1F600
+😃 grinning face with big eyes; U+1F603
+😄 grinning face with smiling eyes; U+1F604
+😁 beaming face with smiling eyes; U+1F601
+😆 grinning squinting face; U+1F606
+😅 grinning face with sweat; U+1F605
+🤣 rolling on the floor laughing; U+1F923
+😂 face with tears of joy; U+1F602
+🙂 slightly smiling face; U+1F642
+🙃 upside-down face; U+1F643
+😉 winking face; U+1F609
+😊 smiling face with smiling eyes; U+1F60A
+😇 smiling face with halo; U+1F607
+🥰 smiling face with 3 hearts; U+1F970
+😍 smiling face with heart-eyes; U+1F60D
+🤩 star-struck; U+1F929
+😘 face blowing a kiss; U+1F618
+😗 kissing face; U+1F617
+☺ smiling face; U+263A
+😚 kissing face with closed eyes; U+1F61A
+😙 kissing face with smiling eyes; U+1F619
+😋 face savoring food; U+1F60B
+😛 face with tongue; U+1F61B
+😜 winking face with tongue; U+1F61C
+🤪 zany face; U+1F92A
+😝 squinting face with tongue; U+1F61D
+🤑 money-mouth face; U+1F911
+🤗 hugging face; U+1F917
+🤭 face with hand over mouth; U+1F92D
+🤫 shushing face; U+1F92B
+🤔 thinking face; U+1F914
+🤐 zipper-mouth face; U+1F910
+🤨 face with raised eyebrow; U+1F928
+😐 neutral face; U+1F610
+😑 expressionless face; U+1F611
+😶 face without mouth; U+1F636
+😏 smirking face; U+1F60F
+😒 unamused face; U+1F612
+🙄 face with rolling eyes; U+1F644
+😬 grimacing face; U+1F62C
+🤥 lying face; U+1F925
+😌 relieved face; U+1F60C
+😔 pensive face; U+1F614
+😪 sleepy face; U+1F62A
+🤤 drooling face; U+1F924
+😴 sleeping face; U+1F634
+😷 face with medical mask; U+1F637
+🤒 face with thermometer; U+1F912
+🤕 face with head-bandage; U+1F915
+🤢 nauseated face; U+1F922
+🤮 face vomiting; U+1F92E
+🤧 sneezing face; U+1F927
+🥵 hot face; U+1F975
+🥶 cold face; U+1F976
+🥴 woozy face; U+1F974
+😵 dizzy face; U+1F635
+🤯 exploding head; U+1F92F
+🤠 cowboy hat face; U+1F920
+🥳 partying face; U+1F973
+😎 smiling face with sunglasses; U+1F60E
+🤓 nerd face; U+1F913
+🧐 face with monocle; U+1F9D0
+😕 confused face; U+1F615
+😟 worried face; U+1F61F
+🙁 slightly frowning face; U+1F641
+☹ frowning face; U+2639
+😮 face with open mouth; U+1F62E
+😯 hushed face; U+1F62F
+😲 astonished face; U+1F632
+😳 flushed face; U+1F633
+🥺 pleading face; U+1F97A
+😦 frowning face with open mouth; U+1F626
+😧 anguished face; U+1F627
+😨 fearful face; U+1F628
+😰 anxious face with sweat; U+1F630
+😥 sad but relieved face; U+1F625
+😢 crying face; U+1F622
+😭 loudly crying face; U+1F62D
+😱 face screaming in fear; U+1F631
+😖 confounded face; U+1F616
+😣 persevering face; U+1F623
+😞 disappointed face; U+1F61E
+😓 downcast face with sweat; U+1F613
+😩 weary face; U+1F629
+😫 tired face; U+1F62B
+😤 face with steam from nose; U+1F624
+😡 pouting face; U+1F621
+😠 angry face; U+1F620
+🤬 face with symbols on mouth; U+1F92C
+😈 smiling face with horns; U+1F608
+👿 angry face with horns; U+1F47F
+💀 skull; U+1F480
+☠ skull and crossbones; U+2620
+💩 pile of poo; U+1F4A9
+🤡 clown face; U+1F921
+👹 ogre; U+1F479
+👺 goblin; U+1F47A
+👻 ghost; U+1F47B
+👽 alien; U+1F47D
+👾 alien monster; U+1F47E
+🤖 robot face; U+1F916
+😺 grinning cat face; U+1F63A
+😸 grinning cat face with smiling eyes; U+1F638
+😹 cat face with tears of joy; U+1F639
+😻 smiling cat face with heart-eyes; U+1F63B
+😼 cat face with wry smile; U+1F63C
+😽 kissing cat face; U+1F63D
+🙀 weary cat face; U+1F640
+😿 crying cat face; U+1F63F
+😾 pouting cat face; U+1F63E
+🙈 see-no-evil monkey; U+1F648
+🙉 hear-no-evil monkey; U+1F649
+🙊 speak-no-evil monkey; U+1F64A
+💋 kiss mark; U+1F48B
+💌 love letter; U+1F48C
+💘 heart with arrow; U+1F498
+💝 heart with ribbon; U+1F49D
+💖 sparkling heart; U+1F496
+💗 growing heart; U+1F497
+💓 beating heart; U+1F493
+💞 revolving hearts; U+1F49E
+💕 two hearts; U+1F495
+💟 heart decoration; U+1F49F
+❣ heavy heart exclamation; U+2763
+💔 broken heart; U+1F494
+❤ red heart; U+2764
+🧡 orange heart; U+1F9E1
+💛 yellow heart; U+1F49B
+💚 green heart; U+1F49A
+💙 blue heart; U+1F499
+💜 purple heart; U+1F49C
+🖤 black heart; U+1F5A4
+💯 hundred points; U+1F4AF
+💢 anger symbol; U+1F4A2
+💥 collision; U+1F4A5
+💫 dizzy; U+1F4AB
+💦 sweat droplets; U+1F4A6
+💨 dashing away; U+1F4A8
+🕳 hole; U+1F573
+💣 bomb; U+1F4A3
+💬 speech balloon; U+1F4AC
+👁️‍🗨️ eye in speech bubble; U+1F441 U+FE0F U+200D U+1F5E8 U+FE0F
+🗨 left speech bubble; U+1F5E8
+🗯 right anger bubble; U+1F5EF
+💭 thought balloon; U+1F4AD
+💤 zzz; U+1F4A4
+👋 waving hand; U+1F44B
+🤚 raised back of hand; U+1F91A
+🖐 hand with fingers splayed; U+1F590
+✋ raised hand; U+270B
+🖖 vulcan salute; U+1F596
+👌 OK hand; U+1F44C
+✌ victory hand; U+270C
+🤞 crossed fingers; U+1F91E
+🤟 love-you gesture; U+1F91F
+🤘 sign of the horns; U+1F918
+🤙 call me hand; U+1F919
+👈 backhand index pointing left; U+1F448
+👉 backhand index pointing right; U+1F449
+👆 backhand index pointing up; U+1F446
+🖕 middle finger; U+1F595
+👇 backhand index pointing down; U+1F447
+☝ index pointing up; U+261D
+👍 thumbs up; U+1F44D
+👎 thumbs down; U+1F44E
+✊ raised fist; U+270A
+👊 oncoming fist; U+1F44A
+🤛 left-facing fist; U+1F91B
+🤜 right-facing fist; U+1F91C
+👏 clapping hands; U+1F44F
+🙌 raising hands; U+1F64C
+👐 open hands; U+1F450
+🤲 palms up together; U+1F932
+🤝 handshake; U+1F91D
+🙏 folded hands; U+1F64F
+✍ writing hand; U+270D
+💅 nail polish; U+1F485
+🤳 selfie; U+1F933
+💪 flexed biceps; U+1F4AA
+🦵 leg; U+1F9B5
+🦶 foot; U+1F9B6
+👂 ear; U+1F442
+👃 nose; U+1F443
+🧠 brain; U+1F9E0
+🦷 tooth; U+1F9B7
+🦴 bone; U+1F9B4
+👀 eyes; U+1F440
+👁 eye; U+1F441
+👅 tongue; U+1F445
+👄 mouth; U+1F444
+👶 baby; U+1F476
+🧒 child; U+1F9D2
+👦 boy; U+1F466
+👧 girl; U+1F467
+🧑 person; U+1F9D1
+👱 person: blond hair; U+1F471
+👨 man; U+1F468
+👱‍♂️ man: blond hair; U+1F471 U+200D U+2642 U+FE0F
+👨‍🦰 man: red hair; U+1F468 U+200D U+1F9B0
+👨‍🦱 man: curly hair; U+1F468 U+200D U+1F9B1
+👨‍🦳 man: white hair; U+1F468 U+200D U+1F9B3
+👨‍🦲 man: bald; U+1F468 U+200D U+1F9B2
+🧔 man: beard; U+1F9D4
+👩 woman; U+1F469
+👱‍♀️ woman: blond hair; U+1F471 U+200D U+2640 U+FE0F
+👩‍🦰 woman: red hair; U+1F469 U+200D U+1F9B0
+👩‍🦱 woman: curly hair; U+1F469 U+200D U+1F9B1
+👩‍🦳 woman: white hair; U+1F469 U+200D U+1F9B3
+👩‍🦲 woman: bald; U+1F469 U+200D U+1F9B2
+🧓 older person; U+1F9D3
+👴 old man; U+1F474
+👵 old woman; U+1F475
+🙍 person frowning; U+1F64D
+🙍‍♂️ man frowning; U+1F64D U+200D U+2642 U+FE0F
+🙍‍♀️ woman frowning; U+1F64D U+200D U+2640 U+FE0F
+🙎 person pouting; U+1F64E
+🙎‍♂️ man pouting; U+1F64E U+200D U+2642 U+FE0F
+🙎‍♀️ woman pouting; U+1F64E U+200D U+2640 U+FE0F
+🙅 person gesturing NO; U+1F645
+🙅‍♂️ man gesturing NO; U+1F645 U+200D U+2642 U+FE0F
+🙅‍♀️ woman gesturing NO; U+1F645 U+200D U+2640 U+FE0F
+🙆 person gesturing OK; U+1F646
+🙆‍♂️ man gesturing OK; U+1F646 U+200D U+2642 U+FE0F
+🙆‍♀️ woman gesturing OK; U+1F646 U+200D U+2640 U+FE0F
+💁 person tipping hand; U+1F481
+💁‍♂️ man tipping hand; U+1F481 U+200D U+2642 U+FE0F
+💁‍♀️ woman tipping hand; U+1F481 U+200D U+2640 U+FE0F
+🙋 person raising hand; U+1F64B
+🙋‍♂️ man raising hand; U+1F64B U+200D U+2642 U+FE0F
+🙋‍♀️ woman raising hand; U+1F64B U+200D U+2640 U+FE0F
+🙇 person bowing; U+1F647
+🙇‍♂️ man bowing; U+1F647 U+200D U+2642 U+FE0F
+🙇‍♀️ woman bowing; U+1F647 U+200D U+2640 U+FE0F
+🤦 person facepalming; U+1F926
+🤦‍♂️ man facepalming; U+1F926 U+200D U+2642 U+FE0F
+🤦‍♀️ woman facepalming; U+1F926 U+200D U+2640 U+FE0F
+🤷 person shrugging; U+1F937
+🤷‍♂️ man shrugging; U+1F937 U+200D U+2642 U+FE0F
+🤷‍♀️ woman shrugging; U+1F937 U+200D U+2640 U+FE0F
+👨‍⚕️ man health worker; U+1F468 U+200D U+2695 U+FE0F
+👩‍⚕️ woman health worker; U+1F469 U+200D U+2695 U+FE0F
+👨‍🎓 man student; U+1F468 U+200D U+1F393
+👩‍🎓 woman student; U+1F469 U+200D U+1F393
+👨‍🏫 man teacher; U+1F468 U+200D U+1F3EB
+👩‍🏫 woman teacher; U+1F469 U+200D U+1F3EB
+👨‍⚖️ man judge; U+1F468 U+200D U+2696 U+FE0F
+👩‍⚖️ woman judge; U+1F469 U+200D U+2696 U+FE0F
+👨‍🌾 man farmer; U+1F468 U+200D U+1F33E
+👩‍🌾 woman farmer; U+1F469 U+200D U+1F33E
+👨‍🍳 man cook; U+1F468 U+200D U+1F373
+👩‍🍳 woman cook; U+1F469 U+200D U+1F373
+👨‍🔧 man mechanic; U+1F468 U+200D U+1F527
+👩‍🔧 woman mechanic; U+1F469 U+200D U+1F527
+👨‍🏭 man factory worker; U+1F468 U+200D U+1F3ED
+👩‍🏭 woman factory worker; U+1F469 U+200D U+1F3ED
+👨‍💼 man office worker; U+1F468 U+200D U+1F4BC
+👩‍💼 woman office worker; U+1F469 U+200D U+1F4BC
+👨‍🔬 man scientist; U+1F468 U+200D U+1F52C
+👩‍🔬 woman scientist; U+1F469 U+200D U+1F52C
+👨‍💻 man technologist; U+1F468 U+200D U+1F4BB
+👩‍💻 woman technologist; U+1F469 U+200D U+1F4BB
+👨‍🎤 man singer; U+1F468 U+200D U+1F3A4
+👩‍🎤 woman singer; U+1F469 U+200D U+1F3A4
+👨‍🎨 man artist; U+1F468 U+200D U+1F3A8
+👩‍🎨 woman artist; U+1F469 U+200D U+1F3A8
+👨‍✈️ man pilot; U+1F468 U+200D U+2708 U+FE0F
+👩‍✈️ woman pilot; U+1F469 U+200D U+2708 U+FE0F
+👨‍🚀 man astronaut; U+1F468 U+200D U+1F680
+👩‍🚀 woman astronaut; U+1F469 U+200D U+1F680
+👨‍🚒 man firefighter; U+1F468 U+200D U+1F692
+👩‍🚒 woman firefighter; U+1F469 U+200D U+1F692
+👮 police officer; U+1F46E
+👮‍♂️ man police officer; U+1F46E U+200D U+2642 U+FE0F
+👮‍♀️ woman police officer; U+1F46E U+200D U+2640 U+FE0F
+🕵 detective; U+1F575
+🕵️‍♂️ man detective; U+1F575 U+FE0F U+200D U+2642 U+FE0F
+🕵️‍♀️ woman detective; U+1F575 U+FE0F U+200D U+2640 U+FE0F
+💂 guard; U+1F482
+💂‍♂️ man guard; U+1F482 U+200D U+2642 U+FE0F
+💂‍♀️ woman guard; U+1F482 U+200D U+2640 U+FE0F
+👷 construction worker; U+1F477
+👷‍♂️ man construction worker; U+1F477 U+200D U+2642 U+FE0F
+👷‍♀️ woman construction worker; U+1F477 U+200D U+2640 U+FE0F
+🤴 prince; U+1F934
+👸 princess; U+1F478
+👳 person wearing turban; U+1F473
+👳‍♂️ man wearing turban; U+1F473 U+200D U+2642 U+FE0F
+👳‍♀️ woman wearing turban; U+1F473 U+200D U+2640 U+FE0F
+👲 man with Chinese cap; U+1F472
+🧕 woman with headscarf; U+1F9D5
+🤵 man in tuxedo; U+1F935
+👰 bride with veil; U+1F470
+🤰 pregnant woman; U+1F930
+🤱 breast-feeding; U+1F931
+👼 baby angel; U+1F47C
+🎅 Santa Claus; U+1F385
+🤶 Mrs. Claus; U+1F936
+🦸 superhero; U+1F9B8
+🦸‍♂️ man superhero; U+1F9B8 U+200D U+2642 U+FE0F
+🦸‍♀️ woman superhero; U+1F9B8 U+200D U+2640 U+FE0F
+🦹 supervillain; U+1F9B9
+🦹‍♂️ man supervillain; U+1F9B9 U+200D U+2642 U+FE0F
+🦹‍♀️ woman supervillain; U+1F9B9 U+200D U+2640 U+FE0F
+🧙 mage; U+1F9D9
+🧙‍♂️ man mage; U+1F9D9 U+200D U+2642 U+FE0F
+🧙‍♀️ woman mage; U+1F9D9 U+200D U+2640 U+FE0F
+🧚 fairy; U+1F9DA
+🧚‍♂️ man fairy; U+1F9DA U+200D U+2642 U+FE0F
+🧚‍♀️ woman fairy; U+1F9DA U+200D U+2640 U+FE0F
+🧛 vampire; U+1F9DB
+🧛‍♂️ man vampire; U+1F9DB U+200D U+2642 U+FE0F
+🧛‍♀️ woman vampire; U+1F9DB U+200D U+2640 U+FE0F
+🧜 merperson; U+1F9DC
+🧜‍♂️ merman; U+1F9DC U+200D U+2642 U+FE0F
+🧜‍♀️ mermaid; U+1F9DC U+200D U+2640 U+FE0F
+🧝 elf; U+1F9DD
+🧝‍♂️ man elf; U+1F9DD U+200D U+2642 U+FE0F
+🧝‍♀️ woman elf; U+1F9DD U+200D U+2640 U+FE0F
+🧞 genie; U+1F9DE
+🧞‍♂️ man genie; U+1F9DE U+200D U+2642 U+FE0F
+🧞‍♀️ woman genie; U+1F9DE U+200D U+2640 U+FE0F
+🧟 zombie; U+1F9DF
+🧟‍♂️ man zombie; U+1F9DF U+200D U+2642 U+FE0F
+🧟‍♀️ woman zombie; U+1F9DF U+200D U+2640 U+FE0F
+💆 person getting massage; U+1F486
+💆‍♂️ man getting massage; U+1F486 U+200D U+2642 U+FE0F
+💆‍♀️ woman getting massage; U+1F486 U+200D U+2640 U+FE0F
+💇 person getting haircut; U+1F487
+💇‍♂️ man getting haircut; U+1F487 U+200D U+2642 U+FE0F
+💇‍♀️ woman getting haircut; U+1F487 U+200D U+2640 U+FE0F
+🚶 person walking; U+1F6B6
+🚶‍♂️ man walking; U+1F6B6 U+200D U+2642 U+FE0F
+🚶‍♀️ woman walking; U+1F6B6 U+200D U+2640 U+FE0F
+🏃 person running; U+1F3C3
+🏃‍♂️ man running; U+1F3C3 U+200D U+2642 U+FE0F
+🏃‍♀️ woman running; U+1F3C3 U+200D U+2640 U+FE0F
+💃 woman dancing; U+1F483
+🕺 man dancing; U+1F57A
+🕴 man in suit levitating; U+1F574
+👯 people with bunny ears; U+1F46F
+👯‍♂️ men with bunny ears; U+1F46F U+200D U+2642 U+FE0F
+👯‍♀️ women with bunny ears; U+1F46F U+200D U+2640 U+FE0F
+🧖 person in steamy room; U+1F9D6
+🧖‍♂️ man in steamy room; U+1F9D6 U+200D U+2642 U+FE0F
+🧖‍♀️ woman in steamy room; U+1F9D6 U+200D U+2640 U+FE0F
+🧗 person climbing; U+1F9D7
+🧗‍♂️ man climbing; U+1F9D7 U+200D U+2642 U+FE0F
+🧗‍♀️ woman climbing; U+1F9D7 U+200D U+2640 U+FE0F
+🤺 person fencing; U+1F93A
+🏇 horse racing; U+1F3C7
+⛷ skier; U+26F7
+🏂 snowboarder; U+1F3C2
+🏌 person golfing; U+1F3CC
+🏌️‍♂️ man golfing; U+1F3CC U+FE0F U+200D U+2642 U+FE0F
+🏌️‍♀️ woman golfing; U+1F3CC U+FE0F U+200D U+2640 U+FE0F
+🏄 person surfing; U+1F3C4
+🏄‍♂️ man surfing; U+1F3C4 U+200D U+2642 U+FE0F
+🏄‍♀️ woman surfing; U+1F3C4 U+200D U+2640 U+FE0F
+🚣 person rowing boat; U+1F6A3
+🚣‍♂️ man rowing boat; U+1F6A3 U+200D U+2642 U+FE0F
+🚣‍♀️ woman rowing boat; U+1F6A3 U+200D U+2640 U+FE0F
+🏊 person swimming; U+1F3CA
+🏊‍♂️ man swimming; U+1F3CA U+200D U+2642 U+FE0F
+🏊‍♀️ woman swimming; U+1F3CA U+200D U+2640 U+FE0F
+⛹ person bouncing ball; U+26F9
+⛹️‍♂️ man bouncing ball; U+26F9 U+FE0F U+200D U+2642 U+FE0F
+⛹️‍♀️ woman bouncing ball; U+26F9 U+FE0F U+200D U+2640 U+FE0F
+🏋 person lifting weights; U+1F3CB
+🏋️‍♂️ man lifting weights; U+1F3CB U+FE0F U+200D U+2642 U+FE0F
+🏋️‍♀️ woman lifting weights; U+1F3CB U+FE0F U+200D U+2640 U+FE0F
+🚴 person biking; U+1F6B4
+🚴‍♂️ man biking; U+1F6B4 U+200D U+2642 U+FE0F
+🚴‍♀️ woman biking; U+1F6B4 U+200D U+2640 U+FE0F
+🚵 person mountain biking; U+1F6B5
+🚵‍♂️ man mountain biking; U+1F6B5 U+200D U+2642 U+FE0F
+🚵‍♀️ woman mountain biking; U+1F6B5 U+200D U+2640 U+FE0F
+🤸 person cartwheeling; U+1F938
+🤸‍♂️ man cartwheeling; U+1F938 U+200D U+2642 U+FE0F
+🤸‍♀️ woman cartwheeling; U+1F938 U+200D U+2640 U+FE0F
+🤼 people wrestling; U+1F93C
+🤼‍♂️ men wrestling; U+1F93C U+200D U+2642 U+FE0F
+🤼‍♀️ women wrestling; U+1F93C U+200D U+2640 U+FE0F
+🤽 person playing water polo; U+1F93D
+🤽‍♂️ man playing water polo; U+1F93D U+200D U+2642 U+FE0F
+🤽‍♀️ woman playing water polo; U+1F93D U+200D U+2640 U+FE0F
+🤾 person playing handball; U+1F93E
+🤾‍♂️ man playing handball; U+1F93E U+200D U+2642 U+FE0F
+🤾‍♀️ woman playing handball; U+1F93E U+200D U+2640 U+FE0F
+🤹 person juggling; U+1F939
+🤹‍♂️ man juggling; U+1F939 U+200D U+2642 U+FE0F
+🤹‍♀️ woman juggling; U+1F939 U+200D U+2640 U+FE0F
+🧘 person in lotus position; U+1F9D8
+🧘‍♂️ man in lotus position; U+1F9D8 U+200D U+2642 U+FE0F
+🧘‍♀️ woman in lotus position; U+1F9D8 U+200D U+2640 U+FE0F
+🛀 person taking bath; U+1F6C0
+🛌 person in bed; U+1F6CC
+👭 women holding hands; U+1F46D
+👫 woman and man holding hands; U+1F46B
+👬 men holding hands; U+1F46C
+💏 kiss; U+1F48F
+👩‍❤️‍💋‍👨 kiss: woman, man; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F468
+👨‍❤️‍💋‍👨 kiss: man, man; U+1F468 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F468
+👩‍❤️‍💋‍👩 kiss: woman, woman; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F48B U+200D U+1F469
+💑 couple with heart; U+1F491
+👩‍❤️‍👨 couple with heart: woman, man; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F468
+👨‍❤️‍👨 couple with heart: man, man; U+1F468 U+200D U+2764 U+FE0F U+200D U+1F468
+👩‍❤️‍👩 couple with heart: woman, woman; U+1F469 U+200D U+2764 U+FE0F U+200D U+1F469
+👪 family; U+1F46A
+👨‍👩‍👦 family: man, woman, boy; U+1F468 U+200D U+1F469 U+200D U+1F466
+👨‍👩‍👧 family: man, woman, girl; U+1F468 U+200D U+1F469 U+200D U+1F467
+👨‍👩‍👧‍👦 family: man, woman, girl, boy; U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466
+👨‍👩‍👦‍👦 family: man, woman, boy, boy; U+1F468 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466
+👨‍👩‍👧‍👧 family: man, woman, girl, girl; U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467
+👨‍👨‍👦 family: man, man, boy; U+1F468 U+200D U+1F468 U+200D U+1F466
+👨‍👨‍👧 family: man, man, girl; U+1F468 U+200D U+1F468 U+200D U+1F467
+👨‍👨‍👧‍👦 family: man, man, girl, boy; U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F466
+👨‍👨‍👦‍👦 family: man, man, boy, boy; U+1F468 U+200D U+1F468 U+200D U+1F466 U+200D U+1F466
+👨‍👨‍👧‍👧 family: man, man, girl, girl; U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F467
+👩‍👩‍👦 family: woman, woman, boy; U+1F469 U+200D U+1F469 U+200D U+1F466
+👩‍👩‍👧 family: woman, woman, girl; U+1F469 U+200D U+1F469 U+200D U+1F467
+👩‍👩‍👧‍👦 family: woman, woman, girl, boy; U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466
+👩‍👩‍👦‍👦 family: woman, woman, boy, boy; U+1F469 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466
+👩‍👩‍👧‍👧 family: woman, woman, girl, girl; U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467
+👨‍👦 family: man, boy; U+1F468 U+200D U+1F466
+👨‍👦‍👦 family: man, boy, boy; U+1F468 U+200D U+1F466 U+200D U+1F466
+👨‍👧 family: man, girl; U+1F468 U+200D U+1F467
+👨‍👧‍👦 family: man, girl, boy; U+1F468 U+200D U+1F467 U+200D U+1F466
+👨‍👧‍👧 family: man, girl, girl; U+1F468 U+200D U+1F467 U+200D U+1F467
+👩‍👦 family: woman, boy; U+1F469 U+200D U+1F466
+👩‍👦‍👦 family: woman, boy, boy; U+1F469 U+200D U+1F466 U+200D U+1F466
+👩‍👧 family: woman, girl; U+1F469 U+200D U+1F467
+👩‍👧‍👦 family: woman, girl, boy; U+1F469 U+200D U+1F467 U+200D U+1F466
+👩‍👧‍👧 family: woman, girl, girl; U+1F469 U+200D U+1F467 U+200D U+1F467
+🗣 speaking head; U+1F5E3
+👤 bust in silhouette; U+1F464
+👥 busts in silhouette; U+1F465
+👣 footprints; U+1F463
+🦰 red hair; U+1F9B0
+🦱 curly hair; U+1F9B1
+🦳 white hair; U+1F9B3
+🦲 bald; U+1F9B2
+🐵 monkey face; U+1F435
+🐒 monkey; U+1F412
+🦍 gorilla; U+1F98D
+🐶 dog face; U+1F436
+🐕 dog; U+1F415
+🐩 poodle; U+1F429
+🐺 wolf face; U+1F43A
+🦊 fox face; U+1F98A
+🦝 raccoon; U+1F99D
+🐱 cat face; U+1F431
+🐈 cat; U+1F408
+🦁 lion face; U+1F981
+🐯 tiger face; U+1F42F
+🐅 tiger; U+1F405
+🐆 leopard; U+1F406
+🐴 horse face; U+1F434
+🐎 horse; U+1F40E
+🦄 unicorn face; U+1F984
+🦓 zebra; U+1F993
+🦌 deer; U+1F98C
+🐮 cow face; U+1F42E
+🐂 ox; U+1F402
+🐃 water buffalo; U+1F403
+🐄 cow; U+1F404
+🐷 pig face; U+1F437
+🐖 pig; U+1F416
+🐗 boar; U+1F417
+🐽 pig nose; U+1F43D
+🐏 ram; U+1F40F
+🐑 ewe; U+1F411
+🐐 goat; U+1F410
+🐪 camel; U+1F42A
+🐫 two-hump camel; U+1F42B
+🦙 llama; U+1F999
+🦒 giraffe; U+1F992
+🐘 elephant; U+1F418
+🦏 rhinoceros; U+1F98F
+🦛 hippopotamus; U+1F99B
+🐭 mouse face; U+1F42D
+🐁 mouse; U+1F401
+🐀 rat; U+1F400
+🐹 hamster face; U+1F439
+🐰 rabbit face; U+1F430
+🐇 rabbit; U+1F407
+🐿 chipmunk; U+1F43F
+🦔 hedgehog; U+1F994
+🦇 bat; U+1F987
+🐻 bear face; U+1F43B
+🐨 koala; U+1F428
+🐼 panda face; U+1F43C
+🦘 kangaroo; U+1F998
+🦡 badger; U+1F9A1
+🐾 paw prints; U+1F43E
+🦃 turkey; U+1F983
+🐔 chicken; U+1F414
+🐓 rooster; U+1F413
+🐣 hatching chick; U+1F423
+🐤 baby chick; U+1F424
+🐥 front-facing baby chick; U+1F425
+🐦 bird; U+1F426
+🐧 penguin; U+1F427
+🕊 dove; U+1F54A
+🦅 eagle; U+1F985
+🦆 duck; U+1F986
+🦢 swan; U+1F9A2
+🦉 owl; U+1F989
+🦚 peacock; U+1F99A
+🦜 parrot; U+1F99C
+🐸 frog face; U+1F438
+🐊 crocodile; U+1F40A
+🐢 turtle; U+1F422
+🦎 lizard; U+1F98E
+🐍 snake; U+1F40D
+🐲 dragon face; U+1F432
+🐉 dragon; U+1F409
+🦕 sauropod; U+1F995
+🦖 T-Rex; U+1F996
+🐳 spouting whale; U+1F433
+🐋 whale; U+1F40B
+🐬 dolphin; U+1F42C
+🐟 fish; U+1F41F
+🐠 tropical fish; U+1F420
+🐡 blowfish; U+1F421
+🦈 shark; U+1F988
+🐙 octopus; U+1F419
+🐚 spiral shell; U+1F41A
+🐌 snail; U+1F40C
+🦋 butterfly; U+1F98B
+🐛 bug; U+1F41B
+🐜 ant; U+1F41C
+🐝 honeybee; U+1F41D
+🐞 lady beetle; U+1F41E
+🦗 cricket; U+1F997
+🕷 spider; U+1F577
+🕸 spider web; U+1F578
+🦂 scorpion; U+1F982
+🦟 mosquito; U+1F99F
+🦠 microbe; U+1F9A0
+💐 bouquet; U+1F490
+🌸 cherry blossom; U+1F338
+💮 white flower; U+1F4AE
+🏵 rosette; U+1F3F5
+🌹 rose; U+1F339
+🥀 wilted flower; U+1F940
+🌺 hibiscus; U+1F33A
+🌻 sunflower; U+1F33B
+🌼 blossom; U+1F33C
+🌷 tulip; U+1F337
+🌱 seedling; U+1F331
+🌲 evergreen tree; U+1F332
+🌳 deciduous tree; U+1F333
+🌴 palm tree; U+1F334
+🌵 cactus; U+1F335
+🌾 sheaf of rice; U+1F33E
+🌿 herb; U+1F33F
+☘ shamrock; U+2618
+🍀 four leaf clover; U+1F340
+🍁 maple leaf; U+1F341
+🍂 fallen leaf; U+1F342
+🍃 leaf fluttering in wind; U+1F343
+🍇 grapes; U+1F347
+🍈 melon; U+1F348
+🍉 watermelon; U+1F349
+🍊 tangerine; U+1F34A
+🍋 lemon; U+1F34B
+🍌 banana; U+1F34C
+🍍 pineapple; U+1F34D
+🥭 mango; U+1F96D
+🍎 red apple; U+1F34E
+🍏 green apple; U+1F34F
+🍐 pear; U+1F350
+🍑 peach; U+1F351
+🍒 cherries; U+1F352
+🍓 strawberry; U+1F353
+🥝 kiwi fruit; U+1F95D
+🍅 tomato; U+1F345
+🥥 coconut; U+1F965
+🥑 avocado; U+1F951
+🍆 eggplant; U+1F346
+🥔 potato; U+1F954
+🥕 carrot; U+1F955
+🌽 ear of corn; U+1F33D
+🌶 hot pepper; U+1F336
+🥒 cucumber; U+1F952
+🥬 leafy green; U+1F96C
+🥦 broccoli; U+1F966
+🍄 mushroom; U+1F344
+🥜 peanuts; U+1F95C
+🌰 chestnut; U+1F330
+🍞 bread; U+1F35E
+🥐 croissant; U+1F950
+🥖 baguette bread; U+1F956
+🥨 pretzel; U+1F968
+🥯 bagel; U+1F96F
+🥞 pancakes; U+1F95E
+🧀 cheese wedge; U+1F9C0
+🍖 meat on bone; U+1F356
+🍗 poultry leg; U+1F357
+🥩 cut of meat; U+1F969
+🥓 bacon; U+1F953
+🍔 hamburger; U+1F354
+🍟 french fries; U+1F35F
+🍕 pizza; U+1F355
+🌭 hot dog; U+1F32D
+🥪 sandwich; U+1F96A
+🌮 taco; U+1F32E
+🌯 burrito; U+1F32F
+🥙 stuffed flatbread; U+1F959
+🥚 egg; U+1F95A
+🍳 cooking; U+1F373
+🥘 shallow pan of food; U+1F958
+🍲 pot of food; U+1F372
+🥣 bowl with spoon; U+1F963
+🥗 green salad; U+1F957
+🍿 popcorn; U+1F37F
+🧂 salt; U+1F9C2
+🥫 canned food; U+1F96B
+🍱 bento box; U+1F371
+🍘 rice cracker; U+1F358
+🍙 rice ball; U+1F359
+🍚 cooked rice; U+1F35A
+🍛 curry rice; U+1F35B
+🍜 steaming bowl; U+1F35C
+🍝 spaghetti; U+1F35D
+🍠 roasted sweet potato; U+1F360
+🍢 oden; U+1F362
+🍣 sushi; U+1F363
+🍤 fried shrimp; U+1F364
+🍥 fish cake with swirl; U+1F365
+🥮 moon cake; U+1F96E
+🍡 dango; U+1F361
+🥟 dumpling; U+1F95F
+🥠 fortune cookie; U+1F960
+🥡 takeout box; U+1F961
+🦀 crab; U+1F980
+🦞 lobster; U+1F99E
+🦐 shrimp; U+1F990
+🦑 squid; U+1F991
+🍦 soft ice cream; U+1F366
+🍧 shaved ice; U+1F367
+🍨 ice cream; U+1F368
+🍩 doughnut; U+1F369
+🍪 cookie; U+1F36A
+🎂 birthday cake; U+1F382
+🍰 shortcake; U+1F370
+🧁 cupcake; U+1F9C1
+🥧 pie; U+1F967
+🍫 chocolate bar; U+1F36B
+🍬 candy; U+1F36C
+🍭 lollipop; U+1F36D
+🍮 custard; U+1F36E
+🍯 honey pot; U+1F36F
+🍼 baby bottle; U+1F37C
+🥛 glass of milk; U+1F95B
+☕ hot beverage; U+2615
+🍵 teacup without handle; U+1F375
+🍶 sake; U+1F376
+🍾 bottle with popping cork; U+1F37E
+🍷 wine glass; U+1F377
+🍸 cocktail glass; U+1F378
+🍹 tropical drink; U+1F379
+🍺 beer mug; U+1F37A
+🍻 clinking beer mugs; U+1F37B
+🥂 clinking glasses; U+1F942
+🥃 tumbler glass; U+1F943
+🥤 cup with straw; U+1F964
+🥢 chopsticks; U+1F962
+🍽 fork and knife with plate; U+1F37D
+🍴 fork and knife; U+1F374
+🥄 spoon; U+1F944
+🔪 kitchen knife; U+1F52A
+🏺 amphora; U+1F3FA
+🌍 globe showing Europe-Africa; U+1F30D
+🌎 globe showing Americas; U+1F30E
+🌏 globe showing Asia-Australia; U+1F30F
+🌐 globe with meridians; U+1F310
+🗺 world map; U+1F5FA
+🗾 map of Japan; U+1F5FE
+🧭 compass; U+1F9ED
+🏔 snow-capped mountain; U+1F3D4
+⛰ mountain; U+26F0
+🌋 volcano; U+1F30B
+🗻 mount fuji; U+1F5FB
+🏕 camping; U+1F3D5
+🏖 beach with umbrella; U+1F3D6
+🏜 desert; U+1F3DC
+🏝 desert island; U+1F3DD
+🏞 national park; U+1F3DE
+🏟 stadium; U+1F3DF
+🏛 classical building; U+1F3DB
+🏗 building construction; U+1F3D7
+🧱 brick; U+1F9F1
+🏘 houses; U+1F3D8
+🏚 derelict house; U+1F3DA
+🏠 house; U+1F3E0
+🏡 house with garden; U+1F3E1
+🏢 office building; U+1F3E2
+🏣 Japanese post office; U+1F3E3
+🏤 post office; U+1F3E4
+🏥 hospital; U+1F3E5
+🏦 bank; U+1F3E6
+🏨 hotel; U+1F3E8
+🏩 love hotel; U+1F3E9
+🏪 convenience store; U+1F3EA
+🏫 school; U+1F3EB
+🏬 department store; U+1F3EC
+🏭 factory; U+1F3ED
+🏯 Japanese castle; U+1F3EF
+🏰 castle; U+1F3F0
+💒 wedding; U+1F492
+🗼 Tokyo tower; U+1F5FC
+🗽 Statue of Liberty; U+1F5FD
+⛪ church; U+26EA
+🕌 mosque; U+1F54C
+🕍 synagogue; U+1F54D
+⛩ shinto shrine; U+26E9
+🕋 kaaba; U+1F54B
+⛲ fountain; U+26F2
+⛺ tent; U+26FA
+🌁 foggy; U+1F301
+🌃 night with stars; U+1F303
+🏙 cityscape; U+1F3D9
+🌄 sunrise over mountains; U+1F304
+🌅 sunrise; U+1F305
+🌆 cityscape at dusk; U+1F306
+🌇 sunset; U+1F307
+🌉 bridge at night; U+1F309
+♨ hot springs; U+2668
+🌌 milky way; U+1F30C
+🎠 carousel horse; U+1F3A0
+🎡 ferris wheel; U+1F3A1
+🎢 roller coaster; U+1F3A2
+💈 barber pole; U+1F488
+🎪 circus tent; U+1F3AA
+🚂 locomotive; U+1F682
+🚃 railway car; U+1F683
+🚄 high-speed train; U+1F684
+🚅 bullet train; U+1F685
+🚆 train; U+1F686
+🚇 metro; U+1F687
+🚈 light rail; U+1F688
+🚉 station; U+1F689
+🚊 tram; U+1F68A
+🚝 monorail; U+1F69D
+🚞 mountain railway; U+1F69E
+🚋 tram car; U+1F68B
+🚌 bus; U+1F68C
+🚍 oncoming bus; U+1F68D
+🚎 trolleybus; U+1F68E
+🚐 minibus; U+1F690
+🚑 ambulance; U+1F691
+🚒 fire engine; U+1F692
+🚓 police car; U+1F693
+🚔 oncoming police car; U+1F694
+🚕 taxi; U+1F695
+🚖 oncoming taxi; U+1F696
+🚗 automobile; U+1F697
+🚘 oncoming automobile; U+1F698
+🚙 sport utility vehicle; U+1F699
+🚚 delivery truck; U+1F69A
+🚛 articulated lorry; U+1F69B
+🚜 tractor; U+1F69C
+🏎 racing car; U+1F3CE
+🏍 motorcycle; U+1F3CD
+🛵 motor scooter; U+1F6F5
+🚲 bicycle; U+1F6B2
+🛴 kick scooter; U+1F6F4
+🛹 skateboard; U+1F6F9
+🚏 bus stop; U+1F68F
+🛣 motorway; U+1F6E3
+🛤 railway track; U+1F6E4
+🛢 oil drum; U+1F6E2
+⛽ fuel pump; U+26FD
+🚨 police car light; U+1F6A8
+🚥 horizontal traffic light; U+1F6A5
+🚦 vertical traffic light; U+1F6A6
+🛑 stop sign; U+1F6D1
+🚧 construction; U+1F6A7
+⚓ anchor; U+2693
+⛵ sailboat; U+26F5
+🛶 canoe; U+1F6F6
+🚤 speedboat; U+1F6A4
+🛳 passenger ship; U+1F6F3
+⛴ ferry; U+26F4
+🛥 motor boat; U+1F6E5
+🚢 ship; U+1F6A2
+✈ airplane; U+2708
+🛩 small airplane; U+1F6E9
+🛫 airplane departure; U+1F6EB
+🛬 airplane arrival; U+1F6EC
+💺 seat; U+1F4BA
+🚁 helicopter; U+1F681
+🚟 suspension railway; U+1F69F
+🚠 mountain cableway; U+1F6A0
+🚡 aerial tramway; U+1F6A1
+🛰 satellite; U+1F6F0
+🚀 rocket; U+1F680
+🛸 flying saucer; U+1F6F8
+🛎 bellhop bell; U+1F6CE
+🧳 luggage; U+1F9F3
+⌛ hourglass done; U+231B
+⏳ hourglass not done; U+23F3
+⌚ watch; U+231A
+⏰ alarm clock; U+23F0
+⏱ stopwatch; U+23F1
+⏲ timer clock; U+23F2
+🕰 mantelpiece clock; U+1F570
+🕛 twelve o’clock; U+1F55B
+🕧 twelve-thirty; U+1F567
+🕐 one o’clock; U+1F550
+🕜 one-thirty; U+1F55C
+🕑 two o’clock; U+1F551
+🕝 two-thirty; U+1F55D
+🕒 three o’clock; U+1F552
+🕞 three-thirty; U+1F55E
+🕓 four o’clock; U+1F553
+🕟 four-thirty; U+1F55F
+🕔 five o’clock; U+1F554
+🕠 five-thirty; U+1F560
+🕕 six o’clock; U+1F555
+🕡 six-thirty; U+1F561
+🕖 seven o’clock; U+1F556
+🕢 seven-thirty; U+1F562
+🕗 eight o’clock; U+1F557
+🕣 eight-thirty; U+1F563
+🕘 nine o’clock; U+1F558
+🕤 nine-thirty; U+1F564
+🕙 ten o’clock; U+1F559
+🕥 ten-thirty; U+1F565
+🕚 eleven o’clock; U+1F55A
+🕦 eleven-thirty; U+1F566
+🌑 new moon; U+1F311
+🌒 waxing crescent moon; U+1F312
+🌓 first quarter moon; U+1F313
+🌔 waxing gibbous moon; U+1F314
+🌕 full moon; U+1F315
+🌖 waning gibbous moon; U+1F316
+🌗 last quarter moon; U+1F317
+🌘 waning crescent moon; U+1F318
+🌙 crescent moon; U+1F319
+🌚 new moon face; U+1F31A
+🌛 first quarter moon face; U+1F31B
+🌜 last quarter moon face; U+1F31C
+🌡 thermometer; U+1F321
+☀ sun; U+2600
+🌝 full moon face; U+1F31D
+🌞 sun with face; U+1F31E
+⭐ star; U+2B50
+🌟 glowing star; U+1F31F
+🌠 shooting star; U+1F320
+☁ cloud; U+2601
+⛅ sun behind cloud; U+26C5
+⛈ cloud with lightning and rain; U+26C8
+🌤 sun behind small cloud; U+1F324
+🌥 sun behind large cloud; U+1F325
+🌦 sun behind rain cloud; U+1F326
+🌧 cloud with rain; U+1F327
+🌨 cloud with snow; U+1F328
+🌩 cloud with lightning; U+1F329
+🌪 tornado; U+1F32A
+🌫 fog; U+1F32B
+🌬 wind face; U+1F32C
+🌀 cyclone; U+1F300
+🌈 rainbow; U+1F308
+🌂 closed umbrella; U+1F302
+☂ umbrella; U+2602
+☔ umbrella with rain drops; U+2614
+⛱ umbrella on ground; U+26F1
+⚡ high voltage; U+26A1
+❄ snowflake; U+2744
+☃ snowman; U+2603
+⛄ snowman without snow; U+26C4
+☄ comet; U+2604
+🔥 fire; U+1F525
+💧 droplet; U+1F4A7
+🌊 water wave; U+1F30A
+🎃 jack-o-lantern; U+1F383
+🎄 Christmas tree; U+1F384
+🎆 fireworks; U+1F386
+🎇 sparkler; U+1F387
+🧨 firecracker; U+1F9E8
+✨ sparkles; U+2728
+🎈 balloon; U+1F388
+🎉 party popper; U+1F389
+🎊 confetti ball; U+1F38A
+🎋 tanabata tree; U+1F38B
+🎍 pine decoration; U+1F38D
+🎎 Japanese dolls; U+1F38E
+🎏 carp streamer; U+1F38F
+🎐 wind chime; U+1F390
+🎑 moon viewing ceremony; U+1F391
+🧧 red envelope; U+1F9E7
+🎀 ribbon; U+1F380
+🎁 wrapped gift; U+1F381
+🎗 reminder ribbon; U+1F397
+🎟 admission tickets; U+1F39F
+🎫 ticket; U+1F3AB
+🎖 military medal; U+1F396
+🏆 trophy; U+1F3C6
+🏅 sports medal; U+1F3C5
+1st place medal; U+1F947 🥇
+2nd place medal; U+1F948 🥈
+3rd place medal; U+1F949 🥉
+⚽ soccer ball; U+26BD
+⚾ baseball; U+26BE
+🥎 softball; U+1F94E
+🏀 basketball; U+1F3C0
+🏐 volleyball; U+1F3D0
+🏈 american football; U+1F3C8
+🏉 rugby football; U+1F3C9
+🎾 tennis; U+1F3BE
+🥏 flying disc; U+1F94F
+🎳 bowling; U+1F3B3
+🏏 cricket game; U+1F3CF
+🏑 field hockey; U+1F3D1
+🏒 ice hockey; U+1F3D2
+🥍 lacrosse; U+1F94D
+🏓 ping pong; U+1F3D3
+🏸 badminton; U+1F3F8
+🥊 boxing glove; U+1F94A
+🥋 martial arts uniform; U+1F94B
+🥅 goal net; U+1F945
+⛳ flag in hole; U+26F3
+⛸ ice skate; U+26F8
+🎣 fishing pole; U+1F3A3
+🎽 running shirt; U+1F3BD
+🎿 skis; U+1F3BF
+🛷 sled; U+1F6F7
+🥌 curling stone; U+1F94C
+🎯 direct hit; U+1F3AF
+🎱 pool 8 ball; U+1F3B1
+🔮 crystal ball; U+1F52E
+🧿 nazar amulet; U+1F9FF
+🎮 video game; U+1F3AE
+🕹 joystick; U+1F579
+🎰 slot machine; U+1F3B0
+🎲 game die; U+1F3B2
+🧩 jigsaw; U+1F9E9
+🧸 teddy bear; U+1F9F8
+♠ spade suit; U+2660
+♥ heart suit; U+2665
+♦ diamond suit; U+2666
+♣ club suit; U+2663
+♟ chess pawn; U+265F
+🃏 joker; U+1F0CF
+🀄 mahjong red dragon; U+1F004
+🎴 flower playing cards; U+1F3B4
+🎭 performing arts; U+1F3AD
+🖼 framed picture; U+1F5BC
+🎨 artist palette; U+1F3A8
+🧵 thread; U+1F9F5
+🧶 yarn; U+1F9F6
+👓 glasses; U+1F453
+🕶 sunglasses; U+1F576
+🥽 goggles; U+1F97D
+🥼 lab coat; U+1F97C
+👔 necktie; U+1F454
+👕 t-shirt; U+1F455
+👖 jeans; U+1F456
+🧣 scarf; U+1F9E3
+🧤 gloves; U+1F9E4
+🧥 coat; U+1F9E5
+🧦 socks; U+1F9E6
+👗 dress; U+1F457
+👘 kimono; U+1F458
+👙 bikini; U+1F459
+👚 woman’s clothes; U+1F45A
+👛 purse; U+1F45B
+👜 handbag; U+1F45C
+👝 clutch bag; U+1F45D
+🛍 shopping bags; U+1F6CD
+🎒 backpack; U+1F392
+👞 man’s shoe; U+1F45E
+👟 running shoe; U+1F45F
+🥾 hiking boot; U+1F97E
+🥿 flat shoe; U+1F97F
+👠 high-heeled shoe; U+1F460
+👡 woman’s sandal; U+1F461
+👢 woman’s boot; U+1F462
+👑 crown; U+1F451
+👒 woman’s hat; U+1F452
+🎩 top hat; U+1F3A9
+🎓 graduation cap; U+1F393
+🧢 billed cap; U+1F9E2
+⛑ rescue worker’s helmet; U+26D1
+📿 prayer beads; U+1F4FF
+💄 lipstick; U+1F484
+💍 ring; U+1F48D
+💎 gem stone; U+1F48E
+🔇 muted speaker; U+1F507
+🔈 speaker low volume; U+1F508
+🔉 speaker medium volume; U+1F509
+🔊 speaker high volume; U+1F50A
+📢 loudspeaker; U+1F4E2
+📣 megaphone; U+1F4E3
+📯 postal horn; U+1F4EF
+🔔 bell; U+1F514
+🔕 bell with slash; U+1F515
+🎼 musical score; U+1F3BC
+🎵 musical note; U+1F3B5
+🎶 musical notes; U+1F3B6
+🎙 studio microphone; U+1F399
+🎚 level slider; U+1F39A
+🎛 control knobs; U+1F39B
+🎤 microphone; U+1F3A4
+🎧 headphone; U+1F3A7
+📻 radio; U+1F4FB
+🎷 saxophone; U+1F3B7
+🎸 guitar; U+1F3B8
+🎹 musical keyboard; U+1F3B9
+🎺 trumpet; U+1F3BA
+🎻 violin; U+1F3BB
+🥁 drum; U+1F941
+📱 mobile phone; U+1F4F1
+📲 mobile phone with arrow; U+1F4F2
+☎ telephone; U+260E
+📞 telephone receiver; U+1F4DE
+📟 pager; U+1F4DF
+📠 fax machine; U+1F4E0
+🔋 battery; U+1F50B
+🔌 electric plug; U+1F50C
+💻 laptop computer; U+1F4BB
+🖥 desktop computer; U+1F5A5
+🖨 printer; U+1F5A8
+⌨ keyboard; U+2328
+🖱 computer mouse; U+1F5B1
+🖲 trackball; U+1F5B2
+💽 computer disk; U+1F4BD
+💾 floppy disk; U+1F4BE
+💿 optical disk; U+1F4BF
+📀 dvd; U+1F4C0
+🧮 abacus; U+1F9EE
+🎥 movie camera; U+1F3A5
+🎞 film frames; U+1F39E
+📽 film projector; U+1F4FD
+🎬 clapper board; U+1F3AC
+📺 television; U+1F4FA
+📷 camera; U+1F4F7
+📸 camera with flash; U+1F4F8
+📹 video camera; U+1F4F9
+📼 videocassette; U+1F4FC
+🔍 magnifying glass tilted left; U+1F50D
+🔎 magnifying glass tilted right; U+1F50E
+🕯 candle; U+1F56F
+💡 light bulb; U+1F4A1
+🔦 flashlight; U+1F526
+🏮 red paper lantern; U+1F3EE
+📔 notebook with decorative cover; U+1F4D4
+📕 closed book; U+1F4D5
+📖 open book; U+1F4D6
+📗 green book; U+1F4D7
+📘 blue book; U+1F4D8
+📙 orange book; U+1F4D9
+📚 books; U+1F4DA
+📓 notebook; U+1F4D3
+📒 ledger; U+1F4D2
+📃 page with curl; U+1F4C3
+📜 scroll; U+1F4DC
+📄 page facing up; U+1F4C4
+📰 newspaper; U+1F4F0
+🗞 rolled-up newspaper; U+1F5DE
+📑 bookmark tabs; U+1F4D1
+🔖 bookmark; U+1F516
+🏷 label; U+1F3F7
+💰 money bag; U+1F4B0
+💴 yen banknote; U+1F4B4
+💵 dollar banknote; U+1F4B5
+💶 euro banknote; U+1F4B6
+💷 pound banknote; U+1F4B7
+💸 money with wings; U+1F4B8
+💳 credit card; U+1F4B3
+🧾 receipt; U+1F9FE
+💹 chart increasing with yen; U+1F4B9
+💱 currency exchange; U+1F4B1
+💲 heavy dollar sign; U+1F4B2
+✉ envelope; U+2709
+📧 e-mail; U+1F4E7
+📨 incoming envelope; U+1F4E8
+📩 envelope with arrow; U+1F4E9
+📤 outbox tray; U+1F4E4
+📥 inbox tray; U+1F4E5
+📦 package; U+1F4E6
+📫 closed mailbox with raised flag; U+1F4EB
+📪 closed mailbox with lowered flag; U+1F4EA
+📬 open mailbox with raised flag; U+1F4EC
+📭 open mailbox with lowered flag; U+1F4ED
+📮 postbox; U+1F4EE
+🗳 ballot box with ballot; U+1F5F3
+✏ pencil; U+270F
+✒ black nib; U+2712
+🖋 fountain pen; U+1F58B
+🖊 pen; U+1F58A
+🖌 paintbrush; U+1F58C
+🖍 crayon; U+1F58D
+📝 memo; U+1F4DD
+💼 briefcase; U+1F4BC
+📁 file folder; U+1F4C1
+📂 open file folder; U+1F4C2
+🗂 card index dividers; U+1F5C2
+📅 calendar; U+1F4C5
+📆 tear-off calendar; U+1F4C6
+🗒 spiral notepad; U+1F5D2
+🗓 spiral calendar; U+1F5D3
+📇 card index; U+1F4C7
+📈 chart increasing; U+1F4C8
+📉 chart decreasing; U+1F4C9
+📊 bar chart; U+1F4CA
+📋 clipboard; U+1F4CB
+📌 pushpin; U+1F4CC
+📍 round pushpin; U+1F4CD
+📎 paperclip; U+1F4CE
+🖇 linked paperclips; U+1F587
+📏 straight ruler; U+1F4CF
+📐 triangular ruler; U+1F4D0
+✂ scissors; U+2702
+🗃 card file box; U+1F5C3
+🗄 file cabinet; U+1F5C4
+🗑 wastebasket; U+1F5D1
+🔒 locked; U+1F512
+🔓 unlocked; U+1F513
+🔏 locked with pen; U+1F50F
+🔐 locked with key; U+1F510
+🔑 key; U+1F511
+🗝 old key; U+1F5DD
+🔨 hammer; U+1F528
+⛏ pick; U+26CF
+⚒ hammer and pick; U+2692
+🛠 hammer and wrench; U+1F6E0
+🗡 dagger; U+1F5E1
+⚔ crossed swords; U+2694
+🔫 pistol; U+1F52B
+🏹 bow and arrow; U+1F3F9
+🛡 shield; U+1F6E1
+🔧 wrench; U+1F527
+🔩 nut and bolt; U+1F529
+⚙ gear; U+2699
+🗜 clamp; U+1F5DC
+⚖ balance scale; U+2696
+🔗 link; U+1F517
+⛓ chains; U+26D3
+🧰 toolbox; U+1F9F0
+🧲 magnet; U+1F9F2
+⚗ alembic; U+2697
+🧪 test tube; U+1F9EA
+🧫 petri dish; U+1F9EB
+🧬 dna; U+1F9EC
+🔬 microscope; U+1F52C
+🔭 telescope; U+1F52D
+📡 satellite antenna; U+1F4E1
+💉 syringe; U+1F489
+💊 pill; U+1F48A
+🚪 door; U+1F6AA
+🛏 bed; U+1F6CF
+🛋 couch and lamp; U+1F6CB
+🚽 toilet; U+1F6BD
+🚿 shower; U+1F6BF
+🛁 bathtub; U+1F6C1
+🧴 lotion bottle; U+1F9F4
+🧷 safety pin; U+1F9F7
+🧹 broom; U+1F9F9
+🧺 basket; U+1F9FA
+🧻 roll of paper; U+1F9FB
+🧼 soap; U+1F9FC
+🧽 sponge; U+1F9FD
+🧯 fire extinguisher; U+1F9EF
+🛒 shopping cart; U+1F6D2
+🚬 cigarette; U+1F6AC
+⚰ coffin; U+26B0
+⚱ funeral urn; U+26B1
+🗿 moai; U+1F5FF
+🏧 ATM sign; U+1F3E7
+🚮 litter in bin sign; U+1F6AE
+🚰 potable water; U+1F6B0
+♿ wheelchair symbol; U+267F
+🚹 men’s room; U+1F6B9
+🚺 women’s room; U+1F6BA
+🚻 restroom; U+1F6BB
+🚼 baby symbol; U+1F6BC
+🚾 water closet; U+1F6BE
+🛂 passport control; U+1F6C2
+🛃 customs; U+1F6C3
+🛄 baggage claim; U+1F6C4
+🛅 left luggage; U+1F6C5
+⚠ warning; U+26A0
+🚸 children crossing; U+1F6B8
+⛔ no entry; U+26D4
+🚫 prohibited; U+1F6AB
+🚳 no bicycles; U+1F6B3
+🚭 no smoking; U+1F6AD
+🚯 no littering; U+1F6AF
+🚱 non-potable water; U+1F6B1
+🚷 no pedestrians; U+1F6B7
+📵 no mobile phones; U+1F4F5
+🔞 no one under eighteen; U+1F51E
+☢ radioactive; U+2622
+☣ biohazard; U+2623
+⬆ up arrow; U+2B06
+↗ up-right arrow; U+2197
+➡ right arrow; U+27A1
+↘ down-right arrow; U+2198
+⬇ down arrow; U+2B07
+↙ down-left arrow; U+2199
+⬅ left arrow; U+2B05
+↖ up-left arrow; U+2196
+↕ up-down arrow; U+2195
+↔ left-right arrow; U+2194
+↩ right arrow curving left; U+21A9
+↪ left arrow curving right; U+21AA
+⤴ right arrow curving up; U+2934
+⤵ right arrow curving down; U+2935
+🔃 clockwise vertical arrows; U+1F503
+🔄 counterclockwise arrows button; U+1F504
+🔙 BACK arrow; U+1F519
+🔚 END arrow; U+1F51A
+🔛 ON! arrow; U+1F51B
+🔜 SOON arrow; U+1F51C
+🔝 TOP arrow; U+1F51D
+🛐 place of worship; U+1F6D0
+⚛ atom symbol; U+269B
+🕉 om; U+1F549
+✡ star of David; U+2721
+☸ wheel of dharma; U+2638
+☯ yin yang; U+262F
+✝ latin cross; U+271D
+☦ orthodox cross; U+2626
+☪ star and crescent; U+262A
+☮ peace symbol; U+262E
+🕎 menorah; U+1F54E
+🔯 dotted six-pointed star; U+1F52F
+♈ Aries; U+2648
+♉ Taurus; U+2649
+♊ Gemini; U+264A
+♋ Cancer; U+264B
+♌ Leo; U+264C
+♍ Virgo; U+264D
+♎ Libra; U+264E
+♏ Scorpio; U+264F
+♐ Sagittarius; U+2650
+♑ Capricorn; U+2651
+♒ Aquarius; U+2652
+♓ Pisces; U+2653
+⛎ Ophiuchus; U+26CE
+🔀 shuffle tracks button; U+1F500
+🔁 repeat button; U+1F501
+🔂 repeat single button; U+1F502
+▶ play button; U+25B6
+⏩ fast-forward button; U+23E9
+⏭ next track button; U+23ED
+⏯ play or pause button; U+23EF
+◀ reverse button; U+25C0
+⏪ fast reverse button; U+23EA
+⏮ last track button; U+23EE
+🔼 upwards button; U+1F53C
+⏫ fast up button; U+23EB
+🔽 downwards button; U+1F53D
+⏬ fast down button; U+23EC
+⏸ pause button; U+23F8
+⏹ stop button; U+23F9
+⏺ record button; U+23FA
+⏏ eject button; U+23CF
+🎦 cinema; U+1F3A6
+🔅 dim button; U+1F505
+🔆 bright button; U+1F506
+📶 antenna bars; U+1F4F6
+📳 vibration mode; U+1F4F3
+📴 mobile phone off; U+1F4F4
+♀ female sign; U+2640
+♂ male sign; U+2642
+⚕ medical symbol; U+2695
+♾ infinity; U+267E
+♻ recycling symbol; U+267B
+⚜ fleur-de-lis; U+269C
+🔱 trident emblem; U+1F531
+📛 name badge; U+1F4DB
+🔰 Japanese symbol for beginner; U+1F530
+⭕ heavy large circle; U+2B55
+✅ white heavy check mark; U+2705
+☑ ballot box with check; U+2611
+✔ heavy check mark; U+2714
+✖ heavy multiplication x; U+2716
+❌ cross mark; U+274C
+❎ cross mark button; U+274E
+➕ heavy plus sign; U+2795
+➖ heavy minus sign; U+2796
+➗ heavy division sign; U+2797
+➰ curly loop; U+27B0
+➿ double curly loop; U+27BF
+〽 part alternation mark; U+303D
+✳ eight-spoked asterisk; U+2733
+✴ eight-pointed star; U+2734
+❇ sparkle; U+2747
+‼ double exclamation mark; U+203C
+⁉ exclamation question mark; U+2049
+❓ question mark; U+2753
+❔ white question mark; U+2754
+❕ white exclamation mark; U+2755
+❗ exclamation mark; U+2757
+〰 wavy dash; U+3030
+© copyright; U+00A9
+® registered; U+00AE
+™ trade mark; U+2122
+#️⃣ keycap: #; U+0023 U+FE0F U+20E3
+*️⃣ keycap: *; U+002A U+FE0F U+20E3
+0️⃣ keycap: 0; U+0030 U+FE0F U+20E3
+1️⃣ keycap: 1; U+0031 U+FE0F U+20E3
+2️⃣ keycap: 2; U+0032 U+FE0F U+20E3
+3️⃣ keycap: 3; U+0033 U+FE0F U+20E3
+4️⃣ keycap: 4; U+0034 U+FE0F U+20E3
+5️⃣ keycap: 5; U+0035 U+FE0F U+20E3
+6️⃣ keycap: 6; U+0036 U+FE0F U+20E3
+7️⃣ keycap: 7; U+0037 U+FE0F U+20E3
+8️⃣ keycap: 8; U+0038 U+FE0F U+20E3
+9️⃣ keycap: 9; U+0039 U+FE0F U+20E3
+🔟 keycap: 10; U+1F51F
+🔠 input latin uppercase; U+1F520
+🔡 input latin lowercase; U+1F521
+🔢 input numbers; U+1F522
+🔣 input symbols; U+1F523
+🔤 input latin letters; U+1F524
+🅰 A button (blood type); U+1F170
+🆎 AB button (blood type); U+1F18E
+🅱 B button (blood type); U+1F171
+🆑 CL button; U+1F191
+🆒 COOL button; U+1F192
+🆓 FREE button; U+1F193
+ℹ information; U+2139
+🆔 ID button; U+1F194
+Ⓜ circled M; U+24C2
+🆕 NEW button; U+1F195
+🆖 NG button; U+1F196
+🅾 O button (blood type); U+1F17E
+🆗 OK button; U+1F197
+🅿 P button; U+1F17F
+🆘 SOS button; U+1F198
+🆙 UP! button; U+1F199
+🆚 VS button; U+1F19A
+🈁 Japanese “here” button; U+1F201
+🈂 Japanese “service charge” button; U+1F202
+🈷 Japanese “monthly amount” button; U+1F237
+🈶 Japanese “not free of charge” button; U+1F236
+🈯 Japanese “reserved” button; U+1F22F
+🉐 Japanese “bargain” button; U+1F250
+🈹 Japanese “discount” button; U+1F239
+🈚 Japanese “free of charge” button; U+1F21A
+🈲 Japanese “prohibited” button; U+1F232
+🉑 Japanese “acceptable” button; U+1F251
+🈸 Japanese “application” button; U+1F238
+🈴 Japanese “passing grade” button; U+1F234
+🈳 Japanese “vacancy” button; U+1F233
+㊗ Japanese “congratulations” button; U+3297
+㊙ Japanese “secret” button; U+3299
+🈺 Japanese “open for business” button; U+1F23A
+🈵 Japanese “no vacancy” button; U+1F235
+🔴 red circle; U+1F534
+🔵 blue circle; U+1F535
+⚪ white circle; U+26AA
+⚫ black circle; U+26AB
+⬜ white large square; U+2B1C
+⬛ black large square; U+2B1B
+◼ black medium square; U+25FC
+◻ white medium square; U+25FB
+◽ white medium-small square; U+25FD
+◾ black medium-small square; U+25FE
+▫ white small square; U+25AB
+▪ black small square; U+25AA
+🔶 large orange diamond; U+1F536
+🔷 large blue diamond; U+1F537
+🔸 small orange diamond; U+1F538
+🔹 small blue diamond; U+1F539
+🔺 red triangle pointed up; U+1F53A
+🔻 red triangle pointed down; U+1F53B
+💠 diamond with a dot; U+1F4A0
+🔘 radio button; U+1F518
+🔲 black square button; U+1F532
+🔳 white square button; U+1F533
+🏁 chequered flag; U+1F3C1
+🚩 triangular flag; U+1F6A9
+🎌 crossed flags; U+1F38C
+🏴 black flag; U+1F3F4
+🏳 white flag; U+1F3F3
+🏳️‍🌈 rainbow flag; U+1F3F3 U+FE0F U+200D U+1F308
+🏴‍☠️ pirate flag; U+1F3F4 U+200D U+2620 U+FE0F
+
+
+
+
+ +
+

Nordvpn Countries

+
+
+
Albania
+Bulgaria
+Denmark
+Hong_Kong
+Italy
+Netherlands
+Serbia
+Sweden
+United_States
+Argentina
+Canada
+Estonia
+Hungary
+Japan
+New_Zealand
+Singapore
+Switzerland
+Vietnam
+Australia
+Chile
+Finland
+Iceland
+Latvia
+North_Macedonia
+Slovakia
+Taiwan
+Austria
+Costa_Rica
+France
+India
+Luxembourg
+Norway
+Slovenia
+Thailand
+Belgium
+Croatia
+Georgia
+Indonesia
+Malaysia
+Poland
+South_Africa
+Turkey
+Bosnia_And_Herzegovina
+Cyprus
+Germany
+Ireland
+Mexico
+Portugal
+South_Korea
+Ukraine
+Brazil
+Czech_Republic
+Greece
+Israel
+Moldova
+Romania
+Spain
+United_Kingdom
 
@@ -5125,7 +5190,7 @@

Author: Dehaeze Thomas

-

Created: 2020-05-26 mar. 08:39

+

Created: 2021-01-01 ven. 20:08

diff --git a/docs/dist/script.js b/docs/dist/script.js new file mode 100644 index 0000000..a829cd4 --- /dev/null +++ b/docs/dist/script.js @@ -0,0 +1,258 @@ +(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } + +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } + +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + +// Blocks +docReady(function () { + var boxesNames = { + "seealso": "See also", + "definition": "Definition", + "exampl": "Example", + "exercice": "Exercice", + "question": "Question", + "summary": "Summary", + "note": "Note", + "answer": "Answer", + "hint": "Hint", + "important": "Important", + "caution": "Caution", + "warning": "Warning" + }; + + for (var className in boxesNames) { + var boxes = document.querySelectorAll('div.' + className); + + var _iterator = _createForOfIteratorHelper(boxes), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var box = _step.value; + var boxTitle = document.createElement('p'); + boxTitle.className = "admonition-title " + className; + boxTitle.textContent = boxesNames[className]; + box.parentNode.insertBefore(boxTitle, box); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + } +}); // Copy Source Block + +docReady(function () { + var srcContainers = document.querySelectorAll('pre.src'); + + function copyClickFunction() { + var boxCopy = this; // Create a clone the node to not affect the original one + + var nodeClone = boxCopy.parentNode.cloneNode(true); // Remove Line Numbers and Copy Button + + var linenumNodes = nodeClone.querySelectorAll('.linenr,.src-copy'); + + for (var i = linenumNodes.length - 1; i >= 0; --i) { + nodeClone.removeChild(linenumNodes[i]); + } // Copy the filetered content to the clipboard + + + var srcText = nodeClone.textContent; + navigator.clipboard.writeText(srcText).then(function () { + boxCopy.textContent = "Copied"; + boxCopy.classList.add("src-copied"); + setTimeout(function () { + boxCopy.textContent = "Copy"; + boxCopy.classList.remove("src-copied"); + }, 2000); + }); + } + + var _iterator2 = _createForOfIteratorHelper(srcContainers), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var srcContrainer = _step2.value; + var boxCopy = document.createElement('div'); + boxCopy.className = "src-copy"; + boxCopy.textContent = "Copy"; + boxCopy.onclick = copyClickFunction; + srcContrainer.prepend(boxCopy); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } +}); // Wrap Images and Tables + +docReady(function () { + var wrap_elements = document.querySelectorAll('[float=wrap-right]'); + + var _iterator3 = _createForOfIteratorHelper(wrap_elements), + _step3; + + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + var wrap_el = _step3.value; + wrap_el.closest('.figure').classList.add('wrap-right'); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + + wrap_elements = document.querySelectorAll('[float=wrap-left]'); + + var _iterator4 = _createForOfIteratorHelper(wrap_elements), + _step4; + + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + var _wrap_el = _step4.value; + + _wrap_el.closest('.figure').classList.add('wrap-left'); + } + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } +}); // Equivalent of Jquery $.ready + +function docReady(fn) { + // see if DOM is already available + if (document.readyState === "complete" || document.readyState === "interactive") { + // call on next available tick + setTimeout(fn, 1); + } else { + document.addEventListener("DOMContentLoaded", fn); + } +} // Load Jquery + + +var scr = document.createElement('script'), + head = document.head || document.getElementsByTagName('head')[0]; +scr.src = 'https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js'; +scr.async = false; // optionally + +head.insertBefore(scr, head.firstChild); // Load Bootstrap.js + +var scr = document.createElement('script'), + head = document.head || document.getElementsByTagName('head')[0]; +scr.src = 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js'; +scr.async = false; // optionally + +head.insertBefore(scr, head.firstChild); // After it is loaded + +scr.addEventListener('load', function () { + $(document).ready(function () { + $('#text-table-of-contents ul').first().addClass('nav'); // ScrollSpy also requires that we use + // a Bootstrap nav component. + + $('body').scrollspy({ + target: '#text-table-of-contents' + }); // set the height of tableOfContents + + var $postamble = $('#postamble'); + var $tableOfContents = $('#table-of-contents'); + $tableOfContents.css({ + paddingBottom: $postamble.outerHeight() + }); // add TOC button + + var toggleSidebar = $(''); + $('#content').prepend(toggleSidebar); // add close button when sidebar showed in mobile screen + + var closeBtn = $('Close'); + var tocTitle = $('#table-of-contents').find('h2'); + tocTitle.append(closeBtn); + }); +}); // function collapse_toc_elements_on_click (nav_li_a){ +// /* +// When an `a' element in the TOC is clicked, its parent +// `li' element's active attribute is toggled. This causes +// the element to toggle between minimized and maximized +// states. The active attribute is documented in bootstrap. +// https://getbootstrap.com/docs/4.0/components/navbar/#nav +// */ +// $(nav_li_a).parent().toggleClass("active"); +// } +// $( document ).ready(function() { +// // When the document is loaded and ready, bind the +// // function `collapse_toc_elements_on_click' to the +// // `a' elements in the table of contents. +// $("#text-table-of-contents a").click(function() { +// collapse_toc_elements_on_click(this); +// }); +// }); +// $( document ).ready(function() { +// // Shift nav in mobile when clicking the menu. +// $(document).on('click', "[data-toggle='wy-nav-top']", function() { +// $("[data-toggle='wy-nav-shift']").toggleClass("shift"); +// $("[data-toggle='rst-versions']").toggleClass("shift"); +// }); +// // Close menu when you click a link. +// $(document).on('click', ".wy-menu-vertical .current ul li a", function() { +// $("[data-toggle='wy-nav-shift']").removeClass("shift"); +// $("[data-toggle='rst-versions']").toggleClass("shift"); +// }); +// $(document).on('click', "[data-toggle='rst-current-version']", function() { +// $("[data-toggle='rst-versions']").toggleClass("shift-up"); +// }); +// // Make tables responsive +// $("table.docutils:not(.field-list)").wrap("
"); +// }); +// $( document ).ready(function() { +// $('#text-table-of-contents ul').first().addClass('nav'); +// // ScrollSpy also requires that we use +// // a Bootstrap nav component. +// $('body').scrollspy({target: '#text-table-of-contents'}); +// // set the height of tableOfContents +// var $postamble = $('#postamble'); +// var $tableOfContents = $('#table-of-contents'); +// $tableOfContents.css({paddingBottom: $postamble.outerHeight()}); +// // add TOC button +// var toggleSidebar = $(''); +// $('#content').prepend(toggleSidebar); +// // add close button when sidebar showed in mobile screen +// var closeBtn = $('Close'); +// var tocTitle = $('#table-of-contents').find('h2'); +// tocTitle.append(closeBtn); +// }); +// window.SphinxRtdTheme = (function (jquery) { +// var stickyNav = (function () { +// var navBar, +// win, +// stickyNavCssClass = 'stickynav', +// applyStickNav = function () { +// if (navBar.height() <= win.height()) { +// navBar.addClass(stickyNavCssClass); +// } else { +// navBar.removeClass(stickyNavCssClass); +// } +// }, +// enable = function () { +// applyStickNav(); +// win.on('resize', applyStickNav); +// }, +// init = function () { +// navBar = jquery('nav.wy-nav-side:first'); +// win = jquery(window); +// }; +// jquery(init); +// return { +// enable : enable +// }; +// }()); +// return { +// StickyNav : stickyNav +// }; +// }($)); + +},{}]},{},[1]); diff --git a/docs/dist/style.css b/docs/dist/style.css new file mode 100644 index 0000000..67cd6aa --- /dev/null +++ b/docs/dist/style.css @@ -0,0 +1 @@ +@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap");@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/fontawesome.min.css");html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:1rem;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}*{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}blockquote,q{quotes:none}blockquote:before,blockquote:after{content:'';content:none}q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}@use "sass:color";html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-size:16px;height:100%;overflow-x:hidden}body{background:#edf0f2;color:#404040;font-family:Roboto,sans-serif,FontAwesome;font-weight:400;margin:0;min-height:100%;overflow-x:hidden}#content{background:#fcfcfc;height:100%;min-height:100%;margin-left:300px;max-width:1200px;padding:1.618em 3.236em}a{color:#6b7adb;text-decoration:none;cursor:pointer}a:hover{outline:0;color:#6b7adb}a:visited{outline:0;color:#6b7adb}p{font-size:1rem;line-height:24px;margin:0 0 1.5em 0}b,strong{font-weight:700}i{font-style:italic}.underline{text-decoration:underline}code{background:#fff;border:solid 1px #e1e4e5;font-family:"Source Code Pro",monospace;font-size:0.75rem;max-width:100%;overflow-x:auto;padding:0 5px;white-space:nowrap}blockquote{background-color:#f0f0f0;border-left:5px solid #a3a3a3;font-style:italic;line-height:24px;margin:0px 0px 24px 0px;padding:6px 20px}blockquote>p{margin-bottom:1em}blockquote>p:last-child{margin-bottom:0}sub,sup{font-size:0.6rem;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}mark{background:#ff0;color:#000;font-style:italic;font-weight:700}small{font-size:0.85rem}img{-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}svg:not(:root){overflow:hidden}label{cursor:pointer;display:block;margin:0 0 0.3125em 0;color:#333;font-size:0.9rem}legend{border:0;margin-left:-7px;padding:0;white-space:normal;display:block;width:100%;padding:0;white-space:normal;margin-bottom:24px;font-size:1.5rem}.nav #content .admonition-title,#content .nav .admonition-title,.nav .icon{display:inline}.left{text-align:left}.center{text-align:center}.right{text-align:right}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}#content img{max-width:100%}#content .section>img,#content .section>a>img{margin-bottom:24px}.verse{border-left:5px solid #6AB0DE;background-color:#E7F2FA;padding:6px 20px;font-style:italic}#content .section ol p,#content .section ul p{margin-bottom:12px}#content h1 .headerlink,#content h2 .headerlink,#content h3 .headerlink,#content h4 .headerlink,#content h5 .headerlink,#content h6 .headerlink,#content dl dt .headerlink{display:none;visibility:hidden;font-size:14px}#content h1 .headerlink:after,#content h2 .headerlink:after,#content h3 .headerlink:after,#content h4 .headerlink:after,#content h5 .headerlink:after,#content h6 .headerlink:after,#content dl dt .headerlink:after{visibility:visible;content:"";font-family:FontAwesome;font-weight:900;display:inline-block}#content h1:hover .headerlink,#content h2:hover .headerlink,#content h3:hover .headerlink,#content h4:hover .headerlink,#content h5:hover .headerlink,#content h6:hover .headerlink,#content dl dt:hover .headerlink{display:inline-block}#content .highlighted{background:#F1C40F;display:inline-block;font-weight:700;padding:0 6px}#content .footnote-reference,#content .citation-reference{vertical-align:super;font-size:0.9rem}span[id*='MathJax-Span']{color:#404040}.math{text-align:center}.fa:before,#content h1 .headerlink:before,#content h2 .headerlink:before,#content h3 .headerlink:before,#content h4 .headerlink:before,#content h5 .headerlink:before,#content h6 .headerlink:before,#content dl dt .headerlink:before,.icon:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-alert,.btn,input[type="text"],input[type="password"],input[type="email"],input[type="url"],input[type="date"],input[type="month"],input[type="time"],input[type="datetime"],input[type="datetime-local"],input[type="week"],input[type="number"],input[type="search"],input[type="tel"],input[type="color"],select,textarea,#table-of-contents li.on a,#table-of-contents li.current>a,.wy-side-nav-search>a,.wy-side-nav-search .wy-dropdown>a,.wy-nav-top a{-webkit-font-smoothing:antialiased}.fa,.icon{display:inline-block;font-family:FontAwesome;font-style:normal;font-style:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.figure.wrap-right{float:right}.figure.wrap-right:after{content:'';display:block;clear:both}.figure.wrap-left{float:left}.figure.wrap-left:after{content:'';display:block;clear:both}@-webkit-keyframes target{from{background:#ffffff}50%{background:#ffffd3}to{background:#ffffff}}:target{-webkit-animation:target .5s linear}.todo{background-color:#db6b6b;padding:0px 4px;color:#fff}.todo.WAIT{background-color:#dba76b}.done{background-color:#6bdbb6;padding:0px 4px;color:#fff}.priority{color:#eea859;font-family:"Source Code Pro",monospace}.tag span{background-color:#f0f0f0;border:1px solid #a3a3a3;color:#939393;cursor:pointer;display:block;float:right;font-size:0.7rem;font-weight:400;margin:0 3px;padding:5px;border-radius:3px}.timestamp-wrapper{font-size:0.8rem;margin-left:2em}.timestamp-wrapper .timestamp{color:#22308c;font-family:"Source Code Pro",monospace}.title{font-size:1.75rem;margin-bottom:1em;font-weight:700;text-align:center}.title .subtitle{font-size:0.8rem}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif,FontAwesome}h1{font-size:1.75rem;margin-bottom:1em;font-weight:700;text-align:center}h2{clear:both;font-size:1.5rem;margin-bottom:1em;font-weight:700}h3{clear:both;font-size:1.25rem;margin-bottom:0.5em}h4{font-size:1.15rem;margin-bottom:0.5em;color:#2980B9;font-weight:300}h5{font-size:1.1rem;margin-bottom:0.5em;color:#2980B9;font-weight:light}#org-div-home-and-up{position:absolute;right:0;z-index:100;padding:10px}@media all and (min-width: 1500px){#org-div-home-and-up{right:auto;width:1500px;text-align:right}}@media (max-width: 768px){#org-div-home-and-up{position:fixed;padding:1em;color:#2c3eb5}#org-div-home-and-up a{color:#fcfcfc}}#table-of-contents{position:fixed;top:0;left:0;width:300px;overflow-x:hidden;overflow-y:scroll;height:100%;background:#333;z-index:200}#table-of-contents h2{color:#fcfcfc;background-color:#6b7adb;text-align:center;padding:1em;display:block;font-size:1rem;z-index:200}#table-of-contents a{display:block;position:relative;line-height:1.5em;font-size:0.9rem;color:#a6a6a6}#table-of-contents a:hover{background-color:#666;cursor:pointer}#table-of-contents .close-sidebar{display:none}#table-of-contents li{list-style:none;margin-left:0px}#table-of-contents ul{margin-bottom:0}#table-of-contents li a{padding:0.4em 1.6em}#table-of-contents li ul li a{padding:0.4em 2.4em}#table-of-contents li ul li ul li a{padding:0.4em 3.0em}#table-of-contents li ul li ul li ul li a{padding:0.4em 3.6em}#table-of-contents .tag{display:none}@media (max-width: 768px){#table-of-contents{display:none;width:60%;box-shadow:-25px 0px 10px 32px #000}#table-of-contents:target{display:block}#table-of-contents .close-sidebar{color:#fcfcfc;display:block;margin-left:10px;float:right}#table-of-contents .close-sidebar:hover{background-color:#6b7adb}}ul.nav li ul li{display:none}ul.nav li ul li ul li{display:none}ul.nav li.active ul li{display:inline}ul.nav li.active ul li ul li{display:inline}ul.nav li.active ul li a{background-color:#E3E3E3;color:#8099B0;border-right:solid 1px #c9c9c9 !important}ul.nav li.active ul li.active a{background-color:#C9C9C9;color:black !important;font-weight:bold !important}ul.nav li.active ul li.active ul li.active a{color:black !important;font-weight:bold !important;display:block !important}ul.nav li.active ul li.active ul li a{color:#808080 !important;font-weight:normal !important;display:block !important}ul.nav li.active ul li ul li a{display:none !important}ul.nav li ul li ul li ul li{display:none !important}ul.nav li.active>a{border-bottom:solid 1px #c9c9c9 !important;border-right:solid 1px #c9c9c9 !important}ul.nav li.active a{color:gray !important;font-weight:bold;background-color:white;border-right:solid 0px white !important}ul.nav>li.active>a{color:black !important}#toggle-sidebar{display:none}li.divide-top{border-top:solid 1px #404040}li.divide-bottom{border-bottom:solid 1px #404040}li.current{background:#e3e3e3}li.current a{color:gray;border-right:solid 1px #c9c9c9;padding:0.4045em 2.427em}li.current a:hover{background:#d6d6d6}li a{position:relative;border:none;padding-left:1.618em -4px}li.on a:hover{background:#fcfcfc}li.current>a:hover{background:#fcfcfc}li.current ul{display:block}.local-toc li ul{display:block}li ul li a{margin-bottom:0;color:#b3b3b3;font-weight:normal}@media (max-width: 768px){#copyright,#postamble{display:none}#toggle-sidebar{display:block;margin-bottom:1.6em;padding:1.0em;text-align:center}#toggle-sidebar h2{position:fixed;width:100%;left:0;top:0;color:#fcfcfc;background-color:#6b7adb;text-align:center;padding:1em;display:block;font-size:1rem;z-index:20}}#copyright{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;border-top:solid 10px #343131;font-family:Merriweather,Georgia,"Times New Roman",serif,FontAwesome;font-size:0.9rem;z-index:400;padding:12px}#copyright a{color:#2980B9;text-decoration:none}#copyright .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:0.9rem;cursor:pointer;color:#27AE60;*zoom:1}#postamble{position:fixed;bottom:0;left:0;width:300px;padding:12px;color:#fcfcfc;background:#1f1f1f;border-top:solid 10px #343131;font-family:Merriweather,Georgia,"Times New Roman",serif,FontAwesome;font-size:0.8em;z-index:400}#postamble .author{font-size:1rem;margin-bottom:0px}#postamble .date{font-size:0.9rem;margin-bottom:0px;color:#6bdbb6}#postamble .creator,#postamble .validation{display:none}@media print{html,body,section{background:none !important}*{box-shadow:none !important;text-shadow:none !important;filter:none !important;-ms-filter:none !important}a,a:visited{text-decoration:underline}pre.src,blockquote{page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}@media print{#postamble{display:none}#content{margin-left:0}}@media print{#table-of-contents{display:none}@page{size:auto;margin:25mm 25mm 25mm 25mm}body{margin:0px}}sup a.footref,sup a.footnum{color:#2980b9;font-size:0.75rem;font-family:Roboto,sans-serif,FontAwesome}sup a.footref:before,sup a.footnum:before{content:"["}sup a.footref:after,sup a.footnum:after{content:"]"}sup a.footref:visited,sup a.footnum:visited{color:#2980b9}#footnotes div.footdef{display:flex}#footnotes div.footdef sup{line-height:1;padding:8px;top:0}#footnotes div.footdef div.footpara{margin:0;padding:0}#footnotes div.footdef div.footpara p{color:#999;font-size:0.9rem;font-family:Roboto,sans-serif,FontAwesome;padding:8px;line-height:1.25em;margin:0}.aside{padding-left:1.0em;margin-left:0.5em;border-left:2px solid #a3a3a3}@media (min-width: 1200px){.aside{width:30%;float:right}}.aside>p{margin:0.2em;font-size:0.8rem}div.csl-bib-body .csl-entry{margin-bottom:1em}.org-bold{font-weight:700}.org-bold-italic{font-weight:700;font-style:italic}.org-buffer-menu-buffer{font-weight:700}.org-builtin{color:#7a378b}.org-button{text-decoration:underline}.org-calendar-today{text-decoration:underline}.org-change-log-acknowledgement{color:#b22222}.org-change-log-conditionals{color:#a0522d}.org-change-log-date{color:#8b2252}.org-change-log-email{color:#a0522d}.org-change-log-file{color:#0000ff}.org-change-log-function{color:#a0522d}.org-change-log-list{color:#a020f0}.org-change-log-name{color:#008b8b}.org-comint-highlight-input{font-weight:700}.org-comint-highlight-prompt{color:#00008b}.org-completions-annotations{font-style:italic}.org-completions-common-part{color:#000000;background-color:#ffffff}.org-completions-first-difference{font-weight:700}.org-diary{color:#ff0000}.org-diff-context{color:#7f7f7f}.org-diff-file-header{background-color:#b3b3b3;font-weight:700}.org-diff-function{background-color:#cccccc}.org-diff-header{background-color:#cccccc}.org-diff-hunk-header{background-color:#cccccc}.org-diff-index{background-color:#b3b3b3;font-weight:s 700}.org-diff-nonexistent{background-color:#b3b3b3;font-weight:s 700}.org-diff-refine-change{background-color:#d9d9d9}.org-dired-directory{color:#0000ff}.org-dired-flagged{color:#ff0000;font-weight:s 700}.org-dired-header{color:#228b22}.org-dired-ignored{color:#7f7f7f}.org-dired-mark{color:#008b8b}.org-dired-marked{color:#ff0000;font-weight:s 700}.org-dired-perm-write{color:#b22222}.org-dired-symlink{color:#a020f0}.org-dired-warning{color:#ff0000;font-weight:s 700}.org-doc{color:#8b2252}.org-escape-glyph{color:#a52a2a}.org-file-name-shadow{color:#7f7f7f}.org-flyspell-duplicate{color:#cdad00;font-weight:s 700;text-decoration:underline}.org-flyspell-incorrect{color:#ff4500;font-weight:s 700;text-decoration:underline}.org-fringe{background-color:#f2f2f2}.org-function-name{color:teal}.org-header-line{color:#333333;background-color:#e5e5e5}.org-help-argument-name{font-style:italic}.org-highlight{background-color:#b4eeb4}.org-holiday{background-color:#ffc0cb}.org-isearch{color:#b0e2ff;background-color:#cd00cd}.org-isearch-fail{background-color:#ffc1c1}.org-italic{font-style:italic}.org-keyword{color:#0086b3}.org-lazy-highlight{background-color:#afeeee}.org-link{color:#0000ff;text-decoration:underline}.org-link-visited{color:#8b008b;text-decoration:underline}.org-log-edit-header{color:#a020f0}.org-log-edit-summary{color:#0000ff}.org-log-edit-unknown-header{color:#b22222}.org-match{background-color:#ffff00}.org-next-error{background-color:#eedc82}.org-nobreak-space{color:#a52a2a;text-decoration:underline}.org-org-archived{color:#7f7f7f}.org-org-block{color:#7f7f7f}.org-org-block-begin-line{color:#b22222}.org-org-block-end-line{color:#b22222}.org-org-checkbox{font-weight:s 700}.org-org-checkbox-statistics-done{color:#228b22;font-weight:s 700}.org-org-checkbox-statistics-todo{color:#ff0000;font-weight:s 700}.org-org-clock-overlay{background-color:#ffff00}.org-org-code{color:#7f7f7f}.org-org-column{background-color:#e5e5e5}.org-org-column-title{background-color:#e5e5e5;font-weight:s 700;text-decoration:underline}.org-org-date{color:#a020f0;text-decoration:underline}.org-org-document-info{color:#191970}.org-org-document-info-keyword{color:#7f7f7f}.org-org-document-title{color:#191970;font-size:1.45rem;font-weight:s 700}.org-org-done{color:#228b22;font-weight:s 700}.org-org-drawer{color:#0000ff}.org-org-ellipsis{color:#b8860b;text-decoration:underline}.org-org-footnote{color:#a020f0;text-decoration:underline}.org-org-formula{color:#b22222}.org-org-headline-done{color:#bc8f8f}.org-org-hide{color:#ffffff}.org-org-latex-and-export-specials{color:#8b4513}.org-org-level-1{color:#0000ff}.org-org-level-2{color:#a0522d}.org-org-level-3{color:#a020f0}.org-org-level-4{color:#b22222}.org-org-level-5{color:#228b22}.org-org-level-6{color:#008b8b}.org-org-level-7{color:#7a378b}.org-org-level-8{color:#8b2252}.org-org-link{color:#0000ff;text-decoration:underline}.org-org-meta-line{color:#b22222}.org-org-mode-line-clock{color:#000000;background-color:#bfbfbf}.org-org-mode-line-clock-overrun{color:#000000;background-color:#ff0000}.org-org-quote{color:#7f7f7f}.org-org-scheduled{color:#006400}.org-org-scheduled-previously{color:#b22222}.org-org-scheduled-today{color:#006400}.org-org-sexp-date{color:#a020f0}.org-org-special-keyword{color:#a020f0}.org-org-table{color:#0000ff}.org-org-tag{font-weight:s 700}.org-org-target{text-decoration:underline}.org-org-time-grid{color:#b8860b}.org-org-todo{color:#ff0000;font-weight:s 700}.org-org-upcoming-deadline{color:#b22222}.org-org-verbatim{color:#7f7f7f}.org-org-verse{color:#7f7f7f}.org-org-warning{color:#ff0000;font-weight:s 700}.org-outline-1{color:#0000ff}.org-outline-2{color:#a0522d}.org-outline-3{color:#a020f0}.org-outline-4{color:#b22222}.org-outline-5{color:#228b22}.org-outline-6{color:#008b8b}.org-outline-7{color:#7a378b}.org-outline-8{color:#8b2252}.org-preprocessor{color:#7a378b}.org-query-replace{color:#b0e2ff;background-color:#cd00cd}.org-regexp-grouping-backslash{font-weight:s 700}.org-regexp-grouping-construct{font-weight:s 700}.org-region{background-color:#eedc82}.org-secondary-selection{background-color:#ffff00}.org-shadow{color:#7f7f7f}.org-show-paren-match{background-color:#40e0d0}.org-show-paren-mismatch{color:#ffffff;background-color:#a020f0}.org-tool-bar{color:#000000;background-color:#bfbfbf}.org-tooltip{color:#000000;background-color:#ffffe0}.org-trailing-whitespace{background-color:#ff0000}.org-underline{text-decoration:underline}.org-warning{color:#ff0000;font-weight:s 700}.org-widget-button{font-weight:s 700}.org-widget-button-pressed{color:#ff0000}.org-widget-documentation{color:#006400}.org-widget-field{background-color:#d9d9d9}.org-widget-inactive{color:#7f7f7f}.org-widget-single-line-field{background-color:#d9d9d9}.org-font-latex-sedate{color:#0086b3}.org-font-latex-math{color:#006400}ul{list-style:disc;line-height:24px;margin-bottom:1em}ul li{margin-left:24px}ol{list-style:decimal;line-height:24px;margin-bottom:1em}ol li{margin-left:24px}dl{margin-bottom:1em}dl dt{font-weight:700;vertical-align:top}dl dd{margin:0 0 12px 24px}.seealso{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f0f0f0}.seealso>p:last-child{margin-bottom:0}.seealso.admonition-title{line-height:1;background:#a3a3a3;margin-bottom:0px}.seealso.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.definition{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f9e6e6}.definition>p:last-child{margin-bottom:0}.definition.admonition-title{line-height:1;background:#db6b6b;margin-bottom:0px}.definition.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.exampl{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#e6f9f3}.exampl>p:last-child{margin-bottom:0}.exampl.admonition-title{line-height:1;background:#6bdbb6;margin-bottom:0px}.exampl.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.question{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f9f7e6}.question>p:last-child{margin-bottom:0}.question.admonition-title{line-height:1;background:#dbd26b;margin-bottom:0px}.question.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.exercice{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f9f7e6}.exercice>p:last-child{margin-bottom:0}.exercice.admonition-title{line-height:1;background:#dbd26b;margin-bottom:0px}.exercice.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.answer{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#e6f6f9}.answer>p:last-child{margin-bottom:0}.answer.admonition-title{line-height:1;background:#6bc7db;margin-bottom:0px}.answer.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.summary{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#e6e9f9}.summary>p:last-child{margin-bottom:0}.summary.admonition-title{line-height:1;background:#6b7adb;margin-bottom:0px}.summary.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.note{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#e6e9f9}.note>p:last-child{margin-bottom:0}.note.admonition-title{line-height:1;background:#6b7adb;margin-bottom:0px}.note.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.hint{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f0f0f0}.hint>p:last-child{margin-bottom:0}.hint.admonition-title{line-height:1;background:#a3a3a3;margin-bottom:0px}.hint.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.important{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f9e6e6}.important>p:last-child{margin-bottom:0}.important.admonition-title{line-height:1;background:#db6b6b;margin-bottom:0px}.important.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.caution{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f9f0e6}.caution>p:last-child{margin-bottom:0}.caution.admonition-title{line-height:1;background:#dba76b;margin-bottom:0px}.caution.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}.warning{padding:12px;line-height:24px;margin-bottom:24px;-webkit-font-smoothing:antialiased;background:#f9f0e6}.warning>p:last-child{margin-bottom:0}.warning.admonition-title{line-height:1;background:#dba76b;margin-bottom:0px}.warning.admonition-title:before{font-family:FontAwesome;font-weight:900;content:""}#content .admonition-title{color:#fcfcfc;font-weight:700;display:block;padding:6px 12px;margin-bottom:0px}#content .admonition-title:before{margin-right:8px;font-family:FontAwesome;display:inline-block;font-weight:900;line-height:1;text-decoration:inherit}.org-src-container{position:relative;overflow:visible;margin-top:1em}.org-src-container label{text-align:center;cursor:text;font-size:0.85rem;font-family:Merriweather,Georgia,"Times New Roman",serif,FontAwesome;font-style:italic;color:#404040}.org-src-container label .listing-number{font-weight:700;color:#22308c}.org-src-container div.src-copy{display:inline;position:absolute;color:#a6a6a6;background-color:#fff;padding:0px 4px;border:1px solid #e1e4e5;font-size:0.6rem;top:-9px;z-index:10;font-family:"Source Code Pro",monospace;line-height:1.5;right:10px;cursor:pointer}.org-src-container div.src-copy.src-copied{color:#fcfcfc;background-color:#6b7adb}.org-src-container .linenr{color:#a6a6a6}.org-src-container>pre{position:relative;overflow:visible;border:1px solid #e1e4e5;background:#fff;display:block;font-family:"Source Code Pro",monospace;font-size:0.75rem;line-height:1.5;padding:12px;margin-bottom:24px;white-space:pre-wrap}.org-src-container>pre.src:before{display:inline;position:absolute;color:#a6a6a6;background-color:#fff;padding:0px 4px;border:1px solid #e1e4e5;font-size:0.6rem;top:-9px;z-index:10;font-family:"Source Code Pro",monospace;left:10px}.org-src-container>pre.src-emacs-lisp:before{content:'Emacs Lisp'}.org-src-container>pre.src-elisp:before{content:'Emacs Lisp'}.org-src-container>pre.src-sh:before{content:'shell'}.org-src-container>pre.src-bash:before{content:'bash'}.org-src-container>pre.src-org:before{content:'Org mode'}.org-src-container>pre.src-python:before{content:'Python'}.org-src-container>pre.src-latex:before{content:'LaTeX'}.org-src-container>pre.src-matlab:before{content:'Matlab'}.org-src-container>pre.src-bibtex:before{content:'BibTeX'}pre.example{position:relative;background:#edf0f2;border:1px solid #e1e4e5;color:#404040;font-size:0.75rem;line-height:1.5;margin-bottom:24px;padding:12px;font-family:"Source Code Pro",monospace}pre.example:before{display:inline;position:absolute;color:#a6a6a6;background-color:#fff;padding:0px 4px;border:1px solid #e1e4e5;font-size:0.6rem;top:-9px;z-index:10;font-family:"Source Code Pro",monospace;content:"Results";display:inline;left:10px}.org-type{color:#228b22}.org-comment{color:#999988;font-style:italic}.org-comment-delimiter{color:#999988;font-style:italic}.org-string{color:#dd1144}.org-matlab-cellbreak{text-decoration:underline;text-decoration-color:#999988}.org-constant{color:#008b8b}.org-variable-name{color:teal}.figure{margin-bottom:24px}.figure p{color:#404040;font-size:0.85rem;font-family:Merriweather,Georgia,"Times New Roman",serif,FontAwesome;font-style:italic;text-align:center;margin:0}.figure img{max-width:100%;display:block;margin:auto;padding-bottom:0.5em}.figure .figure-number{font-weight:700;color:#22308c}figcaption,figure,footer,header,hgroup,nav{display:block}table{margin-left:auto;margin-right:auto;border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px;border-bottom:3px solid #e1e4e5}table td,table th{font-size:0.9rem;margin:0;overflow:visible;padding:8px 16px;background-color:#fff;border:1px solid #e1e4e5}table .org-right{margin-left:auto;margin-right:0px;text-align:right}table .org-left{margin-left:0px;margin-right:auto;text-align:left}table .org-center{margin-left:auto;margin-right:auto;text-align:center}table thead th{font-weight:700;border-top:3px solid #e1e4e5;border-bottom:1px solid #e1e4e5}table tbody{border-top:3px solid #e1e4e5}table caption{color:#404040;font-size:0.85em;font-family:Merriweather,Georgia,"Times New Roman",serif,FontAwesome;font-style:italic;padding:1em 0}table caption .table-number{font-weight:700;color:#22308c}div.yt{position:relative;padding-bottom:56.25%}div.yt iframe{position:absolute;top:0;left:0;width:100%;height:100%}video{max-width:100%}details{background:#edf0f2;border:1px solid #666;border-radius:3px;margin-bottom:1.0em;padding:12px}details pre.src{margin-top:12px;margin-bottom:0}details summary{outline:0;color:#666;padding:0px;margin:0px;cursor:pointer}details summary::after{font-size:0.85em;color:#666;float:right;padding-right:0.5em;content:"Click to fold/unfold"}@media (max-width: 768px){.tablet-hide{display:none}}@media (max-width: 480px){.mobile-hide{display:none}}@media (max-width: 768px){#content{margin-left:0}#content #content{padding:1.618em}#content.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media (max-width: 768px){#copyright{width:85%;display:none}#copyright.shift{display:block}}@media (max-width: 480px){#content .sidebar{width:100%}} diff --git a/docs/doom.html b/docs/doom.html index be56fa5..c36cf88 100644 --- a/docs/doom.html +++ b/docs/doom.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Doom Emacs Configuration - - - - - - + +
@@ -26,158 +22,164 @@

Table of Contents

@@ -202,17 +204,17 @@ When changing init.el or package.el, tangle the files After that, restart Emacs with spc q r.

-
-

Useful Bindings

-
+
+

Useful Bindings

+
  • align-regexp: equivalent of vim-easy-align. Very useful to align tables and stuff
-
-

General Bindings

-
+
+

General Bindings

+
@@ -351,9 +353,9 @@ After that, restart Emacs with spc q r. -
-

Org-Babel Bindings

-
+
+

Org-Babel Bindings

+
@@ -477,9 +479,9 @@ After that, restart Emacs with spc q r. -
-

Evil bindings

-
+
+

Evil bindings

+
@@ -524,13 +526,13 @@ After that, restart Emacs with spc q r. -
-

Basic Configuration

-
+
+

Basic Configuration

+
-
-

Personal Information

-
+
+

Personal Information

+
;; These are used for a number of things, particularly for GPG configuration,
 ;; some email clients, file templates and snippets.
@@ -541,9 +543,9 @@ After that, restart Emacs with spc q r.
 
-
-

Doom Config

-
+
+

Doom Config

+
(setq doom-font (font-spec :family "Hack Nerd Font Mono" :size 12 :weight 'semi-light)
       doom-variable-pitch-font (font-spec :family "Hack Nerd Font Mono")
@@ -553,7 +555,7 @@ After that, restart Emacs with spc q r.
 
-
(setq doom-theme 'doom-gruvbox)
+
(setq doom-theme 'leuven)
 
@@ -589,9 +591,9 @@ After that, restart Emacs with spc q r.
-
-

Evil

-
+
+

Evil

+
(after! evil
   (map! :m  "-"  #'dired-jump))
@@ -616,12 +618,33 @@ Make horizontal movement cross lines
 
(setq-default evil-cross-lines t)
 
+ +

+Evil Surround (not working): +

+
+
;; this macro was copied from here: https://stackoverflow.com/a/22418983/4921402
+(defmacro define-and-bind-quoted-text-object (name key start-regex end-regex)
+  (let ((inner-name (make-symbol (concat "evil-inner-" name)))
+        (outer-name (make-symbol (concat "evil-a-" name))))
+    `(progn
+       (evil-define-text-object ,inner-name (count &optional beg end type)
+         (evil-select-paren ,start-regex ,end-regex beg end type count nil))
+       (evil-define-text-object ,outer-name (count &optional beg end type)
+         (evil-select-paren ,start-regex ,end-regex beg end type count t))
+       (define-key evil-inner-text-objects-map ,key #',inner-name)
+       (define-key evil-outer-text-objects-map ,key #',outer-name))))
+
+;; Add dollar as a surround object
+(define-and-bind-quoted-text-object "dollar" "$" "\\$" "\\$")
+
+
-
-

Which Key

-
+
+

Which Key

+
(after! which-key
   (setq which-key-idle-delay 0.5
@@ -632,9 +655,9 @@ Make horizontal movement cross lines
 
-
-

Visual

-
+
+

Visual

+

Automatic line wrap.

@@ -648,20 +671,20 @@ Turn off auto-fill mode that add line breaks.

(auto-fill-mode -1)
-(remove-hook 'text-mode-hook 'turn-on-auto-fill)
-;; turn on auto-fill for text-mode
-(add-hook 'text-mode-hook 'turn-on-auto-fill)
+(remove-hook 'text-mode-hook #'turn-on-auto-fill)
 (after! org
   ;; turn off auto-fill for org-mode
   (add-hook 'org-mode-hook 'turn-off-auto-fill))
+(after! auctex
+  (add-hook 'latex-mode-hook 'turn-off-auto-fill))
 
-
-

Useful General Functions

-
+
+

Useful General Functions

+
(defun tdh-matlab-work ()
   "Setup Matlab Work Windows"
@@ -677,9 +700,9 @@ Turn off auto-fill mode that add line breaks.
 
-
-

Change default alert backend

-
+
+

Change default alert backend

+
(setq alert-default-style 'libnotify)
 
@@ -687,9 +710,9 @@ Turn off auto-fill mode that add line breaks.
-
-

Lockfiles

-
+
+

Lockfiles

+
(setq create-lockfiles nil)
 
@@ -697,9 +720,9 @@ Turn off auto-fill mode that add line breaks.
-
-

Disable highlight of current line

-
+
+

Disable highlight of current line

+
(global-hl-line-mode -1)
 (after! org
@@ -714,9 +737,9 @@ Turn off auto-fill mode that add line breaks.
 
-
-

Remap jump-forward key binding

-
+
+

Remap jump-forward key binding

+
(with-eval-after-load 'better-jumper
   (map!
@@ -727,9 +750,9 @@ Turn off auto-fill mode that add line breaks.
 
-
-

Magit

-
+
+

Magit

+
(setenv "GIT_ASKPASS" "git-gui--askpass")
 
@@ -752,9 +775,9 @@ Turn off auto-fill mode that add line breaks.
 
-
-

Dired

-
+
+

Dired

+
  • C-c C-e Writable Dired mode, when changes are done C-c C-c. This works also with C-x C-q
  • @@ -776,35 +799,25 @@ This works also with C-x C-q
  • ( Hide details
  • ) Show git infos
- - -
-
(use-package! dired-narrow
-  :config
-  (map! :map dired-mode-map
-        :n "f"
-        'dired-narrow-fuzzy))
-
-
-
-

PDF-Tools

-
+
+

PDF-Tools

+
(use-package! pdf-tools
   :config
-  (add-hook 'pdf-view-mode-hook (lambda() (linum-mode -1)))
+  (add-hook 'pdf-view-mode-hook (lambda() (linum-mode -1)))
   )
 
-
-

Yassnippets

-
+
+

Yassnippets

+
(push "~/.config/doom/snippets" yas-snippet-dirs)
 (yas-global-mode 1)
@@ -813,9 +826,9 @@ This works also with C-x C-q
 
-
-

Ox-Hugo

-
+
+

Ox-Hugo

+
(defun tdh-export-everything-to-hugo ()
   "Export all the .org files in the specified directory to markdown using Hugo"
@@ -832,11 +845,21 @@ This works also with C-x C-q
 
+ +
+

Others

+
+
+
(setq auto-save-default t)
+
+
+
+
-
-

Org Mode

-
+
+

Org Mode

+ -
-

Org General Config

-
+
+

Org General Config

+
(setq org-directory "~/Cloud/org/")
 (after! org
@@ -887,9 +910,9 @@ TAB was changed to toggle only the visibility state of the current subtree, rath
 
-
-

Org Inline Images

-
+
+

Org Inline Images

+

Display the real size of images and not the one set with attr_latex: :width \linewidth for instance.

@@ -901,9 +924,9 @@ Display the real size of images and not the one set with attr_latex: :widt
-
-

Org Links

-
+
+

Org Links

+
(after! org
   (setq org-link-abbrev-alist
@@ -913,12 +936,23 @@ Display the real size of images and not the one set with attr_latex: :widt
   )
 
+ +
+
(defun tdh/pdf-link (filename)
+  (start-process "" nil "zathura" (concat "~/Cloud/pdfs/" filename ".pdf"))
+  "")
+
+(after! org
+  (org-link-set-parameters "pdf" :follow #'tdh/pdf-link)
+  )
+
+
-
-

Org Tagging

-
+
+

Org Tagging

+
(after! org
   ;; Align Tags and flush right
@@ -934,9 +968,9 @@ Display the real size of images and not the one set with attr_latex: :widt
 
-
-

Org Refile

-
+
+

Org Refile

+
(after! org
   (setq org-refile-targets '((org-agenda-files . (:maxlevel . 6))))
@@ -946,9 +980,9 @@ Display the real size of images and not the one set with attr_latex: :widt
 
-
-

Org TODO

-
+
+

Org TODO

+
(after! org
   ;; Tags with fast selection keys
@@ -982,9 +1016,9 @@ Display the real size of images and not the one set with attr_latex: :widt
 
-
-

Org Archive

-
+
+

Org Archive

+

https://gist.github.com/Fuco1/e86fb5e0a5bb71ceafccedb5ca22fcfb Archive subtrees under the same hierarchy as original in the archive files @@ -1040,9 +1074,9 @@ Archive subtrees under the same hierarchy as original in the archive files

-
-

Org Agenda

-
+
+

Org Agenda

+

General configuration

@@ -1052,7 +1086,7 @@ General configuration (setq org-agenda-files (list "~/Cloud/org/")) ;; Include archived files - (setq org-agenda-archives-mode t) + (setq org-agenda-archives-mode nil) ;; Set priority range from A to C with default A (setq org-highest-priority ?A) @@ -1165,9 +1199,9 @@ Org Agenda Custom Views
-
-

Org Fancy Priority

-
+
+

Org Fancy Priority

+
(use-package! org-fancy-priorities ; priority icons
   :hook (org-mode . org-fancy-priorities-mode)
@@ -1177,25 +1211,25 @@ Org Agenda Custom Views
 
-
-

Org Notification based on calendar event

-
+
+

Org Notification based on calendar event

+

https://emacs.stackexchange.com/questions/3844/good-methods-for-setting-up-alarms-audio-visual-triggered-by-org-mode-events

(after! org-agenda
-  (setq appt-message-warning-time 5)
+  (setq appt-message-warning-time 5)
   (defun tdh-org-agenda-to-appt ()
     (interactive)
-    (setq appt-time-msg-list nil)
+    (setq appt-time-msg-list nil)
     (org-agenda-to-appt))
 
   (tdh-org-agenda-to-appt)
                                         ; Display appointments as a window manager notification
-  (setq appt-disp-window-function 'tdh-appt-display)
-  (setq appt-delete-window-function (lambda () t))
+  (setq appt-disp-window-function 'tdh-appt-display)
+  (setq appt-delete-window-function (lambda () t))
 
   (setq tdh-appt-notification-app (concat (getenv "HOME") "/bin/appt-notification"))
   (defun tdh-appt-display (min-to-app new-time msg)
@@ -1208,9 +1242,9 @@ Org Agenda Custom Views
 
-
-

appt-notification script

-
+
+

appt-notification script

+
TIME="$1"TODO
 MSG="$2"
@@ -1222,29 +1256,43 @@ dunstify --replace=85401 
 
-
-

Org Structure Template

-
+
+

Org Structure Template

+
(after! org
+  (require 'org-tempo)
   (setq org-structure-template-alist
     '(("c" . "center")
       ("C" . "comment")
-      ("m" . "src matlab\n")
-      ("l" . "src emacs-lisp\n")
-      ("i" . "important")
-      ("e" . "example")
+      ("mm" . "src matlab")
+      ("mf" . "src matlab :exports none")
+      ("mv" . "src matlab :results value replace :exports none :tangle no")
+      ("l" . "src emacs-lisp")
       ("q" . "quote")
-      ("s" . "src")))
+      ("s" . "src")
+      ("ba" . "answer")
+      ("bd" . "definition")
+      ("be" . "exampl")
+      ("bx" . "exercice")
+      ("bq" . "question")
+      ("bs" . "summary")
+      ("bS" . "seealso")
+      ("bh" . "hint")
+      ("bn" . "note")
+      ("bi" . "important")
+      ("bc" . "caution")
+      ("bw" . "warning")
+      ))
 )
 
-
-

Org Capture

-
+
+

Org Capture

+

Documentation:

@@ -1309,9 +1357,9 @@ Documentation:
-
-

Org Export

-
+
+

Org Export

+

Basic configuration:

@@ -1358,26 +1406,18 @@ Do not export headline with the :ignore: tag:
-
-

HTML Export

-
+
+

HTML Export

+
-
-

HTML Defaults

-
+
+

HTML Defaults

+
(after! org
-  ;; (setq org-html-head-extra (concat
-  ;;                            "<link rel='stylesheet' href='../css/htmlize.css'>\n"
-  ;;                            "<link rel='stylesheet' href='../css/readtheorg.css'>\n"
-  ;;                            "<link rel='stylesheet' href='../css/zenburn.css'>\n"
-  ;;                            "<link rel='text/javascript' href='../js/bootstrap.min.js'>\n"
-  ;;                            "<link rel='text/javascript' href='../js/jquery.min.js'>\n"
-  ;;                            "<link rel='text/javascript' href='../js/jquery.stickytableheaders.min.js'>\n"
-  ;;                            "<link rel='text/javascript' href='../js/readtheorg.js'>\n"))
+  (setq org-html-head "<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">")
+  (setq org-html-head-extra "")
 
-  ;; cleans up anything that would have been in there.
-  (setq org-html-head nil)
   (setq org-html-head-include-default-style nil)
   (setq org-html-head-include-scripts nil)
 
@@ -1396,9 +1436,9 @@ Do not export headline with the :ignore: tag:
 
-
-

MathJax

-
+
+

MathJax

+
(after! org
   (setq org-html-mathjax-template
@@ -1428,9 +1468,32 @@ Do not export headline with the :ignore: tag:
 
-
-

Ensuring useful HTML Anchors

-
+
+

MP4 Video - video link

+
+
+
(defun org-video-link-export (path desc backend)
+  (let ((ext (file-name-extension path)))
+    (cond
+     ((eq 'html backend)
+      (format "<video preload='metadata' controls='controls'><source type='video/%s' src='%s' /></video>" ext path))
+     ;; fall-through case for everything else
+     (t
+      path))))
+
+(after! org
+  (org-link-set-parameters "video" :export 'org-video-link-export)
+
+  (org-export-string-as "video:xxx.mp4" 'html t)
+  )
+
+
+
+
+ +
+

Ensuring useful HTML Anchors

+
-
-

Folded Drawers

-
+
+

Folded Drawers

+

Adapt this from https://github.com/alhassy/emacs.d to do something similar for source blocks.

@@ -1585,13 +1648,13 @@ Adapt this from https://github.com/
-
-

Org LaTeX

-
+
+

Org LaTeX

+
-
-

LaTeX Fragments

-
+
+

LaTeX Fragments

+
-
-

LaTeX Classes

-
+
+

LaTeX Classes

+
-
-

Ox Latex Subfigure package

-
+
+

Ox Latex Subfigure package

+
-
-

Clear page before heading

-
+ -
-

Default added packages

-
+
+

Default added packages

+
-
-

Some configurations

-
+
+

Some configurations

+
-
-

Beamer

-
+
+

Beamer

+

Bold Text

@@ -1876,9 +1961,9 @@ Special Environments
-
-

Custom Export - Add Page and Label for LaTeX export

-
+ -
-

Number Equations

-
+ -
-

LaTeX macro both for LaTeX and HTML export

-
+
+

LaTeX macro both for LaTeX and HTML export

+
-
-

Org Projects

-
+
+

Org Projects

+
(setq org-publish-project-alist
       '(("config"
-         :base-directory "~/.config/literate-dotfiles/dotfiles/"
+         :base-directory "~/.config/literate-dotfiles/"
          :publishing-directory "~/.config/literate-dotfiles/docs/"
          :recursive nil
          :publishing-function org-html-publish-to-html
@@ -2088,41 +2173,9 @@ Special Environments
 
-
-

Org big org-project

-
-
-
(setq org-publish-project-alist
-      '(("website"
-         :components ("nass-simscape" "nass-simscape-images"))
-        ("nass-simscape"
-         :base-directory "~/Cloud/thesis/matlab/nass-simscape/org/"
-         :base-extension "org"
-         :publishing-directory "~/Cloud/website/nass-simscape/"
-         :publishing-function org-html-publish-to-html
-
-         :html-link-up "./index.html"
-         :html-link-home "~/Cloud/website/index.html"
-
-         :html-footnotes-section "<div id='footnotes'><!--%s-->%s</div>"
-
-         :recursive nil
-         :auto-sitemap nil
-         :language en)
-        ("nass-simscape-images"
-         :base-directory "~/Cloud/thesis/matlab/nass-simscape/docs/figs/"
-         :base-extension "png"
-         :publishing-directory "~/Cloud/website/nass-simscape/figs/"
-         :publishing-function org-publish-attachment)
-        ))
-
-
-
-
- -
-

Automatically run startblock when opening org-mode files

-
+
+

Automatically run startblock when opening org-mode files

+
(after! org
   (defun tdh-eval-startblock ()
@@ -2141,9 +2194,9 @@ Special Environments
 
-
-

Insert ScreenShot or Picture from Phone

-
+
+

Insert ScreenShot or Picture from Phone

+
-
-

Render Tables

-
+ -
-

Org Gcal

-
+
+

Org Special Block Extras

+
+
+
(after! org
+  (require 'org-special-block-extras)
+  )
+
+
+
+
+ +
+

Org Inline Task

+
+
+
(after! org
+  (require 'org-inlinetask)
+  )
+
+
+
+
+ +
+

Org Links

+
+
+
+

Youtube Links

+
+
+
(after! org
+  (setq yt-iframe-format
+        ;; You may want to change your width and height.
+        (concat "<div class=\"yt\"><iframe width=\"100%%\""
+                " height=\"100%%\""
+                " src=\"https://www.youtube.com/embed/%s\""
+                " frameborder=\"0\""
+                " allowfullscreen>%s</iframe></div>"))
+
+  (org-add-link-type
+   "yt"
+   (lambda (handle)
+     (browse-url
+      (concat "https://www.youtube.com/embed/"
+              handle)))
+   (lambda (path desc backend)
+     (cl-case backend
+       (html (format yt-iframe-format
+                     path (or desc "")))
+       (md (format "{{< youtube %s >}}"
+                   path))
+       (latex (format "\\href{%s}{%s}"
+                      (concat "https://www.youtube.com/embed/"
+                              path) (or desc "video"))))))
+  )
+
+
+
+
+
+ +
+

Org Gcal

+
@@ -2295,15 +2411,15 @@ Special Environments ("8kjmhe2ar0abnm054ill1fb0gc@group.calendar.google.com" . "~/Cloud/org/gcal_phd.org"))) ;; Automatic fetch of the new events ;; (add-hook 'org-agenda-mode-hook (lambda () (org-gcal-fetch) )) -) + )
-
-

Citeproc-Org

-
+
+

Citeproc-Org

+
(use-package! citeproc-org
   :ensure t
@@ -2315,24 +2431,27 @@ Special Environments
 
-
-

Org Wild Notifier

-
+
+

Org Wild Notifier

+
(use-package! org-wild-notifier
   :after org
   :init
   (setq alert-default-style 'libnotify)
   :config
+  (setq org-wild-notifier-alert-time '(10 5))
+  (setq org-wild-notifier-notification-title "Org Agenda")
+  (org-wild-notifier-mode)
 )
 
-
-

Orch

-
+
+

Orch

+
(use-package! web-server
   :init
@@ -2349,9 +2468,9 @@ Special Environments
 
-
-

Custom Keybindings - , leader key and C-c

-
+
+

Custom Keybindings - , leader key and C-c

+
@@ -2422,9 +2541,9 @@ Special Environments -
-

Insert Elements ,i

-
+
+

Insert Elements ,i

+

Insert Link to paper

@@ -2528,7 +2647,7 @@ Take Screenshot and insert a link: (setq filename (read-string "Enter file name:" (car (split-string (file-name-base buffer-file-name) "_")))) (setq filename (read-string "Enter file name:"))) (setq filepath (concat "./figs/" filename ".png")) - (shell-command (concat "maim -s " filepath)) + (shell-command (concat "maim -u -s " filepath)) (insert (format "#+name: fig:%s\n#+caption:\n[[file:%s]]" filename filepath)) (search-backward "caption") (end-of-line) @@ -2582,9 +2701,9 @@ Map Keys
-
-

LaTeX ,l

-
+
+

LaTeX ,l

+
(defun tdh-latex-watch ()
   "Watch LaTeX file using latexmk"
@@ -2617,17 +2736,26 @@ Map Keys
 
-
-

Org LaTeX Automatic fragment

-
+
+

Org LaTeX Automatic fragment

+
+
+
(use-package! org-fragtog
+  :after org
+  :config
+  (add-hook 'org-mode-hook 'org-fragtog-mode)
+)
+
+
+
(defun tdh-automatic-latex-fragment-activate ()
   (interactive)
-  (add-hook 'org-mode-hook 'org-fragtog-mode))
+  (add-hook 'org-mode-hook 'org-fragtog-mode))
 
 (defun tdh-automatic-latex-fragment-deactivate ()
   (interactive)
-  (remove-hook 'org-mode-hook 'org-fragtog-mode))
+  (remove-hook 'org-mode-hook 'org-fragtog-mode))
 
@@ -2642,9 +2770,9 @@ Map Keys
-
-

Bibtex ,r

-
+
+

Bibtex ,r

+
(after! org
   (map! :map org-mode-map
@@ -2658,9 +2786,9 @@ Map Keys
 
-
-

Open ranger in current directory ,o

-
+
+

Open ranger in current directory ,o

+
(defun tdh-open-ranger-in-workdir ()
   (interactive)
@@ -2678,9 +2806,9 @@ Map Keys
 
-
-

View in External programs ,v

-
+
+

View in External programs ,v

+

Open PDF output with zathura

@@ -2716,13 +2844,13 @@ Open HTML output externally
-
-

Org Babel

-
+
+

Org Babel

+
-
-

Main configuration

-
+
+

Main configuration

+

Don’t ask for confirmation when evaluating following blocs

@@ -2755,9 +2883,9 @@ Use the current window for C-c ’ source editing
-
-

Appearance of source blocks

-
+
+

Appearance of source blocks

+
(defun tdh-org-prettify-symbols ()
   (mapc (apply-partially 'add-to-list 'prettify-symbols-alist)
@@ -2774,9 +2902,9 @@ Use the current window for C-c ’ source editing
 
-
-

Indentation

-
+
+

Indentation

+
(after! org
   (setq org-edit-src-content-indentation 2
@@ -2788,28 +2916,28 @@ Use the current window for C-c ’ source editing
 
-
-

Library of Babel

-
+
+

Library of Babel

+

Add all named source blocks to org-babel-library-of-babel (link).

(after! org
-  (org-babel-lob-ingest "~/.config/literate-dotfiles/dotfiles/emacs-library-babel.org"))
+  (org-babel-lob-ingest "~/.config/literate-dotfiles/emacs-library-babel.org"))
 
-
-

Org-Babel Matlab

-
+
+

Org-Babel Matlab

+
(after! org
-  (setq org-babel-matlab-shell-command "/home/thomas/.local/bin/matlab -softwareopengl -nodesktop -nosplash")
+  (setq org-babel-matlab-shell-command "/home/thomas/.local/bin/matlab -softwareopengl -nodesktop -nosplash")
   )
 
@@ -2819,7 +2947,7 @@ Default options for Matlab code

(after! org
-  (setq org-babel-default-header-args:matlab
+  (setq org-babel-default-header-args:matlab
         '((:results . "none")
           (:session . "*MATLAB*")
           (:comments . "org")
@@ -2857,22 +2985,22 @@ Better format the output results for Matlab ((",*\\s-*\n+"                . ", ")) ;Concatenate lines
                            body)
                         body)
-                      org-babel-octave-eoe-indicator) "\n"))
+                      org-babel-octave-eoe-indicator) "\n"))
               (`value
-               (if (and matlabp org-babel-matlab-with-emacs-link)
+               (if (and matlabp org-babel-matlab-with-emacs-link)
                    (concat
-                    (format org-babel-matlab-emacs-link-wrapper-method
+                    (format org-babel-matlab-emacs-link-wrapper-method
                             body
                             (org-babel-process-file-name tmp-file 'noquote)
                             (org-babel-process-file-name tmp-file 'noquote) wait-file) "\n")
                  (mapconcat
                   #'org-babel-chomp
-                  (list (format org-babel-octave-wrapper-method
+                  (list (format org-babel-octave-wrapper-method
                                 body
                                 (org-babel-process-file-name tmp-file 'noquote)
                                 (org-babel-process-file-name tmp-file 'noquote))
-                        org-babel-octave-eoe-indicator) "\n")))))
-           (raw (if (and matlabp org-babel-matlab-with-emacs-link)
+                        org-babel-octave-eoe-indicator) "\n")))))
+           (raw (if (and matlabp org-babel-matlab-with-emacs-link)
                     (save-window-excursion
                       (with-temp-buffer
                         (insert full-body)
@@ -2887,19 +3015,19 @@ Better format the output results for Matlab ((org-babel-comint-with-output
                       (session
                        (if matlabp
-                           org-babel-octave-eoe-indicator
-                         org-babel-octave-eoe-output)
+                           org-babel-octave-eoe-indicator
+                         org-babel-octave-eoe-output)
                        t full-body)
                     (insert full-body) (comint-send-input nil t)))) results)
       (pcase result-type
         (`value
-         (org-babel-octave-import-elisp-from-file tmp-file))
+         (org-babel-octave-import-elisp-from-file tmp-file))
         (`output
          (setq results
                (if matlabp
                    (cdr (reverse (delete "" (mapcar #'org-strip-quotes
                                                     (mapcar #'org-trim (remove-car-upto-newline raw))))))
-                 (cdr (member org-babel-octave-eoe-output
+                 (cdr (member org-babel-octave-eoe-output
                               (reverse (mapcar #'org-strip-quotes
                                                (mapcar #'org-trim raw)))))))
          (mapconcat #'identity (reverse results) "\n")))))
@@ -2926,9 +3054,9 @@ Better format the output results for Matlab (
-

Some functions for using Matlab with Org Babel ,m

-
+
+

Some functions for using Matlab with Org Babel ,m

+

whos matlab function

@@ -3017,9 +3145,9 @@ Map Functions
-
-

Remap ctrl-ret used to execute the src block and go to the next one

-
+
+

Remap ctrl-ret used to execute the src block and go to the next one

+

https://emacs.stackexchange.com/questions/13869/how-to-toggle-org-mode-source-code-block-eval-no-status

@@ -3036,7 +3164,7 @@ when inside a source block. Otherwise, keep the normal behavior for ctrl-r "Returns t when the point is inside a source code block" (string= "src" (org-in-block-p '("src")))) - (if (tdh-in-src-block-p) + (if (tdh-in-src-block-p) (progn (org-babel-execute-src-block) (org-babel-next-src-block)) @@ -3053,13 +3181,13 @@ when inside a source block. Otherwise, keep the normal behavior for ctrl-r
-
-

Remap ctrl-shift-ret used to execute the (matlab) src block in the background and go to the next one

-
+
+

Remap ctrl-shift-ret used to execute the (matlab) src block in the background and go to the next one

+
-
-

tdh-org-babel-execute-matlab-background

-
+
+

tdh-org-babel-execute-matlab-background

+
(defun tdh-org-babel-execute-matlab-background (&optional arg info params)
   (interactive)
@@ -3125,9 +3253,9 @@ when inside a source block. Otherwise, keep the normal behavior for ctrl-r
 
-
-

tdh-matlab-execute-selected

-
+
+

tdh-matlab-execute-selected

+
(defun tdh-matlab-execute-selected (start end)
 "Execute selected text in the *MATLAB* buffer"
@@ -3139,9 +3267,9 @@ when inside a source block. Otherwise, keep the normal behavior for ctrl-r
 
-
-

Remap ctrl-shift-ref

-
+
+

Remap ctrl-shift-ref

+

This function:

@@ -3162,7 +3290,7 @@ if no region is selected, it runs all the code blocks and goes to the next block "Returns t when the point is inside a source code block" (string= "src" (org-in-block-p '("src")))) - (if (tdh-in-src-block-p) + (if (tdh-in-src-block-p) (let ((lang (nth 0 (org-babel-get-src-block-info)))) (if (string= lang "matlab") (if (region-active-p) @@ -3186,9 +3314,9 @@ if no region is selected, it runs all the code blocks and goes to the next block
-
-

Align Source Blocks

-
+
+

Align Source Blocks

+
(defun tdh-align-src-block ()
   (interactive)
@@ -3196,7 +3324,7 @@ if no region is selected, it runs all the code blocks and goes to the next block
     "Returns t when the point is inside a source code block"
     (string= "src" (org-in-block-p '("src"))))
 
-  (if (tdh-in-src-block-p)
+  (if (tdh-in-src-block-p)
       (progn
         (org-edit-special)
         (evil-indent (point-min) (point-max))
@@ -3207,9 +3335,9 @@ if no region is selected, it runs all the code blocks and goes to the next block
 
-
-

Helping Functions - Tangling ,b

-
+
+

Helping Functions - Tangling ,b

+

Org-Babel Tangle Sub-tree

@@ -3260,9 +3388,9 @@ Map Functions
-
-

Bibliography Management

-
+
+

Bibliography Management

+

My bibliography management is mainly based on the following packages:

@@ -3275,9 +3403,9 @@ My bibliography management is mainly based on the following packages:
-
-

Org Ref (link)

-
+
+

Org Ref (link)

+

Nice Functions:

@@ -3365,9 +3493,9 @@ Nice Functions:
-
-

Org Noter (link)

-
+
+

Org Noter (link)

+
(use-package! org-noter
   :defer t
@@ -3405,9 +3533,9 @@ Nice Functions:
 
-
-

Org Roam (link)

-
+
+

Org Roam (link)

+
(use-package! org-roam
   :custom-face
@@ -3463,7 +3591,7 @@ Automatic export of backlinks
       (dolist (link links)
         (insert (format "- [[file:%s][%s]]\n"
                         (file-relative-name link org-roam-directory)
-                        (org-roam--get-title-or-slug link))))))
+                        (org-roam--get-title-or-slug link))))))
   (add-hook 'org-export-before-processing-hook #'tdh-org-export-preprocessor)
 
 
@@ -3477,12 +3605,56 @@ Automatic export of backlinks
   )
 
+ +

+Create Org-Roam file from heading (link) +

+
+
(defun tdh/make-roam-filepath (title)
+  "Make filename from note TITLE."
+  (concat
+   org-roam-directory
+   (org-roam--title-to-slug title)
+   ".org"))
+
+(defun tdh/insert-org-roam-file (file-path title text)
+  "Insert org roam file in FILE-PATH with TITLE, LINKS, SOURCES, TEXT, QUOTE."
+  (with-temp-file file-path
+    (insert
+     "#+TITLE: " title "\n"
+     "#+SETUPFILE: ./setup/org-setup-file.org\n"
+     "#+HUGO_SECTION: zettels\n"
+     "\n"
+     "- Tags ::\n"
+     "\n"
+     text
+     "\n"
+     "\n"
+     "* Bibliography                                                        :ignore:\n"
+     "bibliography:./biblio/references.bib"
+     "\n"
+     )))
+
+
+(defun tdh/convert-task-to-org-note ()
+  "Convert a task in a `org-roam' note."
+  (interactive)
+  (let* ((heading (org-get-heading t t t t))
+         (body (org-get-entry))
+         (filepath (tdh/make-roam-filepath heading)))
+    (tdh/insert-org-roam-file
+     filepath
+     heading
+     body)
+    (find-file filepath)))
+
+
-
-

Helm-Bibtex (link)

-
+
+

Helm-Bibtex (link)

+
(use-package! helm-bibtex
   :after-call helm-bibtex
@@ -3501,8 +3673,10 @@ Automatic export of backlinks
 
   (setq bibtex-completion-pdf-extension '(".pdf" ".djvu"))
 
-  ;; Use "tags" field when looking for bib entries
-  (setq helm-bibtex-additional-search-fields '(tags))
+  (setq bibtex-completion-additional-search-fields '(keywords))
+
+  ;; Use "keywords" field when looking for bib entries
+  (setq helm-bibtex-additional-search-fields '(keywords))
 
   (setq helm-bibtex-full-frame nil)
 
@@ -3621,9 +3795,9 @@ List all element of the bibliography without pdf associated
 
-
-

Deft

-
+
+

Deft

+
(use-package! deft
   :custom
@@ -3633,9 +3807,9 @@ List all element of the bibliography without pdf associated
 
-
-

Org-Roam-Bibtex (link)

-
+
+

Org-Roam-Bibtex (link)

+

Provides nice functions such as:

@@ -3690,80 +3864,44 @@ Provides nice functions such as:
-
-

Citeproc-org (link)

-
+
+

Citeproc-org (link)

+
(use-package! citeproc-org
   :after org
   :config
-  (citeproc-org-setup))
+  (citeproc-org-setup)
+  (setq citeproc-org-html-backends '(html)))
 
-
-

LaTeX

-
+
+

LaTeX

+ -
-

Master file

-
+
+

Basic Config

+
-
(setq-default TeX-master nil)
+
(after! auctex
+  (setq +latex-viewers '(zathura pdf-tools)))
 
-
-

Clean Output Files

-
-
-
(defun tdh-latex-clean ()
-  "Clean LaTeX output using latexmk"
-  (interactive)
-  (async-shell-command
-   ;; command and parameters
-   "latexmk -c "
-   (shell-quote-argument buffer-file-name)
-   " &"
-   ))
-
-(map! :map LaTeX-mode-map
-      :n ",C" 'tdh-latex-clean)
-
-(add-hook 'TeX-mode-hook #'TeX-fold-mode)
-
-
-
-
- -
-

PDF Viewer

-
-
-
(setq TeX-view-program-selection '((output-pdf "Zathura")))
-(setq TeX-source-correlate-mode t)
-(setq TeX-source-correlate-start-server t)
-(setq TeX-source-correlate-method 'synctex)
-(setq TeX-view-program-list
-      '(("PDF Tools" TeX-pdf-tools-sync-view)))
-
-
-
-
- -
-

Bibtex

-
+
+

Bibtex

+
(use-package! bibtex
   :config
@@ -3774,30 +3912,30 @@ Provides nice functions such as:
 
-
-

Matlab

-
+
+

Matlab

+ -
-

Setup Matlab Mode

-
+
+

Setup Matlab Mode

+
(setq matlab-shell-command "/home/thomas/.local/bin/matlab")
 (setq matlab-shell-command-switches (list "-softwareopengl -nodesktop -nosplash"))
 (setq matlab-indent-function t)
-(setq mlint-programs '("mlint" "/home/thomas/.local/bin/mlint"))
+(setq mlint-programs '("mlint" "/home/thomas/.local/bin/mlint"))
 
-
-

Setup Flycheck to work with mlint

-
+
+

Setup Flycheck to work with mlint

+
(defvar mlint-executable "/home/thomas/.local/bin/mlint")
 
@@ -3817,9 +3955,9 @@ Provides nice functions such as:
 
-
-

Completion in the Matlab Shell

-
+
+

Completion in the Matlab Shell

+
(map! :map matlab-shell-mode-map
       :i "<tab>" 'matlab-shell-tab)
@@ -3828,9 +3966,9 @@ Provides nice functions such as:
 
-
-

Beautify code

-
+
+

Beautify code

+
(defun tdh-matlab-beautify-buffer ()
   "Beautify Current Matlab Buffer"
@@ -3849,9 +3987,9 @@ Provides nice functions such as:
 
-
-

Key Bindings

-
+
+

Key Bindings

+
(defun tdh-matlab-add-breakpoint ()
   (interactive)
@@ -3904,13 +4042,13 @@ Provides nice functions such as:
 
-
-

Mu4e

-
+
+

Mu4e

+
-
-

Resources

-
+
+

Resources

+

Documentation:

@@ -3937,9 +4075,9 @@ Send math and source code:
-
-

Cheatsheet

-
+
+

Cheatsheet

+
@@ -3984,9 +4122,9 @@ Send math and source code: -
-

Helping function

-
+
+

Helping function

+

This is a helper to help determine which account context I am in based on the folder in my maildir the email (eg. ~/.mail/nine27) is located in.

@@ -4023,9 +4161,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
-
-

Basic Config

-
+
+

Basic Config

+
(use-package! mu4e
   :config
@@ -4049,9 +4187,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Additional config

-
+
+

Additional config

+
(use-package! mu4e
   :config
@@ -4078,9 +4216,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Provide Information

-
+
+

Provide Information

+
(use-package! mu4e
   :config
@@ -4098,9 +4236,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Receiving emails using mbsync

-
+
+

Receiving emails using mbsync

+
(use-package! mu4e
   :config
@@ -4113,9 +4251,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Contexts

-
+
+

Contexts

+
(use-package! mu4e
   :config
@@ -4157,9 +4295,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Sending mails

-
+
+

Sending mails

+
(use-package! mu4e
   :config
@@ -4179,9 +4317,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Bookmarks

-
+
+

Bookmarks

+
(use-package! mu4e
   :config
@@ -4199,9 +4337,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Doom init.el

-
+
+

Doom init.el

+
(when noninteractive
   (after! undo-tree
@@ -4270,7 +4408,9 @@ Choose account label to feed msmtp -a option based on From header in Message buf
        go
        (javascript
         +lsp)
-       latex            ; writing papers in Emacs has never been so fun
+       (latex
+        +latexmk
+        +lsp)
        ;; markdown          ; writing docs for people to ignore
        (org              ; organize your plain life in plain text
         +dragndrop       ; drag & drop files/images into org buffers
@@ -4301,40 +4441,115 @@ Choose account label to feed msmtp -a option based on From header in Message buf
 
-
-

Doom packages.el

-
+
+

Doom packages.el

+
-
(package! poet-theme)
+
;; Vimrc
+(package! vimrc-mode)
+
+
+ +
+
;; Automatic toggling of LaTeX fragments
+(package! org-fragtog)
+
+
+ +
+
;; custom blocks and links for org-mode
+(package! org-special-block-extras)
+
+
+ +
+
;; Nice theme
+(package! poet-theme)
+
+
+ +
+
;; Major mode for SPICE
 (package! spice-mode)
+
+
+ +
+
;; Import file to Org-mode
 (package! org-pandoc-import
   :recipe (:host github
            :repo "tecosaur/org-pandoc-import"
            :files ("*.el" "filters" "preprocessors")))
+
+
+
+
;; Renders Org-mode citations in CSL styles
 (package! citeproc-org)
+
+
+ +
+
;; Org-mode modules for citations, cross-references, bibliographies
+(package! org-ref)
+
+
+ +
+
;; Alert notifications for org-agenda
 (package! org-wild-notifier)
+
+
+ +
+
;; Display Google Calendar in org-calendar
 (package! org-gcal)
-;; (package! ox-latex-subfigure
-;;   :recipe (:host github :repo "linktohack/ox-latex-subfigure"))
-;; (package! matlab-mode)
+
+
+ +
+
;; Turn table into subfigure
+(package! ox-latex-subfigure
+  :recipe (:host github :repo "linktohack/ox-latex-subfigure"))
+
+
+ +
+
;; Major Mode for Matlab
 (package! matlab-mode
   :recipe (:host github :repo "matlab-mode/mirror"))
-(package! org-ref)
-(package! citeproc-org)
+
+
+ +
+
;; Org-mode query language
 (package! org-ql)
+
+
+ +
+
;; Display Org Mode priorities as custom strings
 (package! org-fancy-priorities)
-(package! evil-escape :disable t)
-(package! dired-narrow)
+
+
+ +
+
;; Web Server
 (package! web-server)
 
+ +
+
;; Don't use this default package in Doom
+(package! evil-escape :disable t)
+
+

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:08

diff --git a/docs/emacs-library-babel.html b/docs/emacs-library-babel.html index d2a4caa..6be7de5 100644 --- a/docs/emacs-library-babel.html +++ b/docs/emacs-library-babel.html @@ -3,86 +3,92 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + My Own Library of Babel - + + + -
+
+ UP + | + HOME +

My Own Library of Babel

-
-

get-password - Get Password from pass

-
+
+

get-password - Get Password from pass

+
-
pass $passname | sed -n 1p
+
pass $passname | sed -n 1p
 
-
-

pdf2svg - Export to pdf/png/svg at the same time

-
+
+

pdf2svg - Export to pdf/png/svg at the same time

+
-
_mydir="$(pwd)";
-file=$(echo "$file" | cut -f 2- -d ':');
-_figdir=$(dirname "$file");
-cd $_figdir;
-filename=$(echo "${file##*/}" | cut -f 1 -d '.');
-pdftocairo -png -transp -singlefile "$filename.pdf";
-pdftocairo -svg "$filename.pdf";
-cd "$_mydir";
-echo "[[file:$_figdir/$filename.$ext]]"
+
_mydir="$(pwd)";
+file=$(echo "$file" | cut -f 2- -d ':');
+_figdir=$(dirname "$file");
+cd $_figdir;
+filename=$(echo "${file##*/}" | cut -f 1 -d '.');
+pdftocairo -png -transp -singlefile "$filename.pdf";
+pdftocairo -svg "$filename.pdf";
+cd "$_mydir";
+echo "[[file:$_figdir/$filename.$ext]]"
 
-
-

addhdr - Add hline to tables

-
+
+

addhdr - Add hline to tables

+
-
(cons (car tbl) (cons 'hline (cdr tbl)))
+
(cons (car tbl) (cons 'hline (cdr tbl)))
 
-
-

Matlab Related

-
+
+

Matlab Related

+
-
-

matlab-dir Go to current directory

+
+

matlab-dir Go to current directory

-
-

matlab-init Initialize matlab

+
+

matlab-init Initialize matlab

-
-

plt-matlab Plot figures

-
+
+

plt-matlab Plot figures

+

Some variable can be set by block that expands this org source code block:

@@ -92,15 +98,15 @@ Some variable can be set by block that expands this org source code block:
-
if ~exist('filepath') || length(filepath) < 2
-  symbols = ['a':'z' 'A':'Z' '0':'9'];
+
if ~exist('filepath') || length(filepath) < 2
+  symbols = ['a':'z' 'A':'Z' '0':'9'];
   random_string = symbols(randi(numel(symbols),[1 5]));
-  filepath = ['/tmp/matlab-fig-', random_string];
-end
+  filepath = ['/tmp/matlab-fig-', random_string];
+end
 
-size_strings = strsplit(figsize, '-');
+size_strings = strsplit(figsize, '-');
 
-ans = exportFig(filepath, 'width', size_strings{1}, 'height', size_strings{2});
+ans = exportFig(filepath, 'width', size_strings{1}, 'height', size_strings{2});
 
@@ -108,8 +114,8 @@ ans = exportFig(filepath, 'width', size_strings{1}, 'height', size_strings{2});
-

Author: Thomas Dehaeze

-

Created: 2020-05-26 mar. 08:39

+

Author: Dehaeze Thomas

+

Created: 2021-01-01 ven. 20:08

diff --git a/docs/emacs-snippets.html b/docs/emacs-snippets.html index 96c4bc2..e7c28db 100644 --- a/docs/emacs-snippets.html +++ b/docs/emacs-snippets.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Doom Emacs Configuration - - - - - - + + -
-

LaTeX

-
+
+

LaTeX

+
-
-

Coordinate

-
+
+

Coordinate

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :coordinate
@@ -103,9 +102,9 @@ $0
 
-
-

Draw

-
+
+

Draw

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :draw
@@ -117,9 +116,9 @@ $0
 
-
-

Node

-
+
+

Node

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :node
@@ -131,9 +130,9 @@ $0
 
-
-

Path

-
+
+

Path

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :path
@@ -146,13 +145,13 @@ $0
 
-
-

Matlab

-
+
+

Matlab

+
-
-

Clear

-
+
+

Clear

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :clear and close all
@@ -164,9 +163,9 @@ $0
 
-
-

Function

-
+
+

Function

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :function
@@ -206,13 +205,13 @@ if exist('opts_param','
 
-
-

Org Mode

-
+
+

Org Mode

+
-
-

Begin

-
+
+

Begin

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :LaTeX Environment
@@ -225,9 +224,9 @@ if exist('opts_param','
 
-
-

Caption

-
+
+

Caption

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Caption
@@ -238,9 +237,9 @@ if exist('opts_param','
 
-
-

Block

-
+
+

Block

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Org-Mode Block
@@ -256,9 +255,9 @@ if exist('opts_param','
 
-
-

Custom Box

-
+
+

Custom Box

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Custom Box
@@ -272,9 +271,9 @@ $0
 
-
-

Latex Class

-
+
+

Latex Class

+
#name: latex-class
 #key: lc
@@ -287,9 +286,9 @@ $0
 
-
-

Bibliography with completion

-
+
+

Bibliography with completion

+
#name: bibliography with completion
 #key: bib
@@ -300,9 +299,9 @@ bibliography:${1:$$(yas-choose
 
-
-

Cite

-
+
+

Cite

+
#name: org-ref cite link
 #key: cite
@@ -315,9 +314,9 @@ cite:${1:$$(completing-read
 
-
-

Ref

-
+
+

Ref

+
#name: org-ref ref link with completion
 #key: ref
@@ -328,9 +327,9 @@ ref:${1:$$(completing-read 
 
-
-

Beamer - CBOX

-
+
+

Beamer - CBOX

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Beamer Custom Box
@@ -347,9 +346,25 @@ $0
 
-
-

Code

-
+
+

HTML Details

+
+
+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
+#name :details
+# --
+
+#+HTML: <details><summary>${1:Figure}</summary>
+$0
+#+HTML: </details>
+
+
+
+
+ +
+

Code

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Code
@@ -364,9 +379,9 @@ $0
 
-
-

Equation

-
+
+

Equation

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Equation
@@ -380,9 +395,9 @@ $0
 
-
-

Figure

-
+
+

Figure

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Figure
@@ -396,9 +411,9 @@ $0
 
-
-

Frac

-
+
+

Frac

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :LaTeX Fraction
@@ -409,9 +424,9 @@ $0
 
-
-

Left

-
+
+

Left

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Left Right mathematical delimitations
@@ -422,9 +437,9 @@ $0
 
-
-

Minipage

-
+
+

Minipage

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :minipage
@@ -452,9 +467,9 @@ $0
 
-
-

Minipage Figures

-
+
+

Minipage Figures

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Minipage with Figures
@@ -480,9 +495,9 @@ $0
 
-
-

Wrap Figure

-
+
+

Wrap Figure

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Wrap Figure
@@ -498,9 +513,9 @@ $0
 
-
-

Multicolumn

-
+
+

Multicolumn

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Multcolumn
@@ -512,9 +527,9 @@ $0
 
-
-

Subfigure

-
+
+

Subfigure

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Subfigure
@@ -530,9 +545,9 @@ $0
 
-
-

Table

-
+
+

Table

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Table
@@ -549,9 +564,9 @@ $0
 
-
-

Tikz

-
+
+

Tikz

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Tikz figure
@@ -566,9 +581,9 @@ $0
 
-
-

Tikzfig

-
+
+

Tikzfig

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Tikz Figure
@@ -592,9 +607,9 @@ $0
 
-
-

Tikzheader

-
+
+

Tikzheader

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Tikz Header
@@ -615,9 +630,9 @@ $0
 
-
-

User-config

-
+
+

User-config

+
# -*- mode: snippet -*-
 # name: user-config
@@ -631,9 +646,9 @@ $1
 
-
-

User-init

-
+
+

User-init

+

#+begin_src conf :tangle ~/.config/doom/snippets/org-mode/user-init

@@ -647,9 +662,9 @@ $1
-
-

Wrap

-
+
+

Wrap

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Wrap
@@ -661,13 +676,13 @@ $0
 
-
-

Matlab Specific

-
+
+

Matlab Specific

+
-
-

Mconfig

-
+
+

Mconfig

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Matlab-Configuration-Header
@@ -687,9 +702,9 @@ $0
 
-
-

Mdescription

-
+
+

Mdescription

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Measurement-Description
@@ -722,9 +737,9 @@ $0
 
-
-

Mfigure

-
+
+

Mfigure

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Matlab-Figure
@@ -742,9 +757,9 @@ $0
 
-
-

Mfunction

-
+
+

Mfunction

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Matlab-Function
@@ -777,9 +792,9 @@ This Matlab function is accessible [[file:src/$2.m][here]].
 
-
-

Mheader

-
+
+

Mheader

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Matlab-Header
@@ -812,9 +827,9 @@ $0
 
-
-

Minit

-
+
+

Minit

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Matlab-Init
@@ -834,9 +849,9 @@ $0
 
-
-

Mtable

-
+
+

Mtable

+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
 #name :Matlab-Table
@@ -849,12 +864,48 @@ $0
 
+ +
+

Mvalue

+
+
+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
+#name :Matlab-Value
+# --
+#+begin_src matlab :results value replace :exports results :tangle no
+  sprintf('x = %.2g', x);
+#+end_src
+$0
+
+
+
+
+
+ +
+

Binary

+
+
+
#contributor : Thomas Dehaeze <dehaeze.thomas@gmail.com>
+#name :Binary
+# --
+* =${1:binary-name}= - ${2:Description}
+:PROPERTIES:
+:CUSTOM_ID: $1
+:END:
+
+#+begin_src bash :tangle ~/.local/bin/$1
+  $0
+#+end_src
+
+
+

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/git.html b/docs/git.html index a2f2e5a..d351e04 100644 --- a/docs/git.html +++ b/docs/git.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Git Configuration - - - - - - + + -
-

Gitconfig

-
+
+

~/.gitconfig

+
-
-

Aliases

-
+
+

Aliases

+
[alias]
   # View abbreviated SHA, description, and history graph of the latest 20 commits
@@ -130,9 +126,9 @@
 
-
-

Apply

-
+
+

Apply

+
[apply]
   # Detect whitespace errors when applying a patch
@@ -142,9 +138,9 @@
 
-
-

Colors

-
+
+

Colors

+
[color]
   # Use colors in Git commands that are capable of colored output when outputting to the terminal
@@ -178,9 +174,9 @@
 
-
-

Default Remote

-
+
+

Default Remote

+
# Use `origin` as the default remote on the `master` branch in all cases
 [branch "master"]
@@ -191,9 +187,9 @@
 
-
-

Push Configuration

-
+
+

Push Configuration

+
[push]
   default = matching
@@ -204,9 +200,9 @@
 
-
-

User

-
+
+

User

+
[user]
   name = Thomas Dehaeze
@@ -216,9 +212,9 @@
 
-
-

Core configuration

-
+
+

Core configuration

+
[core]
   # Use custom `.gitignore` and `.gitattributes`
@@ -244,9 +240,9 @@
 
-
-

Credentials using pass

-
+
+

Credentials using pass

+
[credential]
     helper = !pass-git-helper $@
@@ -256,14 +252,17 @@
 
 [credential "https://git.tdehaeze.xyz"]
     username = tdehaeze
+
+[credential "https://gitlab.esrf.fr"]
+    username = dehaeze
 
-
-

Diff-so-fancy

-
+
+

Diff-so-fancy

+
[diff-so-fancy]
   markEmptyLines = false
@@ -272,9 +271,9 @@
 
-
-

Github

-
+
+

Github

+
[github]
   user = tdehaeze
@@ -285,9 +284,9 @@
 
-
-

Global Git Ignore

-
+
+

~/.gitignore_global - Global Git Ignore

+
*~
 .DS_Store
@@ -297,9 +296,9 @@ Session.vim
 
-
-

Pass Git Helper

-
+
+

pass-git-helper - Use pass for git passwords

+
[github.com*]
 target=github.com/tdehaeze
@@ -316,7 +315,7 @@ Session.vim
 

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/gtk.html b/docs/gtk.html index 8005811..40cce47 100644 --- a/docs/gtk.html +++ b/docs/gtk.html @@ -1,251 +1,15 @@ - - + - GTK Configuration - - - - - - - - + +
@@ -258,15 +22,15 @@ for the JavaScript code in this tag.

Table of Contents

-
-

GTK-2.0

-
+
+

GTK-2.0

+
gtk-theme-name="Arc-Dark"
 gtk-icon-theme-name="Arc"
@@ -288,9 +52,9 @@ for the JavaScript code in this tag.
 
-
-

GTK-3.0

-
+
+

GTK-3.0

+
[Settings]
 gtk-theme-name=Arc-Dark
@@ -315,7 +79,7 @@ for the JavaScript code in this tag.
 

Author: Dehaeze Thomas

-

Created: 2020-01-11 sam. 22:19

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/i3.html b/docs/i3.html index 18019b4..f3270a0 100644 --- a/docs/i3.html +++ b/docs/i3.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + I3 Configuration - - - - - - + +
-
# i3 config file (v4)
+
# i3 config file (v4)
 
-
-

Mod Key

-
+
+

Mod Key

+

Set mod key (Mod1=<Alt>, Mod4=<Super>)

@@ -66,12 +62,12 @@ Set mod key (Mod1=<Alt>, Mod4=<Super>)
-
-

Border Style

-
+
+

Border Style

+
-
# Use custom colors for black
-new_window pixel 1
+
# Use custom colors for black
+new_window pixel 1
 new_float normal
 
@@ -86,46 +82,46 @@ Hide borders
-
-

Font for window titles

-
+
+

Font for window titles

+
-
font Hack Nerd Font 11
+
font Hack Nerd Font 11
 
-
-

Colors Variables

-
+
+

Colors Variables

+
-
set_from_resource $bg         color0  #000000
-set_from_resource $darkred    color1  #000000
-set_from_resource $darkgreen  color2  #000000
-set_from_resource $darkyellow color3  #000000
-set_from_resource $darkblue   color4  #000000
-set_from_resource $darkpurple color5  #000000
-set_from_resource $darkaqua   color6  #000000
-set_from_resource $darkgray   color7  #000000
-set_from_resource $gray       color8  #000000
-set_from_resource $red        color9  #000000
-set_from_resource $green      color10 #000000
-set_from_resource $yellow     color11 #000000
-set_from_resource $blue       color12 #000000
-set_from_resource $purple     color13 #000000
-set_from_resource $aqua       color14 #000000
-set_from_resource $fg         color15 #000000
+
set_from_resource $bg         color0  #000000
+set_from_resource $darkred    color1  #000000
+set_from_resource $darkgreen  color2  #000000
+set_from_resource $darkyellow color3  #000000
+set_from_resource $darkblue   color4  #000000
+set_from_resource $darkpurple color5  #000000
+set_from_resource $darkaqua   color6  #000000
+set_from_resource $darkgray   color7  #000000
+set_from_resource $gray       color8  #000000
+set_from_resource $red        color9  #000000
+set_from_resource $green      color10 #000000
+set_from_resource $yellow     color11 #000000
+set_from_resource $blue       color12 #000000
+set_from_resource $purple     color13 #000000
+set_from_resource $aqua       color14 #000000
+set_from_resource $fg         color15 #000000
 
-
-

Theme colors

-
+
+

Theme colors

+
-
# class                 border  backgr. text    indic.   child_border
+
# class                 border  backgr. text    indic.   child_border
 client.focused          $darkaqua $darkaqua $fg  $bg
 client.focused_inactive $bg    $bg    $fg     $bg
 client.unfocused        $bg    $bg    $fg     $bg
@@ -137,9 +133,9 @@ client.background       $bg
 
-
-

Various Config

-
+
+

Various Config

+

Layout mode for new containers

@@ -155,56 +151,51 @@ Layout mode for new containers
-
-

Border

-
+
+

Border

+
-
default_border pixel 1
+
default_border pixel 1
 
-
-

Settings for i3-gaps

-
+
+

Settings for i3-gaps

+
-
# for_window [class=".*"] border pixel 0
-
-
- -
-
gaps inner 10
-gaps outer 2
+
gaps inner 10
+gaps outer 2
 
-
-

Workspace names

-
+
+

Workspace names

+

To display names or symbols instead of plain workspace numbers you can use something like: set $ws1 1:mail and set $ws2 2:.

-
set $ws1 1
-set $ws2 2
-set $ws3 3
-set $ws4 4
-set $ws5 5
-set $ws6 6
-set $ws7 7
-set $ws8 8
+
set $ws1 1
+set $ws2 2
+set $ws3 3
+set $ws4 4
+set $ws5 5
+set $ws6 6
+set $ws7 7
+set $ws8 8
 
-
-

Use Mouse+$mod to drag floating windows

-
+
+

Use Mouse+$mod to drag floating windows

+
floating_modifier $mod
 
@@ -212,9 +203,9 @@ set $ws8 8
-
-

Back and Forth

-
+
+

Back and Forth

+
workspace_auto_back_and_forth yes
 
@@ -222,51 +213,49 @@ set $ws8 8
-
-

Application Specific

-
+
+

Application Specific

+
-
-

Open applications on specific workspaces

-
+
+

Open applications on specific workspaces

+
-
assign[title="^Fig"] $ws6 # Matlab Figures
-for_window [title="^Fig"] layout tabbed
-assign[title="^HG_Peer"] $ws6 # Name of window when export figure with matlab
+
assign[title="^Fig"] $ws6 # Matlab Figures
+for_window [title="^Fig"] layout tabbed
+assign[title="^HG_Peer"] $ws6 # Name of window when export figure with matlab
 
-
-

Open specific applications in floating mode

-
+
+

Open specific applications in floating mode

+
-
for_window [title="File Transfer*"] floating enable
-for_window [class="GParted"] floating enable border normal
-for_window [class="Lightdm-settings"] floating enable
-for_window [class="Lxappearance"] floating enable sticky enable border normal
-for_window [class="Pavucontrol"] floating enable
-for_window [class="Arandr"] floating enable
-for_window [class="Simple-scan"] floating enable border normal
-for_window [class="(?i)System-config-printer.py"] floating enable border normal
-for_window [class="Xfburn"] floating enable
-for_window [title="^Documentation -"] floating enable border normal
-for_window [class="Yad"] floating enable
-for_window [title="Bluetooth Devices"] floating enable
-for_window [title="Simulink Library Browser"] floating enable
-for_window [class="Floating"] floating enable, resize set 800 600, move position 1100 460
-for_window [class="Sxiv"] floating enable, resize set 800 600, move position center
-for_window [title="nmtui"] floating enable, resize set 800 600
+
for_window [title="File Transfer*"] floating enable
+for_window [class="GParted"] floating enable border normal
+for_window [class="Lxappearance"] floating enable sticky enable border normal
+for_window [class="Pavucontrol"] floating enable
+for_window [class="Arandr"] floating enable
+for_window [class="Simple-scan"] floating enable border normal
+for_window [class="(?i)System-config-printer.py"] floating enable border normal
+for_window [title="^Documentation -"] floating enable border normal
+for_window [class="Yad"] floating enable
+for_window [title="Bluetooth Devices"] floating enable
+for_window [title="Simulink Library Browser"] floating enable
+for_window [class="Floating"] floating enable, resize set 800 600, move position 1100 460
+for_window [class="Sxiv"] floating enable, resize set 800 600, move position center
+for_window [title="nmtui"] floating enable, resize set 800 600
 
-
-

Scratchpad

-
+
+

Scratchpad

+

Move the currently focused window to the scratchpad

@@ -286,12 +275,12 @@ If there are multiple scratchpad windows, this command cycles through them.
-
-

Run Polybar and SXHKD

-
+
+

Run Polybar and SXHKD

+
-
exec --no-startup-id sxhkd -m 1 -c ~/.config/sxhkd/sxhkdrc.i3
-exec --no-startup-id $HOME/.config/polybar/scripts/launch.sh
+
exec --no-startup-id sxhkd -m 1 -c ~/.config/sxhkd/sxhkdrc.i3
+exec --no-startup-id polybar top >>/tmp/polybar.log 2>&1 &
 
@@ -299,7 +288,7 @@ exec --no-startup-id $HOME/.config/polybar/scripts/launch.sh

Author: Dehaeze Thomas

-

Created: 2020-05-26 mar. 08:40

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/image.html b/docs/image.html index 60405f0..f2e7b22 100644 --- a/docs/image.html +++ b/docs/image.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + SXIV Configuration - - - - - - + +
@@ -43,7 +39,7 @@ done

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/index.html b/docs/index.html index 068d603..bd126ea 100644 --- a/docs/index.html +++ b/docs/index.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Dotfiles - Manjaro Linux - - - - - - + + @@ -42,9 +38,9 @@ The general installation process is described here.

-
-

Desktop Configuration

-
+
+

Desktop Configuration

+
  • Windows Manager: BSPWM and I3
  • Hotkey Manager: SXHKD
  • @@ -58,9 +54,9 @@ The general installation process is described here.
-
-

Editors

-
+
+

Editors

+
  • Vim
  • Doom Emacs
  • @@ -68,9 +64,9 @@ The general installation process is described here.
-
-

Command Line

-
+
+

Command Line

+
  • Bash and ZSH
  • Terminal: Termite
  • @@ -79,9 +75,9 @@ The general installation process is described here.
-
-

Multimedia

-
+
+

Multimedia

+
  • Image
  • Music
  • @@ -90,9 +86,9 @@ The general installation process is described here.
-
-

Internet Related

-
+
+

Internet Related

+
  • Web Browser: Qutebrowser
  • Bookmark Manager: Buku
  • @@ -100,18 +96,18 @@ The general installation process is described here.
-
-

PDF Reader

-
+
+

PDF Reader

+
-
-

File Managers

-
+
+

File Managers

+
  • GUI: Pcmanfm
  • Terminal based: Ranger
  • @@ -119,9 +115,9 @@ The general installation process is described here.
-
-

Organization

-
+
+

Organization

+
  • Calendar
  • Mail
  • @@ -131,9 +127,9 @@ The general installation process is described here.
-
-

Others

-
+
+

Others

+

Author: Dehaeze Thomas

-

Created: 2020-05-26 mar. 08:40

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/inkscape.html b/docs/inkscape.html index 67292d6..2979eea 100644 --- a/docs/inkscape.html +++ b/docs/inkscape.html @@ -3,17 +3,13 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Inkscape - - - - - - + + -
-

Save Selection to SVG extension

-
+
+

Save Selection to SVG extension

+
-
-

ink file

-
+
+

ink file

+
<?xml version="1.0" encoding="utf-8"?>
 <?xml version="1.0" encoding="UTF-8"?>
@@ -77,9 +73,9 @@
 
-
-

py file

-
+
+

py file

+
import os
 import inkex
@@ -128,7 +124,7 @@
 

Author: Dehaeze Thomas

-

Created: 2020-11-03 mar. 16:26

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/install.html b/docs/install.html index f46f263..616b6ae 100644 --- a/docs/install.html +++ b/docs/install.html @@ -3,561 +3,559 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Installation - + + + -
+
+ UP + | + HOME +

Installation

Table of Contents

-
-

Package Manager: yay

-
+
+

Package Manager: yay

+ -
-

Installation

-
+
+

Installation

+
sudo pacman -S yay
 
@@ -565,9 +563,9 @@
-
-

CheatSheet

-
+
+

CheatSheet

+
@@ -623,17 +621,17 @@ To check all installed packages: -
-

Git Setup

-
+
+

Git Setup

+ -
-

Installation

-
+
+

Installation

+
yay -S git
 
@@ -641,9 +639,9 @@ To check all installed packages:
-
-

Configuration

-
+
+

Configuration

+

Git Configuration:

@@ -654,16 +652,16 @@ To check all installed packages:
-
-

Diff-So-Fancy

-
+
+

Diff-So-Fancy

+ -
-

Installation

-
+
+

Installation

+
yay -S diff-so-fancy
 
@@ -671,9 +669,9 @@ To check all installed packages:
-
-

Configuration

-
+
+

Configuration

+
git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX"
 
@@ -682,30 +680,30 @@ To check all installed packages:
-
-

Credential Helper setup with Pass

-
+
+

Credential Helper setup with Pass

+

-This is explained in a further part: Integration of Pass with Git. +This is explained in a further part: Integration of Pass with Git.

-
-

Terminal

-
+
+

Terminal

+ -
-

Termite

-
+
+

Termite

+
-
-

Installation

-
+
+

Installation

+
yay -S termite
 
@@ -713,9 +711,9 @@ This is explained in a further part: Integration of Pass w
-
@@ -778,13 +776,13 @@ This is explained in a further part: Integration of Pass w -
@@ -931,13 +929,13 @@ Most of Urxvt configuration is done in ~/.Xresources -
-

Fonts

-
+
+

Fonts

+
-
-

Installation

-
+
+

Installation

+
yay -S nerd-fonts-complete
 
@@ -961,9 +959,9 @@ For emojis:
-
-

Default fonts

-
+
+

Default fonts

+

Default font used:

@@ -979,9 +977,9 @@ List all fonts available: fc-list
-
-

Select font

-
+
+

Select font

+
yay -S gtk2fontsel
 
@@ -990,21 +988,21 @@ List all fonts available: fc-list
-
-

Text Editors

-
+
+

Text Editors

+
-
-

Neovim

-
+
+

Neovim

+ -
-

Installation

-
+
+

Installation

+
yay -S neovim
 
@@ -1012,9 +1010,9 @@ List all fonts available: fc-list
-
-

Configuration

-
+
+

Configuration

+

Vim configuration

@@ -1022,17 +1020,17 @@ List all fonts available: fc-list
-
-

Emacs

-
+
+

Emacs

+ -
-

Installation

-
+
+

Installation

+
yay -S emacs
 
@@ -1040,18 +1038,18 @@ List all fonts available: fc-list
-
-

Configuration

-
+
+

Configuration

+

Doom Emacs configuration

-
-

SpellCheck with Aspell

-
+
+

SpellCheck with Aspell

+
yay -S aspell aspell-en aspell-fr
 
@@ -1061,13 +1059,13 @@ List all fonts available: fc-list
-
-

SSH setup

-
+
+

SSH setup

+
-
-

Generating a new SSH key

-
+
+

Generating a new SSH key

+
ssh-keygen -t rsa -b 4096 -C "dehaeze.thomas@gmail.com"
 
@@ -1075,9 +1073,9 @@ List all fonts available: fc-list
-
-

Start the ssh-agent in the background

-
+
+

Start the ssh-agent in the background

+
eval "$(ssh-agent -s)"
 
@@ -1085,9 +1083,9 @@ List all fonts available: fc-list
-
-

Add the SSH key to the ssh-agent

-
+
+

Add the SSH key to the ssh-agent

+
ssh-add ~/.ssh/id_rsa
 
@@ -1096,17 +1094,17 @@ List all fonts available: fc-list
-
-

GnuPG

-
+
+

GnuPG

+ -
-

Install the gnupg package:

-
+
+

Install the gnupg package:

+
yay -S gnupg
 
@@ -1114,9 +1112,9 @@ List all fonts available: fc-list
-
-

Create a key pair

-
+
+

Create a key pair

+
gpg --full-gen-key
 
@@ -1124,9 +1122,9 @@ List all fonts available: fc-list
-
-

Configure the gpg-agent to cache the passphrase

-
+
+

Configure the gpg-agent to cache the passphrase

+

Edit the following file ~/.gnupg/gpg-agent.conf

@@ -1139,9 +1137,9 @@ max-cache-ttl 60480000
-
-

Gnome-Keyring and automatic GnuPG key unlocking

-
+
+

Gnome-Keyring and automatic GnuPG key unlocking

+

Note: GNOME users, and by extension any gnome-keyring user may have to follow the instructions at the end of the previous section on enabling autologin.

@@ -1153,9 +1151,9 @@ Alternative: https://github.com/c
-
-

Launcher - Rofi

-
+
+

Launcher - Rofi

+

https://github.com/DaveDavenport/rofi

@@ -1168,9 +1166,9 @@ Alternative:
-
-

Installation

-
+
+

Installation

+
yay -S rofi rofi-calc
 
@@ -1178,9 +1176,9 @@ Alternative:
-
-

Setup rofi as a dmenu replacement

-
+
+

Setup rofi as a dmenu replacement

+

Setup rofi as a dmenu replacement in ~/.i3/config:

@@ -1190,9 +1188,9 @@ bindsym $mod+d exec --no-startup-id rofi -show run
-
-

Run sudo commands with rofi

-
+
+

Run sudo commands with rofi

+
-
-

Password Manager: Pass

-
+
+

Password Manager: Pass

+ -
-

Install the pass package

-
+
+

Install the pass package

+
yay -S pass
 
@@ -1246,9 +1244,9 @@ rofi -dmenu \
-
-

Initialize the password store as a git repository

-
+
+

Initialize the password store as a git repository

+
pass git init
 pass git remote add origin https://github.com/tdehaeze/pass.git
@@ -1257,9 +1255,9 @@ pass git remote add origin https://github.com/tdeh
 
-
-

Gui Manager

-
+
+

Gui Manager

+

https://github.com/IJHack/qtpass

@@ -1271,17 +1269,17 @@ pass git remote add origin https://github.com/tdeh
-
-

Integration with Rofi

-
+
+

Integration with Rofi

+ -
-

Installation

-
+
+

Installation

+
yay -S rofi-pass
 
@@ -1293,9 +1291,9 @@ Then we can add a shortcut to rofi-pass on i3 config.
-
-

Alternative

-
+
+

Alternative

+

https://github.com/ibizaman/pass-clip

@@ -1308,25 +1306,25 @@ Then we can add a shortcut to rofi-pass on i3 config.
-
-

Integration with Browsers

-
+
+

Integration with Browsers

+

-This is explained here. +This is explained here.

-
-

Integration with Git

-
+
+

Integration with Git

+ -
-

Installation

-
+
+

Installation

+
yay -S pass-git-helper
 
@@ -1334,9 +1332,9 @@ This is explained here.
-
-

Configuration

-
+
+

Configuration

+

First, add the relation between repository addresses and entries in pass. This is done in the following config file .config/pass-git-helper/git-pass-mapping.ini:

@@ -1359,9 +1357,9 @@ Then, add the credential helper on the git configuration file ~/.gitconfig
-
-

Integration with other programs

-
+
+

Integration with other programs

+

Integrate pass in other programs is usually very easy, here are few examples:

@@ -1378,9 +1376,9 @@ Integrate pass in other programs is usually very easy, here are few examples:
-
-

Alternative - Bitwarden

-
+
+

Alternative - Bitwarden

+

Bitwarden https://github.com/bitwarden/cli

@@ -1392,17 +1390,17 @@ Bitwarden https://github.com/bitwarde
-
-

Bookmark Manager: Buku

-
+
+

Bookmark Manager: Buku

+
-
-

Installation

-
+
+

Installation

+
yay -S buku
 
@@ -1410,17 +1408,17 @@ Bitwarden https://github.com/bitwarde
-
-

Integration with Rofi

-
+
+

Integration with Rofi

+
-
-

Installation

-
+
+

Installation

+
wget https://raw.githubusercontent.com/carnager/buku_run/master/buku_run -o ~/.local/bin/buku_run
 chmod +x ~/.local/bin/buku_run
@@ -1429,9 +1427,9 @@ Bitwarden https://github.com/bitwarde
 
-
-

Configuration

-
+
+

Configuration

+

The configuration file is here: ~/.config/buku_run/config

@@ -1439,18 +1437,18 @@ The configuration file is here: ~/.config/buku_run/config
-
-

Integration with qutebrowser

-
+ -
-

Synchronization with a git repository

-
+
+

Synchronization with a git repository

+

The database is stored in ~/.local/share/buku/bookmarks.db.

@@ -1480,9 +1478,9 @@ systemctl enable --user bukugit.timer
-
-

Import Bookmarks from Firefox and Chrome

-
+
+

Import Bookmarks from Firefox and Chrome

+

From Firefox, export the bookmarks as html file. Then import the bookmark file using buku -i bookmarks.html. @@ -1492,9 +1490,9 @@ To remove them, use: buku --replace '2018dec20' ''

-
-

Web Interface

-
+
+

Web Interface

+

Run:

@@ -1509,9 +1507,9 @@ And then browse to http://127.0.0.1:5001.
-
-

Cheatsheet

-
+
+

Cheatsheet

+
@@ -1556,9 +1554,9 @@ And then browse to http://127.0.0.1:5001. -
-

Alternatives

-
+ -
-

Browser: qutebrowser

-
+
+

Browser: qutebrowser

+ -
-

Installation

-
+
+

Installation

+
yay -S qutebrowser
 
@@ -1585,13 +1583,13 @@ And then browse to http://127.0.0.1:5001.
-
-

View Pdf inside qutebrowser with pdfjs

-
+
+

View Pdf inside qutebrowser with pdfjs

+
-
-

Installation

-
+
+

Installation

+
yay -S pdfjs
 
@@ -1599,9 +1597,9 @@ And then browse to http://127.0.0.1:5001.
-
-

Usage

-
+
+

Usage

+

When opening a pdf file on qutebrowser, you’ll be ask for options:

@@ -1645,9 +1643,9 @@ When opening a pdf file on qutebrowser, you’ll be ask for options:
-
-

Integration with Pass: the password manager

-
+
+

Integration with Pass: the password manager

+

Add the key-binding on ~/.config/qutebrowser/config.py

@@ -1663,9 +1661,9 @@ It is configured using the ~/.config/qutebrowser/password_fill_rc f
-
-

Integration with Buku

-
+
+

Integration with Buku

+

Custom key binding in ~/.config/qutebrowser/config.py

@@ -1677,9 +1675,9 @@ config.bind('B', 'spawn buku -a {url}')
-
-

Spell Checking

-
+
+

Spell Checking

+
/usr/share/qutebrowser/scripts/dictcli.py install fr-FR
 /usr/share/qutebrowser/scripts/dictcli.py install en-US
@@ -1689,9 +1687,9 @@ config.bind('B', 'spawn buku -a {url}')
 
-
-

Monitors

-
+
+

Monitors

+
yay -S xorg-xrandr arandr
 
@@ -1704,9 +1702,9 @@ config.bind('B', 'spawn buku -a {url}')
-
-

Sound Setup

-
+
+

Sound Setup

+
yay -S pulseaudio pavucontrol
 
@@ -1714,13 +1712,13 @@ config.bind('B', 'spawn buku -a {url}')
-
-

Music Setup

-
+
+

Music Setup

+
-
-

Sound Server - Pulse Audio

-
+
+

Sound Server - Pulse Audio

+

https://wiki.archlinux.org/index.php/PulseAudio

@@ -1743,9 +1741,9 @@ If sound is not working, should run pulseaudio --kill to kill the d
-
-

Audio Server - MPD

-
+
+

Audio Server - MPD

+

https://wiki.archlinux.org/index.php/Music_Player_Daemon

@@ -1755,9 +1753,9 @@ If sound is not working, should run pulseaudio --kill to kill the d

-
-

Installation

-
+
+

Installation

+
yay -S mpd
 
@@ -1765,9 +1763,9 @@ If sound is not working, should run pulseaudio --kill to kill the d
-
-

Automatic Startup

-
+
+

Automatic Startup

+
systemctl start --user mpd.service
 systemctl enable --user mpd.service
@@ -1776,9 +1774,9 @@ systemctl enable --user mpd.service
 
-
-

Command line interface to MPD - MPC

-
+
+

Command line interface to MPD - MPC

+

https://github.com/MusicPlayerDaemon/mpc

@@ -1817,16 +1815,21 @@ To install mpc: yay -S mpc.
-
-

Audio Server with Spotify - Mopidy

-
+
+

Audio Server with Spotify - Mopidy

+

https://github.com/mopidy/mopidy https://medium.com/@theos.space/using-mopidy-with-spotify-and-ncmpcpp-44352f4a2ce8

-
yay -S mopidy mopidy-spotify mopidy-mpd
+
yay -S mopidy
+
+
+ +
+
python3 -m pip install --user mopidy-mpd mopidy-jellyfin mopidy-spotify
 
@@ -1844,17 +1847,17 @@ If mopidy is used, MPD should be disabled. (systemctl disable --user mpd.s
-
-

MPD Client - ncmpcpp

-
+
+

MPD Client - ncmpcpp

+ -
-

Installation

-
+
+

Installation

+
yay -S ncmpcpp
 
@@ -1862,9 +1865,9 @@ If mopidy is used, MPD should be disabled. (systemctl disable --user mpd.s
-
-

Config

-
+
+

Config

+

The main config is located here: ~/.ncmpcpp/config. The key bindings can be configured here: ~/.ncmpcpp/bindings. @@ -1872,9 +1875,9 @@ The key bindings can be configured here: ~/.ncmpcpp/bindings.

-
-

Cheatsheet

-
+
+

Cheatsheet

+

https://pkgbuild.com/~jelle/ncmpcpp/

@@ -1897,17 +1900,17 @@ The key bindings can be configured here: ~/.ncmpcpp/bindings.
-
-

Library Manager - beets

-
+
+

Library Manager - beets

+ -
-

Installation

-
+
+

Installation

+
yay -S beets
 
@@ -1915,18 +1918,18 @@ The key bindings can be configured here: ~/.ncmpcpp/bindings.
-
-

Configuration

-
+
+

Configuration

+

Configuration folder: ~/.config/beets/

-
-

Cheatsheet

-
+
+

Cheatsheet

+
@@ -1953,17 +1956,17 @@ Configuration folder: ~/.config/beets/ -
-

Movies

-
+
+

Movies

+
-
-

Media Player - MPV

-
+
+

Media Player - MPV

+
-
-

Installation

-
+
+

Installation

+
yay -S mpv
 
@@ -1971,18 +1974,18 @@ Configuration folder: ~/.config/beets/
-
-

Key Bindings

-
+
+

Key Bindings

+

The configuration is set in /.config/mpv/input.conf.

-
-

CheatSheet

-
+
+

CheatSheet

+
@@ -2002,17 +2005,17 @@ The configuration is set in /.config/mpv/input.conf. -
-

Chromecast with CATT

-
+
+

Chromecast with CATT

+ -
-

Installation

-
+
+

Installation

+
yay -S catt
 
@@ -2020,9 +2023,9 @@ The configuration is set in /.config/mpv/input.conf.
-
-

Usage to cast videos to chromecast

-
+
+

Usage to cast videos to chromecast

+
@@ -2067,9 +2070,9 @@ The configuration is set in /.config/mpv/input.conf. -
-

Usage for controlling the device

-
+
+

Usage for controlling the device

+
@@ -2161,13 +2164,13 @@ The configuration is set in /.config/mpv/input.conf. -
-

Contact Manager

-
+
+

Contact Manager

+
-
-

Google Conctacts: Khard

-
+
+

Google Conctacts: Khard

+

https://github.com/scheibler/khard

@@ -2192,9 +2195,9 @@ To search with Khard: khard <conctact-name>
-
-

Mu

-
+
+

Mu

+
yay -Ss mu
 
@@ -2208,9 +2211,9 @@ This looks for contacts in all indexed emails.
-
-

Connect with Phone

-
+
+

Connect with Phone

+
yay -S kdeconnect
 
@@ -2219,9 +2222,9 @@ This looks for contacts in all indexed emails.
-
-

Chat Application - Weechat

-
+
+

Chat Application - Weechat

+

https://weechat.org/files/doc/stable/weechat_user.en.html https://wiki.archlinux.org/index.php/WeeChat @@ -2229,9 +2232,9 @@ This looks for contacts in all indexed emails.

-
-

Installation

-
+
+

Installation

+
yay -S weechat
 
@@ -2247,9 +2250,9 @@ Then we install some dependencies
-
-

Enable mouse support

-
+
+

Enable mouse support

+
/mouse enable
 
@@ -2257,9 +2260,9 @@ Then we install some dependencies
-
-

Scripts

-
+
+

Scripts

+
@@ -2308,9 +2311,9 @@ Then we install some dependencies -
-

Theme

-
+ -
-

Configuration

-
+ -
-

Multi-line messages

-
+
+

Multi-line messages

+

Solution is provided here: https://github.com/wee-slack/wee-slack/issues/118 It uses multiline.pl script. @@ -2380,9 +2383,9 @@ And enter is bound to magic_enter that directly sends the message i

-
-

Send message using $EDITOR

-
+
+

Send message using $EDITOR

+

https://github.com/keith/edit-weechat

@@ -2399,9 +2402,9 @@ Then, on weechat, type /edit.
-
-

CheatSheet

-
+
+

CheatSheet

+
@@ -2441,17 +2444,17 @@ Then, on weechat, type /edit. -
-

Slack Integration

-
+
+

Slack Integration

+ -
-

Installation

-
+
+

Installation

+
yay -S python2-websocket-client
 
@@ -2467,9 +2470,9 @@ wget https://raw.githubusercontent.com/wee-slack/wee-slack/master/wee_slack.py
-
-

Add your Slack API key(s)

-
+
+

Add your Slack API key(s)

+

Log in to Slack:

@@ -2507,27 +2510,27 @@ If you don’t want to store your API token in plaintext you can use the sec
-
-

Aspell

-
+ -
-

Notifications

-
+ -
-

Deamon and Client

-
+
+

Deamon and Client

+

Weechat is started with the systemd service weechat. It runs weechat inside tmux. @@ -2536,9 +2539,9 @@ It runs weechat inside tmux.

-
-

Redshift

-
+
+

Redshift

+

http://jonls.dk/redshift/

@@ -2550,26 +2553,26 @@ It runs weechat inside tmux.
-
-

Mail Setup

-
+
+

Mail Setup

+

Link to the mail setup.

-
-

Synchronize Mailboxes - Mbsync

-
+
+

Synchronize Mailboxes - Mbsync

+ -
-

Installation

-
+
+

Installation

+
yay -S isync
 
@@ -2577,22 +2580,22 @@ It runs weechat inside tmux.
-
-

Configuration

-
+
+

Configuration

+

~/.mbsyncrc

-
-

Automation using systemd

-
+
+

Automation using systemd

+
-
-
Retreive New mails
-
+
+
Retreive New mails
+
  • checkmail
  • ~/.config/systemd/user/checkmail.service
  • @@ -2607,9 +2610,9 @@ systemctl --user start checkmail.timer
-
-
Synchronize all the mailboxes
-
+
+
Synchronize all the mailboxes
+
  • ~/.config/systemd/user/syncmail.service
  • ~/.config/systemd/user/syncmail.timer
  • @@ -2625,17 +2628,17 @@ systemctl --user start syncmail.timer
-
-

Send Mails - Msmtp

-
+
+

Send Mails - Msmtp

+ -
-

Installation

-
+
+

Installation

+
yay -S msmtp
 
@@ -2644,26 +2647,26 @@ systemctl --user start syncmail.timer
-
-

Mail Index, Search and Tagging - Mu

-
+
+

Mail Index, Search and Tagging - Mu

+
-
-

Mail Client - NeoMutt

-
+
+

Mail Client - NeoMutt

+ -
-

Installation

-
+
+

Installation

+
yay -S neomutt
 
@@ -2671,9 +2674,9 @@ systemctl --user start syncmail.timer
-
-

Display html mails

-
+
+

Display html mails

+
yay -S w3m
 
@@ -2681,9 +2684,9 @@ systemctl --user start syncmail.timer
-
-

Open Url from mail

-
+
+

Open Url from mail

+
yay -S urlview
 
@@ -2691,9 +2694,9 @@ systemctl --user start syncmail.timer
-
-

Ressources

-
+ -
-

Notification system

-
+
+

Notification system

+

A script (checkmail) is used to retreive new mails and use notify=send is there are new received mails.

@@ -2713,9 +2716,9 @@ A script (checkmail) is used to retreive new mails and use no
-
-

File Manager

-
+
+

File Manager

+

Configuration files:

@@ -2725,16 +2728,16 @@ Configuration files:
-
-

Ranger

-
+
+

Ranger

+ -
-

Installation

-
+
+

Installation

+
yay -S ranger
 
@@ -2742,18 +2745,18 @@ Configuration files:
-
-

Configuration

-
+
+

Configuration

+

The configuration file is ~/.config/ranger/rc.conf.

-
-

Display pdf

-
+
+

Display pdf

+

All the display of the files are defined in ~/.config/ranger/scope.sh.

@@ -2769,9 +2772,9 @@ It works better with Urxvt.
-
-

GUI File Manager: pcmanfm

-
+
+

GUI File Manager: pcmanfm

+

https://wiki.archlinux.org/index.php/PCManFM

@@ -2779,22 +2782,22 @@ It works better with Urxvt.
-
-

Image viewer

-
+
+

Image viewer

+
-
-

sxiv

-
+
+

sxiv

+ -
-

Installation

-
+
+

Installation

+
yay -S sxiv
 
@@ -2802,9 +2805,9 @@ It works better with Urxvt.
-
-

Open Gif

-
+
+

Open Gif

+
sxiv -a file.gif
 
@@ -2812,9 +2815,9 @@ It works better with Urxvt.
-
-

Cheatsheet

-
+
+

Cheatsheet

+
@@ -2866,9 +2869,9 @@ It works better with Urxvt. -
-

HotKeyManager - SXHKD

-
+
+

HotKeyManager - SXHKD

+
yay -S sxhkd
 
@@ -2880,17 +2883,17 @@ Configuration file: SXHKD.
-
-

Windows Manager - i3

-
+
+

Windows Manager - i3

+

Link to the documentation

-
-

Installation

-
+
+

Installation

+
yay -S i3-gaps
 
@@ -2898,9 +2901,9 @@ Configuration file: SXHKD.
-
-

Configuration

-
+
+

Configuration

+

~/.i3/config

@@ -2908,9 +2911,9 @@ Configuration file: SXHKD.
-
-

Polybar

-
+
+

Polybar

+

https://polybar.github.io/

@@ -2920,9 +2923,9 @@ Configuration file: SXHKD.

-
-

Installation

-
+
+

Installation

+
yay -S polybar
 
@@ -2931,9 +2934,9 @@ Configuration file: SXHKD.
-
-

Compositor - Picom

-
+
+

Compositor - Picom

+

https://wiki.archlinux.org/index.php/Picom

@@ -2943,9 +2946,9 @@ Configuration file: SXHKD.

-
-

Installation

-
+
+

Installation

+
yay -S picom
 
@@ -2953,18 +2956,18 @@ Configuration file: SXHKD.
-
-

Configuration

-
+
+

Configuration

+

~/.config/picom/picom.conf

-
-

Automatic run as daemon

-
+
+

Automatic run as daemon

+

Compton is run from .xprofile config in the background:

@@ -2976,18 +2979,18 @@ Compton is run from .xprofile config in the background:
-
-

Notification Manager - Dunst

-
+
+

Notification Manager - Dunst

+ -
-

Installation

-
+
+

Installation

+
yay -S dunst dunstify
 
@@ -2995,18 +2998,18 @@ Compton is run from .xprofile config in the background:
-
-

Configuration

-
+
+

Configuration

+

~/.config/dunst/dunstrc

-
-

Usage

-
+
+

Usage

+
dunstify --replace=16549 "AppName" "Message"
 
@@ -3020,13 +3023,13 @@ same application for instance.
-
-

Office Suite

-
+
+

Office Suite

+
-
-

WPS Office

-
+
+

WPS Office

+
yay -S wps-office wps-office-extension-french-dictionary ttf-wps-fonts
 
@@ -3041,9 +3044,9 @@ Alternatives are:
-
-

Minimap SpreadSheet - SC-IM

-
+
+

Minimap SpreadSheet - SC-IM

+

https://github.com/andmarti1424/sc-im https://www.youtube.com/watch?v=K_8_gazN7h0 @@ -3061,21 +3064,21 @@ It permits to open Excel files on the terminal very quickly.

-
-

Managing Theme

-
+
+

Managing Theme

+
-
-

GTK Themes

-
+
+

GTK Themes

+

Gtk2 themes are managed using the file ~/.gtkrc-2.0 while Gtk3 themes are managed using ~/.config/gtk-3.0/settings.ini.

-
-

Gui Manager

-
+
+

Gui Manager

+

To customize the look of the system using GUI application, run lxappearance.

@@ -3090,9 +3093,9 @@ Installation:
-
-

Icons and themes

-
+
+

Icons and themes

+
yay -S zukitwo-themes faenza-icon-theme
 
@@ -3106,18 +3109,18 @@ Installation:
-
-

QT Themes

-
+
+

QT Themes

+

Run qt5ct to manage QT Themes.

-
-

XFT Themes

-
+
+

XFT Themes

+

Some configuration are located in ~/.Xresources.

@@ -3125,13 +3128,13 @@ Some configuration are located in ~/.Xresources.
-
-

Advanced config

-
+
+

Advanced config

+
-
-

Printer

-
+
+

Printer

+

https://wiki.archlinux.org/index.php/CUPS Web based administration: http://localhost:631/ @@ -3185,9 +3188,9 @@ Stats about the printer

-
-

Kernel Management

-
+
+

Kernel Management

+

https://wiki.manjaro.org/index.php/Manjaro_Kernels

@@ -3213,17 +3216,22 @@ Stats about the printer
- - + + + + + + +
 Change current kernelsudo mhwd-kernel -i linux419Install new kernel
sudo mhwd-kernel -i linux419 rmcInstall new kernel and remove old one
-
-

Power Management Tool: Powertop

-
+
+

Power Management Tool: Powertop

+
-
-

Lid open/close

-
+
+

Lid open/close

+

https://wiki.archlinux.org/index.php/Power_management

@@ -3280,9 +3288,9 @@ Should automatic show lock screen
-
-

Automatically Mount devices - Udiskie

-
+
+

Automatically Mount devices - Udiskie

+

udiskie - Mount and unmount disks (https://github.com/coldfix/udiskie)

@@ -3298,9 +3306,9 @@ Automatically run udiskie on startup.
-
-

Format disks

-
+
+

Format disks

+

https://gparted.org/

@@ -3318,9 +3326,9 @@ Using command line:
-
-

Bluetooth

-
+
+

Bluetooth

+

Bluetooth manager: https://github.com/blueman-project/blueman blueman-manager @@ -3329,13 +3337,13 @@ Bluetooth manager: https://

-
-

LaTeX

-
+
+

LaTeX

+
-
-

Installation

-
+
+

Installation

+
yay -S texlive-most
 
@@ -3359,11 +3367,11 @@ Support for source code using minted:
-
-

Personnal classes/packages

-
+
+

Personnal classes/packages

+

-Every custom class or packages can be put under ~/texmf/tex/latex/local/ folder. +Every custom class or packages can be put under ~/.local/share/texmf/tex/latex/local/ folder.

@@ -3372,17 +3380,17 @@ In order for LaTeX to be aware of new packages/classes, run sudo texhash

-
-

From screenshot to latex math formula

-
+
+

From screenshot to latex math formula

+ -
-

Installation

-
+
+

Installation

+
yay -S mathpix-snipping-tool
 
@@ -3392,21 +3400,21 @@ In order for LaTeX to be aware of new packages/classes, run sudo texhash
-
-

Mathematical Software

-
+
+

Mathematical Software

+
-
-

Insect

-
+
+

Insect

+ -
-

Installation

-
+
+

Installation

+
yay -S insect
 
@@ -3414,9 +3422,9 @@ In order for LaTeX to be aware of new packages/classes, run sudo texhash
-
-

Usage

-
+
+

Usage

+
@@ -3442,9 +3450,9 @@ In order for LaTeX to be aware of new packages/classes, run sudo texhash -
-

Matlab

-
+
+

Matlab

+

https://wiki.archlinux.org/index.php/MATLAB#Installation

@@ -3455,9 +3463,9 @@ In order for LaTeX to be aware of new packages/classes, run sudo texhash
-
-

Installation

-
+
+

Installation

+
yay -S matlab
 
@@ -3470,18 +3478,18 @@ If there is a problem when opening a Simulink file, check the solution -

SageMath

-
+
+

SageMath

+
-
-

Installation

-
+
+

Installation

+
yay -S sagemath
 
@@ -3489,18 +3497,18 @@ If there is a problem when opening a Simulink file, check the solution -

Usage

-
+
+

Usage

+

Run sage -n jupyter to run jupyter notebooks

-
-

Documentation

-
+ -
-

Download Manager

-
+
+

Download Manager

+
-
-

Torrent Client - deluge

-
+
+

Torrent Client - deluge

+ -
-

Installation

-
+
+

Installation

+
yay -S deluge
 
@@ -3534,18 +3542,18 @@ Run sage -n jupyter to run jupyter notebooks
-
-

Configuration

-
+
+

Configuration

+

~/.config/deluge/

-
-

Command Line Interface

-
+
+

Command Line Interface

+

https://whatbox.ca/wiki/deluge_console_documentation

@@ -3558,18 +3566,18 @@ Then run the CLI client using deluge-console.
-
-

Youtube-dl

-
+
+

Youtube-dl

+
yay -S youtube-dl
 
-
-

Download best audio

-
+
+

Download best audio

+
youtube-dl -f bestaudio url
 
@@ -3577,9 +3585,9 @@ Then run the CLI client using deluge-console.
-
-

Download best video with audio

-
+
+

Download best video with audio

+
youtube-dl -f best url
 
@@ -3589,20 +3597,20 @@ Then run the CLI client using deluge-console.
-
-

Default Applications

-
+
+

Default Applications

+ -
-

Mailcap file

+
+

Mailcap file

-
-

XDG-OPEN

-
+
+

XDG-OPEN

+

~/.config/mimeapps.list

@@ -3610,9 +3618,9 @@ Then run the CLI client using deluge-console.
-
-

Desktop files

-
+
+

Desktop files

+

Desktop Applications

@@ -3623,9 +3631,9 @@ Then run the CLI client using deluge-console.
-
-

Bibliography Management

-
+
+

Bibliography Management

+
@@ -3715,9 +3723,9 @@ Command line based: -
-

Automation - Systemd

-
+
+

Automation - Systemd

+

First, run

@@ -3743,17 +3751,17 @@ To check the status of the service:
-
-

Calendar Client - Khal

-
+
+

Calendar Client - Khal

+ -
-

Installation

-
+
+

Installation

+
yay -S khal
 
@@ -3761,9 +3769,9 @@ To check the status of the service:
-
-

Import ICS files

-
+
+

Import ICS files

+
khal import even.ics
 
@@ -3773,9 +3781,9 @@ To check the status of the service:
-
-

RSS Reader

-
+
+

RSS Reader - newsboat

+

GUI Alternatives:

@@ -3797,9 +3805,9 @@ On the phone:
-
-

Newsboat

-
+
+

Newsboat

+

Link to configuration.

@@ -3810,9 +3818,9 @@ On the phone:

-
-

Installation

-
+
+

Installation

+
yay -S newboat
 
@@ -3820,9 +3828,9 @@ On the phone:
-
-

Configuration

-
+
+

Configuration

+

https://newsboat.org/releases/2.12/docs/newsboat.html ~/.newsboat/ @@ -3830,9 +3838,9 @@ On the phone:

-
-

CheatSheet

-
+
+

CheatSheet

+
-
-

Task Manager

-
+
+

Task Manager - Org Mode

-
-

OrgMode and Emacs

-
-
-

Wunderline

- - -
-

Installation

-
-
-
yay -S wunderline
-
-
-
-
- -
-

Cheatsheet

-
-

-Add a task with: -

-
    -
  • wunderline add <task>
  • -
- -
- - --- -- - - - - - - - - - - - - - - - - - - - - - - -
OptionsUsage
--today 
--tomorrow 
--note <note> 
- -

-Other commands: -

-
    -
  • wunderline inbox
  • -
  • wunderline today
  • -
-
-
-
-
- -
-

PDF Reader: Zathura

-
+
+

PDF Reader - Zathura

+ -
-

Installation

-
+
+

Installation

+
yay -S zathura
 
@@ -3950,18 +3881,18 @@ It seems that mupdf is better that poppler to view pdf.
-
-

Configuration

-
+
+

Configuration

+

~/.config/zathura/zathurarc

-
-

Cheatsheet

-
+
+

Cheatsheet

+
@@ -4046,9 +3977,9 @@ It seems that mupdf is better that poppler to view pdf. -
-

Multi-monitor pdf presentation - pdfpc

-
+
+

Multi-monitor pdf presentation - pdfpc

+

https://github.com/pdfpc/pdfpc

@@ -4064,9 +3995,9 @@ pdfpc is a great tool for showing pdf presentations. It support:
-
-

Installation

-
+
+

Installation

+
yay -S pdfpc
 
@@ -4074,9 +4005,9 @@ pdfpc is a great tool for showing pdf presentations. It support:
-
-

Video support

-
+
+

Video support

+
yay -S gst-plugins-ugly gst-plugins-good gst-plugins-base-libs gst-plugins-base gst-plugins-bad gst-libav
 
@@ -4084,9 +4015,9 @@ pdfpc is a great tool for showing pdf presentations. It support:
-
-

Usage

-
+
+

Usage

+
pdfpc filename.pdf
 
@@ -4096,9 +4027,32 @@ pdfpc is a great tool for showing pdf presentations. It support:
-
-

Theme manager

-
+
+

DisplayManager - None

+
+

+Before, I was using lightDM, but a single tty is enough. +

+ +

+However, to make tools like Anydesk or Teamviewer to work: +Add “type=x11” in /etc/pam.d/system-login: +

+
+
-session optional pam_systemd.so type=x11
+
+
+ +
    +
  • When executing loginctl session-status | grep Service X11 should appear as initialized.
  • +
  • echo $XDG_SESSION_TYPE should show x11 instead of tty now
  • +
+
+
+ +
+

Theme manager

+

The idea would be to have a command that changes the theme of all the system.

@@ -4144,9 +4098,9 @@ Possible theme managers:
-
-

Base16

-
+
+

Base16

+ -
-

Base16 Philosophy

-
+
+

Base16 Philosophy

+

Define colors according to rules: http://chriskempson.com/projects/base16/ Then we can use these colors multiple applications. @@ -4164,9 +4118,9 @@ Then we can use these colors multiple applications.

-
-

Base16-shell

-
+
+

Base16-shell

+

https://github.com/chriskempson/base16-shell

@@ -4185,9 +4139,9 @@ This changes the shell colors. This should be added to ~/.bashrc:
-
-

Base16-manager

-
+
+

Base16-manager

+

https://github.com/AuditeMarlow/base16-manager

@@ -4200,9 +4154,9 @@ This help changes many applications colors at once.
-
-

Streaming - OBS

-
+
+

Streaming - OBS

+
yay -Ss obs-studio
 
@@ -4221,9 +4175,40 @@ yay -S v4l2loopback-dkms-git
-
-

Graphical Editor

-
+
+

Use Android phone as webcam - Droidcam

+
+
+
yay -S droidcam
+
+
+ +

+Install and run droidcam on the Android phone. +Once both are connected to the same network, run the following command: +

+
+
droidcam-cli -v -size=1280x720 192.168.1.51 4747
+
+
+ +

+It will create a new video device accessible for all kinds of applications. +

+ +

+To view the flux using mpv: +

+
+
mpv av://v4l2:/dev/video0
+
+
+
+
+ +
+

Graphical Editor - Inskape

+
-
-

VPN Setup with NordVPN

-
+
+

Remote Desktop - Anydesk

+
+
+
yay -S anydesk-bin
+
+
+
+
+ +
+

Wireguard

+
+
+
yay -S wireguard-tools
+
+
+
+
+ +
+

VPN Setup with NordVPN

+ -
-

Installation

-
+
+

Installation

+
yay -S nordvpn-bin
 
@@ -4250,9 +4255,9 @@ yay -S v4l2loopback-dkms-git
-
-

Configuration

-
+
+

Configuration

+
sudo systemctl enable nordvpnd.service
 sudo systemctl start nordvpnd.service
@@ -4261,9 +4266,9 @@ yay -S v4l2loopback-dkms-git
 
-
-

Usage

-
+
+

Usage

+
@@ -4308,9 +4313,9 @@ yay -S v4l2loopback-dkms-git -
-

Alternative: Use NordVPM with openVPN Instead

-
+
+

Alternative: Use NordVPM with openVPN Instead

+

https://github.com/nstinus/nordvpn https://github.com/jotyGill/openpyn-nordvpn @@ -4320,16 +4325,16 @@ yay -S v4l2loopback-dkms-git

-
-

Others

-
+
+

Others

+
-
-

Wallpaper: xwallpaper

+
+

Wallpaper: xwallpaper

-
-

Interact with API

-
+
+

Interact with API

+
-
-

Take Screenshot

-
+
+

Take Screenshot

+
-
-

File transfer

-
+
+

Show pressed keys

+
+
+
yay -S screenkey
+
+
+
+
+ +
+

File transfer

+

https://github.com/schollz/croc

@@ -4366,9 +4381,9 @@ yay -S v4l2loopback-dkms-git
-
-

Utilities

-
+
+

Utilities

+
-
-

Trash

-
+
+

Trash

+

trash-cli is used to manage the trash. It is integrated with Ranger. @@ -4395,13 +4410,13 @@ It is integrated with Ranger.

-
-

Usefull commands

-
+
+

Usefull commands

+
-
-

Find files or directories

-
+
+

Find files or directories

+
-
-

Show informations about the machine

-
+
+

Show informations about the machine

+
-
-

Work with PDF

-
+
+

Work with PDF

+

pdftk

-
-

Separate PDF

-
+
+

Separate PDF

+

pdfseparate -f 1 -l 6 file.pdf split%d.pdf Will create split1.pdf to split6.pdf files corresponding to correct pages of file.pdf. @@ -4440,9 +4455,9 @@ Will create split1.pdf to split6.pdf files correspondi

-
-

Readline

-
+
+

Readline

+

https://wiki.archlinux.org/index.php/Keyboard_shortcuts

@@ -4470,9 +4485,9 @@ Will create split1.pdf to split6.pdf files correspondi
-
-

Cursor Movement

-
+
+

Cursor Movement

+
@@ -4522,9 +4537,9 @@ Will create split1.pdf to split6.pdf files correspondi -
-

Copy & Paste

-
+
+

Copy & Paste

+
@@ -4584,9 +4599,9 @@ Will create split1.pdf to split6.pdf files correspondi -
-

History

-
+
+

History

+
@@ -4641,9 +4656,9 @@ Will create split1.pdf to split6.pdf files correspondi -
-

Completion

-
+
+

Completion

+
@@ -4679,9 +4694,9 @@ Will create split1.pdf to split6.pdf files correspondi -
-

Google translate from the command line

-
+
+

Google translate from the command line

+
yay -S translate-shell
 
@@ -4694,9 +4709,9 @@ Will create split1.pdf to split6.pdf files correspondi
-
-

Others

-
+
+

Others

+
@@ -4858,9 +4873,9 @@ Will create split1.pdf to split6.pdf files correspondi -
-

Archive and Extract

-
+
+

Archive and Extract

+

Use apack and aunpack:

@@ -4893,9 +4908,9 @@ Use apack and aunpack:
-
-

Hardware

-
+
+

Hardware

+
@@ -4924,9 +4939,9 @@ Use apack and aunpack: -
-

Network

-
+
+

Network

+
@@ -4956,25 +4971,29 @@ Use apack and aunpack: -
-

Bash Snippets

-
-
-
-

For loop

-
+
+

Enable TRIM (SSD only)

+
-
for file in ./*; do
-  command ${file};
-done
+
sudo systemctl enable --now fstrim.timer
 
+ +
+

Set the fastest mirror for Pacman

+
+
+
sudo pacman-mirrors --fasttrack
+
-
-

Some notes - Systemd

-
+
+
+ +
+

Some notes - Systemd

+

To improve the startup time.

@@ -4996,13 +5015,13 @@ To see next timers
-
-

Ressources

-
+
+

Ressources

+
-
-

Dotfiles

-
+
+

Dotfiles

+
-
-

Linux Softwares

-
+
+

Linux Softwares

+
-
-

List of all the install programs

-
+
+

List of all the install programs

+
-
-

Tmux

-
+
+

Tmux

+

tmux - Terminal multiplexer reattach-to-user-namespace - Reattach process (e.g., tmux) to background @@ -5043,18 +5062,18 @@ reattach-to-user-namespace - Reattach process (e.g., tmux) to background

-
-

Git

-
+
+

Git

+

bfg - Removes large or troublesome blobs like git-filter-branch does, but faster

-
-

Text Editors

-
+
+

Text Editors

+

aspell - Spell checker with better logic than ispell vim - Vi ’workalike’ with many additional features @@ -5063,12 +5082,12 @@ neovim - Ambitious Vim-fork focused on extensibility and agility

-
-

LaTeX

+
+

LaTeX

-
-

Mutt

-
+
+

Mutt

+

neomutt - Teaching an Old Dog New Tricks msmtp - SMTP client that can be used as an SMTP plugin for Mutt @@ -5086,9 +5105,9 @@ shared-mime-info - Database of common MIME types

-
-

Micro controllers

-
+
+

Micro controllers

+

avrdude - Atmel AVR MCU programmer bootloadhid - USB boot loader for AVR microcontrollers @@ -5100,9 +5119,9 @@ arduino-mk - Makefile for Arduino sketches

-
-

File Management

-
+
+

File Management

+
@@ -5181,9 +5200,9 @@ arduino-mk - Makefile for Arduino sketches -
-

File Downloader

-
+
+

File Downloader

+

wget - Internet file retriever you-get - Dumb downloader that scrapes the web @@ -5197,9 +5216,9 @@ aria2 - lightweight download utility

-
-

Utils

-
+
+

Utils

+

binutils - GNU Binary Utilities coreutils - GNU File, Shell, and Text utilities @@ -5209,9 +5228,9 @@ moreutils - Collection of tools that nobody wrote when UNIX was young

-
-

A trier

-
+
+

A trier

+
@@ -5342,8 +5361,8 @@ moreutils - Collection of tools that nobody wrote when UNIX was young
-

Author: Thomas Dehaeze

-

Created: 2020-11-03 mar. 16:26

+

Author: Dehaeze Thomas

+

Created: 2021-01-01 ven. 20:09

diff --git a/docs/js/bootstrap.min.js b/docs/js/bootstrap.min.js deleted file mode 100644 index c8f82e5..0000000 --- a/docs/js/bootstrap.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! - * Bootstrap v3.3.4 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){return a(b.target).is(this)?b.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.4",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a(f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.4",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?a=!1:b.find(".active").removeClass("active")),a&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active"));a&&this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target);d.hasClass("btn")||(d=d.closest(".btn")),b.call(d,"toggle"),c.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.4",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));return a>this.$items.length-1||0>a?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){return this.sliding?void 0:this.slide("next")},c.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.4",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){b&&3===b.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=c(d),f={relatedTarget:this};e.hasClass("open")&&(e.trigger(b=a.Event("hide.bs.dropdown",f)),b.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger("hidden.bs.dropdown",f)))}))}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.4",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(this.options.viewport.selector||this.options.viewport),this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c&&c.$tip&&c.$tip.is(":visible")?void(c.hoverState="in"):(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.options.container?a(this.options.container):this.$element.parent(),p=this.getPosition(o);h="bottom"==h&&k.bottom+m>p.bottom?"top":"top"==h&&k.top-mp.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.width&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type)})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;(e||!/destroy|hide/.test(b))&&(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.4",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.4",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.4",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return c>e?"top":!1;if("bottom"==this.affixed)return null!=c?e+this.unpin<=f.top?!1:"bottom":a-d>=e+g?!1:"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&c>=e?"top":null!=d&&i+j>=a-d?"bottom":!1},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=a(document.body).height();"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); \ No newline at end of file diff --git a/docs/js/jquery.min.js b/docs/js/jquery.min.js deleted file mode 100644 index 25714ed..0000000 --- a/docs/js/jquery.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! jQuery v2.1.3 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ -!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l=a.document,m="2.1.3",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!n.isArray(a)&&a-parseFloat(a)+1>=0},isPlainObject:function(a){return"object"!==n.type(a)||a.nodeType||n.isWindow(a)?!1:a.constructor&&!j.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=l.createElement("script"),b.text=a,l.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:g.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(e=d.call(arguments,2),f=function(){return a.apply(b||this,e.concat(d.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:k}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=hb(),z=hb(),A=hb(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},eb=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fb){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function gb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+rb(o[l]);w=ab.test(a)&&pb(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function hb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ib(a){return a[u]=!0,a}function jb(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function kb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function lb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function nb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function ob(a){return ib(function(b){return b=+b,ib(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pb(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=gb.support={},f=gb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=gb.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",eb,!1):e.attachEvent&&e.attachEvent("onunload",eb)),p=!f(g),c.attributes=jb(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=jb(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=jb(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(jb(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),jb(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&jb(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return lb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?lb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},gb.matches=function(a,b){return gb(a,null,null,b)},gb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return gb(b,n,null,[a]).length>0},gb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},gb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},gb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},gb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=gb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=gb.selectors={cacheLength:50,createPseudo:ib,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||gb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&gb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=gb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||gb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ib(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ib(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ib(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ib(function(a){return function(b){return gb(a,b).length>0}}),contains:ib(function(a){return a=a.replace(cb,db),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ib(function(a){return W.test(a||"")||gb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:ob(function(){return[0]}),last:ob(function(a,b){return[b-1]}),eq:ob(function(a,b,c){return[0>c?c+b:c]}),even:ob(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:ob(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:ob(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:ob(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function sb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function tb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ub(a,b,c){for(var d=0,e=b.length;e>d;d++)gb(a,b[d],c);return c}function vb(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wb(a,b,c,d,e,f){return d&&!d[u]&&(d=wb(d)),e&&!e[u]&&(e=wb(e,f)),ib(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ub(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:vb(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=vb(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=vb(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sb(function(a){return a===b},h,!0),l=sb(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sb(tb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wb(i>1&&tb(m),i>1&&rb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xb(a.slice(i,e)),f>e&&xb(a=a.slice(e)),f>e&&rb(a))}m.push(c)}return tb(m)}function yb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=vb(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&gb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ib(f):f}return h=gb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,yb(e,d)),f.selector=a}return f},i=gb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&pb(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&rb(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&pb(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=jb(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),jb(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||kb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&jb(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||kb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),jb(function(a){return null==a.getAttribute("disabled")})||kb(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),gb}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:l,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=l.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=l,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};A.prototype=n.fn,y=n(l);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?g.call(n(a),this[0]):g.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(C[a]||n.unique(e),B.test(a)&&e.reverse()),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(b=a.memory&&l,c=!0,g=e||0,e=0,f=h.length,d=!0;h&&f>g;g++)if(h[g].apply(l[0],l[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,h&&(i?i.length&&j(i.shift()):b?h=[]:k.disable())},k={add:function(){if(h){var c=h.length;!function g(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&g(c)})}(arguments),d?f=h.length:b&&(e=c,j(b))}return this},remove:function(){return h&&n.each(arguments,function(a,b){var c;while((c=n.inArray(b,h,c))>-1)h.splice(c,1),d&&(f>=c&&f--,g>=c&&g--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],f=0,this},disable:function(){return h=i=b=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,b||k.disable(),this},locked:function(){return!i},fireWith:function(a,b){return!h||c&&!i||(b=b||[],b=[a,b.slice?b.slice():b],d?i.push(b):j(b)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!c}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(H.resolveWith(l,[n]),n.fn.triggerHandler&&(n(l).triggerHandler("ready"),n(l).off("ready"))))}});function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}n.ready.promise=function(b){return H||(H=n.Deferred(),"complete"===l.readyState?setTimeout(n.ready):(l.addEventListener("DOMContentLoaded",I,!1),a.addEventListener("load",I,!1))),H.promise(b)},n.ready.promise();var J=n.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)n.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};n.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+K.uid++}K.uid=1,K.accepts=n.acceptData,K.prototype={key:function(a){if(!K.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=K.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,n.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(n.isEmptyObject(f))n.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(E)||[])),c=d.length;while(c--)delete g[d[c]]}},hasData:function(a){return!n.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var L=new K,M=new K,N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}M.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return M.hasData(a)||L.hasData(a)},data:function(a,b,c){return M.access(a,b,c) -},removeData:function(a,b){M.remove(a,b)},_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=M.get(f),1===f.nodeType&&!L.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));L.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){M.set(this,a)}):J(this,function(b){var c,d=n.camelCase(a);if(f&&void 0===b){if(c=M.get(f,a),void 0!==c)return c;if(c=M.get(f,d),void 0!==c)return c;if(c=P(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=M.get(this,d);M.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&M.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){M.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=L.get(a,b),c&&(!d||n.isArray(c)?d=L.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return L.get(a,c)||L.access(a,c,{empty:n.Callbacks("once memory").add(function(){L.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthx",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var U="undefined";k.focusinBubbles="onfocusin"in a;var V=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,X=/^(?:focusinfocus|focusoutblur)$/,Y=/^([^.]*)(?:\.(.+)|)$/;function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return typeof n!==U&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(E)||[""],j=b.length;while(j--)h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.hasData(a)&&L.get(a);if(r&&(i=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&(delete r.handle,L.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,m,o,p=[d||l],q=j.call(b,"type")?b.type:b,r=j.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||l,3!==d.nodeType&&8!==d.nodeType&&!X.test(q+n.event.triggered)&&(q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),k=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=r.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},e||!o.trigger||o.trigger.apply(d,c)!==!1)){if(!e&&!o.noBubble&&!n.isWindow(d)){for(i=o.delegateType||q,X.test(i+q)||(g=g.parentNode);g;g=g.parentNode)p.push(g),h=g;h===(d.ownerDocument||l)&&p.push(h.defaultView||h.parentWindow||a)}f=0;while((g=p[f++])&&!b.isPropagationStopped())b.type=f>1?i:o.bindType||q,m=(L.get(g,"events")||{})[b.type]&&L.get(g,"handle"),m&&m.apply(g,c),m=k&&g[k],m&&m.apply&&n.acceptData(g)&&(b.result=m.apply(g,c),b.result===!1&&b.preventDefault());return b.type=q,e||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!n.acceptData(d)||k&&n.isFunction(d[q])&&!n.isWindow(d)&&(h=d[k],h&&(d[k]=null),n.event.triggered=q,d[q](),n.event.triggered=void 0,h&&(d[k]=h)),b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(L.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(g.namespace))&&(a.handleObj=g,a.data=g.data,e=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(a.result=e)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>=0:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]*)\/>/gi,bb=/<([\w:]+)/,cb=/<|&#?\w+;/,db=/<(?:script|style|link)/i,eb=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/^$|\/(?:java|ecma)script/i,gb=/^true\/(.*)/,hb=/^\s*\s*$/g,ib={option:[1,""],thead:[1,"
","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ib.optgroup=ib.option,ib.tbody=ib.tfoot=ib.colgroup=ib.caption=ib.thead,ib.th=ib.td;function jb(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function kb(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function lb(a){var b=gb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function mb(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function nb(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function ob(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pb(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}n.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=ob(h),f=ob(a),d=0,e=f.length;e>d;d++)pb(f[d],g[d]);if(b)if(c)for(f=f||ob(a),g=g||ob(h),d=0,e=f.length;e>d;d++)nb(f[d],g[d]);else nb(a,h);return g=ob(h,"script"),g.length>0&&mb(g,!i&&ob(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,o=a.length;o>m;m++)if(e=a[m],e||0===e)if("object"===n.type(e))n.merge(l,e.nodeType?[e]:e);else if(cb.test(e)){f=f||k.appendChild(b.createElement("div")),g=(bb.exec(e)||["",""])[1].toLowerCase(),h=ib[g]||ib._default,f.innerHTML=h[1]+e.replace(ab,"<$1>")+h[2],j=h[0];while(j--)f=f.lastChild;n.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));k.textContent="",m=0;while(e=l[m++])if((!d||-1===n.inArray(e,d))&&(i=n.contains(e.ownerDocument,e),f=ob(k.appendChild(e),"script"),i&&mb(f),c)){j=0;while(e=f[j++])fb.test(e.type||"")&&c.push(e)}return k},cleanData:function(a){for(var b,c,d,e,f=n.event.special,g=0;void 0!==(c=a[g]);g++){if(n.acceptData(c)&&(e=c[L.expando],e&&(b=L.cache[e]))){if(b.events)for(d in b.events)f[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);L.cache[e]&&delete L.cache[e]}delete M.cache[c[M.expando]]}}}),n.fn.extend({text:function(a){return J(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=jb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=jb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(ob(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&mb(ob(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(ob(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return J(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!db.test(a)&&!ib[(bb.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(ab,"<$1>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(ob(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(ob(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,m=this,o=l-1,p=a[0],q=n.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&eb.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(c=n.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(f=n.map(ob(c,"script"),kb),g=f.length;l>j;j++)h=c,j!==o&&(h=n.clone(h,!0,!0),g&&n.merge(f,ob(h,"script"))),b.call(this[j],h,j);if(g)for(i=f[f.length-1].ownerDocument,n.map(f,lb),j=0;g>j;j++)h=f[j],fb.test(h.type||"")&&!L.access(h,"globalEval")&&n.contains(i,h)&&(h.src?n._evalUrl&&n._evalUrl(h.src):n.globalEval(h.textContent.replace(hb,"")))}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),g=e.length-1,h=0;g>=h;h++)c=h===g?this:this.clone(!0),n(e[h])[b](c),f.apply(d,c.get());return this.pushStack(d)}});var qb,rb={};function sb(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function tb(a){var b=l,c=rb[a];return c||(c=sb(a,b),"none"!==c&&c||(qb=(qb||n("")) + (after! org + (setq yt-iframe-format + ;; You may want to change your width and height. + (concat "
")) - (org-add-link-type - "yt" - (lambda (handle) - (browse-url - (concat "https://www.youtube.com/embed/" - handle))) - (lambda (path desc backend) - (cl-case backend - (html (format yt-iframe-format - path (or desc ""))) - (md (format "{{< youtube %s >}}" + (org-add-link-type + "yt" + (lambda (handle) + (browse-url + (concat "https://www.youtube.com/embed/" + handle))) + (lambda (path desc backend) + (cl-case backend + (html (format yt-iframe-format + path (or desc ""))) + (md (format "{{< youtube %s >}}" path)) - (latex (format "\href{%s}{%s}" - path (or desc "video")))))) + (latex (format "\\href{%s}{%s}" + (concat "https://www.youtube.com/embed/" + path) (or desc "video")))))) + ) #+end_src ** Org Gcal @@ -1563,7 +1614,7 @@ https://www.reddit.com/r/emacs/comments/d3a8or/pretty_org_tables_in_the_buffer_c ("8kjmhe2ar0abnm054ill1fb0gc@group.calendar.google.com" . "~/Cloud/org/gcal_phd.org"))) ;; Automatic fetch of the new events ;; (add-hook 'org-agenda-mode-hook (lambda () (org-gcal-fetch) )) - ) + ) #+end_src ** Citeproc-Org @@ -1582,6 +1633,9 @@ https://www.reddit.com/r/emacs/comments/d3a8or/pretty_org_tables_in_the_buffer_c :init (setq alert-default-style 'libnotify) :config + (setq org-wild-notifier-alert-time '(10 5)) + (setq org-wild-notifier-notification-title "Org Agenda") + (org-wild-notifier-mode) ) #+end_src @@ -1724,7 +1778,7 @@ Take Screenshot and insert a link: (setq filename (read-string "Enter file name:" (car (split-string (file-name-base buffer-file-name) "_")))) (setq filename (read-string "Enter file name:"))) (setq filepath (concat "./figs/" filename ".png")) - (shell-command (concat "maim -s " filepath)) + (shell-command (concat "maim -u -s " filepath)) (insert (format "#+name: fig:%s\n#+caption:\n[[file:%s]]" filename filepath)) (search-backward "caption") (end-of-line) @@ -1795,6 +1849,14 @@ Map Keys #+end_src *** Org LaTeX Automatic fragment +#+begin_src emacs-lisp + (use-package! org-fragtog + :after org + :config + (add-hook 'org-mode-hook 'org-fragtog-mode) + ) +#+end_src + #+begin_src emacs-lisp (defun tdh-automatic-latex-fragment-activate () (interactive) @@ -2476,6 +2538,47 @@ Automatic export of backlinks ) #+end_src +Create Org-Roam file from heading ([[https://ag91.github.io/blog/2020/11/12/write-org-roam-notes-via-elisp/][link]]) +#+begin_src emacs-lisp + (defun tdh/make-roam-filepath (title) + "Make filename from note TITLE." + (concat + org-roam-directory + (org-roam--title-to-slug title) + ".org")) + + (defun tdh/insert-org-roam-file (file-path title text) + "Insert org roam file in FILE-PATH with TITLE, LINKS, SOURCES, TEXT, QUOTE." + (with-temp-file file-path + (insert + "#+TITLE: " title "\n" + "#+SETUPFILE: ./setup/org-setup-file.org\n" + "#+HUGO_SECTION: zettels\n" + "\n" + "- Tags ::\n" + "\n" + text + "\n" + "\n" + "* Bibliography :ignore:\n" + "bibliography:./biblio/references.bib" + "\n" + ))) + + + (defun tdh/convert-task-to-org-note () + "Convert a task in a `org-roam' note." + (interactive) + (let* ((heading (org-get-heading t t t t)) + (body (org-get-entry)) + (filepath (tdh/make-roam-filepath heading))) + (tdh/insert-org-roam-file + filepath + heading + body) + (find-file filepath))) +#+end_src + ** Helm-Bibtex ([[https://github.com/tmalsburg/helm-bibtex][link]]) #+begin_src emacs-lisp (use-package! helm-bibtex @@ -2662,7 +2765,8 @@ Provides nice functions such as: (use-package! citeproc-org :after org :config - (citeproc-org-setup)) + (citeproc-org-setup) + (setq citeproc-org-html-backends '(html))) #+end_src * LaTeX @@ -3081,27 +3185,86 @@ Choose account label to feed msmtp -a option based on From header in Message buf :END: #+begin_src emacs-lisp + ;; Vimrc (package! vimrc-mode) +#+end_src + +#+begin_src emacs-lisp + ;; Automatic toggling of LaTeX fragments + (package! org-fragtog) +#+end_src + +#+begin_src emacs-lisp + ;; custom blocks and links for org-mode + (package! org-special-block-extras) +#+end_src + +#+begin_src emacs-lisp + ;; Nice theme (package! poet-theme) +#+end_src + +#+begin_src emacs-lisp + ;; Major mode for SPICE (package! spice-mode) +#+end_src + +#+begin_src emacs-lisp + ;; Import file to Org-mode (package! org-pandoc-import :recipe (:host github :repo "tecosaur/org-pandoc-import" :files ("*.el" "filters" "preprocessors"))) +#+end_src +#+begin_src emacs-lisp + ;; Renders Org-mode citations in CSL styles (package! citeproc-org) +#+end_src + +#+begin_src emacs-lisp + ;; Org-mode modules for citations, cross-references, bibliographies + (package! org-ref) +#+end_src + +#+begin_src emacs-lisp + ;; Alert notifications for org-agenda (package! org-wild-notifier) +#+end_src + +#+begin_src emacs-lisp + ;; Display Google Calendar in org-calendar (package! org-gcal) - ;; (package! ox-latex-subfigure - ;; :recipe (:host github :repo "linktohack/ox-latex-subfigure")) - ;; (package! matlab-mode) +#+end_src + +#+begin_src emacs-lisp + ;; Turn table into subfigure + (package! ox-latex-subfigure + :recipe (:host github :repo "linktohack/ox-latex-subfigure")) +#+end_src + +#+begin_src emacs-lisp + ;; Major Mode for Matlab (package! matlab-mode :recipe (:host github :repo "matlab-mode/mirror")) - (package! org-ref) - (package! citeproc-org) +#+end_src + +#+begin_src emacs-lisp + ;; Org-mode query language (package! org-ql) +#+end_src + +#+begin_src emacs-lisp + ;; Display Org Mode priorities as custom strings (package! org-fancy-priorities) - (package! evil-escape :disable t) - (package! dired-narrow) +#+end_src + +#+begin_src emacs-lisp :tangle no + ;; Web Server (package! web-server) #+end_src + +#+begin_src emacs-lisp + ;; Don't use this default package in Doom + (package! evil-escape :disable t) +#+end_src diff --git a/emacs-library-babel.org b/emacs-library-babel.org index 49dbd88..285f87e 100644 --- a/emacs-library-babel.org +++ b/emacs-library-babel.org @@ -1,4 +1,5 @@ #+TITLE: My Own Library of Babel +#+SETUPFILE: ./setup/org-setup-file.org * =get-password= - Get Password from =pass= diff --git a/emacs-snippets.org b/emacs-snippets.org index bb15fe7..c9d4cd6 100644 --- a/emacs-snippets.org +++ b/emacs-snippets.org @@ -1,23 +1,6 @@ #+TITLE: Doom Emacs Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args :comments none :eval no :mkdir yes :results none :padline no -:END: * LaTeX ** Coordinate @@ -195,6 +178,17 @@ ref:${1:$$(completing-read "label: " (org-ref-get-labels))} $0 #+end_src +** HTML Details +#+begin_src conf :tangle ~/.config/doom/snippets/org-mode/details +#contributor : Thomas Dehaeze +#name :details +# -- + +#+HTML:
${1:Figure} +$0 +#+HTML:
+#+end_src + ** Code #+begin_src conf :tangle ~/.config/doom/snippets/org-mode/code #contributor : Thomas Dehaeze @@ -585,3 +579,18 @@ $0 ,#+end_src $0 #+end_src + +** Binary +#+begin_src conf :tangle ~/.config/doom/snippets/org-mode/binary +#contributor : Thomas Dehaeze +#name :Binary +# -- +,* =${1:binary-name}= - ${2:Description} +:PROPERTIES: +:CUSTOM_ID: $1 +:END: + +,#+begin_src bash :tangle ~/.local/bin/$1 + $0 +,#+end_src +#+end_src diff --git a/git.org b/git.org index ce27f93..bbc91ce 100644 --- a/git.org +++ b/git.org @@ -1,23 +1,7 @@ #+TITLE: Git Configuration -:DRAWER: -#+STARTUP: overview +#+SETUPFILE: ./setup/org-setup-file.org -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: - -* Gitconfig +* =~/.gitconfig= :PROPERTIES: :header-args:conf: :tangle ~/.gitconfig :header-args:conf+: :comments both :mkdirp yes @@ -209,7 +193,7 @@ oauth-token = 8cc5b41120f7e9a869c24fa3678667d3d8422e6f #+END_SRC -* Global Git Ignore +* =~/.gitignore_global= - Global Git Ignore :PROPERTIES: :header-args:conf: :tangle ~/.gitignore_global :header-args:conf+: :comments both :mkdirp yes @@ -221,7 +205,7 @@ Session.vim #+END_SRC -* Pass Git Helper +* =pass-git-helper= - Use =pass= for git passwords :PROPERTIES: :header-args: :tangle ~/.config/pass-git-helper/git-pass-mapping.ini :header-args+: :comments both :mkdirp yes diff --git a/gtk.org b/gtk.org index 3641016..fe8e1fd 100644 --- a/gtk.org +++ b/gtk.org @@ -1,21 +1,5 @@ #+TITLE: GTK Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+SETUPFILE: ./setup/org-setup-file.org * GTK-2.0 :PROPERTIES: diff --git a/i3.org b/i3.org index 2b4305f..e62f876 100644 --- a/i3.org +++ b/i3.org @@ -1,25 +1,8 @@ #+TITLE: I3 Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:conf :comments none #+PROPERTY: header-args:conf+ :mkdirp yes #+PROPERTY: header-args:conf+ :tangle ~/.config/i3/config -:END: #+begin_src conf # i3 config file (v4) @@ -95,10 +78,6 @@ Layout mode for new containers #+end_src * Settings for i3-gaps -#+begin_src conf - # for_window [class=".*"] border pixel 0 -#+end_src - #+begin_src conf gaps inner 10 gaps outer 2 @@ -140,13 +119,11 @@ To display names or symbols instead of plain workspace numbers you can use somet #+begin_src conf for_window [title="File Transfer*"] floating enable for_window [class="GParted"] floating enable border normal - for_window [class="Lightdm-settings"] floating enable for_window [class="Lxappearance"] floating enable sticky enable border normal for_window [class="Pavucontrol"] floating enable for_window [class="Arandr"] floating enable for_window [class="Simple-scan"] floating enable border normal for_window [class="(?i)System-config-printer.py"] floating enable border normal - for_window [class="Xfburn"] floating enable for_window [title="^Documentation -"] floating enable border normal for_window [class="Yad"] floating enable for_window [title="Bluetooth Devices"] floating enable @@ -171,5 +148,5 @@ If there are multiple scratchpad windows, this command cycles through them. * Run Polybar and SXHKD #+begin_src conf exec --no-startup-id sxhkd -m 1 -c ~/.config/sxhkd/sxhkdrc.i3 - exec --no-startup-id $HOME/.config/polybar/scripts/launch.sh + exec --no-startup-id polybar top >>/tmp/polybar.log 2>&1 & #+end_src diff --git a/image.org b/image.org index fd6f668..4979b79 100644 --- a/image.org +++ b/image.org @@ -1,25 +1,9 @@ #+TITLE: SXIV Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:conf :tangle ~/.config/sxiv/exec/key-handler #+PROPERTY: header-args:conf+ :comments both :mkdirp yes #+PROPERTY: header-args:conf+ :shebang "#!/usr/bin/env bash" -:END: Press =C-x= to activate to key handler. diff --git a/index.org b/index.org index 95d0f7d..607aaa8 100644 --- a/index.org +++ b/index.org @@ -1,21 +1,5 @@ #+TITLE: Dotfiles - Manjaro Linux -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+SETUPFILE: ./setup/org-setup-file.org The general installation process is described [[file:install.org][here]]. diff --git a/inkscape.org b/inkscape.org index fcc3026..1081967 100644 --- a/inkscape.org +++ b/inkscape.org @@ -1,24 +1,8 @@ #+TITLE: Inkscape -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args :comments no #+PROPERTY: header-args+ :mkdirp yes -:END: * Save Selection to SVG extension ** =ink= file diff --git a/install.org b/install.org index 39a84bf..5c5c540 100644 --- a/install.org +++ b/install.org @@ -1,4 +1,5 @@ #+TITLE: Installation +#+SETUPFILE: ./setup/org-setup-file.org * Package Manager: yay https://github.com/Jguer/yay @@ -43,7 +44,7 @@ https://github.com/so-fancy/diff-so-fancy *** Configuration #+begin_src bash -git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX" + git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX" #+end_src ** Credential Helper setup with Pass @@ -513,7 +514,11 @@ https://github.com/mopidy/mopidy https://medium.com/@theos.space/using-mopidy-with-spotify-and-ncmpcpp-44352f4a2ce8 #+begin_src bash - yay -S mopidy mopidy-spotify mopidy-mpd + yay -S mopidy +#+end_src + +#+begin_src bash + python3 -m pip install --user mopidy-mpd mopidy-jellyfin mopidy-spotify #+end_src To update local files: @@ -1056,10 +1061,11 @@ Stats about the printer ** Kernel Management https://wiki.manjaro.org/index.php/Manjaro_Kernels -| Command | Usage | -|-------------------+--------------------------------| -| =mhwd-kernel -li= | Determine which kernel is used | -| | Change current kernel | +| Command | Usage | +|------------------------------------+---------------------------------------| +| =mhwd-kernel -li= | Determine which kernel is used | +| =sudo mhwd-kernel -i linux419= | Install new kernel | +| =sudo mhwd-kernel -i linux419 rmc= | Install new kernel and remove old one | ** Power Management Tool: Powertop https://wiki.archlinux.org/index.php/Powertop @@ -1257,7 +1263,7 @@ https://github.com/pimutils/vdirsyncer *** Installation #+begin_src bash - yay -S vdirsyncer + yay -S vdirsyncer python-requests-oauthlib #+end_src #+begin_src bash @@ -1298,7 +1304,7 @@ https://github.com/pimutils/khal khal import even.ics #+end_src -* RSS Reader +* RSS Reader - newsboat GUI Alternatives: - http://www.rssowl.org/ - https://github.com/jangernert/FeedReader @@ -1325,32 +1331,8 @@ https://newsboat.org/releases/2.12/docs/newsboat.html *** CheatSheet https://newsboat.org/releases/2.12/docs/newsboat.html#available-operations -* Task Manager -** OrgMode and Emacs -** Wunderline -https://itsfoss.com/linux-client-wunderlist/ -http://wayneashleyberry.github.io/wunderline/ - -*** Installation -#+begin_src bash - yay -S wunderline -#+end_src - -*** Cheatsheet -Add a task with: -- =wunderline add = - -| Options | Usage | -|-----------------+-------| -| =--today= | | -| =--tomorrow= | | -| =--note = | | - -Other commands: -- =wunderline inbox= -- =wunderline today= - -* PDF Reader: Zathura +* Task Manager - Org Mode +* PDF Reader - Zathura https://pwmt.org/projects/zathura/ ** Installation #+begin_src bash @@ -1408,6 +1390,18 @@ pdfpc is a great tool for showing pdf presentations. It support: pdfpc filename.pdf #+end_src +* DisplayManager - None +Before, I was using lightDM, but a single tty is enough. + +However, to make tools like Anydesk or Teamviewer to work: +Add "type=x11" in =/etc/pam.d/system-login=: +#+begin_src conf + -session optional pam_systemd.so type=x11 +#+end_src + +- When executing =loginctl session-status | grep Service= X11 should appear as initialized. +- =echo $XDG_SESSION_TYPE= should show =x11= instead of =tty= now + * Theme manager The idea would be to have a command that changes the theme of all the system. @@ -1469,7 +1463,6 @@ https://github.com/AuditeMarlow/base16-manager This help changes many applications colors at once. * Streaming - OBS - #+begin_src bash yay -Ss obs-studio #+end_src @@ -1482,10 +1475,38 @@ http://dlaw.me/webcam-spoofing-with-obs/ sudo modprobe v4l2loopback exclusive_caps=1 video_nr=9 #+end_src -* Graphical Editor +* Use Android phone as webcam - Droidcam +#+begin_src bash + yay -S droidcam +#+end_src + +Install and run droidcam on the Android phone. +Once both are connected to the same network, run the following command: +#+begin_src bash + droidcam-cli -v -size=1280x720 192.168.1.51 4747 +#+end_src + +It will create a new video device accessible for all kinds of applications. + +To view the flux using mpv: +#+begin_src bash + mpv av://v4l2:/dev/video0 +#+end_src + +* Graphical Editor - Inskape - https://inkscape.org/ - Tikz +* Remote Desktop - Anydesk +#+begin_src bash + yay -S anydesk-bin +#+end_src + +* Wireguard +#+begin_src bash + yay -S wireguard-tools +#+end_src + * VPN Setup with NordVPN https://aur.archlinux.org/packages/nordvpn-bin/ https://wiki.archlinux.org/index.php/NordVPN @@ -1529,6 +1550,11 @@ https://nordvpn.com/fr/tutorials/linux/openvpn/ yay -S maim flameshot #+end_src +** Show pressed keys +#+begin_src bash + yay -S screenkey +#+end_src + ** File transfer https://github.com/schollz/croc @@ -1676,13 +1702,6 @@ Use =apack= and =aunpack=: | =ethtooo eth0= | Tool to show ethernet status | | =netstat -tulp= | List all active listening ports | -* Bash Snippets -** For loop -#+begin_src bash -for file in ./*; do - command ${file}; -done -#+end_src * Enable TRIM (SSD only) #+begin_src bash sudo systemctl enable --now fstrim.timer diff --git a/latex.org b/latex.org index 0b9161e..04027ea 100644 --- a/latex.org +++ b/latex.org @@ -1,21 +1,5 @@ #+TITLE: LaTeX Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+SETUPFILE: ./setup/org-setup-file.org * Awesome LaTeX - https://github.com/cmichi/latex-template-collection diff --git a/mail.org b/mail.org index fe5578b..b563087 100644 --- a/mail.org +++ b/mail.org @@ -1,26 +1,11 @@ #+TITLE: Mail Configuration -:DRAWER: -#+STARTUP: overview +#+SETUPFILE: ./setup/org-setup-file.org -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: - -* Synchronize Mailboxes - Mbsync +* =mbsync= - Synchronize Mailboxes :PROPERTIES: :header-args:conf: :tangle ~/.mbsyncrc :header-args:conf+: :comments both :mkdirp yes +:CUSTOM_ID: mbsync :END: http://isync.sourceforge.net/ @@ -268,10 +253,11 @@ For doing a quick sync of just the INBOX with `mbsync uliege-download`. Sync Pull #+END_SRC -* Send Mails - Msmtp +* =msmtp= - Send Mails :PROPERTIES: :header-args:conf: :tangle ~/.config/msmtp/config :header-args:conf+: :comments both :mkdirp yes +:CUSTOM_ID: msmtp :END: https://marlam.de/msmtp/ @@ -335,7 +321,13 @@ https://marlam.de/msmtp/ account default : gmail #+END_SRC -* Mail Indexer - Mu +* =mu= - Mail Indexer +:PROPERTIES: +:header-args:conf: :tangle ~/.config/neomutt/neomuttrc +:header-args:conf+: :comments both :mkdirp yes +:CUSTOM_ID: mu +:END: + =Mu= ([[https://github.com/djcb/mu][github]]) it used as a "maildir indexer/searcher". Useful commands are described in the [[http://www.djcbsoftware.nl/code/mu/cheatsheet.html][Cheat-sheet]]. @@ -344,10 +336,11 @@ For instance, to find mails with =pdf= attachments: mu find 'mime:application/pdf' #+end_src -* Mail Client - NeoMutt +* =neomutt= - Mail Client :PROPERTIES: :header-args:conf: :tangle ~/.config/neomutt/neomuttrc :header-args:conf+: :comments both :mkdirp yes +:CUSTOM_ID: neomutt :END: https://neomutt.org/ @@ -1258,15 +1251,17 @@ This empty code block is used to add a new line after signature set sig_on_top # the signature is just below the response set edit_headers # show headers when composing set fast_reply # skip to compose when replying - set askcc # ask for CC: set fcc_attach # save attachments with the body - set mime_forward = yes # forward attachments as part of body - set forward_format = "Fwd: %s" # format of subject when forwarding - set forward_decode # decode when forwarding set attribution = "On %d, %n wrote:" # format of quoting header set reply_to # reply to Reply to: field set reverse_name # reply as whomever it was to set include # include message in replies +#+END_SRC + +*** Forward +#+BEGIN_SRC conf + set forward_format = "Fwd: %s" # format of subject when forwarding + set forward_decode # decode when forwarding set forward_quote # include message in forwards #+END_SRC diff --git a/matlab.org b/matlab.org index e14c2da..61ed1c6 100644 --- a/matlab.org +++ b/matlab.org @@ -1,26 +1,9 @@ #+TITLE: Matlab Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:matlab :mkdir yes #+PROPERTY: header-args:matlab+ :exports code #+PROPERTY: header-args:matlab+ :eval no-export #+PROPERTY: header-args:matlab+ :results silent -:END: * Startup :PROPERTIES: @@ -158,6 +141,11 @@ Toolbox to work with Finite Element Models ([[https://github.com/tdehaeze/fem_ma addpath([toolboxes_path 'fem_toolbox/src']) #+end_src +Toolbox to work with fractional order models ([[https://github.com/extall/fomcon-matlab][link]]). +#+begin_src matlab + addpath(genpath([toolboxes_path 'fomcon-matlab'])) +#+end_src + ** Clear #+begin_src matlab clear; diff --git a/music.org b/music.org index b769d4f..ad9d5be 100644 --- a/music.org +++ b/music.org @@ -1,26 +1,11 @@ #+TITLE: Music/Sound Configuration -:DRAWER: -#+STARTUP: overview +#+SETUPFILE: ./setup/org-setup-file.org -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: - -* Pavu Control +* =pavucontrol= - Volume Control :PROPERTIES: :header-args: :tangle ~/.config/pavucontrol.ini :header-args+: :comments both :mkdirp yes +:CUSTOM_ID: pavucontrol :END: #+BEGIN_SRC conf @@ -34,7 +19,62 @@ showVolumeMeters=1 #+END_SRC -* NCMPCPP +* =mopidy= - Music Server +:PROPERTIES: +:header-args:conf: :tangle ~/.config/mopidy/mopidy.conf +:header-args:conf+: :comments none :mkdirp yes :noweb no-export +:CUSTOM_ID: mopidy +:END: + +#+begin_src conf + [spotify] + username = dehaeze.thomas@gmail.com + password = <> + client_id = 9dd02534-f038-46d8-946e-bfe72498204e + client_secret = <> + bitrate = 320 + + [mpd] + enabled = true + hostname = 127.0.0.1 + port = 6600 + password = + max_connections = 20 + connection_timeout = 60 + zeroconf = Mopidy MPD server on $hostname + command_blacklist = listall,listallinfo + default_playlist_scheme = m3u + + [jellyfin] + hostname = https://jellyfin.tdehaeze.xyz/ + username = tdehaeze + password = <> + libraries = Music + albumartistsort = True + album_format = {ProductionYear} - {Name} + + [file] + enabled = true + media_dirs = /home/thomas/Music + excluded_file_extensions = + .db + .directory + .html + .jpeg + .jpg + .log + .nfo + .pdf + .png + .txt + .zip +#+end_src + +* =ncmpcpp= - Ncurses based MPD client +:PROPERTIES: +:CUSTOM_ID: ncmpcpp +:END: + https://rybczak.net/ncmpcpp/ Cheatsheet: https://pkgbuild.com/~jelle/ncmpcpp/ @@ -126,10 +166,11 @@ Sorting by tracking number and then title #+end_src -* Beets +* =beets= - Media library management :PROPERTIES: :header-args:conf: :tangle ~/.config/beets/config.yaml :header-args:conf+: :comments both :mkdirp yes +:CUSTOM_ID: beets :END: http://beets.io/ @@ -144,61 +185,13 @@ http://beets.io/ plugins: fromfilename discogs #+end_src -* Mopidy -:PROPERTIES: -:header-args:conf: :tangle ~/.config/mopidy/mopidy.conf -:header-args:conf+: :comments none :mkdirp yes :noweb no-export -:END: - -#+begin_src conf - [spotify] - username = dehaeze.thomas@gmail.com - password = <> - client_id = 9dd02534-f038-46d8-946e-bfe72498204e - client_secret = <> - bitrate = 320 - - [mpd] - enabled = true - hostname = 127.0.0.1 - port = 6600 - password = - max_connections = 20 - connection_timeout = 60 - zeroconf = Mopidy MPD server on $hostname - command_blacklist = listall,listallinfo - default_playlist_scheme = m3u - - [jellyfin] - hostname = https://jellyfin.tdehaeze.xyz/ - username = tdehaeze - password = <> - libraries = Music - albumartistsort = True - album_format = {ProductionYear} - {Name} - - [file] - enabled = true - media_dirs = /home/thomas/Music - excluded_file_extensions = - .db - .directory - .html - .jpeg - .jpg - .log - .nfo - .pdf - .png - .txt - .zip -#+end_src - -* Radio with curseradio +* =curseradio= - Radio with curseradio :PROPERTIES: :header-args:conf: :tangle ~/.config/curseradio/curseradio.cfg :header-args:conf+: :comments none :mkdirp yes +:CUSTOM_ID: curseradio :END: + #+begin_src conf [opml] root = http://opml.radiotime.com/ diff --git a/newsboat.org b/newsboat.org index 3bbc09b..09dbbce 100644 --- a/newsboat.org +++ b/newsboat.org @@ -1,21 +1,5 @@ #+TITLE: Newsboat Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -:END: +#+SETUPFILE: ./setup/org-setup-file.org https://wiki.archlinux.org/index.php/Newsboat https://newsboat.org/releases/2.12/docs/newsboat.html diff --git a/notifications.org b/notifications.org index b9fa145..4e76d67 100644 --- a/notifications.org +++ b/notifications.org @@ -1,24 +1,7 @@ #+TITLE: Dunst (Notification Manager) -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args :comments both :mkdirp yes #+PROPERTY: header-args+ :tangle ~/.config/dunst/dunstrc -:END: * Global #+begin_src conf diff --git a/pcmanfm.org b/pcmanfm.org index cc9a105..98d2c0f 100644 --- a/pcmanfm.org +++ b/pcmanfm.org @@ -1,26 +1,9 @@ #+TITLE: PCMANFM -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args:bash :comments both #+PROPERTY: header-args:bash+ :mkdirp yes #+PROPERTY: header-args:bash+ :shebang "#!/bin/sh" #+PROPERTY: header-args:bash+ :tangle ~/.config/pcmanfm/default/pcmanfm.conf -:END: * Config #+BEGIN_SRC conf diff --git a/polybar.org b/polybar.org index 89b5c8e..0c56279 100644 --- a/polybar.org +++ b/polybar.org @@ -1,25 +1,8 @@ #+TITLE: Polybar Configuration -:DRAWER: -#+STARTUP: overview - -#+LANGUAGE: en -#+EMAIL: dehaeze.thomas@gmail.com -#+AUTHOR: Dehaeze Thomas - -#+HTML_LINK_HOME: ./index.html -#+HTML_LINK_UP: ./index.html - -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: - +#+SETUPFILE: ./setup/org-setup-file.org #+PROPERTY: header-args :comments no #+PROPERTY: header-args+ :mkdirp yes #+PROPERTY: header-args+ :tangle ~/.config/polybar/config -:END: * Colors #+begin_src conf @@ -80,7 +63,7 @@ modules-left = i3 bspwm xwindow modules-center = - modules-right = pulseaudio wired-network wireless-network wireguard nordvpn bluetooth redshift lockscreen dunst packages unread_news unread_mail calendar temperature battery date + modules-right = pulseaudio wired-network wireless-network nordvpn bluetooth redshift lockscreen dunst packages unread_news unread_mail calendar temperature battery date wm-restack = i3 @@ -564,7 +547,7 @@ type = custom/script format-underline = ${colors.bg} - click-left = ~/.config/polybar/scripts/nordvpn-toggle.sh >/dev/null 2>%1 & + click-left = ~/.local/bin/nordvpn-toggle >/dev/null 2>%1 & format =