
2 | #+html:
org-timeblock
3 | #+html:
Emacs package that provides interactive multiple-day timeblock
4 | #+html: view for orgmode tasks.
5 |
6 | * Contents
7 |
8 | - [[#screenshots][Screenshots]]
9 | - [[#screencast][Screencast]]
10 | - [[#why][Why I wrote this package]]
11 | - [[#installation][Installation]]
12 | - [[#usage][Usage]]
13 | - [[#customization][Customization]]
14 | - [[#todos][TODOs]]
15 | - [[#donations][Donations]]
16 | - [[#changelog][Changelog]]
17 |
18 | * Screenshots
19 | :PROPERTIES:
20 | :CUSTOM_ID: screenshots
21 | :END:
22 |
23 | org-timeblock-mode buffer:
24 |
25 | [[file:screenshots/org-timeblock-mode.png]]
26 |
27 | You can press ~[T]~ to toggle the display of org-timeblock-list-mode
28 | buffer. Foreground colors for timeblocks are generated randomly, but
29 | you can assign specific background and foreground colors in
30 | customizable variable ~org-timeblock-tag-colors~:
31 |
32 | [[file:screenshots/org-timeblock-with-list-mode.png]]
33 |
34 | You can switch to a multi-day view using ~org-timeblock-change-span [V]~:
35 |
36 | [[file:screenshots/multi-day-view.png]]
37 |
38 | * Screencast
39 | :PROPERTIES:
40 | :CUSTOM_ID: screencast
41 | :END:
42 |
43 | [[https://youtu.be/lVV9gVp5nxU]]
44 |
45 | * Why
46 | :PROPERTIES:
47 | :CUSTOM_ID: why
48 | :END:
49 |
50 | The builtin orgmode package for collecting and displaying open
51 | tasks/events/deadlines relevant for a particular set of dates, org-agenda, does
52 | not have a timeblock representation which is available in almost all modern
53 | calendars.
54 |
55 | Sometimes, a list representation (like in org-agenda) is not sufficient, because
56 | it can be difficult to quickly get an overview of a day or week schedule.
57 |
58 | * Installation
59 | :PROPERTIES:
60 | :CUSTOM_ID: installation
61 | :END:
62 |
63 | Requirements:
64 |
65 | - Emacs 28.1 (or higher)
66 | - SVG support in your Emacs build
67 |
68 | ** MELPA
69 |
70 | You can install the package from MELPA using ~M-x package-install org-timeblock~
71 |
72 | ** package-vc-install (Emacs 29)
73 |
74 | If you use Emacs 29, you can install the package via
75 |
76 | ~M-x package-vc-install RET https://github.com/ichernyshovvv/org-timeblock/ RET~
77 |
78 | ** Guix
79 |
80 | If you use Guix, you can install the package from the official Guix channel.
81 |
82 | ** Quelpa
83 |
84 | 1. Install ~quelpa-use-package~ (which can be installed directly from MELPA).
85 | 2. Add this form to your init file:
86 |
87 | #+begin_src elisp
88 | (use-package org-timeblock
89 | :quelpa (org-timeblock :fetcher github :repo "ichernyshovvv/org-timeblock"))
90 | #+end_src
91 |
92 | ** Straight
93 |
94 | Add this form to your init file:
95 |
96 | #+begin_src elisp
97 | (use-package org-timeblock
98 | :straight (org-timeblock :type git
99 | :host github
100 | :repo "ichernyshovvv/org-timeblock"))
101 | #+end_src
102 |
103 | * Usage
104 | :PROPERTIES:
105 | :CUSTOM_ID: usage
106 | :END:
107 |
108 | There are two major modes provided by the package:
109 |
110 | - ~org-timeblock-mode~. Displays timeblock view of ~SCHEDULED/DEADLINE~ org
111 | tasks or events (entries that have active timestamps in the body or heading)
112 | for specific days.
113 | - ~org-timeblock-list-mode~. Displays a list of tasks (including those that are
114 | not time-specific).
115 |
116 | Run ~M-x org-timeblock~ to open 3-day view that starts from today's date. The
117 | default days span can be customized via ~org-timeblock-span~ variable. In the
118 | view you will see only entries that have time specified in their timestamps. To
119 | see other found tasks/events (entries that have timestamps without time), press
120 | ~T~ (M-x org-timeblock-toggle-timeblock-list).
121 |
122 | Tasks and events are searched in ~org-timeblock-files~ which defaults to
123 | ~(org-agenda-files)~.
124 |
125 | To navigate between the blocks, use ~[fbpn]~, arrow keys or mouse (yes, the
126 | blocks are clickable).
127 |
128 | To open other dates, you can run the following the following commands:
129 |
130 | - org-timeblock-day-later ~[C-