kiwanami / emacs-calfw

A calendar framework for Emacs
1.16k stars 100 forks source link

Graphical week view #112

Open raxod502 opened 6 years ago

raxod502 commented 6 years ago

I would love to do my calendaring in Emacs using calfw. However, I rely heavily on a graphical week view that shows me events as blocks of the appropriate size, rather than just as list items. Is there any possibility for calfw to support such a week view, like Apple/Google Calendar?

image

fbob commented 6 years ago

+1 It could be indeed a great feature. But I'm not sure if it's possible at present time.

lgmoneda commented 6 years ago

I'm also currently looking for a solution like that for org-mode: being able to see tasks as time blocks, also because it makes clear the free time blocks.

Have you found a solution, @raxod502? I'd love to see it as a calfw feature.

raxod502 commented 6 years ago

I'm developing my own Emacs calendar interface to solve this problem. It will be designed to integrate well with vdirsyncer.

The code is only at a very preliminary stage, and doesn't accomplish anything useful yet. If you want to follow the project, it is at https://github.com/raxod502/ishikk.

fbob commented 6 years ago

great ! you should add a screenshot on your github page best wishes for your project

raxod502 commented 6 years ago

Of course—although obviously that is in the future since as I've said above the code doesn't actually do anything yet.

lgmoneda commented 6 years ago

@raxod502 I think the org-timeline is mildly related to what you want to build. I would really enjoy a weekly-transposed-with-task-titles version of org-timeline!

dudelson commented 5 years ago

This feature is a must-have for me as well. @fbob @kiwanami what are the technical limitations to something like this? I'd be willing to take a crack at a PR myself, but I am not very knowledgeable about emacs lisp, so some direction would be appreciated :+1:

novoid commented 5 years ago

From my perspective, #22 is related to similar requirements: a more horizontal layout in contrast to the clearly vertical oriented layout which is not compatible with longer text per appointment.

ml729 commented 1 year ago

Hello, I'm a bit late to the party, but I implemented a feature like this here: https://github.com/ml729/calfw-blocks

novoid commented 1 year ago

Hello, I'm a bit late to the party, but I implemented a feature like this here: https://github.com/ml729/calfw-blocks

Wouldn't you agree that transposing the table (Weekdays are the rows, events in the columns) would be a much better choice since the titles/descriptions doesn't have to be truncated that often?

See #22 for more details on that.

ml729 commented 1 year ago

I like your design @novoid . For shorter events (like, less than 2 hours) I think truncation would still occur in the transposed view of a weekly calendar with hours (e.g. you have a 160 char wide buffer and you're displaying 8 hours at a time, then you only get 20 chars of horizontal space for a 1 hour event). For longer events, yes you would have less truncation/line wrapping. Unfortunately, I currently don't plan on implementing it, but PRs are welcome! Also, if you want less truncation, my package does have views with fewer days, where each event gets more horizontal space.

By the way, there is a PR of org-timeline that does implement a nice transposed view, but sacrifices titles in the process. Fuco1/org-timeline#19 (There is also an org-mode extension for Sublime Text that has a similar display in its org-agenda. https://github.com/ihdavids/orgextended)

If you are only interested in having the titles and not visually displaying time/duration, I think this could be implemented more cleanly within the org-agenda view rather than calfw. The events are already listed by day, vertically, you just have to transform it into a two column format.

ml729 commented 1 year ago

@novoid, I ended up implementing the view in your image (https://github.com/kiwanami/emacs-calfw/issues/22) as part of calfw-blocks.