1# insomnia 2 3A frontend for the [hii][hii github] IRC client. 4 5## Screenshot 6 7![insomnia screenshot](https://gist.githubusercontent.com/nmeum/3886bef9c4b07f42bcc4d15da1c0177e/raw/8d01fbe80a7843fec58f098fcdca591fecdc97a9/insomnia.png) 8 9## Status1011insomnia is just a collection of small programs and scripts which are12connected using tmux to create a simple irssi-like text-based user13interface for hii. As you might expected it's pretty hacky but mostly14works.1516## Features1718* Support for readline-like key bindings and tab completions for nicks.19* Support for highlight "notification" through bell characters.20 * Use this in combination with tmux's monitor-bell feature.21* Support for tracking topic changes through tmux pane titles.22* Support for colorful output.2324## Dependencies2526insomnia depends on the following non-standard utilities:2728* [hii][hii github] >= 1.0.029* [input][input github] >= 0.7.030* [tmux][tmux homepage] >= [3.3][tmux window-resized]31* awk with `fflush()` (available since [POSIX.1‐2024][posix issue 634])3233Additionally, the following software is required for compilation:3435* A C99 compiler36* [GNU make][GNU make] (sorry!)3738## Installation3940To build and install insomnia run the following commands:4142 $ make43 $ make install4445Consult the `GNUmakefile` for environment variables which can be used to46configure the installation. The variables `LIBDIR` and `DATADIR` are47special and need to be set for both targets `make` and `make install`.4849### Development setup5051In case you don't want to install insomnia globally but just want to52experiment with it compile insomnia using the following commands:5354 $ export LIBDIR="$(pwd)/lib" DATADIR="$(pwd)/data"55 $ make5657Afterwards run `./bin/insomnia`.5859## Usage6061After a successful installation `insomnia` can be invoked as follows:6263 $ insomnia irc.hackint.org '#hii'6465This will only work if an `hii` instance for `irc.hackint.org` is66already running in the background and if the user already joined the67`#hii` channel.6869## License7071This program is free software: you can redistribute it and/or modify it72under the terms of the GNU General Public License as published by the73Free Software Foundation, either version 3 of the License, or (at your74option) any later version.7576This program is distributed in the hope that it will be useful, but77WITHOUT ANY WARRANTY; without even the implied warranty of78MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General79Public License for more details.8081You should have received a copy of the GNU General Public License along82with this program. If not, see <http://www.gnu.org/licenses/>.8384[hii github]: https://github.com/nmeum/hii85[input github]: https://github.com/nmeum/input86[tmux homepage]: https://tmux.github.io87[tmux window-resized]: https://github.com/tmux/tmux/issues/299588[posix issue 634]: http://austingroupbugs.net/view.php?id=63489[GNU make]: https://www.gnu.org/software/make/