@Override public Attributes enterRawMode() { return terminal.enterRawMode(); }
@Override public Attributes enterRawMode() { return terminal.enterRawMode(); }
@Override public Attributes enterRawMode() { return delegate().enterRawMode(); }
@Override public Attributes enterRawMode() { return delegate().enterRawMode(); }
@Override public Object execute() throws Exception { if (arguments == null || arguments.length() == 0) { System.err.println("Argument expected"); } else { WatchTask watchTask = new WatchTask(); executorService.scheduleAtFixedRate(watchTask, 0, interval, TimeUnit.SECONDS); try { Terminal terminal = (Terminal) session.get(".jline.terminal"); Terminal.SignalHandler prev = terminal.handle(Terminal.Signal.INT, this::abort); Attributes attr = terminal.enterRawMode(); try { reading = Thread.currentThread(); while (terminal.reader().read(1) == NonBlockingReader.READ_EXPIRED); } finally { reading = null; terminal.setAttributes(attr); terminal.handle(Terminal.Signal.INT, prev); } } catch (InterruptedIOException e) { // Ignore } finally { abort = true; executorService.shutdownNow(); } } return null; }
@Override public Object execute() throws Exception { if (arguments == null || arguments.length() == 0) { System.err.println("Argument expected"); } else { WatchTask watchTask = new WatchTask(); executorService.scheduleAtFixedRate(watchTask, 0, interval, TimeUnit.SECONDS); try { Terminal terminal = (Terminal) session.get(".jline.terminal"); Terminal.SignalHandler prev = terminal.handle(Terminal.Signal.INT, this::abort); Attributes attr = terminal.enterRawMode(); try { reading = Thread.currentThread(); while (terminal.reader().read(1) == NonBlockingReader.READ_EXPIRED); } finally { reading = null; terminal.setAttributes(attr); terminal.handle(Terminal.Signal.INT, prev); } } catch (InterruptedIOException e) { // Ignore } finally { abort = true; executorService.shutdownNow(); } } return null; }
}; executorService.scheduleAtFixedRate(task, 0, interval, TimeUnit.SECONDS); Attributes attr = terminal.enterRawMode(); terminal.reader().read(); terminal.setAttributes(attr);
Attributes attr = terminal.enterRawMode(); try {
Attributes attr = terminal.enterRawMode(); try {
Attributes attr = terminal.enterRawMode(); try { window = size.getRows() - 1;
} else { final ChannelShell channel = sshSession.createShellChannel(); Attributes attributes = terminal.enterRawMode(); try { Map<PtyMode, Integer> modes = new HashMap<>();
Attributes attributes = terminal.enterRawMode(); try { Map<PtyMode, Integer> modes = new HashMap<>();
} else { final ChannelShell channel = sshSession.createShellChannel(); Attributes attributes = terminal.enterRawMode(); try { Map<PtyMode, Integer> modes = new HashMap<>();
final ChannelShell channel = sshSession.createShellChannel(); final org.jline.terminal.Terminal terminal = (org.jline.terminal.Terminal) session.get(".jline.terminal"); Attributes attributes = terminal.enterRawMode(); try { Map<PtyMode, Integer> modes = new HashMap<>();
Attributes attributes = terminal.enterRawMode(); try { Map<PtyMode, Integer> modes = new HashMap<>();
final ChannelShell channel = sshSession.createShellChannel(); final org.jline.terminal.Terminal terminal = (org.jline.terminal.Terminal) session.get(".jline.terminal"); Attributes attributes = terminal.enterRawMode(); try { Map<PtyMode, Integer> modes = new HashMap<>();
SignalHandler prevIntHandler = terminal.handle(Signal.INT, this::interrupt); SignalHandler prevSuspHandler = terminal.handle(Signal.TSTP, this::suspend); Attributes attributes = terminal.enterRawMode(); terminal.puts(Capability.enter_ca_mode); terminal.puts(Capability.keypad_xmit);
SignalHandler prevIntHandler = terminal.handle(Signal.INT, this::interrupt); SignalHandler prevSuspHandler = terminal.handle(Signal.TSTP, this::suspend); Attributes attributes = terminal.enterRawMode(); terminal.puts(Capability.enter_ca_mode); terminal.puts(Capability.keypad_xmit);
protected void handleSignal(Signal signal) { if (signal == Signal.WINCH) { size.copy(terminal.getSize()); display.resize(size.getRows(), size.getColumns()); redisplay(); } else if (signal == Signal.CONT) { terminal.enterRawMode(); size.copy(terminal.getSize()); display.resize(size.getRows(), size.getColumns()); terminal.puts(Capability.keypad_xmit); redrawLine(); redisplay(); } }
previousWinchHandler = terminal.handle(Signal.WINCH, this::handleSignal); previousContHandler = terminal.handle(Signal.CONT, this::handleSignal); originalAttributes = terminal.enterRawMode();