srs-document/node_modules/@unified-latex/unified-latex-util-align/README.md
2025-03-24 15:42:48 +07:00

80 lines
1.8 KiB
Markdown

<!-- DO NOT MODIFY -->
<!-- This file was autogenerated by build-docs.ts -->
<!-- Edit the docstring in index.ts and regenerate -->
<!-- rather than editing this file directly. -->
# unified-latex-util-align
## What is this?
Functions to parse an analyze "align" environments like `\begin{align}...\end{align}` or
`\begin{bmatrix}...\end{bmatrix}`.
## When should I use this?
If you need to process the contents of an align environment for, e.g., pretty-printing.
## Install
```bash
npm install @unified-latex/unified-latex-util-align
```
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.
# Functions
## `createMatchers(rowSepMacros, colSep)`
```typescript
function createMatchers(
rowSepMacros: string[],
colSep: string[]
): {
isRowSep: Ast.TypeGuard<Ast.Macro & { content: string }>;
isColSep: (node: Ast.Node) => boolean;
isWhitespace: (node: Ast.Node) => node is Ast.Whitespace;
isSameLineComment: (node: Ast.Node) => boolean;
isOwnLineComment: (node: Ast.Node) => boolean;
};
```
**Parameters**
| Param | Type |
| :----------- | :--------- |
| rowSepMacros | `string[]` |
| colSep | `string[]` |
## `parseAlignEnvironment(ast, colSep, rowSepMacros)`
Parse the content of an align environment into an array of row objects.
Each row object looks like
{
cells: [...],
colSeps: [...],
rowSep: ...,
trailingComment: ...
}
`...` may be an ast node or `null`.
```typescript
function parseAlignEnvironment(
ast: Ast.Node[],
colSep: string[],
rowSepMacros: string[]
): Row[];
```
**Parameters**
| Param | Type |
| :----------- | :----------- |
| ast | `Ast.Node[]` |
| colSep | `string[]` |
| rowSepMacros | `string[]` |