<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 23 May 2019, at 11:15, Stefan Daschek <<a href="mailto:stefan@daschek.net" class="">stefan@daschek.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">
  

    <meta http-equiv="content-type" content="text/html; charset=UTF-8" class="">
  
  <div text="#000000" bgcolor="#FFFFFF" class="">
    The Ruby bundle currently supports reformatting a file with RuboCop
    (“Reformat Document”), and checking the document’s syntax using
    `ruby -wc.<br class="">
    <br class="">
    So far there is no support for automatically checking (or maybe even
    reformatting) a file everytime it is saved. <br class="">
    <br class="">
    For RuboCop, there are (at least) four stand-alone RuboCop bundles
    providing additional features:<br class="">
    <br class="">
     * <a class="moz-txt-link-freetext" href="https://github.com/fazibear/Rubocop.tmbundle">https://github.com/fazibear/Rubocop.tmbundle</a><br class="">
     * <a class="moz-txt-link-freetext" href="https://github.com/mrdougal/textmate2-rubocop">https://github.com/mrdougal/textmate2-rubocop</a><br class="">
     * <a class="moz-txt-link-freetext" href="https://github.com/goyox86/rubocop-tmbundle">https://github.com/goyox86/rubocop-tmbundle</a><br class="">
     * <a class="moz-txt-link-freetext" href="https://github.com/noniq/RuboCop.tmbundle">https://github.com/noniq/RuboCop.tmbundle</a> (Disclaimer: This
    bundle was written by me).<br class="">
    <br class="">
    Recently various alternatives to RuboCop emerged, especially:<br class="">
    <br class="">
     * <a class="moz-txt-link-freetext" href="https://github.com/testdouble/standard">https://github.com/testdouble/standard</a> (uses RuboCop internally,
    “No configuration“)<br class="">
     * <a class="moz-txt-link-freetext" href="https://github.com/samphippen/rubyfmt">https://github.com/samphippen/rubyfmt</a> (autoformatting only,
    optimized for speed)<br class="">
    <br class="">
    Both tools are still pre-1.0, but actively developed.<br class="">
    <br class="">
    I’d like to add support for both standardrb and rubyfmt to TextMate.
    However, I’m not yet sure about the following questions:<br class="">
    <br class="">
     * Should the Ruby bundle be extended to support these? Or should
    one or more stand-alone bundles be created?<br class="">
     * What would be the best way to tell TextMate which (if any)
    linting / formatting tool it should use for a given ruby file or
    project?<br class=""></div></div></blockquote><br class=""></div><div>What’s the goal here? Are <a class="moz-txt-link-freetext" href="https://github.com/testdouble/standard">standard</a> or <a class="moz-txt-link-freetext" href="https://github.com/samphippen/rubyfmt">rubyfmt</a> better than RoboCop? Because it’s pretty straightforward to make an existing command executed on save.</div><div><br class=""></div><div>Assuming we want to add support for these tools I would say they should live in the Ruby bundle. But at the same time if you want to support both it gets slightly more complicated.</div><div><br class=""></div><div>Usually when a TextMate bundle executes a command it’s expected to be available in the PATH or it can also check for a specific environment variable, like TM_RUBY.</div><div><br class=""></div><div>Since these new tools seem to not be ready for day to day use, I recommend they be turned off by default. This can be configured via another environment variable that can be placed inside .tm_properties to enable.</div><br class=""><div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 14px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">-- <br class="">/Jacob Carlborg</div>

</div>
<br class=""></body></html>