diff --git a/apps/nogui/nushell/config.nu b/apps/nogui/nushell/config.nu index fadb6cea7d9cf88242428421f9515d5b9aa8d5f5..7a387c767183f4545bcd1760c8e48b6dc08b6af3 100644 --- a/apps/nogui/nushell/config.nu +++ b/apps/nogui/nushell/config.nu @@ -393,7 +393,7 @@ metric: true # true => KB, MB, GB (ISO standard), false => KiB, MiB, GiB (Windows standard) format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, zb, zib, auto } color_config: $dark_theme # if you want a light theme, replace `$dark_theme` to `$light_theme` - footer_mode: 25 # always, never, number_of_rows, auto + footer_mode: "25" # always, never, number_of_rows, auto float_precision: 2 # buffer_editor: "emacs" # command that will be used to edit the current line buffer with ctrl+o, if unset fallback to $env.EDITOR and $env.VISUAL use_ansi_coloring: true diff --git a/apps/nogui/oh-my-posh.nix b/apps/nogui/oh-my-posh.nix index 67b396d2f395abda49e504437e12c219ab59c5b6..b1848ce3615998f896ad013b5a671565fe4363fd 100644 --- a/apps/nogui/oh-my-posh.nix +++ b/apps/nogui/oh-my-posh.nix @@ -1,166 +1,17 @@ -{ pkgs, ... }: -let - unicode = x: builtins.fromJSON ''"${x}"''; script = pkgs.writeShellApplication { - name = "jj-prompt"; - runtimeInputs = [ pkgs.jujutsu ]; - text = - let - bookmarkMax = 10; - tagMax = 10; - descriptionMax = 24; - in - '' -{ pkgs, ... }: script = pkgs.writeShellApplication { - separate(" ", - bookmarks.map(|x| if( - x.name().substr(0, ${builtins.toString bookmarkMax}).starts_with(x.name()), - "󰃀 " ++ x.name().substr(0, ${builtins.toString bookmarkMax}), - "󰃀 " ++ x.name().substr(0, ${builtins.toString (bookmarkMax - 1)}) ++ "…") - ).join(" "), - tags.map(|x| if( - x.name().substr(0, ${builtins.toString tagMax}).starts_with(x.name()), - "󰓹 " ++ x.name().substr(0, ${builtins.toString tagMax}), -let script = pkgs.writeShellApplication { - ).join(" "), -let name = "jj-prompt"; - description.first_line().substr(0, ${builtins.toString descriptionMax}).starts_with(description.first_line()), - "󰍡 " ++ description.first_line().substr(0, ${builtins.toString descriptionMax}), - "󰍡 " ++ description.first_line().substr(0, ${ - builtins.toString (descriptionMax - 1) - }) ++ "…" - ), - "•", - change_id.shortest(), - unicode = x: builtins.fromJSON ''"${x}"''; script = pkgs.writeShellApplication { - if(empty, "(empty)"), - unicode = x: builtins.fromJSON ''"${x}"''; runtimeInputs = [ pkgs.jujutsu ]; - if(divergent, "(divergent)"), - if(hidden, "(hidden)"), - ) - ' - script = pkgs.writeShellApplication { { pkgs, ... }: - script = pkgs.writeShellApplication { let script = pkgs.writeShellApplication { - unicode = x: builtins.fromJSON ''"${x}"''; -{ - programs.oh-my-posh = { - enable = true; - settings = { - "$schema" = "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json"; - blocks = [ - { - name = "jj-prompt"; { pkgs, ... }: - name = "jj-prompt"; let name = "jj-prompt"; - unicode = x: builtins.fromJSON ''"${x}"''; - background = "p:lavender"; - foreground = "p:black"; - leading_diamond = unicode "\\ue0b6"; - properties = { - display_host = false; - }; - style = "diamond"; - runtimeInputs = [ pkgs.jujutsu ]; { pkgs, ... }: - runtimeInputs = [ pkgs.jujutsu ]; let runtimeInputs = [ pkgs.jujutsu ]; - unicode = x: builtins.fromJSON ''"${x}"''; - } - { - background = "p:orange"; - foreground = "p:black"; - powerline_symbol = unicode "\\ue0b0"; - properties = { - home_icon = "~"; - style = "folder"; - }; - style = "powerline"; - template = " ${unicode "\\ue613"} {{ path .Path .Location }} "; - type = "path"; - } - { - background = "p:green"; - background_templates = [ - "{{ if or (.Working.Changed) (.Staging.Changed) }}p:yellow{{ end }}" - "{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:red{{ end }}" - "{{ if gt .Ahead 0 }}#49416D{{ end }}" - "{{ if gt .Behind 0 }}#7A306C{{ end }}" - ]; - foreground = "p:black"; - foreground_templates = [ - "{{ if or (.Working.Changed) (.Staging.Changed) }}p:black{{ end }}" - "{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:white{{ end }}" - "{{ if gt .Ahead 0 }}p:white{{ end }}" - ]; - powerline_symbol = unicode "\\ue0b0"; - properties = { - branch_max_length = 25; - fetch_status = true; - fetch_upstream_icon = true; - git_icon = unicode "\\ue702"; - github_icon = unicode "\\uf408"; - upstream_icons = { - "codeberg.org" = unicode "\\ue2a6"; - "git.jojodev.com" = unicode "\\udb83\\udd9e"; - "gitea.com" = unicode "\\udb83\\udd9e"; - }; - }; - style = "powerline"; - template = "{{ if not (glob \".jj\")}} {{ if .UpstreamURL }}{{ url .UpstreamIcon .UpstreamURL }} {{ end }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }} ${unicode "\\uf044"} {{ .Working.String }}{{ end }}{{ if .Staging.Changed }} ${unicode "\\uf046"} {{ .Staging.String }}{{ end }} {{ end }}"; - type = "git"; - } - { - background = "p:green"; - foreground = "p:black"; - powerline_symbol = unicode "\\ue0b0"; - properties = { - script = "${script}/bin/jj-prompt"; - }; - style = "powerline"; - template = "{{ if (glob \".jj\")}} {{ .Output }} {{ end }}"; - type = "command"; - } - { - background = "p:blue"; - background_templates = [ "{{ if gt .Code 0 }}p:red{{ end }}" ]; - foreground = "p:black"; - leading_diamond = "${unicode "\\ue0b0"}"; - properties = { - always_enabled = true; - }; - style = "diamond"; - template = " {{ if gt .Code 0 }}${unicode "\\uf00d"}{{ else }}${unicode "\\uf00c"}{{ end }} "; - trailing_diamond = unicode "\\ue0b4"; - type = "exit"; - } - ]; - type = "prompt"; - } - ]; - console_title_template = "{{ .Folder }}"; - final_space = true; - palette = { - black = "#1E1E1E"; - blue = "#89B4FA"; - green = "#A6E3A1"; - lavender = "#B4BEFE"; - orange = "#FAB387"; - red = "#F38BA8"; - white = "#CDD6F4"; - yellow = "#F9E2AF"; - }; - version = 2; - }; }; } diff --git a/apps/nogui/ohmyposh/config.json b/apps/nogui/ohmyposh/config.json new file mode 100644 index 0000000000000000000000000000000000000000..22a95bf7c8b839d9e1c1596ff13b62898210d805 --- /dev/null +++ b/apps/nogui/ohmyposh/config.json @@ -0,0 +1,95 @@ +{ + "$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json", + "blocks": [ + { + "alignment": "left", + "segments": [ + { + "background": "p:lavender", + "foreground": "p:black", + "leading_diamond": "\ue0b6", + "properties": { + "display_host": false + }, + "style": "diamond", + "template": " {{ if .SSHSession }}\udb80\udf18 {{ end }}{{ if .Env.IN_NIX_SHELL }}\udb84\udd05 {{ end }}{{ .UserName }}@{{ .HostName }} ", + "trailing_diamond": "\ue0b0", + "type": "session" + }, + { + "background": "p:orange", + "foreground": "p:black", + "powerline_symbol": "\ue0b0", + "properties": { + "home_icon": "~", + "style": "folder" + }, + "style": "powerline", + "template": " \ue613 {{ path .Path .Location }} ", + "type": "path" + }, + { + "background": "p:green", + "background_templates": [ + "{{ if or (.Working.Changed) (.Staging.Changed) }}p:yellow{{ end }}", + "{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:red{{ end }}", + "{{ if gt .Ahead 0 }}#49416D{{ end }}", + "{{ if gt .Behind 0 }}#7A306C{{ end }}" + ], + "foreground": "p:black", + "foreground_templates": [ + "{{ if or (.Working.Changed) (.Staging.Changed) }}p:black{{ end }}", + "{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:white{{ end }}", + "{{ if gt .Ahead 0 }}p:white{{ end }}" + ], + "powerline_symbol": "\ue0b0", + "properties": { + "branch_max_length": 25, + "fetch_status": true, + "fetch_upstream_icon": true, + "github_icon": "\uf408", + "git_icon": "\ue702", + "upstream_icons": { + "gitea.com": "\udb83\udd9e", + "git.jojodev.com": "\udb83\udd9e", + "codeberg.org": "\ue2a6" + } + }, + "style": "powerline", + "template": "{{ if not (glob \".jj\")}} {{ if .UpstreamURL }}{{ url .UpstreamIcon .UpstreamURL }} {{ end }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }} \uf044 {{ .Working.String }}{{ end }}{{ if .Staging.Changed }} \uf046 {{ .Staging.String }}{{ end }} {{ end }}", + "type": "git" + }, + { + "background": "p:blue", + "background_templates": [ + "{{ if gt .Code 0 }}p:red{{ end }}" + ], + "foreground": "p:black", + "leading_diamond": "\ue0b0", + "properties": { + "always_enabled": true + }, + "style": "diamond", + "template": " {{ if gt .Code 0 }}\uf00d{{ else }}\uf00c{{ end }} ", + "trailing_diamond": "\ue0b4", + "type": "exit" + } + ], + "type": "prompt" + } + ], + "console_title_template": "{{ .Folder }}", + "final_space": true, + "palette": { + "black": "#1E1E1E", + "blue": "#89B4FA", + "green": "#A6E3A1", + "orange": "#FAB387", + "red": "#F38BA8", + "white": "#CDD6F4", + "yellow": "#F9E2AF", + "lavender": "#B4BEFE" + }, + "version": 2 +} +