Skip to content

niuiic/omega.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

omega.nvim

Lua development utilities for Neovim.

All functions are lazy load.

More neovim plugins

Install

  • lazy.nvim
{"niuiic/omega.nvim", build = "cd rs && cargo build --release"}

Dev

Run current lua file with require("omega").dofile(vim.api.nvim_buf_get_name(0)). This function would unload deps of the file before running it, thus you can check the real-time update of the file without restart neovim.

It's recommended to do unit test with this function and builtin assert. Check lua/omega/exist_in_file.test.lua for an example.

Functions

name type desc
dofile fun(file_path: string) dofile without cache
exist_in_file fun(text: string, path: string): boolean check if text exists in file
get_selected_area fun(): omega.Area get selected area
get_selection fun(): string[] | nil get selected text, get cursor expr in normal mode
to_normal_mode fun() enter normal mode
get_timestamp fun(time?: string): number get a millisecond-level timestamp, time format should be like '2022-01-01 00:00:00'
get_human_readable_duration fun(start_time: number, end_time: number): string get a human-readable duration between two millisecond-level timestamps
get_chars fun(str: string): string[] get chars from a string, work for any transformation format

Useful Neovim Builtin Functions

name usage
vim.fn.isdirectory check if path is a directory
vim.uv.fs_stat check if path exist
vim.fs.root find root directory
vim.system spawn a command
vim.iter lua list operation
vim.fs.joinpath concat path

About

Neovim lua utils

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published