BearLibTerminal-Nim
This is a port of BearLibTerminal to Nim.
Installation
- Download the shared library binary from the BearLibTerminal web site.
nimble install bearlibterminal
- Make sure the shared library is somewhere it can be found. For development, this would typically be the working directory of your program when it runs.
Usage
All functions are identical to the C versions, except:
-
int
is aliased toBLInt
-
uint32
is aliased toBLColor
-
x, y, w, h
is passed as a singleBLRect
-
x, y
is passed as a singleBLPoint
-
w, h
is passed as a singleBLSize
- Return values of
TK_ON
/TK_OFF
are converted tobool
- Functions requiring mutable pointers for multiple return values are wrapped to return appropriate types (
string
,BLSize
)
The library also includes some bonus functions to save you some unsafe bit casts:
proc terminalGetCurrentLayer*(): BLInt = terminalState(TK_LAYER)
proc terminalGetCurrentColor*(): BLColor = cast[BLColor](terminalState(TK_COLOR))
proc terminalGetCurrentBackgroundColor*(): BLColor = cast[BLColor](terminalState(TK_BKCOLOR))
proc terminalGetIsCompositionEnabled*(): bool = terminalCheck(TK_COMPOSITION)