如何在 MC 查看器中添加文件类型的自定义解析器?

如何在 MC 查看器中添加文件类型的自定义解析器?

当你在午夜指挥官中按下F3一个.sqlite文件时,查看器会显示该文件的 SQL 转储而不是原始二进制文件,并且F8可以用来在解析生的模式。

此行为适用于许多其他文件类型,例如,在.zip文件上按 F3 将列出文件内容,在.doc文件上按 F3 将通过管道传输文件antiword.pdf通过管道传输文件pdftotext 等。

是否可以为自定义文件类型添加自己的解析器?

答案1

是的,这是可能的。看一下/etc/mc/mc.ext:程序和文件类型关联在那里定义。例如,这是您提到的 zip、sqlite 和 doc 的关联:

# sqlite3.db
type/^SQLite 3.x database
    Open=/usr/lib/mc/ext.d/misc.sh open sqlite
    View=%view{ascii} /usr/lib/mc/ext.d/misc.sh view sqlite

# zip
type/^([Zz][Ii][Pp])\ archive
    Open=%cd %p/uzip://
    View=%view{ascii} unzip -v %f

# Microsoft Word Document
regex/\.([Dd][oO][cCtT]|[Ww][rR][iI])$
    Open=(lowriter %f >/dev/null 2>&1 &)
    View=%view{ascii} antiword -t %f || catdoc -w %f || word2x -f text %f - || strings %f

您可以mc.ext在文件开头的注释中阅读有关语法的内容:https://github.com/MidnightCommander/mc/blob/master/misc/mc.ext.in

以下是一篇相关文章:https://ubuntuincident.wordpress.com/2010/12/08/configure-mc-open-files/

相关内容