First, search the help docs and this forum. Maybe your question has been answered! The debugging steps can help, too. Still stuck? Delete this line and proceed.
What Iām trying to do
Desktop and phone Obsidian Full Calendar plugin Version: 0.10.7 By Davis Haupt, set up the local calendar and event storage path correctly. Daily events should store in File/Journal/YYYY/MM/DD.
Things I have tried
- Plugin install instructions
- Plugin full documentation
- Obsidian forum search for Full Calendar store in Journal
- Internet quality search engine: Calendar vs Full Calendar
- I navigated to Desktop ā Obsidian Current version: v1.9.12 (Installer version: v1.4.16) ā left side bar ā Settings ā Options ā Community plugins ā Full Calendar ā Options ā Manage calendars ā Calendars ā Add calendar ā Full note (also tested Daily Note) ā Add Calendar plus icon ā Choose a directory: Journal ā Add Calendar ā Save.
- Created a test event in Obsidian Current version: v1.9.12 (Installer version: v1.4.16) ā left side bar ā Ribbon ā Open Full Calendar ā Calendar tab ā month ā selected Calendar day blank space ā Add title: test ā Journal ā Save Event ā event saves in Files/Journal/2025-09-25 test2, rather than in Journal/2025/09/Sep 25th, 2025.
- when saving to Daily Note/Journal: Error when creating event: Could not find heading Journal in daily note Journal/2025/09/Sep 2nd, 2025.md.
Is there a way for Event local file paths to be stored here: {YYYY}/{MM}/{ddd MMM DD, YYYY}?
Full Calendar settings ā Manage Calendars ā Full note ā file path only offers a path to select and not create the code {YYYY}/{MM}/{ddd MMM DD, YYYY}
No. The plugin detects individual calendars based on given folders, not given path syntax. You need to add every calendar {YYYY}/{MM} or {YYYY}/{MM}/{ddd MMM DD, YYYY} separately. You can use other various tools to automatically copy files from one folder to folders {YYYY}/{MM}/{ddd MMM DD, YYYY}. For example here is a bash script (created by LLM)
#!/bin/bash
# Set the source directory containing the files
SOURCE_DIR="/path/to/your/source/folder"
# Change to the source directory
cd "$SOURCE_DIR" || exit
# Loop through each file matching the naming format
for file in *.md; do
# Extract the date components from the filename
if [[ $file =~ ^([a-z]{3})\ ([A-Z][a-z]{2})\ ([0-9]{1,2}),\ ([0-9]{4})\.md$ ]]; then
ddd="${BASH_REMATCH[1]}"
MMM="${BASH_REMATCH[2]}"
DD="${BASH_REMATCH[3]}"
YYYY="${BASH_REMATCH[4]}"
# Convert month abbreviation to number
case $MMM in
Jan) MM="01" ;;
Feb) MM="02" ;;
Mar) MM="03" ;;
Apr) MM="04" ;;
May) MM="05" ;;
Jun) MM="06" ;;
Jul) MM="07" ;;
Aug) MM="08" ;;
Sep) MM="09" ;;
Oct) MM="10" ;;
Nov) MM="11" ;;
Dec) MM="12" ;;
*) echo "Invalid month: $MMM"; continue ;;
esac
# Create the target directory structure including the full date
TARGET_DIR="$YYYY/$MM/$ddd $MMM $DD, $YYYY"
mkdir -p "$TARGET_DIR"
# Copy the file to the target directory
cp "$file" "$TARGET_DIR/$file"
else
echo "Filename does not match expected format: $file"
fi
done
You can run that inside Obsidian using Shell commands plugin. Obviously the script contains many details that you need to possibly change.
In summary:
- Use Full Calendar with one full note calendar configured to some folder like MyCalendar
- Create calendar events normally in Full Calendar
- Run the above script (or similar script) manually or automatically based on some criteria like Obsidian starts or Obsidian closes
1 Like