An opinionated Transient-based user interface for Calendar.
If installed via MELPA then add these lines to your Emacs initialization file with your binding of preference.
(require 'casual-calendar) ; optional if using autoloaded menu
(keymap-set calendar-mode-map "C-o" #'casual-calendar)
Whenever the calendar
window (showing three months) is raised, the Casual user interface for it can be invoked via the command casual-calendar
. This command is typically bound to a keybinding (e.g. C-o
). The menu displayed will offer the following activities:
- Navigation commands organized by time (day, week, month, year).
- Conversion commands to different calendar systems.
- Holiday-related commands.
- Diary-related commands.
- Almanac commands.
Also made available is access to a Settings menu (more below) and to the Info documentation for calendar
.
From the main menu, choosing “(D) Diary & Goto›” will present choices for diary event insertion and to “goto” a particular date via different specifications.
Calendar supports conversion of dates from Gregorian (default) to a number of different calendar systems. Choose “(c) Conversions›” from the main menu to select from a list of such calendars.
Supported calendar systems:
- Astronomical
- Bahá’í
- Ethiopic
- French Revolutionary
- Hebrew
- Islamic
- Julian
- Lunar (Chinese)
- Mayan
- Persian
Selecting a calendar system will raise a menu that offers date conversion commands between it and the Gregorian system. In the screenshot below, the Lunar (Chinese) calendar system menu is shown.
To convert a Gregorian date to Lunar (Chinese):
- Move cursor (point) in Calendar window to desired date. (The command “(g) Goto…” can be used to accomplish this.)
- Choose “(c) Date at Cursor”.
To convert a Lunar (Chinese) date to Gregorian:
- Choose “(G) Goto…” and follow the prompts.
Certain non-Gregorian calendar systems are supported by the diary (Bahá’í, Hebrew, Islamic, Lunar (Chinese)). For such systems, their menus will offer choices to insert diary events.
Note that inserting non-Gregorian diary events require configuration of the variables diary-nongregorian-listing-hook
and diary-nongregorian-marking-hook
as detailed in (emacs) Non-Gregorian Diary.
Both of these variables can be configured from the Calendar Settings menu.
From the main menu, choosing “(,) Settings” will provide a menu of frequently configured calendar and diary-related variables.
By enabling “Use Unicode Symbols” from the Settings menu, Casual Calendar will use Unicode symbols as appropriate in its menus.
If you enjoy using Casual Calendar, consider making a modest financial contribution to help support its development and maintenance.