diff --git a/home/dot_config/exact_nvim/exact_lua/exact_plugins/conform.lua b/home/dot_config/exact_nvim/exact_lua/exact_plugins/conform.lua new file mode 100644 index 0000000..38d7e78 --- /dev/null +++ b/home/dot_config/exact_nvim/exact_lua/exact_plugins/conform.lua @@ -0,0 +1,12 @@ +return { + { + 'stevearc/conform.nvim', + optional = true, + opts = { + formatters_by_ft = { + ruby = { vim.g.lazyvim_ruby_formatter }, + eruby = { 'prettier' }, + }, + }, + }, +} diff --git a/home/dot_config/exact_nvim/exact_lua/exact_plugins/lsp.lua b/home/dot_config/exact_nvim/exact_lua/exact_plugins/lsp.lua index 135f0ec..1782b65 100644 --- a/home/dot_config/exact_nvim/exact_lua/exact_plugins/lsp.lua +++ b/home/dot_config/exact_nvim/exact_lua/exact_plugins/lsp.lua @@ -33,6 +33,39 @@ return { ruby_lsp = { mason = false, cmd = { vim.fn.expand('~/.asdf/shims/ruby-lsp') }, + cmd_env = { + BUNDLE_GEMFILE = vim.fn.expand('~/.ruby-lsp/Gemfile'), + }, + init_options = { + enabledFeatures = { + 'codeActions', + 'codeLens', + 'completion', + 'definition', + 'diagnostics', + 'documentHighlights', + 'documentLink', + 'documentSymbols', + 'foldingRanges', + 'formatting', + 'hover', + 'selectionRanges', + 'semanticHighlighting', + 'signatureHelp', + 'typeHierarchy', + 'workspaceSymbol', + }, + experimentalFeaturesEnabled = false, + formatter = 'auto', + indexing = { + excludedPatterns = { + '**/test/**/*', + '**/spec/**/*', + '**/db/**/*', + '**/vendor/**/*', + }, + }, + }, }, eslint = { root_dir = get_root_dir, diff --git a/home/exact_dot_ruby-lsp/Gemfile b/home/exact_dot_ruby-lsp/Gemfile new file mode 100644 index 0000000..271f14f --- /dev/null +++ b/home/exact_dot_ruby-lsp/Gemfile @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +source 'https://rubygems.org' + +ruby file: '.tool-versions' + +gem 'rubocop' +gem 'rubocop-packaging' +gem 'rubocop-performance' +gem 'rubocop-rails' +gem 'rubocop-rspec' +gem 'rubocop-shopify' +gem 'rubocop-thread_safety' +gem 'ruby-lsp' +gem 'test-prof' diff --git a/home/exact_dot_ruby-lsp/dot_tool-versions b/home/exact_dot_ruby-lsp/dot_tool-versions new file mode 100644 index 0000000..c1c77c3 --- /dev/null +++ b/home/exact_dot_ruby-lsp/dot_tool-versions @@ -0,0 +1 @@ +ruby 3.2.3