Limnoria/plugins/Math
Valentin Lorentz 169824a9d2 Math: make @icalc fail early when result is too large
This avoids inconsistent errors between CPython 3.10.7 and older
versions; and the result would not be readable anyway.

Closes GH-1517.
2022-09-18 20:06:34 +02:00
..
local Math: sync convertcore unit data with ConvertAll 0.7.2 2017-09-29 16:02:36 -07:00
locales all: Update .pot and .po files 2022-02-06 00:14:47 +01:00
__init__.py Revert generic 'The Limnoria Contributors' in copyright notices 2021-10-17 09:57:55 +02:00
config.py Revert generic 'The Limnoria Contributors' in copyright notices 2021-10-17 09:57:55 +02:00
messages.pot all: Update .pot and .po files 2022-02-06 00:14:47 +01:00
plugin.py Math: make @icalc fail early when result is too large 2022-09-18 20:06:34 +02:00
README.rst supybot-plugin-doc: Remove extra space + regenerate all READMEs. 2021-12-04 03:19:12 +01:00
test.py Math: make @icalc fail early when result is too large 2022-09-18 20:06:34 +02:00

Documentation for the Math plugin for Supybot

Purpose

This plugin provides a calculator, converter, a list of units and other useful math functions.

Usage

Provides commands to work with math, such as a calculator and a unit converter.

Commands

base <fromBase> [<toBase>] <number>

Converts <number> from base <fromBase> to base <toBase>. If <toBase> is left out, it converts to decimal.

calc <math expression>

Returns the value of the evaluated <math expression>. The syntax is Python syntax; the type of arithmetic is floating point. Floating point arithmetic is used in order to prevent a user from being able to crash to the bot with something like '10*101010'. One consequence is that large values such as '10*24' might not be exact.

convert [<number>] <unit> to <other unit>

Converts from <unit> to <other unit>. If number isn't given, it defaults to 1. For unit information, see 'units' command.

icalc <math expression>

This is the same as the calc command except that it allows integer math, and can thus cause the bot to suck up CPU. Hence it requires the 'trusted' capability to use.

rpn <rpn math expression>

Returns the value of an RPN expression.

units [<type>]

With no arguments, returns a list of measurement types, which can be passed as arguments. When called with a type as an argument, returns the units of that type.

Configuration

supybot.plugins.Math.public

This config variable defaults to "True", is not network-specific, and is not channel-specific.

Determines whether this plugin is publicly visible.