commit
f8fdd3d790
|
@ -98,6 +98,9 @@ before_install:
|
|||
- pip install --upgrade sqlparse
|
||||
# Java, C, C++, C#, Objective-C, D, Pawn, Vala
|
||||
- brew install uncrustify
|
||||
# R
|
||||
- brew tap homebrew/science
|
||||
- brew install r
|
||||
# PHP
|
||||
- brew tap homebrew/homebrew-php
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
|
|
|
@ -94,6 +94,7 @@ See [all supported options in the documentation at `docs/options.md`](https://g
|
|||
| PHP | `PHP` |`.php`, `.module`, `.inc` | [`PHP-CS-Fixer`](http://php.net/manual/en/install.php) (Default), [`PHPCBF`](http://php.net/manual/en/install.php) |
|
||||
| Puppet | `Puppet` |`.pp` | [`puppet-lint`](http://puppet-lint.com/) (Default) |
|
||||
| Python | `Python` |`.py` | [`autopep8`](https://github.com/hhatto/autopep8) (Default), [`yapf`](https://github.com/google/yapf) |
|
||||
| R | `R` |`.r`, `.R` | [`formatR`](https://github.com/yihui/formatR) (Default) |
|
||||
| Riot.js | `Riot.js`, `HTML (Riot Tag)` |`.tag` | [`Pretty Diff`](https://github.com/prettydiff/prettydiff) (Default) |
|
||||
| Ruby | `Ruby`, `Ruby on Rails` |`.rb` | [`Rubocop`](https://github.com/bbatsov/rubocop) (Default), [`Ruby Beautify`](https://github.com/erniebrodeur/ruby-beautify) |
|
||||
| Rust | `Rust` |`.rs`, `.rlib` | [`rustfmt`](https://github.com/nrc/rustfmt) (Default) |
|
||||
|
|
125
docs/options.md
125
docs/options.md
|
@ -8242,6 +8242,102 @@ sort imports (requires isort installed) (Supported by autopep8)
|
|||
}
|
||||
```
|
||||
|
||||
#### [R](#r)
|
||||
|
||||
**Supported Beautifiers**: [`formatR`](#formatr)
|
||||
|
||||
| Option | formatR |
|
||||
| --- | --- |
|
||||
| `disabled` | :white_check_mark: |
|
||||
| `default_beautifier` | :white_check_mark: |
|
||||
| `beautify_on_save` | :white_check_mark: |
|
||||
| `indent_size` | :white_check_mark: |
|
||||
|
||||
**Description**:
|
||||
|
||||
Options for language R
|
||||
|
||||
##### [Disable Beautifying Language](#disable-beautifying-language)
|
||||
|
||||
**Important**: This option is only configurable from within Atom Beautify's setting panel.
|
||||
|
||||
**Type**: `boolean`
|
||||
|
||||
**Description**:
|
||||
|
||||
Disable R 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**: `formatR`
|
||||
|
||||
**Type**: `string`
|
||||
|
||||
**Enum**: `formatR`
|
||||
|
||||
**Description**:
|
||||
|
||||
Default Beautifier to be used for R
|
||||
|
||||
**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 R 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.
|
||||
|
||||
##### [Indent size](#indent-size)
|
||||
|
||||
**Namespace**: `r`
|
||||
|
||||
**Key**: `indent_size`
|
||||
|
||||
**Default**: `4`
|
||||
|
||||
**Type**: `integer`
|
||||
|
||||
**Supported Beautifiers**: [`formatR`](#formatr)
|
||||
|
||||
**Description**:
|
||||
|
||||
Indentation size/length (Supported by formatR)
|
||||
|
||||
**Example `.jsbeautifyrc` Configuration**
|
||||
|
||||
```json
|
||||
{
|
||||
"r": {
|
||||
"indent_size": 4
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### [Riot.js](#riot.js)
|
||||
|
||||
**Supported Beautifiers**: [`Pretty Diff`](#pretty-diff)
|
||||
|
@ -16338,6 +16434,35 @@ Indentation uses tabs, overrides `Indent Size` and `Indent Char` (Supported by C
|
|||
```
|
||||
|
||||
|
||||
### formatR
|
||||
|
||||
##### [Indent size](#indent-size)
|
||||
|
||||
**Namespace**: `r`
|
||||
|
||||
**Key**: `indent_size`
|
||||
|
||||
**Default**: `4`
|
||||
|
||||
**Type**: `integer`
|
||||
|
||||
**Supported Beautifiers**: [`formatR`](#formatr)
|
||||
|
||||
**Description**:
|
||||
|
||||
Indentation size/length (Supported by formatR)
|
||||
|
||||
**Example `.jsbeautifyrc` Configuration**
|
||||
|
||||
```json
|
||||
{
|
||||
"r": {
|
||||
"indent_size": 4
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
### rustfmt
|
||||
|
||||
##### [Rustfmt path](#rustfmt-path)
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
# a single line of comments is preserved
|
||||
1 + 1
|
||||
|
||||
if (TRUE) {
|
||||
x = 1 # inline comments
|
||||
} else {
|
||||
x = 2
|
||||
print("Oh no... ask the right bracket to go away!")
|
||||
}
|
||||
1 * 3 # one space before this comment will become two!
|
||||
2 + 2 + 2 # 'short comments'
|
||||
|
||||
# only 'single quotes' are allowed in comments
|
||||
df = data.frame(y = rnorm(100), x1 = rnorm(100), x2 = rnorm(100))
|
||||
lm(y ~ x1 + x2, data = df)
|
||||
1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 +
|
||||
1 + 1 ## comments after a long line
|
||||
|
||||
## here is a long long long long long long long long long long long long long long
|
||||
## long long long long long long comment
|
|
@ -0,0 +1,16 @@
|
|||
# a single line of comments is preserved
|
||||
1+1
|
||||
|
||||
if(TRUE){
|
||||
x=1 # inline comments
|
||||
}else{
|
||||
x=2;print('Oh no... ask the right bracket to go away!')}
|
||||
1*3 # one space before this comment will become two!
|
||||
2+2+2 # 'short comments'
|
||||
|
||||
# only 'single quotes' are allowed in comments
|
||||
df=data.frame(y=rnorm(100),x1=rnorm(100),x2=rnorm(100))
|
||||
lm(y~x1+x2, data=df)
|
||||
1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1 ## comments after a long line
|
||||
|
||||
## here is a long long long long long long long long long long long long long long long long long long long long comment
|
10
package.json
10
package.json
|
@ -95,6 +95,10 @@
|
|||
"name": "Arman Yessenamanov",
|
||||
"url": "https://github.com/yesenarman"
|
||||
},
|
||||
{
|
||||
"name": "Sebastian DiLorenzo",
|
||||
"url": "https://github.com/Sebastian-D"
|
||||
},
|
||||
{
|
||||
"name": "Émile Bergeron",
|
||||
"url": "https://github.com/emileber"
|
||||
|
@ -251,6 +255,7 @@
|
|||
"pretty diff",
|
||||
"pug beautify",
|
||||
"puppet-lint",
|
||||
"r",
|
||||
"remark",
|
||||
"rubocop",
|
||||
"ruby beautify",
|
||||
|
@ -264,7 +269,8 @@
|
|||
"marko beautifier",
|
||||
"vue",
|
||||
"vue beautifier",
|
||||
"sassconvert"
|
||||
"sassconvert",
|
||||
"formatr"
|
||||
],
|
||||
"devDependencies": {
|
||||
"coffeelint": "^1.10.1",
|
||||
|
@ -277,4 +283,4 @@
|
|||
"lint": "coffeelint src/ spec/",
|
||||
"code-docs": "codo && open docs/code/index.html"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
if(!("formatR" %in% installed.packages()[,"Package"])) install.packages("formatR",repos='http://cran.us.r-project.org')
|
||||
library(formatR)
|
||||
indent_size <- commandArgs(trailingOnly = TRUE)[1]
|
||||
file <- commandArgs(trailingOnly = TRUE)[2]
|
||||
tidy_source(text = readLines(file), indent = indent_size)
|
|
@ -0,0 +1,25 @@
|
|||
###
|
||||
Requires [formatR](https://github.com/yihui/formatR)
|
||||
###
|
||||
path = require("path")
|
||||
|
||||
"use strict"
|
||||
Beautifier = require('../beautifier')
|
||||
|
||||
module.exports = class R extends Beautifier
|
||||
name: "formatR"
|
||||
link: "https://github.com/yihui/formatR"
|
||||
|
||||
options: {
|
||||
R: true
|
||||
}
|
||||
|
||||
beautify: (text, language, options) ->
|
||||
r_beautifier = path.resolve(__dirname, "formatR.r")
|
||||
@run("Rscript", [
|
||||
r_beautifier,
|
||||
options.indent_size,
|
||||
@tempFile("input", text),
|
||||
'>',
|
||||
@tempFile("input", text)
|
||||
])
|
|
@ -71,6 +71,7 @@ module.exports = class Beautifiers extends EventEmitter
|
|||
'yapf'
|
||||
'erl_tidy'
|
||||
'marko-beautifier'
|
||||
'formatR'
|
||||
]
|
||||
|
||||
###
|
||||
|
|
|
@ -51,6 +51,7 @@ module.exports = class Languages
|
|||
"php"
|
||||
"puppet"
|
||||
"python"
|
||||
"r"
|
||||
"riotjs"
|
||||
"ruby"
|
||||
"rust"
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
# Get Atom defaults
|
||||
scope = ['text.html']
|
||||
tabLength = atom?.config.get('editor.tabLength', scope: scope) ? 4
|
||||
softTabs = atom?.config.get('editor.softTabs', scope: scope) ? true
|
||||
defaultIndentSize = (if softTabs then tabLength else 1)
|
||||
defaultIndentChar = (if softTabs then " " else "\t")
|
||||
defaultIndentWithTabs = not softTabs
|
||||
|
||||
module.exports = {
|
||||
|
||||
name: "R"
|
||||
namespace: "r"
|
||||
|
||||
###
|
||||
Supported Grammars
|
||||
###
|
||||
grammars: [
|
||||
"R"
|
||||
]
|
||||
|
||||
###
|
||||
Supported extensions
|
||||
###
|
||||
extensions: [
|
||||
"r"
|
||||
"R"
|
||||
]
|
||||
|
||||
options:
|
||||
indent_size:
|
||||
type: 'integer'
|
||||
default: defaultIndentSize
|
||||
description: "Indentation size/length"
|
||||
|
||||
}
|
Loading…
Reference in New Issue