mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-02-09 16:00:04 +08:00
84 lines
2.3 KiB
Markdown
84 lines
2.3 KiB
Markdown
---
|
|
title: "SpaceVim lang#java layer"
|
|
---
|
|
|
|
# [SpaceVim Layers:](https://spacevim.org/layers) lang#java
|
|
|
|
|
|
<!-- vim-markdown-toc GFM -->
|
|
* [Description](#description)
|
|
* [Layer Installation](#layer-installation)
|
|
* [Key bindings](#key-bindings)
|
|
* [Java language specified key bindings](#java-language-specified-key-bindings)
|
|
* [Maven](#maven)
|
|
* [Problems buffer](#problems-buffer)
|
|
* [Project buffer](#project-buffer)
|
|
|
|
<!-- vim-markdown-toc -->
|
|
|
|
## Description
|
|
|
|
This layer is for Java development.
|
|
|
|
## Layer Installation
|
|
|
|
To use this configuration layer, add `SPLayer 'lang#java'` to your custom configuration file.
|
|
|
|
## Key bindings
|
|
|
|
### Java language specified key bindings
|
|
|
|
**Import key bindings:**
|
|
|
|
Key Binding | Description
|
|
-----------| -----------
|
|
`F4` (Insert/Normal) | Import class under cursor
|
|
`SPC l I` | Import missing classes
|
|
`SPC l R` | Remove unused classes
|
|
`SPC l i` | smart import class under cursor
|
|
`<C-j>I` (Insert) | Import missing classes
|
|
`<C-j>R` (Insert) | Remove unused classes
|
|
`<C-j>i` (Insert) | smart import class under cursor
|
|
|
|
|
|
**Generate key bindings:**
|
|
|
|
Mode | Key Binding | Description
|
|
----- | ------| -----------
|
|
normal | `SPC l A` | generate accessors
|
|
normal/visual | `SPC l s` | generate setter accessor
|
|
normal/visual | `SPC l g` | generate getter accessor
|
|
normal/visual | `SPC l a` | generate setter and getter accessor
|
|
insert | `<c-j>s` | generate setter accessor
|
|
insert | `<c-j>g` | generate getter accessor
|
|
insert | `<c-j>a` | generate getter and setter accessor
|
|
normal | `SPC l t s` | generate toString function
|
|
normal | `SPC l e q` | generate equals and hashcode function
|
|
normal | `SPC l c` | generate constructor
|
|
normal | `SPC l C` | generate default constructor
|
|
|
|
**Code formatting:**
|
|
|
|
the default key bindings for format current buffer is `g=`.
|
|
|
|
To make neoformat support java file, you should install uncrustify. or
|
|
download [google's formater jar](https://github.com/google/google-java-format)
|
|
and add `let g:spacevim_layer_lang_java_formatter = 'path/to/google-java-format.jar'`
|
|
to SpaceVim custom configuration file.
|
|
|
|
#### Maven
|
|
|
|
Key Binding | Description
|
|
-----------| -----------
|
|
`SPC l m i` | Run maven clean install
|
|
`SPC l m I` | Run maven install
|
|
`SPC l m p` | Run one already goal from list
|
|
`SPC l m r` | Run maven goals
|
|
`SPC l m R` | Run one maven goal
|
|
`SPC l m t` | Run maven test
|
|
|
|
### Problems buffer
|
|
|
|
### Project buffer
|
|
|