summaryrefslogtreecommitdiffstatshomepage
path: root/test/functional/core/path_spec.lua
AgeCommit message (Collapse)AuthorFiles
2026-04-24fix(path): normalize path slashes on Windows #37729tao1
Problem: On Windows, path separators may become inconsistent for various reasons, which makes normalization quite painful. Solution: Normalize paths to `/` at the entry boundaries and always use it internally, converting back only in rare cases where `\` is really needed (e.g. cmd.exe/bat scripts?). This is the first commit in a series of incremental steps. Note: * some funcs won't respect shellslash. e.g. `expand/fnamemodify` * some funcs still respect shellslash, but will be updated in a follow PR. e.g. `ex_pwd/f_chdir/f_getcwd` * uv's built-in funcs always return `\`. e.g. `uv.cwd/uv.exepath` Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
2026-04-14fix(gf): handle local `file:` URI paths #38915Barrett Ruth1
Problem: `gf` and `<cfile>` treat `file:/absolute/path` as a literal path and open `file:/...` instead of the local file. Solution: Strip the local `file:` prefix before path resolution in the hyperlink path code.
2026-03-11docs: api, messages, lsp, trustJustin M. Keyes1
gen_vimdoc.lua: In prepare for the upcoming release, comment-out the "Experimental" warning for prerelease features.
2024-04-23test: improve test conventionsdundargoc1
Specifically, functions that are run in the context of the test runner are put in module `test/testutil.lua` while the functions that are run in the context of the test session are put in `test/functional/testnvim.lua`. Closes https://github.com/neovim/neovim/issues/27004.
2024-04-10refactor(test): inject after_each differentlyLewis Russell1
2024-04-08test: improve test conventionsdundargoc1
Work on https://github.com/neovim/neovim/issues/27004.
2024-01-12test: rename (meths, funcs) -> (api, fn)Lewis Russell1
2024-01-03refactor: format test/*Justin M. Keyes1
2023-10-12refactor(test): cleanup #25614Justin M. Keyes1
- unnecessary separate describe() group - clear() wasn't called in the describe() group - unnecessary indirection in function parameters
2023-10-11test(core/path_spec): don't use fnameescape() (#25593)zeertzjq1
Using fnameescape() for the path argument of findfile() and finddir() is wrong, as fnameescape() is intended to be used for parts of Ex commands, not function arguments.
2023-10-10fix(file_search): path with spaces in finddir() and findfile() (#25493)Leonardo Mello1
Co-authored-by: dundargoc <gocdundar@gmail.com>
2023-10-06refactor: cleanupJustin M. Keyes1
2023-10-06fix: gf fails on "foo/bar.txt:1:2" on WindowsLeonardo Mello1
Problem: On Windows, "gf" fails on a filepath that has a line:column suffix. Example: E447: Can't find file "src/app/core/services/identity/identity.service.ts:64:23" Solution: - Remove ":" from 'isfname' on Windows. Colon is not a valid filename character (except for the drive-letter). - Handle drive letters specially in file_name_in_line(). Fixes #25160
2023-10-04fix(path): accept special characters on Windows (#25424)Leonardo Mello1
2022-11-22test: simplify platform detection (#21020)dundargoc1
Extend the capabilities of is_os to detect more platforms such as freebsd and openbsd. Also remove `iswin()` helper function as it can be replaced by `is_os("win")`.
2022-10-07fix: find multibyte file name in line (#20519)zeertzjq1
And remove unnecessary unsigned casts in fold marker comparison.
2017-10-02test: avoid extra clear() callsJustin M. Keyes1
also: various other cleanup
2017-10-02win: vim_FullName(): force backslashes #7287Ignas Anikevicius1
- Replace obvious cases of '/' literal with PATHSEP. (There are still some remaining cases that need closer inspection.) - Fixup tests: ui/screen_basic closes #7117 ref https://github.com/neovim/neovim/issues/2471#issuecomment-271193714