fix(input): read stdin with lock (#72)
* fix(input): lock stdin when reading and use its own buffer * style(format): make rustfmt happy * fix(ipc): add accidentally removed trait
This commit is contained in:
parent
9ad7b8a35e
commit
ea549f151e
14 changed files with 926 additions and 988 deletions
64
src/input.rs
64
src/input.rs
|
|
@ -1,5 +1,4 @@
|
|||
/// Module for handling input
|
||||
use std::io::Read;
|
||||
use std::sync::mpsc::Sender;
|
||||
|
||||
use crate::os_input_output::OsApi;
|
||||
|
|
@ -9,9 +8,8 @@ use crate::AppInstruction;
|
|||
use crate::CommandIsExecuting;
|
||||
|
||||
struct InputHandler {
|
||||
buffer: [u8; 10], // TODO: more accurately
|
||||
mode: InputMode,
|
||||
stdin: Box<dyn Read>,
|
||||
os_input: Box<dyn OsApi>,
|
||||
command_is_executing: CommandIsExecuting,
|
||||
send_screen_instructions: Sender<ScreenInstruction>,
|
||||
send_pty_instructions: Sender<PtyInstruction>,
|
||||
|
|
@ -27,9 +25,8 @@ impl InputHandler {
|
|||
send_app_instructions: Sender<AppInstruction>,
|
||||
) -> Self {
|
||||
InputHandler {
|
||||
buffer: [0; 10], // TODO: more accurately
|
||||
mode: InputMode::Normal,
|
||||
stdin: os_input.get_stdin_reader(),
|
||||
os_input,
|
||||
command_is_executing,
|
||||
send_screen_instructions,
|
||||
send_pty_instructions,
|
||||
|
|
@ -57,16 +54,10 @@ impl InputHandler {
|
|||
assert_eq!(self.mode, InputMode::Normal);
|
||||
|
||||
loop {
|
||||
self.buffer = [0; 10];
|
||||
let _ = self
|
||||
.stdin
|
||||
.read(&mut self.buffer)
|
||||
.expect("failed to read stdin");
|
||||
|
||||
match self.buffer {
|
||||
[7, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
let stdin_buffer = self.os_input.read_from_stdin();
|
||||
match stdin_buffer.as_slice() {
|
||||
[7] => {
|
||||
// ctrl-g
|
||||
// debug_log_to_file(format!("switched to command mode"));
|
||||
self.mode = InputMode::Command;
|
||||
return;
|
||||
}
|
||||
|
|
@ -75,7 +66,7 @@ impl InputHandler {
|
|||
.send(ScreenInstruction::ClearScroll)
|
||||
.unwrap();
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::WriteCharacter(self.buffer))
|
||||
.send(ScreenInstruction::WriteCharacter(stdin_buffer))
|
||||
.unwrap();
|
||||
}
|
||||
}
|
||||
|
|
@ -92,15 +83,12 @@ impl InputHandler {
|
|||
}
|
||||
|
||||
loop {
|
||||
self.buffer = [0; 10];
|
||||
let _ = self
|
||||
.stdin
|
||||
.read(&mut self.buffer)
|
||||
.expect("failed to read stdin");
|
||||
let stdin_buffer = self.os_input.read_from_stdin();
|
||||
// uncomment this to print the entered character to a log file (/tmp/mosaic/mosaic-log.txt) for debugging
|
||||
// debug_log_to_file(format!("buffer {:?}", self.buffer));
|
||||
match self.buffer {
|
||||
[7, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
// debug_log_to_file(format!("buffer {:?}", stdin_buffer));
|
||||
|
||||
match stdin_buffer.as_slice() {
|
||||
[7] => {
|
||||
// Ctrl-g
|
||||
// If we're in command mode, this will let us switch to persistent command mode, to execute
|
||||
// multiple commands. If we're already in persistent mode, it'll return us to normal mode.
|
||||
|
|
@ -108,49 +96,47 @@ impl InputHandler {
|
|||
InputMode::Command => self.mode = InputMode::CommandPersistent,
|
||||
InputMode::CommandPersistent => {
|
||||
self.mode = InputMode::Normal;
|
||||
// debug_log_to_file(format!("switched to normal mode"));
|
||||
return;
|
||||
}
|
||||
_ => panic!(),
|
||||
}
|
||||
}
|
||||
[27, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[27] => {
|
||||
// Esc
|
||||
self.mode = InputMode::Normal;
|
||||
// _debug_log_to_file(format!("switched to normal mode"));
|
||||
return;
|
||||
}
|
||||
[106, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[106] => {
|
||||
// j
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ResizeDown)
|
||||
.unwrap();
|
||||
}
|
||||
[107, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[107] => {
|
||||
// k
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ResizeUp)
|
||||
.unwrap();
|
||||
}
|
||||
[112, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[112] => {
|
||||
// p
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::MoveFocus)
|
||||
.unwrap();
|
||||
}
|
||||
[104, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[104] => {
|
||||
// h
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ResizeLeft)
|
||||
.unwrap();
|
||||
}
|
||||
[108, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[108] => {
|
||||
// l
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ResizeRight)
|
||||
.unwrap();
|
||||
}
|
||||
[122, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[122] => {
|
||||
// z
|
||||
self.command_is_executing.opening_new_pane();
|
||||
self.send_pty_instructions
|
||||
|
|
@ -158,7 +144,7 @@ impl InputHandler {
|
|||
.unwrap();
|
||||
self.command_is_executing.wait_until_new_pane_is_opened();
|
||||
}
|
||||
[110, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[110] => {
|
||||
// n
|
||||
self.command_is_executing.opening_new_pane();
|
||||
self.send_pty_instructions
|
||||
|
|
@ -166,7 +152,7 @@ impl InputHandler {
|
|||
.unwrap();
|
||||
self.command_is_executing.wait_until_new_pane_is_opened();
|
||||
}
|
||||
[98, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[98] => {
|
||||
// b
|
||||
self.command_is_executing.opening_new_pane();
|
||||
self.send_pty_instructions
|
||||
|
|
@ -174,24 +160,24 @@ impl InputHandler {
|
|||
.unwrap();
|
||||
self.command_is_executing.wait_until_new_pane_is_opened();
|
||||
}
|
||||
[113, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[113] => {
|
||||
// q
|
||||
self.mode = InputMode::Exiting;
|
||||
return;
|
||||
}
|
||||
[27, 91, 53, 126, 0, 0, 0, 0, 0, 0] => {
|
||||
[27, 91, 53, 126] => {
|
||||
// PgUp
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ScrollUp)
|
||||
.unwrap();
|
||||
}
|
||||
[27, 91, 54, 126, 0, 0, 0, 0, 0, 0] => {
|
||||
[27, 91, 54, 126] => {
|
||||
// PgDown
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ScrollDown)
|
||||
.unwrap();
|
||||
}
|
||||
[120, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[120] => {
|
||||
// x
|
||||
self.command_is_executing.closing_pane();
|
||||
self.send_screen_instructions
|
||||
|
|
@ -199,7 +185,7 @@ impl InputHandler {
|
|||
.unwrap();
|
||||
self.command_is_executing.wait_until_pane_is_closed();
|
||||
}
|
||||
[101, 0, 0, 0, 0, 0, 0, 0, 0, 0] => {
|
||||
[101] => {
|
||||
// e
|
||||
self.send_screen_instructions
|
||||
.send(ScreenInstruction::ToggleActiveTerminalFullscreen)
|
||||
|
|
|
|||
|
|
@ -5,7 +5,8 @@ use nix::sys::signal::{kill, Signal};
|
|||
use nix::sys::termios::{cfmakeraw, tcdrain, tcgetattr, tcsetattr, SetArg, Termios};
|
||||
use nix::sys::wait::waitpid;
|
||||
use nix::unistd::{read, write, ForkResult, Pid};
|
||||
use std::io::{Read, Write};
|
||||
use std::io::prelude::*;
|
||||
use std::io::{stdin, Write};
|
||||
use std::os::unix::io::RawFd;
|
||||
use std::path::PathBuf;
|
||||
use std::process::{Child, Command};
|
||||
|
|
@ -147,7 +148,7 @@ pub trait OsApi: Send + Sync {
|
|||
fn write_to_tty_stdin(&mut self, pid: RawFd, buf: &mut [u8]) -> Result<usize, nix::Error>;
|
||||
fn tcdrain(&mut self, pid: RawFd) -> Result<(), nix::Error>;
|
||||
fn kill(&mut self, pid: RawFd) -> Result<(), nix::Error>;
|
||||
fn get_stdin_reader(&self) -> Box<dyn Read>;
|
||||
fn read_from_stdin(&self) -> Vec<u8>;
|
||||
fn get_stdout_writer(&self) -> Box<dyn Write>;
|
||||
fn box_clone(&self) -> Box<dyn OsApi>;
|
||||
}
|
||||
|
|
@ -182,12 +183,14 @@ impl OsApi for OsInputOutput {
|
|||
fn box_clone(&self) -> Box<dyn OsApi> {
|
||||
Box::new((*self).clone())
|
||||
}
|
||||
fn get_stdin_reader(&self) -> Box<dyn Read> {
|
||||
// TODO: stdin lock, right now it's not done because we don't have where to put it
|
||||
// if we put it on the struct, we won't be able to clone the struct
|
||||
// if we leave it here, we're referencing a temporary value
|
||||
let stdin = ::std::io::stdin();
|
||||
Box::new(stdin)
|
||||
fn read_from_stdin(&self) -> Vec<u8> {
|
||||
let stdin = stdin();
|
||||
let mut stdin = stdin.lock();
|
||||
let buffer = stdin.fill_buf().unwrap();
|
||||
let length = buffer.len();
|
||||
let read_bytes = Vec::from(buffer);
|
||||
stdin.consume(length);
|
||||
read_bytes
|
||||
}
|
||||
fn get_stdout_writer(&self) -> Box<dyn Write> {
|
||||
let stdout = ::std::io::stdout();
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ pub enum ScreenInstruction {
|
|||
NewPane(RawFd),
|
||||
HorizontalSplit(RawFd),
|
||||
VerticalSplit(RawFd),
|
||||
WriteCharacter([u8; 10]),
|
||||
WriteCharacter(Vec<u8>),
|
||||
ResizeLeft,
|
||||
ResizeRight,
|
||||
ResizeDown,
|
||||
|
|
@ -383,21 +383,10 @@ impl Screen {
|
|||
let terminal_output = self.terminals.get_mut(&pid).unwrap();
|
||||
terminal_output.handle_event(event);
|
||||
}
|
||||
pub fn write_to_active_terminal(&mut self, bytes: [u8; 10]) {
|
||||
pub fn write_to_active_terminal(&mut self, mut bytes: Vec<u8>) {
|
||||
if let Some(active_terminal_id) = &self.get_active_terminal_id() {
|
||||
// this is a bit of a hack and is done in order not to send trailing
|
||||
// zeros to the terminal (because they mess things up)
|
||||
// TODO: fix this by only sending around the exact bytes read from stdin
|
||||
let mut trimmed_bytes = vec![];
|
||||
for byte in bytes.iter() {
|
||||
if *byte == 0 {
|
||||
break;
|
||||
} else {
|
||||
trimmed_bytes.push(*byte);
|
||||
}
|
||||
}
|
||||
self.os_api
|
||||
.write_to_tty_stdin(*active_terminal_id, &mut trimmed_bytes)
|
||||
.write_to_tty_stdin(*active_terminal_id, &mut bytes)
|
||||
.expect("failed to write to terminal");
|
||||
self.os_api
|
||||
.tcdrain(*active_terminal_id)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
use crate::terminal_pane::PositionAndSize;
|
||||
use ::std::collections::HashMap;
|
||||
use ::std::io::{Read, Write};
|
||||
use ::std::collections::{HashMap, VecDeque};
|
||||
use ::std::io::Write;
|
||||
use ::std::os::unix::io::RawFd;
|
||||
use ::std::path::PathBuf;
|
||||
use ::std::sync::atomic::{AtomicBool, Ordering};
|
||||
|
|
@ -21,68 +21,6 @@ pub enum IoEvent {
|
|||
TcDrain(RawFd),
|
||||
}
|
||||
|
||||
pub struct FakeStdinReader {
|
||||
pub input_chars: Vec<[u8; 10]>,
|
||||
pub read_position: usize,
|
||||
last_snapshot_time: Arc<Mutex<Instant>>,
|
||||
started_reading_from_pty: Arc<AtomicBool>,
|
||||
}
|
||||
|
||||
impl FakeStdinReader {
|
||||
pub fn new(
|
||||
input_chars: Vec<[u8; 10]>,
|
||||
last_snapshot_time: Arc<Mutex<Instant>>,
|
||||
started_reading_from_pty: Arc<AtomicBool>,
|
||||
) -> Self {
|
||||
FakeStdinReader {
|
||||
input_chars,
|
||||
read_position: 0,
|
||||
last_snapshot_time,
|
||||
started_reading_from_pty,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Read for FakeStdinReader {
|
||||
fn read(&mut self, buf: &mut [u8]) -> Result<usize, std::io::Error> {
|
||||
loop {
|
||||
if self.started_reading_from_pty.load(Ordering::Acquire) == false {
|
||||
::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS);
|
||||
} else {
|
||||
let last_snapshot_time = { *self.last_snapshot_time.lock().unwrap() };
|
||||
if last_snapshot_time.elapsed() > MIN_TIME_BETWEEN_SNAPSHOTS {
|
||||
break;
|
||||
} else {
|
||||
::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS - last_snapshot_time.elapsed());
|
||||
}
|
||||
}
|
||||
}
|
||||
let read_position = self.read_position;
|
||||
match self.input_chars.get(read_position) {
|
||||
Some(bytes_to_read) => {
|
||||
for (i, byte) in bytes_to_read.iter().enumerate() {
|
||||
buf[i] = *byte;
|
||||
}
|
||||
self.read_position += 1;
|
||||
Ok(bytes_to_read.len())
|
||||
}
|
||||
None => {
|
||||
// what is happening here?
|
||||
//
|
||||
// Here the stdin loop is requesting more input than we have provided it with in
|
||||
// the fake input chars.
|
||||
// Normally this should not happen, because each test quits in the end.
|
||||
// There is one case (at the time of this writing) in which it does happen, and
|
||||
// that's when we quit by closing the last pane. In this case the stdin loop might
|
||||
// get a chance to request more input before the app quits and drops it. In that
|
||||
// case, we just give it no input and let it keep doing its thing until it dies
|
||||
// very shortly after.
|
||||
Ok(0)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct FakeStdoutWriter {
|
||||
output_buffer: Arc<Mutex<Vec<u8>>>,
|
||||
|
|
@ -125,6 +63,7 @@ impl Write for FakeStdoutWriter {
|
|||
pub struct FakeInputOutput {
|
||||
read_buffers: Arc<Mutex<HashMap<RawFd, Bytes>>>,
|
||||
input_to_add: Arc<Mutex<Option<Vec<[u8; 10]>>>>,
|
||||
stdin_commands: Arc<Mutex<VecDeque<Vec<u8>>>>,
|
||||
stdin_writes: Arc<Mutex<HashMap<RawFd, Vec<u8>>>>,
|
||||
pub stdout_writer: FakeStdoutWriter, // stdout_writer.output is already an arc/mutex
|
||||
io_events: Arc<Mutex<Vec<IoEvent>>>,
|
||||
|
|
@ -144,6 +83,7 @@ impl FakeInputOutput {
|
|||
read_buffers: Arc::new(Mutex::new(HashMap::new())),
|
||||
stdin_writes: Arc::new(Mutex::new(HashMap::new())),
|
||||
input_to_add: Arc::new(Mutex::new(None)),
|
||||
stdin_commands: Arc::new(Mutex::new(VecDeque::new())),
|
||||
stdout_writer,
|
||||
last_snapshot_time,
|
||||
io_events: Arc::new(Mutex::new(vec![])),
|
||||
|
|
@ -156,8 +96,12 @@ impl FakeInputOutput {
|
|||
self.possible_tty_inputs = tty_inputs;
|
||||
self
|
||||
}
|
||||
pub fn add_terminal_input(&mut self, input: &[[u8; 10]]) {
|
||||
self.input_to_add = Arc::new(Mutex::new(Some(input.to_vec())));
|
||||
pub fn add_terminal_input(&mut self, input: &[&[u8]]) {
|
||||
let mut stdin_commands: VecDeque<Vec<u8>> = VecDeque::new();
|
||||
for command in input.iter() {
|
||||
stdin_commands.push_back(command.iter().copied().collect())
|
||||
}
|
||||
self.stdin_commands = Arc::new(Mutex::new(stdin_commands));
|
||||
}
|
||||
pub fn add_terminal(&mut self, fd: RawFd) {
|
||||
self.stdin_writes.lock().unwrap().insert(fd, vec![]);
|
||||
|
|
@ -253,19 +197,31 @@ impl OsApi for FakeInputOutput {
|
|||
fn box_clone(&self) -> Box<dyn OsApi> {
|
||||
Box::new((*self).clone())
|
||||
}
|
||||
fn get_stdin_reader(&self) -> Box<dyn Read> {
|
||||
let mut input_chars = vec![[0; 10]];
|
||||
if let Some(input_to_add) = self.input_to_add.lock().unwrap().as_ref() {
|
||||
for bytes in input_to_add {
|
||||
input_chars.push(*bytes);
|
||||
fn read_from_stdin(&self) -> Vec<u8> {
|
||||
loop {
|
||||
let last_snapshot_time = { *self.last_snapshot_time.lock().unwrap() };
|
||||
if last_snapshot_time.elapsed() > MIN_TIME_BETWEEN_SNAPSHOTS {
|
||||
break;
|
||||
} else {
|
||||
::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS - last_snapshot_time.elapsed());
|
||||
}
|
||||
}
|
||||
match self.stdin_commands.lock().unwrap().pop_front() {
|
||||
Some(command) => command,
|
||||
None => {
|
||||
// what is happening here?
|
||||
//
|
||||
// Here the stdin loop is requesting more input than we have provided it with in
|
||||
// the fake input chars.
|
||||
// Normally this should not happen, because each test quits in the end.
|
||||
// There is one case (at the time of this writing) in which it does happen, and
|
||||
// that's when we quit by closing the last pane. In this case the stdin loop might
|
||||
// get a chance to request more input before the app quits and drops it. In that
|
||||
// case, we just give it no input and let it keep doing its thing until it dies
|
||||
// very shortly after.
|
||||
vec![]
|
||||
}
|
||||
}
|
||||
let reader = FakeStdinReader::new(
|
||||
input_chars,
|
||||
self.last_snapshot_time.clone(),
|
||||
self.started_reading_from_pty.clone(),
|
||||
);
|
||||
Box::new(reader)
|
||||
}
|
||||
fn get_stdout_writer(&self) -> Box<dyn Write> {
|
||||
Box::new(self.stdout_writer.clone())
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ pub fn starts_with_one_terminal() {
|
|||
y: 0,
|
||||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -44,7 +44,12 @@ pub fn split_terminals_vertically() {
|
|||
y: 0,
|
||||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, SPLIT_VERTICALLY, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -67,10 +72,10 @@ pub fn split_terminals_horizontally() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
|
|
@ -95,12 +100,12 @@ pub fn split_largest_terminal() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
|
|
@ -140,18 +145,18 @@ pub fn resize_right_and_up_on_the_same_axis() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
|
|
@ -175,15 +180,15 @@ pub fn scrolling_inside_a_pane() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SCROLL_UP,
|
||||
SCROLL_UP,
|
||||
SCROLL_DOWN,
|
||||
SCROLL_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SCROLL_UP,
|
||||
&SCROLL_UP,
|
||||
&SCROLL_DOWN,
|
||||
&SCROLL_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
|
|
@ -209,13 +214,13 @@ pub fn max_panes() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&QUIT,
|
||||
]);
|
||||
let mut opts = Opt::default();
|
||||
opts.max_panes = Some(4);
|
||||
|
|
@ -241,23 +246,23 @@ pub fn toggle_focused_pane_fullscreen() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
SPAWN_TERMINAL,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
MOVE_FOCUS,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
MOVE_FOCUS,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
MOVE_FOCUS,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&SPAWN_TERMINAL,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&MOVE_FOCUS,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&MOVE_FOCUS,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&MOVE_FOCUS,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&QUIT,
|
||||
]);
|
||||
let mut opts = Opt::default();
|
||||
opts.max_panes = Some(4);
|
||||
|
|
|
|||
|
|
@ -32,11 +32,11 @@ pub fn close_pane_with_another_pane_above_it() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -69,12 +69,12 @@ pub fn close_pane_with_another_pane_below_it() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -105,11 +105,11 @@ pub fn close_pane_with_another_pane_to_the_left() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -140,12 +140,12 @@ pub fn close_pane_with_another_pane_to_the_right() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -178,15 +178,15 @@ pub fn close_pane_with_multiple_panes_above_it() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -219,13 +219,13 @@ pub fn close_pane_with_multiple_panes_below_it() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -258,15 +258,15 @@ pub fn close_pane_with_multiple_panes_to_the_left() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -299,13 +299,13 @@ pub fn close_pane_with_multiple_panes_to_the_right() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -338,27 +338,27 @@ pub fn close_pane_with_multiple_panes_above_it_away_from_screen_edges() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
RESIZE_UP,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&RESIZE_UP,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -391,27 +391,27 @@ pub fn close_pane_with_multiple_panes_below_it_away_from_screen_edges() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
RESIZE_DOWN,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&RESIZE_DOWN,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -446,27 +446,27 @@ pub fn close_pane_with_multiple_panes_to_the_left_away_from_screen_edges() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -501,27 +501,27 @@ pub fn close_pane_with_multiple_panes_to_the_right_away_from_screen_edges() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -546,14 +546,14 @@ pub fn closing_last_pane_exits_app() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ pub fn run_bandwhich_from_fish_shell() {
|
|||
};
|
||||
let fixture_name = "fish_and_bandwhich";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -62,7 +62,7 @@ pub fn fish_tab_completion_options() {
|
|||
};
|
||||
let fixture_name = "fish_tab_completion_options";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -90,7 +90,7 @@ pub fn fish_select_tab_completion_options() {
|
|||
};
|
||||
let fixture_name = "fish_select_tab_completion_options";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -122,8 +122,7 @@ pub fn vim_scroll_region_down() {
|
|||
};
|
||||
let fixture_name = "vim_scroll_region_down";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
// fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, 17]); // quit (ctrl-q)
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); // quit (ctrl-q)
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); // quit (ctrl-q)
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -152,7 +151,7 @@ pub fn vim_ctrl_d() {
|
|||
};
|
||||
let fixture_name = "vim_ctrl_d";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -180,7 +179,7 @@ pub fn vim_ctrl_u() {
|
|||
};
|
||||
let fixture_name = "vim_ctrl_u";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
@ -203,7 +202,7 @@ pub fn htop() {
|
|||
};
|
||||
let fixture_name = "htop";
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
let output_frames = fake_input_output
|
||||
.stdout_writer
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ pub fn accepts_basic_layout() {
|
|||
y: 0,
|
||||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]);
|
||||
let mut opts = Opt::default();
|
||||
opts.layout = Some(PathBuf::from(
|
||||
"src/tests/fixtures/layouts/three-panes-with-nesting.yaml",
|
||||
|
|
@ -61,7 +61,7 @@ pub fn should_throw_for_more_than_100_percent_total() {
|
|||
y: 0,
|
||||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&QUIT]);
|
||||
|
||||
let mut opts = Opt::default();
|
||||
opts.layout = Some(PathBuf::from(
|
||||
|
|
@ -81,7 +81,7 @@ pub fn should_throw_for_less_than_100_percent_total() {
|
|||
y: 0,
|
||||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[QUIT]);
|
||||
fake_input_output.add_terminal_input(&[&QUIT]);
|
||||
|
||||
let mut opts = Opt::default();
|
||||
opts.layout = Some(PathBuf::from(
|
||||
|
|
|
|||
|
|
@ -33,11 +33,11 @@ pub fn resize_down_with_pane_above() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -70,12 +70,12 @@ pub fn resize_down_with_pane_below() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -111,14 +111,14 @@ pub fn resize_down_with_panes_above_and_below() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -152,15 +152,15 @@ pub fn resize_down_with_multiple_panes_above() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -195,17 +195,17 @@ pub fn resize_down_with_panes_above_aligned_left_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -240,16 +240,16 @@ pub fn resize_down_with_panes_below_aligned_left_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -284,14 +284,14 @@ pub fn resize_down_with_panes_above_aligned_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -326,15 +326,15 @@ pub fn resize_down_with_panes_below_aligned_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -369,18 +369,18 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -415,20 +415,20 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -463,35 +463,35 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_panes_to_the_lef
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -526,37 +526,37 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_to_the_left_and_
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_DOWN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_DOWN,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
|
|||
|
|
@ -29,11 +29,11 @@ pub fn resize_left_with_pane_to_the_left() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -64,12 +64,12 @@ pub fn resize_left_with_pane_to_the_right() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -100,14 +100,14 @@ pub fn resize_left_with_panes_to_the_left_and_right() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -139,15 +139,15 @@ pub fn resize_left_with_multiple_panes_to_the_left() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -180,17 +180,17 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -223,14 +223,14 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -263,16 +263,16 @@ pub fn resize_left_with_panes_to_the_left_aligned_bottom_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -305,15 +305,15 @@ pub fn resize_left_with_panes_to_the_right_aligned_bottom_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -348,18 +348,18 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_current_pa
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -394,20 +394,20 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_current_p
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -442,35 +442,35 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abov
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -506,37 +506,37 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_panes_abo
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_LEFT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_LEFT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
|
|||
|
|
@ -29,11 +29,11 @@ pub fn resize_right_with_pane_to_the_left() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -64,12 +64,12 @@ pub fn resize_right_with_pane_to_the_right() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -100,14 +100,14 @@ pub fn resize_right_with_panes_to_the_left_and_right() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -139,15 +139,15 @@ pub fn resize_right_with_multiple_panes_to_the_left() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -180,17 +180,17 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -223,14 +223,14 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -263,16 +263,16 @@ pub fn resize_right_with_panes_to_the_left_aligned_bottom_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -305,15 +305,15 @@ pub fn resize_right_with_panes_to_the_right_aligned_bottom_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -348,18 +348,18 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_current_p
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -394,20 +394,20 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_current_
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -442,35 +442,35 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abo
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -505,37 +505,37 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_panes_ab
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
RESIZE_UP,
|
||||
RESIZE_RIGHT,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_UP,
|
||||
&RESIZE_RIGHT,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
|
|||
|
|
@ -31,11 +31,11 @@ pub fn resize_up_with_pane_above() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -68,12 +68,12 @@ pub fn resize_up_with_pane_below() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -109,14 +109,14 @@ pub fn resize_up_with_panes_above_and_below() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -149,15 +149,15 @@ pub fn resize_up_with_multiple_panes_above() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -190,17 +190,17 @@ pub fn resize_up_with_panes_above_aligned_left_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -235,16 +235,16 @@ pub fn resize_up_with_panes_below_aligned_left_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -279,14 +279,14 @@ pub fn resize_up_with_panes_above_aligned_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -321,15 +321,15 @@ pub fn resize_up_with_panes_below_aligned_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -364,18 +364,18 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -410,20 +410,20 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_current_pane() {
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -458,35 +458,35 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_panes_to_the_left_
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
@ -521,37 +521,37 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_to_the_left_and_ri
|
|||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_HORIZONTALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
SPLIT_VERTICALLY,
|
||||
SPLIT_VERTICALLY,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_LEFT,
|
||||
RESIZE_LEFT,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
MOVE_FOCUS,
|
||||
RESIZE_UP,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&SPLIT_VERTICALLY,
|
||||
&SPLIT_VERTICALLY,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_LEFT,
|
||||
&RESIZE_LEFT,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&MOVE_FOCUS,
|
||||
&RESIZE_UP,
|
||||
&QUIT,
|
||||
]);
|
||||
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
|
|
|||
|
|
@ -24,13 +24,13 @@ pub fn adding_new_terminal_in_fullscreen() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
SPLIT_HORIZONTALLY,
|
||||
CLOSE_FOCUSED_PANE,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&SPLIT_HORIZONTALLY,
|
||||
&CLOSE_FOCUSED_PANE,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
@ -55,13 +55,13 @@ pub fn move_focus_is_disabled_in_fullscreen() {
|
|||
};
|
||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||
fake_input_output.add_terminal_input(&[
|
||||
COMMAND_TOGGLE,
|
||||
COMMAND_TOGGLE,
|
||||
SPLIT_VERTICALLY,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
MOVE_FOCUS,
|
||||
TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
QUIT,
|
||||
&COMMAND_TOGGLE,
|
||||
&COMMAND_TOGGLE,
|
||||
&SPLIT_VERTICALLY,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&MOVE_FOCUS,
|
||||
&TOGGLE_ACTIVE_TERMINAL_FULLSCREEN,
|
||||
&QUIT,
|
||||
]);
|
||||
start(Box::new(fake_input_output.clone()), Opt::default());
|
||||
|
||||
|
|
|
|||
|
|
@ -40,31 +40,31 @@ pub fn get_output_frame_snapshots(
|
|||
|
||||
pub mod commands {
|
||||
/// ctrl-g
|
||||
pub const COMMAND_TOGGLE: [u8; 10] = [7, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const COMMAND_TOGGLE: [u8; 1] = [7];
|
||||
/// b
|
||||
pub const SPLIT_HORIZONTALLY: [u8; 10] = [98, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const SPLIT_HORIZONTALLY: [u8; 1] = [98];
|
||||
/// n
|
||||
pub const SPLIT_VERTICALLY: [u8; 10] = [110, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const SPLIT_VERTICALLY: [u8; 1] = [110];
|
||||
/// j
|
||||
pub const RESIZE_DOWN: [u8; 10] = [106, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const RESIZE_DOWN: [u8; 1] = [106];
|
||||
/// k
|
||||
pub const RESIZE_UP: [u8; 10] = [107, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const RESIZE_UP: [u8; 1] = [107];
|
||||
/// p
|
||||
pub const MOVE_FOCUS: [u8; 10] = [112, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const MOVE_FOCUS: [u8; 1] = [112];
|
||||
/// h
|
||||
pub const RESIZE_LEFT: [u8; 10] = [104, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const RESIZE_LEFT: [u8; 1] = [104];
|
||||
/// l
|
||||
pub const RESIZE_RIGHT: [u8; 10] = [108, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const RESIZE_RIGHT: [u8; 1] = [108];
|
||||
/// z
|
||||
pub const SPAWN_TERMINAL: [u8; 10] = [122, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const SPAWN_TERMINAL: [u8; 1] = [122];
|
||||
/// q
|
||||
pub const QUIT: [u8; 10] = [113, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const QUIT: [u8; 1] = [113];
|
||||
/// PgUp
|
||||
pub const SCROLL_UP: [u8; 10] = [27, 91, 53, 126, 0, 0, 0, 0, 0, 0];
|
||||
pub const SCROLL_UP: [u8; 4] = [27, 91, 53, 126];
|
||||
/// PgDn
|
||||
pub const SCROLL_DOWN: [u8; 10] = [27, 91, 54, 126, 0, 0, 0, 0, 0, 0];
|
||||
pub const SCROLL_DOWN: [u8; 4] = [27, 91, 54, 126];
|
||||
/// x
|
||||
pub const CLOSE_FOCUSED_PANE: [u8; 10] = [120, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const CLOSE_FOCUSED_PANE: [u8; 1] = [120];
|
||||
/// e
|
||||
pub const TOGGLE_ACTIVE_TERMINAL_FULLSCREEN: [u8; 10] = [101, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
pub const TOGGLE_ACTIVE_TERMINAL_FULLSCREEN: [u8; 1] = [101];
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue