(outer_language->encoding()->hasFixedWidth()) ?
outer_language->encoding()
: encodings.fromLyXName("iso8859-1");
- pair<bool, int> const c = switchEncoding(os.os(),
- buffer().params(), runparams, *lstenc, true);
+ switchEncoding(os.os(), buffer().params(), runparams, *lstenc, true);
runparams.encoding = lstenc;
encoding_switched = true;
}
// we can only output characters covered by the current
// encoding!
try {
- if (runparams.encoding->latexChar(c) == docstring(1, c))
+ if (runparams.encoding->encodable(c))
code += c;
else if (runparams.dryrun) {
code += "<" + _("LyX Warning: ")
if (encoding_switched){
// Switch back
- pair<bool, int> const c = switchEncoding(os.os(),
- buffer().params(), runparams, *save_enc, true);
+ switchEncoding(os.os(), buffer().params(), runparams, *save_enc, true);
runparams.encoding = save_enc;
}
<< caption << html::EndTag("div");
}
- out << html::StartTag("pre");
+ InsetLayout const & il = getLayout();
+ string const tag = il.htmltag();
+ string attr = "class ='listings";
+ string const lang = params().getParamValue("language");
+ if (!lang.empty())
+ attr += " " + lang;
+ attr += "'";
+ out << html::StartTag(tag, attr);
OutputParams newrp = rp;
newrp.html_disable_captions = true;
+ // We don't want to convert dashes here. That's the only conversion we
+ // do for XHTML, so this is safe.
+ newrp.pass_thru = true;
docstring def = InsetText::insetAsXHTML(out, newrp, InsetText::JustText);
- out << html::EndTag("pre");
+ out << html::EndTag(tag);
if (isInline) {
out << html::CompTag("br");
}
-docstring InsetListings::contextMenuName() const
+string InsetListings::contextMenuName() const
{
- return from_ascii("context-listings");
+ return "context-listings";
}
case LFUN_INSET_DIALOG_UPDATE:
status.setEnabled(true);
return true;
- case LFUN_CAPTION_INSERT:
- status.setEnabled(!params().isInline());
- return true;
+ case LFUN_CAPTION_INSERT: {
+ if (params().isInline()) {
+ status.setEnabled(false);
+ return true;
+ }
+ }
default:
return InsetCollapsable::getStatus(cur, cmd, status);
}
TexRow texrow;
odocstringstream ods;
otexstream os(ods, texrow);
- ins->getOptArg(os, runparams);
+ ins->getArgs(os, runparams);
ins->getArgument(os, runparams);
// the caption may contain \label{} but the listings
// package prefer caption={}, label={}