Jump to content

Calendar - for "REAL" programmers: Difference between revisions

J: bugfix in "real" version -- and task requires format for 132 column display
(J: bugfix in "real" version -- and task requires format for 132 column display)
Line 380:
H=. 'SU MO TU WE TH FR SA',:"1~H
C=: H <@,"(2) 12 6 21 }."1@($,) (' ',3 ":,.#\#~31) {~ R
D=: 0 ": -@<.@%&21@+&1@[ ]\ C@]
L=: |."0 1~ +/ .(*./\@:=)"1&' '
E=: (|."0 1~ _2 <.@%~ +/ .(*./\.@:=)"1&' ')@:({."1) L
Line 387:
Here's an example calendar (the first line <code>80 F 1969</code> being the command that build this calendar):
 
<lang> 80132 F 1969
[INSERT SNOOPY HERE]
1969
┌────────────────────┬────────────────────┬────────────────────┬────────────────────┬────────────────────┬────────────────────┐
┌────────────────────┬────────────────────┬────────────────────┐
│ JAN JANFEBFEBMARMARAPR MAY │ JUN │
│SU MO TU WE TH │SUFR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3 4│ 1│ 1│ 1 2 3 4 5│ 1 2 3│ 1 2 3 4 5 6 7│
│ 5 6 7 8 9 10 11│ 2 3 4 5 6 7 8│ 2 3 4 5 6 7 8│ 6 7 8 9 10 11 12│ 4 5 6 7 8 9 10│ 8 9 10 11 12 13 14│
│12 13 14 15 16 17 18│ 9 10 11 12 13 14 15│ 9 10 11 12 13 14 15│15│13 14 15 16 17 18 19│11 12 13 14 15 16 17│15 16 17 18 19 20 21│
│19 20 21 22 23 24 25│16 17 18 19 20 21 22│16 17 18 19 20 21 22│22│20 21 22 23 24 25 26│18 19 20 21 22 23 24│22 23 24 25 26 27 28│
│26 27 28 29 30 31 │23 24 25 26 27 28 │23 24 25 26 27 28 29│29│27 28 29 30 │25 26 27 28 29 30 31│29 30
│30 31│30 31
├────────────────────┼────────────────────┼────────────────────┼────────────────────┼────────────────────┼────────────────────┤
├────────────────────┼────────────────────┼────────────────────┤
│ JUL FEBAUGMARSEPAPROCT NOV │ DEC │
│SU MO TU WE TH │SUFR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
1 2 3 4 5│ 1│ 1 2│ 1 2 3 4 5 6│ 1│ 1 2 3 44│ 5│ 1│ 1 2 3 4 5 6│
6 7 8 2 9 10 11 12│ 3 4 5 6 7 8│8 2 9│ 37 48 59 10 611 12 713│ 5 8│ 6 7 8 9 10 1111│ 12│2 3 4 5 6 7 8│ 7 8 9 10 11 12 13│
│13 14 15 16 17 18 9 1019│10 11 12 13 14 15│15 916│14 1015 1116 1217 1318 1419 15│1320│12 13 14 15 16 17 1818│ 19│9 10 11 12 13 14 15│14 15 16 17 18 19 20│
│20 21 22 23 24 │1625 1726│17 18 19 20 21 22│1622 1723│21 1822 1923 2024 2125 22│2026 27│19 20 21 22 23 24 2525│16 26│17 18 19 20 21 22│21 22 23 24 25 26 27│
│27 28 29 30 31 │23 24 │24 25 26 27 28 29 30│28 │2329 2430 25 26 27 28 29│27 │26 27 28 29 30 31 │23 24 25 26 27 28 29│28 29 30 31
│31 │30 31 │30
└────────────────────┴────────────────────┴────────────────────┴────────────────────┴────────────────────┴────────────────────┘
├────────────────────┼────────────────────┼────────────────────┤
</lang>
│ MAR │ APR │ MAY │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1│ 1 2 3 4 5│ 1 2 3│
│ 2 3 4 5 6 7 8│ 6 7 8 9 10 11 12│ 4 5 6 7 8 9 10│
│ 9 10 11 12 13 14 15│13 14 15 16 17 18 19│11 12 13 14 15 16 17│
│16 17 18 19 20 21 22│20 21 22 23 24 25 26│18 19 20 21 22 23 24│
│23 24 25 26 27 28 29│27 28 29 30 │25 26 27 28 29 30 31│
│30 31 │ │ │
├────────────────────┼────────────────────┼────────────────────┤
│ APR │ MAY │ JUN │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3 4 5│ 1 2 3│ 1 2 3 4 5 6 7│
│ 6 7 8 9 10 11 12│ 4 5 6 7 8 9 10│ 8 9 10 11 12 13 14│
│13 14 15 16 17 18 19│11 12 13 14 15 16 17│15 16 17 18 19 20 21│
│20 21 22 23 24 25 26│18 19 20 21 22 23 24│22 23 24 25 26 27 28│
│27 28 29 30 │25 26 27 28 29 30 31│29 30 │
│ │ │ │
├────────────────────┼────────────────────┼────────────────────┤
│ MAY │ JUN │ JUL │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3│ 1 2 3 4 5 6 7│ 1 2 3 4 5│
│ 4 5 6 7 8 9 10│ 8 9 10 11 12 13 14│ 6 7 8 9 10 11 12│
│11 12 13 14 15 16 17│15 16 17 18 19 20 21│13 14 15 16 17 18 19│
│18 19 20 21 22 23 24│22 23 24 25 26 27 28│20 21 22 23 24 25 26│
│25 26 27 28 29 30 31│29 30 │27 28 29 30 31 │
│ │ │ │
├────────────────────┼────────────────────┼────────────────────┤
│ JUN │ JUL │ AUG │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3 4 5 6 7│ 1 2 3 4 5│ 1 2│
│ 8 9 10 11 12 13 14│ 6 7 8 9 10 11 12│ 3 4 5 6 7 8 9│
│15 16 17 18 19 20 21│13 14 15 16 17 18 19│10 11 12 13 14 15 16│
│22 23 24 25 26 27 28│20 21 22 23 24 25 26│17 18 19 20 21 22 23│
│29 30 │27 28 29 30 31 │24 25 26 27 28 29 30│
│ │ │31 │
├────────────────────┼────────────────────┼────────────────────┤
│ JUL │ AUG │ SEP │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3 4 5│ 1 2│ 1 2 3 4 5 6│
│ 6 7 8 9 10 11 12│ 3 4 5 6 7 8 9│ 7 8 9 10 11 12 13│
│13 14 15 16 17 18 19│10 11 12 13 14 15 16│14 15 16 17 18 19 20│
│20 21 22 23 24 25 26│17 18 19 20 21 22 23│21 22 23 24 25 26 27│
│27 28 29 30 31 │24 25 26 27 28 29 30│28 29 30 │
│ │31 │ │
├────────────────────┼────────────────────┼────────────────────┤
│ AUG │ SEP │ OCT │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2│ 1 2 3 4 5 6│ 1 2 3 4│
│ 3 4 5 6 7 8 9│ 7 8 9 10 11 12 13│ 5 6 7 8 9 10 11│
│10 11 12 13 14 15 16│14 15 16 17 18 19 20│12 13 14 15 16 17 18│
│17 18 19 20 21 22 23│21 22 23 24 25 26 27│19 20 21 22 23 24 25│
│24 25 26 27 28 29 30│28 29 30 │26 27 28 29 30 31 │
│31 │ │ │
├────────────────────┼────────────────────┼────────────────────┤
│ SEP │ OCT │ NOV │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3 4 5 6│ 1 2 3 4│ 1│
│ 7 8 9 10 11 12 13│ 5 6 7 8 9 10 11│ 2 3 4 5 6 7 8│
│14 15 16 17 18 19 20│12 13 14 15 16 17 18│ 9 10 11 12 13 14 15│
│21 22 23 24 25 26 27│19 20 21 22 23 24 25│16 17 18 19 20 21 22│
│28 29 30 │26 27 28 29 30 31 │23 24 25 26 27 28 29│
│ │ │30 │
├────────────────────┼────────────────────┼────────────────────┤
│ OCT │ NOV │ DEC │
│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│SU MO TU WE TH FR SA│
│ 1 2 3 4│ 1│ 1 2 3 4 5 6│
│ 5 6 7 8 9 10 11│ 2 3 4 5 6 7 8│ 7 8 9 10 11 12 13│
│12 13 14 15 16 17 18│ 9 10 11 12 13 14 15│14 15 16 17 18 19 20│
│19 20 21 22 23 24 25│16 17 18 19 20 21 22│21 22 23 24 25 26 27│
│26 27 28 29 30 31 │23 24 25 26 27 28 29│28 29 30 31 │
│ │30 │ │
└────────────────────┴────────────────────┴────────────────────┘ </lang>
 
Note that this version will display properly in a width of 20.
6,962

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.