jquery终端自定义选项卡完成

时间:2014-10-14 07:00:05

标签: jquery-terminal

是否可以控制JQuery.Terminal中的整个制表符完成功能?我想管理显示的自动完成功能。

例如,我想支持模板/正则表达式,以便我可以执行以下操作:"可视化广告系列CAMPAIGN_NAME,其中config = SOMETHING"。我可以为所有这些编写自己的解析器和处理程序,但我不确定如何/在哪里插入它?

1 个答案:

答案 0 :(得分:1)

在初始化设置中,您需要确保未设置completion属性(默认为false)。

然后,您需要拦截keydown函数并处理您感兴趣的密钥(在我的情况下为tab)。

在那里,您可以为自动完成逻辑提供自己的处理程序:

$('#terminal').terminal(function (command, term) 
        {
            // Command handlers
        },
        {
            keydown: function(event, term) {

            if (event.keyCode == 9) //Tab
            {
                // Call handler to handle your auto-completion logic

                // Sample to print stuff to the console and update the command
                term.echo("autocompletion commands...");
                term.set_command(term.get_command() + " completion text");

                // Tells the terminal to not handle the tab key
                return false;
            }
        }
    });
});