<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!--
/*
* $calcurse: manual_fr.html,v 1.27 2009/07/10 19:49:08 culot Exp $
*
* Copyright (c) 2004-2009 Frederic Culot <frederic@culot.org>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above
* copyright notice, this list of conditions and the
* following disclaimer.
*
* - Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the
* following disclaimer in the documentation and/or other
* materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
-->
<html>
<head>
<title>documentation de CALCURSE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" media="all">
@import url(manual.css);
</style>
</head>
<body>
<div id="mainContent">
<h1 id="title">
<span class="main">CALCURSE - organiseur en mode texte</span></h1>
<div class="warn">
<h1>R�sum�</h1> Ce manuel pr�sente l'ensemble des fonctionnalit�s du
logiciel <code>calcurse</code> et la mani�re dont on peut les
utiliser. La proc�dure d'installation du programme depuis ses sources
est tout d'abord d�crite, ainsi que les diff�rentes fa�on dont
<code>calcurse</code> peut �tre lanc�. L'interface du programme est
ensuite pr�sent�e, avec l'ensemble des options qui permettent la
configuration du logiciel. Sont enfin expliqu�es les proc�dures � suivre
pour faire remonter les bogues et pour contribuer au d�veloppement de
<code>calcurse</code>.
</div>
<div id="toc">
<h1>Table des mati�res</h1>
<ul>
<li><a href="#intro">1. Introduction</a></li>
<li><a href="#overview">2. Aper�u du logiciel</a>
<ul>
<li><a href="#overview_history">2.1 Origine de Calcurse</a></li>
<li><a href="#overview_features">2.2 Caract�ristiques importantes</a></li>
</ul></li>
<li><a href="#install">3. Installation</a>
<ul>
<li><a href="#install_requirements">3.1 Pr�-requis</a>
<ul>
<li><a href="#install_requirements_ncurses">3.1.1 Librairie <code>ncurses</code></a></li>
<li><a href="#install_requirements_gettext">3.2.2 Librairie <code>gettext</code></a></li>
</ul></li>
<li><a href="#install_process">3.2 Processus d'installation</a></li>
</ul></li>
<li><a href="#basics">4. Pr�sentation g�n�rale</a>
<ul>
<li><a href="#basics_invocation">4.1 Invocation</a>
<ul>
<li><a href="#basics_invocation_commandline">4.1.1 Arguments en ligne de commande</a></li>
<li><a href="#basics_invocation_variable">4.1.2 Variable d'environnement pour l'i18n</a></li>
<li><a href="#basics_invocation_environment">4.1.3 Autres variables d'environnement</a></li>
</ul></li>
<li><a href="#basics_interface">4.2 Interface utilisateur</a>
<ul>
<li><a href="#basics_interface_noninteractive">4.2.1 Mode non-interactif</a></li>
<li><a href="#basics_interface_interactive">4.2.2 Mode Interactif</a></li>
</ul></li>
<li><a href="#basics_files">4.3 Fichiers</a></li>
<li><a href="#basics_import_export">4.4 Fonctions d'import/export</a>
<ul>
<li><a href="#basics_import">4.4.1 Import</a></li>
<li><a href="#basics_export">4.4.2 Export</a></li>
</ul></li>
<li><a href="#basics_help">4.5 Aide en ligne</a></li>
</ul></li>
<li><a href="#options">5. Options</a>
<ul>
<li><a href="#options_general">5.1 Options g�n�rales</a></li>
<li><a href="#options_keys">5.2 Raccourcis clavier</a>
<li><a href="#options_colors">5.3 Th�mes graphiques</a></li>
<li><a href="#options_layout">5.4 Disposition des panneaux</a></li>
<li><a href="#options_notify">5.5 R�glages de la barre de notification</a></li>
</ul></li>
<li><a href="#known_bugs">6. Bogues connus</a></li>
<li><a href="#bugs">7. Rapporter les bogues et commentaires</a></li>
<li><a href="#contribute">8. Comment contribuer?</a>
<ul>
<li><a href="#contribute_documentation">8.1 Traduction de la documentation</a></li>
<li><a href="#contribute_i18n">8.2 Traduction de <code>calcurse</code></a>
<ul>
<li><a href="#contribute_i18n_overview">8.2.1 Aper�u</a></li>
<li><a href="#contribute_i18n_translator">8.2.2 Etapes de la traducion</a></li>
<li><a href="#contribute_i18n_po-files">8.2.3 Fichiers <code>po</code></a></li>
</ul></li>
</ul></li>
<li><a href="#links">9. Liens</a>
<ul>
<li><a href="#links_homepage">9.1 Site internet de <code>calcurse</code></a></li>
<li><a href="#links_list">9.2 Liste de diffusion de <code>calcurse</code></a></li>
<li><a href="#links_rss">9.3 Flux RSS</a></li>
<li><a href="#links_others">9.4 Autres liens</a></li>
</ul></li>
<li><a href="#thanks">10. Remerciements</a></li>
</ul>
</div>
<h1>1. Introduction<a name="intro"></a></h1>
<p>
<code>calcurse</code> est un logiciel compos� d'un calendrier et d'un organiseur
personnel en mode texte. Il permet de stocker les �v�nements et rendez-vous,
ainsi qu'une liste de t�ches � effectuer. Un syst�me de notification,
enti�rement configurable par l'utilisateur, permet d'�tre pr�venu lorsque
l'heure d'un rendez-vous approche. L'interface utilisateur est elle aussi
configurable, et peut s'adapter aux besoins de chacun. Enfin, un syst�me d'aide
en ligne permet d'obtenir des renseignements sur toutes les commandes
disponibles.
</p>
<h1>2. Aper�u du logiciel<a name="overview"></a></h1>
<h2>2.1 Origine de Calcurse<a name="overview_history"></a></h2>
<p>
J'ai commenc� � penser � ce projet � la fin de mon doctorat
en astrophysique... Je commen�ais en effet � avoir de plus
en plus de mal � m'organiser, et j'avais vraiment besoin d'un
bon outil pour m'aider dans cette t�che difficile ;)
</p>
<p>
D'autre part, j'appr�cie beaucoup les logiciels qui font appel
� des Interfaces en Mode Texte, parce que je les trouve plus
simples, plus rapides, plus portables et plus efficaces. J'ai
alors commenc� � programmer un calendrier rudimentaire qui
utilisait une interface de ce type. En plus de cela, je
voulais am�liorer mes connaissances en <code>C</code>, langage
de programmation que je n'avais utilis� jusqu'alors que dans
le cadre de petits projets pendant mes �tudes. J'ai donc pens�
que ce serait une bonne chose de me lancer dans ce projet,
puisque cela me permettrait � la fois de mieux m'organiser, et
d'apprendre � mieux programmer en <code>C</code>!
</p>
<p>
Malheureusement, j'ai obtenu mon doctorat avant de terminer
<code>calcurse</code>, mais j'ai tout de m�me voulu continuer
� travailler sur ce projet, en esp�rant que ce
programme serait utile � d'autres
personnes. Voil� comment est n�
<code>calcurse</code>...
</p>
<p>
Mais au fait, pourquoi 'calcurse' ? Et bien ce nom provient
simplement de la concat�nation de 'CALendrier' et de
'nCURSEs', qui est le nom de la librairie utilis�e pour
construire l'interface utilisateur.
</p>
<h2>2.2 Caract�ristiques importantes<a name="overview_features"></a></h2>
<p>
<code>Calcurse</code> est multi-plateformes et est con�u pour
�tre l�ger, rapide et fiable. Il doit �tre utilis� dans un
terminal ou une console, soit localement ou bien sur une
machine distante par l'intermediaire d'une liaison ssh (ou
similaire).
</p>
<p>
<code>Calcurse</code> peut �tre lanc� dans deux modes diff�rents:
soit interactif, soit non-interactif. Le premier mode permet
de visualiser son organiseur personnel pratiquement sous
n'importe quel environnement, gr�ce � l'interface en mode texte.
Le deuxi�me mode permet de cr�er facilement des penses-b�te en
ajoutant <code>calcurse</code> avec les arguments appropri�s dans
la table cron ou dans le script d'initialisation du shell.
</p>
<p>
De plus, <code>calcurse</code> a �t� cr�� en prenant en compte
l'utilisateur final � chaque �tape de sa conception,
c'est-�-dire en essayant d'�tre le plus intuitif
possible. Cela implique la pr�sence d'une aide en ligne
exhaustive, ainsi que le rappel de toutes les commandes
possibles dans la barre de status. L'interface utilisateur
est �galement configurable, et l'on peut choisir parmi de
nombreuses combinaisons possibles de couleurs et de positions
des fen�tres. Les raccourcis clavier peuvent �tre d�finis aussi
par l'utilisateur, pour correspondre aux besoins de chacun.
Enfin, le syst�me de notification est
enti�rement configurable, l'utilisateur peut donc choisir la
mani�re dont il veut �tre pr�venu de l'approche d'un
rendez-vous.
</p>
<h1>3. Installation<a name="install"></a></h1>
<h2>3.1 Pr�-requis<a name="install_requirements"></a></h2>
<h3>3.1.1 Librairie <code>ncurses</code><a name="install_requirements_ncurses"></a></h3>
<p>
L'installation de <code>Calcurse</code> ne n�cessite qu'un
compilateur <code>C</code>, comme <code>cc</code> ou <code>gcc</code>,
et la librairie <code>ncurses</code>.
Il serait tr�s surprenant que vous n'ayez pas d�j� la librairie
<code>ncurses</code> d'install�e sur votre machine, mais si
c'est le cas, vous pourrez la trouver � l'adresse suivante :
</p>
<pre>http://ftp.gnu.org/pub/gnu/ncurses/</pre>
<div class="todo">
<p class="rq"><span class="valorize">Note:</span>
It is also possible to link <code>calcurse</code> against the
<code>ncursesw</code> library (ncurses with support for unicode).
However, UTF-8 is not yet supported by <code>calcurse</code>.</p>
</div>
<h3>3.1.2 Librairie <code>gettext</code><a name="install_requirements_gettext"></a></h3>
<p>
<code>calcurse</code> s'aide de la librairie
<code>gettext</code> pour le support de l'internationalisation
(not� <span class="emp">i18n</span> ci-apr�s). Cela signifie que
<code>calcurse</code> peut fournir des messages multilingues
s'il est compil� avec le support NLS (<span class="emp">Native
Language Support</span> - <span class="emp">Support de Langage
Natif</span>).
</p>
<p>
Cependant, ce support est optionnel et si vous n'avez pas
besoin de la traduction des messages affich�s, vous pouvez
d�sactiver cette option. La d�sactivation du support
<span class="emp">NLS</span> s'effectue en passant l'option
<code>--disable-nls</code> � <code>configure</code>
(voir la section <a href="#install_process">Processus
d'Installation</a>).
</p>
<p>
Pour v�rifier que les utilitaires <code>gettext</code> sont
bien install�s sur votre systs�me, vous pouvez
par exemple v�rifier la pr�sence du fichier
<code>libintl.h</code> en tapant : </p>
<pre>locate libintl.h</pre>
<p>
Dans l'�ventualit� o� ce fichier ne serait pas trouv�,
vous pouvez obtenir les sources de <code>gettext</code>
� l'adresse suivante :</p>
<pre>http://ftp.gnu.org/pub/gnu/gettext/</pre>
<p>
<p class="rq"><span class="valorise">Remarque :</span> M�me si
<code>libintl.h</code> est bien localis� par la commande
pr�c�dente, il peut �tre utile de sp�cifier son emplacement au
moment de lancer le <a href="#install_process">processus
d'installation</a>, en passant l'option
<code>--with-libintl-prefix</code> au script
<code>configure</code>. En effet, ce script pourrait ne pas
trouver le fichier <code>libintl.h</code> si celui-ci n'est
pas install� dans un endroit usuel.</p>
<h2>3.2 Processus d'installation<a name="install_process"></a></h2>
<p>
Vous devez tout d'abord d�compresser l'archive source de la
mani�re suivante :</p>
<pre>tar zxvf calcurse-2.6.tar.gz</pre>
<p>
Une fois que vous remplissez tous les pr�-requis n�cessaires �
l'installation, le processus de compilation est simple et suit
les trois �tapes usuelles :
<ol>
<li><code>./configure</code></li>
<li><code>make</code></li>
<li><code>make install</code> (peut n�cessiter les privil�ges
super-utilisateur)</li>
</ol>
</p>
<p>
Vous pouvez obtenir la liste des options possibles en tapant
<code>./configure --help</code>.
</p>
<h1>4. Pr�sentation g�n�rale<a name="basics"></a></h1>
<h2>4.1 Invocation<a name="basics_invocation"></a></h2>
<h3>4.1.1 Arguments en ligne de commande<a name="basics_invocation_commandline"></a></h3>
<p>
Lors de son appel en ligne de commande, <code>calcurse</code>
accepte les arguments suivants (les arguments courts ou longs
sont support�s) :</p>
<p>
<dl>
<dt><code>-a, --appointment</code></dt>
<dd>
Affiche les rendez-vous pour la date du jour, puis quitte.
<p class="rq"><span class="valorise">Remarque:</span> le calendrier � utiliser peut �tre
sp�cifi� en utilisant l'option '-c'.</p>
</dd>
<dt><code>-c <fichier>, --calendar <fichier></code></dt>
<dd>
Sp�cifie le fichier calendrier � utiliser.
Le calendrier par d�faut est celui contenu dans
<code>~/.calcurse/apts</code>
(voir la section <a href="#basics_files">Fichiers</a>).
</dd>
<dt><code>-d <date|num>, --day <date|num></code></dt>
<dd>
Affiche les rendez-vous pour la date ou pour le nombre de
jours indiqu�s, suivant le format de l'argument. Deux
formats diff�rents sont accept�s :
<ul>
<li>une date (voir ci-dessous pour les formats disponibles).</li>
<li>un nombre 'n'.</li>
</ul>
Dans le premier cas, la liste des rendez-vous pour la
date sp�cifi�e sera affich�e, alors que dans le
deuxi�me cas, la liste des rendez-vous pour les 'n'
jours � venir sera retourn�e.
Par exemple, taper <code>calcurse -d 3</code> fera
s'afficher les rendez-vous pour aujourd'hui, demain
et apr�s-demain.
<div class="todo">
Possible formats for specifying the date are defined inside the
general configuration menu (see
<a href="#options_general">General options</a>), using the
<code>input_datefmt</code> variable.
</div>
<p class="rq"><span class="valorise">Remarque:</span>
comme pour l'option '-a', le fichier contenant le calendrier
� lire peut �tre sp�cifi� en utilisant l'option '-c'.</p>
</dd>
<dt><code>-D <dir>, --directory <dir></code></dt>
<dd>
Indique le r�pertoire dans lequel seront stock�es les donn�es.
Cette option n'est pas compatible avec l'option '-c'. Si ce
r�pertoire n'est pas sp�cifi�, celui utilis� par d�faut est
<code>'~/.calcurse/'</code>.
</dd>
<dt><code>-h, --help</code></dt>
<dd>
Affiche l'aide d�crivant les options en ligne de commande,
puis quitte.</dd>
<dt><code>-i <file>, --import <file></code></dt>
<dd>
Importe les donn�es au format icalendar contenues dans le fichier
<code>file</code>.
</dd>
<dt><code>-n, --next</code></dt>
<dd>
Affiche le rendez-vous suivant dans les prochaines 24 heures, puis
quitte.
Le temps indiqu� repr�sente le nombre d'heures et de
minutes restantes avant le rendez-vous.
<p class="rq"><span class="valorise">remarque:</span>
le fichier contenant le calendrier � lire peut
�tre sp�cifi� en utilisant l'option '-c'.</p>
</dd>
<dt><code>-N, --note</code></dt>
<dd>
Lorsque cette option est utilis�e avec les options '-a' ou '-t',
le contenu des notes associ�es aux rendez-vous et aux t�ches sera
�galement affich�.
</dd>
<dt><code>-r[num], --range[=num]</code></dt>
<dd>
Affiche les rendez-vous et les �v�nements pour le nombre num de
jours puis quitte. Si l'argument optionnel num n'est pas donn�,
une plage d'une seule journ�e sera utilis�e.
</dd>
<dt><code>-s[date], --startday[=date]</code></dt>
<dd>
Affiche les rendez-vous et les �v�nements depuis la date indiqu�e
puis quitte. Si l'argument optionnel date n'est pas donn�, la journ�e
courante sera utilis�e.
</dd>
<dt><code>-S<regex>, --search=<regex></code></dt>
<dd>
Lorsque cette option est utilis�e avec les options '-a', '-d', '-r',
'-s' ou '-t', seuls les �l�ments dont la description correspond �
l'expression r�guli�re pass�e en argument seront affich�s.
</dd>
<dt><code>-t[num], --todo[=num]</code></dt>
<dd>
Affiche la liste des 'todo', puis quitte. Si le nombre optionnel
<code>num</code> est indiqu�, alors uniquement les t�ches
ayant une priorit� �gale � <code>num</code> seront
affich�es.
La priorit� doit �tre comprise entre 1 (priorit� la plus haute) et 9
(priorit� la plus basse). Il est �galement possible de sp�cifier 0
pour la priorit�, auquel cas seules les t�ches complet�es seront
affich�es.</p>
</dd>
<dt><code>-v, --version</code></dt>
<dd>
Affiche la version de <code>calcurse</code>, puis quitte.
</dd>
<dt><code>-x[format], --export[=format]</code></dt>
<dd>
Exporte les donn�es utilisateur au format sp�cifi�. Les �v�nements,
rendez-vous et t�ches sont convertis et imprim�s sur la sortie
standard. Deux formats d'export diff�rents sont disponibles :
le format ical et le format pcal (voir la section
<a href="#links_others">Liens</a> ci-dessous).
Si l'argument optionnel <code>format</code> n'est pas indiqu� par
l'utilisateur, alors le format ical sera utilis� par d�faut.
<p class="rq"><span class="valorise">Note:</span>
afin de sauvegarder les donn�es export�es dans un fichier,
il est n�cessaire de rediriger la sortie standard en utilisant une
commande comme celle-ci:
<code>$ calcurse --export > mon_fichier.dat</code></p>
</dd>
</dl>
<h3>4.1.2 Variable d'environnement pour l'i18n<a name="basics_invocation_variable"></a></h3>
<p>
<code>calcurse</code> peut �tre compil� avec le support
<span class="emp">NLS</span> (voir <a
href="#install_requirements_gettext">Librairie
<code>gettext</code></a>). Ainsi, si vous voulez que les
messages affich�s apparaissent dans votre langue natale,
assurez-vous tout d'abord que celle-ci est pr�sente dans le
fichier <code>po/LINGUAS</code>. Ce fichier indique toutes
les traductions disponibles par l'interm�diaire d'un code de
deux lettres (par exemple, <span class="emp">fr</span>
repr�sente le fran�ais). Si vous ne trouvez pas votre langue,
il serait tr�s appr�ci� que vous apportiez votre aide pour
traduire <code>calcurse</code> (voir la partie <a
href="#contribute">Comment contribuer?</a>).</p>
<p>
Si votre langue est disponible, lancez <code>calcurse</code>
en utilisant la commande suivante : </p>
<pre>LC_ALL=fr_FR calcurse</pre>
<p>o� <span class="emp">fr_FR</span> doit �tre remplac� par la
<span class="emp">locale</span> (code de la langue suivi du
code pays) correspondant � la traduction voulue.</p>
<p>
Il est �galement recommand� de sp�cifier le codage � utiliser,
car dans certains cas des probl�mes d'affichage des accents
peuvent survenir. Ce codage est indiqu� au d�but du fichier po
correspondant � la langue voulue. Par exemple, vous pouvez
remarquer dans le fichier fr.po que le codage utilis� est
iso-8859-1. Vous pouvez donc le pr�ciser au lancement de
<code>calcurse</code>:</p>
<pre>LC_ALL=fr_FR.ISO8859-1 calcurse</pre>
<h3>4.1.3 Autres variables d'environnement<a name="basics_invocation_environment"></a></h3>
<p>
Les variables d'environnement suivantes agissent sur le comportement de
<code>calcurse</code>:</p>
<dl>
<dt><code>VISUAL</code></dt>
<dd>Indique l'�diteur externe qui sera utilis� pour r�diger des notes.
</dd>
<dt><code>EDITOR</code></dt>
<dd>Si la variable d'environnement <code>VISUAL</code> n'est pas
renseign�e, l'�diteur externe qui sera utilis� par d�faut est celui
contenu dans la variable <code>EDITOR</code>. Si aucune de ces deux
variables n'est renseign�e, alors <code>/usr/bin/vi</code> sera
appel� par d�faut.
</dd>
<dt><code>PAGER</code></dt>
<dd>Indique le visualiseur utilis� par d�faut pour consulter les
notes. Si cette variable n'est pas renseign�e, alors
<code>/usr/bin/less</code> sera utilis�.
</dd>
</dl>
<h2>4.2 Interface utilisateur<a name="basics_interface"></a></h2>
<h3>4.2.1 Mode non-interactif<a name="basics_interface_noninteractive"></a></h3>
<p>
Lorsque il est appel� avec au moins un des arguments suivants:
<code>-a</code>, <code>-d</code>, <code>-h</code>,
<code>-n</code>, <code>-t</code>, <code>-v</code>, <code>-x</code>,
<code>calcurse</code> est lanc� en mode non-interactif.
Cela signifie que l'information demand�e sera affich�e,
puis <code>calcurse</code> quittera et vous serez ramen�
au prompt de l'interpr�teur de commandes.</p>
<p>
De cette mani�re, il est possible de rajouter une ligne telle
que <code>'calcurse --todo --appointment'</code> dans le fichier d'initialisation
de son environnement, afin de faire s'afficher � chaque
d�but de session la liste des t�ches � faire et des rendez-vous
planifi�s pour la journ�e.</p>
<h3>4.2.2 Mode interactif<a name="basics_interface_interactive"></a></h3>
<div class="todo">
<p class="rq"><span class="valorise">Note:</span>
Key bindings that are indicated in this manual correspond to
the default ones, defined when <code>calcurse</code> is launched
for the first time. If those key bindings do not suit user's needs,
it is possible to change them within the keys configuration menu
(see <a href="#options_keys">key bindings</a>).</p>
</div>
<p>
Lorsqu'il est appel� sans aucun argument ou uniquement avec
l'option <code>'-c'</code>, <code>calcurse</code> est lanc�
en mode interactif. Dans ce mode s'affiche une interface qui
contient trois panneaux diff�rents, qu'il est possible de
s�lectionner cycliquement en utilisant la touche 'TAB', ainsi
que d'une barre de notification et une autre de status
(voir la figure ci-dessous).</p>
<pre>
panneau rendez-vous---. .---panneau calendrier
| |
v v
+------------------------------------++----------------------------+
| Rendez-vous || Calendrier |
|------------------------------------||----------------------------|
| (|) Avril 6, 2006 || Avril 2006 |
| ||Lun Mar Mer Jeu Ven Sam Dim |
| || 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 |
| || |
| |+----------------------------+
| |+----------------------------+
| || T�ches | panneau
| ||----------------------------| t�ches �
| || | faire
| || | |
| || |<--.
| || |
+------------------------------------++----------------------------+
|---[ Lun 22-11-2006 | 18:11:43 ]---(apts)----> 01:20 :: d�ner <---|<--.
+------------------------------------------------------------------+ barre de
| ? Aide R Retracer H/L -+1 Jour G Aller � C Config | notification
| Q Quitter S Sauver J/K -+1 Sem. Tab Chg vue |<-.
+------------------------------------------------------------------+ |
|
barre de status
</pre>
<p>
Le premier panneau repr�sente un calendrier qui permet de
s�lectionner un jour en particulier. Le second panneau contient
une liste d'�v�nements et les rendez-vous du jour, et le dernier
contient une liste des t�ches � faire, mais qui ne sont pas
assign�es � une journ�e en particulier.</p>
<p>
On peut remarquer dans le panneau des rendez-vous le signe
<span class="emp">'(|)'</span>
plac� juste devant la date. Ce signe repr�sente la phase de la lune.
En fonction de la phase actuelle de celle-ci, un des signes suivants
peut-�tre indiqu� :
<dl class="compact">
<dt>'<code> |) </code>':</dt>
<dd>premier quartier</dd>
<dt>'<code> (|) </code>':</dt>
<dd>pleine lune</dd>
<dt>'<code> (| </code>':</dt>
<dd>dernier quartier</dd>
<dt>'<code> | </code>':</dt>
<dd>nouvelle lune</dd>
<dt>aucun signe:</dt>
<dd>la phase actuelle de la lune ne correspond �
aucune des phases ci-dessus</dd>
</dl>
</p>
<p>
Tout en bas de l'�cran on retrouve une barre de status, qui indique
les actions possibles en fonction du contexte, ainsi que la
touche qui doit �tre press�e pour effectuer cette action.</p>
<p>
Juste au-dessus de cette barre se trouve la barre de notification, qui
indique les informations suivantes, de gauche � droite : la date du jour,
l'heure courante, le fichier calendrier actuellement ouvert (il s'agit
de apts dans la copie d'�cran, qui est le fichier par d�faut, comme indiqu�
dans la section suivante), et le premier rendez-vous programm� dans les
prochaines 24 heures. Dans cet exemple, il s'agit d'un d�ner qui aura lieu
dans une heure et vingt minutes.</p>
<p class="rq"><span class="valorise">Remarque:</span>
Certaines actions, comme �diter ou ajouter un
el�ment, n�cessitent de renseigner du texte par
l'interm�diaire de l'�diteur de ligne de commande
fournit avec <code>calcurse</code>.</p>
<p>
Dans cet �diteur, si la ligne de commande est plus longue que la
largeur de l'�cran, le caract�re '>', '*', ou '<'
sera rajout� dans la derni�re colonne s'il reste du texte
apr�s, avant et apr�s, ou avant la position courante,
respectivement. La ligne d�file horizontalement si
n�cessaire.</p>
<p>
De plus, il existe des combinaisons de touches pour
effectuer certaines actions courantes utiles lors de l'�dition
de textes. Voici ces raccourcis:
<dl class="compact">
<dt><code>^a</code>:</dt>
<dd>d�placer le curseur au d�but de la ligne</dd>
<dt><code>^b</code>:</dt>
<dd>d�placer le curseur d'une position en arri�re</dd>
<dt><code>^d</code>:</dt>
<dd>effacer le caract�re sous le curseur</dd>
<dt><code>^e</code>:</dt>
<dd>d�placer le curseur en fin de ligne</dd>
<dt><code>^f</code>:</dt>
<dd>d�placer le curseur d'une position en avant</dd>
<dt><code>^h</code>:</dt>
<dd>effacer le caract�re pr�c�dent</dd>
<dt><code>^k</code>:</dt>
<dd>effacer le texte depuis la position courante
jusqu'� la fin de la ligne</dd>
<dt><code>ESC</code>:</dt>
<dd>annuler l'�dition du texte courant</dd>
</dl>
</p>
<h2>4.3 Fichiers<a name="basics_files"></a></h2>
<p>
La structure de fichiers suivante est cr��e dans le r�pertoire
<code>$HOME</code> de l'utilisateur (ou bien dans le r�pertoire
indiqu� par l'option '-D') la premi�re fois que
<code>calcurse</code> est lanc� :</p>
<pre>
$HOME/.calcurse/
|___notes/
|___conf
|___keys
|___apts
|___todo
</pre>
<dl class="compact">
<dt><code>notes/</code>:</dt>
<dd>ce sous-r�pertoire contient la description des notes
rattach�es aux rendez-vous, �v�nements ou t�ches. Un fichier
texte est cr�� par note, et son nom est construit � l'aide de
la fonction mkstemp(3). Ainsi, l'unicit� de ce nom est assur�e,
mais il n'a pas de relation avec l'�l�ment auquel la note est
rattach�e.</dd>
<dt><code>conf</code>:</dt>
<dd>ce fichier contient la configuration de l'utilisateur</dd>
<dt><code>keys</code>:</dt>
<dd>ce fichier contient les raccourcis clavier d�finis par l'utilisateur</dd>
<dt><code>apts</code>:</dt>
<dd>ce fichier contient tous les �v�nements ainsi que les
rendez-vous de l'utilisateur</dd>
<dt><code>todo</code>:</dt>
<dd>ce fichier contient la liste des t�ches � effectuer</dd>
</dl>
<h2>4.4 Fonctions d'import/export<a name="basics_import_export"></a></h2>
<p>
Les possibilit�s offertes par <code>calcurse</code> pour importer et exporter
des donn�es sont d�crites ci-dessous.
</p>
<h3>4.4.1 Import<a name="basics_import"></a></h3>
<p>
Les donn�es au format icalendar tel que d�crit dans la sp�cification
rfc2445 (voir la section <a href="#links_others">liens</a> ci-dessous)
peuvent �tre import�es dans calcurse. L'import ical de calcurse est bas�
sur la version 2.0 de la norme rfc2445, mais pour le moment, seul un
sous-ensemble de cette sp�cification a �t� impl�ment�.
</p>
<p>
Les propri�t�s suivantes sont g�r�es par calcurse:
<ul>
<li>�l�ments <code>VTODO</code>:<br>
"PRIORITY", "VALARM", "SUMMARY", "DESCRIPTION"</li>
<li>�l�ments <code>VEVENT</code>:<br>
"DTSTART", "DTEND", "DURATION", "RRULE", "EXDATE", "VALARM", "SUMMARY",
"DESCRIPTION"</li>
</ul>
</p>
<p>
La propri�t� "DESCRIPTION" du format icalendar sera convertie dans calcurse
en ajoutant une note � l'�l�ment. Si une propri�t� "VALARM" est trouv�e,
l'�l�ment sera marqu� comme �tant important et l'utilisateur recevra une
notification (ceci ne fonctionne que pour les rendez-vous).
</p>
<p>
Voici la liste des propri�t�s qui ne sont pas encore impl�ment�es:
<ul>
<li>les dur�es n�gatives ne sont pas prises en compte (l'�l�ment n'est
pas import�)</li>
<li>certaines fr�quences de r�p�tition ne sont pas reconnues:<br>
"SECONDLY" / "MINUTELY" / "HOURLY"</li>
<li>Certains mots-cl�s li�s aux r�p�titions ne sont pas reconnus
(ceux commen�ant par 'BY'):<br>
"BYSECOND" / "BYMINUTE" / "BYHOUR" / "BYDAY" / "BYMONTHDAY"<br>
"BYYEARDAY" / "BYWEEKNO" / "BYMONTH" / "BYSETPOS"<br>
plus "WKST"</li>
<li>le mot-cl� "EXRULE" n'est pas reconnu</li>
<li>les fuseaux horaires ne sont pas pris en compte</li>
</ul>
</p>
<h3>4.4.2 Export<a name="basics_export"></a></h3>
<p>
Deux formats peuvent �tres utilis�s pour l'export des donn�es:
<code>ical</code> et <code>pcal</code> (voir la section
<a href="#links_others">Liens</a> ci-dessous pour avoir plus d'informations
concernant ces formats).
</p>
<h2>4.5 Aide en ligne<a name="basics_help"></a></h2>
<p>
A n'importe quel moment, le syst�me d'aide en ligne peut �tre
appel� en pressant la touche '?'. Une fois rentr� dans l'aide,
les informations sur une commande sp�cifique peuvent �tre
obtenues en appuyant sur la touche correspondant � cette
commande.
</p>
<h1>5. Options<a name="options"></a></h1>
<p>
Tous les param�tres de <code>calcurse</code> sont configurables
� partir du menu <code>Configuration</code>, accessible en appuyant
sur 'C'. L'utilisateur se voit alors pr�sent� un second menu
avec trois choix possibles : appuyer � nouveau sur 'C' am�ne
au menu de s�lection des couleurs de l'interface, appuyer sur
'L' permet de choisir parmi diff�rents emplacements pour les
panneaux de la fen�tre principale de <code>calcurse</code>,
appuyer sur 'G' vous permet de fixer les options g�n�rales, 'K'
vous permet d'acc�der au menu de configuration des raccourcis clavier,
et enfin
les param�tres de la barre de notification peuvent �tre fix�s
en appuyant sur 'N'.</p>
<h2>5.1 Options g�n�rales<a name="options_general"></a></h2>
<p>
Ces options contr�lent le comportement g�n�ral de
<code>calcurse</code>, comme d�crit ci-dessous :</p>
<dl>
<dt><code>sauvegarde_automatique</code>
(valeur par d�faut: <span class="emp">oui</span>)</dt>
<dd>Cette option permet de sauvegarder automatiquement
les donn�es de l'utilisateur avant de quitter, si elle est
fix�e � <span class="emp">oui</span>.
<p class="rq"><span class="valorise">attention:</span>
Aucune donn�e ne sera automatiquement
sauvegard�e si cette variable est fix�e � <code>non</code>.
Cela signifie que l'utilisateur doit appuyer sur 'S'
(pour sauvegarder) pour retrouver ses modifications au prochain
lancement de <code>calcurse</code>.</p>
</dd>
<div class="todo">
<dt><code>periodic_save</code>
(default: <span class="emp">0</span>)</dt>
<dd>If different from '0', user's data will be automatically
saved every <span class="emp">periodic_save</span> minutes.
When an automatic save is performed, two asterisks
(i.e. '<code>**</code>') will appear on the top right-hand side
of the screen).</p>
</dd>
</div>
<dt><code>confirmer_pour_quitter</code>
(valeur par d�faut: <span class="emp">oui</span>)</dt>
<dd>Si cette option est fix�e � <span class="emp">oui</span>,
la confirmation
de l'utilisateur est n�cessaire avant de pouvoir quitter.
Autrement, appuyer sur 'Q' provoquera l'arr�t de
<code>calcurse</code> sans demander confirmation.
</dd>
<dt><code>confirmer_pour_effacer</code>
(valeur par d�faut: <span class="emp">oui</span>)</dt>
<dd>Si cette option est fix�e � <span class="emp">oui</span>, appuyer sur 'D'
pour effacer un �lement (soit une t�che, un rendez-vous ou bien
un �venement) provoquera l'apparition d'un message demandant
la confirmation de l'utilisateur avant d'effacer cet �lement.
Si cette option est fix�e � <span class="emp">non</span>, aucune confirmation
ne sera demand�e avant l'effacement d'un �lement.
</dd>
<dt><code>masquer_messages_syst�me</code>
(valeur par d�faut: <span class="emp">non</span>)</dt>
<dd>Fixer cette option � <span>oui</span> provoque la disparition des
messages relatifs aux enregistrements ou lectures des fichiers
de donn�es. Ceci peut �tre utile pour acc�lerer les processus
d'entr�es/sorties.
</dd>
<dt><code>masquer_barre_progression</code>
(valeur par d�faut: <span class="emp">non</span>)</dt>
<dd>Si elle est fix�e � <span class="emp">oui</span>, cette option provoque la
disparition de la barre de progression qui est normalement charg�e
d'indiquer l'�tat d'avancement de l'enregistrement des fichiers
de donn�es. Si cette option est fix�e � <span class="emp">non</span>,
cette barre
sera affich�e, en m�me temps que le nom du fichier de donn�es
actuellement en cours d'�criture
(voir la section <a href="#basics_files">Fichiers</a>).
</dd>
<dt><code>semaine_commence_lundi</code>
(valeur par d�faut: <span class="emp">oui</span>)</dt>
<dd>Il est possible dans <span class="emp">calcurse</span> d'indiquer quel est le
premier jour de la semaine, � savoir soit le lundi, soit le dimanche.
Si l'option <code>semaine_commence_lundi</code> est fix�e �
<span class="emp">oui</span>, les semaines du calendrier commenceront le lundi.
Par contre si cette option est fix�e � <span class="emp">non</span>,
les semaines d�buteront le dimanche.
</dd>
<dt><code>format_date_sortie</code>
(valeur par d�faut: <span class="emp">%D</span>)</dt>
<dd>Indique le format qui sera utilis� pour afficher les dates en mode
non-interactif. Par d�faut, les dates sont affich�es comme suit :
<span class="emp">mm/jj/aa</span>.
Les diff�rents formats disponibles sont visibles en
tapant la commande suivante dans un terminal: <code>man 3 strftime</code>.
</dd>
<dt><code>format_date_entr�e</code>
(valeur par d�faut: <span class="emp">1</span>)</dt>
<dd>Indique le format qui sera utilis� pour entrer les dates dans
<span class="emp">calcurse</span>. Quatre choix sont possibles :
<ol>
<li>mm/jj/aaaa</li>
<li>jj/mm/aaaa</li>
<li>aaaa/mm/jj</li>
<li>aaaa-mm-jj</li>
</ol>
</dd>
</dl>
<div class="todo">
<h2>5.2 Key bindings<a name="options_keys"></a></h2>
<p>
One can define it's own keybindings within the 'Keys' configuration
menu. The default keys look like the one used by the <code>vim</code>
editor, especially the displacement keys. Anyway, within this
configuration menu, users can redefine all of the keys available from
within calcurse's user interface.</p>
<p>
To define new keybindings, first highlight the action to which it will
apply. Then, delete the actual key binding if necessary, and add a new
one. You will then be asked to press the key corresponding to the new
binding. It is possible to define more than one key binding for a single
action.</p>
<p>
An automatic check is performed to see if the new key binding
is not already set for another action. In that case, you will be asked
to choose a different one. Another check is done when exiting from this
menu, to make sure all possible actions have a key associated with it.</p>
<p>
The following keys can be used to define bindings:
<ul>
<li>lower-case, upper-case letters and numbers, such as 'a', 'Z', '0'</li>
<li>CONTROL-key followed by one of the above letters</li>
<li>escape, horizontal tab, and space keys</li>
<li>arrow keys (up, down, left, and right)</li>
<li>'HOME' and 'END' keys</li>
</ul> </p>
<p>
While inside the key configuration menu, an online help is available for
each one of the available actions. This help briefly describes what the
highlighted action is used for.</p>
</div>
<h2>5.3 Th�mes graphiques<a name="options_colors"></a></h2>
<p>
Le th�me graphique de <code>calcurse</code> peut �tre adapt� aux besoins de
l'utilisateur. Pour changer les options par d�faut, la page de configuration
permet de s�lectionner la couleur voulue pour l'interface (premier plan et
fond). L'utilisateur doit pour cela se d�placer sur la bonne couleur en
utilisant les touches fl�ches ou les touches de d�placement par d�faut, et
appuyer sur 'X' ou la barre d'espace pour s�lectionner la couleur. Il est
�galement possible de conserver la couleur par d�faut du terminal de
l'utilisateur en s�lectionnant le choix corresondant dans la liste.</p>
<p>
Cette couleur est alors appliqu�e � la bordure des
panneaux, aux titres, aux combinaisons de touches, et aux
informations g�n�rales affich�es dans la
barre de status. Un th�me en noir et blanc est
�galement disponible, afin de supporter les terminaux
monochromes.</p>
<p class="rq"><span class="valorise">Remarque:</span>
Suivant le type de terminal que vous utilisez, et suivant
la valeur de la variable d'environnement <code>$TERM</code>,
la couleur peut �tre support�e ou non. Un message
d'erreur appara�tra si vous essayez d'appliquer un
th�me graphique en couleur alors que votre terminal est
monochrome. Si vous savez que votre terminal supporte les couleurs
mais que <code>calcurse</code> ne veut pas les afficher,
essayez de changer la valeur de la variable d'environnement
<code>$TERM</code> (appliquez par exemple la valeur
<span class="emp">xterm-xfree86</span>).
</p>
<h2>5.4 Disposition des panneaux<a name="options_layout"></a></h2>
<p>
La disposition des panneaux � l'int�rieur de la fen�tre de
<code>calcurse</code> peut �tre param�tr�e. Par d�faut, le
panneau contenant le calendrier se situe en haut � droite de
la fen�tre, le panneau contenant la liste des t�ches est situ�
en bas � droite, et le panneau contenant les rendez-vous se
trouve sur la partie gauche de l'�cran (voir la figure dans la
section <a href="#basics_interface_interactive">Mode interactif</a>
pour un exemple de la disposition par d�faut).
En choisissant une autre disposition pour les �l�ments composants
la fen�tre de <code>calcurse</code>, l'utilisateur peut adapter
� ses besoins l'interface du programme.</p>
<h2>5.5 R�glages de la barre de notification<a name="options_notify"></a></h2>
<p>
Les options suivantes permettent de modifier les r�glages de la
barre de notification:</p>
<dl>
<dt><code>barre-notification_afficher</code>
(valeur par d�faut: <span class="emp"oui</span>)</dt>
<dd>Cette option indique si la barre de notification doit �tre
affich�e ou pas.</dd>
<dt><code>barre-notification_date</code>
(valeur par d�faut: <span class="emp">%a %F</span>)</dt>
<dd>Avec cette option, il vous est possible de sp�cifier le format qui
doit �tre utilis� pour afficher la date du jour dans la barre de
notification. Les diff�rents formats possibles sont visibles en
tapant la commande suivante dans un terminal: <code>man 3 strftime</code>.
</dd>
<dt><code>barre-notification_heure</code>
(valeur par d�faut: <span class="emp">%T</span>)</dt>
<dd>Avec cette option, il vous est possible de sp�cifier le format qui
doit �tre utilis� pour afficher l'heure courante dans la barre de
notification. Les diff�rents formats possibles sont visibles en
tapant la commande suivante dans un terminal: <code>man 3 strftime</code>.
</dd>
<dt><code>barre-notification_alerte</code>
(valeur par d�faut: <span class="emp">300</span>)</dt>
<dd>Si l'utilisateur a programm� un rendez-vous dans les prochaines
'barre-notification_alerte' secondes, et qu'il a marqu� celui-ci
comme �tant important, l'affichage de ce rendez-vous clignotera dans
la barre de notification.
De plus, la commande d�finie par <code>barre-notification_commande</code>
sera execut�e.
De cette mani�re, l'utilisateur sera alert� et saura que l'heure du rendez-vous
approche.</dd>
<dt><code>barre-notification_commande</code>
(valeur par d�faut: <span class="emp">printf '\a'</span>)</dt>
<dd>Cette option indique la commande qui sera lanc�e lorsque l'heure d'un
rendez-vous approchera, et que ce rendez-vous a �t� marqu� comme
'important'. La commande sp�cifi�e par cette option sera pass�e au shell
de l'utilisateur, qui l'interpretera. Pour savoir quel shell doit �tre
utilis�, <code>calcurse</code> lit le contenu de la variable
d'environnement <code>$SHELL</code>, et si cette variable est vide, la
commande sera pass�e � <code>/bin/sh</code>.
<p class="rq"><span class="valorise">Exemple:</span>
Supposons que le programme <code>mail</code> soit
disponible sur l'ordinateur de l'utilisateur, celui-ci peut indiquer la
commande suivante afin d'�tre pr�venu par mail lorsqu'un rendez-vous
approche (la description de ce rendez-vous sera �galement mentionn�e
dans le corps du mail):</p>
<code>
calcurse --next | mail -s "[calcurse] nouveau rendez-vous!" user@host.com
</code>
</dd>
</dl>
<h1>6. Bogues connus<a name="known_bugs"></a></h1>
<p>
Une coloration incorrecte des objets peut r�sulter
d'une utilisation conjointe d'un th�me graphique en
noir et blanc et d'une variable <code>$TERM</code>
fix�e � <span class="emp">xterm-color</span>. Pour supprimer ce
bogue, et comme le conseille Thomas E. Dickey (le
r�sponsable du projet <code>xterm</code>),
<span class="emp">xterm-xfree86</span> devrait �tre assign�
� la variable <code>$TERM</code> en lieu et place de
<span class="emp">xterm-color</span> :</p>
<blockquote class="rq">
"La valeur xterm-color pour la variable $TERM est un mauvais
choix pour les terminaux XFree86 parce qu'elle est couramment
utilis�e pour les entr�es terminfo qui ne
supportent pas bce. Utilisez plutôt l'entr�e
xterm-xfree86 qui est distribu�e avec le xterm
d'XFree86 (ou par celui, similaire, distribu� avec ncurses)."
</blockquote>
<h1>7. Rapporter les bogues et commentaires<a name="bugs"></a></h1>
<p>
Merci de renvoyer vos rapports de bogues et vos commentaires �
l'adresse suivante :</p>
<pre>calcurse .�. culot .point. org </pre>
<p>
ou directement � l'auteur :</p>
<pre>frederic .�. culot .point. org </pre>
<h1>8. Comment contribuer?<a name="contribute"></a></h1>
<p>
Si vous d�sirez contribuer au projet, vous pouvez tout d'abord
envoyer vos commentaires sur ce qui vous pla�t ou d�pla�t ou sur
ce qui vous manque dans <code>calcurse</code>.
Pour le moment, les contributions possibles concernent
la traduction des messages de <code>calcurse</code> ainsi que
de la documentation.</p>
<p class="rq"><span class="valorise">Remarque:</span>
toute contribution � la traduction de
<code>calcurse</code> serait tr�s
appr�ci�e, mais avant tout, envoyez un mail
� <code>calcurse-i18n .�. culot .point. org</code> pour savoir si
quelqu'un a d�j� commenc� le processus de
traduction dans votre langue.</p>
<h2>8.1 Traduction de la documentation<a name="contribute_documentation"></a></h2>
<p>
Le r�pertoire <span class="emp">doc/</span> du paquet source contient
d�j� des versions traduites de la documentation.
Cependant, si celle-ci n'est pas encore disponible dans votre
langue, votre aide pour sa traduction serait tr�s
appr�ci�e.</p>
<p>
Pour cela, il suffit de copier un des fichiers existant et de
renommer cette copie en <code>manual_XX.html</code>, o�
<span class="emp">XX</span> repr�sente votre langue. Il faut ensuite
traduire ce fichier nouvellement cr�� et de
l'envoyer � l'auteur (voir <a href="#bugs">Rapporter
les bogues et commentaires</a>), pour qu'il soit inclus dans
la prochaine version de <code>calcurse</code>.</p>
<h2>8.2 Traduction de <code>calcurse</code><a name="contribute_i18n"></a></h2>
<p>
Comme mentionn� plus haut, les utilitaires
<code>gettext</code> sont utilis�s par
<code>calcurse</code> pour produire des messages
multilingues. Cette section explique comment traduire ces
messages dans votre langue. Cependant, cette notice est
d�lib�r�ment incompl�te,
puisqu'elle ne se concentre que sur l'utilisation de
<code>gettext</code> avec <code>calcurse</code>. Pour avoir
une vision plus large du Support de Langage Natif
(<code>NLS</code>), il est pr�f�rable de se
r�f�rer au manuel de <code>GNU gettext</code>
que l'on peut trouver � l'adresse suivante :</p>
<pre>http://www.gnu.org/software/gettext/manual/</pre>
<p>
Pour r�sumer, trois cat�gories de personnes sont
impliqu�es dans la cha�ne de traduction : les
programmeurs, les coordinateurs de la traduction, et les
traducteurs. Apr�s un rapide aper�u de la
mani�re de proc�der pour traduire le logiciel,
nous d�crirons plus en d�tails les t�ches du
traducteur.</p>
<h3>8.2.1 Aper�u<a name="contribute_i18n_overview"></a></h3>
<p>
Afin de pouvoir afficher du texte dans la langue natale de
l'utilisateur, deux �tapes sont n�cessaires :
l'<span class="emp">internationalisation</span> (i18n), et la
<span class="emp">localisation</span> (l10n).</p>
<p>
L'i18n permet � <code>calcurse</code> d'�tre
multilingue. C'est un processus qui est mis en place par les
programmeurs, qui marquent les phrases � traduire au
sein du code source, et qui fournissent les outils pour que
ces phrases soient traduites automatiquement pendant le
d�roulement du programme.</p>
<p>
La l10n correspond quant � elle au processus qui permet
� <code>calcurse</code> de s'adapter � la langue
de l'utilisateur. C'est-�-dire qu'il traduit les
phrases pr�c�demment marqu�e par les
programmeurs, et qu'il fixe correctement les variables
d'environnement afin que <code>calcurse</code> puisse utiliser
les r�sultats de cette traduction.</p>
<p>
Ainsi, les phrases traduisibles sont tout d'abord
marqu�es par les programmeurs dans le code source, puis
rassembl�es dans un fichier r�f�rence
(<span class="emp">calcurse.pot</span> - l'extension
<span class="emp">pot</span> signifiant
<span class="emp">portable object template</span>, objet portable de
r�f�rence). Le contenu de ce fichier est alors
associ� aux fichiers contenant la traduction pour
chacune des diff�rentes langues (fichier <span class="emp">fr.po</span>
pour le fran�ais par exemple - <span class="emp">po</span> siginifiant
<span class="emp">portable object</span>, objet portable - qui peut �tre
lu par les humains). Le traducteur devra se servir de ce
fichier, et traduira les phrases qu'il contient, puis
l'enverra aux d�veloppeurs. Ensuite, au niveau de la
compilation du programme, une version binaire de ce fichier
sera produite (pour des raisons d'efficacit�), puis
install�e. Cette version binaire a pour extension
<span class="emp">.mo</span>, o� <span class="emp">mo</span>
signifie <span class="emp">machine
object</span> - objet machine, c'est-�-dire qui peut
�tre lu par le programme. Pour finir,
<code>calcurse</code> se servira de ce fichier <span class="emp">mo</span>
lors de son ex�cution pour traduire les phrases dans la langue
de l'utilisateur.</p>
<h3>8.2.2 Etapes de la traduction<a name="contribute_i18n_translator"></a></h3>
<p>
Supposons que quelqu'un veuille commencer une traduction dans
une nouvelle langue. Voici les �tapes � suivre
pour ce faire :</p>
<ul>
<li>Premi�rement, trouver quel est le nom de la locale
correspondant � la langue � traduire. Par
exemple, pour le fran�ais, il s'agit de 'fr_FR', ou
simplement 'fr'. C'est cette valleur que l'utilisateur devra
mettre dans la variable d'environnement <code>LC_ALL</code>
pour obtenir la version traduite du logiciel (voir <a
href="#basics_invocation_variable">Variable d'environnement
pour l'i18n</a>).</li>
<li>Ensuite, il faut se rendre dans le r�pertoire
<span class="emp">po/</span>, et cr�er un nouveau fichier <span class="emp">.po</span>
� partir du fichier de r�f�rence en utilisant la commande suivante :
<code>'msginit -i calcurse.pot -o fr.po -l fr --no-translator'</code>
Si vous n'avez pas <code>msginit</code> install� sur
votre syst�me, vous pouvez plus simplement copier
<span class="emp">calcurse.pot</span> en <span class="emp">fr.po</span>
par exemple, et �diter l'en-t�te du fichier nouvellement cr��
manuellement.</li>
</ul>
<p>
Maintenant, ayant � disposition ce fichier
<span class="emp">fr.po</span>, la traduction peut commencer.</p>
<h3>8.2.3 Fichiers <code>po</code><a name="contribute_i18n_po-files"></a></h3>
<p>
Le format des fichiers <code>po</code> est assez simple. En effet,
ils ne contiennent que quatre �l�ments
diff�rents :</p>
<ol>
<li><span class="emp">ligne d'emplacement:</span> renseigne sur l'emplacement
de la phrase dans le fichier source (donne le nom du fichier
ainsi que le num�ro de ligne), afin de retrouver
simplement le contexte d'o� est issu la phrase �
traduire.</li>
<li><span class="emp">ligne msgid:</span> indique la phrase � traduire.</li>
<li><span class="emp">ligne msgstr:</span> ligne indiquant la phrase traduite.</li>
<li><span class="emp">lignes commen�ant par '#'</span>: indiquent des
commentaires (certains ont une signification sp�ciale,
comme nous le verrons plus tard).</li>
</ol>
<p>
Pour r�sumer, un traducteur doit simplement remplir les
champs <span class="emp">msgstr</span> avec la traduction des lignes
trouv�es juste au-dessus dans la partie <span class="emp">msgid</span>.</p>
<p>
<span class="valorise">Remarques:</span>
<dl>
<dt><span class="emp">Phrases marqu�es Fuzzy</span></dt>
<dd>Vous pourrez rencontrer des phrases commen�ant par le
commentaire <code>"#, fuzzy"</code>.
<code>calcurse</code> n'utilisera pas les traductions
commen�ant par ce commentaire, � moins que vous
ne transformiez ces phrases. En effet, le commentaire
<code>fuzzy</code> signifie que la phrase a d�j�
�t� traduite mais qu'elle a depuis
�t� chang�e dans le source du programme,
ou bien que <code>gettext</code> a effectu� lui-m�me
une traduction, en se basant sur une phrase similaire. Cela
implique donc que vous devez v�rifier la traduction.
Parfois, la phrase originale a chang� suite �
une correction de faute de frappe. Dans ce cas, vous n'aurez
pas besoin de modifier la traduction. Mais dans d'autres cas,
cette traduction peut ne plus �tre valable et
n�cessitera alors une mise � jour. Une fois
cette mise � jour effectu�e, vous pouvez
supprimer
le commentaire <code>"#, fuzzy"</code>, et la traduction sera
alors � nouveau prise en compte par <code>calcurse</code>.
</dd>
<dt><span class="emp">Lignes au format C et s�quences sp�ciales</span></dt>
<dd>Certaines phrases ont le commentaire suivant: <code>"#,
c-format"</code>. Cela signifie que des parties du texte
� traduire ont une signification particuli�re
pour le programme, et qu'il ne faut pas les modifier. Par
exemple, les s�quences contenant des <code>%</code>, comme
<code>"%s"</code>. Cela signifie que <code>calcurse</code>
remplacera ces s�quences par d'autres expressions. Il
est donc important de ne pas les modifier. Il existe
�galement des s�quences contenant des
<code>\</code>, comme <code>\n</code> ou <code>\t</code>. Il ne
faut pas les modifier non plus. En effet, la premi�re
s�quence repr�sente une fin de ligne, et la
deuxi�me une tabulation.</dd>
<dt><span class="emp">D�coupage des traductions</span></dt>
<dd>Si certaines lignes sont trop longues, il est possible de
d�couper les phrases comme dans l'exemple ci-apr�s:
<pre>
msgid ""
"une ligne tr�s longue"
"une autre ligne"
</pre></dd>
<dt><span class="emp">En-t�te des fichiers po</span></dt>
<dd>Au tout d�but du fichier <span class="emp">po</span>, la
premi�re phrase forme un en-t�te o�
diff�rentes informations doivent �tre
renseign�es. La plus importante est le jeu de
caract�res utilis�. Cette information devrait
ressembler �
<pre>
"Content-Type: text/plain; charset=utf-8\n"
</pre>
Il est �galement n�cessaire de remplir le champ
<span class="emp">Last-Translator</span> -
<span class="emp">Dernier Traducteur</span>, afin
que d'autres traducteurs potentiels puissent se mettre en
relation avec la derni�re personne ayant
retouch� le fichier. De cette mani�re, il est
plus simple de coordonner les efforts de traduction. Il est
possible de rajouter son adresse de courrier
�lectronique, par exemple:
<pre>
"Last-Translator: Frederic Culot <frederic@culot.org>\n"
</pre></dd>
<dt><span class="emp">Commentaires</span></dt>
<dd>Ajouter des commentaires (lignes commen�ant par '#')
peut �tre un bon moyen de signaler des probl�mes ou
difficult�s de traduction aux autres traducteurs.</dd>
<dt><span class="emp">Taille des phrases</span></dt>
<dd><code>calcurse</code> est un programme comportant une
interface console/curses, il d�pend donc de la taille
du terminal utilis� (plus particuli�rement du
nombre de colonnes). Il est important de garder ceci en
m�moire au moment de la traduction. Souvent, la phrase
� traduire doit tenir dans une seule ligne (soit en
g�n�ral 80 caract�res). Il faut en tenir
compte, et essayer de voir o� la phrase sera
plac�e pour adapter sa traduction.</dd>
<dt><span class="emp">Quelques outils utiles</span></dt>
<dd>Le format des fichiers <code>po</code> est relativement simple, et
ils peuvent �tre modifi�s avec un �diteur
de texte standard. Mais il est �galement possible
d'utiliser des outils sp�cialis�s pour cette
t�che:
<ul>
<li><code>poEdit</code> (<a
href="http://www.poedit.org/" target="_blank">
http://www.poedit.org/</a>)</li>
<li><code>KBabel</code> (<a
href="http://i18n.kde.org/tools/kbabel/" target="_blank">
http://i18n.kde.org/tools/kbabel/</a>)</li>
<li><code>GTranslator</code> (<a
href="http://gtranslator.sourceforge.net/" target="_blank">
http://gtranslator.sourceforge.net/</a>)</li>
<li><code>Emacs</code> et son mode <code>po</code></li>
<li><code>Vim</code> et son mode <code>po</code></li>
</ul>
</dd>
<dt><span class="emp">Finalement...</span></dt>
<dd>J'esp�re que vous prendrez plaisir �
contribuer � l'internationalisation du monde des
logiciels libres. :) Si vous avez d'autres questions
concernant ce processus, n'h�sitez pas � me
contacter � l'adresse
<span class="emp">frederic .�. culot .point. org</span>.</dd>
</dl>
<h1>9. Liens<a name="links"></a></h1>
<p>
Cette section contient des liens en relation avec
<code>calcurse</code> qui peuvent vous �tre utiles.</p>
<h2>9.1 Site internet de <code>calcurse</code><a name="links_homepage"></a></h2>
<p>
La page web de <code>calcurse</code> est � l'adresse suivante :</p>
<pre>http://culot.org/calcurse</pre>
<h2>9.2 Liste de diffusion de <code>calcurse</code><a name="links_list"></a></h2>
<p>
Si vous �tes interess� par ce projet et que vous souhaitez
�tre pr�venu lorsqu'une nouvelle version est diffus�e, vous
pouvez souscrire � la liste de diffusion de <code>calcurse</code>.
De cette mani�re, vous recevrez un m�l d�s qu'une nouvelle
version est disponible.</p>
<p>
Pour souscrire � cette liste, envoyez un message � l'adresse
<span class="emp">calcurse-announce .�. culot .point. org</span>
avec "subscribe" dans le sujet du m�l.</p>
<h2>9.3 Flux RSS<a name="links_rss"></a></h2>
<p>
Une autre possibilit� pour �tre pr�venu lorsqu'une
nouvelle version de <code>calcurse</code> est disponible est de
s'abonner au flux RSS suivant :</p>
<pre>http://culot.org/calcurse/news_rss.xml</pre>
<p>
Ce flux RSS est mis � jour d�s qu'une nouvelle version de
<code>calcurse</code> est diffus�e, et indique quelles sont les
modifications qui ont �t� apport�es.</p>
<h2>9.4 Autres liens<a name="links_others"></a></h2>
<p>
La sp�cification du format ical (rfc2445) peut �tre trouv�e � l'adresse
suivante :
<pre>http://tools.ietf.org/html/rfc2445</pre>
<p>
La page du projet pcal se trouve quant � elle � l'adresse suivante :
<pre>http://pcal.sourceforge.net/</pre>
<h1>10. Remerciements<a name="thanks"></a></h1>
<p>
Je voudrais remercier ici toutes les personnes sans qui ce projet
n'aurait jamais pu voir le jour! En particulier :
<ul>
<li>Alex pour ses patches, aides et conseils sur la programmation en
<code>C</code></li>
<li>Gwen pour les tests et les discussions sur la manière d'am�liorer
<code>calcurse</code></li>
<li>Herbert pour la maintenance du paquet <code>calcurse</code> pour
FreeBSD</li>
<li>Zul pour la maintenance du paquet <code>calcurse</code> pour
NetBSD</li>
<li>Kevin, Ryan, et fEnIo pour la maintenance du paquet <code>calcurse</code>
pour Debian et Ubuntu</li>
<li>Wain, Steffen and Ronald pour la maintenance du paquet <code>calcurse</code> pour
Archlinux</li>
<li>Pascal pour la maintenance du paquet <code>calcurse</code> pour
Slackware</li>
<li>Alexandre pour la maintenance du paquet <code>calcurse</code> pour
Mac OsX et Darwin</li>
<li>Igor pour la maintenance du paquet <code>calcurse</code> pour
ALT Linux</li>
<li>Joel pour son script de calendrier qui a inspir� celui de
<code>calcurse</code></li>
<li>Michael Schulz et Chris M. pour la traduction allemande de <code>calcurse</code>
et de son manuel</li>
<li>Jose Lopez pour la traduction espagnole de <code>calcurse</code>
et de son manuel</li>
<li>Neil Williams pour la traduction anglaise</li>
<li>Tony pour son patch qui a permis d'am�liorer la fonction
recur_item_inday(), et pour l'impl�mentation des options de configuration
concernant les formats de date</li>
<li>Jeremy Roon pour la traduction en N�erlandais</li>
<li>Leandro Noferini pour la traduction en Italien</li>
<li>Erik Saule pour son patch qui a permis d'impl�menter les options '-N',
'-s', '-S', '-r', et '-D' de la ligne de commande</li>
<li>les personnes qui �crivent des logiciels que j'appr�cie et qui
m'ont inspir� lors de la conception de ce projet, en particulier:
<ul>
<li><code>vim</code> pour les touches de d�placement</li>
<li><code>orpheus</code> et <code>abook</code> pour la documentation</li>
<li><code>pine</code> et <code>aptitude</code>
pour l'interface en mode texte</li>
</ul></li>
</ul>
</p>
<p>
Et pour terminer, un tr�s grand merci � tous les utilisateurs de
<code>calcurse</code> qui m'ont fait parvenir leurs commentaires.</p>
<div class="footer">
Copyright © 2004-2009 Fr�d�ric Culot<br>
Calcurse version 2.6 - Derni�re modification: 10 Juillet 2009<br>
</div>
</div>
</body>
</html>