18
submitted 10 months ago* (last edited 10 months ago) by flyos@jlai.lu to c/linux@lemmy.ml

Hi,

I would like to reorganise a big calendar into several smaller ones, e.g. based on the categories of events (say categories "Birthday" would be moved to a "Birthday" calendar and so on). I know it could some up with some highly convoluted awk script to filter the very unfriendly ICS format, but I thought I could simplify my life and use the work of some nice person who certainly had come up with a tool to manipulate ICS files (GUI or CLI), right?

It turns out, I can find many small scripts or Github repos named "icsfilter" or the like, but nothing seemingly quite established.

That's why I turn to this great community: anybody who was confronted to the same problem and could recommend a nice utility to filter ICS files?

Thanks a lot!

you are viewing a single comment's thread
view the rest of the comments
[-] lemmyvore@feddit.nl 2 points 10 months ago* (last edited 10 months ago)

I think it should be fairly trivial to do with Python and a calendar library, you'd just have to go through the input entries, keep the ones with the properties you like and dump those to the output.

I'm not well versed in Python either but I had a specific calendar problem once — had to clear a calendar storage that went back years and the provider's UI didn't let you delete the base calendar — and after looking it up it was a few lines of Python.

That's probably why you don't find established tools because every person who runs into this stuff has a super specific need.

[-] flyos@jlai.lu 1 points 10 months ago

Thanks! I found something interesting, a function named icalfilter from the ical2html package in Debian/Ubuntu. Very easy to use to filter by categories. Unfortunately, this same package does not exist for openSUSE, but worse case scenario, I can use my Debian server to work on those ICS files.

this post was submitted on 05 Jan 2024
18 points (95.0% liked)

Linux

48349 readers
440 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS