<spanid="evennia-utils-evtable"></span><h1>evennia.utils.evtable<aclass="headerlink"href="#module-evennia.utils.evtable"title="Permalink to this headline">¶</a></h1>
<p>This is an advanced ASCII table creator. It was inspired by Prettytable
(<aclass="reference external"href="https://code.google.com/p/prettytable/">https://code.google.com/p/prettytable/</a>) but shares no code and is considerably
more advanced, supporting auto-balancing of incomplete tables and ANSI colors among
<spanclass="n">table</span><spanclass="o">.</span><spanclass="n">add_column</span><spanclass="p">(</span><spanclass="s2">"This is long data"</span><spanclass="p">,</span><spanclass="s2">"This is even longer data"</span><spanclass="p">)</span>
<spanclass="n">table</span><spanclass="o">.</span><spanclass="n">add_row</span><spanclass="p">(</span><spanclass="s2">"This is a single row"</span><spanclass="p">)</span>
<codeclass="sig-prename descclassname">evennia.utils.evtable.</code><codeclass="sig-name descname">wrap</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">text</span></em>, <emclass="sig-param"><spanclass="n">width</span><spanclass="o">=</span><spanclass="default_value">78</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#wrap"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.wrap"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.utils.evtable.</code><codeclass="sig-name descname">fill</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">text</span></em>, <emclass="sig-param"><spanclass="n">width</span><spanclass="o">=</span><spanclass="default_value">78</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#fill"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.fill"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.utils.evtable.</code><codeclass="sig-name descname">EvCell</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">data</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">__init__</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">data</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.__init__"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.__init__"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">get_min_height</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.get_min_height"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.get_min_height"title="Permalink to this definition">¶</a></dt>
<dd><p>Get the minimum possible height of cell, including at least
one line for data.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Returns</dt>
<ddclass="field-odd"><p><em>min_height (int)</em>– The mininum height of cell.</p>
<codeclass="sig-name descname">get_min_width</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.get_min_width"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.get_min_width"title="Permalink to this definition">¶</a></dt>
<dd><p>Get the minimum possible width of cell, including at least one
character-width for data.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Returns</dt>
<ddclass="field-odd"><p><em>min_width (int)</em>– The minimum width of cell.</p>
<codeclass="sig-name descname">get_height</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.get_height"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.get_height"title="Permalink to this definition">¶</a></dt>
<dd><p>Get natural height of cell, including padding.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Returns</dt>
<ddclass="field-odd"><p><em>natural_height (int)</em>– Height of cell.</p>
<codeclass="sig-name descname">get_width</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.get_width"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.get_width"title="Permalink to this definition">¶</a></dt>
<dd><p>Get natural width of cell, including padding.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Returns</dt>
<ddclass="field-odd"><p><em>natural_width (int)</em>– Width of cell.</p>
<codeclass="sig-name descname">replace_data</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">data</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.replace_data"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.replace_data"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reformat</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.reformat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.reformat"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">get</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvCell.get"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvCell.get"title="Permalink to this definition">¶</a></dt>
<dd><p>Get data, padded and aligned in the form of a list of lines.</p>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.utils.evtable.</code><codeclass="sig-name descname">EvColumn</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvColumn"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvColumn"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">__init__</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvColumn.__init__"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvColumn.__init__"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>for each row in the column</strong> (<aclass="reference internal"href="evennia.utils.optionclasses.html#evennia.utils.optionclasses.Text"title="evennia.utils.optionclasses.Text"><em>Text</em></a>) –</p>
</dd>
<dtclass="field-even">Keyword Arguments</dt>
<ddclass="field-even"><ulclass="simple">
<li><p><strong>EvCell.__init_ keywords are available</strong><strong>, </strong><strong>these</strong> (<em>All</em>) –</p></li>
<li><p><strong>will be persistently applied to every Cell in the</strong> (<aclass="reference internal"href="evennia.utils.logger.html#evennia.utils.logger.EvenniaLogFile.settings"title="evennia.utils.logger.EvenniaLogFile.settings"><em>settings</em></a>) –</p></li>
<codeclass="sig-name descname">add_rows</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvColumn.add_rows"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvColumn.add_rows"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reformat</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvColumn.reformat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvColumn.reformat"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reformat_cell</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">index</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvColumn.reformat_cell"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvColumn.reformat_cell"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.utils.evtable.</code><codeclass="sig-name descname">EvTable</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">__init__</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.__init__"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.__init__"title="Permalink to this definition">¶</a></dt>
<li><p><strong>evenwidth</strong> (<em>bool</em><em>, </em><em>optional</em>) – Used with the <strong>width</strong> keyword. Adjusts columns to have as
even width as possible. This often looks best also for mixed-length tables. Default
<codeclass="sig-name descname">add_header</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.add_header"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.add_header"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">add_column</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.add_column"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.add_column"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">add_row</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.add_row"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.add_row"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reformat</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.reformat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.reformat"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reformat_column</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">index</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.reformat_column"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.reformat_column"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">get</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/utils/evtable.html#EvTable.get"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.utils.evtable.EvTable.get"title="Permalink to this definition">¶</a></dt>
<dd><p>Return lines of table as a list.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Returns</dt>
<ddclass="field-odd"><p><em>table_lines (list)</em>– The lines of the table, in order.</p>