#include "frontends/FontMetrics.h"
#include "insets/InsetBibitem.h"
+#include "insets/InsetLabel.h"
#include "insets/InsetOptArg.h"
#include "support/lstrings.h"
open_font = false;
}
- // Switch file encoding if necessary
- if (runparams.encoding->package() == Encoding::inputenc &&
+ // Switch file encoding if necessary (and allowed)
+ if (!runparams.verbatim &&
+ runparams.encoding->package() == Encoding::inputenc &&
font.language()->encoding()->package() == Encoding::inputenc) {
std::pair<bool, int> const enc_switch = switchEncoding(os, bparams,
runparams.moving_arg, *(runparams.encoding),
Inset const * inset = getInset(i);
InsetCode lyx_code = inset->lyxCode();
if (lyx_code == LABEL_CODE) {
- string const id = static_cast<InsetCommand const *>(inset)->getContents();
- return "id='" + to_utf8(sgml::cleanID(buf, runparams, from_utf8(id))) + "'";
+ InsetLabel const * const il = static_cast<InsetLabel const *>(inset);
+ docstring const & id = il->getParam("name");
+ return "id='" + to_utf8(sgml::cleanID(buf, runparams, id)) + "'";
}
}