IRC client for Sublime Text 3
This is a very alpha IRC plugin for Sublime Text 3, inspired by Emacs IRC clients such as ERC. Although there are obviously much better clients in the form of Adium, Limechat, et. al., there are many advantages to having IRC built into your text editor. The goal here is to be automatically connected to a particular channel when working on a specific project.
In the Packages
directory:
git clone https://github.com/markbirbeck/sublime-text-irc.git IRC
To create an IRC buffer run the IRC command with a list of connection settings:
view.run_command("irc", {"server": "irc.freenode.net", "target": "#sublimetext"})
To wire a command into the Command Palette edit your Preferences > Package Settings > IRC > Commands - User file. You can find some examples in the Commands - Default file.
Any time [ENTER]
is pressed commands are submitted to the selected IRC server. If no text is selected and the cursor is simply on the last line of the buffer then the whole line is sent, without the prompt. If any text is selected then in keeping with the spirit of Sublime, each selection is submitted as its own command.
There's lots of scope for improvement!
New feature requests, bugs and of course pull requests will all be managed via the issue-tracker.
Code is formatted with PEP8 with E501 turned off (i.e., the default settings for SublimeLinter
).
GitFlow is used for branching and preparing releases.
The client tries to fit in with Sublime Text's architecture as much as possible. So for example, an IRC window is simply a document with the IRC syntax type, which is how things like user names and status messages get their appearance.
The main limitation is that the prompt is not protected! If you type over it then the plugin won't be able to find the end of the buffer and therefore won't know where to insert text. It should be straightforward to fix, but for now just watch those backspaces.
Making use of the excellent Python IRC library from Joel Rosdahl and Jason R. Coombs.
2014-03-26 (v0.4)
- Bump the IRC library to version 8.5.4.
2013-07-25 (v0.3)
- Add /nick, /quit and /connect commands. (@Mimieam)
- Add optional timestamp to messages. (@Mimieam)
- Improve syntax highlighting.
2013-07-02 Some README changes. (v0.2)
2013-07-02 Initial release. (v0.1)