summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--luaotfload-features.lua4
-rwxr-xr-xluaotfload-tool.lua13
-rw-r--r--luaotfload.dtx17
3 files changed, 32 insertions, 2 deletions
diff --git a/luaotfload-features.lua b/luaotfload-features.lua
index 5e8216c..8852596 100644
--- a/luaotfload-features.lua
+++ b/luaotfload-features.lua
@@ -213,7 +213,7 @@ local toboolean = function (s)
if s == "false" then return false end
--if s == "yes" then return true end --- Context style
--if s == "no" then return false end
- return s
+ return stringlower(s)
end
--- dirty test if a file: request is actually a path: lookup; don’t
@@ -415,7 +415,7 @@ local handle_request = function (specification)
local newvalue = request.features[feat]
if newvalue then
specification[feat] = request.features[feat]
- request.features[feat] = nil
+ --request.features[feat] = nil
end
end
diff --git a/luaotfload-tool.lua b/luaotfload-tool.lua
index 0d3b229..2c525d9 100755
--- a/luaotfload-tool.lua
+++ b/luaotfload-tool.lua
@@ -90,6 +90,19 @@ config.lualibs.load_extended = false
require"lualibs"
+--- prepare directories: the cache function in Luatex-Fonts
+--- checks for writable directory only on startup, so everything
+--- has to be laid out before we load basics-gen
+
+local cachepath = kpse.expand_var"$TEXMFVAR"
+if not lfs.isdir(cachepath) then
+ dir.mkdirs(cachepath)
+ if not lfs.isdir(cachepath) then
+ texiowrite(stringformat(
+ "ERROR could not create directory %s", cachepath))
+ end
+end
+
--[[doc--
\fileent{luatex-basics-gen.lua} calls functions from the
\luafunction{texio.*} library; too much for our taste.
diff --git a/luaotfload.dtx b/luaotfload.dtx
index daaa48c..0d062a6 100644
--- a/luaotfload.dtx
+++ b/luaotfload.dtx
@@ -1290,6 +1290,23 @@ if tex.luatexversion < luatex_version then
end
% \end{macrocode}
+% Prepare directories: the cache function in Luatex-Fonts checks for a
+% writable directory only once during startup. If there is no
+% \fileent{texmf-var} at this time it will create a subdirectory
+% \fileent{./luatex-cache} instead.
+% Thus everything has to be laid out before we load the fontloader.
+%
+% \begin{macrocode}
+
+local cachepath = kpse.expand_var"$TEXMFVAR"
+if not lfs.isdir(cachepath) then
+ dir.mkdirs(cachepath)
+ if not lfs.isdir(cachepath) then
+ error( "ERROR could not create directory %s", cachepath)
+ end
+end
+
+% \end{macrocode}
% \subsection{Module loading}
% We load the files imported from \CONTEXT with this function.
% It automatically prepends the prefix \fileent{luaotfload-} to its