diff options
author | Indrajith K L | 2022-12-03 17:00:20 +0530 |
---|---|---|
committer | Indrajith K L | 2022-12-03 17:00:20 +0530 |
commit | f5c4671bfbad96bf346bd7e9a21fc4317b4959df (patch) | |
tree | 2764fc62da58f2ba8da7ed341643fc359873142f /v_windows/v/vlib/term/README.md | |
download | cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.tar.gz cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.tar.bz2 cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.zip |
Diffstat (limited to 'v_windows/v/vlib/term/README.md')
-rw-r--r-- | v_windows/v/vlib/term/README.md | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/v_windows/v/vlib/term/README.md b/v_windows/v/vlib/term/README.md new file mode 100644 index 0000000..f9fcb9e --- /dev/null +++ b/v_windows/v/vlib/term/README.md @@ -0,0 +1,85 @@ +# Quickstart + +The V `term` module is a module designed to provide the building blocks +for building very simple TUI apps. +For more complex apps, you should really look at the `term.input` module, +as it includes terminal events, is easier to use and is much more performant for large draws. + +# Use + +You can use the `term` module to either color the output on a terminal +or to decide on where to put the output in your terminal. + +For example let's make a simple program which prints colored text in the middle of the terminal. + +```v +import term +import os + +fn main() { + term.clear() // clears the content in the terminal + width, height := term.get_terminal_size() // get the size of the terminal + term.set_cursor_position(x: width / 2, y: height / 2) // now we point the cursor to the middle of the terminal + println(term.strikethrough(term.bright_green('hello world'))) // Print green text + term.set_cursor_position(x: 0, y: height) // Sets the position of the cursor to the bottom of the terminal + // Keep prompting until the user presses the q key + for { + if var := os.input_opt('press q to quit: ') { + if var != 'q' { + continue + } + break + } + println('') + break + } + println('Goodbye.') +} +``` + +This simple program covers many of the principal aspects of the `term ` module. + +# API + +Here are some functions you should be aware of in the `term `module: + +```v oksyntax +import term + +// returns the height and the width of the terminal +width, height := term.get_terminal_size() +// returns the string as green text to be printed on stdout +term.ok_message('cool') +// returns the string as red text to be printed on stdout +term.fail_message('oh, no') +// returns the string as yellow text to be printed on stdout +term.warning_message('be warned') +// clears the entire terminal and leaves a blank one +term.clear() +// colors the output of the output, the available colors are: +// black,blue,yellow,green,cyan,gray,bright_blue,bright_green,bright_red,bright_black,bright_cyan +term.yellow('submarine') +// transforms the given string into bold text +term.bold('and beautiful') +// puts a strikethrough into the given string +term.strikethrough('the core of the problem') +// underlines the given string +term.underline('important') +// colors the background of the output following the given color +// the available colors are: black, blue, yellow, green, cyan, gray +term.bg_green('field') +// sets the position of the cursor at a given place in the terminal +term.set_cursor_position(x: 5, y: 10) +// moves the cursor up +term.cursor_up() +// moves the cursor down +term.cursor_down() +// moves the cursor to the right +term.cursor_forward() +// moves the cursor to the left +term.cursor_back() +// shows the cursor +term.show_cursor() +// hides the cursor +term.hide_cursor() +``` |