GithubHelp home page GithubHelp logo

bcdavasconcelos / scrivq Goto Github PK

View Code? Open in Web Editor NEW
16.0 3.0 2.0 190.35 MB

๐Ÿš€ ScrivQ (Scrivener + Quarto) is a template that adapts the Scrivener writing environment to easily export multiple files, handle bibliographies and cross-references, and build a complex YAML front-matter (with hundreds of built-in parameters) for outputting Quarto Books in PDF, HTML, DOCX.

Rich Text Format 97.68% HTML 1.55% Lua 0.11% TeX 0.50% JavaScript 0.16% CSS 0.01%
pandoc quarto quarto-project scrivener scrivener-template academic-publishing academic-writing templates

scrivq's Introduction

ScrivQ

ScrivQ adapts Scrivener's โฌ‡๏ธ writing environment (i.e. Compile Formats, Section Layouts, Section Types, Paragraph Styles, and Character Styles) to easily export multiple files, handle bibliographies and cross-references, and build a complex YAML front-matter (with hundreds of built-in parameters) for outputting Quarto โฌ‡๏ธ Books (PDF, DOCX, and HTML) that compile right away with zero configuration.

Download the latest version from the releases section ๐Ÿš€. You can take part in the ongoing discussion by joining us at the forum ๐Ÿ’ฌ, and you can show your appreciation by sponsoring this project โค๏ธ.

Caveats

  1. For PDF output, tinytex is also required.
  2. You must install Ruby โฌ‡๏ธ, if you are on Windows.

See also

โŒจ๏ธ @iandol's Scrivomatic.

scrivq's People

Contributors

bcdavasconcelos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

scrivq's Issues

Finish merging `Printout` and `Templates` to create single set

Both contain templates that should be used by the end user to create the user sections.

  • Would some users prefer the ability to set custom IDs instead of having all of the automatic ones?
    • If so, this would be a matter of creating a secondary Compile Format with <$custom:ID> instead of %autoref% in the Section Layouts and Styles. If the user used %autoref% in the body of the text, those can be auto-replaced with <$custom:ID> to create the correct output.
  • Add further instructions and explanations for each Section Type/Section Layout.
    • Short Youtube videos, gifs, or explanations in Scrivener itself? The latter seems quicker & easier.

Files need title in the YAML (Quarto Book Website)

For Book Websites, it is important to have each file with the title in the YAML. Currently, the title is not used in the File + ID Section Type.

Also, remember that we can create a separate file, with many includes, for the PDF generation.

Convert markup for file splitting

To split the files properly, we must:

  • Change Scrivener footnotes to Pandoc Markdown-style inline footnotes

From:

Lorem ipsum dolor sit amet[^fn1], ...

[^fn1]: Lorem...

To:

Lorem ipsum dolor sit amet^[Lorem...], ...
  • Change Scrivener image references to inline images with attributes

From:

![Caption][Ulysses1]

[Ulysses1]: Ulysses1.jpg {#fig-scriv154 .column-page width=486 height=402}

To:

![Caption](Ulysses1.jpg){#fig-scriv154 .column-page width=486 height=402}

Github & Github Pages Integration

Questions:

  • Ruby Script automatically commits the exported files to GitHub or not.
    • Use time tag as commit-msg or not
    • Perhaps three Compile Formats: Dry-run, Export + Debug, and Export + Commit.
  • Outputs built to /export-mmd/docs locally and then committed to GitHub or committed and built by GitHub Actions.
    • Provide a showcase of the Quarto website and Quarto book.
    • The former option is not viable if we use a pre-release version.
  • The script will overwrite existing files but won't delete previously generated files that are no longer part of the project. Should we do something about this (or leave them to be manually erased)?
    • Cleaning the working folder before each export seems rather drastic and something to be avoided.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.