Giter Club home page Giter Club logo

nota's People

Contributors

willcrichton avatar

Stargazers

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

Watchers

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

nota's Issues

Documentation and License

Hey, This is a really amazing project!

I was going through the paper and the examples, and I feel that providing a documentation for the components along with examples can be really helpful for someone new to this. I checked through the source files, the readme and other repos and branches, and couldn't find any documentation.

In case you would be fine with it, I'd like to help in documenting the components and their examples.

Also If this is a framework which you would be making available for others to use, can you add an open-source license to this?

Thanks :)

Tracking issue: Nota installation and build pipeline

  • nota package includes nota-editor frontend which bundles a bunch of things incl. all KaTeX fonts. Better way to reduce package size?
  • need to simplify installation process, way too many pitfalls when installing node, npm, and global binaries from @nota-lang/nota
  • SSR should run until all initial mobx reactions have executed so @Ref and @TableOfContents don't flicker on page load.
  • Typescript should get moved into esbuild-utils (a la estrella) so it generates bindings without a separate command, and also works in watch mode
  • SSR should pass noSandbox when running inside of a container

White circle covers part of footnote tooltip

https://willcrichton.net/nota/#def-sec-funcalls

  1. Scroll so that "For instance, consider slicing a call to an arbitrary function f with various kinds of inputs:" is near the top of the browser content area.
  2. Click the '2' at the end of that sentence to open the footnote as a tooltip.

Result: A white circle punches out part of the first line of the tooltip. At my browser window width, it punches out part of the word "the":

image

This happens in Chrome Dev, Firefox Beta, and Safari (all tested on macOS)

If I right-click the circle and select "Inspect Element", it is identified as "div.arrow".

Tracking issue: Nota syntax

  • Bug: can't use delimiters around commands, e.g. (@code{..}) or @${|#foo|}.
  • Allow verbatim text to be indented

What is the point of this compared to HTML ?

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).

Some typos

"The principle question" should be "The principal question"

"as oppposed to a static image" should be "As opposed to a static image"

"To denote a conflict,we reuse" is missing space after comma

" π1​ and π2​ do not conflict" has an extra space before it

"Javascript" should be "JavaScript"

External links to sections do not work in Safari

If I open a new Safari tab and paste https://willcrichton.net/nota/#def-sec-places, the paper does not scroll to the section. It works in Firefox Beta and Chrome Dev. Clicking a link within the paper does work, even in Safari. (All tested on macOS)

Tracking issue: Nota editor

Navigation:

  • Minimap of section headers (a la Overleaf)

Viewing:

  • Verbatim text should be monospace
  • Need to trim trailing whitespace or otherwise highlight whitespace on empty lines
  • Leading whitespace in text blocks should be shown as monospace font and not serif, since otherwise it's hard to see the level of indentation

Editing:

  • Indentation of Javascript within Nota pct-commands is not correct
  • Labels should be autosuggested for @Ref
  • When writing |{ should autocomplete }| and not }
  • Add ability to delete an entire command
  • Add snippets for common things like @a[href="..."]{...}

Errors:

  • Runtime errors don't use source maps
  • Syntax errors should be shown in editor, not as standalone text

Pipeline:

  • editor needs to cleanup temp directory containing build files on exit (see commented out code in server.ts)

Nota does not scale well to width of 1024

Stumbled upon Nota and immediately noticed an issue (that, unfortunately, many websites have). I'll attach a screenshot that shows a part of what https://willcrichton.net/nota/ looks like for me.

As for my setup: When coding (among other things), I prefer to view documentation in my browser on the left side screen, which has a resolution of 1024x1280.

Besides not beeing able to view the whole text without scrolling horizontally, in this part the text left is cut off - so couldn't scroll left to see it even if I wanted.

20240614_150336

Unable to compile nota documents containing code blocks

I'm unable to compile any nota document containing highlighted code. (It works fine in the nota edit mode, but nota build fails.

Here's my nota document:

%%%
import {rust} from "@codemirror/lang-rust"
%%%

@Title: Test

```rust
fn f() {
        println!("hello");
}
```

Here's my package.json:

{
        "dependencies" : {
                "@codemirror/lang-rust" : "^6.0.0"
        }
}

Error when running nota build index.nota:

[9:58:41 PM] info: Starting build...
[9:58:42 PM] info: Waiting for browser (may take ~15s the first build)...
[9:58:42 PM] info: Rendering page: index -> dist/index.html
[9:58:42 PM] info: (/index) JSHandle@error
[9:58:42 PM] info: Note: for better stack traces, try building with -g
[9:58:42 PM] error: (/index)Error: Error: Unrecognized extension value in extension set ([object Object]). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.
    at s (http://localhost:8000//index.mjs:301:19292)
    at s (http://localhost:8000//index.mjs:301:18871)
    at s (http://localhost:8000//index.mjs:301:19470)
    at s (http://localhost:8000//index.mjs:301:18871)
    at s (http://localhost:8000//index.mjs:301:19470)
    at s (http://localhost:8000//index.mjs:301:18871)
    at Oj (http://localhost:8000//index.mjs:301:19485)
    at Zf.resolve (http://localhost:8000//index.mjs:301:18003)
    at Ze.create (http://localhost:8000//index.mjs:301:27063)
    at http://localhost:8000//index.mjs:306:52607
[9:58:44 PM] info: Cleaning up unused files...
[9:58:44 PM] info: Built in 2.20s.

(Anyway loving nota, very cool)

Images and Videos

Hi, I saw the post on HN and this seems like a great fit for my use-case, which is writing white papers and technical experimental reports. However I didn't see a single example of adding an image or a video to a document, and I wondered whether that was possible within Nota's syntax or only via some custom JSX\HTML code.

Thanks and good luck :)

Tracking issue: Bikeshed emporium

  • should probably adopt camelCase since that's the Javascripty thing to do
  • Listing -> Code? pretty outdated terminology
  • @Definition and @Ref, should maybe @Definition -> @Def?

Tracking issue: Nota components

  • Footnotes aren't working?
  • Inference rules are too verbose
  • Need some kind of namespacing or component hierarchy / organization.
  • Need to establish conventions on JSX.Element vs. React.ReactNode vs. React.FC vs. etc for when elements take React stuff as input.
  • Inspecting references within a reference's tooltip causes layout issues

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.