Fixes to InsetCaption \protect-ion

* \caption does not need to be protected in general
* the contents of \caption arguments need to be protected, though.

All styles related to caoption inset have been audited and updated.

The special casing of captions in longtables has been removed, since there is no special case.

Fixes bug: #9177
This commit is contained in:
Jean-Marc Lasgouttes 2014-12-23 11:58:04 +01:00
parent 9c55af4a22
commit 1e18ab586e
9 changed files with 10 additions and 3 deletions

View File

@ -529,6 +529,7 @@ InsetLayout Caption:FigCaption
LabelString fig.
LaTeXType command
LatexName figcaption
# FIXME: it seems that the optional argument is actually a file name
Argument 1
LabelString "Short Title|S"
Tooltip "The caption as it appears in the list of figures"

View File

@ -207,6 +207,7 @@ InsetLayout Caption:Table
LabelString table
LaTeXType command
LatexName tablecaption
NeedProtect 1
HTMLStyle
div.float-caption {
text-align: center;

View File

@ -251,6 +251,7 @@ InsetLayout Caption:Centered
LabelString standard
LaTeXType command
LatexName centeredcaption
NeedProtect 1
Argument 1
LabelString "Short Title|S"
Tooltip "The caption as it appears in the list of figures/tables"

View File

@ -351,6 +351,7 @@ InsetLayout Caption:Centered
LabelString standard
LaTeXType command
LatexName centeredcaption
NeedProtect 1
Argument 1
LabelString "Short Title|S"
Tooltip "The caption as it appears in the list of figures/tables"

View File

@ -40,6 +40,7 @@ InsetLayout Caption:Bicaption
LabelString bilingual
LaTeXType command
LatexName bicaption
NeedProtect 1
Argument 1
LabelString "Main Language Short Title"
Tooltip "Short title for the main(document) language"

View File

@ -269,6 +269,7 @@ InsetLayout Caption:Above
LabelString above
LaTeXType command
LatexName captionabove
NeedProtect 1
Argument 1
LabelString "Short Title|S"
Tooltip "The caption as it appears in the list of figures/tables"
@ -289,6 +290,7 @@ InsetLayout Caption:Below
LabelString below
LaTeXType command
LatexName captionbelow
NeedProtect 1
Argument 1
LabelString "Short Title|S"
Tooltip "The caption as it appears in the list of figures/tables"

View File

@ -554,6 +554,7 @@ InsetLayout Caption:Standard
LabelString standard
LaTeXType command
LatexName caption
NeedProtect 1
Argument 1
LabelString "Short Title|S"
Tooltip "The caption as it appears in the list of figures/tables"

View File

@ -264,9 +264,6 @@ void InsetCaption::latex(otexstream & os,
// \caption{...}, later we will make it take advantage
// of the one of the caption packages. (Lgb)
OutputParams runparams = runparams_in;
// FIXME: actually, it is moving only when there is no
// optional argument.
runparams.moving_arg = !runparams.inTableCell;
InsetText::latex(os, runparams);
// Backwards compatibility: We always had a linebreak after
// the caption (see #8514)

View File

@ -438,6 +438,8 @@ void InsetText::latex(otexstream & os, OutputParams const & runparams) const
if (!il.latexname().empty()) {
if (il.latextype() == InsetLayout::COMMAND) {
// FIXME UNICODE
// FIXME \protect should only be used for fragile
// commands, but we do not provide this information yet.
if (runparams.moving_arg)
os << "\\protect";
os << '\\' << from_utf8(il.latexname());