From 423fbd522b7d70297384b3fa8f2692fc4f99362d Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Fri, 20 Jan 2023 20:51:16 -0500 Subject: [PATCH 01/22] [+] Alpine vm --- scripts/zshrc.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 7a8f69a..4b3f5b3 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -282,6 +282,18 @@ ssh() { fi } +# Docker linux containers +alpine-create() +{ + docker rmi azalea/alpine + docker run -it --name alpine-init --hostname alpine alpine \ + /bin/sh -c 'apk add zsh bash git curl wget tar zstd python3 && bash <(curl -sL hydev.org/zsh)' + docker commit alpine-init azalea/alpine + docker rm alpine-init +} +alias alpine="docker start -ai alpine" +alias alpine-init="docker run -it --name alpine --hostname alpine azalea/alpine zsh" + # Mac hostname mac-hostname() { name="$@" From 7a21242ed34e1abc166d64ea52806b32c1b241cb Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Tue, 24 Jan 2023 14:04:41 -0500 Subject: [PATCH 02/22] [+] convert_gnome function --- scripts/{helpers => bin}/video.py | 47 ++++++++++++++++++------------- scripts/zshrc.sh | 4 +-- 2 files changed, 29 insertions(+), 22 deletions(-) rename scripts/{helpers => bin}/video.py (77%) diff --git a/scripts/helpers/video.py b/scripts/bin/video.py similarity index 77% rename from scripts/helpers/video.py rename to scripts/bin/video.py index e1b6744..fb7069f 100755 --- a/scripts/helpers/video.py +++ b/scripts/bin/video.py @@ -4,7 +4,8 @@ from __future__ import annotations import os import platform import re -from subprocess import Popen +import shutil +from subprocess import Popen, check_call import sys import shlex from datetime import datetime @@ -107,23 +108,29 @@ def rename(): os.rename(file, date) +def convert_gnome(): + rec_dir = Path.home() / "Videos/Screencasts" + fs = [rec_dir / str(f) for f in os.listdir(rec_dir) if str(f).startswith("Screencast") and str(f).endswith(".webm")] + for inf in fs: + sp = inf.stem.split(" ") + ouf = rec_dir / f"Rec {sp[2]} {sp[3][:sp[3].rindex('-')]}.mp4" + if ouf.is_file(): + print(f"Already converted: {inf}") + continue + print(f"Converting '{inf}' to '{ouf}'") + check_call(['ffmpeg', '-i', inf, + '-c:v', 'libx264', + '-vf', 'crop=trunc(iw/2)*2:trunc(ih/2)*2, fps=30', + '-y', + ouf]) + + if input("Remove files? [y/N]") == "y": + [os.remove(f) for f in fs] + + if __name__ == '__main__': - if not hasattr(sys, 'ps1'): - args = sys.argv[1:] - if len(args) < 1: - print('Usage: compress [rename/python code]') - - # Command to rename all screen recordings - if args[0] == 'rename': - rename() - exit() - - # processor = args[0].lower().strip() - # i = args[1] - # crf = args[2] if len(args) > 2 else '24' - # cmd = 'cmd' in processor - # if cmd: - # processor = processor.replace('cmd', '') - - # additional_args = ' '.join(args[3:] if len(args) > 3 else []) - print(eval(' '.join(args[0:]))) + args = sys.argv[1:] + if args: + v = eval(args[0]) + if v: + print(v) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 4b3f5b3..6bad9a7 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -315,8 +315,8 @@ cut() { echo "$start" ffmpeg -i "$1" -codec copy -ss "$start" -t "$2" Cut\ "$1" } -alias vcomp="$BASEDIR/scripts/helpers/video.py" -alias vcompy="ipython -i $BASEDIR/scripts/helpers/video.py" +alias vcomp="$BASEDIR/scripts/bin/video.py" +alias vcompy="ipython -i $BASEDIR/scripts/bin/video.py" flac2mp3() { for file in *.flac; do From a948e9c7998d801898e60db0778758271caeae48 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sun, 29 Jan 2023 22:08:00 -0500 Subject: [PATCH 03/22] [+] docker-ip alias --- scripts/zshrc.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 6bad9a7..3e1f875 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -77,6 +77,7 @@ if command -v 'docker-compose' &> /dev/null; then else alias dc='docker compose' fi +alias docker-ip="docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}'" alias vsucode='sudo code --user-data-dir /root/.config/vscode --no-sandbox' alias visucode='EDITOR="code --wait" sudoedit' From 52771c7387060ad29b3ff8c2b4a0435c76525348 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 05:23:12 -0500 Subject: [PATCH 04/22] [+] dockers --- scripts/zshrc.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 3e1f875..490bb9f 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -78,6 +78,7 @@ else alias dc='docker compose' fi alias docker-ip="docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}'" +alias dockers="docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}'" alias vsucode='sudo code --user-data-dir /root/.config/vscode --no-sandbox' alias visucode='EDITOR="code --wait" sudoedit' From 6344f6d139a0b9f518bc493cde8ab3f80fabf5b4 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 05:23:20 -0500 Subject: [PATCH 05/22] [+] compress zst gpg --- scripts/bin/compress-zst-gpg | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100755 scripts/bin/compress-zst-gpg diff --git a/scripts/bin/compress-zst-gpg b/scripts/bin/compress-zst-gpg new file mode 100755 index 0000000..09275cb --- /dev/null +++ b/scripts/bin/compress-zst-gpg @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +level="${level:-19}" + +cmd=$(which tar) +if command -v "gtar" &> /dev/null; then + cmd=$(which gtar) +fi +echo "Using $cmd" + +name="$1".tar.zst.gpg +shift +echo "Output to $name" + +cores=$(python3 -c "import os; print(os.cpu_count())") +echo "Starting ZSTD compression with $cores cores and level $level" +"$cmd" -I "zstd -T$cores -$level" --checkpoint=.1024 --totals --totals=SIGUSR1 -cf - "$@" | gpg --symmetric --cipher-algo aes256 -o "$name" \ No newline at end of file From 57f9d81f88ede27407b7d814aaa3bd24732b148e Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 05:23:40 -0500 Subject: [PATCH 06/22] [+] smartt: SMART write info --- scripts/bin/smartt | 51 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 scripts/bin/smartt diff --git a/scripts/bin/smartt b/scripts/bin/smartt new file mode 100755 index 0000000..cec1bbe --- /dev/null +++ b/scripts/bin/smartt @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +####################################### +# Variables # +####################################### + +SSD_DEVICE="/dev/sda" + +ON_TIME_TAG="Power_On_Hours" +WEAR_COUNT_TAG="Wear_Leveling_Count" +LBAS_WRITTEN_TAG="Total_LBAs_Written" +LBA_SIZE=512 # Value in bytes + +BYTES_PER_MB=1048576 +BYTES_PER_GB=1073741824 +BYTES_PER_TB=1099511627776 + +####################################### +# Get total data written... # +####################################### + +# Get SMART attributes +SMART_INFO=$(sudo /usr/sbin/smartctl -A "$SSD_DEVICE") + +# Extract required attributes +ON_TIME=$(echo "$SMART_INFO" | grep "$ON_TIME_TAG" | awk '{print $10}') +WEAR_COUNT=$(echo "$SMART_INFO" | grep "$WEAR_COUNT_TAG" | awk '{print $4}' | sed 's/^0*//') +LBAS_WRITTEN=$(echo "$SMART_INFO" | grep "$LBAS_WRITTEN_TAG" | awk '{print $10}') + +# Convert LBAs -> bytes +BYTES_WRITTEN=$(echo "$LBAS_WRITTEN * $LBA_SIZE" | bc) +MB_WRITTEN=$(echo "scale=3; $BYTES_WRITTEN / $BYTES_PER_MB" | bc) +GB_WRITTEN=$(echo "scale=3; $BYTES_WRITTEN / $BYTES_PER_GB" | bc) +TB_WRITTEN=$(echo "scale=3; $BYTES_WRITTEN / $BYTES_PER_TB" | bc) + +# Output results... +echo "------------------------------" +echo " SSD Status: $SSD_DEVICE" +echo "------------------------------" +echo " On time: $(echo $ON_TIME | sed ':a;s/\B[0-9]\{3\}\>/,&/;ta') hr" +echo "------------------------------" +echo " Data written:" +echo " MB: $(echo $MB_WRITTEN | sed ':a;s/\B[0-9]\{3\}\>/,&/;ta')" +echo " GB: $(echo $GB_WRITTEN | sed ':a;s/\B[0-9]\{3\}\>/,&/;ta')" +echo " TB: $(echo $TB_WRITTEN | sed ':a;s/\B[0-9]\{3\}\>/,&/;ta')" +echo "------------------------------" +echo " Mean write rate:" +echo " MB/hr: $(echo "scale=3; $MB_WRITTEN / $ON_TIME" | bc | sed ':a;s/\B[0-9]\{3\}\>/,&/;ta')" +echo "------------------------------" +echo " Drive health: ${WEAR_COUNT} %" +echo "------------------------------" \ No newline at end of file From c5bea697cadd2c2431cb53f3510db10dd5e29d69 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 18:42:31 -0500 Subject: [PATCH 07/22] [+] Postgres testing container --- scripts/zshrc.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 490bb9f..c77a7b2 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -296,6 +296,10 @@ alpine-create() alias alpine="docker start -ai alpine" alias alpine-init="docker run -it --name alpine --hostname alpine azalea/alpine zsh" +alias psqlt-init="docker run --rm -dit --name psql-test --hostname psql -e POSTGRES_HOST_AUTH_METHOD=trust postgres" +alias psqlt-stop="docker stop psql-test" +alias psqlt='psql -h $(docker-ip psql-test) -p 5432 -U postgres' + # Mac hostname mac-hostname() { name="$@" From 2ed0dad834cc52f888e5474c79baae9a8889a0d7 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 18:47:42 -0500 Subject: [PATCH 08/22] [F] Fix repeated sourcing on update --- scripts/includes/git.sh | 16 ---------- scripts/includes/git.zsh | 63 ++++++++++++++++++++++++++++++++++++++++ scripts/zshrc.sh | 51 ++------------------------------ 3 files changed, 65 insertions(+), 65 deletions(-) delete mode 100644 scripts/includes/git.sh create mode 100644 scripts/includes/git.zsh diff --git a/scripts/includes/git.sh b/scripts/includes/git.sh deleted file mode 100644 index f756c6f..0000000 --- a/scripts/includes/git.sh +++ /dev/null @@ -1,16 +0,0 @@ -# Git commit wrapper -commit() { - msg="$@" - git commit -m "$msg" -} - -commitall() { - git add . - commit "$@" -} -alias commita="commitall" - -compush() { - commitall "$@" - git push -} diff --git a/scripts/includes/git.zsh b/scripts/includes/git.zsh new file mode 100644 index 0000000..9ff86a2 --- /dev/null +++ b/scripts/includes/git.zsh @@ -0,0 +1,63 @@ +# Git commit wrapper +commit() { + msg="$@" + git commit -m "$msg" +} + +commitall() { + git add . + commit "$@" +} +alias commita="commitall" + +compush() { + commitall "$@" + git push +} + +# Git identity +git-ida() { + # Zsh only + TMP_ARR=("${(@f)$(git-id-list get "$1")}") + git-id "${TMP_ARR[1]}" "${TMP_ARR[2]}" +} +git-id() { + export GIT_USER="$1" + export GIT_EMAIL="$2" + git-id-prompt +} +git-id-prompt() { + if [[ -z "$GIT_USER" ]] && [[ -z "$GIT_EMAIL" ]]; then + prompt-reset + else + prompt-set 30 "&cGit ID: $GIT_USER | $GIT_EMAIL " + prompt-update + fi +} +git-id-prompt +[[ -z $GIT_BIN ]] && GIT_BIN=$(which git) +git() { + if [[ -z "$GIT_USER" ]]; then + $GIT_BIN "$@" + else + $GIT_BIN -c "user.name=$GIT_USER" -c "user.email=$GIT_EMAIL" -c "commit.gpgsign=false" "$@" + fi +} + +# Git environment +git-env() { + git_commands=( add bisect branch checkout clone commit diff fetch grep init log merge pull push rebase reset restore show status tag ) + for i in "${git_commands[@]}" + do + alias "$i"="git $i" + done + alias 'grm'='git rm' + alias 'gmv'='git mv' +} +git-unenv() { + git_commands=( add bisect branch checkout clone commit diff fetch grep init log merge pull push rebase reset restore show status tag grm gmv ) + for i in "${git_commands[@]}" + do + unalias "$i" + done +} diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index c77a7b2..f8622c2 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -108,7 +108,7 @@ alias jctl="sudo journalctl" alias ufw="sudo ufw" # Gradle with auto environment detection -GRADLE="$(which gradle)" +[[ -z $GRADLE ]] && GRADLE="$(which gradle)" gradle() { [[ -f "./gradlew" ]] && ./gradlew "$@" || $GRADLE "$@" } @@ -227,55 +227,8 @@ setproxy() { prompt-update } -# Git identity -git-ida() { - # Zsh only - TMP_ARR=("${(@f)$(git-id-list get "$1")}") - git-id "${TMP_ARR[1]}" "${TMP_ARR[2]}" -} -git-id() { - export GIT_USER="$1" - export GIT_EMAIL="$2" - git-id-prompt -} -git-id-prompt() { - if [[ -z "$GIT_USER" ]] && [[ -z "$GIT_EMAIL" ]]; then - prompt-reset - else - prompt-set 30 "&cGit ID: $GIT_USER | $GIT_EMAIL " - prompt-update - fi -} -git-id-prompt -GIT_BIN=$(which git) -git() { - if [[ -z "$GIT_USER" ]]; then - $GIT_BIN "$@" - else - $GIT_BIN -c "user.name=$GIT_USER" -c "user.email=$GIT_EMAIL" -c "commit.gpgsign=false" "$@" - fi -} - -# Git environment -git-env() { - git_commands=( add bisect branch checkout clone commit diff fetch grep init log merge pull push rebase reset restore show status tag ) - for i in "${git_commands[@]}" - do - alias "$i"="git $i" - done - alias 'grm'='git rm' - alias 'gmv'='git mv' -} -git-unenv() { - git_commands=( add bisect branch checkout clone commit diff fetch grep init log merge pull push rebase reset restore show status tag grm gmv ) - for i in "${git_commands[@]}" - do - unalias "$i" - done -} - # SSH Patch -SSH_BIN=$(which ssh) +[[ -z $SSH_BIN ]] && SSH_BIN=$(which ssh) ssh() { if [[ "$TERM" == 'xterm-kitty' ]]; then env TERM=xterm-256color "$SSH_BIN" "$@" From 4a819eaab5a745a360d3382a730f652ad13fb125 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 18:50:07 -0500 Subject: [PATCH 09/22] [O] Source order --- scripts/includes/{ => later}/git.zsh | 0 scripts/zshrc.sh | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) rename scripts/includes/{ => later}/git.zsh (100%) diff --git a/scripts/includes/git.zsh b/scripts/includes/later/git.zsh similarity index 100% rename from scripts/includes/git.zsh rename to scripts/includes/later/git.zsh diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index f8622c2..452c343 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -211,7 +211,8 @@ color() { alias colors="color '&000&111&222&333&444&555&666&777&888&999&aaa&bbb&ccc&ddd&eee&fff'" # Includes -for f in $SCR/includes/*; do source $f; done +for f in "$SCR/includes/"*.*sh; do source $f; done +for f in "$SCR/includes/later/"*.*sh; do source $f; done # Set proxy setproxy() { From b9abcf1d2a685ef26b3b79829b37d1a164176203 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 18:55:55 -0500 Subject: [PATCH 10/22] [O] Split into better modules --- scripts/includes/conda.sh | 32 +++++++++ scripts/includes/docker.sh | 24 +++++++ scripts/includes/mac.sh | 8 +++ scripts/includes/media.sh | 21 ++++++ scripts/zshrc.sh | 140 +++++++------------------------------ 5 files changed, 111 insertions(+), 114 deletions(-) create mode 100644 scripts/includes/conda.sh create mode 100644 scripts/includes/docker.sh create mode 100644 scripts/includes/media.sh diff --git a/scripts/includes/conda.sh b/scripts/includes/conda.sh new file mode 100644 index 0000000..8d20212 --- /dev/null +++ b/scripts/includes/conda.sh @@ -0,0 +1,32 @@ +# Mamba (conda replacement) +alias mamba="micromamba" +alias mamba-install="curl micro.mamba.pm/install.sh | zsh" +export MAMBA_ROOT_PREFIX="$HOME/.conda" + +# Mamba initialize function +mamba-init() +{ + export MAMBA_EXE="$(which micromamba)"; + __mamba_setup="$("$MAMBA_EXE" shell hook --shell zsh --prefix "$HOME/micromamba" 2> /dev/null)" + if [ $? -eq 0 ]; then + eval "$__mamba_setup" + else + if [ -f "$MAMBA_ROOT_PREFIX/etc/profile.d/micromamba.sh" ]; then + . "$MAMBA_ROOT_PREFIX/etc/profile.d/micromamba.sh" + else + export PATH="$MAMBA_ROOT_PREFIX/bin:$PATH" + fi + fi + unset __mamba_setup +} + +# Auto init mamba +if command -v 'micromamba' &> /dev/null; then + mamba-init +fi + +# Pyenv +if command -v 'pyenv' &> /dev/null; then + eval "$(pyenv init -)" + PATH=$(pyenv root)/shims:$PATH +fi \ No newline at end of file diff --git a/scripts/includes/docker.sh b/scripts/includes/docker.sh new file mode 100644 index 0000000..d291edb --- /dev/null +++ b/scripts/includes/docker.sh @@ -0,0 +1,24 @@ + +if command -v 'docker-compose' &> /dev/null; then + alias dc='docker-compose' +else + alias dc='docker compose' +fi +alias docker-ip="docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}'" +alias dockers="docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}'" + +# Docker linux containers +alpine-create() +{ + docker rmi azalea/alpine + docker run -it --name alpine-init --hostname alpine alpine \ + /bin/sh -c 'apk add zsh bash git curl wget tar zstd python3 && bash <(curl -sL hydev.org/zsh)' + docker commit alpine-init azalea/alpine + docker rm alpine-init +} +alias alpine="docker start -ai alpine" +alias alpine-init="docker run -it --name alpine --hostname alpine azalea/alpine zsh" + +alias psqlt-init="docker run --rm -dit --name psql-test --hostname psql -e POSTGRES_HOST_AUTH_METHOD=trust postgres" +alias psqlt-stop="docker stop psql-test" +alias psqlt='psql -h $(docker-ip psql-test) -p 5432 -U postgres' \ No newline at end of file diff --git a/scripts/includes/mac.sh b/scripts/includes/mac.sh index 953cf1e..4f128e4 100644 --- a/scripts/includes/mac.sh +++ b/scripts/includes/mac.sh @@ -22,6 +22,14 @@ if [[ $OSTYPE == 'darwin'* ]]; then export JAVA_HOME=${JDK11} export PATH="${JDK11}/bin:$PATH" + # Mac hostname + mac-hostname() { + name="$@" + sudo scutil --set HostName "$name" + sudo scutil --set LocalHostName "$name" + sudo scutil --set ComputerName "$name" + } + # Anaconda export CONDA_PATH="/usr/local/anaconda3" export PATH="$CONDA_PATH/bin:$PATH" diff --git a/scripts/includes/media.sh b/scripts/includes/media.sh new file mode 100644 index 0000000..a357ce9 --- /dev/null +++ b/scripts/includes/media.sh @@ -0,0 +1,21 @@ +# Cut videos - cut [start time (default 00:00:00)] +cutv() { + if [ "$#" -lt 2 ]; then + echo "Usage: cut [start time (00:00:00)]" + return 2 + fi + + local start="${3:-00:00:00}" + echo "$1" + echo "$2" + echo "$start" + ffmpeg -i "$1" -codec copy -ss "$start" -t "$2" Cut\ "$1" +} +alias vcomp="$BASEDIR/scripts/bin/video.py" +alias vcompy="ipython -i $BASEDIR/scripts/bin/video.py" + +flac2mp3() { + for file in *.flac; do + ffmpeg -i "$file" -ab 320k -map_metadata 0 -id3v2_version 3 "${file%.flac}.mp3" + done +} \ No newline at end of file diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 452c343..589a92c 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -72,14 +72,6 @@ alias dusa='du -hc --max-depth=1 | sortsize' alias ts='tailscale' alias ts-install='curl -fsSL https://tailscale.com/install.sh | sh' -if command -v 'docker-compose' &> /dev/null; then - alias dc='docker-compose' -else - alias dc='docker compose' -fi -alias docker-ip="docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}'" -alias dockers="docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}'" - alias vsucode='sudo code --user-data-dir /root/.config/vscode --no-sandbox' alias visucode='EDITOR="code --wait" sudoedit' alias gpu-temp='while sleep 1; do clear; gpustat; done' @@ -119,45 +111,12 @@ reset-permissions-dangerous() { sudo find . -type f -exec chmod 644 {} \; } -# Mamba (conda replacement) -alias mamba="micromamba" -alias mamba-install="curl micro.mamba.pm/install.sh | zsh" -export MAMBA_ROOT_PREFIX="$HOME/.conda" - -# Mamba initialize function -mamba-init() -{ - export MAMBA_EXE="$(which micromamba)"; - __mamba_setup="$("$MAMBA_EXE" shell hook --shell zsh --prefix "$HOME/micromamba" 2> /dev/null)" - if [ $? -eq 0 ]; then - eval "$__mamba_setup" - else - if [ -f "$MAMBA_ROOT_PREFIX/etc/profile.d/micromamba.sh" ]; then - . "$MAMBA_ROOT_PREFIX/etc/profile.d/micromamba.sh" - else - export PATH="$MAMBA_ROOT_PREFIX/bin:$PATH" - fi - fi - unset __mamba_setup -} - -# Auto init mamba -if command -v 'micromamba' &> /dev/null; then - mamba-init -fi - -# Pyenv -if command -v 'pyenv' &> /dev/null; then - eval "$(pyenv init -)" - PATH=$(pyenv root)/shims:$PATH -fi - export PATH="$SCR/bin:$PATH" export PATH="$HOME/.local/bin:$PATH" # Lisp wrapper lisp() { - ros run --load $1 --quit + ros run --load "$1" --quit } test-nf() { @@ -166,13 +125,13 @@ test-nf() { # Remote adb adblan() { - adb connect $1:16523 + adb connect "$1:16523" } alias adblan-start="adb tcpip 16523" # Add line if it doesn't exist in a file addline() { - grep -qxF "$2" "$1" || echo "$2" >> $1 + grep -qxF "$2" "$1" || echo "$2" >> "$1" } # Silent pushd and popd @@ -185,34 +144,33 @@ spopd () { # Minecraft coloring color() { - tmp="$@" - tmp="$tmp&r" - tmp=$(echo "${tmp//&0/\033[0;30m}") - tmp=$(echo "${tmp//&1/\033[0;34m}") - tmp=$(echo "${tmp//&2/\033[0;32m}") - tmp=$(echo "${tmp//&3/\033[0;36m}") - tmp=$(echo "${tmp//&4/\033[0;31m}") - tmp=$(echo "${tmp//&5/\033[0;35m}") - tmp=$(echo "${tmp//&6/\033[0;33m}") - tmp=$(echo "${tmp//&7/\033[0;37m}") - tmp=$(echo "${tmp//&8/\033[1;30m}") - tmp=$(echo "${tmp//&9/\033[1;34m}") - tmp=$(echo "${tmp//&a/\033[1;32m}") - tmp=$(echo "${tmp//&b/\033[1;36m}") - tmp=$(echo "${tmp//&c/\033[1;31m}") - tmp=$(echo "${tmp//&d/\033[1;35m}") - tmp=$(echo "${tmp//&e/\033[1;33m}") - tmp=$(echo "${tmp//&f/\033[1;37m}") - tmp=$(echo "${tmp//&r/\033[0m}") + tmp="$*&r" + tmp="${tmp//&0/\033[0;30m}" + tmp="${tmp//&1/\033[0;34m}" + tmp="${tmp//&2/\033[0;32m}" + tmp="${tmp//&3/\033[0;36m}" + tmp="${tmp//&4/\033[0;31m}" + tmp="${tmp//&5/\033[0;35m}" + tmp="${tmp//&6/\033[0;33m}" + tmp="${tmp//&7/\033[0;37m}" + tmp="${tmp//&8/\033[1;30m}" + tmp="${tmp//&9/\033[1;34m}" + tmp="${tmp//&a/\033[1;32m}" + tmp="${tmp//&b/\033[1;36m}" + tmp="${tmp//&c/\033[1;31m}" + tmp="${tmp//&d/\033[1;35m}" + tmp="${tmp//&e/\033[1;33m}" + tmp="${tmp//&f/\033[1;37m}" + tmp="${tmp//&r/\033[0m}" newline=$'\n' - tmp=$(echo "${tmp//&n/$newline}") - echo $tmp + tmp="${tmp//&n/$newline}" + echo "$tmp" } alias colors="color '&000&111&222&333&444&555&666&777&888&999&aaa&bbb&ccc&ddd&eee&fff'" # Includes -for f in "$SCR/includes/"*.*sh; do source $f; done -for f in "$SCR/includes/later/"*.*sh; do source $f; done +for f in "$SCR/includes/"*.*sh; do source "$f"; done +for f in "$SCR/includes/later/"*.*sh; do source "$f"; done # Set proxy setproxy() { @@ -238,51 +196,5 @@ ssh() { fi } -# Docker linux containers -alpine-create() -{ - docker rmi azalea/alpine - docker run -it --name alpine-init --hostname alpine alpine \ - /bin/sh -c 'apk add zsh bash git curl wget tar zstd python3 && bash <(curl -sL hydev.org/zsh)' - docker commit alpine-init azalea/alpine - docker rm alpine-init -} -alias alpine="docker start -ai alpine" -alias alpine-init="docker run -it --name alpine --hostname alpine azalea/alpine zsh" - -alias psqlt-init="docker run --rm -dit --name psql-test --hostname psql -e POSTGRES_HOST_AUTH_METHOD=trust postgres" -alias psqlt-stop="docker stop psql-test" -alias psqlt='psql -h $(docker-ip psql-test) -p 5432 -U postgres' - -# Mac hostname -mac-hostname() { - name="$@" - sudo scutil --set HostName "$name" - sudo scutil --set LocalHostName "$name" - sudo scutil --set ComputerName "$name" -} - -# Cut videos - cut [start time (default 00:00:00)] -cut() { - if [ "$#" -lt 2 ]; then - echo "Usage: cut [start time (00:00:00)]" - return 2 - fi - - local start="${3:-00:00:00}" - echo "$1" - echo "$2" - echo "$start" - ffmpeg -i "$1" -codec copy -ss "$start" -t "$2" Cut\ "$1" -} -alias vcomp="$BASEDIR/scripts/bin/video.py" -alias vcompy="ipython -i $BASEDIR/scripts/bin/video.py" - -flac2mp3() { - for file in *.flac; do - ffmpeg -i "$file" -ab 320k -map_metadata 0 -id3v2_version 3 "${file%.flac}.mp3" - done -} - # include if it exists -[ -f "$HOME/extra.rc.sh" ] && . "$HOME/extra.rc.sh" +[ -f "$HOME/extra.rc.sh" ] && source "$HOME/extra.rc.sh" From 58aa63af1ef6fb25d1aa995d289bed7dc71afff8 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Feb 2023 18:58:08 -0500 Subject: [PATCH 11/22] [O] Better psqlt --- scripts/includes/docker.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/includes/docker.sh b/scripts/includes/docker.sh index d291edb..abe0e66 100644 --- a/scripts/includes/docker.sh +++ b/scripts/includes/docker.sh @@ -19,6 +19,6 @@ alpine-create() alias alpine="docker start -ai alpine" alias alpine-init="docker run -it --name alpine --hostname alpine azalea/alpine zsh" -alias psqlt-init="docker run --rm -dit --name psql-test --hostname psql -e POSTGRES_HOST_AUTH_METHOD=trust postgres" -alias psqlt-stop="docker stop psql-test" +alias psqlt+="docker run --rm -dit --name psql-test --hostname psql -e POSTGRES_HOST_AUTH_METHOD=trust postgres && echo 'Created'" +alias psqlt-="docker stop psql-test && echo 'Deleted'" alias psqlt='psql -h $(docker-ip psql-test) -p 5432 -U postgres' \ No newline at end of file From 9151f5fb3df885ab7d00c40475ba468db1fe4e3f Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Wed, 8 Feb 2023 11:58:41 -0500 Subject: [PATCH 12/22] [+] valgrin alias --- scripts/zshrc.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 589a92c..d7aabd0 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -94,6 +94,13 @@ alias old-update-ssh-keys="curl -L https://github.com/Hykilpikonna.keys > ~/.ssh alias tar-kill-progress="watch -n 60 killall tar -SIGUSR1" +alias valgrin="valgrind \ + --leak-check=full \ + --show-leak-kinds=all \ + --leak-resolution=med \ + --track-origins=yes \ + --vgdb=no" + # Automatic sudo alias sctl="sudo systemctl" alias jctl="sudo journalctl" From 918b10c7b2f69416998432130a6ed9554b35724d Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Mon, 13 Feb 2023 15:24:54 -0500 Subject: [PATCH 13/22] [O] Simplify prompt --- scripts/includes/prompt.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/includes/prompt.sh b/scripts/includes/prompt.sh index 9256adf..b991478 100755 --- a/scripts/includes/prompt.sh +++ b/scripts/includes/prompt.sh @@ -21,17 +21,19 @@ pcolor() { # Build a zsh prompt prompt-reset() { + host="$(sed "s/HyDEV-//g" <<< "$HOST")" + # New line first prompt-set 0 "&n" # Time stamp prompt-set 10 "&5%D{%a %m-%d %H:%M}&r " - [[ "$HOST" != "HyDEV" ]] && prompt-set 10 "&gf(#55CDFC)%D{%a} &gf(#F7A8B8)%D{%m-}&f%D{%d} &gf(#F7A8B8)%D{%H:}&gf(#55CDFC)%D{%M}&r " + [[ "$host" != "HyDEV" ]] && prompt-set 10 "&gf(#55CDFC)%D{%a} &gf(#F7A8B8)%D{%m-}&f%D{%d} &gf(#F7A8B8)%D{%H:}&gf(#55CDFC)%D{%M}&r " # Hostname - prompt-set 20 "&1%m&r " - [[ "$HOST" == "HyDEV" ]] && prompt-set 20 "&gf(#55CDFC)H&gf(#F7A8B8)y&fD&gf(#F7A8B8)E&gf(#55CDFC)V&r " + prompt-set 20 "&1$host&r " + [[ "$host" == "HyDEV" ]] && prompt-set 20 "&gf(#55CDFC)H&gf(#F7A8B8)y&fD&gf(#F7A8B8)E&gf(#55CDFC)V&r " # Username, or show a cat if I'm hykilpikonna prompt-set 30 "&e%n&r " - [[ "$USER" == "hykilpikonna" ]] && prompt-set 30 "๐Ÿฑ " + [[ "$USER" == "hykilpikonna" || "$USER" == "azalea" ]] && prompt-set 30 "๐Ÿฑ " # Directory prompt-set 40 "&r%~ " # New line after the prompt header From 9d6908ea40b692b90f1c1e2b3ebbd7a8bc6d016b Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Tue, 14 Feb 2023 23:21:20 -0500 Subject: [PATCH 14/22] [O] Compress json parallel --- scripts/zshrc.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index d7aabd0..5c5ae26 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -79,6 +79,7 @@ alias cpu-temp='s-tui' alias mine='sudo lolminer --algo ETHASH --pool stratum+ssl://daggerhashimoto.auto.nicehash.com:443 --user=3AcCeSHHwWJRf945iKCbxZ8cjUvy7Tmg3g.Daisy-lol' alias mine-zel='sudo lolminer --algo ZEL --pers BgoldPoW --pool stratum+tcp://zelhash.auto.nicehash.com:9200 --user=3AcCeSHHwWJRf945iKCbxZ8cjUvy7Tmg3g.Daisy-lol' alias mount-external='sudo mount -t cifs //192.168.2.1/external /smb/external -o rw,user=azalea,uid=1000,gid=1000,pass=' +alias compress-json="find -name '*.json' -print0 | parallel --jobs 80% -0 zstd -z -19 -v -f --rm {}" alias ds-clean="find . -name '.DS_Store' -delete -print" alias dotclean="find . -name '._*' -delete -print" From 7f1bb966337fc926f79dd49db98358a22ddb1d45 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Tue, 14 Feb 2023 23:22:19 -0500 Subject: [PATCH 15/22] [-] Remove mining scripts --- scripts/zshrc.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 5c5ae26..e6d0c34 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -76,8 +76,6 @@ alias vsucode='sudo code --user-data-dir /root/.config/vscode --no-sandbox' alias visucode='EDITOR="code --wait" sudoedit' alias gpu-temp='while sleep 1; do clear; gpustat; done' alias cpu-temp='s-tui' -alias mine='sudo lolminer --algo ETHASH --pool stratum+ssl://daggerhashimoto.auto.nicehash.com:443 --user=3AcCeSHHwWJRf945iKCbxZ8cjUvy7Tmg3g.Daisy-lol' -alias mine-zel='sudo lolminer --algo ZEL --pers BgoldPoW --pool stratum+tcp://zelhash.auto.nicehash.com:9200 --user=3AcCeSHHwWJRf945iKCbxZ8cjUvy7Tmg3g.Daisy-lol' alias mount-external='sudo mount -t cifs //192.168.2.1/external /smb/external -o rw,user=azalea,uid=1000,gid=1000,pass=' alias compress-json="find -name '*.json' -print0 | parallel --jobs 80% -0 zstd -z -19 -v -f --rm {}" From d2483bf969b281bed4c35a68cf3f7187ba63dbd0 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Tue, 14 Feb 2023 23:22:54 -0500 Subject: [PATCH 16/22] [+] Add nginx to sudo list --- scripts/zshrc.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index e6d0c34..80a84a6 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -104,6 +104,7 @@ alias valgrin="valgrind \ alias sctl="sudo systemctl" alias jctl="sudo journalctl" alias ufw="sudo ufw" +alias nginx="sudo nginx" # Gradle with auto environment detection [[ -z $GRADLE ]] && GRADLE="$(which gradle)" From a055db7318ba60b18c99cfb388e929c0528cb9e9 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Tue, 14 Feb 2023 23:27:45 -0500 Subject: [PATCH 17/22] [F] Fix SC2015 --- scripts/zshrc.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index 80a84a6..c4e5ef9 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -109,7 +109,11 @@ alias nginx="sudo nginx" # Gradle with auto environment detection [[ -z $GRADLE ]] && GRADLE="$(which gradle)" gradle() { - [[ -f "./gradlew" ]] && ./gradlew "$@" || $GRADLE "$@" + if [[ -f "./gradlew" ]]; then + ./gradlew "$@" + else + $GRADLE "$@" + fi } # Unix permissions reset (Dangerous! This will make executable files no longer executable) From 1049bc2b98229c2ff97e122e33f8a16ca70fa6cf Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 18 Feb 2023 11:11:02 -0500 Subject: [PATCH 18/22] [+] Latex for rime --- config-sync/.config/ibus/rime/latex.dict.yaml | 2624 +++++++++++++++++ .../.config/ibus/rime/latex.schema.yaml | 36 + .../ibus/rime/luna_pinyin_simp.custom.yaml | 16 +- 3 files changed, 2675 insertions(+), 1 deletion(-) create mode 100644 config-sync/.config/ibus/rime/latex.dict.yaml create mode 100644 config-sync/.config/ibus/rime/latex.schema.yaml diff --git a/config-sync/.config/ibus/rime/latex.dict.yaml b/config-sync/.config/ibus/rime/latex.dict.yaml new file mode 100644 index 0000000..bceebc9 --- /dev/null +++ b/config-sync/.config/ibus/rime/latex.dict.yaml @@ -0,0 +1,2624 @@ +# Rime dictionary +# encoding: utf-8 + +--- +name: latex +version: "0.2" +sort: original +columns: + - text + - code +... + +! \clam +$ \dollar +% \percent +& \ampersand +& \and +( \lparen +) \rparen ++ \plus +, \comma +. \period +/ \slash +: \colon +; \semicolon +< \less += \equal +> \greater +? \question +@ \atsign +[ \lbrack +\ \backslash +] \rbrack +{ \lbrace +| \vert +} \rbrace +ยฃ \sterling +ยฅ \yuan +ยง \section +ยฌ \neg +ยฑ \pm +ยถ \paragraph +ยท \cdotp +ร— \times +รฐ \eth +รท \div +ฦต \Zbar +ฬ€ \grave +ฬ \acute +ฬ‚ \hat +ฬƒ \tilde +ฬ„ \bar +ฬ… \overbar +ฬ† \breve +ฬ‡ \dot +ฬˆ \ddot +ฬ‰ \ovhook +ฬŠ \ocirc +ฬŒ \check +ฬ \candra +ฬ’ \oturnedcomma +ฬ• \ocommatopright +ฬš \droang +ฬฐ \wideutilde +ฬฒ \underbar +ฬธ \notaccent +อ \underleftrightarrow +ฮ‘ \Alpha +ฮ’ \Beta +ฮ“ \Gamma +ฮ” \Delta +ฮ• \Epsilon +ฮ– \Zeta +ฮ— \Eta +ฮ˜ \Theta +ฮ™ \Iota +ฮš \Kappa +ฮ› \Lambda +ฮœ \Mu +ฮ \Nu +ฮž \Xi +ฮŸ \Omicron +ฮ  \Pi +ฮก \Rho +ฮฃ \Sigma +ฮค \Tau +ฮฅ \Upsilon +ฮฆ \Phi +ฮง \Chi +ฮจ \Psi +ฮฉ \Omega +ฮฑ \alpha +ฮฒ \beta +ฮณ \gamma +ฮด \delta +ฮต \varepsilon +ฮถ \zeta +ฮท \eta +ฮธ \theta +ฮน \iota +ฮบ \kappa +ฮป \lambda +ฮผ \mu +ฮฝ \nu +ฮพ \xi +ฮฟ \omicron +ฯ€ \pi +ฯ \rho +ฯ‚ \varsigma +ฯƒ \sigma +ฯ„ \tau +ฯ… \upsilon +ฯ† \varphi +ฯ‡ \chi +ฯˆ \psi +ฯ‰ \omega +ฯ‘ \vartheta +ฯ• \phi +ฯ– \varpi +ฯœ \upDigamma +ฯ \updigamma +ฯฐ \varkappa +ฯฑ \varrho +ฯด \varTheta +ฯต \epsilon +ฯถ \upbackepsilon +โ€ \hyphen +โ€• \horizbar +โ€– \Vert +โ€— \twolowline +โ€  \dagger +โ€ก \ddagger +โ€ข \smblkcircle +โ€ฅ \enleadertwodots +โ€ฆ \unicodeellipsis +โ€ฒ \prime +โ€ณ \dprime +โ€ด \trprime +โ€ต \backprime +โ€ถ \backdprime +โ€ท \backtrprime +โ€ธ \caretinsert +โ€ผ \Exclam +โ€ \tieconcat +โƒ \hyphenbullet +โ„ \fracslash +โ‡ \Question +โ \closure +โ— \qprime +โ‚ฌ \euro +โƒ \leftharpoonaccent +โƒ \overleftharpoon +โƒ‘ \rightharpoonaccent +โƒ‘ \overrightharpoon +โƒ’ \vertoverlay +โƒ– \overleftarrow +โƒ— \overrightarrow +โƒ— \vec +โƒ› \dddot +โƒœ \ddddot +โƒ \enclosecircle +โƒž \enclosesquare +โƒŸ \enclosediamond +โƒก \overleftrightarrow +โƒค \enclosetriangle +โƒง \annuity +โƒจ \threeunderdot +โƒฉ \widebridgeabove +โƒฌ \underrightharpoondown +โƒญ \underleftharpoondown +โƒฎ \underleftarrow +โƒฏ \underrightarrow +โƒฐ \asteraccent +โ„‚ \BbbC +โ„‡ \Eulerconst +โ„Š \mscrg +โ„‹ \mscrH +โ„Œ \mfrakH +โ„ \BbbH +โ„Ž \Planckconst +โ„ \hslash +โ„ \mscrI +โ„‘ \Im +โ„’ \mscrL +โ„“ \ell +โ„• \BbbN +โ„˜ \wp +โ„™ \BbbP +โ„š \BbbQ +โ„› \mscrR +โ„œ \Re +โ„ \BbbR +โ„ค \BbbZ +โ„ง \mho +โ„จ \mfrakZ +โ„ฉ \turnediota +โ„ซ \Angstrom +โ„ฌ \mscrB +โ„ญ \mfrakC +โ„ฏ \mscre +โ„ฐ \mscrE +โ„ฑ \mscrF +โ„ฒ \Finv +โ„ณ \mscrM +โ„ด \mscro +โ„ต \aleph +โ„ถ \beth +โ„ท \gimel +โ„ธ \daleth +โ„ผ \Bbbpi +โ„ฝ \Bbbgamma +โ„พ \BbbGamma +โ„ฟ \BbbPi +โ…€ \Bbbsum +โ… \Game +โ…‚ \sansLturned +โ…ƒ \sansLmirrored +โ…„ \Yup +โ…… \mitBbbD +โ…† \mitBbbd +โ…‡ \mitBbbe +โ…ˆ \mitBbbi +โ…‰ \mitBbbj +โ…Š \PropertyLine +โ…‹ \upand +โ† \<- +โ† \leftarrow +โ†‘ \uparrow +โ†’ \-> +โ†’ \to +โ†’ \rightarrow +โ†“ \downarrow +โ†” \leftrightarrow +โ†• \updownarrow +โ†– \nwarrow +โ†— \nearrow +โ†˜ \searrow +โ†™ \swarrow +โ†š \nleftarrow +โ†› \nrightarrow +โ†œ \leftwavearrow +โ† \rightwavearrow +โ†ž \twoheadleftarrow +โ†Ÿ \twoheaduparrow +โ†  \twoheadrightarrow +โ†ก \twoheaddownarrow +โ†ข \leftarrowtail +โ†ฃ \rightarrowtail +โ†ค \mapsfrom +โ†ฅ \mapsup +โ†ฆ \mapsto +โ†ง \mapsdown +โ†จ \updownarrowbar +โ†ฉ \hookleftarrow +โ†ช \hookrightarrow +โ†ซ \looparrowleft +โ†ฌ \looparrowright +โ†ญ \leftrightsquigarrow +โ†ฎ \nleftrightarrow +โ†ฏ \downzigzagarrow +โ†ฐ \Lsh +โ†ฑ \Rsh +โ†ฒ \Ldsh +โ†ณ \Rdsh +โ†ด \linefeed +โ†ต \carriagereturn +โ†ถ \curvearrowleft +โ†ท \curvearrowright +โ†ธ \barovernorthwestarrow +โ†น \barleftarrowrightarrowbar +โ†บ \acwopencirclearrow +โ†ป \cwopencirclearrow +โ†ผ \leftharpoonup +โ†ฝ \leftharpoondown +โ†พ \upharpoonright +โ†ฟ \upharpoonleft +โ‡€ \rightharpoonup +โ‡ \rightharpoondown +โ‡‚ \downharpoonright +โ‡ƒ \downharpoonleft +โ‡„ \rightleftarrows +โ‡… \updownarrows +โ‡† \leftrightarrows +โ‡‡ \leftleftarrows +โ‡ˆ \upuparrows +โ‡‰ \rightrightarrows +โ‡Š \downdownarrows +โ‡‹ \leftrightharpoons +โ‡Œ \rightleftharpoons +โ‡ \nLeftarrow +โ‡Ž \nLeftrightarrow +โ‡ \nRightarrow +โ‡ \Leftarrow +โ‡‘ \Uparrow +โ‡’ \To +โ‡’ \Rightarrow +โ‡“ \Downarrow +โ‡” \Leftrightarrow +โ‡• \Updownarrow +โ‡– \Nwarrow +โ‡— \Nearrow +โ‡˜ \Searrow +โ‡™ \Swarrow +โ‡š \Lleftarrow +โ‡› \TO +โ‡› \Rrightarrow +โ‡œ \leftsquigarrow +โ‡ \rightsquigarrow +โ‡ž \nHuparrow +โ‡Ÿ \nHdownarrow +โ‡  \leftdasharrow +โ‡ก \updasharrow +โ‡ข \rightdasharrow +โ‡ฃ \downdasharrow +โ‡ค \barleftarrow +โ‡ฅ \rightarrowbar +โ‡ฆ \leftwhitearrow +โ‡ง \upwhitearrow +โ‡จ \rightwhitearrow +โ‡ฉ \downwhitearrow +โ‡ช \whitearrowupfrombar +โ‡ด \circleonrightarrow +โ‡ต \downuparrows +โ‡ถ \rightthreearrows +โ‡ท \nvleftarrow +โ‡ธ \nvrightarrow +โ‡น \nvleftrightarrow +โ‡บ \nVleftarrow +โ‡ป \nVrightarrow +โ‡ผ \nVleftrightarrow +โ‡ฝ \leftarrowtriangle +โ‡พ \rightarrowtriangle +โ‡ฟ \leftrightarrowtriangle +โˆ€ \forall +โˆ \complement +โˆ‚ \partial +โˆƒ \exists +โˆ„ \nexists +โˆ… \varnothing +โˆ† \increment +โˆ‡ \nabla +โˆˆ \in +โˆ‰ \notin +โˆŠ \smallin +โˆ‹ \ni +โˆŒ \nni +โˆ \smallni +โˆŽ \QED +โˆ \prod +โˆ \coprod +โˆ‘ \sum +โˆ’ \minus +โˆ“ \mp +โˆ” \dotplus +โˆ• \divslash +โˆ– \smallsetminus +โˆ— \ast +โˆ˜ \vysmwhtcircle +โˆ™ \vysmblkcircle +โˆš \sqrt +โˆš \surd +โˆ› \cuberoot +โˆœ \fourthroot +โˆ \propto +โˆž \infty +โˆŸ \rightangle +โˆ  \angle +โˆก \measuredangle +โˆข \sphericalangle +โˆฃ \mid +โˆค \nmid +โˆฅ \parallel +โˆฆ \nparallel +โˆง \wedge +โˆจ \vee +โˆฉ \cap +โˆช \cup +โˆซ \int +โˆฌ \iint +โˆญ \iiint +โˆฎ \oint +โˆฏ \oiint +โˆฐ \oiiint +โˆฑ \intclockwise +โˆฒ \varointclockwise +โˆณ \ointctrclockwise +โˆด \therefore +โˆต \because +โˆถ \ratio +โˆท \Colon +โˆธ \dotminus +โˆน \dashcolon +โˆบ \dotsminusdots +โˆป \kernelcontraction +โˆผ \sim +โˆฝ \backsim +โˆพ \invlazys +โˆฟ \sinewave +โ‰€ \wr +โ‰ \nsim +โ‰‚ \eqsim +โ‰ƒ \simeq +โ‰„ \nsime +โ‰ƒ \sime +โ‰„ \nsimeq +โ‰… \cong +โ‰† \simneqq +โ‰‡ \ncong +โ‰ˆ \approx +โ‰‰ \napprox +โ‰Š \approxeq +โ‰‹ \approxident +โ‰Œ \backcong +โ‰ \asymp +โ‰Ž \Bumpeq +โ‰ \bumpeq +โ‰ \doteq +โ‰‘ \Doteq +โ‰’ \fallingdotseq +โ‰“ \risingdotseq +โ‰” \coloneq +โ‰• \eqcolon +โ‰– \eqcirc +โ‰— \circeq +โ‰˜ \arceq +โ‰™ \wedgeq +โ‰š \veeeq +โ‰› \stareq +โ‰œ \triangleq +โ‰ \eqdef +โ‰ž \measeq +โ‰Ÿ \questeq +โ‰  \ne +โ‰ก \equiv +โ‰ข \nequiv +โ‰ฃ \Equiv +โ‰ค \leq +โ‰ฅ \geq +โ‰ฆ \leqq +โ‰ง \geqq +โ‰จ \lneqq +โ‰ฉ \gneqq +โ‰ช \ll +โ‰ซ \gg +โ‰ฌ \between +โ‰ญ \nasymp +โ‰ฎ \nless +โ‰ฏ \ngtr +โ‰ฐ \nleq +โ‰ฑ \ngeq +โ‰ฒ \lesssim +โ‰ณ \gtrsim +โ‰ด \nlesssim +โ‰ต \ngtrsim +โ‰ถ \lessgtr +โ‰ท \gtrless +โ‰ธ \nlessgtr +โ‰น \ngtrless +โ‰บ \prec +โ‰ป \succ +โ‰ผ \preccurlyeq +โ‰ฝ \succcurlyeq +โ‰พ \precsim +โ‰ฟ \succsim +โŠ€ \nprec +โЁ \nsucc +โŠ‚ \subset +โŠƒ \supset +โŠ„ \nsubset +โŠ… \nsupset +โІ \subseteq +โЇ \supseteq +โŠˆ \nsubseteq +โЉ \nsupseteq +โŠŠ \subsetneq +โŠ‹ \supsetneq +โŠŒ \cupleftarrow +โŠ \cupdot +โŠŽ \uplus +โŠ \sqsubset +โА \sqsupset +โŠ‘ \sqsubseteq +โŠ’ \sqsupseteq +โŠ“ \sqcap +โŠ” \sqcup +โŠ• \oplus +โŠ– \ominus +โŠ— \otimes +โŠ˜ \oslash +โŠ™ \odot +โŠš \circledcirc +โŠ› \circledast +โŠœ \circledequal +โŠ \circleddash +โŠž \boxplus +โŠŸ \boxminus +โŠ  \boxtimes +โŠก \boxdot +โŠข \vdash +โŠฃ \dashv +โŠค \top +โŠฅ \bot +โŠฆ \assert +โŠง \models +โŠจ \vDash +โŠฉ \Vdash +โŠช \Vvdash +โŠซ \VDash +โŠฌ \nvdash +โŠญ \nvDash +โŠฎ \nVdash +โŠฏ \nVDash +โŠฐ \prurel +โŠฑ \scurel +โŠฒ \vartriangleleft +โŠณ \vartriangleright +โŠด \trianglelefteq +โŠต \trianglerighteq +โŠถ \origof +โŠท \imageof +โŠธ \multimap +โŠน \hermitmatrix +โŠบ \intercal +โŠป \veebar +โŠผ \barwedge +โŠฝ \barvee +โŠพ \measuredrightangle +โŠฟ \varlrtriangle +โ‹€ \bigwedge +โ‹ \bigvee +โ‹‚ \bigcap +โ‹ƒ \bigcup +โ‹„ \smwhtdiamond +โ‹… \cdot +โ‹† \star +โ‹‡ \divideontimes +โ‹ˆ \bowtie +โ‹‰ \ltimes +โ‹Š \rtimes +โ‹‹ \leftthreetimes +โ‹Œ \rightthreetimes +โ‹ \backsimeq +โ‹Ž \curlyvee +โ‹ \curlywedge +โ‹ \Subset +โ‹‘ \Supset +โ‹’ \Cap +โ‹“ \Cup +โ‹” \pitchfork +โ‹• \equalparallel +โ‹– \lessdot +โ‹— \gtrdot +โ‹˜ \lll +โ‹™ \ggg +โ‹š \lesseqgtr +โ‹› \gtreqless +โ‹œ \eqless +โ‹ \eqgtr +โ‹ž \curlyeqprec +โ‹Ÿ \curlyeqsucc +โ‹  \npreccurlyeq +โ‹ก \nsucccurlyeq +โ‹ข \nsqsubseteq +โ‹ฃ \nsqsupseteq +โ‹ค \sqsubsetneq +โ‹ฅ \sqsupsetneq +โ‹ฆ \lnsim +โ‹ง \gnsim +โ‹จ \precnsim +โ‹ฉ \succnsim +โ‹ช \nvartriangleleft +โ‹ซ \nvartriangleright +โ‹ฌ \ntrianglelefteq +โ‹ญ \ntrianglerighteq +โ€ฆ \ldots +โ‹ฎ \vdots +โ‹ฏ \unicodecdots +โ‹ฏ \cdots +โ‹ฐ \adots +โ‹ฑ \ddots +โ‹ฒ \disin +โ‹ณ \varisins +โ‹ด \isins +โ‹ต \isindot +โ‹ถ \varisinobar +โ‹ท \isinobar +โ‹ธ \isinvb +โ‹น \isinE +โ‹บ \nisd +โ‹ป \varnis +โ‹ผ \nis +โ‹ฝ \varniobar +โ‹พ \niobar +โ‹ฟ \bagmember +โŒ€ \diameter +โŒ‚ \house +โŒ… \varbarwedge +โŒ† \vardoublebarwedge +โŒˆ \lceil +โŒ‰ \rceil +โŒŠ \lfloor +โŒ‹ \rfloor +โŒ \invnot +โŒ‘ \sqlozenge +โŒ’ \profline +โŒ“ \profsurf +โŒ— \viewdata +โŒ™ \turnednot +โŒœ \ulcorner +โŒ \urcorner +โŒž \llcorner +โŒŸ \lrcorner +โŒ  \inttop +โŒก \intbottom +โŒข \frown +โŒฃ \smile +โŒฌ \varhexagonlrbonds +โŒฒ \conictaper +โŒถ \topbot +โŒฝ \obar +โŒฟ \APLnotslash +โ€ \APLnotbackslash +โ“ \APLboxupcaret +โฐ \APLboxquestion +โผ \rangledownzigzagarrow +โŽ” \hexagon +โŽ› \lparenuend +โŽœ \lparenextender +โŽ \lparenlend +โŽž \rparenuend +โŽŸ \rparenextender +โŽ  \rparenlend +โŽก \lbrackuend +โŽข \lbrackextender +โŽฃ \lbracklend +โŽค \rbrackuend +โŽฅ \rbrackextender +โŽฆ \rbracklend +โŽง \lbraceuend +โŽจ \lbracemid +โŽฉ \lbracelend +โŽช \vbraceextender +โŽซ \rbraceuend +โŽฌ \rbracemid +โŽญ \rbracelend +โŽฎ \intextender +โŽฏ \harrowextender +โŽฐ \lmoustache +โŽฑ \rmoustache +โŽฒ \sumtop +โŽณ \sumbottom +โŽด \overbracket +โŽต \underbracket +โŽถ \bbrktbrk +โŽท \sqrtbottom +โŽธ \lvboxline +โŽน \rvboxline +โŽ \varcarriagereturn +โœ \overparen +โ \underparen +โž \overbrace +โŸ \underbrace +โ  \obrbrak +โก \ubrbrak +โข \trapezium +โฃ \benzenr +โค \strns +โฅ \fltns +โฆ \accurrent +โง \elinters +โข \blanksymbol +โฃ \visiblespace +โ”† \bdtriplevdash +โ–€ \blockuphalf +โ–„ \blocklowhalf +โ–ˆ \blockfull +โ–Œ \blocklefthalf +โ– \blockrighthalf +โ–‘ \blockqtrshaded +โ–’ \blockhalfshaded +โ–“ \blockthreeqtrshaded +โ–  \mdlgblksquare +โ–ก \mdlgwhtsquare +โ–ข \squoval +โ–ฃ \blackinwhitesquare +โ–ค \squarehfill +โ–ฅ \squarevfill +โ–ฆ \squarehvfill +โ–ง \squarenwsefill +โ–จ \squareneswfill +โ–ฉ \squarecrossfill +โ–ช \smblksquare +โ–ซ \smwhtsquare +โ–ฌ \hrectangleblack +โ–ญ \hrectangle +โ–ฎ \vrectangleblack +โ–ฏ \vrectangle +โ–ฐ \parallelogramblack +โ–ฑ \parallelogram +โ–ฒ \bigblacktriangleup +โ–ณ \bigtriangleup +โ–ด \blacktriangle +โ–ต \vartriangle +โ–ถ \blacktriangleright +โ–ท \triangleright +โ–ธ \smallblacktriangleright +โ–น \smalltriangleright +โ–บ \blackpointerright +โ–ป \whitepointerright +โ–ผ \bigblacktriangledown +โ–ฝ \bigtriangledown +โ–พ \blacktriangledown +โ–ฟ \triangledown +โ—€ \blacktriangleleft +โ— \triangleleft +โ—‚ \smallblacktriangleleft +โ—ƒ \smalltriangleleft +โ—„ \blackpointerleft +โ—… \whitepointerleft +โ—† \mdlgblkdiamond +โ—‡ \mdlgwhtdiamond +โ—ˆ \blackinwhitediamond +โ—‰ \fisheye +โ—Š \mdlgwhtlozenge +โ—‹ \mdlgwhtcircle +โ—Œ \dottedcircle +โ— \circlevertfill +โ—Ž \bullseye +โ— \mdlgblkcircle +โ— \circlelefthalfblack +โ—‘ \circlerighthalfblack +โ—’ \circlebottomhalfblack +โ—“ \circletophalfblack +โ—” \circleurquadblack +โ—• \blackcircleulquadwhite +โ—– \blacklefthalfcircle +โ—— \blackrighthalfcircle +โ—˜ \inversebullet +โ—™ \inversewhitecircle +โ—š \invwhiteupperhalfcircle +โ—› \invwhitelowerhalfcircle +โ—œ \ularc +โ— \urarc +โ—ž \lrarc +โ—Ÿ \llarc +โ—  \topsemicircle +โ—ก \botsemicircle +โ—ข \lrblacktriangle +โ—ฃ \llblacktriangle +โ—ค \ulblacktriangle +โ—ฅ \urblacktriangle +โ—ฆ \smwhtcircle +โ—ง \squareleftblack +โ—จ \squarerightblack +โ—ฉ \squareulblack +โ—ช \squarelrblack +โ—ซ \boxbar +โ—ฌ \trianglecdot +โ—ญ \triangleleftblack +โ—ฎ \trianglerightblack +โ—ฏ \lgwhtcircle +โ—ฐ \squareulquad +โ—ฑ \squarellquad +โ—ฒ \squarelrquad +โ—ณ \squareurquad +โ—ด \circleulquad +โ—ต \circlellquad +โ—ถ \circlelrquad +โ—ท \circleurquad +โ—ธ \ultriangle +โ—น \urtriangle +โ—บ \lltriangle +โ—ป \mdwhtsquare +โ—ผ \mdblksquare +โ—ฝ \mdsmwhtsquare +โ—พ \mdsmblksquare +โ—ฟ \lrtriangle +โ˜… \bigstar +โ˜† \bigwhitestar +โ˜‰ \astrosun +โ˜ก \danger +โ˜ป \blacksmiley +โ˜ผ \sun +โ˜ฝ \rightmoon +โ˜พ \leftmoon +โ™€ \female +โ™‚ \male +โ™  \spadesuit +โ™ก \heartsuit +โ™ข \diamondsuit +โ™ฃ \clubsuit +โ™ค \varspadesuit +โ™ฅ \varheartsuit +โ™ฆ \vardiamondsuit +โ™ง \varclubsuit +โ™ฉ \quarternote +โ™ช \eighthnote +โ™ซ \twonotes +โ™ญ \flat +โ™ฎ \natural +โ™ฏ \sharp +โ™พ \acidfree +โš€ \dicei +โš \diceii +โš‚ \diceiii +โšƒ \diceiv +โš„ \dicev +โš… \dicevi +โš† \circledrightdot +โš‡ \circledtwodots +โšˆ \blackcircledrightdot +โš‰ \blackcircledtwodots +โšฅ \Hermaphrodite +โšช \mdwhtcircle +โšซ \mdblkcircle +โšฌ \mdsmwhtcircle +โšฒ \neuter +โœ“ \checkmark +โœ  \maltese +โœช \circledstar +โœถ \varstar +โœฝ \dingasterisk +โฒ \lbrbrak +โณ \rbrbrak +โž› \draftingarrow +โŸ€ \threedangle +โŸ \whiteinwhitetriangle +โŸ‚ \perp +โŸƒ \subsetcirc +โŸ„ \supsetcirc +โŸ… \lbag +โŸ† \rbag +โŸ‡ \veedot +โŸˆ \bsolhsub +โŸ‰ \suphsol +โŸŒ \longdivision +โŸ \diamondcdot +โŸ‘ \wedgedot +โŸ’ \upin +โŸ“ \pullback +โŸ” \pushout +โŸ• \leftouterjoin +โŸ– \rightouterjoin +โŸ— \fullouterjoin +โŸ˜ \bigbot +โŸ™ \bigtop +โŸš \DashVDash +โŸ› \dashVdash +โŸœ \multimapinv +โŸ \vlongdash +โŸž \longdashv +โŸŸ \cirbot +โŸ  \lozengeminus +โŸก \concavediamond +โŸข \concavediamondtickleft +โŸฃ \concavediamondtickright +โŸค \whitesquaretickleft +โŸฅ \whitesquaretickright +โŸฆ \lBrack +โŸง \rBrack +โŸจ \langle +โŸฉ \rangle +โŸช \lAngle +โŸซ \rAngle +โŸฌ \Lbrbrak +โŸญ \Rbrbrak +โŸฎ \lgroup +โŸฏ \rgroup +โŸฐ \UUparrow +โŸฑ \DDownarrow +โŸฒ \acwgapcirclearrow +โŸณ \cwgapcirclearrow +โŸด \rightarrowonoplus +โŸต \longleftarrow +โŸถ \longrightarrow +โŸท \longleftrightarrow +โŸธ \Longleftarrow +โŸน \Longrightarrow +โŸบ \Longleftrightarrow +โŸป \longmapsfrom +โŸผ \longmapsto +โŸฝ \Longmapsfrom +โŸพ \Longmapsto +โŸฟ \longrightsquigarrow +โค€ \nvtwoheadrightarrow +โค \nVtwoheadrightarrow +โค‚ \nvLeftarrow +โคƒ \nvRightarrow +โค„ \nvLeftrightarrow +โค… \twoheadmapsto +โค† \Mapsfrom +โค‡ \Mapsto +โคˆ \downarrowbarred +โค‰ \uparrowbarred +โคŠ \Uuparrow +โค‹ \Ddownarrow +โคŒ \leftbkarrow +โค \rightbkarrow +โคŽ \leftdbkarrow +โค \dbkarrow +โค \drbkarrow +โค‘ \rightdotarrow +โค’ \baruparrow +โค“ \downarrowbar +โค” \nvrightarrowtail +โค• \nVrightarrowtail +โค– \twoheadrightarrowtail +โค— \nvtwoheadrightarrowtail +โค˜ \nVtwoheadrightarrowtail +โค™ \lefttail +โคš \righttail +โค› \leftdbltail +โคœ \rightdbltail +โค \diamondleftarrow +โคž \rightarrowdiamond +โคŸ \diamondleftarrowbar +โค  \barrightarrowdiamond +โคก \nwsearrow +โคข \neswarrow +โคฃ \hknwarrow +โคค \hknearrow +โคฅ \hksearrow +โคฆ \hkswarrow +โคง \tona +โคจ \toea +โคฉ \tosa +โคช \towa +โคซ \rdiagovfdiag +โคฌ \fdiagovrdiag +โคญ \seovnearrow +โคฎ \neovsearrow +โคฏ \fdiagovnearrow +โคฐ \rdiagovsearrow +โคฑ \neovnwarrow +โคฒ \nwovnearrow +โคณ \rightcurvedarrow +โคด \uprightcurvearrow +โคต \downrightcurvedarrow +โคถ \leftdowncurvedarrow +โคท \rightdowncurvedarrow +โคธ \cwrightarcarrow +โคน \acwleftarcarrow +โคบ \acwoverarcarrow +โคป \acwunderarcarrow +โคผ \curvearrowrightminus +โคฝ \curvearrowleftplus +โคพ \cwundercurvearrow +โคฟ \ccwundercurvearrow +โฅ€ \acwcirclearrow +โฅ \cwcirclearrow +โฅ‚ \rightarrowshortleftarrow +โฅƒ \leftarrowshortrightarrow +โฅ„ \shortrightarrowleftarrow +โฅ… \rightarrowplus +โฅ† \leftarrowplus +โฅ‡ \rightarrowx +โฅˆ \leftrightarrowcircle +โฅ‰ \twoheaduparrowcircle +โฅŠ \leftrightharpoonupdown +โฅ‹ \leftrightharpoondownup +โฅŒ \updownharpoonrightleft +โฅ \updownharpoonleftright +โฅŽ \leftrightharpoonupup +โฅ \updownharpoonrightright +โฅ \leftrightharpoondowndown +โฅ‘ \updownharpoonleftleft +โฅ’ \barleftharpoonup +โฅ“ \rightharpoonupbar +โฅ” \barupharpoonright +โฅ• \downharpoonrightbar +โฅ– \barleftharpoondown +โฅ— \rightharpoondownbar +โฅ˜ \barupharpoonleft +โฅ™ \downharpoonleftbar +โฅš \leftharpoonupbar +โฅ› \barrightharpoonup +โฅœ \upharpoonrightbar +โฅ \bardownharpoonright +โฅž \leftharpoondownbar +โฅŸ \barrightharpoondown +โฅ  \upharpoonleftbar +โฅก \bardownharpoonleft +โฅข \leftharpoonsupdown +โฅฃ \upharpoonsleftright +โฅค \rightharpoonsupdown +โฅฅ \downharpoonsleftright +โฅฆ \leftrightharpoonsup +โฅง \leftrightharpoonsdown +โฅจ \rightleftharpoonsup +โฅฉ \rightleftharpoonsdown +โฅช \leftharpoonupdash +โฅซ \dashleftharpoondown +โฅฌ \rightharpoonupdash +โฅญ \dashrightharpoondown +โฅฎ \updownharpoonsleftright +โฅฏ \downupharpoonsleftright +โฅฐ \rightimply +โฅฑ \equalrightarrow +โฅฒ \similarrightarrow +โฅณ \leftarrowsimilar +โฅด \rightarrowsimilar +โฅต \rightarrowapprox +โฅถ \ltlarr +โฅท \leftarrowless +โฅธ \gtrarr +โฅน \subrarr +โฅบ \leftarrowsubset +โฅป \suplarr +โฅผ \leftfishtail +โฅฝ \rightfishtail +โฅพ \upfishtail +โฅฟ \downfishtail +โฆ€ \Vvert +โฆ \mdsmblkcircle +โฆ‚ \typecolon +โฆƒ \lBrace +โฆ„ \rBrace +โฆ… \lParen +โฆ† \rParen +โฆ‡ \llparenthesis +โฆˆ \rrparenthesis +โฆ‰ \llangle +โฆŠ \rrangle +โฆ‹ \lbrackubar +โฆŒ \rbrackubar +โฆ \lbrackultick +โฆŽ \rbracklrtick +โฆ \lbracklltick +โฆ \rbrackurtick +โฆ‘ \langledot +โฆ’ \rangledot +โฆ“ \lparenless +โฆ” \rparengtr +โฆ• \Lparengtr +โฆ– \Rparenless +โฆ— \lblkbrbrak +โฆ˜ \rblkbrbrak +โฆ™ \fourvdots +โฆš \vzigzag +โฆ› \measuredangleleft +โฆœ \rightanglesqr +โฆ \rightanglemdot +โฆž \angles +โฆŸ \angdnr +โฆ  \gtlpar +โฆก \sphericalangleup +โฆข \turnangle +โฆฃ \revangle +โฆค \angleubar +โฆฅ \revangleubar +โฆฆ \wideangledown +โฆง \wideangleup +โฆจ \measanglerutone +โฆฉ \measanglelutonw +โฆช \measanglerdtose +โฆซ \measangleldtosw +โฆฌ \measangleurtone +โฆญ \measangleultonw +โฆฎ \measangledrtose +โฆฏ \measangledltosw +โฆฐ \revemptyset +โฆฑ \emptysetobar +โฆฒ \emptysetocirc +โฆณ \emptysetoarr +โฆด \emptysetoarrl +โฆต \circlehbar +โฆถ \circledvert +โฆท \circledparallel +โฆธ \obslash +โฆน \operp +โฆบ \obot +โฆป \olcross +โฆผ \odotslashdot +โฆฝ \uparrowoncircle +โฆพ \circledwhitebullet +โฆฟ \circledbullet +โง€ \olessthan +โง \ogreaterthan +โง‚ \cirscir +โงƒ \cirE +โง„ \boxdiag +โง… \boxbslash +โง† \boxast +โง‡ \boxcircle +โงˆ \boxbox +โง‰ \boxonbox +โงŠ \triangleodot +โง‹ \triangleubar +โงŒ \triangles +โง \triangleserifs +โงŽ \rtriltri +โง \ltrivb +โง \vbrtri +โง‘ \lfbowtie +โง’ \rfbowtie +โง“ \fbowtie +โง” \lftimes +โง• \rftimes +โง– \hourglass +โง— \blackhourglass +โง˜ \lvzigzag +โง™ \rvzigzag +โงš \Lvzigzag +โง› \Rvzigzag +โงœ \iinfin +โง \tieinfty +โงž \nvinfty +โงŸ \dualmap +โง  \laplac +โงก \lrtriangleeq +โงข \shuffle +โงฃ \eparsl +โงค \smeparsl +โงฅ \eqvparsl +โงฆ \gleichstark +โงง \thermod +โงจ \downtriangleleftblack +โงฉ \downtrianglerightblack +โงช \blackdiamonddownarrow +โงซ \mdlgblklozenge +โงฌ \circledownarrow +โงญ \blackcircledownarrow +โงฎ \errbarsquare +โงฏ \errbarblacksquare +โงฐ \errbardiamond +โงฑ \errbarblackdiamond +โงฒ \errbarcircle +โงณ \errbarblackcircle +โงด \ruledelayed +โงต \setminus +โงถ \dsol +โงท \rsolbar +โงธ \xsol +โงน \xbsol +โงบ \doubleplus +โงป \tripleplus +โงผ \lcurvyangle +โงฝ \rcurvyangle +โงพ \tplus +โงฟ \tminus +โจ€ \bigodot +โจ \bigoplus +โจ‚ \bigotimes +โจƒ \bigcupdot +โจ„ \biguplus +โจ… \bigsqcap +โจ† \bigsqcup +โจ‡ \conjquant +โจˆ \disjquant +โจ‰ \bigtimes +โจŠ \modtwosum +โจ‹ \sumint +โจŒ \iiiint +โจ \intbar +โจŽ \intBar +โจ \fint +โจ \cirfnint +โจ‘ \awint +โจ’ \rppolint +โจ“ \scpolint +โจ” \npolint +โจ• \pointint +โจ– \sqint +โจ— \intlarhk +โจ˜ \intx +โจ™ \intcap +โจš \intcup +โจ› \upint +โจœ \lowint +โจ \Join +โจž \bigtriangleleft +โจŸ \zcmp +โจ  \zpipe +โจก \zproject +โจข \ringplus +โจฃ \plushat +โจค \simplus +โจฅ \plusdot +โจฆ \plussim +โจง \plussubtwo +โจจ \plustrif +โจฉ \commaminus +โจช \minusdot +โจซ \minusfdots +โจฌ \minusrdots +โจญ \opluslhrim +โจฎ \oplusrhrim +โจฏ \vectimes +โจฐ \dottimes +โจฑ \timesbar +โจฒ \btimes +โจณ \smashtimes +โจด \otimeslhrim +โจต \otimesrhrim +โจถ \otimeshat +โจท \Otimes +โจธ \odiv +โจน \triangleplus +โจบ \triangleminus +โจป \triangletimes +โจผ \intprod +โจฝ \intprodr +โจพ \fcmp +โจฟ \amalg +โฉ€ \capdot +โฉ \uminus +โฉ‚ \barcup +โฉƒ \barcap +โฉ„ \capwedge +โฉ… \cupvee +โฉ† \cupovercap +โฉ‡ \capovercup +โฉˆ \cupbarcap +โฉ‰ \capbarcup +โฉŠ \twocups +โฉ‹ \twocaps +โฉŒ \closedvarcup +โฉ \closedvarcap +โฉŽ \Sqcap +โฉ \Sqcup +โฉ \closedvarcupsmashprod +โฉ‘ \wedgeodot +โฉ’ \veeodot +โฉ“ \Wedge +โฉ” \Vee +โฉ• \wedgeonwedge +โฉ– \veeonvee +โฉ— \bigslopedvee +โฉ˜ \bigslopedwedge +โฉ™ \veeonwedge +โฉš \wedgemidvert +โฉ› \veemidvert +โฉœ \midbarwedge +โฉ \midbarvee +โฉž \doublebarwedge +โฉŸ \wedgebar +โฉ  \wedgedoublebar +โฉก \varveebar +โฉข \doublebarvee +โฉฃ \veedoublebar +โฉค \dsub +โฉฅ \rsub +โฉฆ \eqdot +โฉง \dotequiv +โฉจ \equivVert +โฉฉ \equivVvert +โฉช \dotsim +โฉซ \simrdots +โฉฌ \simminussim +โฉญ \congdot +โฉฎ \asteq +โฉฏ \hatapprox +โฉฐ \approxeqq +โฉฑ \eqqplus +โฉฒ \pluseqq +โฉณ \eqqsim +โฉด \Coloneq +โฉต \eqeq +โฉถ \eqeqeq +โฉท \ddotseq +โฉธ \equivDD +โฉน \ltcir +โฉบ \gtcir +โฉป \ltquest +โฉผ \gtquest +โฉฝ \leqslant +โฉพ \geqslant +โฉฟ \lesdot +โช€ \gesdot +โช \lesdoto +โช‚ \gesdoto +โชƒ \lesdotor +โช„ \gesdotol +โช… \lessapprox +โช† \gtrapprox +โช‡ \lneq +โชˆ \gneq +โช‰ \lnapprox +โชŠ \gnapprox +โช‹ \lesseqqgtr +โชŒ \gtreqqless +โช \lsime +โชŽ \gsime +โช \lsimg +โช \gsiml +โช‘ \lgE +โช’ \glE +โช“ \lesges +โช” \gesles +โช• \eqslantless +โช– \eqslantgtr +โช— \elsdot +โช˜ \egsdot +โช™ \eqqless +โชš \eqqgtr +โช› \eqqslantless +โชœ \eqqslantgtr +โช \simless +โชž \simgtr +โชŸ \simlE +โช  \simgE +โชก \Lt +โชข \Gt +โชฃ \partialmeetcontraction +โชค \glj +โชฅ \gla +โชฆ \ltcc +โชง \gtcc +โชจ \lescc +โชฉ \gescc +โชช \smt +โชซ \lat +โชฌ \smte +โชญ \late +โชฎ \bumpeqq +โชฏ \preceq +โชฐ \succeq +โชฑ \precneq +โชฒ \succneq +โชณ \preceqq +โชด \succeqq +โชต \precneqq +โชถ \succneqq +โชท \precapprox +โชธ \succapprox +โชน \precnapprox +โชบ \succnapprox +โชป \Prec +โชผ \Succ +โชฝ \subsetdot +โชพ \supsetdot +โชฟ \subsetplus +โซ€ \supsetplus +โซ \submult +โซ‚ \supmult +โซƒ \subedot +โซ„ \supedot +โซ… \subseteqq +โซ† \supseteqq +โซ‡ \subsim +โซˆ \supsim +โซ‰ \subsetapprox +โซŠ \supsetapprox +โซ‹ \subsetneqq +โซŒ \supsetneqq +โซ \lsqhook +โซŽ \rsqhook +โซ \csub +โซ \csup +โซ‘ \csube +โซ’ \csupe +โซ“ \subsup +โซ” \supsub +โซ• \subsub +โซ– \supsup +โซ— \suphsub +โซ˜ \supdsub +โซ™ \forkv +โซš \topfork +โซ› \mlcp +โซœ \forks +โซ \forksnot +โซž \shortlefttack +โซŸ \shortdowntack +โซ  \shortuptack +โซก \perps +โซข \vDdash +โซฃ \dashV +โซค \Dashv +โซฅ \DashV +โซฆ \varVdash +โซง \Barv +โซจ \vBar +โซฉ \vBarv +โซช \barV +โซซ \Vbar +โซฌ \Not +โซญ \bNot +โซฎ \revnmid +โซฏ \cirmid +โซฐ \midcir +โซฑ \topcir +โซฒ \nhpar +โซณ \parsim +โซด \interleave +โซต \nhVvert +โซถ \threedotcolon +โซท \lllnest +โซธ \gggnest +โซน \leqqslant +โซบ \geqqslant +โซป \trslash +โซผ \biginterleave +โซฝ \sslash +โซพ \talloblong +โซฟ \bigtalloblong +โฌ’ \squaretopblack +โฌ“ \squarebotblack +โฌ” \squareurblack +โฌ• \squarellblack +โฌ– \diamondleftblack +โฌ— \diamondrightblack +โฌ˜ \diamondtopblack +โฌ™ \diamondbotblack +โฌš \dottedsquare +โฌ› \lgblksquare +โฌœ \lgwhtsquare +โฌ \vysmblksquare +โฌž \vysmwhtsquare +โฌŸ \pentagonblack +โฌ  \pentagon +โฌก \varhexagon +โฌข \varhexagonblack +โฌฃ \hexagonblack +โฌค \lgblkcircle +โฌฅ \mdblkdiamond +โฌฆ \mdwhtdiamond +โฌง \mdblklozenge +โฌจ \mdwhtlozenge +โฌฉ \smblkdiamond +โฌช \smblklozenge +โฌซ \smwhtlozenge +โฌฌ \blkhorzoval +โฌญ \whthorzoval +โฌฎ \blkvertoval +โฌฏ \whtvertoval +โฌฐ \circleonleftarrow +โฌฑ \leftthreearrows +โฌฒ \leftarrowonoplus +โฌณ \longleftsquigarrow +โฌด \nvtwoheadleftarrow +โฌต \nVtwoheadleftarrow +โฌถ \twoheadmapsfrom +โฌท \twoheadleftdbkarrow +โฌธ \leftdotarrow +โฌน \nvleftarrowtail +โฌบ \nVleftarrowtail +โฌป \twoheadleftarrowtail +โฌผ \nvtwoheadleftarrowtail +โฌฝ \nVtwoheadleftarrowtail +โฌพ \leftarrowx +โฌฟ \leftcurvedarrow +โญ€ \equalleftarrow +โญ \bsimilarleftarrow +โญ‚ \leftarrowbackapprox +โญƒ \rightarrowgtr +โญ„ \rightarrowsupset +โญ… \LLeftarrow +โญ† \RRightarrow +โญ‡ \bsimilarrightarrow +โญˆ \rightarrowbackapprox +โญ‰ \similarleftarrow +โญŠ \leftarrowapprox +โญ‹ \leftarrowbsimilar +โญŒ \rightarrowbsimilar +โญ \medwhitestar +โญ‘ \medblackstar +โญ’ \smwhitestar +โญ“ \rightpentagonblack +โญ” \rightpentagon +ใ€’ \postalmark +ใ€ฐ \hzigzag +๐€ \mbfA +๐ \mbfB +๐‚ \mbfC +๐ƒ \mbfD +๐„ \mbfE +๐… \mbfF +๐† \mbfG +๐‡ \mbfH +๐ˆ \mbfI +๐‰ \mbfJ +๐Š \mbfK +๐‹ \mbfL +๐Œ \mbfM +๐ \mbfN +๐Ž \mbfO +๐ \mbfP +๐ \mbfQ +๐‘ \mbfR +๐’ \mbfS +๐“ \mbfT +๐” \mbfU +๐• \mbfV +๐– \mbfW +๐— \mbfX +๐˜ \mbfY +๐™ \mbfZ +๐š \mbfa +๐› \mbfb +๐œ \mbfc +๐ \mbfd +๐ž \mbfe +๐Ÿ \mbff +๐  \mbfg +๐ก \mbfh +๐ข \mbfi +๐ฃ \mbfj +๐ค \mbfk +๐ฅ \mbfl +๐ฆ \mbfm +๐ง \mbfn +๐จ \mbfo +๐ฉ \mbfp +๐ช \mbfq +๐ซ \mbfr +๐ฌ \mbfs +๐ญ \mbft +๐ฎ \mbfu +๐ฏ \mbfv +๐ฐ \mbfw +๐ฑ \mbfx +๐ฒ \mbfy +๐ณ \mbfz +๐ด \mitA +๐ต \mitB +๐ถ \mitC +๐ท \mitD +๐ธ \mitE +๐น \mitF +๐บ \mitG +๐ป \mitH +๐ผ \mitI +๐ฝ \mitJ +๐พ \mitK +๐ฟ \mitL +๐‘€ \mitM +๐‘ \mitN +๐‘‚ \mitO +๐‘ƒ \mitP +๐‘„ \mitQ +๐‘… \mitR +๐‘† \mitS +๐‘‡ \mitT +๐‘ˆ \mitU +๐‘‰ \mitV +๐‘Š \mitW +๐‘‹ \mitX +๐‘Œ \mitY +๐‘ \mitZ +๐‘Ž \mita +๐‘ \mitb +๐‘ \mitc +๐‘‘ \mitd +๐‘’ \mite +๐‘“ \mitf +๐‘” \mitg +๐‘– \miti +๐‘— \mitj +๐‘˜ \mitk +๐‘™ \mitl +๐‘š \mitm +๐‘› \mitn +๐‘œ \mito +๐‘ \mitp +๐‘ž \mitq +๐‘Ÿ \mitr +๐‘  \mits +๐‘ก \mitt +๐‘ข \mitu +๐‘ฃ \mitv +๐‘ค \mitw +๐‘ฅ \mitx +๐‘ฆ \mity +๐‘ง \mitz +๐‘จ \mbfitA +๐‘ฉ \mbfitB +๐‘ช \mbfitC +๐‘ซ \mbfitD +๐‘ฌ \mbfitE +๐‘ญ \mbfitF +๐‘ฎ \mbfitG +๐‘ฏ \mbfitH +๐‘ฐ \mbfitI +๐‘ฑ \mbfitJ +๐‘ฒ \mbfitK +๐‘ณ \mbfitL +๐‘ด \mbfitM +๐‘ต \mbfitN +๐‘ถ \mbfitO +๐‘ท \mbfitP +๐‘ธ \mbfitQ +๐‘น \mbfitR +๐‘บ \mbfitS +๐‘ป \mbfitT +๐‘ผ \mbfitU +๐‘ฝ \mbfitV +๐‘พ \mbfitW +๐‘ฟ \mbfitX +๐’€ \mbfitY +๐’ \mbfitZ +๐’‚ \mbfita +๐’ƒ \mbfitb +๐’„ \mbfitc +๐’… \mbfitd +๐’† \mbfite +๐’‡ \mbfitf +๐’ˆ \mbfitg +๐’‰ \mbfith +๐’Š \mbfiti +๐’‹ \mbfitj +๐’Œ \mbfitk +๐’ \mbfitl +๐’Ž \mbfitm +๐’ \mbfitn +๐’ \mbfito +๐’‘ \mbfitp +๐’’ \mbfitq +๐’“ \mbfitr +๐’” \mbfits +๐’• \mbfitt +๐’– \mbfitu +๐’— \mbfitv +๐’˜ \mbfitw +๐’™ \mbfitx +๐’š \mbfity +๐’› \mbfitz +๐’œ \mscrA +๐’ž \mscrC +๐’Ÿ \mscrD +๐’ข \mscrG +๐’ฅ \mscrJ +๐’ฆ \mscrK +๐’ฉ \mscrN +๐’ช \mscrO +๐’ซ \mscrP +๐’ฌ \mscrQ +๐’ฎ \mscrS +๐’ฏ \mscrT +๐’ฐ \mscrU +๐’ฑ \mscrV +๐’ฒ \mscrW +๐’ณ \mscrX +๐’ด \mscrY +๐’ต \mscrZ +๐’ถ \mscra +๐’ท \mscrb +๐’ธ \mscrc +๐’น \mscrd +๐’ป \mscrf +๐’ฝ \mscrh +๐’พ \mscri +๐’ฟ \mscrj +๐“€ \mscrk +๐“ \mscrl +๐“‚ \mscrm +๐“ƒ \mscrn +๐“… \mscrp +๐“† \mscrq +๐“‡ \mscrr +๐“ˆ \mscrs +๐“‰ \mscrt +๐“Š \mscru +๐“‹ \mscrv +๐“Œ \mscrw +๐“ \mscrx +๐“Ž \mscry +๐“ \mscrz +๐“ \mbfscrA +๐“‘ \mbfscrB +๐“’ \mbfscrC +๐““ \mbfscrD +๐“” \mbfscrE +๐“• \mbfscrF +๐“– \mbfscrG +๐“— \mbfscrH +๐“˜ \mbfscrI +๐“™ \mbfscrJ +๐“š \mbfscrK +๐“› \mbfscrL +๐“œ \mbfscrM +๐“ \mbfscrN +๐“ž \mbfscrO +๐“Ÿ \mbfscrP +๐“  \mbfscrQ +๐“ก \mbfscrR +๐“ข \mbfscrS +๐“ฃ \mbfscrT +๐“ค \mbfscrU +๐“ฅ \mbfscrV +๐“ฆ \mbfscrW +๐“ง \mbfscrX +๐“จ \mbfscrY +๐“ฉ \mbfscrZ +๐“ช \mbfscra +๐“ซ \mbfscrb +๐“ฌ \mbfscrc +๐“ญ \mbfscrd +๐“ฎ \mbfscre +๐“ฏ \mbfscrf +๐“ฐ \mbfscrg +๐“ฑ \mbfscrh +๐“ฒ \mbfscri +๐“ณ \mbfscrj +๐“ด \mbfscrk +๐“ต \mbfscrl +๐“ถ \mbfscrm +๐“ท \mbfscrn +๐“ธ \mbfscro +๐“น \mbfscrp +๐“บ \mbfscrq +๐“ป \mbfscrr +๐“ผ \mbfscrs +๐“ฝ \mbfscrt +๐“พ \mbfscru +๐“ฟ \mbfscrv +๐”€ \mbfscrw +๐” \mbfscrx +๐”‚ \mbfscry +๐”ƒ \mbfscrz +๐”„ \mfrakA +๐”… \mfrakB +๐”‡ \mfrakD +๐”ˆ \mfrakE +๐”‰ \mfrakF +๐”Š \mfrakG +๐” \mfrakJ +๐”Ž \mfrakK +๐” \mfrakL +๐” \mfrakM +๐”‘ \mfrakN +๐”’ \mfrakO +๐”“ \mfrakP +๐”” \mfrakQ +๐”– \mfrakS +๐”— \mfrakT +๐”˜ \mfrakU +๐”™ \mfrakV +๐”š \mfrakW +๐”› \mfrakX +๐”œ \mfrakY +๐”ž \mfraka +๐”Ÿ \mfrakb +๐”  \mfrakc +๐”ก \mfrakd +๐”ข \mfrake +๐”ฃ \mfrakf +๐”ค \mfrakg +๐”ฅ \mfrakh +๐”ฆ \mfraki +๐”ง \mfrakj +๐”จ \mfrakk +๐”ฉ \mfrakl +๐”ช \mfrakm +๐”ซ \mfrakn +๐”ฌ \mfrako +๐”ญ \mfrakp +๐”ฎ \mfrakq +๐”ฏ \mfrakr +๐”ฐ \mfraks +๐”ฑ \mfrakt +๐”ฒ \mfraku +๐”ณ \mfrakv +๐”ด \mfrakw +๐”ต \mfrakx +๐”ถ \mfraky +๐”ท \mfrakz +๐”ธ \BbbA +๐”น \BbbB +๐”ป \BbbD +๐”ผ \BbbE +๐”ฝ \BbbF +๐”พ \BbbG +๐•€ \BbbI +๐• \BbbJ +๐•‚ \BbbK +๐•ƒ \BbbL +๐•„ \BbbM +๐•† \BbbO +๐•Š \BbbS +๐•‹ \BbbT +๐•Œ \BbbU +๐• \BbbV +๐•Ž \BbbW +๐• \BbbX +๐• \BbbY +๐•’ \Bbba +๐•“ \Bbbb +๐•” \Bbbc +๐•• \Bbbd +๐•– \Bbbe +๐•— \Bbbf +๐•˜ \Bbbg +๐•™ \Bbbh +๐•š \Bbbi +๐•› \Bbbj +๐•œ \Bbbk +๐• \Bbbl +๐•ž \Bbbm +๐•Ÿ \Bbbn +๐•  \Bbbo +๐•ก \Bbbp +๐•ข \Bbbq +๐•ฃ \Bbbr +๐•ค \Bbbs +๐•ฅ \Bbbt +๐•ฆ \Bbbu +๐•ง \Bbbv +๐•จ \Bbbw +๐•ฉ \Bbbx +๐•ช \Bbby +๐•ซ \Bbbz +๐•ฌ \mbffrakA +๐•ญ \mbffrakB +๐•ฎ \mbffrakC +๐•ฏ \mbffrakD +๐•ฐ \mbffrakE +๐•ฑ \mbffrakF +๐•ฒ \mbffrakG +๐•ณ \mbffrakH +๐•ด \mbffrakI +๐•ต \mbffrakJ +๐•ถ \mbffrakK +๐•ท \mbffrakL +๐•ธ \mbffrakM +๐•น \mbffrakN +๐•บ \mbffrakO +๐•ป \mbffrakP +๐•ผ \mbffrakQ +๐•ฝ \mbffrakR +๐•พ \mbffrakS +๐•ฟ \mbffrakT +๐–€ \mbffrakU +๐– \mbffrakV +๐–‚ \mbffrakW +๐–ƒ \mbffrakX +๐–„ \mbffrakY +๐–… \mbffrakZ +๐–† \mbffraka +๐–‡ \mbffrakb +๐–ˆ \mbffrakc +๐–‰ \mbffrakd +๐–Š \mbffrake +๐–‹ \mbffrakf +๐–Œ \mbffrakg +๐– \mbffrakh +๐–Ž \mbffraki +๐– \mbffrakj +๐– \mbffrakk +๐–‘ \mbffrakl +๐–’ \mbffrakm +๐–“ \mbffrakn +๐–” \mbffrako +๐–• \mbffrakp +๐–– \mbffrakq +๐–— \mbffrakr +๐–˜ \mbffraks +๐–™ \mbffrakt +๐–š \mbffraku +๐–› \mbffrakv +๐–œ \mbffrakw +๐– \mbffrakx +๐–ž \mbffraky +๐–Ÿ \mbffrakz +๐–  \msansA +๐–ก \msansB +๐–ข \msansC +๐–ฃ \msansD +๐–ค \msansE +๐–ฅ \msansF +๐–ฆ \msansG +๐–ง \msansH +๐–จ \msansI +๐–ฉ \msansJ +๐–ช \msansK +๐–ซ \msansL +๐–ฌ \msansM +๐–ญ \msansN +๐–ฎ \msansO +๐–ฏ \msansP +๐–ฐ \msansQ +๐–ฑ \msansR +๐–ฒ \msansS +๐–ณ \msansT +๐–ด \msansU +๐–ต \msansV +๐–ถ \msansW +๐–ท \msansX +๐–ธ \msansY +๐–น \msansZ +๐–บ \msansa +๐–ป \msansb +๐–ผ \msansc +๐–ฝ \msansd +๐–พ \msanse +๐–ฟ \msansf +๐—€ \msansg +๐— \msansh +๐—‚ \msansi +๐—ƒ \msansj +๐—„ \msansk +๐—… \msansl +๐—† \msansm +๐—‡ \msansn +๐—ˆ \msanso +๐—‰ \msansp +๐—Š \msansq +๐—‹ \msansr +๐—Œ \msanss +๐— \msanst +๐—Ž \msansu +๐— \msansv +๐— \msansw +๐—‘ \msansx +๐—’ \msansy +๐—“ \msansz +๐—” \mbfsansA +๐—• \mbfsansB +๐—– \mbfsansC +๐—— \mbfsansD +๐—˜ \mbfsansE +๐—™ \mbfsansF +๐—š \mbfsansG +๐—› \mbfsansH +๐—œ \mbfsansI +๐— \mbfsansJ +๐—ž \mbfsansK +๐—Ÿ \mbfsansL +๐—  \mbfsansM +๐—ก \mbfsansN +๐—ข \mbfsansO +๐—ฃ \mbfsansP +๐—ค \mbfsansQ +๐—ฅ \mbfsansR +๐—ฆ \mbfsansS +๐—ง \mbfsansT +๐—จ \mbfsansU +๐—ฉ \mbfsansV +๐—ช \mbfsansW +๐—ซ \mbfsansX +๐—ฌ \mbfsansY +๐—ญ \mbfsansZ +๐—ฎ \mbfsansa +๐—ฏ \mbfsansb +๐—ฐ \mbfsansc +๐—ฑ \mbfsansd +๐—ฒ \mbfsanse +๐—ณ \mbfsansf +๐—ด \mbfsansg +๐—ต \mbfsansh +๐—ถ \mbfsansi +๐—ท \mbfsansj +๐—ธ \mbfsansk +๐—น \mbfsansl +๐—บ \mbfsansm +๐—ป \mbfsansn +๐—ผ \mbfsanso +๐—ฝ \mbfsansp +๐—พ \mbfsansq +๐—ฟ \mbfsansr +๐˜€ \mbfsanss +๐˜ \mbfsanst +๐˜‚ \mbfsansu +๐˜ƒ \mbfsansv +๐˜„ \mbfsansw +๐˜… \mbfsansx +๐˜† \mbfsansy +๐˜‡ \mbfsansz +๐˜ˆ \mitsansA +๐˜‰ \mitsansB +๐˜Š \mitsansC +๐˜‹ \mitsansD +๐˜Œ \mitsansE +๐˜ \mitsansF +๐˜Ž \mitsansG +๐˜ \mitsansH +๐˜ \mitsansI +๐˜‘ \mitsansJ +๐˜’ \mitsansK +๐˜“ \mitsansL +๐˜” \mitsansM +๐˜• \mitsansN +๐˜– \mitsansO +๐˜— \mitsansP +๐˜˜ \mitsansQ +๐˜™ \mitsansR +๐˜š \mitsansS +๐˜› \mitsansT +๐˜œ \mitsansU +๐˜ \mitsansV +๐˜ž \mitsansW +๐˜Ÿ \mitsansX +๐˜  \mitsansY +๐˜ก \mitsansZ +๐˜ข \mitsansa +๐˜ฃ \mitsansb +๐˜ค \mitsansc +๐˜ฅ \mitsansd +๐˜ฆ \mitsanse +๐˜ง \mitsansf +๐˜จ \mitsansg +๐˜ฉ \mitsansh +๐˜ช \mitsansi +๐˜ซ \mitsansj +๐˜ฌ \mitsansk +๐˜ญ \mitsansl +๐˜ฎ \mitsansm +๐˜ฏ \mitsansn +๐˜ฐ \mitsanso +๐˜ฑ \mitsansp +๐˜ฒ \mitsansq +๐˜ณ \mitsansr +๐˜ด \mitsanss +๐˜ต \mitsanst +๐˜ถ \mitsansu +๐˜ท \mitsansv +๐˜ธ \mitsansw +๐˜น \mitsansx +๐˜บ \mitsansy +๐˜ป \mitsansz +๐˜ผ \mbfitsansA +๐˜ฝ \mbfitsansB +๐˜พ \mbfitsansC +๐˜ฟ \mbfitsansD +๐™€ \mbfitsansE +๐™ \mbfitsansF +๐™‚ \mbfitsansG +๐™ƒ \mbfitsansH +๐™„ \mbfitsansI +๐™… \mbfitsansJ +๐™† \mbfitsansK +๐™‡ \mbfitsansL +๐™ˆ \mbfitsansM +๐™‰ \mbfitsansN +๐™Š \mbfitsansO +๐™‹ \mbfitsansP +๐™Œ \mbfitsansQ +๐™ \mbfitsansR +๐™Ž \mbfitsansS +๐™ \mbfitsansT +๐™ \mbfitsansU +๐™‘ \mbfitsansV +๐™’ \mbfitsansW +๐™“ \mbfitsansX +๐™” \mbfitsansY +๐™• \mbfitsansZ +๐™– \mbfitsansa +๐™— \mbfitsansb +๐™˜ \mbfitsansc +๐™™ \mbfitsansd +๐™š \mbfitsanse +๐™› \mbfitsansf +๐™œ \mbfitsansg +๐™ \mbfitsansh +๐™ž \mbfitsansi +๐™Ÿ \mbfitsansj +๐™  \mbfitsansk +๐™ก \mbfitsansl +๐™ข \mbfitsansm +๐™ฃ \mbfitsansn +๐™ค \mbfitsanso +๐™ฅ \mbfitsansp +๐™ฆ \mbfitsansq +๐™ง \mbfitsansr +๐™จ \mbfitsanss +๐™ฉ \mbfitsanst +๐™ช \mbfitsansu +๐™ซ \mbfitsansv +๐™ฌ \mbfitsansw +๐™ญ \mbfitsansx +๐™ฎ \mbfitsansy +๐™ฏ \mbfitsansz +๐™ฐ \mttA +๐™ฑ \mttB +๐™ฒ \mttC +๐™ณ \mttD +๐™ด \mttE +๐™ต \mttF +๐™ถ \mttG +๐™ท \mttH +๐™ธ \mttI +๐™น \mttJ +๐™บ \mttK +๐™ป \mttL +๐™ผ \mttM +๐™ฝ \mttN +๐™พ \mttO +๐™ฟ \mttP +๐š€ \mttQ +๐š \mttR +๐š‚ \mttS +๐šƒ \mttT +๐š„ \mttU +๐š… \mttV +๐š† \mttW +๐š‡ \mttX +๐šˆ \mttY +๐š‰ \mttZ +๐šŠ \mtta +๐š‹ \mttb +๐šŒ \mttc +๐š \mttd +๐šŽ \mtte +๐š \mttf +๐š \mttg +๐š‘ \mtth +๐š’ \mtti +๐š“ \mttj +๐š” \mttk +๐š• \mttl +๐š– \mttm +๐š— \mttn +๐š˜ \mtto +๐š™ \mttp +๐šš \mttq +๐š› \mttr +๐šœ \mtts +๐š \mttt +๐šž \mttu +๐šŸ \mttv +๐š  \mttw +๐šก \mttx +๐šข \mtty +๐šฃ \mttz +๐šค \imath +๐šฅ \jmath +๐šจ \mbfAlpha +๐šฉ \mbfBeta +๐šช \mbfGamma +๐šซ \mbfDelta +๐šฌ \mbfEpsilon +๐šญ \mbfZeta +๐šฎ \mbfEta +๐šฏ \mbfTheta +๐šฐ \mbfIota +๐šฑ \mbfKappa +๐šฒ \mbfLambda +๐šณ \mbfMu +๐šด \mbfNu +๐šต \mbfXi +๐šถ \mbfOmicron +๐šท \mbfPi +๐šธ \mbfRho +๐šน \mbfvarTheta +๐šบ \mbfSigma +๐šป \mbfTau +๐šผ \mbfUpsilon +๐šฝ \mbfPhi +๐šพ \mbfChi +๐šฟ \mbfPsi +๐›€ \mbfOmega +๐› \mbfnabla +๐›‚ \mbfalpha +๐›ƒ \mbfbeta +๐›„ \mbfgamma +๐›… \mbfdelta +๐›† \mbfvarepsilon +๐›‡ \mbfzeta +๐›ˆ \mbfeta +๐›‰ \mbftheta +๐›Š \mbfiota +๐›‹ \mbfkappa +๐›Œ \mbflambda +๐› \mbfmu +๐›Ž \mbfnu +๐› \mbfxi +๐› \mbfomicron +๐›‘ \mbfpi +๐›’ \mbfrho +๐›“ \mbfvarsigma +๐›” \mbfsigma +๐›• \mbftau +๐›– \mbfupsilon +๐›— \mbfvarphi +๐›˜ \mbfchi +๐›™ \mbfpsi +๐›š \mbfomega +๐›› \mbfpartial +๐›œ \mbfepsilon +๐› \mbfvartheta +๐›ž \mbfvarkappa +๐›Ÿ \mbfphi +๐›  \mbfvarrho +๐›ก \mbfvarpi +๐›ข \mitAlpha +๐›ฃ \mitBeta +๐›ค \mitGamma +๐›ฅ \mitDelta +๐›ฆ \mitEpsilon +๐›ง \mitZeta +๐›จ \mitEta +๐›ฉ \mitTheta +๐›ช \mitIota +๐›ซ \mitKappa +๐›ฌ \mitLambda +๐›ญ \mitMu +๐›ฎ \mitNu +๐›ฏ \mitXi +๐›ฐ \mitOmicron +๐›ฑ \mitPi +๐›ฒ \mitRho +๐›ณ \mitvarTheta +๐›ด \mitSigma +๐›ต \mitTau +๐›ถ \mitUpsilon +๐›ท \mitPhi +๐›ธ \mitChi +๐›น \mitPsi +๐›บ \mitOmega +๐›ป \mitnabla +๐›ผ \mitalpha +๐›ฝ \mitbeta +๐›พ \mitgamma +๐›ฟ \mitdelta +๐œ€ \mitvarepsilon +๐œ \mitzeta +๐œ‚ \miteta +๐œƒ \mittheta +๐œ„ \mitiota +๐œ… \mitkappa +๐œ† \mitlambda +๐œ‡ \mitmu +๐œˆ \mitnu +๐œ‰ \mitxi +๐œŠ \mitomicron +๐œ‹ \mitpi +๐œŒ \mitrho +๐œ \mitvarsigma +๐œŽ \mitsigma +๐œ \mittau +๐œ \mitupsilon +๐œ‘ \mitvarphi +๐œ’ \mitchi +๐œ“ \mitpsi +๐œ” \mitomega +๐œ• \mitpartial +๐œ– \mitepsilon +๐œ— \mitvartheta +๐œ˜ \mitvarkappa +๐œ™ \mitphi +๐œš \mitvarrho +๐œ› \mitvarpi +๐œœ \mbfitAlpha +๐œ \mbfitBeta +๐œž \mbfitGamma +๐œŸ \mbfitDelta +๐œ  \mbfitEpsilon +๐œก \mbfitZeta +๐œข \mbfitEta +๐œฃ \mbfitTheta +๐œค \mbfitIota +๐œฅ \mbfitKappa +๐œฆ \mbfitLambda +๐œง \mbfitMu +๐œจ \mbfitNu +๐œฉ \mbfitXi +๐œช \mbfitOmicron +๐œซ \mbfitPi +๐œฌ \mbfitRho +๐œญ \mbfitvarTheta +๐œฎ \mbfitSigma +๐œฏ \mbfitTau +๐œฐ \mbfitUpsilon +๐œฑ \mbfitPhi +๐œฒ \mbfitChi +๐œณ \mbfitPsi +๐œด \mbfitOmega +๐œต \mbfitnabla +๐œถ \mbfitalpha +๐œท \mbfitbeta +๐œธ \mbfitgamma +๐œน \mbfitdelta +๐œบ \mbfitvarepsilon +๐œป \mbfitzeta +๐œผ \mbfiteta +๐œฝ \mbfittheta +๐œพ \mbfitiota +๐œฟ \mbfitkappa +๐€ \mbfitlambda +๐ \mbfitmu +๐‚ \mbfitnu +๐ƒ \mbfitxi +๐„ \mbfitomicron +๐… \mbfitpi +๐† \mbfitrho +๐‡ \mbfitvarsigma +๐ˆ \mbfitsigma +๐‰ \mbfittau +๐Š \mbfitupsilon +๐‹ \mbfitvarphi +๐Œ \mbfitchi +๐ \mbfitpsi +๐Ž \mbfitomega +๐ \mbfitpartial +๐ \mbfitepsilon +๐‘ \mbfitvartheta +๐’ \mbfitvarkappa +๐“ \mbfitphi +๐” \mbfitvarrho +๐• \mbfitvarpi +๐– \mbfsansAlpha +๐— \mbfsansBeta +๐˜ \mbfsansGamma +๐™ \mbfsansDelta +๐š \mbfsansEpsilon +๐› \mbfsansZeta +๐œ \mbfsansEta +๐ \mbfsansTheta +๐ž \mbfsansIota +๐Ÿ \mbfsansKappa +๐  \mbfsansLambda +๐ก \mbfsansMu +๐ข \mbfsansNu +๐ฃ \mbfsansXi +๐ค \mbfsansOmicron +๐ฅ \mbfsansPi +๐ฆ \mbfsansRho +๐ง \mbfsansvarTheta +๐จ \mbfsansSigma +๐ฉ \mbfsansTau +๐ช \mbfsansUpsilon +๐ซ \mbfsansPhi +๐ฌ \mbfsansChi +๐ญ \mbfsansPsi +๐ฎ \mbfsansOmega +๐ฏ \mbfsansnabla +๐ฐ \mbfsansalpha +๐ฑ \mbfsansbeta +๐ฒ \mbfsansgamma +๐ณ \mbfsansdelta +๐ด \mbfsansvarepsilon +๐ต \mbfsanszeta +๐ถ \mbfsanseta +๐ท \mbfsanstheta +๐ธ \mbfsansiota +๐น \mbfsanskappa +๐บ \mbfsanslambda +๐ป \mbfsansmu +๐ผ \mbfsansnu +๐ฝ \mbfsansxi +๐พ \mbfsansomicron +๐ฟ \mbfsanspi +๐ž€ \mbfsansrho +๐ž \mbfsansvarsigma +๐ž‚ \mbfsanssigma +๐žƒ \mbfsanstau +๐ž„ \mbfsansupsilon +๐ž… \mbfsansvarphi +๐ž† \mbfsanschi +๐ž‡ \mbfsanspsi +๐žˆ \mbfsansomega +๐ž‰ \mbfsanspartial +๐žŠ \mbfsansepsilon +๐ž‹ \mbfsansvartheta +๐žŒ \mbfsansvarkappa +๐ž \mbfsansphi +๐žŽ \mbfsansvarrho +๐ž \mbfsansvarpi +๐ž \mbfitsansAlpha +๐ž‘ \mbfitsansBeta +๐ž’ \mbfitsansGamma +๐ž“ \mbfitsansDelta +๐ž” \mbfitsansEpsilon +๐ž• \mbfitsansZeta +๐ž– \mbfitsansEta +๐ž— \mbfitsansTheta +๐ž˜ \mbfitsansIota +๐ž™ \mbfitsansKappa +๐žš \mbfitsansLambda +๐ž› \mbfitsansMu +๐žœ \mbfitsansNu +๐ž \mbfitsansXi +๐žž \mbfitsansOmicron +๐žŸ \mbfitsansPi +๐ž  \mbfitsansRho +๐žก \mbfitsansvarTheta +๐žข \mbfitsansSigma +๐žฃ \mbfitsansTau +๐žค \mbfitsansUpsilon +๐žฅ \mbfitsansPhi +๐žฆ \mbfitsansChi +๐žง \mbfitsansPsi +๐žจ \mbfitsansOmega +๐žฉ \mbfitsansnabla +๐žช \mbfitsansalpha +๐žซ \mbfitsansbeta +๐žฌ \mbfitsansgamma +๐žญ \mbfitsansdelta +๐žฎ \mbfitsansvarepsilon +๐žฏ \mbfitsanszeta +๐žฐ \mbfitsanseta +๐žฑ \mbfitsanstheta +๐žฒ \mbfitsansiota +๐žณ \mbfitsanskappa +๐žด \mbfitsanslambda +๐žต \mbfitsansmu +๐žถ \mbfitsansnu +๐žท \mbfitsansxi +๐žธ \mbfitsansomicron +๐žน \mbfitsanspi +๐žบ \mbfitsansrho +๐žป \mbfitsansvarsigma +๐žผ \mbfitsanssigma +๐žฝ \mbfitsanstau +๐žพ \mbfitsansupsilon +๐žฟ \mbfitsansvarphi +๐Ÿ€ \mbfitsanschi +๐Ÿ \mbfitsanspsi +๐Ÿ‚ \mbfitsansomega +๐Ÿƒ \mbfitsanspartial +๐Ÿ„ \mbfitsansepsilon +๐Ÿ… \mbfitsansvartheta +๐Ÿ† \mbfitsansvarkappa +๐Ÿ‡ \mbfitsansphi +๐Ÿˆ \mbfitsansvarrho +๐Ÿ‰ \mbfitsansvarpi +๐ŸŠ \mbfDigamma +๐Ÿ‹ \mbfdigamma +๐ŸŽ \mbfzero +๐Ÿ \mbfone +๐Ÿ \mbftwo +๐Ÿ‘ \mbfthree +๐Ÿ’ \mbffour +๐Ÿ“ \mbffive +๐Ÿ” \mbfsix +๐Ÿ• \mbfseven +๐Ÿ– \mbfeight +๐Ÿ— \mbfnine +๐Ÿ˜ \Bbbzero +๐Ÿ™ \Bbbone +๐Ÿš \Bbbtwo +๐Ÿ› \Bbbthree +๐Ÿœ \Bbbfour +๐Ÿ \Bbbfive +๐Ÿž \Bbbsix +๐ŸŸ \Bbbseven +๐Ÿ  \Bbbeight +๐Ÿก \Bbbnine +๐Ÿข \msanszero +๐Ÿฃ \msansone +๐Ÿค \msanstwo +๐Ÿฅ \msansthree +๐Ÿฆ \msansfour +๐Ÿง \msansfive +๐Ÿจ \msanssix +๐Ÿฉ \msansseven +๐Ÿช \msanseight +๐Ÿซ \msansnine +๐Ÿฌ \mbfsanszero +๐Ÿญ \mbfsansone +๐Ÿฎ \mbfsanstwo +๐Ÿฏ \mbfsansthree +๐Ÿฐ \mbfsansfour +๐Ÿฑ \mbfsansfive +๐Ÿฒ \mbfsanssix +๐Ÿณ \mbfsansseven +๐Ÿด \mbfsanseight +๐Ÿต \mbfsansnine +๐Ÿถ \mttzero +๐Ÿท \mttone +๐Ÿธ \mtttwo +๐Ÿน \mttthree +๐Ÿบ \mttfour +๐Ÿป \mttfive +๐Ÿผ \mttsix +๐Ÿฝ \mttseven +๐Ÿพ \mtteight +๐Ÿฟ \mttnine +๐žปฐ \arabicmaj +๐žปฑ \arabichad +ยฐ \degree + +# Superscripts/Subscripts +โฐ \^0 +ยน \^1 +ยฒ \^2 +ยณ \^3 +โด \^4 +โต \^5 +โถ \^6 +โท \^7 +โธ \^8 +โน \^9 +โบ \^+ +โป \^- +โผ \^= +โฝ \^( +โพ \^) +โ‚€ \_0 +โ‚ \_1 +โ‚‚ \_2 +โ‚ƒ \_3 +โ‚„ \_4 +โ‚… \_5 +โ‚† \_6 +โ‚‡ \_7 +โ‚ˆ \_8 +โ‚‰ \_9 +โ‚Š \_+ +โ‚‹ \_- +โ‚Œ \_= +โ‚ \_( +โ‚Ž \_) +แตƒ \^a +แต‡ \^b +แถœ \^c +แตˆ \^d +แต‰ \^e +แถ  \^f +แต \^g +สฐ \^h +โฑ \^i +สฒ \^j +แต \^k +หก \^l +แต \^m +โฟ \^n +แต’ \^o +แต– \^p +# Warning: Unicode does not support \^q +สณ \^r +หข \^s +แต— \^t +แต˜ \^u +แต› \^v +สท \^w +หฃ \^x +สธ \^y +แถป \^z +# Some uppercase superscripts +แดฌ \^A +แดฎ \^B +แดฐ \^D +แดฑ \^E +แดณ \^G +แดด \^H +แดต \^I +แดถ \^J +แดท \^K +แดธ \^L +แดน \^M +แดบ \^N +แดผ \^O +แดพ \^P +แดฟ \^R +แต€ \^T +แต \^U +โฑฝ \^V +แต‚ \^W +# Some lowercase subscripts +โ‚ \_a +โ‚‘ \_e +โ‚• \_h +แตข \_i +โฑผ \_j +โ‚– \_k +โ‚— \_l +โ‚˜ \_m +โ‚™ \_n +โ‚’ \_o +โ‚š \_p +แตฃ \_r +โ‚› \_s +โ‚œ \_t +แตค \_u +แตฅ \_v +โ‚“ \_x +# A few Greek lowercase superscripts +แต… \^alpha +แต \^beta +แตž \^gamma +แตŸ \^delta +แต‹ \^epsilon +แถฟ \^theta +แถฅ \^iota +แถฒ \^phi +แต  \^varphi +แตก \^chi +# A few Greek lowercase subscripts +แตฆ \_beta +แตง \_gamma +แตจ \_rho +แตฉ \_varphi +แตช \_chi + +# Abbreviations +โŸน \implies +โŸธ \impliedby +โŸบ \iff +โ€ข \bullet +โˆ˜ \circ +โ–ก \square +โ–  \blacksquare +ยฌ \lnot +โˆง \land +โˆจ \lor + +# Small caps: \textsc +แด€ \tsca +ส™ \tscb +แด„ \tscc +แด… \tscd +แด‡ \tsce +๊œฐ \tscf +ษข \tscg +สœ \tsch +ษช \tsci +แดŠ \tscj +แด‹ \tsck +สŸ \tscl +แด \tscm +ษด \tscn +แด \tsco +แด˜ \tscp +# Warning: the script \textsc{q} is not supported in many fonts +๊žฏ \tscq +ส€ \tscr +๊œฑ \tscs +แด› \tsct +แดœ \tscu +แด  \tscv +แดก \tscw +# Warning: Unicode does not support \textsc{x} +ส \tscy +แดข \tscz + +# Brackets +โŸฆ \[[ +โŸง \]] +โธจ \(( +โธฉ \)) + +# Misc +ยง \S diff --git a/config-sync/.config/ibus/rime/latex.schema.yaml b/config-sync/.config/ibus/rime/latex.schema.yaml new file mode 100644 index 0000000..fb16dca --- /dev/null +++ b/config-sync/.config/ibus/rime/latex.schema.yaml @@ -0,0 +1,36 @@ +# Rime schema +# encoding: utf-8 + +schema: + schema_id: latex + name: Latex Math Symbols + version: "1.1" + author: + - slbtty + - mark + description: | + Latex Math Symbols Input Method. + You have to type '\' first to get symbols. + This schema is intended to be used as an addon for other input methods. + +engine: + processors: + - speller # to enable alphabet & initials below. + - selector + - navigator + - express_editor + segmentors: + - abc_segmentor + - fallback_segmentor + translators: + - table_translator + +speller: + alphabet: 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\^_-><+-=()[]' + initials: '\_^' + auto_select: true + +translator: + dictionary: latex + enable_sentence: false + enable_user_dict: false diff --git a/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml b/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml index 0a308c8..91db0bb 100644 --- a/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml +++ b/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml @@ -10,4 +10,18 @@ __patch: patch: "translator/dictionary": extended #่ฏๅ…ธๅๅญ—ๅฏ่‡ชๅฎšไน‰,ไธŽไธ‹ๆ–นๆ–‡ไปถๅไฟๆŒไธ€่‡ดๅณๅฏ 'engine/translators/+': - - lua_translator@date_translator \ No newline at end of file + - lua_translator@date_translator + engine/translators: + - punct_translator + - r10n_translator + - reverse_lookup_translator + # meaning of the regex: ^ start of line, \\ the starting \, .+ any char 1 or more time, $ end + recognizer/patterns/reverse_lookup: '^\\.+$' + schema/dependencies: + - latex + abc_segmentor/extra_tags: + - reverse_lookup + reverse_lookup: + dictionary: latex + enable_completion: false + tips: latex \ No newline at end of file From d32d4630dab8d1d5da6eeb5930bc33b66b441fd4 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 18 Feb 2023 11:11:16 -0500 Subject: [PATCH 19/22] [O] Better compress script --- scripts/bin/compress-zst-gpg | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/scripts/bin/compress-zst-gpg b/scripts/bin/compress-zst-gpg index 09275cb..10bdf51 100755 --- a/scripts/bin/compress-zst-gpg +++ b/scripts/bin/compress-zst-gpg @@ -8,10 +8,21 @@ if command -v "gtar" &> /dev/null; then fi echo "Using $cmd" +# Read first parameter +arg1="$1" name="$1".tar.zst.gpg shift echo "Output to $name" +# Read second parameter +if [[ -z "$*" ]]; then + files="$arg1" +else + files="$*" +fi + +echo "Compressing $files" + cores=$(python3 -c "import os; print(os.cpu_count())") echo "Starting ZSTD compression with $cores cores and level $level" -"$cmd" -I "zstd -T$cores -$level" --checkpoint=.1024 --totals --totals=SIGUSR1 -cf - "$@" | gpg --symmetric --cipher-algo aes256 -o "$name" \ No newline at end of file +"$cmd" -I "zstd -T$cores -$level" --checkpoint=.1024 --totals --totals=SIGUSR1 -cf - "$files" | gpg --symmetric --cipher-algo aes256 -o "$name" \ No newline at end of file From a4d496f43a8b61d395391bfb768c38a6205a5159 Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 18 Feb 2023 11:29:03 -0500 Subject: [PATCH 20/22] [F] Resolve latex conflict with custom_phrases (shenlebantongying/rime_latex#9) --- config-sync/.config/ibus/rime/latex.patch.yaml | 15 +++++++++++++++ .../ibus/rime/luna_pinyin_simp.custom.yaml | 16 ++-------------- 2 files changed, 17 insertions(+), 14 deletions(-) create mode 100644 config-sync/.config/ibus/rime/latex.patch.yaml diff --git a/config-sync/.config/ibus/rime/latex.patch.yaml b/config-sync/.config/ibus/rime/latex.patch.yaml new file mode 100644 index 0000000..6eddb3d --- /dev/null +++ b/config-sync/.config/ibus/rime/latex.patch.yaml @@ -0,0 +1,15 @@ +patch: + # engine/translators/+: + # - punct_translator + # - r10n_translator + # - reverse_lookup_translator +# meaning of the regex: ^ start of line, \\ the starting \, .+ any char 1 or more time, $ end + recognizer/patterns/reverse_lookup: '^\\.+$' + schema/dependencies/+: + - latex + abc_segmentor/extra_tags: + - reverse_lookup + reverse_lookup: + dictionary: latex + enable_completion: false + tips: latex \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml b/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml index 91db0bb..c9f720b 100644 --- a/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml +++ b/config-sync/.config/ibus/rime/luna_pinyin_simp.custom.yaml @@ -2,6 +2,8 @@ __patch: # Rx: emoji:customize:schema=luna_pinyin { - patch/+: __include: emoji_suggestion:/patch + - patch/+: + __include: latex.patch:/patch # } # https://wiki.archlinuxcn.org/wiki/Fcitx5#RIME/%E4%B8%AD%E5%B7%9E%E9%9F%BB @@ -11,17 +13,3 @@ patch: "translator/dictionary": extended #่ฏๅ…ธๅๅญ—ๅฏ่‡ชๅฎšไน‰,ไธŽไธ‹ๆ–นๆ–‡ไปถๅไฟๆŒไธ€่‡ดๅณๅฏ 'engine/translators/+': - lua_translator@date_translator - engine/translators: - - punct_translator - - r10n_translator - - reverse_lookup_translator - # meaning of the regex: ^ start of line, \\ the starting \, .+ any char 1 or more time, $ end - recognizer/patterns/reverse_lookup: '^\\.+$' - schema/dependencies: - - latex - abc_segmentor/extra_tags: - - reverse_lookup - reverse_lookup: - dictionary: latex - enable_completion: false - tips: latex \ No newline at end of file From 905f5b421401b612f2cb6cd25e243cb73f8cb45c Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Thu, 2 Mar 2023 15:14:02 -0500 Subject: [PATCH 21/22] [+] Rime japanese --- .gitmodules | 3 +++ config-sync/.config/ibus/rime/default.custom.yaml | 1 + config-sync/.config/ibus/rime/japanese.dict.yaml | 1 + config-sync/.config/ibus/rime/japanese.jmdict.dict.yaml | 1 + config-sync/.config/ibus/rime/japanese.kana.dict.yaml | 1 + config-sync/.config/ibus/rime/japanese.mozc.dict.yaml | 1 + config-sync/.config/ibus/rime/japanese.schema.yaml | 1 + config-sync/.config/ibus/rime/rime-japanese | 1 + 8 files changed, 10 insertions(+) create mode 120000 config-sync/.config/ibus/rime/japanese.dict.yaml create mode 120000 config-sync/.config/ibus/rime/japanese.jmdict.dict.yaml create mode 120000 config-sync/.config/ibus/rime/japanese.kana.dict.yaml create mode 120000 config-sync/.config/ibus/rime/japanese.mozc.dict.yaml create mode 120000 config-sync/.config/ibus/rime/japanese.schema.yaml create mode 160000 config-sync/.config/ibus/rime/rime-japanese diff --git a/.gitmodules b/.gitmodules index 7b5e805..c98605b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "plugins/find-the-command"] path = plugins/find-the-command url = https://github.com/pkasemir/find-the-command +[submodule "config-sync/.config/ibus/rime/rime-japanese"] + path = config-sync/.config/ibus/rime/rime-japanese + url = https://github.com/gkovacs/rime-japanese diff --git a/config-sync/.config/ibus/rime/default.custom.yaml b/config-sync/.config/ibus/rime/default.custom.yaml index d23edd4..727bd48 100644 --- a/config-sync/.config/ibus/rime/default.custom.yaml +++ b/config-sync/.config/ibus/rime/default.custom.yaml @@ -1,4 +1,5 @@ patch: schema_list: - schema: luna_pinyin_simp + - schema: japanese menu/page_size: 7 \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/japanese.dict.yaml b/config-sync/.config/ibus/rime/japanese.dict.yaml new file mode 120000 index 0000000..0a6cca9 --- /dev/null +++ b/config-sync/.config/ibus/rime/japanese.dict.yaml @@ -0,0 +1 @@ +rime-japanese/japanese.dict.yaml \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/japanese.jmdict.dict.yaml b/config-sync/.config/ibus/rime/japanese.jmdict.dict.yaml new file mode 120000 index 0000000..b26e712 --- /dev/null +++ b/config-sync/.config/ibus/rime/japanese.jmdict.dict.yaml @@ -0,0 +1 @@ +rime-japanese/japanese.jmdict.dict.yaml \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/japanese.kana.dict.yaml b/config-sync/.config/ibus/rime/japanese.kana.dict.yaml new file mode 120000 index 0000000..3c97efb --- /dev/null +++ b/config-sync/.config/ibus/rime/japanese.kana.dict.yaml @@ -0,0 +1 @@ +rime-japanese/japanese.kana.dict.yaml \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/japanese.mozc.dict.yaml b/config-sync/.config/ibus/rime/japanese.mozc.dict.yaml new file mode 120000 index 0000000..9871c75 --- /dev/null +++ b/config-sync/.config/ibus/rime/japanese.mozc.dict.yaml @@ -0,0 +1 @@ +rime-japanese/japanese.mozc.dict.yaml \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/japanese.schema.yaml b/config-sync/.config/ibus/rime/japanese.schema.yaml new file mode 120000 index 0000000..64881ae --- /dev/null +++ b/config-sync/.config/ibus/rime/japanese.schema.yaml @@ -0,0 +1 @@ +rime-japanese/japanese.schema.yaml \ No newline at end of file diff --git a/config-sync/.config/ibus/rime/rime-japanese b/config-sync/.config/ibus/rime/rime-japanese new file mode 160000 index 0000000..189f5e5 --- /dev/null +++ b/config-sync/.config/ibus/rime/rime-japanese @@ -0,0 +1 @@ +Subproject commit 189f5e57198ff392518a901ab748beb0b44254f2 From 8abbcdc5b52af5bef3a287948bf57150ef95d19b Mon Sep 17 00:00:00 2001 From: Azalea Gui Date: Sat, 4 Mar 2023 16:32:59 -0500 Subject: [PATCH 22/22] [+] Add upload script --- config-sync/ssh-config | 6 ++++++ scripts/zshrc.sh | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/config-sync/ssh-config b/config-sync/ssh-config index 039127e..871cc4a 100644 --- a/config-sync/ssh-config +++ b/config-sync/ssh-config @@ -48,3 +48,9 @@ Host caspase Host kevin HostName caspase3kjq.terra-incognita.dev User me@hydev.org + +Host ut-343 + HostName dbsrv1.teach.cs.toronto.edu + +Host ut-cs + HostName teach.cs.toronto.edu \ No newline at end of file diff --git a/scripts/zshrc.sh b/scripts/zshrc.sh index c4e5ef9..3694e73 100755 --- a/scripts/zshrc.sh +++ b/scripts/zshrc.sh @@ -100,6 +100,11 @@ alias valgrin="valgrind \ --track-origins=yes \ --vgdb=no" +upload-daisy() { + file="$@" + curl -u azalea -F "path=@$file" "https://daisy-ddns.hydev.org/upload\?path\=/" +} + # Automatic sudo alias sctl="sudo systemctl" alias jctl="sudo journalctl"