\documentclass[]{article}
\usepackage{amssymb,amsmath}
\usepackage{ifxetex,ifluatex}
\usepackage{fixltx2e} % provides \textsubscript
\ifxetex
  \usepackage{fontspec,xltxtra,xunicode}
  \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
  \newcommand{\euro}{€}
\else
  \ifluatex
    \usepackage{fontspec}
    \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
    \newcommand{\euro}{€}
  \else
    \usepackage[utf8]{inputenc}
  \fi
\fi
\usepackage{graphicx}
% We will generate all images so they have a width \maxwidth. This means
% that they will get their normal width if they fit onto the page, but
% are scaled down if they would overflow the margins.
\makeatletter
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth
\else\Gin@nat@width\fi}
\makeatother
\let\Oldincludegraphics\includegraphics
\renewcommand{\includegraphics}[1]{\Oldincludegraphics[width=\maxwidth]{#1}}
\ifxetex
  \usepackage[setpagesize=false, % page size defined by xetex
              unicode=false, % unicode breaks when used with xetex
              xetex,
              bookmarks=true,
              pdfauthor={},
              pdftitle={Overview},
              colorlinks=true,
              urlcolor=blue,
              linkcolor=blue]{hyperref}
\else
  \usepackage[unicode=true,
              bookmarks=true,
              pdfauthor={},
              pdftitle={Overview},
              colorlinks=true,
              urlcolor=blue,
              linkcolor=blue]{hyperref}
\fi
\hypersetup{breaklinks=true, pdfborder={0 0 0}}
\setlength{\parindent}{0pt}
\setlength{\parskip}{6pt plus 2pt minus 1pt}
\setlength{\emergencystretch}{3em}  % prevent overfull lines
\setcounter{secnumdepth}{0}

\title{Overview}

\begin{document}
\maketitle

<style>
body {
    margin: auto;
    padding-right: 1em;
    padding-left: 1em;
    max-width: 44em;
    border-left: 1px solid black;
    border-right: 1px solid black;
    color: black;
    font-family: Verdana, sans-serif;
    font-size: 100%;
    line-height: 140%;
    color: #333;
}
pre, tt{
    font-family: monospace;
    background-color:#f8f8f8;
    padding: 2px 4px;
}
code{
    background-color:#f8f8f8;
    white-space: pre-wrap;
    font-size: 110%;
    padding: 1px 1px;
}
h1 a, h2 a, h3 a, h4 a, h5 a, li a {
    text-decoration: none;
    color: #7a5ada;
}
h1, h2, h3, h4, h5 { font-family: verdana;
                     font-weight: bold;
                     /*border-bottom: 1px dotted black;*/
                     color: #7a5ada; }
h1 {
        font-size: 130%;
}

h2 {
        font-size: 110%;
                     border-bottom: 1px dotted black;
}

h3 {
        font-size: 100%;
                     border-bottom: 1px dotted black;
}

h4 {
        font-size: 90%;
        font-style: italic;
                     border-bottom: 1px dotted black;
}

h5 {
        font-size: 85%;
        font-style: italic;
                     border-bottom: 1px dotted black;
}

h1.title {
        font-size: 200%;
        font-weight: bold;
        padding-top: 0.2em;
        padding-bottom: 0.2em;
        text-align: left;
        border: none;
}

dt code {
        font-weight: bold;
}
dd p {
        margin-top: 0;
}

#footer {
        padding-top: 1em;
        font-size: 70%;
        color: gray;
        text-align: center;
}
</style>


\tableofcontents

\emph{etm} provides a format for using plain text files to store
actions, events, notes, and tasks and a PyQt based GUI for creating and
modifying items as well as viewing them. Available data types are
discussed in the \emph{Data} tab. Possible views include \emph{Day},
\emph{Week}, \emph{Month}, \emph{Past due}, \emph{Next}, \emph{Folder},
\emph{Keyword} and \emph{Tag}. These are discussed in the \emph{Views}
tab. Custom, report views that can be exported and printed are discussed
in the \emph{Reports} tab. There are keyboard shortcuts for all actions
which are discussed in the \emph{Shortcuts} tab. Possible user
preference settings are discussed in the \emph{Preferences} tab.

The main window is illustrated below with the \emph{Day} view selected.

\includegraphics{images/mainview.png}
Use Control-J to jump to a fuzzy parsed date, e.g., ``-1/1'' to go the
first day of the previous month or ``+90'' to go to the date that is 90
days from today. The \emph{Day}, \emph{Week} and \emph{Month} views will
all change to show the selected date.

\subsubsection{New items}

Details about item types and options are available in the \emph{Data}
tab.

\begin{itemize}
\item
  To create a new item, either click on the new item button or press
  Control-N. This will open an edit window for your entry. When done,
  click on the Save Icon or press Control-S to save your entry and
  choose a file from the dialog.
\item
  Need to schedule an event? Use the week view to find a free period and
  then double click on the desired date and time. The editor will open
  with the date and time you selected already entered.
\item
  To create a new action, either click on the new action button or press
  Control-T to create a new action timer.

  \includegraphics{images/action_start.png}
  Enter a summary of your new action and press Return to start the
  timer. The display will change to show timer control buttons and
  elapsed time:

  \includegraphics{images/action_running.png}
  When you are finished, either click on the stop timer button or press
  Shift + Control-T to stop the timer and open an edit window to record
  the action. Your summary, the date and time you began the action and
  the elapsed time will automatically be entered:

  \includegraphics{images/action_finish.png}
\item
  Want to work on a task and record the time you spend? Select the task
  and then click on ``create a new action timer based on this item'' to
  start a timer with all the relevant details of the task already
  entered.
\item
  Need to quickly enter some information before you forget? Press
  Control-S to open the scratch pad. Type whatever you want to remember.
  You can either leave the scratch pad open or press Control-Return to
  close it. When you next open the scratch pad, even if you have closed
  and restarted etm, your previous entry will be there for you to copy
  or edit. Additionally, when you are editing a item or an action, you
  can press Control-I to insert the contents of the scratch pad at the
  cursor.
\end{itemize}

\subsubsection{Details}

To examine the details of an item, either select it and press
\emph{Return} or double click on it. The details of the selected item
will be displayed along with a number of possible actions related to the
item:

\includegraphics{images/detailsview.png}
With repeating items, choosing either edit or delete entails a further
choice of what to change/delete:

\begin{description}
\item[Only the datetime of this instance]
This option only applies to edit. Use it, for example, when you have a
repeating event and you want to change the day or time for this instance
only. This is a shortcut in which you simply enter the new fuzzy parsed
datetime and the change is made without opening the editor.
\item[This instance]
Use this, for example, if you want to change the summary or add
something to the description of this instance of the item or you want to
delete this single instance.
\item[This and all subsequent instances]
Use this, for example, if a repeating event is changing to a new week
day or time or a repeating event is ending and you want to remove all
the future repetitions.
\item[All instances]
Use this, for example, to change the summary and have the change apply
to all repetitions of the item.
\end{description}

\subsubsection{Filtering}

You can enter an expression, either a plain string or a regular
expression, in the pattern filter to limit the display in any of the
tree (outline) views to items whose summaries (titles) or branches match
the pattern. As each character is entered the display is updated to show
only items that still match. Note the effect of changing the pattern
from ``v'' to ``vo'' in the day view below:

\includegraphics{images/pattern_filter1.png}
\includegraphics{images/pattern_filter2.png}
You can identify items with a particular tag by switching to the tag
view and then entering a pattern for the tag(s) you want in the pattern
filter. Only items from the matching tag branches will be displayed.
This approach also works for filtering items in the keyword or folder
view, the latter illustrated below. Note that the effect of entering
``us'' in the pattern filter is to expand the matching branches and
summaries:

\includegraphics{images/folder_view1.png}
\includegraphics{images/folder_view2.png}
Press \emph{Escape} to clear the filter and activate the \emph{Select
view} menu.

\subsubsection{Editing}

The \emph{etm} editor supports both syntax highlighting for etm data
files and automatic completion. As illustrated below, different colors
are provided for different item types and both \texttt{@key} and
\texttt{\&key} entries are highlighted. Entries using unsupported keys,
such as \texttt{@h} below, are also highlighted as errors.

\includegraphics{images/highlighting.png}
Automatic completion uses a list of possible completions in a text file
specified by \texttt{auto\_completions} in your \texttt{etm.cfg}. Each
line in this file provides a possible completion, for example:

\begin{verbatim}
@c computer
@c home
@c errands
@c office
@c phone
@z US/Eastern
@z US/Central
@z US/Mountain
@z US/Pacific
dnlgrhm@gmail.com
\end{verbatim}

As soon as you enter ``@c'', for example, a list of possible
\emph{context} completions will pop up and then, as you type further
characters, the list will shrink to show only those that still match:

\includegraphics{images/completion.png}
Up and down arrow keys change the selection and either \emph{Tab} or
\emph{Return} inserts the selection.

\subsubsection{Version numbers}

\emph{etm}'s version numbering now uses the \texttt{major.minor.patch}
format where each of the three components is an integer:

\begin{itemize}
\item
  Major version numbers change whenever there is a large or potentially
  backward-incompatible change.
\item
  Minor version numbers change when a new, minor feature or a set of
  smaller features is introduced. A change in the minor version from
  zero to one indicates a change in the status of the major version from
  beta to stable.
\item
  Patch numbers change for new builds involving small bugfixes or the
  like. Some new builds may not be released.
\end{itemize}

When the major version number is incremented, both the minor version
number and patch number will be reset to zero. Similarly, when the minor
version number is incremented, the patch number will be reset to zero.
All increments are by one.

\subsubsection{License information}

Copyright (c) 2009-2012 Daniel Graham,
\href{mailto:daniel.graham@duke.edu}{daniel.graham@duke.edu}. All rights
reserved.

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version. See
\href{http://www.gnu.org/licenses/gpl.html}{GNU License Information} for
details.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.

\end{document}
