diff --git a/README.mkdn b/README.mkdn index 226d556..d8cb8b4 100644 --- a/README.mkdn +++ b/README.mkdn @@ -146,6 +146,9 @@ Support for new languages npm -g install csslint * RPM Specfile support has been added by running rpmlint if it's available. * gettext() .po file support has been provided by msgfmt if it's available. + * [MetaJS](https://github.com/dogada/metajs) support has been added by running `metajs` if it's available: + + npm -g install metajs Other bug fixes --------------- diff --git a/flymake.el b/flymake.el index 82db1e4..596d30e 100644 --- a/flymake.el +++ b/flymake.el @@ -365,6 +365,7 @@ are the string substitutions (see `format')." ("\\.p[ml]\\'" flymake-perl-init) ("\\.php[345]?\\'" flymake-php-init) ("\\.js\\'" flymake-javascript-init) + ("\\.mjs\\'" flymake-metajs-init) ("\\.css\\'" flymake-css-init) ("\\.h\\'" flymake-master-make-header-init flymake-master-cleanup) ("\\.java\\'" flymake-simple-make-java-init flymake-simple-java-cleanup) @@ -1061,6 +1062,8 @@ Convert it to flymake internal format." ("\\(?:Parse\\|Fatal\\) error: \\(.*\\) in \\(.*\\) on line \\([0-9]+\\)" 2 3 nil 1) ;; JSHint/CSSLint ("\\(.+\\): line \\([0-9]+\\), col \\([0-9]+\\), \\(.+\\)" 1 2 3 4) + ;; MetaJS + ("\\(.+\\):\\([0-9]+\\):\\([0-9]+\\) \\(.+\\)" 1 2 3 4) ;; LaTeX warnings (fileless) ("\\(LaTeX \\(Warning\\|Error\\): .*\\) on input line \\([0-9]+\\)" 20 3 nil 1) ;; gcc after 4.5 (includes column number) (" *\\(\\([a-zA-Z]:\\)?[^:(\t\n]+\\)\:\\([0-9]+\\)\:\\([0-9]+\\)\:[ \t\n]*\\(.+\\)" @@ -2120,6 +2123,15 @@ wish to have supplied to Perl -I." (file-name-directory buffer-file-name)))) (list "jshint" (list local-file)))) +;;;; metajs-specific init-cleanup routines +(defun flymake-metajs-init () + (let* ((temp-file (flymake-init-create-temp-buffer-copy + 'flymake-create-temp-copy)) + (local-file (file-relative-name + temp-file + (file-name-directory buffer-file-name)))) + (list "metajs" (list "--lint" local-file)))) + ;;;; css-specific init-cleanup routines (defun flymake-css-init () (let* ((temp-file (flymake-init-create-temp-buffer-copy