文档开发
本章涵盖文档的使用(例如在IDE中)以及内容本身的开发过程。
- 目录将显示在这里
永久链接
文档树的稳定版本(机器可访问部分)以/tB/前缀为根。具有此前缀的URL以及内部链接(例如docs.twinbasic.com/tB/Modules/Math#round)都是稳定的。
/tB/Core/<Statement>
- AppActivate
- Beep
- Call, ChDir, ChDrive, Class, Close, CoClass, Const, Continue
- Date, Declare, Deftype, DeleteSetting, Dim, Do-Loop
- End, Enum, Erase, Error, Event, Exit
- FileCopy, For-Next, For-Each-Next, Function
- Get, GetSetting, GoSub-Return, GoTo
- If-Then-Else, Implements, Input, Interface, Is
- Kill
- LBound, Let, Line-Input, Load, Lock, LSet
- Mid-equals for
Mid(...) = ..., MidB-equals forMidB(...) = ..., MkDir, Module - Name, New
- Option, On-Error, On-GoSub, On-GoTo, Open
- ParamArray, Print, Private, Property, Protected, Public, Put
- RaiseEvent, ReDim, Reset, Resume, RmDir, RSet
- SavePicture, SaveSetting, Seek, Select-Case, SendKeys, Set, SetAttr, Static, Sub, Stop
- Time, Type
- Unload, Unlock
- While-Wend, Width, With, Write
/tB/Modules/<ModuleName>#<procedure>
在每个模块内,除非另有说明,过程和语句都是内部链接,例如LenB: /tB/Modules/Strings#lenb。带有$后缀的版本具有以-1结尾的参考链接,例如LenB$: /tB/Modules/Strings#lenb-1。
类似地,当过程和语句是独立页面时,例如Date$: /tB/Modules/DateTime/Date#date-1,带$后缀的版本具有以-1结尾的参考链接。
这些是VBA和VBRUN中的模块:
- VBA
- Collection
- Compilation
- Constants
- Conversion
- DateTime
- ErrObject
- ExpressionService
- FileSystem
- Financial
- Information
- Interaction
- Math
- Strings
- TextEncodingConstants
- 内部_HiddenModule
- VBRUN
- AmbientProperties
- AsyncProperty
- Constants
- ContainedControls
- DataMembers
- DataObject
- ErrorCallstack
- ErrorContext
- ErrorStackFrame
- Hyperlink
- ParentControls
- PropertyBag
/tB/Core/Attributes#<attribute>
NOTE
所有非字母字符以及参数都从链接中移除。所有属性名称在链接中都是小写的。例如ArrayBoundsChecks(Bool)被引用为/tB/Core/Attributes#arrayboundschecks。
- AppObject, ArrayBoundsChecks
- BindOnlyIfNoArguments, BindOnlyIfStringSuffix
- ClassId, ClassInterface, CoClassCustomConstructor, CoClassId, COMControl, COMCreatable, COMExtensible, ComImport, CompileIf, CompilerOptions, ConstantFoldable, ConstantFoldableNumericsOnly
- Debuggable, DebugOnly, DefaultMember, Description, DispId, DispInterface, DllExport, DLLStackCheck, DualInterface
- EnforceErrors, EnforceWarnings, EnumId, EventInterfaceId, EventsUseDispInterface
- Flags, FloatingPointErrorChecks, FormDesignerId, Hidden
- IdeButton, IgnoreWarnings, IntegerOverflowChecks, InterfaceId
- MustBeQualified
- OleAutomation
- PackingAlignment, PopulateFrom, PredeclaredID, PreserveSig
- Restricted, RunAfterBuild
- Serialize, SetDllDirectory, SimplerByVals
- TestCase, TestFixture, TypeHint
- Unimplemented, UseGetLastError, UserDefinedTypeIsAnAlias
- WindowsControl
开发环境
文档使用Jekyll构建(渲染为HTML)。
如果您计划进行任何更改或为了方便,请将https://github.com/twinbasic/documentation分叉到您自己的GitHub账户。如果您只想构建文档而不进行更改,则可以跳过此步骤。
克隆第2步中的分叉仓库或文档仓库本身。
**转到克隆的工作树中的
/docs文件夹。**构建、服务和其他文档操作都在此文件夹中完成,而不是在仓库根目录中。
要求
必须安装Jekyll和Ruby。
同时确保Jekyll在PATH中。要在Windows上调整路径,请按⊞ R,输入SystemPropertiesAdvanced Enter,然后点击**环境变量...**按钮。
构建
要构建文档,即从.md文件渲染到_site文件夹:
bundle exec jekyll build
或者,仅在Windows上:
build.bat
检查链接完整性
在检查链接完整性之前,必须构建文档。这可以通过构建临时完成,或者通过构建和服务在后台连续完成。
要检查最新文档构建中的内部链接是否损坏:
bundle exec htmlproofer ./_site --disable-external --no-enforce-https
或者,仅在Windows上:
check.bat
构建和本地服务
要从localhost:4000构建和服务文档:
bundle exec jekyll serve
或者,仅在Windows上:
serve.bat
文档服务器检测文件系统中的更改并根据需要自动重新生成HTML文件。服务器不会跟踪_config.yml中的更改。如果更改配置,必须重启服务器。通过反复按CtrlC来中断服务器。
Mermaid图表
Mermaid图表支持在{% raw %}{% mermaid %} ... {% endmermaid %}{% endraw %}标签内,例如
{% raw %}{% mermaid %}
graph TD;
A-->B;
A-->C;
B-->D;
C-->D;
{% endmermaid %}{% endraw %}为了方便使用,图表在Jekyll构建/服务期间离线处理。图表被提取、渲染并保存到assets/images中。它们是仓库的一部分,assets/images中出现的任何新图表都应该添加到git中。渲染使用mermaid-cli。
附加要求
要渲染新的或更改的图表,应满足以下条件:
- nodejs
- mermaid-cli
npm install -g @mermaid-js/mermaid-cli
部署到docs.twinbasic.com
将您的更改推送到文档仓库的GitHub分叉。
点击跨分叉比较。
选择您的仓库和要合并的分支。

创建拉取请求。

维护者将把拉取请求合并到文档仓库中。您可能希望在#docs频道提及待处理的请求,尽管#github-docs频道提供拉取请求的自动通知。通常,维护者会通过Discord获得新拉取请求的通知,并将合并它或评论要求更改/改进。
以下步骤由维护者完成
审查,然后合并拉取请求或评论所需的更改。


选择部署Jekyll站点到Pages操作。

手动运行构建和部署工作流,因为它不会自动启动。

编辑截图
编辑截图的一种方法是使用集成的矢量/像素软件,如Affinity1。可能的工作流程是:
PrtSc捕获截图。
在Affinity中,Ctrl-Alt-Shift-N(文件,从剪贴板新建)将整个截图导入程序。
使用矢量裁剪工具(来自矢量工作室)将截图裁剪到相关部分。

选择裁剪后的图像,并复制Ctrl-C到剪贴板。
再次从剪贴板创建新文件,打开仅包含裁剪截图的文档Ctrl-Alt-Shift-N(文件,从剪贴板新建)。
关闭在第2步中打开的文件。
根据需要添加箭头和标签。这些可以从本仓库中的其他
.af文件复制粘贴。导出为PNG Ctrl-Alt-Shift-W(文件,导出,导出...)。
NOTE
惯例是将.af("源")文件放在_Images文件夹中,将导出的.png文件放在Images文件夹中。只有后者发布到网站。前者仅用于保存源文件以便轻松编辑/更新。
1 Affinity是一款免费软件,结合了矢量编辑器、位图编辑器和发布布局编辑器的功能。要下载,需要Canva账户。账户是免费的。