Commit graph

73 commits

Author SHA1 Message Date
Lucius Hu 117f4b73ab
squash! Removed legacy codes for emacs-version < 25.1 (#14497) 2021-04-28 01:17:17 -04: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
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
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
Ivan Yonchovski 2efe665bce [java] New keybindings for lsp-java 2021-02-28 20:34:35 +01:00
Keith Pinson 4e57eaceea
Remove gradle-mode to stop it breaking bindings of other major modes
After using Java mode, Gradle keybindings infect or even clobber keybindings of
any subsequently used major-mode. For example, the critical Agda major mode
keybinding of `l` as `agda2-load` gets with a Gradle menu!

The cause, found by @duianto, is that `emacs-gradle-mode` sets itself to a
[global](e4d665d578/gradle-mode.el (L176-L183))
minor mode. The docs for `define-minor-mode` say about `:global:`

> If non-nil specifies that the minor mode is not meant to be
> buffer-local, so don't make the variable MODE buffer-local.
> By default, the mode is buffer-local.

I don't know why `gradle-mode` is doing this; presumably there is some reason or
need for it. But the author of that package hasn't been on GitHub since 2017,
and the last update of the package itself is from early 2015.

To seal the deal, `gradle-mode` hasn't been working anyway (at least, I've never
got it to work). I've been running Gradle by launching a terminal within Emacs.

Fixes #13750.
2020-07-18 09:30:35 +02:00
Maximilian Wolff 1fd90fc1dc
Update instructions for dap integration and update existing layers
The previous way of adding dap to a layer did add the mode
unconditionally to `spacemacs--dap-supported-modes` causing
dap bindings to be added also when no lsp backend was used.
2020-05-16 23:40:38 +02:00
duianto d2d5a649ab [java] Add SPC m a prefix name: actionable 2020-01-04 15:50:22 +01:00
duianto 4c7e1954c5 [java] Fix key binding: SPC m m t C-a
SPC m m t C-a was bound to SPC m m t C - a
2020-01-04 15:47:24 +01:00
Ivan Yonchovski 3771759ddb [java][lsp] Minor cleanup in lsp-java
- Fixed setting dap-java shortcuts - ATM the shortcuts were not enabled due to
the fact that dap-mode configuration was overriding them since it was running
after this piece of code
- removed configuration code about lsp-java since it was either about
missing properties or about setting defaults already set by lsp-mode/lsp-java
(e. g. lsp-eldoc-render-all is now nil by default)
2020-01-04 12:27:11 +01:00
Ivan Yonchovski 31a3449fca Add /** */ smartparens pair for java 2019-11-28 18:14:37 +01:00
Ivan Yonchovski 38838cce9a Fix handling of java-backend
- Without this line the lsp-java package won't be enabled when java-backend is
nil and lsp layer is present
2019-11-20 18:12:48 +01:00
syl20bnr 1e278a3cb9 Fix bad value for :requires, list is mandatory when multiple symbols
Also remove unecessary required packages for lsp-java package.
2019-11-09 09:41:40 -05:00
syl20bnr 9606dd344e [dap] Refactor configuration dap config in layers
* use local-vars-hook coupled to setup function for dap
* define new private layer variable `spacemacs--dap-supported-modes` to
  configure key bindings. This allows to move the key bindings definition from
  `funcs.el` to `packages.el`
* remove duplication of DAP key bindings in READMEs by pointing to the dap layer
  documentation
