Trevor Slocum
29170b8453
This controls whether color tags should render as the specific colors defined by tcell, or as the colors defined by the user's terminal configuration (the default). Relates to #48. |
||
---|---|---|
demos | ||
.gitignore | ||
CHANGELOG | ||
CONTRIBUTING.md | ||
DESIGN.md | ||
FORK.md | ||
LICENSE | ||
Makefile | ||
README.md | ||
ansi.go | ||
application.go | ||
borders.go | ||
box.go | ||
box_test.go | ||
button.go | ||
button_test.go | ||
checkbox.go | ||
checkbox_test.go | ||
contextmenu.go | ||
cview.svg | ||
doc.go | ||
doc_test.go | ||
dropdown.go | ||
flex.go | ||
focus.go | ||
form.go | ||
frame.go | ||
go.mod | ||
go.sum | ||
grid.go | ||
inputfield.go | ||
keys.go | ||
list.go | ||
list_test.go | ||
modal.go | ||
mouse.go | ||
panels.go | ||
primitive.go | ||
progressbar.go | ||
progressbar_test.go | ||
semigraphics.go | ||
slider.go | ||
styles.go | ||
tabbedpanels.go | ||
table.go | ||
table_test.go | ||
textview.go | ||
textview_test.go | ||
treeview.go | ||
treeview_test.go | ||
util.go | ||
util_test.go | ||
window.go | ||
windowmanager.go |
README.md
cview - Terminal-based user interface toolkit
This package is a fork of tview. See FORK.md for more information.
Demo
ssh cview.rocketnine.space -p 20000
Features
Available widgets:
- Input forms (including input/password fields, drop-down selections, checkboxes, and buttons)
- Navigable multi-color text views
- Selectable lists with context menus
- Modal dialogs
- Horizontal and vertical progress bars
- Grid, Flexbox and tabbed panel layouts
- Sophisticated navigable table views
- Flexible tree views
- Draggable and resizable windows
- An application wrapper
Widgets may be customized and extended to suit any application.
Mouse support is available.
Applications
A list of applications powered by cview is available via pkg.go.dev.
Installation
go get code.rocketnine.space/tslocum/cview
Hello World
This basic example creates a TextView titled "Hello, World!" and displays it in your terminal:
package main
import (
"code.rocketnine.space/tslocum/cview"
)
func main() {
app := cview.NewApplication()
box := cview.NewTextView()
box.SetBorder(true)
box.SetTitle("Hello, world!")
box.SetText("Lorem ipsum dolor sit amet")
app.SetRoot(box, true)
if err := app.Run(); err != nil {
panic(err)
}
}
Examples are available via godoc and in the demos subdirectory.
For a presentation highlighting the features of this package, compile and run the program in the demos/presentation subdirectory.
Documentation
Package documentation is available via godoc.
An introduction tutorial is also available.
Dependencies
This package is based on github.com/gdamore/tcell (and its dependencies) and github.com/rivo/uniseg.
Support
CONTRIBUTING.md describes how to share issues, suggestions and patches (pull requests).