package forester
A tool for tending mathematical forests
Install
Dune Dependency
Authors
Maintainers
Sources
5.0.tar.gz
md5=24f4aed96a8b8af33aba13fba66f1b37
sha512=d36b896aca11858bb4a00fc704c16cc27a1f197bdb3e479d6132fd70f70d67d7158096285cb0b6fb00db14417f0f822cc27fe65d82f0971e42378fd8271ce573
doc/src/forester.language_server/Highlight.ml.html
Source file Highlight.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
(* * SPDX-FileCopyrightText: 2024 The Forester Project Contributors * * SPDX-License-Identifier: GPL-3.0-or-later OR Apache-2.0 WITH LLVM-exception * *) open Forester_prelude open Forester_core open Forester_compiler open struct module L = Lsp.Types module T = Types end let compute (params : L.DocumentHighlightParams.t) = let Lsp_state.{forest; _} = Lsp_state.get () in let uri = URI_scheme.lsp_uri_to_uri ~base: forest.config.url params.textDocument.uri in let@ tree = Option.map @~ State.get_code forest uri in let@ Range.{loc; value} = List.map @~ tree.nodes in let range = Lsp_shims.Loc.lsp_range_of_range loc in let kind = match value with | Code.Text _ | Code.Verbatim _ | Code.Group (_, _) | Code.Math (_, _) | Code.Ident _ | Code.Hash_ident _ | Code.Xml_ident (_, _) | Code.Subtree (_, _) | Code.Let (_, _, _) | Code.Open _ | Code.Scope _ | Code.Put (_, _) | Code.Default (_, _) | Code.Get _ | Code.Fun (_, _) | Code.Object _ | Code.Patch _ | Code.Call (_, _) | Code.Import (_, _) | Code.Def (_, _, _) | Code.Decl_xmlns (_, _) | Code.Alloc _ | Code.Namespace (_, _) | Code.Dx_sequent (_, _) | Code.Dx_query (_, _, _) | Code.Dx_prop (_, _) | Code.Dx_var _ | Code.Dx_const_content _ | Code.Dx_const_uri _ | Code.Comment _ | Code.Error _ -> None in L.DocumentHighlight.create ~range ?kind ()
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>