org.jline.reader.impl.history.DefaultHistory Java Examples
The following examples show how to use
org.jline.reader.impl.history.DefaultHistory.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: ShellUtils.java From rug-cli with GNU General Public License v3.0 | 7 votes |
public static LineReader lineReader(File historyPath, Optional<SignalHandler> handler, Completer... completers) { // Protect the history file as may contain sensitive information FileUtils.setPermissionsToOwnerOnly(historyPath); // Create JLine LineReader History history = new DefaultHistory(); LineReader reader = LineReaderBuilder.builder().terminal(terminal(handler)).history(history) .parser(new DefaultParser()).variable(LineReader.HISTORY_FILE, historyPath) .completer(new AggregateCompleter(completers)).highlighter(new DefaultHighlighter()) .build(); history.attach(reader); setOptions(reader); return reader; }
Example #2
Source File: JLineReader.java From ksql-fork-with-deep-learning-function with Apache License 2.0 | 5 votes |
public JLineReader(Terminal terminal) { // The combination of parser/expander here allow for multiple-line commands connected by '\\' DefaultParser parser = new DefaultParser(); parser.setEofOnEscapedNewLine(true); parser.setQuoteChars(new char[0]); parser.setEscapeChars(new char[]{'\\'}); final Expander expander = new NoOpExpander(); // TODO: specify a completer to use here via a call to LineReaderBuilder.completer() this.lineReader = LineReaderBuilder.builder() .appName("KSQL") .expander(expander) .parser(parser) .terminal(terminal) .build(); this.lineReader.setOpt(LineReader.Option.HISTORY_IGNORE_DUPS); this.lineReader.setOpt(LineReader.Option.HISTORY_IGNORE_SPACE); Path historyFilePath = Paths.get(System.getProperty( "history-file", System.getProperty("user.home") + "/.ksql-history" )).toAbsolutePath(); if (CliUtils.createFile(historyFilePath)) { this.lineReader.setVariable(LineReader.HISTORY_FILE, historyFilePath); LOGGER.info("Command history saved at: " + historyFilePath); } else { terminal.writer().println(String.format( "WARNING: Unable to create command history file '%s', command history will not be saved.", historyFilePath )); } this.lineReader.unsetOpt(LineReader.Option.HISTORY_INCREMENTAL); this.history = new DefaultHistory(this.lineReader); this.prompt = DEFAULT_PROMPT; }
Example #3
Source File: LogServiceShell.java From incubator-ratis with Apache License 2.0 | 5 votes |
public static void main(String[] args) throws Exception { final Terminal terminal = TerminalBuilder.builder() .system(true) .build(); History defaultHistory = new DefaultHistory(); // Register a shutdown-hook per JLine documentation to save history Runtime.getRuntime().addShutdownHook(new Thread(() -> { try { defaultHistory.save(); } catch (IOException e) { LOG.debug("Failed to save terminal history", e); } })); final LineReader lineReader = LineReaderBuilder.builder() .terminal(terminal) .highlighter(new DefaultHighlighter()) .history(defaultHistory) .build(); LogServiceShellOpts opts = new LogServiceShellOpts(); JCommander.newBuilder() .addObject(opts) .build() .parse(args); try (LogServiceClient logServiceClient = new LogServiceClient(opts.getMetaQuorum())) { LogServiceShell client = new LogServiceShell(terminal, lineReader, logServiceClient); client.run(); } }
Example #4
Source File: ConsoleIO.java From rdf4j with BSD 3-Clause "New" or "Revised" License | 5 votes |
/** * Build JLine line reader with default history * * @return line reader */ private LineReader buildLineReader() { History history = new DefaultHistory(); LineReader reader = LineReaderBuilder.builder().terminal(this.terminal).history(history).build(); Path file = Paths.get(appInfo.getDataDirectory().toString(), "history.txt"); reader.setVariable(LineReader.HISTORY_FILE, file); return reader; }
Example #5
Source File: LogServiceShell.java From ratis with Apache License 2.0 | 5 votes |
public static void main(String[] args) throws Exception { final Terminal terminal = TerminalBuilder.builder() .system(true) .build(); History defaultHistory = new DefaultHistory(); // Register a shutdown-hook per JLine documentation to save history Runtime.getRuntime().addShutdownHook(new Thread(() -> { try { defaultHistory.save(); } catch (IOException e) { LOG.debug("Failed to save terminal history", e); } })); final LineReader lineReader = LineReaderBuilder.builder() .terminal(terminal) .highlighter(new DefaultHighlighter()) .history(defaultHistory) .build(); LogServiceShellOpts opts = new LogServiceShellOpts(); JCommander.newBuilder() .addObject(opts) .build() .parse(args); try (LogServiceClient logServiceClient = new LogServiceClient(opts.metaQuorum)) { LogServiceShell client = new LogServiceShell(terminal, lineReader, logServiceClient); client.run(); } }
Example #6
Source File: CleanstoneCommandHistory.java From Cleanstone with MIT License | 4 votes |
@Primary @Bean public History history(LineReader lineReader) { lineReader.setVariable(LineReader.HISTORY_FILE, Paths.get("history.log")); return new DefaultHistory(lineReader); }
Example #7
Source File: SshShellHistoryAutoConfiguration.java From ssh-shell-spring-boot with Apache License 2.0 | 4 votes |
@Bean @Primary public History history(LineReader lineReader, @Qualifier(HISTORY_FILE) File historyFile) { lineReader.setVariable(LineReader.HISTORY_FILE, historyFile.toPath()); return new DefaultHistory(lineReader); }
Example #8
Source File: HistoryCommandTest.java From ssh-shell-spring-boot with Apache License 2.0 | 4 votes |
@BeforeEach void setUp() { SshShellHelper helper = mock(SshShellHelper.class); when(helper.getHistory()).thenReturn(new DefaultHistory()); cmd = new HistoryCommand(helper); }
Example #9
Source File: SshShellHelper.java From ssh-shell-spring-boot with Apache License 2.0 | 2 votes |
/** * Return the terminal reader history * * @return history */ public History getHistory() { return new DefaultHistory(this.reader()); }