Files
neovim/runtime/doc
Justin M. Keyes ad27075c8d feat(pos): pos:to_offset(), pos.offset() (#39639)
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 })
```

Co-authored-by: Yi Ming <ofseed@foxmail.com>
2026-05-07 05:16:53 -04:00
..
2026-04-30 02:08:19 +02:00
2026-04-19 12:36:19 +00:00
2026-03-31 20:40:33 -04:00
2026-04-17 00:58:50 +00:00
2026-04-25 13:51:22 -04:00
2026-02-12 13:46:45 +01:00
2024-05-15 23:19:26 +02:00
2026-04-30 02:08:19 +02:00
2026-04-25 13:51:22 -04:00
2026-04-17 00:58:50 +00:00
2026-04-19 12:36:19 +00:00
2025-12-06 20:33:02 -05:00
2023-06-25 17:14:28 +02:00
2026-04-30 02:08:19 +02:00
2026-04-19 12:36:19 +00:00
2026-01-27 17:14:57 -05:00
2026-03-22 01:57:28 +01:00
2026-04-19 12:36:19 +00:00
2025-12-15 13:55:15 -05:00
2026-03-16 10:29:58 +01:00
2026-02-12 13:46:45 +01:00
2026-04-17 00:58:50 +00:00
2025-09-28 20:57:59 -07:00
2026-03-24 00:14:55 +01:00
2026-04-26 22:02:34 +02:00
2025-12-15 13:55:15 -05:00
2026-04-26 22:02:34 +02:00
2026-03-11 18:24:57 +01:00
2026-03-22 01:57:28 +01:00
2026-04-17 00:58:50 +00:00
2026-04-22 23:01:00 +00:00
2026-03-18 20:40:20 +01: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 15:56:12 +02:00
2026-04-12 15:56:12 +02:00
2026-03-11 12:39:49 +01:00
2025-12-15 13:55:15 -05:00
2026-04-17 00:58:50 +00:00
2026-04-25 13:51:22 -04:00
2026-04-30 02:08:19 +02:00