diff options
| author | David T. Sadler <davidtsadler@googlemail.com> | 2026-08-01 21:06:05 +0100 |
|---|---|---|
| committer | David T. Sadler <davidtsadler@googlemail.com> | 2026-08-01 21:10:15 +0100 |
| commit | a0e37ee21395753620f1fa00edcfc68b8f005c28 (patch) | |
| tree | 65ef96d9be29b3b4fcb97c64ecd71aa172a1ada3 | |
| parent | 571b8e1c8435d6545b2c4fc24d7155a4dc8ea292 (diff) | |
| -rw-r--r-- | nvim/.config/nvim/ftplugin/asm.lua | 26 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/config/keymaps.lua | 2 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/conform.lua | 1 | ||||
| -rw-r--r-- | nvim/.config/nvim/lua/plugins/nvim-treesitter.lua | 1 |
4 files changed, 29 insertions, 1 deletions
diff --git a/nvim/.config/nvim/ftplugin/asm.lua b/nvim/.config/nvim/ftplugin/asm.lua new file mode 100644 index 0000000..6fd271e --- /dev/null +++ b/nvim/.config/nvim/ftplugin/asm.lua @@ -0,0 +1,26 @@ +-- https://github.com/grahambates/m68k-lsp +-- Guard check: Only boot the server if the binary is visible in the current shell. +if vim.fn.executable("m68k-lsp-server") == 1 then + vim.lsp.start({ + name = "m68k-lsp", + cmd = { "m68k-lsp-server", "--stdio" }, + root_dir = vim.fs.dirname(vim.fs.find({ ".git", "shell.nix" }, { upward = true })[1]), + init_options = { + processors = { "mc68000" }, + vasm = { + provideDiagnostics = true, + binPath = "vasmm68k_mot", + args = { "-devpac", "-Fhunk" }, + }, + }, + }) +else + vim.diagnostic.set(vim.api.nvim_create_namespace("m68k_notice"), vim.api.nvim_get_current_buf(), { + { + lnum = 0, + col = 0, + severity = vim.diagnostic.severity.WARN, + message = "Amiga Assembler detected, but m68k-lsp-server was not found. Did you forget to enter the nix-shell?", + }, + }) +end diff --git a/nvim/.config/nvim/lua/config/keymaps.lua b/nvim/.config/nvim/lua/config/keymaps.lua index a9bf961..f4e1706 100644 --- a/nvim/.config/nvim/lua/config/keymaps.lua +++ b/nvim/.config/nvim/lua/config/keymaps.lua @@ -247,7 +247,7 @@ end, { desc = "Quickfix List" }) -- Language Formatting and Linting. set("n", "<leader>lf", function() - require("conform").format({ bufnr = 0 }) + require("conform").format({ bufnr = 0, lsp_format = "fallback" }) end, { desc = "Format File" }) set("n", "<leader>ll", function() require("lint").try_lint() diff --git a/nvim/.config/nvim/lua/plugins/conform.lua b/nvim/.config/nvim/lua/plugins/conform.lua index 94bdb06..dec12cc 100644 --- a/nvim/.config/nvim/lua/plugins/conform.lua +++ b/nvim/.config/nvim/lua/plugins/conform.lua @@ -12,6 +12,7 @@ require("conform").setup({ typescript = { "biome", "prettier", stop_after_first = true }, javascriptreact = { "biome", "prettier", stop_after_first = true }, typescriptreact = { "biome", "prettier", stop_after_first = true }, + asm = { "lsp" }, }, formatters = { php_cs_fixer = { diff --git a/nvim/.config/nvim/lua/plugins/nvim-treesitter.lua b/nvim/.config/nvim/lua/plugins/nvim-treesitter.lua index e646c1b..8a1a474 100644 --- a/nvim/.config/nvim/lua/plugins/nvim-treesitter.lua +++ b/nvim/.config/nvim/lua/plugins/nvim-treesitter.lua @@ -1,6 +1,7 @@ vim.pack.add({ "https://github.com/nvim-treesitter/nvim-treesitter" }) require("nvim-treesitter").install({ + "asm", "bash", "git_config", "git_rebase", |
