Files
dotfiles/fish/add-on.fish
FlintyLemming 3a9506b6d9 add ssh server
2025-12-19 13:54:43 +08:00

66 lines
1.9 KiB
Fish
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 替换 ls 默认行为
function ls --description 'alias ls to eza if possible'
# 1. 优先使用系统安装的 eza (PATH 里的)
if type -q eza
eza -la --icons $argv
return
end
# 2. 如果系统没有,尝试根据架构寻找 ~/.flinty/bin 下的二进制文件
set -l arch (uname -m)
set -l target_bin ""
set -l bin_path "$HOME/.flinty/bin"
switch $arch
case x86_64
# 如果是 Alpine Linux通常需要用 musl 版本 (根据你提供的文件名)
if test -f /etc/alpine-release
set target_bin "eza_x86_64-unknown-linux-musl"
else
set target_bin "eza_x86_64-unknown-linux-gnu"
end
case aarch64 arm64
set target_bin "eza_aarch64-unknown-linux-gnu"
end
set -l custom_eza "$bin_path/$target_bin"
# 3. 检查文件是否存在且可执行
if test -n "$target_bin"; and test -x "$custom_eza"
$custom_eza -la --icons $argv
return
end
# 4. 既没有系统 eza 也没有本地二进制,回退到 command ls
command ls -la $argv
end
## 更新配置
function dotu
set -l current_dir (pwd)
cd $HOME/.flinty
if git pull
source ~/.config/fish/config.fish
echo "Config reloaded successfully!"
end
# 回到原位
cd $current_dir
end
## 修复光标消失
function restore_cursor --on-event fish_postexec
tput cnorm
end
# 检查当前的 LANG 是否包含 UTF-8忽略大小写修复 nano 无法输入中文的问题
if not string match -qi "*UTF-8" "$LANG"
# 如果当前没有设置或者不是 UTF-8则尝试设置为 zh_CN.UTF-8
# 如果你更偏好英文界面但要中文输入,这里也可以写 en_US.UTF-8
set -gx LANG zh_CN.UTF-8
set -gx LC_ALL zh_CN.UTF-8
end
abbr -a port 'sudo ss -tulnp | grep'
abbr -a process 'ps aux | grep'