Skip to content
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

What is the point of this compared to HTML ? #15

Open
X-Ryl669 opened this issue May 12, 2022 · 4 comments
Open

What is the point of this compared to HTML ? #15

X-Ryl669 opened this issue May 12, 2022 · 4 comments

Comments

@X-Ryl669
Copy link

What is the point of Nota compared to plain, standard, HTML ? Even more when it's completely replicating the HTML anchors and structure ?

I don't know if the goal is to be a bit higher level than markdown (than can be edited and read perfectly out of the browser) and like, but I find it too close to HTML, so that it's not possible to read it out of the browser (and even worse: without JS).

The good point I see is being able to specify variable, a bit like HTML's <cite> tag and perform simple computations (which aren't computed without JS).

@ekzhang
Copy link

ekzhang commented May 12, 2022

Not the author, but I think new document typesetting languages offer a lot of flexibility to existing systems, while also giving you composability. For example you can define components in Nota, which you can't do in just plain HTML. The %(let item is helpful for defining repeated segments of text, and the syntax is generally much more amenable to prose typesetting.

If you don't have JavaScript, then you need a replacement language to specify interactive behaviors, right? And I'm not sure if there's any platform as ubiquitous or widely supported or performant as the web for that.

@willcrichton
Copy link
Collaborator

@ekzhang is correct, but just to add: Nota generates plain HTML. It uses HTML anchors and structure in the standard way. Nota does not replace HTML, but rather augment HTML. But HTML has a very limited set of components. Only with Javascript can you do things like toggle between natural language and math.

@remram44
Copy link

Can it generate something other than HTML though? For example LaTeX? Or directly PDFs?

Otherwise the value-add compared to HTML or HTML-JSX seems low...

@willcrichton
Copy link
Collaborator

To be clear, "Nota" consists of three things:

  1. A syntax for writing React Javascript programs, i.e. a JSX alternative.
  2. A set of React components for structuring a document.
  3. A code editor that specifically supports Nota syntax and components.

Each of these provides a different kind of value. The syntax makes it easier to specify structured, interactive documents without the syntactic noise of HTML or JSX. The components enable authors to describe certain structures in their document (e.g. a definition and a reference to that definition), which in turn enable readers to get a better document-reading interface (e.g. clicking on a reference and seeing a tooltip containing the definition). And the editor makes it easier for authors to create these documents.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants