Skip to content

rthornton128/goncurses

Folders and files

NameName
Last commit message
Last commit date

Latest commit

da6485a · Aug 4, 2024
Nov 22, 2021
Dec 4, 2013
Nov 9, 2012
Mar 2, 2021
Oct 14, 2023
May 7, 2018
Apr 21, 2017
Jun 28, 2022
Sep 12, 2020
Apr 21, 2017
Mar 2, 2021
Aug 4, 2024
May 14, 2018
Sep 12, 2020
Apr 7, 2016
Feb 26, 2020
Mar 2, 2021
Sep 8, 2021
Mar 30, 2015
Apr 21, 2017
Apr 21, 2017
Apr 21, 2017
Apr 21, 2017

Repository files navigation

Overview

Goncurses is an ncurses library for the Go programming language. It requires both pkg-config and ncurses C development files be installed.

Installation

The go tool is the recommended method of installing goncurses. Issue the following command on the command line:

$ go get github.com/rthornton128/goncurses

Prerequisites

The ncurses C development library must be installed on your system in order to build and install Goncurses. For example, on Debian based systems you can run:

$ sudo apt install libncurses-dev

OSX and Windows users should visit the Wiki for installation instructions.

Pkg-config Flags Error

Cgo will fail to build with an invalid or unknown flag error with recent versions of ncurses. Unfortunately, the cgo tool only provides one mechanism for overcoming this. You need to set *_ALLOW environment variables to overcome the issue. There are no cgo directives or any other clever ways (that I know of) to fix this.

This package provides a Makefile as one solution. Another would be to set the variables in your shell in whatever way makes you feel comfortable.

See Issues: #55 and #56

Notes

No functions which operate only on stdscr have been implemented because it makes little sense to do so in a Go implementation. Stdscr is treated the same as any other window.

Whenever possible, versions of ncurses functions which could potentially have a buffer overflow, like the getstr() family of functions, have not been implemented. Instead, only mvwgetnstr() and wgetnstr() are used.