Files
neovim/runtime/doc
Yi Ming 9174157f74 feat(pos): pos:to_offset(), pos.offset() #39564
Problem:
For a given position, it is not easy to compare which of several other positions is closest to it.

Solution:
Add support for converting `vim.Pos` to a buffer byte offset.

This allows for sorting, e.g:
```lua
table.sort(positions, function(pos1, pos2)
  return pos1:to_offset() < pos2:to_offset()
end
```

Or a binary search, e.g:
```lua
vim.list.bisect(positions, pos, { key = function(pos) return pos:to_offset() end })
```
2026-05-06 16:37:16 -04:00
..
2026-04-29 17:37:47 -04:00
2026-04-29 17:37:47 -04:00
2026-04-01 07:59:51 +08:00
2026-04-16 10:48:11 -04:00
2026-04-25 11:16:18 -04:00
2026-02-12 13:46:45 +01:00
2024-05-15 23:19:26 +02:00
2026-04-29 17:37:47 -04:00
2026-04-25 11:16:18 -04:00
2026-04-16 10:48:11 -04:00
2026-04-18 15:38:59 -04:00
2025-12-06 20:33:02 -05:00
2023-06-25 17:14:28 +02:00
2026-04-29 17:37:47 -04:00
2026-04-18 15:38:59 -04:00
2026-01-27 17:14:57 -05:00
2026-04-18 15:38:59 -04:00
2026-03-29 20:53:24 -04:00
2025-12-15 13:55:15 -05:00
2026-03-16 10:29:58 +01:00
2026-04-16 10:48:11 -04:00
2025-09-28 20:57:59 -07:00
2026-03-24 00:14:55 +01:00
2026-04-26 20:25:49 +02:00
2025-12-15 13:55:15 -05:00
2026-04-26 20:25:49 +02:00
2026-03-22 01:57:28 +01:00
2026-04-16 10:48:11 -04:00
2026-04-22 18:25:07 -04:00
2026-01-07 08:11:42 +08:00
2026-03-24 00:14:55 +01:00
2025-12-06 20:33:02 -05:00
2026-04-12 14:17:50 +02:00
2026-04-12 14:17:50 +02:00
2026-03-11 12:39:49 +01:00
2025-12-15 13:55:15 -05:00
2026-04-29 17:37:47 -04:00
2026-04-29 17:37:47 -04:00