# | extended terminal format | [![Go version](https://img.shields.io/badge/go_version-1.11-blue.svg)](https://golang.org/doc/go1.11) [![Go Report Card](https://goreportcard.com/badge/git.xdrm.io/go/clifmt)](https://goreportcard.com/report/git.xdrm.io/go/clifmt) [![Go doc](https://godoc.org/git.xdrm.io/go/clifmt?status.svg)](https://godoc.org/git.xdrm.io/go/clifmt) Simple utility written in `go` that extends the standard `fmt.Sprintf` and `fmt.Printf` functions. It allows you to set foreground/background color, **bold**, underlined and _italic_ text. - [(1) Format](#1-format) - [[Colorization]](#colorization) - [Base format](#base-format) - [Example](#example) - [Foreground only](#foreground-only) - [Example](#example-1) - [Background only](#background-only) - [Example](#example-2) - [[Markdown-like format]](#markdown-like-format) - [Bold format](#bold-format) - [Example](#example-3) - [Italic format](#italic-format) - [Example](#example-4) - [Underline format](#underline-format) - [Example](#example-5) - [(2) Screenshot](#2-screenshot) - [Colorizing format example :](#colorizing-format-example-) - [Markdown-like format example](#markdown-like-format-example) - [(3) Incoming features](#3-incoming-features) ---- ## (1) Format ### [Colorization] #### Base format ```go ${}(:) ``` - `` is the text that will be colorized. - `` is the name of the foreground color (*c.f. [color list](https://git.xdrm.io/go/clifmt/src/master/colors.go#L15)*), or an hex color (*e.g.`#00ffaa`, `#0fa`*). - `` is the name of the background color with the same syntax as for the foreground. ###### Example ```go clifmt.Printf("normal text ${red text over black}(red:#000) normal text") ``` > Note that it is not recommended to nest the different coloring formats. #### Foreground only ```go ${}() ``` - `` is the text that will be colorized. - `` is the name of the foreground color. ###### Example ```go clifmt.Printf("normal text ${red text}(red) normal text") ``` #### Background only ```go ${}(:) ``` - `` is the text that will be colorized. - `` is the name of the background color. ###### Example ```go clifmt.Printf("normal text ${text over red}(#ff0000) normal text") ``` ### [Markdown-like format] #### Bold format ```go **** ``` - `` is the text that will be bold. ###### Example ```go clifmt.Printf("normal text **bold text** normal text") ``` #### Italic format ```go ** ``` - `` is the text that will be italic. ###### Example ```go clifmt.Printf("normal text *italic text* normal text") ``` #### Underline format ```go __ ``` - `` is the text that will be underlined. ###### Example ```go clifmt.Printf("normal text _underline text_ normal text") ``` ---- ## (2) Screenshot ###### Colorizing format example : ![colorizing example](https://0x0.st/sCPc.png) ###### Markdown-like format example ![markdown-like example](https://0x0.st/sC9F.png) ---- ## (3) Incoming features - [x] **markdown-like formatting** - bold, italic, underlined, (strike-through?) - [ ] **global alignment** - align text dynamically - [ ] **progress-line** - redrawing format to show, for instance an animated progress bar on the same line