0.2.3 • Published 9 years ago
esformatter-align v0.2.3
esformatter-align
esformatter plugin for alignment.
Usage
install it:
npm install esformatter-alignand add to your esformatter config file:
{
"plugins": [
"esformatter-align"
]
}Alignments
VariableDeclarations
input:
var longer = require('hello');
var small = require('hello');
var muchlonger = require('hello');output:
var longer = require('hello');
var small = require('hello');
var muchlonger = require('hello');ObjectExpressions
input:
var x = {
a: 5,
bla: ''
};output:
var x = {
a: 5,
bla: ''
};AssignmentExpressions
input:
foo = 'bar';
fooooooo = 'baz';output:
foo = 'bar';
fooooooo = 'baz';TernaryExpression
input:
foo ? x : 'bar';
fooooooo ? y : 'baz';output:
foo ? x : 'bar';
fooooooo ? y : 'baz';OrExpression
input:
foo || x || 'bar';
fooooooo || yy || 'baz';output:
foo || x || 'bar';
fooooooo || yy || 'baz';SpreadAlignment, ShorthandAlignment
The object spread operator and shorthand can either be aligned with the keys (default) or with the values.
input:
var y = { blu: 1 };
var z = true;
var x = {
z,
...y,
bla: 5
};output (default: keys):
var y = {
blu: 1
};
var x = {
z,
...y,
bla: 5
};output (option: value):
var y = {
blu: 1
};
var x = {
z,
...y,
bla: 5
};Config
Optionally disable alignment of specific expressions and set some other options
{
"esformatter": {
// ...
},
"indent": {
// ...
},
"align": {
"ObjectExpression": 1,
"VariableDeclaration": 1,
"AssignmentExpression": 1,
"TernaryExpression": 0,
"OrExpression": 0,
"SpreadAlignment": "key", // optional: "value"
"ShorthandAlignment": "key" // optional: "value"
},
// ...
}License
Released under the MIT License.