0 votos
308 visualizações

Gostaria que o número da nota de rodapé na parte inferior da página aparecesse na margem, para que, se houver várias notas, seja mais fácil identificar onde elas começam e terminam, e qual número corresponde a qual. As notas de rodapé são cada uma um parágrafo separado.

Isso parece diretamente análogo à opção de “número de versículo suspenso” para poesia.

Eu redefini o marcador do chamador (por outros motivos) para ser z_f_caller_bottom
Este é um começo:
\sethook{start}{z_f_caller_bottom}{\kern -13pt}
mas é difícil fazer a próxima parte da nota de rodapé (a referência \fr) se posicionar automaticamente na margem inicial. E quando a numeração das notas de rodapé passa para dois dígitos, ele move esse número de referência muito além na linha

Também tentei experimentar com o trecho aqui), mas ainda não consegui fazer funcionar.

Existe alguma outra maneira de fazer isso?

Tradução automática de English
PTXprint por (1,9k pontos) | 308 visualizações

2 Respostas

0 votos

Mudar a indentação da primeira linha do estilo da nota de rodapé funciona para você? Você deve ser capaz de torná-la negativa para que ela apareça na margem.

Tradução automática de English
por (9,9k pontos)

Bem, essa é uma maneira construtivamente mais fácil e intuitiva de fazer exatamente a mesma coisa que eu consegui com um sethook e kerning negativo…

Mas isso não resolve meu problema, que é que quando a numeração das notas de rodapé passa de um dígito para dois, ela bagunça o espaçamento (ou seja, onde a nota principal de rodapé cai em relação à margem).

Tradução automática de English
0 votos

Você está na verdade bem perto com seu sethook, mas o que você provavelmente precisa fazer não é apenas kern, mas colocá-lo em uma caixa (box) e então aplicar \llap a ela, mais ou menos assim (não testado):

\sethook{start}{z_f_caller_bottom}{\setbox0\hbox\bgroup}
\sethook{end}{z_f_caller_bottom}{\egroup\llap{\box0\kern3pt}}

\llap empurra seu conteúdo para a esquerda, de modo que nenhuma largura é ocupada (ele tem um amigo \rlap se alguém precisar fazer as coisas se sobreporem para a direita), então o que estou tentando fazer é criar uma caixa que contenha o chamador, adicionando 3pt de espaço a ela (sinta-se à vontade para escolher outro número) e então fazer tudo isso pendurar à esquerda do parágrafo. Espero que funcione!

Nota: \box0 é seguro de usar porque (tendo verificado no arquivo .tex) é isso que está sendo usado para obter o chamador. (usar \box0 temporariamente no meio da definição de box0 não vai sobrescrever outras caixas).

Nota 2: O espaço normal entre a nota e o chamador é \kern\NoteCallerSpace
Nota 3: llap deve lhe dar uma caixa de largura zero. Se você tiver uma largura não-zero, então o resultado será centralizado em uma caixa de largura \NoteCallerWidth e seguido por NoteCallerSpace. Isso pode ou não ser o que você quer!

Tradução automática de English
por (1,1k pontos)

Obrigado. Isso funcionou muito bem. Eu tinha suposto que \llap poderia ser útil, mas não conseguia descobrir como ler o conteúdo do chamador. Eu estava tentando { }, o que obviamente não funciona, e tinha esquecido sobre \bgroup e \egroup.

Para tentar entender melhor:

  • box0 é o nome de uma variável, e \setbox0 define seu valor igual ao conteúdo do chamador?
  • E (acho que você estava dizendo), você escolheu aquela variável específica porque é a que já estava sendo usada para o chamador – então você sabia que não interferiria com nada mais.
  • Como você está impedindo que o chamador da nota de rodapé seja processado da maneira normal? É porque ele está dentro de um \bgroup enquanto o TeX se move do início de z_f_caller_bottom até o fim?
Tradução automática de English

