diff options
| author | Thomas Schmucker <ts@its1.de> | 2026-07-24 10:42:48 +0200 |
|---|---|---|
| committer | Thomas Schmucker <ts@its1.de> | 2026-07-24 10:46:53 +0200 |
| commit | 9433e7e35499ba5aa7a643b51c3d2101e174aa31 (patch) | |
| tree | d7141dbdf687ea1a72d0d04e986f32931083d4eb | |
| parent | 530a0a35903123ff87119d7a5527d1d440aa4051 (diff) | |
| download | dotfiles-9433e7e35499ba5aa7a643b51c3d2101e174aa31.tar.gz dotfiles-9433e7e35499ba5aa7a643b51c3d2101e174aa31.tar.bz2 dotfiles-9433e7e35499ba5aa7a643b51c3d2101e174aa31.zip | |
update_git_branch() nutzte '2>/dev/null', um Fehlerausgaben von
'git rev-parse' zu unterdruecken. /dev/null existiert unter Windows
nicht - cmd.exe interpretiert es als Dateipfad und meldet 'Das System
kann den angegebenen Pfad nicht finden', sichtbar in der Statuszeile.
devnull wird jetzt je nach vim.fn.has('win32') auf 'NUL' bzw.
'/dev/null' gesetzt. Zusaetzlich ein trailing \r vom systemlist()-
Ergebnis entfernt (zeigte sich als ^M in der Statuszeile).
| -rw-r--r-- | nvim/lua/config/statusline.lua | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/nvim/lua/config/statusline.lua b/nvim/lua/config/statusline.lua index 0ec6579..8a9c75a 100644 --- a/nvim/lua/config/statusline.lua +++ b/nvim/lua/config/statusline.lua | |||
| @@ -20,6 +20,10 @@ end | |||
| 20 | -- Git branch (buffer-lokal, gecached, kein redraw-spam) | 20 | -- Git branch (buffer-lokal, gecached, kein redraw-spam) |
| 21 | ---------------------------------------------------------------------- | 21 | ---------------------------------------------------------------------- |
| 22 | 22 | ||
| 23 | -- /dev/null gibt es unter Windows nicht (cmd.exe versteht das nicht als | ||
| 24 | -- Pfad und meldet "Das System kann den angegebenen Pfad nicht finden"). | ||
| 25 | local devnull = vim.fn.has("win32") == 1 and "NUL" or "/dev/null" | ||
| 26 | |||
| 23 | local function update_git_branch(bufnr) | 27 | local function update_git_branch(bufnr) |
| 24 | bufnr = bufnr or 0 | 28 | bufnr = bufnr or 0 |
| 25 | 29 | ||
| @@ -35,7 +39,12 @@ local function update_git_branch(bufnr) | |||
| 35 | return | 39 | return |
| 36 | end | 40 | end |
| 37 | 41 | ||
| 38 | local branch = vim.fn.systemlist("git rev-parse --abbrev-ref HEAD 2>/dev/null")[1] | 42 | local branch = vim.fn.systemlist("git rev-parse --abbrev-ref HEAD 2>" .. devnull)[1] |
| 43 | if branch then | ||
| 44 | -- unter Windows bleibt an systemlist()-Zeilen mitunter ein | ||
| 45 | -- trailing \r haengen (^M in der Statuszeile sichtbar) | ||
| 46 | branch = branch:gsub("\r$", "") | ||
| 47 | end | ||
| 39 | 48 | ||
| 40 | if branch and branch ~= "" then | 49 | if branch and branch ~= "" then |
| 41 | vim.b[bufnr].git_branch = " " .. branch .. " " | 50 | vim.b[bufnr].git_branch = " " .. branch .. " " |
