pikpik / msg Goto Github PK
View Code? Open in Web Editor NEWA simple IRC program.
A simple IRC program.
The command could be something like:
/saveas file.blah
The keyboard shortcut would be Control + S.
Instead of recording the positions viewed in each logged channel, a single chronological position is used to determine which messages to show.
If Msg prints too much text, it sometimes quits without warning. However, sometimes there is a message that a "resource" is no longer available. It could be a problem with non-blocking socket and terminal access.
Builds have errors on Linux. In the errors, the compiler seemed to be asking for files that were already being included.
Use safe, standard, system-provided functions for creating the temporary log file.
Msg needs to be tested on FreeBSD. Hopefully, there will be fewer differences between FreeBSD and Mac OS X than there are between Mac OS X and NetBSD or MINIX.
Currently, received messages look a bit jumbled and cut-off. It would be good to make sure each complete line is received and rendered.
Once messages are verified to be safe (basically sanitized), they should be passed as pointers to the original messages. There should be as little data copying as possible.
In many places, code is not being used anymore or is wasteful. In other places, things are unnecessarily complicated. I'd like to improve both of these areas.
The user could search through the log the following way:
/search something
/find something
/find /some[A-Za-z]+/
Or:
Control + F --> /find something
The current event-handlers are good, but I'd like to see how minimalistic and efficient I can make them.
The user could switch or mix channels the following ways:
/show #minix
/show #netbsd
/hide #minix
Only messages from MINIX are now visible.
/only #freenode
Only messages from #freenode are now visible.
/all
Messages from #freenode, #minix, and #netbsd are visible and sorted by timestamp.
Please note that the changes occur at the current time being watched. Changes are appended to the terminal screen, instead of redrawing the screen.
On either MINIX 3.2.1 or NetBSD 6, typing anything moves the cursor further than intended. Deleting characters also moves the cursor and line-editing backwards, wrapping up to the top-left corner of the screen.
Msg sometimes connects to irc.freenode.net:6667, and then it disconnects during the flood of initial messages.
When there's a problem while connecting to a server, it should be reported to the user. The connection should be retried a few times, possibly with increasing waiting periods.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.