Formatting table with a lua for loopInstalling Lua Modules for use in LuaLaTeXPrint large macro block from Lua to TeXStrange interaction between fontspec, lua and pgfplotsProblem with a Lua function in a foreach loopProblem printing LaTeX from lua in lualatexSymbol not found error when using Lua C .so module with LuaLaTeXHelp integrating some LUA code into a Luatex document?How to install LuaSQL for Lua(La)TeX on Windows with MikTeXHow can I retrieve thepage (or detect a page change) from Lua in LuaTeX?Getting Missing number, treated as zero error when trying to fit table in the document

How long did the SR-71 take to get to cruising altitude?

What is "industrial ethernet"?

What does this Swiss black on yellow rectangular traffic sign with a symbol looking like a dart mean?

Covering index used despite missing column

In the US, can a former president run again?

Why is "Congress shall have power to enforce this article by appropriate legislation" necessary?

Is there any proof that high saturation and contrast makes a picture more appealing in social media?

Intuition for the role of diffeomorphisms

How does DC work with natural 20?

How much steel armor can you wear and still be able to swim?

What are Elsa's reasons for selecting the Holy Grail on behalf of Donovan?

What constitutes a syllable?

Dates on degrees don’t make sense – will people care?

Umlaut character order when sorting

Justifying Affordable Bespoke Spaceships

"What is the maximum that Player 1 can win?"

Am I legally required to provide a (GPL licensed) source code even after a project is abandoned?

Why don't countries like Japan just print more money?

Rejecting an offer after accepting it just 10 days from date of joining

Second 100 amp breaker inside existing 200 amp residential panel for new detached garage

Can I change normal plug to a 15amp round pin plug?

How did Gollum enter Moria?

Subtract the Folded Matrix

Encounter design and XP thresholds



Formatting table with a lua for loop


Installing Lua Modules for use in LuaLaTeXPrint large macro block from Lua to TeXStrange interaction between fontspec, lua and pgfplotsProblem with a Lua function in a foreach loopProblem printing LaTeX from lua in lualatexSymbol not found error when using Lua C .so module with LuaLaTeXHelp integrating some LUA code into a Luatex document?How to install LuaSQL for Lua(La)TeX on Windows with MikTeXHow can I retrieve thepage (or detect a page change) from Lua in LuaTeX?Getting Missing number, treated as zero error when trying to fit table in the document






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








3















I was trying to get a table like this



 1
2 3 4
5 6 7
8 9 10


with this function



