Ticket #93 (assigned enhancement)

Opened 2 years ago

Last modified 2 years ago

Topic manipulation plugin

Reported by: giuseppe.bilotta Assigned to: giuseppe.bilotta (accepted)
Priority: normal Milestone: 0.9.11
Component: plugins Version:
Severity: normal Keywords:
Cc:

Description

I wrote a plugin that allows topic manipulation providing commands such as:

  • settopic to set the topic
  • learntopic to remember the present topic
  • resumetopic to reset the topic to the last remembered one
  • topic sections (separated by " -- ", will be made channel-customizable in the future) and commands to manipulate them:
    • addtopic (or topicadd or appendtopic or topicappend) to add sections at the end
    • prependtopic (or topicprepend) to add sections at the beginning
    • addtopicat (or topicaddat) to add sections at a specific location
    • deltopic (or topicdel) to remove sections

Attachments

topic.rb (4.0 kB) - added by giuseppe.bilotta on 05/31/06 19:00:22.
Topic manipulation plugin
topic.2.rb (5.6 kB) - added by giuseppe.bilotta on 06/03/06 01:03:37.
New version of the topic plugin

Change History

05/31/06 19:00:22 changed by giuseppe.bilotta

  • attachment topic.rb added.

Topic manipulation plugin

06/01/06 01:40:57 changed by epitron

This is a cool idea. I think we could simplify the topic commands and make them more intuitive like this:

  • topic add
  • topic prepend
  • topic del
  • topic seperator <symbols to separate sections>

Also, you could get rid of the "remember topic" command if you kept a history of the old topics. Then you'd just need a "list last x topics", and a "set topic to #x" command.

It might be neat to add a topic template too. I've seen them on other IRC servers. The way it works is, if someone sets the topic to:

  • *enjoy* the *sauce*

then the bot will automatically reset it to:

It's kinda neat. Not awesome, but kinda neat. :)

06/01/06 02:26:36 changed by epitron

  • owner changed from giblet to epitron.
  • status changed from new to assigned.

06/03/06 01:02:37 changed by giuseppe.bilotta

  • component changed from misc to plugins.

I've done some changes to the topic plugin: now almost all the commands can be reached with topic set/add/addat/prepend/del/sep(arator). For this to work, however, you must fix ircbot.rb, see ticket #95.

Not all your ideas have been implemented yet (only the ones I had on my own before noticing you had added a comment to this ticket), but we're getting there. (BTW, how do I set my email being a registered user? I have it in Settings but it's not being used ...)

Remembering more than a topic and restoring any old one is a good idea, but I still like the learn/resume idea because some channels have official or semi-officials topic, so resetting it to this one (e.g. at midnight) regardless of how many topic changes have been made is needed. Something like your 'template' idea, but more drastic. However, I don't like resume as the name for the resume command, I think I will change it to reset

We also need to implement the private message syntax which would be topic #channel command arguments instead of simply topic command arguments. After this, we can just ditch the topic handling in ircbot.rb (that is currently attempting stupid things when topic set is called).

I will try working on these ideas on the next few days. The topic stack will probably be the first one.

06/03/06 01:03:37 changed by giuseppe.bilotta

  • attachment topic.2.rb added.

New version of the topic plugin

06/07/06 10:47:06 changed by giuseppe.bilotta

I implemented private addressing for the topic command and did some thorough cleanup in changeset [190] (now only topic [#channel] <command> syntax is accepted)

I'm keeping this ticket open because the other ideas are still to be implemented.

10/23/06 19:54:03 changed by giuseppe.bilotta

  • owner changed from epitron to giuseppe.bilotta.
  • status changed from assigned to new.
  • milestone set to 0.9.11.

10/23/06 20:25:03 changed by giuseppe.bilotta

  • status changed from new to assigned.