Skip to content

Commit 2737ef2

Browse files
fix: Improve parsing hyperlink like text (#571)
1 parent 7d4a3ff commit 2737ef2

File tree

2 files changed

+12
-11
lines changed

2 files changed

+12
-11
lines changed

lua/orgmode/colors/markup_highlighter.lua

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ local function is_valid_markup_range(match, _, source, _)
139139
end
140140

141141
local start_line = start_node:range()
142-
local end_line = start_node:range()
142+
local end_line = end_node:range()
143143

144144
if start_line ~= end_line then
145145
return false
@@ -194,9 +194,10 @@ local function is_valid_latex_range(match, _, source, _)
194194
end
195195

196196
local start_line = start_node_left:range()
197-
local end_line = start_node_left:range()
197+
local start_line_right = start_node_right:range()
198+
local end_line = end_node:range()
198199

199-
if start_line ~= end_line then
200+
if start_line ~= start_line_right or start_line ~= end_line then
200201
return false
201202
end
202203

queries/org/markup.scm

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
(expr "=" @verbatim.start "=" @verbatim.end (#org-is-valid-markup-range? @verbatim.start @verbatim.end))
1212
((expr "+" @strikethrough.start) (expr "+" @strikethrough.end) (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
1313
(expr "+" @strikethrough.start "+" @strikethrough.end (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
14-
((expr "[" @hyperlink.start) (expr "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
15-
(expr "[" @hyperlink.start "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
14+
((expr "[" @hyperlink.start . "[") (expr "]" . "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
15+
(expr "[" @hyperlink.start . "[" _ "]" . "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
1616
((expr ("\\" @text.math.start.left "(" @text.math.start.right)) (expr ("\\" ")" @text.math.end)) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
1717
(expr "\\" @text.math.start.left "(" @text.math.start.right "\\" ")" @text.math.end (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
1818
((expr ("\\" @text.math.start.left ("str")+ @text.math.start.right "{")) (expr "}" @text.math.end) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
@@ -33,8 +33,8 @@
3333
(expr "=" @verbatim.start "=" @verbatim.end (#org-is-valid-markup-range? @verbatim.start @verbatim.end))
3434
((expr "+" @strikethrough.start) (expr "+" @strikethrough.end) (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
3535
(expr "+" @strikethrough.start "+" @strikethrough.end (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
36-
((expr "[" @hyperlink.start) (expr "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
37-
(expr "[" @hyperlink.start "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
36+
((expr "[" @hyperlink.start . "[") (expr "]" . "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
37+
(expr "[" @hyperlink.start . "[" _ "]" . "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
3838
((expr ("\\" @text.math.start.left "(" @text.math.start.right)) (expr ("\\" ")" @text.math.end)) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
3939
(expr "\\" @text.math.start.left "(" @text.math.start.right "\\" ")" @text.math.end (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
4040
((expr ("\\" @text.math.start.left ("str")+ @text.math.start.right "{")) (expr "}" @text.math.end) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
@@ -55,8 +55,8 @@
5555
(expr "=" @verbatim.start "=" @verbatim.end (#org-is-valid-markup-range? @verbatim.start @verbatim.end))
5656
((expr "+" @strikethrough.start) (expr "+" @strikethrough.end) (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
5757
(expr "+" @strikethrough.start "+" @strikethrough.end (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
58-
((expr "[" @hyperlink.start) (expr "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
59-
(expr "[" @hyperlink.start "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
58+
((expr "[" @hyperlink.start . "[") (expr "]" . "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
59+
(expr "[" @hyperlink.start . "[" _ "]" . "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
6060
((expr ("\\" @text.math.start.left "(" @text.math.start.right)) (expr ("\\" ")" @text.math.end)) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
6161
(expr "\\" @text.math.start.left "(" @text.math.start.right "\\" ")" @text.math.end (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
6262
((expr ("\\" @text.math.start.left ("str")+ @text.math.start.right "{")) (expr "}" @text.math.end) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
@@ -77,8 +77,8 @@
7777
(expr "=" @verbatim.start "=" @verbatim.end (#org-is-valid-markup-range? @verbatim.start @verbatim.end))
7878
((expr "+" @strikethrough.start) (expr "+" @strikethrough.end) (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
7979
(expr "+" @strikethrough.start "+" @strikethrough.end (#org-is-valid-markup-range? @strikethrough.start @strikethrough.end))
80-
((expr "[" @hyperlink.start) (expr "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
81-
(expr "[" @hyperlink.start "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
80+
((expr "[" @hyperlink.start . "[") (expr "]" . "]" @hyperlink.end) (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
81+
(expr "[" @hyperlink.start . "[" _ "]" . "]" @hyperlink.end (#org-is-valid-hyperlink-range? @hyperlink.start @hyperlink.end))
8282
((expr ("\\" @text.math.start.left "(" @text.math.start.right)) (expr ("\\" ")" @text.math.end)) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
8383
(expr "\\" @text.math.start.left "(" @text.math.start.right "\\" ")" @text.math.end (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))
8484
((expr ("\\" @text.math.start.left ("str")+ @text.math.start.right "{")) (expr "}" @text.math.end) (#org-is-valid-latex-range? @text.math.start.left @text.math.start.right @text.math.end))

0 commit comments

Comments
 (0)