我在node.js中尋找這個功能,我沒有找到它。
我可以自己實施嗎?據我所知,node.js不會在啓動時加載任何文件(如Bash與.bashrc
一樣),我也沒有注意到有任何方法可以覆蓋shell提示符。如何在node.js shell中實現選項卡完成?
有沒有一種方法來實現它,而無需編寫自定義外殼?
我在node.js中尋找這個功能,我沒有找到它。
我可以自己實施嗎?據我所知,node.js不會在啓動時加載任何文件(如Bash與.bashrc
一樣),我也沒有注意到有任何方法可以覆蓋shell提示符。如何在node.js shell中實現選項卡完成?
有沒有一種方法來實現它,而無需編寫自定義外殼?
你可以猴子修補REPL:
var repl = require('repl').start()
var _complete = repl.complete
repl.complete = function(line) {
...
_complete.apply(this, arguments)
}
只是作爲參考。
readline
模塊有readline.createInterface(options)
方法,該方法接受可選的completer
函數,該函數使標籤頁完成。
function completer(line) {
var completions = '.help .error .exit .quit .q'.split(' ')
var hits = completions.filter(function(c) { return c.indexOf(line) == 0 })
// show all completions if none found
return [hits.length ? hits : completions, line]
}
和
鏈接到API文檔:http://nodejs.org/api/readline.html#readline_readline_createinterface_options
AFAIK不存在用於所述V8終端自動填充選項。但是,也許像[with-readline](http://www.greenend.org.uk/rjk/2005/withreadline.html)這樣的工具對您有所幫助。 – brandizzi