summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <code@mail.matthias.benkard.de>2025-07-30 18:55:25 +0200
committerMatthias Andreas Benkard <code@mail.matthias.benkard.de>2025-07-30 18:55:25 +0200
commit3e5972991ae1b608e3907a7d2d10b24b6124176b (patch)
tree4001b9eccd8bfb3960c9c3baa2027485efc947d7
parent7d531cfbcaae2c7a141d952a0c5d9266c5f07a49 (diff)
BuiltinCommand: Add missing commands.
-rw-r--r--src/main.rs83
1 files changed, 69 insertions, 14 deletions
diff --git a/src/main.rs b/src/main.rs
index f4f5b72..0547412 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -70,6 +70,10 @@ fn main() -> Result<()> {
#[derive(Debug)]
enum FileSpec {
Con,
+ Lpt1,
+ Lpt2,
+ Lpt3,
+ Prn,
Path(PathBuf),
}
@@ -160,55 +164,106 @@ impl Command {
#[derive(Debug)]
enum BuiltinCommand {
// File-oriented
- Type { file: FileSpec },
Copy { from: FileSpec, to: FileSpec },
- Xcopy { from: FileSpec, to: FileSpec, recursive: bool },
+ Deltree { path: PathBuf },
+ Dir { path: PathBuf },
+ Fc,
+ Find,
Mkdir { path: PathBuf },
+ Move,
Remove { path: PathBuf },
- Rmdir { path: PathBuf },
Rename { from: FileSpec, to: FileSpec },
- Dir { path: PathBuf },
+ Replace,
+ Rmdir { path: PathBuf },
+ Sort,
Tree { path: PathBuf },
+ Type { file: FileSpec },
+ Xcopy { from: FileSpec, to: FileSpec, recursive: bool },
// Shell-oriented
- PromptGet,
- PromptSet { message: String },
- EchoText { message: String },
- EchoOn,
+ Append,
+ Chdir { path: PathBuf },
EchoOff,
+ EchoOn,
EchoPlain,
+ EchoText { message: String },
Exit,
- Set { name: String, value: String },
- Chdir { path: PathBuf },
PathGet,
PathSet { value: String },
+ PromptGet,
+ PromptSet { message: String },
+ Set { name: String, value: String },
+ Setver,
Ver,
- // Scripting
- Rem { message: String },
-
// Utilities
Date,
Time,
// Screen-oriented
Cls,
+ More,
// Dummies
Verify,
+ Fastopen,
+ Smartdrv,
+ Sizer,
// For later
Assign,
+ Attrib,
+ Chkdsk,
+ Doskey,
+ Dosshell,
+ Edit,
+ Fasthelp,
+ Help,
Join,
+ Mem,
+ Power,
Subst,
Truename,
- Mem,
// For much later, if ever
Break,
Chcp,
Ctty,
+ Defrag,
+ Diskcopy,
+ Emm386,
+ Fdisk,
+ Format,
+ Interlnk,
+ Keyb,
+ Label,
+ Mode,
+ Msav,
+ Msbackup,
+ Mscdex,
+ Msd,
+ Print,
+ Qbasic,
+ Restore,
+ Scandisk,
+ Share,
+ Sys,
+ Undelete,
+ Unformat,
Vol,
+ Vsafe,
+
+ // Scripting
+ Call,
+ Choice,
+ Echo,
+ For,
+ Goto,
+ If,
+ Pause,
+ Prompt,
+ Rem { message: String },
+ Shift,
}
impl Command {