commit 07c99393be6e6dbb734c8effa53040b7e4188dbe
Author: Juergen Spitzmueller <[email protected]>
Date: Mon Oct 30 12:54:29 2023 +0100
Consider PackageOptions with parskip
---
src/BufferParams.cpp | 25 ++++++++++++++++++++++---
src/BufferParams.h | 2 ++
2 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp
index 5ea6e15..0d1600c 100644
--- a/src/BufferParams.cpp
+++ b/src/BufferParams.cpp
@@ -2187,10 +2187,20 @@ bool BufferParams::writeLaTeX(otexstream & os,
LaTeXFeatures & features,
// in a class or package)
os << "\\parskip=.5\\baselineskip plus
2pt\\relax\n";
} else {
- // load parskip package with required option
+ // load parskip package with required options
+ string psopts;
if (!psopt.empty())
- psopt = "[skip=" + psopt + "]";
- os << "\\usepackage" + psopt + "{parskip}\n";
+ psopts = "skip=" + psopt;
+ string const xpsopts = getPackageOptions("parskip");
+ if (!xpsopts.empty()) {
+ if (!psopts.empty())
+ psopts += ",";
+ psopts += xpsopts;
+ }
+ os << "\\usepackage";
+ if (!psopts.empty())
+ os << "[" << psopts << "]";
+ os << "{parskip}\n";
}
} else {
// when separation by indentation
@@ -2971,6 +2981,15 @@ bool BufferParams::hasPackageOption(string const
package, string const opt) cons
}
+string BufferParams::getPackageOptions(string const package) const
+{
+ for (auto const & p : documentClass().packageOptions())
+ if (package == p.first)
+ return p.second;
+ return string();
+}
+
+
bool BufferParams::useBidiPackage(OutputParams const & rp) const
{
return (rp.use_polyglossia
diff --git a/src/BufferParams.h b/src/BufferParams.h
index 34b4447..489e053 100644
--- a/src/BufferParams.h
+++ b/src/BufferParams.h
@@ -197,6 +197,8 @@ public:
bool isLiterate() const;
/// Is this package option requested?
bool hasPackageOption(std::string const package, std::string const opt)
const;
+ /// Get the options requested for a given package
+ std::string getPackageOptions(std::string const package) const;
/// Do we use the bidi package (which does some reordering and stuff)?
bool useBidiPackage(OutputParams const & rp) const;
--
lyx-cvs mailing list
[email protected]
http://lists.lyx.org/mailman/listinfo/lyx-cvs