Kalender Pendidikan Tahun Pelajaran 2021/2022

T
idak terasa sebentar lagi memasuki tahun pelajaran baru. Tentu banyak persiapan yang dilakukan oleh guru. Tugas guru seperti yang kita ketahui adalah merencanakan, melaksanakan, mengevaluasi, menilai dan melakukan tindak lanjut hasil pembelajaran. Terkait merencanakan pembelajaran maka guru perlu membuat silabus, rpp, bahan ajar, lkpd dan lain sebagainya. Untuk pengaturan waktunya maka mengacu kepada kalender pendidikan yang dibuat oleh dinas pendidikan dan kebudayaan tingkat kabupaten atau provinsi. Kalender pendidikan adalah pengaturan waktu untuk kegiatan pembelajaran peserta didik selama satu tahun pelajaran yang mencakup permulaan tahun pelajaran, minggu efektif belajar, waktu pembelajaran efektif dan hari libur.
kalender pendidikan TP 2021/2022 di LaTeX


Komponen Kalender Pendidikan

Permulaan tahun pelajaran adalah waktu dimulainya kegiatan pembelajaran pada awal tahun pelajaran pada setiap satuan pendidikan. Minggu efektif belajar adalah jumlah minggu kegiatan pembelajaran untuk setiap tahun pelajaran pada setiap satuan pendidikan. Waktu pembelajaran efektif adalah jumlah jam pembelajaran setiap minggu, meliputi jumlah jam pembelajaran untuk seluruh mata pelajaran termasuk muatan lokal, ditambah jumlah jam untuk kegiatan pengembangan diri. Waktu libur adalah waktu yang ditetapkan untuk tidak diadakan kegiatan pembelajaran terjadwal pada satuan pendidikan yang dimaksud. Waktu libur dapat berbentuk jeda tengah semester, jeda antar semester, libur akhir tahun pelajaran, hari libur keagamaan, hari libur umum termasuk hari-hari besar nasional, dan hari libur khusus.

Membuat Kalender Pendidikan

Dalam postingan kali ini, Admin akan membuat panduan membuat kalender pendidikan menggunakan LaTeX. Tentu saja sintaksnya berbeda dengan kalender pendidikan yang dibuat menggunakan microsoft word ataupun microsoft excel. Teknis pembuatan kalender pendidikan menggunakan LaTeX, Admin peroleh dari sini. Kemudian Admin sesuaikan dengan kebutuhan di tahun pelajaran 2021/2022 ini.

Kelas Dokumen

Kelas dokumen yang digunakan untuk membuat kalender pendidikan adalah scrartcl, dan selanjutnya kita tuliskan menggunakan perintah berikut.
Klik aja:

\documentclass[fontsize=20pt]{scrartcl}
%http://tex.stackexchange.com/questions/170462/calendar-in-latex/170474#170474

Mukadimah

Di bagian mukadimah, kita akan menuliskan paket-paket dan perintah yang diperlukan untuk membuat kalender pendidikan tersebut. Pada bagian mukadimah kita bisa menentukan ukuran huruf yang digunakan, warna huruf, serta ukuran (lebar dan panjang) dari kotak-kotak yang memuat tanggal.

