КаталогиКомплект в JLine3 - PullRequest
       23

КаталогиКомплект в JLine3

0 голосов
/ 09 сентября 2018

Я работаю с JLine3.Вот фрагмент кода, который я написал.

StringsCompleter machineCompleter = new StringsCompleter("machine1", "machine2");
DirectoriesCompleter directoriesCompleter = new DirectoriesCompleter(new File("."));
FilesCompleter filesCompleter = new FilesCompleter(new File("."));
Candidate remoteFileCandidate = new Candidate("", "", null, "destination in remote machine", null, null, false);

// SEND --file D:\1.txt --machineName machine1 --to E:\2.txt
Node sendNode =
        node("SEND",
                node("--file",
                        node(filesCompleter,
                                node("--machineName",
                                        node(machineCompleter,
                                                node("--to",
                                                        node(remoteFileCandidate)))))),
                // SEND --dir D:\folder --machineName machine1 --to E:\folder
                node("--dir",
                        node(directoriesCompleter,
                                node("--machineName",
                                        node(machineCompleter,
                                                node("--to",
                                                        node(remoteFileCandidate)))))));
TreeCompleter treeCompleter = new TreeCompleter(sendNode);
Terminal terminal = TerminalBuilder.terminal();
LineReader lineReader = LineReaderBuilder.builder().completer(treeCompleter).terminal(terminal).build();
System.out.println("Output :: " + lineReader.readLine("prompt>"));

В приведенном выше фрагменте кода я могу сделать завершитель после работы filesCompleter.Рабочий пример:

Working file completer

Но я столкнулся с препятствием при работе с DirectoriesCompleter .Завершитель после этого не работает (когда я нажимаю TAB для автозаполнения).enter image description here

Любая помощь будет отличной.Благодаря.

...