[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-users] Shortening commands for runInTerminal



Dear Wouter,

I have rewritten yours as follows:

(
 ~numberOfPhysicalInputs = 2;

 ~numberOfPhysicalOutpus = 2;

 ~numberOfJackPorts = 64;

 ~arrayOfCients = [ "system:capture_",
                    "scsynth:%",
                    "scsynth-01:%",
                    "scsynth-02:%",
                    "scsynth-03:%",
                    "system:playback_"
                  ];
 ~jack_connect = ~arrayOfCients[1..].collect(
                  { |item, i|
                    if ( item == "scsynth:%",
                         { ~numberOfPhysicalInputs.collect(
                           { |j|
                             "jack_connect % %;".format(
                               (~arrayOfCients[i]).format( "out" ) ++ (j+1),
                               if ( item == "system:playback_",
                                    { item.format( "in" ) ++ ( j % 8 + 1)},
                                    { item.format( "in" ) ++ ( j+1)}
                                  )
                                                       )
                           }
                                                          )
                  },
                  { ~numberOfJackPorts.collect(
                    { |j|
                      "jack_connect % %;".format(
                        (~arrayOfCients[i]).format( "out" ) ++ (j+1),
                        if ( item == "system:playback_",
                             { item.format( "in" ) ++ ( j %
~numberOfPhysicalOutpus + 1)
                             },
                             {item.format( "in" ) ++ ( j+1)}
                           )
                                                )
                    }
                                              );
                                }
                             )
                  }
                                            ).flatten(1).join( "\n" );
      
      ~jack_connect.runInTerminal
)

It would be good, someone has an ambition to write a class for JackOsX with
the code above or the code below:

~jack_connect = CollStream.new;
(1..4).do { |i| ~jack_connect << "jack_connect system:capture_%
scsynth:in%;\n".format(i, i)};
(1..64).do { |i| ~jack_connect << "jack_connect scsynth:out%
scsynth-01:in%;\n".format(i, i)};
(1..64).do { |i| ~jack_connect << "jack_connect scsynth-01:out%
scsynth-02:in%;\n".format(i, i);};
(1..64).do { |i| ~jack_connect << "jack_connect scsynth-02:out%
scsynth-03:in%;\n".format(i, i);};
(1..64).do { |i| a = i - 1 % 8 + 1 ; ~jack_connect << "jack_connect
scsynth-03:out% system-playback_:in%;\n".format(i, a);};

Dear Wouter and dearJames
Thanks for the codes!


On 9/21/10 11:14 PM, "Wouter Snoei" <mailinglists@xxxxxxxxxxxxxx> wrote:

> Hi PyoungRyang,
> 
> well, how about this:
> 
> (
> x = [ "scsynth:%", "scsynth-01:%", "scsynth-02:%", "scsynth-03:%",
> "system:playback_" ];
> 
> y = x[1..].collect({ |item, i|
> 12.collect({ |j|
> "jack_connect % %;".format(
> (x[i]).format("out") ++ (j+1),
> item.format("in") ++ (j+1) )
> }); 
> }).flatten(1).join( "\n" );
> )
> 
> y.runInTerminal
> 
> cheers,
> Wouter
> 
> Op 19 sep 2010, om 22:07 heeft PyoungRyang Ko het volgende geschreven:
> 
>> Dear advanced users,
>> 
>> Can I shorten the following?
>> I cannot write with "12.collect({ |i|....." method.
>> 
>> (
>> "jack_connect scsynth:out1 scsynth-01:in1;
>> jack_connect scsynth:out2 scsynth-01:in2;
>> jack_connect scsynth:out3 scsynth-01:in3;
>> jack_connect scsynth:out4 scsynth-01:in4;
>> jack_connect scsynth:out5 scsynth-01:in5;
>> jack_connect scsynth:out6 scsynth-01:in6;
>> jack_connect scsynth:out7 scsynth-01:in7;
>> jack_connect scsynth:out8 scsynth-01:in8;
>> jack_connect scsynth:out9 scsynth-01:in9;
>> jack_connect scsynth:out10 scsynth-01:in10;
>> jack_connect scsynth:out11 scsynth-01:in11;
>> jack_connect scsynth:out12 scsynth-01:in12;
>> jack_connect scsynth-01:out1 scsynth-02:in1;
>> jack_connect scsynth-01:out2 scsynth-02:in2;
>> jack_connect scsynth-01:out3 scsynth-02:in3;
>> jack_connect scsynth-01:out4 scsynth-02:in4;
>> jack_connect scsynth-01:out5 scsynth-02:in5;
>> jack_connect scsynth-01:out6 scsynth-02:in6;
>> jack_connect scsynth-01:out7 scsynth-02:in7;
>> jack_connect scsynth-01:out8 scsynth-02:in8;
>> jack_connect scsynth-01:out9 scsynth-02:in9;
>> jack_connect scsynth-01:out10 scsynth-02:in10;
>> jack_connect scsynth-01:out11 scsynth-02:in11;
>> jack_connect scsynth-01:out12 scsynth-02:in12;
>> jack_connect scsynth-02:out1 scsynth-03:in1;
>> jack_connect scsynth-02:out2 scsynth-03:in2;
>> jack_connect scsynth-02:out3 scsynth-03:in3;
>> jack_connect scsynth-02:out4 scsynth-03:in4;
>> jack_connect scsynth-02:out5 scsynth-03:in5;
>> jack_connect scsynth-02:out6 scsynth-03:in6;
>> jack_connect scsynth-02:out7 scsynth-03:in7;
>> jack_connect scsynth-02:out8 scsynth-03:in8;
>> jack_connect scsynth-02:out9 scsynth-03:in9;
>> jack_connect scsynth-02:out10 scsynth-03:in10;
>> jack_connect scsynth-02:out11 scsynth-03:in11;
>> jack_connect scsynth-02:out12 scsynth-03:in12;
>> jack_connect scsynth-03:out1 system:playback_1;
>> jack_connect scsynth-03:out2 system:playback_2;
>> jack_connect scsynth-03:out3 system:playback_3;
>> jack_connect scsynth-03:out4 system:playback_4;
>> jack_connect scsynth-03:out5 system:playback_5;
>> jack_connect scsynth-03:out6 system:playback_6;
>> jack_connect scsynth-03:out7 system:playback_7;
>> jack_connect scsynth-03:out8 system:playback_8;
>> jack_connect scsynth-03:out9 system:playback_9;
>> jack_connect scsynth-03:out10 system:playback_10;
>> jack_connect scsynth-03:out11 system:playback_11;
>> jack_connect scsynth-03:out12 system:playback_12;
>> ".runInTerminal
>> )
>> 
>> Best,
>> prko
>> 
>> 
>> 
>> _______________________________________________
>> sc-users mailing list
>> 
>> info (subscription, etc.):
>> http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
>> archive: https://listarc.bham.ac.uk/marchives/sc-users/
>> search: https://listarc.bham.ac.uk/lists/sc-users/search/
> 
> 
> _______________________________________________
> sc-users mailing list
> 
> info (subscription, etc.):
> http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
> archive: https://listarc.bham.ac.uk/marchives/sc-users/
> search: https://listarc.bham.ac.uk/lists/sc-users/search/



_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/