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

Inline footnotes #372

Open
alerque opened this issue Oct 5, 2016 · 11 comments
Open

Inline footnotes #372

alerque opened this issue Oct 5, 2016 · 11 comments
Assignees
Labels
enhancement Software improvement or feature request

Comments

@alerque
Copy link
Member

alerque commented Oct 5, 2016

The entire insertions system seems to currently assume a block level insertion layout where each incoming item is in a separate vbox. I'm going to need to a feature to typeset footnotes inline with previous footnotes.

@alerque alerque added the enhancement Software improvement or feature request label Oct 5, 2016
simoncozens added a commit that referenced this issue Oct 24, 2016
@simoncozens
Copy link
Member

I have something vaguely started on this, but I have realised that it's poking at the wrong insertion box. Instead of manipulating the insertion box for the page, it should manipulate the first insertion box on the page.

@jtauber
Copy link

jtauber commented Apr 14, 2020

Any progress on this?

I'm doing a variant of the footnote package for critical apparatus but I want the insertions to be inline.

I can probably fund work on this.

@alerque
Copy link
Member Author

alerque commented Apr 14, 2020

@jtauber I have a couple projects that do this. I forget how I implemented it but I'll dig it up for you.

@alerque alerque self-assigned this Apr 14, 2020
@simoncozens
Copy link
Member

That would be helpful - I am finishing off a major project and wouldn't be able to spend much time on this until June or so.

@alerque
Copy link
Member Author

alerque commented Apr 14, 2020

Hmm, neither of the two projects I was thinking of are actually doing quite what you want.

I have two kinds of "inline" footnotes working.

  1. Actually inline to the text. This is an alternative to putting footnotes in footnotes at all and basically just substitutes the footnote marker for a superscript with the actual footnote content. I've found this easier for some proofreading situations, and the same document can later be set with footnotes below. This looks something like this:

    image

  2. Keep the footnotes together in a block, but rather than putting the block in a footnote frame put it inline to the actual document. I'm using this for example with catechisms where excessive amounts of footnotes are better kept grouped together under each question rather than flooding the page with a footnote frame. This looks something like this:

    image

What this issue was opened for and I think you probably want is more like the latter of those examples where a number of footnotes are typeset run together in a single paragraph (rather than with line breaks between them) but are typeset in an insertion frame at the bottom of the page that takes away from the content frame.

This will require quite a bit more development than what I have because there is more math and node queue shenanigans to deal with, but I think it can be done. I'll try to help make it happen if that's what you are after.

@jtauber
Copy link

jtauber commented Apr 14, 2020

Here is an example of what I'm trying to achieve:

Screen Shot 2020-04-15 at 12 30 06 AM

and this is what I'm currently able to achieve:

Screen Shot 2020-04-15 at 12 30 20 AM

(Line references are missing but that's an unrelated issue)

@jtauber
Copy link

jtauber commented Apr 14, 2020

My package, copied from the footnotes package has:

  local material = SILE.call("vbox", {}, function ()
    SILE.call("appcrit:font", {}, function ()
      SILE.call("noindent")
      SILE.process(content)
    end)
  end)

and I was hoping it would be as simple as not calling vbox but alas that's not the case.

@alerque
Copy link
Member Author

alerque commented Apr 14, 2020

Yes, the function that calculates the height of the footnote frame relies on having multiple discrete points to fall back on if things don't fit. That in turn provides feedback to the page break algorithm. If you take away the wrappers from each footnote it can't decide whether that footnote still fits on the page when it encounters a new footnote & marker. I'll have to rig up a different way of recalculating the size of insertions.

Are you able to point me to / grant me access to the data and source you are using for the actual project? I can certainly rig up some dummy stuff to play with but it's way more fun to work on real data.

@jtauber
Copy link

jtauber commented Apr 14, 2020

I'll push to a repo and grant you access (probably tomorrow). Thanks!

@ousia
Copy link
Contributor

ousia commented Sep 8, 2020

Any news for line numbering in main text and line footnotes, as required for critical editions?

Many thanks for your help.

@alerque
Copy link
Member Author

alerque commented Sep 10, 2020

@ousia I think I know what you're talking about and I also think I worked up a sample for @jtauber that implemented this, but perhaps you can post an example of what you mean (in another issue preferably since this issue isn't really related) and if it's a match I'll work up an example that isn't in James' private repo).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Software improvement or feature request
Projects
None yet
Development

No branches or pull requests

4 participants