huge change
This commit is contained in:
parent
c159d2f3e3
commit
d86cc3c816
29 changed files with 1151 additions and 792 deletions
189
moduler/fish.nix
189
moduler/fish.nix
|
|
@ -1,82 +1,113 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
{
|
||||
name = "z";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "jethrokuan";
|
||||
repo = "z";
|
||||
rev = "e0e1b9dfdba362f8ab1ae8c1afc7ccf62b89f7eb";
|
||||
sha256 = "0dbnir6jbwjpjalz14snzd3cgdysgcs3raznsijd6savad3qhijc";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "autopair";
|
||||
src = pkgs.fishPlugins.autopair.src;
|
||||
}
|
||||
{
|
||||
name = "foreign-env";
|
||||
src = pkgs.fishPlugins.foreign-env.src;
|
||||
}
|
||||
{
|
||||
name = "fzf";
|
||||
src = pkgs.fishPlugins.fzf.src;
|
||||
}
|
||||
{
|
||||
name = "done";
|
||||
src = pkgs.fishPlugins.done.src;
|
||||
}
|
||||
{
|
||||
name = "grc";
|
||||
src = pkgs.fishPlugins.grc.src;
|
||||
}
|
||||
];
|
||||
shellAbbrs = {
|
||||
ls = "eza -l";
|
||||
lg = "lazygit";
|
||||
ka = "kubectl apply -f";
|
||||
t = "timew";
|
||||
todo = "jira issue list -a 'Fredrik Wastring' -s ~Done -s ~Closed -s ~Released --plain";
|
||||
cam = "jira issue create && jira issue assign && jira issue move";
|
||||
e = "kubectx";
|
||||
s = {
|
||||
setCursor = "%";
|
||||
expansion = "cha https://search.wastring.com/search?q=%";
|
||||
};
|
||||
tw = {
|
||||
setCursor = "%";
|
||||
expansion = "typst watch % --open zathura /tmp/zathura.pdf";
|
||||
};
|
||||
c = {
|
||||
setCursor = "%";
|
||||
expansion = "ssh 'fw:%@gateway.internalifacts.se' -p 2222";
|
||||
};
|
||||
dl = {
|
||||
setCursor = "&";
|
||||
expansion = "yt-dlp -o \"~/videor/%(title)s - %(uploader)s\" \"&\"";
|
||||
};
|
||||
};
|
||||
interactiveShellInit = ''
|
||||
fish_vi_key_bindings
|
||||
set fish_greeting
|
||||
set FLAKE_DIR "/home/fw/nix"
|
||||
set JIRA_API_TOKEN ATATT3xFfGF0_fkpGB1ne-QOSJzFVG0yH31j2CRtdNqbePCyEm9enpnA2uA3go75_GQwZPFX_IO9tf10ALJWvDLjsuHl8MSOUkNd703Vqr4uuGLAbHY73Z_b9fDJVrfodTrGAN9sZ5Sp75opCVkXB7MVXSAIvlWimRdwe-tqDPH4vhwY9Hqcs6M=0510D6CD
|
||||
set -Ux FZF_CTRL_R_OPTS "--reverse"
|
||||
set -Ux FZF_TMUX_OPTS "-p"
|
||||
set -e GOROOT
|
||||
set -e GOPATH
|
||||
gh completion -s fish > ~/.config/fish/completions/gh.fish
|
||||
set -gx PATH $PATH $HOME/.krew/bin
|
||||
{ pkgs, lib, config, ... }:
|
||||
|
||||
# Mocha
|
||||
set -Ux FZF_DEFAULT_OPTS "\
|
||||
--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 \
|
||||
--color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc \
|
||||
--color=marker:#b4befe,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8 \
|
||||
--color=selected-bg:#45475a \
|
||||
--multi"
|
||||
'';
|
||||
let
|
||||
inherit (lib) concatStringsSep mkOption types;
|
||||
|
||||
mkFzfOptionsString = lines: concatStringsSep " " lines;
|
||||
|
||||
catppuccinFzfOptions = {
|
||||
mocha = mkFzfOptionsString [
|
||||
"--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8"
|
||||
"--color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc"
|
||||
"--color=marker:#b4befe,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8"
|
||||
"--color=selected-bg:#45475a"
|
||||
"--multi"
|
||||
];
|
||||
latte = mkFzfOptionsString [
|
||||
"--color=bg+:#ccd0da,bg:#eff1f5,spinner:#dc8a78,hl:#d20f39"
|
||||
"--color=fg:#4c4f69,header:#d20f39,info:#1e66f5,pointer:#dc8a78"
|
||||
"--color=marker:#fe640b,fg+:#4c4f69,prompt:#1e66f5,hl+:#d20f39"
|
||||
"--color=selected-bg:#acb0be"
|
||||
"--multi"
|
||||
];
|
||||
};
|
||||
in
|
||||
{
|
||||
options.fish = {
|
||||
theme = mkOption {
|
||||
type = types.enum (builtins.attrNames catppuccinFzfOptions);
|
||||
default = "mocha";
|
||||
description = "Catppuccin theme variant used for Fish integrations such as FZF.";
|
||||
example = "latte";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
{
|
||||
name = "z";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "jethrokuan";
|
||||
repo = "z";
|
||||
rev = "e0e1b9dfdba362f8ab1ae8c1afc7ccf62b89f7eb";
|
||||
sha256 = "0dbnir6jbwjpjalz14snzd3cgdysgcs3raznsijd6savad3qhijc";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "autopair";
|
||||
src = pkgs.fishPlugins.autopair.src;
|
||||
}
|
||||
{
|
||||
name = "foreign-env";
|
||||
src = pkgs.fishPlugins.foreign-env.src;
|
||||
}
|
||||
{
|
||||
name = "fzf";
|
||||
src = pkgs.fishPlugins.fzf.src;
|
||||
}
|
||||
{
|
||||
name = "done";
|
||||
src = pkgs.fishPlugins.done.src;
|
||||
}
|
||||
{
|
||||
name = "grc";
|
||||
src = pkgs.fishPlugins.grc.src;
|
||||
}
|
||||
];
|
||||
shellAbbrs = {
|
||||
ls = "eza -l";
|
||||
lg = "lazygit";
|
||||
ka = "kubectl apply -f";
|
||||
t = "timew";
|
||||
todo = "jira issue list -a 'Fredrik Wastring' -s ~Done -s ~Closed -s ~Released --plain";
|
||||
cam = "jira issue create && jira issue assign && jira issue move";
|
||||
e = "kubectx";
|
||||
s = {
|
||||
setCursor = "%";
|
||||
expansion = "cha https://search.wastring.com/search?q=%";
|
||||
};
|
||||
tw = {
|
||||
setCursor = "%";
|
||||
expansion = "typst watch % --open zathura /tmp/zathura.pdf";
|
||||
};
|
||||
c = {
|
||||
setCursor = "%";
|
||||
expansion = "ssh 'fw:%@gateway.internalifacts.se' -p 2222";
|
||||
};
|
||||
dl = {
|
||||
setCursor = "&";
|
||||
expansion = "yt-dlp -o \"~/videor/%(title)s - %(uploader)s\" \"&\"";
|
||||
};
|
||||
};
|
||||
interactiveShellInit =
|
||||
let
|
||||
fzfOpts = catppuccinFzfOptions.${config.fish.theme};
|
||||
in ''
|
||||
fish_vi_key_bindings
|
||||
set fish_greeting
|
||||
set FLAKE_DIR "/home/fw/nix"
|
||||
set JIRA_API_TOKEN ATATT3xFfGF0_fkpGB1ne-QOSJzFVG0yH31j2CRtdNqbePCyEm9enpnA2uA3go75_GQwZPFX_IO9tf10ALJWvDLjsuHl8MSOUkNd703Vqr4uuGLAbHY73Z_b9fDJVrfodTrGAN9sZ5Sp75opCVkXB7MVXSAIvlWimRdwe-tqDPH4vhwY9Hqcs6M=0510D6CD
|
||||
set -Ux FZF_CTRL_R_OPTS "--reverse"
|
||||
set -Ux FZF_TMUX_OPTS "-p"
|
||||
set -e GOROOT
|
||||
set -e GOPATH
|
||||
gh completion -s fish > ~/.config/fish/completions/gh.fish
|
||||
set -gx PATH $PATH $HOME/.krew/bin
|
||||
|
||||
set -Ux FZF_DEFAULT_OPTS "${fzfOpts}"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue