11 ms·
Quarto: A scientific and technical publishing system built on Pandoc
- acenes 5y agoI currently use bookdown and have dabbled with Jupyterbook. Why should I use this instead? I don't see any advantages, esp. for scientific and technical books / websites.
- ncmncm 5y agoSee https://news.ycombinator.com/item?id=30049672 https://news.ycombinator.com/item?id=30049672 So, it is the next generation of that.
- acenes 5y agoSo, why should one use the next generation? Because it is not tied to R or Python? We're all using one or the other so that doesn't sound like a convincing reason to completely change my workflow.
- jjallr 5y agoI think if you are happy with the workflow/output you have there is no reason at all to change. w/r/t to websites and books we have put a lot of investment into features for both (https://quarto.org/docs/websites/ https://quarto.org/docs/websites/, https://quarto.org/docs/books/ https://quarto.org/docs/books/). If you compare books with Bookdown vs. Quarto vs. JupyterBook I think you'll find that each does some things better than the others (so again if you are happy w/ your existing tools no reason to change).
- acenes 5y agoThanks for the response. Is there any plan for Quarto to support live code, e.g. the reader can change the code and update the output? Or a feature that makes it easy to have a comment section for each page? I think these things are either not supported or not trivial to do with Bookdown or JupyterBook.
- csdvrx 5y agoVery interesting! For replicable research, in uni I once built interactive visualizations from a R studio source that contained the data + the code but that resulted in multiple outputs (html embedding the R notebook and markdown files, Microsoft Word, PDF...) Technically, it was quite simple, but it enabled interesting usecases: I could send my homework to my professor in an easily readable format, but if he wanted to dig deeper, he could also check I did everything right, and he could also alter the data to check if it kept working: using the html file, he just had to click to the source notebook at the bottom to start tweaking. It would be wonderful if scientific publishing moved to something like that, where the publication would be a subset (ex: Word output) of a process that everyone could inspect and alter. Of course, as datasets are becoming the most valuable ingredient in a big soup, I fear this will take a while to happen. BTW op: your dynamic examples like https://htmlpreview.github.io/?https://github.com/quarto-dev/quarto-gallery/blob/main/articles/html/html.html https://htmlpreview.github.io/?https://github.com/quarto-dev... are not working in my browser (Edge)
- jjallr 5y agoThanks for the heads-up re: Edge! All of those should be working now.
- marsa 5y ago> It would be wonderful if scientific publishing moved to something like that, where the publication would be a subset (ex: Word output) of a process that everyone could inspect and alter. > Of course, as datasets are becoming the most valuable ingredient in a big soup, I fear this will take a while to happen. even though it would be wonderful, having worked in this industry i don't see it ever moving to such a system of communication (not on any significant level at least). publishers are a middleman too deeply entrenched to simply cut out, and anything resembling a threat to their status will get bought out under the guise of 'look we're innovating here' and then die a slow silent death.
- csdvrx 5y agoYou don't threaten them, you join them by creating a journal like PLoS, fully open access - let's call it "Replicable Science". Require a viral license (like the GPL) for all published content, to ensure derivate work using either the data or the code must also be made available under similar conditions but for both the data and the code, with a clause allowing publication to non-open access journals provided that the data and the code of the preprint is published on a sister journal (let's call it "Replicable Science Reprints") say 1 month after the publication to the non-open access journal. If you manage to reach an impact factor high enough to incentivize would-be author to submit to this journal, it would be quite hard to kill! Also, the citations would increase the IF over time, by sheer virtue of being open access, and encouraging derivative work.
- jtbayly 5y agoDoes anybody know if there is any relationship between this project and Rbookdown?
- jjallr 5y agoYes, it's being created by the same group that created R Markdown / Bookdown. Similar concept but implemented in a cross-language fashion rather than being tied to R.
- civilized 5y agoPromising idea. It's worth noting that, in RStudio + RMarkdown, you can already mix different languages in chunks. But for those who would rather not work in RStudio, maybe this will be appealing.
- jjallr 5y agoHi there, member of Quarto team here. Quarto is actually being created by the same core group that created R Markdown. It's essentially the same idea but implemented in a cross-language fashion. I should also note that it is designed to be highly compatible w/ existing formats (you can render nearly all R Markdown documents as well as Jupyter Notebooks unmodified w/ Quarto).
- jlduan 5y agoThanks for developing this wonderful tool. Just tried it. The HTML output looks great. I use R Markdown extensively. I am wondering if R Markdown is retiring? Should I begin to switch to Quarto? And is there a way to change the default code font to ligatures fonts (for example Fira Code)?
- jjallr 5y agoQuarto is the next generation of R Markdown, so over time it will surpass R Markdown in features/capability (I think in most areas it already has). Note that Quarto will read and render existing Rmd files without modification, so when you decide to switch isn't a terribly big deal. You can use the monofont option to specify an alternate code font.
- civilized 5y agoThis is all great. It's high time we supplemented Jupyter with a plain text language-agnostic format. Jupyter is a nice notebook but falls short of an effective format for shareable, reproducible, collaborative research.
- ivansavz 5y ago
- deleted 5y ago[deleted]
- thangalin 5y agoOf related interest is my Typesetting Markdown series (skip to the later parts to see R and annotations): https://dave.autonoma.ca/blog/2019/05/22/typesetting-markdown-part-1/ https://dave.autonoma.ca/blog/2019/05/22/typesetting-markdow... I've been working on an editor that can interpolate string variables to replace those scripts: https://github.com/DaveJarvis/keenwrite/blob/master/docs/screenshots.md https://github.com/DaveJarvis/keenwrite/blob/master/docs/scr... Many Markdown publishing systems put YAML headers into Markdown documents, which feels like mixing presentation with content. With KeenWrite you can do: keenwrite -i filename.Rmd -o filename.pdf -v variables.yaml Meaning, if you wanted to apply a different set of values, you can supply a different file, without having to modify the R Markdown source. (Of course, you can always write shell scripts to concatenate the YAML header prior to processing.)
- sterlinm 5y agoThis looks amazing. I've already got a number of projects in mind for this. It seems like since this is a standalone executable it should play nicely with different environments as long as those environments have the components needed for that engine. I'm thinking about how this would integrate with multiple different Conda environments.
- chewyshine 5y agoFound this... /* * project-index.ts * * Copyright (C) 2020 by RStudio, PBC * */
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]
- xvilka 5y agoWe have moved our book from mdBook to to the Quarto due to the inability[1][2] of mdBook to produce formats like PDF or ePub. So far it works well, amazing job! [1] https://github.com/rust-lang/mdBook/issues/88 https://github.com/rust-lang/mdBook/issues/88 [2] https://github.com/rust-lang/mdBook/issues/815 https://github.com/rust-lang/mdBook/issues/815
- mynameismon 5y agoI'm surprised no one has mentioned Org mode. Not to demean your efforts, but Org mode already supports a wide range of these capabilities, and more (using tables as data sources, for example).
- yeetaccount4 5y agoI’ve tried to understand Org mode but it seems like a mix of so many different goals and ideas that it’s just a giant spitball of miscellaneous solutions. TODO README typesetting Etc ad nausea The common thread seems to be emacs. Mostly.
- faustlast 5y agohave you read their page? it is really good https://orgmode.org/ https://orgmode.org/.
- newusertoday 5y agotrick is to start using it for whatever usecase you want than later you discover that you can use it for other usecases as well and your previous learning carries over. For eg. use it to write readme and export it to html/pdf/md etc. later if you feel the need of task management system for todo/progress/done well org mode supports that so you don't need to learn altogether new service for tasks. This was my journey as well need to write and export to different formats--> need for task management system --> need for small excel sheet (org mode tables --> need for http request/response aka postman/insomnia --> continuing
- r-zip 5y agoToo bad it's tied to a single editor.
- lumost 5y agoThis looks brilliant. My two biggest pain points with authoring typesetted documents are 1. Inserting tables, and code is unreasonably difficult. Who wants to copy/paste numbers manually while inserting an opaque set of pipes ampersands and other arcane symbols. 2. Editor plugins for latex are pretty lackluster. In markdown I can use my existing text editors plugin infrastructure including premium grammar checking tools.
- rogue7 5y agoI usually use pandas' styled output to show tables in documents: https://pandas.pydata.org/pandas-docs/stable/user_guide/style.html https://pandas.pydata.org/pandas-docs/stable/user_guide/styl... Since it is programatically generated, I don't have to manually fiddle with the numbers when the report has to be refreshed.