diff --git a/README.md b/README.md index 7e462a423..320de8e91 100644 --- a/README.md +++ b/README.md @@ -103,9 +103,9 @@ sudo rm -rf /usr/local/share/meevax | Target Name | Description |:-------------------|:-- -| `all` (default) | Build shared-library `libmeevax.0.4.57.so` and executable `meevax`. +| `all` (default) | Build shared-library `libmeevax.0.4.58.so` and executable `meevax`. | `test` | Test executable `meevax`. -| `package` | Generate debian package `meevax_0.4.57_amd64.deb`. +| `package` | Generate debian package `meevax_0.4.58_amd64.deb`. | `install` | Copy files into `/usr/local` __(1)__. | `install.deb` | `all` + `package` + `sudo apt install .deb` | `safe-install.deb` | `all` + `test` + `package` + `sudo apt install .deb` @@ -120,7 +120,7 @@ __(1)__ Meevax installed by `make install` cannot be uninstalled by the system's ## Usage ``` -Meevax Lisp System, version 0.4.57 +Meevax Lisp System, version 0.4.58 Usage: meevax [OPTION...] [FILE...] diff --git a/VERSION b/VERSION index b0da4c03b..f96de0bf2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.4.57 +0.4.58 diff --git a/include/meevax/kernel/configurator.hpp b/include/meevax/kernel/configurator.hpp index bbfb073bc..6d58d3de6 100644 --- a/include/meevax/kernel/configurator.hpp +++ b/include/meevax/kernel/configurator.hpp @@ -49,7 +49,7 @@ inline namespace kernel public: static inline auto batch = false; static inline auto debug = false; - static inline auto interactive = false; + static inline auto interactive = true; static inline auto trace = false; static inline auto verbose = false; @@ -198,11 +198,7 @@ inline namespace kernel { static std::regex const pattern { R"(--(\w[-\w]+)(=(.*))?|-([\w]+))" }; - if (std::empty(args)) - { - interactive = true; - } - else for (auto current_option = std::begin(args); current_option != std::end(args); ++current_option) [&]() + for (auto current_option = std::begin(args); current_option != std::end(args); ++current_option) [&]() { std::smatch analysis {}; @@ -214,7 +210,7 @@ inline namespace kernel // std::cout << header("") << "analysis[3] = " << analysis[3] << std::endl; // std::cout << header("") << "analysis[4] = " << analysis[4] << std::endl; - if (auto const current_short_options = analysis.str(4); not current_short_options.empty()) + if (auto const& current_short_options = analysis.str(4); not current_short_options.empty()) { for (auto current_short_option = std::cbegin(current_short_options); current_short_option != std::cend(current_short_options); ++current_short_option) { @@ -239,7 +235,8 @@ inline namespace kernel } else { - throw error(make(cat, "unknown short-option -", *current_short_option)); + throw error(make("unknown short-option"), + make(*current_short_option)); } } } @@ -266,11 +263,13 @@ inline namespace kernel } else { - throw error(make(cat, "unknown long-option: ", *current_option)); + throw error(make("unknown long-option"), + make(*current_option)); } } else { + interactive = false; return load(*current_option); } diff --git a/src/kernel/environment.cpp b/src/kernel/environment.cpp index 0afbb46b0..e6697b516 100644 --- a/src/kernel/environment.cpp +++ b/src/kernel/environment.cpp @@ -90,11 +90,6 @@ inline namespace kernel define(binding.as().symbol(), binding.as().load()); } - - if (interactive) - { - print(faint("; ", length(bindings), " identifiers imported.")); - } } auto environment::define(const_reference name, const_reference value) -> void