nvim ftplugin tweaks
This commit is contained in:
@@ -0,0 +1,20 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and (" --stdin-filepath " .. vim.fn.shellescape(bufname)) or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = "100"
|
||||||
|
vim.opt_local.textwidth = 100
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 4
|
||||||
|
vim.opt_local.softtabstop = 4
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior
|
||||||
|
vim.opt_local.formatoptions:remove("t") -- Don't autowrap while typing
|
||||||
|
vim.opt_local.formatoptions:append("j") -- Remove comment markers when joining lines
|
||||||
|
|
||||||
|
-- gq Formatters (Prettier fallback, LSP primary)
|
||||||
|
-- Prefers local/global binary first to avoid slow npx invocation overhead
|
||||||
|
local prettier_bin = vim.fn.executable("prettier") == 1 and "prettier" or "npx prettier"
|
||||||
|
vim.bo.formatprg = prettier_bin .. filename_arg
|
||||||
|
vim.bo.formatexpr = "v:lua.vim.lsp.formatexpr()"
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and ("--stdin-filepath " .. vim.fn.shellescape(bufname) .. " ") or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = "120"
|
||||||
|
vim.opt_local.textwidth = 120
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 4
|
||||||
|
vim.opt_local.softtabstop = 4
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior
|
||||||
|
vim.opt_local.formatoptions:remove("t")
|
||||||
|
vim.opt_local.formatoptions:append("j")
|
||||||
|
|
||||||
|
-- gq Formatters (StyLua fallback, LSP primary)
|
||||||
|
vim.bo.formatprg = "stylua " .. filename_arg .. "-"
|
||||||
|
vim.bo.formatexpr = "v:lua.vim.lsp.formatexpr()"
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and (" --stdin-filepath " .. vim.fn.shellescape(bufname)) or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = ""
|
||||||
|
vim.opt_local.wrap = true
|
||||||
|
vim.opt_local.textwidth = 80
|
||||||
|
vim.opt_local.tabstop = 2
|
||||||
|
vim.opt_local.shiftwidth = 2
|
||||||
|
vim.opt_local.softtabstop = 2
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior: wrap text, keep comment/quote headers, parse lists
|
||||||
|
vim.opt_local.formatoptions:append("tqn")
|
||||||
|
|
||||||
|
-- gq Formatter: Prettier handles links/parentheses cleanly; par as fallback
|
||||||
|
if vim.fn.executable("prettier") == 1 then
|
||||||
|
vim.bo.formatprg = "prettier --parser markdown" .. filename_arg
|
||||||
|
elseif vim.fn.executable("par") == 1 then
|
||||||
|
vim.bo.formatprg = "par -w80req"
|
||||||
|
end
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
local bufname = vim.api.nvim_buf_get_name(0)
|
||||||
|
local filename_arg = bufname ~= "" and ("--stdin-filename " .. vim.fn.shellescape(bufname) .. " ") or ""
|
||||||
|
|
||||||
|
-- Indentation & Layout
|
||||||
|
vim.opt_local.colorcolumn = "100"
|
||||||
|
vim.opt_local.textwidth = 100
|
||||||
|
vim.opt_local.tabstop = 4
|
||||||
|
vim.opt_local.shiftwidth = 4
|
||||||
|
vim.opt_local.softtabstop = 4
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
|
||||||
|
-- Formatting Behavior
|
||||||
|
vim.opt_local.formatoptions:remove("t") -- Don't autowrap while typing
|
||||||
|
vim.opt_local.formatoptions:append("j") -- Remove comment markers when joining lines
|
||||||
|
|
||||||
|
-- gq Formatters (Ruff fallback, LSP primary)
|
||||||
|
-- The trailing '-' is required for Ruff to read from stdin
|
||||||
|
vim.bo.formatprg = "ruff format " .. filename_arg .. "-"
|
||||||
|
vim.bo.formatexpr = "v:lua.vim.lsp.formatexpr()"
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
vim.opt_local.colorcolumn = "100"
|
|
||||||
vim.opt_local.tabstop = 4
|
|
||||||
vim.opt_local.shiftwidth = 4
|
|
||||||
vim.opt_local.softtabstop = 4
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
vim.opt_local.colorcolumn = "120"
|
|
||||||
vim.opt_local.tabstop = 4
|
|
||||||
vim.opt_local.shiftwidth = 4
|
|
||||||
vim.opt_local.softtabstop = 4
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
vim.opt_local.colorcolumn = ""
|
|
||||||
vim.opt_local.wrap = true
|
|
||||||
vim.opt_local.tabstop = 2
|
|
||||||
vim.opt_local.shiftwidth = 2
|
|
||||||
vim.opt_local.softtabstop = 2
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
vim.opt_local.colorcolumn = "100"
|
|
||||||
vim.opt_local.tabstop = 4
|
|
||||||
vim.opt_local.shiftwidth = 4
|
|
||||||
vim.opt_local.softtabstop = 4
|
|
||||||
Reference in New Issue
Block a user