Documentation
¶
Overview ¶
Package oviewer provides a pager for terminals.
oviewer displays the contents of the file or reader etc... on the current terminal screen. After running a Run, oviewer does not return until the user finishes running. So if you want to do something in concurrent, you need to use goroutine.
There is also a simple usage example below: https://github.com/noborus/mdviewer/
package main
import (
"github.com/noborus/ov/oviewer"
)
func main() {
ov, err := oviewer.Open("main.go")
if err != nil {
panic(err)
}
if err := ov.Run(); err != nil {
panic(err)
}
}
Index ¶
- Constants
- Variables
- func ContentsToStr(lc contents) (string, widthPos)
- func DuplicateKeyBind(k KeyBind) string
- func KeyBindString(k KeyBind) string
- func ListViewMode(config Config) []string
- func NewChunk(start int64) *chunk
- func NewStore() *store
- func RangeStyle(lc contents, start int, end int, s OVStyle)
- func RawStrToContents(str string, tabWidth int) contents
- func SetShrinkContent(shrink string)
- func SetTcellNewScreen(f func() (tcell.Screen, error))
- func StrToContents(str string, tabWidth int) contents
- func ToTcellStyle(s OVStyle) tcell.Style
- type ClickState
- type ClickType
- type Command
- type Compressed
- type Config
- type Converter
- type Document
- func (m *Document) BackSearch(ctx context.Context, searcher Searcher, chunkNum int, line int) (int, error)
- func (m *Document) BackSearchChunk(ctx context.Context, searcher Searcher, chunkNum int, line int) (int, error)
- func (m *Document) BackSearchChunkNonMatch(ctx context.Context, searcher Searcher, chunkNum int, line int) (int, error)
- func (m *Document) BackSearchLine(ctx context.Context, searcher Searcher, lineNum int) (int, error)
- func (m *Document) BufEOF() bool
- func (m *Document) BufEndNum() int
- func (m *Document) BufStartNum() int
- func (m *Document) ClearCache()
- func (m *Document) ControlFile(file *os.File) error
- func (m *Document) ControlLog() error
- func (m *Document) ControlReader(r io.Reader, reload func() *bufio.Reader) error
- func (m *Document) CurrentLN() int
- func (m *Document) Export(w io.Writer, start int, end int) error
- func (m *Document) ExportPlain(w io.Writer, start int, end int) error
- func (m *Document) GetLine(n int) stringdeprecated
- func (m *Document) Line(n int) ([]byte, error)
- func (m *Document) LineStr(n int) (string, error)
- func (m *Document) LineString(n int) stringdeprecated
- func (m *Document) NewCache() error
- func (m *Document) Search(ctx context.Context, searcher Searcher, chunkNum int, lineNum int) (int, error)
- func (m *Document) SearchChunk(ctx context.Context, searcher Searcher, chunkNum int, lineNum int) (int, error)
- func (m *Document) SearchChunkNonMatch(ctx context.Context, searcher Searcher, chunkNum int, lineNum int) (int, error)
- func (m *Document) SearchLine(ctx context.Context, searcher Searcher, lineNum int) (int, error)
- func (m *Document) WaitEOF()
- func (m *Document) WaitEOFWithTimeout(timeout time.Duration)
- type Eventer
- type General
- func (g *General) SetAlign(align bool)
- func (g *General) SetAlternateRows(alternate bool)
- func (g *General) SetCaption(caption string)
- func (g *General) SetColumnDelimiter(delim string)
- func (g *General) SetColumnMode(mode bool)
- func (g *General) SetColumnRainbow(rainbow bool)
- func (g *General) SetColumnWidth(width bool)
- func (g *General) SetConverter(converter string)
- func (g *General) SetFollowAll(followAll bool)
- func (g *General) SetFollowMode(follow bool)
- func (g *General) SetFollowName(followName bool)
- func (g *General) SetFollowSection(followSection bool)
- func (g *General) SetHScrollWidth(width string)
- func (g *General) SetHScrollWidthNum(num int)
- func (g *General) SetHeader(header int)
- func (g *General) SetHeaderColumn(headerColumn int)
- func (g *General) SetHideOtherSection(hide bool)
- func (g *General) SetJumpTarget(target string)
- func (g *General) SetLineNumMode(lineNum bool)
- func (g *General) SetMarkStyleWidth(width int)
- func (g *General) SetMultiColorWords(words []string)
- func (g *General) SetPlainMode(plain bool)
- func (g *General) SetRaw(raw bool)
- func (g *General) SetRulerType(rtype RulerType)
- func (g *General) SetSectionDelimiter(delim string)
- func (g *General) SetSectionHeader(sectionHeader bool)
- func (g *General) SetSectionHeaderNum(num int)
- func (g *General) SetSectionStartPosition(pos int)
- func (g *General) SetSkipLines(skipLines int)
- func (g *General) SetStatusLine(status bool)
- func (g *General) SetTabWidth(tabWidth int)
- func (g *General) SetVScrollLines(num int)
- func (g *General) SetVerticalHeader(verticalHeader int)
- func (g *General) SetWatchInterval(interval int)
- func (g *General) SetWrapMode(wrap bool)
- type Group
- type Input
- type InputMode
- type KeyBind
- type KeyBindDescription
- type LineC
- type LineNumber
- type LogDocument
- type MatchedLine
- type MatchedLineList
- type MouseSelectState
- type OVPromptConfig
- type OVPromptConfigInput
- type OVPromptConfigNormal
- type OVStyle
- type PromptConfig
- type PromptConfigInput
- type PromptConfigNormal
- type Root
- func (root *Root) AddDocument(m *Document)
- func (root *Root) BackSearch(str string)
- func (root *Root) Cancel(context.Context)
- func (root *Root) Close()
- func (root *Root) CloseAllFilter()
- func (root *Root) CloseDocument(_ *Document)
- func (root *Root) CopySelect(context.Context)
- func (root *Root) DocumentLen() int
- func (root *Root) ExpandColumn(_ context.Context, cursor int) error
- func (root *Root) Filter(str string, nonMatch bool)
- func (root *Root) MoveBottom()
- func (root *Root) MoveLine(num int)
- func (root *Root) MoveTop()
- func (root *Root) OutputOnExit()
- func (root *Root) Paste(context.Context)
- func (root *Root) Quit(context.Context)
- func (root *Root) Reload(context.Context)
- func (root *Root) Run() error
- func (root *Root) ScreenContent() []string
- func (root *Root) Search(str string)
- func (root *Root) SetConfig(config Config)
- func (root *Root) SetDocument(docNum int) error
- func (root *Root) SetKeyHandler(ctx context.Context, name string, keys []string, handler func(context.Context)) error
- func (root *Root) SetWatcher(watcher *fsnotify.Watcher)
- func (root *Root) ShrinkColumn(_ context.Context, cursor int) error
- func (root *Root) StrLeftStatus(numVisible bool) string
- func (root *Root) Suspend()
- func (root *Root) TailSync(ctx context.Context)
- func (root *Root) ViewSync(context.Context)
- func (root *Root) WriteCurrentScreen()
- func (root *Root) WriteLog()
- func (root *Root) WriteOriginal()
- func (root *Root) WriteQuit(ctx context.Context)
- type RulerType
- type RunTimeSettings
- type SCR
- type Searcher
- type SidebarItem
- type SidebarMode
- type Style
- type StyleConfig
Examples ¶
Constants ¶
const ( // Unspecified is the default alignment. Unspecified specifiedAlign = iota // RightAlign is the right alignment. RightAlign // LeftAlign is the left alignment. LeftAlign )
const ( // Colors256 is the index of the 256 color. 8-bit colors. 0-255. Colors256 = 5 // ColorsRGB is the index of the RGB color. 24-bit colors. r:0-255 g:0-255 b:0-255. ColorsRGB = 2 )
const ( DocNormal = iota DocHelp DocLog DocFilter )
document type.
const ( COLS = 80 ROWS = 24 )
virtual terminal size.
const DefaultStatusLine = 1
DefaultStatusLine is the number of lines in the status line.
const EOFC string = "~"
EOFC is the EOF character.
const FormFeed = "\f"
FormFeed is the delimiter that separates the sections. The default delimiter that separates single output from watch.
const MaxWriteLog int = 10
MaxWriteLog is the maximum number of lines to output to the log when the debug flag is enabled.
const MinStartX = -10
MinStartX is the minimum start position of x.
const MouseFlags = tcell.MouseDragEvents
MouseFlags represents which events of the mouse should be captured. Set the mode to MouseDragEvents when the mouse is enabled in oviewer. Does not track mouse movements except when dragging.
const QuitSmallCountDown = 10
QuitSmallCountDown is the countdown to quit if the output fits on one screen. UpdateInterval(50 * time.Millisecond) * 10 = 500ms.
Variables ¶
var ( ClickInterval = 500 * time.Millisecond // Double/triple click detection time ClickDistance = 2 // Maximum allowed movement distance (in screen coordinates/cells) for double/triple click detection )
var ( // MemoryLimit is a number that limits the chunks to load into memory. MemoryLimit int // MemoryLimitFile is a number that limits the chunks loading a file into memory. MemoryLimitFile int // OverStrikeStyle represents the overstrike style. OverStrikeStyle tcell.Style // OverLineStyle represents the overline underline style. OverLineStyle tcell.Style // SkipExtract is a flag to skip extracting compressed files. SkipExtract bool )
var ( // Redirect to standard output. // echo "t" | ov> out STDOUTPIPE *os.File // Redirects the error output of ov --exec. // ov --exec -- command 2> out STDERRPIPE *os.File )
ov output destination.
var ( // ErrOutOfRange indicates that value is out of range. ErrOutOfRange = errors.New("value out of range") // ErrNotInMemory indicates that value is not in memory. ErrNotInMemory = errors.New("value not in memory") // ErrFatalCache indicates that the cache value had a fatal error. ErrFatalCache = errors.New("fatal cache error") // ErrMissingFile indicates that the file does not exist. ErrMissingFile = errors.New("missing file") // ErrIsDirectory indicates that specify a directory instead of a file. ErrIsDirectory = errors.New("is a directory") // ErrNotFound indicates not found. ErrNotFound = errors.New("not found") // ErrNotTerminal indicates that it is not a terminal. ErrNotTerminal = errors.New("not a terminal") // ErrCancel indicates cancel. ErrCancel = errors.New("cancel") // ErrInvalidNumber indicates an invalid number. ErrInvalidNumber = errors.New("invalid number") // ErrFailedKeyBind indicates keybinding failed. ErrFailedKeyBind = errors.New("failed to set key bindings") // ErrSignalCatch indicates that the signal has been caught. ErrSignalCatch = errors.New("signal caught") // ErrAlreadyClose indicates that it is already closed. ErrAlreadyClose = errors.New("already closed") // ErrCannotClose indicates that it cannot be closed. ErrCannotClose = errors.New("cannot be closed") // ErrRequestClose indicates that the request is to close. ErrRequestClose = errors.New("close requested") // ErrNoColumn indicates that cursor specified a nonexistent column. ErrNoColumn = errors.New("column not found") // ErrNoDelimiter indicates that the line containing the delimiter could not be found. ErrNoDelimiter = errors.New("delimiter not found") // ErrNoMoreSection indicates that the section could not be found. ErrNoMoreSection = errors.New("no more sections") // ErrOverScreen indicates that the specified screen is out of range. ErrOverScreen = errors.New("screen position out of range") // ErrOutOfChunk indicates that the specified Chunk is out of range. ErrOutOfChunk = errors.New("chunk out of range") // ErrNotLoaded indicates that it cannot be loaded. ErrNotLoaded = errors.New("not loaded") // ErrEOFreached indicates that EOF has been reached. ErrEOFreached = errors.New("EOF reached") // ErrPreventReload indicates that reload is prevented. ErrPreventReload = errors.New("reload prevented") // ErrOverChunkLimit indicates that the chunk limit has been exceeded. ErrOverChunkLimit = errors.New("chunk limit exceeded") // ErrAlreadyLoaded indicates that the chunk already loaded. ErrAlreadyLoaded = errors.New("chunk already loaded") // ErrEvictedMemory indicates that it has been evicted from memory. ErrEvictedMemory = errors.New("evicted from memory") // ErrNotAlignMode indicates that it is not an align mode. ErrNotAlignMode = errors.New("not in align mode") // ErrNoColumnSelected indicates that no column is selected. ErrNoColumnSelected = errors.New("no column selected") // ErrInvalidSGR indicates that the SGR is invalid. ErrInvalidSGR = errors.New("invalid SGR") // ErrNotSupport indicates that it is not supported. ErrNotSupport = errors.New("not supported") // ErrInvalidDocumentNum indicates that the document number is invalid. ErrInvalidDocumentNum = errors.New("invalid document number") // ErrInvalidModeName indicates that the specified view mode was not found. ErrInvalidModeName = errors.New("view mode not found") // ErrInvalidRGBColor indicates that the RGB color is invalid. ErrInvalidRGBColor = errors.New("invalid RGB color") // ErrInvalidKey indicates that the key format is invalid. ErrInvalidKey = errors.New("invalid key format") )
var ChunkSize = 10000
ChunkSize is the unit of number of lines to split the file.
var DefaultContent = content{ // contains filtered or unexported fields }
DefaultContent is a blank Content.
var DefaultEditor string
DefaultEditor is the fallback editor to use if no other editor is specified.
var EOFContent = content{ // contains filtered or unexported fields }
EOFContent is EOFC only.
var Shrink string = "…"
Shrink is a character that represents a shrunk column.
var ShrinkContent = content{ // contains filtered or unexported fields }
ShrinkContent is a content that represents a shrunk column.
var SpaceContent = content{ // contains filtered or unexported fields }
SpaceContent is a space character.
var UpdateInterval = 50 * time.Millisecond
UpdateInterval is the update interval that calls eventUpdate().
Functions ¶
func ContentsToStr ¶ added in v0.9.5
func ContentsToStr(lc contents) (string, widthPos)
ContentsToStr returns a converted string and byte position, as well as the content position conversion table.
func DuplicateKeyBind ¶ added in v0.39.0
DuplicateKeyBind returns a string representing duplicate key bindings.
func KeyBindString ¶
KeyBindString returns keybind as a string for help.
func ListViewMode ¶ added in v0.40.0
ListViewMode returns the list of view modes.
func RangeStyle ¶ added in v0.9.0
RangeStyle applies the style to the specified range. Apply style to contents.
func RawStrToContents ¶ added in v0.37.0
RawStrToContents converts a single-line string into a one line of contents. Does not interpret escape sequences. 1 Content matches the characters displayed on the screen.
func SetShrinkContent ¶ added in v0.37.0
func SetShrinkContent(shrink string)
SetShrinkContent sets the shrink character.
func SetTcellNewScreen ¶ added in v0.43.0
SetTcellNewScreen sets the function to create a new tcell screen. This is used for testing purposes to replace the tcell.NewScreen function. It allows for mocking the screen creation in tests.
func StrToContents ¶ added in v0.9.5
StrToContents converts a single-line string into a one line of contents. Parse escape sequences, etc. 1 Content matches the characters displayed on the screen.
func ToTcellStyle ¶ added in v0.10.0
ToTcellStyle convert from OVStyle to tcell style.
Types ¶
type ClickState ¶ added in v0.44.0
type ClickState struct {
// contains filtered or unexported fields
}
ClickState holds the state for click detection.
type Command ¶ added in v0.20.0
type Command struct {
// contains filtered or unexported fields
}
Command is the structure of the command.
func NewCommand ¶ added in v0.20.0
NewCommand return the structure of Command.
type Compressed ¶ added in v0.8.9
type Compressed int
Compressed represents the type of compression.
const ( // UNCOMPRESSED is an uncompressed format. UNCOMPRESSED Compressed = iota // GZIP is gzip compressed format. GZIP // BZIP2 is bzip2 compressed format. BZIP2 // ZSTD is zstd compressed format. ZSTD // LZ4 is lz4 compressed format. LZ4 // XZ is xz compressed format. XZ )
func (Compressed) String ¶ added in v0.8.9
func (c Compressed) String() string
String returns the string representation of the compressed format.
type Config ¶
type Config struct {
// KeyBinding
Keybind map[string][]string
// Mode represents the operation of the customized mode.
Mode map[string]General
// ViewMode represents the view mode.
// ViewMode sets several settings together and can be easily switched.
ViewMode string
// Default keybindings. Disabled if the default keybinding is "disable".
DefaultKeyBind string
// Prompt is the prompt setting.
Prompt PromptConfig
// MinStartX is the minimum value of the start position.
MinStartX int
// SidebarMode represents the sidebar mode.
SidebarMode string
// SidebarWidth is the width of the sidebar as a string (e.g., "30%", "10").
SidebarWidth string
// StyleOverStrike is a style that applies to overstrike.
StyleOverStrike OVStyle
// StyleOverLine is a style that applies to overstrike underlines.
StyleOverLine OVStyle
// GeneralConfig is the general setting.
General General
// helpConfig is the help setting.
HelpDoc General
// LogConfig is the log setting.
LogDoc General
// BeforeWriteOriginal specifies the number of lines before the current position.
// 0 is the top of the current screen
BeforeWriteOriginal int
// AfterWriteOriginal specifies the number of lines after the current position.
// 0 specifies the bottom of the screen.
AfterWriteOriginal int
// MemoryLimit is a number that limits chunk loading.
MemoryLimit int
// MemoryLimitFile is a number that limits the chunks loading a file into memory.
MemoryLimitFile int
// DisableMouse indicates whether mouse support is disabled.
DisableMouse bool
// IsWriteOnExit indicates whether to write the current screen on exit.
IsWriteOnExit bool
// IsWriteOriginal indicates whether the current screen should be written on quit.
IsWriteOriginal bool
// QuitSmall indicates whether to quit if the output fits on one screen.
QuitSmall bool
// QuitSmallFilter indicates whether to quit if the output fits on one screen and a filter is applied.
QuitSmallFilter bool
// CaseSensitive is case-sensitive if true.
CaseSensitive bool
// SmartCaseSensitive indicates whether lowercase search should ignore case.
SmartCaseSensitive bool
// RegexpSearch indicates whether to use regular expression search.
RegexpSearch bool
// Incsearch indicates whether to use incremental search.
Incsearch bool
// NotifyEOF specifies the number of times to notify EOF.
NotifyEOF int
// ReadWaitTime is the time to wait for reading before starting a search.
ReadWaitTime time.Duration
// ClipboardMethod specifies the method to use for copying to the clipboard.
// Supported values:
// - "OSC52": Uses the OSC52 escape sequence for clipboard operations. This requires terminal support.
// - "default": Uses the default clipboard method provided by the system or application.
// In fact, all other settings are default except for OSC52. In the future, “auto” will be added.
ClipboardMethod string
// Editor is the editor command to use for editing files.
Editor string
// ShrinkChar specifies the character to display when the column is shrunk.
ShrinkChar string
// DisableColumnCycle indicates whether to disable column cycling.
DisableColumnCycle bool
// DisableStickYFollow indicates whether to disable sticky follow mode.
DisableStickyFollow bool
// SetTerminalTitle indicates whether to set the terminal title to display filename.
SetTerminalTitle bool
// Debug indicates whether to enable debug output.
Debug bool
// contains filtered or unexported fields
}
Config represents the settings of ov.
type Converter ¶ added in v0.37.0
type Converter interface {
// contains filtered or unexported methods
}
Converter is an interface for converting escape sequences, etc.
type Document ¶
type Document struct {
// FileName is the file name to display.
FileName string
// Caption is an additional caption to display after the file name.
Caption string
// RunTimeSettings contains RunTimeSettings settings.
RunTimeSettings
// CFormat is a compressed format.
CFormat Compressed
// WatchMode indicates if watch mode is enabled.
WatchMode bool
// General is the General settings.
General General
// contains filtered or unexported fields
}
Document represents a document with various properties and methods for handling file operations, caching, synchronization, and display settings.
func NewDocument ¶
NewDocument creates and initializes a new Document with default settings. It returns a pointer to the Document and an error if the cache initialization fails.
func OpenDocument ¶ added in v0.10.1
OpenDocument opens a file specified by fileName and returns a Document. If the fileName is "-", it reads from stdin. It returns an error if the file cannot be opened, is a directory, or if there are issues initializing the Document.
func STDINDocument ¶ added in v0.10.1
STDINDocument creates and returns a Document that reads from stdin. It returns a pointer to the Document and an error if the Document initialization fails.
func (*Document) BackSearch ¶ added in v0.20.0
func (m *Document) BackSearch(ctx context.Context, searcher Searcher, chunkNum int, line int) (int, error)
BackSearch searches backward from the specified line.
func (*Document) BackSearchChunk ¶ added in v0.34.0
func (m *Document) BackSearchChunk(ctx context.Context, searcher Searcher, chunkNum int, line int) (int, error)
BackSearchChunk searches backward from the specified line.
func (*Document) BackSearchChunkNonMatch ¶ added in v0.34.0
func (m *Document) BackSearchChunkNonMatch(ctx context.Context, searcher Searcher, chunkNum int, line int) (int, error)
BackSearchChunkNonMatch returns unmatched line number.
func (*Document) BackSearchLine ¶ added in v0.10.1
BackSearchLine does a backward search on the document and returns a matching line number.
func (*Document) BufEOF ¶
BufEOF checks if the end of the file (EOF) has been reached in the document buffer. Returns: - A boolean value: true if EOF is reached, false otherwise.
func (*Document) BufStartNum ¶ added in v0.30.0
BufStartNum returns the starting line number of the buffer.
func (*Document) ClearCache ¶
func (m *Document) ClearCache()
ClearCache clears the LRU cache of the document. It does not take any parameters and does not return any values.
func (*Document) ControlFile ¶ added in v0.20.0
ControlFile controls file read and loads in chunks. ControlFile can be reloaded by file name.
func (*Document) ControlLog ¶ added in v0.20.0
ControlLog controls log. ControlLog is only supported reload.
func (*Document) ControlReader ¶ added in v0.20.0
ControlReader is the controller for io.Reader. Assuming call from Exec. reload executes the argument function.
func (*Document) CurrentLN ¶ added in v0.10.0
CurrentLN returns the currently displayed line number.
func (*Document) ExportPlain ¶ added in v0.42.0
ExportPlain exports the document in the specified range without ANSI escape sequences.
func (*Document) GetLine
deprecated
GetLine returns one line from buffer.
Deprecated: Use Document.LineStr instead.
func (*Document) LineString
deprecated
added in
v0.20.0
LineString returns one line from the buffer as a string.
Deprecated: This method is deprecated because it does not return an error and may silently ignore failures. Please use Document.LineStr instead, which returns both the string and an error for better error handling.
func (*Document) NewCache ¶
NewCache initializes a new LRU cache for the Document. It returns an error if the cache cannot be created.
func (*Document) Search ¶ added in v0.20.0
func (m *Document) Search(ctx context.Context, searcher Searcher, chunkNum int, lineNum int) (int, error)
Search searches for the search term and moves to the nearest matching line.
func (*Document) SearchChunk ¶ added in v0.34.0
func (m *Document) SearchChunk(ctx context.Context, searcher Searcher, chunkNum int, lineNum int) (int, error)
SearchChunk searches forward from the specified line.
func (*Document) SearchChunkNonMatch ¶ added in v0.34.0
func (m *Document) SearchChunkNonMatch(ctx context.Context, searcher Searcher, chunkNum int, lineNum int) (int, error)
SearchChunkNonMatch returns unmatched line number.
func (*Document) SearchLine ¶ added in v0.10.1
SearchLine searches the document and returns the matching line number.
func (*Document) WaitEOFWithTimeout ¶ added in v0.41.0
WaitEOFWithTimeout waits for EOF with a timeout. Parameters: - timeout: the duration to wait before timing out.
type Eventer ¶ added in v0.13.0
type Eventer interface {
// Mode returns the input mode.
Mode() InputMode
// Prompt returns the prompt string in the input field.
Prompt() string
// Confirm returns the event when the input is confirmed.
Confirm(i string) tcell.Event
// Up returns strings when the up key is pressed during input.
Up(i string) string
// Down returns strings when the down key is pressed during input.
Down(i string) string
}
Eventer is a generic interface for inputs.
type General ¶ added in v0.40.0
type General struct {
// Converter is the converter name.
Converter *string
// Align is the alignment.
Align *bool
// Raw is the raw setting.
Raw *bool
// Caption is an additional caption to display after the file name.
Caption *string
// ColumnDelimiter is a column delimiter.
ColumnDelimiter *string
// SectionDelimiter is a section delimiter.
SectionDelimiter *string
// Specified string for jumpTarget.
JumpTarget *string
// MultiColorWords specifies words to color separated by spaces.
MultiColorWords *[]string
// TabWidth is tab stop num.
TabWidth *int
// Header is number of header lines to be fixed.
Header *int
// VerticalHeader is the number of vertical header lines.
VerticalHeader *int
// HeaderColumn is the number of columns from the left to be fixed.
// If 0 is specified, no columns are fixed.
HeaderColumn *int
// SkipLines is the rows to skip.
SkipLines *int
// WatchInterval is the watch interval (seconds).
WatchInterval *int
// MarkStyleWidth is width to apply the style of the marked line.
MarkStyleWidth *int
// SectionStartPosition is a section start position.
SectionStartPosition *int
// SectionHeaderNum is the number of lines in the section header.
SectionHeaderNum *int
// HScrollWidth is the horizontal scroll width as a string (e.g., "80%", "40").
HScrollWidth *string
// HScrollWidthNum is the horizontal scroll width as an integer (number of columns).
HScrollWidthNum *int
// VScrollLines is the number of lines to scroll with the mouse wheel.
VScrollLines *int
// RulerType is the ruler type (0: none, 1: relative, 2: absolute).
RulerType *RulerType
// AlternateRows alternately style rows.
AlternateRows *bool
// ColumnMode is column mode.
ColumnMode *bool
// ColumnWidth is column width mode.
ColumnWidth *bool
// ColumnRainbow is column rainbow.
ColumnRainbow *bool
// LineNumMode displays line numbers.
LineNumMode *bool
// Wrap is Wrap mode.
WrapMode *bool
// FollowMode is the follow mode.
FollowMode *bool
// FollowAll is a follow mode for all documents.
FollowAll *bool
// FollowSection is a follow mode that uses section instead of line.
FollowSection *bool
// FollowName is the mode to follow files by name.
FollowName *bool
// PlainMode is whether to enable the original character decoration.
PlainMode *bool
// SectionHeader is whether to display the section header.
SectionHeader *bool
// HideOtherSection is whether to hide other sections.
HideOtherSection *bool
// StatusLine indicates whether to hide the status line.
StatusLine *bool
// PromptConfig holds settings related to the command prompt.
Prompt PromptConfig
// Style is the style setting for general appearance and formatting.
Style StyleConfig
}
General is the general configuration.
func (*General) SetAlternateRows ¶ added in v0.43.0
SetAlternateRows sets the alternate row style.
func (*General) SetCaption ¶ added in v0.43.0
SetCaption sets the caption.
func (*General) SetColumnDelimiter ¶ added in v0.43.0
SetColumnDelimiter sets the column delimiter.
func (*General) SetColumnMode ¶ added in v0.43.0
SetColumnMode sets the column mode.
func (*General) SetColumnRainbow ¶ added in v0.43.0
SetColumnRainbow sets the column rainbow mode.
func (*General) SetColumnWidth ¶ added in v0.43.0
SetColumnWidth sets the column width mode.
func (*General) SetConverter ¶ added in v0.43.0
SetConverter sets the converter name.
func (*General) SetFollowAll ¶ added in v0.43.0
SetFollowAll sets the follow mode for all documents.
func (*General) SetFollowMode ¶ added in v0.43.0
SetFollowMode sets the follow mode.
func (*General) SetFollowName ¶ added in v0.43.0
SetFollowName sets the follow mode by file name.
func (*General) SetFollowSection ¶ added in v0.43.0
SetFollowSection sets the follow mode by section.
func (*General) SetHScrollWidth ¶ added in v0.43.0
SetHScrollWidth sets the horizontal scroll width as a string.
func (*General) SetHScrollWidthNum ¶ added in v0.43.0
SetHScrollWidthNum sets the horizontal scroll width as an integer.
func (*General) SetHeaderColumn ¶ added in v0.43.0
SetHeaderColumn sets the number of header columns to be fixed.
func (*General) SetHideOtherSection ¶ added in v0.43.0
SetHideOtherSection sets whether to hide other sections.
func (*General) SetJumpTarget ¶ added in v0.43.0
SetJumpTarget sets the jump target string.
func (*General) SetLineNumMode ¶ added in v0.43.0
SetLineNumMode sets the line number display mode.
func (*General) SetMarkStyleWidth ¶ added in v0.43.0
SetMarkStyleWidth sets the width for the marked line style.
func (*General) SetMultiColorWords ¶ added in v0.43.0
SetMultiColorWords sets the multi-color words.
func (*General) SetPlainMode ¶ added in v0.43.0
SetPlainMode sets the plain mode for character decoration.
func (*General) SetRulerType ¶ added in v0.43.0
SetRulerType sets the ruler type.
func (*General) SetSectionDelimiter ¶ added in v0.43.0
SetSectionDelimiter sets the section delimiter.
func (*General) SetSectionHeader ¶ added in v0.43.0
SetSectionHeader sets whether to display the section header.
func (*General) SetSectionHeaderNum ¶ added in v0.43.0
SetSectionHeaderNum sets the number of lines in the section header.
func (*General) SetSectionStartPosition ¶ added in v0.43.0
SetSectionStartPosition sets the section start position.
func (*General) SetSkipLines ¶ added in v0.43.0
SetSkipLines sets the number of lines to skip.
func (*General) SetStatusLine ¶ added in v0.43.0
SetStatusLine sets the status line visibility.
func (*General) SetTabWidth ¶ added in v0.43.0
SetTabWidth sets the tab stop number.
func (*General) SetVScrollLines ¶ added in v0.44.0
func (*General) SetVerticalHeader ¶ added in v0.43.0
SetVerticalHeader sets the number of vertical header lines.
func (*General) SetWatchInterval ¶ added in v0.43.0
SetWatchInterval sets the watch interval in seconds.
func (*General) SetWrapMode ¶ added in v0.43.0
SetWrapMode sets the wrap mode.
type Input ¶
type Input struct {
Event Eventer
// Candidate is prepared when the history is used as an input candidate.
// Header and SkipLines use numbers up and down instead of candidate.
Candidate map[InputMode]*candidate
// contains filtered or unexported fields
}
Input represents the status of various inputs. Retain each input list to save the input history.
type InputMode ¶
type InputMode int
InputMode represents the state of the input.
const ( // Normal is the default mode where no special input handling is active. Normal InputMode = iota // ViewMode is for view selection. ViewMode // Search is for searching. Search // Backsearch is for backward searching. Backsearch // Filter is for filtering. Filter // MarkByPattern is for marking by pattern. MarkByPattern // Goline is for moving to a specific line. Goline // Header is for setting the number of headers. Header // Delimiter is for setting the delimiter. Delimiter // TabWidth is for setting the tab width. TabWidth // Watch is for setting the watch interval. Watch // SkipLines is for setting the number of lines to skip. SkipLines // WriteBA is for setting the number of ranges to write at quit. WriteBA // SectionDelimiter is for setting the section delimiter. SectionDelimiter // SectionStart is for setting the section start position. SectionStart // MultiColor is for multi-word coloring. MultiColor // JumpTarget is for setting the position to display the search results. JumpTarget // SaveBuffer is for saving the buffer. SaveBuffer // SectionNum is for setting the section number. SectionNum // ConvertType is for setting the convert type. ConvertType // VerticalHeader is for setting the number of vertical headers. VerticalHeader // HeaderColumn is for setting the number of vertical header columns. HeaderColumn // MarkNum is for setting the mark number. MarkNum )
type KeyBind ¶
KeyBind represents a mapping from action names to their associated key sequences.
func GetKeyBinds ¶
GetKeyBinds returns the current key mapping based on the provided configuration. If the default key bindings are not disabled in the configuration, it initializes the key bindings with the default values and then overwrites them with any custom key bindings specified in the configuration file.
Parameters:
- config: The configuration object that contains the key binding settings.
Returns:
- KeyBind: A map where the keys are action names and the values are slices of strings representing the keys assigned to those actions.
func (KeyBind) GetKeyBindDescriptions ¶ added in v0.51.0
type KeyBindDescription ¶ added in v0.51.0
type LineC ¶ added in v0.15.0
type LineC struct {
// contains filtered or unexported fields
}
LineC is one line of information. Contains content, string, location information.
type LineNumber ¶ added in v0.15.0
type LineNumber struct {
// contains filtered or unexported fields
}
LineNumber is Number of logical lines and number of wrapping lines on the screen.
type LogDocument ¶ added in v0.34.0
type LogDocument struct {
*Document
// contains filtered or unexported fields
}
LogDocument is a document for log.
func NewLogDoc ¶ added in v0.5.0
func NewLogDoc() (*LogDocument, error)
NewLogDoc generates a document for log. NewLogDoc makes LogDoc the output destination of go's standard logger.
type MatchedLine ¶ added in v0.51.0
type MatchedLine struct {
// contains filtered or unexported fields
}
type MatchedLineList ¶ added in v0.51.0
type MatchedLineList []MatchedLine
type MouseSelectState ¶ added in v0.44.0
type MouseSelectState int
MouseSelectState represents the state of mouse selection.
const ( SelectNone MouseSelectState = iota // no selection SelectActive // selecting SelectCopied // selection copied )
type OVPromptConfig ¶ added in v0.31.0
type OVPromptConfig struct {
// Normal is the normal prompt setting.
Normal OVPromptConfigNormal
Input OVPromptConfigInput
}
OVPromptConfig is the prompt setting.
func NewOVPromptConfig ¶ added in v0.42.0
func NewOVPromptConfig() OVPromptConfig
NewOVPromptConfig returns the structure of OVPromptConfig with default values.
type OVPromptConfigInput ¶ added in v0.42.0
type OVPromptConfigInput struct {
CursorType int
}
OVPromptConfigInput is the input prompt setting.
type OVPromptConfigNormal ¶ added in v0.31.0
type OVPromptConfigNormal struct {
// ShowFilename controls whether to display filename.
ShowFilename bool
// InvertColor controls whether the text is colored and inverted.
InvertColor bool
// ProcessOfCount controls whether to display the progress of the count.
ProcessOfCount bool
// CursorType controls the type of cursor to display.
CursorType int
}
OVPromptConfigNormal is the normal prompt setting.
type OVStyle ¶ added in v0.11.0
type OVStyle struct {
// Background is a color name string.
Background string
// Foreground is a color name string.
Foreground string
// UnderlineColor is a underline color name string.
UnderlineColor string
// UnderlineStyle is a underline style.
UnderlineStyle string
// VerticalAlignType is a vertical align type.
VerticalAlignType int
// If true, add blink.
Blink bool
// If true, add bold.
Bold bool
// If true, add dim.
Dim bool
// If true, add italic.
Italic bool
// If true, add reverse.
Reverse bool
// If true, add underline.
Underline bool
// If true, add strike through.
StrikeThrough bool
// If true, add overline (not yet supported).
OverLine bool
// If true, sub blink.
UnBlink bool
// If true, sub bold.
UnBold bool
// If true, sub dim.
UnDim bool
// If true, sub italic.
UnItalic bool
// If true, sub reverse.
UnReverse bool
// If true, sub underline.
UnUnderline bool
// If true, sub strike through.
UnStrikeThrough bool
// if true, sub overline (not yet supported).
UnOverLine bool
// If true, reset all styles.
Reset bool
}
OVStyle represents a style in addition to the original style.
type PromptConfig ¶ added in v0.42.0
type PromptConfig struct {
// Normal is the normal prompt setting.
Normal PromptConfigNormal
Input PromptConfigInput
}
PromptConfig is the prompt setting.
type PromptConfigInput ¶ added in v0.42.0
type PromptConfigInput struct {
CursorType *int
}
PromptConfigInput is the input prompt setting.
type PromptConfigNormal ¶ added in v0.42.0
type PromptConfigNormal struct {
// ShowFilename controls whether to display filename.
ShowFilename *bool
// InvertColor controls whether the text is colored and inverted.
InvertColor *bool
// ProcessOfCount controls whether to display the progress of the count.
ProcessOfCount *bool
// CursorType controls the type of cursor to display.
CursorType *int
}
PromptConfigNormal is the normal prompt setting.
type Root ¶
type Root struct {
// tcell.Screen is the root screen.
Screen tcell.Screen
// Doc is the current document.
Doc *Document
// Pattern is the search pattern.
Pattern string
// OnExit is output on exit.
OnExit []string
// Original string.
OriginStr string
// DocList is the list of documents.
DocList []*Document
// Config is the configuration of ov.
Config Config
// Original position at the start of search.
OriginPos int
// CurrentDoc is the index of the current document.
CurrentDoc int
// FollowAll is a follow mode for all documents.
FollowAll bool
// SidebarItems is the items to display in the sidebar.
SidebarItems []SidebarItem
// SidebarHelpItems is the help items to display in the sidebar.
SidebarHelpItems []SidebarItem
// contains filtered or unexported fields
}
Root is the root structure of the oviewer.
func ExecCommand
deprecated
added in
v0.8.9
ExecCommand return the structure of oviewer. ExecCommand executes the command and opens stdout/stderr as document.
Deprecated: use NewCommand and [Exec] instead.
Example ¶
package main
import (
"os/exec"
"github.com/noborus/ov/oviewer"
)
func main() {
command := exec.Command("ls", "-alF")
ov, err := oviewer.ExecCommand(command)
if err != nil {
panic(err)
}
if err := ov.Run(); err != nil {
panic(err)
}
}
func NewOviewer ¶
NewOviewer return the structure of oviewer. NewOviewer requires one or more documents.
Example ¶
package main
import (
"bytes"
"github.com/noborus/ov/oviewer"
)
func main() {
doc, err := oviewer.NewDocument()
if err != nil {
panic(err)
}
s := "Hello, World!"
if err := doc.ControlReader(bytes.NewBufferString(s), nil); err != nil {
panic(err)
}
ov, err := oviewer.NewOviewer(doc)
if err != nil {
panic(err)
}
if err := ov.Run(); err != nil {
panic(err)
}
}
func NewRoot ¶ added in v0.9.0
NewRoot returns the structure of the oviewer. NewRoot is a simplified version that can be used externally.
Example ¶
package main
import (
"strings"
"github.com/noborus/ov/oviewer"
)
func main() {
r := strings.NewReader(strings.Repeat("north\n", 99))
ov, err := oviewer.NewRoot(r)
if err != nil {
panic(err)
}
if err := ov.Run(); err != nil {
panic(err)
}
}
func Open ¶
Open reads the file named of the argument and return the structure of oviewer. If there is no file name, create Root from standard input. If there is only one file name, create Root from that file, but return an error if the open is an error. If there is more than one file name, create Root from multiple files.
Example ¶
package main
import (
"github.com/noborus/ov/oviewer"
)
func main() {
ov, err := oviewer.Open("example_test.go")
if err != nil {
panic(err)
}
if err := ov.Run(); err != nil {
panic(err)
}
}
func (*Root) AddDocument ¶ added in v0.8.0
AddDocument fires the eventAddDocument event.
func (*Root) BackSearch ¶
BackSearch fires a backward search event. This is for calling Search from the outside. Normally, the event is executed from Confirm.
func (*Root) CloseAllFilter ¶ added in v0.34.0
func (root *Root) CloseAllFilter()
CloseAllFilter fires the eventCloseAllFilter event.
func (*Root) CloseDocument ¶ added in v0.8.0
CloseDocument fires the eventCloseDocument event.
func (*Root) CopySelect ¶ added in v0.6.0
CopySelect fires the eventCopySelect event.
func (*Root) DocumentLen ¶ added in v0.9.0
DocumentLen returns the number of Docs.
func (*Root) ExpandColumn ¶ added in v0.37.0
ExpandColumn expands the specified column.
func (*Root) MoveBottom ¶
func (root *Root) MoveBottom()
MoveBottom fires the event of moving to bottom.
func (*Root) OutputOnExit ¶ added in v0.40.0
func (root *Root) OutputOnExit()
OutputOnExit outputs to the terminal when exiting.
func (*Root) ScreenContent ¶ added in v0.40.0
ScreenContent returns the screen content.
func (*Root) Search ¶
Search fires a forward search event. This is for calling Search from the outside. Normally, the event is executed from Confirm.
func (*Root) SetDocument ¶
SetDocument fires the eventDocument event.
func (*Root) SetKeyHandler ¶ added in v0.9.6
func (root *Root) SetKeyHandler(ctx context.Context, name string, keys []string, handler func(context.Context)) error
SetKeyHandler assigns a new key handler.
func (*Root) SetWatcher ¶ added in v0.8.9
SetWatcher sets file monitoring.
func (*Root) ShrinkColumn ¶ added in v0.37.0
ShrinkColumn shrinks the specified column.
func (*Root) StrLeftStatus ¶ added in v0.50.0
StrLeftStatus returns the left status string.
func (*Root) Suspend ¶ added in v0.9.5
func (root *Root) Suspend()
Suspend fires the eventAppSuspend event.
func (*Root) WriteCurrentScreen ¶ added in v0.40.0
func (root *Root) WriteCurrentScreen()
WriteCurrentScreen writes to the current screen.
func (*Root) WriteLog ¶ added in v0.7.1
func (root *Root) WriteLog()
WriteLog write to the log terminal.
func (*Root) WriteOriginal ¶
func (root *Root) WriteOriginal()
WriteOriginal writes to the original terminal.
type RunTimeSettings ¶ added in v0.40.0
type RunTimeSettings struct {
// Converter is the converter name.
Converter string
// Caption is an additional caption to display after the file name.
Caption string
// ColumnDelimiterReg is a compiled regular expression of ColumnDelimiter.
ColumnDelimiterReg *regexp.Regexp
// ColumnDelimiter is a column delimiter.
ColumnDelimiter string
// SectionDelimiterReg is a section delimiter.
SectionDelimiterReg *regexp.Regexp
// SectionDelimiter is a section delimiter.
SectionDelimiter string
// Specified string for jumpTarget.
JumpTarget string
// MultiColorWords specifies words to color separated by spaces.
MultiColorWords []string
// TabWidth is tab stop num.
TabWidth int
// Header is number of header lines to be fixed.
Header int
// VerticalHeader is the number of vertical header lines.
VerticalHeader int
// HeaderColumn is the number of columns from the left to be fixed.
// If 0 is specified, no columns are fixed.
HeaderColumn int
// SkipLines is the rows to skip.
SkipLines int
// WatchInterval is the watch interval (seconds).
WatchInterval int
// MarkStyleWidth is width to apply the style of the marked line.
MarkStyleWidth int
// SectionStartPosition is a section start position.
SectionStartPosition int
// SectionHeaderNum is the number of lines in the section header.
SectionHeaderNum int
// HScrollWidth is the horizontal scroll width.
HScrollWidth string
// HScrollWidthNum is the horizontal scroll width.
HScrollWidthNum int
// VScrollLines is the number of lines to scroll with the mouse wheel.
VScrollLines int
// RulerType is the ruler type (0: none, 1: relative, 2: absolute).
RulerType RulerType
// AlternateRows alternately style rows.
AlternateRows bool
// ColumnMode is column mode.
ColumnMode bool
// ColumnWidth is column width mode.
ColumnWidth bool
// ColumnRainbow is column rainbow.
ColumnRainbow bool
// LineNumMode displays line numbers.
LineNumMode bool
// Wrap is Wrap mode.
WrapMode bool
// FollowMode is the follow mode.
FollowMode bool
// FollowAll is a follow mode for all documents.
FollowAll bool
// FollowSection is a follow mode that uses section instead of line.
FollowSection bool
// FollowName is the mode to follow files by name.
FollowName bool
// PlainMode is whether to enable the original character decoration.
PlainMode bool
// SectionHeader is whether to display the section header.
SectionHeader bool
// HideOtherSection is whether to hide other sections.
HideOtherSection bool
// StatusLine is whether to hide the status line.
StatusLine bool
// PromptConfig is the prompt configuration.
OVPromptConfig
// Style is the style of the document.
Style Style
}
RunTimeSettings structure contains the RunTimeSettings of the display. RunTimeSettings contains values that determine the behavior of each document.
func NewRunTimeSettings ¶ added in v0.40.0
func NewRunTimeSettings() RunTimeSettings
NewRunTimeSettings returns the structure of RunTimeSettings with default values.
type SCR ¶ added in v0.15.0
type SCR struct {
// contains filtered or unexported fields
}
SCR contains the screen information.
type Searcher ¶ added in v0.10.1
type Searcher interface {
// Match searches for bytes.
Match(target []byte) bool
// MatchString searches for strings.
MatchString(target string) bool
// FindAll searches for strings and returns the index of the match.
FindAll(target string) [][]int
// String returns the search word.
String() string
}
Searcher interface provides a match method that determines if the search word matches the argument string.
type SidebarItem ¶ added in v0.51.0
type SidebarItem struct {
Label string // Always-visible label (e.g., index, description)
Contents contents // Contents to display
IsCurrent bool
}
SidebarItem represents an item to display in the sidebar.
type SidebarMode ¶ added in v0.51.0
type SidebarMode int
const ( // SidebarModeNone is no sidebar. SidebarModeNone SidebarMode = iota // SidebarModeHelp is the help sidebar. SidebarModeHelp // SidebarModeMarks is the mark list sidebar. SidebarModeMarks // SidebarModeDocList is the document list sidebar. SidebarModeDocList // SidebarModeSections is the section list sidebar. SidebarModeSections // SidebarModeEnd is the end of sidebar modes. SidebarModeEnd )
sidebarMode represents the mode of the sidebar.
func (SidebarMode) String ¶ added in v0.51.0
func (s SidebarMode) String() string
String returns the string representation of the SidebarMode.
type Style ¶ added in v0.40.0
type Style struct {
// ColumnRainbow is the style that applies to the column rainbow color highlight.
ColumnRainbow []OVStyle
// MultiColorHighlight is the style that applies to the multi color highlight.
MultiColorHighlight []OVStyle
// Header is the style that applies to the header.
Header OVStyle
// Body is the style that applies to the body.
Body OVStyle
// LineNumber is a style that applies line number.
LineNumber OVStyle
// SearchHighlight is the style that applies to the search highlight.
SearchHighlight OVStyle
// ColumnHighlight is the style that applies to the column highlight.
ColumnHighlight OVStyle
// MarkLine is a style that marked line.
MarkLine OVStyle
// SectionLine is a style that section delimiter line.
SectionLine OVStyle
// VerticalHeader is a style that applies to the vertical header.
VerticalHeader OVStyle
// JumpTargetLine is the line that displays the search results.
JumpTargetLine OVStyle
// Alternate is a style that applies line by line.
Alternate OVStyle
// Ruler is a style that applies to the ruler.
Ruler OVStyle
// HeaderBorder is the style that applies to the boundary line of the header.
// The boundary line of the header refers to the visual separator between the header and the rest of the content.
HeaderBorder OVStyle
// SectionHeaderBorder is the style that applies to the boundary line of the section header.
// The boundary line of the section header is the line that separates different sections in the header.
SectionHeaderBorder OVStyle
// VerticalHeaderBorder is the style that applies to the boundary character of the vertical header.
// The boundary character of the vertical header refers to the visual separator that delineates the vertical header from the rest of the content.
VerticalHeaderBorder OVStyle
// LeftStatus is the style that applies to the left status line.
LeftStatus OVStyle
// RightStatus is the style that applies to the right status line.
RightStatus OVStyle
// SelectActive is the style that applies to the text being selected (during mouse drag).
SelectActive OVStyle
// SelectCopied is the style that applies to the text that has been copied to clipboard.
SelectCopied OVStyle
// PauseLine is the style that applies to the line where follow mode is paused.
PauseLine OVStyle
}
Style structure contains the style settings of the display.
func NewHelpStyle ¶ added in v0.42.0
func NewHelpStyle() Style
NewHelpStyle returns a Style for the help document.
func NewLogStyle ¶ added in v0.42.0
func NewLogStyle() Style
NewLogStyle generates a style for log documents.
type StyleConfig ¶ added in v0.40.0
type StyleConfig struct {
// ColumnRainbow is the style that applies to the column rainbow color highlight.
ColumnRainbow *[]OVStyle
// MultiColorHighlight is the style that applies to the multi color highlight.
MultiColorHighlight *[]OVStyle
// Header is the style that applies to the header.
Header *OVStyle
// Body is the style that applies to the body.
Body *OVStyle
// LineNumber is a style that applies line number.
LineNumber *OVStyle
// SearchHighlight is the style that applies to the search highlight.
SearchHighlight *OVStyle
// ColumnHighlight is the style that applies to the column highlight.
ColumnHighlight *OVStyle
// MarkLine is a style that marked line.
MarkLine *OVStyle
// SectionLine is a style that section delimiter line.
SectionLine *OVStyle
// VerticalHeader is a style that applies to the vertical header.
VerticalHeader *OVStyle
// JumpTargetLine is the line that displays the search results.
JumpTargetLine *OVStyle
// Alternate is a style that applies line by line.
Alternate *OVStyle
// Ruler is a style that applies to the ruler.
Ruler *OVStyle
// HeaderBorder is the style that applies to the boundary line of the header.
// The boundary line of the header refers to the visual separator between the header and the rest of the content.
HeaderBorder *OVStyle
// SectionHeaderBorder is the style that applies to the boundary line of the section header.
// The boundary line of the section header is the line that separates different sections in the header.
SectionHeaderBorder *OVStyle
// VerticalHeaderBorder is the style that applies to the boundary character of the vertical header.
// The boundary character of the vertical header refers to the visual separator that delineates the vertical header from the rest of the content.
VerticalHeaderBorder *OVStyle
// LeftStatus is the style that applies to the left side of the status line.
LeftStatus *OVStyle
// RightStatus is the style that applies to the right side of the status line.
RightStatus *OVStyle
// SelectActive is the style that applies to the text being selected (during mouse drag).
SelectActive *OVStyle
// SelectCopied is the style that applies to the text that has been copied to clipboard.
SelectCopied *OVStyle
// PauseLine is the style that applies to the line where follow mode is paused.
PauseLine *OVStyle
}
StyleConfig is the style setting.
Source Files
¶
- action.go
- config.go
- content.go
- control.go
- convert_align.go
- convert_es.go
- convert_raw.go
- doc.go
- doclist.go
- document.go
- draw.go
- edit.go
- event.go
- exec.go
- filter.go
- general.go
- help.go
- input.go
- input_converter.go
- input_delimiter.go
- input_goto.go
- input_header.go
- input_header_column.go
- input_jumptarget.go
- input_markgoto.go
- input_multicolor.go
- input_normal.go
- input_savebuffer.go
- input_search.go
- input_section_delimiter.go
- input_section_num.go
- input_section_start.go
- input_skip.go
- input_tabwidth.go
- input_vertical_header.go
- input_viewmode.go
- input_watch.go
- input_writeba.go
- keybind.go
- logdoc.go
- mark.go
- mouse.go
- move.go
- move_leftright.go
- move_updown.go
- oviewer.go
- ovstyle.go
- prepare_draw.go
- reader.go
- render.go
- save.go
- search.go
- search_move.go
- sidebar.go
- status_line.go
- store.go
- suspend_unix.go
- uncompress.go
- utils.go