Standard escape codes are prefixed with Escape
:
- Ctrl-Key:
^[
- Octal:
\033
- Unicode:
\u001b
- Hexadecimal:
\x1B
- Decimal:
27
{ | |
"files.watcherExclude": { | |
"**/.coverage/**": true, | |
"**/docs/**": true, | |
"**/target/**": true | |
}, | |
"deno.enable": true, | |
"deno.lint": true, | |
"deno.codeLens.test": true, | |
"deno.cacheOnSave": true, |
// deno-lint-ignore-file no-explicit-any | |
/** | |
* Logger interface for parser/lexer. | |
*/ | |
export interface Logger { | |
debug(message: string, ...args: unknown[]): void; | |
info(message: string, ...args: unknown[]): void; | |
warning(message: string, ...args: unknown[]): void; | |
error(message: string, ...args: unknown[]): void; |
/** | |
* This module provides a block letter rendering utility for text, | |
* capable of rendering arbitrary strings into multiple styles of | |
* block letters using either ASCII characters or Unicode blocks. | |
* | |
* It's perfect for creating stylized text in console applications! | |
* | |
* | |
* @license MIT (https://nick.mit-license.org) | |
* @author Nicholas Berlette <https://github.com/nberlette> |
The MIT License (MIT) | |
Copyright (c) 2025+ Nicholas Berlette (https://github.com/nberlette) | |
Permission is hereby granted, free of charge, to any person obtaining a copy of | |
this software and associated documentation files (the "Software"), to deal in | |
the Software without restriction, including without limitation the rights to | |
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of | |
the Software, and to permit persons to whom the Software is furnished to do so, | |
subject to the following conditions: |
The MIT License (MIT) | |
Copyright (c) 2023-2025+ Nicholas Berlette (https://github.com/nberlette) | |
Permission is hereby granted, free of charge, to any person obtaining a copy of | |
this software and associated documentation files (the "Software"), to deal in | |
the Software without restriction, including without limitation the rights to | |
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of | |
the Software, and to permit persons to whom the Software is furnished to do so, | |
subject to the following conditions: |
import type { | |
Closer, | |
Reader, | |
ReaderSync, | |
Seeker, | |
SeekerSync, | |
Writer, | |
WriterSync, | |
} from "jsr:@std/[email protected]/types"; |
//! # `braces` | |
//! | |
//! This module implements Bash-like brace expansion. It supports | |
//! comma-separated options (e.g. `"a{b,c}d"` expands to `["abd", "acd"]`), | |
//! numeric sequences (e.g. `"file{1..3}.txt"`), alpha sequences, and even | |
//! nested brace expressions. It also supports stepped sequences (e.g. to | |
//! generate 10, 20, 30, etc. use `"file{10..30..10}.txt"`). | |
//! | |
//! The overall algorithm is similar to the TypeScript version: first the | |
//! string is “escaped” by swapping literal chars for tokens, balanced brace |
// deno-lint-ignore-file no-explicit-any no-namespace | |
import { inspect, type InspectOptions } from "node:util"; | |
// #region Validation Types | |
export type Err<T = never> = { | |
success: false; | |
error: string | ValidationError<T>; | |
}; |