Skip to content
A Visual Studio Code extension that provides Java formatting with the use of google-java-format
TypeScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode feat: update articles or snippets Oct 19, 2019
assets
out/src feat: update articles or snippets Oct 19, 2019
src
.gitignore
.vscodeignore
LICENSE
README.md
package.json feat: update articles or snippets Oct 19, 2019
tsconfig.json feat: update articles or snippets Oct 19, 2019
tslint.json
typings.json
yarn.lock

README.md

README

google-java-format is a tool to format Java code. It can be configured with a config file within the working folder or a parent folder. Configuration see: https://github.com/google/google-java-format

Usage

This extension allows google-java-format (version 3.8 or higher) to be used to format C/C++, Javascript etc. source files directly from within Visual Studio Code.

Files can be formatted on-demand by right clicking in the document and selecting "Format Document", or by using the associated keyboard shortcut (usually Ctrl+⇧+F on Windows, Ctrl+⇧+I on Linux, and ⇧+⌥+F on macOS).

To automatically format a file on save, add the following to your vscode settings.json file:

{
    "editor.formatOnSave": true
}

Specifying the location of google-java-format

This extension will attempt to find google-java-format on your PATH. Alternatively, the google-java-format executable can be specified in your vscode settings.json file:

{
    "google-java-format.executable": "/absolute/path/to/google-java-format"
}

Placeholders can also be used in the google-java-format.executable value. The following placeholders are supported:

  • ${workspaceRoot} - replaced by the absolute path of the current vscode workspace root.
  • ${cwd} - replaced by the current working directory of vscode.
  • ${env.VAR} - replaced by the environment variable $VAR, e.g. ${env.HOME} will be replaced by $HOME, your home directory.

Some examples:

  • ${workspaceRoot}/node_modules/.bin/google-java-format - specifies the version of clang that has been added to your workspace by npm install google-java-format.
  • ${env.HOME}/tools/clang38/google-java-format - use a specific clang format version under your home directory.

Placeholders are also supported in google-java-format.assumeFilename. The supported placeholders are ${file}, ${fileNoExtension}, ${fileBasename}, ${fileBasenameNoExtension}, and ${fileExtname}, with the same meaning as the predefined variables in other configuration files.

For example:

  • ${fileNoExtension}.cpp - /home/src/foo.h will be formatted with -assume-filename /home/src/foo.cpp.

Source code

Available on github: https://github.com/wx-chevalier/vscode-google-java-format-provider

You can’t perform that action at this time.