@travisennis/acai 0.0.3 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +225 -6
- package/dist/api/exa/index.d.ts +177 -0
- package/dist/api/exa/index.d.ts.map +1 -0
- package/dist/api/exa/index.js +439 -0
- package/dist/cli.d.ts +3 -2
- package/dist/cli.d.ts.map +1 -0
- package/dist/commands/application-log-command.d.ts +1 -0
- package/dist/commands/application-log-command.d.ts.map +1 -0
- package/dist/commands/application-log-command.js +5 -3
- package/dist/commands/clear-command.d.ts +1 -0
- package/dist/commands/clear-command.d.ts.map +1 -0
- package/dist/commands/clear-command.js +2 -3
- package/dist/commands/compact-command.d.ts +1 -0
- package/dist/commands/compact-command.d.ts.map +1 -0
- package/dist/commands/compact-command.js +1 -1
- package/dist/commands/copy-command.d.ts +1 -0
- package/dist/commands/copy-command.d.ts.map +1 -0
- package/dist/commands/copy-command.js +3 -2
- package/dist/commands/edit-command.d.ts +1 -0
- package/dist/commands/edit-command.d.ts.map +1 -0
- package/dist/commands/edit-command.js +7 -5
- package/dist/commands/edit-prompt-command.d.ts +2 -1
- package/dist/commands/edit-prompt-command.d.ts.map +1 -0
- package/dist/commands/edit-prompt-command.js +15 -7
- package/dist/commands/exit-command.d.ts +13 -2
- package/dist/commands/exit-command.d.ts.map +1 -0
- package/dist/commands/exit-command.js +14 -2
- package/dist/commands/files-command.d.ts +1 -0
- package/dist/commands/files-command.d.ts.map +1 -0
- package/dist/commands/files-command.js +9 -8
- package/dist/commands/generate-rules-command.d.ts +1 -0
- package/dist/commands/generate-rules-command.d.ts.map +1 -0
- package/dist/commands/generate-rules-command.js +4 -3
- package/dist/commands/health-command.d.ts +3 -1
- package/dist/commands/health-command.d.ts.map +1 -0
- package/dist/commands/health-command.js +42 -5
- package/dist/commands/help-command.d.ts +1 -0
- package/dist/commands/help-command.d.ts.map +1 -0
- package/dist/commands/help-command.js +2 -3
- package/dist/commands/init-command.d.ts +1 -0
- package/dist/commands/init-command.d.ts.map +1 -0
- package/dist/commands/init-command.js +1 -2
- package/dist/commands/last-log-command.d.ts +1 -0
- package/dist/commands/last-log-command.d.ts.map +1 -0
- package/dist/commands/last-log-command.js +12 -17
- package/dist/commands/list-tools-command.d.ts +3 -0
- package/dist/commands/list-tools-command.d.ts.map +1 -0
- package/dist/commands/list-tools-command.js +61 -0
- package/dist/commands/manager.d.ts +7 -2
- package/dist/commands/manager.d.ts.map +1 -0
- package/dist/commands/manager.js +43 -6
- package/dist/commands/model-command.d.ts +1 -0
- package/dist/commands/model-command.d.ts.map +1 -0
- package/dist/commands/model-command.js +5 -5
- package/dist/commands/paste-command.d.ts +1 -0
- package/dist/commands/paste-command.d.ts.map +1 -0
- package/dist/commands/paste-command.js +6 -5
- package/dist/commands/prompt-command.d.ts +2 -1
- package/dist/commands/prompt-command.d.ts.map +1 -0
- package/dist/commands/prompt-command.js +62 -8
- package/dist/commands/reset-command.d.ts +1 -0
- package/dist/commands/reset-command.d.ts.map +1 -0
- package/dist/commands/reset-command.js +1 -1
- package/dist/commands/rules-command.d.ts +1 -0
- package/dist/commands/rules-command.d.ts.map +1 -0
- package/dist/commands/rules-command.js +5 -3
- package/dist/commands/save-command.d.ts +1 -0
- package/dist/commands/save-command.d.ts.map +1 -0
- package/dist/commands/save-command.js +1 -1
- package/dist/commands/shell-command.d.ts +3 -0
- package/dist/commands/shell-command.d.ts.map +1 -0
- package/dist/commands/shell-command.js +60 -0
- package/dist/commands/types.d.ts +9 -6
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/usage-command.d.ts +1 -0
- package/dist/commands/usage-command.d.ts.map +1 -0
- package/dist/commands/usage-command.js +2 -3
- package/dist/config.d.ts +22 -34
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +61 -15
- package/dist/conversation-analyzer.d.ts +2 -1
- package/dist/conversation-analyzer.d.ts.map +1 -0
- package/dist/dedent.d.ts +1 -0
- package/dist/dedent.d.ts.map +1 -0
- package/dist/execution/index.d.ts +112 -0
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/index.js +432 -0
- package/dist/formatting.d.ts +2 -13
- package/dist/formatting.d.ts.map +1 -0
- package/dist/formatting.js +5 -64
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -4
- package/dist/logger.d.ts +1 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/mentions.d.ts +4 -0
- package/dist/mentions.d.ts.map +1 -0
- package/dist/mentions.js +42 -10
- package/dist/messages.d.ts +8 -20
- package/dist/messages.d.ts.map +1 -0
- package/dist/messages.js +33 -53
- package/dist/middleware/audit-message.d.ts +1 -0
- package/dist/middleware/audit-message.d.ts.map +1 -0
- package/dist/middleware/index.d.ts +1 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/rate-limit.d.ts +1 -0
- package/dist/middleware/rate-limit.d.ts.map +1 -0
- package/dist/models/ai-config.d.ts +1 -0
- package/dist/models/ai-config.d.ts.map +1 -0
- package/dist/models/anthropic-provider.d.ts +1 -0
- package/dist/models/anthropic-provider.d.ts.map +1 -0
- package/dist/models/deepseek-provider.d.ts +1 -0
- package/dist/models/deepseek-provider.d.ts.map +1 -0
- package/dist/models/google-provider.d.ts +1 -0
- package/dist/models/google-provider.d.ts.map +1 -0
- package/dist/models/groq-provider.d.ts +20 -0
- package/dist/models/groq-provider.d.ts.map +1 -0
- package/dist/models/groq-provider.js +31 -0
- package/dist/models/manager.d.ts +1 -0
- package/dist/models/manager.d.ts.map +1 -0
- package/dist/models/openai-provider.d.ts +2 -1
- package/dist/models/openai-provider.d.ts.map +1 -0
- package/dist/models/openrouter-provider.d.ts +31 -22
- package/dist/models/openrouter-provider.d.ts.map +1 -0
- package/dist/models/openrouter-provider.js +115 -1
- package/dist/models/providers.d.ts +4 -5
- package/dist/models/providers.d.ts.map +1 -0
- package/dist/models/providers.js +7 -3
- package/dist/models/xai-provider.d.ts +1 -0
- package/dist/models/xai-provider.d.ts.map +1 -0
- package/dist/parsing.d.ts +2 -1
- package/dist/parsing.d.ts.map +1 -0
- package/dist/prompts/manager.d.ts +14 -2
- package/dist/prompts/manager.d.ts.map +1 -0
- package/dist/prompts.d.ts +1 -0
- package/dist/prompts.d.ts.map +1 -0
- package/dist/prompts.js +17 -11
- package/dist/repl/display-tool-messages.d.ts +4 -0
- package/dist/repl/display-tool-messages.d.ts.map +1 -0
- package/dist/repl/display-tool-messages.js +55 -0
- package/dist/repl/display-tool-use.d.ts +14 -0
- package/dist/repl/display-tool-use.d.ts.map +1 -0
- package/dist/repl/display-tool-use.js +63 -0
- package/dist/repl/get-prompt-header.d.ts +8 -0
- package/dist/repl/get-prompt-header.d.ts.map +1 -0
- package/dist/repl/get-prompt-header.js +38 -0
- package/dist/repl/tool-call-repair.d.ts +4 -0
- package/dist/repl/tool-call-repair.d.ts.map +1 -0
- package/dist/repl/tool-call-repair.js +50 -0
- package/dist/repl-prompt.d.ts +1 -0
- package/dist/repl-prompt.d.ts.map +1 -0
- package/dist/repl.d.ts +8 -4
- package/dist/repl.d.ts.map +1 -0
- package/dist/repl.js +108 -252
- package/dist/terminal/ansi-styles.d.ts +77 -0
- package/dist/terminal/ansi-styles.d.ts.map +1 -0
- package/dist/terminal/ansi-styles.js +215 -0
- package/dist/terminal/checkbox-prompt.d.ts +36 -0
- package/dist/terminal/checkbox-prompt.d.ts.map +1 -0
- package/dist/terminal/checkbox-prompt.js +362 -0
- package/dist/terminal/default-theme.d.ts +6 -0
- package/dist/terminal/default-theme.d.ts.map +1 -0
- package/dist/terminal/default-theme.js +182 -0
- package/dist/terminal/east-asian-width.d.ts +8 -0
- package/dist/terminal/east-asian-width.d.ts.map +1 -0
- package/dist/terminal/east-asian-width.js +409 -0
- package/dist/terminal/editor-prompt.d.ts +10 -0
- package/dist/terminal/editor-prompt.d.ts.map +1 -0
- package/dist/terminal/editor-prompt.js +61 -0
- package/dist/terminal/errors.d.ts +19 -0
- package/dist/terminal/errors.d.ts.map +1 -0
- package/dist/terminal/errors.js +37 -0
- package/dist/terminal/formatting.d.ts +1 -11
- package/dist/terminal/formatting.d.ts.map +1 -0
- package/dist/terminal/formatting.js +4 -20
- package/dist/terminal/highlight/index.d.ts +53 -0
- package/dist/terminal/highlight/index.d.ts.map +1 -0
- package/dist/terminal/highlight/index.js +90 -0
- package/dist/terminal/highlight/theme.d.ts +233 -0
- package/dist/terminal/highlight/theme.d.ts.map +1 -0
- package/dist/terminal/highlight/theme.js +83 -0
- package/dist/terminal/index.d.ts +16 -9
- package/dist/terminal/index.d.ts.map +1 -0
- package/dist/terminal/index.js +42 -126
- package/dist/terminal/input-prompt.d.ts +16 -0
- package/dist/terminal/input-prompt.d.ts.map +1 -0
- package/dist/terminal/input-prompt.js +181 -0
- package/dist/terminal/markdown-utils.d.ts +1 -0
- package/dist/terminal/markdown-utils.d.ts.map +1 -0
- package/dist/terminal/markdown.d.ts +1 -0
- package/dist/terminal/markdown.d.ts.map +1 -0
- package/dist/terminal/markdown.js +17 -12
- package/dist/terminal/search-prompt.d.ts +20 -0
- package/dist/terminal/search-prompt.d.ts.map +1 -0
- package/dist/terminal/search-prompt.js +279 -0
- package/dist/terminal/select-prompt.d.ts +26 -0
- package/dist/terminal/select-prompt.d.ts.map +1 -0
- package/dist/terminal/select-prompt.js +298 -0
- package/dist/terminal/string-width.d.ts +7 -0
- package/dist/terminal/string-width.d.ts.map +1 -0
- package/dist/terminal/string-width.js +61 -0
- package/dist/terminal/strip-ansi.d.ts +2 -0
- package/dist/terminal/strip-ansi.d.ts.map +1 -0
- package/dist/terminal/strip-ansi.js +20 -0
- package/dist/terminal/style.d.ts +191 -0
- package/dist/terminal/style.d.ts.map +1 -0
- package/dist/terminal/style.js +259 -0
- package/dist/terminal/supports-color.d.ts +1 -0
- package/dist/terminal/supports-color.d.ts.map +1 -0
- package/dist/terminal/supports-hyperlinks.d.ts +1 -3
- package/dist/terminal/supports-hyperlinks.d.ts.map +1 -0
- package/dist/terminal/supports-hyperlinks.js +1 -1
- package/dist/terminal/types.d.ts +1 -37
- package/dist/terminal/types.d.ts.map +1 -0
- package/dist/terminal/wrap-ansi.d.ts +8 -0
- package/dist/terminal/wrap-ansi.d.ts.map +1 -0
- package/dist/terminal/wrap-ansi.js +190 -0
- package/dist/{token-utils.d.ts → tokens/counter.d.ts} +1 -0
- package/dist/tokens/counter.d.ts.map +1 -0
- package/dist/{token-utils.js → tokens/counter.js} +1 -1
- package/dist/tokens/manage-output.d.ts +34 -0
- package/dist/tokens/manage-output.d.ts.map +1 -0
- package/dist/tokens/manage-output.js +44 -0
- package/dist/{token-tracker.d.ts → tokens/tracker.d.ts} +1 -0
- package/dist/tokens/tracker.d.ts.map +1 -0
- package/dist/tool-executor.d.ts +28 -0
- package/dist/tool-executor.d.ts.map +1 -0
- package/dist/tool-executor.js +74 -0
- package/dist/tools/agent.d.ts +3 -2
- package/dist/tools/agent.d.ts.map +1 -0
- package/dist/tools/agent.js +7 -4
- package/dist/tools/bash-utils.d.ts +7 -0
- package/dist/tools/bash-utils.d.ts.map +1 -0
- package/dist/tools/bash-utils.js +212 -0
- package/dist/tools/bash.d.ts +9 -7
- package/dist/tools/bash.d.ts.map +1 -0
- package/dist/tools/bash.js +95 -212
- package/dist/tools/code-interpreter.d.ts +1 -0
- package/dist/tools/code-interpreter.d.ts.map +1 -0
- package/dist/tools/code-interpreter.js +33 -8
- package/dist/tools/delete-file.d.ts +5 -3
- package/dist/tools/delete-file.d.ts.map +1 -0
- package/dist/tools/delete-file.js +47 -33
- package/dist/tools/directory-tree.d.ts +10 -1
- package/dist/tools/directory-tree.d.ts.map +1 -0
- package/dist/tools/directory-tree.js +91 -8
- package/dist/tools/dynamic-tool-loader.d.ts +12 -0
- package/dist/tools/dynamic-tool-loader.d.ts.map +1 -0
- package/dist/tools/dynamic-tool-loader.js +280 -0
- package/dist/tools/dynamic-tool-parser.d.ts +20 -0
- package/dist/tools/dynamic-tool-parser.d.ts.map +1 -0
- package/dist/tools/dynamic-tool-parser.js +21 -0
- package/dist/tools/edit-file.d.ts +10 -2
- package/dist/tools/edit-file.d.ts.map +1 -0
- package/dist/tools/edit-file.js +117 -40
- package/dist/tools/file-editing-utils.d.ts +2 -0
- package/dist/tools/file-editing-utils.d.ts.map +1 -0
- package/dist/tools/file-editing-utils.js +135 -0
- package/dist/tools/filesystem-utils.d.ts +6 -21
- package/dist/tools/filesystem-utils.d.ts.map +1 -0
- package/dist/tools/filesystem-utils.js +96 -148
- package/dist/tools/git-utils.d.ts +1 -0
- package/dist/tools/git-utils.d.ts.map +1 -0
- package/dist/tools/grep.d.ts +5 -3
- package/dist/tools/grep.d.ts.map +1 -0
- package/dist/tools/grep.js +67 -27
- package/dist/tools/index.d.ts +10 -14
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +33 -22
- package/dist/tools/move-file.d.ts +1 -0
- package/dist/tools/move-file.d.ts.map +1 -0
- package/dist/tools/move-file.js +12 -5
- package/dist/tools/read-file.d.ts +2 -1
- package/dist/tools/read-file.d.ts.map +1 -0
- package/dist/tools/read-file.js +13 -6
- package/dist/tools/read-multiple-files.d.ts +2 -1
- package/dist/tools/read-multiple-files.d.ts.map +1 -0
- package/dist/tools/read-multiple-files.js +90 -9
- package/dist/tools/save-file.d.ts +5 -3
- package/dist/tools/save-file.d.ts.map +1 -0
- package/dist/tools/save-file.js +64 -36
- package/dist/tools/think.d.ts +1 -0
- package/dist/tools/think.d.ts.map +1 -0
- package/dist/tools/think.js +5 -1
- package/dist/tools/types.d.ts +14 -1
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/web-fetch.d.ts +4 -2
- package/dist/tools/web-fetch.d.ts.map +1 -0
- package/dist/tools/web-fetch.js +2 -2
- package/dist/tools/web-search.d.ts +2 -1
- package/dist/tools/web-search.d.ts.map +1 -0
- package/dist/tools/web-search.js +46 -11
- package/dist/utils/filesystem.d.ts +23 -0
- package/dist/utils/filesystem.d.ts.map +1 -0
- package/dist/utils/filesystem.js +140 -0
- package/dist/utils/filetype-detection.d.ts +3 -0
- package/dist/utils/filetype-detection.d.ts.map +1 -0
- package/dist/utils/filetype-detection.js +112 -0
- package/dist/utils/glob.d.ts +52 -0
- package/dist/utils/glob.d.ts.map +1 -0
- package/dist/utils/glob.js +376 -0
- package/dist/utils/ignore.d.ts +104 -0
- package/dist/utils/ignore.d.ts.map +1 -0
- package/dist/utils/ignore.js +649 -0
- package/dist/utils/process.d.ts +10 -1
- package/dist/utils/process.d.ts.map +1 -0
- package/dist/utils/process.js +104 -5
- package/dist/utils/zod-utils.d.ts +4 -0
- package/dist/utils/zod-utils.d.ts.map +1 -0
- package/dist/utils/zod-utils.js +7 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.d.ts.map +1 -0
- package/package.json +32 -30
- package/dist/tools/command-validation.d.ts +0 -12
- package/dist/tools/command-validation.js +0 -113
- /package/dist/{token-tracker.js → tokens/tracker.js} +0 -0
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import style from "./style.js";
|
|
2
|
+
/**
|
|
3
|
+
* Identity function for tokens that should not be styled (returns the input string as-is).
|
|
4
|
+
* See [[Theme]] for an example.
|
|
5
|
+
*/
|
|
6
|
+
const plain = (codePart) => codePart;
|
|
7
|
+
/**
|
|
8
|
+
* The default theme. It is possible to override just individual keys.
|
|
9
|
+
*/
|
|
10
|
+
export const DEFAULT_THEME = {
|
|
11
|
+
/**
|
|
12
|
+
* keyword in a regular Algol-style language
|
|
13
|
+
*/
|
|
14
|
+
keyword: style.blue,
|
|
15
|
+
/**
|
|
16
|
+
* built-in or library object (constant, class, function)
|
|
17
|
+
*/
|
|
18
|
+
// biome-ignore lint/style/useNamingConvention: API name from highlight.js
|
|
19
|
+
built_in: style.cyan,
|
|
20
|
+
/**
|
|
21
|
+
* user-defined type in a language with first-class syntactically significant types, like
|
|
22
|
+
* Haskell
|
|
23
|
+
*/
|
|
24
|
+
type: style.cyan.dim,
|
|
25
|
+
/**
|
|
26
|
+
* special identifier for a built-in value ("true", "false", "null")
|
|
27
|
+
*/
|
|
28
|
+
literal: style.blue,
|
|
29
|
+
/**
|
|
30
|
+
* number, including units and modifiers, if any.
|
|
31
|
+
*/
|
|
32
|
+
number: style.green,
|
|
33
|
+
/**
|
|
34
|
+
* literal regular expression
|
|
35
|
+
*/
|
|
36
|
+
regexp: style.red,
|
|
37
|
+
/**
|
|
38
|
+
* literal string, character
|
|
39
|
+
*/
|
|
40
|
+
string: style.red,
|
|
41
|
+
/**
|
|
42
|
+
* parsed section inside a literal string
|
|
43
|
+
*/
|
|
44
|
+
subst: plain,
|
|
45
|
+
/**
|
|
46
|
+
* symbolic constant, interned string, goto label
|
|
47
|
+
*/
|
|
48
|
+
symbol: plain,
|
|
49
|
+
/**
|
|
50
|
+
* class or class-level declaration (interfaces, traits, modules, etc)
|
|
51
|
+
*/
|
|
52
|
+
class: style.blue,
|
|
53
|
+
/**
|
|
54
|
+
* function or method declaration
|
|
55
|
+
*/
|
|
56
|
+
function: style.yellow,
|
|
57
|
+
/**
|
|
58
|
+
* name of a class or a function at the place of declaration
|
|
59
|
+
*/
|
|
60
|
+
title: plain,
|
|
61
|
+
/**
|
|
62
|
+
* block of function arguments (parameters) at the place of declaration
|
|
63
|
+
*/
|
|
64
|
+
params: plain,
|
|
65
|
+
/**
|
|
66
|
+
* comment
|
|
67
|
+
*/
|
|
68
|
+
comment: style.green,
|
|
69
|
+
/**
|
|
70
|
+
* documentation markup within comments
|
|
71
|
+
*/
|
|
72
|
+
doctag: style.green,
|
|
73
|
+
/**
|
|
74
|
+
* flags, modifiers, annotations, processing instructions, preprocessor directive, etc
|
|
75
|
+
*/
|
|
76
|
+
meta: style.gray,
|
|
77
|
+
/**
|
|
78
|
+
* keyword or built-in within meta construct
|
|
79
|
+
*/
|
|
80
|
+
"meta-keyword": plain,
|
|
81
|
+
/**
|
|
82
|
+
* string within meta construct
|
|
83
|
+
*/
|
|
84
|
+
"meta-string": plain,
|
|
85
|
+
/**
|
|
86
|
+
* heading of a section in a config file, heading in text markup
|
|
87
|
+
*/
|
|
88
|
+
section: plain,
|
|
89
|
+
/**
|
|
90
|
+
* XML/HTML tag
|
|
91
|
+
*/
|
|
92
|
+
tag: style.gray,
|
|
93
|
+
/**
|
|
94
|
+
* name of an XML tag, the first word in an s-expression
|
|
95
|
+
*/
|
|
96
|
+
name: style.blue,
|
|
97
|
+
/**
|
|
98
|
+
* s-expression name from the language standard library
|
|
99
|
+
*/
|
|
100
|
+
"builtin-name": plain,
|
|
101
|
+
/**
|
|
102
|
+
* name of an attribute with no language defined semantics (keys in JSON, setting names in
|
|
103
|
+
* .ini), also sub-attribute within another highlighted object, like XML tag
|
|
104
|
+
*/
|
|
105
|
+
attr: style.cyan,
|
|
106
|
+
/**
|
|
107
|
+
* name of an attribute followed by a structured value part, like CSS properties
|
|
108
|
+
*/
|
|
109
|
+
attribute: plain,
|
|
110
|
+
/**
|
|
111
|
+
* variable in a config or a template file, environment var expansion in a script
|
|
112
|
+
*/
|
|
113
|
+
variable: plain,
|
|
114
|
+
/**
|
|
115
|
+
* list item bullet in text markup
|
|
116
|
+
*/
|
|
117
|
+
bullet: plain,
|
|
118
|
+
/**
|
|
119
|
+
* code block in text markup
|
|
120
|
+
*/
|
|
121
|
+
code: plain,
|
|
122
|
+
/**
|
|
123
|
+
* emphasis in text markup
|
|
124
|
+
*/
|
|
125
|
+
emphasis: style.italic,
|
|
126
|
+
/**
|
|
127
|
+
* strong emphasis in text markup
|
|
128
|
+
*/
|
|
129
|
+
strong: style.bold,
|
|
130
|
+
/**
|
|
131
|
+
* mathematical formula in text markup
|
|
132
|
+
*/
|
|
133
|
+
formula: plain,
|
|
134
|
+
/**
|
|
135
|
+
* hyperlink in text markup
|
|
136
|
+
*/
|
|
137
|
+
link: style.underline,
|
|
138
|
+
/**
|
|
139
|
+
* quotation in text markup
|
|
140
|
+
*/
|
|
141
|
+
quote: plain,
|
|
142
|
+
/**
|
|
143
|
+
* tag selector in CSS
|
|
144
|
+
*/
|
|
145
|
+
"selector-tag": plain,
|
|
146
|
+
/**
|
|
147
|
+
* #id selector in CSS
|
|
148
|
+
*/
|
|
149
|
+
"selector-id": plain,
|
|
150
|
+
/**
|
|
151
|
+
* .class selector in CSS
|
|
152
|
+
*/
|
|
153
|
+
"selector-class": plain,
|
|
154
|
+
/**
|
|
155
|
+
* [attr] selector in CSS
|
|
156
|
+
*/
|
|
157
|
+
"selector-attr": plain,
|
|
158
|
+
/**
|
|
159
|
+
* :pseudo selector in CSS
|
|
160
|
+
*/
|
|
161
|
+
"selector-pseudo": plain,
|
|
162
|
+
/**
|
|
163
|
+
* tag of a template language
|
|
164
|
+
*/
|
|
165
|
+
"template-tag": plain,
|
|
166
|
+
/**
|
|
167
|
+
* variable in a template language
|
|
168
|
+
*/
|
|
169
|
+
"template-variable": plain,
|
|
170
|
+
/**
|
|
171
|
+
* added or changed line in a diff
|
|
172
|
+
*/
|
|
173
|
+
addition: style.green,
|
|
174
|
+
/**
|
|
175
|
+
* deleted line in a diff
|
|
176
|
+
*/
|
|
177
|
+
deletion: style.red,
|
|
178
|
+
/**
|
|
179
|
+
* things not matched by any token
|
|
180
|
+
*/
|
|
181
|
+
default: plain,
|
|
182
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type EastAsianWidthType = "fullwidth" | "halfwidth" | "wide" | "narrow" | "neutral" | "ambiguous";
|
|
2
|
+
interface EastAsianWidthOptions {
|
|
3
|
+
ambiguousAsWide?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function eastAsianWidthType(codePoint: number): EastAsianWidthType;
|
|
6
|
+
export declare function eastAsianWidth(codePoint: number, options?: EastAsianWidthOptions): 1 | 2;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=east-asian-width.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"east-asian-width.d.ts","sourceRoot":"","sources":["../../source/terminal/east-asian-width.ts"],"names":[],"mappings":"AAAA,KAAK,kBAAkB,GACnB,WAAW,GACX,WAAW,GACX,MAAM,GACN,QAAQ,GACR,SAAS,GACT,WAAW,CAAC;AAEhB,UAAU,qBAAqB;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA8ZD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,kBAAkB,CAGxE;AAED,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,qBAA0B,GAClC,CAAC,GAAG,CAAC,CAWP"}
|
|
@@ -0,0 +1,409 @@
|
|
|
1
|
+
function validate(codePoint) {
|
|
2
|
+
if (!Number.isSafeInteger(codePoint)) {
|
|
3
|
+
throw new TypeError(`Expected a code point, got \`${typeof codePoint}\`.`);
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
function isAmbiguous(codePoint) {
|
|
7
|
+
return (codePoint === 0xa1 ||
|
|
8
|
+
codePoint === 0xa4 ||
|
|
9
|
+
codePoint === 0xa7 ||
|
|
10
|
+
codePoint === 0xa8 ||
|
|
11
|
+
codePoint === 0xaa ||
|
|
12
|
+
codePoint === 0xad ||
|
|
13
|
+
codePoint === 0xae ||
|
|
14
|
+
(codePoint >= 0xb0 && codePoint <= 0xb4) ||
|
|
15
|
+
(codePoint >= 0xb6 && codePoint <= 0xba) ||
|
|
16
|
+
(codePoint >= 0xbc && codePoint <= 0xbf) ||
|
|
17
|
+
codePoint === 0xc6 ||
|
|
18
|
+
codePoint === 0xd0 ||
|
|
19
|
+
codePoint === 0xd7 ||
|
|
20
|
+
codePoint === 0xd8 ||
|
|
21
|
+
(codePoint >= 0xde && codePoint <= 0xe1) ||
|
|
22
|
+
codePoint === 0xe6 ||
|
|
23
|
+
(codePoint >= 0xe8 && codePoint <= 0xea) ||
|
|
24
|
+
codePoint === 0xec ||
|
|
25
|
+
codePoint === 0xed ||
|
|
26
|
+
codePoint === 0xf0 ||
|
|
27
|
+
codePoint === 0xf2 ||
|
|
28
|
+
codePoint === 0xf3 ||
|
|
29
|
+
(codePoint >= 0xf7 && codePoint <= 0xfa) ||
|
|
30
|
+
codePoint === 0xfc ||
|
|
31
|
+
codePoint === 0xfe ||
|
|
32
|
+
codePoint === 0x101 ||
|
|
33
|
+
codePoint === 0x111 ||
|
|
34
|
+
codePoint === 0x113 ||
|
|
35
|
+
codePoint === 0x11b ||
|
|
36
|
+
codePoint === 0x126 ||
|
|
37
|
+
codePoint === 0x127 ||
|
|
38
|
+
codePoint === 0x12b ||
|
|
39
|
+
(codePoint >= 0x131 && codePoint <= 0x133) ||
|
|
40
|
+
codePoint === 0x138 ||
|
|
41
|
+
(codePoint >= 0x13f && codePoint <= 0x142) ||
|
|
42
|
+
codePoint === 0x144 ||
|
|
43
|
+
(codePoint >= 0x148 && codePoint <= 0x14b) ||
|
|
44
|
+
codePoint === 0x14d ||
|
|
45
|
+
codePoint === 0x152 ||
|
|
46
|
+
codePoint === 0x153 ||
|
|
47
|
+
codePoint === 0x166 ||
|
|
48
|
+
codePoint === 0x167 ||
|
|
49
|
+
codePoint === 0x16b ||
|
|
50
|
+
codePoint === 0x1ce ||
|
|
51
|
+
codePoint === 0x1d0 ||
|
|
52
|
+
codePoint === 0x1d2 ||
|
|
53
|
+
codePoint === 0x1d4 ||
|
|
54
|
+
codePoint === 0x1d6 ||
|
|
55
|
+
codePoint === 0x1d8 ||
|
|
56
|
+
codePoint === 0x1da ||
|
|
57
|
+
codePoint === 0x1dc ||
|
|
58
|
+
codePoint === 0x251 ||
|
|
59
|
+
codePoint === 0x261 ||
|
|
60
|
+
codePoint === 0x2c4 ||
|
|
61
|
+
codePoint === 0x2c7 ||
|
|
62
|
+
(codePoint >= 0x2c9 && codePoint <= 0x2cb) ||
|
|
63
|
+
codePoint === 0x2cd ||
|
|
64
|
+
codePoint === 0x2d0 ||
|
|
65
|
+
(codePoint >= 0x2d8 && codePoint <= 0x2db) ||
|
|
66
|
+
codePoint === 0x2dd ||
|
|
67
|
+
codePoint === 0x2df ||
|
|
68
|
+
(codePoint >= 0x300 && codePoint <= 0x36f) ||
|
|
69
|
+
(codePoint >= 0x391 && codePoint <= 0x3a1) ||
|
|
70
|
+
(codePoint >= 0x3a3 && codePoint <= 0x3a9) ||
|
|
71
|
+
(codePoint >= 0x3b1 && codePoint <= 0x3c1) ||
|
|
72
|
+
(codePoint >= 0x3c3 && codePoint <= 0x3c9) ||
|
|
73
|
+
codePoint === 0x401 ||
|
|
74
|
+
(codePoint >= 0x410 && codePoint <= 0x44f) ||
|
|
75
|
+
codePoint === 0x451 ||
|
|
76
|
+
codePoint === 0x2010 ||
|
|
77
|
+
(codePoint >= 0x2013 && codePoint <= 0x2016) ||
|
|
78
|
+
codePoint === 0x2018 ||
|
|
79
|
+
codePoint === 0x2019 ||
|
|
80
|
+
codePoint === 0x201c ||
|
|
81
|
+
codePoint === 0x201d ||
|
|
82
|
+
(codePoint >= 0x2020 && codePoint <= 0x2022) ||
|
|
83
|
+
(codePoint >= 0x2024 && codePoint <= 0x2027) ||
|
|
84
|
+
codePoint === 0x2030 ||
|
|
85
|
+
codePoint === 0x2032 ||
|
|
86
|
+
codePoint === 0x2033 ||
|
|
87
|
+
codePoint === 0x2035 ||
|
|
88
|
+
codePoint === 0x203b ||
|
|
89
|
+
codePoint === 0x203e ||
|
|
90
|
+
codePoint === 0x2074 ||
|
|
91
|
+
codePoint === 0x207f ||
|
|
92
|
+
(codePoint >= 0x2081 && codePoint <= 0x2084) ||
|
|
93
|
+
codePoint === 0x20ac ||
|
|
94
|
+
codePoint === 0x2103 ||
|
|
95
|
+
codePoint === 0x2105 ||
|
|
96
|
+
codePoint === 0x2109 ||
|
|
97
|
+
codePoint === 0x2113 ||
|
|
98
|
+
codePoint === 0x2116 ||
|
|
99
|
+
codePoint === 0x2121 ||
|
|
100
|
+
codePoint === 0x2122 ||
|
|
101
|
+
codePoint === 0x2126 ||
|
|
102
|
+
codePoint === 0x212b ||
|
|
103
|
+
codePoint === 0x2153 ||
|
|
104
|
+
codePoint === 0x2154 ||
|
|
105
|
+
(codePoint >= 0x215b && codePoint <= 0x215e) ||
|
|
106
|
+
(codePoint >= 0x2160 && codePoint <= 0x216b) ||
|
|
107
|
+
(codePoint >= 0x2170 && codePoint <= 0x2179) ||
|
|
108
|
+
codePoint === 0x2189 ||
|
|
109
|
+
(codePoint >= 0x2190 && codePoint <= 0x2199) ||
|
|
110
|
+
codePoint === 0x21b8 ||
|
|
111
|
+
codePoint === 0x21b9 ||
|
|
112
|
+
codePoint === 0x21d2 ||
|
|
113
|
+
codePoint === 0x21d4 ||
|
|
114
|
+
codePoint === 0x21e7 ||
|
|
115
|
+
codePoint === 0x2200 ||
|
|
116
|
+
codePoint === 0x2202 ||
|
|
117
|
+
codePoint === 0x2203 ||
|
|
118
|
+
codePoint === 0x2207 ||
|
|
119
|
+
codePoint === 0x2208 ||
|
|
120
|
+
codePoint === 0x220b ||
|
|
121
|
+
codePoint === 0x220f ||
|
|
122
|
+
codePoint === 0x2211 ||
|
|
123
|
+
codePoint === 0x2215 ||
|
|
124
|
+
codePoint === 0x221a ||
|
|
125
|
+
(codePoint >= 0x221d && codePoint <= 0x2220) ||
|
|
126
|
+
codePoint === 0x2223 ||
|
|
127
|
+
codePoint === 0x2225 ||
|
|
128
|
+
(codePoint >= 0x2227 && codePoint <= 0x222c) ||
|
|
129
|
+
codePoint === 0x222e ||
|
|
130
|
+
(codePoint >= 0x2234 && codePoint <= 0x2237) ||
|
|
131
|
+
codePoint === 0x223c ||
|
|
132
|
+
codePoint === 0x223d ||
|
|
133
|
+
codePoint === 0x2248 ||
|
|
134
|
+
codePoint === 0x224c ||
|
|
135
|
+
codePoint === 0x2252 ||
|
|
136
|
+
codePoint === 0x2260 ||
|
|
137
|
+
codePoint === 0x2261 ||
|
|
138
|
+
(codePoint >= 0x2264 && codePoint <= 0x2267) ||
|
|
139
|
+
codePoint === 0x226a ||
|
|
140
|
+
codePoint === 0x226b ||
|
|
141
|
+
codePoint === 0x226e ||
|
|
142
|
+
codePoint === 0x226f ||
|
|
143
|
+
codePoint === 0x2282 ||
|
|
144
|
+
codePoint === 0x2283 ||
|
|
145
|
+
codePoint === 0x2286 ||
|
|
146
|
+
codePoint === 0x2287 ||
|
|
147
|
+
codePoint === 0x2295 ||
|
|
148
|
+
codePoint === 0x2299 ||
|
|
149
|
+
codePoint === 0x22a5 ||
|
|
150
|
+
codePoint === 0x22bf ||
|
|
151
|
+
codePoint === 0x2312 ||
|
|
152
|
+
(codePoint >= 0x2460 && codePoint <= 0x24e9) ||
|
|
153
|
+
(codePoint >= 0x24eb && codePoint <= 0x254b) ||
|
|
154
|
+
(codePoint >= 0x2550 && codePoint <= 0x2573) ||
|
|
155
|
+
(codePoint >= 0x2580 && codePoint <= 0x258f) ||
|
|
156
|
+
(codePoint >= 0x2592 && codePoint <= 0x2595) ||
|
|
157
|
+
codePoint === 0x25a0 ||
|
|
158
|
+
codePoint === 0x25a1 ||
|
|
159
|
+
(codePoint >= 0x25a3 && codePoint <= 0x25a9) ||
|
|
160
|
+
codePoint === 0x25b2 ||
|
|
161
|
+
codePoint === 0x25b3 ||
|
|
162
|
+
codePoint === 0x25b6 ||
|
|
163
|
+
codePoint === 0x25b7 ||
|
|
164
|
+
codePoint === 0x25bc ||
|
|
165
|
+
codePoint === 0x25bd ||
|
|
166
|
+
codePoint === 0x25c0 ||
|
|
167
|
+
codePoint === 0x25c1 ||
|
|
168
|
+
(codePoint >= 0x25c6 && codePoint <= 0x25c8) ||
|
|
169
|
+
codePoint === 0x25cb ||
|
|
170
|
+
(codePoint >= 0x25ce && codePoint <= 0x25d1) ||
|
|
171
|
+
(codePoint >= 0x25e2 && codePoint <= 0x25e5) ||
|
|
172
|
+
codePoint === 0x25ef ||
|
|
173
|
+
codePoint === 0x2605 ||
|
|
174
|
+
codePoint === 0x2606 ||
|
|
175
|
+
codePoint === 0x2609 ||
|
|
176
|
+
codePoint === 0x260e ||
|
|
177
|
+
codePoint === 0x260f ||
|
|
178
|
+
codePoint === 0x261c ||
|
|
179
|
+
codePoint === 0x261e ||
|
|
180
|
+
codePoint === 0x2640 ||
|
|
181
|
+
codePoint === 0x2642 ||
|
|
182
|
+
codePoint === 0x2660 ||
|
|
183
|
+
codePoint === 0x2661 ||
|
|
184
|
+
(codePoint >= 0x2663 && codePoint <= 0x2665) ||
|
|
185
|
+
(codePoint >= 0x2667 && codePoint <= 0x266a) ||
|
|
186
|
+
codePoint === 0x266c ||
|
|
187
|
+
codePoint === 0x266d ||
|
|
188
|
+
codePoint === 0x266f ||
|
|
189
|
+
codePoint === 0x269e ||
|
|
190
|
+
codePoint === 0x269f ||
|
|
191
|
+
codePoint === 0x26bf ||
|
|
192
|
+
(codePoint >= 0x26c6 && codePoint <= 0x26cd) ||
|
|
193
|
+
(codePoint >= 0x26cf && codePoint <= 0x26d3) ||
|
|
194
|
+
(codePoint >= 0x26d5 && codePoint <= 0x26e1) ||
|
|
195
|
+
codePoint === 0x26e3 ||
|
|
196
|
+
codePoint === 0x26e8 ||
|
|
197
|
+
codePoint === 0x26e9 ||
|
|
198
|
+
(codePoint >= 0x26eb && codePoint <= 0x26f1) ||
|
|
199
|
+
codePoint === 0x26f4 ||
|
|
200
|
+
(codePoint >= 0x26f6 && codePoint <= 0x26f9) ||
|
|
201
|
+
codePoint === 0x26fb ||
|
|
202
|
+
codePoint === 0x26fc ||
|
|
203
|
+
codePoint === 0x26fe ||
|
|
204
|
+
codePoint === 0x26ff ||
|
|
205
|
+
codePoint === 0x273d ||
|
|
206
|
+
(codePoint >= 0x2776 && codePoint <= 0x277f) ||
|
|
207
|
+
(codePoint >= 0x2b56 && codePoint <= 0x2b59) ||
|
|
208
|
+
(codePoint >= 0x3248 && codePoint <= 0x324f) ||
|
|
209
|
+
(codePoint >= 0xe000 && codePoint <= 0xf8ff) ||
|
|
210
|
+
(codePoint >= 0xfe00 && codePoint <= 0xfe0f) ||
|
|
211
|
+
codePoint === 0xfffd ||
|
|
212
|
+
(codePoint >= 0x1f100 && codePoint <= 0x1f10a) ||
|
|
213
|
+
(codePoint >= 0x1f110 && codePoint <= 0x1f12d) ||
|
|
214
|
+
(codePoint >= 0x1f130 && codePoint <= 0x1f169) ||
|
|
215
|
+
(codePoint >= 0x1f170 && codePoint <= 0x1f18d) ||
|
|
216
|
+
codePoint === 0x1f18f ||
|
|
217
|
+
codePoint === 0x1f190 ||
|
|
218
|
+
(codePoint >= 0x1f19b && codePoint <= 0x1f1ac) ||
|
|
219
|
+
(codePoint >= 0xe0100 && codePoint <= 0xe01ef) ||
|
|
220
|
+
(codePoint >= 0xf0000 && codePoint <= 0xffffd) ||
|
|
221
|
+
(codePoint >= 0x100000 && codePoint <= 0x10fffd));
|
|
222
|
+
}
|
|
223
|
+
function isFullWidth(codePoint) {
|
|
224
|
+
return (codePoint === 0x3000 ||
|
|
225
|
+
(codePoint >= 0xff01 && codePoint <= 0xff60) ||
|
|
226
|
+
(codePoint >= 0xffe0 && codePoint <= 0xffe6));
|
|
227
|
+
}
|
|
228
|
+
function isWide(codePoint) {
|
|
229
|
+
return ((codePoint >= 0x1100 && codePoint <= 0x115f) ||
|
|
230
|
+
codePoint === 0x231a ||
|
|
231
|
+
codePoint === 0x231b ||
|
|
232
|
+
codePoint === 0x2329 ||
|
|
233
|
+
codePoint === 0x232a ||
|
|
234
|
+
(codePoint >= 0x23e9 && codePoint <= 0x23ec) ||
|
|
235
|
+
codePoint === 0x23f0 ||
|
|
236
|
+
codePoint === 0x23f3 ||
|
|
237
|
+
codePoint === 0x25fd ||
|
|
238
|
+
codePoint === 0x25fe ||
|
|
239
|
+
codePoint === 0x2614 ||
|
|
240
|
+
codePoint === 0x2615 ||
|
|
241
|
+
(codePoint >= 0x2630 && codePoint <= 0x2637) ||
|
|
242
|
+
(codePoint >= 0x2648 && codePoint <= 0x2653) ||
|
|
243
|
+
codePoint === 0x267f ||
|
|
244
|
+
(codePoint >= 0x268a && codePoint <= 0x268f) ||
|
|
245
|
+
codePoint === 0x2693 ||
|
|
246
|
+
codePoint === 0x26a1 ||
|
|
247
|
+
codePoint === 0x26aa ||
|
|
248
|
+
codePoint === 0x26ab ||
|
|
249
|
+
codePoint === 0x26bd ||
|
|
250
|
+
codePoint === 0x26be ||
|
|
251
|
+
codePoint === 0x26c4 ||
|
|
252
|
+
codePoint === 0x26c5 ||
|
|
253
|
+
codePoint === 0x26ce ||
|
|
254
|
+
codePoint === 0x26d4 ||
|
|
255
|
+
codePoint === 0x26ea ||
|
|
256
|
+
codePoint === 0x26f2 ||
|
|
257
|
+
codePoint === 0x26f3 ||
|
|
258
|
+
codePoint === 0x26f5 ||
|
|
259
|
+
codePoint === 0x26fa ||
|
|
260
|
+
codePoint === 0x26fd ||
|
|
261
|
+
codePoint === 0x2705 ||
|
|
262
|
+
codePoint === 0x270a ||
|
|
263
|
+
codePoint === 0x270b ||
|
|
264
|
+
codePoint === 0x2728 ||
|
|
265
|
+
codePoint === 0x274c ||
|
|
266
|
+
codePoint === 0x274e ||
|
|
267
|
+
(codePoint >= 0x2753 && codePoint <= 0x2755) ||
|
|
268
|
+
codePoint === 0x2757 ||
|
|
269
|
+
(codePoint >= 0x2795 && codePoint <= 0x2797) ||
|
|
270
|
+
codePoint === 0x27b0 ||
|
|
271
|
+
codePoint === 0x27bf ||
|
|
272
|
+
codePoint === 0x2b1b ||
|
|
273
|
+
codePoint === 0x2b1c ||
|
|
274
|
+
codePoint === 0x2b50 ||
|
|
275
|
+
codePoint === 0x2b55 ||
|
|
276
|
+
(codePoint >= 0x2e80 && codePoint <= 0x2e99) ||
|
|
277
|
+
(codePoint >= 0x2e9b && codePoint <= 0x2ef3) ||
|
|
278
|
+
(codePoint >= 0x2f00 && codePoint <= 0x2fd5) ||
|
|
279
|
+
(codePoint >= 0x2ff0 && codePoint <= 0x2fff) ||
|
|
280
|
+
(codePoint >= 0x3001 && codePoint <= 0x303e) ||
|
|
281
|
+
(codePoint >= 0x3041 && codePoint <= 0x3096) ||
|
|
282
|
+
(codePoint >= 0x3099 && codePoint <= 0x30ff) ||
|
|
283
|
+
(codePoint >= 0x3105 && codePoint <= 0x312f) ||
|
|
284
|
+
(codePoint >= 0x3131 && codePoint <= 0x318e) ||
|
|
285
|
+
(codePoint >= 0x3190 && codePoint <= 0x31e5) ||
|
|
286
|
+
(codePoint >= 0x31ef && codePoint <= 0x321e) ||
|
|
287
|
+
(codePoint >= 0x3220 && codePoint <= 0x3247) ||
|
|
288
|
+
(codePoint >= 0x3250 && codePoint <= 0xa48c) ||
|
|
289
|
+
(codePoint >= 0xa490 && codePoint <= 0xa4c6) ||
|
|
290
|
+
(codePoint >= 0xa960 && codePoint <= 0xa97c) ||
|
|
291
|
+
(codePoint >= 0xac00 && codePoint <= 0xd7a3) ||
|
|
292
|
+
(codePoint >= 0xf900 && codePoint <= 0xfaff) ||
|
|
293
|
+
(codePoint >= 0xfe10 && codePoint <= 0xfe19) ||
|
|
294
|
+
(codePoint >= 0xfe30 && codePoint <= 0xfe52) ||
|
|
295
|
+
(codePoint >= 0xfe54 && codePoint <= 0xfe66) ||
|
|
296
|
+
(codePoint >= 0xfe68 && codePoint <= 0xfe6b) ||
|
|
297
|
+
(codePoint >= 0x16fe0 && codePoint <= 0x16fe4) ||
|
|
298
|
+
(codePoint >= 0x16ff0 && codePoint <= 0x16ff6) ||
|
|
299
|
+
(codePoint >= 0x17000 && codePoint <= 0x18cd5) ||
|
|
300
|
+
(codePoint >= 0x18cff && codePoint <= 0x18d1e) ||
|
|
301
|
+
(codePoint >= 0x18d80 && codePoint <= 0x18df2) ||
|
|
302
|
+
(codePoint >= 0x1aff0 && codePoint <= 0x1aff3) ||
|
|
303
|
+
(codePoint >= 0x1aff5 && codePoint <= 0x1affb) ||
|
|
304
|
+
codePoint === 0x1affd ||
|
|
305
|
+
codePoint === 0x1affe ||
|
|
306
|
+
(codePoint >= 0x1b000 && codePoint <= 0x1b122) ||
|
|
307
|
+
codePoint === 0x1b132 ||
|
|
308
|
+
(codePoint >= 0x1b150 && codePoint <= 0x1b152) ||
|
|
309
|
+
codePoint === 0x1b155 ||
|
|
310
|
+
(codePoint >= 0x1b164 && codePoint <= 0x1b167) ||
|
|
311
|
+
(codePoint >= 0x1b170 && codePoint <= 0x1b2fb) ||
|
|
312
|
+
(codePoint >= 0x1d300 && codePoint <= 0x1d356) ||
|
|
313
|
+
(codePoint >= 0x1d360 && codePoint <= 0x1d376) ||
|
|
314
|
+
codePoint === 0x1f004 ||
|
|
315
|
+
codePoint === 0x1f0cf ||
|
|
316
|
+
codePoint === 0x1f18e ||
|
|
317
|
+
(codePoint >= 0x1f191 && codePoint <= 0x1f19a) ||
|
|
318
|
+
(codePoint >= 0x1f200 && codePoint <= 0x1f202) ||
|
|
319
|
+
(codePoint >= 0x1f210 && codePoint <= 0x1f23b) ||
|
|
320
|
+
(codePoint >= 0x1f240 && codePoint <= 0x1f248) ||
|
|
321
|
+
codePoint === 0x1f250 ||
|
|
322
|
+
codePoint === 0x1f251 ||
|
|
323
|
+
(codePoint >= 0x1f260 && codePoint <= 0x1f265) ||
|
|
324
|
+
(codePoint >= 0x1f300 && codePoint <= 0x1f320) ||
|
|
325
|
+
(codePoint >= 0x1f32d && codePoint <= 0x1f335) ||
|
|
326
|
+
(codePoint >= 0x1f337 && codePoint <= 0x1f37c) ||
|
|
327
|
+
(codePoint >= 0x1f37e && codePoint <= 0x1f393) ||
|
|
328
|
+
(codePoint >= 0x1f3a0 && codePoint <= 0x1f3ca) ||
|
|
329
|
+
(codePoint >= 0x1f3cf && codePoint <= 0x1f3d3) ||
|
|
330
|
+
(codePoint >= 0x1f3e0 && codePoint <= 0x1f3f0) ||
|
|
331
|
+
codePoint === 0x1f3f4 ||
|
|
332
|
+
(codePoint >= 0x1f3f8 && codePoint <= 0x1f43e) ||
|
|
333
|
+
codePoint === 0x1f440 ||
|
|
334
|
+
(codePoint >= 0x1f442 && codePoint <= 0x1f4fc) ||
|
|
335
|
+
(codePoint >= 0x1f4ff && codePoint <= 0x1f53d) ||
|
|
336
|
+
(codePoint >= 0x1f54b && codePoint <= 0x1f54e) ||
|
|
337
|
+
(codePoint >= 0x1f550 && codePoint <= 0x1f567) ||
|
|
338
|
+
codePoint === 0x1f57a ||
|
|
339
|
+
codePoint === 0x1f595 ||
|
|
340
|
+
codePoint === 0x1f596 ||
|
|
341
|
+
codePoint === 0x1f5a4 ||
|
|
342
|
+
(codePoint >= 0x1f5fb && codePoint <= 0x1f64f) ||
|
|
343
|
+
(codePoint >= 0x1f680 && codePoint <= 0x1f6c5) ||
|
|
344
|
+
codePoint === 0x1f6cc ||
|
|
345
|
+
(codePoint >= 0x1f6d0 && codePoint <= 0x1f6d2) ||
|
|
346
|
+
(codePoint >= 0x1f6d5 && codePoint <= 0x1f6d8) ||
|
|
347
|
+
(codePoint >= 0x1f6dc && codePoint <= 0x1f6df) ||
|
|
348
|
+
codePoint === 0x1f6eb ||
|
|
349
|
+
codePoint === 0x1f6ec ||
|
|
350
|
+
(codePoint >= 0x1f6f4 && codePoint <= 0x1f6fc) ||
|
|
351
|
+
(codePoint >= 0x1f7e0 && codePoint <= 0x1f7eb) ||
|
|
352
|
+
codePoint === 0x1f7f0 ||
|
|
353
|
+
(codePoint >= 0x1f90c && codePoint <= 0x1f93a) ||
|
|
354
|
+
(codePoint >= 0x1f93c && codePoint <= 0x1f945) ||
|
|
355
|
+
(codePoint >= 0x1f947 && codePoint <= 0x1f9ff) ||
|
|
356
|
+
(codePoint >= 0x1fa70 && codePoint <= 0x1fa7c) ||
|
|
357
|
+
(codePoint >= 0x1fa80 && codePoint <= 0x1fa8a) ||
|
|
358
|
+
(codePoint >= 0x1fa8e && codePoint <= 0x1fac6) ||
|
|
359
|
+
codePoint === 0x1fac8 ||
|
|
360
|
+
(codePoint >= 0x1facd && codePoint <= 0x1fadc) ||
|
|
361
|
+
(codePoint >= 0x1fadf && codePoint <= 0x1faea) ||
|
|
362
|
+
(codePoint >= 0x1faef && codePoint <= 0x1faf8) ||
|
|
363
|
+
(codePoint >= 0x20000 && codePoint <= 0x2fffd) ||
|
|
364
|
+
(codePoint >= 0x30000 && codePoint <= 0x3fffd));
|
|
365
|
+
}
|
|
366
|
+
function getCategory(codePoint) {
|
|
367
|
+
if (isAmbiguous(codePoint))
|
|
368
|
+
return "ambiguous";
|
|
369
|
+
if (isFullWidth(codePoint))
|
|
370
|
+
return "fullwidth";
|
|
371
|
+
if (codePoint === 0x20a9 ||
|
|
372
|
+
(codePoint >= 0xff61 && codePoint <= 0xffbe) ||
|
|
373
|
+
(codePoint >= 0xffc2 && codePoint <= 0xffc7) ||
|
|
374
|
+
(codePoint >= 0xffca && codePoint <= 0xffcf) ||
|
|
375
|
+
(codePoint >= 0xffd2 && codePoint <= 0xffd7) ||
|
|
376
|
+
(codePoint >= 0xffda && codePoint <= 0xffdc) ||
|
|
377
|
+
(codePoint >= 0xffe8 && codePoint <= 0xffee)) {
|
|
378
|
+
return "halfwidth";
|
|
379
|
+
}
|
|
380
|
+
if ((codePoint >= 0x20 && codePoint <= 0x7e) ||
|
|
381
|
+
codePoint === 0xa2 ||
|
|
382
|
+
codePoint === 0xa3 ||
|
|
383
|
+
codePoint === 0xa5 ||
|
|
384
|
+
codePoint === 0xa6 ||
|
|
385
|
+
codePoint === 0xac ||
|
|
386
|
+
codePoint === 0xaf ||
|
|
387
|
+
(codePoint >= 0x27e6 && codePoint <= 0x27ed) ||
|
|
388
|
+
codePoint === 0x2985 ||
|
|
389
|
+
codePoint === 0x2986) {
|
|
390
|
+
return "narrow";
|
|
391
|
+
}
|
|
392
|
+
if (isWide(codePoint))
|
|
393
|
+
return "wide";
|
|
394
|
+
return "neutral";
|
|
395
|
+
}
|
|
396
|
+
export function eastAsianWidthType(codePoint) {
|
|
397
|
+
validate(codePoint);
|
|
398
|
+
return getCategory(codePoint);
|
|
399
|
+
}
|
|
400
|
+
export function eastAsianWidth(codePoint, options = {}) {
|
|
401
|
+
const { ambiguousAsWide = false } = options;
|
|
402
|
+
validate(codePoint);
|
|
403
|
+
if (isFullWidth(codePoint) ||
|
|
404
|
+
isWide(codePoint) ||
|
|
405
|
+
(ambiguousAsWide && isAmbiguous(codePoint))) {
|
|
406
|
+
return 2;
|
|
407
|
+
}
|
|
408
|
+
return 1;
|
|
409
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface EditorPromptOptions {
|
|
2
|
+
message: string;
|
|
3
|
+
default?: string;
|
|
4
|
+
postfix?: string;
|
|
5
|
+
editor?: string;
|
|
6
|
+
skipPrompt?: boolean;
|
|
7
|
+
signal?: AbortSignal;
|
|
8
|
+
}
|
|
9
|
+
export declare function editor(options: EditorPromptOptions): Promise<string>;
|
|
10
|
+
//# sourceMappingURL=editor-prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-prompt.d.ts","sourceRoot":"","sources":["../../source/terminal/editor-prompt.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,wBAAsB,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgF1E"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { spawnSync } from "node:child_process";
|
|
2
|
+
import { readFileSync, unlinkSync, writeFileSync } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
import * as readline from "node:readline";
|
|
6
|
+
export async function editor(options) {
|
|
7
|
+
const { message, default: defaultValue = "", postfix = ".txt", editor, skipPrompt = false, signal, } = options;
|
|
8
|
+
const openEditor = () => {
|
|
9
|
+
// pick editor: $EDITOR env or fallback to vi
|
|
10
|
+
const editorCmd = editor ||
|
|
11
|
+
process.env["VISUAL"] ||
|
|
12
|
+
process.env["EDITOR"] ||
|
|
13
|
+
(process.platform === "win32" ? "notepad" : "vi");
|
|
14
|
+
// create temp file with postfix for syntax highlighting
|
|
15
|
+
const tempFile = join(tmpdir(), `editor-prompt-${process.pid}-${Date.now()}${postfix}`);
|
|
16
|
+
writeFileSync(tempFile, defaultValue);
|
|
17
|
+
// open editor
|
|
18
|
+
spawnSync(editorCmd, [tempFile], { stdio: "inherit" });
|
|
19
|
+
// read result and clean up
|
|
20
|
+
const result = readFileSync(tempFile, "utf-8");
|
|
21
|
+
unlinkSync(tempFile);
|
|
22
|
+
return result.trim();
|
|
23
|
+
};
|
|
24
|
+
if (skipPrompt) {
|
|
25
|
+
// Immediately launch editor without prompt
|
|
26
|
+
return openEditor();
|
|
27
|
+
}
|
|
28
|
+
// Show prompt and wait for user confirmation
|
|
29
|
+
const rl = readline.createInterface({
|
|
30
|
+
input: process.stdin,
|
|
31
|
+
output: process.stdout,
|
|
32
|
+
});
|
|
33
|
+
return new Promise((resolve, reject) => {
|
|
34
|
+
let resolved = false;
|
|
35
|
+
function cleanup() {
|
|
36
|
+
if (resolved)
|
|
37
|
+
return;
|
|
38
|
+
resolved = true;
|
|
39
|
+
rl.close();
|
|
40
|
+
}
|
|
41
|
+
// Handle abort signal
|
|
42
|
+
if (signal) {
|
|
43
|
+
signal.addEventListener("abort", () => {
|
|
44
|
+
cleanup();
|
|
45
|
+
const err = new Error("AbortError");
|
|
46
|
+
err.name = "AbortError";
|
|
47
|
+
reject(err);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
rl.question(`${message} (opens in editor)\nPress Enter to continue...`, () => {
|
|
51
|
+
cleanup();
|
|
52
|
+
resolve(openEditor());
|
|
53
|
+
});
|
|
54
|
+
rl.on("SIGINT", () => {
|
|
55
|
+
cleanup();
|
|
56
|
+
const err = new Error("Cancelled");
|
|
57
|
+
err.isCanceled = true;
|
|
58
|
+
reject(err);
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
}
|