Skip to content

Commit

Permalink
Issue template: add minimal init.lua to repo and clean up issue template
Browse files Browse the repository at this point in the history
  • Loading branch information
mjlbach committed Jan 7, 2021
1 parent f913316 commit 1238942
Show file tree
Hide file tree
Showing 2 changed files with 91 additions and 7 deletions.
26 changes: 19 additions & 7 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,32 @@ labels: bug

- `nvim --version`:
- nvim-lsp version(commit hash):
- `:checkhealth` result
- What language server(If the problem is related to a specific language server):
- What language server (If the problem is related to a specific language server):
- Can you reproduce this behavior on other language server clients (vscode, languageclient-neovim, coc.nvim, etc.):
- Can you reproduce this behavior on other language servers offer by the nvim-lspconfig repo? (pyls -> pyright):
- Is this problem isolated to this particular language server:
- Can you reproduce this behavior on other language servers offered in the nvim-lspconfig repo? (pyls -> pyright):
- Is the problem isolated to a particular language server:
- Operating system/version:
- Terminal name/version:
- `$TERM`:

### How to reproduce the problem from neovim startup

### Actual behaviour

### Expected behaviour

### Minimal init.vim or init.lua and code sample
<!-- You can download a minimal_init.lua from here
curl -fLO https://raw.githubusercontent.com/neovim/nvim-lspconfig/master/test/minimal_init.lua
After editing to include your language server, run neovim with nvim -u minimal_init.lua -->

### Health check
<details>
<summary>Checkhealth result</summary>
<!-- Run `:checkhealth lspconfig` and paste the result here-->
</details>
### LSP log
<!-- Please add vim.lsp.set_log_level("debug") to your lua block in init.vim and paste a link to your log file, located at $HOME/.local/share/nvim/lsp.log -->
<!-- If not using the minimal_init.lua please add vim.lsp.set_log_level("debug") to your lua block
in init.vim and paste a link to your log file, located at $HOME/.local/share/nvim/lsp.log -->
<details>
<summary>Log file</summary>
<!-- past you log between here -->
</details>
72 changes: 72 additions & 0 deletions test/minimal_init.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
local execute = vim.api.nvim_command
local fn = vim.fn

local install_path = "/tmp/site/pack/packer/opt/packer.nvim"

if fn.empty(fn.glob(install_path)) > 0 then
execute("!git clone https://github.com/wbthomason/packer.nvim " .. install_path)
end

execute "packadd packer.nvim"

vim.cmd [[packadd packer.nvim]]
vim.cmd [[autocmd BufWritePost minimal_init.lua PackerCompile]]
vim.cmd [[autocmd BufWritePost minimal_init.lua PackerInstall]]

local use = require('packer').use
require("packer").startup(
{
function()
use "neovim/nvim-lspconfig"
end,
config = {package_root = "/tmp/site/pack"}
}
)

-- LSP settings
-- log file location: $HOME/.local/share/nvim/lsp.log
vim.lsp.set_log_level("debug")
local nvim_lsp = require('lspconfig')
local on_attach = function(_, bufnr)
local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end
local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end

buf_set_option('omnifunc', 'v:lua.vim.lsp.omnifunc')

-- Mappings.
local opts = { noremap=true, silent=true }
buf_set_keymap('n', 'gD', '<Cmd>lua vim.lsp.buf.declaration()<CR>', opts)
buf_set_keymap('n', 'gd', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)
buf_set_keymap('n', 'K', '<Cmd>lua vim.lsp.buf.hover()<CR>', opts)
buf_set_keymap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
buf_set_keymap('n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
buf_set_keymap('n', '<space>wa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', opts)
buf_set_keymap('n', '<space>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
buf_set_keymap('n', '<space>wl', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>', opts)
buf_set_keymap('n', '<space>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
buf_set_keymap('n', '<space>rn', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
buf_set_keymap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
buf_set_keymap('n', '<space>e', '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>', opts)
buf_set_keymap('n', '[d', '<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>', opts)
buf_set_keymap('n', ']d', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts)
buf_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts)
end

-- Add the server that troubles you here
local name = "pyright"
local cmd = { "pyright-langserver", "--stdio"} -- needed for elixirls, omnisharp, sumneko_lua
if not name then
print("You have not defined a server name, please edit minimal_init.lua")
end
if not nvim_lsp[name].document_config.default_config.cmd and (not cmd) then
print([[You have not defined a server default cmd for a server
that requires it please edit minimal_init.lua]])
end

nvim_lsp[name].setup {
cmd = cmd,
on_attach = on_attach,
}

print([[You can find your log at $HOME/.local/share/nvim/lsp.log. Please paste in a
github issue under a details tag as described in the issue template.]])

0 comments on commit 1238942

Please sign in to comment.