Trabajo con Contexto. Aquí en StackExchange encontré un código para que LateX coloque una línea entre el texto y el margen/párrafo de margen. Esta línea es visible en la imagen de abajo.
Después de eso, cambié a ConteXt. En ConteXt realmente, después de horas de búsqueda, no tengo idea de cómo hacer esto. Espero que alguien pueda ayudarme. El proyecto en el que estoy trabajando tiene el siguiente código hasta el momento:
\setuppapersize[A5]
\setuplayout[backspace=15mm, width=90mm, rightmargin=35mm]
\showframe[rightmargin]
\setuppagenumbering[alternative=doublesided, location={footer,inright, align=right}]
\setupinmargin[both][style=\bfx\setupinterlinespace,align=right]
\mainlanguage[la]
\language[la]
\setuphyphenation[method=traditional]
\setuptolerance[horizontal,strict] %zorgt voor minder overfull boxes
\setupitemize[packed]
\setuplinenumbering[step=5, location=inner, align=outer]
\setupcolors[state=start]
\setupindenting[small, yes]
\setupinmargin[style=small, align=right, location=outer]
\setupheadertexts[subject][title]
\setupheader[section][textstyle={sc,bold}]
\usemodule[caesar]
\setupbodyfont[11pt]
\starttext
\setupinterlinespace[big]
\margintext{vulpes}
\title{\color[orange]{\sc\bold{Corvus et Vulpēs}}}
\subject{\sc\bold{Apud capitulum X}}
\startlinenumbering
Corvus est avis, quae nōn tanta est\margintext{dhg h hh hhhh fskfa} quanta \margintext{fdgfsg fsggfs}aquila. Pedēs, cauda, ālae, rōstrum et cētera nigra sunt. Cum per āera volat, ālās movēre necesse est. Cum in arboribus sedet, nōn cadit. Pedibus enim sē rāmīs tenēre potest neque tam crassa est ut puer Rōmānus. Ergō etiam ā tenuibus rāmīs sustinērī potest. Corvus pedibus in terrā ambulāre potest. Nīdōs autem nōn in terrā, sed in rāmīs faciunt, quī in altīs arboribus sunt, quō multa animālia ascendere nōn possunt. Pullī nōn ex corvīs ipsīs, sed ex ōvīs eōrum veniunt. Nūlla avis vōcem tam foedam habet quam corvus. Cum enim corvus cantat, ''krra-krra-krra'' audītur.
Etiam vulpēs in terrā ambulāre potest. Nam ea quoque pedēs habet. Numerus pedum est quattuor. Vulpēs nōn est tanta quantus lupus neque tam parva quam mūs. Vulpēs dentibus parva animālia capit et ēst. Ab aliīs bēstiīs timētur, quia improba est. In silvā nēmō amīcus vulpis esse vult neque ūlla bēstia eās amat.
Ecce ... hic corvus in rōstrō frustum cāseī tenet. Cāseus est cibus pāstōrum. Pāstores cāseōs ē lacte ovium faciunt. Lac album est et bibī potest. Cāseus nōn bibī, sed edī potest. Corvus ipse cāseum facere nōn potest, sed eum ā pāstōribus, quī dormiunt, capere potest.\margintext{fasdfa}
Corvus circum oppidum Tūsculum volat, ubi vīllam cum magnō hortō videt. Illīc fenestra aperītur. Corvus per illam fenestram parvum cubiculum videt, in quo ancilla stat. Quae est illa ancilla? Syra est, quae illīc saccōs cibī plenōs numerat. In aliīs saccīs aliī cibī sunt: pīra, māla, panis, cāseus et cētera. Inter illōs saccōs corvus magnum saccum esse videt. Ō quantus est ille saccus! Quid inest?
Etiam Iūlius cubiculum intrat et cāseum abesse videt. Ōstium post sē claudit et īrātus Syram interrogat accūsatque: ''Ubi est cāseus meus? Quis habet cāseum meum? Tūne? Improba ancilla! Mala est ancilla, quae cāseum dominī ēst!'' Dominus eam verberāre vult neque potest; nam baculum eius in ātriō est. Ergō exit ē cubiculō et cum baculō suō revenit. ...
\stoplinenumbering
\stoptext
Respuesta1
Podrías usar algo de MetaFun. Desde una superposición puede acceder a los diferentes campos de la página.
En respuesta a los comentarios:
¿Cómo puede la línea horizontal subir para dirigirse debajo del encabezado (mientras la línea vertical aún toca la horizontal), dejando un espacio de unos 8 mm entre el texto y la línea?
De forma predeterminada, la distancia entre el encabezado y el bloque de texto es 0 puntos y el encabezado está alineado hacia la parte superior de su campo. Podría ser posible utilizar algunos trucos desagradables para obtener la línea base del campo del encabezado, pero es mucho más fácil simplemente reducir la altura del campo del encabezado \lineheight
y aumentar la distancia del encabezado. Al configurar headerdistance
también es necesario hacerlo footerdistance
porque este último se inicializa con el primero. El código MetaFun sólo necesita muy pocos ajustes.
¿Cómo puedo hacer que el encabezado complete el margen, no solo el ancho del texto?
En realidad, el \setupheadertexts
comando requiere hasta cinco argumentos.
\setupheadertexts
[<position>]
[<left odd>] [<right odd>]
[<left even>][<right even>]
Pues <position>
puedes optar margin
por colocar la marca en el margen. Desafortunadamente, el contenido es demasiado amplio para el margen, así que tengo que usar un poco \hfill
de \llap
magia.
¿Cómo puedo poner el número de página en el pie de página en el margen exterior? ahora está "a la derecha", pero alineado a la izquierda.
El número de página ya está en el pie de página exterior, pero parece que no está satisfecho con la alineación hacia el interior. Puedes arreglar la alineación usando command
. No especificaste qué alineación deseas, así que solo usé \centerline
.
Su sugerencia sobre la calidad de la tipografía parece destruir el efecto del comando
\setupinterlinespace[big]
.
En realidad \setupinterlinespace[big]
no me funciona ni siquiera sin hz
alineación hanging
(verEl comentario de Wolfgang.como qué). Puedes usar algo como \setupinterlinespace[line=3.8ex]
en su lugar.
Para el número de página: tenía algo de código para lograr mi objetivo
Eso podría funcionar, pero me parece demasiado complicado. El command
enfoque en \setuppagenumbering
puede lograr algo similar y es mucho más corto. Además, no tienes el problema de la colisión de capas.
Las notas al margen deben tener sangría "negativa".
La definición que propones parece correcta, pero no comprobé por qué no funciona. En lugar de eso, modifiqué la definición de un entorno a un comando y la usé command=\exdent
en \setupmargindata
.
Dentro de la definición de \exdent
hay un \blank[-line]
. Esto se debe a que \startnarrower
comienza un nuevo párrafo que inserta una línea en blanco en este punto que queremos eliminar.
\outerline
No existe un comando. ¿Que tengo que hacer?
Ya lo has descubierto \leftline
y \rightline
lo único que te queda por hacer es cambiar entre estas dos dependiendo de si estás en la página izquierda o derecha. Esto se hace usando \doifoddpageelse{\rightline}{\leftline}
.
\setuppapersize[A5]
\setuplayout
[% vertical
header=\lineheight,
headerdistance=8mm,
footerdistance=0pt,
% horizontal
backspace=15mm,
width=90mm,
rightmargin=35mm]
\startuseMPgraphic{page}
path outer, text, head, ohead, p, q ;
StartPage ;
outer := Field[Text] [OuterMargin] ;
text := Field[Text] [Text] ;
head := Field[Header] [Text] ;
ohead := Field[Header] [OuterMargin] ;
if OnRightPage :
p := .5[lrcorner text,llcorner outer] -- .5[lrcorner head,llcorner ohead] ;
q := llcorner head -- lrcorner ohead ;
else :
p := .5[lrcorner outer,llcorner text] -- .5[lrcorner ohead,llcorner head] ;
q := llcorner ohead -- lrcorner head ;
fi ;
draw p withcolor \MPcolor{orange} ;
draw q withcolor \MPcolor{orange} ;
StopPage ;
\stopuseMPgraphic
\defineoverlay[page][\useMPgraphic{page}]
\setupbackgrounds[page][background=page]
\setuppagenumbering
[alternative=doublesided,
command=\doifoddpageelse{\rightline}{\leftline},
location={footer,inright}]
\mainlanguage[la]
\language[la]
\setuphyphenation[method=traditional]
\setuptolerance[horizontal,strict] %zorgt voor minder overfull boxes
\setuplinenumbering[step=5, location=inner, align=outer]
\setupindenting[small,yes]
\setupinterlinespace[line=3.8ex]
\setupheadertexts
[text]
[subject][]
[][title]
\setupheadertexts
[margin]
[][\hfill\llap{\getmarking[title]}]
[\rlap{\getmarking[subject]}\hfill][]
\setupheader[style=\bf\cap]
\setuphead
[title]
[textcolor=orange,
textstyle=\bf\cap]
\setuphead
[subject]
[textstyle=\bf\cap]
\starttexdefinition unexpanded exdent #1
\blank[-line] % Remove the newline from the following \startnarrower
\startnarrower[left]
\setupindenting[-\leftskip,yes]
#1
\stopnarrower
\stoptexdefinition
\setupmargindata
[margintext]
[location=outer,
width=\outermarginwidth,
align=inner,
style=small,
command=\exdent]
\usemodule[caesar]
\definefontfeature
[default][default]
[protrusion=quality,
expansion=quality]
\setupbodyfont[11pt]
\setupalign[hz,hanging]
\starttext
\margintext{vulpes}
\starttitle[title={Corvus et Vulpēs}]
\startsubject[title={Apud capitulum X}]
\startlinenumbering
Corvus est avis, quae nōn tanta est\margintext{dhg h hh hhhh fskfa} quanta \margintext{\samplefile{ward}}aquila. Pedēs, cauda, ālae, rōstrum et cētera nigra sunt. Cum per āera volat, ālās movēre necesse est. Cum in arboribus sedet, nōn cadit. Pedibus enim sē rāmīs tenēre potest neque tam crassa est ut puer Rōmānus. Ergō etiam ā tenuibus rāmīs sustinērī potest. Corvus pedibus in terrā ambulāre potest. Nīdōs autem nōn in terrā, sed in rāmīs faciunt, quī in altīs arboribus sunt, quō multa animālia ascendere nōn possunt. Pullī nōn ex corvīs ipsīs, sed ex ōvīs eōrum veniunt. Nūlla avis vōcem tam foedam habet quam corvus. Cum enim corvus cantat, ''krra-krra-krra'' audītur.
Etiam vulpēs in terrā ambulāre potest. Nam ea quoque pedēs habet. Numerus pedum est quattuor. Vulpēs nōn est tanta quantus lupus neque tam parva quam mūs. Vulpēs dentibus parva animālia capit et ēst. Ab aliīs bēstiīs timētur, quia improba est. In silvā nēmō amīcus vulpis esse vult neque ūlla bēstia eās amat.
Ecce \textellipsis\ hic corvus in rōstrō frustum cāseī tenet. Cāseus est cibus pāstōrum. Pāstores cāseōs ē lacte ovium faciunt. Lac album est et bibī potest. Cāseus nōn bibī, sed edī potest. Corvus ipse cāseum facere nōn potest, sed eum ā pāstōribus, quī dormiunt, capere potest.\margintext{fasdfa}
Corvus circum oppidum Tūsculum volat, ubi vīllam cum magnō hortō videt. Illīc fenestra aperītur. Corvus per illam fenestram parvum cubiculum videt, in quo ancilla stat. Quae est illa ancilla? Syra est, quae illīc saccōs cibī plenōs numerat. In aliīs saccīs aliī cibī sunt: pīra, māla, panis, cāseus et cētera. Inter illōs saccōs corvus magnum saccum esse videt. Ō quantus est ille saccus! Quid inest?
Etiam Iūlius cubiculum intrat et cāseum abesse videt. Ōstium post sē claudit et īrātus Syram interrogat accūsatque: \quotation{Ubi est cāseus meus? Quis habet cāseum meum? Tūne? Improba ancilla! Mala est ancilla, quae cāseum dominī ēst!} Dominus eam verberāre vult neque potest; nam baculum eius in ātriō est. Ergō exit ē cubiculō et cum baculō suō revenit. \textellipsis
\stoplinenumbering
\stopsubject
\stoptitle
\stoptext