Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

snyk_ls

plugins.lsp.servers.snyk_ls.enable

Whether to enable https://github.com/snyk/snyk-ls Snyk is a developer security platform that helps you find and fix vulnerabilities in your code, open source dependencies, containers, and infrastructure as code. The Snyk Language Server provides real-time security scanning for: - Snyk Open Source: Find and fix vulnerabilities in open source dependencies - Snyk Code: Find and fix security vulnerabilities in your code - Snyk Infrastructure as Code: Find and fix security issues in Kubernetes, Terraform, and other IaC files ## Authentication Note: Currently, only token-based authentication is supported in Neovim. 1. Get your API token from https://app.snyk.io/account 2. Set the SNYK_TOKEN environment variable: sh export SNYK_TOKEN="your-token-here" ## Trusted Folders Snyk requires you to trust directories before scanning them. To avoid being prompted every time:

vim.lsp.config('snyk_ls', {
  init_options = {
    trustedFolders = {
      '/Users/yourname/projects',  -- Trust your projects directory
      '/path/to/another/trusted/dir',
    },
  },
})

Important: Trust the top-level directory where you store your repositories, not individual repos. For example, if you work on /Users/yourname/projects/my-app, trust /Users/yourname/projects. Only trust directories containing code you trust to scan. ## Configuration Full configuration options available at https://github.com/snyk/snyk-ls#configuration-1 ### Advanced Configuration For non-default multi-tenant or single-tenant setups, you may need to specify: - endpoint: Custom Snyk API endpoint (e.g., https://api.eu.snyk.io for EU, or your single-tenant URL) ```.

Type: boolean

Default:

false

Example:

true

Declared by:

plugins.lsp.servers.snyk_ls.package

Package to use for snyk_ls. Nixpkgs does not include this package, and as such an external derivation or null must be provided.

Type: null or package

Default: No package, throws when undefined

Declared by:

plugins.lsp.servers.snyk_ls.packageFallback

When enabled, the language server package will be added to the end of the PATH (suffix) instead of the beginning (prefix).

This can be useful if you want local versions of the language server (e.g. from a devshell) to override the Nixvim version.

Type: boolean

Default:

false

Declared by:

plugins.lsp.servers.snyk_ls.autostart

Controls if the FileType autocommand that launches a language server is created. If false, allows for deferring language servers until manually launched with :LspStart (|lspconfig-commands|).

Type: null or boolean or raw lua code

Default: null

Plugin default: true

Declared by:

plugins.lsp.servers.snyk_ls.cmd

A list where each entry corresponds to the blankspace delimited part of the command that launches the server.

The first entry is the binary used to run the language server. Additional entries are passed as arguments.

Type: null or (list of string)

Default: null when package is null, otherwise null

Declared by:

plugins.lsp.servers.snyk_ls.extraOptions

Extra options for the snyk_ls language server.

Type: attribute set of anything

Default:

{ }

Declared by:

plugins.lsp.servers.snyk_ls.filetypes

Set of filetypes for which to attempt to resolve {root_dir}. May be empty, or server may specify a default value.

Type: null or (list of string)

Default:

null

Declared by:

plugins.lsp.servers.snyk_ls.rootMarkers

A list of files that mark the root of the project/workspace.

Vim’s LSP will try to share the same language server instance for all buffers matching filetypes within the same project.

A new server instance is only spawned when opening a buffer with a different project root.

See :h lsp-config and :h vim.fs.root().

Type: null or (list of (string or raw lua code)) or raw lua code

Default: null

Plugin default: null

Declared by:

plugins.lsp.servers.snyk_ls.settings

The settings for this LSP.

Type: open submodule of attribute set of lua value

Default:

{ }

Example:

{
  callback = lib.nixvim.mkRaw ''
  function()
    print('nixvim')
  end
'';
  foo_bar = 42;
  hostname = "localhost:8080";
}

Declared by: