JanDeDobbeleer / oh-my-posh

The most customisable and low-latency cross platform/shell prompt renderer
https://ohmyposh.dev
MIT License
17.01k stars 2.37k forks source link

Performance since 23.7.2 #5533

Closed desdic closed 1 month ago

desdic commented 1 month ago

Code of Conduct

What happened?

After version 23.7.2 (testet 23.8.0, 23.9.0 and git) oh-my-posh because so slow or is pausing when using Neovim's VT220/xterm terminal emulator based on libvterm. When spawning a shell with a command the command is sent to the terminal before the shell is ready (using zsh) and I can't figure out what it is

the test for neovim in lua

vim.cmd.vsplit()
vim.cmd.terminal()
vim.api.nvim_chan_send(vim.bo.channel, "echo hello\n")
vim.api.nvim_feedkeys("a", "t", false)

Theme

{
  "$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
  "palette": {
    "os": "#ACB0BE",
    "closer": "p:os",
    "pink": "#F5C2E7",
    "lavender": "#B4BEFE",
    "blue": "#89B4FA"
  },
  "blocks": [
    {
      "alignment": "left",
      "segments": [
        {
          "foreground": "p:os",
          "style": "plain",
          "template": "{{ .Icon }} ",
          "type": "os"
        },
        {
          "foreground": "p:blue",
          "style": "plain",
          "template": "{{ .UserName }} ",
          "type": "session"
        },
        {
          "foreground": "p:pink",
          "properties": {
            "folder_icon": "....",
            "home_icon": "~",
            "style": "agnoster_short"
          },
          "style": "plain",
          "template": "{{ .Path }} ",
          "type": "path"
        },
        {
          "foreground": "p:lavender",
          "properties": {
            "branch_icon": " ",
            "cherry_pick_icon": " ",
            "commit_icon": " ",
            "fetch_status": true,
            "fetch_upstream_icon": true,
            "merge_icon": " ",
            "no_commits_icon": " ",
            "rebase_icon": " ",
            "revert_icon": " ",
            "tag_icon": " "
          },
          "template": "{{ .HEAD }}<cyan>{{ if or (.Working.Changed) (.Staging.Changed) }} ~{{ end }} {{ if gt .Behind 0 }}⇣{{ end }}{{ if gt .Ahead 0 }}⇡{{ end }}</>",
          "style": "plain",
          "type": "git"
        },
        {
          "type": "text",
          "style": "plain",
          "foreground": "p:os",
          "template": "<cyan>{{ if gt (int (.Env.BG_JOBS)) 0 }}[{{ .Env.BG_JOBS }}] {{ end }}</>"
        },
        {
          "style": "plain",
          "foreground": "p:closer",
          "foreground_templates": [
            "{{ if gt .Code 0 }}#ff0000{{ end }}",
            "{{ if eq .Code 0 }}#00ff9f{{ end }}"
          ],
          "template": "{{ if gt .Code 0 }}{{ else }}{{ end }}",
          "type": "text"
        }
      ],
      "type": "prompt"
    }
  ],
  "final_space": true,
  "version": 2,
  "shell_integration": true
}

and its still not working if I remove all the blocks

What OS are you seeing the problem on?

Linux

Which shell are you using?

zsh

Log output

oh-my-posh debug zsh --plain

Version: 23.9.0

Shell: zsh (5.9)

Prompt:

 kgn ~  

Segments:

ConsoleTitle(false)                       -   0 ms
Os(true)                                  -   0 ms
Session(true)                             -   1 ms
Path(true)                                -   0 ms
Text(true)                                -   0 ms
Text(true)                                -   0 ms

Run duration: 4.929993ms

Cache path: /home/kgn/.cache/oh-my-posh

Config path: /home/kgn/.config/oh-my-posh/catppuccin_mocha.omp.json

Logs:

