-
Notifications
You must be signed in to change notification settings - Fork 56
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
[WIP] The big update (finally) #86
Conversation
Really should've committed this as I went along but it was all too messy and none of it worked until very recently. This is pretty much a chuck-everything-out-the-window-and-rewrite-it job. Various bits have been kept around but a lot has been redone from scratch. * Swap showdown out for markdown-it (which is nicer to use and better-maintained than marked) * Use various modules like ejs to get rid of lots of stuff done in-house * Kill off pygments and use highlight.js. This changes the languages available for highlighting, but makes everything waaaaay faster, easier to work with, and doesn't require the messy pygments child process stuff. It also changes the available colour schemes, which isn't great, sorry :( * Some messy stuff that I still want to clean up for grabbing colour schemes straight from the highlight.js styles and feeding them into LESS * Oh yeah, switch from sass to less for styles because native node = yay This has been done in pretty much exactly the wrong style: lots of code, a lot of which *isn't* self-explanatory, and not many comments. Before I get this into master I'll make sure it's up-to-scratch with comments.
I'm very happy that you didn't let docker "die", it's pretty much my favourite doc generation tool for node. |
Any update on this? Also, any chance of renaming the project with the advent of docker (containers)? The command line tool is tricky now for docker users :P |
Yeahh sorry, other work stuff has been keeping me busy. Poor show from me :( I'll try and get this rounded off as much as possible and hopefully push a beta-tagged release to npm over the weekend. And yeah the container docker has become sufficiently popular now that renaming is looking important. I'll probably do that as part of this too so it doesn't get too confusing with things moving around. But obviously I need to figure out how to do that without breaking what's already there. I have some ideas on that front. |
Also fix the .map(path.basename) thing. Closes #89
... although there's still room for improvement here
Sounds very good, I also hope to get a release soon. |
@jbt Grrrrrrrrreat work! Any updates? |
Sorry, I'm being terrible here. January was a super-busy month and I haven't been able to give this the time it deserves. I'll try and spend a bit more time on this in the next couple of days |
Righty then. I just published v1.0.0-alpha.1 under the Most noticeable breaking change is complete ditching of Pygments and therefore all its colour schemes, so you now need to use a colour scheme from highlight.js, which you can find over here. Let me know of any quirks you find or anything else that needs tweaking prior to actually releasing this properly. Meanwhile I'll get figuring out a tactic for renaming this to a something else and how to make that work nicely. |
@jbt On behalf of the entire community, THAANKSSS 👍 How about extending an existing project since this has a greater feature set? Any specific thing you are looking for while naming? |
Just a note, looks like you might be missing a > docker
module.js:341
throw err;
^
Error: Cannot find module 'debounce'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (/<root>/node_modules/docker/src/docker.js:47:16)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17) It works if you install |
Oh good spot, not sure how I managed that! I'll get a 1.0.0-alpha.2 out with that fixed up shortly |
Great work, I could get the new version working and got a great documentation. Read more under http://alinex.github.io/2016/03/01/docker.html I will have a deeper look the next weeks. And hope to include mermaid or plantuml. |
Right, once and for all I am getting this rounded off. v1.0.0-alpha.4 is on npm as I'll remove the alpha and publish as In the meantime I'll get down to writing the entry in History.md for this update, which will be quite large. |
So this is the big update I've been alluding to in #75 and various other places for months now. Sorry everyone for letting stuff rot so badly. Truth is I just haven't had the time to address this properly. But now I've finally straightened everything I've been tinkering on recently and this is where things're at.
Really should've committed this as I went along but it was all too messy and none of it worked until very recently.
This is pretty much a chuck-everything-out-the-window-and-rewrite-it job. Various bits have been kept around but a lot has been redone from scratch.
Notable Changes
This has been done in pretty much exactly the wrong style: lots of code, a lot of which isn't self-explanatory, and not many comments. Before I get this into master I'll make sure it's up-to-scratch with comments.
This update includes a few breaking changes and as such I'm tempted to make this a 1.0 release when it's ready. And once I'm done with the TODOs below it may include a few more/
Issues this addresses
err
class #85 "err" class in js syntax not supported by pygments (highlight.js does way better)Remaining TODOs
These are things I'd really like to incorporate into this PR before publishing it as a big update to npm
.html
added to them. This should be much nicer with markdown-it thanks to its pluggabilityLook into Investigate viability of fs.watch in order to drop watchr #41 if possible (dropping watcher for node core fs.watch)the lack of recursive support on non-osx/non-windows makes this too hard for the scope of thisdocker
package on npm a thin wrapper which includes the necessary requires and bin scripts.