From 2a351b150dbe133037afffef01375c39aacd9d74 Mon Sep 17 00:00:00 2001 From: Přemysl Janouch Date: Sun, 27 Sep 2015 01:26:24 +0200 Subject: Convert README to AsciiDoc --- README | 70 ----------------------------------------------------------- README.adoc | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 70 deletions(-) delete mode 100644 README create mode 100644 README.adoc diff --git a/README b/README deleted file mode 100644 index 6bd1979..0000000 --- a/README +++ /dev/null @@ -1,70 +0,0 @@ -termo -===== - -`termo' is a library providing an alternative to ncurses' handling of terminal -input. ncurses does a really terrible job at that, mainly wrt. mouse support -which seems to be utterly broken. If you can drag things in a terminal -application, such as in VIM, I can assure you it's not using ncurses for that. - -Since terminal I/O is really complicated and full of special cases, this project -doesn't aspire to also replace the output part of ncurses, but is rather -complementary to it. In the end it makes use of its terminfo library. - -The API isn't stable yet. Tell me what needs to be done so I can fix it first. - -Building and Installing ------------------------ -Build dependencies: cmake >= 2.8.5, pkg-config -Optional dependencies: Unibilium (alternative for curses), GLib (for the demos) - - $ git clone https://github.com/pjanouch/termo.git - $ mkdir termo/build - $ cd termo/build - $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug - -To install the library, you can do either the usual: - # make install - -Or you can try telling CMake to make a package for you. For Debian it is: - $ cpack -G DEB - # dpkg -i termo-*.deb - -To see the library in action, you can try running the demos, which are -statically linked against the library, and hence they can be run as they are: - - $ make demos - -What's Different From the Original termkey? -------------------------------------------- -The main change is throwing away any UTF-8 dependent code, making the library -capable of handling all unibyte and multibyte encodings supported by iconv on -your system. The characters are still presented as Unicode in the end, however, -as the other sensible option is wchar_t and that doesn't really work well, see -http://gnu.org/software/libunistring/manual/libunistring.html#The-wchar_005ft-mess - -To make the mouse parsing support actually useful, some API has been added to -set the proper modes on request, and unset them appropriately while destroying. -You can have a look at demo-draw.c for an example. - -Another change worth mentioning is the usage of CMake instead of the problematic -libtool-based Makefile. Now you can include this project in your other CMake- --based projects and simply import the target. No package maintainer action is -needed for you to enjoy the benefits of proper terminal input. - -The rest is just me going silly over formatting and various unimportant stuff. -Oh, and I've deleted the manpages. It needs more Doxygen. :) TBD - -Contributing and Support ------------------------- -Use this project's GitHub to report any bugs, request features, or submit pull -requests. If you want to discuss this project, or maybe just hang out with -the developer, feel free to join me at irc://anathema.irc.so, channel #anathema. - -License -------- -`termo' is based on the `termkey' library, originally written by Paul Evans -, with additional changes made by Přemysl Janouch -. - -You may use the software under the terms of the MIT license, the text of which -is included within the package, see the file LICENSE. diff --git a/README.adoc b/README.adoc new file mode 100644 index 0000000..ce63059 --- /dev/null +++ b/README.adoc @@ -0,0 +1,72 @@ +termo +===== + +`termo' is a library providing an alternative to ncurses' handling of terminal +input. ncurses does a really terrible job at that, mainly wrt. mouse support +which seems to be utterly broken. If you can drag things in a terminal +application, such as in VIM, I can assure you it's not using ncurses for that. + +Since terminal I/O is really complicated and full of special cases, this project +doesn't aspire to also replace the output part of ncurses, but is rather +complementary to it. In the end it makes use of its terminfo library. + +The API isn't stable yet. Tell me what needs to be done so I can fix it first. + +Building and Installing +----------------------- +Build dependencies: cmake >= 2.8.5, pkg-config + +Optional dependencies: Unibilium (alternative for curses), GLib (for the demos) + + $ git clone https://github.com/pjanouch/termo.git + $ mkdir termo/build + $ cd termo/build + $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug + +To install the library, you can do either the usual: + + # make install + +Or you can try telling CMake to make a package for you. For Debian it is: + + $ cpack -G DEB + # dpkg -i termo-*.deb + +To see the library in action, you can try running the demos, which are +statically linked against the library, and hence they can be run as they are: + + $ make demos + +What's Different From the Original termkey? +------------------------------------------- +The main change is throwing away any UTF-8 dependent code, making the library +capable of handling all unibyte and multibyte encodings supported by iconv on +your system. The characters are still presented as Unicode in the end, however, +as the other sensible option is wchar_t and that doesn't really work well, see +http://gnu.org/software/libunistring/manual/libunistring.html#The-wchar_005ft-mess + +To make the mouse parsing support actually useful, some API has been added to +set the proper modes on request, and unset them appropriately while destroying. +You can have a look at 'demo-draw.c' for an example. + +Another change worth mentioning is the usage of CMake instead of the problematic +libtool-based Makefile. Now you can include this project in your other +CMake-based projects and simply import the target. No package maintainer action +is needed for you to enjoy the benefits of proper terminal input. + +The rest is just me going silly over formatting and various unimportant stuff. +Oh, and I've deleted the manpages. It needs more Doxygen. :) TBD + +Contributing and Support +------------------------ +Use this project's GitHub to report any bugs, request features, or submit pull +requests. If you want to discuss this project, or maybe just hang out with +the developer, feel free to join me at irc://anathema.irc.so, channel #anathema. + +License +------- +'termo' is based on the 'termkey' library, originally written by Paul Evans +, with additional changes made by Přemysl Janouch +. + +You may use the software under the terms of the MIT license, the text of which +is included within the package, see the file LICENSE. -- cgit v1.2.3-70-g09d2