Am 2013-08-14 um 20:15 schrieb Wolfgang Schuster
Current beta MkIV seems to have a bug in the Lua function io.lines:
for myline in io.lines(myfile) do logs.report(myline) end
"myfile" just contains one line with a number, without return/newline. If the number has more than one digit, I get single digits as "myeline".
Do you have a minimal working example?
Minimal working yes, but not minimal failing ;-) This works: io.output(io.open("myfile.txt","w")) io.write("123") io.close() for myline in io.lines("myfile.txt") do print(myline .. "\n") end But in my t-lilyfilter.tex where it reads the systems.count files of LilyPond (that contain only the number of note systems that resulted from the included LilyPond code), it fails: function thirddata.parselilypondfile(name) -- include all systems (note lines) -- name is like \LILYTEMP/mainfile-temp-lilypond-21.pdf logs.report("LILYPOND","name='" .. name .. "'") syco = 0 for ts in io.lines(string.gsub(name, '%.pdf$', '-systems.count')) do syco = ts*1 end for nr = 1, syco do logs.report("LILYPOND","including system no." .. nr) context("\\externalfigure[" .. string.gsub(name, '%.pdf$', '-' .. nr) .. "]") end end While I have a single-digit number of systems, it works, but the song of my failing case has 11 lines. I wouldn't complain if it wouldn't have worked before! Greetlings, Hraban