¿Existe alguna opción que cambie el título predeterminado de la tabla de contenido en modo Org?
Mi documento no está en inglés, así que quiero traducir el título de la tabla de contenido.
Responder
Como dijo JeanPierre, se trata de configuraciones de exportación. Puede establecer LANGUAGE
en la parte superior de su org
documento de esta manera:
#+LANGUAGE: fr
Y el francés se usará como idioma predeterminado de todas las cadenas que se org
producen durante la exportación.
El responsable constante de las asignaciones de traducción está org-export-dictionary
en ox.el
y si su idioma no es compatible, puede dejarlo allí y luego eval-defun
dejar que se produzca el cambio. En mi caso:
(defconst org-export-dictionary
...
("Table of Contents"
...
("sr" :html "Sadržaj" :utf-8 "Sadržaj")
...)
...)
He escrito una función ingenua que puede ser útil en init.el
:
(defun org-export-translate-to-lang (term-translations &optional lang)
"Adds desired translations to `org-export-dictionary'.
TERM-TRANSLATIONS is alist consisted of term you want to translate
and its corresponding translation, first as :default then as :html and
:utf-8. LANG is language you want to translate to."
(dolist (term-translation term-translations)
(let* ((term (car term-translation))
(translation-default (nth 1 term-translation))
(translation-html (nth 2 term-translation))
(translation-utf-8 (nth 3 term-translation))
(term-list (assoc term org-export-dictionary))
(term-langs (cdr term-list)))
(setcdr term-list (append term-langs
(list
(list lang
:default translation-default
:html translation-html
:utf-8 translation-utf-8)))))))
(org-export-translate-to-lang '(("Table of Contents"
"Sadržaj"
"Sadržaj"
"Sadržaj")
("Another term"
"coilogji"))
"sr")
Descargo de responsabilidad
No funciona si desea exportar a través de Latex (Latex se usa cuando Org exporta a PDF). Mira la respuesta y los comentarios de Tyler.
fuente
Respuestas:
El manual de la organización dice esto sobre la configuración de exportación (debería poder navegar en la información de emacs
C-h i m Org m exporting
):No lo he probado, pero espero que haga lo que quieras.
fuente
Como señaló JeanPierre, debe especificar la configuración de exportación de idioma. Para el francés, la siguiente línea hace el trabajo:
No todos los idiomas son compatibles y, como dijiste, es posible ver cuáles están viendo la
org-latex-export-dictionary
variable (puedes usar el comando emacs yC-h v
luego escribir el nombre de la variable). Algunos idiomas pueden ser solo parcialmente compatibles o no ser compatibles, como el serbio. Si desea que funcione con un idioma no compatible, agregue las cadenas traducidas a la variable y preferiblemente envíelas a los desarrolladores para que termine el modo org.LaTex y PDF
Si está exportando a LaTex y desea que Babel cambie el uso del texto:
Esto funcionará tanto en HTML como en látex, ya que la palabra clave AUTO será sustituida por el nombre del lenguaje Babel correspondiente. Para ver qué idiomas son compatibles, vea la
org-latex-babel-language-alist
variable. No todos los idiomas disponibles en Babel están allí, pero el serbio está y funciona (lo probó y "Contenido" aparece como "Sadržaj").Si su idioma no está en
org-latex-babel-language-alist
pero está disponible en babel, como bretón, use:Como Breton no está en
org-latex-export-dictionary
laLANGUAGE
variable, no hará nada para exportar HTML, será en inglés, pero es necesario. Esto se debe a que lo que terminará en el archivo LaTex será\usepackage[breton, <default-lang>]{babel}
dóndedefault-lang
estará el inglés siLANGUAGE
no está presente y Babel considera el último idioma como el predeterminado. Comobr
no es en loorg-latex-babel-language-alist
que terminamos\usepackage[breton, ]{babel}
, Breton es el valor predeterminado.Si se agrega Breton
org-latex-babel-language-alist
, funcionará de todos modos (\usepackage[breton, breton]{babel}
). Si se incluye Bretonorg-latex-export-dictionary
, ahora también funcionará en HTML. Si Breton no fue compatible con babel, funcionará de todos modos, pero estará en inglés, por lo que esta configuración es la que le brinda la mayor cantidad posible en el idioma especificado con inglés como alternativa. Prefiero usarAUTO
si está disponible, ya que solo hay un lugar para poner el idioma.Si no le gusta lo que Babel pone como "Contenido" pero aún quiere usarlo, puede hacer algo como:
Esto es como la respuesta de Tyler, pero para Babel.
fuente
Si está exportando a PDF, org-mode llamará a LaTeX para realizar la conversión. En ese caso, debería poder insertar el comando LaTeX para cambiar el encabezado TOC con la siguiente línea:
Pon eso en la parte superior de tu archivo y prueba la exportación.
fuente
\usepackage[mylanguage]{babel}
.#+LANGUAGE: fr
y ,#+LATEX_HEADER: \usepackage[english]{babel}
en este caso, la exportación de látex respeta la primera configuración y traduce cadenas en sus contrapartes francesas. Si declarode
en el primero y /french
ofrenchb
en el segundo -de
se utiliza. También he notado que en los casos descritos el exportador no usaorg-export-dictionary
, es más probable que use lenguajes Latex. ¿Tienes alguna idea?:
. He corregido mi respuesta.#+LANGUAGE: fr
solo, se ignora: la salida LaTeX está en inglés. Si lo uso y#+LATEX_HEADER: \usepackage[english]{babel}
, el LaTeX resultante incluye la línea\usepackage[english, frenchb]{babel}
. Y si solo uso#+LATEX_HEADER: \usepackage[french]{babel}
, sin configurarLANGUAGE:
, lo que realmente se inserta es\usepackage[frenchb, english]{babel}
. Ninguno de ellos cambia el PDF, siempre es inglés.Respuesta corta: para exportaciones de pdf, se requiere el paquete texlive-lang-french
org 9.1.9
: La configuración por#+LANGUAGE: fr
sí sola no tiene ningún efecto.haz que suceda con
o
fuente