neovim/runtime/lua/vim
Famiu Haque 8e5c48b08d
feat(lua): vim.fs.normalize() resolves ".", ".." #28203
Problem:
`vim.fs.normalize` does not resolve `.` and `..` components. This makes
no sense as the entire point of normalization is to remove redundancy
from the path. The path normalization functions in several other
languages (Java, Python, C++, etc.) also resolve `.` and `..`
components.

Reference:
- Python: https://docs.python.org/3/library/os.path.html#os.path.normpath
- Java: https://docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html#normalize--
- C++: https://en.cppreference.com/w/cpp/filesystem/path/lexically_normal

Solution:
Resolve "." and ".." in `vim.fs.normalize`.

    Before:
    "~/foo/bar/../baz/./" => "~/foo/bar/../baz/."
    After:
    "~/foo/bar/../baz/./" => "~/foo/baz"
2024-04-16 12:13:44 -07:00
..
_meta feat(defaults): use ripgrep (rg) for 'grepprg' if available 2024-04-16 19:21:02 +02:00
filetype vim-patch:9.1.0289: filetype: some TeX files are not recognized (#28291) 2024-04-12 17:02:25 +08:00
func fix(treesitter): return correct match table in iter_captures() 2024-03-27 10:39:46 +00:00
lsp fix(vim.ui): open() may wait indefinitely #28325 2024-04-15 04:33:09 -07:00
provider refactor: rewrite ruby provider in lua 2024-01-24 19:26:53 +01:00
treesitter fix(treesitter): use tree range instead of tree root node range 2024-04-10 15:54:52 +01:00
ui/clipboard fix(osc52): use nvim_chan_send() to stderr for copying (#26690) 2023-12-21 11:47:04 +08:00
_comment.lua feat(comment): add built-in commenting 2024-04-05 18:07:43 +02:00
_defaults.lua feat(defaults): use ripgrep (rg) for 'grepprg' if available 2024-04-16 19:21:02 +02:00
_editor.lua fix(vim.ui): open() may wait indefinitely #28325 2024-04-15 04:33:09 -07:00
_init_packages.lua refactor(types): more fixes 2024-03-06 10:45:22 +00:00
_inspector.lua docs: support inline markdown 2024-03-09 11:21:55 +00:00
_meta.lua refactor(lsp): resolve the config-client entanglement 2024-02-13 14:49:20 +00:00
_options.lua docs: support inline markdown 2024-03-09 11:21:55 +00:00
_system.lua fix(vim.ui): open() may wait indefinitely #28325 2024-04-15 04:33:09 -07:00
_watch.lua fix: move fswatch linux check inside of vim.schedule (#27824) 2024-03-12 15:15:55 +08:00
diagnostic.lua feat(diagnostic): enable(…, opts) 2024-04-15 21:32:31 +02:00
F.lua fix(diagnostic): typing 2024-01-16 09:33:10 +00:00
filetype.lua vim-patch:9.1.0326: filetype: some requirements files are not recognized (#28360) 2024-04-16 09:33:33 +08:00
fs.lua feat(lua): vim.fs.normalize() resolves ".", ".." #28203 2024-04-16 12:13:44 -07:00
func.lua fix(treesitter): return correct match table in iter_captures() 2024-03-27 10:39:46 +00:00
glob.lua refactor(lua): refactored glob 2024-01-19 11:54:04 +00:00
health.lua revert: "feat(health): fold successful healthchecks #22866" 2024-04-13 01:18:40 +02:00
highlight.lua refactor(lua): type annotations 2024-03-16 19:26:10 +00:00
inspect.lua
iter.lua fix(vim.iter): use correct cmp function when truncating tail in take (#27998) 2024-03-23 16:46:54 -05:00
keymap.lua refactor(lua): type annotations 2024-03-16 19:26:10 +00:00
loader.lua refactor(types): more fixes 2024-03-06 10:45:22 +00:00
lsp.lua refactor(lsp): move workspace folder logic into the client 2024-04-02 16:47:17 +01:00
provider.lua refactor: create function for deferred loading 2024-02-03 16:53:41 +01:00
re.lua docs: auto-generate docs for vim.lpeg and vim.re 2024-01-14 11:08:33 +00:00
secure.lua refactor(lua): type annotations 2024-03-16 19:26:10 +00:00
shared.lua fix: vim.validate() order is not deterministic #28377 2024-04-16 07:31:43 -07:00
snippet.lua refactor(lua): type annotations 2024-03-16 19:26:10 +00:00
termcap.lua refactor(lua): type annotations 2024-03-16 19:26:10 +00:00
text.lua refactor(lua): type annotations 2024-03-16 19:26:10 +00:00
treesitter.lua docs: support inline markdown 2024-03-09 11:21:55 +00:00
ui.lua fix(vim.ui): open() may wait indefinitely #28325 2024-04-15 04:33:09 -07:00
uri.lua fix(lua): remove uri fragment from file paths (#27647) 2024-02-28 10:50:53 +01:00
version.lua docs: support inline markdown 2024-03-09 11:21:55 +00:00
vimhelp.lua docs: apply current colorscheme to default highlight groups 2023-12-20 18:58:40 +01:00