README.md - gramscii - A simple editor for ASCII box-and-arrow charts DIR Log DIR Files DIR Refs DIR Tags DIR README DIR LICENSE --- README.md (3485B) --- 1 gramscii -- interactive tool for ASCII box-and-arrows charts 2 ============================================================ 3 4 `gramscii` (pronounced "grrr'a(m)sky", more or less like "ASCII" but 5 with a leading "grrr") is a simple CLI tool to create and edit 6 box-and-arrows charts using ASCII characters. 7 8 `gramscii` is interactive and its commands are quite intuitive to 9 anybody who does not need a mouse to be productive. You can move around 10 the screen with the usual `hjkl` keys, but you will travel at 11 ligthning speed by placing one of your other fingers on `SHIFT`. You 12 start drawing a box with `b`, and you place an arrow with `a`. 13 For more information, just read the manpage. 14 15 `gramscii` aims at remaining small, avoiding bloat, and being 16 portable. It is written in ASCII C90, it requires only an ANSI 17 VT100-compatible terminal (real or virtual), and it does not use any 18 external library (nope, not even ncurses!). Hence, you should be able to 19 compile and run `gramscii` on any operating system with a C90 libc 20 and a VT100 terminal emulator. 21 22 I have tested it on Linux and BSD, compiled with `gcc`, 23 `clang`, and `tcc`, and linked it against `glibc`, 24 `musl`, and whatever libc was available on FreeBSD, OpenBSD, and 25 NetBSD. It just worked. 26 27 INSTALL 28 ======= 29 30 Edit `config.h` and/or `config.mk` to suit your preferences. 31 Then just: 32 33 make 34 35 to build `gramsci` and: 36 37 ./gramscii 38 39 to execute it. `man` is your friend. 40 41 42 WHY? 43 ==== 44 45 As most of the software out there, `gramscii` comes out of 46 frustration and pain. 47 48 I have been producing box-and-arrow diagrams in ASCII for quite a while. 49 I know that there exist ad-hoc plugins for `vim(1)` and 50 `emacs(1)`, but I was not happy with any of them, to say the least. 51 There are also a few point-and-click GUI tools to do the same, but most 52 of them depend on a variety of libraries/modules. And again, why would 53 you need a fancy GUI to create ASCII charts? 54 55 There has been a recent proliferation of browser-based point-and-click 56 tools to draw ASCII charts. Like, are you serious? Why on Earth should 57 people accept to load hundred thousands LOCs of obscure javascript code 58 on a hyper-bloated web browser and use a fancy point-and-click interface 59 to produce......guess what......ASCII charts that are best-viewed viewed 60 on a VT100 terminal? 61 62 We must say no to madness. We must repudiate bloat. We must reject 63 useless featurism. Software must be reasonable, simple, small, and 64 functional. 65 66 But wait... 67 ============ 68 69 You might have noticed that the name `gramscii` is reminiscent of 70 Antonio Gramsci, the phylosopher and politician who was among the 71 founders of the Italian Communist Party in 1921. Now, Gramscii (the 72 philosopher) strongly believed that every single human is an 73 intellectual, a philosopher, and an artist, and maintained that societal 74 changes are only possible when a class exerts intellectual and moral 75 leadership over its contemporaries. So just get rid of all your shiny 76 iPointless things and come back to reality. 77 78 COPYING 79 ======= 80 81 `gramscii` is written and maintained by Vincenzo 'KatolaZ' Nicosia 82 <katolaz@freaknet.org>. You can use, modify and/or redistribute it under 83 the terms of the GNU General Public Licence, either version 3 of the 84 License or, at your option, any later version. 85 86 This program is distributed in the hope that it will be useful, but 87 WITHOUT ANY WARRANTY; without even the implied warranty of 88 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 89 General Public License for more details.