Skip to content

Latest commit

 

History

History
335 lines (226 loc) · 18.7 KB

README_fr.rst

File metadata and controls

335 lines (226 loc) · 18.7 KB

NaïveCalendar

Author: Daguhh
Version: 0.7.0

readme_fr git_badge doc sphinx deb package

naïf, naïve n. adj.

1. LITTERAIRE Qui est naturel, sans artifice, spontané. Art naïf, art populaire, folklorique. — Un peintre naïf.

2. COURANT Qui est plein de confiance et de simplicité par ignorance, par inexpérience. ➙ candide, ingénu, simple. — Qui exprime des choses simples que tout le monde sait. Remarque naïve. ➙ simpliste.

LeRobert

Un popup calendrier avec rofi et python3 :

classic dark square dark nord round_light nord classic light compact

Fonctionnalités

  • Parcourez le calendrier de mois en mois
  • Support de la langue locale ou forcer une langue
  • Créez et éditez des notes liés à chaque date du calendrier. Une date possédant une note apparait colorée
  • Créez plusieurs types de notes (c-à-d plusieurs dossier), créez des évenements récurrents, basculez entre elles.
  • Personnalisez les thèmes, contenus, symboles, raccourcis avec de simples fichiers textes
  • Changez de thème à la volée
  • Intrégrez le à vos scripts et rendez les iinteracifs : ouvrir à une date particulière, demander une date, copier une date dans le presse papier.

Dépendances

Requirements

