¿Cómo exporto algunos de los subtítulos en un subárbol marcado como: noexport :?


7

Me gustaría poder tener un archivo en modo org que tenga el siguiente aspecto:

* Some Heading     :ignore:noexport:
** Not exported
   Some stuff.
** Other not exported heading
   More stuff.
** Exported        :export:
   Other stuff.

Lo que debería producirse al exportar sería:

Exported
--------

Other Stuff.

La :ignore:etiqueta se usa junto con la funcionalidad ox-extrade ignorar encabezados del paquete ; consulte esto para obtener más detalles.

Parece que el archivo de modo org anterior no se exportará actualmente, ¿hay alguna solución que permita que esto funcione? Parece que la clave aquí sería hacer que el modo de organización funcione para que la presencia de una :export:etiqueta elimine cualquier :noexport:etiqueta heredada , y viceversa: la presencia de una :noexport:etiqueta debería eliminar una :export:etiqueta heredada para el título.


1
¿A qué nivel le gustaría el encabezado exportado? Tal como lo veo, puede haber un problema si está en el segundo nivel, pero el primer nivel no se exporta.
Nathanael Farley

Citando el manual (info "(org) Export settings"): "Cuando los títulos se exportan selectivamente con :export:cualquier parte de un archivo, se ignora el texto antes del primer título". En su caso, omita la :noexport:etiqueta ya que los subtítulos no etiquetados :export:serán ignorados. Cambiar el ámbito de exportación a "Subárbol" (con <kbd> Cs </kbd>) conducirá al resultado deseado.
mutbuerger

Respuestas:


2

Debería poder desactivar la herencia de etiquetas para obtener este comportamiento, pero no está claro qué sucedería con el encabezado 'huérfano'. Puede hacerlo utilizando variables locales y configurando la org-tags-exclude-from-inheritancelista.

No tengo acceso a emacs en este momento, pero el siguiente fragmento (¡no probado!) Al comienzo de su archivo de organización podría hacerlo.

 # -*- mode: org-mode; org-tags-exclude-from-inheritance: '("noexport"); -*-

Todavía quiero que la etiqueta del nodo padre más cercano sea heredada por sus hijos. Por lo tanto, podría tener, por ejemplo, un subárbol cuyos hijos heredaron a :noexportmenos que estén marcados explícitamente como :export:, y otros subárboles cuyos hijos hereden a :export:menos que estén marcados explícitamente como :noexport:.
Mark

Entonces, ¿desea conservar la herencia de la etiqueta pero la etiqueta secundaria sobrescribe el significado de la etiqueta principal? Eso podría ser complicado.
Nathanael Farley

Sí, eso es lo que me gustaría, pero me doy cuenta de que sería necesario determinar cómo se vería el comportamiento de la exportación si el padre no fuera un :ignore:nodo, sino que tuviera una :noexport:etiqueta, y algunos de sus antepasados ​​tuvieran :export:etiquetas, tal vez esto se invierta. El comportamiento de la etiqueta heredada solo tiene sentido para permitir :ignore:nodos.
Mark

2

Me resulta difícil entender por qué querría exportar un subtítulo y no exportar el encabezado asociado a él. Pero si tiene buenas razones para hacerlo, ¿puede solicitar esta función en la lista de correo de la organización? ¿La opción podría agregarse en futuras versiones?

Yo suelo hacer algo como lo siguiente

* Some Heading     
** Not exported     :ignore:noexport:
   Some stuff.
** Other not exported heading     :ignore:noexport:
   More stuff.
** Exported        :export:
   Other stuff.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.