aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2023-11-16 17:03:00 +0100
committerFlorian Fischer <florian.fischer@muhq.space>2024-04-30 21:43:00 +0200
commit8608bc43a4f555b4a44847b3c83f500d6789a26f (patch)
tree34897edcbaad0c3335fe2d5f408f72edc94aee27
parentac70469a58676a5078b19bb8b5c7c09702a1db33 (diff)
downloadvis-lspc-8608bc43a4f555b4a44847b3c83f500d6789a26f.tar.gz
vis-lspc-8608bc43a4f555b4a44847b3c83f500d6789a26f.zip
add functions to compare LSP ranges and positions
-rw-r--r--init.lua10
1 files changed, 10 insertions, 0 deletions
diff --git a/init.lua b/init.lua
index 24a1466..5c71c01 100644
--- a/init.lua
+++ b/init.lua
@@ -312,6 +312,16 @@ local function lsp_range_to_vis_range(win, lsp_range)
return {start = start_pos, finish = finish_pos}
end
+-- return true if p1 is before p2
+local function lsp_pos_before(p1, p2)
+ return p1.line < p2.line or (p1.line == p2.line and p1.character < p2.character)
+end
+
+-- return true if r1 starts before r2
+local function lsp_range_starts_before(r1, r2)
+ return lsp_pos_before(r1.start, r2.start)
+end
+
-- concatenate all numeric values in choices and pass it on stdin to lspc.menu_cmd
local function lspc_select(choices)
local menu_input = ''