Tag: 语法高亮

如何在实时语法荧光笔中处理多行注释?

我正在编写自己的文本编辑器,在Java中使用语法高亮显示,目前它只是在每次用户输入单个字符时解析并突出显示当前行。 虽然可能不是最有效的方式,但它足够好并且不会引起任何明显的性能问题。 在伪Java中,这将是我的代码的核心概念: public void textUpdated(String wholeText, int updateOffset, int updateLength) { int lineStart = getFirstLineStart(wholeText, updateOffset); int lineEnd = getLastLineEnd(wholeText, updateOffset + updateLength); List foundTokens = tokenizeText(wholeText, lineStart, lineEnd); for(Token token : foundTokens) { highlightText(token.offset, token.length, token.tokenType); } } 真正的问题在于多行注释。 要检查输入的字符是否在多行注释中,程序需要解析回最近出现的“/ *”,同时还要知道这种情况是出现在文字还是其他注释中。 如果文本量很小,这不会是一个问题,但如果文本包含20,000行代码,则可能必须在每个按键上扫描并重新突出显示20,000行代码,这将是非常低效的。 所以我的最终问题是:如何在语法高亮显示中处理多行令牌/注释,同时保持高效?

如何为edittext实现一个简单的语法高亮方法?

我正在制作一个涉及编码的应用程序,我需要编辑文本来识别键入的单词是否为“某事物”然后取决于它是否已注册为彩色,它将为该单词着色。 这是我想要做的,当用户键入并输入“function”时,我希望它自动突出显示。 同样适用于任何其他“function”单词,“()”,“”以及用户键入的许多其他单词。

我可以在Eclipse中自定义语法高亮显示以不同方式显示八进制文字吗?

我认为八进制文字是非常危险的东西,每当我阅读源代码时,我都希望它们非常明显。 必须有一种方法可以在Eclipse中执行此操作,对吧? 所以看起来标准Eclipse无法配置为执行此操作? 需要定制颜色吗?

IntelliJ IDEA – Java代码中SQL语法的突出显示

我使用IntelliJ 13作为一个项目的IDE,通过Spring的JDBC模板与DB进行通信。 当我在Java中拥有代码片段时,如下所示: getJdbcTemplate().queryForObject(“SELECT CONVERT(VARCHAR(255), NEWID())”, String.class); 其中getJdbcTemplate()返回初始化的JdbcTemplate对象,IDE对SQL语句具有正确的语法高亮(您可以在下面的代码段中看到它): .code {font-family: Monospace} .db-stmt {background: #EDFCED} .db-keyword {color: #000080; font-weight: bold;} .db-column {color: #7D0C8D; font-weight: bold;} .db-number {color: #0000FF;} .java-class {color: #39008E; font-weight: bold;} getJdbcTemplate().queryForObject(“SELECT CONVERT(VARCHAR(255), NEWID())”, String.class); 但是,当我使用另一种方法时,由我创建: protected String queryForString(String sql, Object… args) { try { return getJdbcTemplate().queryForObject(sql, String.class, args); } catch (RuntimeException e) { […]

javadoc的语法高亮?

目前我使用PRE标签在我的javadoc中格式化代码示例,例如: /** * Example javadoc * String foo = “bar”; * * @return true if the operation completed */ 但是在生成的javadoc中,这看起来相当单调乏味,我更倾向于使用类似于SyntaxHighlighter的语法突出显示。 如何才能做到这一点?

如何在eclipse编辑器插件中显示语法错误

如何在eclipse编辑器插件中指示语法错误(例如非法的令牌序列),就像在eclipse Java编辑器中一样,即通过红色蠕动下划线,滚动条上的红色标记,您可以跳转到,以及解释性消息你徘徊在任何一个? 我正在为自定义文件格式(特别是Shark3D游戏引擎的“蛇文件格式”)编写一个eclipse编辑器插件。 我已经实现了一个扫描仪来获得语法高亮和一个大纲。 对于下划线,我是否只是让扫描仪返回带有“ IToken下划线” TextAttribute的IToken而不是正常的,或者是否有标记语法错误的特定机制? 如何实现滚动条标记? IAnnotationModel在这里是相关的接口吗? 如果是这样,我在哪里注册实现以便标记出现? 我只找到了SourceViewerConfiguration.getAnnotationHover() ,这将允许我实现hover行为,但仅适用于“注释”,我想这意味着滚动条标记 – 如何实现文本本身的hover行为? 我会很高兴具体的建议以及一个涵盖这个的教程的URL – 日食帮助文档和示例似乎没有。 编辑:标记是最好的解决方案。 有关如何使用它们的工作示例可以在org.eclipse.ui.examples.readmetool.AddReadmeMarkerAction中的插件示例代码中找到。

Eclipse:我的一个文件的语法突出显示消失了

我试图在Eclipse中关闭未使用的文件,并意外地做错了。 现在我看不到其中一个文件的语法高亮显示。 这里有两个截图 – 第一个你可以看到文件,突出显示被破坏,第二个一切都很好: 突出显示仅对此文件不起作用。 这个文件的扩展是正确的。 我试着仔细查看所有菜单按钮,但这次尝试失败了,我想Eclipse对于新手来说已经足够了。 当然,我试图在网上找到信息,但无法获得任何相关信息。

什么代码突出显示了lib的库?

我希望它们易于捆绑,具有很少的依赖性并且易于使用。

用于Java的语法Highlighter

如您所知,有一个名为GeSHi的 PHP语法荧光笔,它支持大量的编程语言或代码格式。 但是,我找不到这样的Java库,它支持我需要的编程语言(ADA,ASP,BNF,Bash,Brainfuck,C,C ++,C#,CSS,Cobol,ColdFusion,D,Fortran,Haskell,HTML, INI(Config),Java,JavaScript,Lisp,Make,Objective C,PASCAL,Perl,PHP,PLSQL,Prolog,Python,Ruby,Scheme,SQL,VB.NET,Verilog,VHDL,Visual Basic,XML。) 你知道一个或者我是否应该选择通过http事务从远程PHP服务器检索突出显示的代码的低效方式? 有任何想法吗? 谢谢。

在哪里可以找到用于Java的语法高亮库?

我正在用Java编写源代码编辑器(用于Java源代码),我想添加简单的语法突出显示(关键字的独特着色就足够了)。 有什么建议么?