瀏覽代碼

LibManual: Allow querying on a help URL

This allows Help and man to open pages from a help URL specified on
the command line.
Tim Ledbetter 2 年之前
父節點
當前提交
c09d0c4816
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      Userland/Libraries/LibManual/Node.cpp

+ 6 - 0
Userland/Libraries/LibManual/Node.cpp

@@ -22,6 +22,12 @@ ErrorOr<NonnullRefPtr<PageNode const>> Node::try_create_from_query(Vector<String
     if (query_parameters.size() > 2)
     if (query_parameters.size() > 2)
         return Error::from_string_literal("Queries longer than 2 strings are not supported yet");
         return Error::from_string_literal("Queries longer than 2 strings are not supported yet");
 
 
+    if (query_parameters.size() == 1 && query_parameters[0].starts_with("help://"sv)) {
+        auto help_url = URL::create_with_url_or_path(query_parameters[0].trim("/"sv, TrimMode::Right));
+        auto node_from_url = TRY(Manual::Node::try_find_from_help_url(help_url));
+        return *node_from_url->document();
+    }
+
     auto query_parameter_iterator = query_parameters.begin();
     auto query_parameter_iterator = query_parameters.begin();
 
 
     if (query_parameter_iterator.is_end())
     if (query_parameter_iterator.is_end())