diff options
| author | William Boman <william@redwill.se> | 2022-07-07 17:15:35 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-07-07 17:15:35 +0200 |
| commit | 234cbfe7879dc66c25513713f89fbbe840fd68ca (patch) | |
| tree | 2e7e8d5907a2ad8e19d2332a325c36f0cbf2fe79 /lua | |
| parent | feat: add delve and go-debug-adapter (#7) (diff) | |
| download | mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.tar mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.tar.gz mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.tar.bz2 mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.tar.lz mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.tar.xz mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.tar.zst mason-234cbfe7879dc66c25513713f89fbbe840fd68ca.zip | |
feat: add ktlint (#8)
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/mason/_generated/package_index.lua | 1 | ||||
| -rw-r--r-- | lua/mason/packages/ktlint/init.lua | 38 |
2 files changed, 39 insertions, 0 deletions
diff --git a/lua/mason/_generated/package_index.lua b/lua/mason/_generated/package_index.lua index 55323c26..a1b36015 100644 --- a/lua/mason/_generated/package_index.lua +++ b/lua/mason/_generated/package_index.lua @@ -63,6 +63,7 @@ return { ["jsonnet-language-server"] = "mason.packages.jsonnet-language-server", ["julia-lsp"] = "mason.packages.julia-lsp", ["kotlin-language-server"] = "mason.packages.kotlin-language-server", + ktlint = "mason.packages.ktlint", lelwel = "mason.packages.lelwel", lemminx = "mason.packages.lemminx", ["lemmy-help"] = "mason.packages.lemmy-help", diff --git a/lua/mason/packages/ktlint/init.lua b/lua/mason/packages/ktlint/init.lua new file mode 100644 index 00000000..1af3bf6d --- /dev/null +++ b/lua/mason/packages/ktlint/init.lua @@ -0,0 +1,38 @@ +local Pkg = require "mason.core.package" +local github = require "mason.core.managers.github" +local std = require "mason.core.managers.std" +local path = require "mason.core.path" +local platform = require "mason.core.platform" + +return Pkg.new { + name = "ktlint", + desc = [[An anti-bikeshedding Kotlin linter with built-in formatter]], + homepage = "https://github.com/pinterest/ktlint", + languages = { Pkg.Lang.Kotlin }, + categories = { Pkg.Cat.Formatter, Pkg.Cat.Linter }, + ---@async + ---@param ctx InstallContext + install = function(ctx) + github + .download_release_file({ + repo = "pinterest/ktlint", + asset_file = "ktlint", + out_file = "ktlint", + }) + .with_receipt() + + platform.when { + unix = function() + std.chmod("+x", { "ktlint" }) + ctx:link_bin("ktlint", "ktlint") + end, + win = function() + ctx:write_shell_exec_wrapper( + "ktlint", + ("java -jar %q"):format(path.concat { ctx.package:get_install_path(), "ktlint" }) + ) + ctx:link_bin("ktlint", "ktlint.cmd") + end, + } + end, +} |
