85 lines
3 KiB
Plaintext
85 lines
3 KiB
Plaintext
|
||
|
||
<p>Just created a standalone Git repository for my <code>tmr.el</code> library:
|
||
<a href="https://gitlab.com/protesilaos/tmr.el">https://gitlab.com/protesilaos/tmr.el</a>.</p>
|
||
|
||
<p>This has been part of <a href="https://protesilaos.com/emacs/dotemacs">my dotemacs</a>
|
||
for several months now and I thought it was right to turn it into its
|
||
own package. No ELPA package is planned for the foreseeable future.</p>
|
||
|
||
<p>Excerpt from its documentation:</p>
|
||
|
||
<blockquote>
|
||
<p>This package provides a single command for setting a timer: <code>tmr</code>.</p>
|
||
|
||
<p>The command prompts for a unit of time, which is represented as a string
|
||
that consists of a number and, optionally, a single character suffix
|
||
which specifies the unit of time.</p>
|
||
|
||
<p>Valid formats:</p>
|
||
|
||
<table>
|
||
<thead>
|
||
<tr>
|
||
<th>Input</th>
|
||
<th>Meaning</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>5</td>
|
||
<td>5 minutes</td>
|
||
</tr>
|
||
<tr>
|
||
<td>5m</td>
|
||
<td>5 minutes</td>
|
||
</tr>
|
||
<tr>
|
||
<td>5s</td>
|
||
<td>5 seconds</td>
|
||
</tr>
|
||
<tr>
|
||
<td>5h</td>
|
||
<td>5 hours</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
||
<p>If <code>tmr</code> is called with an optional prefix argument (<code>C-u</code>), it also asks
|
||
for a description which accompanies the given timer. Preconfigured
|
||
candidates are specified in the user option <code>tmr-descriptions-list</code>,
|
||
though any arbitrary input is acceptable at the minibuffer prompt.</p>
|
||
|
||
<p>When the timer is set, a message is sent to the echo area recording the
|
||
current time and the point in the future when the timer elapses. Echo
|
||
area messages can be reviewed with the <code>view-echo-area-messages</code> which is
|
||
bound to <code>C-h e</code> by default.</p>
|
||
|
||
<p>Once the timer runs its course, it produces a desktop notification and
|
||
plays an alarm sound. The notification’s message is practically the
|
||
same as that which is sent to the echo area. The sound file for the
|
||
alarm is defined in <code>tmr-sound-file</code>, while the urgency of the
|
||
notification can be set through the <code>tmr-notification-urgency</code> option.</p>
|
||
|
||
<p>The <code>tmr-cancel</code> command cancels the last <code>tmr</code>. Note that for the time
|
||
being it has no notion of multiple timers—just the last one.</p>
|
||
</blockquote>
|
||
|
||
<hr />
|
||
|
||
<p>As with every piece of Elisp I produce for my private needs, this is all
|
||
done for recreational and/or educational purposes. Though I believe
|
||
<code>tmr.el</code> can be used by others as well, provided they are willing to
|
||
install it manually.</p>
|
||
|
||
<p>The initial release notwithstanding, there are a couple of user-facing
|
||
improvements to be made:</p>
|
||
|
||
<ol>
|
||
<li>Make the <code>tmr-cancel</code> command prompt with completion for a timer
|
||
object when more than one is present.</li>
|
||
<li>Create a <code>tmr-list</code> command which lists all <code>tmr</code> objects (yes, I
|
||
know about <code>list-timers</code>, but I want something more specific).</li>
|
||
</ol>
|
||
|
||
|