mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 00:33:00 +00:00
feat: fish
This commit is contained in:
parent
cddd568d54
commit
e7fa83e4ec
8 changed files with 132 additions and 46 deletions
|
|
@ -15,19 +15,20 @@
|
||||||
# File Explorer
|
# File Explorer
|
||||||
"inode/directory" = "org.kde.dolphin.desktop";
|
"inode/directory" = "org.kde.dolphin.desktop";
|
||||||
# Image Viewer
|
# Image Viewer
|
||||||
"image/jpeg" = "nsxiv.desktop;org.gnome.Loupe.desktop";
|
"image/jpeg" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||||
"image/jpg" = "nsxiv.desktop;org.gnome.Loupe.desktop";
|
"image/jpg" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||||
"image/png" = "nsxiv.desktop;org.gnome.Loupe.desktop";
|
"image/png" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||||
"image/gif" = "nsxiv.desktop;org.gnome.Loupe.desktop";
|
"image/gif" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||||
"image/bmp" = "nsxiv.desktop;org.gnome.Loupe.desktop";
|
"image/bmp" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||||
"image/webp" = "nsxiv.desktop;org.gnome.Loupe.desktop";
|
"image/webp" = "vimiv.desktop;org.gnome.Loupe.desktop";
|
||||||
# Browser
|
# Browser
|
||||||
"text/html" = "firefox.desktop;chromium-browser.desktop";
|
"text/html" = "firefox.desktop;chromium-browser.desktop";
|
||||||
"x-scheme-handler/http" = "firefox.desktop;chromium-browser.desktop";
|
"x-scheme-handler/http" = "firefox.desktop;chromium-browser.desktop";
|
||||||
"x-scheme-handler/httpss" = "firefox.desktop;chromium-browser.desktop";
|
"x-scheme-handler/https" = "firefox.desktop;chromium-browser.desktop";
|
||||||
# URL Scheme
|
# URL Scheme
|
||||||
"x-scheme-handler/tg" = "org.telegram.desktop.desktop";
|
"x-scheme-handler/tg" = "org.telegram.desktop.desktop";
|
||||||
"x-scheme-handler/tonsite" = "org.telegram.desktop.desktop";
|
"x-scheme-handler/tonsite" = "org.telegram.desktop.desktop";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
home.sessionVariables.BROWSER = "firefox";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,38 +0,0 @@
|
||||||
{config, ...}: let
|
|
||||||
commonAliases = {
|
|
||||||
g = "lazygit";
|
|
||||||
ni = "touch";
|
|
||||||
cls = "clear";
|
|
||||||
ii = "xdg-open";
|
|
||||||
aic = "aichat -s";
|
|
||||||
aicc = "aichat -c";
|
|
||||||
nrs = "sudo nixos-rebuild switch --flake ~/.dotfiles/nixcfgs";
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
programs.fish = {
|
|
||||||
enable = true;
|
|
||||||
interactiveShellInit = "set fish_greeting";
|
|
||||||
# preferAbbrs = true;
|
|
||||||
shellAbbrs = commonAliases;
|
|
||||||
};
|
|
||||||
programs.zsh = {
|
|
||||||
enable = true;
|
|
||||||
autocd = true;
|
|
||||||
autosuggestion.enable = true;
|
|
||||||
syntaxHighlighting.enable = true;
|
|
||||||
dotDir = "${config.xdg.configHome}/zsh";
|
|
||||||
shellAliases = commonAliases;
|
|
||||||
};
|
|
||||||
programs.bash = {
|
|
||||||
enable = true;
|
|
||||||
shellAliases = commonAliases;
|
|
||||||
};
|
|
||||||
programs.nushell = {
|
|
||||||
enable = true;
|
|
||||||
shellAliases = commonAliases;
|
|
||||||
extraConfig = ''
|
|
||||||
$env.config.show_banner = false
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
programs.zed-editor.extensions = ["fish"];
|
|
||||||
}
|
|
||||||
38
nixcfgs/users/js0ny/programs/shell/aliases.nix
Normal file
38
nixcfgs/users/js0ny/programs/shell/aliases.nix
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
{pkgs}: let
|
||||||
|
commonAliases = {
|
||||||
|
g = "lazygit";
|
||||||
|
ni = "touch";
|
||||||
|
cls = "clear";
|
||||||
|
aic = "aichat -s";
|
||||||
|
aicc = "aichat -c";
|
||||||
|
nrs = "sudo nixos-rebuild switch --flake ~/.dotfiles/nixcfgs";
|
||||||
|
clip = "wl-copy";
|
||||||
|
paste = "wl-paste";
|
||||||
|
};
|
||||||
|
darwinAliases = {
|
||||||
|
reboot = "sudo reboot";
|
||||||
|
clip = "pbcopy";
|
||||||
|
paste = "pbpaste";
|
||||||
|
ii = "open";
|
||||||
|
brewi = "brew install";
|
||||||
|
brewr = "brew remove";
|
||||||
|
brewu = "brew upgrade && brew update";
|
||||||
|
brewc = "brew cleanup";
|
||||||
|
brewl = "brew list";
|
||||||
|
};
|
||||||
|
linuxAliases = {
|
||||||
|
ii = "xdg-open";
|
||||||
|
open = "xdg-open";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
commonAliases
|
||||||
|
// (
|
||||||
|
if pkgs.stdenv.isLinux
|
||||||
|
then linuxAliases
|
||||||
|
else {}
|
||||||
|
)
|
||||||
|
// (
|
||||||
|
if pkgs.stdenv.isDarwin
|
||||||
|
then darwinAliases
|
||||||
|
else {}
|
||||||
|
)
|
||||||
8
nixcfgs/users/js0ny/programs/shell/bash.nix
Normal file
8
nixcfgs/users/js0ny/programs/shell/bash.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{pkgs, ...}: let
|
||||||
|
aliases = import ./aliases.nix {pkgs = pkgs;};
|
||||||
|
in {
|
||||||
|
programs.bash = {
|
||||||
|
enable = true;
|
||||||
|
shellAliases = aliases;
|
||||||
|
};
|
||||||
|
}
|
||||||
50
nixcfgs/users/js0ny/programs/shell/fish.nix
Normal file
50
nixcfgs/users/js0ny/programs/shell/fish.nix
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
{pkgs, ...}: let
|
||||||
|
aliases = import ./aliases.nix {pkgs = pkgs;};
|
||||||
|
in {
|
||||||
|
programs.fish = {
|
||||||
|
enable = true;
|
||||||
|
interactiveShellInit = ''
|
||||||
|
set fish_greeting
|
||||||
|
function __last_history_item; echo $history[1]; end
|
||||||
|
abbr -a !! --position anywhere --function __last_history_item
|
||||||
|
function tv
|
||||||
|
touch $argv[1] && $EDITOR $argv[1]
|
||||||
|
end
|
||||||
|
function mtv
|
||||||
|
mkdir -p (dirname $argv[1]) && touch $argv[1] && $EDITOR $argv[1]
|
||||||
|
end
|
||||||
|
|
||||||
|
fish_vi_key_bindings
|
||||||
|
|
||||||
|
bind -M default ctrl-p up-or-search
|
||||||
|
bind -M default ctrl-n down-or-search
|
||||||
|
bind -M default ctrl-f forward-char
|
||||||
|
bind -M default ctrl-b backward-char
|
||||||
|
bind -M default ctrl-a beginning-of-line
|
||||||
|
bind -M default ctrl-e end-of-line
|
||||||
|
bind -M default ctrl-k kill-line
|
||||||
|
|
||||||
|
bind -M insert ctrl-p up-or-search
|
||||||
|
bind -M insert ctrl-n down-or-search
|
||||||
|
bind -M insert ctrl-f forward-char
|
||||||
|
bind -M insert ctrl-b backward-char
|
||||||
|
bind -M insert ctrl-a beginning-of-line
|
||||||
|
bind -M insert ctrl-e end-of-line
|
||||||
|
bind -M insert ctrl-k kill-line
|
||||||
|
bind -M insert ctrl-w backward-kill-path-component
|
||||||
|
|
||||||
|
|
||||||
|
# ctrl + backspace
|
||||||
|
bind -M insert ctrl-backspace backward-kill-path-component
|
||||||
|
# alt + backspace
|
||||||
|
bind -M insert alt-backspace backward-kill-line
|
||||||
|
# ctrl + delete
|
||||||
|
bind -M insert ctrl-delete kill-word
|
||||||
|
# alt + delete (d$)
|
||||||
|
bind -M insert alt-delete kill-line
|
||||||
|
'';
|
||||||
|
# preferAbbrs = true;
|
||||||
|
shellAbbrs = aliases;
|
||||||
|
};
|
||||||
|
programs.zed-editor.extensions = ["fish"];
|
||||||
|
}
|
||||||
11
nixcfgs/users/js0ny/programs/shell/nu.nix
Normal file
11
nixcfgs/users/js0ny/programs/shell/nu.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{pkgs, ...}: let
|
||||||
|
aliases = import ./aliases.nix {pkgs = pkgs;};
|
||||||
|
in {
|
||||||
|
programs.nushell = {
|
||||||
|
enable = true;
|
||||||
|
shellAliases = aliases;
|
||||||
|
extraConfig = ''
|
||||||
|
$env.config.show_banner = false
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
12
nixcfgs/users/js0ny/programs/shell/zsh.nix
Normal file
12
nixcfgs/users/js0ny/programs/shell/zsh.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{config, pkgs, ...}: let
|
||||||
|
aliases = import ./aliases.nix { pkgs = pkgs; };
|
||||||
|
in {
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
autocd = true;
|
||||||
|
autosuggestion.enable = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
dotDir = "${config.xdg.configHome}/zsh";
|
||||||
|
shellAliases = aliases;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -19,13 +19,17 @@
|
||||||
./programs/firefox.nix
|
./programs/firefox.nix
|
||||||
./programs/emacs.nix
|
./programs/emacs.nix
|
||||||
./programs/vscode.nix
|
./programs/vscode.nix
|
||||||
./programs/shell.nix
|
|
||||||
./programs/xilinx.nix
|
./programs/xilinx.nix
|
||||||
./programs/mime.nix
|
./programs/mime.nix
|
||||||
./programs/zed-editor.nix
|
./programs/zed-editor.nix
|
||||||
./programs/rime.nix
|
./programs/rime.nix
|
||||||
./programs/sdcv.nix
|
./programs/sdcv.nix
|
||||||
|
|
||||||
|
# Shell
|
||||||
|
./programs/shell/bash.nix
|
||||||
|
./programs/shell/zsh.nix
|
||||||
|
./programs/shell/fish.nix
|
||||||
|
|
||||||
# Desktop Linux
|
# Desktop Linux
|
||||||
./programs/plasma.nix
|
./programs/plasma.nix
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue