Module texcat

library for texcat

Info:

  • Copyright: 2025

Functions

get_sorted_keys (input) sort dictionary's keys
get_scope_link () get scope link

Class table

table:get_extensions_dir () get extensions directories
table:get_parser (progname) get parser
table:load_extensions_dir (extensions_dir) load extensions directories
table:parse (argv) parse command line arguments
table:list (data) list themes or syntaxes
table:get_list (list_type, theme, theme_type, extensions_dir) get list output
table:args_to_cfgs (args) change some values by command line arguments
table:search (extensions_dir, subdir) search parsers or queries
table:render (cfg) core function: render a file
table:main (argv) entry for texcat
table:get_color_map () convert theme information to color map

Class color_map

color_map:link_color_map (color_map, link) link color map

Class capture

capture:cut_captures (len, captures) cut captures to make them unoverlapped

Class range

range:get_hls (text, captures) get highlights
range:add_scope (color_map, captures) add child scopes to color map
range:require (name, extensions_dir) get tree-sitter parser, wrap ltreesitter.require()
range:get_syntax (name, extensions_dir) get tree-sitter syntax information
range:filter_query (code) remove neovim's query syntax
range:output (out, filename) output a file
range:split (str) split by "\n"
range:escape_tex (text, prefix) escape TeX, protect \, {, }
range:escape (text, prefix, math_escape) escape TeX with math escape
range:get_path (filename) get path of template https://github.com/nvim-neorocks/lux/issues/922
range:get_output (format, args) get output in format


Functions

get_sorted_keys (input)
sort dictionary's keys

Parameters:

  • input table

Returns:

    table names
get_scope_link ()
get scope link

Returns:

    link link

Class table

table:get_extensions_dir ()
get extensions directories

Returns:

    string[]
table:get_parser (progname)
get parser

Parameters:

  • progname string program name

Returns:

    table parser
table:load_extensions_dir (extensions_dir)
load extensions directories

Parameters:

  • extensions_dir string[]
table:parse (argv)
parse command line arguments

Parameters:

  • argv string[] command line arguments

Returns:

    cfg[] cfgs parsed configs
table:list (data)
list themes or syntaxes

Parameters:

  • data string[][]

Returns:

    string information
table:get_list (list_type, theme, theme_type, extensions_dir)
get list output

Parameters:

  • list_type string list type
  • theme string[] theme names
  • theme_type string theme type
  • extensions_dir string[] extensions directory
table:args_to_cfgs (args)
change some values by command line arguments

Parameters:

  • args table parsed result

Returns:

    cfg[] cfgs parsed configs
table:search (extensions_dir, subdir)
search parsers or queries

Parameters:

  • extensions_dir string[]
  • subdir string

Returns:

    table parsers
table:render (cfg)
core function: render a file

Parameters:

  • cfg cfg
table:main (argv)
entry for texcat

Parameters:

  • argv string[] command line arguments
table:get_color_map ()
convert theme information to color map

Returns:

    colormap colormap

Class color_map

color_map:link_color_map (color_map, link)
link color map

Parameters:

  • color_map color_map
  • link link

Returns:

    colormap colormap

Class capture

capture:cut_captures (len, captures)
cut captures to make them unoverlapped

Parameters:

  • len integer text length
  • captures capture[]

Returns:

    capture[] captures

Class range

range:get_hls (text, captures)
get highlights

Parameters:

  • text string
  • captures capture[]

Returns:

    hl[] hls
range:add_scope (color_map, captures)
add child scopes to color map

Parameters:

  • color_map color_map
  • captures capture[]
range:require (name, extensions_dir)
get tree-sitter parser, wrap ltreesitter.require()

Parameters:

  • name string
  • extensions_dir string[]

Returns:

    table parser
range:get_syntax (name, extensions_dir)
get tree-sitter syntax information

Parameters:

  • name string
  • extensions_dir string[]

Returns:

    syntax syntax
range:filter_query (code)
remove neovim's query syntax

Parameters:

  • code string
range:output (out, filename)
output a file

Parameters:

  • out string
  • filename string file name
range:split (str)
split by "\n"

Parameters:

  • str string

Returns:

    string[] tokens
range:escape_tex (text, prefix)
escape TeX, protect \, {, }

Parameters:

  • text string
  • prefix string

Returns:

    string text
range:escape (text, prefix, math_escape)
escape TeX with math escape

Parameters:

  • text string
  • prefix string
  • math_escape boolean

Returns:

    string text
range:get_path (filename)
get path of template https://github.com/nvim-neorocks/lux/issues/922

Parameters:

  • filename string template name

Returns:

    string file template path
range:get_output (format, args)
get output in format

Parameters:

  • format string
  • args table

Returns:

    string text
generated by LDoc 1.5.0 Last updated 2025-08-16 20:10:55