16 ms·
Markdeep
- dd0dd 11y agoI think org-mode can do that too (and much more I guess). http://home.fnal.gov/~neilsen/notebook/orgExamples/org-examples.html#sec-5 http://home.fnal.gov/~neilsen/notebook/orgExamples/org-examp...
- amelius 11y agoHow popular is it? Will this ever catch on?
- paulpauper 11y agothe ability to turn txt into a diagram is intriguing
- joepvd 11y agoAbsolutely fricking cool. Would need to learn some extra text editor tricks, however, to make it a smooth experience...
- a_e_k 11y agoEmacs, at least, already has artist-mode built in. Screen cast showing it off: http://www.cinsk.org/emacs/emacs-artist.html http://www.cinsk.org/emacs/emacs-artist.html
- roel_v 11y agoDrawIt for Vim: http://www.vim.org/scripts/script.php?script_id=40 http://www.vim.org/scripts/script.php?script_id=40 . I think I started using this in the previous millennium, and if not, not much later. It's awesome. Not all (former) coworkers agree with that sentiment though, to be honest.
- joepvd 11y agoThanks for your suggestions, roel_v and a_e_k! Will play around with DrawIt, looks fun!
- roel_v 11y agoTwo other tools that render images from ascii are ditaa (http://ditaa.sourceforge.net/ http://ditaa.sourceforge.net/) and plantuml (http://plantuml.com/ http://plantuml.com/). Those tools, some scripts to render and combine markdown and images, and DrawIt (+ some other vim tools like 'boxes' (not sure if that still has a web page), 'sketch.vim' and 'boxdraw') make for the least painful, versionable documentation system, for me. ('least painful' in the sense that I still need to code way too much to get it all to work, but there isn't anything ready-made and stable enough that I have been able to find the last decade).
- jamessb 11y agoIt's reasonably common for LaTeX documents to use PSTricks or PGF/TikZ or Asymptote to specify diagrams as text, within the main document. However, these use textual descriptions of diagrams, rather than ASCII-art pictures of them. I think before there were GUI tools for editing ladder diagrams [0], there were tools that would read ASCII-art diagrams, and program PLCs with the corresponding logic. However, a quick Google didn't give a source confirming this. [0]: https://en.wikipedia.org/wiki/Ladder_logic https://en.wikipedia.org/wiki/Ladder_logic https://en.wikipedia.org/wiki/PGF/TikZ https://en.wikipedia.org/wiki/PGF/TikZ
- ajarmst 11y agoI don't get it. Why would I do diagrams in ascii when I can use any one of dozens of good programs and export the result via DVI or PDF. I guess it must might be nice if I want to read the document on a text console, but I don't see that use case coming up nearly often enough to justify learning yet another version of markdown and commit to doing diagrams with ascii art.
- nilkn 11y agoI actually like the idea, for simple diagrams at least. No need to keep separate image resources anywhere. No need to even have a separate image processing program. Want to change that diagram? Well, it's right there in the document itself -- just change it. Done. And the diagram is legible both pre- and post-rendering of the document.
- cben 11y agoExactly. There are lots of situations where it's worth trading up some polish for simpler tools and formats. Especially simpler formats. There is lots of prior art extracting diagrams from textual drawing but AFAIK all required global conformance to some accepted "syntax". Markdeep's(?) idea of local beautification while maintaining the global fixed-width layout is brilliant as you're not limited to particular structures and anything unsupported degrades gracefully! (If this idea has no name, let's call it "2D ligatures"?) We could have a dozen different tools based on this idea, each supporting a somewhat different dialect, yet any diagram will be reasonably readable under any of them — which is exactly the quality you want when excavating a 40-year-old README of unknown origin. It's the simplest thing that could possibly work. Except one: using line drawing characters directly in the source (and requiring no tool at all, just view in fixed-width font). Let's try: * . * * 0 3 P ● Eye ╱ ▶ ╱ * * ●───────● +y ╲ 〈) ╲ ╱ Reflection * * 1 ╱│ 2 ╱│ ▲ ╲ ╲ ╲ ▶ * * ●───────● │ │ v0 ╲ v3 ────────●──────── * * │ │4 │ │7 │ ●────╲─────● * * │ ●─────│─● +─────▶ +x ╱ ◀ X ╲ ◜⎺◝◀──────── ○ * * │╱ │╱ ╱ ╱ ○ ╲ ( ╱ ) Refraction ╱ ╲ * * ●───────● ▶ ╱ ╲ ◟⎽◞ ╱ ╲ * * 5 6 +z v1 ●──────────────────● v2 │ ○─────○ * * ▼ * Hmm, not as good but mostly OK (though font dependent), except for circles. Disappointingly I found no matching parts for bigger than 2x2 circle. It's easy (technically, not sure about politically) to add a few more but it's impossible to support smooth circles of arbitrary radiuses. (OTOH, neither does Markdeep.) Perhaps the best of both worlds would be writing unicode (perhaps using some ascii->unicode helper at typing time) and further enhancing it with this kind of tool...
- jakeva 11y agoMight want to make sure you spell your inspiration's name correctly (ie, not Grubber)
- specifictso 11y agoNeat, but offering only minified JS is not in the spirit of open source imho
- kbd 11y agoSo frustrating that both Markdown and this don't support underlines.
- treve 11y agoI don't think this is the right way to look at this. They both transform to the most sensible html given the input. If you want to use an underline for emphasis instead of cursive, this is more of a style concern than anything else, so the appropriate place to change this would be in the stylesheet, which is perfectly possible. If you specifically want it to output the <u> html tag, I agree that this is not as convenient.
- grimman 11y ago> They both transform to the most sensible html given the input. I'm going to have to disagree with you. Long before Markdown came along, the convention was to use asterisks for * bold *, slashes for /italics/ and underscores for _underlined_ text. And that's just for starters. Those three examples perfectly convey the intended effect, quite unlike the Markdown versions where asterisks will somehow imply italics, but only if they're single asterisks? It's a strange thing!
- ape4 11y agoI agree. _this_should_be_underlined_
- 11y ago
- sumitgt 11y agoWhere exactly is the source code?
- detaro 11y agohttp://casual-effects.com/markdeep/markdeep.min.js http://casual-effects.com/markdeep/markdeep.min.js + > The current 0.01 beta release is minified-only to find bugs and get feedback, but a full source version is coming soon after some more code cleanup.
- ape4 11y agoUnminified via http://unminify.com/ http://unminify.com/ http://pastebin.com/Y7Q5H0AL http://pastebin.com/Y7Q5H0AL
- laurentoget 11y agostill looks pretty unreadable to me, but then it is late on a friday.
- falcolas 11y agoFunny enough, browsing without Javascript resulted in the same plain text appearing in both windows. I was nearly ready to comment about how easy that is with a pair of <pre> tags. :) That said, I'm OK with it degrading like that. The text file is perfectly readable, and conveys the information within quite well. I even kind of preferred it. So, yeah. Great job, OP.
- hoorayimhelping 11y agoHow can you tell if someone browses the web with JavaScript disabled? Oh don't worry. They'll let you know. Any chance they get.
- andrewstuart2 11y agoA vegan, a crossfitter, an atheist, a crypto nerd, and a javascript disabler walk into a bar...
- endergen 11y agoSame person?
- nness 11y agoMade me wonder if putting a tiny <img> tag in a <noscript> block would provide some insight by tracking user-agents hitting that file only.
- hayksaakian 11y agoYes that's how facebook's and Google's pixel tracking works
- falcolas 11y agoI'm terribly sorry for providing context for the rest of my comment. My sincerest apologies. EDIT: On a less passive-aggressive note, I'll stop announcing my blocking of JavaScript by default when static content sites stop requiring JavaScript to read them.
- deleted 11y ago[deleted]
- dingdingdang 11y agoCombine with http://asciiflow.com/ http://asciiflow.com/ and ascii heaven comes closer ;)
- joonoro 11y agoDon't forget artist-mode! http://www.cinsk.org/emacs/emacs-artist.html http://www.cinsk.org/emacs/emacs-artist.html
- kylnew 11y agoThis looks pretty sweet! (On a sidenote, I'm trying to figure out whether making the documentation look like daringfireball.net was intentional or not.)
- thristian 11y agoThe author seems very proud of the automatic-rendering JS they've written, and it's kind of cute but personally I'd much rather a batch-conversion tool. On the other hand, that ASCII-art-to-SVG conversion is golden, and I'd absolutely love to have that supported in my API docs and blog-posts.
- adevine 11y agoIt would probably be trivial to pre-process the text with the script if you wanted to - at the end of the day it has to just be outputting DOM elements. I for one love that it doesn't require a preprocessing step, because it means that any text file can easily be rendered without any need to do anything else. Fantastic job OP, I think this is really awesome. Would be perfect if this was integrated with github - I would do all my readmes with this.
- zobzu 11y agoRST could do this - but I like Markdeep's simplified way (no "directives") Now if all editors could come up with a compatible ascii graphic drawing tool that would actually be useable.
- a3n 11y agoI think all editors can read in the results of an external program, which might be a better solution. For example, the par text reformatter. Vim doesn't know a thing about it, but it will feed selected text to it, and replace it with results. So for ascii diagrams, you might have an external program that generates, at least, various kinds of boxes and connectors, then you could edit the labels from the editor. Bonus if the external ascii diagram generator would take labels associated with entities. Maybe that's an additional feature for Markdeep, or maybe it's a specific itch for someone else to scratch.
- ta0967 11y agoST could do this some years ago i rendered .rst urls using a cgi shell script that drove rst2html.py from docutils.
- RodericDay 11y agoI'm still kinda noob at javascript. Can I call this on a string using a function, returning an html string, rather do it for the whole page?
- ChrisLTD 11y agoI know you can't exactly copyright a color scheme, but it might be a good idea to not so closely copy Daring Fireball.
- codemac 11y agoditaa?
- jbclements 11y agoAfter 10 seconds of inspection: no, not a good idea, don't think this solves a nice problem. Speaking as a PL & s-exp guy, I don't really have a problem writing (bullets (item "pick up milk") (item "drop off desk")) ... but at the end of the day, I see that I can convey the same structure in a clearer way using markdown. Markdown is lovely because it's the thinnest possible skin over the structure; you can immediately see what structure the syntax is attaching. (Yes, there's still some parsing nastiness around paragraphs). This thing, though, doesn't have that "brilliant solution to a simple but really important problem" feel to it. I don't see this catching on. Of course, I said the same thing about the internet in the spring of 1993.
- tobinharris 11y agoNice, you could also do something to embed http://yuml.me http://yuml.me diagrams for converting text into diagrams?
- emn13 11y agoThe Flash Of Unstyled Content is strong with this one.
- moderation 11y agoIf you remove the Math section of the demo [1] that invokes 17 HTTP request for MathJax artifacts the FOUC is still there but much quicker. 1. http://casual-effects.com/markdeep/features.md.html http://casual-effects.com/markdeep/features.md.html
- jabbernotty 11y agoI am thinking of using this for my personal website. It has been a while since I have had to think about licenses, and I am having trouble thinking this one through. Markdeep is open source. You may use, extend, and redistribute Markdeep without charge under the terms of the BSD license: ... Markdeep includes markdown.js, so you are also bound by the MIT license (which is BSD-compatible): ... ...and the highlight.js BSD license: If I understand correctly that means I have to serve all three licenses in my HTML?
- TeeWEE 11y agoNice setup, but its very cumbersome to write graphs in ascii, i prefer DOT if i dont care about layout too much, otherwise i use gliffy or something like that. For simple diagrams this is nice. However i think the main reason to use this is not diagrams. However then i think its better to use Markdown since most people know that.
- olegp 11y agoThere's ASCIIFlow for that: http://asciiflow.com/ http://asciiflow.com/
- juliend2 11y agoThe ASCII to graph feature reminds me of https://github.com/knsv/mermaid https://github.com/knsv/mermaid . But I like the more WYSIWYG approach (if I dare say) of Markdeep.
- amai 11y agoWhy do people keep reinventing LaTeX?
- mctub 11y agohttps://github.com/reelsense/markdeep https://github.com/reelsense/markdeep