aboutsummaryrefslogtreecommitdiff
path: root/.github/ISSUE_TEMPLATE/lsp_bug_report.yml
blob: 88867ce644f28a2a0d5daf5354d7b796f0495166 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
name: Language server (LSP) client bug
description: Report an issue with Neovim LSP
labels: [bug, lsp]
body:

  - type: markdown
    attributes:
      value: |
        _Before reporting:_ search [existing issues](https://github.com/neovim/neovim/issues?q=is%3Aissue+is%3Aopen+label%3Abug) and check the [FAQ](https://github.com/neovim/neovim/wiki/FAQ). Usage questions such as "How do I...?" or "Why isn't X language server/feature working?" belong on the [Neovim Discourse](https://neovim.discourse.group/c/7-category/7) and will be closed.

  - type: input
    attributes:
      label: "Neovim version (nvim -v)"
      placeholder: "0.6.0 commit db1b0ee3b30f"
    validations:
      required: true
  - type: input
    attributes:
      label: "Language server name/version"
      placeholder: "rls 0.5.2"
    validations:
      required: true
  - type: input
    attributes:
      label: "Operating system/version"
      placeholder: "emacs 23"
    validations:
      required: true

  - type: textarea
    attributes:
      label: 'Steps to reproduce using "nvim -u minimal_init.lua"'
      description: |
        - Create a minimal_init.lua using vim.lsp.start:

        ```lua
        --- CHANGE THESE
        local pattern = 'the-filetype'
        local cmd = {'name-of-language-server-executable'}
        -- Add files/folders here that indicate the root of a project
        local root_markers = {'.git', '.editorconfig'}
        -- Change to table with settings if required
        local settings = vim.empty_dict()

        vim.api.nvim_create_autocmd('FileType', {
          pattern = pattern,
          callback = function(args)
            local match = vim.fs.find(root_markers, { path = args.file, upward = true })[1]
            local root_dir = match and vim.fn.fnamemodify(match, ':p:h') or vim.NIL
            vim.lsp.start({
              name = 'bugged-ls',
              cmd = cmd,
              root_dir = root_dir,
              settings = settings
            })
          end
        })
        ```

        See `:h lsp-quickstart` and `:h vim.lsp.start` for more information

        - Provide a short code example and describe the folder layout
        - Describe how to trigger the issue. E.g. using `:lua vim.lsp.buf.*` commands

        _Note_: if the issue is with an autocompletion or other LSP plugin, report to that plugin's issue tracker.
    validations:
      required: true

  - type: textarea
    attributes:
      label: "Expected behavior"
      description: "Describe the behavior you expect. May include logs, images, or videos."
  - type: textarea
    attributes:
      label: "Actual behavior"

  - type: input
    attributes:
      label: "Log file"
      placeholder: "https://gist.github.com/prakhar1989/1b0a2c9849b2e1e912fb"
      description: |
        - Upload `lsp.log` before and after the problem in a [secret gist](https://gist.github.com/). Paste the URL to the gist.
        - You can set the log level by adding `vim.lsp.set_log_level("debug")` after setting up LSP in your config.
        - You can find the location of the log with `:lua print(vim.lsp.get_log_path())`