Prettify --help output
authorPerttu Ahola <celeron55@gmail.com>
Sun, 11 Mar 2012 09:02:22 +0000 (11:02 +0200)
committerPerttu Ahola <celeron55@gmail.com>
Sun, 11 Mar 2012 09:02:22 +0000 (11:02 +0200)
src/main.cpp
src/server.cpp
src/utility_string.h [new file with mode: 0644]

index 0c936ab63396936e7fc9531d8d630facb915ea98..bd987f723c973371efb39cc54adf38a6899f6fe0 100644 (file)
@@ -68,6 +68,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "profiler.h"
 #include "log.h"
 #include "mods.h"
+#include "utility_string.h"
 
 /*
        Settings.
@@ -798,21 +799,17 @@ int main(int argc, char *argv[])
                                i = allowed_options.getIterator();
                                i.atEnd() == false; i++)
                {
-                       dstream<<"  --"<<i.getNode()->getKey();
+                       std::ostringstream os1(std::ios::binary);
+                       os1<<"  --"<<i.getNode()->getKey();
                        if(i.getNode()->getValue().type == VALUETYPE_FLAG)
-                       {
-                       }
+                               {}
                        else
-                       {
-                               dstream<<" <value>";
-                       }
-                       dstream<<std::endl;
+                               os1<<" <value>";
+                       dstream<<padStringRight(os1.str(), 24);
 
                        if(i.getNode()->getValue().help != NULL)
-                       {
-                               dstream<<"      "<<i.getNode()->getValue().help
-                                               <<std::endl;
-                       }
+                               dstream<<i.getNode()->getValue().help;
+                       dstream<<std::endl;
                }
 
                return cmd_args.getFlag("help") ? 0 : 1;
index 1eb618f7c9d578fa3d7195aa434797372f9dbf1e..8f40cfa5b809545cd9a0284730300e85e01995a4 100644 (file)
@@ -48,6 +48,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "sha1.h"
 #include "base64.h"
 #include "tool.h"
+#include "utility_string.h"
 
 #define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
 
@@ -824,13 +825,6 @@ void PlayerInfo::PrintLine(std::ostream *s)
        (*s)<<std::endl;
 }
 
-static std::string padStringRight(std::string s, size_t len)
-{
-       if(len > s.size())
-               s.insert(s.end(), len - s.size(), ' ');
-       return s;
-}
-
 /*
        Server
 */
diff --git a/src/utility_string.h b/src/utility_string.h
new file mode 100644 (file)
index 0000000..f29057a
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+Minetest-c55
+Copyright (C) 2010 celeron55, Perttu Ahola <celeron55@gmail.com>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+*/
+
+#ifndef UTILITY_STRING_HEADER
+#define UTILITY_STRING_HEADER
+
+// Note: Some stuff could be moved to here from utility.h
+
+#include <string>
+
+static inline std::string padStringRight(std::string s, size_t len)
+{
+       if(len > s.size())
+               s.insert(s.end(), len - s.size(), ' ');
+       return s;
+}
+
+#endif
+