Comments (22)
Here is the unpublished version, if someone wants to be a test pilot:
https://github.com/TeroFrondelius/linter-julia
Please feel free to open issues for discussion, feature requests, test piloting etc.
from atom-language-julia.
Definitely doable. We just need to make Lint.jl output the official linter output format.
from atom-language-julia.
Ha, no problem. I was doing some research this morning and was going to sketch out an implementation later today.
from atom-language-julia.
Rockin'. Thanks - I wish I had the skills to contribute beyond testing :)
from atom-language-julia.
I think they're pretty easy to develop. The docs at https://atom.io/docs/v0.192.0/hacking-atom-tools-of-the-trade are very readable.
from atom-language-julia.
current link: https://atom.io/docs/v1.0.0/hacking-atom-tools-of-the-trade
And yeah, I know next to nothing about web tools, but it has been surprisingly easy.
@johnmyleswhite, interested in hacking this up later? Maybe while we are all here we can ask @tonyhffong how we might hook up the linter-server
to get decent performance for all lints after the first.
from atom-language-julia.
Yeah, I'd be up for working on this.
from atom-language-julia.
I'm happy to lend a hand testing whenever you've got a prototype ready.
from atom-language-julia.
Tried it for a while... no luck
I got atom-linter to run a script that was calling out to a lintserver
from Lint.jl. I saw in the terminal running lintserver
that it was indeed printing the lint errors, but it didn't seem like the string containing the error messages was ever successfully given to atom...
from atom-language-julia.
I'll work on this tomorrow morning and see what I can do.
from atom-language-julia.
@johnmyleswhite, any luck with this?
EDIT: sorry hit comment before I was ready..
I was looking at the autocomplete-julia package and like that they are spawn
ing a child Julia process and using stdio to communicate with it as needed. The relevant code is here
We could probably do something very similar to this and have a julia script with a never ending while loop listening on stdin for requests to lint and then just call lintfile("$file_name")
when those requests come in -- reporting results to stdout.
from atom-language-julia.
Sorry, didn't have a chance to write any code yesterday. I'll see if I can dig in a bit tonight.
from atom-language-julia.
No problem. I think that if we get this spawn
thing right we will be able to do some cool stuff (macroexpand
tooltips that you brought up...)
from atom-language-julia.
Started working on this. I think I need to maintain an Atom installation to get this right since Nuclide is a little weird.
from atom-language-julia.
Hmm. Is that a problem? I suspect you will be using Nuclide as your main editor
from atom-language-julia.
We'll find out. I have a personal laptop that I can install Atom 1.0 on, so I can work on things like this while I sort everything out.
from atom-language-julia.
I think we should probably close this ans defer this type of functionality to the Julia client package.
@one-more-minute what do you think about that?
from atom-language-julia.
Linter support should definitely be separate from basic editor support, yeah. If it's going through Lint.jl statically it could be its own package entirely.
from atom-language-julia.
I am very interested about this. Did any of you work on this matter further? If there is a separate package can you point me the way? Also if there is not, any old half working code would be appreciated because I tried to look the examples of other languages, but it seemed so overwhelming.
from atom-language-julia.
As far as I know no one did any work on an Lint.jl Atom plugin, but the vscode-plugin does have Lint.jl support afaik.
from atom-language-julia.
Almost there, I have a some very basic mistake in coffeescript. Any extra eyes would be appreciated. AtomLinter/linter-julia#1
from atom-language-julia.
@TeroFrondelius This is fantastic! Only suggestion would be getting the server to internally launch. 😄
from atom-language-julia.
Related Issues (20)
- `′` breaks variable syntax highlighting
- md"a" syntax breaks highlighting
- Tokenize TODO in comments HOT 3
- Make more specific token for `::` HOT 4
- Weird case of function tokenization when end of line comment includes parentheses HOT 1
- colored documentation syntax as comment HOT 1
- Highlight attributes of a module or constructor HOT 4
- `Markdown.@md_str` breaks syntax highlighting HOT 8
- Incorrect syntax highlighting when splatting a range
- Unicode operators aren't highlighted HOT 1
- Additional keywords HOT 1
- String interpolation with generator is broken HOT 3
- Unicode letters break type name HOT 1
- Command interpolation
- Syntax coloring for doctests
- New `public` keyword not recognized
- Future development after Atom's sunset HOT 1
- Tokenization of commas changed to `source.julia`, which affects Julia Color Themes HOT 8
- Broken REPL syntax highlighting of multi-line inputs
- Highlight prompts in REPL syntax highlighting
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atom-language-julia.