• Products
    • Isadora
    • Get It
    • ADD-ONS
    • IzzyCast
    • Get It
  • Forum
  • Help
  • Werkstatt
  • Newsletter
  • Impressum
  • Dsgvo
  • Press
  • Isadora
  • Get It
  • ADD-ONS
  • IzzyCast
  • Get It
  • Press
  • Dsgvo
  • Impressum

Navigation

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Tags

    Use Javascript to select a line of Text

    How To... ?
    7
    22
    13126
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      TonariNoSeinfeld last edited by

      I have a list of numbers in the Text actor. Sometimes Javascript does not output the correct number. I think it may be related to editing the Text, but I made sure the Javascript input is updated.

      1 Reply Last reply Reply Quote 0
      • D
        DillTheKraut last edited by

        Hello Guys,

        I liked the Java Script solution a lot and wanted to modify it a bit.

        I would like to split the text lines only at two or more line breaks or along empty lines.

        I already tried a lot of combinations found at other Scripting forums like txt.split("\n\n"), txt.split("\n{2}"), txt.split("\\n\\n") and others. All of those solutions gave me errors while it worked for other people.

        Is it maybe a limitation of the Java Version Izzy is using?

        Does any of you maybe have a solution for this?

        1 Reply Last reply Reply Quote 1
        • Juriaan
          Juriaan Tech Staff last edited by

          Hi there @DillTheKraut,


          Any reason why you prefer the JavaScript option ? The Data Array actor has support for Text files since Izzy 2.6. Really nice actor that I use a lot for external file communication :)

          Isadora 3.1.1, Dell XPS 17 9710, Windows 10
          Interactive Performance Designer, Freelance Artist, Scenographer, Lighting Designer, TroikaTronix Community moderator
          Always in for chatting about interaction in space / performance design. Drop me an email at hello@juriaan.me

          D 1 Reply Last reply Reply Quote 2
          • D
            DillTheKraut @Juriaan last edited by

            @juriaan

            Yes, there is a reason. I try to read data from a pre defined text file. Named .edl files, containing cue data stretched sometimes over two lines, some times only one.

            As the data array needs specifically defined separation and works by single line only. It doesn't realy help.

            1 Reply Last reply Reply Quote 1
            • Juriaan
              Juriaan Tech Staff last edited by

              Okay, could you share the file that you wish to read. So that we can give you hand finding the right  way ;)

              Isadora 3.1.1, Dell XPS 17 9710, Windows 10
              Interactive Performance Designer, Freelance Artist, Scenographer, Lighting Designer, TroikaTronix Community moderator
              Always in for chatting about interaction in space / performance design. Drop me an email at hello@juriaan.me

              D 1 Reply Last reply Reply Quote 1
              • D
                DillTheKraut @Juriaan last edited by

                @juriaan

                I will, but I'm on not at my computer at the moment.

                But I as well would like to understand if the way I tried should be right, or if there are differences between java versions. But maybe there is something else wrong.

                DusX 1 Reply Last reply Reply Quote 1
                • DusX
                  DusX Tech Staff @DillTheKraut last edited by DusX

                  @dillthekraut

                  It's not any difference between Javascript versions. It is likely that your text file is using additional line breaks.

                  Opening it in a text editor like notepad++ will allow you to turn on viewing of invisible characters. Then you can edit the JS code to suite.

                  It will likely be something like:  txt.split("\n\r")

                  Troikatronix Technical Support

                  • New Support Ticket Link: https://support.troikatronix.com/support/tickets/new
                  • My Add-ons: https://troikatronix.com/add-ons/?u=dusx
                  • Profession Services: https://support.troikatronix.com/support/solutions/articles/13000109444-professional-services

                  Running: Win 11 64bit, i7, M.2 PCIe SSD's, 32gb DDR4, nVidia GTX 4070 | located in Ontario Canada.

                  D 1 Reply Last reply Reply Quote 1
                  • D
                    DillTheKraut @DusX last edited by

                    @dusx Thanks, though I was sure to have tried it already. Strange enough, I had following experience:

                    As you see in the picture, notepad++ is showing all breaks are equally CR/LF. But in the Java actor single \n worked as well as single \r. But giving me every single line, including empty ones as separate Array Items.

                    I thought to have tried \n\r with the same result (but probably did \r\n instead of \n\r). While trying it again after your post, it now gives me the exactly wanted result, filling the array items with combined Data lines ignoring empty ones. Interestingly it seems to keeps the break between the data lines. See the results in the pictures...

                    Honestly I don't really understand, what's happening here!

                    ----

                    DusX 1 Reply Last reply Reply Quote 1
                    • DusX
                      DusX Tech Staff @DillTheKraut last edited by DusX

                      @dillthekraut

                      OK, so.
                      NotePad++ is showing CR LF, as the document end of line.
                      This matches \r\n ( \r = Carriage Return, \n = Line Feed )

                      reference: https://en.wikipedia.org/wiki/...

                      So: txt.split("\r\n") should match that every end of line (but splitting on this will not remove any trailing sets from doubles)

                      Now if you want to split the text only one DOUBLE breaks... you are looking at CR LF CR LF

                      So try: txt.split("\r\n\r\n")

                      Troikatronix Technical Support

                      • New Support Ticket Link: https://support.troikatronix.com/support/tickets/new
                      • My Add-ons: https://troikatronix.com/add-ons/?u=dusx
                      • Profession Services: https://support.troikatronix.com/support/solutions/articles/13000109444-professional-services

                      Running: Win 11 64bit, i7, M.2 PCIe SSD's, 32gb DDR4, nVidia GTX 4070 | located in Ontario Canada.

                      D 1 Reply Last reply Reply Quote 1
                      • D
                        DillTheKraut @DusX last edited by

                        @dusx thank you! I guess I just switched \r with \n bevor. And now I know what's happening in the different cases and why ("\n\r") is doing the Job kind as well.

                        In between (.../) shows the match of regex and therefore the position of the split:

                        ("\r\n\r\n") =
                        Line one text 'CR LF'
                        line two text (CR LF
                        CR LF/)
                        third line of text

                        ("\r\n") =
                        Line one text (CR LF/)
                        line two text (CR LF/)
                        (CR LF/)
                        third line of text

                        ("\n\r") = 
                        Line one text 'CR LF'
                        line two text 'CR' (LF
                        CR/)
                        'LF'
                        third line of text

                        1 Reply Last reply Reply Quote 1
                        • First post
                          Last post