From f8a004e14bd77a04027903a6bb6ff149efdfff3b Mon Sep 17 00:00:00 2001 From: kStor2poche <43518872+kStor2poche@users.noreply.github.com> Date: Wed, 16 Oct 2024 16:43:07 +0200 Subject: [PATCH 1/3] Add user_style option --- lua/peek/config.lua | 2 ++ lua/peek/init.lua | 7 ++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lua/peek/config.lua b/lua/peek/config.lua index 15ca57e..589c98f 100644 --- a/lua/peek/config.lua +++ b/lua/peek/config.lua @@ -10,6 +10,7 @@ local config = { throttle_time = 'auto', app = 'webview', filetype = { 'markdown' }, + user_style = nil, } local function optional(predicate) @@ -68,6 +69,7 @@ function module.setup(incoming) throttle_time = { incoming.throttle_time, optional(one_of({ 'auto', of_type('number') })), '"auto" or number' }, app = { incoming.app, optional(one_of({ of_type('string'), every(of_type('string')) })), 'string or string[]' }, filetype = { incoming.filetype, optional(every(of_type('string'))), 'string[]' }, + user_style = { incoming.user_style, optional(of_type('string')), 'string' }, }) config = vim.tbl_extend('force', config, incoming) diff --git a/lua/peek/init.lua b/lua/peek/init.lua index 3378d3c..9dfe681 100644 --- a/lua/peek/init.lua +++ b/lua/peek/init.lua @@ -14,7 +14,12 @@ local module = {} local augroup, throttle_at, throttle_time, initialized local function get_buf_content(bufnr) - return concat(nvim_buf_get_lines(bufnr, 0, -1, false), '\n'):gsub('%s*$', '') + local content = concat(nvim_buf_get_lines(bufnr, 0, -1, false), '\n'):gsub('%s*$', '') + local user_style = config.get('user_style') + if user_style ~= nil then + content = concat({"\n", content}) + end + return content end local function open(bufnr) From 436447e174f8e3a37c1b1046a28fddc926b51f1e Mon Sep 17 00:00:00 2001 From: kStor2poche <43518872+kStor2poche@users.noreply.github.com> Date: Sun, 11 May 2025 00:11:46 +0200 Subject: [PATCH 2/3] First test with new vim.validate syntax --- lua/peek/config.lua | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lua/peek/config.lua b/lua/peek/config.lua index 589c98f..5c15c1c 100644 --- a/lua/peek/config.lua +++ b/lua/peek/config.lua @@ -55,9 +55,7 @@ end function module.setup(incoming) incoming = incoming or {} - vim.validate({ - config = { incoming, 'table' }, - }) + vim.validate('config', incoming, 'table') vim.validate({ close_on_bdelete = { incoming.close_on_bdelete, 'boolean', true }, From ed15a6417b0bef6268d5e841dd6bd9cddee61998 Mon Sep 17 00:00:00 2001 From: kStor2poche <43518872+kStor2poche@users.noreply.github.com> Date: Sun, 11 May 2025 00:17:58 +0200 Subject: [PATCH 3/3] Update the rest of the vim.validate calls --- lua/peek/config.lua | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/lua/peek/config.lua b/lua/peek/config.lua index 5c15c1c..19dc792 100644 --- a/lua/peek/config.lua +++ b/lua/peek/config.lua @@ -57,18 +57,16 @@ function module.setup(incoming) vim.validate('config', incoming, 'table') - vim.validate({ - close_on_bdelete = { incoming.close_on_bdelete, 'boolean', true }, - auto_load = { incoming.auto_load, 'boolean', true }, - syntax = { incoming.syntax, 'boolean', true }, - theme = { incoming.theme, optional(one_of({ 'dark', 'light' })), '"dark" or "light"' }, - update_on_change = { incoming.update_on_change, 'boolean', true }, - throttle_at = { incoming.throttle_at, 'number', true }, - throttle_time = { incoming.throttle_time, optional(one_of({ 'auto', of_type('number') })), '"auto" or number' }, - app = { incoming.app, optional(one_of({ of_type('string'), every(of_type('string')) })), 'string or string[]' }, - filetype = { incoming.filetype, optional(every(of_type('string'))), 'string[]' }, - user_style = { incoming.user_style, optional(of_type('string')), 'string' }, - }) + vim.validate('close_on_bdelete', incoming.close_on_bdelete, 'boolean', true) + vim.validate('auto_load', incoming.auto_load, 'boolean', true) + vim.validate('syntax', incoming.syntax, 'boolean', true) + vim.validate('theme', incoming.theme, optional(one_of({ 'dark', 'light' })), '"dark" or "light"') + vim.validate('update_on_change', incoming.update_on_change, 'boolean', true) + vim.validate('throttle_at', incoming.throttle_at, 'number', true) + vim.validate('throttle_time', incoming.throttle_time, optional(one_of({ 'auto', of_type('number') })), '"auto" or number') + vim.validate('app', incoming.app, optional(one_of({ of_type('string'), every(of_type('string')) })), 'string or string[]') + vim.validate('filetype', incoming.filetype, optional(every(of_type('string'))), 'string[]') + vim.validate('user_style', incoming.user_style, optional(of_type('string')), 'string') config = vim.tbl_extend('force', config, incoming) end