aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src
diff options
context:
space:
mode:
authorJon Erickson <erickson.jon@gmail.com>2017-05-16 21:10:00 -0400
committerJon Erickson <erickson.jon@gmail.com>2017-05-16 21:10:00 -0400
commitc0be6aecc6c817e556e6bfd1251842615023644e (patch)
tree8997f60ff4b9b8094b9915d4b9128825c9624d85 /toolsrc/src
parent8b85f125a24c8dcb6af116696f70b873846b9405 (diff)
downloadvcpkg-c0be6aecc6c817e556e6bfd1251842615023644e.tar.gz
vcpkg-c0be6aecc6c817e556e6bfd1251842615023644e.zip
Added '--full-desc' option to search and list commands to shows full description for packages.
Diffstat (limited to 'toolsrc/src')
-rw-r--r--toolsrc/src/commands_list.cpp28
-rw-r--r--toolsrc/src/commands_search.cpp28
2 files changed, 40 insertions, 16 deletions
diff --git a/toolsrc/src/commands_list.cpp b/toolsrc/src/commands_list.cpp
index 6451ac5eb..521fc5a9a 100644
--- a/toolsrc/src/commands_list.cpp
+++ b/toolsrc/src/commands_list.cpp
@@ -7,12 +7,24 @@
namespace vcpkg::Commands::List
{
- static void do_print(const StatusParagraph& pgh)
+ static const std::string OPTION_FULLDESC = "--full-desc"; // TODO: This should find a better home, eventually
+
+ static void do_print(const StatusParagraph& pgh, bool FullDesc)
{
- System::println("%-27s %-16s %s",
- pgh.package.displayname(),
- pgh.package.version,
- details::shorten_description(pgh.package.description));
+ if (FullDesc)
+ {
+ System::println("%-27s %-16s %s",
+ pgh.package.displayname(),
+ pgh.package.version,
+ pgh.package.description);
+ }
+ else
+ {
+ System::println("%-27s %-16s %s",
+ pgh.package.displayname(),
+ pgh.package.version,
+ details::shorten_description(pgh.package.description));
+ }
}
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths)
@@ -21,7 +33,7 @@ namespace vcpkg::Commands::List
"The argument should be a substring to search for, or no argument to display all installed libraries.\n%s",
Commands::Help::create_example_string("list png"));
args.check_max_arg_count(1, example);
- args.check_and_get_optional_command_arguments({});
+ const std::unordered_set<std::string> options = args.check_and_get_optional_command_arguments({OPTION_FULLDESC});
const StatusParagraphs status_paragraphs = database_load_check(paths);
std::vector<StatusParagraph*> installed_packages = get_installed_ports(status_paragraphs);
@@ -42,7 +54,7 @@ namespace vcpkg::Commands::List
{
for (const StatusParagraph* status_paragraph : installed_packages)
{
- do_print(*status_paragraph);
+ do_print(*status_paragraph, options.find(OPTION_FULLDESC) != options.cend());
}
}
else
@@ -56,7 +68,7 @@ namespace vcpkg::Commands::List
continue;
}
- do_print(*status_paragraph);
+ do_print(*status_paragraph, options.find(OPTION_FULLDESC) != options.cend());
}
}
diff --git a/toolsrc/src/commands_search.cpp b/toolsrc/src/commands_search.cpp
index 0ba7305e9..6ec2a5395 100644
--- a/toolsrc/src/commands_search.cpp
+++ b/toolsrc/src/commands_search.cpp
@@ -9,6 +9,8 @@
namespace vcpkg::Commands::Search
{
static const std::string OPTION_GRAPH = "--graph"; // TODO: This should find a better home, eventually
+ static const std::string OPTION_FULLDESC = "--full-desc"; // TODO: This should find a better home, eventually
+
static std::string replace_dashes_with_underscore(const std::string& input)
{
@@ -45,12 +47,22 @@ namespace vcpkg::Commands::Search
return s;
}
- static void do_print(const SourceParagraph& source_paragraph)
+ static void do_print(const SourceParagraph& source_paragraph, bool FullDesc)
{
- System::println("%-20s %-16s %s",
- source_paragraph.name,
- source_paragraph.version,
- details::shorten_description(source_paragraph.description));
+ if (FullDesc)
+ {
+ System::println("%-20s %-16s %s",
+ source_paragraph.name,
+ source_paragraph.version,
+ source_paragraph.description);
+ }
+ else
+ {
+ System::println("%-20s %-16s %s",
+ source_paragraph.name,
+ source_paragraph.version,
+ details::shorten_description(source_paragraph.description));
+ }
}
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths)
@@ -59,7 +71,7 @@ namespace vcpkg::Commands::Search
"The argument should be a substring to search for, or no argument to display all libraries.\n%s",
Commands::Help::create_example_string("search png"));
args.check_max_arg_count(1, example);
- const std::unordered_set<std::string> options = args.check_and_get_optional_command_arguments({OPTION_GRAPH});
+ const std::unordered_set<std::string> options = args.check_and_get_optional_command_arguments({OPTION_GRAPH, OPTION_FULLDESC});
const std::vector<SourceParagraph> source_paragraphs =
Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports);
@@ -74,7 +86,7 @@ namespace vcpkg::Commands::Search
{
for (const SourceParagraph& source_paragraph : source_paragraphs)
{
- do_print(source_paragraph);
+ do_print(source_paragraph, options.find(OPTION_FULLDESC) != options.cend());
}
}
else
@@ -88,7 +100,7 @@ namespace vcpkg::Commands::Search
continue;
}
- do_print(source_paragraph);
+ do_print(source_paragraph, options.find(OPTION_FULLDESC) != options.cend());
}
}