lazyvim/lua
Vladimir Shvets 7d5365ad14
fix(lualine): pretty path fix for mixed case paths on Windows (#4911)
## Description

Here's an example of the issue:

```lua
local pretty_path = require('lazyvim.util').lualine.pretty_path({ relative = 'cwd' })

-- just a stub
local component = {
  create_hl = function() end,
  format_hl = function() return '' end,
  get_default_hl = function() return '' end
}

local cwd = vim.fn.getcwd()
vim.print('cwd: ' .. cwd)
vim.print('pretty path: ' .. pretty_path(component))

-- results if `cd d:\tmp` was called previously
-- cwd: d:\tmp
-- pretty path: d:\tmp\pretty_path_issue.lua
--
-- results if `cd D:\tmp` was called previously
-- cwd: D:\tmp
-- pretty path: pretty_path_issue.lua
```

Depending on the initial path of the `cd` we either get a pretty path or
we don't =)

I'm not sure if this should be fixed in the neovim itself (considering
windows paths as case-insensitive), but I would assume that would take a
lot longer to land there, if it's even considered a needed change

## Related Issue(s)

Somewhat related to #4763, where I've left a comment, but decided to
look a bit deeper

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2025-09-21 15:29:53 +02:00
..
lazyvim fix(lualine): pretty path fix for mixed case paths on Windows (#4911) 2025-09-21 15:29:53 +02:00