A few calendar apps allow a stretch of >4 weeks and there's this POC web version: https://madebyevan.com/calendar/app/ but all I can do for now is constantly switch from a Gantt app to my calendar app (Thunderbird or Google Calendar).
A few calendar apps allow a stretch of >4 weeks and there's this POC web version: https://madebyevan.com/calendar/app/ but all I can do for now is constantly switch from a Gantt app to my calendar app (Thunderbird or Google Calendar).
M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Months are offset so weekdays of columns are matching row to row. Looks nicer and more understandable also with weekend columns colored differently.I have a super simple HTML/JS/CSS variant of it on Gist here: https://gist.github.com/erkiesken/54bdbc069ba7df21eab6e4e480...
This is different from the OP in that it only works for one specific year, it needs to be generated anew for every single year.
I do think that having to "count rows" is a bit too much minimalism and probably we could have spared 3 characters per line in order to put month names:
2022 M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T
Jan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Feb 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
Mar 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Apr 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
May 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Jun 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Jul 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Aug 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Sep 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Oct 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Nov 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 29
Dec 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 $ mcal
June 2022
w| Mo Tu We Th Fr Sa Su
22| 1 2 3 4 5
23| 6 7 8 9 10 11 12
24| 13 14 15 16 17 18 19
25| 20 21 22 23 24 25 26
26| 27 28 29 30
July 2022
w| Mo Tu We Th Fr Sa Su
26| 1 2 3
27| 4 5 6 7 8 9 10
28| 11 12 13 14 15 16 17
29| 18 19 20 21 22 23 24
30| 25 26 27 28 29 30 31
August 2022
w| Mo Tu We Th Fr Sa Su
31| 1 2 3 4 5 6 7
32| 8 9 10 11 12 13 14
33| 15 16 17 18 19 20 21
34| 22 23 24 25 26 27 28
35| 29 30 31
[1] https://pastebin.com/BNWynUZTThis worked:
$ ncal -b -M -A2
June 2022 July 2022 August 2022
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
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 31 $ cat ~/.vdirsyncer/config
[general]
status_path = "~/.vdirsyncer/status/"
# Contacts
[storage contacts_personal_local]
type = "filesystem"
path = "~/.vdirsyncer/contacts/"
fileext = ".vcf"
[storage contacts_personal_remote]
type = "carddav"
url = "https://example.com/remote.php/carddav/"
username = "bloodninja"
password = "hunter2"
[pair contacts_personal]
a = "contacts_personal_local"
b = "contacts_personal_remote"
collections = ["from a", "from b"]
conflict_resolution = "b wins"
# Calendars
[storage calendar_personal_local]
type = "filesystem"
path = "~/.vdirsyncer/calendars/"
fileext = ".ics"
[storage calendar_personal_remote]
type = "caldav"
url = "https://example.com/remote.php/caldav/"
username = "bloodninja"
password = "hunter2"
[pair calendars_personal]
a = "calendar_personal_local"
b = "calendar_personal_remote"
collections = ["from a", "from b"]
conflict_resolution = "b wins"
metadata = ["color"]
Then I set up khal to read from the directory that vdirsync stores data in, and display three months with events and use the ISO-8601 date format: $ cat ~/.config/khal/config
[calendars]
[[personal]]
path = ~/.vdirsyncer/calendars/*
type = discover
[default]
default_calendar = personal
highlight_event_days = True
timedelta = 45d
[locale]
firstweekday = 6
timeformat = %H:%M
dateformat = %Y-%m-%d
longdateformat = %Y-%m-%d
datetimeformat = %Y-%m-%d %H:%M
longdatetimeformat = %Y-%m-%d %H:%M
default_timezone = Asia/Jerusalem
unicode_symbols = False
[highlight_days]
color = light green
method = fg
If you have any questions or suggestions I'll be watching this thread. cal -3
May 2022 June 2022 July 2022
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 1 2
8 9 10 11 12 13 14 5 6 7 8 9 10 11 3 4 5 6 7 8 9
15 16 17 18 19 20 21 12 13 14 15 16 17 18 10 11 12 13 14 15 16
22 23 24 25 26 27 28 19 20 21 22 23 24 25 17 18 19 20 21 22 23
29 30 31 26 27 28 29 30 24 25 26 27 28 29 30
31 $ LANG=C cal -3
May 2022 June 2022 July 2022
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 1 2
8 9 10 11 12 13 14 5 6 7 8 9 10 11 3 4 5 6 7 8 9
15 16 17 18 19 20 21 12 13 14 15 16 17 18 10 11 12 13 14 15 16
22 23 24 25 26 27 28 19 20 21 22 23 24 25 17 18 19 20 21 22 23
29 30 31 26 27 28 29 30 24 25 26 27 28 29 30
31 cal -w -n3
If you must have vertical: cal -w today; cal -w '+1 month'; cal -w '+2 month'
Output: June 2022
Mo Tu We Th Fr Sa Su
22 1 2 3 4 5
23 6 7 8 9 10 11 12
24 13 14 15 16 17 18 19
25 20 21 22 23 24 25 26
26 27 28 29 30
July 2022
Mo Tu We Th Fr Sa Su
26 1 2 3
27 4 5 6 7 8 9 10
28 11 12 13 14 15 16 17
29 18 19 20 21 22 23 24
30 25 26 27 28 29 30 31
August 2022
Mo Tu We Th Fr Sa Su
31 1 2 3 4 5 6 7
32 8 9 10 11 12 13 14
33 15 16 17 18 19 20 21
34 22 23 24 25 26 27 28
35 29 30 31https://davidseah.com/node/compact-calendar/
It has wide margin on the right for notes; gives you long-term-planning potential ;)
From my understanding Bürokalender as in office calendar is often used synonymously for this format in Germany, which can be seen as an indicator to it's ubiquity.
The format seems not to be that popular, elsewhere but at least in the UK it's marketed as shipping calendar, which was the use case for what it was invented for in 1937 by B. C. Heye & Co., now terminic GmbH
https://www.terminic-uk.eu/company
There are even versions showing 4 to 6 Months in a vertical layout.
https://www.printas.com/en/4-month-calendar/
going up to eight months:
cal -3https://www.wfb-bremen.de/de/page/stories/bremer-erfolgsgesc...
Edit: An image of the Fastmail calendar: https://www.fastmail.com/images/features/cal-1.png
The iOS calendar works this way (if I understand your use case properly).
At the top right is a back arrow, which, if you're in a more granular view (say, for a day or a week), will take you a view where you can scroll through all months, and if you go back one more time, scroll through all years. From one of these "zoomed out" views, you can dive back into any more detailed view.
https://flexibits.com/blog/2022/02/fantastical-scheduling-ar...
Months are laid out in clean no-nonsense way, and it's a very lightweight app. You can click on dates to mark them to get some bearings while planning things on a Calendar, kinda like pointing a pen at a date. Drag to mark multiple dates too!
No logins, no extra engagement features, and nothing much.
Previously on HN: https://news.ycombinator.com/item?id=30851174
I wanted both infinite scrolling with no month breaks, as well as the ability to fluidly zoom out to see multiple months worth.
Someday. I'd be willing to put the work in if a front end expert wants to help!
I used to do these by hand when in school, because I didn't want assignments hiding on the next page.