Ponto 1a: (Internamente) todos os “fragmentos que vão para uma página, mas estão sendo manipulados” no TeX são \box 0....\box 65535. (ou \box0 ...., em condições normais o espaço apenas ajuda os humanos a ler, mas em algumas condições pode realmente causar um erro).

Os números ficam confusos, então podemos usar \newbox\something para substituir o número por um rótulo (\something) se quisermos reservá-lo permanentemente. \box 0 até \box9 são reservados como caixas temporárias sem nome. Outras caixas também são reservadas para funções especiais.

Um simples \box 0 irá exibir o conteúdo da caixa e esvaziar a definição. \copy 0 exibirá a caixa e manterá a definição. Para definir o conteúdo, a sintaxe é \setbox[número/rótulo][alguma caixa], onde [alguma caixa] é \hbox{contents} \vbox{contents} ou um \box ou \copy

Ponto 2: Fiz um palpite de que a box0 seria segura como caixa temporária de uso geral e, em seguida, tive um momento de incerteza e verifiquei.

Pontos 3 e 1b: Como você está usando z_f_caller_bottom para o estilo do chamador de notas, o chamador no texto e o chamador (ou chamado) na área de notas são tratados de maneira diferente.

Vamos assumir que o chamado relevante para uma nota específica é ¤. O que normalmente acontece neste caso é que o código define \box0 como (efetivamente) \hbox{\+z_f_caller_bottom ¤\+z_f_caller_bottom*} (embora não geralmente gere exatamente esse código). Em seguida, ele processa essa caixa como faria para qualquer chamado:

  • ele mede a largura dessa caixa e, se for diferente de zero, mas mais estreita que \NoteCallerWidth, adiciona preenchimento para que tenha esse tamanho (para que as coisas fiquem mais alinhadas).
  • Se o resultado disso tiver largura diferente de zero, então ele adiciona o \NoteCallerSpace

O código que lhe dei é interpretado como se os estilos de caractere estivessem sendo aplicados dentro da caixa, então, efetivamente, termina como:

\setbox0{\+z_f_caller_bottom
  \setbox0\bgroup 
  ¤ 
  \egroup\llap{box0 \kern 3pt}
\+z_f_caller_bottom*}

Exceto que (a) se você digitasse isso, quase certamente quebraria, dado os catcodes, espaços e outras coisas perigosas e confusas, e (b) os hooks são realmente processados no meio do código de início e fim para z_f_caller

Tradução automática de English

Perguntas relacionadas

+1 voto
1 resposta 190 visualizações
Meu problema: Às vezes, no texto principal, o chamador de nota de rodapé criado automaticamente em ordem alfabética é ... imprimir o novo formato do chamador de nota de rodapé?
Y Mdu Niê 124 perguntada Jan 14
0 votos
2 respostas 187 visualizações
Olá a todos, Estou trabalhando em um projeto que anteriormente marcava todas as chamadas de notas de rodapé ... , então posso estar apenas perdendo algo. Obrigado, Aaron
PecanMango 112 perguntada Nov 6, 2024
0 votos
3 respostas 273 visualizações
Percebi que minha palavra-chave, que está em NEGRITO, está conectada imediatamente ao texto da nota de rodapé, que ... funcionar bem, até agora, pelo menos é muito utilizável.
joop 110 perguntada Set 9, 2022
0 votos
7 respostas 343 visualizações
Um usuário adicionou uma nota de rodapé ao final de um título principal (mas vejo o mesmo comportamento se a nota ... PDF do Paratext. Alguém sabe por que isso está acontecendo?
Phil_Leckrone 9,9k perguntada Ago 5, 2021
0 votos
1 resposta 42 visualizações
Olá! No PTXPrint, gostaria de usar a opção 'Números de Versos de Poesia Suspensos' (Hanging Poetry Verse ... confundir nossos leitores em alguns casos. Muito obrigado! Phil
anon913937 124 perguntada Nov 18, 2025
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
Live in harmony with one another. Do not be proud, but be willing to associate with people of low position. Do not be conceited.
Romans 12:16
3,049 perguntas
6,007 respostas
5,673 comentários
2,029 usuários