diff --git a/Library/Widgets/Calendar.md b/Library/Widgets/Calendar.md
index 8dae9f3..941368f 100644
--- a/Library/Widgets/Calendar.md
+++ b/Library/Widgets/Calendar.md
@@ -18,10 +18,10 @@ function generate_calendar(calendarID, year, month)
year = (wantedMonth - (wantedMonth % 12)) / 12
month = wantedMonth % 12
if month == 0 then
- month = 1
+ month = 12
end
end
-
+
local events = query[[
from index.tag "event"
where
@@ -73,12 +73,12 @@ function generate_calendar(calendarID, year, month)
for _, e in pairs(events) do
local datematch = e.at.match(
string.format("^%d-%02d-%02d( +[0-9]+:[0-9]+)?", year, month, day))
- if #datematch >= 2 and not datematch[2] then
+ if datematch and #datematch >= 2 and not datematch[2] then
cellcontent = cellcontent .. string.format(
[[%s
]],
e.ref, e.name
)
- elseif #datematch >= 2 and datematch[2] then
+ elseif datematch and #datematch >= 2 and datematch[2] then
cellcontent = cellcontent .. string.format(
[[
@@ -166,75 +166,72 @@ end
```space-style
.calendartable {
border-collapse: collapse;
- /* width: 500px; */
+
+ table {
+ border-color: var(--panel-border-color);
+ border: 2px solid #444;
+ border-collapse: collapse;
+
+ th {
+ width: 14%;
+ padding: 3px;
+ text-align: left;
+ background-color: var(--panel-background-color);
+ color: #852624;
+ border: 1px solid #aaa;
+ }
+
+ td {
+ width: 14%;
+ padding: 3px;
+ text-align: left;
+ vertical-align: top;
+ border: 1px solid #aaa;
+
+ &.today {
+ background-color: #f6f3c2;
+ }
+ }
+ }
+
+ a {
+ text-decoration-line: none;
+ color: var(--root-color);
+
+ &.mark {
+ text-decoration-line: none;
+ color: var(--ui-accent-text-color);
+ }
+ }
+
+ span.extramarker {
+ background-color: yellow;
+ }
+
+ .event {
+ background-color: #2ca05a;
+ color: #fff;
+ border-radius: 4px;
+ padding: 4px 8px;
+ margin-top: 8px;
+ max-width: 200px;
+ white-space: normal;
+ overflow-wrap: normal !important;
+ word-break: normal !important;
+
+ &.all-day {
+ background-color: #852624;
+ }
+
+ .time {
+ font-weight: bold;
+ }
+ }
+
+ .month-prev,
+ .month-next,
+ .month-now {
+ cursor: pointer;
+ }
}
-
-.calendartable table {
- border-color: var(--panel-border-color);
- border: 2px solid #444;
- border-collapse: collapse;
-}
-
-.calendartable th {
- width: 14%;
- padding: 3px;
- text-align: left;
- background-color: var(--panel-background-color);
- color: #852624;
- border: 1px solid #aaa;
-}
-
-
-.calendartable td {
- width: 14%;
- padding: 3px;
- text-align: left;
- vertical-align: top;
- border: 1px solid #aaa;
-}
-
-.calendartable td.today {
- background-color: #f6f3c2;
-}
-
-.calendartable a {
- text-decoration-line: none;
- color: var(--root-color);
-}
-
-.calendartable a.mark {
- text-decoration-line: none;
- color: var(--ui-accent-text-color);
-}
-
-.calendartable span.extramarker {
- background-color: yellow;
-}
-
-.calendartable .event {
- background-color: #2ca05a;
- color: #fff;
- border-radius: 4px;
- padding: 4px 8px;
- margin-top: 8px;
- max-width: 200px;
- white-space: normal;
- overflow-wrap: normal !important;
- word-break: normal !important;
-}
-
-.calendartable .event.all-day {
- background-color: #852624;
-}
-
-.calendartable .event .time {
- font-weight: bold;
-}
-
-.calendartable .month-prev,
-.calendartable .month-next,
-.calendartable .month-now {
- cursor: pointer;
-}
-
```