diff options
| author | 2024-11-12 12:49:56 +0100 | |
|---|---|---|
| committer | 2024-11-12 12:49:56 +0100 | |
| commit | e6de67899a4fa0a896db40b3c0f1b5560c7ae3d7 (patch) | |
| tree | 4a78d5281689ae108c58bc371ef844085cee7c4a | |
| parent | sh: add /tmp helpers (diff) | |
nvim: add editorconfig ft extension
This is NOT an optimal or reliable solution.
I want to take a closer look at it later, but right now I don't have the
time.
| -rw-r--r-- | dot_config/nvim/pre.fnl | 10 | ||||
| -rw-r--r-- | dot_config/nvim/pre.lua | 28 |
2 files changed, 30 insertions, 8 deletions
diff --git a/dot_config/nvim/pre.fnl b/dot_config/nvim/pre.fnl index 0b2c9af..a22a233 100644 --- a/dot_config/nvim/pre.fnl +++ b/dot_config/nvim/pre.fnl @@ -35,3 +35,13 @@ :* (recc :vim.ui.clipboard.osc52 :copy :*)} :paste {:+ (recc :vim.ui.clipboard.osc52 :paste :+) :* (recc :vim.ui.clipboard.osc52 :paste :*)}}))) + +; editorconfig extensions +(let [ec (require :editorconfig)] + (set ec.properties.filetype + (fn [bufnr val opts] + (let [bo (. vim.bo bufnr)] + (when (not= bo.filetype val) + (set bo.filetype val) + ; otherwise the change in ft will override editorconfig settings + (ec.config bufnr)))))) diff --git a/dot_config/nvim/pre.lua b/dot_config/nvim/pre.lua index 78eb892..15dc641 100644 --- a/dot_config/nvim/pre.lua +++ b/dot_config/nvim/pre.lua @@ -5,12 +5,24 @@ local options = {timeoutlen = 300, clipboard = "unnamedplus", completeopt = "men for k, v in pairs(options) do vim.opt[k] = v end -local _let_1_ = vim.version() -local major = _let_1_["major"] -local minor = _let_1_["minor"] -if ((major > 0) or (minor >= 10)) then - vim.g.clipboard = {name = "OSC52", copy = {["+"] = require("vim.ui.clipboard.osc52").copy("+"), ["*"] = require("vim.ui.clipboard.osc52").copy("*")}, paste = {["+"] = require("vim.ui.clipboard.osc52").paste("+"), ["*"] = require("vim.ui.clipboard.osc52").paste("*")}} - return nil -else - return nil +do + local _let_1_ = vim.version() + local major = _let_1_["major"] + local minor = _let_1_["minor"] + if ((major > 0) or (minor >= 10)) then + vim.g.clipboard = {name = "OSC52", copy = {["+"] = require("vim.ui.clipboard.osc52").copy("+"), ["*"] = require("vim.ui.clipboard.osc52").copy("*")}, paste = {["+"] = require("vim.ui.clipboard.osc52").paste("+"), ["*"] = require("vim.ui.clipboard.osc52").paste("*")}} + else + end end +local ec = require("editorconfig") +local function _3_(bufnr, val, opts) + local bo = vim.bo[bufnr] + if (bo.filetype ~= val) then + bo.filetype = val + return ec.config(bufnr) + else + return nil + end +end +ec.properties.filetype = _3_ +return nil |
