\documentclass[a4paper,12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[margin=25mm]{geometry}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{xcolor}
\usepackage{fp}

% Command showing the Moon phase
\newcommand{\moonphase}[2]{
    \begin{center}
        \begin{minipage}{2cm}
            \includegraphics[width=\linewidth]{#1}
        \end{minipage}
        \hspace{5mm}
        \begin{minipage}{7cm}
            \textbf{\currentmoonphasetitle}\\#2
        \end{minipage}
    \end{center}
}

% Environment for the ephemerides, when --no-graph is given on the command line
\newenvironment{ephemerides}{
    \begin{table}[h]
        \centering
        \begin{tabular}{lccc}
            \textbf{\ephemeridesobjecttitle} &
            \textbf{\ephemeridesrisetimetitle} &
            \textbf{\ephemeridesculminationtimetitle} &
            \textbf{\ephemeridessettimetitle}\\
\hline
}{
        \end{tabular}
    \end{table}
}

% Command adding an object to the ephemerides environment
\newcommand{\object}[4]{
    \hline
    \textbf{#1} & {#2} & {#3} & {#4}\\
}

% Environment to insert the ephemerides graph
\newenvironment{graphephemerides}{\setlength{\unitlength}{0.02\linewidth}
\begin{picture}(20,20)
    % Axes
    \put(0,-2){\vector(1,0){50}}
    \multiput(0,-2)(2,0){24}{
        \line(0,-1){0.25}
    }
    \newcounter{hour}
    \multiput(-0.25,-3.5)(4,0){12}{
        \sffamily\footnotesize
        \arabic{hour}\stepcounter{hour}\stepcounter{hour}
    }
    \put(49,-3.5){\sffamily\footnotesize \hourslabel}

    % Graduation

    \put(50,-0.5){\sffamily\footnotesize \Pluto}
    \put(50,1.5){\sffamily\footnotesize \Neptune}
    \put(50,3.5){\sffamily\footnotesize \Uranus}
    \put(50,5.5){\sffamily\footnotesize \Saturn}
    \put(50,7.5){\sffamily\footnotesize \Jupiter}
    \put(50,9.5){\sffamily\footnotesize \Mars}
    \put(50,11.5){\sffamily\footnotesize \Venus}
    \put(50,13.5){\sffamily\footnotesize \Mercury}
    \put(50,15.5){\sffamily\footnotesize \Moon}
    \put(50,17.5){\sffamily\footnotesize \Sun}

    \multiput(0,0)(0,2){10}{
        \color{gray}\line(1,0){48}
    }

    \linethickness{1.5mm}
}{
\end{picture}
\vspace{1cm}
}

% Command to add an object to the graph
\newcommand{\graphobject}[8]{%
    % #1: Y coordinate component
    % #2: Color
    % #3: Hour rise time
    % #4: Minute rise time
    % #5: Hour set time
    % #6: Minute set time
    % #7: Human-readable rise time
    % #8: Human-readable set time

    \FPeval{\start}{#3*2+(#4/60)*2}%
    \FPeval{\length}{#5*2+(#6/60)*2 - \start}%
    \FPeval{\starttext}{\start+0.7}%
    \FPeval{\endtext}{\start+\length-3.25}%

    {\color{#2}%
    \put(\start,#1){%
        \line(1, 0){\length}%
    }}%

    \put(\starttext,#1.5){\sffamily\footnotesize #7}%
    \put(\endtext,#1.5){\sffamily\footnotesize #8}%
}

\newcommand{\event}[2]{
    \textbf{#1} & {#2}\\
}

\newenvironment{events}{
    \begin{table}[h]
        \begin{tabular}{ll}
}{
        \end{tabular}
    \end{table}
}

% Commands to handle the translated strings
\newcommand{\currentmoonphasetitle}{Moon phase:}
\newcommand{\ephemeridesobjecttitle}{Object}
\newcommand{\ephemeridesrisetimetitle}{Rise time}
\newcommand{\ephemeridesculminationtimetitle}{Culmination time}
\newcommand{\ephemeridessettimetitle}{Set time}
\newcommand{\hourslabel}{hours}

\newcommand{\Pluto}{Pluto}
\newcommand{\Neptune}{Neptune}
\newcommand{\Uranus}{Uranus}
\newcommand{\Saturn}{Saturn}
\newcommand{\Jupiter}{Jupiter}
\newcommand{\Mars}{Mars}
\newcommand{\Venus}{Venus}
\newcommand{\Mercury}{Mercury}
\newcommand{\Moon}{Moon}
\newcommand{\Sun}{Sun}

% Fix Unicode issues
\DeclareUnicodeCharacter{202F}{~}
\DeclareUnicodeCharacter{00B0}{$^\circ$}

\hypersetup{pdfinfo={%
    Title={Overview of your sky},
    Creator={Kosmorro v0.10.13}
}}

\pagenumbering{gobble}
\setcounter{secnumdepth}{0}

\title{\sffamily\href{http://kosmorro.space}{\includegraphics[width=5cm]{__PROJECT_PATH__/assets/png/kosmorro-logo.png}}\\Overview of your sky}
\date{\vspace{-11mm}\sffamily Monday, January 27, 2020}

\begin{document}

    \maketitle

    This document summarizes the ephemerides and the events of Monday, January 27, 2020. It aims to help you to prepare your observation session. All the hours are given in UTC.

Don't forget to check the weather forecast before you go out with your equipment.

    \moonphase{__PROJECT_PATH__/assets/moonphases/png/new-moon.png}{New Moon}

    %%% BEGIN-EPHEMERIDES-SECTION
    \section{\sffamily Ephemerides of the day}

    \begin{graphephemerides}%
\graphobject{18}{gray}{7}{31}{16}{30}{7:31 AM}{4:30 PM}\graphobject{16}{gray}{9}{6}{19}{13}{9:06 AM}{7:13 PM}\graphobject{14}{gray}{8}{10}{17}{28}{8:10 AM}{5:28 PM}\graphobject{12}{gray}{9}{1}{20}{10}{9:01 AM}{8:10 PM}\graphobject{10}{gray}{4}{19}{12}{28}{4:19 AM}{12:28 PM}\graphobject{8}{gray}{6}{15}{14}{21}{6:15 AM}{2:21 PM}\graphobject{6}{gray}{6}{56}{15}{22}{6:56 AM}{3:22 PM}\graphobject{4}{gray}{0}{0}{0}{33}{}{12:33 AM}\graphobject{4}{gray}{10}{21}{24}{0}{10:21 AM}{}\graphobject{2}{gray}{9}{1}{20}{10}{9:01 AM}{8:10 PM}\graphobject{0}{gray}{6}{57}{15}{11}{6:57 AM}{3:11 PM}
    \end{graphephemerides}
    %%% END-EPHEMERIDES-SECTION

    %%% BEGIN-EVENTS-SECTION
    \section{\sffamily Expected events}

    \begin{events}
        \event{8:00 PM}{Venus and Neptune are in conjunction}
    \end{events}
    %%% END-EVENTS-SECTION

\end{document}

