Commit Graph

42 Commits

Author SHA1 Message Date
Daniel Folkinshteyn
e4c51ef517 Add --raw option to factoids.whatis, which disables variable substitution on the factoid.
also add test for this.
2010-04-28 15:27:08 -04:00
Daniel Folkinshteyn
976ad82d69 Use the ircutils.standardSubsitute function upon factoid output.
This allows inclusion of the usual standardSubstitute vars within factoids.

There is no config to disable this, since it is possible to escape the substitutions
by simply doubling the dollar signs, as per the python documentation:
http://docs.python.org/library/string.html#template-strings

Thus, if you want a factoid to output a literal "$channel", for example, all
you'd need to do is use "$$channel" in your factoid text, which will come out
as "$channel" when said by the bot.

Also added tests for this new behavior.
2010-04-28 00:10:48 -04:00
Daniel Folkinshteyn
f1517a7acc some enhancements Factoids.rank:
output options: plain key output, and alpha sorting for plain output.
allow an optional argument for how many ranked facts to show.
2010-04-25 02:58:43 -04:00
Daniel Folkinshteyn
022193b61b for Factoids: make approximate fuzzy key searches also when invoking whatis directly.
also add tests.
while there, remove useless config setting for replyinvalidcommand testing, since it is true by default.
2010-04-18 03:33:10 -04:00
Daniel Folkinshteyn
67ab067e6a take out getDb override from factoids, since i have changed it upstream, in plugins.__init__.py, to use proper sqlite3 syntax. 2010-04-11 16:40:59 -04:00
Daniel Folkinshteyn
643be43466 Fix factoids bug ,Factoids.showFactoidIfOnlyOneMatch feature is broken when used off-channel:
https://sourceforge.net/tracker/?func=detail&aid=2965589&group_id=58965&atid=489447
2010-04-11 01:23:27 -04:00
Daniel Folkinshteyn
5d9273cd5a add damerau-levenshtein distance to supybot.utils.seq
use it in factoids invalid command to match possible typos
write tests for same.
2010-04-07 12:33:28 -04:00
Daniel Folkinshteyn
f988736ca6 add tests for factoids.alias 2010-04-02 00:55:02 -04:00
Daniel Folkinshteyn
a3f7adaa8c delete leftover debug-prints 2010-04-02 00:51:06 -04:00
Daniel Folkinshteyn
203308647b add factoids alias function, to link more keys to existing factoids. 2010-04-02 00:49:43 -04:00
Daniel Folkinshteyn
58886bd1f2 mod factoids plugin to use a separate key-value relationship table
this avoids duplication, and allows one to set a bunch of aliases for a factoid, without creating duplicates of the same fact content.
2010-04-02 00:08:49 -04:00
Daniel Folkinshteyn
97149b403a make 'factoids info' include usage count in output. add test for same. 2010-04-01 00:51:25 -04:00
nanotube
32c718ca66 don't give up too easily with invalid command, instead search factoid keys with wildcard first. 2010-03-23 16:44:33 -04:00
nanotube
2e043ce19f add rank test to factoids, update factoids test code to sqlite3 2010-03-23 13:54:31 -04:00
nanotube
0fb4dd6dff rename factrank to just rank for consistency 2010-03-23 13:34:50 -04:00
Daniel Folkinshteyn
c2b1c1b143 This merges an old branch i had for sqlite3 factoids+moobotfactoids.
fix up moobotfactoids+factoids to use the sqlite text_factory=str,
also fixed up a test for factoid search, since it now sorts keys alphabetically.
2010-03-21 02:44:07 -04:00
Daniel Folkinshteyn
0e50249256 start factoid rankings from 1 not from 0 2010-03-15 23:12:35 -04:00
Daniel Folkinshteyn
d1c00ccbaf remove rogue test-print 2010-03-08 14:49:58 -05:00
Daniel Folkinshteyn
9db1598a0e sort keys in factoid search output by alphabetically by key name. 2010-03-05 14:51:25 -05:00
Daniel Folkinshteyn
fcd262cd4b implement factoid usage counter 2010-03-05 14:08:11 -05:00
James Vega
10f5a12b7e Factoids: Prevent empty key or value when adding a factoid.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-02-05 18:50:48 -05:00
Daniel Folkinshteyn
b77c649c8a factoids now works with sqlite3, all tests pass. 2009-11-18 12:04:52 -05:00
Daniel Folkinshteyn
5bf71395e7 another step toward sqlite3 2009-11-18 02:27:48 -05:00
Daniel Folkinshteyn
cc1f4ea015 some more mods toward getting sqlite3 to work 2009-11-18 02:03:44 -05:00
Daniel Folkinshteyn
11446c7cb5 some work in progress getting plugins to work with sqlite3 2009-11-18 01:48:11 -05:00
James Vega
927c8c963a Use the correct URLs for the PySqlite website.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-21 22:48:04 -04:00
James Vega
f475525237 Update references to PySqlite URL
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-21 22:43:26 -04:00
James Vega
4c9efc044b Replace Factoids.factoidPrefix with Factoids.format
Factoids.format makes use of registry.TemplatedString so the user can specify
excactly how they want the factoid reply to be formed.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-15 22:37:59 -04:00
James Vega
cca36ed9f2 Factoids: Add simpleSyntax argument to getCommandHelp.
It helps to properly override the parent class's method so that Misc.help
doesn't error when trying to get Factoids.learn's help.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-18 11:09:18 -04:00
James Vega
0615846ab3 Fix getCommandHelp's use of dynamic.msg
Default chan to None so we can still retrieve a config value if dynamic.msg
isn't valid (e.g., when running supybot-plugin-doc).

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-28 08:14:46 -04:00
James Vega
4285df0809 Factoids: Fix thinko in getCommandHelp
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-23 16:05:31 -04:00
James Vega
d6f6f32219 Factoids: Add an __init__ function which calls our parents' __init__s
This ensures that we actually get self.dbCache defined in Factoids

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-06 17:30:53 -04:00
James Vega
46a4076988 Add .gitignore
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-02-27 14:17:31 -05:00
James Vega
0bc16641b9 Use the timestamp formatter instead of duplicating the code 2009-03-11 13:37:26 -04:00
James Vega
1f3d9e64a3 Add test to ensure quoted factoids are preserved 2009-03-11 13:37:26 -04:00
James Vega
08a0531bf7 Update Factoids.getCommandHelp to respect supybot.reply.showSimpleSyntax 2009-03-11 13:37:26 -04:00
James Vega
3908e989c5 plugins/Factoids: Dynamically generate the help string using the value of supybot.plugins.Factoids.learnSeparator 2006-08-28 13:14:21 +00:00
James Vega
a3e4fc5b1d Change the modeline to use softtabstop instead of tabstop. 2006-02-11 15:52:51 +00:00
James Vega
5c59539145 Change pysqlite.sf.net references to pysqlite.org 2005-11-03 05:31:24 +00:00
James Vega
116f598caa Re-add manual argument parsing since some stuff is a bit complex for wrap. 2005-04-18 01:58:57 +00:00
James Vega
979cbd551d Fix some bugs in the Factoids conversion. 2005-04-17 21:38:17 +00:00
James Vega
6b38346b5a Factoids should be under plugins/ 2005-04-17 21:01:12 +00:00