New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SublimeLinter 4 happened #205

Closed
NekR opened this Issue Mar 3, 2018 · 50 comments

Comments

@NekR
Copy link

NekR commented Mar 3, 2018

So SublimeLinter 4 happened and it isn't clear anymore how to do proper installation of SublimeLinter + SublimeLinter-eslint.

@braver

This comment has been minimized.

Copy link
Member

braver commented Mar 3, 2018

Why not?

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 3, 2018

Well, when it was auto-updated it copied old settings to some file and everything stopped working. Restoring the settings, reinstalling eslint plugin, reinstalling both SublimeLinter and eslint plugin -- nothing worked. I just don't know what happened.

@braver

This comment has been minimized.

Copy link
Member

braver commented Mar 3, 2018

This should tell you more about what happened: https://github.com/SublimeLinter/SublimeLinter/blob/master/messages/4.0.0.txt

The docs have a troubleshooting guide: http://www.sublimelinter.com/en/stable/

If that doesn't help, share your debug output, steps to reproduce etc.

@bmunoz89

This comment has been minimized.

Copy link

bmunoz89 commented Mar 3, 2018

the same problem here

@bmunoz89

This comment has been minimized.

Copy link

bmunoz89 commented Mar 3, 2018

The problem was detecting the syntax... weird because before works with the same syntax(javascript next). I only need to add this on my SublimeLinter settings:

{
    "syntax_map": {
        "html (django)": "html",
        "html (rails)": "html",
        "html 5": "html",
        "javascript (babel)": "javascript",
        "javascriptnext": "javascript",
        "magicpython": "python",
        "php": "html",
        "python django": "python",
        "pythonimproved": "python"
    }
}
@HerveSeger

This comment has been minimized.

Copy link

HerveSeger commented Mar 3, 2018

ESLint did not work for me neither after the upgrade of SublimeLint (Windows 10/ST 3 build 3143).
I just got it working after re-installing SublimeLinter-eslint and with the following user settings for SublimeLinter:

{
	"debug": false,
	"delay": 0.25,
	"gutter_theme": "Packages/SublimeLinter/gutter-themes/Blueberry/cross/Blueberry - cross.gutter-theme",
	"highlights.time_to_idle": 5,
	"highlights.demote_while_editing": "none",
	"highlights.demote_scope": "",
	"lint_mode": "background",
	"linters": {
		"eslint": {
			"@disable": false,
			"args": [],
			"excludes": []
		},
		"stylelint": {
			"@disable": false,
			"args": [],
			"excludes": []
		}
	},
	"no_column_highlights_line": false,
	"paths": {
		"linux": [],
		"osx": [],
		"windows": []
	},
	"shell_timeout": 10,
	"show_hover_line_report": true,
	"show_hover_region_report": true,
	"show_marks_in_minimap": true,
	"styles": [
		{
			"mark_style": "outline",
			"priority": 1,
			"scope": "region.yellowish markup.changed.sublime_linter markup.warning.sublime_linter",
			"icon": "dot",
			"types": [
				"warning"
			]
		},
		{
			"mark_style": "outline",
			"priority": 1,
			"scope": "region.redish markup.deleted.sublime_linter markup.error.sublime_linter",
			"icon": "dot",
			"types": [
				"error"
			]
		}
	],
	"syntax_map": {
		"coffeescript (gulpfile)": "coffeescript",
		"html (django)": "html",
		"html (rails)": "html",
		"html 5": "html",
		"javascript (babel)": "javascript",
		"javascriptnext": "javascript",
		"javascript (eslint)": "javascript",
		"javascript (gruntfile)": "javascript",
		"javascript (gulpfile)": "javascript",
		"javascript (postcss)": "javascript",
		"javascript (puglint)": "javascript",
		"javascript (stylelint)": "javascript",
		"javascript (webpack)": "javascript",
		"json (babel)": "json",
		"json (bower)": "json",
		"json (composer)": "json",
		"json (eslint)": "json",
		"json (npm)": "json",
		"json (postcss)": "json",
		"json (puglint)": "json",
		"json (settings)": "json",
		"json (stylelint)": "json",
		"json (sublime)": "json",
		"json (tern js)": "json",
		"magicpython": "python",
		"php": "html",
		"python django": "python",
		"pythonimproved": "python",
		"xml (config)": "xml",
		"xml (svg)": "xml",
		"yaml (circleci)": "yaml",
		"yaml (docker)": "yaml",
		"yaml (eslint)": "yaml",
		"yaml (lock)": "yaml",
		"yaml (procfile)": "yaml",
		"yaml (stylelint)": "yaml",
		"yaml (yarn)": "yaml"
	}
}
@NekR

