From 0a1b14d5db090cc10dedd342ed32882de5a83cd2 Mon Sep 17 00:00:00 2001 From: uga-rosa Date: Fri, 29 Dec 2023 20:19:56 +0900 Subject: [PATCH] don't use prop_find --- denops/denippet/extmark.ts | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/denops/denippet/extmark.ts b/denops/denippet/extmark.ts index 132922a..6a74e73 100644 --- a/denops/denippet/extmark.ts +++ b/denops/denippet/extmark.ts @@ -101,20 +101,20 @@ export async function getExtmarks( end: boolean; }[]; + if (props.length === 0) { + return []; + } + const extmarks: Extmark[] = []; - for (let prop of props) { - if (!prop.start) { - continue; - } - const start = { line: prop.lnum - 1, character: prop.col - 1 }; - while (!prop.end) { - prop = await vim.prop_find(denops, { - type: propType, - lnum: prop.lnum + 1, - }) as typeof props[number]; + for (let i = 0; i < props.length; i++) { + if (props[i].start) { + const start = { line: props[i].lnum - 1, character: props[i].col - 1 }; + while (!props[i].end) { + i++; + } + const end = { line: props[i].lnum - 1, character: props[i].col - 1 }; + extmarks.push({ extmarkId: props[i].id, range: { start, end } }); } - const range = { start, end: { line: prop.lnum - 1, character: prop.col + prop.length - 1 } }; - extmarks.push({ extmarkId: prop.id, range }); } return extmarks; }