-
-
Notifications
You must be signed in to change notification settings - Fork 31
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
6 changed files
with
891 additions
and
883 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,27 @@ | ||
.POSIX: | ||
|
||
ALL_WARNING = -Wall -Wextra -pedantic | ||
ALL_LDFLAGS = $(LDFLAGS) | ||
ALL_CFLAGS = $(CPPFLAGS) $(CFLAGS) -std=c99 $(ALL_WARNING) | ||
PREFIX = /usr/local | ||
LDLIBS = -lm | ||
BINDIR = $(PREFIX)/bin | ||
MANPREFIX = $(PREFIX)/share/man | ||
MANDIR = $(PREFIX)/share/man | ||
|
||
all: kirc | ||
|
||
kirc: kirc.o Makefile | ||
$(CC) -o kirc kirc.o $(LDFLAGS) | ||
|
||
.c.o: | ||
$(CC) $(CPPFLAGS) $(CFLAGS) -c $< | ||
|
||
install: all | ||
mkdir -p $(DESTDIR)$(BINDIR) | ||
mkdir -p $(DESTDIR)$(MANPREFIX)/man1 | ||
mkdir -p $(DESTDIR)$(MANDIR)/man1 | ||
cp -f kirc $(DESTDIR)$(BINDIR) | ||
cp -f kirc.1 $(DESTDIR)$(MANDIR)/man1 | ||
chmod 755 $(DESTDIR)$(BINDIR)/kirc | ||
version=$$(sed -n '/#define VERSION/{s/^[^"]*"//;s/".*//;p;q}' kirc.c); \ | ||
sed "s/VERSION/$$version/g" kirc.1 > $(DESTDIR)$(MANPREFIX)/man1/kirc.1 | ||
chmod 644 $(DESTDIR)$(MANPREFIX)/man1/kirc.1 | ||
|
||
uninstall: | ||
rm -f $(DESTDIR)$(BINDIR)/kirc | ||
rm -f $(DESTDIR)$(MANPREFIX)/man1/kirc.1 | ||
|
||
chmod 644 $(DESTDIR)$(MANDIR)/man1/kirc.1 | ||
kirc: kirc.o | ||
$(CC) $(ALL_LDFLAGS) -o kirc kirc.o $(LDLIBS) | ||
kirc.o: kirc.c | ||
$(CC) $(ALL_CFLAGS) -c kirc.c | ||
clean: | ||
rm -f kirc *.o | ||
|
||
uninstall: | ||
rm -f $(DESTDIR)$(BINDIR)/kirc | ||
rm -f $(DESTDIR)$(MANDIR)/man1/kirc.1 | ||
.PHONY: all install uninstall clean |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,99 +1,63 @@ | ||
<!-- vim: syntax=Markdown --> | ||
<!-- | ||
Title: KISS for IRC (kirc) | ||
Description: A tiny IRC client written in POSIX C99. | ||
Author: mcpcpc | ||
--> | ||
|
||
<h3 align="center"> | ||
<img src="https://raw.githubusercontent.com/mcpcpc/kirc/gh-pages/kirc.png" alt="kirc" height="170px"> | ||
</h3> | ||
|
||
<p align="center">KISS for IRC, a tiny IRC client written in POSIX C99.</p> | ||
|
||
<p align="center"> | ||
<a href="./LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg"></a> | ||
<a href="https://github.com/mcpcpc/kirc/releases"><img src="https://img.shields.io/github/v/release/mcpcpc/kirc.svg"></a> | ||
<a href="https://repology.org/metapackage/kirc"><img src="https://repology.org/badge/tiny-repos/kirc.svg" alt="Packaging status"></a> | ||
<a href="https://www.codacy.com/manual/mcpcpc/kirc/dashboard?utm_source=github.com&utm_medium=referral&utm_content=mcpcpc/kirc&utm_campaign=Badge_Grade"><img src="https://app.codacy.com/project/badge/Grade/5616c0ed4b2f4209826038dbc270dbf5" alt="Codacy status"></a> | ||
</p> | ||
|
||
## Features | ||
|
||
* Excellent cross-platform compatibility. | ||
* Asynchronous user input and server messager handling. | ||
* No dependencies other than a C99 compiler. | ||
* Simple Authentication and Security Layer (SASL) procotol support. | ||
* Client-to-client protocol (CTCP) support. | ||
* Transport Layer Security (TLS) protocol support (via external utilities). | ||
* Full chat history logging. | ||
* Multi-channel joining at server connection. | ||
* Simple command aliases and full support for all RFC 2812 commands. | ||
* Easy color scheme definition via ANSI 8-bit colors. | ||
|
||
## Installation & Usage | ||
|
||
Building and installing on **KISS Linux** using the Community repository: | ||
|
||
```shell | ||
kiss b kirc | ||
kiss i kirc | ||
``` | ||
|
||
Building and installing on **Arch** and **Arch-based** distros using the AUR: | ||
|
||
```shell | ||
git clone https://aur.archlinux.org/kirc-git.git | ||
cd kirc | ||
makepkg -si | ||
``` | ||
|
||
Building and installing from source (works on **Raspbian**, **Debian**, **Ubuntu** and many other Unix distributions): | ||
|
||
```shell | ||
git clone https://github.com/mcpcpc/kirc.git | ||
cd kirc | ||
make | ||
make install | ||
``` | ||
|
||
### Usage | ||
|
||
Consult `man kirc` for a full list and explanation of available `kirc` arguments. | ||
|
||
```shell | ||
kirc [-s hostname] [-p port] [-c channels] [-n nickname] [-r realname] [-u username] [-k password] [-a token] [-x command] [-o logfile] [-e|v|V] | ||
``` | ||
|
||
### Command Aliases | ||
|
||
```shell | ||
<message> Send a PRIVMSG to the current channel. | ||
@<channel|nick> <message> Send a message to a specified channel or nick | ||
@@<channel|nick> <message> Send a CTCP ACTION message to a specified channel or nick | ||
/<command> Send command to IRC server (see RFC 2812 for full list). | ||
/#<channel> Assign new default message channel. | ||
``` | ||
|
||
### User Input Key Bindings | ||
|
||
* **CTRL+B** or **LEFT ARROW** moves the cursor one character to the left. | ||
* **CTRL+F** or **RIGHT ARROW** moves the cursor one character to the right. | ||
* **CTRL+E** moves the cursor to the end of the line. | ||
* **CTRL+A** or **HOME** moves the cursor to the start of the line. | ||
* **CTRL+W** deletes the previous word. | ||
* **CTRL+U** deletes the entire line. | ||
* **CTRL+K** deletes the from current character to end of line. | ||
* **CTRL+C** Force quit kirc. | ||
* **CTRL+D** deletes the character to the right of cursor. | ||
* **CTRL+T** swap character at cursor with previous character. | ||
* **CTRL+H** equivalent to backspace. | ||
|
||
## Support Documentation | ||
|
||
Please refer to the official [Support Documention](https://mcpcpc.github.io/kirc/documentation.html) for examples, troubleshooting and use cases. | ||
|
||
## Contact | ||
|
||
For any further questions or concerns, feel free to reach out to me, [mcpcpc](https://github.com/mcpcpc), on `#kirc` | ||
or `#kisslinux` Freenode IRC channels. | ||
kirc | ||
==== | ||
|
||
kirc (KISS for IRC) is a tiny IRC client written in POSIX C99. | ||
|
||
Installation | ||
------------ | ||
|
||
Building and installing from source: | ||
|
||
git clone https://github.com/mcpcpc/kirc | ||
cd kirc | ||
make | ||
make install | ||
|
||
Usage | ||
----- | ||
|
||
Consult `man kirc` for a full list and explanation of available arguments. | ||
|
||
kirc [-s hostname] [-p port] [-c channels] [-n nickname] [-r realname] | ||
[-u username] [-k password] [-a token] [-x command] [-o logfile] | ||
[-e|v|V] | ||
|
||
Command Aliases | ||
--------------- | ||
|
||
<message> send PRIVMSG to the current channel. | ||
@<channel|nick> <message> send message to a specified channel or nick. | ||
@@<channel|nick> <message> send CTCP ACTION message to a specified channel or nick. | ||
/<command> send command to the IRC server (see RFC 2812). | ||
/#<channel> assign new default message channel. | ||
|
||
Key Bindings | ||
------------ | ||
|
||
CTRL+B or LEFT ARROW move the cursor one character to the left. | ||
CTRL+F or RIGHT ARROW move the cursor one character to the right. | ||
CTRL+P or UP ARROW move to previous record in the input history buffer. | ||
CTRL+N or DOWN ARROW move to next record in the input history buffer. | ||
CTRL+E move the cursor to the end of the line. | ||
CTRL+A or HOME move the cursor to the start of the line. | ||
CTRL+W delete the previous word. | ||
CTRL+U delete the entire line. | ||
CTRL+K delete the from current character to end of line. | ||
CTRL+D delete the character to the right of cursor. | ||
CTRL+C force quit kirc. | ||
CTRL+T swap character at cursor with previous character. | ||
CTRL+H equivalent to backspace. | ||
|
||
Support Documentation | ||
--------------------- | ||
|
||
Please refer to the official for examples, troubleshooting and use cases. | ||
|
||
https://mcpcpc.github.io/kirc/documentation.html | ||
|
||
Contact | ||
------- | ||
|
||
For any further questions or concerns, feel free to email me at: | ||
|
||
michaelczigler [at] mcpcpc [dot] com |
Oops, something went wrong.