mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-26 03:11:59 +00:00
Fix regression to 1.4.x: Additional vertical space if inputenc == auto
* src/output_latex.C (TeXOnePar): Postpone the output of newlines after the call of switchEncoding(), since we may get additional whitespace otherwise. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16740 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
7202474476
commit
439582ec6d
@ -393,14 +393,13 @@ TeXOnePar(Buffer const & buf,
|
|||||||
} else if (is_command)
|
} else if (is_command)
|
||||||
os << '}';
|
os << '}';
|
||||||
|
|
||||||
|
bool pending_newline = false;
|
||||||
switch (style->latextype) {
|
switch (style->latextype) {
|
||||||
case LATEX_ITEM_ENVIRONMENT:
|
case LATEX_ITEM_ENVIRONMENT:
|
||||||
case LATEX_LIST_ENVIRONMENT:
|
case LATEX_LIST_ENVIRONMENT:
|
||||||
if (boost::next(pit) != paragraphs.end()
|
if (boost::next(pit) != paragraphs.end()
|
||||||
&& (pit->params().depth() < boost::next(pit)->params().depth())) {
|
&& (pit->params().depth() < boost::next(pit)->params().depth()))
|
||||||
os << '\n';
|
pending_newline = true;
|
||||||
texrow.newline();
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case LATEX_ENVIRONMENT: {
|
case LATEX_ENVIRONMENT: {
|
||||||
// if its the last paragraph of the current environment
|
// if its the last paragraph of the current environment
|
||||||
@ -416,10 +415,8 @@ TeXOnePar(Buffer const & buf,
|
|||||||
// fall through possible
|
// fall through possible
|
||||||
default:
|
default:
|
||||||
// we don't need it for the last paragraph!!!
|
// we don't need it for the last paragraph!!!
|
||||||
if (boost::next(pit) != paragraphs.end()) {
|
if (boost::next(pit) != paragraphs.end())
|
||||||
os << '\n';
|
pending_newline = true;
|
||||||
texrow.newline();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!pit->forceDefaultParagraphs()) {
|
if (!pit->forceDefaultParagraphs()) {
|
||||||
@ -427,10 +424,13 @@ TeXOnePar(Buffer const & buf,
|
|||||||
&& (boost::next(pit) == paragraphs.end()
|
&& (boost::next(pit) == paragraphs.end()
|
||||||
|| !boost::next(pit)->hasSameLayout(*pit)))
|
|| !boost::next(pit)->hasSameLayout(*pit)))
|
||||||
{
|
{
|
||||||
os << from_ascii(pit->params().spacing().writeEnvirEnd())
|
if (pending_newline) {
|
||||||
<< '\n';
|
os << '\n';
|
||||||
texrow.newline();
|
texrow.newline();
|
||||||
}
|
}
|
||||||
|
os << from_ascii(pit->params().spacing().writeEnvirEnd());
|
||||||
|
pending_newline = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (boost::next(pit) == paragraphs.end()
|
if (boost::next(pit) == paragraphs.end()
|
||||||
@ -439,19 +439,21 @@ TeXOnePar(Buffer const & buf,
|
|||||||
// we need to reset the language at the end of footnote or
|
// we need to reset the language at the end of footnote or
|
||||||
// float.
|
// float.
|
||||||
|
|
||||||
|
if (pending_newline) {
|
||||||
|
os << '\n';
|
||||||
|
texrow.newline();
|
||||||
|
}
|
||||||
if (lyxrc.language_command_end.empty())
|
if (lyxrc.language_command_end.empty())
|
||||||
os << from_ascii(subst(
|
os << from_ascii(subst(
|
||||||
lyxrc.language_command_begin,
|
lyxrc.language_command_begin,
|
||||||
"$$lang",
|
"$$lang",
|
||||||
doc_language->babel()))
|
doc_language->babel()));
|
||||||
<< '\n';
|
|
||||||
else
|
else
|
||||||
os << from_ascii(subst(
|
os << from_ascii(subst(
|
||||||
lyxrc.language_command_end,
|
lyxrc.language_command_end,
|
||||||
"$$lang",
|
"$$lang",
|
||||||
language->babel()))
|
language->babel()));
|
||||||
<< '\n';
|
pending_newline = true;
|
||||||
texrow.newline();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// FIXME we switch from the encoding of this paragraph to the
|
// FIXME we switch from the encoding of this paragraph to the
|
||||||
@ -459,8 +461,9 @@ TeXOnePar(Buffer const & buf,
|
|||||||
// to take the encoding of the next paragraph into account.
|
// to take the encoding of the next paragraph into account.
|
||||||
// This may result in some unneeded encoding changes.
|
// This may result in some unneeded encoding changes.
|
||||||
basefont = pit->getLayoutFont(bparams, outerfont);
|
basefont = pit->getLayoutFont(bparams, outerfont);
|
||||||
if (switchEncoding(os, bparams, *(basefont.language()->encoding()),
|
switchEncoding(os, bparams, *(basefont.language()->encoding()),
|
||||||
outer_encoding)) {
|
outer_encoding);
|
||||||
|
if (pending_newline) {
|
||||||
os << '\n';
|
os << '\n';
|
||||||
texrow.newline();
|
texrow.newline();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user