ChoiceScript
Sublime Text 中的 ChoiceScript 语法
详细信息
安装次数
- 总计 480
- Win 319
- Mac 112
- Linux 49
8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Mac | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Readme
Sublime Text 中的 ChoiceScript 语法
❕ 版本 1.0.0
这是一个为 ChoiceScript 定制的语法高亮器和自动完成,以及可选的颜色方案。它旨在使读取和编写 ChoiceScript 代码更快、更容易,并包含“ChoiceScript”颜色方案,以通过颜色区分代码的特定方面。
它与 Sublime 3 和 4 兼容。
⚠️ 这不是像 CSIDE 这样的 IDE。
它不包含 ChoiceScript 的副本。它不能运行 QuickTest 或 RandomTest。它不会检查错误。它不包含字数统计。您 必须 在您的计算机上安装 ChoiceScript (或 CSIDE) 或使用 CSIDE 的网络版 来运行您的游戏。
目录
功能
- 为 ChoiceScript 语言提供的自定义语法高亮。
- 完全支持多替换和统计图表。
- 自定义颜色方案,以增强语法高亮。
- 自动完成命令,用于快速创建常见的代码行(页面分隔符、换行符、选项、if/else 语句、统计图表、注释等)。
- 根据合适的代码行自动缩进(
*choice
、#options
、*if/else
、*stat_chart
)。 - 针对纯文本和对选项文本以及多替换中的文本进行拼写检查。
- 自动启用换行,启用将制表符转换为缩进,禁用自动匹配(以防止匹配引号)。
安装
ChoiceScript 语法可以通过两种方式之一安装,无论您是使用 Sublime 3 还是 4
📦 包控制
- 在 Sublime 中,转到 工具 > 安装包控制…
- 按(MAC)CMD + Shift + P 或(PC)CTRL + Shift + P 打开命令面板。
- 在命令面板中输入
Package Control: Install Package
。 - 在新的Package Control窗口中,无需空格输入
ChoiceScript
。 - 选择“ChoiceScript”以安装语法和配色方案。
- 在
.txt
场景文件中,转到Sublime窗口的右下角,找到“纯文本”。点击并从语法列表中选“ChoiceScript”。 - 现在您已在Sublime中准备好编写ChoiceScript了!
🛠 手动安装
- 在此存储库中,点击文件上方的“代码”。
- 选择“下载ZIP”,如果有提示,选择保存文件夹的位置。
- 提取ZIP文件夹中的内容。
- 在Sublime中,转到(MAC)Sublime Text > 首选项 > 浏览包… 或(PC)首选项 > 浏览包… 以打开您的Sublime
包
文件夹。 - 将提取的
ChoiceScript
文件直接复制粘贴到包
文件夹中。 - 在Sublime中,在一个
.txt
场景文件中,转到Sublime窗口的右下角,找到“纯文本”。点击并从语法列表中选“ChoiceScript”。 - 现在您已在Sublime中准备好编写ChoiceScript了!
🌈 使用配色方案
- 转到(MAC)Sublime Text > 首选项 > 选择配色方案 或(PC)首选项 > 选择配色方案。 (在Sublime 3中为“配色方案…”)
- 选择“ChoiceScript”配色方案。
- 现在您已经为ChoiceScript语法高亮和自定义配色方案做好了全部准备!
颜色方案
包含一个为语法设计的附加配色方案。由于其是为特定的语法定义而创建,因此能够针对代码的更具体部分进行针对性高亮。
它识别
- 多替换中的变量与纯文本。
- 变量与运算符在代码中的
*if/*else
语句中,包括and
和or
。 - 在
*image
和*text_image
命令中的图像文件名。 - 当一行中的
*if/else
或*selectable_if
紧接着是一个没有换行的#option
时。 - 在设置
*create
、*temp
和*set
中的值时是真还是假。 - 当
*page_break
后面是纯文本。 - 在
*stat_chart
中的命令、变量和纯文本。
其中一些确实很好地转移到其他配色方案中,但自定义配色方案是与语法高亮器一起设计的,以针对ChoiceScript提供更全面、更精确的高亮。
⚙️ 仅用于ChoiceScript的配色方案
如果只想将ChoiceScript配色方案应用于ChoiceScript文件,可以按以下步骤操作
- 在Sublime中将你的ChoiceScript文件激活后,转到(MAC)Sublime Text > 首选项 > 设置 - 语法特定 或(PC)首选项 > 设置 - 语法特定
- 将打开一个新窗口。左侧是Sublime可以配置的所有设置的完整范围。右侧是特定语法的设置配置。
- 在右侧的文件中,编辑文件以看起来像这样
{
"color_scheme": "ChoiceScript.sublime-color-scheme",
}
- 保存。
从现在起,所有具有ChoiceScript语法的文件都将使用ChoiceScript配色方案,无论你的整体颜色方案或主题如何。
屏幕截图
以下是一些截图,包括和不含配色方案的语法,采用了Choice of Games的《Dragon的选择》和我自己的项目场景文件。
✨ 没有配色方案
点击查看完整大小。
Sublime的Mariana | One Dark Gravity |
---|---|
Solarized Light | Solarized Dark |
---|---|
✨ 有配色方案
点击查看完整大小。
《Dragon的选择》 | 《Dragon的选择》 | 多替换示例 |
---|---|---|
自动完成命令
语法中包含一些自动完成命令,旨在帮助作者快速编写常见的ChoiceScript代码行。
❔ 使用方法
所有自动完成命令都以 cs_
开头,必须在新的行首或者紧跟空格,例如空格或制表符。输入 cs_
后,Sublime 将列出所有可用的自动完成命令。通常情况下,您只需在 cs_
后输入一两个字符即可获得正确的自动完成。按下 enter
或 tab
键将确认自动完成。
📋 命令列表
功能 | 触发 | 完成 |
---|---|---|
选项 | cs_ch |
|
分页符 | cs_pb |
|
换行符 | cs_lb |
|
多替换 | cs_mr |
|
如果/否则 | cs_if |
|
注释 | cs_om |
|
统计图表 | cs_st |
|
水平线 | cs_hr |
|
隐式控制流 | cs_imp |
|
Startup.txt 头部 | cs_header |
如果未来有任何需要或愿望,可能会添加更多自动完成命令。
ChoiceScript 技巧
以下是一些关于编写 ChoiceScript 的通用质量提升技巧,尤其是在 Sublime 中。
使用 Dropbox 来存储你的文件! Dropbox 是免费并且易于在各设备和操作系统之间访问的。将你的 ChoiceScript 场景文件保存在 Dropbox 文件夹中可以确保你永远不会丢失文件,并且得益于其版本历史功能,如果你犯了错误,可以轻松回到文件的旧版本。
为 Sublime 获取一个字数统计插件。 这可以通过 Package Control 轻松完成。简单地打开命令面板,输入“WordCount”并安装顶部结果。这将在一个窗口的左下角添加一个字数统计。该插件计算所有单词,包括命令行,你们不能快速找到整个项目的总字数,除非手动将字数加在一起。
利用 Sublime 中的列和对分视图。 Sublime 允许您打开多个列(视图 > 布局),因此您可以同时查看两个文件。这些可以是两个不同的文件或者是同一个文件(对分视图)。要使用对分视图,请转到文件 > 对分视图。可能需要调整布局,但操作非常简单。
使用键绑定来输入长破折号和省略号。 如果您希望您的写作使用正确的长破折号“—”或省略号“…”,设置 Sublime 以自动为您转换“–”和“…”非常简单。请转到(MAC)Sublime Text > 预设 > 键绑定 或者(PC)预设 > 键绑定。将弹出一个包含两个文件的窗口。将以下内容复制并粘贴到右侧文件中的
[]
方括号之间,并保存
{ "keys": ["-", "-"], "command": "insert_snippet", "args": {"contents": "—"} },
{ "keys": [".", ".", "."], "command": "insert_snippet", "args": {"contents": "…"} },
使用 CSIDE。 优先使用 CSIDE 而不是从 GitHub 下载 ChoiceScript 文件夹 可以使您与 ChoiceScript 的协同工作更加容易。CSIDE 包含基本的 ChoiceScript 语法高亮显示,内置了 ChoiceScript 和其测试,并有一个很好的字数统计功能,它会排除命令行,并查看项目的整体字数统计 – 还有一个浏览器版本,您不需要下载任何内容。它还有一个控制台,你可以在其文档中阅读关于它的更多信息。
同时使用 CSIDE 和 Sublime。 在 Sublime 中编写代码,然后使用 CSIDE 进行测试并对错误进行即时修复是开发 ChoiceScript 游戏的可靠方法。您将享受到 Sublime 的好处——更精确的语法高亮和自动完成命令——以及 CSIDE 的优点,例如其控制台。Sublime 会根据您在 CSIDE 中所做的任何保存更改进行更新。CSIDE 不会自动更新,但是非常容易重新加载场景文件,无论是在左侧侧边栏中右键单击您希望重新加载的文件,还是在“项目”>“重新加载所有文件”中。
如果在任意程序中保存时犯错,意外丢失任何内容,如果您将文件存储在 Dropbox 上,使用版本历史很容易恢复丢失的内容。
编辑和自定义
⚠️ 本语法定义和配色方案提供受 MIT 许可证 保护。
以下是快速概述,说明如何编辑和自定义语法定义、设置以及/或配色方案,以及如何创建自己的配色方案。
🎨 配色方案
🔹 Sublime 4
- (MAC) Sublime Text > 首选项 > 自定义配色方案。(PC) 首选项 > 自定义配色方案。
- 这将会开启一个新窗口。左侧是我制作的 ChoiceScript 配色方案,而右侧是一个空的
.sublime-color-scheme
文件。 - 使用 Sublime 文档 和我的配色方案代码作为指南,按照您的喜好自定义配色方案。我已经尽量用注释来清晰地解释哪些部分受到语法哪些影响。
- 将其保存到您 Sublime 目录的
/Packages/User
文件夹中。您所做的任何更改都将覆盖我的 ChoiceScript 配色方案。
创建全新的配色方案的过程与此类似。确保您的配色方案代码中包含一个名称——在 "variables": {}
之上—— "name": "您的配色方案"
。
🔸 Sublime 3
在 Sublime 3 中编辑配色方案不像在 Sublime 4 中那样直接。我建议您升级,但如果您不想,请按照以下说明操作。
- 确保您已经通过 手动安装 选项至少下载了
ChoiceScript.sublime-color-scheme
文件。 - 在 Sublime 中打开
ChoiceScript.sublime-color-scheme
。您可以直接编辑此文件以更改配色方案。 - 使用 Sublime 文档 和我的配色方案代码作为指南,按照您的喜好自定义配色方案。我已经尽量用注释来清晰地解释哪些部分受到语法哪些影响。
- 保存,要么作为具有
.sublime-color-scheme
扩展名的新文件,位于您 Sublime 的/Packages/User
文件夹中,要么简单地作为ChoiceScript.sublime-color-scheme
保存以完全覆盖我的配色方案。
创建全新的配色方案的过程几乎相同。只需将其保存为具有不同名称的全新文件,并确保代码包括一个名称——"name": "您的配色方案"
——在 "variables": {}
之上。
⚙️ 语法特定设置
修改 Sublime 中的语法特定设置非常简单。
- (MAC) Sublime Text > 首选项 > 设置 - 语法特定。(PC) 首选项 > 设置 - 语法特定。
- 将会打开一个新窗口,包含两个文件。左侧是一个只读文件,列出了您可以修改的所有可能设置以及它们的默认值。右侧是新语法特定设置文件,它将覆盖所有其他设置,包括我为
ChoiceScript.sublime-settings
设置的设置。 - 使用左侧的文件作为指南,为 ChoiceScript 语法编写您的新设置。
- 保存。
或者,如果您已经通过 手动安装 下载了 ChoiceScript.sublime-settings
文件,您可以直接编辑我设置的设置。我已包括注释以便达到此目的。
以下是我为 ChoiceScript 语法设置的设置
{
// remove or comment out to disable
// if you want to use your default scheme
// or one of the other choicescript schemes
//"color_scheme": "Packages/User/ChoiceScript.sublime-color-scheme",
// change to false to disable entirely
"auto_complete": true,
// scope for cs_ command autocompletes
"auto_complete_selector": "keyword.trigger",
// change to false to disable entirely
"spell_check": true,
// so it only spell checks plain text and
// text in multireplace and choice options
"spelling_selector": "string.text, -(comment, entity, keyword, variable, storage)",
// general quality of life and compatibility
// stuff so your code works in other editors
"word_wrap": true,
"tab_size": 2,
"detect_indentation": true,
"auto_indent": true,
"smart_indent": true,
"use_tab_stops": true,
"translate_tabs_to_spaces": true,
"margin": 7,
// makes the caret blink
"caret_style": "blink",
// lets you scroll past the last line in a
// file to making writing final lines more
// comfortable
"scroll_past_end": true,
// disabled so it doesn't match quotes
"auto_match_enabled": false,
}
📝 语法定义
像Sublime 3及以后的语法定义一样,ChoiceScript语法定义使用YAML,这非常直观简单,但也使用了较难以理解的正则表达式(RegEx)。在此我不会深入讲解如何写正则表达式或如何编写一个新的语法定义,但我会简要介绍如何编辑我的语法定义或创建自己的,并链接一些资源。
- 请确保您已通过手动安装选项下载了
ChoiceScript.sublime-syntax
文件。 - 在Sublime中打开
ChoiceScript.sublime-syntax
。您可以直接修改该文件以更改语法定义。 - 使用Sublime文档和Oniguruma正则表达式,随时修改语法定义。
注意:这是我第一次编写的语法定义。我可能犯了很多错误,因此不建议您以我的语法定义作为如何编写语法定义的指南。
- 保存,您可以选择将其保存为新文件,并将其扩展名设为
.sublime-color-scheme
,保存在Sublime目录的/Packages/User
文件夹中,或者简单地将它保存为ChoiceScript.sublime-syntax
来完全覆盖我的语法定义。
创建一个完全新的语法定义非常简单。转到工具 > 开发者 > 新语法…,Sublime将打开一个新文件,专门用于语法定义。
在没有任何正则表达式先验知识的情况下,我发现Oniguruma正则表达式文档很难理解。尽管如此,我找到了一个有用的cheatsheet,虽然它是为JavaScript编写的,不一定适用于Sublime语法定义。同时参阅两者是最好的路线,但最终,最好的方法是尝试和错误。
联系我
如果您需要直接联系我就与ChoiceScript语法相关的事宜,您可以这样做。
Discord: Fawkes#4253
COG论坛: Fawkes
Tumblr: @fantasyfawkes
免责声明
这个语法高亮器与Choice of Games, LLC无关,也不是其所推荐的。它是Fawkes (E.S. Fawkes)独立创建和维护的,作为作者的帮助工具。
ChoiceScript版权 © D. Fabulich。