mirror of
https://github.com/DictXiong/dotfiles.git
synced 2026-08-24 16:06:52 +08:00
* feat(riot): support literal ipv6 addresses (with or without ports given) feat(riot): -v, -4, and -6 fix(riot): do not call external binaries if possible * feat(riot): command git * build(riot-config): nasp.fit -> jump.nasp.fit * feat: add bnd and nor and completions * fix(zshrc): bnd exit when build error * fix(tmux): press ^a twice to send ^a * feat(riot): sshl supports specifying local port and unix sock * feat(riot): sshr for ssh -R * feat(riot): -o ServerAliveInterval=60 * feat(riot): conditionally RequestTTY * feat: zsh completion for beam and beaml * fix(frigg): ddns get ip * fix(riot): tmux error with window number and spaces The fix to spaces is just a workaround. Issue may still exist when command contains spaces. * feat(riot): ControlPersist=60s * fix(ci): riot * feat(tmux): prevent tmux from exiting copy mode after selection with mouse see: - https://www.reddit.com/r/tmux/comments/v73005/how_to_prevent_tmux_from_exiting_copy_mode_after/ - https://www.reddit.com/r/tmux/comments/1ltms6a/how_to_select_text_in_tmux_without_having_it_jump/ * feat(tmux): F12 to passthru * fix(riot): ControlPersist 60s -> 5s * feat: sne: search and edit * feat(ssh): add key ip17/sep * feat(tmux): press ESC to exit copy mode * feat(ssh): add key sk1/piv/9a * feat(ssh): add key sk1/fido2 * feat(ssh): add key openpgp:0x8774BF70 and remove key ip14/sep and ltp2 (asu127) * feat(sagent): sagt gpg; improve code * feat(sagent): check pinentry and give notes * feat(riot): add GPG agent forwarding Signed-off-by: Dict Xiong <me@beardic.cn> * feat: gitconf add gpg signature; remove macos from ci * feat(eid): add sk1 9a cert * feat(riot): better help and fix option quite->quiet * feat(riot): separate command options from riot options * feat(sagt): gpg-pin and associated tests * feat(riot): zsh completions * fix: Apply suggestions from code review Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * fix(riot): simplify and secure * fix: syntax --------- Signed-off-by: Dict Xiong <me@beardic.cn> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
32 lines
690 B
Bash
Executable File
32 lines
690 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
if [ "$#" -eq 0 ]; then
|
|
echo "usage: sne <filename or regex pattern>"
|
|
echo "example: sne config.yaml"
|
|
exit 1
|
|
fi
|
|
|
|
SEARCH_PATTERN="$1"
|
|
files=()
|
|
while IFS= read -r -d $'\0' file; do
|
|
files+=("$file")
|
|
done < <(fd "$SEARCH_PATTERN" --type f --print0)
|
|
file_count=${#files[@]}
|
|
if [ "$file_count" -eq 0 ]; then
|
|
echo "no file match '$SEARCH_PATTERN'"
|
|
exit 0
|
|
fi
|
|
echo "🔎 found $file_count files:"
|
|
for file in "${files[@]}"; do
|
|
echo " 📄 $file"
|
|
done
|
|
echo "----------------------------------------"
|
|
|
|
read -r -p "edit? [Y/n] " response
|
|
response=${response:-Y}
|
|
if [[ "$response" =~ ^[Yy]$ ]]; then
|
|
vim "${files[@]}"
|
|
else
|
|
echo "❌ aborted"
|
|
fi
|