Product
Socket Now Supports uv.lock Files
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
@unified-latex/unified-latex-util-split
Advanced tools
Functions for modifying a unified-latex AST
Functions to manipulate unified-latex
Abstract Syntax Tree (AST).
If you want break apart or join an array of nodes based on a condition. For example,
this is used to split on &
characters in the align
environment.
npm install @unified-latex/unified-latex-util-split
This package contains both esm and commonjs exports. To explicitly access the esm export,
import the .js
file. To explicitly access the commonjs export, import the .cjs
file.
arrayJoin(array, sep)
Joins an array of arrays with the item sep
function arrayJoin<T>(array: T[][], sep: T | T[]): T[];
Parameters
Param | Type |
---|---|
array | T[][] |
sep | T | T[] |
splitOnCondition(nodes, splitFunc, options)
Split a list of nodes based on whether splitFunc
returns true
.
If onlySplitOnFirstOccurrence
is set to true in the options
object, then
there will be at most two segments returned.
function splitOnCondition(
nodes: Ast.Node[],
splitFunc: (node: Ast.Node) => boolean,
options: { onlySplitOnFirstOccurrence?: boolean }
): { segments: Ast.Node[][]; separators: Ast.Node[] };
Parameters
Param | Type |
---|---|
nodes | Ast.Node[] |
splitFunc | (node: Ast.Node) => boolean |
options | Omitted |
splitOnMacro(ast, macroName)
Split an array of AST nodes based on a macro. An object {segments: [], macros: []}
is returned. The original array is reconstructed as
segments[0] + macros[0] + segments[1] + ...
.
function splitOnMacro(
ast: Ast.Node[],
macroName: string | string[]
): { segments: Ast.Node[][]; macros: Ast.Macro[] };
Parameters
Param | Type |
---|---|
ast | Ast.Node[] |
macroName | string | string[] |
unsplitOnMacro({ segments, macros, })
Does the reverse of splitOnMacro
function unsplitOnMacro({
segments,
macros,
}: {
segments: Ast.Node[][];
macros: Ast.Node[] | Ast.Node[][];
}): Ast.Node[];
Parameters
Param | Type |
---|---|
{ segments, macros, } | Omitted |
FAQs
Functions for modifying a unified-latex AST
We found that @unified-latex/unified-latex-util-split demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.