Skip to content

使用方式

zerozawa edited this page Mar 12, 2023 · 5 revisions

建议

noveler 的功能与 vscode 原生功能部分存在冲突,如果你的 vscode 还有除了写小说的其他用处,请不要将 noveler 的配置设置到全局,而是仅在文件夹与工作区范围内修改。

GUI 设置

vscode 右下角点击齿轮图标,在弹出的菜单中选择 设置,或者按下 ctrl + , 打开设置界面,在左侧树状菜单中找到 扩展 -> Noveler,之后在右侧修改。

注意noveler.customHighlight & noveler.confCSVFiles & noveler.confTXTFiles 目前无法在 GUI 设置中修改,需要手动修改配置文件。

json 设置

DecorationRenderOptions: vscode 文档: DecorationRenderOptions 定义

CompletionItemKind: vscode 文档: CompletionItemKind 定义

DiagnosticSeverity: vscode 文档: DiagnosticSeverity 定义

{
  // 用户自定义高亮,按照正则表达式匹配
  // 键为正则表达式,值为高亮配置,结构为 DecorationRenderOptions
  "noveler.customHighlight": {
    "\\d+(\\.\\d+)?": { "color": "#23e40a" },
    "《.*?》": { "color": "#8482e4" }
  },
  // 小说元信息(例如角色的设定、宗门的设定)文件设置
  // 文件请使用csv格式,从第一行开始,不要有注释
  "noveler.confCSVFiles": [
    {
      // 文件路径(相对路径只在打开单文件夹时才会读取)
      "path": ".vscode/test.csv",
      // 要高亮的列名,默认为 name
      "key": "名称",
      // 悬挂提示的列名,不写则无悬挂信息,无默认值
      "hoverKey": "信息",
      // 高亮配置,结构为DecorationRenderOptions
      "decorationRenderOptions": {
        "color": "#9e952f"
      }
    },
    {
      // 文件路径(绝对路径在任何情况下都会读取)
      "path": "/home/zerozawa/Sources/mine/noveler/test/folder2",
      "key": "key",
      "hoverKey": "hoverKey",
      "decorationRenderOptions": {
        "color": "#9e952f"
      },
      // 前缀名,不写则为空字符串
      "suggestPrefix": "pj",
      // 提示种类名,影响提示的图标,可选值请查看 `CompletionItemKind`
      "suggestKind": "Method"
    }
  ],
  "noveler.confTXTFiles": [
    {
      // 文件路径(相对路径只在打开单文件夹时才会读取)
      "path": ".vscode/test.txt",
      // 报错信息,默认为敏感词
      "message": "敏感词",
      // 报错等级,默认为 Error,可选值请查看 `DiagnosticSeverity`
      "diagnosticSeverity": "Error"
    }
  ],
  // 设置为 true 的情况下,插件在开启时会检测 "[plaintext]" 中的设置是否满足插件运行条件,不满足的话会弹出对话框
  "noveler.showApplyRecommendPlaintextConf": true,
  // 回车后是否自动插入缩进、空行
  "noveler.autoIndent": true,
  // 回车后自动插入的空行数
  "noveler.autoIndentLines": 1,
  // 回车后自动插入的缩进空格
  "noveler.autoIndentSpaces": 4,
  // 是否使用盘古排版(即中英文分隔),设置为true的话会在格式化时在中英文间自动插入空格,同时移除多余的空格
  "noveler.usePangu": true,
  // 预览界面的字体大小
  "noveler.previewFontSize": 35,
  // 预览界面的缩进长度
  "noveler.previewIndentionLength": 4,
  // 预览界面的段落间距
  "noveler.previewSpaceLines": 1,
  // 是否显示状态栏信息,状态栏会展示码字时间、码字速度,鼠标移到上面会显示一共码了多少字
  "noveler.statusShow": true,
  // 状态栏码字时间的间断间隔,单位为秒
  "noveler.statusTimeUnit": 10,
  // 状态栏字数统计是否包含空格
  "noveler.statusIncludingSpace": false,
  // 状态栏显示的项目
  "noveler.statusItems": [
    // 速度
    "Speed",
    // 码字累计时间
    "Time",
    // 已经输入的字数
    "InputWordCount",
    // 当前编辑器文本字数
    "TextWordCount"
  ],
  // 补全时的触发字符, *注*:请尽量使用英文标点作为触发字符, 默认为@
  "noveler.completionChar": "@",
  // 大纲文本保存的目录,只能是相对路径,默认为 .noveler/outlines
  "noveler.outlinesDir": ".noveler/outlines",
  "[plaintext]": {
    // 关闭原生的折行缩进
    "editor.wrappingIndent": "none",
    // 关闭原生的自动插入缩进
    "editor.autoIndent": "none",
    // 在视区宽度和 #editor.wordWrapColumn# 中的较小值处折行。
    "editor.wordWrap": "bounded"
  }
}

额外配置文件

CSV 文件

CSV 文件可使用第三方程序进行编辑(如excelwps),但是请注意每次编辑后使用快捷键alt + f刷新插件来获取最新的配置信息。

本插件不支持 CSV 中存在注释,内容必须从文件第一行开始,分隔符请使用英文逗号,请注意!

CSV 文件样例预览,以下配置为例:

{
  // ...
  "noveler.confCSVFiles": [
    // ...
    {
      "path": "/home/zerozawa/Sources/mine/noveler/test/folder2",
      "key": "名称",
      "hoverKey": "信息"
    }
  ]
}

对应的 CSV 文件内容:

名称,信息
汪言,**主角**,性别为男爱好为女

TXT 文件

TXT 文件支持在 vscode 中编辑后实时刷新,目前不提供手动刷新的支持。

TXT 文件使用回车与空格来分别敏感词。

TXT 文件样例预览,以下配置为例:

{
  // ...
  "noveler.confTXTFiles": [
    // ...
    {
      "path": ".vscode/test.txt"
    }
  ]
}

对应的 TXT 文件内容:

暴力 色情
av

快捷键

  • alt + \: 开启预览
  • alt + f: 刷新 CSV 文件信息(CSV 文件可使用 excel 或 wps 编辑,考虑到这一类作者的存在,vscode 难以抓取到 csv 的修改动作,从而自动刷新,只能让作者自行手动刷新)
Clone this wiki locally