\usepackage{bookman}
\usepackage[indonesian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{dejavu}
\usepackage[margin=1cm,a4paper,landscape]{geometry}
\usepackage[dvipsnames,svgnames]{xcolor}
\pagestyle{empty}
\usepackage{graphicx}
\usepackage{tikz}
\usetikzlibrary{calendar,fit}
\usepackage{expl3,xparse}

%% Adapted from http://tex.stackexchange.com/a/10199/4771
\makeatletter%
\tikzoption{day headings}{\tikzstyle{day heading}=[#1]}
\tikzstyle{day heading}=[]
\tikzstyle{day letter headings}=[
execute before day scope={ \ifdate{day of month=1}{%
\pgfmathsetlength{\pgf@ya}{\tikz@lib@cal@yshift}%
\pgfmathsetlength\pgf@xa{\tikz@lib@cal@xshift}%
\pgftransformyshift{-\pgf@ya}
\foreach \d/\l in {0/Senin,1/Selasa,2/Rabu,3/Kamis,%
4/Jumat,5/Sabtu,6/Minggu} {
\pgf@xa=\d\pgf@xa%
\pgftransformxshift{\pgf@xa-\cellwidth/2}%
\pgftransformyshift{\pgf@ya}%
\node[above=-0.5ex,day heading]{\l};%
}
}{}%
}%
]
\makeatother%
%% End

%% Adapted from pgf source
\def\pgfcalendarmonthname#1{%
\translate{\ifcase#1\or Januari\or Februari\or Maret\or April\or
Mei\or Juni\or Juli\or Agustus\or September\or Oktober\or
November\or Desember\fi}%
}

\makeatletter
\tikzstyle{month label above centered}=[%
execute before day scope={%
\ifdate{day of month=1}{%
{
\pgfmathsetlength{\pgf@xa}{\tikz@lib@cal@xshift}%
\pgf@xb=\tikz@lib@cal@width\pgf@xa%
\advance\pgf@xb by-\pgf@xa%
\pgf@xb=.5\pgf@xb%
\pgftransformxshift{\pgf@xb}%
\pgftransformxshift{-\cellwidth/2}%
\pgfmathsetlength{\pgf@y}{\tikz@lib@cal@yshift}%
\pgftransformyshift{0.333\pgf@y}
\tikzmonthcode%
}
}{}},
every month/.append style={anchor=base}
]
\makeatother
%% End

\ExplSyntaxOn

%% Adapted from http://tex.stackexchange.com/a/56214/4771
%%
% first of all we define the user level commands
\NewDocumentCommand{\addtext}{ m }{ \bdaycal_input_add:n { #1 } }
\NewDocumentCommand{\addtextyear}{ mm }{ \bdaycal_input_add_y:nn { #1 } { #2 } }
\NewDocumentCommand{\showtext}{ }{ \bdaycal_output_direct: }

% allocate variable:
% a sequence for global storage of the inputs;
\seq_new:N \g_bdaycal_input_seq

% store globally an input in the sequence
\cs_new:Npn \bdaycal_input_add:n #1
{
\seq_gput_right:Nn \g_bdaycal_input_seq { #1 }
}

\cs_new:Npn \bdaycal_input_add_y:nn #1 #2
{
\seq_gput_right:Nn \g_bdaycal_input_seq { #1 ~ ( \int_to_arabic:n
{ \pgfcalendarifdateyear - #2 } ) }
}

% how to output in direct order; we simply do a mapping function calling
% \bdaycal_print:n after incrementing the counter
\cs_new_protected:Npn \bdaycal_output_direct:
{
\seq_map_inline:Nn \g_bdaycal_input_seq
{
\bdaycal_print:n { ##1 }
}
\seq_gclear:N \g_bdaycal_input_seq
}

% the printing macro; change here for adapting to your wishes
\cs_new:Npn \bdaycal_print:n #1
{
#1 \par
}
%% End

%% Knuth's AoCP, vol 1, 2nd ed, pp 155--156
\int_new:N \l_easter_Y_int
\int_new:N \l_easter_G_int
\int_new:N \l_easter_C_int
\int_new:N \l_easter_X_int
\int_new:N \l_easter_Z_int
\int_new:N \l_easter_D_int
\int_new:N \l_easter_E_int
\int_new:N \l_easter_N_int
\int_new:N \l_easter_M_int
\int_new:N \l_easter_julian_day_int

\cs_new:Nn \easter_sunday:n {

\int_set:Nn \l_easter_Y_int { #1 }

\int_set:Nn \l_easter_G_int {
\int_mod:nn { \l_easter_Y_int } { 19 } + 1
}

\int_set:Nn \l_easter_C_int {
\int_div_truncate:nn { \l_easter_Y_int } { 100 } + 1
}

\int_set:Nn \l_easter_X_int {
\int_div_truncate:nn { 3 * \l_easter_C_int } { 4 } - 12
}

\int_set:Nn \l_easter_Z_int {
\int_div_truncate:nn { 8 * \l_easter_C_int + 5 } { 25 } - 5
}

\int_set:Nn \l_easter_D_int {
\int_div_truncate:nn { 5 * \l_easter_Y_int } { 4 } - \l_easter_X_int - 10
}

\int_set:Nn \l_easter_E_int {
\int_mod:nn { 11 * \l_easter_G_int + 20 + \l_easter_Z_int
- \l_easter_X_int } { 30 }
}

% \int_mod:nn behaves strangely.
\int_compare:nNnT { \l_easter_E_int } < { 0 }
{
\int_add:Nn \l_easter_E_int { 30 }
}

\int_compare:nNnTF { \l_easter_E_int } = { 25 }
{ % true
\int_compare:nNnT { \l_easter_G_int } > { 11 }
{ % true
\int_incr:N \l_easter_E_int
}
}
{ % false
\int_compare:nNnT { \l_easter_E_int } = { 24 }
{ % true
\int_incr:N \l_easter_E_int
}
}

\int_set:Nn \l_easter_N_int { 44 - \l_easter_E_int }

\int_compare:nNnT { \l_easter_N_int } < { 21 }
{ % true
\int_add:Nn \l_easter_N_int { 30 }
}

\int_add:Nn \l_easter_N_int {
7 - \int_mod:nn { \l_easter_D_int + \l_easter_N_int } { 7 }
}

\int_compare:nNnTF { \l_easter_N_int } > { 31 }
{ % true
\int_sub:Nn \l_easter_N_int { 31 }
\int_set:Nn \l_easter_M_int { 4 } % April
}
{ % false
\int_set:Nn \l_easter_M_int { 3 } % March
}

\pgfcalendardatetojulian { \l_easter_Y_int -
\l_easter_M_int - \l_easter_N_int
} { \l_easter_julian_day_int }

}

\pgfkeys{/pgf/calendar/Easter/.default = 0}
\pgfkeys{/pgf/calendar/Easter/.code =
{
\easter_sunday:n { \pgfcalendarifdateyear }
\int_compare:nNnT { \pgfcalendarifdatejulian }
= {\l_easter_julian_day_int + #1}
{ \pgfcalendarmatchestrue }
}
}

\int_new:N \l_advent_Y_int
\int_new:N \l_advent_xmas_julian_day_int
\int_new:N \l_advent_xmas_week_day_int
\int_new:N \l_advent_julian_day_int

\cs_new:Nn \advent_sunday:n {

\int_set:Nn \l_advent_Y_int { #1 }

\pgfcalendardatetojulian { \l_advent_Y_int - 12 - 25 } {
\l_advent_xmas_julian_day_int }

\pgfcalendarjuliantoweekday { \l_advent_xmas_julian_day_int } {
\l_advent_xmas_week_day_int }

\int_set:Nn \l_advent_julian_day_int {
\l_advent_xmas_julian_day_int - \l_advent_xmas_week_day_int - 22 }

}

\pgfkeys{/pgf/calendar/Advent/.default = 0}
\pgfkeys{/pgf/calendar/Advent/.code =
{
\advent_sunday:n { \pgfcalendarifdateyear }
\int_compare:nNnT { \pgfcalendarifdatejulian }
= {\l_advent_julian_day_int + #1}
{ \pgfcalendarmatchestrue }
}
}

%% http://www.tondering.dk/claus/cal/week.php#calcweekno
\int_new:N \l_week_number_year_int
\int_new:N \l_week_number_month_int
\int_new:N \l_week_number_day_int
\int_new:N \l_week_number_a_int
\int_new:N \l_week_number_b_int
\int_new:N \l_week_number_c_int
\int_new:N \l_week_number_s_int
\int_new:N \l_week_number_e_int
\int_new:N \l_week_number_f_int
\int_new:N \l_week_number_g_int
\int_new:N \l_week_number_d_int
\int_new:N \l_week_number_n_int
\int_new:N \l_week_number_W_int

\cs_new:Nn \week_number:nnn {

\int_set:Nn \l_week_number_year_int { #1 }
\int_set:Nn \l_week_number_month_int { #2 }
\int_set:Nn \l_week_number_day_int { #3 }

\int_compare:nNnTF { \l_week_number_month_int } < { 3 } % jan or feb
{ % true

\int_set:Nn \l_week_number_a_int { \l_week_number_year_int - 1 }

\int_set:Nn \l_week_number_b_int {
\int_div_truncate:nn { \l_week_number_a_int } { 4 }
- \int_div_truncate:nn { \l_week_number_a_int } { 100 }
+ \int_div_truncate:nn { \l_week_number_a_int } { 400 }
}

\int_set:Nn \l_week_number_c_int {
\int_div_truncate:nn { \l_week_number_a_int - 1 } { 4 }
- \int_div_truncate:nn { \l_week_number_a_int - 1 } { 100 }
+ \int_div_truncate:nn { \l_week_number_a_int - 1 } { 400 }
}

\int_set:Nn \l_week_number_s_int {
\l_week_number_b_int - \l_week_number_c_int }

\int_zero:N \l_week_number_e_int

\int_set:Nn \l_week_number_f_int { \l_week_number_day_int - 1
+ 31 * ( \l_week_number_month_int - 1 ) }

} % end true
{ % false

\int_set_eq:NN \l_week_number_a_int \l_week_number_year_int

\int_set:Nn \l_week_number_b_int {
\int_div_truncate:nn { \l_week_number_a_int } { 4 }
- \int_div_truncate:nn { \l_week_number_a_int } { 100 }
+ \int_div_truncate:nn { \l_week_number_a_int } { 400 }
}

\int_set:Nn \l_week_number_c_int {
\int_div_truncate:nn { \l_week_number_a_int - 1 } { 4 }
- \int_div_truncate:nn { \l_week_number_a_int - 1 } { 100 }
+ \int_div_truncate:nn { \l_week_number_a_int - 1 } { 400 }
}

\int_set:Nn \l_week_number_s_int {
\l_week_number_b_int - \l_week_number_c_int }

\int_set:Nn \l_week_number_e_int { \l_week_number_s_int + 1 }

\int_set:Nn \l_week_number_f_int { \l_week_number_day_int
+ \int_div_truncate:nn {
153 * ( \l_week_number_month_int - 3 ) + 2 } { 5 }
+ 58 + \l_week_number_s_int }

} % end false

\int_set:Nn \l_week_number_g_int {
\int_mod:nn { \l_week_number_a_int + \l_week_number_b_int } { 7 } }

\int_set:Nn \l_week_number_d_int {
\int_mod:nn { \l_week_number_f_int + \l_week_number_g_int
- \l_week_number_e_int } { 7 } }

\int_set:Nn \l_week_number_n_int {
\l_week_number_f_int + 3 - \l_week_number_d_int }

\int_compare:nNnTF { \l_week_number_n_int } < { 0 }
{ %true

\int_set:Nn \l_week_number_W_int { 53
- \int_div_truncate:nn { \l_week_number_g_int
- \l_week_number_s_int } { 5 } }

} % end true
{ % false

\int_compare:nNnTF { \l_week_number_n_int } > { 364
+ \l_week_number_s_int }
{ % true

\int_set:Nn \l_week_number_W_int { 1 }

} % end true
{ % false

\int_set:Nn \l_week_number_W_int { \int_div_truncate:nn {
\l_week_number_n_int } { 7 } + 1 }

} % end false

} % end false

}

\definecolor{roed}{rgb}{0.937254901961,0.16862745098,0.176470588235}
\definecolor{blaa}{rgb}{0,0.156862745098,0.407843137255}

\newsavebox{\flagNO}
\savebox{\flagNO}{
\begin{tikzpicture}
\fill[roed] rectangle (6pt,6pt);
\fill[roed,yshift=10pt] rectangle (6pt,6pt);
\fill[roed,xshift=10pt] rectangle (12pt,6pt);
\fill[roed,xshift=10pt,yshift=10pt] rectangle (12pt,6pt);
\fill[blaa,yshift=7pt] rectangle (22pt,2pt);
\fill[blaa,xshift=7pt] rectangle (2pt,16pt);
\end{tikzpicture}
}

\pgfkeys{/tikz/week~number/.code =
{
\week_number:nnn {
\pgfcalendarifdateyear } {
\pgfcalendarifdatemonth } {
\pgfcalendarifdateday }
\addtext{ }%dapat diisi
}
}

\ExplSyntaxOff

\pgfkeys{/tikz/flag-flying day/.code =
{
\draw (-\cellwidth,0) node [above right,font=\Huge]
{\resizebox{!}{0.8ex}{\usebox{\flagNO}}};
}
}

\pgfkeys{/tikz/observance/.code =
{
\addtext{#1}
}
}

\pgfkeys{/tikz/anniversary/.code 2 args=\addtextyear{#1}{#2}}

\pgfkeys{/tikz/day code =
{
\node (lower right) at (0,0) [above left,font=\huge] {\tikzdaytext};
\node (upper left) at (-\cellwidth,\cellheight)
[below right,align=left,text width=\cellwidth-\pgflinewidth,
font=\tiny,blue] {\showtext};
\node (lower left) at (-\cellwidth,0) {};
\node[blue,rounded corners, draw,
fit=(lower right) (upper left) (lower left),
inner sep=1mm] {};
}
}

\pgfkeys{/tikz/inner sep = 0pt}

\pgfkeys{/tikz/day xshift=\cellwidth+2mm+2mm}

\pgfkeys{/tikz/day yshift=\cellheight+2mm+2mm}

\newlength{\cellheight}
\setlength{\cellheight}{20mm}
\newlength{\cellwidth}
\setlength{\cellwidth}{25mm}

Badan Dokumen

Selanjutnya kita memasuki badan dokumen dan mulai menuliskan identitas sekolah, menggunakan perintah berikut.
\begin{document}

\centering
\textcolor{blue}{\textbf{Kalender Pendidikan\\
SMP/MTs ................\\
Tahun Pelajaran 2021/2022}}

\vspace{.5cm}

Bulan Juli 2021

Awal Tahun Pelajaran 2021/2022 di mulai pada bulan Juli 2021. Awal masuk sekolah dimulai pada hari Senin, 12 Juli 2021. Untuk bulan-bulan selanjutnya silakan disesuaikan dengan kebutuhan sekolah masing-masing. Selengkapnya perhatikan perintah berikut.
\begin{tikzpicture}[thick]
\calendar[dates=2021-07-01 to 2021-07-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Monday,
equals=01-07,
equals=02-07,
equals=03-07,
equals=04-07,
equals=05-07,
equals=06-07,
equals=07-07,
equals=08-07,
equals=09-07,
equals=10-07,
equals=11-07,
equals=12-07) [week number]
if (Sunday,
equals=07-04) [red]
if (Friday,
equals=07-02) [SeaGreen]
if (equals=07-05) [blue,observance=Milad]
if (equals=07-12) [observance=HPS]
if (equals=07-13) [observance=MPLS]
if (equals=07-14) [observance=MPLS]
if (equals=07-20) [observance=Hari Raya Idul Adha]
;
\end{tikzpicture}

Bulan Agustus 2021


\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2021-08-01 to 2021-08-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=08-01) [red]
if (Friday,
equals=08-06) [SeaGreen]
if (equals=08-10) [red,observance= Tahun Baru Islam 1443 H]
if (equals=08-17) [blue,observance=HUT RI]
;
\end{tikzpicture}

Bulan September 2021

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2021-09-01 to 2021-09-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=09-05) [red]
if (Friday,
equals=09-03) [SeaGreen]
if (equals=09-06) [blue,observance=PTS]
if (equals=09-07) [blue,observance=PTS]
if (equals=09-08) [blue,observance=PTS]
if (equals=09-09) [blue,observance=PTS]
if (equals=09-10) [blue,observance=PTS]
if (equals=09-11) [blue,observance=PTS]
;
\end{tikzpicture}

Bulan Oktober 2021

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2021-10-01 to 2021-10-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=10-03) [red]
if (Friday,
equals=10-08) [SeaGreen]
if (equals=10-01) [blue,observance=Hari kesaktian Pancasila]
if (equals=10-02) [blue,observance=Hari batik]
if (equals=10-19) [red,observance=Maulid Nabi Muhammad SAW]
if (equals=10-28) [blue,observance=Hari sumpah pemuda]
;
\end{tikzpicture}

Bulan November 2021

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2021-11-01 to 2021-11-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=11-07) [red]
if (Friday,
equals=11-05) [SeaGreen]
if (equals=11-10) [blue,observance=Hari pahlawan]
if (equals=11-25) [blue,observance=Hari guru]
;
\end{tikzpicture}

Bulan Desember 2021

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2021-12-01 to 2021-12-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=12-05) [red]
if (Friday,
equals=12-03) [SeaGreen]
if (equals=12-06) [blue,observance=PAS]
if (equals=12-07) [blue,observance=PAS]
if (equals=12-08) [blue,observance=PAS]
if (equals=12-09) [blue,observance=PAS]
if (equals=12-10) [blue,observance=PAS]
if (equals=12-11) [blue,observance=PAS]
if (equals=12-18) [blue,observance=Penyerahan raport]
if (equals=12-20) [red,observance=Libur semester ganjil]
if (equals=12-21) [red,observance=Libur semester ganjil]
if (equals=12-22) [red,observance=Libur semester ganjil]
if (equals=12-23) [red,observance=Libur semester ganjil]
if (equals=12-24) [red,observance=Libur semester ganjil]
if (equals=12-25) [red,observance=Hari raya natal]
if (equals=12-27) [red,observance=Libur semester ganjil]
if (equals=12-28) [red,observance=Libur semester ganjil]
if (equals=12-29) [red,observance=Libur semester ganjil]
if (equals=12-30) [red,observance=Libur semester ganjil]
if (equals=12-31) [red,observance=Libur semester ganjil]
;
\end{tikzpicture}

Bulan Januari 2022

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2022-01-01 to 2022-01-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=01-02) [red]
if (Friday,
equals=01-07) [SeaGreen]
if (equals=01-01) [red,observance=Tahun baru masehi 2022 M]
;
\end{tikzpicture}

Bulan Februari 2022

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2022-02-01 to 2022-02-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=02-06) [red]
if (Friday,
equals=02-04) [SeaGreen]
if (equals=02-01) [red,observance=Tahun baru imlek 2573]
;
\end{tikzpicture}

Bulan Maret 2022

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2022-03-01 to 2022-03-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=03-06) [red]
if (Friday,
equals=03-04) [SeaGreen]
if (equals=03-01) [red,observance=Isra' mikraj]
if (equals=03-03) [red,observance=Hari raya nyepi 1944 S]
if (equals=03-14) [blue,observance=PTS]
if (equals=03-15) [blue,observance=PTS]
if (equals=03-16) [blue,observance=PTS]
if (equals=03-17) [blue,observance=PTS]
if (equals=03-18) [blue,observance=PTS]
if (equals=03-19) [blue,observance=PTS]
;
\end{tikzpicture}

Bulan April 2022

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2022-04-01 to 2022-04-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=04-03) [red]
if (Friday,
equals=04-01) [SeaGreen]
if (equals=04-15) [red,observance=Wafat Isa al masih]
if (equals=04-17) [red,observance=Hari paskah]
if (equals=04-18) [blue,observance=Ujian Sekolah]
if (equals=04-19) [blue,observance=Ujian Sekolah]
if (equals=04-20) [blue,observance=Ujian Sekolah]
if (equals=04-21) [blue,observance=Ujian Sekolah]
if (equals=04-22) [blue,observance=Ujian Sekolah]
if (equals=04-23) [blue,observance=Ujian Sekolah]
if (equals=04-28) [red,observance=Libur Hari Raya]
if (equals=04-29) [red,observance=Libur Hari Raya]
if (equals=04-30) [red,observance=Libur Hari Raya]
;
\end{tikzpicture}

Bulan Mei 2022

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2022-05-01 to 2022-05-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=05-01) [red]
if (Friday,
equals=05-06) [SeaGreen]
if (equals=05-01) [red,observance=Hari buruh]
if (equals=05-02) [red,observance=Libur Hari Raya]
if (equals=05-03) [red,observance=Hari raya idul fitri 1443 H]
if (equals=05-04) [red,observance=Hari raya idul fitri 1443 H]
if (equals=05-05) [red,observance=Libur Hari Raya]
if (equals=05-06) [red,observance=Libur Hari Raya]
if (equals=05-07) [red,observance=Libur Hari Raya]
if (equals=05-08) [red,observance=Libur Hari Raya]
if (equals=05-09) [red,observance=Libur Hari Raya]
if (equals=05-16) [red,observance=Hari raya waisak]
if (equals=05-26) [red,observance=Kenaikan Isa al masih]
;
\end{tikzpicture}

Bulan Juni 2022

\newpage
\begin{tikzpicture}[thick]
\calendar[dates=2022-06-01 to 2022-06-last,
week list,
month label above centered,
month text=\textsc{\%mt \%y0},
day headings={font=\footnotesize},
day letter headings]
if (Sunday,
equals=06-05) [red]
if (Friday,
equals=06-03) [SeaGreen]
if (equals=06-01) [red,observance=Hari lahir Pancasila]
if (equals=06-06) [blue,observance=PAT]
if (equals=06-07) [blue,observance=PAT]
if (equals=06-08) [blue,observance=PAT]
if (equals=06-09) [blue,observance=PAT]
if (equals=06-10) [SeaGreen,observance=PAT]
if (equals=06-11) [blue,observance=PAT]
if (equals=06-22) [red,observance=Libur semester genap]
;
\end{tikzpicture}
Terakhir kita akan membuat teks untuk tempat, nama, dan tanda tangan kepala sekolah tempat kita mengajar, di sini Admin menempatkan pada bagian kanan, sekaligus untuk menutup dokumen melalui perintah berikut.

\begin{flushright}
{.........,\hspace{.8cm}Juli 2021\\
Kepala SMP/MTs .............\\
\vspace{1.5cm}
(.........................)\\
NIP ......................}
\end{flushright}
\end{document}

Dan sekarang untuk melihat hasil kompilasi dari dokumen yang telah kita tulis,  silakan download dengan mengklik tombol di bawah ini.

Penutup

Langkah demi langkah telah ditempuh untuk membuat kalender pendidikan menggunakan LaTeX, dan Anda pun telah melihat hasilnya. Dan agar semakin paham , berikut ini Admin berikan kode LaTeX selengkapnya untuk membuat kalender pendidikan tersebut.
+ Tampilkan / Sembunyikan
Jika Anda ingin mengubah beberapa bagian dalam kalender pendidikan ini, maka Admin sarankan untuk melakukannya melalui 'mesin' TeX seperti TeXlive ataupun secara daring bisa menggunakan situs overleaf. Bagaimana caranya? Silakan baca panduannya di sini.
Demikian artikel tentang membuat kalender pendidikan tahun pelajaran 2021/2022 menggunakan LaTeX. Jika ada kesalahan mohon dikoreksi, jika ada masukan silakan tuliskan di sini. Semoga bermanfaat. Terima kasih.

Mau donasi lewat mana?

Paypal
Bank Rakyat Indonesia - Aan Triono / Rek : 0357-01-132169-50-3
Traktir saya minum kopi dengan cara memberi donasi. klik icon panah di atas. Terima kasih.
https://blog.choipanwendy.com