Overview Version History Q & A Rating & Review
文档的个人风格化,可配置的正则替换
可设置在每行输入结束时自动执行
根据 Markdown、一般文本文件、其它类型 (代码) 文件,做不同的处理
若文档的大纲视图有内容,可以将它们全部导出来
将 VsCode 的一些命令,设置到状态栏
使用
命令
进入命令面板 (Ctrl-Shift-P) 后,可键入执行:
cinfwyx.tools: 根据设置,对本文、或选择的区域、或当前行,执行风格化
若设置,会在每行输入结束时,对该行自动执行
cinfwyx.tools.regcfg: 打开配置文件,对本程序进行设置
cinfwyx.tools.export: 导出文档中存在的大纲内容
建议自行设置热键以更方便使用
状态栏按钮
程序设置了 5 个状态栏按钮,可设置打开或关闭
VsCode 系统命令:关闭未更改的文档
VsCode 系统命令:保存当前文档
VsCode 系统命令:重载界面,以刷新扩展
CinFwyx:用此工具风格化本文档
显示光标所在处字符的 UniCode 编码
点击时,打开配置文件,对本程序进行设置
设置
通过前述的命令或按钮,进入配置文件,一目了然:
设置是否打开/关闭状态栏按钮
设置程序功能控制项
可随意按自己的需要,增删修改正则表达式
工作模式
支持针对全文、或仅选择的区域、或两者共同作用,设置配置文件中,【工作模式】项即可
选区可以是多个 (譬如,Win 系统中,用【Alt + 鼠标】选取)
选区将被拓展到行首、行尾,即:以行而非字来处理
默认值为优先处理选择的内容:
对于 Markdown 或一般文本文件,有选区时,只处理选区;无选区时,处理全文
对于其它类型的文件,有选区时,只处理选区;无选区时,处理当前行
分类处理
根据文件类型,分为 Markdown、一般文本、代码文件三类,分别处理
譬如,以 # 引导的标题行,只对 Markdown 文件作用
譬如,对 Markdown 或一般文本之外的代码文件,不执行全文处理,而是选区或当前行
这使得程序可应用于所有类型的文档,而尽量避免误更改特定代码文件的格式
行内代码段保护
可设置特定的字符,由它包围的文字将被保护而不被处理
缺省设置为【/ ' `"】即:斜杠、单双引号、反引号
常用于特定的字符串或正则式,如代码、命令行参数、模板文字等,其格式不应改动
保护用的字符可随意更改,譬如添加百分号或删除某字符
若全部删空,即取消保护功能
只保护 Markdown / 一般文本的全文、代码文件的选区
而 Markdown / 一般文本的选区、代码文件的当前行,则视为有意的选取,不被保护
个人风格化
删除空白行,使:
头部无空白行;中部的连续空白行不超过 1 个、尾部总为 1 个空行的型式
所有的全角数字、字母、空格都转为半角
部分全角符号:‘’“”()+-*@{}[]# =|'"&\~
改为了对应的:「」『』() +-*@ {} [] # =|\'\"&\\~
缩进标准化
都采用 Tab,或者,都采用 2 或 4 个空格 (可设置)
这使得键入时可以随意混和使用 Tab 和空格
标题行、有序表、无序表、分割线等 Markdown 元素型式统一
一些简便表达,如:
拓展填充:可用 空白 + [~—_←·+-.*=→] + [,,;;] + 空白
的型式,填充字符之间
譬如:X ~, Y
或 X ~;; ; Y
或 X ~; ; ;; Y
将用 ~ 填充为:X ~~~~~~~~~~ Y
,填充数量按间距自动计算
看看哪个更合适?
X ., Y
变为:X ........ Y
X ·, Y
变为:X ········ Y
X -, Y
变为:X -------- Y
X —, Y
变为:X ———————— Y
中文之后用中文标点符号
英文和数字的内部使用半角标点
可通过配置文件任意设置,譬如:
尾部双空格或无空格
小序号:行首的数字 + 多个逗、分、点字符,如 '123,, 或 123;。等等' 改为 ‹ 123 ›
多个全角?和!合为一个 ⁇、⁈、⁉、‼
的型式
连续的 。。
改成 ···
; 4 个及以上的 。。。。
则是 ··· ···
多个中文的 ,;:、『』〖〗《》
合为一个
各种括号,统一为外侧带空格、内侧无空格的型式
链接 [] ()
以及图片链接 ![] ()
的型式,去掉其中多余的空白
各种前后空白的调整
如大中小括号、全角标点符号前后、中英文之间、数字之间、冒号与英文 / 数字之间
··· ··· ··· ···
—— 细节详情,无法尽列
概而言之,就是让写作时无须太在意缩进、中英文标点、间距等等琐碎
而成品具有大致统一的清晰简约风格
即使应用于普通的 .txt 文本,也能有大致的排版效果
即使应用于 .js、.cpp 之类的代码文件,也能去除中英文标点混淆之类的错误
各网站对 Markdown 的支持情况各不相同,有时还是要根据具体情况去调整
譬如大多网站都支持尾部无空格,并能正确分行
但此处,VsCode 的扩展介绍页,若没有尾部空格,就必须加个空行,否则不能正确分行
所以虽然觉得没有尾部双空格,看着更自然,但仍将缺省值设为:【tab 缩进】【尾部双空格】
自己平时使用 vscode 时,并不打开 markdown 预览,那么,视觉上就是一般的文本了
但文章仍然保持了与预览中大致相同的排版效果,这是我喜欢的风格
导出大纲
如果文档存在大纲,命令 cinfwyx.tools.export
可以将它导出来
适用于任何文档,导出其【大纲视图】中的全部内容
大纲的内容是由系统,或其它扩展,譬如各种 Lint 提供的
对于大多代码文件,这个大纲就是代码中的【类、函数、变量】等标识符的列表
而对于 Markdown 文档,则一般是各级标题
版本
v 0.2.10 加个功能:命令 cinfwyx.tools.export
,导出大纲
v 0.2.15 加个功能:可设置,在每行输入结束后,自动对该行执行风格化
v 0.2.18 行内代码段保护可任意设定,将用一对【设定的字符】来表示保护的范围
譬如:单双引号、反引号和斜杠 /,它们常用于表示特定的字符串或正则式
v 1.0.0 把注释的文字处理好了,这样,在用于代码文件时也不会干扰了
v 1.1.1 加个功能:在状态栏显示当前光标所在处的字符的 unicode 编码,写代码用得着
v 1.2.8 不再使用 VsCode 的配置系统,而使用单独的配置文件
这使得增删正则式以更改、扩充程序功能变得很容易,特别适合于使用者按需灵活定制
调整代码,使 extension.js 的 size == 6666 Bytes,大吉
v 1.2.12 planken_englands 希望有 (无) 序表后,不要固定跟随 2 个空格
于是加个选项,用以设定该间隔空白,可为 1 ~ 4 个空格,或设为 0 则为 1 个 Tab
v 1.2.15 在我写 C++ 时,switch 语句的 case: 后面没法加带空白的 "//" 型注释
因为 : //
被识别为网址而去除了空白,改为紧凑的 ://
,改掉了
同样在 C++ 时,形参中有多个数字时,被识别为千分数字型式而去除了内部空白,改掉
v 1.2.21 在我写含 SQL 语句的 C++ 时,因各项名为中文,而语句较长,为 \
接续的多行文字
而 "..." 的保护只用于行内,于是 SQL 需要的英文字符【., ;】等都变成了【。,;】
这肯定造成数据库查询失败了,改掉,现在,将以【\】或【";】之类结尾的,视为多行文字的接续,略过
调整代码,仍保持 extension.js 的 size == 6666 Bytes,大吉
见到有人下载安装了,挺好,那么,有什么意见、建议可联系:18781219@qq.com