From 86e17bb6819002fac07405a3c1e876998000d2bd Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 3 Jul 2021 10:55:49 +0800 Subject: [PATCH 01/54] Update zshrc --- .config/zsh/zshrc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 0145319..b43c767 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -9,6 +9,7 @@ fpath=(${ZDOTDIR}/functions ${ZDOTDIR}/Completion $fpath) declare -A ZINIT ZINIT[HOME_DIR]=${XDG_DATA_HOME}/zinit ZINIT[BIN_DIR]=${ZINIT[HOME_DIR]}/bin +ZINIT[ZCOMPDUMP_PATH]=${XDG_CACHE_HOME}/zsh/zcompdump-${ZSH_VERSION} source ${ZINIT[BIN_DIR]}/zinit.zsh zinit light zdharma/fast-syntax-highlighting # 语法高亮 @@ -196,6 +197,8 @@ alias ls='ls --color=auto --time-style=iso --human-readable' alias grep='grep --color=auto' alias diff='diff --color=auto' alias mv='mv -i' +alias mitmproxy="mitmproxy --set confdir=$XDG_CONFIG_HOME/mitmproxy" +alias mitmweb="mitmweb --set confdir=$XDG_CONFIG_HOME/mitmproxy" alias sl='ls' alias l='ls -l' From 11337784835b54274171170bcbbb0cd6c4eff0e0 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 4 Jul 2021 00:30:19 +0800 Subject: [PATCH 02/54] Add mpv config --- .config/mpv/.gitignore | 2 ++ .config/mpv/mpv.conf | 58 ++++++++++++++++++++++++++++++++ .config/mpv/script-opts/osc.conf | 3 ++ 3 files changed, 63 insertions(+) create mode 100644 .config/mpv/.gitignore create mode 100644 .config/mpv/mpv.conf create mode 100644 .config/mpv/script-opts/osc.conf diff --git a/.config/mpv/.gitignore b/.config/mpv/.gitignore new file mode 100644 index 0000000..ff84109 --- /dev/null +++ b/.config/mpv/.gitignore @@ -0,0 +1,2 @@ +scripts/ +shaders/ diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf new file mode 100644 index 0000000..245e9fa --- /dev/null +++ b/.config/mpv/mpv.conf @@ -0,0 +1,58 @@ +# 优先硬解码 +hwdec=auto-safe + +# ==== 渲染 ==== +profile=gpu-hq +cscale=ewa_lanczossharp +video-sync=display-resample +interpolation +tscale=oversample +# 使用FSRCNNX着色器 +# https://github.com/igv/FSRCNN-TensorFlow/ +glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1.glsl" + +# ==== 界面 ==== +# 使用OSC脚本时,需要关闭默认OSC +# https://github.com/422658476/MPV-EASY-Player/blob/master/mpv-easy-data/osc-style/osc-potplayer-box-knob-or-bar-0.lua +osc=no +# ==== OSD样式 ==== +osd-on-seek=msg-bar +osd-font-size=25 +osd-color='#eeeeee' +osd-border-size=2 +osd-bar-h=2 +osd-bar-w=60 + +# ==== 字幕 ==== +# 自动模糊匹配字幕文件 +sub-auto=fuzzy +# 额外指定目录寻找字幕文件 +sub-file-paths=Subs:字幕 +# 优先使用中文字幕 +slang=sc,chs,chi,zh +# 尽量让ASS字幕在画面外 +sub-ass-force-margins +# ==== 字幕样式 ==== +sub-bold +sub-font-size=32 +sub-color='#eeeeee' +sub-border-color='#565690' +sub-border-size=2 +sub-shadow-color='#7676b0' +sub-shadow-offset=1 + +# ==== 截图 ==== +# 使用无损webp格式 +screenshot-format=webp +screenshot-webp-lossless +# 截图存放路径 +screenshot-directory='~/Userdata/Pictures/' + +# ==== 其他 ==== +# 进度数据文件存放目录 +watch-later-directory='~/.data/mpv/watch_later/' + +[anime] +profile-desc=低分辨率动画专用 +# https://github.com/HelpSeeker/FSRCNN-TensorFlow/ +glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl" diff --git a/.config/mpv/script-opts/osc.conf b/.config/mpv/script-opts/osc.conf new file mode 100644 index 0000000..07b5416 --- /dev/null +++ b/.config/mpv/script-opts/osc.conf @@ -0,0 +1,3 @@ +layout=box +seekbarstyle=bar +boxalpha=0 From 9aab244c3a65c7e130e0871d4cba55bab82f3804 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 4 Jul 2021 01:10:11 +0800 Subject: [PATCH 03/54] Update mpv config: add svp --- .config/mpv/mpv.conf | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 245e9fa..65dcaa0 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -56,3 +56,11 @@ watch-later-directory='~/.data/mpv/watch_later/' profile-desc=低分辨率动画专用 # https://github.com/HelpSeeker/FSRCNN-TensorFlow/ glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl" + +[svp] +profile-desc=SVP补帧 +hwdec=auto-copy-safe +input-ipc-server=/tmp/mpvsocket +# 禁用不兼容的选项 +hr-seek-framedrop=no +resume-playback=no From 63042cc8073120f0b6d9c83ae7fb53d7ba622f2a Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 4 Jul 2021 21:04:59 +0800 Subject: [PATCH 04/54] feat(mpv): add script --- .config/mpv/tools/update.sh | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 .config/mpv/tools/update.sh diff --git a/.config/mpv/tools/update.sh b/.config/mpv/tools/update.sh new file mode 100755 index 0000000..b880fe5 --- /dev/null +++ b/.config/mpv/tools/update.sh @@ -0,0 +1,28 @@ +#!/usr/bin/bash -e + +if ! command -v 7z &>/dev/null; then + echo p7zip is missing >&2 + exit 1 +fi + +config_dir=${XDG_CONFIG_HOME:-~/.config}/mpv/ +script_dir=${config_dir}/scripts/ +shader_dir=${config_dir}/shaders/ + +echo "Updating scripts..." +curl -fL --create-dirs -o "${script_dir}/osc.lua" \ + https://github.com/422658476/MPV-EASY-Player/raw/master/mpv-easy-data/osc-style/osc-potplayer-box-knob-or-bar-0.lua + +curl -fL --create-dirs -o "${script_dir}/zenity-open-files.lua" \ + https://github.com/alifarazz/mpv-zenity-open-files/raw/master/zenity-open-files.lua + +echo "Updating shaders..." +curl -fL --create-dirs -o /tmp/mpv/fsrcnnx.7z \ + https://github.com/igv/FSRCNN-TensorFlow/releases/download/1.1/checkpoints_params.7z \ + && 7z e -o"${shader_dir}" -y /tmp/mpv/fsrcnnx.7z FSRCNNX_x2_16-0-4-1.glsl \ + && rm /tmp/mpv/fsrcnnx.7z + +curl -fL --create-dirs -o "${shader_dir}/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl" \ + https://github.com/HelpSeeker/FSRCNN-TensorFlow/releases/download/1.1_distort/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl + +echo "Done." From 9cdca425da50c9b8562afc1a5bbd9417339b9b47 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 11:45:14 +0800 Subject: [PATCH 05/54] feat(mpv): add more shaders --- .config/mpv/mpv.conf | 35 ++++++++++++++++++++++++++++++++--- .config/mpv/tools/update.sh | 9 +++++++++ 2 files changed, 41 insertions(+), 3 deletions(-) diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 65dcaa0..f31f979 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -3,13 +3,13 @@ hwdec=auto-safe # ==== 渲染 ==== profile=gpu-hq +scale=ewa_lanczossharp cscale=ewa_lanczossharp video-sync=display-resample interpolation tscale=oversample -# 使用FSRCNNX着色器 -# https://github.com/igv/FSRCNN-TensorFlow/ -glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1.glsl" +# 可选值: common, common-low, anime +profile=common # ==== 界面 ==== # 使用OSC脚本时,需要关闭默认OSC @@ -52,10 +52,39 @@ screenshot-directory='~/Userdata/Pictures/' # 进度数据文件存放目录 watch-later-directory='~/.data/mpv/watch_later/' +[common] +profile-desc=普通视频 +# FSRCNNX着色器 +# https://github.com/igv/FSRCNN-TensorFlow/ +glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1.glsl" +# 其他着色器 +profile=append-shaders + +[common-low] +profile-desc=普通视频[低配] +# FSRCNNX着色器 +# https://github.com/igv/FSRCNN-TensorFlow/ +glsl-shaders="~~/shaders/FSRCNNX_x2_8-0-4-1.glsl" +# 其他着色器 +profile=append-shaders + [anime] profile-desc=低分辨率动画专用 # https://github.com/HelpSeeker/FSRCNN-TensorFlow/ glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl" +# 其他着色器 +profile=append-shaders + +[append-shaders] +profile-desc=添加更多着色器 +profile-restore=copy-equal +# 色度升频 +# https://gist.github.com/igv/a015fc885d5c22e6891820ad89555637 +glsl-shaders-append="~~/shaders/KrigBilateral.glsl" +# 自适应锐化 +# https://gist.github.com/igv/8a77e4eb8276753b54bb94c1c50c317e +sigmoid-upscaling=no +glsl-shaders-append="~~/shaders/adaptive-sharpen.glsl" [svp] profile-desc=SVP补帧 diff --git a/.config/mpv/tools/update.sh b/.config/mpv/tools/update.sh index b880fe5..ebec151 100755 --- a/.config/mpv/tools/update.sh +++ b/.config/mpv/tools/update.sh @@ -22,7 +22,16 @@ curl -fL --create-dirs -o /tmp/mpv/fsrcnnx.7z \ && 7z e -o"${shader_dir}" -y /tmp/mpv/fsrcnnx.7z FSRCNNX_x2_16-0-4-1.glsl \ && rm /tmp/mpv/fsrcnnx.7z +curl -fL --create-dirs -o "${shader_dir}/FSRCNNX_x2_8-0-4-1.glsl" \ + https://github.com/igv/FSRCNN-TensorFlow/releases/download/1.1/FSRCNNX_x2_8-0-4-1.glsl + curl -fL --create-dirs -o "${shader_dir}/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl" \ https://github.com/HelpSeeker/FSRCNN-TensorFlow/releases/download/1.1_distort/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl +curl -fL --create-dirs -o "${shader_dir}/KrigBilateral.glsl" \ + https://gist.github.com/igv/a015fc885d5c22e6891820ad89555637/raw + +curl -fL --create-dirs -o "${shader_dir}/adaptive-sharpen.glsl" \ + https://gist.github.com/igv/8a77e4eb8276753b54bb94c1c50c317e/raw + echo "Done." From c77b65443a002318a0c82c4a2f7d03338a544141 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 11:46:07 +0800 Subject: [PATCH 06/54] feat(mpv): add keybind conf --- .config/mpv/input.conf | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .config/mpv/input.conf diff --git a/.config/mpv/input.conf b/.config/mpv/input.conf new file mode 100644 index 0000000..55e86a3 --- /dev/null +++ b/.config/mpv/input.conf @@ -0,0 +1,11 @@ +UP add volume 2 +DOWN add volume -2 + +D cycle deband + +CTRL+1 apply-profile "common"; show_text ${glsl-shaders} +CTRL+2 apply-profile "common-low"; show_text ${glsl-shaders} +CTRL+3 apply-profile "anime"; show_text ${glsl-shaders} + +CTRL+9 apply-profile "append-shaders" restore; show_text ${glsl-shaders} +CTRL+0 change-list glsl-shaders clr "" From 7d0824b6f29019ad8a872b9aeb81d52523377818 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 11:55:07 +0800 Subject: [PATCH 07/54] style(mpv): update mpv.conf --- .config/mpv/mpv.conf | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index f31f979..db50ae0 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -1,19 +1,8 @@ # 优先硬解码 hwdec=auto-safe -# ==== 渲染 ==== -profile=gpu-hq -scale=ewa_lanczossharp -cscale=ewa_lanczossharp -video-sync=display-resample -interpolation -tscale=oversample -# 可选值: common, common-low, anime -profile=common - # ==== 界面 ==== -# 使用OSC脚本时,需要关闭默认OSC -# https://github.com/422658476/MPV-EASY-Player/blob/master/mpv-easy-data/osc-style/osc-potplayer-box-knob-or-bar-0.lua +#使用OSC脚本时,需要关闭默认OSC osc=no # ==== OSD样式 ==== osd-on-seek=msg-bar @@ -45,13 +34,24 @@ sub-shadow-offset=1 # 使用无损webp格式 screenshot-format=webp screenshot-webp-lossless -# 截图存放路径 +# 截图存放目录 screenshot-directory='~/Userdata/Pictures/' -# ==== 其他 ==== +# ==== 杂项 ==== # 进度数据文件存放目录 watch-later-directory='~/.data/mpv/watch_later/' +# ==== 渲染 ==== +profile=gpu-hq +scale=ewa_lanczossharp +cscale=ewa_lanczossharp +video-sync=display-resample +interpolation +tscale=oversample +# 可选值: common, common-low, anime +# 会覆盖scale和cscale +profile=common + [common] profile-desc=普通视频 # FSRCNNX着色器 From 5a41a5966f3a7a71d2b92c2b96e475acbcec975c Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 13:35:35 +0800 Subject: [PATCH 08/54] chore(mpv): add gitattributes --- .config/mpv/.gitattributes | 1 + 1 file changed, 1 insertion(+) create mode 100644 .config/mpv/.gitattributes diff --git a/.config/mpv/.gitattributes b/.config/mpv/.gitattributes new file mode 100644 index 0000000..2fc817b --- /dev/null +++ b/.config/mpv/.gitattributes @@ -0,0 +1 @@ +*.conf linguist-language=INI From 0571eeaaf1c49bd54e4e9a61072e041f2ccfb2d6 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 16:18:10 +0800 Subject: [PATCH 09/54] feat(mpv): use FSRCNNX 8-0-4-1 as default shader --- .config/mpv/input.conf | 2 +- .config/mpv/mpv.conf | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.config/mpv/input.conf b/.config/mpv/input.conf index 55e86a3..5dbec9f 100644 --- a/.config/mpv/input.conf +++ b/.config/mpv/input.conf @@ -4,7 +4,7 @@ DOWN add volume -2 D cycle deband CTRL+1 apply-profile "common"; show_text ${glsl-shaders} -CTRL+2 apply-profile "common-low"; show_text ${glsl-shaders} +CTRL+2 apply-profile "common-alter"; show_text ${glsl-shaders} CTRL+3 apply-profile "anime"; show_text ${glsl-shaders} CTRL+9 apply-profile "append-shaders" restore; show_text ${glsl-shaders} diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index db50ae0..2441cfb 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -48,7 +48,7 @@ cscale=ewa_lanczossharp video-sync=display-resample interpolation tscale=oversample -# 可选值: common, common-low, anime +# 可选值: common, common-alter, anime # 会覆盖scale和cscale profile=common @@ -56,15 +56,15 @@ profile=common profile-desc=普通视频 # FSRCNNX着色器 # https://github.com/igv/FSRCNN-TensorFlow/ -glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1.glsl" +glsl-shaders="~~/shaders/FSRCNNX_x2_8-0-4-1.glsl" # 其他着色器 profile=append-shaders -[common-low] -profile-desc=普通视频[低配] +[common-alter] +profile-desc=普通视频[16-0-4-1] # FSRCNNX着色器 # https://github.com/igv/FSRCNN-TensorFlow/ -glsl-shaders="~~/shaders/FSRCNNX_x2_8-0-4-1.glsl" +glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1.glsl" # 其他着色器 profile=append-shaders From 2921dd8ae17189a67d4fa8f3a45fe629da40fb68 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 19:31:05 +0800 Subject: [PATCH 10/54] feat(mpv): new osc with thumbnails --- .config/mpv/script-opts/osc.conf | 4 +--- .config/mpv/tools/update.sh | 8 ++++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.config/mpv/script-opts/osc.conf b/.config/mpv/script-opts/osc.conf index 07b5416..78ad5b1 100644 --- a/.config/mpv/script-opts/osc.conf +++ b/.config/mpv/script-opts/osc.conf @@ -1,3 +1 @@ -layout=box -seekbarstyle=bar -boxalpha=0 +seekbarstyle=knob diff --git a/.config/mpv/tools/update.sh b/.config/mpv/tools/update.sh index ebec151..7742f03 100755 --- a/.config/mpv/tools/update.sh +++ b/.config/mpv/tools/update.sh @@ -10,8 +10,12 @@ script_dir=${config_dir}/scripts/ shader_dir=${config_dir}/shaders/ echo "Updating scripts..." -curl -fL --create-dirs -o "${script_dir}/osc.lua" \ - https://github.com/422658476/MPV-EASY-Player/raw/master/mpv-easy-data/osc-style/osc-potplayer-box-knob-or-bar-0.lua +curl -fL --create-dirs -o "${script_dir}/Thumbnailer.lua" \ + https://github.com/deus0ww/mpv-conf/raw/master/scripts/Thumbnailer.lua +curl -fL --create-dirs -o "${script_dir}/Thumbnailer_OSC.lua" \ + https://github.com/deus0ww/mpv-conf/raw/master/scripts/Thumbnailer_OSC.lua +curl -fL https://github.com/deus0ww/mpv-conf/raw/master/scripts/Thumbnailer_Worker.lua | + sed "s/'19'/'-19'/" > "${script_dir}/Thumbnailer_Worker.lua" curl -fL --create-dirs -o "${script_dir}/zenity-open-files.lua" \ https://github.com/alifarazz/mpv-zenity-open-files/raw/master/zenity-open-files.lua From 68eef1da5edd1eb977db53afa2bd994bc6ab9779 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 5 Jul 2021 20:06:32 +0800 Subject: [PATCH 11/54] feat(mpv): add thumbnailer config --- .config/mpv/script-opts/Thumbnailer.conf | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .config/mpv/script-opts/Thumbnailer.conf diff --git a/.config/mpv/script-opts/Thumbnailer.conf b/.config/mpv/script-opts/Thumbnailer.conf new file mode 100644 index 0000000..b4b669c --- /dev/null +++ b/.config/mpv/script-opts/Thumbnailer.conf @@ -0,0 +1,3 @@ +auto_delete=2 +dimension=480 +use_ffmpeg=yes From 63148ee601f58ac4748015aead8eb52a54e6aba4 Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 7 Jul 2021 19:45:40 +0800 Subject: [PATCH 12/54] feat(mpv): subtitle script --- .config/mpv/mpv.conf | 8 ++- .../mpv/script-opts/auto_add_subtitles.conf | 1 + .config/mpv/scripts/auto_add_subtitles.lua | 52 +++++++++++++++++++ 3 files changed, 56 insertions(+), 5 deletions(-) create mode 100644 .config/mpv/script-opts/auto_add_subtitles.conf create mode 100644 .config/mpv/scripts/auto_add_subtitles.lua diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 2441cfb..2b96a2c 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -13,11 +13,9 @@ osd-bar-h=2 osd-bar-w=60 # ==== 字幕 ==== -# 自动模糊匹配字幕文件 -sub-auto=fuzzy -# 额外指定目录寻找字幕文件 -sub-file-paths=Subs:字幕 -# 优先使用中文字幕 +# 使用脚本寻找外置字幕 +sub-auto=no +# 内置字幕优先使用中文 slang=sc,chs,chi,zh # 尽量让ASS字幕在画面外 sub-ass-force-margins diff --git a/.config/mpv/script-opts/auto_add_subtitles.conf b/.config/mpv/script-opts/auto_add_subtitles.conf new file mode 100644 index 0000000..edb90fc --- /dev/null +++ b/.config/mpv/script-opts/auto_add_subtitles.conf @@ -0,0 +1 @@ +another_dir=~/Userdata/Downloads/subtitles/ diff --git a/.config/mpv/scripts/auto_add_subtitles.lua b/.config/mpv/scripts/auto_add_subtitles.lua new file mode 100644 index 0000000..10740fb --- /dev/null +++ b/.config/mpv/scripts/auto_add_subtitles.lua @@ -0,0 +1,52 @@ +local mp = require 'mp' +local utils = require 'mp.utils' +local opt = require 'mp.options' + +local user_opts = { + subtitle_ext_pattern = "(srt|ass|sub)", -- 字幕文件名后缀 + dir_depth = 2, -- 搜索目录的深度 + another_dir = "", -- 额外指定的目录 + subtitle_pattern = "[0-9]+_chinese", -- 额外匹配的字幕 +} + +local script_name = mp.get_script_name() +opt.read_options(user_opts, script_name) + +local function get_parrent_dir(filepath) + return utils.split_path(utils.join_path( + mp.get_property("working-directory"), filepath)) +end + +local function add_subtitles(dir, prefix) + local cmd = {'find', dir, '-maxdepth', tostring(user_opts.dir_depth), + '-regextype', 'posix-egrep', '-regex', ".*\\."..user_opts.subtitle_ext_pattern} + if user_opts.another_dir ~= "" then + local another_dir = user_opts.another_dir:gsub('^~/', os.getenv("HOME")) + table.insert(cmd, 2, another_dir) + end + local res = utils.subprocess({args=cmd}) + + local prefix_lower = prefix:lower() + for subtitle_path in res.stdout:gmatch("[^\r\n]+") do + local _, subtitle_name = utils.split_path(subtitle_path) + if subtitle_name:lower():find(user_opts.subtitle_pattern) or + subtitle_name:lower():find(prefix_lower, 1, true) then + mp.commandv('sub-add', subtitle_path, 'select') + end + end +end + +local function add_current_subs() + local filepath = mp.get_property("path") + if filepath == nil or filepath:find("^http[s]?://") then + return + end + local _, filename = utils.split_path(filepath) + local prefix = filename:match("(.+%.[12][0-9][0-9][0-9])%..+") or + filename:match("(.+%.[0-9]+p)%..+") or + filename:match("(.+)%..+") + local dir = get_parrent_dir(filepath) + add_subtitles(dir, prefix) +end + +mp.register_event("file-loaded", add_current_subs) From 92478627bdb55dfbe556dda6d7938d896119644e Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 7 Jul 2021 20:28:51 +0800 Subject: [PATCH 13/54] fix(mpv): subtitle with unmatched resolution --- .config/mpv/scripts/auto_add_subtitles.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/mpv/scripts/auto_add_subtitles.lua b/.config/mpv/scripts/auto_add_subtitles.lua index 10740fb..6df0e0f 100644 --- a/.config/mpv/scripts/auto_add_subtitles.lua +++ b/.config/mpv/scripts/auto_add_subtitles.lua @@ -43,7 +43,7 @@ local function add_current_subs() end local _, filename = utils.split_path(filepath) local prefix = filename:match("(.+%.[12][0-9][0-9][0-9])%..+") or - filename:match("(.+%.[0-9]+p)%..+") or + filename:match("(.+)%.[0-9]+p%..+") or filename:match("(.+)%..+") local dir = get_parrent_dir(filepath) add_subtitles(dir, prefix) From 2a029391f3b26e006cef0f8dc25a42c8a246cbf6 Mon Sep 17 00:00:00 2001 From: rydesun Date: Thu, 8 Jul 2021 22:48:31 +0800 Subject: [PATCH 14/54] feat(mpv): auto add similar files to playlist --- .config/mpv/scripts/autoload_series.lua | 79 +++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 .config/mpv/scripts/autoload_series.lua diff --git a/.config/mpv/scripts/autoload_series.lua b/.config/mpv/scripts/autoload_series.lua new file mode 100644 index 0000000..3e6d44f --- /dev/null +++ b/.config/mpv/scripts/autoload_series.lua @@ -0,0 +1,79 @@ +local mp = require 'mp' +local utils = require 'mp.utils' + +local function levenshtein_distance(s1, s2) + local t = {} + for i = 0, #s1 do + local arr = {} + for j = 0, #s2 do + local value = 0 + if i == 0 then + value = j + elseif j == 0 then + value = i + end + table.insert(arr, value) + end + table.insert(t, arr) + end + + for i = 2, #s1+1 do + for j = 2, #s2+1 do + local cost = 0 + if s1:sub(i-1,i-1) ~= s2:sub(j-1,j-1) then + cost = 1 + end + t[i][j] = math.min( + t[i-1][j] + 1, + t[i][j-1] + 1, + t[i-1][j-1] + cost) + end + end + return t[#s1+1][#s2+1] +end + +local function similar_files(dir, filename) + local o_basename, o_ext = filename:match("(.+)%.(.+)") + local files = utils.readdir(dir, "files") + local res = {} + for _, file in pairs(files) do + if file == filename then + table.insert(res, file) + else + local basename, ext = file:match("(.+)%.(.+)") + if ext ~= o_ext then + goto continue + end + local distance = levenshtein_distance(basename, o_basename) + if distance <= 2 or (distance/#o_basename <= 0.5) then + table.insert(res, file) + end + end + ::continue:: + end + return res +end + +local function autoload_series() + if mp.get_property_number("playlist-count", 1) > 1 then + return + end + + local filepath = mp.get_property("path", "") + local dir, filename = utils.split_path(filepath) + if #dir == 0 then + return + end + + local files = similar_files(dir, filename) + table.sort(files) + for i = 1, #files do + if files[i] ~= filename then + mp.commandv("loadfile", dir..'/'..files[i], "append") + else + mp.commandv("playlist-move", 0, i) + end + end +end + +mp.register_event("start-file", autoload_series) From ef1e09fe35d5d62fbb811fd7913f32631211f946 Mon Sep 17 00:00:00 2001 From: rydesun Date: Thu, 8 Jul 2021 22:50:42 +0800 Subject: [PATCH 15/54] style(mpv): rename script --- .../{auto_add_subtitles.conf => autoload_subtitles.conf} | 0 .../scripts/{auto_add_subtitles.lua => autoload_subtitles.lua} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename .config/mpv/script-opts/{auto_add_subtitles.conf => autoload_subtitles.conf} (100%) rename .config/mpv/scripts/{auto_add_subtitles.lua => autoload_subtitles.lua} (100%) diff --git a/.config/mpv/script-opts/auto_add_subtitles.conf b/.config/mpv/script-opts/autoload_subtitles.conf similarity index 100% rename from .config/mpv/script-opts/auto_add_subtitles.conf rename to .config/mpv/script-opts/autoload_subtitles.conf diff --git a/.config/mpv/scripts/auto_add_subtitles.lua b/.config/mpv/scripts/autoload_subtitles.lua similarity index 100% rename from .config/mpv/scripts/auto_add_subtitles.lua rename to .config/mpv/scripts/autoload_subtitles.lua From ee1c4d944978be0f59b142f9463566fb4c0b8fa1 Mon Sep 17 00:00:00 2001 From: rydesun Date: Fri, 9 Jul 2021 01:36:19 +0800 Subject: [PATCH 16/54] fix(mpv): disable autoload stream url --- .config/mpv/scripts/autoload_series.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.config/mpv/scripts/autoload_series.lua b/.config/mpv/scripts/autoload_series.lua index 3e6d44f..071c8a2 100644 --- a/.config/mpv/scripts/autoload_series.lua +++ b/.config/mpv/scripts/autoload_series.lua @@ -60,6 +60,9 @@ local function autoload_series() end local filepath = mp.get_property("path", "") + if filepath == nil or filepath:find("^http[s]?://") then + return + end local dir, filename = utils.split_path(filepath) if #dir == 0 then return From d890a407d7e931010898c32682ce279932c08658 Mon Sep 17 00:00:00 2001 From: rydesun Date: Fri, 9 Jul 2021 14:05:35 +0800 Subject: [PATCH 17/54] refactor(mpv): update autoload script --- .config/mpv/scripts/autoload_series.lua | 46 ++++++++++++++----------- 1 file changed, 25 insertions(+), 21 deletions(-) diff --git a/.config/mpv/scripts/autoload_series.lua b/.config/mpv/scripts/autoload_series.lua index 071c8a2..8e41313 100644 --- a/.config/mpv/scripts/autoload_series.lua +++ b/.config/mpv/scripts/autoload_series.lua @@ -1,35 +1,38 @@ local mp = require 'mp' +local opt = require 'mp.options' local utils = require 'mp.utils' +local user_opts = { + max_distance = 2, -- 文件名的最大差异 + max_distance_ratio = 0.5, -- 文件名的最大差异占比 +} + +local script_name = mp.get_script_name() +opt.read_options(user_opts, script_name) + local function levenshtein_distance(s1, s2) local t = {} - for i = 0, #s1 do - local arr = {} - for j = 0, #s2 do - local value = 0 - if i == 0 then - value = j - elseif j == 0 then - value = i - end - table.insert(arr, value) - end - table.insert(t, arr) + for i = 0, #s2 do + table.insert(t, i) end for i = 2, #s1+1 do + local t2 = {i-1} for j = 2, #s2+1 do - local cost = 0 - if s1:sub(i-1,i-1) ~= s2:sub(j-1,j-1) then - cost = 1 + local value + if t[j-1] <= t[j] and t[j-1] <= t2[j-1] then + local cost = s1:sub(i-1,i-1) ~= s2:sub(j-1,j-1) and 1 or 0 + value = t[j-1] + cost + elseif t[j] < t2[j-1] then + value = t[j] + 1 + else + value = t2[j-1] + 1 end - t[i][j] = math.min( - t[i-1][j] + 1, - t[i][j-1] + 1, - t[i-1][j-1] + cost) + table.insert(t2, value) end + t = t2 end - return t[#s1+1][#s2+1] + return t[#s2+1] end local function similar_files(dir, filename) @@ -45,7 +48,8 @@ local function similar_files(dir, filename) goto continue end local distance = levenshtein_distance(basename, o_basename) - if distance <= 2 or (distance/#o_basename <= 0.5) then + if distance <= user_opts.max_distance + or (distance/#o_basename <= user_opts.max_distance_ratio) then table.insert(res, file) end end From be6f6e58c005b3cf022fcc47e27433576d55e10f Mon Sep 17 00:00:00 2001 From: rydesun Date: Fri, 9 Jul 2021 14:12:21 +0800 Subject: [PATCH 18/54] feat(mpv): add playlist manager script --- .config/mpv/tools/update.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.config/mpv/tools/update.sh b/.config/mpv/tools/update.sh index 7742f03..b89db0f 100755 --- a/.config/mpv/tools/update.sh +++ b/.config/mpv/tools/update.sh @@ -17,6 +17,9 @@ curl -fL --create-dirs -o "${script_dir}/Thumbnailer_OSC.lua" \ curl -fL https://github.com/deus0ww/mpv-conf/raw/master/scripts/Thumbnailer_Worker.lua | sed "s/'19'/'-19'/" > "${script_dir}/Thumbnailer_Worker.lua" +curl -fL --create-dirs -o "${script_dir}/playlistmanager.lua" \ + https://github.com/jonniek/mpv-playlistmanager/raw/master/playlistmanager.lua + curl -fL --create-dirs -o "${script_dir}/zenity-open-files.lua" \ https://github.com/alifarazz/mpv-zenity-open-files/raw/master/zenity-open-files.lua From b436a8f25e1e2ca808d2b00ea1b12256c9119ce4 Mon Sep 17 00:00:00 2001 From: rydesun Date: Fri, 9 Jul 2021 23:53:46 +0800 Subject: [PATCH 19/54] docs(mpv): update comments --- .config/mpv/mpv.conf | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 2b96a2c..7090abb 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -2,7 +2,7 @@ hwdec=auto-safe # ==== 界面 ==== -#使用OSC脚本时,需要关闭默认OSC +#使用脚本替代内置OSC osc=no # ==== OSD样式 ==== osd-on-seek=msg-bar @@ -40,12 +40,17 @@ screenshot-directory='~/Userdata/Pictures/' watch-later-directory='~/.data/mpv/watch_later/' # ==== 渲染 ==== +# 使用gpu-hq预设 profile=gpu-hq +# 影像升频算法 scale=ewa_lanczossharp +# 色度升频算法 cscale=ewa_lanczossharp +# 补帧算法 video-sync=display-resample interpolation tscale=oversample + # 可选值: common, common-alter, anime # 会覆盖scale和cscale profile=common From a4ea49491263a14fe2a3c076bf64e26ff2035fc6 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 10 Jul 2021 00:01:44 +0800 Subject: [PATCH 20/54] refactor(mpv): remove unused items --- .config/mpv/input.conf | 4 ++-- .config/mpv/mpv.conf | 23 +++++------------------ .config/mpv/tools/update.sh | 10 ---------- 3 files changed, 7 insertions(+), 30 deletions(-) diff --git a/.config/mpv/input.conf b/.config/mpv/input.conf index 5dbec9f..cb8be68 100644 --- a/.config/mpv/input.conf +++ b/.config/mpv/input.conf @@ -4,8 +4,8 @@ DOWN add volume -2 D cycle deband CTRL+1 apply-profile "common"; show_text ${glsl-shaders} -CTRL+2 apply-profile "common-alter"; show_text ${glsl-shaders} -CTRL+3 apply-profile "anime"; show_text ${glsl-shaders} +CTRL+2 apply-profile "anime"; show_text ${glsl-shaders} +CTRL+8 apply-profile "append-shaders"; show_text ${glsl-shaders} CTRL+9 apply-profile "append-shaders" restore; show_text ${glsl-shaders} CTRL+0 change-list glsl-shaders clr "" diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 7090abb..84bbdb9 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -36,6 +36,8 @@ screenshot-webp-lossless screenshot-directory='~/Userdata/Pictures/' # ==== 杂项 ==== +# socket文件路径 +input-ipc-server=/tmp/mpvsocket # 进度数据文件存放目录 watch-later-directory='~/.data/mpv/watch_later/' @@ -51,8 +53,8 @@ video-sync=display-resample interpolation tscale=oversample -# 可选值: common, common-alter, anime # 会覆盖scale和cscale +# 可选值common或者anime profile=common [common] @@ -63,16 +65,9 @@ glsl-shaders="~~/shaders/FSRCNNX_x2_8-0-4-1.glsl" # 其他着色器 profile=append-shaders -[common-alter] -profile-desc=普通视频[16-0-4-1] -# FSRCNNX着色器 -# https://github.com/igv/FSRCNN-TensorFlow/ -glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1.glsl" -# 其他着色器 -profile=append-shaders - [anime] -profile-desc=低分辨率动画专用 +profile-desc=低分辨率动画 +# FSRCNNX着色器 # https://github.com/HelpSeeker/FSRCNN-TensorFlow/ glsl-shaders="~~/shaders/FSRCNNX_x2_16-0-4-1_anime_enhance.glsl" # 其他着色器 @@ -88,11 +83,3 @@ glsl-shaders-append="~~/shaders/KrigBilateral.glsl" # https://gist.github.com/igv/8a77e4eb8276753b54bb94c1c50c317e sigmoid-upscaling=no glsl-shaders-append="~~/shaders/adaptive-sharpen.glsl" - -[svp] -profile-desc=SVP补帧 -hwdec=auto-copy-safe -input-ipc-server=/tmp/mpvsocket -# 禁用不兼容的选项 -hr-seek-framedrop=no -resume-playback=no diff --git a/.config/mpv/tools/update.sh b/.config/mpv/tools/update.sh index b89db0f..d15db14 100755 --- a/.config/mpv/tools/update.sh +++ b/.config/mpv/tools/update.sh @@ -1,10 +1,5 @@ #!/usr/bin/bash -e -if ! command -v 7z &>/dev/null; then - echo p7zip is missing >&2 - exit 1 -fi - config_dir=${XDG_CONFIG_HOME:-~/.config}/mpv/ script_dir=${config_dir}/scripts/ shader_dir=${config_dir}/shaders/ @@ -24,11 +19,6 @@ curl -fL --create-dirs -o "${script_dir}/zenity-open-files.lua" \ https://github.com/alifarazz/mpv-zenity-open-files/raw/master/zenity-open-files.lua echo "Updating shaders..." -curl -fL --create-dirs -o /tmp/mpv/fsrcnnx.7z \ - https://github.com/igv/FSRCNN-TensorFlow/releases/download/1.1/checkpoints_params.7z \ - && 7z e -o"${shader_dir}" -y /tmp/mpv/fsrcnnx.7z FSRCNNX_x2_16-0-4-1.glsl \ - && rm /tmp/mpv/fsrcnnx.7z - curl -fL --create-dirs -o "${shader_dir}/FSRCNNX_x2_8-0-4-1.glsl" \ https://github.com/igv/FSRCNN-TensorFlow/releases/download/1.1/FSRCNNX_x2_8-0-4-1.glsl From 9fe8034336b74b26cd36b0afd424fc37883540de Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 10 Jul 2021 01:08:22 +0800 Subject: [PATCH 21/54] fix(mpv): fix script for autoloading subtitles --- .config/mpv/scripts/autoload_subtitles.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.config/mpv/scripts/autoload_subtitles.lua b/.config/mpv/scripts/autoload_subtitles.lua index 6df0e0f..4de055d 100644 --- a/.config/mpv/scripts/autoload_subtitles.lua +++ b/.config/mpv/scripts/autoload_subtitles.lua @@ -4,6 +4,7 @@ local opt = require 'mp.options' local user_opts = { subtitle_ext_pattern = "(srt|ass|sub)", -- 字幕文件名后缀 + min_length = 3, -- 最小触发长度 dir_depth = 2, -- 搜索目录的深度 another_dir = "", -- 额外指定的目录 subtitle_pattern = "[0-9]+_chinese", -- 额外匹配的字幕 @@ -30,7 +31,7 @@ local function add_subtitles(dir, prefix) for subtitle_path in res.stdout:gmatch("[^\r\n]+") do local _, subtitle_name = utils.split_path(subtitle_path) if subtitle_name:lower():find(user_opts.subtitle_pattern) or - subtitle_name:lower():find(prefix_lower, 1, true) then + subtitle_name:lower():find(prefix_lower, 1, true) == 1 then mp.commandv('sub-add', subtitle_path, 'select') end end @@ -42,6 +43,9 @@ local function add_current_subs() return end local _, filename = utils.split_path(filepath) + if #filename < user_opts.min_length then + return + end local prefix = filename:match("(.+%.[12][0-9][0-9][0-9])%..+") or filename:match("(.+)%.[0-9]+p%..+") or filename:match("(.+)%..+") From cc858b3f5a1f32d71ff6356493875eca63f3176e Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 11 Jul 2021 02:25:39 +0800 Subject: [PATCH 22/54] Update mpv thumbnailer config --- .config/mpv/input.conf | 1 + .config/mpv/script-opts/Thumbnailer.conf | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.config/mpv/input.conf b/.config/mpv/input.conf index cb8be68..f7bffc7 100644 --- a/.config/mpv/input.conf +++ b/.config/mpv/input.conf @@ -2,6 +2,7 @@ UP add volume 2 DOWN add volume -2 D cycle deband +T script-message-to Thumbnailer Thumbnailer-toggle-gen; script-message-to Thumbnailer Thumbnailer-toggle-osc CTRL+1 apply-profile "common"; show_text ${glsl-shaders} CTRL+2 apply-profile "anime"; show_text ${glsl-shaders} diff --git a/.config/mpv/script-opts/Thumbnailer.conf b/.config/mpv/script-opts/Thumbnailer.conf index b4b669c..0f4dd78 100644 --- a/.config/mpv/script-opts/Thumbnailer.conf +++ b/.config/mpv/script-opts/Thumbnailer.conf @@ -1,3 +1,4 @@ -auto_delete=2 +auto_gen=no +auto_show=no dimension=480 use_ffmpeg=yes From b5398cc256631b02e79414c251604daeffe54edc Mon Sep 17 00:00:00 2001 From: rydesun Date: Thu, 22 Jul 2021 00:48:23 +0800 Subject: [PATCH 23/54] Upgrade qtile 0.18.0 --- .config/zsh/zprofile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/zsh/zprofile b/.config/zsh/zprofile index 42f2280..f8bf353 100644 --- a/.config/zsh/zprofile +++ b/.config/zsh/zprofile @@ -1,4 +1,4 @@ # Autostart X if systemctl -q is-active graphical.target && [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then - xinit qtile + xinit qtile start -b x11 fi From 07535d4e3b0b71e9a90b01f5624f36c1c18478d0 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 24 Jul 2021 19:14:25 +0800 Subject: [PATCH 24/54] Minor update --- .config/fontconfig/conf.d/10-sub-pixel-rgb.conf | 2 +- .config/fontconfig/conf.d/11-lcdfilter-default.conf | 2 +- .config/git/config | 1 + .config/pikaur.conf | 3 ++- .pam_environment | 9 --------- 5 files changed, 5 insertions(+), 12 deletions(-) diff --git a/.config/fontconfig/conf.d/10-sub-pixel-rgb.conf b/.config/fontconfig/conf.d/10-sub-pixel-rgb.conf index c90d3b7..21a782f 120000 --- a/.config/fontconfig/conf.d/10-sub-pixel-rgb.conf +++ b/.config/fontconfig/conf.d/10-sub-pixel-rgb.conf @@ -1 +1 @@ -/etc/fonts/conf.avail/10-sub-pixel-rgb.conf \ No newline at end of file +/usr/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf \ No newline at end of file diff --git a/.config/fontconfig/conf.d/11-lcdfilter-default.conf b/.config/fontconfig/conf.d/11-lcdfilter-default.conf index 07413bc..fbc10b0 120000 --- a/.config/fontconfig/conf.d/11-lcdfilter-default.conf +++ b/.config/fontconfig/conf.d/11-lcdfilter-default.conf @@ -1 +1 @@ -/etc/fonts/conf.avail/11-lcdfilter-default.conf \ No newline at end of file +/usr/share/fontconfig/conf.avail/11-lcdfilter-default.conf \ No newline at end of file diff --git a/.config/git/config b/.config/git/config index b58bf7f..ce8c963 100644 --- a/.config/git/config +++ b/.config/git/config @@ -21,6 +21,7 @@ cat = cat-file -p d = diff ds = diff --staged + s = show [pull] rebase = true [credential] diff --git a/.config/pikaur.conf b/.config/pikaur.conf index ac6ab02..b8417c8 100644 --- a/.config/pikaur.conf +++ b/.config/pikaur.conf @@ -11,6 +11,7 @@ keepdevbuilddir = yes keepbuilddeps = no skipfailedbuild = no alwaysusedynamicusers = no +ignorearch = no [colors] version = 10 @@ -31,11 +32,11 @@ pacmanpath = pacman privilegeescalationtool = sudo [network] -aururl = https://aur.tuna.tsinghua.edu.cn newsurl = https://www.archlinux.org/feeds/news/ socks5proxy = aurhttpproxy = aurhttpsproxy = +aururl = https://aur.archlinux.org [review] donteditbydefault = no diff --git a/.pam_environment b/.pam_environment index 0c959b7..24ab314 100644 --- a/.pam_environment +++ b/.pam_environment @@ -53,10 +53,6 @@ RANDFILE DEFAULT=${XDG_DATA_HOME}/openssl/randfile # wine WINEPREFIX DEFAULT=${XDG_DATA_HOME}/wine -# adb -ANDROID_SDK_HOME DEFAULT=${XDG_CONFIG_HOME}/android -ADB_VENDOR_KEY DEFAULT=${XDG_CONFIG_HOME}/android - # golang GO111MODULE DEFAULT=on GOPROXY DEFAULT=https://goproxy.cn,direct @@ -85,11 +81,6 @@ NPM_CONFIG_USERCONFIG DEFAULT=${XDG_CONFIG_HOME}/npm/npmrc # nvm NVM_DIR DEFAULT=${XDG_DATA_HOME}/nvm -# ruby bundler -BUNDLE_USER_CONFIG DEFAULT=${XDG_CONFIG_HOME}/bundle -BUNDLE_USER_CACHE DEFAULT=${XDG_CACHE_HOME}/bundle -BUNDLE_USER_PLUGIN DEFAULT=${XDG_DATA_HOME}/bundle - # docker DOCKER_CONFIG DEFAULT=${XDG_CONFIG_HOME}/docker From 7dbc758ef45fcc0a4959685ecc952327ea32c981 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 24 Jul 2021 19:15:39 +0800 Subject: [PATCH 25/54] Use kitty terminal emulator --- .config/kitty/kitty.conf | 22 ++++++++++++++++++++++ .config/picom/picom.conf | 2 +- .config/zsh/zshrc | 2 +- README.md | 2 +- 4 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 .config/kitty/kitty.conf diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf new file mode 100644 index 0000000..99bea3a --- /dev/null +++ b/.config/kitty/kitty.conf @@ -0,0 +1,22 @@ +font_size 15.0 + +symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC + +background #263238 +foreground #eceff1 +color0 #505070 +color1 #ff9800 +color2 #8bc34a +color3 #ffc107 +color4 #03a9f4 +color5 #e91e63 +color6 #009688 +color7 #cfd8dc +color8 #507070 +color9 #ffa74d +color10 #9ccc65 +color11 #ffa000 +color12 #81d4fa +color13 #ad1457 +color14 #26a69a +color15 #eceff1 diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf index 6cae47f..a80793b 100644 --- a/.config/picom/picom.conf +++ b/.config/picom/picom.conf @@ -23,7 +23,7 @@ fading = true ################################# opacity-rule = [ - "90:class_i = 'Terminal Emulator'" + "90:class_i = 'kitty'" ]; ################################# diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index b43c767..3dc9bad 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -216,7 +216,7 @@ alias g='git' && compdef g=git alias py='python' && compdef py=python alias config='/usr/bin/git --git-dir=$HOME/.myconf/ --work-tree=$HOME' && compdef config=git alias config.edit='GIT_DIR=$HOME/.myconf GIT_WORK_TREE=$HOME nvim' && compdef config.edit=nvim -alias ssh='TERM=xterm-256color ssh' +alias ssh='kitty +kitten ssh' alias mountdisk="mount | grep -E '^(/dev/sd|/dev/nvme|/dev/mmcblk|gvfsd-fuse)' | awk '{print \$1 \"\t\" \$5 \"\t\" \$3 \"\n\t\t\" \$6}'" # >>>----------------------------------- diff --git a/README.md b/README.md index 8840bc6..a0cb6ed 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Linux 配置 - 使用 `pam_environment` 管理环境变量 -- 使用 `alacritty` 虚拟终端 +- 使用 `kitty` 虚拟终端 - 使用 `material` 配色主题 - 不使用 `Powerline` 和 `Oh My Zsh` From a07e001ac9c52b03b60aac78de5e095a8ba0b1f0 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 24 Jul 2021 19:16:27 +0800 Subject: [PATCH 26/54] Use fcitx5 --- .config/systemd/user/fcitx.service | 2 +- .pam_environment | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.config/systemd/user/fcitx.service b/.config/systemd/user/fcitx.service index 3472166..9a201fe 100644 --- a/.config/systemd/user/fcitx.service +++ b/.config/systemd/user/fcitx.service @@ -4,7 +4,7 @@ Description=Input method framework [Service] Type=forking Environment="LANG=zh_CN.UTF-8" -ExecStart=/usr/bin/fcitx-autostart +ExecStart=/usr/bin/fcitx5 -d [Install] WantedBy=Xorg.target diff --git a/.pam_environment b/.pam_environment index 24ab314..b394b70 100644 --- a/.pam_environment +++ b/.pam_environment @@ -18,6 +18,9 @@ QT_QPA_PLATFORMTHEME DEFAULT=qt5ct GTK_IM_MODULE DEFAULT=fcitx QT_IM_MODULE DEFAULT=fcitx XMODIFIERS DEFAULT=@im=fcitx +INPUT_METHOD DEFAULT=fcitx +SDL_IM_MODULE DEFAULT=fcitx +GLFW_IM_MODULE DEFAULT=ibus # firefox # Enable VA-API support From ac66ae682da718b89bda6cfd5431e0b3f52df45d Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 31 Jul 2021 22:56:22 +0800 Subject: [PATCH 27/54] Use delta as git diff --- .config/git/config | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/.config/git/config b/.config/git/config index ce8c963..2c18795 100644 --- a/.config/git/config +++ b/.config/git/config @@ -28,3 +28,27 @@ helper = cache [url "https://github.com"] insteadOf = git://github.com + +[pager] + diff = delta + show = delta + log = delta + reflog = delta + +[interactive] + diffFilter = delta --color-only --features=interactive + +[delta] + features = decorations + +[delta "decorations"] + commit-decoration-style = bold yellow ul + file-style = bold yellow + file-decoration-style = yellow box + hunk-header-style = file line-number syntax + hunk-header-decoration-style = cyan box + hunk-header-file-style = cyan + hunk-header-line-number-style = yellow + +[delta "interactive"] + keep-plus-minus-markers = false From ccc4c2eb1382c5a2bcbaf0d71be324fe3cc95613 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 1 Aug 2021 16:10:12 +0800 Subject: [PATCH 28/54] Make terminal self transparent --- .config/kitty/kitty.conf | 2 ++ .config/picom/picom.conf | 9 --------- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 99bea3a..df34222 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -2,6 +2,8 @@ font_size 15.0 symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC +background_opacity 0.9 + background #263238 foreground #eceff1 color0 #505070 diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf index a80793b..400754d 100644 --- a/.config/picom/picom.conf +++ b/.config/picom/picom.conf @@ -18,14 +18,6 @@ shadow-exclude = [ fading = true -################################# -# Transparency / Opacity # -################################# - -opacity-rule = [ - "90:class_i = 'kitty'" -]; - ################################# # General Settings # ################################# @@ -40,4 +32,3 @@ use-ewmh-active-win = true detect-transient = true detect-client-leader = true use-damage = true - From 362f4a5b8ef9696089a3ab60f64e743146591fd6 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 1 Aug 2021 16:12:21 +0800 Subject: [PATCH 29/54] Remove terminal bell --- .config/kitty/kitty.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index df34222..73405fd 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -2,6 +2,9 @@ font_size 15.0 symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC +enable_audio_bell no +window_alert_on_bell no + background_opacity 0.9 background #263238 From da75cf4f714759b6543e16a6c72a4214dccfe295 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 1 Aug 2021 22:37:27 +0800 Subject: [PATCH 30/54] add kitty hyperlinks and shortcuts --- .config/kitty/kitty.conf | 8 ++++++++ .config/kitty/open-actions.conf | 11 +++++++++++ .config/zsh/zshrc | 3 ++- 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 .config/kitty/open-actions.conf diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 73405fd..f9dca8e 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -1,3 +1,11 @@ +kitten_alias hints hints --alphabet [;ajfkdlshgqweruiopzxcvnmbyt12345 +map ctrl+g>ctrl+g kitten hints --type=hyperlink +map ctrl+g>ctrl+n kitten hints --type=linenum nvim +{line} {path} +map ctrl+g>ctrl+l kitten hints --type=line --program - +map ctrl+g>ctrl+w kitten hints --type=word --program - +map ctrl+g>ctrl+u kitten hints --type=url --program - +map ctrl+g>ctrl+i kitten hints --type=ip --program - + font_size 15.0 symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC diff --git a/.config/kitty/open-actions.conf b/.config/kitty/open-actions.conf new file mode 100644 index 0000000..d287d42 --- /dev/null +++ b/.config/kitty/open-actions.conf @@ -0,0 +1,11 @@ +protocol file +mime text/* +action launch --type=overlay ${EDITOR} ${FILE_PATH} + +protocol file +fragment_matches [0-9]+ +action launch --type=overlay ${EDITOR} +${FRAGMENT} ${FILE_PATH} + +protocol file +mime image/* +action launch --type=overlay kitty +kitten icat --hold ${FILE_PATH} diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 3dc9bad..609c375 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -193,7 +193,7 @@ GIT_PS1_DESCRIBE_STYLE="default" # sudo后面的命令可以是别名 alias sudo='sudo ' # 设置命令默认行为 -alias ls='ls --color=auto --time-style=iso --human-readable' +alias ls='ls --color=auto --time-style=iso --human-readable --hyperlink=auto' alias grep='grep --color=auto' alias diff='diff --color=auto' alias mv='mv -i' @@ -217,6 +217,7 @@ alias py='python' && compdef py=python alias config='/usr/bin/git --git-dir=$HOME/.myconf/ --work-tree=$HOME' && compdef config=git alias config.edit='GIT_DIR=$HOME/.myconf GIT_WORK_TREE=$HOME nvim' && compdef config.edit=nvim alias ssh='kitty +kitten ssh' +alias rg='kitty +kitten hyperlinked_grep' alias mountdisk="mount | grep -E '^(/dev/sd|/dev/nvme|/dev/mmcblk|gvfsd-fuse)' | awk '{print \$1 \"\t\" \$5 \"\t\" \$3 \"\n\t\t\" \$6}'" # >>>----------------------------------- From fe52e8cc04f9528081e182824756403f968b7f57 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 2 Aug 2021 14:41:51 +0800 Subject: [PATCH 31/54] Better pager in terminal --- .config/kitty/kitty.conf | 2 ++ .config/zsh/zshrc | 18 +++++++++++++++++- .pam_environment | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index f9dca8e..2754461 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -6,6 +6,8 @@ map ctrl+g>ctrl+w kitten hints --type=word --program - map ctrl+g>ctrl+u kitten hints --type=url --program - map ctrl+g>ctrl+i kitten hints --type=ip --program - +scrollback_pager nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" -c "set noswapfile" -c "autocmd! myconfig_term" -c "autocmd TermOpen * normal G" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat" + font_size 15.0 symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 609c375..26bdd30 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -93,6 +93,16 @@ bindkey -e autoload -Uz edit-command-line zle -N edit-command-line bindkey '^X^E' edit-command-line + +# 修改清屏方式 +# 将内容挤出屏幕而不是直接清空 +scroll-and-clear-screen() { + printf '\n%.0s' {1..$LINES} + zle clear-screen +} +zle -N scroll-and-clear-screen +bindkey '^l' scroll-and-clear-screen + # fzf if [[ -f /usr/share/fzf/key-bindings.zsh ]]; then source /usr/share/fzf/key-bindings.zsh @@ -206,7 +216,13 @@ alias la='ls -Al' mcd() { mkdir -p $1 && cd $1 } alias x='xdg-open' -alias v='nvim -R -c "nnoremap q :exit"' && compdef v=nvim # 使用neovim作为pager +alias v='nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0"' && + compdef v=nvim # 使用neovim作为pager +alias V='nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" \ + -c "set noswapfile" -c "silent! autocmd! myconfig_term" \ + -c "silent write! /tmp/pager_buffer" \ + -c "term cat /tmp/pager_buffer; rm /tmp/pager_buffer; cat"' && + compdef V=nvim # 使用neovim作为pager,支持ANSI code if [[ -e $VIMRUNTIME ]]; then alias e='nvr' else diff --git a/.pam_environment b/.pam_environment index b394b70..2db1851 100644 --- a/.pam_environment +++ b/.pam_environment @@ -1,7 +1,7 @@ # default EDITOR DEFAULT=nvim BROWSER DEFAULT=firefox -MANPAGER DEFAULT="nvim +Man!" +MANPAGER DEFAULT="nvim +Man! -c 'set signcolumn=no laststatus=0'" # xdg base directory XDG_CONFIG_HOME DEFAULT=@{HOME}/.config From 487331e935b9a1ef6636273673541b0321fa4012 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 2 Aug 2021 18:16:54 +0800 Subject: [PATCH 32/54] Fix fzf keybind --- .config/zsh/zshrc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 26bdd30..1cde4d6 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -2,6 +2,7 @@ setopt no_beep # 不响铃 setopt correct # 修正命令 setopt interactive_comments # 交互模式支持注释 +bindkey -e # Emacs按键绑定 fpath=(${ZDOTDIR}/functions ${ZDOTDIR}/Completion $fpath) @@ -72,7 +73,7 @@ zstyle ':completion:*' matcher-list '' 'm:{-a-zA-Z}={_A-Za-z}' if [[ -f /usr/share/fzf/completion.zsh ]]; then source /usr/share/fzf/completion.zsh fi -export FZF_COMPLETION_TRIGGER='~~' +export FZF_COMPLETION_TRIGGER='' export FZF_DEFAULT_COMMAND='fd -uu -E .git -E .node_modules' export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" @@ -87,8 +88,6 @@ done; unset i # >>>----------------------------------- # 按键绑定 <<<-------------------------- -# 默认Emacs -bindkey -e # 用$EDITOR编辑命令 autoload -Uz edit-command-line zle -N edit-command-line @@ -107,6 +106,10 @@ bindkey '^l' scroll-and-clear-screen if [[ -f /usr/share/fzf/key-bindings.zsh ]]; then source /usr/share/fzf/key-bindings.zsh fi +bindkey '^T' fzf-completion +# 恢复TAB键的行为 +bindkey '^I' $fzf_default_completion + # 默认 WORDCHARS='*?_-.[]~=/&;!#$%^(){}<>' export WORDCHARS='*?_-.[]~=&;!#$%^(){}<>' # >>>----------------------------------- From 15c0044c54dd96b211ac6bae41c81246369b8e52 Mon Sep 17 00:00:00 2001 From: rydesun Date: Tue, 3 Aug 2021 21:03:51 +0800 Subject: [PATCH 33/54] Use colorscheme everforest --- .config/kitty/kitty.conf | 41 +++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 2754461..92e8c72 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -15,23 +15,26 @@ symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC enable_audio_bell no window_alert_on_bell no -background_opacity 0.9 +background_opacity 0.95 -background #263238 -foreground #eceff1 -color0 #505070 -color1 #ff9800 -color2 #8bc34a -color3 #ffc107 -color4 #03a9f4 -color5 #e91e63 -color6 #009688 -color7 #cfd8dc -color8 #507070 -color9 #ffa74d -color10 #9ccc65 -color11 #ffa000 -color12 #81d4fa -color13 #ad1457 -color14 #26a69a -color15 #eceff1 +foreground #d3c6aa +background #2b3339 +cursor #7fbbb3 + +color0 #4b565c +color1 #e67e80 +color2 #a7c080 +color3 #dbbc7f +color4 #7fbbb3 +color5 #d699b6 +color6 #83c092 +color7 #d3c6aa + +color8 #4b565c +color9 #e67e80 +color10 #a7c080 +color11 #dbbc7f +color12 #7fbbb3 +color13 #d699b6 +color14 #83c092 +color15 #d3c6aa From c0ff04cc0f014422a75a0c11660b30639f9e4bb5 Mon Sep 17 00:00:00 2001 From: rydesun Date: Tue, 3 Aug 2021 21:07:27 +0800 Subject: [PATCH 34/54] Untrack alacritty and Xresources --- .config/X11/resources | 40 --------------------------------- .config/alacritty/alacritty.yml | 33 --------------------------- 2 files changed, 73 deletions(-) delete mode 100644 .config/X11/resources delete mode 100644 .config/alacritty/alacritty.yml diff --git a/.config/X11/resources b/.config/X11/resources deleted file mode 100644 index f630f78..0000000 --- a/.config/X11/resources +++ /dev/null @@ -1,40 +0,0 @@ -Xcursor.theme: Breeze-Adapta-Cursor - -!--- font ---! -Xft.autohint: 0 -Xft.lcdfilter: lcddefault -Xft.hintstyle: hintslight -Xft.hinting: 1 -Xft.antialias: 1 -Xft.rgba: rgb -*.font: xft:monospace:size=12 - -!--- colorscheme: material ---! -! special -*.foreground: #eceff1 -*.background: #263238 -*.cursorColor: #eceff1 -! black -*.color0: #263238 -*.color8: #37474f -! red -*.color1: #ff9800 -*.color9: #ffa74d -! green -*.color2: #8bc34a -*.color10: #9ccc65 -! yellow -*.color3: #ffc107 -*.color11: #ffa000 -! blue -*.color4: #03a9f4 -*.color12: #81d4fa -! magenta -*.color5: #e91e63 -*.color13: #ad1457 -! cyan -*.color6: #009688 -*.color14: #26a69a -! white -*.color7: #cfd8dc -*.color15: #eceff1 diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml deleted file mode 100644 index e53d4f0..0000000 --- a/.config/alacritty/alacritty.yml +++ /dev/null @@ -1,33 +0,0 @@ -window: - class: - instance: Terminal Emulator -font: - size: 9 -# colorscheme: Material -colors: - # Default colors - primary: - background: '0x263238' - foreground: '0xeceff1' - # Normal colors - normal: - black: '#505070' - red: '#ff9800' - green: '#8bc34a' - yellow: '#ffc107' - blue: '#03a9f4' - magenta: '#e91e63' - cyan: '#009688' - white: '#cfd8dc' - # Bright colors - bright: - black: '#507070' - red: '#ffa74d' - green: '#9ccc65' - yellow: '#ffa000' - blue: '#81d4fa' - magenta: '#ad1457' - cyan: '#26a69a' - white: '#eceff1' -selection: - save_to_clipboard: false From bb2dbdeba6687ae7a4fd14a40053610f9e8a370f Mon Sep 17 00:00:00 2001 From: rydesun Date: Tue, 3 Aug 2021 21:10:54 +0800 Subject: [PATCH 35/54] Update README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a0cb6ed..71e5d8b 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ - 使用 `pam_environment` 管理环境变量 - 使用 `kitty` 虚拟终端 -- 使用 `material` 配色主题 +- 使用 [everforest](https://github.com/sainnhe/everforest) 配色主题 - 不使用 `Powerline` 和 `Oh My Zsh` 另见 [如何使用 Git 管理 Linux 配置?](https://2cat.cc/post/diyo4/) From 8edbbf6a3db73da75d6e1d043ae00c42965de862 Mon Sep 17 00:00:00 2001 From: rydesun Date: Thu, 5 Aug 2021 16:49:03 +0800 Subject: [PATCH 36/54] Add service: redshift --- .config/systemd/user/redshift-gtk.service | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .config/systemd/user/redshift-gtk.service diff --git a/.config/systemd/user/redshift-gtk.service b/.config/systemd/user/redshift-gtk.service new file mode 100644 index 0000000..dbef57b --- /dev/null +++ b/.config/systemd/user/redshift-gtk.service @@ -0,0 +1,10 @@ +[Unit] +Description=Redshift display colour temperature adjustment (GUI) + +[Service] +Type=idle +Environment="LANG=zh_CN.UTF-8" +ExecStart=/usr/bin/redshift-gtk + +[Install] +WantedBy=Xorg.target From d75ea9aacc188dbf6d92ffc88d9de60b6dc87722 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 7 Aug 2021 16:50:34 +0800 Subject: [PATCH 37/54] Update fontconfig --- .config/fontconfig/conf.d/50-generic.conf | 17 ++++++++++++++ .config/fontconfig/conf.d/52-replace.conf | 27 +++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/.config/fontconfig/conf.d/50-generic.conf b/.config/fontconfig/conf.d/50-generic.conf index 75b7530..69b00c9 100644 --- a/.config/fontconfig/conf.d/50-generic.conf +++ b/.config/fontconfig/conf.d/50-generic.conf @@ -62,4 +62,21 @@ + + + Noto Sans + + + + charset + + + 0xF900 + 0xFAFF + + + + + + diff --git a/.config/fontconfig/conf.d/52-replace.conf b/.config/fontconfig/conf.d/52-replace.conf index 373bf95..86dce69 100644 --- a/.config/fontconfig/conf.d/52-replace.conf +++ b/.config/fontconfig/conf.d/52-replace.conf @@ -39,6 +39,15 @@ + + + Liberation Sans + + + Noto Sans + + + Microsoft YaHei @@ -85,6 +94,15 @@ + + + Liberation Serif + + + Noto Serif + + + SimSun @@ -131,4 +149,13 @@ + + + Liberation Mono + + + Iosevka Custom + + + From 3d8eaa1a978fb113bc46fc92d7f4dfae387773aa Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 7 Aug 2021 16:51:21 +0800 Subject: [PATCH 38/54] Update kitty conf: fix ui --- .config/kitty/kitty.conf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 92e8c72..174da70 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -6,11 +6,12 @@ map ctrl+g>ctrl+w kitten hints --type=word --program - map ctrl+g>ctrl+u kitten hints --type=url --program - map ctrl+g>ctrl+i kitten hints --type=ip --program - -scrollback_pager nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" -c "set noswapfile" -c "autocmd! myconfig_term" -c "autocmd TermOpen * normal G" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat" +scrollback_pager nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" -c "set noswapfile" -c "autocmd! myconfig_term" -c "autocmd TermOpen * normal G" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat" -c "hi MsgArea guibg=#3a454a" font_size 15.0 symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC +symbol_map U+E000-U+FAFF Symbols Nerd Font enable_audio_bell no window_alert_on_bell no From 1f40612d87dd20116c3c0b4778bf45efce60c588 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 7 Aug 2021 16:56:13 +0800 Subject: [PATCH 39/54] Update git diff theme --- .config/git/config | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.config/git/config b/.config/git/config index 2c18795..5fd6078 100644 --- a/.config/git/config +++ b/.config/git/config @@ -43,11 +43,10 @@ [delta "decorations"] commit-decoration-style = bold yellow ul - file-style = bold yellow - file-decoration-style = yellow box - hunk-header-style = file line-number syntax - hunk-header-decoration-style = cyan box - hunk-header-file-style = cyan + file-style = bold black white + file-decoration-style = none + hunk-header-style = line-number syntax + hunk-header-decoration-style = cyan ul hunk-header-line-number-style = yellow [delta "interactive"] From 33d40faca19388f6861c6d12ae6368e6869ea8c2 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sat, 7 Aug 2021 16:56:52 +0800 Subject: [PATCH 40/54] Update zsh conf: auto nvim cwd --- .config/zsh/zshrc | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 1cde4d6..c4b482c 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -226,7 +226,7 @@ alias V='nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" \ -c "silent write! /tmp/pager_buffer" \ -c "term cat /tmp/pager_buffer; rm /tmp/pager_buffer; cat"' && compdef V=nvim # 使用neovim作为pager,支持ANSI code -if [[ -e $VIMRUNTIME ]]; then +if [[ -e $NVIM_LISTEN_ADDRESS ]]; then alias e='nvr' else alias e='nvim' && compdef e=nvim @@ -240,4 +240,13 @@ alias rg='kitty +kitten hyperlinked_grep' alias mountdisk="mount | grep -E '^(/dev/sd|/dev/nvme|/dev/mmcblk|gvfsd-fuse)' | awk '{print \$1 \"\t\" \$5 \"\t\" \$3 \"\n\t\t\" \$6}'" # >>>----------------------------------- +# neovim终端中的zsh自动设置neovim的工作目录 +if [[ -e $NVIM_LISTEN_ADDRESS ]]; then + function nvim_lcd() { + emulate -L zsh + nvr +"lcd $PWD" + } + chpwd_functions=(${chpwd_functions[@]} "nvim_lcd") +fi + # vim: foldmethod=marker:foldmarker=<<<---,>>>--- From d77287ba575d9fadc1a977f58f83c70527fe8768 Mon Sep 17 00:00:00 2001 From: rydesun Date: Thu, 12 Aug 2021 11:00:00 +0800 Subject: [PATCH 41/54] Use nvim as pager --- .config/kitty/kitty.conf | 9 ++++++--- .config/zsh/zshrc | 9 ++++----- .pam_environment | 2 +- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 174da70..5eba759 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -1,12 +1,15 @@ kitten_alias hints hints --alphabet [;ajfkdlshgqweruiopzxcvnmbyt12345 -map ctrl+g>ctrl+g kitten hints --type=hyperlink +map ctrl+g>ctrl+g kitten hints --type=word --program - +map ctrl+g>shift+g kitten hints --type=word --program @ map ctrl+g>ctrl+n kitten hints --type=linenum nvim +{line} {path} map ctrl+g>ctrl+l kitten hints --type=line --program - -map ctrl+g>ctrl+w kitten hints --type=word --program - +map ctrl+g>shift+l kitten hints --type=line --program @ map ctrl+g>ctrl+u kitten hints --type=url --program - +map ctrl+g>shift+u kitten hints --type=url --program @ map ctrl+g>ctrl+i kitten hints --type=ip --program - +map ctrl+g>shift+i kitten hints --type=ip --program @ -scrollback_pager nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" -c "set noswapfile" -c "autocmd! myconfig_term" -c "autocmd TermOpen * normal G" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat" -c "hi MsgArea guibg=#3a454a" +scrollback_pager nvim -R --cmd "let $NVIM_AS_PAGER=1" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat" font_size 15.0 diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index c4b482c..c1ecd27 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -219,12 +219,11 @@ alias la='ls -Al' mcd() { mkdir -p $1 && cd $1 } alias x='xdg-open' -alias v='nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0"' && +alias v="nvim -R --cmd 'let \$NVIM_AS_PAGER=1'" && compdef v=nvim # 使用neovim作为pager -alias V='nvim -R -c "nnoremap q :exit" -c "set signcolumn=no laststatus=0" \ - -c "set noswapfile" -c "silent! autocmd! myconfig_term" \ - -c "silent write! /tmp/pager_buffer" \ - -c "term cat /tmp/pager_buffer; rm /tmp/pager_buffer; cat"' && +alias V="nvim -R --cmd 'let \$NVIM_AS_PAGER=1' \ + -c 'silent write! /tmp/pager_buffer' \ + -c 'term cat /tmp/pager_buffer; rm /tmp/pager_buffer; cat'" && compdef V=nvim # 使用neovim作为pager,支持ANSI code if [[ -e $NVIM_LISTEN_ADDRESS ]]; then alias e='nvr' diff --git a/.pam_environment b/.pam_environment index 2db1851..ed7c7fb 100644 --- a/.pam_environment +++ b/.pam_environment @@ -1,7 +1,7 @@ # default EDITOR DEFAULT=nvim BROWSER DEFAULT=firefox -MANPAGER DEFAULT="nvim +Man! -c 'set signcolumn=no laststatus=0'" +MANPAGER DEFAULT="nvim +Man! --cmd 'let $NVIM_AS_PAGER=1'" # xdg base directory XDG_CONFIG_HOME DEFAULT=@{HOME}/.config From 34e783dd092de35172e7dc547f524a2cf749d0ef Mon Sep 17 00:00:00 2001 From: rydesun Date: Fri, 13 Aug 2021 18:10:13 +0800 Subject: [PATCH 42/54] Use nvim as pager --- .config/kitty/kitty.conf | 2 +- .config/zsh/zshrc | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 5eba759..22c809f 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -9,7 +9,7 @@ map ctrl+g>shift+u kitten hints --type=url --program @ map ctrl+g>ctrl+i kitten hints --type=ip --program - map ctrl+g>shift+i kitten hints --type=ip --program @ -scrollback_pager nvim -R --cmd "let $NVIM_AS_PAGER=1" -c "silent write! /tmp/kitty_scrollback_buffer" -c "te cat /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat" +scrollback_pager nvim --cmd "let $NVIM_AS_PAGER=1" --cmd "let $HANDLE_ANSI=1" font_size 15.0 diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index c1ecd27..4fb2bb2 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -219,14 +219,12 @@ alias la='ls -Al' mcd() { mkdir -p $1 && cd $1 } alias x='xdg-open' -alias v="nvim -R --cmd 'let \$NVIM_AS_PAGER=1'" && - compdef v=nvim # 使用neovim作为pager -alias V="nvim -R --cmd 'let \$NVIM_AS_PAGER=1' \ - -c 'silent write! /tmp/pager_buffer' \ - -c 'term cat /tmp/pager_buffer; rm /tmp/pager_buffer; cat'" && - compdef V=nvim # 使用neovim作为pager,支持ANSI code +alias v="nvim -R --cmd 'let \$NVIM_AS_PAGER=1'" \ + && compdef v=nvim # 使用neovim作为pager +alias V="nvim -R --cmd 'let \$NVIM_AS_PAGER=1' --cmd 'let \$HANDLE_ANSI=1'" \ + && compdef V=nvim # 使用neovim作为pager,支持ANSI code if [[ -e $NVIM_LISTEN_ADDRESS ]]; then - alias e='nvr' + alias e='nvr --remote-tab' else alias e='nvim' && compdef e=nvim fi From 80d8ad9318bc42c07be614b8119eaf5bd0679565 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 22 Aug 2021 18:58:28 +0800 Subject: [PATCH 43/54] Update fontconfig: use HarmonyOS Sans --- .config/fontconfig/conf.d/50-generic.conf | 22 ++-- .../conf.d/51-language-harmonyos-sans.conf | 17 +++ .../conf.d/51-language-sarasa-gothic.conf | 101 ----------------- .../conf.d/51-language-source-han-sans.conf | 102 ------------------ .../conf.d/51-language-source-han-serif.conf | 55 ---------- .config/fontconfig/conf.d/52-replace.conf | 52 ++++----- .../conf.d/53-override-noto-cjk.conf | 29 ----- .../conf.d/53-override-sarasa-gothic.conf | 17 --- .../conf.d/53-override-source-han-sans.conf | 20 ---- .../conf.d/53-override-source-han-serif.conf | 17 --- .config/kitty/kitty.conf | 1 - 11 files changed, 58 insertions(+), 375 deletions(-) create mode 100644 .config/fontconfig/conf.d/51-language-harmonyos-sans.conf delete mode 100644 .config/fontconfig/conf.d/51-language-sarasa-gothic.conf delete mode 100644 .config/fontconfig/conf.d/51-language-source-han-sans.conf delete mode 100644 .config/fontconfig/conf.d/51-language-source-han-serif.conf delete mode 100644 .config/fontconfig/conf.d/53-override-noto-cjk.conf delete mode 100644 .config/fontconfig/conf.d/53-override-sarasa-gothic.conf delete mode 100644 .config/fontconfig/conf.d/53-override-source-han-sans.conf delete mode 100644 .config/fontconfig/conf.d/53-override-source-han-serif.conf diff --git a/.config/fontconfig/conf.d/50-generic.conf b/.config/fontconfig/conf.d/50-generic.conf index 69b00c9..2ab3d4b 100644 --- a/.config/fontconfig/conf.d/50-generic.conf +++ b/.config/fontconfig/conf.d/50-generic.conf @@ -18,7 +18,7 @@ sans-serif - Noto Sans CJK SC + HarmonyOS Sans SC Noto Sans Symbols Nerd Font Twemoji @@ -44,21 +44,29 @@ monospace - Noto Sans Mono CJK SC + Iosevka Custom + HarmonyOS Sans SC Symbols Nerd Font Twemoji + - - chrome + + Noto Sans + + HarmonyOS Sans + + + + - Noto Sans Mono CJK + Noto Sans CJK - - Iosevka Custom + + HarmonyOS Sans SC diff --git a/.config/fontconfig/conf.d/51-language-harmonyos-sans.conf b/.config/fontconfig/conf.d/51-language-harmonyos-sans.conf new file mode 100644 index 0000000..9a75864 --- /dev/null +++ b/.config/fontconfig/conf.d/51-language-harmonyos-sans.conf @@ -0,0 +1,17 @@ + + + + + + + zh-TW + + + HarmonyOS Sans SC + + + HarmonyOS Sans TC + + + + diff --git a/.config/fontconfig/conf.d/51-language-sarasa-gothic.conf b/.config/fontconfig/conf.d/51-language-sarasa-gothic.conf deleted file mode 100644 index 56d05e4..0000000 --- a/.config/fontconfig/conf.d/51-language-sarasa-gothic.conf +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - zh-HK - - - Sarasa Gothic SC - - - Sarasa Gothic HC - - - - - - zh-HK - - - Sarasa Mono SC - - - Sarasa Mono HC - - - - - - zh-TW - - - Sarasa Gothic SC - - - Sarasa Gothic TC - - - - - - zh-TW - - - Sarasa Mono SC - - - Sarasa Mono TC - - - - - - ja - - - Sarasa Gothic SC - - - Sarasa Gothic J - - - - - - ja - - - Sarasa Mono SC - - - Sarasa Mono J - - - - - - ko - - - Sarasa Gothic SC - - - Sarasa Gothic K - - - - - - ko - - - Sarasa Mono SC - - - Sarasa Mono K - - - - diff --git a/.config/fontconfig/conf.d/51-language-source-han-sans.conf b/.config/fontconfig/conf.d/51-language-source-han-sans.conf deleted file mode 100644 index b82fb4e..0000000 --- a/.config/fontconfig/conf.d/51-language-source-han-sans.conf +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - zh-HK - - - Source Han Sans SC - - - Source Han Sans HC - - - - - - zh-TW - - - Source Han Sans SC - - - Source Han Sans TC - - - - - - ja - - - Source Han Sans SC - - - - Source Han Sans - - - - - - ko - - - Source Han Sans SC - - - Source Han Sans K - - - - - - zh-HK - - - Source Han Sans HW SC - - - Source Han Sans HW HC - - - - - - zh-TW - - - Source Han Sans HW SC - - - Source Han Sans HW TC - - - - - - ja - - - Source Han Sans HW SC - - - Source Han Sans HW - - - - - - ko - - - Source Han Sans HW SC - - - Source Han Sans HW K - - - - diff --git a/.config/fontconfig/conf.d/51-language-source-han-serif.conf b/.config/fontconfig/conf.d/51-language-source-han-serif.conf deleted file mode 100644 index 84a5da6..0000000 --- a/.config/fontconfig/conf.d/51-language-source-han-serif.conf +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - zh-HK - - - Source Han Serif SC - - - - Source Han Serif TC - - - - - - zh-TW - - - Source Han Serif SC - - - Source Han Serif TC - - - - - - ja - - - Source Han Serif SC - - - - Source Han Serif - - - - - - ko - - - Source Han Serif SC - - - Source Han Serif K - - - - diff --git a/.config/fontconfig/conf.d/52-replace.conf b/.config/fontconfig/conf.d/52-replace.conf index 86dce69..f597cee 100644 --- a/.config/fontconfig/conf.d/52-replace.conf +++ b/.config/fontconfig/conf.d/52-replace.conf @@ -7,8 +7,8 @@ Cantarell - - Noto Sans + + HarmonyOS Sans @@ -16,8 +16,8 @@ Arial - - Noto Sans + + HarmonyOS Sans @@ -25,8 +25,8 @@ Tahoma - - Noto Sans + + HarmonyOS Sans @@ -34,8 +34,8 @@ Calibri - - Noto Sans + + HarmonyOS Sans @@ -43,8 +43,8 @@ Liberation Sans - - Noto Sans + + HarmonyOS Sans @@ -52,8 +52,8 @@ Microsoft YaHei - - Noto Sans CJK SC + + HarmonyOS Sans SC @@ -61,8 +61,8 @@ 微软雅黑 - - Noto Sans CJK SC + + HarmonyOS Sans SC @@ -70,8 +70,8 @@ SimHei - - Noto Sans CJK SC + + HarmonyOS Sans SC @@ -79,8 +79,8 @@ 黑体 - - Noto Sans CJK SC + + HarmonyOS Sans SC @@ -89,7 +89,7 @@ Times New Roman - + Noto Serif @@ -98,7 +98,7 @@ Liberation Serif - + Noto Serif @@ -107,7 +107,7 @@ SimSun - + Noto Serif CJK SC @@ -116,7 +116,7 @@ 宋体 - + Noto Serif CJK SC @@ -125,7 +125,7 @@ FangSong - + Noto Serif CJK SC @@ -134,7 +134,7 @@ 仿宋 - + Noto Serif CJK SC @@ -144,7 +144,7 @@ Source Code - + Iosevka Custom @@ -153,7 +153,7 @@ Liberation Mono - + Iosevka Custom diff --git a/.config/fontconfig/conf.d/53-override-noto-cjk.conf b/.config/fontconfig/conf.d/53-override-noto-cjk.conf deleted file mode 100644 index 87f9461..0000000 --- a/.config/fontconfig/conf.d/53-override-noto-cjk.conf +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - en - - - Noto Sans CJK - - - Noto Sans - - - - - - en - - - Noto Serif CJK - - - Noto Serif - - - - diff --git a/.config/fontconfig/conf.d/53-override-sarasa-gothic.conf b/.config/fontconfig/conf.d/53-override-sarasa-gothic.conf deleted file mode 100644 index 7dcee7a..0000000 --- a/.config/fontconfig/conf.d/53-override-sarasa-gothic.conf +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - en - - - Sarasa Gothic - - - Noto Sans - - - - diff --git a/.config/fontconfig/conf.d/53-override-source-han-sans.conf b/.config/fontconfig/conf.d/53-override-source-han-sans.conf deleted file mode 100644 index 4317c32..0000000 --- a/.config/fontconfig/conf.d/53-override-source-han-sans.conf +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - en - - - HW - - - Source Han Sans - - - Noto Sans - - - - diff --git a/.config/fontconfig/conf.d/53-override-source-han-serif.conf b/.config/fontconfig/conf.d/53-override-source-han-serif.conf deleted file mode 100644 index af17183..0000000 --- a/.config/fontconfig/conf.d/53-override-source-han-serif.conf +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - en - - - Source Han Serif - - - Noto Serif - - - - diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 22c809f..3c74037 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -13,7 +13,6 @@ scrollback_pager nvim --cmd "let $NVIM_AS_PAGER=1" --cmd "let $HANDLE_ANSI=1" font_size 15.0 -symbol_map U+3400-U+4DBF,U+4E00-U+9FFC Noto Sans Mono CJK SC symbol_map U+E000-U+FAFF Symbols Nerd Font enable_audio_bell no From b3d9233a3b7314c99f25ff7f114fc80d767ebb47 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 22 Aug 2021 22:01:45 +0800 Subject: [PATCH 44/54] Fix fontconfig: replace gsfont --- .config/fontconfig/conf.d/52-replace.conf | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.config/fontconfig/conf.d/52-replace.conf b/.config/fontconfig/conf.d/52-replace.conf index f597cee..e3f40c4 100644 --- a/.config/fontconfig/conf.d/52-replace.conf +++ b/.config/fontconfig/conf.d/52-replace.conf @@ -39,6 +39,15 @@ + + + Helvetica + + + HarmonyOS Sans + + + Liberation Sans From c303083fa32ecfb0c3c863a1fd5914a87f9422b5 Mon Sep 17 00:00:00 2001 From: rydesun Date: Sun, 22 Aug 2021 22:03:02 +0800 Subject: [PATCH 45/54] Update after changing dpi --- .config/kitty/kitty.conf | 4 +--- .mozilla/firefox/profile/chrome/userChrome.css | 6 +++--- .mozilla/firefox/profile/chrome/userContent.css | 8 +++++++- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 3c74037..f25c2aa 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -11,9 +11,7 @@ map ctrl+g>shift+i kitten hints --type=ip --program @ scrollback_pager nvim --cmd "let $NVIM_AS_PAGER=1" --cmd "let $HANDLE_ANSI=1" -font_size 15.0 - -symbol_map U+E000-U+FAFF Symbols Nerd Font +font_size 9 enable_audio_bell no window_alert_on_bell no diff --git a/.mozilla/firefox/profile/chrome/userChrome.css b/.mozilla/firefox/profile/chrome/userChrome.css index dd6d1b1..1698b72 100644 --- a/.mozilla/firefox/profile/chrome/userChrome.css +++ b/.mozilla/firefox/profile/chrome/userChrome.css @@ -35,9 +35,9 @@ transition: all 0.1s; } #sidebar-box[sidebarcommand="visualtab_xuldev_org-sidebar-action"] #sidebar:not(:hover) { - width: 28px !important; - min-width: 28px !important; - max-width: 28px !important; + width: 25px !important; + min-width: 25px !important; + max-width: 25px !important; } #sidebar-box[sidebarcommand="visualtab_xuldev_org-sidebar-action"] #sidebar:hover { box-shadow: 2px 0 13px 0px #333333; diff --git a/.mozilla/firefox/profile/chrome/userContent.css b/.mozilla/firefox/profile/chrome/userContent.css index bfe104b..7896446 100644 --- a/.mozilla/firefox/profile/chrome/userContent.css +++ b/.mozilla/firefox/profile/chrome/userContent.css @@ -42,17 +42,23 @@ border-bottom: none !important; } #tabbox #tabList .tab .bar { - height: 28px !important; + height: 24px !important; } #tabbox #tabList .tab .bar .title { color: #333 !important; } + body:not(:hover) #tabList .tab .bar .title { + display: none !important; + } #tabbox #tabList .tab[selected="true"] .bar .title { font-weight: unset !important; } #tabbox #tabList .tab .line1 { display: none !important; } + #tabbox #tabList .tab .line2 { + width: 7px !important; + } #tabbox #tabList .tab .thumbnail { width: 100% !important; margin: 0 !important; From 32e99d8d2084b973bc3174a18430dfcb8420fa60 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 23 Aug 2021 17:40:25 +0800 Subject: [PATCH 46/54] Fix shadow around firefox popup --- .config/picom/picom.conf | 4 +++- .mozilla/firefox/profile/chrome/userChrome.css | 7 +------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf index 400754d..b89b3c6 100644 --- a/.config/picom/picom.conf +++ b/.config/picom/picom.conf @@ -9,7 +9,9 @@ shadow-offset-y = -32 shadow-opacity = 0.24 shadow-exclude = [ - "class_g = 'Thunderbird' && argb" + "class_g = 'firefox' && window_type = 'utility'", + "class_g = 'Tor Browser' && window_type = 'utility'", + "class_g = 'Thunderbird' && window_type = 'utility'" ] ################################# diff --git a/.mozilla/firefox/profile/chrome/userChrome.css b/.mozilla/firefox/profile/chrome/userChrome.css index 1698b72..2b90aee 100644 --- a/.mozilla/firefox/profile/chrome/userChrome.css +++ b/.mozilla/firefox/profile/chrome/userChrome.css @@ -70,11 +70,6 @@ treechildren::-moz-tree-separator { display: none !important; } -/* 弹出的工具栏去除半透明阴影, 防止与picom阴影效果重复 */ -box.panel-arrowcontent { - margin: 0px !important; -} - /* 弹出工具栏 */ panelview#widget-overflow-mainView vbox.panel-subview-body { display: block !important; @@ -85,7 +80,7 @@ panelview#widget-overflow-mainView vbox#widget-overflow-fixed-list { flex-wrap: wrap !important; } panelview#widget-overflow-mainView vbox#widget-overflow-fixed-list toolbarbutton { - width: calc(100% / 8) !important; + width: calc(100% / 10) !important; height: 40px !important; } panelview#widget-overflow-mainView vbox#widget-overflow-fixed-list label.toolbarbutton-text { From 4d72fa39ca271f81e6c88d710176ffa871972e58 Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 23 Aug 2021 22:19:45 +0800 Subject: [PATCH 47/54] Update firefox css: sidebar style --- .../firefox/profile/chrome/userChrome.css | 12 +++---- .../firefox/profile/chrome/userContent.css | 34 +++++++++++++------ 2 files changed, 30 insertions(+), 16 deletions(-) diff --git a/.mozilla/firefox/profile/chrome/userChrome.css b/.mozilla/firefox/profile/chrome/userChrome.css index 2b90aee..1f5e727 100644 --- a/.mozilla/firefox/profile/chrome/userChrome.css +++ b/.mozilla/firefox/profile/chrome/userChrome.css @@ -1,5 +1,5 @@ :root { - --frame-background-color: #445; + --frame-background-color: #2b2a33; } /* 隐藏标签栏 */ @@ -27,17 +27,17 @@ #sidebar-box[sidebarcommand="visualtab_xuldev_org-sidebar-action"] { z-index: 1000 !important; position: relative !important; - min-width: 28px !important; - max-width: 28px !important; + min-width: 35px !important; + max-width: 35px !important; } #sidebar-box[sidebarcommand="visualtab_xuldev_org-sidebar-action"] #sidebar { position: absolute !important; transition: all 0.1s; } #sidebar-box[sidebarcommand="visualtab_xuldev_org-sidebar-action"] #sidebar:not(:hover) { - width: 25px !important; - min-width: 25px !important; - max-width: 25px !important; + width: 35px !important; + min-width: 35px !important; + max-width: 35px !important; } #sidebar-box[sidebarcommand="visualtab_xuldev_org-sidebar-action"] #sidebar:hover { box-shadow: 2px 0 13px 0px #333333; diff --git a/.mozilla/firefox/profile/chrome/userContent.css b/.mozilla/firefox/profile/chrome/userContent.css index 7896446..d3db840 100644 --- a/.mozilla/firefox/profile/chrome/userContent.css +++ b/.mozilla/firefox/profile/chrome/userContent.css @@ -1,17 +1,17 @@ /* Visual Tabs */ @-moz-document regexp("^moz-extension://[a-zA-Z0-9-]+/sidebar/view\.html.*") { - :root[theme="light"] { - --background-color: #445 !important; + :root { + --background-color: #2b2a33 !important; --separator-color: black !important; } + #tabbox #tabList { + margin-top: 6px !important; + } #tabbox #tabList .tab { - background: #445 !important; + background: transparent !important; } #tabbox #tabList .tab .bar { - background: white !important; - } - #tabbox #tabList .tab[selected="true"] .bar { - background: #d0d0ff !important; + padding: 0 5px !important; } /* 固定标签栏 */ @@ -19,7 +19,6 @@ border-bottom: unset !important; } #tabbox #pinList:not(:empty) .tab { - margin-bottom: 15px !important; border-right-color: #d0d0ff !important; background: white !important; } @@ -44,20 +43,35 @@ #tabbox #tabList .tab .bar { height: 24px !important; } + + #tabbox #tabList .tab .bar .favicon { + padding: 12px !important; + background-color: white !important; + background-repeat: no-repeat !important; + background-position: center !important; + border-radius: 5px !important; + } + #tabbox #tabList .tab[selected="true"] .bar .favicon { + background-color: #d0d0ff !important; + } #tabbox #tabList .tab .bar .title { - color: #333 !important; + color: white !important; } body:not(:hover) #tabList .tab .bar .title { display: none !important; } #tabbox #tabList .tab[selected="true"] .bar .title { + color: #d0d0ff !important; font-weight: unset !important; } #tabbox #tabList .tab .line1 { display: none !important; } #tabbox #tabList .tab .line2 { - width: 7px !important; + width: 2px !important; + } + #tabbox #tabList .tab button.close { + filter: invert(1) !important; } #tabbox #tabList .tab .thumbnail { width: 100% !important; From 9335bda94772223d883a0f34551f6765afd5854d Mon Sep 17 00:00:00 2001 From: rydesun Date: Mon, 23 Aug 2021 23:54:11 +0800 Subject: [PATCH 48/54] Update firefox css: tab title --- .mozilla/firefox/profile/chrome/userContent.css | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.mozilla/firefox/profile/chrome/userContent.css b/.mozilla/firefox/profile/chrome/userContent.css index d3db840..f04cd05 100644 --- a/.mozilla/firefox/profile/chrome/userContent.css +++ b/.mozilla/firefox/profile/chrome/userContent.css @@ -56,12 +56,16 @@ } #tabbox #tabList .tab .bar .title { color: white !important; + background: #404040 !important; + margin-left: 6px !important; + padding: 4px 8px !important; + border-radius: 12px 0 0 12px !important; } body:not(:hover) #tabList .tab .bar .title { display: none !important; } #tabbox #tabList .tab[selected="true"] .bar .title { - color: #d0d0ff !important; + color: #90c0ff !important; font-weight: unset !important; } #tabbox #tabList .tab .line1 { From dde3a2b72237e62b7e907fc6f995e5f207d3f4f0 Mon Sep 17 00:00:00 2001 From: rydesun Date: Tue, 24 Aug 2021 13:20:26 +0800 Subject: [PATCH 49/54] refactor kitty config --- .config/kitty/kitty.conf | 46 +++++++++------------------- .config/kitty/themes/everforest.conf | 21 +++++++++++++ .config/zsh/zshrc | 2 +- 3 files changed, 36 insertions(+), 33 deletions(-) create mode 100644 .config/kitty/themes/everforest.conf diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index f25c2aa..48947f5 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -1,41 +1,23 @@ +# 主题 +include themes/everforest.conf +font_size 9 +background_opacity 0.95 + +# 使用nvim查看缓冲区 +scrollback_pager nvim --cmd "let $NVIM_AS_COLORFUL_PAGER=1" +# 关闭响铃 +enable_audio_bell no +window_alert_on_bell no + +# 按键映射 kitten_alias hints hints --alphabet [;ajfkdlshgqweruiopzxcvnmbyt12345 map ctrl+g>ctrl+g kitten hints --type=word --program - map ctrl+g>shift+g kitten hints --type=word --program @ -map ctrl+g>ctrl+n kitten hints --type=linenum nvim +{line} {path} map ctrl+g>ctrl+l kitten hints --type=line --program - map ctrl+g>shift+l kitten hints --type=line --program @ map ctrl+g>ctrl+u kitten hints --type=url --program - map ctrl+g>shift+u kitten hints --type=url --program @ map ctrl+g>ctrl+i kitten hints --type=ip --program - map ctrl+g>shift+i kitten hints --type=ip --program @ - -scrollback_pager nvim --cmd "let $NVIM_AS_PAGER=1" --cmd "let $HANDLE_ANSI=1" - -font_size 9 - -enable_audio_bell no -window_alert_on_bell no - -background_opacity 0.95 - -foreground #d3c6aa -background #2b3339 -cursor #7fbbb3 - -color0 #4b565c -color1 #e67e80 -color2 #a7c080 -color3 #dbbc7f -color4 #7fbbb3 -color5 #d699b6 -color6 #83c092 -color7 #d3c6aa - -color8 #4b565c -color9 #e67e80 -color10 #a7c080 -color11 #dbbc7f -color12 #7fbbb3 -color13 #d699b6 -color14 #83c092 -color15 #d3c6aa +map ctrl+g>ctrl+n kitten hints --type=linenum nvim +{line} {path} +map ctrl+g>ctrl+y kitten hints --type=hyperlink diff --git a/.config/kitty/themes/everforest.conf b/.config/kitty/themes/everforest.conf new file mode 100644 index 0000000..b52967d --- /dev/null +++ b/.config/kitty/themes/everforest.conf @@ -0,0 +1,21 @@ +foreground #d3c6aa +background #2b3339 +cursor #7fbbb3 + +color0 #4b565c +color1 #e67e80 +color2 #a7c080 +color3 #dbbc7f +color4 #7fbbb3 +color5 #d699b6 +color6 #83c092 +color7 #d3c6aa + +color8 #4b565c +color9 #e67e80 +color10 #a7c080 +color11 #dbbc7f +color12 #7fbbb3 +color13 #d699b6 +color14 #83c092 +color15 #d3c6aa diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 4fb2bb2..65c5e46 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -221,7 +221,7 @@ mcd() { mkdir -p $1 && cd $1 } alias x='xdg-open' alias v="nvim -R --cmd 'let \$NVIM_AS_PAGER=1'" \ && compdef v=nvim # 使用neovim作为pager -alias V="nvim -R --cmd 'let \$NVIM_AS_PAGER=1' --cmd 'let \$HANDLE_ANSI=1'" \ +alias V="nvim -R --cmd 'let \$NVIM_AS_COLORFUL_PAGER=1'" \ && compdef V=nvim # 使用neovim作为pager,支持ANSI code if [[ -e $NVIM_LISTEN_ADDRESS ]]; then alias e='nvr --remote-tab' From e4aa76ac6e034d8137ff1057b75d1828ac1ba2f2 Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 25 Aug 2021 03:03:30 +0800 Subject: [PATCH 50/54] Rewrite zsh config --- .config/zsh/.gitignore | 1 - .config/zsh/hostrc.d/funcs.zsh | 8 - .config/zsh/theme | 21 +++ .config/zsh/zshrc | 302 ++++++++++++++++----------------- 4 files changed, 172 insertions(+), 160 deletions(-) delete mode 100644 .config/zsh/.gitignore delete mode 100644 .config/zsh/hostrc.d/funcs.zsh create mode 100644 .config/zsh/theme diff --git a/.config/zsh/.gitignore b/.config/zsh/.gitignore deleted file mode 100644 index 7006e11..0000000 --- a/.config/zsh/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/hostrc.d/env.zsh diff --git a/.config/zsh/hostrc.d/funcs.zsh b/.config/zsh/hostrc.d/funcs.zsh deleted file mode 100644 index b44d8f8..0000000 --- a/.config/zsh/hostrc.d/funcs.zsh +++ /dev/null @@ -1,8 +0,0 @@ -# Arch Linux -alias pmq='pacman -Qs' -alias pms='pacman -Ss' -pmi() { pacman -Qi $1 2>/dev/null || pacman -Sii $1 } -pmo() { pacman -Qoq $1 2>/dev/null || pkgfile -i $1 } -pml() { (pacman -Qlq $1 2>/dev/null || pkgfile -lq $1) | sed '/\/$/d' } -pmb() { (pacman -Qlq $1 2>/dev/null || pkgfile -lq $1) | awk -F/ '/\/usr\/bin\/.+[^/]$/{print $NF}' } -pmd() { (pacman -Qlq $1 2>/dev/null || pkgfile -lq $1) | grep -e '\.service$' -e '\.socket$' } diff --git a/.config/zsh/theme b/.config/zsh/theme new file mode 100644 index 0000000..6766ee1 --- /dev/null +++ b/.config/zsh/theme @@ -0,0 +1,21 @@ +_theme_use_icon() { + _PROMPT_ERR="%{$fg[red]%} %{$reset_color%}" + _PROMPT_OK="%{$fg[green]%} %{$reset_color%}" + _PROMPT_USER=%{$fg[blue]%}\$%{$reset_color%} + _PROMPT_ROOT=%{$fg[red]%}#%{$reset_color%} + _PROMPT_SSH=' ' + _PROMPT_NVIM=' ' + _PROMPT_PYVENV=' ' + _PROMPT_NVM=' ' +} + +_theme_use_text() { + _PROMPT_ERR=%{$fg_bold[red]%}X%{$reset_color%} + _PROMPT_OK=%{$fg_bold[green]%}O%{$reset_color%} + _PROMPT_USER=%{$fg_bold[blue]%}\$%{$reset_color%} + _PROMPT_ROOT=%{$fg_bold[red]%}#%{$reset_color%} + _PROMPT_SSH=SSH + _PROMPT_NVIM=Vim + _PROMPT_PYVENV=Python + _PROMPT_NVM=Node +} diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index 65c5e46..f94dd35 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -1,29 +1,63 @@ -# 基础配置 -setopt no_beep # 不响铃 -setopt correct # 修正命令 -setopt interactive_comments # 交互模式支持注释 -bindkey -e # Emacs按键绑定 +# <<< 环境 +_ZSH_DATA_DIR=${XDG_DATA_HOME}/zsh +_ZSH_CACHE_DIR=${XDG_CACHE_HOME}/zsh +_ZSH_PLUG_DIR=${XDG_DATA_HOME}/zinit -fpath=(${ZDOTDIR}/functions ${ZDOTDIR}/Completion $fpath) +[[ ${UID} == 0 || ${EUID} == 0 ]] && _ENV_ROOT=1 +[[ -n ${SSH_CLIENT:-${SSH_TTY}} ]] && _ENV_SSH=1 +[[ -n ${NVIM_LISTEN_ADDRESS} ]] && _ENV_NVIM=1 +[[ -n ${VIRTUAL_ENV} ]] && _ENV_PYVENV=1 +[[ -n ${NVM_BIN} ]] && _ENV_NVM=1 +[[ ${TERM} == *'-kitty' ]] && _ENV_MODERN_UI=1 -# 插件 <<<------------------------------ +# 外部资源 +_SRC_GIT_PROMPT=/usr/share/git/completion/git-prompt.sh +_SRC_FZF_COMPLETION=/usr/share/fzf/completion.zsh +_SRC_FZF_KEYBIND=/usr/share/fzf/key-bindings.zsh +_SRC_PKGFILE_HINT=/usr/share/doc/pkgfile/command-not-found.zsh +# >>>----------------------------------- + + +# <<< 选项 +setopt correct # 改正输错的命令 +setopt interactive_comments # 交互模式下允许注释 +HISTSIZE=10000 +SAVEHIST=100000 +setopt share_history # 多个实例共享历史记录 +setopt hist_ignore_dups # 不记录多条连续重复的历史 +setopt hist_reduce_blanks # 删除历史记录中的空行 +setopt hist_find_no_dups # 查找历史记录时忽略重复项 +# >>>----------------------------------- + + +# <<< 插件 declare -A ZINIT -ZINIT[HOME_DIR]=${XDG_DATA_HOME}/zinit -ZINIT[BIN_DIR]=${ZINIT[HOME_DIR]}/bin -ZINIT[ZCOMPDUMP_PATH]=${XDG_CACHE_HOME}/zsh/zcompdump-${ZSH_VERSION} +ZINIT[HOME_DIR]=${_ZSH_PLUG_DIR} +ZINIT[BIN_DIR]=${_ZSH_PLUG_DIR}/bin +ZINIT[ZCOMPDUMP_PATH]=${_ZSH_CACHE_DIR}/zcompdump-${ZSH_VERSION} source ${ZINIT[BIN_DIR]}/zinit.zsh zinit light zdharma/fast-syntax-highlighting # 语法高亮 zinit ice lucid wait atload='_zsh_autosuggest_start' -zinit light zsh-users/zsh-autosuggestions # 提示建议 +zinit light zsh-users/zsh-autosuggestions # 提示历史命令 zinit ice lucid wait -zinit light 'hlissner/zsh-autopair' # 自动闭合符号 +zinit light hlissner/zsh-autopair # 闭合成对符号 zinit light zsh-users/zsh-completions # 更多命令补全 zinit light skywind3000/z.lua # 快速跳转目录 -# z.lua <<<----------------------------- +# 主题 +autoload -Uz colors && colors +source ${ZDOTDIR}/theme +((_ENV_MODERN_UI)) && _theme_use_icon || _theme_use_text + +# 其他 +fpath+=(${ZDOTDIR}/functions ${ZDOTDIR}/Completion) +# function: 模仿fish折叠路径 +autoload -Uz fish_collapsed_pwd +# >>>----------------------------------- +# <<< z.lua (var) # 数据文件路径 -export _ZL_DATA=${XDG_DATA_HOME}/zsh/zlua +export _ZL_DATA=${_ZSH_DATA_DIR}/zlua # 仅在当前路径$PWD改变时才更新数据库 export _ZL_ADD_ONCE=1 # 在跳转后显示目标路径名称 @@ -31,29 +65,70 @@ export _ZL_ECHO=1 # 增强匹配模式 export _ZL_MATCH_MODE=1 # >>>----------------------------------- -# zsh-autosuggestions <<<--------------- +# <<< zsh-autosuggestions (var) # 建议策略: history, completion, match_prev_cmd ZSH_AUTOSUGGEST_STRATEGY=(history completion) # 开启异步模式 ZSH_AUTOSUGGEST_USE_ASYNC=1 # >>>----------------------------------- -# pkgfile: 命令找不到时提示安装包 -if [[ -f /usr/share/doc/pkgfile/command-not-found.zsh ]]; then - source /usr/share/doc/pkgfile/command-not-found.zsh -fi -# function: 模仿fish折叠路径 -autoload -Uz fish_collapsed_pwd + + +# <<< 提示符 +setopt transient_rprompt # 右提示符只出现一次 +# git状态 +[[ -f $_SRC_GIT_PROMPT ]] && source $_SRC_GIT_PROMPT +GIT_PS1_SHOWDIRTYSTATE=1 +GIT_PS1_SHOWSTASHSTATE=1 +GIT_PS1_SHOWUNTRACKEDFILES=1 +GIT_PS1_STATESEPARATOR= +GIT_PS1_SHOWUPSTREAM="auto" +GIT_PS1_DESCRIBE_STYLE="default" + +precmd() { + local last_status=$? + local prompt_array=() + + # 上一条命令的运行结果 + if [ $last_status -ne 0 ]; then + prompt_array+=$_PROMPT_ERR + else + prompt_array+=$_PROMPT_OK + fi + + # git状态 + if command -v __git_ps1 &>/dev/null; then + local git_status=$(__git_ps1 "%s") + if [[ -n $git_status ]]; then + prompt_array+=%{$fg[red]%}${git_status}%{$reset_color%} + fi + fi + + # 工作目录 + if command -v fish_collapsed_pwd &>/dev/null; then + prompt_array+=%{$fg[magenta]%}$(fish_collapsed_pwd)%{$reset_color%} + else + prompt_array+=$PWD + fi + + ((_ENV_PYVENV)) && prompt_array+=$_PROMPT_PYVENV + ((_ENV_NVM)) && prompt_array+=$_PROMPT_NVM + ((_ENV_NVIM)) && prompt_array+=$_PROMPT_NVIM + ((_ENV_SSH)) && prompt_array+=$_PROMPT_SSH + + # 用户类型 + if ((_ENV_ROOT)); then + prompt_array+=$_PROMPT_ROOT + else + prompt_array+=$_PROMPT_USER + fi + + PROMPT=" $prompt_array " +} +((_ENV_SSH)) && RPROMPT="%{$bg[red]$fg[black]%} %n@%m %{$reset_color%}" # >>>----------------------------------- -# 历史记录 <<<-------------------------- -HISTSIZE=10000 -SAVEHIST=100000 -setopt share_history -# 去掉重复和空白 -setopt hist_ignore_dups hist_reduce_blanks hist_find_no_dups -# >>>----------------------------------- -# 命令补全 <<<-------------------------- +# <<< 补全 autoload -Uz compinit # 指定缓存文件所在目录必须先确保该目录存在 if [[ ! -d ${XDG_CACHE_HOME}/zsh/ ]]; then @@ -63,187 +138,112 @@ compinit -d ${XDG_CACHE_HOME}/zsh/zcompdump-${ZSH_VERSION} # 补全失败时的提示 zstyle ':completion:*:warnings' format $'\e[31m -- No Matches Found --\e[0m' -setopt complete_aliases # 补全别名 -setopt list_packed # 补全列表压缩列宽 +setopt complete_aliases # 补全alias +setopt list_packed # 减小补全列表的列宽 zstyle :compinstall filename ${ZDOTDIR}/zshrc zstyle ':completion:*' menu select # 模糊修正 zstyle ':completion:*' matcher-list '' 'm:{-a-zA-Z}={_A-Za-z}' + # fzf -if [[ -f /usr/share/fzf/completion.zsh ]]; then - source /usr/share/fzf/completion.zsh -fi +[[ -f $_SRC_FZF_COMPLETION ]] && source $_SRC_FZF_COMPLETION export FZF_COMPLETION_TRIGGER='' export FZF_DEFAULT_COMMAND='fd -uu -E .git -E .node_modules' export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" compdef proxychains=command -# 当前环境的配置 -for i in ${ZDOTDIR}/hostrc.d/*.zsh; do -if [[ -f $i ]]; then - source $i -fi -done; unset i +# 命令找不到时提示软件名(通过pkgfile) +[[ -f ${_SRC_PKGFILE_HINT} ]] && source ${_SRC_PKGFILE_HINT} # >>>----------------------------------- -# 按键绑定 <<<-------------------------- -# 用$EDITOR编辑命令 -autoload -Uz edit-command-line -zle -N edit-command-line -bindkey '^X^E' edit-command-line + +# <<< 按键绑定 +bindkey -e # emacs风格 # 修改清屏方式 # 将内容挤出屏幕而不是直接清空 scroll-and-clear-screen() { printf '\n%.0s' {1..$LINES} zle clear-screen -} -zle -N scroll-and-clear-screen +} && zle -N scroll-and-clear-screen bindkey '^l' scroll-and-clear-screen # fzf -if [[ -f /usr/share/fzf/key-bindings.zsh ]]; then - source /usr/share/fzf/key-bindings.zsh -fi +[[ -f ${_SRC_FZF_KEYBIND} ]] && source ${_SRC_FZF_KEYBIND} +# 替换默认的fzf widget bindkey '^T' fzf-completion # 恢复TAB键的行为 bindkey '^I' $fzf_default_completion +# 让 / 作为分隔符 # 默认 WORDCHARS='*?_-.[]~=/&;!#$%^(){}<>' export WORDCHARS='*?_-.[]~=&;!#$%^(){}<>' # >>>----------------------------------- -# 提示符 <<<---------------------------- -setopt prompt_subst -autoload -Uz promptinit -promptinit -autoload -Uz colors -colors -setopt transient_rprompt # 右提示符只出现一次 -if [[ -n ${_SPEC_color_host} ]]; then - _color_host=${_SPEC_color_host} -else - _color_host=$'%{\e[38;2;199;146;234m%}' -fi -_color_invert=$'%{\e[7m%}' -_color_reset=$'%{\e[0m%}' -if [[ -z ${_SPEC_PROMPT_disable_icon} ]]; then - _icon_error=" 😈" - _icon_gitdir="  " -fi - -ZLE_RPROMPT_INDENT=-1 # 去掉右提示符右侧多余空白 -precmd() { - # 上一条命令的运行结果 - if [ $? -ne 0 ]; then - PROMPT_err=${_icon_error:-E} - else - PROMPT_err="" - fi - - if command -v fish_collapsed_pwd &>/dev/null; then - _collapsed_pwd=$(fish_collapsed_pwd) - fi - if ! (($DISABLE_RPROMPT_host)); then - PROMPT_host="${_color_host}${_color_invert} %n@%m ${_color_reset}" - fi - # ssh标志 - if [ -n "$SSH_CLIENT" ] || [ -n "$SSH_TTY" ]; then - PROMPT_ssh="%{$bg[yellow]$fg[black]%} ssh %{$reset_color%}" - else - PROMPT_ssh="" - fi - # tmux标志 - if [ -n "$TMUX" ]; then - PROMPT_tmux="%{$bg[green]$fg[black]%} tmux %{$reset_color%}" - else - PROMPT_tmux="" - fi - # python virtualenv标志 - if [ -n "$VIRTUAL_ENV" ]; then - PROMPT_pyvenv="%{$bg[cyan]$fg[white]%} pyvenv %{$reset_color%}" - else - PROMPT_pyvenv="" - fi - # nvm标志 - if [ -n "$NVM_BIN" ]; then - PROMPT_nvm="%{$bg[cyan]$fg[white]%} nvm %{$reset_color%}" - else - PROMPT_nvm="" - fi - if command -v __git_ps1 &>/dev/null; then - PROMPT_git=$(__git_ps1 " %s${_icon_gitdir:-)}") - fi - PROMPT_cwd=${_collapsed_pwd} - if [[ $UID == 0 || $EUID == 0 ]]; then - PROMPT_tail=" # " - else - PROMPT_tail=" $ " - fi - - PROMPT="${_color_host}${PROMPT_sign}${PROMPT_err}${PROMPT_git} ${PROMPT_cwd}${PROMPT_tail}${_color_reset}" - RPROMPT="${PROMPT_pyvenv}${PROMPT_nvm}${PROMPT_tmux}${PROMPT_ssh}${PROMPT_host}" - - # 设置终端标题 - print -n "\e]0;zsh ( ${_collapsed_pwd} )\a" -} -# git <<<------------------------------- -if [[ -f /usr/share/git/completion/git-prompt.sh ]]; then - source /usr/share/git/completion/git-prompt.sh -fi -GIT_PS1_SHOWDIRTYSTATE=1 -GIT_PS1_SHOWSTASHSTATE=1 -GIT_PS1_SHOWUNTRACKEDFILES=1 -GIT_PS1_STATESEPARATOR= -GIT_PS1_SHOWUPSTREAM="auto" -GIT_PS1_DESCRIBE_STYLE="default" -# >>>----------------------------------- -# >>>----------------------------------- - -# 命令别名 <<<----------------------------- -# sudo后面的命令可以是别名 +# <<< alias, function +# sudo后面的命令可以是alias alias sudo='sudo ' -# 设置命令默认行为 + +# 命令的默认行为 alias ls='ls --color=auto --time-style=iso --human-readable --hyperlink=auto' alias grep='grep --color=auto' alias diff='diff --color=auto' alias mv='mv -i' alias mitmproxy="mitmproxy --set confdir=$XDG_CONFIG_HOME/mitmproxy" alias mitmweb="mitmweb --set confdir=$XDG_CONFIG_HOME/mitmproxy" +if command -v kitty &>/dev/null; then + alias ssh='kitty +kitten ssh' + alias rg='kitty +kitten hyperlinked_grep' +fi alias sl='ls' alias l='ls -l' alias la='ls -Al' -mcd() { mkdir -p $1 && cd $1 } +# 命令缩写 alias x='xdg-open' alias v="nvim -R --cmd 'let \$NVIM_AS_PAGER=1'" \ && compdef v=nvim # 使用neovim作为pager alias V="nvim -R --cmd 'let \$NVIM_AS_COLORFUL_PAGER=1'" \ && compdef V=nvim # 使用neovim作为pager,支持ANSI code -if [[ -e $NVIM_LISTEN_ADDRESS ]]; then +if [[ -e $_ENV_NVIM ]]; then alias e='nvr --remote-tab' else alias e='nvim' && compdef e=nvim fi alias g='git' && compdef g=git -alias py='python' && compdef py=python -alias config='/usr/bin/git --git-dir=$HOME/.myconf/ --work-tree=$HOME' && compdef config=git -alias config.edit='GIT_DIR=$HOME/.myconf GIT_WORK_TREE=$HOME nvim' && compdef config.edit=nvim -alias ssh='kitty +kitten ssh' -alias rg='kitty +kitten hyperlinked_grep' -alias mountdisk="mount | grep -E '^(/dev/sd|/dev/nvme|/dev/mmcblk|gvfsd-fuse)' | awk '{print \$1 \"\t\" \$5 \"\t\" \$3 \"\n\t\t\" \$6}'" +alias cfg='GIT_DIR=$HOME/.myconf GIT_WORK_TREE=$HOME git' && compdef cfg=git +alias cfg.e='GIT_DIR=$HOME/.myconf GIT_WORK_TREE=$HOME nvim' && compdef cfg.e=nvim + +mcd() { mkdir -p $1 && cd $1 } +mountdisk() { + mount | grep -E '^(/dev/sd|/dev/nvme|/dev/mmcblk|gvfsd-fuse)' | \ + awk '{print $1 "\t" $5 "\t" $3 "\n\t\t" $6}' +} + +# Arch Linux +alias pmq='pacman -Qs' +alias pms='pacman -Ss' +pmi() { pacman -Qi $1 2>/dev/null || pacman -Sii $1 } +pmo() { pacman -Qoq $1 2>/dev/null || pkgfile -i $1 } +pml() { (pacman -Qlq $1 2>/dev/null || pkgfile -lq $1) | sed '/\/$/d' } +pmb() { (pacman -Qlq $1 2>/dev/null || pkgfile -lq $1) | awk -F/ '/\/usr\/bin\/.+[^/]$/{print $NF}' } +pmd() { (pacman -Qlq $1 2>/dev/null || pkgfile -lq $1) | grep -e '\.service$' -e '\.socket$' } # >>>----------------------------------- + +# <<< 自动执行 # neovim终端中的zsh自动设置neovim的工作目录 -if [[ -e $NVIM_LISTEN_ADDRESS ]]; then +if ((_ENV_NVIM)); then function nvim_lcd() { emulate -L zsh nvr +"lcd $PWD" } - chpwd_functions=(${chpwd_functions[@]} "nvim_lcd") + chpwd_functions+=nvim_lcd fi +# >>>----------------------------------- -# vim: foldmethod=marker:foldmarker=<<<---,>>>--- + +# vim: foldmethod=marker:foldmarker=<<<,>>>:foldlevel=0 From a70cd361b73010c726e3e337f495a560b51de1cd Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 25 Aug 2021 03:12:52 +0800 Subject: [PATCH 51/54] Remove aria2 --- .config/aria2/aria2.conf | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 .config/aria2/aria2.conf diff --git a/.config/aria2/aria2.conf b/.config/aria2/aria2.conf deleted file mode 100644 index 860d659..0000000 --- a/.config/aria2/aria2.conf +++ /dev/null @@ -1,13 +0,0 @@ -continue -dir=/home/rydesun/Userdata/Downloads -file-allocation=falloc -log-level=warn -enable-http-pipelining=true -max-connection-per-server=5 -min-split-size=5M -summary-interval=0 - -# BT -max-overall-upload-limit=512K -max-upload-limit=128K -bt-seed-unverified=true From 821b8608dfbe8a3e9e3a01c57a507ced2e72082b Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 25 Aug 2021 05:07:14 +0800 Subject: [PATCH 52/54] Update zsh functions --- .config/zsh/functions/fish_collapsed_pwd | 56 +++++++++--------------- 1 file changed, 21 insertions(+), 35 deletions(-) diff --git a/.config/zsh/functions/fish_collapsed_pwd b/.config/zsh/functions/fish_collapsed_pwd index 8b38cff..46a3d6e 100644 --- a/.config/zsh/functions/fish_collapsed_pwd +++ b/.config/zsh/functions/fish_collapsed_pwd @@ -1,42 +1,28 @@ -# https://zhuanlan.zhihu.com/p/51008087 () { - local pwd="$1" - # fix end slash - local home="${HOME%/}" - local size=${#home} - [[ $# == 0 ]] && pwd="$PWD" - # fix end slash - pwd=${pwd%/} + [[ $# == 0 ]] && local pwd="$PWD" || local pwd=$1 + [[ -z "$pwd" || "$pwd" == "/" ]] && echo $pwd && return - [[ -z "$pwd" ]] && return - if [[ "$pwd" == "/" ]]; then - echo "/" - return - elif [[ "$pwd" == "$home" ]]; then - echo "~" - return - fi - [[ "$pwd" == "$home/"* ]] && pwd="~${pwd:$size}" - if [[ -n "$BASH_VERSION" ]]; then - local IFS="/" - local elements=($pwd) - local length=${#elements[@]} - for ((i=0;i 1 ]]; then + local c=${elem:0:1} + if [[ $c == '.' ]]; then + elements[$i]=${elem:0:2} + else elements[$i]=${elem:0:1} fi - done - else - local elements=("${(s:/:)pwd}") - local length=${#elements} - for i in {1..$((length-1))}; do - local elem=${elements[$i]} - if [[ ${#elem} > 1 ]]; then - elements[$i]=${elem[1]} - fi - done - fi + fi + done + local IFS="/" echo "${elements[*]}" } From ad7bd31f02b5f891a5ea6babce6b433260539c8b Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 25 Aug 2021 11:39:15 +0800 Subject: [PATCH 53/54] Fix fontconfig: nerdfonts --- .config/fontconfig/conf.d/50-generic.conf | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.config/fontconfig/conf.d/50-generic.conf b/.config/fontconfig/conf.d/50-generic.conf index 2ab3d4b..5d3a172 100644 --- a/.config/fontconfig/conf.d/50-generic.conf +++ b/.config/fontconfig/conf.d/50-generic.conf @@ -87,4 +87,21 @@ + + + HarmonyOS Sans + + + + charset + + + 0xE78D + 0xE796 + + + + + + From 0fe92542a094df2a524e1264aa725d90ad546519 Mon Sep 17 00:00:00 2001 From: rydesun Date: Wed, 25 Aug 2021 16:57:35 +0800 Subject: [PATCH 54/54] Update zsh: plugins --- .config/zsh/zshrc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.config/zsh/zshrc b/.config/zsh/zshrc index f94dd35..c8b0269 100644 --- a/.config/zsh/zshrc +++ b/.config/zsh/zshrc @@ -37,14 +37,19 @@ ZINIT[BIN_DIR]=${_ZSH_PLUG_DIR}/bin ZINIT[ZCOMPDUMP_PATH]=${_ZSH_CACHE_DIR}/zcompdump-${ZSH_VERSION} source ${ZINIT[BIN_DIR]}/zinit.zsh +zinit ice lucid wait zinit light zdharma/fast-syntax-highlighting # 语法高亮 zinit ice lucid wait atload='_zsh_autosuggest_start' zinit light zsh-users/zsh-autosuggestions # 提示历史命令 -zinit ice lucid wait -zinit light hlissner/zsh-autopair # 闭合成对符号 zinit light zsh-users/zsh-completions # 更多命令补全 +zinit ice lucid wait zinit light skywind3000/z.lua # 快速跳转目录 +# git扩展 +zinit ice lucid wait'1' as"program" pick"$ZPFX/bin/git-*" \ + src"etc/git-extras-completion.zsh" make"PREFIX=$ZPFX" +zinit light tj/git-extras + # 主题 autoload -Uz colors && colors source ${ZDOTDIR}/theme @@ -68,8 +73,6 @@ export _ZL_MATCH_MODE=1 # <<< zsh-autosuggestions (var) # 建议策略: history, completion, match_prev_cmd ZSH_AUTOSUGGEST_STRATEGY=(history completion) -# 开启异步模式 -ZSH_AUTOSUGGEST_USE_ASYNC=1 # >>>-----------------------------------