基于缩进折叠的文本编辑器或查看器

Lek*_*eyn 4 text-editor software-recommendation

我试图更好地理解程序*.dsl反汇编的文件。这些文件看起来像:iasl

/*
 * a comment
 */
Stuff
{
    More Stuff
    {
        Beer (a, b) // another comment
    }
    Hmm (mmm)
    {
        Package (0x04)
        {
            0xFFFF
        },

        Package (0x04)
        {
            0xFFFF
        }
    }
    Meh (x, y)
}
Run Code Online (Sandbox Code Playgroud)

对于文本查看器/编辑器来说,这种语法应该非常简单。由于我只是查看这些文件,因此不需要编辑功能。该文件有 11k 行,这使得扫描文本变得更加困难。

是否有具有折叠功能的轻量级文本查看器?欢迎使用 CLI 和 GUI 解决方案。

另外:我也想拥有下一个功能:

  • 快捷键从子跳转到父(例如,Beer到More Stuff或{旁边)
  • 快速搜索(到目前为止,我使用less了其中我可以通过按/搜索词和搜索词来搜索Enter。Firefox“底部搜索”栏是我希望在 GUI 程序中看到的东西)
  • 奖励:隐藏文本块

查看器的目的是让我更快地浏览文本文件。

enz*_*tib 6

编辑器geany,也可用作 IDE,具有基于缩进的 Python 源文件折叠。

它应该是一种将.dsl文件与这种类型的表示相关联的方法

在此处输入图片说明


ker*_*aru 5

VIM 来救援!

您可以使用 VIM 通过快速命令来折叠方法。在正常模式下,键入zf2j,您将获得折叠的方法。

您可以将快捷键与zf2j命令关联起来......您就完成了!:D

编辑:

发现一个有趣的表格,里面有VIM中与折叠相关的所有命令:

  • zf#j 从光标处向下创建 # 行折叠。
  • zf/string 创建从光标到 string 的折叠。
  • zj 将光标移动到下一个折叠。
  • zk 将光标移动到上一个折叠。
  • zo 在光标处打开一个折叠。
  • zO 打开光标处的所有折叠。
  • zm 将折叠级别增加一。
  • zM 关闭所有打开的折叠。
  • zr 将折叠级别减少 1。
  • zR 将折叠级别降低到零——所有折叠都将打开。
  • zd 删除光标处的折叠。
  • zE 删除所有折叠。
  • [z 移动到打开折叠的开始处。
  • ]z 移动到打开折叠的末尾。


Lek*_*eyn 2

为了满足我的特殊需求(分析 ACPI 表),我创建了FoldedViewer:

视图.html

它的名称实际上是 FoldedViewer(无意侵犯商标权),JS/ HTML5 程序可通过提供折叠功能来加速 DSDT/ SSDT 表的分析。如果您使用的是最新的浏览器,特别是像 Firefox 或 Chromium 这样的开源浏览器,您将能够通过文件选择器选择文件。

特征:

  • 折叠块(通过缩进、Ctrl + 单击确定)
  • 显示子块的数量
  • 跳转到行号
  • 使用 localStorage 在浏览器中保存折叠状态
  • 从浏览器运行,无需安装
  • 从 URL 或使用浏览器的文件选择器打开文件
  • 显示鼠标位置下的块的命名空间和对象
  • 突出显示当前行和选定的块
  • 只需按一次 Ctrl + Shift + 单击即可折叠/展开所有块

FoldedViewer 的屏幕截图