For historical reasons, Emacs supports key bindings for the 'super' and 'hyper' modifier keys, which you probably do not have on your keyboard. See Modifier Keys in the Emacs manual for more information.
So the key bindings you are looking at use super+l as a prefix.
You can simulate these additional keys with some built-it sequences:
C-x @ h adds the ...
As @phils suggested you should be able to run M-x add-dir-local-variable. You will be prompted for a mode, and you could type/select lsp-mode (I am guessing that is the mode name). Then, you will be prompted for a variable, and you could type/select lsp-purescript-use-npx. Finally, you should be prompted for the value. Depending on your setup, you may or may ...
Bad form just to link but possibly this helps:
It covers how to add workspace folders and also how to reset your lsp settings to get a prompt.
Maybe this is a bit late, but I'm also annoyed by this problem and clangd seems to have trouble working with multiple files. You can use lsp-clients-clangd-args to configure your clangd. Add the following:
For more flags, see clangd --help.
By chance, after commenting on this, hours later I ran into exactly the same issue. The cause was that spacemacs had for a while pinned its version of dash at 2.17.0, and -compose was introduced in 2.18.0 (moved over from the now obsolete package dash-functional). The latest lsp-mode.el uses that function.
I fixed it by updating my spacemacs checkout to ...
There are actually two variables that drive this behavior.
You tried the first one, lsp-enable-snippet and it didn't work. This means that the culprit is probably company-lsp, which engages in a similar behavior and uses a variable that is nearly identical, company-lsp-enable-snippet.
Try disabling that with (setq company-lsp-enable-snippet nil) and see ...
lsp-scala is deprecated and you should now use lsp-mode which has scala support via metals. From the lsp-scala repo:
lsp-scala is now part of lsp-mode as lsp-metals. Please do not use this package.
I would suggest referring to the metals documentation which can help you with installation: https://scalameta.org/metals/docs/editors/emacs.html (make sure ...
:init (setq lsp-keymap-prefix "C-c l")
:hook (python-mode . lsp-deferred))
The doc for lsp-deferred:
Entry point that defers server startup until buffer is visible.
lsp-deferred will wait until the buffer is visible before invoking lsp.
This avoids ...
Yes, you want to use .dir-locals.el and assuming the enable/disable commands you need are functions, its pseudo-variable eval. If you have lsp-mode globally enabled, add something like this to the .dir-locals.el file in the root of your "odd" project:
;;; Directory Local Variables
;;; For more information see (info "(emacs) Directory Variables")
ATM there are no manual instructions, please open an issue in lsp-java repo. To fix your problem do:
M-x lsp-java-update-server - do that to force lsp-java to download the install pom.xml and cancel the task.
In the *Messages* buffer there will be something like this:
Customize the lsp-enable-symbol-highlighting option:
(setq lsp-enable-symbol-highlighting nil)
or via Easy Customization Interface:
M-x customize-variable <RET> lsp-enable-symbol-highlighting <RET>
Highlight references of the symbol at point.
I still don't know how to use the lsp-json-schemas variable, but with this mode properly activated in emacs you can add a top-level $schema property to the object you are presumably editing in the file and the auto-completions and other features will kick in.
This solution is not using LSP. It only uses Ctags. You could use company-mode's default backend company-etags or 3rd party package company-ctags for code completion.
The key question is how to generate TAGS which is read by company backend.
I use my own package counsel-etags (https://github.com/redguardtoo/counsel-etags) to generate TAGS automatically. It ...
There is a variable you can customize that automatically enables the headerline breadcrumb mode whenever lsp-mode is active. Try something like:
The following snippet works for me, it enables breadcrumbs in all modes where lsp is active.
(setq package-user-dir (expand-file-name "~/.emacs.d/elpa/")
'("melpa" . "https://melpa.org/packages/") t)
You want to set that variable to a string. This ought to work:
(setq lsp-keymap-prefix "s-k"))
You had :ensure t in there as well, but it doesn't have anything to do with configuring the package; instead it causes use-package to try to install lsp-mode if it isn't available. You might want to include it, or you ...
Nope. As best I can tell, the LSP protocol doesn't appear to have any facility for looking up definitions based on name rather than document position. In fact, an LSP client like Emacs doesn't even parse the document to get the identifier at the point. Instead it just sends the current cursor position (file name, line, and column number).
This is documented ...
It's a minor glitch/bug in the Emacs error interface, compilation-next-file only works (at least as of Emacs 25) if you are in the buffer showing the error messages, not in the source file with the error. Do something like other-window to get your cursor into error message buffer and compilation-next-file will work (and then you probably need to hit ...
The custom variables defined by major and minor modes are all available for setting within dir-locals. You could set lsp-purescript-use-npx to nil like so:
Line 1 ((...
I had a similar issue with lsp-mode and treemacs, though I am using vanilla Emacs not Spacemacs. I am also using macOS.
From this Reddit thread I discovered that the limits do not appear to be reasonably adjustable:
Emacs uses pselect, which is limited to FD_SETSIZE file descriptors, usually 1024. I suspect you've got one of the file-watching utilities ...