This comment has been minimized.

Copy link

NekR commented Mar 3, 2018

@braver Thanks for info, I checked everything there and wasn't able to make it work. Here is the in debug mode: https://gist.github.com/NekR/23bfc5681800e7fd3e40b2a229a2eaf1

It looks like eslint cannot find node executable, but it's in my PATH since everything else is working and was working before SublimeLinter update. Any ideas? Maybe some glitch or SublimeLinter cache issue?

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 3, 2018

Also, just in case -- I use nvm, but its paths are exported in .bash_profile. I also tried adding this manually:

"paths": {
  "osx": [
    "/Users/<truncated>/.nvm/versions/node/v8.9.0/bin"
  ]
}

... but it didn't help either.

@braver

This comment has been minimized.

Copy link
Member

braver commented Mar 3, 2018

@HerveSeger just FYI, there is no need to copy all default settings to your user settings. That will just make it harder to deal with updates later on. If you're not going to change a setting you don't need to have it in your user settings.

@NekR what can happen is that a plugin runs before the complete environment is loaded. @kaste, you're better at debugging path and setup stuff like this. Any ideas?

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 3, 2018

Okay setting paths here is not relevant. Bc we already found an eslint executable. Are you sure nvm was supported without hackery on SL3?

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 3, 2018

@kaste I didn't do anything special when I installed everything with v3, as far as I remember. But anyway, I have node (the system one version, installed prior nvm) on /usr/local/bin/node and following in .bash_profile to export nvm binaries:

export NVM_DIR="/Users/<truncated>/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

Also my eslint is installed locally in project, not globally, if that matters.

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 3, 2018

Honestly, that confuses me a lot. Bc I would expect you run something along nvm exec 8.9 eslint, otherwise you symlink a specific node to /usr/blaha/bin

@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 3, 2018

I have the same errors as @NekR, on MacOSX with node installed via homebrew. I've tried setting the path manually as well even though homebrew takes care of this normally. I wouldn't have known SL4 had been released if it hadn't caused this kerfuffle

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 3, 2018

You also use NVM?

@CodeOtter

This comment has been minimized.

Copy link

CodeOtter commented Mar 3, 2018

I'm getting burned by this as well with Node 8.7.0 managed by NVM on OSX. Here's the Sublime debug-enabled output:

SublimeLinter: #3 SublimeLinter.sublime-package:782: 'eslint' is linting 'index.js'
SublimeLinter: #4 SublimeLinter.sublime-package:782: 'eslint_d' is linting 'indexjs'
SublimeLinter: #3 SublimeLinter.sublime-package:1178: eslint: pricing.js ['/Users/Programmer/project/node_modules/.bin/eslint', '--format', 'compact', '--stdin', '--stdin-filename', '/Users/Programmer/project/index.js']
SublimeLinter: #3 SublimeLinter.sublime-package:1181: eslint: cwd: /Users/Programmer/project
SublimeLinter: #3 SublimeLinter.sublime-package:809: eslint output:
    env: node: No such file or directory
SublimeLinter: #3 SublimeLinter.sublime-package:850: eslint: No match for line: 'env: node: No such file or directory'

But if I do this in terminal, I get no problems:

