pimutils / pimutils/khal

Feature: Ncurses Weekly/Monthly view

Open
#824 6 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: enhancement
Dominant language
Python
Stars
3.1k
Forks
233
Avg merge
1h 44m
Merged PRs (30d)
1

Description

I have been quite impressed by and satisfied with khal for its interoperability with CalDAV via vdirsyncer and its general pythonic approach that keeps is use simple and intuitive. That said, even those command-line geeks just sort of a neck-beard, a glance at a screen displaying the most pertinent information is preferable to a specifically crafted query---and the real power is in having the option for both.

For this reason, I have been considering what it would take to create an urwid backed graphical calendar for the terminal with the main goal of showing a "Google Calendar"-style weekly and monthly overview with events overlaid on the corresponding days by color. I understand that there is ikhal and that even this uses urwid, but I do not believe the functionality I describe is present there. The closest thing that I have seen to this is in the output generated by gcalcli, but this is not compatible with vdirsyncer which is most compliant with the CalDAV standard IMO.

If something like this is within scope for ikhal, I would be happy to base any of my efforts off of that codebase (particularly if there is more broad interest in contributing from others). Otherwise, I may try a more agnostic approach that only cares about having a CalDAV server to talk to or a vdir (though that is basically what it would be in either case). In any event, what I would really like to see is a mutt for calendars. I think khal is the closest thing to it with calcurse being another serious contender, but neither of them yet have the full maturity of an ncurses cli-app and I think the feature I describe here would be a significant step in that direction.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names ikhal, urwid, vdirsyncer, and gcalcli but no specific files or tests. Start by reviewing ikhal's existing urwid interface and how khal connects to vdirsyncer/CalDAV, then compare gcalcli's weekly and monthly output. Done would require a defined, working terminal calendar view with events overlaid by day and color.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.