Kaynağa Gözat

Merge branch 'rolling'

kylo252 3 yıl önce
ebeveyn
işleme
a57e34a85e

+ 3 - 0
lua/lvim/core/cmp.lua

@@ -283,6 +283,9 @@ M.config = function()
       ["<C-e>"] = cmp.mapping.abort(),
       ["<CR>"] = cmp.mapping(function(fallback)
         if cmp.visible() and cmp.confirm(lvim.builtin.cmp.confirm_opts) then
+          if jumpable() then
+            luasnip.jump(1)
+          end
           return
         end
 

+ 4 - 1
lua/lvim/core/which-key.lua

@@ -207,7 +207,10 @@ M.config = function()
             "<cmd>lua vim.fn.execute('edit ' .. require('lvim.core.log').get_path())<cr>",
             "Open the default logfile",
           },
-          l = { "<cmd>lua require('lvim.core.terminal').toggle_log_view(vim.lsp.get_log_path())<cr>", "view lsp log" },
+          l = {
+            "<cmd>lua require('lvim.core.terminal').toggle_log_view(vim.lsp.get_log_path())<cr>",
+            "view lsp log",
+          },
           L = { "<cmd>lua vim.fn.execute('edit ' .. vim.lsp.get_log_path())<cr>", "Open the LSP logfile" },
           n = {
             "<cmd>lua require('lvim.core.terminal').toggle_log_view(os.getenv('NVIM_LOG_FILE'))<cr>",

+ 1 - 0
lua/lvim/lsp/config.lua

@@ -55,6 +55,7 @@ return {
     "phpactor",
     "pylsp",
     "rome",
+    "sorbet",
     "sqlls",
     "sqls",
     "stylelint_lsp",

+ 0 - 10
lua/lvim/lsp/handlers.lua

@@ -36,16 +36,6 @@ function M.setup()
         if not vim.api.nvim_buf_is_loaded(bufnr) then
           return
         end
-
-        local sign_names = {
-          "DiagnosticSignError",
-          "DiagnosticSignWarn",
-          "DiagnosticSignInfo",
-          "DiagnosticSignHint",
-        }
-        for i, sign in ipairs(lvim.lsp.diagnostics.signs.values) do
-          vim.fn.sign_define(sign_names[i], { texthl = sign_names[i], text = sign.text, numhl = "" })
-        end
         vim_diag.show(namespace, bufnr, diagnostics, config)
       else
         vim.lsp.diagnostic.save(diagnostics, bufnr, ctx.client_id)

+ 13 - 0
lua/lvim/lsp/init.lua

@@ -136,6 +136,13 @@ function M.get_common_opts()
   }
 end
 
+local LSP_DEPRECATED_SIGN_MAP = {
+  ["LspDiagnosticsSignError"] = "DiagnosticSignError",
+  ["LspDiagnosticsSignWarning"] = "DiagnosticSignWarn",
+  ["LspDiagnosticsSignHint"] = "DiagnosticSignHint",
+  ["LspDiagnosticsSignInformation"] = "DiagnosticSignInfo",
+}
+
 function M.setup()
   Log:debug "Setting up LSP support"
 
@@ -144,7 +151,13 @@ function M.setup()
     return
   end
 
+  local is_neovim_nightly = vim.fn.has "nvim-0.5.1" > 0
+
   for _, sign in ipairs(lvim.lsp.diagnostics.signs.values) do
+    local lsp_sign_name = LSP_DEPRECATED_SIGN_MAP[sign.name]
+    if is_neovim_nightly and lsp_sign_name then
+      vim.fn.sign_define(lsp_sign_name, { texthl = lsp_sign_name, text = sign.text, numhl = lsp_sign_name })
+    end
     vim.fn.sign_define(sign.name, { texthl = sign.name, text = sign.text, numhl = sign.name })
   end
 

+ 4 - 4
lua/lvim/plugins.lua

@@ -1,17 +1,17 @@
 local commit = {
   packer = "7f62848f3a92eac61ae61def5f59ddb5e2cc6823",
-  lsp_config = "6224c54a9945a52bf43a8bc1a42a112084590c0b",
+  lsp_config = "903a1fbca91b74e6fbc905366ce38364b9d7ba98",
   nlsp_settings = "29f49afe27b43126d45a05baf3161a28b929f2f1",
-  null_ls = "64b269b51c7490660dcb2008f59ae260f2cdbbe4",
+  null_ls = "3bf64acca268f3d7e0455501b82cf3f02f38c292",
   fix_cursor_hold = "0e4e22d21975da60b0fd2d302285b3b603f9f71e",
-  lsp_installer = "c9dbc8afc2d56227ed0cba5a3348b8dd170e3a1d",
+  lsp_installer = "37d9326f4ca4093b04eabdb697fec3764e226f88",
   nvim_notify = "ee79a5e2f8bde0ebdf99880a98d1312da83a3caa",
   structlog = "6f1403a192791ff1fa7ac845a73de9e860f781f1",
   popup = "f91d80973f80025d4ed00380f2e06c669dfda49d",
   plenary = "96e821e8001c21bc904d3c15aa96a70c11462c5f",
   telescope = "078a48db9e0720b07bfcb8b59342c5305a1d1fdc",
   telescope_fzf_native = "59e38e1661ffdd586cb7fc22ca0b5a05c7caf988",
-  nvim_cmp = "1774ff0f842146521c63707245d3de5db2bb3732",
+  nvim_cmp = "ca6386854982199a532150cf3bd711395475ebd2",
   friendly_snippets = "94f1d917435c71bc6494d257afa90d4c9449aed2",
   autopairs = "f858ab38b532715dbaf7b2773727f8622ba04322",
   treesitter = "47cfda2c6711077625c90902d7722238a8294982",

+ 12 - 4
tests/lsp_spec.lua

@@ -60,11 +60,19 @@ a.describe("lsp workflow", function()
     require("lvim.lsp").setup()
 
     for _, file in ipairs(vim.fn.glob(lvim.lsp.templates_dir .. "/*.lua", 1, 1)) do
-      local count = 0
-      for _ in io.lines(file) do
-        count = count + 1
+      local content = {}
+      for entry in io.lines(file) do
+        table.insert(content, entry)
       end
-      assert.equal(count, 1)
+      local err_msg = ""
+      if #content > 1 then
+        err_msg = string.format(
+          "found more than one server for [%q]: \n{\n %q \n}",
+          file:match "[^/]*.lua$",
+          table.concat(content, ", ")
+        )
+      end
+      assert.equal(err_msg, "")
     end
   end)
 end)

+ 58 - 11
utils/installer/uninstall.sh

@@ -1,11 +1,58 @@
-#!/bin/sh
-USER_BIN_DIR="$HOME/.local/bin"
-if [ -d "/data/data/com.termux" ]; then
-  sudo() {
-    eval "$@"
-  }
-  USER_BIN_DIR="$HOME/../usr/bin"
-fi
-rm -rf ~/.local/share/lunarvim
-sudo rm "$USER_BIN_DIR"/lvim
-rm -rf ~/.local/share/applications/lvim.desktop
+#!/usr/bin/env bash
+set -eo pipefail
+
+ARGS_REMOVE_BACKUPS=0
+
+declare -r XDG_DATA_HOME="${XDG_DATA_HOME:-"$HOME/.local/share"}"
+declare -r XDG_CACHE_HOME="${XDG_CACHE_HOME:-"$HOME/.cache"}"
+declare -r XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-"$HOME/.config"}"
+
+declare -r LUNARVIM_RUNTIME_DIR="${LUNARVIM_RUNTIME_DIR:-"$XDG_DATA_HOME/lunarvim"}"
+declare -r LUNARVIM_CONFIG_DIR="${LUNARVIM_CONFIG_DIR:-"$XDG_CONFIG_HOME/lvim"}"
+
+# TODO: Use a dedicated cache directory #1256
+declare -r LUNARVIM_CACHE_DIR="$XDG_CACHE_HOME/nvim"
+
+LVIM_BIN="$(which lvim 2>/dev/null)"
+
+declare -a __lvim_dirs=(
+  "$LUNARVIM_CONFIG_DIR"
+  "$LUNARVIM_RUNTIME_DIR"
+  "$LUNARVIM_CACHE_DIR"
+)
+
+function usage() {
+  echo "Usage: uninstall.sh [<options>]"
+  echo ""
+  echo "Options:"
+  echo "    -h, --help                       Print this help message"
+  echo "    --remove-backups                 Remove old backup folders as well"
+}
+
+function parse_arguments() {
+  while [ "$#" -gt 0 ]; do
+    case "$1" in
+      --remove-backups)
+        ARGS_REMOVE_BACKUPS=1
+        ;;
+      -h | --help)
+        usage
+        exit 0
+        ;;
+    esac
+    shift
+  done
+}
+
+function main() {
+  parse_arguments "$@"
+  for dir in "${__lvim_dirs[@]}"; do
+    rm -rf "$dir"
+    if [ "$ARGS_REMOVE_BACKUPS" -eq 1 ]; then
+      rm -rf "$dir.bak"
+    fi
+  done
+  rm -f "$LVIM_BIN"
+}
+
+main "$@"