Merge pull request #1397 from cadenasgmbh/master

Added language support for GLSL via clang-format
This commit is contained in:
Glavin Wiechert 2016-12-29 00:17:38 -04:00 committed by GitHub
commit acfad3f7d0
6 changed files with 155 additions and 1 deletions

View File

@ -79,6 +79,7 @@ See [all supported options in the documentation at `docs/options.md`](docs/opti
| Erlang | `Erlang` |`.erl` | [`erl_tidy`](http://erlang.org/doc/man/erl_tidy.html) (Default) |
| Fortran | `Fortran - Modern` |`.f90`, `.F90` | [`Fortran Beautifier`](https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/fortran-beautifier/emacs-fortran-formating-script.lisp) (Default) |
| gherkin | `Gherkin` |`.feature` | [`Gherkin formatter`](https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/gherkin.coffee) (Default) |
| GLSL | `C`, `opencl`, `GLSL` |`.vert`, `.frag` | [`clang-format`](https://clang.llvm.org/docs/ClangFormat.html) (Default) |
| Go | `Go` |`.go` | [`gofmt`](https://golang.org/cmd/gofmt/) (Default) |
| Handlebars | `Handlebars`, `HTML (Handlebars)` |`.hbs`, `.handlebars` | [`JS Beautify`](https://github.com/beautify-web/js-beautify) (Default), [`Pretty Diff`](https://github.com/prettydiff/prettydiff) |
| Haskell | `Haskell` |`.hs` | [`stylish-haskell`](https://github.com/jaspervdj/stylish-haskell) (Default) |

View File

@ -2931,6 +2931,100 @@ Indentation size/length (Supported by Gherkin formatter)
}
```
#### [GLSL](#glsl)
**Supported Beautifiers**: [`clang-format`](#clang-format)
| Option | clang-format |
| --- | --- |
| `disabled` | :white_check_mark: |
| `default_beautifier` | :white_check_mark: |
| `beautify_on_save` | :white_check_mark: |
| `configPath` | :white_check_mark: |
**Description**:
Options for language GLSL
##### [Disable Beautifying Language](#disable-beautifying-language)
**Important**: This option is only configurable from within Atom Beautify's setting panel.
**Type**: `boolean`
**Description**:
Disable GLSL Beautification
**How to Configure**
1. You can open the [Settings View](https://github.com/atom/settings-view) by navigating to
*Edit > Preferences (Linux)*, *Atom > Preferences (OS X)*, or *File > Preferences (Windows)*.
2. Go into *Packages* and search for "*Atom Beautify*" package.
3. Find the option "*Disable Beautifying Language*" and change it to your desired configuration.
##### [Default Beautifier](#default-beautifier)
**Important**: This option is only configurable from within Atom Beautify's setting panel.
**Default**: `clang-format`
**Type**: `string`
**Enum**: `clang-format`
**Description**:
Default Beautifier to be used for GLSL
**How to Configure**
1. You can open the [Settings View](https://github.com/atom/settings-view) by navigating to
*Edit > Preferences (Linux)*, *Atom > Preferences (OS X)*, or *File > Preferences (Windows)*.
2. Go into *Packages* and search for "*Atom Beautify*" package.
3. Find the option "*Default Beautifier*" and change it to your desired configuration.
##### [Beautify On Save](#beautify-on-save)
**Important**: This option is only configurable from within Atom Beautify's setting panel.
**Type**: `boolean`
**Description**:
Automatically beautify GLSL files on save
**How to Configure**
1. You can open the [Settings View](https://github.com/atom/settings-view) by navigating to
*Edit > Preferences (Linux)*, *Atom > Preferences (OS X)*, or *File > Preferences (Windows)*.
2. Go into *Packages* and search for "*Atom Beautify*" package.
3. Find the option "*Beautify On Save*" and change it to your desired configuration.
##### [Config Path](#config-path)
**Namespace**: `glsl`
**Key**: `configPath`
**Type**: `string`
**Supported Beautifiers**: [`clang-format`](#clang-format)
**Description**:
Path to clang-format config file. i.e. clang-format.cfg (Supported by clang-format)
**Example `.jsbeautifyrc` Configuration**
```json
{
"glsl": {
"configPath": ""
}
}
```
#### [Go](#go)
**Supported Beautifiers**: [`gofmt`](#gofmt)
@ -16877,6 +16971,33 @@ sort imports (requires isort installed) (Supported by autopep8)
```
### clang-format
##### [Config Path](#config-path)
**Namespace**: `glsl`
**Key**: `configPath`
**Type**: `string`
**Supported Beautifiers**: [`clang-format`](#clang-format)
**Description**:
Path to clang-format config file. i.e. clang-format.cfg (Supported by clang-format)
**Example `.jsbeautifyrc` Configuration**
```json
{
"glsl": {
"configPath": ""
}
}
```
### coffee-fmt
##### [Indent size](#indent-size)

View File

@ -287,7 +287,8 @@
"clojure beautifier",
"nunjucks",
"ux markup",
"cljfmt"
"cljfmt",
"glsl"
],
"devDependencies": {
"coffeelint": "^1.10.1",

View File

@ -16,6 +16,7 @@ module.exports = class ClangFormat extends Beautifier
"C++": false
"C": false
"Objective-C": false
"GLSL": true
}
###

29
src/languages/glsl.coffee Normal file
View File

@ -0,0 +1,29 @@
module.exports = {
name: "GLSL"
namespace: "glsl"
###
Supported Grammars
###
grammars: [
"C"
"opencl"
"GLSL"
]
###
Supported extensions
###
extensions: [
"vert"
"frag"
]
options:
configPath:
type: 'string'
default: ""
description: "Path to clang-format config file. i.e. clang-format.cfg"
}

View File

@ -29,6 +29,7 @@ module.exports = class Languages
"erb"
"erlang"
"gherkin"
"glsl"
"go"
"fortran"
"handlebars"