Recommends

  • xclip (option "copier dans le presse papier)
  • sensible-utils (sous-command "update" : choix de l'éditeur)

Suggests

  • fontawesome (icons)

Installation

Manuelle

Le naivecalendar utilise deux fichiers:

  • naivecalendar.py : envoie la liste des entrées d'un calendrier vers la sortie standard
  • naivecalendar.sh : lance rofi en mode script en interaction avec le fichier précedent.

Plus, deux fichiers de configuration:

  • /themes/<theme>.rasi : fichier de configuration rofi (forme et couleurs)
  • /themes/<theme>.cfg : un fichier .ini qui défini le contenu du calendrier

Copiez simplement les fichiers dans le même dossier (en respectant l'arborescece)

finallement, lancez avec:

./naivecalendar.sh

Paquet (debian)

apt install ./naivecalendar_x.y.z_all.deb

Lancez avec:

naivecalendar

Utilisation

Basique

Executez le script, puis:

  • Interagisez avec la souris ou le clavier
  • Utlisez les flêches pour parcourir le calendrier
  • Cliquez sur un date ou créer une note liée (Un jour avec une note attachée apparaitra colorée)
  • Les notes sont enregistrée dans {HOME}/.naivecalendar_notes/ (Vous devez les supprimer manuellement)

Raccourcis

Les raccourcis sont à entrer dans l'invite de commande rofi. La liste ci-dessous est à titre indicative et peut varier selon les themes. L'entièreté des symboles peut être modifée via les fichiers de configurations. Sym est le symbole affiché à l'écran. Sym et Keys peuvent être utilisés pour executer une action.

Sym Keys Action
         
◀◀ << pp -- année précédente
< p - mois précédent
> n + mois suivant
▶▶ >> nn ++ année suivante
event ee   montre les évenements du mois courant
switch ss   change le type d'evénement affiché
help hh   montre l'aide
theme tt   montre le selecteur de thème
menu mm   montre le menu

Evenements

Les événements sont de simples fichiers (textes) créés par le calendrier à l'interaction avec un jour (clic/touche entée) Les noms de fichiers de ces evenenements doivent contenir des directives au format strftime (%d, %m ...).

note_%Y-%m-%d.txt

Ne pas donner de directive identifiant un jour et un mois permet par exemple de rendre récurrent l'évenement (parfait pour les anniversaires!).:

birthday_on_%d-%m.txt

Vous pouvez créer plusieurs types d'événements (qui ne sont que différents dossiers). Définir un nouveau type d'événement nécessite simplement la création d'un nouvelle entrée dans la section [EVENTS] des fichiers de configuration.:

[EVENTS]

Notes = .naivecalendar_events/MyNotes/note_%Y-%m-%d.txt
Birthday = .naivecalendar_events/Birthdays/birthday_on_%d-%m.txt

Les notes quant à elles supportent un léger format pour être correctement affichées lors de l'action "montrer les événements du mois" :

  • montrer section : si vous crééz des sections (format : [section]), toute ligne contenant cette directive sera affichées:

    [9H30] rdv with truc <---- will be displayed
    Some text
    Some text again
    [14H30] rdv with muche <----- will be displayed
    Some text again again
    
  • montrer entête : si la note ne contient pas de [section], la première ligne sera affichée:

    # Note Title  <---- only first line is displayed
    Some text
    Some text again...
    

Dans le menu "montrer les événements du mois", si vous interagissez avec le nom du fichier, l'editeur rouvrira la note, autrement, cliquer sur une autre ligne vous rammenaera au calendrier:

notes_2021-01-05 : <---- reopen editor
[9H30] rdv with truc   <--- do nothing : back to calendar
[14H30] rdv with muche

Options

Des options sont disponibles en ligne de commande et peuvent être utiles lors de l'integration dans un script ou pour écraser temporairement certains paramètres. Les sous-commandes update et add-event peuvent vous permettre d'éditeren une fois un paramètre sur tous les thèmes de l'utilisateur.

usage: naivecalendar [-h] [-V] [-v] [-p] [-x] [-f FORMAT] [-e EDITOR] [-l LOCALE] [-c] [-t THEME] [-d DATE]

A simple popup calendar

subcommands:
    update      Update a calendar parameter for all user themes at once
    add-event   Add, modify, delete event in all user themes config at once

optional arguments:
  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  -v, --verbose         direct rofi command  errors to stdout
  -p, --print           print date to stdout instead of opening a event
  -x, --clipboard       copy date to clipboard
  -f FORMAT, --format FORMAT
                        option '-p' or '-x' output format (datetime.strftime format, defaut='%Y-%m-%d')
  -e EDITOR, --editor EDITOR
                        editor command to open events
  -l LOCALE, --locale LOCALE
                        force system locale, for example '-l es_ES.utf8'
  -c, --read-cache      force calendar to read old date from cache
  -t THEME, --theme THEME
                        set calendar theme, default=classic_dark (theme file name without extention)
  -d DATE, --date DATE  display calendar at the given month, format='%m-%Y'

Personnalisation

Editer les paramètres dans les fichiers suivant:

  • contenu du calendrier : ./themes/<theme>.cfg
  • apparence du calendrier : ./themes/<theme>.rasi

Warning

modifier le contenu du calendrier peut demander la modification conjointe de l'apparence de ce dernier.

Des themes sont disponibles, vous pouvez les appliquer en tapant theme dans l'init de rofi ou les charger temporairement en précisnat l'arugment --theme. Vous pouvez créer vos propres fichiers de thème (rasi), placez les dans le dossier ./themes/

Vous pouvez commencer avec une copie des thèmes "officiels":

cp -r /usr/share/naivecalendar/themes/* ~/.config/naivecalendar/themes/

Note

Si vous créez un thème du même nom qu'existant dans le dossier /usr/share/naivecalendar/themes/, seul celui-ci sera prit en compte.

Puis, modifiez les thèmes, un par un avec votre éditeur favoris, ou, en masse à l'aide des sous commandes du naivecalendar (utilisez la complétion)

naivecalendar <subcommand> -h

Files

Voici une brêve description des fichiers demandés/générés par le calendrier

Fonction Fichier
 
commande rofi /usr/share/naivecalendar/naivecalendar.sh
script appellé par rofi /usr/share/naivecalendar/naivecalendar.py
fichiers de thèmes rofi /usr/share/naivecalendar/themes/*.rasi
configuration du contenu /usr/share/naivecalendar/themes/*.cfg
 
thèmes de l'utilisateur ~/.config/naivecalendar/themes/*.rasi
conf du contenu de l'utilisateur ~/.config/naivecalendar/themes/*.cfg
 
dossier des evenements (defaut) ~/.naivecalendar_events/<event type>/<user date format>.txt
 
fichier cache : date ~/.cache/naivecalendar/date_cache.ini
date au format -f|-format ~/.cache/naivecalendar/pretty_print_cache.txt
sauvegarde le thème ~/.cache/naivecalendar/theme_cache.txt
sauvegarder le type d'évenement ~/.cache/naivecalendar/event_cache.txt
log de la dernière commande rofi ~/.cache/naivecalendar/rofi_log.txt

Construction du paquet debian

sudo apt install devscripts
cd naivecalendar-x.y.z/
debuild -us -uc

Note

Personnalisez vos thèmes avant construction, l'intrégralité du dossier "themes" sera inclut dans votre paquet.

Documentation

Construisez la documentation

cd docs/
python3 -m pip install -r requirements.txt
make html