mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 23:50:19 +00:00
58f67c1ccb
Shell.cpp uses its own line discipline which handles echoing and line editing. Because of this we disable ICANON and ECHO so that we don't get duplicate characters or weird line editing errors. We also revert these settings just before running a command. This is so that commands may run with proper line editing and echoing.
23 lines
458 B
C
23 lines
458 B
C
#pragma once
|
|
|
|
#include <AK/String.h>
|
|
#include <AK/Vector.h>
|
|
#include <termios.h>
|
|
|
|
struct GlobalState {
|
|
String cwd;
|
|
String username;
|
|
String home;
|
|
char ttyname[32];
|
|
char hostname[32];
|
|
pid_t sid;
|
|
uid_t uid;
|
|
struct termios termios;
|
|
struct termios default_termios;
|
|
bool was_interrupted { false };
|
|
bool was_resized { false };
|
|
int last_return_code { 0 };
|
|
Vector<String> directory_stack;
|
|
};
|
|
|
|
extern GlobalState g;
|