evennia/docs/3.x/api/evennia.help.manager.html
2023-12-21 00:12:31 +01:00

315 lines
No EOL
18 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
<title>evennia.help.manager &#8212; Evennia 3.x documentation</title>
<link rel="stylesheet" href="../_static/nature.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/language_data.js"></script>
<link rel="shortcut icon" href="../_static/favicon.ico"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="evennia.help.models" href="evennia.help.models.html" />
<link rel="prev" title="evennia.help.filehelp" href="evennia.help.filehelp.html" />
</head><body>
<div class="admonition important">
<p class="first admonition-title">Note</p>
<p class="last">You are reading an old version of the Evennia documentation. <a href="https://www.evennia.com/docs/latest/index.html">The latest version is here</a></p>.
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="evennia.help.models.html" title="evennia.help.models"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="evennia.help.filehelp.html" title="evennia.help.filehelp"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 3.x</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-4"><a href="evennia.help.html" accesskey="U">evennia.help</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">evennia.help.manager</a></li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="../index.html">
<img class="logo" src="../_static/evennia_logo.png" alt="Logo"/>
</a></p>
<div id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="../search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" />
<input type="submit" value="Go" />
</form>
</div>
</div>
<script>$('#searchbox').show(0);</script>
<h4>Previous topic</h4>
<p class="topless"><a href="evennia.help.filehelp.html"
title="previous chapter">evennia.help.filehelp</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="evennia.help.models.html"
title="next chapter">evennia.help.models</a></p>
<div role="note" aria-label="source link">
<!--h3>This Page</h3-->
<ul class="this-page-menu">
<li><a href="../_sources/api/evennia.help.manager.md.txt"
rel="nofollow">Show Page Source</a></li>
</ul>
</div><h3>Links</h3>
<ul>
<li><a href="https://www.evennia.com/docs/latest/index.html">Documentation Top</a> </li>
<li><a href="https://www.evennia.com">Evennia Home</a> </li>
<li><a href="https://github.com/evennia/evennia">Github</a> </li>
<li><a href="http://games.evennia.com">Game Index</a> </li>
<li>
<a href="https://discord.gg/AJJpcRUhtF">Discord</a> -
<a href="https://github.com/evennia/evennia/discussions">Discussions</a> -
<a href="https://evennia.blogspot.com/">Blog</a>
</li>
</ul>
</div>
</div>
<div class="bodywrapper">
<div class="body" role="main">
<section id="module-evennia.help.manager">
<span id="evennia-help-manager"></span><h1>evennia.help.manager<a class="headerlink" href="#module-evennia.help.manager" title="Permalink to this headline"></a></h1>
<p>Custom manager for HelpEntry objects.</p>
<dl class="py class">
<dt id="evennia.help.manager.HelpEntryManager">
<em class="property">class </em><code class="sig-prename descclassname">evennia.help.manager.</code><code class="sig-name descname">HelpEntryManager</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.managers.html#evennia.typeclasses.managers.TypedObjectManager" title="evennia.typeclasses.managers.TypedObjectManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.typeclasses.managers.TypedObjectManager</span></code></a></p>
<p>This HelpEntryManager implements methods for searching
and manipulating HelpEntries directly from the database.</p>
<p>These methods will all return database objects
(or QuerySets) directly.</p>
<p>Evennia-specific:
find_topicmatch
find_apropos
find_topicsuggestions
find_topics_with_category
all_to_category
search_help (equivalent to evennia.search_helpentry)</p>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.find_topicmatch">
<code class="sig-name descname">find_topicmatch</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">topicstr</span></em>, <em class="sig-param"><span class="n">exact</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_topicmatch"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_topicmatch" title="Permalink to this definition"></a></dt>
<dd><p>Searches for matching topics or aliases based on players
input.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>topcistr</strong> (<em>str</em>) Help topic to search for.</p></li>
<li><p><strong>exact</strong> (<em>bool</em><em>, </em><em>optional</em>) Require exact match
(non-case-sensitive). If <strong>False</strong> (default), match
sub-parts of the string.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>matches (HelpEntries)</em> Query results.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.find_apropos">
<code class="sig-name descname">find_apropos</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">topicstr</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_apropos"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_apropos" title="Permalink to this definition"></a></dt>
<dd><p>Do a very loose search, returning all help entries containing
the search criterion in their titles.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>topicstr</strong> (<em>str</em>) Search criterion.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>matches (HelpEntries)</em> Query results.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.find_topicsuggestions">
<code class="sig-name descname">find_topicsuggestions</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">topicstr</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_topicsuggestions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_topicsuggestions" title="Permalink to this definition"></a></dt>
<dd><p>Do a fuzzy match, preferably within the category of the
current topic.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>topicstr</strong> (<em>str</em>) Search criterion.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>matches (Helpentries)</em> Query results.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.find_topics_with_category">
<code class="sig-name descname">find_topics_with_category</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">help_category</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_topics_with_category"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_topics_with_category" title="Permalink to this definition"></a></dt>
<dd><p>Search topics having a particular category.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>help_category</strong> (<em>str</em>) Category query criterion.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>matches (HelpEntries)</em> Query results.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.get_all_topics">
<code class="sig-name descname">get_all_topics</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.get_all_topics"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.get_all_topics" title="Permalink to this definition"></a></dt>
<dd><p>Get all topics.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p><em>all (HelpEntries)</em> All topics.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.get_all_categories">
<code class="sig-name descname">get_all_categories</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.get_all_categories"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.get_all_categories" title="Permalink to this definition"></a></dt>
<dd><p>Return all defined category names with at least one topic in
them.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p><p><em>matches (list)</em> </p>
<dl class="simple">
<dt>Unique list of category names across all</dt><dd><p>topics.</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.all_to_category">
<code class="sig-name descname">all_to_category</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">default_category</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.all_to_category"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.all_to_category" title="Permalink to this definition"></a></dt>
<dd><p>Shifts all help entries in database to default_category. This
action cannot be reverted. It is used primarily by the engine
when importing a default help database, making sure this ends
up in one easily separated category.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>default_category</strong> (<em>str</em>) Category to move entries to.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.search_help">
<code class="sig-name descname">search_help</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">ostring</span></em>, <em class="sig-param"><span class="n">help_category</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.search_help"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.search_help" title="Permalink to this definition"></a></dt>
<dd><p>Retrieve a search entry object.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ostring</strong> (<em>str</em>) The help topic to look for.</p></li>
<li><p><strong>category</strong> (<em>str</em>) Limit the search to a particular help topic</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>Queryset</em> An iterable with 0, 1 or more matches.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt id="evennia.help.manager.HelpEntryManager.create_help">
<code class="sig-name descname">create_help</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">key</span></em>, <em class="sig-param"><span class="n">entrytext</span></em>, <em class="sig-param"><span class="n">category</span><span class="o">=</span><span class="default_value">'General'</span></em>, <em class="sig-param"><span class="n">locks</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">aliases</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">tags</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.create_help"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.create_help" title="Permalink to this definition"></a></dt>
<dd><p>Create a static help entry in the help database. Note that Command
help entries are dynamic and directly taken from the __doc__
entries of the command. The database-stored help entries are
intended for more general help on the game, more extensive info,
in-game setting information and so on.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em>) The name of the help entry.</p></li>
<li><p><strong>entrytext</strong> (<em>str</em>) The body of te help entry</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The help category of the entry.</p></li>
<li><p><strong>locks</strong> (<em>str</em><em>, </em><em>optional</em>) A lockstring to restrict access.</p></li>
<li><p><strong>aliases</strong> (<em>list of str</em><em>, </em><em>optional</em>) List of alternative (likely shorter) keynames.</p></li>
<li><p><strong>tags</strong> (<em>lst</em><em>, </em><em>optional</em>) List of tags or tuples <strong>(tag, category)</strong>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><em>help (HelpEntry)</em> A newly created help entry.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
</div>
</div>
</div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="evennia.help.models.html" title="evennia.help.models"
>next</a> |</li>
<li class="right" >
<a href="evennia.help.filehelp.html" title="evennia.help.filehelp"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 3.x</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-4"><a href="evennia.help.html" >evennia.help</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">evennia.help.manager</a></li>
</ul>
</div>
<div class="admonition important">
<p class="first admonition-title">Note</p>
<p class="last">You are reading an old version of the Evennia documentation. <a href="https://www.evennia.com/docs/latest/index.html">The latest version is here</a></p>.
</div>
<div class="footer" role="contentinfo">
&#169; Copyright 2023, The Evennia developer community.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
</div>
</body>
</html>