VisiData Plugin Authors Guide (v2.0)¶
VisiData is designed to be extensible. Anything that can be done with Python (which is basically everything) can be exposed in a VisiData interface with a minimal amount of code.
VisiData is also designed to be modular. Many of its features can exist in isolation, and can be enabled or disabled independently, without affecting other features. Modules should degrade or fail gracefully if they depend on another module which is not loaded.
As a simple example, this code can be placed in
BaseSheet.addCommand('1', 'hello-world', 'status("Hello world!")')
This extends VisiData so that when 1 is pressed on any sheet, the command called
hello-world with the Python code
status("Hello world!") is executed, and this prints the string “Hello world!” on the status bar.