$env.config = { show_banner: false table: { mode: reinforced padding: { left: 0, right: 0 } header_on_separator: true } completions: { algorithm: "fuzzy" } cursor_shape: { vi_insert: line vi_normal: block } edit_mode: vi shell_integration: true use_kitty_protocol: true highlight_resolved_externals: true history: { file_format: "sqlite" isolation: true } keybindings: [ { name: new_line_shift modifier: shift keycode: enter mode: vi_insert event: { edit: insertnewline } }, ] } # Aliases def l [path: glob = "."] { ls $path | sort-by type } def ll [path: glob = "."] { ls -la $path | sort-by type } def la [path: glob = "."] { ls -a $path | sort-by type } alias nv = nvim alias nvide = & neovide "--no-fork" # Misc functions def --env mkdircd [p: string] { mkdir $p cd $p } def wldd [path: string] { match (which $path) { [{ path: $p }] => { ldd $p }, _ => { error make { msg: $"No external command ($path)" } }, } } def viewdoc [f: path] { let inp = $f | path parse match $inp.extension { $e if $e in [ "doc", "docx", "odt", "ppt", "pptx", "odp" ] => { let outp = { extension: "pdf", parent: "/tmp", stem: $inp.stem } | path join libreoffice --convert-to pdf $f --outdir /tmp try { zathura $outp } rm $outp }, "pdf" => { zathura $f }, "html" => { openbrowser $"file://($f | path expand)" } $e if $e in [ "png", "webp", "jpg", "jpeg", "ff", "bmp" ] => { nsxiv $f }, _ => { mpv $f }, } }