* alphabetically sort package configuration
2019-09-30 00:34:26 -04:00
syl20bnr 2b70cd5f45 [java] Remove unconfigured eldoc package 2019-09-30 00:34:26 -04:00
smile13241324 e17008ec2f [java] Fix broken "pu" binding to update user/project settings
"pu" for lsp backends called a lsp-java function which has
been deactivated in the `lsp-java` package. Replaced it with
the closest match from the same package, updating the
project settings instead.
2019-09-18 22:13:24 +02:00
smile13241324 6de34e8b2d [java] Fix various issue introduced by dropping ensime support 2019-09-18 22:00:05 +02:00
smile13241324 cf15de9f20 [java] Make lsp the default backend and drop eclim support 2019-09-18 21:21:55 +02:00
Teo Klestrup Röijezon 4bf5b7be7b Moved Ensime support to the Scala layer, removed Java support 2019-09-18 20:46:53 +02:00
Ivan Yonchovski 23df5aa55e [java] Sync java lsp backend with latest lsp-java functionality
- new keybinds for the new functionality
2019-05-20 20:26:14 +02:00
Ivan Yonchovski 03e6bc0691 [java] init backends conditionally
- otherwise there are shortcut collisions
2019-04-15 21:20:32 +02:00
Seong Yong-ju cb75920bb7 Add missing key prefixes for java-mode, gradle-mode 2019-04-10 22:48:21 +02:00
Ivan Yonchovski f346ae0683 Fix java/python/javascript/rust lsp backends 2018-12-22 12:51:05 +02:00
Ivan Yonchovski fc2d220b5e dap-layer implementation
- I had some issues related to finding the corresponding shortcuts for each of
the commands and I am looking for suggestions for improvements.

- updated the lsp-java readme since the server installation is now automatic. If
you already have jdt server installation, please run lsp-java-update-server
which will download the related dap-mode related stuff.

- Make sure that you have latest melpa versions of lsp-java, lsp-ui and dap-mode
since several issues related to the java integration were fixed lately.

- dap-mode is pretty young package and it is not extensively tested

- dap-hydra which will be used as a transient state for the breakpoints and
debugging, in general, is not synched with the shortcuts in the layer. I will sync
them once there is agreement on the shortcuts configuration. Also, I have not
updated lsp-java README.org with the corresponding shortcuts for the same
reason.

- The debug integration with the python lsp layer will be implemented in
separate PR.

- There will be few more functions that are going to be added to the dap-mode at
some point and they would require shortcuts too:
* suspend/kill thread I guess - "m d t s" "m d t k"?
* watches - "m d l w"
* exception breakpoints - I have to figure out how it will look like on emacs
  side.
* goto point "m d H"?
2018-11-25 23:03:08 +00:00
kyoncho 862d873fa8 LSP Java backend for the Java layer
Fixes #10654

Added new backend for the Java.
2018-08-21 20:36:06 +01:00
gdkrmr 4af499588a fix java layer 2018-08-09 23:02:16 +01:00
syl20bnr 3f47bf8e11 Move major specific error key bindings to SPC m E prefix
Also add a convention for it.
2018-08-09 23:02:16 +01:00
Bjarke Vad Andersen ebd8bffbad scala/java: Remove broken ensime key bindings and fix yanking types 2018-07-10 23:45:33 +03:00
Miciah Masters e0b751bee3 Avoid non-idempotent use of push in init code
Replace push with add-to-list in layer init functions and related code.

Modify spacemacs|add-toggle to check for and update an existing toggle in
spacemacs-toggles and only create a new toggle if none already existed.

Replace a conditional push onto erc-packages with use of :toggle.

When initializing which-key, set which-key-replacement-alist to its default
or customized setting before adding all the Spacemacs replacements.  We
want to keep the stock replacements but avoid adding duplicates of the
Spacemacs replacements.