[DEBUG] 16:15:01.293 debug.go:42 → debug mode enabled
[DEBUG] 16:15:01.293 debug.go:42 → plain mode enabled
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.293 terminal.go:Getenv(LOCALAPPDATA) - 20.259µs
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.293 terminal.go:Getenv(OMP_CACHE_DIR) - 3.717µs
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.293 terminal.go:Getenv(XDG_CACHE_HOME) - 3.297µs
[TRACE] 16:15:01.293 terminal.go:CachePath() - 58.713µs
[DEBUG] 16:15:01.293 terminal.go:70 → loading cache file: /home/kgn/.cache/oh-my-posh/omp.cache
[DEBUG] 16:15:01.293 terminal.go:70 → loading cache key: is_wsl
[DEBUG] 16:15:01.293 terminal.go:70 → loading cache key: upgrade_check
[DEBUG] 16:15:01.293 terminal.go:70 → loading cache key: environment_platform
[TRACE] 16:15:01.293 terminal.go(/home/kgn/.cache/oh-my-posh/omp.cache) - 100.264µs
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.293 terminal.go:Getenv(LOCALAPPDATA) - 3.907µs
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.293 terminal.go:Getenv(OMP_CACHE_DIR) - 3.356µs
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.293 terminal.go:Getenv(XDG_CACHE_HOME) - 3.126µs
[TRACE] 16:15:01.293 terminal.go:CachePath() - 34.055µs
[DEBUG] 16:15:01.293 terminal.go:70 → loading cache file: /home/kgn/.cache/oh-my-posh/omp.cache.550424
[TRACE] 16:15:01.293 terminal.go(/home/kgn/.cache/oh-my-posh/omp.cache.550424) - 23.796µs
[DEBUG] 16:15:01.293 terminal.go:Getenv:165 → /home/kgn/.config/oh-my-posh/catppuccin_mocha.omp.json
[TRACE] 16:15:01.293 terminal.go:Getenv(POSH_THEME) - 4.057µs
[DEBUG] 16:15:01.293 terminal.go:ResolveConfigPath:97 → config set using POSH_THEME: /home/kgn/.config/oh-my-posh/catppuccin_mocha.omp.json
[TRACE] 16:15:01.293 terminal.go:ResolveConfigPath() - 13.016µs
[TRACE] 16:15:01.294 terminal.go:SetPromptCount() - 571ns
[TRACE] 16:15:01.294 terminal.go:Init() - 392.425µs
[TRACE] 16:15:01.294 terminal.go:Flags() - 80ns
[TRACE] 16:15:01.294 load.go:loadConfig() - 693.215µs
[TRACE] 16:15:01.294 terminal.go:Flags() - 20ns
[TRACE] 16:15:01.294 terminal.go:Shell() - 150ns
[DEBUG] 16:15:01.294 debug.go:50 → terminal program: Unknown
[DEBUG] 16:15:01.294 debug.go:50 → terminal shell: shell
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.294 terminal.go:Getenv(OMP_CACHE_DISABLED) - 2.205µs
[TRACE] 16:15:01.294 terminal.go:Shell() - 20ns
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → 5.9
[TRACE] 16:15:01.294 terminal.go:Getenv(POSH_SHELL_VERSION) - 2.003µs
[DEBUG] 16:15:01.294 debug.go:PrintDebug:23 → segment: Title
[DEBUG] 16:15:01.294 text.go:Render:80 → rendering template: 
[TRACE] 16:15:01.294 terminal.go:Flags() - 20ns
[TRACE] 16:15:01.294 terminal.go:Shell() - 20ns
[TRACE] 16:15:01.294 terminal.go:StatusCodes() - 40ns
[TRACE] 16:15:01.294 terminal.go:Flags() - 30ns
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.294 terminal.go:Getenv(POSH_CURSOR_LINE) - 2.335µs
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.294 terminal.go:Getenv(POSH_CURSOR_COLUMN) - 1.393µs
[TRACE] 16:15:01.294 terminal.go:Flags() - 30ns
[TRACE] 16:15:01.294 terminal.go:Flags() - 20ns
[TRACE] 16:15:01.294 terminal.go:Flags() - 60ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 81ns
[DEBUG] 16:15:01.294 terminal.go:Pwd:195 → /home/kgn
[TRACE] 16:15:01.294 terminal.go:Pwd() - 10.22µs
[TRACE] 16:15:01.294 terminal.go:GOOS() - 20ns
[DEBUG] 16:15:01.294 segment.go:SetEnabled:115 → segment: Text
[TRACE] 16:15:01.294 terminal_unix.go:Root() - 401ns
[TRACE] 16:15:01.294 terminal.go:Shell() - 20ns
[TRACE] 16:15:01.294 terminal.go:StatusCodes() - 40ns
[DEBUG] 16:15:01.294 terminal_unix.go:IsWsl:35 → false
[TRACE] 16:15:01.294 terminal_unix.go:IsWsl() - 6.322µs
[DEBUG] 16:15:01.294 terminal.go:TemplateCache:654 → environment: [SHELL=/usr/bin/zsh LSCOLORS=Exfxcxdxbxegedabagacad ZLE_RPROMPT_INDENT=0 GTK_THEME=Adwaita:dark HYPRLAND_CMD=Hyprland LESS=-Xr WORDCHARS= POSH_PID=550424 XDG_BACKEND=wayland NODE_OPTIONS=--dns-result-order=ipv4first LESS_TERMCAP_se= LESS_TERMCAP_so= SSH_AUTH_SOCK=/run/user/1000/ssh-agent.socket CREDENTIALS_DIRECTORY=/run/credentials/getty@tty1.service GOPRIVATE=gitlab.group.one MEMORY_PRESSURE_WRITE=c29tZSAyMDAwMDAgMjAwMDAwMAA= DEBFULLNAME=Kim Gert Nielsen HL_INITIAL_WORKSPACE_TOKEN=c6c0530f-2946-4e8e-9307-7dc948e777f6 XCURSOR_SIZE=24 GPG_TTY=/dev/pts/5 EDITOR=nvim XDG_SEAT=seat0 PWD=/home/kgn LOGNAME=kgn XDG_SESSION_TYPE=wayland SYSTEMD_EXEC_PID=1719 _=/sbin/oh-my-posh FZF_DEFAULT_COMMAND=find -L JIRA_API_TOKEN=XAoSxEdHq8CEJR4Fs0MMCC18 TERMINAL=foot MOTD_SHOWN=pam HOME=/home/kgn LANG=en_DK.UTF-8 _JAVA_AWT_WM_NONREPARENTING=1 XDG_CURRENT_DESKTOP=Hyprland POSH_SHELL_VERSION=5.9 MEMORY_PRESSURE_WATCH=/sys/fs/cgroup/system.slice/system-getty.slice/getty@tty1.service/memory.pressure WAYLAND_DISPLAY=wayland-1 OSTYPE=linux-gnu CONDA_PROMPT_MODIFIER=false DEBEMAIL=kim.nielsen@group.one INVOCATION_ID=82eade5201fe4751a6f28a835fee95bb BAT_THEME=Catppuccin Mocha ONECOMID=kgn XDG_SESSION_CLASS=user TERM=xterm-kitty POSH_PROMPT_COUNT=8 LESS_TERMCAP_mb= LESS_TERMCAP_me= LESS_TERMCAP_md= LIBVIRT_DEFAULT_URI=qemu:///system USER=kgn HYPRLAND_INSTANCE_SIGNATURE=9a09eac79b85c846e3a865a9078a3f8ff65a9259_1724902838_1415809147 VISUAL=nvim DISPLAY=:0 LESS_TERMCAP_ue= SHLVL=2 MOZ_ENABLE_WAYLAND=1 LESS_TERMCAP_us= DEBCHANGE_AUTO_NMU=no XDG_VTNR=1 XDG_SESSION_ID=1 FCEDIT=nvim POSH_THEME=/home/kgn/.config/oh-my-posh/catppuccin_mocha.omp.json XDG_RUNTIME_DIR=/run/user/1000 DEBUGINFOD_URLS=https://debuginfod.archlinux.org  GIT_AUTHOR_NAME=Kim Gert Nielsen BROWSER=/sbin/google-chrome-stable PATH=/home/kgn/bin:/home/kgn/git/scripts:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/opt/cinc-workstation/embedded/bin/:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/kgn/go/bin:/home/kgn/git/core-tools/bin DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus MAIL=/var/spool/mail/kgn POWERLINE_COMMAND=oh-my-posh BG_JOBS=0 OLDPWD=/home/kgn GOPATH=/home/kgn/go KITTY_WINDOW_ID=1 COLORTERM=truecolor KITTY_PID=550409 KITTY_PUBLIC_KEY=1:(+aIWg3H78pd$1d<7pGW9Z}}=iTaW;x%i$t+`@Se TERMINFO=/usr/lib/kitty/terminfo KITTY_INSTALLATION_DIR=/usr/lib/kitty]
[TRACE] 16:15:01.294 terminal.go:Pwd() - 80ns
[TRACE] 16:15:01.294 terminal.go:Flags() - 271ns
[DEBUG] 16:15:01.294 terminal_unix.go:IsWsl:35 → false
[TRACE] 16:15:01.294 terminal_unix.go:IsWsl() - 2.375µs
[TRACE] 16:15:01.294 terminal.go:GOOS() - 20ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 30ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 20ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 31ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 20ns
[DEBUG] 16:15:01.294 terminal.go:User:333 → kgn
[TRACE] 16:15:01.294 terminal.go:User() - 2.535µs
[TRACE] 16:15:01.294 terminal.go:Pwd() - 190ns
[DEBUG] 16:15:01.294 terminal.go:Host:350 → osquery
[TRACE] 16:15:01.294 terminal.go:Host() - 3.006µs
[TRACE] 16:15:01.294 terminal.go:GOOS() - 90ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 20ns
[DEBUG] 16:15:01.294 terminal_unix.go:Platform:92 → arch
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → 2
[DEBUG] 16:15:01.294 segment.go:SetEnabled:115 → segment: Git
[TRACE] 16:15:01.294 terminal.go:Getenv(SHLVL) - 1.753µs
[TRACE] 16:15:01.294 terminal.go:TemplateCache() - 78.771µs
[TRACE] 16:15:01.294 terminal.go:Flags() - 40ns
[TRACE] 16:15:01.294 terminal.go:Pwd() - 40ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 51ns
[DEBUG] 16:15:01.294 segment.go:SetEnabled:115 → segment: Text
[DEBUG] 16:15:01.294 terminal_unix.go:IsWsl:35 → false
[TRACE] 16:15:01.294 terminal.go:TemplateCache() - 60ns
[TRACE] 16:15:01.294 terminal_unix.go:IsWsl() - 5.38µs
[TRACE] 16:15:01.294 terminal.go:Flags() - 80ns
[TRACE] 16:15:01.294 terminal_unix.go:IsWsl2() - 10.219µs
[TRACE] 16:15:01.294 terminal.go:Pwd() - 30ns
[TRACE] 16:15:01.294 terminal.go:GOOS() - 30ns
[DEBUG] 16:15:01.294 segment.go:SetEnabled:115 → segment: Session
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.294 terminal.go:Getenv(SSH_CONNECTION) - 11.011µs
[DEBUG] 16:15:01.294 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.294 terminal.go:GOOS() - 50ns
[TRACE] 16:15:01.294 terminal.go:Getenv(SSH_CLIENT) - 1.463µs
[DEBUG] 16:15:01.294 terminal_unix.go:Platform:92 → arch
[DEBUG] 16:15:01.295 terminal.go:CommandPath:392 → /sbin/git
[TRACE] 16:15:01.295 terminal.go:CommandPath(git) - 51.048µs
[TRACE] 16:15:01.295 terminal.go:HasCommand(git) - 55.728µs
[DEBUG] 16:15:01.295 git.go:shouldDisplay:285 → fetch_bare_info: false
[TRACE] 16:15:01.295 terminal.go:Pwd() - 150ns
[DEBUG] 16:15:01.295 terminal.go:ResolveSymlink:292 → /home/kgn
[TRACE] 16:15:01.295 terminal.go:ResolveSymlink(/home/kgn) - 16.532µs
[ERROR] 16:15:01.295 terminal.go:HasParentFilePath:556 → stat .git: no such file or directory
[TRACE] 16:15:01.295 terminal.go:HasParentFilePath(.git) - 59.024µs
[TRACE] 16:15:01.295 terminal.go:Flags() - 280ns
[TRACE] 16:15:01.295 terminal.go:Pwd() - 230ns
[TRACE] 16:15:01.295 terminal.go:GOOS() - 81ns
[DEBUG] 16:15:01.295 segment.go:SetEnabled:115 → segment: Path
[DEBUG] 16:15:01.295 path.go:128 → display_cygpath: false
[TRACE] 16:15:01.295 terminal.go:GOOS() - 60ns
[TRACE] 16:15:01.295 terminal.go:PathSeparator() - 71ns
[TRACE] 16:15:01.295 terminal.go:Pwd() - 91ns
[TRACE] 16:15:01.295 terminal.go:Shell() - 110ns
[TRACE] 16:15:01.295 terminal.go:Shell() - 60ns
[DEBUG] 16:15:01.295 path.go:replaceMappedLocations:514 → mapped_locations_enabled: true
[DEBUG] 16:15:01.295 path.go:replaceMappedLocations:515 → 
[DEBUG] 16:15:01.295 path.go:replaceMappedLocations:516 → 
[TRACE] 16:15:01.295 terminal.go:Flags() - 291ns
[TRACE] 16:15:01.295 terminal.go:GOOS() - 60ns
[DEBUG] 16:15:01.295 path.go:replaceMappedLocations:517 → ~
[DEBUG] 16:15:01.295 path.go:replaceMappedLocations:522 → mapped_locations: map[]
[TRACE] 16:15:01.295 terminal.go:Pwd() - 190ns
[TRACE] 16:15:01.295 terminal.go:GOOS() - 90ns
[DEBUG] 16:15:01.295 segment.go:SetEnabled:115 → segment: Os
[TRACE] 16:15:01.295 terminal.go:GOOS() - 70ns
[DEBUG] 16:15:01.295 terminal_unix.go:Platform:92 → arch
[TRACE] 16:15:01.295 terminal.go:GOOS() - 61ns
[DEBUG] 16:15:01.295 os.go:Enabled:39 → display_distro_name: false
[TRACE] 16:15:01.295 terminal.go:GOOS() - 50ns
[DEBUG] 16:15:01.295 os.go:getDistroIcon:84 → 
[DEBUG] 16:15:01.295 path.go:makeFolderFormatMap:838 → NO DATA
[TRACE] 16:15:01.295 terminal.go:TemplateCache() - 220ns
[TRACE] 16:15:01.295 terminal.go:Flags() - 50ns
[DEBUG] 16:15:01.295 path.go:colorizePath:712 → cycle: []
[DEBUG] 16:15:01.295 path.go:getFolderSeparator:250 → NO DATA
[DEBUG] 16:15:01.295 path.go:getFolderSeparator:252 → /
[DEBUG] 16:15:01.295 path.go:colorizePath:715 → cycle_folder_separator: false
[DEBUG] 16:15:01.295 path.go:colorizePath:716 → %s
[DEBUG] 16:15:01.295 path.go:colorizePath:718 → %s
[DEBUG] 16:15:01.295 path.go:colorizePath:719 → %s
[DEBUG] 16:15:01.295 path.go:colorizePath:720 → %s
[TRACE] 16:15:01.295 terminal.go:Pwd() - 60ns
[TRACE] 16:15:01.295 terminal.go:TemplateCache() - 191ns
[TRACE] 16:15:01.295 terminal.go:GOOS() - 50ns
[TRACE] 16:15:01.295 terminal.go:StackCount() - 90ns
[TRACE] 16:15:01.295 terminal_unix.go:DirIsWritable(/home/kgn) - 8.256µs
[TRACE] 16:15:01.295 terminal.go:TemplateCache() - 81ns
[DEBUG] 16:15:01.296 terminal.go:RunCommand:370 → NO DATA
[TRACE] 16:15:01.296 terminal.go:RunCommand(who am i) - 1.658674ms
[TRACE] 16:15:01.296 terminal.go:TemplateCache() - 251ns
[DEBUG] 16:15:01.296 text.go:Render:80 → rendering template: {{ .UserName }} 
[TRACE] 16:15:01.296 terminal.go:Flags() - 80ns
[DEBUG] 16:15:01.296 text.go:Render:80 → rendering template: <cyan>{{ if gt (int (.Env.BG_JOBS)) 0 }}[{{ .Env.BG_JOBS }}] {{ end }}</>
[DEBUG] 16:15:01.296 text.go:Render:80 → rendering template: {{ .Icon }} 
[TRACE] 16:15:01.296 terminal.go:Flags() - 50ns
[TRACE] 16:15:01.296 terminal.go:Flags() - 20ns
[DEBUG] 16:15:01.296 text.go:Render:80 → rendering template: {{ if gt .Code 0 }}{{ else }}{{ end }}
[TRACE] 16:15:01.296 terminal.go:Flags() - 120ns
[DEBUG] 16:15:01.296 text.go:Render:80 → rendering template: {{ .Path }} 
[TRACE] 16:15:01.297 terminal.go:Flags() - 161ns
[TRACE] 16:15:01.297 terminal.go:TemplateCache() - 170ns
[TRACE] 16:15:01.297 terminal.go:TemplateCache() - 261ns
[TRACE] 16:15:01.297 terminal.go:TemplateCache() - 171ns
[TRACE] 16:15:01.297 terminal.go:TemplateCache() - 120ns
[TRACE] 16:15:01.297 terminal.go:TemplateCache() - 410ns
[DEBUG] 16:15:01.297 text.go:Render:80 → rendering template: plain
[TRACE] 16:15:01.297 terminal.go:Flags() - 100ns
[DEBUG] 16:15:01.297 text.go:Render:80 → rendering template: plain
[TRACE] 16:15:01.297 terminal.go:Flags() - 50ns
[DEBUG] 16:15:01.297 text.go:Render:80 → rendering template: plain
[TRACE] 16:15:01.297 terminal.go:Flags() - 50ns
[DEBUG] 16:15:01.297 text.go:Render:80 → rendering template: plain
[TRACE] 16:15:01.297 terminal.go:Flags() - 50ns
[DEBUG] 16:15:01.297 text.go:Render:80 → rendering template: plain
[TRACE] 16:15:01.297 terminal.go:Flags() - 50ns
[DEBUG] 16:15:01.297 text.go:Render:80 → rendering template: {{ if gt .Code 0 }}#ff0000{{ end }}
[TRACE] 16:15:01.297 terminal.go:Flags() - 50ns
[TRACE] 16:15:01.298 terminal.go:TemplateCache() - 90ns
[DEBUG] 16:15:01.298 text.go:Render:80 → rendering template: {{ if eq .Code 0 }}#00ff9f{{ end }}
[TRACE] 16:15:01.298 terminal.go:Flags() - 50ns
[TRACE] 16:15:01.298 terminal.go:TemplateCache() - 50ns
[DEBUG] 16:15:01.298 text.go:Render:80 → rendering template: plain
[TRACE] 16:15:01.298 terminal.go:Flags() - 30ns
[DEBUG] 16:15:01.298 text.go:Render:80 → rendering template: {{ if gt .Code 0 }}#ff0000{{ end }}
[TRACE] 16:15:01.298 terminal.go:Flags() - 40ns
[TRACE] 16:15:01.298 terminal.go:TemplateCache() - 50ns
[DEBUG] 16:15:01.298 text.go:Render:80 → rendering template: {{ if eq .Code 0 }}#00ff9f{{ end }}
[TRACE] 16:15:01.298 terminal.go:Flags() - 20ns
[TRACE] 16:15:01.298 terminal.go:TemplateCache() - 50ns
[TRACE] 16:15:01.298 terminal.go:Shell() - 70ns
[TRACE] 16:15:01.298 terminal.go:Shell() - 20ns
[TRACE] 16:15:01.298 terminal.go:Shell() - 20ns
[TRACE] 16:15:01.298 terminal.go:Flags() - 30ns
[DEBUG] 16:15:01.298 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.298 terminal.go:Getenv(LOCALAPPDATA) - 2.434µs
[DEBUG] 16:15:01.298 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.298 terminal.go:Getenv(OMP_CACHE_DIR) - 1.483µs
[DEBUG] 16:15:01.298 terminal.go:Getenv:165 → NO DATA
[TRACE] 16:15:01.298 terminal.go:Getenv(XDG_CACHE_HOME) - 4.719µs
[TRACE] 16:15:01.298 terminal.go:CachePath() - 23.987µs
[TRACE] 16:15:01.298 terminal.go:Flags() - 31ns
JanDeDobbeleer commented 1 month ago

@desdic 23.7.2 didn't introduce something that can influence performance. What's the issue you're experiencing exactly, I don't understand, or might miss what you're trying to say.

desdic commented 1 month ago

Yeah I have a hard time trying to figure it out but .. when using 23.7.2 the terminal runs the command I want via Neovim but upgrading to 23.8+ you can see the command in the terminal before you get th prompt (Before oh-my-posh is ready) so it basically don't run the command. I tried switching terminal kitty, foot and then I tried downgrading oh-my-posh and then it works again. I tried to use starship or just plain zsh and they both work too so something happend from 23.7.2 that more or less makes it unusable in Neovim .. when just spawning a terminal I can't see or feel it being slower so maybe its a combination with libvterm somthing was introduced.

At first I though it was the plugin I was using, then neovim .. you can see the difference in this issue https://github.com/akinsho/toggleterm.nvim/issues/607 (screenshots)

JanDeDobbeleer commented 1 month ago

@desdic k check. I think we have a similar issue here already I need to look at. Duplicate of #5524