mirror of
https://github.com/neovim/neovim.git
synced 2026-11-06 05:16:52 +00:00
Problem:
- `vim.fs.abspath('fugitive:///a')` returns "<CWD>/fugitive:/a", so
filetype functions get a mangled path for URI buffers.
- `vim.fs.root()` doesn't accept "file://" URIs.
- No URI parser, so modules use ad-hoc scheme patterns, e.g.
`vim.ui.open('~/a:b')` treats the path as a URL.
Solution:
- Introduce `vim.uri.parse()`, and use it everywhere.
- DWIM: a one-letter "scheme" is a drive letter.
- `vim.fs.abspath()` returns URLs as-is.
- Expose `vim.uri` a module. Deprecate the old `vim.uri_xx()` names.
57 lines
1.5 KiB
Lua
57 lines
1.5 KiB
Lua
--- @meta
|
|
-- This file is NOT generated, edit it directly.
|
|
error('Cannot require a meta file')
|
|
|
|
--- @alias elem_or_list<T> T|T[]
|
|
|
|
---@type uv
|
|
vim.uv = ...
|
|
|
|
--- The following modules are loaded specially in _init_packages.lua
|
|
|
|
vim.F = require('vim.F')
|
|
vim._watch = require('vim._watch')
|
|
---@diagnostic disable-next-line: no-unknown
|
|
vim.async = require('vim.async')
|
|
vim.diagnostic = require('vim.diagnostic')
|
|
vim.filetype = require('vim.filetype')
|
|
vim.fs = require('vim.fs')
|
|
vim.func = require('vim.func')
|
|
vim.glob = require('vim.glob')
|
|
vim.health = require('vim.health')
|
|
vim.hl = require('vim.hl')
|
|
vim.inspect = require('vim.inspect')
|
|
vim.iter = require('vim.iter')
|
|
vim.keymap = require('vim.keymap')
|
|
vim.loader = require('vim.loader')
|
|
vim.log = require('vim.log')
|
|
vim.lsp = require('vim.lsp')
|
|
vim.net = require('vim.net')
|
|
vim.pack = require('vim.pack')
|
|
vim.pos = require('vim.pos')
|
|
vim.range = require('vim.range')
|
|
vim.re = require('vim.re')
|
|
vim.secure = require('vim.secure')
|
|
vim.snippet = require('vim.snippet')
|
|
vim.text = require('vim.text')
|
|
vim.treesitter = require('vim.treesitter')
|
|
vim.tty = require('vim.tty')
|
|
vim.ui = require('vim.ui')
|
|
vim.uri = require('vim.uri')
|
|
vim.version = require('vim.version')
|
|
|
|
--- @deprecated
|
|
vim.uri_decode = vim.uri.decode
|
|
--- @deprecated
|
|
vim.uri_encode = vim.uri.encode
|
|
--- @deprecated
|
|
vim.uri_from_bufnr = vim.uri.from_buf
|
|
--- @deprecated
|
|
vim.uri_from_fname = vim.uri.from_fname
|
|
--- @deprecated
|
|
vim.uri_to_bufnr = vim.uri.to_buf
|
|
--- @deprecated
|
|
vim.uri_to_fname = vim.uri.to_fname
|
|
|
|
vim.provider = require('vim.provider')
|