function myTable()
t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
for k = 1, #t do
if k == 1 then
tex.print(string.format([["& %d & \"]], t[1]))
else
tex.print(string.format([["%d & %d & %d \"]],
t[k], t[k + 1], t[k + 2]))
k = k + 2
end
end
end


but it says:



ua:25: bad argument #4 to 'format' (number expected, got nil)


How to do that? Looks like lua's got a weird way of implementing for loop, am I wrong?



In my document I've:



documentclassarticle
usepackageharfload,fontspec,amsmath
setmainfontKalpurush[RawFeature=mode=harf]
parindent 0pt
directluarequire("test.lua")

begindocument

begintable[h]
centering
begintabularccc
directluamyTable()
endtabular
endtable

enddocument









share|improve this question






























    3















    I was trying to get a table like this



     1
    2 3 4
    5 6 7
    8 9 10


    with this function



    function myTable()
    t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
    for k = 1, #t do
    if k == 1 then
    tex.print(string.format([["& %d & \"]], t[1]))
    else
    tex.print(string.format([["%d & %d & %d \"]],
    t[k], t[k + 1], t[k + 2]))
    k = k + 2
    end
    end
    end


    but it says:



    ua:25: bad argument #4 to 'format' (number expected, got nil)


    How to do that? Looks like lua's got a weird way of implementing for loop, am I wrong?



    In my document I've:



    documentclassarticle
    usepackageharfload,fontspec,amsmath
    setmainfontKalpurush[RawFeature=mode=harf]
    parindent 0pt
    directluarequire("test.lua")

    begindocument

    begintable[h]
    centering
    begintabularccc
    directluamyTable()
    endtabular
    endtable

    enddocument









    share|improve this question


























      3












      3








      3








      I was trying to get a table like this



       1
      2 3 4
      5 6 7
      8 9 10


      with this function



      function myTable()
      t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
      for k = 1, #t do
      if k == 1 then
      tex.print(string.format([["& %d & \"]], t[1]))
      else
      tex.print(string.format([["%d & %d & %d \"]],
      t[k], t[k + 1], t[k + 2]))
      k = k + 2
      end
      end
      end


      but it says:



      ua:25: bad argument #4 to 'format' (number expected, got nil)


      How to do that? Looks like lua's got a weird way of implementing for loop, am I wrong?



      In my document I've:



      documentclassarticle
      usepackageharfload,fontspec,amsmath
      setmainfontKalpurush[RawFeature=mode=harf]
      parindent 0pt
      directluarequire("test.lua")

      begindocument

      begintable[h]
      centering
      begintabularccc
      directluamyTable()
      endtabular
      endtable

      enddocument









      share|improve this question
















      I was trying to get a table like this



       1
      2 3 4
      5 6 7
      8 9 10


      with this function



      function myTable()
      t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
      for k = 1, #t do
      if k == 1 then
      tex.print(string.format([["& %d & \"]], t[1]))
      else
      tex.print(string.format([["%d & %d & %d \"]],
      t[k], t[k + 1], t[k + 2]))
      k = k + 2
      end
      end
      end


      but it says:



      ua:25: bad argument #4 to 'format' (number expected, got nil)


      How to do that? Looks like lua's got a weird way of implementing for loop, am I wrong?



      In my document I've:



      documentclassarticle
      usepackageharfload,fontspec,amsmath
      setmainfontKalpurush[RawFeature=mode=harf]
      parindent 0pt
      directluarequire("test.lua")

      begindocument

      begintable[h]
      centering
      begintabularccc
      directluamyTable()
      endtabular
      endtable

      enddocument






      luatex lua harftex






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Jun 3 at 4:46







      Emon Haque

















      asked Jun 3 at 4:03









      Emon HaqueEmon Haque

      1116




      1116




















          1 Answer
          1






          active

          oldest

          votes


















          5














          From the lua.org site:




          ... you should never change the value of the control variable [of a for loop]: The effect of such changes is unpredictable.




          In short, it's not a good idea to increment the value of k (the control variable of your for loop) "by hand".



          I therefore think that you should use a while loop instead of a for loop. Then, increment k by 1 if k==1 is true and by 3 if it is not. Finally, you should omit the " symbols from the first argument of string.format; alternatively, omit the [[ and ]] directives and replace \ with \\.)



          enter image description here



          documentclassarticle
          usepackageluacode
          beginluacode
          function myTable()
          t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
          k=1
          while k<#t do
          if k == 1 then
          tex.print(string.format([[ & %d & \]], t[k]))
          k=k+1
          else
          tex.print(string.format([[%d & %d & %d \]],
          t[k], t[k + 1], t[k + 2]))
          k = k + 3
          end
          end
          end
          endluacode

          begindocument
          begintabularccc
          directluamyTable()
          endtabular
          enddocument





          share|improve this answer

























            Your Answer








            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "85"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f493898%2fformatting-table-with-a-lua-for-loop%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            5














            From the lua.org site:




            ... you should never change the value of the control variable [of a for loop]: The effect of such changes is unpredictable.




            In short, it's not a good idea to increment the value of k (the control variable of your for loop) "by hand".



            I therefore think that you should use a while loop instead of a for loop. Then, increment k by 1 if k==1 is true and by 3 if it is not. Finally, you should omit the " symbols from the first argument of string.format; alternatively, omit the [[ and ]] directives and replace \ with \\.)



            enter image description here



            documentclassarticle
            usepackageluacode
            beginluacode
            function myTable()
            t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
            k=1
            while k<#t do
            if k == 1 then
            tex.print(string.format([[ & %d & \]], t[k]))
            k=k+1
            else
            tex.print(string.format([[%d & %d & %d \]],
            t[k], t[k + 1], t[k + 2]))
            k = k + 3
            end
            end
            end
            endluacode

            begindocument
            begintabularccc
            directluamyTable()
            endtabular
            enddocument





            share|improve this answer





























              5














              From the lua.org site:




              ... you should never change the value of the control variable [of a for loop]: The effect of such changes is unpredictable.




              In short, it's not a good idea to increment the value of k (the control variable of your for loop) "by hand".



              I therefore think that you should use a while loop instead of a for loop. Then, increment k by 1 if k==1 is true and by 3 if it is not. Finally, you should omit the " symbols from the first argument of string.format; alternatively, omit the [[ and ]] directives and replace \ with \\.)



              enter image description here



              documentclassarticle
              usepackageluacode
              beginluacode
              function myTable()
              t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
              k=1
              while k<#t do
              if k == 1 then
              tex.print(string.format([[ & %d & \]], t[k]))
              k=k+1
              else
              tex.print(string.format([[%d & %d & %d \]],
              t[k], t[k + 1], t[k + 2]))
              k = k + 3
              end
              end
              end
              endluacode

              begindocument
              begintabularccc
              directluamyTable()
              endtabular
              enddocument





              share|improve this answer



























                5












                5








                5







                From the lua.org site:




                ... you should never change the value of the control variable [of a for loop]: The effect of such changes is unpredictable.




                In short, it's not a good idea to increment the value of k (the control variable of your for loop) "by hand".



                I therefore think that you should use a while loop instead of a for loop. Then, increment k by 1 if k==1 is true and by 3 if it is not. Finally, you should omit the " symbols from the first argument of string.format; alternatively, omit the [[ and ]] directives and replace \ with \\.)



                enter image description here



                documentclassarticle
                usepackageluacode
                beginluacode
                function myTable()
                t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
                k=1
                while k<#t do
                if k == 1 then
                tex.print(string.format([[ & %d & \]], t[k]))
                k=k+1
                else
                tex.print(string.format([[%d & %d & %d \]],
                t[k], t[k + 1], t[k + 2]))
                k = k + 3
                end
                end
                end
                endluacode

                begindocument
                begintabularccc
                directluamyTable()
                endtabular
                enddocument





                share|improve this answer















                From the lua.org site:




                ... you should never change the value of the control variable [of a for loop]: The effect of such changes is unpredictable.




                In short, it's not a good idea to increment the value of k (the control variable of your for loop) "by hand".



                I therefore think that you should use a while loop instead of a for loop. Then, increment k by 1 if k==1 is true and by 3 if it is not. Finally, you should omit the " symbols from the first argument of string.format; alternatively, omit the [[ and ]] directives and replace \ with \\.)



                enter image description here



                documentclassarticle
                usepackageluacode
                beginluacode
                function myTable()
                t = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
                k=1
                while k<#t do
                if k == 1 then
                tex.print(string.format([[ & %d & \]], t[k]))
                k=k+1
                else
                tex.print(string.format([[%d & %d & %d \]],
                t[k], t[k + 1], t[k + 2]))
                k = k + 3
                end
                end
                end
                endluacode

                begindocument
                begintabularccc
                directluamyTable()
                endtabular
                enddocument






                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Jun 3 at 7:12

























                answered Jun 3 at 4:17









                MicoMico

                294k32406797




                294k32406797



























                    draft saved

                    draft discarded
















































                    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.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f493898%2fformatting-table-with-a-lua-for-loop%23new-answer', 'question_page');

                    );

                    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







                    Popular posts from this blog

                    Wikipedia:Vital articles Мазмуну Biography - Өмүр баян Philosophy and psychology - Философия жана психология Religion - Дин Social sciences - Коомдук илимдер Language and literature - Тил жана адабият Science - Илим Technology - Технология Arts and recreation - Искусство жана эс алуу History and geography - Тарых жана география Навигация менюсу

                    Bruxelas-Capital Índice Historia | Composición | Situación lingüística | Clima | Cidades irmandadas | Notas | Véxase tamén | Menú de navegacióneO uso das linguas en Bruxelas e a situación do neerlandés"Rexión de Bruxelas Capital"o orixinalSitio da rexiónPáxina de Bruselas no sitio da Oficina de Promoción Turística de Valonia e BruxelasMapa Interactivo da Rexión de Bruxelas-CapitaleeWorldCat332144929079854441105155190212ID28008674080552-90000 0001 0666 3698n94104302ID540940339365017018237

                    What should I write in an apology letter, since I have decided not to join a company after accepting an offer letterShould I keep looking after accepting a job offer?What should I do when I've been verbally told I would get an offer letter, but still haven't gotten one after 4 weeks?Do I accept an offer from a company that I am not likely to join?New job hasn't confirmed starting date and I want to give current employer as much notice as possibleHow should I address my manager in my resignation letter?HR delayed background verification, now jobless as resignedNo email communication after accepting a formal written offer. How should I phrase the call?What should I do if after receiving a verbal offer letter I am informed that my written job offer is put on hold due to some internal issues?Should I inform the current employer that I am about to resign within 1-2 weeks since I have signed the offer letter and waiting for visa?What company will do, if I send their offer letter to another company