From: Armaan Bhojwani <3fb650a9-b47e-4604-a282-1dd91953b2ee@anonaddy.me> Date: Sat, 7 Nov 2020 18:06:50 +0000 (-0500) Subject: More cleanup X-Git-Url: https://git.armaanb.net/?p=gen-shell.git;a=commitdiff_plain;h=2d43a7fcd61840d1021da3b3b03d51affde3d777 More cleanup --- diff --git a/README.md b/README.md index 3a62a96..81b0be0 100644 --- a/README.md +++ b/README.md @@ -38,8 +38,10 @@ Or to build the docker container locally, run: ```bash git clone --recursive https:/codeberg.org/armaan/gen-shell cd gen-shell -docker build --no-cache -t gen-shell:latest . +docker build gen-shell:latest . ``` +This method ensures that you have the latest version, and also lets you modify the code in the docker image + ## License Following suit from taskshell, gen-shell is MIT licensed by Armaan Bhojwani, 2020. Gen-shell is forked from taskshell, which was developed by [these people](https://github.com/GothenburgBitFactory/taskshell/blob/master/AUTHORS). diff --git a/src/main.cpp b/src/main.cpp index 0d7a034..d9bc1f4 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,6 +1,9 @@ //////////////////////////////////////////////////////////////////////////////// // -// Copyright 2006 - 2017, Paul Beckingham, Federico Hernandez, 2020 Armaan Bhojwani +// gen-shell, the generic shell +// +// Copyright 2006 - 2017, Paul Beckingham, Federico Hernandez, +// 2020, Armaan Bhojwani // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -24,6 +27,7 @@ // //////////////////////////////////////////////////////////////////////////////// + #include #include #include <../Sarge/src/sarge.h> @@ -82,7 +86,7 @@ int main(int argc, char** argv) sarge.setArgument("c", "command", "Command to convert to shell", true); sarge.setArgument("h", "help", "Get help.", false); sarge.setArgument("p", "prompt", "Define a custom prompt", true); - sarge.setArgument("", "no-space", "Dont automatically add spaces after custom prompt and command", false); + sarge.setArgument("", "no-space", "Dont automatically add spaces after custom prompt and command", true); sarge.setDescription("Make a shell from any executable"); sarge.setUsage("gen-shell "); @@ -96,7 +100,7 @@ int main(int argc, char** argv) return 0; } - bool space; + bool space = true; if (sarge.exists("no-space")) { space = false; } @@ -110,11 +114,12 @@ int main(int argc, char** argv) // Define prompt string prompt = ""; sarge.getFlag("prompt", prompt); - if ( prompt == "" ) + { prompt = "% "; - if ( space ) + } else if ( space ) { prompt += " "; + } // Execute before-command string before_command; @@ -125,24 +130,20 @@ int main(int argc, char** argv) string after_command; sarge.getFlag("after", after_command); - // Main program + // Do the stuffs! while (true) { // Display prompt, get input auto command = getResponse(prompt); - if (command != "") + // Dispatch command + if (command == "" || "exit" || "quit" || ":q" ) + // if (command == "" || command == "exit" ) { - // Dispatch command - if (command == "") - { - system (after_command.c_str ()); - return 0; - } - else if (command != "") - { - string whole_command = arg_cmd + command; - system (whole_command.c_str ()); - } + system (after_command.c_str ()); + return 0; + } else { + string whole_command = arg_cmd + command; + system (whole_command.c_str ()); } } }