[beast/ebeast] EBEAST: use eslint 3.16.1 for linting of *.js files and JS snippets in *.html
- From: Tim Janik <timj src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [beast/ebeast] EBEAST: use eslint 3.16.1 for linting of *.js files and JS snippets in *.html
- Date: Tue, 7 Mar 2017 22:47:06 +0000 (UTC)
commit bb92c3f8882cff3c34234657a426b50019e46d6f
Author: Tim Janik <timj gnu org>
Date: Sun Mar 5 21:54:09 2017 +0100
EBEAST: use eslint 3.16.1 for linting of *.js files and JS snippets in *.html
Signed-off-by: Tim Janik <timj gnu org>
ebeast/.eslintrc.js | 28 ++++++++++++++++++++++++++++
ebeast/.gitignore | 4 +++-
ebeast/Makefile.am | 13 ++++++++++++-
ebeast/main.js | 6 +++---
ebeast/package.json.in | 3 ++-
5 files changed, 48 insertions(+), 6 deletions(-)
---
diff --git a/ebeast/.eslintrc.js b/ebeast/.eslintrc.js
new file mode 100644
index 0000000..a79325e
--- /dev/null
+++ b/ebeast/.eslintrc.js
@@ -0,0 +1,28 @@
+module.exports = {
+ "env": {
+ "browser": true,
+ "es6": true,
+ "jquery": true,
+ "node": true
+ },
+ "globals": {
+ "Electron": false,
+ "Mithril": false,
+ "Bse": false,
+ "module": true /* allow mods */
+ },
+ "rules": {
+ "no-unused-vars": [ "warn", { "argsIgnorePattern": "^_.*", "varsIgnorePattern": "^_.*" } ],
+ "no-unreachable": [ "warn" ],
+ "semi": [ "error", "always" ],
+ "no-extra-semi": [ "warn" ],
+ "no-console": [ "off" ],
+ "no-constant-condition": [ "warn" ],
+ "indent": [ "off", 2 ],
+ "linebreak-style": [ "error", "unix" ],
+ "no-mixed-spaces-and-tabs": [ "off" ],
+ "quotes": [ "off", "single" ]
+ },
+ "plugins": [ "html" ],
+ "extends": "eslint:recommended"
+};
diff --git a/ebeast/.gitignore b/ebeast/.gitignore
index 37e3ca1..5d7538e 100644
--- a/ebeast/.gitignore
+++ b/ebeast/.gitignore
@@ -1,3 +1,5 @@
/package.json
/config.log
-/node_modules/
\ No newline at end of file
+/node_modules/
+/xlint-html
+/xlint-js
diff --git a/ebeast/Makefile.am b/ebeast/Makefile.am
index 615f8fd..a2999a6 100644
--- a/ebeast/Makefile.am
+++ b/ebeast/Makefile.am
@@ -22,7 +22,7 @@ clean-local: clean-node_modules
clean-node_modules: ; rm -rf node_modules/ package.json
# == app ==
-app: package.json xlint-html
+app: package.json xlint-html xlint-js
$(Q) $(MAKE) $(AM_MAKEFLAGS) -C v8bse v8bse.node
# == run ==
@@ -48,3 +48,14 @@ xlint-html: $(HTML_LINT_FILES)
$(Q) cat $@.log ; test ! -s $@.log
$(Q) mv $@.log $@
MOSTLYCLEANFILES += xlint-html xlint-html.log
+
+# == JS linting ==
+JS_LINT_FILES = *.js $(HTML_LINT_FILES)
+xlint-js: $(JS_LINT_FILES) package.json
+ $(AM_V_GEN)
+ $(Q) rm -f $@
+ $(Q) for file in $(JS_LINT_FILES) ; do \
+ ./node_modules/.bin/eslint -f unix $$file || exit $$? ; \
+ done
+ $(Q) touch $@
+MOSTLYCLEANFILES += xlint-js
diff --git a/ebeast/main.js b/ebeast/main.js
index 9bbe7e7..458ecd3 100644
--- a/ebeast/main.js
+++ b/ebeast/main.js
@@ -1,11 +1,11 @@
// Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
-const {app, BrowserWindow, ipcMain} = require ('electron');
+const {app, BrowserWindow} = require ('electron');
// create the main ebeast window
var win;
function create_window ()
{
- options = {
+ const options = {
width: 1820, height: 1024, // calling win.maximize() flickers, using a big size not
webPreferences: {
defaultEncoding: 'UTF-8',
@@ -28,7 +28,7 @@ function create_window ()
win.once ('ready-to-show', () => { win.show(); });
win.loadURL ('file:///' + __dirname + '/index.html');
// win.webContents.openDevTools();
- win.on ('closed', () => { win = null });
+ win.on ('closed', () => { win = null; });
}
app.on ('ready', create_window); // create window once everything is loaded
diff --git a/ebeast/package.json.in b/ebeast/package.json.in
index d4e2f2c..6fbb88b 100644
--- a/ebeast/package.json.in
+++ b/ebeast/package.json.in
@@ -4,7 +4,8 @@
"description": "Beast - Music Synthesizer and Composer",
"main": "main.js",
"dependencies": { "electron": "^1.4.15" },
- "devDependencies": { "node-gyp": "^3.5.0" },
+ "devDependencies": { "node-gyp": "^3.5.0",
+ "eslint": "^3.16.1", "eslint-plugin-html": "^2.0.1" },
"license": "LGPL-3.0",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]