Lint styles into Pug files











up vote
0
down vote

favorite












I want to lint CSS into Pug style. tag raw content (CSS) and style attribute content (CSS).



Looks like Stylelint is a right tool to do this.



Stylelint can lint CSS strings and code blocks in html files, working as expected.



But if I try to do the same with pug, I got Unknown word CssSyntaxError error.



I created a repo for testing and add tests output as comments to NPM scripts:



https://github.com/Grawl/stylelint-pug-test/commit/f4749090ab89be5da5e762a69948e072343accdf



Stylelint lints html using "processor" to determine CSS in HTML tags and attributes. I found deprecated stylelint-processor-html with link to stylelint-processor-arbitrary-tags module. But it works without this processor for me (look into test repo above). Looks like HTML processor is built-in.



I cannot find Pug processor for Stylelint. Trying to find one on NPM (12 results), on Yarn registry (15 results) and on GitHub (14 repositories).



Maybe I miss something? Should I write stylelint-processor-pug or dig into stylelint-processor-arbitrary-tags RegExp's?










share|improve this question


























    up vote
    0
    down vote

    favorite












    I want to lint CSS into Pug style. tag raw content (CSS) and style attribute content (CSS).



    Looks like Stylelint is a right tool to do this.



    Stylelint can lint CSS strings and code blocks in html files, working as expected.



    But if I try to do the same with pug, I got Unknown word CssSyntaxError error.



    I created a repo for testing and add tests output as comments to NPM scripts:



    https://github.com/Grawl/stylelint-pug-test/commit/f4749090ab89be5da5e762a69948e072343accdf



    Stylelint lints html using "processor" to determine CSS in HTML tags and attributes. I found deprecated stylelint-processor-html with link to stylelint-processor-arbitrary-tags module. But it works without this processor for me (look into test repo above). Looks like HTML processor is built-in.



    I cannot find Pug processor for Stylelint. Trying to find one on NPM (12 results), on Yarn registry (15 results) and on GitHub (14 repositories).



    Maybe I miss something? Should I write stylelint-processor-pug or dig into stylelint-processor-arbitrary-tags RegExp's?










    share|improve this question
























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I want to lint CSS into Pug style. tag raw content (CSS) and style attribute content (CSS).



      Looks like Stylelint is a right tool to do this.



      Stylelint can lint CSS strings and code blocks in html files, working as expected.



      But if I try to do the same with pug, I got Unknown word CssSyntaxError error.



      I created a repo for testing and add tests output as comments to NPM scripts:



      https://github.com/Grawl/stylelint-pug-test/commit/f4749090ab89be5da5e762a69948e072343accdf



      Stylelint lints html using "processor" to determine CSS in HTML tags and attributes. I found deprecated stylelint-processor-html with link to stylelint-processor-arbitrary-tags module. But it works without this processor for me (look into test repo above). Looks like HTML processor is built-in.



      I cannot find Pug processor for Stylelint. Trying to find one on NPM (12 results), on Yarn registry (15 results) and on GitHub (14 repositories).



      Maybe I miss something? Should I write stylelint-processor-pug or dig into stylelint-processor-arbitrary-tags RegExp's?










      share|improve this question













      I want to lint CSS into Pug style. tag raw content (CSS) and style attribute content (CSS).



      Looks like Stylelint is a right tool to do this.



      Stylelint can lint CSS strings and code blocks in html files, working as expected.



      But if I try to do the same with pug, I got Unknown word CssSyntaxError error.



      I created a repo for testing and add tests output as comments to NPM scripts:



      https://github.com/Grawl/stylelint-pug-test/commit/f4749090ab89be5da5e762a69948e072343accdf



      Stylelint lints html using "processor" to determine CSS in HTML tags and attributes. I found deprecated stylelint-processor-html with link to stylelint-processor-arbitrary-tags module. But it works without this processor for me (look into test repo above). Looks like HTML processor is built-in.



      I cannot find Pug processor for Stylelint. Trying to find one on NPM (12 results), on Yarn registry (15 results) and on GitHub (14 repositories).



      Maybe I miss something? Should I write stylelint-processor-pug or dig into stylelint-processor-arbitrary-tags RegExp's?







      pug stylelint






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 11 at 4:37









      Даниил Пронин

      734723




      734723
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          1
          down vote














          Looks like Stylelint is a right tool to do this.




          Yes, it is. It supports both the linting and fixing of CSS files and <style> blocks with HTML files out-of-the-box. It can also be extended to support style. blocks and style="" attributes within pug templates.




          Should I write stylelint-processor-pug?




          You can write a stylelint-processor-pug and this will allow you to lint, but not fix, your styles within your pug templates. However, the recommended approach is to write a PostCSS syntax, e.g. postcss-pug.



          You can then use all PostCSS-based tools, including stylelint, to transform and analyses the styles within your pug templates. I suggest you look at both postcss-html and postcss-markdown for inspiration as these solve similar problems for their respective syntaxes.



          Once you have written your custom syntax you'll need to use it in a separate stylelint task, like so:



          {
          "scripts": {
          "lint-styles": "stylelint '**/*.{css,html}'",
          "lint-pug-styles": "stylelint '**/*.pug' --custom-syntax postcss-pug"
          }
          }





          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














             

            draft saved


            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53245886%2flint-styles-into-pug-files%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            1
            down vote














            Looks like Stylelint is a right tool to do this.




            Yes, it is. It supports both the linting and fixing of CSS files and <style> blocks with HTML files out-of-the-box. It can also be extended to support style. blocks and style="" attributes within pug templates.




            Should I write stylelint-processor-pug?




            You can write a stylelint-processor-pug and this will allow you to lint, but not fix, your styles within your pug templates. However, the recommended approach is to write a PostCSS syntax, e.g. postcss-pug.



            You can then use all PostCSS-based tools, including stylelint, to transform and analyses the styles within your pug templates. I suggest you look at both postcss-html and postcss-markdown for inspiration as these solve similar problems for their respective syntaxes.



            Once you have written your custom syntax you'll need to use it in a separate stylelint task, like so:



            {
            "scripts": {
            "lint-styles": "stylelint '**/*.{css,html}'",
            "lint-pug-styles": "stylelint '**/*.pug' --custom-syntax postcss-pug"
            }
            }





            share|improve this answer



























              up vote
              1
              down vote














              Looks like Stylelint is a right tool to do this.




              Yes, it is. It supports both the linting and fixing of CSS files and <style> blocks with HTML files out-of-the-box. It can also be extended to support style. blocks and style="" attributes within pug templates.




              Should I write stylelint-processor-pug?




              You can write a stylelint-processor-pug and this will allow you to lint, but not fix, your styles within your pug templates. However, the recommended approach is to write a PostCSS syntax, e.g. postcss-pug.



              You can then use all PostCSS-based tools, including stylelint, to transform and analyses the styles within your pug templates. I suggest you look at both postcss-html and postcss-markdown for inspiration as these solve similar problems for their respective syntaxes.



              Once you have written your custom syntax you'll need to use it in a separate stylelint task, like so:



              {
              "scripts": {
              "lint-styles": "stylelint '**/*.{css,html}'",
              "lint-pug-styles": "stylelint '**/*.pug' --custom-syntax postcss-pug"
              }
              }





              share|improve this answer

























                up vote
                1
                down vote










                up vote
                1
                down vote










                Looks like Stylelint is a right tool to do this.




                Yes, it is. It supports both the linting and fixing of CSS files and <style> blocks with HTML files out-of-the-box. It can also be extended to support style. blocks and style="" attributes within pug templates.




                Should I write stylelint-processor-pug?




                You can write a stylelint-processor-pug and this will allow you to lint, but not fix, your styles within your pug templates. However, the recommended approach is to write a PostCSS syntax, e.g. postcss-pug.



                You can then use all PostCSS-based tools, including stylelint, to transform and analyses the styles within your pug templates. I suggest you look at both postcss-html and postcss-markdown for inspiration as these solve similar problems for their respective syntaxes.



                Once you have written your custom syntax you'll need to use it in a separate stylelint task, like so:



                {
                "scripts": {
                "lint-styles": "stylelint '**/*.{css,html}'",
                "lint-pug-styles": "stylelint '**/*.pug' --custom-syntax postcss-pug"
                }
                }





                share|improve this answer















                Looks like Stylelint is a right tool to do this.




                Yes, it is. It supports both the linting and fixing of CSS files and <style> blocks with HTML files out-of-the-box. It can also be extended to support style. blocks and style="" attributes within pug templates.




                Should I write stylelint-processor-pug?




                You can write a stylelint-processor-pug and this will allow you to lint, but not fix, your styles within your pug templates. However, the recommended approach is to write a PostCSS syntax, e.g. postcss-pug.



                You can then use all PostCSS-based tools, including stylelint, to transform and analyses the styles within your pug templates. I suggest you look at both postcss-html and postcss-markdown for inspiration as these solve similar problems for their respective syntaxes.



                Once you have written your custom syntax you'll need to use it in a separate stylelint task, like so:



                {
                "scripts": {
                "lint-styles": "stylelint '**/*.{css,html}'",
                "lint-pug-styles": "stylelint '**/*.pug' --custom-syntax postcss-pug"
                }
                }






                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 14 at 12:34

























                answered Nov 14 at 11:31









                jeddy3

                69137




                69137






























                     

                    draft saved


                    draft discarded



















































                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53245886%2flint-styles-into-pug-files%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Full-time equivalent

                    さくらももこ

                    13 indicted, 8 arrested in Calif. drug cartel investigation