WIP
This commit is contained in:
@@ -0,0 +1,118 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
|
||||||
|
"blocks": [
|
||||||
|
{
|
||||||
|
"alignment": "left",
|
||||||
|
"newline": true,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"foreground": "#E5C07B",
|
||||||
|
"properties": {
|
||||||
|
"time_format": "15:04"
|
||||||
|
},
|
||||||
|
"style": "plain",
|
||||||
|
"template": "[{{ .CurrentDate | date .Format }}]",
|
||||||
|
"type": "time"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "shell",
|
||||||
|
"style": "plain",
|
||||||
|
"foreground": "#E06C75",
|
||||||
|
"properties": {
|
||||||
|
"mapped_shell_names": {
|
||||||
|
"pwsh": "Shell",
|
||||||
|
"powershell": "Shell",
|
||||||
|
"cmd": "Cmd",
|
||||||
|
"bash": "Bash"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"template": " \ue795 {{ .Name }}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"foreground": "#F3C267",
|
||||||
|
"foreground_templates": [
|
||||||
|
"{{ if or (.Working.Changed) (.Staging.Changed) }}#FF9248{{ end }}",
|
||||||
|
"{{ if and (gt .Ahead 0) (gt .Behind 0) }}#ff4500{{ end }}",
|
||||||
|
"{{ if gt .Ahead 0 }}#B388FF{{ end }}",
|
||||||
|
"{{ if gt .Behind 0 }}#B388FF{{ end }}"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"branch_template": "{{ trunc 25 .Branch }}",
|
||||||
|
"fetch_stash_count": true,
|
||||||
|
"fetch_status": true,
|
||||||
|
"fetch_upstream_icon": true
|
||||||
|
},
|
||||||
|
"style": "plain",
|
||||||
|
"template": " {{ .UpstreamIcon }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }} \uf044 {{ .Working.String }}{{ end }}{{ if and (.Working.Changed) (.Staging.Changed) }} |{{ end }}{{ if .Staging.Changed }} \uf046 {{ .Staging.String }}{{ end }}{{ if gt .StashCount 0 }} \ueb4b {{ .StashCount }}{{ end }} ",
|
||||||
|
"type": "git"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "prompt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"alignment": "right",
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "status",
|
||||||
|
"style": "plain",
|
||||||
|
"foreground": "#b8ff75",
|
||||||
|
"foreground_templates": [
|
||||||
|
"{{ if gt .Code 0 }}#E06C75{{ end }}"
|
||||||
|
],
|
||||||
|
"template": " x{{ reason .Code }}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"foreground": "#b8ff75",
|
||||||
|
"foreground_templates": [
|
||||||
|
"{{ if gt .Code 0 }}#E06C75{{ end }}"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"style": "roundrock",
|
||||||
|
"always_enabled": true
|
||||||
|
},
|
||||||
|
"style": "diamond",
|
||||||
|
"template": " {{ .FormattedMs }} ",
|
||||||
|
"type": "executiontime"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "prompt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"alignment": "left",
|
||||||
|
"newline": true,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"foreground": "#61AFEF",
|
||||||
|
"properties": {
|
||||||
|
"style": "full"
|
||||||
|
},
|
||||||
|
"style": "plain",
|
||||||
|
"template": "\ue5ff {{ .Path }}",
|
||||||
|
"type": "path"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "prompt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"alignment": "left",
|
||||||
|
"newline": true,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"foreground": "#E06C75",
|
||||||
|
"style": "plain",
|
||||||
|
"template": "\u0021",
|
||||||
|
"type": "root"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"foreground": "#E06C75",
|
||||||
|
"style": "plain",
|
||||||
|
"template": "\u276f",
|
||||||
|
"type": "text"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "prompt"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"final_space": true,
|
||||||
|
"version": 3
|
||||||
|
}
|
||||||
@@ -1,8 +1,15 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs , ... }: {
|
||||||
|
|
||||||
home.packages = [
|
home.packages = [
|
||||||
pkgs.zoxide
|
pkgs.zoxide
|
||||||
|
pkgs.oh-my-posh
|
||||||
];
|
];
|
||||||
programs.zoxide.enable = true;
|
programs.zoxide.enable = true;
|
||||||
programs.zoxide.enableZshIntegration = true;
|
|
||||||
programs.zoxide.options = [];
|
programs.zoxide.options = [];
|
||||||
|
|
||||||
|
programs.oh-my-posh.enable = true;
|
||||||
|
home.file.".config/oh-my-posh/config.omp.json" = {
|
||||||
|
source = /home/biscuit/Nixos/packages/zoxide/config.omp.json;
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,8 +10,7 @@
|
|||||||
rev = "762afacbf227ecd173e899d10a28a478b4c84a3f";
|
rev = "762afacbf227ecd173e899d10a28a478b4c84a3f";
|
||||||
sha256 = "1357hygrjwj5vd4cjdvxzrx967f1d2dbqm2rskbz5z1q6jri1hm3";
|
sha256 = "1357hygrjwj5vd4cjdvxzrx967f1d2dbqm2rskbz5z1q6jri1hm3";
|
||||||
}; # e.g., nix-prefetch-url --unpack https://github.com/marlonrichert/zsh-autocomplete/archive/762afacbf227ecd173e899d10a28a478b4c84a3f.tar.gz
|
}; # e.g., nix-prefetch-url --unpack https://github.com/marlonrichert/zsh-autocomplete/archive/762afacbf227ecd173e899d10a28a478b4c84a3f.tar.gz
|
||||||
}
|
} ];
|
||||||
];
|
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
syntaxHighlighting.enable = true;
|
syntaxHighlighting.enable = true;
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
@@ -25,10 +24,11 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
theme = "robbyrussell";
|
theme = "robbyrussell";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
# Required for autocomplete with box: https://unix.stackexchange.com/a/778868
|
Required for autocomplete with box: https://unix.stackexchange.com/a/778868
|
||||||
zstyle ':completion:*' completer _expand _complete _ignored _approximate _expand_alias
|
zstyle ':completion:*' completer _expand _complete _ignored _approximate _expand_alias
|
||||||
zstyle ':autocomplete:*' default-context curcontext
|
zstyle ':autocomplete:*' default-context curcontext
|
||||||
zstyle ':autocomplete:*' min-input 0
|
zstyle ':autocomplete:*' min-input 0
|
||||||
|
# zstyle ':autocomplete:*' automatic no
|
||||||
|
|
||||||
setopt HIST_FIND_NO_DUPS
|
setopt HIST_FIND_NO_DUPS
|
||||||
|
|
||||||
@@ -39,5 +39,14 @@
|
|||||||
setopt globdots # show dotfiles in autocomplete list
|
setopt globdots # show dotfiles in autocomplete list
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
initContent = ''
|
||||||
|
# Oh-My-Posh initialization for Zsh
|
||||||
|
eval "$(oh-my-posh init zsh --config /home/biscuit/.config/oh-my-posh/config.omp.json)"
|
||||||
|
|
||||||
|
# zsh-autocomplete
|
||||||
|
bindkey -M menuselect '^M' .accept-line # run code when selected completion
|
||||||
|
bindkey '^I' autocomplete-manual
|
||||||
|
'';
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user