Commit Graph

2377 Commits

Author SHA1 Message Date
Aaron Zeng 433f6729e7
[ocaml] Fix typo (#14692) 2021-04-21 14:37:55 -04:00
Aaron Zeng 7e03196280
[ocaml] Fix for merlin package split (#14691) 2021-04-21 13:38:18 -04:00
ralph-cheng a6fc48dba4
bug fix - eslint not available for typescript-tsx-mode (#14685) 2021-04-21 11:04:51 -04:00
Daniel Nicolai 866c362d06 configure racket-describe-mode keybindings
Racket describe mode comes with its own keybinding (i.e. `q` for quit).
Additionally it contains links, so this PR binds `o` to `link-hint-open-link`
(`ace-link` does not support this mode)
2021-04-19 21:43:17 +02:00
Lucius Hu 3bbc7a7d40
core-customization: improved SAFE variable handling (#14679)
* core-customization: improved SAFE variable handling

- SAFE can either be a function or t.
  - When it's t, use a default validation function
    `(lambda (val) (validate-value val TYPE t))`
  - When it's a function, use the supplied function.

* Fixed bugs in go and groovy layer

In almost any cases, it's better to supply `t` instead of a function, to
`SAFE` argument of `spacemacs|defc`.

For example,
```elisp
 (spacemacs|defc go-use-gocheck-for-testing nil
   "If using gocheck for testing when running the tests -check.f will be used instead of -run to specify the test that will be ran. Gocheck is mandatory for testing suites."
  'boolean nil #'booleanp)
```

If its value is nil, it evaluate to `nil`, which means that `nil` is not
a safe value for `go-use-gocheck-for-testing` local variable.

But clearly it is.

* core-customization: improved SAFE variable handling

- Added a function `spacemacs-customization//get-variable-validator`.
  This function is designed to be used with `safe-local-variable`
  property of spacemacs custom variables.
  See details in the docstring.

```elisp
(put 'FOO 'safe-local-variable
     (apply-partially 'spacemacs-customization//get-variable-validator
                      'FOO))
```

- This is better than a lambda since `apply-partially` returns a compiled
  function. (Though the performace gain may be tiny.)
- This is better than simply calling `validate-value`, because it returns
  nil when value is nil. But sometimes nil is a valid value.

Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
2021-04-19 21:34:09 +02:00
Sylvain Benner 4a1f0ae49f [python] Fix directory specific python-backend
With this fix it is now possible to select different backends in
different project using the directory variables mechanism of Emacs
(the file .dir-local.el)
2021-04-18 08:56:04 +02:00
Maximilian Wolff 247d059289
[go] Switch layer variables to defcustoms
and fix wrong declaration of go-mode hooks
2021-04-17 23:56:05 +02:00
Maximilian Wolff b3bf5c1fb4
[groovy] Fix wrong customization type 2021-04-17 23:13:48 +02:00
Lucius Hu bd3a7fb0b5
go: Fix local variables
- Labelled `go-backend` and `go-format-on-save` as safe local variable.
- Added local variable hooks of go mode:
  - `spacemacs//go-setup-backend`
  - `spacemacs//go-setup-eldoc`
  - `spacemacs//go-setup-format`

See: https://github.com/syl20bnr/spacemacs/issues/14653
2021-04-17 22:49:33 +02:00
Maximilian Wolff 8814329a11
[groovy] Replace defvar with spacemacs|defc
And extend spacemacs|defc to allow setting
a :safe directive.
2021-04-17 22:07:44 +02:00
Lucius Hu c83a9e76b3
groovy: Fix local vars
- Labelled `groovy-backend` as safe local variable.
- Added local variable hooks of groovy mode:
  - `spacemacs//groovy-setup-backend`
  - `spacemacs//groovy-setup-company`

See: https://github.com/syl20bnr/spacemacs/issues/14653
2021-04-17 21:02:22 +02:00
Lucius Hu 59ecf6a119 fixup! windows-scripts: replaced dos.el with bat-mode, added bmx-mode 2021-04-15 22:59:10 +02:00
Maximilian Wolff 3f795aebdb [parinfer] Remove path hack and obsolete layer specific hooks 2021-04-15 20:51:31 +00:00
emacspace 4471024721
[bot] Auto-update (#14648)
* documentation formatting: Thu Apr 15 19:58:45 UTC 2021

* Built-in files auto-update: Thu Apr 15 19:57:01 UTC 2021
2021-04-15 22:16:34 +02:00
Daniel Nicolai 8345568971 Fix scheme layer support for scheme implementations
The configuration for various scheme implementations has been split out of the
geiser package, breaking the current layer support for the implementations.

This commit adds a simple fix for the scheme implementations support.
Anybody is free to improve the code, but at least the layer will be fixed.
2021-04-15 21:54:36 +02:00
Simon Virenfeldt 693a0110ff Fix call to deleted method in latex layer
In commit f136f46 spacemacs//init-jump-handlers-MODE was removed,
which is used by the latex layer. Change to call to add-to-list instead.
2021-04-15 21:49:32 +02:00
Lucius Hu 2713ec8789 Fix #14641 2021-04-15 21:42:17 +02:00
Elliott Shugerman 32da42863e [c-c++] Fix "Wrong number of arguments" on Emacs 28
In Emacs 28+, `define-obsolete-variable-alias` requires the WHEN arg.
2021-04-15 07:57:00 +02:00
duianto 4262e01f11 [doc] Fix links 2021-04-13 11:38:33 +02:00
Maximilian Wolff 85d0aa2b18 [c-c++] Provide an alias for `c++-enable-organize-includes-on-save` 2021-04-12 21:00:09 +00:00
Evan Klitzke a4eadc97fe rename {,c-}c++-enable-organize-includes-on-save 2021-04-12 20:47:11 +00:00
Maximilian Wolff 66d774cd67
[java] Fix not existing function
I have overlooked this while I was merging
a related PR.
2021-04-10 09:47:25 +02:00
Maximilian Wolff e54affd5a7 [java] Add back support for emacs 25.1 2021-04-09 21:04:56 +00:00
Thanh Vuong d301a88df0 [java] only download meghanada package if needed
currently toggle `:if` for meghanada with `use-package` only tells `use-package`
not to load `meghanada` but spacemacs still downloads `meghanada`.

also we shouldn't care about emacs 25 anymore.
2021-04-09 21:03:41 +00:00
Maximilian Wolff 4139300488 [zig] Adjust backend variables to match new style 2021-04-09 20:59:05 +00:00
Maximilian Wolff be6f820256 Add missing GPLv3 headers to various files 2021-04-09 20:52:24 +00:00
Maximilian Wolff 8c937e9a71 [zig] Fix some smaller issues in the docs 2021-04-09 20:32:24 +00:00
Riccardo Binetti 6bafc72697 Enhance +lang/zig layer
Add support to LSP via zls (see also
https://github.com/emacs-lsp/lsp-mode/pull/2723)
2021-04-09 22:28:08 +02:00
Maximilian Wolff dc07cdbdc3 [windows-scripts] Add missing keybinding to docs
Automatic keybinding extraction is not yet
live.
2021-04-09 20:18:42 +00:00
Lucius Hu 96008496d6 windows-scripts: replaced dos.el with bat-mode, added bmx-mode
- Replaced `dos.el` with `bat-mode`
  - `dos.el` is superseded by `bat-mode`
  - `dos.el` is localised package
  - `bat-mode` is a built-in mode
- Added `bmx-mode`
  - `bmx-mode` provided syntax highlighting, code-navigation and refactoring
    capabilities on top of `bat-mode`
2021-04-09 20:08:55 +00:00
Lucius Hu 49d1eaed50 rust and lsp: better integration of lsp-rust-analyzer-reload-workspace
- Introduced a new command cargo-process-outdated
- Certain commands are known to change Cargo.toml and needs to reload workspace,
  wrapper functions that automatically reload workspace are added.
  - spacemacs/cargo-process-add
  - spacemacs/cargo-process-rm
  - spacemacs/cargo-process-outdated
- Added a layer variable for rust layer, cargo-process-reload-on-modify,
  which toggle the aforementioned behaviour.
- Added a new utility function in LSP layer, which returns server ID associated
  with current project.
  - spacemacs//lsp-client-server-id
- Rearranged keybindings for rust layers (see table below for details)

Commands wrapped with auto-reload functionality:

|Command                  |Binding      |
|-------------------------|-------------|
|`cargo-process-repeat`   |`SPC m c .`  |
|`cargo-process-add`      |`SPC m c a`  |
|`cargo-process-rm`       |`SPC m c r`  |
|`cargo-process-upgrade`  |`SPC m c U`  |

Commands with new bindings:

|Command                            |Old Binding |New Binding |
|-----------------------------------|------------|------------|
|`cargo-process-search`             |`SPC m c s` |`SPC m c /` |
|`cargo-process-fmt`                |`SPC m c f` |`SPC m c =` |
|`cargo-process-current-file-tests` |`SPC m c o` |`SPC m t b` |
|`cargo-process-current-test`       |`SPC m c t` |`SPC m t t` |
|`cargo-process-test`               |`SPC m t`   |`SPC m t a` |
2021-04-09 21:56:22 +02:00
emacspace 95a703b684 documentation formatting: Fri Apr 9 11:56:19 UTC 2021 2021-04-09 21:41:03 +02:00
Benjamin Sorenson d2b7399958 Fix bug in `spacemacs//python-setup-backend ()` 2021-04-09 21:39:07 +02:00
Julien Debon e817e0faae
[Python layer] Add links to the LSP implementations (#14562)
* [Python layer] Document Nix + Microsoft LSP

* Document how to make Nix + Microsoft LSP work
* Add links to Microsoft LSP and Pyright repos

* Remove nix part
2021-04-08 22:10:33 +02:00
Lucius Hu b0dc044885 fixup! purescript: refactor 2021-04-05 22:33:26 +02:00
Lucius Hu 5d39ffe98b fixup! fixup! perl5: refactor 2021-04-05 12:11:42 +02:00
Lucius Hu 145f469ec1 fixup! nim: refactor 2021-04-05 11:56:28 +02:00
Lucius Hu 79952251b4 fixup! lua: refactor 2021-04-05 11:47:53 +02:00
Lucius Hu a03585c4b5 fixup! latex: refactor 2021-04-05 11:36:54 +02:00
Lucius Hu 65f24d40d0 fixup! elm: refactor 2021-04-05 11:32:15 +02:00
German Lashevich 97a238f429 Fix packages missed in Melpa 2021-04-04 22:14:05 +02:00
Lucius Hu f7c2ce8fb6 fixup! python: refactor 2021-04-04 21:23:01 +02:00
Lucius Hu 5e641394f4 fixup! c-c++: refactor
This reverts commit e62d55b4fd.

This fixs https://github.com/syl20bnr/spacemacs/pull/14509#issuecomment-813023508
2021-04-04 19:21:46 +02:00
Lucius Hu 6e3ee5ae16 fixup! haskell: refactor 2021-04-04 19:00:40 +02:00
duianto e62d55b4fd Revert "c-c++: refactor"
This reverts commit dae0231fed.

c-c++-backend is void on startup:
https://github.com/syl20bnr/spacemacs/pull/14509#issuecomment-813023508
2021-04-04 14:43:51 +02:00
Lucius Hu 3b7650e8c3 fixup! perl5: refactor 2021-04-04 12:48:21 +02:00
Lucius Hu bec971d061 vimscript: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu b1f54b3371 typescript: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Replaced `(when (not foo) bar)` with `(unless foo bar)`
- Replaccd `(cond ((eq foo) bar))` form with `(pcase (foo bar))`
- Replaced `(set (make-local-variable 'foo) bar)` with `(setq-local foo bar)`
- Replaced `(if foo bar nil)` with `(when foo bar)`
2021-04-04 12:48:21 +02:00
Lucius Hu 9b36cf2d85 sql: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 2c22a8a697 shell-scripts: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu fd3fd46224 scala: refactor
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 8f47d285a6 rust: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 652de66ab2 ruby: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 26eb3df294 python: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Replaccd `(cond ((eq foo) bar))` form with `(pcase (foo bar))`
2021-04-04 12:48:21 +02:00
Lucius Hu 2fbe8cd3a3 purescript: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Refactored function
2021-04-04 12:48:21 +02:00
Lucius Hu ecf7a91619 php: refactor
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 99aad0d957 perl5: refactor
- Moved backend determination to `config.el`
- Refactored function
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 2b2b068792 nim: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Refactored function
- Removed unnecessary `progn`
2021-04-04 12:48:21 +02:00
Lucius Hu e55bf5e495 lua: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Refactored function
- Replaccd `(cond ((eq foo) bar))` form with `(pcase (foo bar))`
2021-04-04 12:48:21 +02:00
Lucius Hu cd0c914ba1 latex: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Refactored function
2021-04-04 12:48:21 +02:00
Lucius Hu 4ff5027b80 kotlin: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 40c72dc437 julia: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Replaced `(when (not foo) bar)` with `(unless foo bar)`
- Refactored function
2021-04-04 12:48:21 +02:00
Lucius Hu 64a349576b json: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu b395671066 javascript: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Replaced `(when (not foo) bar)` with `(unless foo bar)`
- Replaced `(set (make-local-variable 'foo) bar)` with `(setq-local foo bar)`
- Replaccd `(cond ((eq foo) bar))` form with `(pcase (foo bar))`
2021-04-04 12:48:21 +02:00
Lucius Hu 701ec57df9 java: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 2eda5371d8 haskell: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu e8e99500d4 groovy: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 0ef957b529 go: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Replaced unnecessary backquote construct with simple quotation
2021-04-04 12:48:21 +02:00
Lucius Hu 925e3a8265 fsharp: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Moved function from `packages.el` to `func.el`
2021-04-04 12:48:21 +02:00
Lucius Hu a427fa10df ess: refactor
- Moved backend determination to `config.el`
2021-04-04 12:48:21 +02:00
Lucius Hu b265984d17 erlang: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu f126f3e093 elm: refactor
- Moved backend determination to `config.el`
- Refactored function
- Replaced unnecessary backquote construct with simple quotation
2021-04-04 12:48:21 +02:00
Lucius Hu 9b6ffd7c22 elixir: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Removed unnecessary `progn`
2021-04-04 12:48:21 +02:00
Lucius Hu 43c4fa8772 dart: refactor
- Replaced unnecessary backquote construct with simple quotation
2021-04-04 12:48:21 +02:00
Lucius Hu bb3bb404a8 csharp: refactor
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 1d7d9db490 crystal: refactor
- Moved backend determination to `config.el`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu 03da968a98 squash! clojure: refactor
- Replaced `(when (not foo) bar)` with `(unless foo bar)`
2021-04-04 12:48:21 +02:00
Lucius Hu 4bf3501488 clojure: refactor
- Moved backend determination to `config.el`
- Replaced `pcase` form with only one-arm with `when` or `unless` form
2021-04-04 12:48:21 +02:00
Lucius Hu dae0231fed c-c++: refactor
- Moved backend determination to `config.el`
- Replaced `(when (not foo) bar)` with `(unless foo bar)`
- Replaced unnecessary backquote construct with simple quotation
- Replaced `pcase` form with only one-arm with `when` or `unless` form
- Replaced `(set (make-local-variable 'foo) bar)` with `(setq-local foo bar)`
- Removed unnecessary `progn`
2021-04-04 12:48:21 +02:00
Lucius Hu 7740fea4e1 dumb-jump: Replace obsolete interface with xref-backend
- Add `dumb-jump-xref-activate` hook to `xref-backend-functions`, which
  add a fallback option, i.e. `dumb-jump`, when no better alternatives
  is availabe
- Removed the obsolte interface `dumb-jump-go` from the following layers:
  - clojure
  - latex
  - vue
- The global binding `SPC j q` requires the obsolte function
  `dumb-jump-quick-look` and is therfore removed
2021-03-31 18:50:44 +02:00
Lin Sun 3987753a34 [+layer/c-c++] respect the `c-c++-enable-rtags-completion` setting
The variable `c-c++-enable-rtags-completion` is for enable/disable the rtags
completion.
2021-03-30 22:31:30 +02:00
syl20bnr 97cd83e169 Apply GPLv3 terms explicitly to all elisp files 2021-03-25 22:59:32 -04:00
syl20bnr d55a9e2e67 Update header for year 2021 2021-03-25 22:59:32 -04:00
Codruț Constantin Gușoi bc51b6a5ea Fix lambda quoting warning
../.emacs.d/layers/+lang/yaml/packages.el: Warning: (lambda nil \.\.\.) quoted with ' rather than with #'
2021-03-23 15:23:36 +00:00
Maximilian Wolff 6d40ee8e10 Revert "python: replaced local package `pylookup` with the one on github"
This reverts commit 6e0f650101.
The reason for this is not that the dynamically build pylookup.py
is not found by emacs, this I have already solved locally by checking
the quelpa build directory.

However the issue is that the library is not compatible with python 3
the local version however is.

So this is effectively a fork and must be kept till python 3
compatibility for pylookup has been achieved.

Should fix #14544
2021-03-21 09:53:13 +00:00
syl20bnr 0ed84490d5 [scala] Fix typos
Fix typos mentioned by a user via email.
2021-03-20 21:37:10 -04:00
Maximilian Wolff 86ea9871cb [scala] Make changed default behaviour more clear in docs 2021-03-20 21:02:09 +00:00
EstebanMarin 0ccea3c436 Update to default behaviour
When working long hours with Metals and saving and moving between buffers. This feature of automatically showing and writing in buffers breaks HELM, and buffer management stops, rendering Emacs useless. Furthermore, this feature is not that useful. In VIM LSP is off by default. The purpose of this is to make the experience of Scala Developers with Metals a nice one, rather than having Emacs breaking all the time, as has been happening to me. This has saved me hours.

PR-comments
2021-03-20 20:59:25 +00:00
timor 93f16c6a02 [factor] Only reload fuel mode if factor root path has changed.
Without this, fuel mode is reloaded needlessly on every Factor REPL restart.
Now we only do that if the Factor about to be invoked is a different one than
before.
2021-03-20 21:20:28 +01:00
Teo Klestrup Röijezon 170e4a9852 Add keybind to reload Rust-Analyzer workspace
Allows you to pick up new Cargo dependencies without a (slooow)
full server restart.

See https://github.com/emacs-lsp/lsp-mode/pull/2728

Add diagnostic messages when trying to reload RA workspace

No point restarting when trying to reload RLS
2021-03-20 20:14:40 +00:00
ClarityStorm a8d3d99894 Add Edebug Eval List key bindings 2021-03-20 20:56:09 +01:00
Maximilian Wolff a9d5c5ed25
[python] Fix invalid recipe declaration for nose.el 2021-03-20 00:24:59 +01:00
Lucius Hu fb16fa95cb
python: replaced local package `nose` with `syl20bnr/nose.el` 2021-03-20 00:24:28 +01:00
Maximilian Wolff e0a94825fe
[python] Fix broken fetcher declaration for pylookup 2021-03-20 00:11:38 +01:00
Lucius Hu 6e0f650101 python: replaced local package `pylookup` with the one on github 2021-03-19 23:54:13 +01:00
Lucius Hu d6eb0f9fe6 rust: Improved LSP Rust server switch functionality
Currently, when `lsp` backend is used for `rust` layer, `SPC m s s` is bound to
`lsp-rust-switch-server`, which temporarily changes the preferred LSP server
for `rust-mode`, but it DOES NOT switch the running LSP server. Users need to
call `lsp-workspace-restart` to finish the switching.

This PR introduced a new function `spacemacs//lsp-rust-switch-server`, which is
a wrapper for the two aforementioned functions
2021-03-19 12:54:41 +01:00
Maximilian Wolff 8f854da649
Make auto-completion activate/deactivate smartparens properly
auto-completion did not respect the smartparens-mode
defined in the dotfile when disabling/restoring it.

In addition when starting a yasnippet expansion
smartparens-mode was not properly restored resulting
in having smartparens always disabled.

This PR tries to fix both issues. Though judging from
the comments this could kill `hippie-expand` expansion.
However as yasnippet is more common I think this is
to be preferred.
2021-03-16 22:21:40 +01:00
Maximilian Wolff 9ff2004706 Avoid special handling of smartparens in lisp layers
emacs-lisp and common-lisp-layer had both their own
logic to work with smartparens including manually
requiring it.

This PR makes them use the standard functions. In
addition it replaces the manual require with proper
autoloading of smartparens.
2021-03-16 18:54:18 +00:00
Maximilian Wolff 6018580958 Make layers activate/deactivate the right version of smartparens
Before layers were sometimes only activating the non strict
version of smartparens. Also some were only disabling
the non-strict version leaving some of the smartparens
advices intact.

With this PR, all layers set the right version of smartparens.
Also if the layer is trying to disable it a standard function
will now take care to disable all versions of smartparens.
2021-03-16 17:47:15 +00:00
Magnus Therning 2fec4a49be [haskell] Add a binding to change the target for the session
Using the correct target for the Haskell session is required when working on a
project with more than one target defined in the Cabal file.
2021-03-14 09:48:15 +01:00
emacspace 13791616c7
[bot] Auto-update (#14398)
* documentation formatting: Sat Mar 13 23:53:10 UTC 2021

* Built-in files auto-update: Sat Mar 13 23:51:34 UTC 2021
2021-03-14 00:57:56 +01:00
Peixian Wang 34aeca5f98 Add note on which jar to use
Build system for https://github.com/prominic/groovy-language-server generates two different jars, this adds a note on which jar to use.
2021-03-14 00:11:26 +01:00
Ben Swift b2d89fdc3f [ess] add keybinding for ess-quit 2021-03-14 00:07:57 +01:00
Corentin 4409d39bec Fixes error if parsing ipython dev version 2021-03-13 23:40:53 +01:00
syl20bnr 0a0d623c19 [autohotkey] Enable auto-completion 2021-03-03 22:38:58 -05:00
syl20bnr a8aa24af45 [autohotkey] Work-around for prog-mode-hook 2021-03-03 22:38:19 -05:00
Ivan Yonchovski 2efe665bce [java] New keybindings for lsp-java 2021-02-28 20:34:35 +01:00
Maximilian Wolff 37008c07c4
[typescript] Restore format bindings for `typescript-tsx-mode` 2021-02-23 22:17:44 +01:00
Maximilian Wolff 98176b130c
[typescript] Cleanup bindings to avoid duplicate code 2021-02-22 22:32:11 +01:00
Cheng, Rong 1f1ed2a976
Add typescript-format keybinding in typescript-tsx-mode
typescript-format is bound to leader-key == in typescript-mode, but not
in typescript-tsx-mode.
2021-02-22 22:08:30 +01:00
Lin Sun 23af0c540a [markdown] remove duplicating code which already exists in "markdown-mode" 2021-02-22 22:01:51 +01:00
Maximilian Wolff cecc4ef887
[markdown] Make sure not to throw when git-commit-mode is not bound
Should fix #14397
2021-02-21 23:34:02 +01:00
Maximilian Wolff e5620ddfbf Reverted `ESS: Fixes syl20bnr#13282`
Having sourced a file for every R repl session
is not working reliably due to the different
value of DISPLAY on every environment.

Users are expected to use R specific ways
to set their env variables for now.
2021-02-20 07:40:13 +00:00
duianto f4999e8242 Restore evil-visual-state-map on edebug exit
problem:
Exiting edebug-mode, leaves the evil-visual-state-map
with only the two key bindings that are defined in:
evilified-state--setup-visual-state-keymap
y       evil-yank
escape  evil-exit-visual-state

solution:
Restore the evil-visual-state-map when exiting edebug-mode.

Added an alias for the new exit function:
evilified-state--evilified-state-on-exit

called: evil-evilified-state-exit
the opposite of: evil-evilified-state
2021-02-20 07:49:43 +01:00
Lin Sun 0220101c7f [markdown] fix warning message for #14387 2021-02-20 07:48:06 +01:00
Maximilian Wolff e4452f9a85
[ess] Set DISPLAY in R buffer only if not set already
See #13282
2021-02-16 23:04:02 +01:00
emacspace 7eaa072234 documentation formatting: Sat Feb 13 22:58:15 UTC 2021 2021-02-14 00:00:32 +01:00
Maximilian Wolff 8f934f138d
[lua] Fix unbound var error during layer load
I have introduced a small typo which I
am fixing here.
2021-02-13 23:20:37 +01:00
Maximilian Wolff fc2aa2601c [lua] Revise layer and fix LSP integration
The lsp integration was not standard at all in
this layer I have refactored it now to be working
like the rest of Spacemacs.
2021-02-13 21:53:57 +00:00
Lin Sun ca0fe33c8d [lua] more lsp backends for lua 2021-02-13 20:50:39 +00:00
Aaron L. Zeng 901082b914 [fsharp] Declare package eglot-fsharp
eglot-fsharp is now distributed as a separate MELPA package from
fsharp-mode, so it needs to be listed in `fsharp-packages`.

Also, refactor some conditions to read more clearly.
2021-02-13 09:48:08 +01:00
JAremko 91d5bfbadc Add eval to comment elisp-mode function 2021-02-13 09:45:00 +01:00
duianto 9375d6f54d Add missing space before defun args parens 2021-02-10 08:51:55 +01:00
Jamal Rahhali fae767afd8 Change elm-analysis -> elm-analyse
There is no such NPM package elm-analysis, but there is an elm-analyse.
2021-02-09 22:15:51 +01:00
emacspace 68444f5487 documentation formatting: Sun Feb 7 21:35:33 UTC 2021 2021-02-07 23:25:33 +01:00
Matthew Leach b18c87c832
[javascript] add npm-mode (#14347)
* [javascript] add npm-mode

Add npm mode to the javascript layer.  This allows easy execution of npm
commands at the project root from any javascript file in the project.

* [javascript] defer loading of npm-mode

Defer loading of the npm-mode package.

* [javascript] remove superfluous `progn'

The `:init' command is only a single command and thus doesn't need to be wrapped
in a `progn'.

* [javascript] fix typo in npm-mode docs

s/avilable/available/

* [javascript] add additional npm-mode commands

Add and document missing commands from npm-mode.
2021-02-07 07:46:06 +01:00
Maximilian Wolff c24905bf89
[markdown] Fix formating issues introduced in my last commit 2021-02-04 23:21:37 +01:00
Maximilian Wolff 88d09da807
[markdown] Fix syntax issues and revise readme and package.el 2021-02-04 23:02:31 +01:00
sunlin bc98f0cbb5
[markdown] more document for using markdown-command (#14312)
* [markdown] more document for using marking-command

* Update CHANGELOG.develop

Co-authored-by: Daniel Nicolai <dalanicolai@gmail.com>

* Update layers/+lang/markdown/README.org

Co-authored-by: Maximilian Wolff <smile13241324@gmail.com>

* Update layers/+lang/markdown/packages.el

Co-authored-by: Maximilian Wolff <smile13241324@gmail.com>

Co-authored-by: Daniel Nicolai <dalanicolai@gmail.com>
Co-authored-by: Maximilian Wolff <smile13241324@gmail.com>
2021-02-04 22:45:14 +01:00
M. Domenzain a7e8bd7e65 [c-c++] Add layer variable for DAP adapter selection
Make adapter selection available through the `c-c++-dap-adapters` layer variable
and select the known-good Microsoft C/C++ Extension as a sane default.
2021-02-03 23:35:24 +01:00
Lucius Hu 3652346b3a ESS: Fixes #13282
Signed-off-by: Lucius Hu <lebensterben@users.noreply.github.com>
2021-02-03 22:30:16 +01:00
emacspace 8c18c1fc30 documentation formatting: Mon Jan 25 02:14:21 UTC 2021 2021-01-25 09:01:25 +02:00
Ag Ibragimov 11025e1276 emacs-lisp: resets to evil-normal after edebug session 2021-01-24 15:27:04 +01:00
Keith Pinson a973da57ee [scala] remove long-deprecated Ensime integration
According to its website, the Ensime project has been shut down since 2019. We
have been supporting both Ensime and Metals for [a year and a
half](https://github.com/syl20bnr/spacemacs/pull/12234#issuecomment-524916394).
Ensime's GitHub repositories, including its Emacs integration, are archived.
Meanwhile, Metals has been developed actively, regularly releasing new versions.
It has stabilized significantly, and supports an increasingly full set of
features. Scala 3 is just around the corner, and the community is poised to make
the transition smoothly and relatively quickly. Metals supports it already,
whereas of course Ensime does not and never will. In fact, Scala 2 has had
several import minor versions released since Ensime died. Now that it's 2021,
it's time to cut the baggage we are carrying around for Ensime.
2021-01-19 21:45:40 +01:00
emacspace 73cc5b24f3 documentation formatting: Mon Jan 11 22:39:03 UTC 2021 2021-01-14 13:22:53 +02:00
Keith Pinson 667914e5fa [scala] provide an easy way to a small SBT buffer at frame bottom
This feels like the natural place to put it, though we could also extend this
with other values in the future. I defaulted this behavior to off in order to
not impact folks' current setup.
2021-01-11 22:54:58 +01:00
Maximilian Wolff ed278491ee [latex] Fallback to company-auctex when company-math fails
Classic completions now use company-math if available
however if this fails it should fall back to the
original system to avoid issues with existing
configs.
2021-01-10 20:10:31 +00:00
Maximilian Wolff 9636cc84c6 [latex] Fix small typo in docs 2021-01-10 20:07:24 +00:00
SALVATI Sylvain 4b8b8bd608 [latex] add support for company-math in latex layer
Combining company-math and company-auctex

Updating documentation and make math-symbol-lists requiring company-math

Back to original readme

math-symbol-lists is used elsewhere and should not be made dependent on the use of company-math

using the result of company-auctex-macros

Add explicit dependency of company-amth to math-symbol-lists
2021-01-10 20:03:17 +00:00
Keith Pinson 26a4dc9830 [markdown] fontify code blocks natively: on by default 2021-01-10 20:40:38 +01:00
Keith Pinson fd7c0a3773 [emacs-lisp] make `SPC m h h` and jump handlers work in `ielm`
Like in other Emacs Lisp modes.
2021-01-09 08:53:35 +01:00
Sid Raval 9b6a49d6c0
Support prettier formatter for Ruby layer (#14252)
* First working pass

- Runs prettier on save when in ruby-mode.
- Adds `node_modules/.bin/` to local `exec-path`
  - This means project-local `prettier` executables are preferred

* Making ruby layer prettier formatting configurable

- Adds a variable to control whether prettier is used to format-on-save.
- Documents use, configuration, and keybindings in the README

* Add to CHANGELOG.develop

* Delete spurious comment

* Use prettier as a dependency only when config variable is present
2021-01-09 08:34:04 +01:00
timor 86ca64939c
Small Fixes and Improvents to Factor Layer (#14253)
* [factor] Add two useful snippets

* [factor] Make binding match documentation

* [factor] Fix startup command for graphical listener
2021-01-03 09:09:54 +01:00
Maximilian Wolff 7b7076d4ba [python] Define purposes for specialised buffers 2021-01-02 20:30:45 +00:00
Maximilian Wolff 344b6a51f7 [markdown] Use valign for table formating if available 2021-01-02 19:39:11 +00:00
emacspace d545dcbdbe documentation formatting: Wed Dec 30 21:04:48 UTC 2020 2020-12-30 23:41:14 +01:00
Maximilian Wolff 08355b0b6f
[python] Fix one small issue in latest doc additions 2020-12-30 21:55:27 +01:00
Peter Kuchar 638bbb0c38
[+lang/python] Poetry integration for python layer
Adding Poetry integration (tool for managing virtual environments in Python)
2020-12-30 21:53:27 +01:00
Maximilian Wolff 9d7090cee3
[clojure] Add instructions to disable lsp server support
Standard LSP support auto-activates the server
if LSP layer is loaded. I have now added instructions
to explicitly disable this behaviour if someone wants
to work in LSP in one layer but only with CIDER in
clojure.
2020-12-18 23:35:40 +01:00
emacspace 35b8e063de documentation formatting: Sun Dec 13 10:32:28 UTC 2020 2020-12-13 21:56:49 +01:00
Keith Pinson e7c9eda3fb [markdown] fix: mmm clobbering comment-start in Markdown Git commit
Fixes #14195.
2020-12-13 10:26:56 +00:00
Lucius Hu 2d1d338f46
LaTeX: improved i18n support and documentation (#14204)
* LaTeX: improved i18n support and documentation

- Added a new layer config variable `latex-build-engine`, a thin wrapper of
  `TeX-engine`:
  - For better support of non-european character set rendering, `xetex` is
    chosen when it's found on PATH, and when eithe `chinese` or `japanese`
    layer is enabled
- Added a new layer config variable `latex-enable-preview`:
  - When non-nil, `auto-revert-mode` is added to `doc-view-mode-hook`
  - Previously this is described in documentation but requires users to set it
    manually
- Documentation:
  - Added a section that lists are layer config variables
  - Improved all documentation examples, s.t. they are valid elisp forms to be
    evaluated directly
  - Improved the section on backend:
    - Emphsized that LSP layer is always preferred
    - Provided information on installing the language server
  - Added the default value for layer config variable, `latex-nofil-env`

* minor edits

- Updated CHANGELOG.develop
- Renamed `latex-enable-preview` to `latex-refresh-preview`
- Replaced a fuzzy intra-link in documentation with a proper link

Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
2020-12-13 10:33:04 +01:00
niontrix d467fccef3 Fix fsharp-mode auto-completion unreliable
The eglot configuration for automatically starting a server instance when
opening a file is incorrect and thus tries to start the server twice which leads
to more problems down the line. Also the company-backend is not properly setup
so auto-completion does not work reliably when using lsp or eglot.
2020-12-08 19:39:12 +01:00
emacspace c483818d7e documentation formatting: Sun Nov 22 08:56:33 UTC 2020 2020-11-24 22:22:17 +01:00
John Practicalli Stevenson f9123b1cc5 [clojure] add namespace eval and reload key bindings
Add key binding to evaluate the current namespace form (very useful when
starting CIDER as it loads in clojure.core to enable the cider-clojure-docs
functions to work)

Add keybinding to reload all namespaces into the REPL process

Adjusted key bindings to be lower case under `en` sub-menu.
2020-11-24 21:46:23 +01:00
Maximilian Wolff 6d39cd5548
[clojure] Add lsp server support 2020-11-24 21:35:31 +01:00
Maximilian Wolff 77d84b14e0
[graphql] Remove invalid layers tag
Tags must be included in https://github.com/syl20bnr/spacemacs/blob/develop/.ci/spacedoc-cfg.edn#L54
if they are not they break the doc generation. Therefore I have changed this.
2020-11-22 09:53:58 +01:00
thanhvg e3b6464649
[core][tide][lsp] improve spacemacs/set-leader-keys-for-minor-mode and apply it to tide and lsp layers (#14141)
* [core][keybinng] improve minor mode binding

This commit added add a new function defun spacemacs/declare-prefix-for-minor-mode
and improved spacemacs/set-leader-keys-for-minor-mode.

`which-key` package recently introduced a new api
which-key-add-keymap-based-replacements which improves perfomance and allows
prefix and namings to be stored directly in keymap. This is a great improvement.

With this new api we now make change to spacemacs/declare-prefix-for-minor-mode
to manage prefix also. For example:

  (spacemacs/set-leader-keys-for-minor-mode 'lsp-mode
    "=" "format"
    "=b" #'lsp-format-buffer)

Before we had to use another api to bind prefix
spacemacs/declare-prefix-for-mode which only works on major-mode. As lsp-mode is
a minor mode this api causes a lot of problems to which-key performance. An
example is https://github.com/syl20bnr/spacemacs/issues/12455 which led to my
hack in https://github.com/syl20bnr/spacemacs/pull/12474.

The improved spacemacs/set-leader-keys-for-minor-mode will take care of both
prefix and key naming for the minor mode. This will allows us to have a better
set up for dynamic minor modes such as lsp-mode, tide-mode etc.

Also another api is created to make prefix for minor mode:
spacemacs/declare-prefix-for-minor-mode.

Usage:
(spacemacs/declare-prefix-for-minor-mode 'tide-mode "E" "errors")"

* [tide] improve prefix

* [lsp] improve prefix
2020-11-21 07:34:55 +01:00
John Practicalli Stevenson d929079f28 [clojure] add cider-inspect key bindings
Add cider inspect key bindings missing from Spacemacs
2020-11-21 07:26:20 +01:00
Daniel Nicolai 28a4baeea4 Add instructions to open emacs-lisp layer README
in response to issue #14102
2020-11-16 23:41:02 +01:00
Rodolfo Hansen 02ff6cd4db
[dhall] Add lsp support (#14139)
* Make showing the treeview in scala a config parameter
* Add dhall lsp server integration
2020-11-16 23:20:10 +01:00
Maximilian Wolff 7bdef4109c
[perl5] Add lsp support 2020-11-16 23:17:50 +01:00
Maximilian Wolff 48b1d2fcf9
[graphql] Revise package and config file
Removed obsolete comments
Replaced wrong header in config.el
Add missing progn and fix wrong parenthesis
2020-11-12 23:06:43 +01:00
Thanh Vuong dd2217b50e [new layer][graphql] add graphql layer
It builds around graphql-mode
- Syntax highlight and graphql calls with graphql-mode
- Autocomplete with comapy-dabbrev
- Format buffer with prettier
- Go to definition with ahs
2020-11-12 23:03:26 +01:00
emacspace 55d94cbdda documentation formatting: Tue Nov 10 22:56:00 UTC 2020 2020-11-12 22:38:27 +01:00
Maximilian Wolff 0d609c09d4
[latex] Fix broken binding for `SPC m R TAB`
Fixes key warning mentioned in #12975
2020-11-12 22:03:47 +01:00
Maximilian Wolff c3872f165c
[crystal] Add lsp support and revise key bindings
Also fixed not working flycheck integration.
2020-11-10 22:43:18 +01:00
Maximilian Wolff 5dd1b63219
[fsharp] Add LSP support 2020-11-09 23:12:04 +01:00
emacspace 45691dd545 documentation formatting: Sat Oct 31 08:55:13 UTC 2020 2020-10-31 13:07:55 +01:00
emacspace 0291e9eb56 documentation formatting: Mon Oct 26 23:33:02 UTC 2020 2020-10-30 21:51:07 +01:00
Maximilian Wolff abac41e8d0
Fix small doc typos in shell and latex layers 2020-10-30 21:44:17 +01:00
Maximilian Wolff 57baf7d237 Add lsp support to latex layer 2020-10-30 21:06:34 +01:00
Carlos F. Clavijo 3eb66f4ce3 [erlang] add LSP support through erlang_ls 2020-10-26 23:29:49 +01:00
nobv ab52131d98
Add lsp for purescript (#13840) 2020-10-23 18:57:47 +02:00
Aaron L. Zeng 1cbc752463 [ocaml] Add ocamlformat package and configure format-on-save 2020-10-22 23:28:41 +02:00
Martin Račák 9c31d4f953 Hide sphinx-doc-mode lighter 2020-10-22 22:53:05 +02:00
nanashi0x74 76849892e1 Fix three typos in various files
This commit fixes typos in doc/layers.org and the readme.org files of bootstrap and
java layers.
2020-10-19 11:48:51 +02:00
Rahul Rameshbabu 1dd17e10ee [c-c++] Fixed typo in README.org 2020-10-17 10:21:06 +02:00
NANASHI0X74 efcab8f61a
Bind typescript-format to "==" or "=" depending on backend (#14049)
* Bind typescript-format to "==" or "=" depending on backend

This fixes a problem when using 'lsp backend: the lsp layer binds its own
formatting functions under "=" as a prefix. The spacemacs/typescript-format
function which the typescript layer defines has advantages over these, mainly
it respects the typescript-fmt-tool variable (uses the formatting tool that
theuser specified).

This patch solves this by keybinding leader+"==" to the function when
typescript-backend is set to 'lsp and binding to leader+"=" in any other case.

* Fix an accidentally deleted keybinding in table in documentation

* use getter for backend variable

Co-authored-by: nanashi0x74 <rian.lindenberger@mpq.se>
2020-10-17 10:17:41 +02:00
niontrix 28dba78259
Fix fsharp-mode autocomplete not working
Fsharp-mode has recently undergone some major changes. FSAutocomplete is
no longer distributed with Fsharp-mode. Instead Eglot is used a language
server that pulls in FSAutocomplete. To get auto-completion working
again eglot-fsharp has to be required and an instance of Eglot has to be
started once an F# file is opened.
2020-10-15 22:42:51 +02:00
0kaguya 177db4472f remove package `mercury-mode` which no more exist 2020-10-04 11:32:56 +02:00
emacspace 8fff0ea4ee documentation formatting: Sat Oct 3 18:54:32 UTC 2020 2020-10-03 22:24:57 +03:00
JAremko 8227686194 Fix links 2020-10-03 21:52:09 +03:00
Stefan Ruschke 00b1f419a5 [python] Add sphinx-doc support 2020-10-01 13:23:47 +02:00
John Practicalli Stevenson f2c075b673 [clojure] key binding for cider eval list around point
New command added to CIDER in version 0.26 to evaluate the list around the
current point, different to evaluate sexp around point which also evaluates
symbols.

https://github.com/clojure-emacs/cider/pull/2881
2020-10-01 12:29:35 +02:00
Michael Peyton Jones 496a86bd3e literate-haskell-mode has been renamed to haskell-literate-mode
See 7ccb1ab0cc.

We should keep the old assignment around for a bit to support people on
old versions of `haskell-mode`.
2020-09-27 14:33:07 +02:00
Maximilian Wolff a55d6287b1
[python] Fix small unintentional change from copyright date update 2020-09-23 21:26:07 +02:00
Robert O'Connor 82ba73a1c0
update copyright to 2020 2020-09-23 21:25:01 +02:00
syl20bnr 022b6128f2 [elisp] Fix loading of nameless from a dump 2020-09-20 21:17:21 -04:00
syl20bnr e3acd91118 [core] Rename spacemacs|require to spacemacs|require-when-dumping 2020-09-20 21:17:21 -04:00
Maximilian Wolff 582e229704
[go] Deprecate =go-mode= and revise the layer documentation
In addition I have simplified the layer code a bit
to remove unnecessary indirection in the way LSP
is set up.
2020-09-20 23:51:28 +02:00
sunlin 8d204c78b4
Add `spacemacs/python-shell-send-statement' for sending statement (#13945) 2020-09-18 21:15:53 +02:00
Fredrik Simón 85bef62e2d
[lsp] Fix lsp-diagnostics-provider name (#13956)
`lsp-diagnostic-package` was renamed to `lsp-diagnostics-provider` in
[LSP version 7.0.1](f23159a85f/CHANGELOG.org (release-701)).
2020-09-18 20:31:30 +02:00
Aaron Zeng c0e31e4b8d
Fix up markdown mode specifiers (#13964)
* [markdown] Anchor auto-mode-alist entries

A file named foo.mkd.patch should use diff-mode, not markdown-mode.

* [markdown] Simplify regexp in mode specifiers

Putting k in brackets here has no effect.
2020-09-18 19:29:41 +02:00
Maximilian Wolff d900b26291
[html] Move emmet-expand from tab to C-return
tab is reserved by the auto-completion layer and
shall never be overwriten in a layer. This moves
emmet-expand to a similar binding which was
originally used by emmet for non evil users.

This treats evil and non evil users alike and
avoid conflicts with company key bindings.
2020-09-17 23:06:38 +02:00
Maximilian Wolff 2fbd853f93
[html] Fix emmet-mode overwriting company popup bindings
Still a layer changing the meaning of tab is
a bad idea, this key is reserved for auto-completion-layer.

We should add an alternative binding for it but this commit
focuses on removing the conflicts with company popup scrolling
first.
2020-09-16 23:26:43 +02:00
emacspace 58d2a69a07 documentation formatting: Mon Sep 14 18:13:15 UTC 2020 2020-09-15 10:48:00 +03:00
Daniel Nicolai 1147e758bd Implement pyvenv-tracking-mode
The pyvenv-tracking-mode changes the virtual environment on changing focus
between buffers.
2020-09-14 18:53:19 +02:00
beyondpie 8da6653d2b
[Python] Add python-shell-send-line function (#13942) 2020-09-14 18:32:23 +02:00
ClarityStorm 7a7b04abb5 Update number of LSP backends in C/C++ layer docs 2020-09-12 06:13:47 +03:00