Wed Mar 5 14:20:06 EET 2025

This commit is contained in:
unexplrd
2025-03-05 16:20:17 +02:00
parent 63b039e9e8
commit a0bc023158
6 changed files with 55 additions and 81 deletions

View File

@ -18,6 +18,7 @@ in {
"nix"
"latex"
"typst"
"justfile"
];
userSettings = {
vim_mode = true;

View File

@ -21,6 +21,8 @@ in {
# };
eza.enable = true;
zoxide.enable = true;
direnv.enable = true;
nix-your-shell.enable = true;
fish = {
enable = true;
shellAliases = {

View File

@ -1,5 +1,5 @@
{
pkgs,
# pkgs,
config,
lib,
...
@ -14,97 +14,59 @@ in {
config = mkIf cfg.enable {
programs = {
atuin = {
enable = true;
enable = false;
enableNushellIntegration = true;
flags = [
"--disable-up-arrow"
];
};
carapace = {
enable = true;
enableNushellIntegration = true;
};
zoxide = {
enable = true;
enableNushellIntegration = true;
};
carapace.enable = true;
zoxide.enable = true;
oh-my-posh.enableNushellIntegration = true;
keychain = {
enable = true;
keys = ["id_ed25519"];
enableNushellIntegration = true;
extraFlags = [
"--quiet"
"--noask"
];
};
nushell = {
enable = true;
environmentVariables = {
CARAPACE_BRIDGES = "zsh,fish,bash,inshellisense";
CARAPACE_BRIDGES = "fish";
CARAPACE_MATCH = 1;
EDITOR = "hx";
};
shellAliases = {
cd = "z";
cat = "bat";
la = "ls -a";
l = "ls -la";
nix-shell = "nix-shell --command nu";
};
extraConfig = ''
$env.config = {
show_banner: false
shell_integration: {
# osc2 abbreviates the path if in the home_dir, sets the tab/window title, shows the running command in the tab/window title
osc2: true
# osc7 is a way to communicate the path to the terminal, this is helpful for spawning new tabs in the same directory
osc7: true
# osc8 is also implemented as the deprecated setting ls.show_clickable_links, it shows clickable links in ls output if your terminal supports it. show_clickable_links is deprecated in favor of osc8
osc8: true
# osc9_9 is from ConEmu and is starting to get wider support. It's similar to osc7 in that it communicates the path to the terminal
osc9_9: false
# osc133 is several escapes invented by Final Term which include the supported ones below.
# 133;A - Mark prompt start
# 133;B - Mark prompt end
# 133;C - Mark pre-execution
# 133;D;exit - Mark execution finished with exit code
# This is used to enable terminals to know where the prompt is, the command is, where the command finishes, and where the output of the command is
osc133: true
# osc633 is closely related to osc133 but only exists in visual studio code (vscode) and supports their shell integration features
# 633;A - Mark prompt start
# 633;B - Mark prompt end
# 633;C - Mark pre-execution
# 633;D;exit - Mark execution finished with exit code
# 633;E - Explicitly set the command line with an optional nonce
# 633;P;Cwd=<path> - Mark the current working directory and communicate it to the terminal
# and also helps with the run recent menu in vscode
osc633: true
# reset_application_mode is escape \x1b[?1l and was added to help ssh work better
reset_application_mode: true
}
ls: {
use_ls_colors: true
clickable_links: true
}
rm: {
always_trash: true
}
edit_mode: 'vi'
completions: {
case_sensitive: false
quick: true
partial: true
algorithm: "fuzzy"
external: {
enable: true
# max_results: 100
# completer: $carapace_completer # check 'carapace_completer'
}
$env.config = {
show_banner: false
shell_integration: {
osc2: true
osc7: true
osc8: true
osc9_9: false
osc133: true
osc633: true
reset_application_mode: true
}
ls: {
use_ls_colors: true
clickable_links: true
}
rm: {
always_trash: true
}
edit_mode: 'vi'
completions: {
case_sensitive: false
quick: true
partial: true
algorithm: "fuzzy"
external: {
enable: true
#max_results: 100
}
}
}
'';
};
};