iInitial commit. - catpoint - Catpoint simple presenting software. Err bitreich.org 70 hgit clone git://bitreich.org/catpoint/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/catpoint/ URL:git://bitreich.org/catpoint/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/catpoint/ bitreich.org 70 1Log /scm/catpoint/log.gph bitreich.org 70 1Files /scm/catpoint/files.gph bitreich.org 70 1Refs /scm/catpoint/refs.gph bitreich.org 70 1Tags /scm/catpoint/tag bitreich.org 70 1README /scm/catpoint/file/README.md.gph bitreich.org 70 1LICENSE /scm/catpoint/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit b95ee9c3f701ede5263139276897ae482ba70331 /scm/catpoint/commit/b95ee9c3f701ede5263139276897ae482ba70331.gph bitreich.org 70 hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70 iDate: Thu, 27 Aug 2015 23:54:58 +0200 Err bitreich.org 70 i Err bitreich.org 70 iInitial commit. Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i A Makefile | 9 +++++++++ Err bitreich.org 70 i A README | 10 ++++++++++ Err bitreich.org 70 i A catpoint.c | 103 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i A showoff/00-intro.txt | 13 +++++++++++++ Err bitreich.org 70 i A showoff/01-files.txt | 18 ++++++++++++++++++ Err bitreich.org 70 i A showoff/02-config.txt | 12 ++++++++++++ Err bitreich.org 70 i A showoff/03-run.txt | 9 +++++++++ Err bitreich.org 70 i A showoff/04-graph.txt | 22 ++++++++++++++++++++++ Err bitreich.org 70 i A showoff/05-export.txt | 8 ++++++++ Err bitreich.org 70 i A showoff/99-end.txt | 12 ++++++++++++ Err bitreich.org 70 i Err bitreich.org 70 i10 files changed, 216 insertions(+), 0 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/Makefile b/Makefile /scm/catpoint/file/Makefile.gph bitreich.org 70 i@@ -0,0 +1,9 @@ Err bitreich.org 70 i+# catpoint Err bitreich.org 70 i+ Err bitreich.org 70 i+LDLIBS = -lncursesw Err bitreich.org 70 i+ Err bitreich.org 70 i+BIN = catpoint Err bitreich.org 70 i+all: $(BIN) Err bitreich.org 70 i+ Err bitreich.org 70 i+clean: Err bitreich.org 70 i+ rm -f $(BIN) Err bitreich.org 70 1diff --git a/README b/README /scm/catpoint/file/README.gph bitreich.org 70 i@@ -0,0 +1,10 @@ Err bitreich.org 70 i+# Synopsis Err bitreich.org 70 i+ Err bitreich.org 70 i+Catpoint is a simple viewer of text files written in curses. Err bitreich.org 70 i+Further documentation comes in a series of slides. Just do: Err bitreich.org 70 i+ Err bitreich.org 70 i+ $ make && ./catpoint showoff/*.txt Err bitreich.org 70 i+ Err bitreich.org 70 i+# Usage Err bitreich.org 70 i+ Err bitreich.org 70 i+ catpoint file ... Err bitreich.org 70 1diff --git a/catpoint.c b/catpoint.c /scm/catpoint/file/catpoint.c.gph bitreich.org 70 i@@ -0,0 +1,103 @@ Err bitreich.org 70 i+/* $Id: catpoint.c,v 1.2 2013/03/28 12:00:48 lostd Exp $ */ Err bitreich.org 70 i+ Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+main(int argc, char *argv[]) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ int c, i, fd; Err bitreich.org 70 i+ char **p; /* the slides */ Err bitreich.org 70 i+ Err bitreich.org 70 i+ if (argc == 1) Err bitreich.org 70 i+ errx(1, "usage: %s file ...", argv[0]); Err bitreich.org 70 i+ argv++; Err bitreich.org 70 i+ argc--; Err bitreich.org 70 i+ Err bitreich.org 70 i+ setlocale(LC_ALL, ""); Err bitreich.org 70 i+ Err bitreich.org 70 i+ p = calloc(argc, sizeof(char *)); Err bitreich.org 70 i+ Err bitreich.org 70 i+ /* map files to mem */ Err bitreich.org 70 i+ for (i = 0; argv[i] != NULL; i++) { Err bitreich.org 70 i+ fd = open(argv[i], O_RDONLY, 0); Err bitreich.org 70 i+ if (fd == -1) Err bitreich.org 70 i+ err(1, "open: %s", argv[i]); Err bitreich.org 70 i+ p[i] = mmap(NULL, 0x1000, PROT_READ, MAP_PRIVATE, fd, 0); Err bitreich.org 70 i+ if (p[i] == MAP_FAILED) Err bitreich.org 70 i+ err(1, "mmap"); Err bitreich.org 70 i+ close(fd); Err bitreich.org 70 i+ } Err bitreich.org 70 i+ Err bitreich.org 70 i+ /* init curses */ Err bitreich.org 70 i+ initscr(); Err bitreich.org 70 i+ cbreak(); Err bitreich.org 70 i+ noecho(); Err bitreich.org 70 i+ nonl(); Err bitreich.org 70 i+ intrflush(stdscr, FALSE); Err bitreich.org 70 i+ keypad(stdscr, TRUE); Err bitreich.org 70 i+ curs_set(FALSE); /* hide cursor */ Err bitreich.org 70 i+ Err bitreich.org 70 i+ /* start */ Err bitreich.org 70 i+ i = 0; Err bitreich.org 70 i+show: Err bitreich.org 70 i+ /* display slide */ Err bitreich.org 70 i+ clear(); Err bitreich.org 70 i+ printw("%s", p[i]); Err bitreich.org 70 i+again: Err bitreich.org 70 i+ c = getch(); Err bitreich.org 70 i+ switch (c) { Err bitreich.org 70 i+ case 'q': Err bitreich.org 70 i+ break; Err bitreich.org 70 i+ /* next */ Err bitreich.org 70 i+ case 'l': Err bitreich.org 70 i+ case 'j': Err bitreich.org 70 i+ case KEY_RIGHT: Err bitreich.org 70 i+ case KEY_DOWN: Err bitreich.org 70 i+ case KEY_NPAGE: Err bitreich.org 70 i+ if (i < argc - 1) { Err bitreich.org 70 i+ i++; Err bitreich.org 70 i+ goto show; Err bitreich.org 70 i+ } Err bitreich.org 70 i+ goto again; Err bitreich.org 70 i+ /* prev */ Err bitreich.org 70 i+ case 'h': Err bitreich.org 70 i+ case 'k': Err bitreich.org 70 i+ case KEY_LEFT: Err bitreich.org 70 i+ case KEY_UP: Err bitreich.org 70 i+ case KEY_PPAGE: Err bitreich.org 70 i+ if (i > 0) { Err bitreich.org 70 i+ i--; Err bitreich.org 70 i+ goto show; Err bitreich.org 70 i+ } Err bitreich.org 70 i+ goto again; Err bitreich.org 70 i+ /* first */ Err bitreich.org 70 i+ case 'u': Err bitreich.org 70 i+ case KEY_BEG: Err bitreich.org 70 i+ i = 0; Err bitreich.org 70 i+ goto show; Err bitreich.org 70 i+ /* last */ Err bitreich.org 70 i+ case 'i': Err bitreich.org 70 i+ case KEY_END: Err bitreich.org 70 i+ i = argc - 1; Err bitreich.org 70 i+ goto show; Err bitreich.org 70 i+ default: Err bitreich.org 70 i+ goto again; Err bitreich.org 70 i+ } Err bitreich.org 70 i+ Err bitreich.org 70 i+ /* unmap mem */ Err bitreich.org 70 i+ for (i = 0; argv[i] != NULL; i++) Err bitreich.org 70 i+ munmap(p[i], 0x1000); Err bitreich.org 70 i+ Err bitreich.org 70 i+ endwin(); /* restore terminal */ Err bitreich.org 70 i+ Err bitreich.org 70 i+ return (0); Err bitreich.org 70 i+} Err bitreich.org 70 1diff --git a/showoff/00-intro.txt b/showoff/00-intro.txt /scm/catpoint/file/showoff/00-intro.txt.gph bitreich.org 70 i@@ -0,0 +1,13 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ .----------------------------------------------------------------. Err bitreich.org 70 i+ | How to transform your presentation into pure art with catpoint | Err bitreich.org 70 i+ '----------------------------------------------------------------' Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Lazaros Koromilas Err bitreich.org 70 i+ Err bitreich.org 70 i+ http://www.2f30.org/~lostd Err bitreich.org 70 1diff --git a/showoff/01-files.txt b/showoff/01-files.txt /scm/catpoint/file/showoff/01-files.txt.gph bitreich.org 70 i@@ -0,0 +1,18 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Create the slides Err bitreich.org 70 i+ ================= Err bitreich.org 70 i+ Err bitreich.org 70 i+ o Create a text file for every slide Err bitreich.org 70 i+ Err bitreich.org 70 i+ 00-intro.txt Err bitreich.org 70 i+ 01-files.txt Err bitreich.org 70 i+ 02-config.txt Err bitreich.org 70 i+ 03-run.txt Err bitreich.org 70 i+ 04-graph.txt Err bitreich.org 70 i+ 99-end.txt Err bitreich.org 70 i+ Err bitreich.org 70 i+ o You can use banner or figlet to generate text art Err bitreich.org 70 i+ Err bitreich.org 70 i+ o You can use gnuplot to produce graphs using Err bitreich.org 70 i+ Err bitreich.org 70 i+ set term dumb Err bitreich.org 70 1diff --git a/showoff/02-config.txt b/showoff/02-config.txt /scm/catpoint/file/showoff/02-config.txt.gph bitreich.org 70 i@@ -0,0 +1,12 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Configure the environment Err bitreich.org 70 i+ ========================= Err bitreich.org 70 i+ Err bitreich.org 70 i+ o You can alter your xterm defaults by adding the Err bitreich.org 70 i+ following lines to your ~/.Xdefaults: Err bitreich.org 70 i+ Err bitreich.org 70 i+ XTerm*background: white Err bitreich.org 70 i+ XTerm*foreground: black Err bitreich.org 70 i+ XTerm*faceName: xft:Monospace:size=16 Err bitreich.org 70 i+ Err bitreich.org 70 i+ o Open an xterm and maximize its window Err bitreich.org 70 1diff --git a/showoff/03-run.txt b/showoff/03-run.txt /scm/catpoint/file/showoff/03-run.txt.gph bitreich.org 70 i@@ -0,0 +1,9 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Run the presentation Err bitreich.org 70 i+ ==================== Err bitreich.org 70 i+ Err bitreich.org 70 i+ o Go to the directory where the files live Err bitreich.org 70 i+ Err bitreich.org 70 i+ o Run catpoint with the list of files as arguments Err bitreich.org 70 i+ Err bitreich.org 70 i+ $ catpoint *.txt Err bitreich.org 70 1diff --git a/showoff/04-graph.txt b/showoff/04-graph.txt /scm/catpoint/file/showoff/04-graph.txt.gph bitreich.org 70 i@@ -0,0 +1,22 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Show graphs Err bitreich.org 70 i+ =========== Err bitreich.org 70 i+ Err bitreich.org 70 i+ +---------+---------+---------+---------+---------+---------+---------+ Err bitreich.org 70 i+ | Rate +----+ | Err bitreich.org 70 i+ | | Err bitreich.org 70 i+ 20 ++ +-+ ++ Err bitreich.org 70 i+ | +-+ | | +-+ | Err bitreich.org 70 i+ | | | | | | | | Err bitreich.org 70 i+ 15 ++ +-+ | | | | | | ++ Err bitreich.org 70 i+ | | | | | | | | | | Err bitreich.org 70 i+ | | | | | | | | | | Err bitreich.org 70 i+ 10 ++ +-+ | | | | | | | | ++ Err bitreich.org 70 i+ | | | | | | | | | | | | Err bitreich.org 70 i+ | | | | | | | | | | | | Err bitreich.org 70 i+ 5 ++ +-+ | | | | | | | | | | ++ Err bitreich.org 70 i+ | | | | | | | | | | | | | | Err bitreich.org 70 i+ | | | | | | | | | | | | | | Err bitreich.org 70 i+ 0 ++--------+---------+---------+---------+---------+---------+--------++ Err bitreich.org 70 i+ 60 128 256 512 1024 1514 Err bitreich.org 70 i+ Packet size (bytes) Err bitreich.org 70 1diff --git a/showoff/05-export.txt b/showoff/05-export.txt /scm/catpoint/file/showoff/05-export.txt.gph bitreich.org 70 i@@ -0,0 +1,8 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Exporting Err bitreich.org 70 i+ ========= Err bitreich.org 70 i+ Err bitreich.org 70 i+ o Easily create a basic Black on White PDF export like that: Err bitreich.org 70 i+ Err bitreich.org 70 i+ $ enscript *.txt -Brf "Courier16" -p - > slides.ps Err bitreich.org 70 i+ $ ps2pdf slides.ps Err bitreich.org 70 1diff --git a/showoff/99-end.txt b/showoff/99-end.txt /scm/catpoint/file/showoff/99-end.txt.gph bitreich.org 70 i@@ -0,0 +1,12 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+ EOF Err bitreich.org 70 i+ === Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ Err bitreich.org 70 i+ _____ _ _ _ Err bitreich.org 70 i+ |_ _| |__ __ _ _ __ | | _____| | Err bitreich.org 70 i+ | | | '_ \ / _` | '_ \| |/ / __| | Err bitreich.org 70 i+ | | | | | | (_| | | | | <\__ \_| Err bitreich.org 70 i+ |_| |_| |_|\__,_|_| |_|_|\_\___(_) Err bitreich.org 70 .