Re:Sed challenge: join cal -y months into a single column
by rak1507 on Friday November 19, 2021 @09:23AM
(#29277433)
It (should be) purely ⎕IO←0. https://tio.run/##jZK7SgNBFIb7fYrTbQKbyyYINum1srBNM27G7OLemJ...
Potentially cal -y on macOS produces a different shape? What's ⍴↑cal?
Try doing cal←⎕SE.UCMD'Calendar 2021' and replace ↑2↓cal with 1↓cal - potentially that'll work?
Re:Sed challenge: join cal -y months into a single column
by markjreed on Friday November 19, 2021 @10:33AM
(#29278201)
⍴↑⎕sh 'cal -y' is 36 66. ⍴⎕SE.UCMD'Calendar 2021' is 33 66. Hm.
What system are you on? On Ubuntu, cal -y | wc -l also gives me 36.
Re:Sed challenge: join cal -y months into a single column
by rak1507 on Friday November 19, 2021 @01:50PM
(#29280794)
I was just testing with TIO, it looks like the version of `cal` on there is different to the common one. The ⎕SE.UCMD'Calendar 2021' version should work cross platform (as it doesn't rely on anything external).
Similarly, the lines assignment needed to be {⍵⊂⍨0=9|⍳≢⍵}⍤1⍉bymonth.
After those changes it worked OMM, but the month names were appended directly to the end of the first Saturday's date with no space (e.g. "1 2January"). So I changed ↑months to ↑(' ',¨months) in the last line to insert a space there (there's likely a better way to do that; I'm still pretty new at APL).
I added `-h` to make sure `cal` didn't highlight today's date, which can throw things off, and eliminated intermediate vars that were only used once; this was what I wound up with (works from a clean ws in Dyalog OMM):