Replace the emacs-lisp-mode-hook lambda with a named function to avoid
adding duplicate hooks (which can add duplicate definitions of the
evil-surround pair).
2018-06-05 22:17:13 -04:00
Michael Rohleder 24ca355b6a add org-babel support for some of the more popular languages. (#10738)
* add org-babel support for some of the more popular languages.
* alphabetical sorted package names.
* removed blank lines at EOF.
2018-05-30 09:07:21 -04:00
syl20bnr ebe4c60264 Revert "Defer packages by default using use-package-always-defer"
This reverts commit 29c78ce841 and all other fixes
that have been made afterwards.

The motivation is that use-package is seen by many as a replacement for
`require`. Is use-package always defer the loading of packages then is breaks
this use case, this does not respect POLA so even if it was making Spacemacs
loading faster (up to 3s faster on some startup on my machine) we just cannot
use it, it would be irresponsible. Spacemacs should be easy to use, loading
performance will come with time but it is not a priority.
2018-03-03 23:40:10 -05:00
EMayej Bee 971719f55c fix(java): typo 2018-03-04 10:28:12 +08:00
syl20bnr 3731d0d3fc Move major specific error key bindings to SPC m E prefix
Also add a convention for it.
2018-03-03 16:45:00 -05:00
syl20bnr 29c78ce841 Defer packages by default using use-package-always-defer
Warning now `:defer t` is implied, to force a package to load `:demand t` is
now necessary.
2018-02-27 23:32:52 -05:00
syl20bnr 326965d4ce Happy New Year 2018! 2018-01-04 02:00:25 -05:00
Robbert van der Helm c61ae1a1c1 Add ivy support to the gtags layer
It would be much better to have a single function for each layer that
initializes ggtags, helm-gtags and counsel-gtags for a mode.
2017-12-17 22:03:01 -05:00
syl20bnr 17fc89f9e7 java: improve maven and gradle support (also for groovy)
Add new packages `mvn` and `maven-test-mode`.
Move `gradle-mode` configuration from groovy layer to java layer
New prefix commands `SPC m m` for maven and `SPC m l` for gradle.
Make maven and gradle commands available in java-mode.
Update documentation.
2017-12-17 18:45:46 -05:00
syl20bnr a496401e1f Move groovy configuration to its own layer and improve it
Enable company, org babel and repl.
2017-08-28 13:49:09 -04:00
Dela Anthonio 7e57b1f341 java: Add missing key bindings to README 2017-07-10 09:38:44 +02:00
Eivind Fonn f4b53d2a4f Rename :depends to :requires 2017-07-03 09:54:53 +02:00
syl20bnr e2e532bb49 core: change <function>p to <function>-p suffixes for consistency
Also defined aliases for backward compatibility with `usedp` functions.
2017-07-02 10:09:39 -04:00
Eivind Fonn 08561d8631 core: implement :depends for package declarations
This replaces the older pattern
:toggle (configuration-layer/package-usedp ..)

This implementation ensures that :disabled-for honors dependent packages, i.e.
if package a depends on package b, which is owned by layer c, and layer c is
disabled for layer d, then neither package a nor b will be configured for layer
d. Previously, this was only true for package a, but not b.

This commit also fixes:

- configuration-layer/describe-package now shows which post-init and pre-init
  functions are disabled, if any
- Does not recreate all layer objects unconditionally when calling
  configuration-layer/discover-layers. Previously, this led to all layers being
  recreated after e.g. `SPC h SPC`, without any of the dotfile information.
  Since this information is now necessary for
  configuration-layer/describe-package, it’s important that we don’t clear the
  indexed layers when invoking this function.
2017-06-22 11:53:05 +02:00
Eivind Fonn 4178a3de6e Add defalias for ensime-type-at-point 2017-06-21 10:07:55 +02:00
Dela Anthonio 2c2d7fe038 java: Add eclim-java-new keybinding
This commit addresses #8987.
2017-06-12 12:21:05 +02:00
WillianPaiva e1e091eee8 add a keybind for the function eclim-java-run-run 2017-05-18 23:12:56 -04:00
Diego Alvarez 6a55eba49b evilify ensime search in insert/normal mode 2017-05-14 13:44:44 -04:00
Robert O'Connor df6333d55c When using the meghanada backend with java, there is a small typo
In the compile prefix, there is a typo.
2017-04-16 11:14:59 -04:00