forked from standard/standard-www
/
readme-esla.html
374 lines (370 loc) · 73.8 KB
/
readme-esla.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
<!DOCTYPE html>
<html>
<head>
<title>JavaScript Standard Style</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link type="text/css" rel="stylesheet" href="main.css" />
<link rel="apple-touch-icon" sizes="57x57" href="/favicons/apple-touch-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/favicons/apple-touch-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/favicons/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/favicons/apple-touch-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/favicons/apple-touch-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/favicons/apple-touch-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/favicons/apple-touch-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/favicons/apple-touch-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/favicons/apple-touch-icon-180x180.png">
<link rel="icon" type="image/png" href="/favicons/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="/favicons/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="/favicons/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/png" href="/favicons/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="/favicons/manifest.json">
<link rel="mask-icon" href="/favicons/safari-pinned-tab.svg" color="#f3df49">
<link rel="shortcut icon" href="/favicons/favicon.ico">
<meta name="msapplication-TileColor" content="#603cba">
<meta name="msapplication-TileImage" content="/favicons/mstile-144x144.png">
<meta name="msapplication-config" content="/favicons/browserconfig.xml">
<meta name="theme-color" content="#f3df49">
<link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,400italic,700italic' rel='stylesheet' type='text/css'>
</head>
<body>
<nav>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="demo.html">Try It Out</a></li>
<li><a href="index.html#install">Install</a></li>
<li><a href="rules.html">Rules</a></li>
<li><a href="index.html#usage">Usage</a></li>
<li><a href="index.html#faq">FAQ</a></li>
<li><a href="awesome.html">Ecosystem</a></li>
<li><a href="changelog.html">Change Log</a></li>
<li><a href="authors.html">Authors</a></li>
<li><a href="https://github.com/feross/standard">Github</a>
</ul>
</nav>
<div class="content">
<h1>
<a href="http://standardjs.com"><img src="https://cdn.rawgit.com/feross/standard/master/sticker.svg" width="200"></a>
<br>
JavaScript Standard Style
<br>
<br>
</h1>
<p></p><h4>Una guía de estilos Javascript para gobernarlos a todos</h4><p></p>
<p>
<a href="https://travis-ci.org/feross/standard"><img src="https://img.shields.io/travis/feross/standard/master.svg" class="badge"></a>
<a href="https://www.npmjs.com/package/standard"><img src="https://img.shields.io/npm/dm/standard.svg" class="badge"></a>
<a href="https://www.npmjs.com/package/standard"><img src="https://img.shields.io/npm/v/standard.svg" class="badge"></a>
<br>
Read in: <a href="README.md">English</a>
</p>
<br>
<p>Sin decisiones que tomar. Sin archivos <code>.eslintrc</code>, <code>.jshintrc</code>, o <code>.jscsrc</code>
a gestionar. Simplemente funciona.</p>
<p>Este modulo te ahorra tiempo a ti (y otros) dos maneras:</p>
<ul>
<li><strong>Sin configuración.</strong> La manera mas fácil de forzar estilos consistentes
en tu proyecto.</li>
<li><strong>Captura errores de estilos antes que sean enviados a PR.</strong> Te ahorras el tiempo de
hacer revisiones de código eliminando inconsistencias entre el dueño del
repositorio y los contribuidores</li>
</ul>
<p>Instalar con:</p>
<div><pre class="editor editor-colors"><div class="line"><span class="text"><span>npm install standard --save-dev</span></span></div></pre></div>
<h3 id="user-content-las-reglas" class="deep-link"><a href="#las-reglas">Las reglas</a></h3>
<ul>
<li><strong>Usar 2 espacios</strong> como sangría.</li>
<li><strong>Usar comillas simples en cadenas de texto</strong> con la excepcion para evitar escapado de texto</li>
<li><strong>No dejar variables sin usar</strong> – esta captura <em>toneladas</em> de bugs!</li>
<li><strong>Sin punto y coma</strong> – <a href="http://blog.izs.me/post/2353458699/an-open-letter-to-javascript-leaders-regarding">Esta</a> <a href="http://inimino.org/~inimino/blog/javascript_semicolons">bien.</a> <a href="https://www.youtube.com/watch?v=gsfbh17Ax9I">En serio!</a></li>
<li><strong>No debes empezar una línea con <code>(</code>, <code>[</code>, o <code>`</code></strong>
<ul>
<li>Este es ul <strong>unico</strong> problema al evitar punto y coma – <em>automaticamente verificado para ti!</em></li>
<li><a href="RULES.md#semicolons">More details</a></li>
</ul>
</li>
<li><strong>Espacio después de las palabras claves</strong> <code>if (condition) { ... }</code></li>
<li><strong>Espacio después del nombre de función</strong> <code>function name (arg) { ... }</code></li>
<li>Usar siempre <code>===</code> en vez de <code>==</code> – pero <code>obj == null</code> esta permitido para verificar <code>null || undefined</code>.</li>
<li>Gestionar siempre el parametro de función <code>err</code> de node.js</li>
<li>Usar siempre el prefijo <code>window</code> en los globales del navegador – A excepción de <code>document</code> y <code>navigator</code> esto esta bien
<ul>
<li>Previene uso accidental de mal-llamados globales del navegador como <code>open</code>, <code>length</code>,
<code>event</code>, y <code>name</code>.</li>
</ul>
</li>
<li><strong>Y <a href="RULES.md#javascript-standard-style">mucho mas</a></strong> – <em>prueba <code>standard</code> hoy mismo!</em></li>
</ul>
<p>Para una mejor idea, mira este
<a href="https://github.com/expressjs/body-parser/blob/master/index.js">archivo de ejemplo</a> escrito
en JavaScript Standard Style. O, mira alguno de los
<a href="https://raw.githubusercontent.com/feross/standard-packages/master/all.json">miles de proyectos</a>
que usan <code>standard</code>!</p>
<h2 id="user-content-tabla-de-contenido" class="deep-link"><a href="#tabla-de-contenido">Tabla de Contenido</a></h2>
<ul>
<li><a href="#instalaci%C3%B3n">Instalación</a></li>
<li><a href="#uso">Uso</a>
<ul>
<li><a href="#lo-que-prodias-hacer-si-eres-inteligente">Lo que podrias hacer si eres inteligente</a></li>
<li><a href="#medalla">Medalla</a></li>
<li><a href="#plugins-editores-de-textos">Plugins editores de textos</a></li>
</ul>
</li>
<li><a href="#faq">FAQ</a>
<ul>
<li><a href="#porque-deberia-usar-javascript-standard-style">¿Porque deberia usar JavaScript Standard Style?</a></li>
<li><a href="#no-estoy-de-acuerdo-con-la-regla-x-lo-puedo-cambiar">No estoy de acuerdo con la regla X, ¿lo puedes cambiar?</a></li>
<li><a href="#pero-esto-no-un-estandar-web-real">¡Pero esto no un estandar web real!</a></li>
<li><a href="#hay-alg%C3%BAn-formateador-automatico">¿Hay algún formateador automatico?</a></li>
<li><a href="#como-hago-para-ignorar-archivos">¿Como hago para ignorar archivos?</a></li>
<li><a href="#como-oculto-cierta-alerta">¿Como oculto cierta alerta?</a></li>
<li><a href="#yo-uso-una-librer%C3%ADa-que-contamina-el-espacio-de-nombres-global-como-puedo-evitar-los-errores--variable-is-not-defined">Yo uso una librería que contamina el espacio de nombres global. ¿Como puedo evitar los errores "variable is not defined"?</a></li>
<li><a href="#puedo-usar-un-parser-javascript-que-soporte-es-%C3%BAltima-generaci%C3%B3n">¿Puedo usar un parser JavaScript que soporte ES última-generación?</a></li>
<li><a href="#puedo-usar-una-variaci%C3%B3n-de-lenguaje-javascript-como-flow">¿Puedo usar una variación de lenguaje JavaScript, como Flow?</a></li>
<li><a href="#que-acerca-de-mocha-jasmine-qunit-y-etc">¿Que acerca de Mocha, Jasmine, QUnit y etc?</a></li>
<li><a href="#que-acerca-de-web-workers">¿Que acerca de Web Workers?</a></li>
<li><a href="#puedo-verificar-codigo-dentro-de-archivos-markdown-o-html">¿Puedo verificar codigo dentro de archivos Markdown o HTML?</a></li>
<li><a href="#hay-alg%C3%BAn-gancho-git-pre-commit">¿Hay algún gancho git <code>pre-commit</code>?</a></li>
<li><a href="#como-hago-la-salida-output-todo-colorido-y-bonito">¿Como hago la salida (output) todo colorido y <em>bonito</em>?</a></li>
<li><a href="#quiero-contribuir-a-standard-que-paquetes-deber%C3%ADa-conocer">Quiero contribuir a <code>standard</code>. ¿Que paquetes debería conocer?</a></li>
</ul>
</li>
<li><a href="#nodejs-api">Node.js API</a>
<ul>
<li><a href="#standardlinttexttext-opts-callback"><code>standard.lintText(text, [opts], callback)</code></a></li>
<li><a href="#standardlintfilesfiles-opts-callback"><code>standard.lintFiles(files, [opts], callback)</code></a></li>
</ul>
</li>
<li><a href="#licencia">Licencia</a></li>
</ul>
<h2 id="user-content-instalación" class="deep-link"><a href="#instalación">Instalación</a></h2>
<p>La manera más fácil de usar JavaScript Standard Style para chequear tu código
es instalarlo globalmente como programa Node de línea de comandos.
Para hacer esto, simplemente ejecute el siguiente comando en su terminal
(la bandera <code>-g</code> instalará <code>standard</code> globalmente en su sistema,
omita la bandera si solo quiere instalar <code>standard</code> en el directorio actual):</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ npm install standard --global</span></span></div></pre></div>
<p>O, puede ejecutar este comando para instalar <code>standard</code> localmente, para usar en su módulo:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ npm install standard --save-dev</span></span></div></pre></div>
<p><a href="http://nodejs.org">Node.js</a> y <a href="https://npmjs.com">npm</a> son requeridos para ejecutar los comandos anteriores.</p>
<h2 id="user-content-uso" class="deep-link"><a href="#uso">Uso</a></h2>
<p>Una vez tenga instalado <code>standard</code>, ya deberías poder usar <code>standard</code>. Un simple caso de uso podría ser chequear estilos de todos los archivos JavaScript en el directorio actual:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard</span></span></div><div class="line"><span class="text"><span>Error: Use JavaScript Standard Style</span></span></div><div class="line"><span class="text"><span>  lib/torrent.js:950:11: Expected '===' and instead saw '=='.</span></span></div></pre></div>
<p>Opcionalmente puedes pasar un directorio (o directorios) usando el patrón glob.
Asegúrese de usar comillas en las rutas que contengan el patrón glob
para que sean expandidos por <code>standard</code> y no por el shell:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard "src/util/**/*.js" "test/**/*.js"</span></span></div></pre></div>
<p><strong>Nota:</strong> Por defecto <code>standard</code> buscará todos los archivos que hagan pareo con los patrones:
<code>**/*.js</code>, <code>**/*.jsx</code>.</p>
<h3 id="user-content-lo-que-podrias-hacer-si-eres-inteligente" class="deep-link"><a href="#lo-que-podrias-hacer-si-eres-inteligente">Lo que podrias hacer si eres inteligente</a></h3>
<ol>
<li>Agregar esto <code>package.json</code></li>
</ol>
<div class="highlight json"><pre class="editor editor-colors"><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>name</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>my-cool-package</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="punctuation separator dictionary json"><span>,</span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>devDependencies</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>standard</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>*</span><span class="punctuation definition string end json"><span>"</span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>  </span></span><span class="punctuation definition dictionary end json"><span>}</span></span></span><span class="punctuation separator dictionary json"><span>,</span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>scripts</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>test</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>standard && node my-tests.js</span><span class="punctuation definition string end json"><span>"</span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>  </span></span><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></div></pre></div>
<ol>
<li>Chequear estilos automaticamente cuando ejecutes <code>npm test</code></li>
</ol>
<div><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ npm test</span></span></div><div class="line"><span class="text"><span>Error: Use JavaScript Standard Style</span></span></div><div class="line"><span class="text"><span>  lib/torrent.js:950:11: Expected '===' and instead saw '=='.</span></span></div></pre></div>
<ol>
<li>No volver a dar feedback de stilos un PR otra vez!</li>
</ol>
<h3 id="user-content-medalla" class="deep-link"><a href="#medalla">Medalla</a></h3>
<p>¿Desea usar uno estos en uno de sus proyectos? Incluya una de estas medallas a su readme para darle a conocer a las personas que está usando Javascript Standard Style.</p>
<p><a href="https://github.com/feross/standard"><img src="https://cdn.rawgit.com/feross/standard/master/badge.svg"></a></p>
<div class="highlight"><pre class="editor editor-colors"><div class="line"><span class="source gfm"><span class="link"><span class="punctuation definition begin gfm"><span>[!</span><span>[</span></span><span class="entity gfm"><span>Standard - JavaScript Style Guide</span></span><span class="punctuation definition end gfm"><span>]</span></span><span class="markup underline link gfm"><span class="punctuation definition begin gfm"><span>(</span></span><span>https://cdn.rawgit.com/feross/standard/master/badge.svg</span><span class="punctuation definition end gfm"><span>)</span></span></span><span class="punctuation definition end gfm"><span>]</span></span><span class="markup underline link gfm"><span class="punctuation definition begin gfm"><span>(</span></span><span>https://github.com/feross/standard</span><span class="punctuation definition end gfm"><span>)</span></span></span></span></span></div></pre></div>
<p class="badge-only"><a href="http://standardjs.com/"><img src="https://img.shields.io/badge/code%20style-standard-brightgreen.svg" class="badge"></a></p>
<div class="highlight"><pre class="editor editor-colors"><div class="line"><span class="source gfm"><span class="link"><span class="punctuation definition begin gfm"><span>[!</span><span>[</span></span><span class="entity gfm"><span>Standard - JavaScript Style Guide</span></span><span class="punctuation definition end gfm"><span>]</span></span><span class="markup underline link gfm"><span class="punctuation definition begin gfm"><span>(</span></span><span>https://img.shields.io/badge/code%20style-standard-brightgreen.svg</span><span class="punctuation definition end gfm"><span>)</span></span></span><span class="punctuation definition end gfm"><span>]</span></span><span class="markup underline link gfm"><span class="punctuation definition begin gfm"><span>(</span></span><span>http://standardjs.com/</span><span class="punctuation definition end gfm"><span>)</span></span></span></span></span></div></pre></div>
<h3 id="user-content-plugins-editores-de-textos" class="deep-link"><a href="#plugins-editores-de-textos">Plugins editores de textos</a></h3>
<p>Primero, instale <code>standard</code>. Luego, instale el plugin apropiado para su editor:</p>
<h4><a href="https://www.sublimetext.com/">Sublime Text</a></h4>
<p>Usando <strong><a href="https://packagecontrol.io/">Package Control</a></strong>, instale <strong><a href="http://www.sublimelinter.com/en/latest/">SublimeLinter</a></strong> y
<strong><a href="https://packagecontrol.io/packages/SublimeLinter-contrib-standard">SublimeLinter-contrib-standard</a></strong>.</p>
<p>Para formateo automatico al guardar, instale <strong><a href="https://packagecontrol.io/packages/StandardFormat">StandardFormat</a></strong>.</p>
<h4><a href="https://atom.io">Atom</a></h4>
<p>Instale <strong><a href="https://atom.io/packages/linter-js-standard">linter-js-standard</a></strong>.</p>
<p>Para formateo automatico al guardar, instale <strong><a href="https://atom.io/packages/standard-formatter">standard-formatter</a></strong>. Para snippets,
instale <strong><a href="https://atom.io/packages/standardjs-snippets">standardjs-snippets</a></strong>.</p>
<h4><a href="http://www.vim.org/">Vim</a></h4>
<p>instale <strong><a href="https://github.com/scrooloose/syntastic">Syntastic</a></strong> y agregue esta linea a su <code>.vimrc</code>:</p>
<div class="highlight"><pre class="editor editor-colors"><div class="line"><span class="text"><span>let g:syntastic_javascript_checkers = ['standard']</span></span></div></pre></div>
<p>Para formateo automatico al guardar, agregue estas dos linea a su <code>.vimrc</code>:</p>
<div class="highlight"><pre class="editor editor-colors"><div class="line"><span class="text"><span>autocmd bufwritepost *.js silent !standard --fix %</span></span></div><div class="line"><span class="text"><span>set autoread</span></span></div></pre></div>
<h4><a href="https://www.gnu.org/software/emacs/">Emacs</a></h4>
<p>Instale <strong><a href="http://www.flycheck.org">Flycheck</a></strong> y revise <strong><a href="http://www.flycheck.org/en/latest/user/installation.html">manual</a></strong> para aprender
como habilitarlo en sus proyectos.</p>
<h4><a href="http://brackets.io/">Brackets</a></h4>
<p>Busque el registro de extension para <strong><a href="https://github.com/ishamf/brackets-standard/">"Standard Code Style"</a></strong>.</p>
<h4><a href="https://code.visualstudio.com/">Visual Studio Code</a></h4>
<p>Instale <strong><a href="https://marketplace.visualstudio.com/items/chenxsan.vscode-standardjs">vscode-standardjs</a></strong>. (Incluye soporte para formateo automatico.)</p>
<p>Para snippets JS, instale: <strong><a href="https://marketplace.visualstudio.com/items?itemName=capaj.vscode-standardjs-snippets">vscode-standardjs-snippets</a></strong>.
Para snippets React, instale <strong><a href="https://marketplace.visualstudio.com/items/TimonVS.ReactSnippetsStandard">vscode-react-standard</a></strong>.</p>
<h4><a href="https://www.jetbrains.com/webstorm/">WebStorm and other JetBrains products</a></h4>
<p>WebStorm <a href="https://blog.jetbrains.com/webstorm/2017/01/webstorm-2017-1-eap-171-2272/">recientemente anuncio soporte nativo</a> para <code>standard</code> diractemente en el IDE.</p>
<p>Si aun prefieres configurar <code>standard</code> manualmente <a href="webstorm-2">sigue esta guia</a></p>
<p>Esto aplica a todos los productos de JetBrains, incluyendo PhpStorm, IntelliJ, RubyMine y etc.</p>
<h2 id="user-content-faq" class="deep-link"><a href="#faq">FAQ</a></h2>
<h3 id="user-content-¿porque-deberia-usar-javascript-standard-style" class="deep-link"><a href="#¿porque-deberia-usar-javascript-standard-style">¿Porque deberia usar JavaScript Standard Style?</a></h3>
<p>La belleza de JavaScript Standard Style es qué es simple.
Nadie quiere mantener configuración de estilos en múltiples archivos
de cientos de líneas para cada módulo/proyecto en los que trabajan.
¡Es suficiente de esta locura!</p>
<p>Este modulo te guarda a ti (y otros) tiempo en dos maneras:</p>
<ul>
<li><strong>Sin configuración.</strong> La manera mas fácil de forzar estilos consistentes
en tu proyecto. Simplemente usalo.</li>
<li><strong>Captura errores de estilos antes que sean enviados a PR.</strong> Te guarda de
revisiones de código eliminando delante y detrás entre el dueño del
repositorio y los contribuidores</li>
</ul>
<p>Adoptar estilos <code>standard</code> significa clasificar la importancia de la claridad del código y las convenciones de la comunidad mucho más que estilo personal. Esto quizás no tenga sentido para el 100% de proyectos y culturas de desarrollo, aunque proyectos de código abierto pueden llegar a ser hostiles para los novatos. Estableciendo expectativas de contribución limpia y automatizada puede hacer el proyecto más saludable</p>
<h3 id="user-content-no-estoy-de-acuerdo-con-la-regla-x-¿lo-puedo-cambiar" class="deep-link"><a href="#no-estoy-de-acuerdo-con-la-regla-x-¿lo-puedo-cambiar">No estoy de acuerdo con la regla X, ¿lo puedo cambiar?</a></h3>
<p>No. El punto de <code>standard</code> es de evitar <a href="https://www.freebsd.org/doc/en/books/faq/misc.html#bikeshed-painting">bikeshedding</a> acerca del estilo. Existen un montón de debates online acerca de tabs vs espacios, etc. que nunca serán resueltos. Estos debates solo distraen de hacer el trabajo. Al final del dia tienes simplemente que “usar alguno”, y esa es toda la filosofía de <code>standard</code> -- es un montón de sensibles opiniones de “usar alguno”. Con la esperanza que los usuarios vean el valor en esto más que defender sus propias opiniones.</p>
<p>Si realmente quieres configurar cientos de reglas individualmente, puedes usar <code>eslint</code> directamente con <a href="https://github.com/feross/eslint-config-standard">eslint-config-standard</a> aplicando
cambios encima de este.</p>
<p>Tip: ¡Simplemente usa <code>standard</code> y ya esta. Existen problemas reales
en los cuales debes usar tu tiempo! :P</p>
<h3 id="user-content-¡pero-esto-no-un-estandar-web-real" class="deep-link"><a href="#¡pero-esto-no-un-estandar-web-real">¡Pero esto no un estandar web real!</a></h3>
<p>¡Por su puesto que no lo es! El estilo aqui no esta afiliado a ningún grupo oficial de estándar web, es por eso que este repositorio se llama <code>feross/standard</code> y no <code>ECMA/standard</code>.</p>
<p>La palabra “estándar” tiene más significados que solo “estándar web” :-) Por ejemplo:</p>
<ul>
<li>Este módulo ayuda a mantener el código a la más alta <em>calidad estandar</em>.</li>
<li>Este módulo asegura que las nuevas contribuciones sigan los <em>estilos estandar</em> básicos.</li>
</ul>
<h3 id="user-content-¿hay-algún-formateador-automatico" class="deep-link"><a href="#¿hay-algún-formateador-automatico">¿Hay algún formateador automatico?</a></h3>
<p>¡Si! Puedes usar <code>standard --fix</code> para arreglar la mayoría de problemas automáticamente.</p>
<p><code>standard --fix</code> esta integrado en <code>standard</code> (desde v8.0.0) para máxima conveniencia.
La mayoría de los problemas se arreglan, pero algunos errores, como olvidar darle uso a los <code>err</code> en los callbacks de node, deben ser arreglados manualmente.</p>
<p>Para no hacerte perder el tiempo, <code>standard</code> emite un mensaje ("Run <code>standard --fix</code> to
automatically fix some problems.") cuando detecta errores que pueden ser arreglados automáticamente.</p>
<h3 id="user-content-¿como-hago-para-ignorar-archivos" class="deep-link"><a href="#¿como-hago-para-ignorar-archivos">¿Como hago para ignorar archivos?</a></h3>
<p>Ciertas rutas (<code>node_modules/</code>, <code>coverage/</code>, <code>vendor/</code>, <code>*.min.js</code>, <code>bundle.js</code>, y archivos/directorios que empiezan con <code>.</code> cómo <code>.git</code> son ignorados automáticamente.</p>
<p>Las rutas del <code>.gitignore</code> del proyecto raíz son ignorados automáticamente.</p>
<p>Algunas veces necesitas ignorar directorios o archivos específicos. Para hacerlo, agrega la propiedad <code>standard.ignore</code> al <code>package.json</code>:</p>
<div class="highlight json"><pre class="editor editor-colors"><div class="line"><span class="source json"><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>standard</span><span class="punctuation definition string end json"><span>"</span></span></span><span>: </span><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>ignore</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure array json"><span class="punctuation definition array begin json"><span>[</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>**/out/</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="punctuation separator array json"><span>,</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>/lib/select2/</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="punctuation separator array json"><span>,</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>/lib/ckeditor/</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="punctuation separator array json"><span>,</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>tmp.js</span><span class="punctuation definition string end json"><span>"</span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>  </span><span class="punctuation definition array end json"><span>]</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></div></pre></div>
<h3 id="user-content-¿como-oculto-cierta-alerta" class="deep-link"><a href="#¿como-oculto-cierta-alerta">¿Como oculto cierta alerta?</a></h3>
<p>En raros casos, necesitarás romper una regla y ocultar la alerta generada por <code>standard</code>.</p>
<p>JavaScript Standard Style usa <a href="http://eslint.org/">ESLint</a> bajo la capucha y puedes ocultar las alertas como normalmente lo harias si usaras ESLint directamente.</p>
<p>Para obtener una salida mas especifica (así puedes encontrar el nombre de la regla a ignorar) ejecute:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --verbose</span></span></div><div class="line"><span class="text"><span>Error: Use JavaScript Standard Style</span></span></div><div class="line"><span class="text"><span>  routes/error.js:20:36: 'file' was used before it was defined. (no-use-before-define)</span></span></div></pre></div>
<p>Inhabilitar <strong>toda las reglas</strong> en una linea especifica:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span>file </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>I know what I am doing</span><span class="punctuation definition string end js"><span>'</span></span></span><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> eslint-disable-line</span><span> </span></span></span></div></pre></div>
<p>O, inhabilitar <strong>solo</strong> la regla <code>"no-use-before-define"</code>:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span>file </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>I know what I am doing</span><span class="punctuation definition string end js"><span>'</span></span></span><span> </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> eslint-disable-line no-use-before-define</span><span> </span></span></span></div></pre></div>
<p>O, inhabilitar la regla <code>"no-use-before-define"</code> para <strong>múltiples lineas</strong>:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="comment block js"><span class="punctuation definition comment js"><span>/*</span></span><span> eslint-disable no-use-before-define </span><span class="punctuation definition comment js"><span>*/</span></span></span></span></div><div class="line"><span class="source js"><span class="entity name type object console js"><span>console</span></span><span class="meta js"><span class="meta delimiter method period js"><span>.</span></span><span class="support function console js"><span>log</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>offending code goes here...</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="punctuation definition end round js"><span>)</span></span></span></span></span></div><div class="line"><span class="source js"><span class="entity name type object console js"><span>console</span></span><span class="meta js"><span class="meta delimiter method period js"><span>.</span></span><span class="support function console js"><span>log</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>offending code goes here...</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="punctuation definition end round js"><span>)</span></span></span></span></span></div><div class="line"><span class="source js"><span class="entity name type object console js"><span>console</span></span><span class="meta js"><span class="meta delimiter method period js"><span>.</span></span><span class="support function console js"><span>log</span></span><span class="meta js"><span class="punctuation definition begin round js"><span>(</span></span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span>offending code goes here...</span><span class="punctuation definition string end js"><span>'</span></span></span><span class="punctuation definition end round js"><span>)</span></span></span></span></span></div><div class="line"><span class="source js"><span class="comment block js"><span class="punctuation definition comment js"><span>/*</span></span><span> eslint-enable no-use-before-define </span><span class="punctuation definition comment js"><span>*/</span></span></span></span></div></pre></div>
<h3 id="user-content-yo-uso-una-librería-que-contamina-el-espacio-de-nombres-global-¿como-puedo-evitar-los-errores--variable-is-not-defined" class="deep-link"><a href="#yo-uso-una-librería-que-contamina-el-espacio-de-nombres-global-¿como-puedo-evitar-los-errores--variable-is-not-defined">Yo uso una librería que contamina el espacio de nombres global. ¿Como puedo evitar los errores "variable is not defined"?</a></h3>
<p>Algunos paquetes (ej <code>mocha</code>) colocan sus funciones (ej: <code>describe</code>, <code>it</code>) en el objeto global (¡mala manera!). Como estas funciones no están definidas o requeridas (ej: <code>require</code>) en ningún lugar del código, <code>standard</code> te alertara que están usando una variable que no está definida (usualmente, esta regla es realmente útil para detectar errores de tipeo). Pero queremos inhabilitar estas variables globales.</p>
<p>Para hacerle a <code>standard</code> (como también humanos que leen tu código) saber que ciertas variables son globales en tu código, agregar esto en la parte superior de tu código:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="comment block js"><span class="punctuation definition comment js"><span>/*</span></span><span> global myVar1, myVar2 </span><span class="punctuation definition comment js"><span>*/</span></span></span></span></div></pre></div>
<p>Si tienes cientos de archivos, seria deseable evitar agregar comentarios a cada archivo.
En este caso ejecute:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --global myVar1 --global myVar2</span></span></div></pre></div>
<p>O, agregar esto a su <code>package.json</code></p>
<div class="highlight json"><pre class="editor editor-colors"><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>standard</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>globals</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure array json"><span class="punctuation definition array begin json"><span>[</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>myVar1</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="punctuation separator array json"><span>,</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>myVar2</span><span class="punctuation definition string end json"><span>"</span></span></span><span> </span><span class="punctuation definition array end json"><span>]</span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>  </span></span><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></div></pre></div>
<p><em>Nota: <code>global</code> y <code>globals</code> son equivalentes</em></p>
<h3 id="user-content-¿puedo-usar-un-parser-javascript-que-soporte-es-última-generación" class="deep-link"><a href="#¿puedo-usar-un-parser-javascript-que-soporte-es-última-generación">¿Puedo usar un parser JavaScript que soporte ES última-generación?</a></h3>
<p><code>standard</code> soporta la umtima version de ECMAscript, incluyendo todas las caracteristicas del lenguaje
de las propuestas que estan en "Stage 4" del proceso de propuestas.</p>
<p>Para soportar caracteristicas experimentales del lenguaje, <code>standard</code> soporta especificando un parser JS customizado. Antes que uses un parser customizado, considera siquiera la complejidad agregada vale la pena.</p>
<p>Para usar un parser customizado, instálelo desde npm (ejemplo: <code>npm install babel-eslint</code>) y ejecute esto:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --parser babel-eslint</span></span></div></pre></div>
<p>O, agregue esto a <code>package.json</code>:</p>
<div class="highlight json"><pre class="editor editor-colors"><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>standard</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>parser</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>babel-eslint</span><span class="punctuation definition string end json"><span>"</span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>  </span></span><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></div></pre></div>
<p>Si <code>standard</code> esta instalado globalmente (ej: <code>npm install standard --global</code>), entonces asegurese de instalar <code>babel-eslint</code> globalmente también com <code>npm install babel-eslint --global</code>.</p>
<h3 id="user-content-¿puedo-usar-una-variación-de-lenguaje-javascript-como-flow" class="deep-link"><a href="#¿puedo-usar-una-variación-de-lenguaje-javascript-como-flow">¿Puedo usar una variación de lenguaje JavaScript, como Flow?</a></h3>
<p>Antes de usar una variable del lenguaje JavaScript customizado, considere si la complejidad agregada
(y esfuerzo requerido para obtener los contribuidores alcanzarle con rapidez) vale la pena.</p>
<p><code>standard</code> soporta plugins ESLint. Usa uno de estos para transformar el código a javascript válido antes de que <code>standard</code> lo vea. Para usar un parser customizado, instálelo desde
npm (example: <code>npm install eslint-plugin-flowtype</code>) y ejecute:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --plugin flowtype</span></span></div></pre></div>
<p>O, agrege esto a <code>package.json</code>:</p>
<div class="highlight json"><pre class="editor editor-colors"><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span>  </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>standard</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure dictionary json"><span class="punctuation definition dictionary begin json"><span>{</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>parser</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>babel-eslint</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="punctuation separator dictionary json"><span>,</span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>    </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>plugins</span><span class="punctuation definition string end json"><span>"</span></span></span><span class="meta structure dictionary json"><span class="punctuation separator dictionary key-value json"><span>:</span></span><span> </span><span class="meta structure array json"><span class="punctuation definition array begin json"><span>[</span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>      </span><span class="string quoted double json"><span class="punctuation definition string begin json"><span>"</span></span><span>flowtype</span><span class="punctuation definition string end json"><span>"</span></span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure array json"><span>    </span><span class="punctuation definition array end json"><span>]</span></span></span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span class="meta structure dictionary json"><span>  </span></span><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></span></span></div><div class="line"><span class="source json"><span class="meta structure dictionary json"><span class="punctuation definition dictionary end json"><span>}</span></span></span></span></div></pre></div>
<p>Si <code>standard</code> esta instalado globalmente (ej: <code>npm install standard --global</code>), entonces asegurese d instalar <code>eslint-plugin-flowtype</code> globalmente también, con <code>npm install eslint-plugin-flowtype -g</code>.</p>
<p><em>Nota: <code>plugin</code> y <code>plugins</code> son equivalentes</em></p>
<h3 id="user-content-¿que-acerca-de-web-workers" class="deep-link"><a href="#¿que-acerca-de-web-workers">¿Que acerca de Web Workers?</a></h3>
<p>Agrega esto al inicio de tus archivos:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="comment block js"><span class="punctuation definition comment js"><span>/*</span></span><span> eslint-env serviceworker </span><span class="punctuation definition comment js"><span>*/</span></span></span></span></div></pre></div>
<p>Esto le hara saber a<code>standard</code> (como también humanos que leen tu código) que
<code>self</code> es una variable global en el codigo web worker.</p>
<h3 id="user-content-¿que-acerca-de-mocha-jasmine-qunit-y-etc" class="deep-link"><a href="#¿que-acerca-de-mocha-jasmine-qunit-y-etc">¿Que acerca de Mocha, Jasmine, QUnit y etc?</a></h3>
<p>Para soportar mocha in tus archivos de prueba, agrega esto al inicio de los archivos:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="comment block js"><span class="punctuation definition comment js"><span>/*</span></span><span> eslint-env mocha </span><span class="punctuation definition comment js"><span>*/</span></span></span></span></div></pre></div>
<p>O, ejecute:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --env mocha</span></span></div></pre></div>
<p>Donde <code>mocha</code> puede ser uno de <code>jasmine</code>, <code>qunit</code>, <code>phantomjs</code>, y asi sucesivamente.
Para ver la lista completa, chequear la documentación de ESLint <a href="http://eslint.org/docs/user-guide/configuring.html#specifying-environments">especificando entornos</a>.
Por una lista de qué variables globales están disponibles en estos entornos chequea el modulo npm <a href="https://github.com/sindresorhus/globals/blob/master/globals.json">globals</a> npm</p>
<p><em>Nota: <code>env</code> y <code>envs</code> son equivalentes</em></p>
<h3 id="user-content-¿puedo-verificar-codigo-dentro-de-archivos-markdown-o-html" class="deep-link"><a href="#¿puedo-verificar-codigo-dentro-de-archivos-markdown-o-html">¿Puedo verificar codigo dentro de archivos Markdown o HTML?</a></h3>
<p>Para verificar código dentro de archivos Markdown use <a href="https://www.npmjs.com/package/standard-markdown"><code>standard-markdown</code></a>.</p>
<p>Alternativamente, hay plugins ESLint para verificar código de Markdown,
HTML y otros tipos de lenguajes:</p>
<p>Para verificar código dentro de archivos Markdown, use el plugin ESLint:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ npm install eslint-plugin-markdown</span></span></div></pre></div>
<p>Luego para verificar codigo JS que aparece dentro de bloques código, ejecute:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --plugin markdown '**/*.md'</span></span></div></pre></div>
<p>Para verificar código dentro de archivos HTML, use el plugin ESLint:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ npm install eslint-plugin-html</span></span></div></pre></div>
<p>Luego para verificar el código que aparece dentro de etiquetas <code><script></code>, ejecute:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --plugin html '**/*.html'</span></span></div></pre></div>
<h3 id="user-content-¿hay-algún-gancho-git-pre-commit" class="deep-link"><a href="#¿hay-algún-gancho-git-pre-commit">¿Hay algún gancho git <code>pre-commit</code>?</a></h3>
<p>Funny you should ask!</p>
<div class="highlight sh"><pre class="editor editor-colors"><div class="line"><span class="source shell"><span class="comment line number-sign shell"><span class="punctuation definition comment shell"><span>#</span></span><span>!/bin/sh</span><span> </span></span></span></div><div class="line"><span class="source shell"><span class="comment line number-sign shell"><span class="punctuation definition comment shell"><span>#</span></span><span> Asegura que todos los archivos javascript especificados</span><span> </span></span></span></div><div class="line"><span class="source shell"><span class="comment line number-sign shell"><span class="punctuation definition comment shell"><span>#</span></span><span> para hacer commit pasan los estandares de estilo de código</span><span> </span></span></span></div><div class="line"><span class="source shell"><span>git diff --name-only --cached --relative </span><span class="keyword operator shell"><span>|</span></span><span> grep </span><span class="string quoted single shell"><span class="punctuation definition string begin shell"><span>'</span></span><span>\.jsx\?$</span><span class="punctuation definition string end shell"><span>'</span></span></span><span> </span><span class="keyword operator shell"><span>|</span></span><span> xargs standard</span></span></div><div class="line"><span class="source shell"><span class="meta scope shell"><span class="keyword control shell"><span>if</span></span><span> [ </span><span class="variable other shell"><span class="punctuation definition variable shell"><span>$</span></span><span>?</span></span><span> -ne 0 ]</span><span class="keyword operator list shell"><span>;</span></span><span> </span><span class="keyword control shell"><span>then</span></span><span> </span><span class="support function builtin shell"><span>exit</span></span><span> 1</span><span class="keyword operator list shell"><span>;</span></span><span> </span><span class="keyword control shell"><span>fi</span></span></span></span></div></pre></div>
<h3 id="user-content-¿como-hago-la-salida-output-todo-colorido-y-bonito" class="deep-link"><a href="#¿como-hago-la-salida-output-todo-colorido-y-bonito">¿Como hago la salida (output) todo colorido y <em>bonito</em>?</a></h3>
<p>La salida integrada es simple y directa, pero si te gustan las cosas brillantes, puedes instalar <a href="https://www.npmjs.com/package/snazzy">snazzy</a>:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ npm install snazzy</span></span></div></pre></div>
<p>y ejecutar:</p>
<div class="highlight bash"><pre class="editor editor-colors"><div class="line"><span class="text"><span>$ standard --verbose | snazzy</span></span></div></pre></div>
<p>También esta <a href="https://www.npmjs.com/package/standard-tap">standard-tap</a>,
<a href="https://www.npmjs.com/package/standard-json">standard-json</a>,
<a href="https://www.npmjs.com/package/standard-reporter">standard-reporter</a>, y
<a href="https://www.npmjs.com/package/standard-summary">standard-summary</a>.</p>
<h2 id="user-content-nodejs-api" class="deep-link"><a href="#nodejs-api">Node.js API</a></h2>
<h3 id="user-content-standardlinttexttext-opts-callback" class="deep-link"><a href="#standardlinttexttext-opts-callback"><code>standard.lintText(text, [opts], callback)</code></a></h3>
<p>Hacer Lint al texto fuente previsto para hacer cumplir JavaScript Standard Style.
Un objeto <code>opts</code> puede ser proporcionado:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="storage type js"><span>var</span></span><span> opts </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span>  fix</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant language boolean false js"><span>false</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>   </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> automatically fix problems</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  globals</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>  </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> global variables to declare</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  plugins</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>  </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> eslint plugins</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  envs</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>     </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> eslint environment</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  parser</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span class="punctuation definition string end js"><span>'</span></span></span><span>    </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> js parser (e.g. babel-eslint)</span><span> </span></span></span></div><div class="line"><span class="source js"><span class="meta brace curly js"><span>}</span></span></span></div></pre></div>
<p>El <code>callback</code> será llamado con un objeto de <code>Error</code> y <code>results</code>:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="storage type js"><span>var</span></span><span> results </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span>  results</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span></span></div><div class="line"><span class="source js"><span>    </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span>      filePath</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span>      messages</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span></span></span></div><div class="line"><span class="source js"><span>        </span><span class="meta brace curly js"><span>{</span></span><span> ruleId</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> message</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span> line</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>0</span></span><span class="meta delimiter object comma js"><span>,</span></span><span> column</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>0</span></span><span> </span><span class="meta brace curly js"><span>}</span></span></span></div><div class="line"><span class="source js"><span>      </span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span>      errorCount</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>0</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span>      warningCount</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>0</span></span></span></div><div class="line"><span class="source js"><span>    </span><span class="meta brace curly js"><span>}</span></span></span></div><div class="line"><span class="source js"><span>  </span><span class="meta brace square js"><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span>  errorCount</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>0</span></span><span class="meta delimiter object comma js"><span>,</span></span></span></div><div class="line"><span class="source js"><span>  warningCount</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant numeric decimal js"><span>0</span></span></span></div><div class="line"><span class="source js"><span class="meta brace curly js"><span>}</span></span></span></div></pre></div>
<h3 id="user-content-standardlintfilesfiles-opts-callback" class="deep-link"><a href="#standardlintfilesfiles-opts-callback"><code>standard.lintFiles(files, [opts], callback)</code></a></h3>
<p>Hacer Lint a los archivos que hagan pareo con el patrón globs.
Un objeto <code>opts</code> puede ser proporcionado:</p>
<div class="highlight js"><pre class="editor editor-colors"><div class="line"><span class="source js"><span class="storage type js"><span>var</span></span><span> opts </span><span class="keyword operator assignment js"><span>=</span></span><span> </span><span class="meta brace curly js"><span>{</span></span></span></div><div class="line"><span class="source js"><span>  ignore</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>   </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> file globs to ignore (has sane defaults)</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  cwd</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span class="punctuation definition string end js"><span>'</span></span></span><span class="meta delimiter object comma js"><span>,</span></span><span>      </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> current working directory (default: process.cwd())</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  fix</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="constant language boolean false js"><span>false</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>   </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> automatically fix problems</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  globals</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>  </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> global variables to declare</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  plugins</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>  </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> eslint plugins</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  envs</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="meta brace square js"><span>[</span><span>]</span></span><span class="meta delimiter object comma js"><span>,</span></span><span>     </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> eslint environment</span><span> </span></span></span></div><div class="line"><span class="source js"><span>  parser</span><span class="keyword operator js"><span>:</span></span><span> </span><span class="string quoted single js"><span class="punctuation definition string begin js"><span>'</span></span><span class="punctuation definition string end js"><span>'</span></span></span><span>    </span><span class="comment line double-slash js"><span class="punctuation definition comment js"><span>//</span></span><span> js parser (e.g. babel-eslint)</span><span> </span></span></span></div><div class="line"><span class="source js"><span class="meta brace curly js"><span>}</span></span></span></div></pre></div>
<p>El <code>callback</code> será llamado con un objeto de <code>Error</code> y <code>results</code>: (igual al de arriba).</p>
<h2 id="user-content-contribuciones" class="deep-link"><a href="#contribuciones">Contribuciones</a></h2>
<p>Contribuciones son bienvenidas! Chequea los <a href="https://github.com/feross/standard/issues">issues</a> o <a href="https://github.com/feross/standard/pulls">PRs</a>, o has el tuyo propio si quieres algo que nos ves allí</p>
<p>Unete a nosotros <code>#standard</code> en freenode.</p>
<h3 id="user-content-quiero-contribuir-a-standard-¿que-paquetes-debería-conocer" class="deep-link"><a href="#quiero-contribuir-a-standard-¿que-paquetes-debería-conocer">Quiero contribuir a <code>standard</code>. ¿Que paquetes debería conocer?</a></h3>
<ul>
<li><strong><a href="https://github.com/feross/standard">standard</a></strong> - este repositorio
<ul>
<li><strong><a href="https://github.com/flet/standard-engine">standard-engine</a></strong> - motor arbitrario cli de relgas eslint</li>
<li><strong><a href="https://github.com/feross/eslint-config-standard">eslint-config-standard</a></strong> - reglas eslint para standard</li>
<li><strong><a href="https://github.com/feross/eslint-config-standard-jsx">eslint-config-standard-jsx</a></strong> - reglas eslint para standard (JSX)</li>
<li><strong><a href="https://github.com/xjamundx/eslint-plugin-standard">eslint-plugin-standard</a></strong> - reglas customizadas eslint para standard (no es parte del nucleo eslint)</li>
<li><strong><a href="https://github.com/eslint/eslint">eslint</a></strong> - linter que da poder a standard</li>
</ul>
</li>
<li><strong><a href="https://github.com/feross/snazzy">snazzy</a></strong> - salida colorida o <em>bonita</em> en el terminal para standard</li>
<li><strong><a href="https://github.com/feross/standard-www">standard-www</a></strong> - codigo de <a href="http://standardjs.com">http://standardjs.com</a></li>
<li><strong><a href="https://github.com/Flet/semistandard">semistandard</a></strong> - standard, con punto y coma (sí es necesario)</li>
</ul>
<p>También hay un monton <strong><a href="#plugins-editores-de-textos">plugins editores de textos</a></strong>, una lista de
<strong><a href="https://github.com/feross/standard-packages">paquetes npm que usan <code>standard</code></a></strong>,
y una impresionante lista de
<strong><a href="https://github.com/feross/awesome-standard">paquetes en el ecosistema <code>standard</code></a></strong>.</p>
<h2 id="user-content-licencia" class="deep-link"><a href="#licencia">Licencia</a></h2>
<p><a href="LICENSE">MIT</a>. Copyright (c) <a href="http://feross.org">Feross Aboukhadijeh</a>.</p>
</div>
<script src="standard-www.js"></script>
<!-- Google Analytics -->
<script>
window.ga = window.ga || function () {
(ga.q = ga.q || []).push(arguments)
}
ga.l = +new Date
ga('create', 'UA-3898076-21', 'auto')
ga('send', 'pageview')
</script>
<script async src="//www.google-analytics.com/analytics.js"></script>
</body>
</html>