I have modified code given by cfr in the answer to this question about current day nodes.
I want to fill in "blank" days with dashes in the first and last rows of my calendar. The first two months from the example code should look like this:
August
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 -- -- -- --
September
-- -- -- 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 -- --
I think there is probably a straight forward way to accomplish this. [Or at least that I should be able to use the day of the week that the first and last of the month fall on to figure out what extra nodes I need,but I have no idea how to even start something like that.] Any suggestions?
\documentclass[border=10pt,multi,tikz]{standalone}
\usetikzlibrary{calendar}
\begin{document}
\begin{tikzpicture}
\calendar (cal)
[%
week list,
dates=2016-08-01 to 2016-10-last,
day xshift=1.5em,
month xshift=1pt,
month label above left,
]
if (weekend) [text=black!25]
[%
execute at end day scope={%
\draw[red]
(cal-\%y0-\%m0-\%d0.north east) --
(cal-\%y0-\%m0-\%d0.south east);
}][%
execute at end day scope={%
\draw[green]
(cal-\%y0-\%m0-\%d0.south east) --
(cal-\%y0-\%m0-\%d0.south west);
}];
\end{tikzpicture}
\end{document}
[Note: This is one of two questions about modifying the same code. The other is here.]