Come si ripete un evento del calendario ogni x secondi in macOS Sierra?

0

Sto provando ad impostare gli eventi del calendario nel calendario di macOS Sierra che ripetono ogni 2.551.440 secondi (che sembra essere il periodo sinodico della Luna).

In definitiva, voglio un calendario che fornisca l'innalzamento della Luna e tempi stabiliti per la mia posizione, e deve anche elencare la fase lunare (ad esempio Full Moon, New Moon, ecc.). Ho trovato molti esempi su Internet in cui le persone hanno creato manualmente gli eventi, ma questo è incredibilmente noioso (un evento al giorno per anni!), Ed è basato su diversi fusi orari (e quindi non mi servono).

Ho visto da le specifiche ICS che il formato file stesso supporta eventi che ricorrono ogni x secondi. Ho quindi esportato un evento come file ICS e poi modificato il file ICS in TextEdit, ma devo aver sbagliato il codice, in quanto non è stato reimportato in macOS Calendar con l'intervallo di ripetizione corretto. Invece, ha importato un singolo evento senza ripetizioni.

Qualcuno può spiegare come fare per fare questo?

Ho trovato il generatore RRULE , ma supporta solo intervalli orari, non secondi, e così è non abbastanza preciso per i miei bisogni.

Ho preso in considerazione l'esecuzione di uno script bash per generare l'evento (che verrebbe eseguito come cron job ogni 2.551.440 secondi), ma ciò darebbe solo un preavviso di un mese. Preferirei averlo impostato a tempo indeterminato.

Un'altra opzione potrebbe essere quella di scrivere uno script in Python per creare singoli file di eventi ICS; anche questo sarebbe noioso ...

Capisco che questo non può essere fatto direttamente in Calendar; molto probabilmente la soluzione sarà la modifica manuale di ogni file ICS per impostare correttamente la ricorrenza, e quindi l'importazione in Calendar ... Non so come ...

Grazie in anticipo per qualsiasi idea.

    
posta ZPMMaker 29.11.2016 - 10:53
fonte

1 risposta

0

So che questa non sarà la risposta che stavi cercando.

Nella tua domanda hai affermato:

I then exported an event as an ICS file, and then edited the ICS file in TextEdit, but I must've got the code wrong, as it didn't re-import into macOS Calendar with the correct repeat interval.

Sfortunatamente probabilmente non ha sbagliato il codice.

Sebbene tu abbia ragione nel dire che le specifiche ICS effettivamente supportano gli intervalli fino al secondo, il problema è che l'app di calendario macOS predefinita non supporta questo (almeno non in termini di ripeti o valori ricorrenza ). Quindi, quello che vuoi fare non è possibile con l'app di calendario macOS predefinita. In realtà, il problema che hai è duplice, in quanto l'app Calendario non riconosce gli intervalli:

  1. più breve di un giorno
  2. non rappresentato come numeri interi

Per spiegarlo meglio, il primo problema sopra riportato non sarebbe necessariamente un problema se l'app Calendario accettasse un valore decimale con un numero di punti decimali sufficiente, perché in quel caso potreste inserire un evento che si ripeteva ogni 29,53 giorni.

Tuttavia, anche se l'app ha accettato un valore decimale, è probabile che sia limitata a non più di una posizione decimale, che non sarà sufficientemente precisa quando si tratta di giorni.

Sfortunatamente, MS Outlook non funzionerà neanche per te (non accetta niente di meno degli intervalli giornalieri e anche se puoi inserire valori decimali, li arrotonda semplicemente verso l'alto o verso il basso).

E Fantastical, mentre un'eccellente app di calendario per macOS, è limitata come il calendario predefinito in questo senso.

Invece, quello che devi fare è:

  • trova una soluzione che registri gli intervalli più brevi di un giorno o lavori con valori decimali o
  • scarica uno dei calendari astronomici esistenti per questo scopo e modifica manualmente il file ICS per modificare il fuso orario in modo da adattarlo ai vari australiani di cui hai bisogno.

Spiacenti, questo non è quello che stavi cercando, ma forse la seconda opzione "scarica e modifica" funzionerà senza eccessivi sforzi.

    
risposta data 02.12.2016 - 12:08
fonte

Leggi altre domande sui tag