@cspell/cspell-tools
Version:
Tools to assist with the development of cSpell
61 lines • 2.56 kB
TypeScript
import { type Operator } from '@cspell/cspell-pipe/sync';
import type { CompileOptions } from './CompileOptions.js';
import type { AllowedSplitWordsCollection } from './WordsCollection.js';
export declare function normalizeTargetWords(options: CompileOptions): Operator<string>;
export interface ParseFileOptions {
/**
* Preserve case
* @default true
*/
keepCase?: boolean | undefined;
/**
* Tell the parser to split into words along spaces.
* @default false
*/
split?: boolean | undefined;
/**
* When splitting tells the parser to output both the split and non-split versions of the line.
* @default false
*/
splitKeepBoth?: boolean | undefined;
/**
* Use legacy splitting.
* @default false
*/
legacy?: boolean | undefined;
allowedSplitWords: AllowedSplitWordsCollection;
/**
* Words that have been split using the `allowedSplitWords` are added to the dictionary as compoundable words.
* These words are prefixed / suffixed with `*`.
* @default undefined
*/
storeSplitWordsAsCompounds: boolean | undefined;
/**
* Controls the minimum length of a compound word when storing words using `storeSplitWordsAsCompounds`.
* The compound words are prefixed / suffixed with `*`, to allow them to be combined with other compound words.
* If the length is too low, then the dictionary will consider many misspelled words as correct.
* @default 4
*/
minCompoundLength: number | undefined;
}
type ParseFileOptionsRequired = Required<ParseFileOptions>;
export declare const defaultParseDictionaryOptions: ParseFileOptionsRequired;
export declare const cSpellToolDirective = "cspell-tools:";
export declare const setOfCSpellDirectiveFlags: string[];
/**
* Normalizes a dictionary words based upon prefix / suffixes.
* Case insensitive versions are also generated.
* @param options - defines prefixes used when parsing lines.
* @returns words that have been normalized.
*/
export declare function createParseFileLineMapper(options?: Partial<ParseFileOptions>): Operator<string>;
/**
* Normalizes a dictionary words based upon prefix / suffixes.
* Case insensitive versions are also generated.
* @param lines - one word per line
* @param _options - defines prefixes used when parsing lines.
* @returns words that have been normalized.
*/
export declare function parseFileLines(lines: Iterable<string> | string, options: ParseFileOptions): Iterable<string>;
export {};
//# sourceMappingURL=wordListParser.d.ts.map