ace编辑器自动完成器在使用“-”(破折号或减号运算符)后不会显示。但完成器会显示其他常用运算符(如+,-,*)的建议。/我也试过使用cnc +space选项来拉起窗格,但它对我也没有帮助。x1c 0d1x
yruzcnhs1#
您可以覆盖默认行为第一个月它在ext-language_tools.js(旧版本)或autocomplete/utils.js中定义。从下面的代码中,你可以看到每个完成器都可以有自己的正则表达式,由identifierRegexps(string)提供:
exports.getCompletionPrefix = function (editor) { var pos = editor.getCursorPosition(); var line = editor.session.getLine(pos.row); var prefix; editor.completers.forEach(function(completer) { if (completer.identifierRegexps) { completer.identifierRegexps.forEach(function(identifierRegex) { if (!prefix && identifierRegex) prefix = this.retrievePrecedingIdentifier(line, pos.column, identifierRegex); }.bind(this)); } }.bind(this)); return prefix || this.retrievePrecedingIdentifier(line, pos.column); };
字符串从我的测试中,我可以说这不能正常工作,因为如果前缀为空,则将使用默认的正则表达式:
return prefix || this.retrievePrecedingIdentifier(line, pos.column);
型此外,我在github页面上发现了一个同样问题的pull请求:https://github.com/ajaxorg/ace/pull/2905我还在ace编辑器的github页面上创建了一个问题:https://github.com/ajaxorg/ace/issues/3430
更新(03.04.2018):
看来这个功能终于进入了项目:https://github.com/ajaxorg/ace/pull/2905#pullrequestreview-108526630
qzlgjiam2#
Ace.Completer接口有identifierRegexps键,用于排除减号(“-”):
Ace.Completer
identifierRegexps
const completer: Ace.Completer = { identifierRegexps: [/[a-zA-Z_0-9\$\u00A2-\uFFFF]/], } editor.completers = [completer];
字符串
2条答案
按热度按时间yruzcnhs1#
您可以覆盖默认行为
第一个月
它在ext-language_tools.js(旧版本)或autocomplete/utils.js中定义。
从下面的代码中,你可以看到每个完成器都可以有自己的正则表达式,由identifierRegexps(string)提供:
字符串
从我的测试中,我可以说这不能正常工作,因为如果前缀为空,则将使用默认的正则表达式:
型
此外,我在github页面上发现了一个同样问题的pull请求:https://github.com/ajaxorg/ace/pull/2905
我还在ace编辑器的github页面上创建了一个问题:https://github.com/ajaxorg/ace/issues/3430
更新(03.04.2018):
看来这个功能终于进入了项目:
https://github.com/ajaxorg/ace/pull/2905#pullrequestreview-108526630
qzlgjiam2#
Ace.Completer
接口有identifierRegexps
键,用于排除减号(“-”):字符串