Tytuł, miejsce, data i godzina, strefa czasowa, powtarzanie, zaproszeni, przypomnienia i notatki — następnie pobierz plik .ics lub otwórz go bezpośrednio w kalendarzu. Możesz też wkleić harmonogram albo dołączyć dokument lub zdjęcie, aby utworzyć wiele wydarzeń naraz.
Jak sprawić, by wydarzenie w kalendarzu powtarzało się co tydzień lub co miesiąc?
Powtarzanie to jedna linia w pliku .ics: RRULE:FREQ=WEEKLY, z INTERVAL dla co drugiego lub trzeciego okresu oraz COUNT lub UNTIL, by zakończyć serię. Formularz ICS Maker ustawia częstotliwość (dziennie, co tydzień, co miesiąc, co rok), interwał oraz to, czy seria nigdy się nie kończy, kończy się po określonej liczbie wystąpień, czy trwa do konkretnej daty — i zapisuje regułę RRULE w pobieranym pliku, którą odczytujący kalendarz sam rozwija, dzięki czemu seria dowolnej długości pozostaje jednym niewielkim plikiem. Wybór konkretnego dnia nie jest dostępny w formularzu i wymaga jednolinijkowej edycji pliku: FREQ=MONTHLY;BYMONTHDAY=-1 dla ostatniego dnia miesiąca, BYDAY=1MO dla pierwszego poniedziałku, BYDAY=MO,TU,WE,TH,FR tylko dla dni roboczych. Ta strona zawiera listę dwunastu takich reguł do wklejenia.
Reguła wewnątrz pliku
Powtarzanie to jedna linia: RRULE:FREQ=WEEKLY. Kalendarze odczytują ją i same generują wystąpienia, dlatego powtarzające się wydarzenie pozostaje jednym niewielkim plikiem bez względu na to, jak długo trwa. Reguła może również zawierać interwał (INTERVAL=2 dla co dwóch tygodni), datę zakończenia (UNTIL) lub limit (COUNT).
Kreator zapisuje to wszystko. Wybierz częstotliwość, ustaw interwał — co 2 tygodnie, co 3 miesiące — i zdecyduj, czy seria nigdy się nie kończy, kończy się po określonej liczbie wystąpień, czy trwa do danej daty. Wygenerowana linia jest standardowa, więc kalendarz otwierający plik tworzy dokładnie taką serię, jaka została opisana.
Reguły powtarzania do wklejenia
Formularz obejmuje częstotliwość, interwał i sposób zakończenia serii. Wybór konkretnego dnia — ostatniego dnia miesiąca, pierwszego poniedziałku, samych dni roboczych — wymaga jednolinijkowej edycji pliku po jego pobraniu: otwórz go w edytorze tekstu i zastąp linię RRULE: jedną z poniższych. Wszystkie te elementy pochodzą z RFC 5545, więc Google Calendar, Outlook, Apple Calendar i Thunderbird odczytują je tak samo.
- Co tydzień, ten sam dzień
RRULE:FREQ=WEEKLY- Co drugi tydzień (co dwa tygodnie)
RRULE:FREQ=WEEKLY;INTERVAL=2- Każdego dnia roboczego, od poniedziałku do piątku
RRULE:FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR- 1. dnia każdego miesiąca
RRULE:FREQ=MONTHLY;BYMONTHDAY=1- Ostatniego dnia każdego miesiąca
RRULE:FREQ=MONTHLY;BYMONTHDAY=-1- Pierwszego poniedziałku każdego miesiąca
RRULE:FREQ=MONTHLY;BYDAY=1MO- Ostatniego piątku każdego miesiąca
RRULE:FREQ=MONTHLY;BYDAY=-1FR- Ostatniego dnia roboczego każdego miesiąca
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1- Co trzy miesiące (kwartalnie)
RRULE:FREQ=MONTHLY;INTERVAL=3- Co roku, w dniu rozpoczęcia
RRULE:FREQ=YEARLY- Dwanaście razy, a potem koniec
RRULE:FREQ=MONTHLY;COUNT=12- Co tydzień do ustalonej daty
RRULE:FREQ=WEEKLY;UNTIL=20261231T235959Z
Jak te elementy się łączą
FREQ to jedyny wymagany element; wszystko inne go zawęża. INTERVAL pomija okresy, więc FREQ=WEEKLY;INTERVAL=2 oznacza co drugi tydzień, a nie co drugi dzień. BYDAY przyjmuje dwuliterowe kody dni tygodnia, a liczba przed nimi wskazuje konkretne wystąpienie w miesiącu — 1MO to pierwszy poniedziałek, -1FR ostatni piątek. BYMONTHDAY liczy dni miesiąca, a przy wartości ujemnej liczy wstecz od końca, co sprawia, że BYMONTHDAY=-1 jest niezawodnym sposobem na wyrażenie „ostatniego dnia”. BYSETPOS wybiera spośród dat dopasowanych przez resztę reguły w danym okresie, więc lista dni roboczych z BYSETPOS=-1 wskazuje ostatni dzień roboczy.
Którą częstotliwość wybrać
Częstotliwość tygodniowa jest zakotwiczona w dniu tygodnia wybranym jako data rozpoczęcia, a miesięczna — w dacie. Wydarzenie miesięczne 31. dnia to klasyczna pułapka: miesiące, które nie mają tego dnia, są przez większość kalendarzy pomijane, a nie przesuwane, dlatego użyj BYMONTHDAY=-1, gdy chodzi o ostatni dzień każdego miesiąca, zamiast rozpoczynać serię 31. dnia i liczyć na najlepsze.
Pytania
- Jak zatrzymać powtarzające się wydarzenie?
- Ustaw „Zakończenie powtarzania” na liczbę wystąpień lub na ostatnią datę, a plik będzie zawierał odpowiednio COUNT lub UNTIL. Pozostaw ustawienie Nigdy, a seria będzie trwać, dopóki nie zakończysz jej we własnym kalendarzu, który zawsze może edytować zaimportowaną serię.
- Jaka jest różnica między COUNT a UNTIL?
- COUNT zatrzymuje serię po określonej liczbie wystąpień — COUNT=12 daje dokładnie dwanaście i ani jednego więcej, niezależnie od tego, jakie wyjdą daty. UNTIL zatrzymuje ją w konkretnym momencie, zapisanym jako znacznik czasu UTC, np. UNTIL=20261231T235959Z, a każde wystąpienie, które przypadłoby po tej dacie, po prostu się nie odbywa. Obie robią to samo, tylko z przeciwnych stron, a RFC 5545 nie pozwala użyć ich obu w jednej regule.
- Czy mogę ustawić powtarzanie wydarzenia co drugi tydzień?
- Tak — wybierz Co tydzień i ustaw interwał na 2. Plik otrzyma INTERVAL=2 w regule powtarzania, którą każdy kalendarz odczyta jako co dwa tygodnie. To samo działa dla co 3 dni, co 6 miesięcy i tak dalej.
- Jak ustawić powtarzanie w ostatnim dniu każdego miesiąca?
- Użyj FREQ=MONTHLY;BYMONTHDAY=-1, co wymaga ręcznej edycji pobranego pliku — formularz ustawia częstotliwość, interwał i zakończenie, ale nie to, który dzień miesiąca zostaje wybrany. Liczby ujemne liczą wstecz od końca, więc trafiają na 28., 29., 30. lub 31. dzień, zależnie od potrzeb danego miesiąca. Częstym błędem jest zamiast tego rozpoczynanie serii miesięcznej 31. dnia: większość kalendarzy pomija miesiące, które nie mają 31. dnia, zamiast przesuwać wydarzenie.
- Jak pominąć jedno wystąpienie serii?
- Dodaj linię EXDATE obok RRULE, podając godzinę rozpoczęcia wystąpienia do usunięcia — EXDATE:20261225T090000Z usuwa tylko tę jedną instancję, pozostawiając resztę. Aby je przenieść zamiast usuwać, połącz EXDATE z drugim komponentem VEVENT o tym samym UID i z RECURRENCE-ID wskazującym na pierwotny termin.
- Czy powtarzanie przetrwa import do Outlooka lub Google?
- Tak. RRULE jest częścią RFC 5545 i obie te aplikacje ją odczytują, podobnie jak Apple Calendar i Thunderbird. Podczas importu rozwijają serię, zamiast zapisywać każde wystąpienie osobno.