Check out my first novel, midnight's simulacra!

Hacking The Planet! with Notcurses: Difference between revisions

From dankwiki
No edit summary
No edit summary
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
A guide to the use of [[Notcurses]] for creating vivid TUIs with character graphics.
A guide to the use of [[Notcurses]] for creating vivid TUIs with character graphics.


The first draft is rapidly reaching completion. PDF is available [https://nick-black.com/htp-notcurses.pdf here].
Up-to-date (errata-corrected) PDF is available [https://nick-black.com/htp-notcurses.pdf here].


It is currently being updated multiple times per day.
A paperback version [https://www.amazon.com/dp/B086PNVNC9 is available for purchase]. It was published April 2, 2020. I upload a new copy whenever I discover major errata.


A paperback version ought be available for purchase no later than April 2020--watch this space!
'''NOTA BENE''' The API has changed fairly significantly since I last updated the text. Most of this was additions, but there are definitely examples and text which are no longer directly applicable. I definitely discourage purchase of the book until this is remedied. Hopefully useful information remains in the interim.


==Errata in the First Edition==
==Errata in the First Edition==
'''*All known issues have been corrected in the currently-available book*'''
* The very first day it was available for purchase (2020-04-02), all copies were printed with a large grey "DRAFT" watermark on each page. If you have such a copy, and would like to exchange it for one without this flaw, email me and we'll work it out.
* I then uploaded a version which had a phantom fifth chapter entitled "A very cursory introduction to fullscreen mode". This chapter does not yet exist. It ought not have occupied a page with its title, and I am incompetent.
* The first graphic has an incorrect caption; "IBM 3270" ought read "IBM 3279". Thanks, [https://github.com/dirty-south-supercomputing/technicalreports/pull/5 blackbit42]!
* The Tetris case study takes a lock in the wrong place. <tt>Tetris::Ticker()</tt> ought read:
<pre>
  do{
    mtx_.lock();
    ms = msdelay_;
</pre>
rather than
<pre>
  mtx_.lock();
  do{
    ms = msdelay_;
</pre>
* The reference for <tt>Tetris::MoveLeft</tt> was incorrectly defined, leading to a "??" reference at the beginning of section 15.2. It is now the proper "83".
* Listing 42 ought have the caption "Rotating planes", not "Aligning output within a plane".
* 8.2 refers to "Chapter 49"; this ought be "Listing 49".
* Page 24 refers to <tt>tetrimio_plane</tt>; this ought be <tt>tetrimino_plane</tt>

Latest revision as of 20:05, 27 June 2021

A guide to the use of Notcurses for creating vivid TUIs with character graphics.

Up-to-date (errata-corrected) PDF is available here.

A paperback version is available for purchase. It was published April 2, 2020. I upload a new copy whenever I discover major errata.

NOTA BENE The API has changed fairly significantly since I last updated the text. Most of this was additions, but there are definitely examples and text which are no longer directly applicable. I definitely discourage purchase of the book until this is remedied. Hopefully useful information remains in the interim.

Errata in the First Edition

*All known issues have been corrected in the currently-available book*

  • The very first day it was available for purchase (2020-04-02), all copies were printed with a large grey "DRAFT" watermark on each page. If you have such a copy, and would like to exchange it for one without this flaw, email me and we'll work it out.
  • I then uploaded a version which had a phantom fifth chapter entitled "A very cursory introduction to fullscreen mode". This chapter does not yet exist. It ought not have occupied a page with its title, and I am incompetent.
  • The first graphic has an incorrect caption; "IBM 3270" ought read "IBM 3279". Thanks, blackbit42!
  • The Tetris case study takes a lock in the wrong place. Tetris::Ticker() ought read:
   do{
     mtx_.lock();
     ms = msdelay_;

rather than

   mtx_.lock();
   do{
     ms = msdelay_;
  • The reference for Tetris::MoveLeft was incorrectly defined, leading to a "??" reference at the beginning of section 15.2. It is now the proper "83".
  • Listing 42 ought have the caption "Rotating planes", not "Aligning output within a plane".
  • 8.2 refers to "Chapter 49"; this ought be "Listing 49".
  • Page 24 refers to tetrimio_plane; this ought be tetrimino_plane