“语法”突出显示一个平面文件

hov*_*ova 5 highlighting syntax flatfile

我用谷歌搜索、查看和探索,但似乎大多数编辑器可配置的语法突出显示定义基于关键字等。我需要一个基于列和行的东西,基本上是为了突出平面文件中的不同字段。

它需要比一条线适合所有更复杂,但是,有几种不同的“类型”线。

示例如下所示

A9999000055555 333333     55554444422222210102009000000333333
B44444555550000
B44444555550000
B44444555550000
B44444555550000
C9999        0004
Run Code Online (Sandbox Code Playgroud)

除了“0004”(B 记录数)和“10102009”(日期)之外,所有其他序列号都是代表不同用户输入字段的实际字母数字。第一个字母通常被指定为线型。

这个问题的目的是让人类验证文件格式的“正确性”。通常,这些文件通常以自动方式创建,但业务规则发生变化,旧的大型机程序必须更新(最终发生的事情并不漂亮)。所以这个想法是让创建这些文件的人有一种方法来仔细检查文件是否符合格式。我不打算在这里进行任何业务规则验证,纯粹是格式。

Bru*_*tin 3

您可以查看 RecordEditor RecordEditor它不是文本编辑器(它在表格中显示数据)。它还具有单个记录显示+其他可用视图。

默认情况下是选择记录布局,但有一个“首选布局”,它将使用记录的正确布局显示每个记录。

它确实允许您直观地检查文件

使用记录编辑器,您可以在表格中显示文件(后面是首选选项

记录编辑器表显示

您还可以在突出显示的文本视图中显示(视图 >>>> 文本视图(突出显示字段)

带有突出显示字段的文本编辑器视图

你也可以混合匹配,这里当前记录也以表格形式显示在右侧:

带有突出显示字段和单记录视图的文本编辑器视图


或者,记录编辑器具有宏选项。你可以

  1. 使用内置宏ViewForEachRecordType.jsHeaderDetailFooterTabs.js(某些版本中缺少)在单独的选项卡上显示每个记录类型
  2. 编写您自己的(可能改编自ViewForEachRecordType.js

运行ViewForEachRecordType.js

运行宏

这将为文件中的每个记录类型生成一个单独的选项卡:

ViewForEachRecordType.js 的输出


另一种可能性可能是Textplorer,我自己没有尝试过,但看起来它会突出显示字段