Files
2026-07-21 20:41:20 +01:00

57 lines
1.1 KiB
Fish

set -gx fish_greeting
function nix
if test "$argv[1]" = "develop"; and test (count $argv) -eq 1
command nix develop -c fish $argv[2..-1]
else if test "$argv[1]" = "shell"
env IN_NIX_SHELL=shell nix $argv -c fish
else
command nix $argv
end
end
function a
for arg in $argv
if string match -q '*/' $arg
mkdir -p $arg
else
mkdir -p (dirname $arg)
touch $arg
end
end
end
function g
if git rev-parse --git-dir >/dev/null 2>&1
gitui
else
echo "Not inside a Git repository."
end
end
function y
set tmp (mktemp -t "yazi-cwd.XXXXXX")
yazi $argv --cwd-file="$tmp"
if set cwd (cat -- "$tmp"); and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
builtin cd -- "$cwd"
end
end
function editor
set pos (cat ~/dotfiles/.pos)
y $pos
if test -e ./p.vim
set cmd nvim -S ./p.vim
else
set cmd nvim
end
if test -e ./flake.nix
and not contains -- "$IN_NIX_SHELL" pure impure
and command nix develop --command true 2>/dev/null
command nix develop --command $cmd
else
command $cmd
end
echo $PWD > ~/dotfiles/.pos
end