neovim/runtime/lua/vim
bfredl b522cb1ac3 refactor(grid): make screen rendering more multibyte than ever before
Problem: buffer text with composing chars are converted from UTF-8
to an array of up to seven UTF-32 values and then converted back
to UTF-8 strings.

Solution: Convert buffer text directly to UTF-8 based schar_T values.

The limit of the text size is now in schar_T bytes, which is currently
31+1 but easily could be raised as it no longer multiplies the size
of the entire screen grid when not used, the full size is only required
for temporary scratch buffers.

Also does some general cleanup to win_line text handling, which was
unnecessarily complicated due to multibyte rendering being an "opt-in"
feature long ago. Nowadays, a char is just a char, regardless if it consists
of one ASCII byte or multiple bytes.
2023-11-17 12:58:57 +01:00
..
_meta refactor(grid): make screen rendering more multibyte than ever before 2023-11-17 12:58:57 +01:00
filetype vim-patch:2f54c13292af 2023-11-04 12:55:25 +01:00
func feat(lua): add vim.func._memoize 2023-09-20 13:42:41 +01:00
lsp fix(lsp): advertise workspace.didChangeConfiguration capability (#26028) 2023-11-13 19:39:43 +01:00
treesitter fix(treesitter): set cursor position when opening inspector 2023-10-19 14:54:10 +02:00
ui/clipboard fix(osc52): use p for primary selection instead of s (#26076) 2023-11-16 19:52:22 -06:00
_defaults.lua refactor: use optional base argument of tonumber (#26070) 2023-11-16 12:25:50 -06:00
_editor.lua refactor: move defaults into separate module (#25929) 2023-11-08 09:33:37 -06:00
_init_packages.lua feat: add vim.text module (#26069) 2023-11-16 11:35:54 -06:00
_inspector.lua docs(lua): more improvements (#24387) 2023-07-18 15:42:30 +01:00
_meta.lua feat(lsp): add snippet API (#25301) 2023-10-21 08:51:26 +02:00
_options.lua docs: do not use deprecated functions #25334 2023-09-24 21:39:59 -07:00
_system.lua fix: windows timeouts have exit code 1 2023-09-05 17:10:04 +01:00
_watch.lua fix(lua): improve annotations for stricter luals diagnostics (#24609) 2023-08-09 11:06:13 +02:00
diagnostic.lua fix(diagnostic): virtual_text prefix function should have index and total (#25801) 2023-10-27 08:17:46 -05:00
F.lua docs: replace <pre> with ``` (#25136) 2023-09-14 08:23:01 -05:00
filetype.lua vim-patch:9.0.2104: wast filetype should be replaced by wat filetype 2023-11-14 21:51:28 +01:00
fs.lua docs: replace <pre> with ``` (#25136) 2023-09-14 08:23:01 -05:00
func.lua feat(lua): add vim.func._memoize 2023-09-20 13:42:41 +01:00
health.lua feat(health): fold successful healthchecks #22866 2023-06-06 08:42:26 -07:00
highlight.lua docs: replace <pre> with ``` (#25136) 2023-09-14 08:23:01 -05:00
inspect.lua fix(inspect): escape identifiers that are lua keywords (#19898) 2022-08-23 13:02:55 +02:00
iter.lua feat(vimdoc): support Markdown code blocks (#25127) 2023-09-13 08:38:28 -05:00
keymap.lua docs: fix type warnings 2023-09-23 23:46:45 +01:00
loader.lua fix(lua): improve annotations for stricter luals diagnostics (#24609) 2023-08-09 11:06:13 +02:00
lsp.lua feat(lsp)!: vim.lsp.inlay_hint.get(), enable(), is_enabled() #25512 2023-11-12 04:54:27 -08:00
re.lua build: bump lpeg to 1.1.0 (#25016) 2023-09-04 22:42:47 +02:00
secure.lua docs: fix type warnings 2023-09-23 23:46:45 +01:00
shared.lua docs: misc #24561 2023-09-20 04:15:23 -07:00
snippet.lua fix(lsp): do not cancel snippet when selecting placeholder (#25835) 2023-10-30 12:58:28 +01:00
termcap.lua feat(clipboard): enable OSC 52 clipboard provider by default (#26064) 2023-11-16 12:21:24 -06:00
text.lua feat: add vim.text module (#26069) 2023-11-16 11:35:54 -06:00
treesitter.lua docs(treesitter): add disclaimer about needing to parse before get_node() 2023-11-04 14:55:44 +01:00
ui.lua docs: replace <pre> with ``` (#25136) 2023-09-14 08:23:01 -05:00
uri.lua docs: fix type warnings 2023-09-23 23:46:45 +01:00
version.lua docs: replace <pre> with ``` (#25136) 2023-09-14 08:23:01 -05:00
vimhelp.lua feat(runtime): highlight hl groups in syntax.txt (#25050) 2023-09-08 21:05:35 +08:00