Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
_demos/ | H | 29-Dec-2019 | - | 1,645 | 1,483 | |
AUTHORS | H A D | 29-Dec-2019 | 101 | 5 | 3 | |
LICENSE | H A D | 29-Dec-2019 | 1 KiB | 20 | 16 | |
README.md | H A D | 29-Dec-2019 | 4.6 KiB | 51 | 43 | |
api.go | H A D | 29-Dec-2019 | 12.9 KiB | 501 | 336 | |
api_common.go | H A D | 29-Dec-2019 | 4.3 KiB | 188 | 150 | |
api_windows.go | H A D | 29-Dec-2019 | 6.3 KiB | 258 | 171 | |
collect_terminfo.py | H A D | 29-Dec-2019 | 2 KiB | 111 | 94 | |
escwait.go | H A D | 29-Dec-2019 | 373 | 12 | 4 | |
escwait_darwin.go | H A D | 29-Dec-2019 | 329 | 10 | 4 | |
syscalls.go | H A D | 29-Dec-2019 | 773 | 40 | 26 | |
syscalls_darwin.go | H A D | 29-Dec-2019 | 753 | 42 | 33 | |
syscalls_darwin_amd64.go | H A D | 29-Dec-2019 | 775 | 41 | 34 | |
syscalls_dragonfly.go | H A D | 29-Dec-2019 | 735 | 40 | 33 | |
syscalls_freebsd.go | H A D | 29-Dec-2019 | 735 | 40 | 33 | |
syscalls_linux.go | H A D | 29-Dec-2019 | 828 | 34 | 26 | |
syscalls_netbsd.go | H A D | 29-Dec-2019 | 733 | 40 | 33 | |
syscalls_openbsd.go | H A D | 29-Dec-2019 | 733 | 40 | 33 | |
syscalls_windows.go | H A D | 29-Dec-2019 | 1.5 KiB | 62 | 54 | |
termbox.go | H A D | 29-Dec-2019 | 11.3 KiB | 530 | 434 | |
termbox_common.go | H A D | 29-Dec-2019 | 994 | 60 | 46 | |
termbox_windows.go | H A D | 29-Dec-2019 | 21.9 KiB | 949 | 863 | |
terminfo.go | H A D | 29-Dec-2019 | 5.6 KiB | 233 | 172 | |
terminfo_builtin.go | H A D | 29-Dec-2019 | 3.3 KiB | 65 | 49 |
README.md
1[![GoDoc](https://godoc.org/github.com/nsf/termbox-go?status.svg)](http://godoc.org/github.com/nsf/termbox-go) 2 3## IMPORTANT 4 5This library is somewhat not maintained anymore. But I'm glad that it did what I wanted the most. It moved people away from "ncurses" mindset and these days we see both re-implementations of termbox API in various languages and even possibly better libs with similar API design. If you're looking for a Go lib that provides terminal-based user interface facilities, I've heard that https://github.com/gdamore/tcell is good (never used it myself). Also for more complicated interfaces and/or computer games I recommend you to consider using HTML-based UI. Having said that, termbox still somewhat works. In fact I'm writing this line of text right now in godit (which is a text editor written using termbox-go). So, be aware. Good luck and have a nice day. 6 7## Termbox 8Termbox is a library that provides a minimalistic API which allows the programmer to write text-based user interfaces. The library is crossplatform and has both terminal-based implementations on *nix operating systems and a winapi console based implementation for windows operating systems. The basic idea is an abstraction of the greatest common subset of features available on all major terminals and other terminal-like APIs in a minimalistic fashion. Small API means it is easy to implement, test, maintain and learn it, that's what makes the termbox a distinct library in its area. 9 10### Installation 11Install and update this go package with `go get -u github.com/nsf/termbox-go` 12 13### Examples 14For examples of what can be done take a look at demos in the _demos directory. You can try them with go run: `go run _demos/keyboard.go` 15 16There are also some interesting projects using termbox-go: 17 - [godit](https://github.com/nsf/godit) is an emacsish lightweight text editor written using termbox. 18 - [gotetris](https://github.com/jjinux/gotetris) is an implementation of Tetris. 19 - [sokoban-go](https://github.com/rn2dy/sokoban-go) is an implementation of sokoban game. 20 - [hecate](https://github.com/evanmiller/hecate) is a hex editor designed by Satan. 21 - [httopd](https://github.com/verdverm/httopd) is top for httpd logs. 22 - [mop](https://github.com/mop-tracker/mop) is stock market tracker for hackers. 23 - [termui](https://github.com/gizak/termui) is a terminal dashboard. 24 - [termdash](https://github.com/mum4k/termdash) is a terminal dashboard. 25 - [termloop](https://github.com/JoelOtter/termloop) is a terminal game engine. 26 - [xterm-color-chart](https://github.com/kutuluk/xterm-color-chart) is a XTerm 256 color chart. 27 - [gocui](https://github.com/jroimartin/gocui) is a minimalist Go library aimed at creating console user interfaces. 28 - [dry](https://github.com/moncho/dry) is an interactive cli to manage Docker containers. 29 - [pxl](https://github.com/ichinaski/pxl) displays images in the terminal. 30 - [snake-game](https://github.com/DyegoCosta/snake-game) is an implementation of the Snake game. 31 - [gone](https://github.com/guillaumebreton/gone) is a CLI pomodoro® timer. 32 - [Spoof.go](https://github.com/sabey/spoofgo) controllable movement spoofing from the cli 33 - [lf](https://github.com/gokcehan/lf) is a terminal file manager 34 - [rat](https://github.com/ericfreese/rat) lets you compose shell commands to build terminal applications. 35 - [httplab](https://github.com/gchaincl/httplab) An interactive web server. 36 - [tetris](https://github.com/MichaelS11/tetris) Go Tetris with AI option 37 - [wot](https://github.com/kyu-suke/wot) Wait time during command is completed. 38 - [2048-go](https://github.com/1984weed/2048-go) is 2048 in Go 39 - [jv](https://github.com/maxzender/jv) helps you view JSON on the command-line. 40 - [pinger](https://github.com/hirose31/pinger) helps you to monitor numerous hosts using ICMP ECHO_REQUEST. 41 - [vixl44](https://github.com/sebashwa/vixl44) lets you create pixel art inside your terminal using vim movements 42 - [zterm](https://github.com/varunrau/zterm) is a typing game inspired by http://zty.pe/ 43 - [gotypist](https://github.com/pb-/gotypist) is a fun touch-typing tutor following Steve Yegge's method. 44 - [cointop](https://github.com/miguelmota/cointop) is an interactive terminal based UI application for tracking cryptocurrencies. 45 - [pexpo](https://github.com/nnao45/pexpo) is a terminal sending ping tool written in Go. 46 - [jid](https://github.com/simeji/jid) is an interactive JSON drill down tool using filtering queries like jq. 47 - [nonograminGo](https://github.com/N0RM4L15T/nonograminGo) is a nonogram(aka. picross) in Go 48 49### API reference 50[godoc.org/github.com/nsf/termbox-go](http://godoc.org/github.com/nsf/termbox-go) 51