lualatex using vebatim package
up vote
1
down vote
favorite
This was working and I don't see what has changed, but the code below is now throwing a "Missing endcsname inserted" error.
If I just press Return, lualatex continues, reads the text file myfile.lua, and prints it perfectly verbatim. Doesn't seem to matter whether the file is UTF-8 or ASCII encoded (I usually use the former). Windows 10 machine if that matters.
MWE
documentclass{article}
RequirePackage{verbatim}%
RequirePackage{luacode}%
begin{luacode*}
function buildPath(...)
-- get the system path separator
local pathseparator = package.config:sub(1,1)
-- get the arguments
local elements = {...}
-- return the elements with the path separator
return table.concat(elements, pathseparator)
end
-- Get the current path.
function getPath(filename)
-- Print the current path. According to the documentation, if -2 is used,
-- then the strings are read as if the result of detokenize: all characters
-- have catcode 12 except space, which has catcode 10.
tex.print(-2, buildPath(lfs.currentdir(), filename))
end
end{luacode*}
DeclareRobustCommandgetPath[1]{luadirect{getPath(luastring{#1})}}
begin{document}
verbatiminput{getPath{myfile.lua}}
end{document}
luatex verbatim
add a comment |
up vote
1
down vote
favorite
This was working and I don't see what has changed, but the code below is now throwing a "Missing endcsname inserted" error.
If I just press Return, lualatex continues, reads the text file myfile.lua, and prints it perfectly verbatim. Doesn't seem to matter whether the file is UTF-8 or ASCII encoded (I usually use the former). Windows 10 machine if that matters.
MWE
documentclass{article}
RequirePackage{verbatim}%
RequirePackage{luacode}%
begin{luacode*}
function buildPath(...)
-- get the system path separator
local pathseparator = package.config:sub(1,1)
-- get the arguments
local elements = {...}
-- return the elements with the path separator
return table.concat(elements, pathseparator)
end
-- Get the current path.
function getPath(filename)
-- Print the current path. According to the documentation, if -2 is used,
-- then the strings are read as if the result of detokenize: all characters
-- have catcode 12 except space, which has catcode 10.
tex.print(-2, buildPath(lfs.currentdir(), filename))
end
end{luacode*}
DeclareRobustCommandgetPath[1]{luadirect{getPath(luastring{#1})}}
begin{document}
verbatiminput{getPath{myfile.lua}}
end{document}
luatex verbatim
What is the sense of getPath? verbatiminput will find files in the current directory anyway. (I doubt that this every worked, use newcommand instead of DeclareRobustCommand).
– Ulrike Fischer
Dec 4 at 9:59
@Ulrike That's what changed!!! I was replacing newcommand in various source files and got too enthusiastic.
– DLyons
Dec 4 at 10:03
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
This was working and I don't see what has changed, but the code below is now throwing a "Missing endcsname inserted" error.
If I just press Return, lualatex continues, reads the text file myfile.lua, and prints it perfectly verbatim. Doesn't seem to matter whether the file is UTF-8 or ASCII encoded (I usually use the former). Windows 10 machine if that matters.
MWE
documentclass{article}
RequirePackage{verbatim}%
RequirePackage{luacode}%
begin{luacode*}
function buildPath(...)
-- get the system path separator
local pathseparator = package.config:sub(1,1)
-- get the arguments
local elements = {...}
-- return the elements with the path separator
return table.concat(elements, pathseparator)
end
-- Get the current path.
function getPath(filename)
-- Print the current path. According to the documentation, if -2 is used,
-- then the strings are read as if the result of detokenize: all characters
-- have catcode 12 except space, which has catcode 10.
tex.print(-2, buildPath(lfs.currentdir(), filename))
end
end{luacode*}
DeclareRobustCommandgetPath[1]{luadirect{getPath(luastring{#1})}}
begin{document}
verbatiminput{getPath{myfile.lua}}
end{document}
luatex verbatim
This was working and I don't see what has changed, but the code below is now throwing a "Missing endcsname inserted" error.
If I just press Return, lualatex continues, reads the text file myfile.lua, and prints it perfectly verbatim. Doesn't seem to matter whether the file is UTF-8 or ASCII encoded (I usually use the former). Windows 10 machine if that matters.
MWE
documentclass{article}
RequirePackage{verbatim}%
RequirePackage{luacode}%
begin{luacode*}
function buildPath(...)
-- get the system path separator
local pathseparator = package.config:sub(1,1)
-- get the arguments
local elements = {...}
-- return the elements with the path separator
return table.concat(elements, pathseparator)
end
-- Get the current path.
function getPath(filename)
-- Print the current path. According to the documentation, if -2 is used,
-- then the strings are read as if the result of detokenize: all characters
-- have catcode 12 except space, which has catcode 10.
tex.print(-2, buildPath(lfs.currentdir(), filename))
end
end{luacode*}
DeclareRobustCommandgetPath[1]{luadirect{getPath(luastring{#1})}}
begin{document}
verbatiminput{getPath{myfile.lua}}
end{document}
luatex verbatim
luatex verbatim
asked Dec 4 at 9:53
DLyons
1616
1616
What is the sense of getPath? verbatiminput will find files in the current directory anyway. (I doubt that this every worked, use newcommand instead of DeclareRobustCommand).
– Ulrike Fischer
Dec 4 at 9:59
@Ulrike That's what changed!!! I was replacing newcommand in various source files and got too enthusiastic.
– DLyons
Dec 4 at 10:03
add a comment |
What is the sense of getPath? verbatiminput will find files in the current directory anyway. (I doubt that this every worked, use newcommand instead of DeclareRobustCommand).
– Ulrike Fischer
Dec 4 at 9:59
@Ulrike That's what changed!!! I was replacing newcommand in various source files and got too enthusiastic.
– DLyons
Dec 4 at 10:03
What is the sense of getPath? verbatiminput will find files in the current directory anyway. (I doubt that this every worked, use newcommand instead of DeclareRobustCommand).
– Ulrike Fischer
Dec 4 at 9:59
What is the sense of getPath? verbatiminput will find files in the current directory anyway. (I doubt that this every worked, use newcommand instead of DeclareRobustCommand).
– Ulrike Fischer
Dec 4 at 9:59
@Ulrike That's what changed!!! I was replacing newcommand in various source files and got too enthusiastic.
– DLyons
Dec 4 at 10:03
@Ulrike That's what changed!!! I was replacing newcommand in various source files and got too enthusiastic.
– DLyons
Dec 4 at 10:03
add a comment |
1 Answer
1
active
oldest
votes
up vote
3
down vote
accepted
This never worked. Don't use a robust command inside verbatiminput
. So define your getPath
as
newcommandgetPath[1]{luadirect{getPath(luastring{#1})}}
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
3
down vote
accepted
This never worked. Don't use a robust command inside verbatiminput
. So define your getPath
as
newcommandgetPath[1]{luadirect{getPath(luastring{#1})}}
add a comment |
up vote
3
down vote
accepted
This never worked. Don't use a robust command inside verbatiminput
. So define your getPath
as
newcommandgetPath[1]{luadirect{getPath(luastring{#1})}}
add a comment |
up vote
3
down vote
accepted
up vote
3
down vote
accepted
This never worked. Don't use a robust command inside verbatiminput
. So define your getPath
as
newcommandgetPath[1]{luadirect{getPath(luastring{#1})}}
This never worked. Don't use a robust command inside verbatiminput
. So define your getPath
as
newcommandgetPath[1]{luadirect{getPath(luastring{#1})}}
answered Dec 4 at 10:55
Ulrike Fischer
184k7289665
184k7289665
add a comment |
add a comment |
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f463113%2flualatex-using-vebatim-package%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
What is the sense of getPath? verbatiminput will find files in the current directory anyway. (I doubt that this every worked, use newcommand instead of DeclareRobustCommand).
– Ulrike Fischer
Dec 4 at 9:59
@Ulrike That's what changed!!! I was replacing newcommand in various source files and got too enthusiastic.
– DLyons
Dec 4 at 10:03