mirror of
https://git.lyx.org/repos/lyx.git
synced 2025-01-21 23:09:40 +00:00
Activate ability to write CSS to a separate file. There is no UI
for this yet, however. Includes elements of a patch by Rob Oakes. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40409 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
986222a754
commit
c3f0e21968
@ -1772,15 +1772,18 @@ void Buffer::writeLyXHTMLSource(odocstream & os,
|
||||
html::htmlize(doctitle, XHTMLStream::ESCAPE_ALL))
|
||||
<< "</title>\n";
|
||||
|
||||
os << "\n<!-- Text Class Preamble -->\n"
|
||||
<< features.getTClassHTMLPreamble()
|
||||
<< "\n<!-- Preamble Snippets -->\n"
|
||||
<< from_utf8(features.getPreambleSnippets());
|
||||
docstring styles = features.getTClassHTMLPreamble();
|
||||
if (!styles.empty())
|
||||
os << "\n<!-- Text Class Preamble -->\n" << styles << '\n';
|
||||
|
||||
styles = from_utf8(features.getPreambleSnippets());
|
||||
if (!styles.empty())
|
||||
os << "\n<!-- Preamble Snippets -->\n" << styles << '\n';
|
||||
|
||||
// we will collect CSS information in a stream, and then output it
|
||||
// either here, as part of the header, or else in a separate file.
|
||||
odocstringstream css;
|
||||
docstring styles = from_utf8(features.getCSSSnippets());
|
||||
styles = from_utf8(features.getCSSSnippets());
|
||||
if (!styles.empty())
|
||||
css << "/* LyX Provided Styles */\n" << styles << '\n';
|
||||
|
||||
@ -1805,10 +1808,30 @@ void Buffer::writeLyXHTMLSource(odocstream & os,
|
||||
|
||||
docstring const dstyles = css.str();
|
||||
if (!dstyles.empty()) {
|
||||
bool written = false;
|
||||
if (params().html_css_as_file) {
|
||||
// open a file for CSS info
|
||||
ofdocstream ocss;
|
||||
string const fcssname = addName(temppath(), "docstyle.css");
|
||||
FileName const fcssfile = FileName(fcssname);
|
||||
if (openFileWrite(ocss, fcssfile)) {
|
||||
ocss << dstyles;
|
||||
ocss.close();
|
||||
written = true;
|
||||
// write link to header
|
||||
os << "<link rel='stylesheet' href='docstyle.css' type='text/css' />\n";
|
||||
// register file
|
||||
runparams.exportdata->addExternalFile("xhtml", fcssfile);
|
||||
}
|
||||
}
|
||||
// we are here if the CSS is supposed to be written to the header
|
||||
// or if we failed to write it to an external file.
|
||||
if (!written) {
|
||||
os << "<style type='text/css'>\n"
|
||||
<< dstyles
|
||||
<< "\n</style>\n";
|
||||
}
|
||||
}
|
||||
os << "</head>\n";
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user