LappyMcLaperton:project Programmer$ eslint_d index.js 

No output, which means eslint_d works just fine. Something borked hard on this SL4 update :(

And here's my SublimeLinter user settings:

// SublimeLinter Settings - User
{
  "debug": true,
  "delay": 0.25,
  "gutter_theme": "Packages/SublimeLinter/gutter-themes/Default/Default.gutter-theme",
  "lint_mode": "background",
  "linters": {
      "eslint": {
          "disabled": true,
          "args": [],
          "excludes": []
      },
      "eslint_d": {
          "disabled": false,
          "args": [],
          "excludes": []
      },
      "json": {
          "disabled": false,
          "args": [],
          "excludes": [],
          "strict": true
      }
  },
  "no_column_highlights_line": false,
  "paths": {
      "linux": [],
      "osx": [
        "/Users/Programmer/.nvm/versions/node/v8.7.0/bin"
      ],
      "windows": []
  },
  "shell_timeout": 10,
  "show_marks_in_minimap": true,
  "syntax_map": {
      "html (django)": "html",
      "html (rails)": "html",
      "html 5": "html",
      "javascript (babel)": "javascript",
      "php": "html",
      "python django": "python"
  },
}
@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 3, 2018

Nobody actually responded to my nvm exec stuff actually.

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 3, 2018

Because your comment kinda makes no sense. nvm doesn't symlink anything, it has binaries in specific folders and exports them to the env/PATH.

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 3, 2018

But I'll run the command for you anyway.

nvm exec 8.9 ./node_modules/.bin/eslint
Running node v8.9.0 (npm v3.10.10)
eslint [options] file.js [file.js] [dir]
which node
/Users/NekR/.nvm/versions/node/v8.9.0/bin/node

Also it's worth pointing out that the same setup working just fine right before SublimeLinter updated to v4.

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 3, 2018

I never said nvm symlinks for you. Now how did you run eslint in SL3 the old project from last year using node 4.1?

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 4, 2018

Sorry, I'm losing it. I don't get what you're asking or meaning 🙁

I never used SublimeLinter until couple of weeks ago.

@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 4, 2018

@kaste, no as I said I use homebrew to manage node

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 4, 2018

Okay, using nvm is an advanced way to install node, and I kinda hoped for more input from you guys. Also I just assumed you have multiple node versions installed/running actually bc that's the purpose of nvm.

  • Now, if you actually only have one node. You can use something like nvm alias default ... to make it the default version which is then 'on' by default.

  • You could just symlink '/Users/NekR/.nvm/versions/node/v8.9.0/bin/node' -> '/usr/local/bin/node'

  • Within SublimeLinter, you could modify the runtime environment via a linter setting 'env': {'PATH': '/Users/NekR/.nvm/versions/node/v8.9.0/bin/node:$PATH'}. This can be done globally or per project

  • Within SublimeLinter, you could set the executable 'executable': ['nvm', 'exec', '8.9', 'path/to/eslint']. You could probably use ${folder}/.node_modules/bin/eslint, $folder will be your project root.

(@NekR I think you're using also a pretty old nvm version.)

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 4, 2018

@kaste first of all, I believe it isn't nvm issue at since @laurencedorman doesn't have nvm at all and has the same issue. I don't know why you focused on it that much, I mentioned it "just in case". But anyway:

Now, if you actually only have one node. You can use something like nvm alias default ... to make it the default version which is then 'on' by default.

I have more than one version and I have default one already. It's on by default all the time.

nvm ls
       v0.10.47
       v0.12.16
         v4.7.2
        v5.12.0
         v6.7.0
         v6.9.2
        v6.11.1
         v7.2.1
         v8.0.0
         v8.1.1
         v8.1.2
         v8.1.4
         v8.6.0
->       v8.9.0
         system
default -> 8 (-> v8.9.0)
node -> stable (-> v8.9.0) (default)
stable -> 8.9 (-> v8.9.0) (default)
iojs -> N/A (default)

You could just symlink '/Users/NekR/.nvm/versions/node/v8.9.0/bin/node' -> '/usr/local/bin/node'

I would never do that. First of all, /usr/local/bin/node already exists, it's the system node from the previous list. Second, it's just a bad idea -- I have nvm for that job, to manage the paths.

/usr/local/bin/node -v
v6.2.2

Within SublimeLinter, you could modify the runtime environment via a linter setting 'env': {'PATH': '/Users/NekR/.nvm/versions/node/v8.9.0/bin/node:$PATH'}. This can be done globally or per project

SublimeLinter: ERROR:

 Invalid settings in 'Packages/User/SublimeLinter.sublime-settings':
Additional properties are not allowed ('env' was unexpected)

Also, I already have that path in my PATH, as you would imagine nvm handles it:

echo $PATH
/Users/NekR/.nvm/versions/node/v8.9.0/bin:/usr/local/opt/mysql/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/NekR/...<truncated>

Within SublimeLinter, you could set the executable 'executable': ['nvm', 'exec', '8.9', 'path/to/eslint']. You could probably use ${folder}/.node_modules/bin/eslint, $folder will be your project root.

SublimeLinter: ERROR:

 Invalid settings in 'Packages/User/SublimeLinter.sublime-settings':
Additional properties are not allowed ('executable' was unexpected)

But anyway, node is in the path as with Homebrew for @laurencedorman. What would recommend for him to run node from SublimeLinter?

(@NekR I think you're using also a pretty old nvm version.)

How could you guess so?

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 4, 2018

The settings are linter settings so they go under 'eslint': {...}

@kaste kaste removed the awaiting response label Mar 4, 2018

@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 4, 2018

@kaste yes, as @NekR says I'm not using NVM. Node is installed via Homebrew.

Having done more reading I can see that this is an issue with SL4. I can see it's not reading my $PATH correctly and overriding this in the settings doesn't seem to do anything so I've downgraded to SL3 with a manual install and everything is working again, probably the best solution for now whilst bugs are ironed out.

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 4, 2018

@kaste Actually, I specified the settings properly now and this is what I'm getting:

SublimeLinter: #747 eslint index.js ERROR:

 could not launch ['nvm', 'exec', 'default', '/Users/NekR/Work/.../.node_modules/bin/eslint', '--format', 'compact', '--stdin', '--stdin-filename', '/Users/NekR/Work/.../index.js']
Reason: [Errno 2] No such file or directory: 'nvm'
PATH: /usr/bin:/bin:/usr/sbin:/sbin

Adding

"env": {
  "PATH": "/Users/NekR/.nvm/versions/node/v8.9.0/bin:$PATH"
},

Doesn't help:

 could not launch ['nvm', 'exec', 'default', '/Users/NekR/Work/.../.node_modules/bin/eslint', '--format', 'compact', '--stdin', '--stdin-filename', '/Users/NekR/Work/.../index.js']
Reason: [Errno 2] No such file or directory: 'nvm'
PATH: /Users/NekR/.nvm/versions/node/v8.9.0/bin:/usr/bin:/bin:/usr/sbin:/sbin

So, without additional env PATH modifications, SublimeLinter's PATH is /usr/bin:/bin:/usr/sbin:/sbin only. Isn't that the issue that SL doesn't use the full PATH used by the system?

Having this settings makes it work:

// SublimeLinter Settings - User
{
    "debug": true,
    "linters": {
        "eslint": {
            "disable": false,
            "args": [],
            "excludes": [],
            "env": {
              "PATH": "/Users/NekR/.nvm/versions/node/v8.9.0/bin:$PATH"
            }
        }
    }
}

But that sounds rather like a hack, than a real solution. Why SL doesn't use the full PATH?

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 4, 2018

In the Sublime console could you exec import os; os.environ['PATH']

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 4, 2018

>>> import os; os.environ['PATH']
'/usr/bin:/bin:/usr/sbin:/sbin'
@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 4, 2018

Any chance you use zsh as well @NekR?

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 4, 2018

Haha, even symlinking /usr/local wouldn't have worked then.

In the console again, but at Sublime startup (or within some seconds) is there something like environment variables loaded using: /bin/zsh -l (I would rather expect a timeout here, but I don't know the exact wording of such an error. So expect you don't see exactly this but the opposite.)

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 4, 2018

@laurencedorman no. I'm actually on regular macOS bash with regular terminal, etc. Pretty standard environment I would say. That's actually weird that Sublime itself isn't reading environment's PATH correctly.

@NekR

This comment has been minimized.

Copy link

NekR commented Mar 4, 2018

@kaste This is what I have on startup right now: https://gist.github.com/NekR/4e385248a45fa222607537aa3d717a49

Actually now even TypeScript cannot find node and my Seti UI theme just stopped working after reload. Everything breaks one by one 😱😄

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 4, 2018

That's probably way too short. You see the first PATH SL sees here.

@HHogg

This comment has been minimized.

Copy link

HHogg commented Mar 4, 2018

This also happened for me. SL3 worked out of the box for my setup (osx, nvm, zsh).

Adding the path into all of the linters env property worked for me. It's a nice work around for now so thank you, but it would be nice if it worked like it did before :)

@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 4, 2018

Okay so I went back and installed SL4 and followed the workaround as specified by @NekR, and it's all working so thanks for that.

@kaste, when I read the output in the console with SL3, I see the following important information:

SublimeLinter: user shell: /bin/zsh 
SublimeLinter: computed PATH using /bin/zsh:
/Users/laurencedorman/.composer/vendor/bin
/usr/local/opt/node@8/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

Nothing of the sort is shown in the console for SL4 - surely this indicates that something has changed in the way that SL calculates the PATH?

@braver

This comment has been minimized.

Copy link
Member

braver commented Mar 4, 2018

If you enable debug, SL4 also prints that eventually.

@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 4, 2018

Nope, I was talking about SL4 with debug enabled

@braver

This comment has been minimized.

Copy link
Member

braver commented Mar 5, 2018

@laurencedorman I was too:

SublimeLinter: #1 util.py:103: PATH:
    /usr/local/bin
    /usr/bin
    /bin
    /usr/sbin
    /sbin

@NekR SL4 is a lot faster than SL3 and it probably runs before Sublime Text fully loaded your environment. This is a known shortcoming in Sublime Text, there is currently not API that let's us wait for the environment variables. It should fix itself after a while. You can also open Sublime Text from the console, the environment will be available immediately then. Or you don't use $PATH and just tell SL where the executable is. At least, to me, this looks to be the problem here.

@rla SublimeLinter 4 and the impending breakage has been announced at least twice. If SL3 was working for you, then that's great. How to opt out of the upgrade has also been messaged to all users.

Looking through the issues of SL it seems like lots of changes have been done to work around issues with linters of other languages (and their crappy package managers), none of which applies to eslint.

That's not actually true. Now, I understand you're just ranting and letting off steam because it broke your Monday. Monday's are bad enough as it is, so I get that (although you could have prevented all of that). I encourage you to try SL4 again later, when you're ready for it. I assure you we did a little better than introducing some work arounds.

@braver braver closed this Mar 5, 2018

@laurencedorman

This comment has been minimized.

Copy link

laurencedorman commented Mar 5, 2018

@braver yep, I don't have that, no matter how long I wait, and with debug enabled. Using the workaround that @NekR provided so not a problem though.

Also @rla don't forget to take a deep breath and remember that "your tools" are provided free thanks to other people giving up their spare time. If you use them at work why not get your company to chip in financially?

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 5, 2018

@braver Don't hijack a thread you gave to me.

We had a change here so that the PATH gets not printed that often (bc it was too noisy). So the above log @braver showed is not that important. E.g. if the PATH eventually auto-repaires we currently do not log the new PATH.

Now, @NekR is the poor guy who even on its #747's lint task got a completely broken path. He showed that above:

>>> import os; os.environ['PATH']
'/usr/bin:/bin:/usr/sbin:/sbin'

Obviously with such a PATH you can't do anything serious. It is one thing that you get at startup a shitty PATH (where we basically have a race), or if it never repairs to something sane.

@ everyone If you git blame here, you will get my name. 😄

The correct way to avoid the race at startup is to launch Sublime from the Terminal/shell (bc it then inherits the environment). Note also that there is a ticket on SublimeText core SublimeTextIssues/Core#1877 which you should 'like' (LOL) or however that is named on GitHub, but then it cascades to a ticket against nvm which points to npm.

@kaste kaste reopened this Mar 5, 2018

@braver

This comment has been minimized.

Copy link
Member

braver commented Mar 5, 2018

Don't hijack a thread you gave to me.

Sorry mate. I just didn't see any actionable content here anymore. I'll just leave you guys to it then.

FYI all, the docs now cover this situation: https://github.com/SublimeLinter/SublimeLinter/blob/master/docs/troubleshooting.rst#on-macos

@HHogg

This comment has been minimized.

Copy link

HHogg commented Mar 5, 2018

Thanks @kaste, opening sublime from the terminal is a fix I'm happy with 👍

@piaoyidage

This comment has been minimized.

Copy link

piaoyidage commented Mar 6, 2018

On MacOSX , this may fix this problem

{
	"linters": {
        "eslint": {
            "disable": false,
            "args": [],
            "excludes": [],
            "env": {
              "PATH": "/usr/local/bin"
            }
        }
    }
}

@LeZuse

This comment has been minimized.

Copy link

LeZuse commented Mar 8, 2018

Just throwing this in here in case somebody finds it useful: https://github.com/int3h/SublimeFixMacPath

@siemiatj

This comment has been minimized.

Copy link

siemiatj commented Mar 8, 2018

Starting from the terminal as @braver suggested fixed it for me.

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 8, 2018

Hi 👋,

I would like to implement a workaround here. For that, I must tell a good PATH from a bad. So, I know @NekR had his hopeless '/usr/bin:/bin:/usr/sbin:/sbin'. I've seen this in other logs as well. Maybe even a simple '/local/' not in PATH => BAD would be enough.

I ask you to either try to reproduce SublimeTextIssues/Core#1877 or set the executable in the eslint settings to "executable": ["imadethisup", ],. Don't forget to restart bc it is a startup race!

Please post bad PATHs.

@LiamKlyneker

This comment has been minimized.

Copy link

LiamKlyneker commented Mar 13, 2018

@piaoyidage thanks!

@kaste kaste referenced this issue Mar 19, 2018

Closed

Linter Error #232

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Mar 23, 2018

We have a PR ready to solve this problem. Test it and tell us if it is working.

▶️ SublimeLinter/SublimeLinter#1266 ◀️

@kaste

This comment has been minimized.

Copy link
Contributor

kaste commented Apr 6, 2018

Next release of SL will wait for a good env on osx before beginning its work.

@kaste kaste closed this Apr 6, 2018

@adrianmcli

This comment has been minimized.

Copy link

adrianmcli commented May 3, 2018

Wading through all the comments above was kind of hard, so let me try to summarize the wisdom above.

Steps

  1. Type dirname $(which node) into your terminal to get something like this:

    /Users/liadrian/n/bin
    
  2. Go to Preferences > Package Settings > SublimeLinter > Settings and paste the following:

    {
        "debug": true,
        "linters": {
            "eslint": {
                "disable": false,
                "args": [],
                "excludes": [],
                "env": {
                    "PATH": "/Users/adrianmcli/n/bin"
                }
            }
        }
    }
  3. Change "PATH": "/Users/adrianmcli/n/bin/" to what you got from Step 1 above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment