ntjess / typst-drafting

Some common drafting utilities for the `typst` document typesetter
The Unlicense
52 stars 2 forks source link

Add list of notes #11

Open th1j5 opened 3 months ago

th1j5 commented 3 months ago

I use typst drafting as the typst equivalent of todonotes. I'd like to maybe make a list of the notes which were added? Something like the \listoftodos in Latex todonotes...

This functionality is also present in this typst package: https://typst.app/universe/package/big-todo, but drafting is much nicer to use, due to the margin notes...

If you think this is in scope of the package, I might look for a PR, but I would need to do some research (pretty new to typst).

Thanks for the package!

feuermandel commented 2 months ago

I'd like to support @th1j5. This would be a great feature.

ntjess commented 2 months ago

I think this would be a valuable addition. If you are interested in creating a PR, here is some starter code that may help:

#import "@preview/drafting:0.2.0": set-page-properties, margin-note, margin-note-defaults

#place(set-page-properties())

#lorem(10)
#margin-note[Test]

#lorem(15)
#margin-note(stroke: blue)[Another note]

#context {
  for note in query(<margin-note>) {
    note
  }
}

#line(length: 100%)

#context {
  for note in query(<margin-note>) {
    box(stroke: note.stroke.paint, width: 1em, height: 1em)
    h(0.5em)
    note.body
    linebreak()
  }
}

image

It would be worth thinking about: