【发布时间】:2010-11-12 03:02:23
【问题描述】:
我正在寻找一个良好的开发环境,可以在其中使用 flex 或 bison 或两者兼而有之。
是否有任何 IDE 具有这些功能和/或适用于此?
(如果不是下一个最普遍的问题是是否有带有 IDE 的词法分析器/解析器生成器?)
谢谢 ~亚历克斯
【问题讨论】:
-
废话。当我打算发表评论时,我不小心回滚了一个更改。
标签: ide bison flex-lexer
我正在寻找一个良好的开发环境,可以在其中使用 flex 或 bison 或两者兼而有之。
是否有任何 IDE 具有这些功能和/或适用于此?
(如果不是下一个最普遍的问题是是否有带有 IDE 的词法分析器/解析器生成器?)
谢谢 ~亚历克斯
【问题讨论】:
标签: ide bison flex-lexer
Visual Studio 对 flex/bison 有很好的支持, https://sourceforge.net/p/winflexbison/wiki/Visual%20Studio%20custom%20build%20rules/
总而言之,您需要安装 flex 和 bison 的 GNUWin 端口 win_flex_bison,并使用与端口一起存在的“目标”文件设置 Visual Studio 的自定义构建规则,在 VC++ 目录设置中设置 exe 路径;然后像往常一样构建和调试 cpp 文件。
【讨论】:
如果您对 emacs 熟悉,我建议您使用以下模式:
http://ftp.lip6.fr/pub/emacs/elisp-archive/incoming/bison-mode.el.gz
http://ftp.lip6.fr/pub/emacs/elisp-archive/incoming/flex-mode.el
请记住,两者都有很多错误,但过了一段时间我发现了大多数让缩进工作的怪癖。
加载这些模式的示例 .emacs:http://www.elliotglaysher.org/emacs/
【讨论】:
我个人使用 Gedit,它具有原生 lex/flex yacc/bison 突出显示
【讨论】:
刚刚找到 GOLD 解析系统。它不是 Flex/Bison,但如果可以接受类似的东西,这似乎是一个很棒的 IDE,并且网站上有很棒的入门文档。
【讨论】:
ANTLR 有几个IDEs 可用,包括one I wrote。按用户计数,ANTLRWorks 可能是最常用的。我的整体功能较少,但我广泛使用它,因为它与我的 Visual Studio 工作完美集成。 ANTLR 的语法语法简洁且非常强大,可为多种语言生成代码,其生成的词法分析器/解析器是简洁、可调试的代码。
编辑以解决 cmets 中的问题:
【讨论】:
Vim 对 flex / lex 和 bison / yacc 文件具有出色的语法高亮支持。 Vim 似乎从文件扩展名中猜测,所以只要我的 flex 文件以 .l 或 .lex 结尾,而我的 bison 文件以 .y 结尾,它似乎就可以正常工作。我知道,它几乎不是一个 IDE,但我发现语法突出显示对我来说是最有用的功能。
【讨论】: