Emacs completion and handling accented characters with orderless

| emacs

I like using the orderless completion package for Emacs because it allows me to specify different parts of a completion candidate than any order I want. Because I'm learning French, I want commands like consult-line (which uses minibuffer completion) and completion-at-point (which uses in-buffer completion) to also match candidates where the words might have accented characters. For example, instead of having to type "utilisé" with the accented é, I want to type "utilise" and have it match both "utilise" and "utilisé".

(defvar my-orderless-accent-replacements
  '(("a" . "[aàáâãäå]")
    ("e" . "[eèéêë]")
    ("i" . "[iìíîï]")
    ("o" . "[oòóôõöœ]")
    ("u" . "[uùúûü]")
    ("c" . "[cç]")
    ("n" . "[nñ]"))) ; in case anyone needs ñ for Spanish

(defun my-orderless-accent-dispatch (pattern &rest _)
  (seq-reduce
   (lambda (prev val)
     (replace-regexp-in-string (car val) (cdr val) prev))
   my-orderless-accent-replacements
   pattern))

(use-package orderless
  :custom
  (completion-styles '(orderless basic))
  (completion-category-overrides '((file (styles basic partial-completion))))
  (orderless-style-dispatchers '(my-orderless-accent-dispatch orderless-affix-dispatch)))
2026-02-26_15-06-59.png
Figure 1: Screenshot of consult-line showing matching against accented characters
2026-02-26_15-08-34.png
Figure 2: Screenshot of completion-at-point matching "fev" with "février"

This is an entry for Emacs Carnival February 2026: Completion.

This is part of my Emacs configuration.
View Org source for this post

IndieWeb Carnival February 2026: Intersecting interests

| life
In English

This month, the theme for the IndieWeb Carnival is "Converging Interests." It might actually be easier to list which of my interests don't converge. My interests often overlap. I'll start with a description of my main interests and how they're linked.

Programming is generally useful. I'm particularly interested in automation and cognitive and physical aids like voice interfaces. I love Emacs. It's ostensibly a text editor, but I've tinkered with it to such an extent that I use it for almost everything: managing my notes and tasks, of course, but even recording and editing audio files and organizing my drawings.

Writing helps me think, remember, and share. Org Mode in Emacs allows me to use the technique of literate programming, which combines explaining and coding. Some ideas are easier to think about and express through drawing, which allows me to explore them non-linearly. My drawings apply to all my interests, such as parenting, technology, learning, and planning. Sketchnoting is a great way to learn many things, share my notes, and remember specific moments. For example, my daughter is eager to finish a visual summary we developed together, which was possible because I had written many notes in the web journal I developed and in my French journal.

I've been learning French for the past 4 months, and that also touches various aspects of my daily life. I help my daughter with school, I try to use AI, I tinker with my tools, I watch shows, and I look up words related to my interests. For instance, I updated my handwriting font to include accented letters. This combined drawing, programming, and naturally, learning French. I also modified my writing environment in Emacs to look up words in the dictionary and display AI feedback. I particularly enjoy exploring learning techniques with my daughter, such as flashcards and stories following the principle of comprehensible input. Which methods are effective against which challenges, and how can we make the most of available technology? What we learn will help us across all subjects.

Similarly, learning the piano helps me appreciate the challenge and pleasure of making progress. It's also a good way to help my daughter learn it as well.

Since my life is filled with intertwining interests, it is important to manage my attention despite many distracting temptations, such as programming new tools. I might start a task and then find myself doing something completely different after a series of small, totally logical, steps. You know how it goes—one thing leads to another. So I have to write my notes as I go. There is no rush and few of my tasks are urgent, so when I lose my train of thought, I can laugh and look for it again. If I write and share these notes, someone might find them even years later and remind me of them. It is very difficult to choose a moment to stop exploring and to publish my notes. The temptation is always to keep following a new idea.

Fortunately, the cumulative effect of hobbies that complement each other encourages me to grow, and when I am blocked in one direction, one or two other paths usually open up. Speaking of directions, I find it difficult to write when I want to introduce two or more simultaneous streams of ideas because writing is so linear. Still, it's better to write even if it's a bit disjointed.

I think speech recognition helps me capture more ideas, and I'm looking forward to how advances in technology can help me make them happen. I can also get better by learning and linking new curiosities to my other curiosities. I look forward to seeing what kinds of things are possible.

Although I have several hours of freedom now that my daughter can do many things herself, there's always more that I want to learn. Intertwined hobbies thrive, while isolated hobbies are forgotten. For example, I no longer play Stardew Valley since my daughter doesn't play it anymore. It’s a fun game, but if I'm choosing what to spend my time on, I prefer activities that serve multiple goals goals simultaneously. The garden of my interests is not formal and orderly, but rather natural and tangled.

My daughter also has many interests. One year she was interested in Rubik's Cubes and other puzzles; this year she's learning everything about Pokémon. The transience of her interests doesn't bother me. It all combines in unexpected ways. It will be interesting to see how she grows, and to see how I'll grow too.

Thanks to Zachary Kai for hosting the IndieWeb Carnival this month!

En français

Ce mois-ci, le thème du Carnaval IndieWeb est « Intérêts convergents. » C'est peut-être plus facile de lister lesquels de mes centres d'intérêt ne sont pas convergents. Mes centres d'intérêt se recoupent souvent. Je vais commencer par une description de mes premiers intérêts et des façons dont ils sont liés.

La programmation est généralement utile. Je suis particulièrement intéressée par l'automatisation et les aides cognitives et physiques comme l'interface vocale. J'adore Emacs, qui est un éditeur de texte, mais je le bricole à tel point que je l'utilise pour presque tout : gérer mes notes et mes tâches, bien sûr, mais même enregistrer et éditer des fichiers audio et organiser mes dessins.

L'écriture m'aide à penser, à me remémorer et à partager. Org Mode sous Emacs me permet d'utiliser la technique de « programmation lettrée », qui est la combinaison de l'explication et de la programmation. Quelques idées sont plus faciles à penser et à exprimer par le dessin, lequel me permet de les explorer non linéairement. Mes dessins s'appliquent aussi à tous mes centres d'intérêt, comme la parentalité, la technologie, l'apprentissage et la planification. Le sketchnoting est une bonne manière d'apprendre beaucoup de choses, de partager mes notes et de me souvenir de certains moments. Par exemple, ma fille a hâte de finir une synthèse visuelle que nous avons élaborée ensemble, et qui est possible parce que j'avais écrit beaucoup de notes dans le journal web que j'avais développé et dans mon journal en français.

L'apprentissage du français depuis 4 mois touche aussi divers aspects de ma vie quotidienne. J'aide ma fille à l'école, j'essaie d'utiliser l'IA, je bricole mes outils, je regarde des émissions, je cherche des mots pour mes centres d'intérêt. Par exemple, j'ai mis à jour la police de caractères de mon écriture pour inclure les lettres accentuées. Cela a associé le dessin, la programmation, et naturellement l'apprentissage du français. J'ai aussi modifié mon environnement d'écriture sous Emacs pour rechercher les mots dans le dictionnaire et pour afficher les commentaires de l'IA. J'aime particulièrement explorer des techniques d'apprentissage avec ma fille comme les cartes mémoire et les histoires qui suivent le principe de l'apport compréhensible. Quelles méthodes sont efficaces contre quels défis, et comment nous pouvons tirer le meilleur parti des technologies disponibles ? Ce que nous apprenons nous servira bien dans tous les sujets.

De la même manière, l'apprentissage du piano m'aide à apprécier le défi et le plaisir de progresser. Une autre raison de le faire est qu'il aide ma fille à l'apprendre aussi.

Comme ma vie est remplie d'intérêts qui s'entrelacent, c'est important de gérer mon attention face à plusieurs tentations de s'éparpiller, comme la programmation de nouvelles automatisations. Je commence peut-être une tâche et je me retrouve ensuite à faire une tâche complètement différente après une suite d'étapes logiques. On sait ce que c'est, de fil en aiguille. Donc je dois écrire mes notes au fur et à mesure. Rien ne me presse et peu de mes tâches sont urgentes, donc quand je perds le fil de mes pensées, je peux rire et le retrouver. Si j'écris et que je partage ces notes, quelqu'un peut les trouver même après plusieurs années et me les rappeler. C'est très difficile de choisir un moment où j'arrête d'explorer et où je publie mes notes. La tentation est toujours de continuer à suivre une nouvelle idée.

Heureusement, l'effet cumulatif de loisirs qui se complètent m'encourage à grandir, et quand je suis bloquée dans une direction, une ou deux autres pistes se sont ouvertes. En parlant de directions, je trouve que c'est difficile d'écrire quand je veux introduire deux ou plusieurs suites d'idées simultanées, à cause de la linéarité de l'écriture. De toute façon, c'est mieux d'écrire même si c'est un peu décousu.

Je pense que la reconnaissance vocale m'aide à saisir plus d'idées et les progrès technologiques m'aident à les exécuter. Je vais aussi m'améliorer en apprenant et en reliant de nouvelles curiosités à mes autres curiosités. J'ai hâte de voir quelles sortes de choses sont possibles.

Bien que j'aie plusieurs heures de liberté maintenant que ma fille est capable de faire beaucoup de choses elle-même, il y a toujours plus de choses que je veux apprendre. Les loisirs entrelacés se développent, tandis que les loisirs isolés sont oubliés. Par exemple, je ne joue plus à Stardew Valley maintenant que ma fille n'y joue plus. C'est un jeu amusant, mais si je peux choisir un passe-temps, j'en préfère un qui serve des objectifs multiples simultanés. Le jardin de mes intérêts n'est pas formel et ordonné, mais plutôt naturel et entremêlé.

Ma fille a aussi beaucoup de centres d'intérêt. Une année elle s'est intéressée au Cube de Rubik et aux autres casse-têtes, une autre année elle apprenait tout sur Pokémon. Ça ne me dérange pas, tout se combine de façons inattendues. Ce sera intéressant de voir comment elle grandira, et moi aussi.

Merci à Zachary Kai d'accueillir le Carnaval IndieWeb ce mois-ci !

View Org source for this post

Sorting completion candidates, such as sorting Org headings by level

| emacs, org

At this week's Emacs Berlin meetup, someone wanted to know how to change the order of completion candidates. Specifically, they wanted to list the top level Org Mode headings before the second level headings and so on. They were using org-ql to navigate Org headings, but since org-ql sorts its candidates by the number of matches according to the code in the org-ql-completing-read function, I wasn't quite sure how to get it to do what they wanted. (And I realized my org-ql setup was broken, so I couldn't fiddle with it live. Edit: Turns out I needed to update the peg package) Instead, I showed folks consult-org-heading which is part of the Consult package, which I like to use to jump around the headings in a single Org file. It's a short function that's easy to use as a starting point for something custom.

Here's some code that allows you to use consult-org-heading to jump to an Org heading in the current file with completions sorted by level.

(with-eval-after-load 'consult-org
  (advice-add
   #'consult-org--headings
   :filter-return
   (lambda (candidates)
     (sort candidates
           :lessp
           (lambda (a b)
             (let ((level-a (car (get-text-property 0 'consult-org--heading a)))
                   (level-b (car (get-text-property 0 'consult-org--heading b))))
               (cond
                ((< level-a level-b) t)
                ((< level-b level-a) nil)
                (t nil))))))))
2026-02-26_13-42-58.png
Figure 1: Screenshot showing where the candidates transition from top-level headings to second-level headings

My previous approach defined a different function based on consult-org-heading, but using the advice feels a little cleaner because it will also make it work for any other function that uses consult-org--headings.

I also wanted to get this to work for C-u org-refile, which uses org-refile-get-location. This is a little trickier because the table of completion candidates is a list of cons cells that don't store the level, and it doesn't pass the metadata to completing-read to tell it not to re-sort the results. We'll just fake it by counting the number of "/", which is the path separator used if org-outline-path-complete-in-steps is set to nil.

(with-eval-after-load 'org
  (advice-add
   'org-refile-get-location
   :around
   (lambda (fn &rest args)
     (let ((completion-extra-properties
            '(:display-sort-function
              (lambda (candidates)
                (sort candidates
                      :key (lambda (s) (length (split-string s "/"))))))))
       (apply fn args)))))
2026-02-26_14-01-28.png
Figure 2: Screenshot of sorted refile entries

In general, if you would like completion candidates to be in a certain order, you can specify display-sort-function either by calling completing-read with a collection that's a lambda function instead of a table of completion candidates, or by overriding it with completion-category-overrides if there's a category you can use or completion-extra-properties if not.

Here's a short example of passing a lambda to a completion function (thanks to Manuel Uberti):

(defun mu-date-at-point (date)
  "Insert current DATE at point via `completing-read'."
  (interactive
   (let* ((formats '("%Y%m%d" "%F" "%Y%m%d%H%M" "%Y-%m-%dT%T"))
          (vals (mapcar #'format-time-string formats))
          (opts
           (lambda (string pred action)
             (if (eq action 'metadata)
                 '(metadata (display-sort-function . identity))
               (complete-with-action action vals string pred)))))
     (list (completing-read "Insert date: " opts nil t))))
  (insert date))

If you use consult--read from the Consult completion framework, there is a :sort property that you can set to either nil or your own function.

This entry is part of the Emacs Carnival for Feb 2026: Completion.

This is part of my Emacs configuration.
View Org source for this post

La semaine du 16 février au 22 février

| french

lundi 16 février

C'était le Jour de la famille, donc ma fille n'a pas eu école. Nous avons préparé des petits pains chinois au porc char siu. Cette fois, j'ai encore utilisé la recette pour les petits pains à la vapeur, mais j'ai laissé la pâte reposer plus longtemps. On s'est régalés.

Nous avons fait une promenade au parc pour jouer à Pokémon Go ensemble. Ma fille et moi avons coopéré pour battre deux arènes. Nous avons aussi attrapé beaucoup de Pokémon.

Ma fille et moi avons utilisé Claude IA pour générer des cartes mémoire pour apprendre la négation, les conjugaisons du verbe « avoir », et le vocabulaire sur la Saint-Valentin en lisant des phrases humoristiques sur les Pokémon et leurs dresseurs. Nous les avons apprises ensemble. Elle était plus amusée qu'en classe. Je pense que les cartes mémoire de l'IA seront une bonne manière d'apprendre le français si elle n'a pas la possibilité de les faire elle-même.

Comme elle a obtenu de bonnes notes et qu'elle gère bien ses propres responsabilités, je vais renouveler l'abonnement à Claude IA, qu'elle préfère pour générer des histoires interactives.

mardi 17 février

J'avais un rendez-vous avec mon tuteur pendant lequel nous avons commencé à corriger ma prononciation du texte de mon brouillon sur mon apprentissage du français. Les gens conseillent de ne pas s'inquiéter du son «r» alors que je dois travailler mes voyelles et mon rythme. Ça viendra ! Les commentaires de mon tuteur étaient immédiatement utiles. Grâce à sa correction de ma prononciation du mot « psychologique » (où il faut prononcer le « p » initial, qui est muet en anglais), après le rendez-vous, j'ai pu apprendre à ma fille la prononciation du nom « Psykokwak » qui est le Pokémon qui s'appelle Psyduck en anglais. Il était sur une des cartes mémoire hier soir. Après le rendez-vous, j'ai mis à jour mon article et mes enregistrements.

Ma fille m'a dit qu'elle avait atteint un score parfait aux questions sur la négation et les conjugaisons du verbe avoir. Bravo ! L'apprentissage du français nous donne plusieurs occasions de discuter des manières d'apprendre, ce qui est plus utile que des mots spécifiques.

Il faisait beau l'après-midi, donc je me suis assise dehors et j'ai bricolé mon smartphone pour faciliter le basculement entre le dictionnaire et Orgzly Revived en utilisant Tasker pour configurer un raccourci clavier. J'ai finalement trouvé une façon de changer le correcteur automatique de l'anglais au français sur l'application Google Docs. Il fallait utiliser l'interface web pour configurer la langue, car cette option n'est pas dans l'application mobile. L'écran de l'iPad est meilleur que celui de mon smartphone, donc si je peux l'utiliser sur le porche quand il fera beau, je pense que je vais l'apprécier ce printemps.

Après l'école, il y avait de la brume. J'ai essayé de convaincre ma fille de sortir, mais elle a traîné des pieds. Ce n'était pas grave. Je suis allée me promener seule.

mercredi 18 février

J'ai mis à jour la police de caractères qui est créée à partir de mon écriture. Je l'ai créée il y a 6 ans et je l'utilise pour les titres sur mon site pour ajouter une touche personnelle. Maintenant que j'apprends le français, de temps en temps, ces titres sont en français. Jusqu'à présent, les lettres accentuées étaient affichées dans une police de secours. J'ai dépoussiéré mes notes, j'ai dessiné de nouvelles lettres sur mon iPad, je les ai séparées en glyphes que j'ai importés dans FontForge via Python, et j'ai copié des informations sur le crénage d'autres lettres. Le processus a pris un peu de temps parce que la bibliothèque libxml2 était obsolète et j'ai dû la remplacer par lxml. J'ai aussi dû mettre à jour mon logiciel pour convertir les lettres accentuées en noms de glyphes, parce que mon ancien code partait du principe que toutes les lettres étaient simples. J'étais ravie d'avoir réussi. Le résultat a toujours besoin d'être amélioré, mais c'est acceptable pour le moment.

Pour le déjeuner, j'ai préparé des toasts au fromage.

J'ai ajouté une commande vocale pour traduire rapidement du français en anglais quand je dis « okay, translate … ». Elle insère le résultat pour l'instant, mais ce serait peut-être mieux si je l'affichais comme une suggestion de saisie pour me forcer à taper moi-même.

C'est une bonne chose que ma fille ait son propre abonnement à Claude IA au lieu de le partager avec mon mari qui l'essayait aussi. Elle atteint toujours la limite car elle s'en sert pour combattre l'ennui pendant l'école virtuelle. Ce n'est pas un problème pour le moment parce qu'elle gère bien ses responsabilités.

Il faisait un temps de chien, avec la neige et la pluie verglaçante. Nos amis ont annulé leur événement, donc nous sommes volontiers restés à la maison. J'ai déneigé autour de la maison. La neige était très lourde, donc c'était un bon exercice.

Un brouillon pour le Carnaval IndieWeb

Ce mois-ci, le thème du Carnaval IndieWeb est « Intérêts convergents. » C'est peut-être plus facile de lister lesquels de mes centres d'intérêt ne sont pas convergents. Mes centres d'intérêt se recoupent souvent. Je vais commencer par une description de mes premiers intérêts et des façons dont ils sont liés.

La programmation est généralement utile. Je suis particulièrement intéressée par l'automatisation et les aides cognitives et physiques comme l'interface vocale. J'adore Emacs, qui est un éditeur de texte, mais je le bricole à tel point que je l'utilise pour presque tout : gérer mes notes et mes tâches, bien sûr, mais même enregistrer et éditer des fichiers audio et organiser mes dessins.

L'écriture m'aide à penser, à me remémorer et à partager. Org Mode sous Emacs me permet d'utiliser la technique de « programmation lettrée », qui est la combinaison de l'explication et de la programmation. Quelques idées sont plus faciles à penser et à exprimer par le dessin, lequel me permet de les explorer non linéairement. Mes dessins s'appliquent aussi à tous mes centres d'intérêt, comme la parentalité, la technologie, l'apprentissage et la planification. Le sketchnoting est une bonne manière d'apprendre beaucoup de choses, de partager mes notes et de me souvenir de certains moments. Par exemple, ma fille a hâte de finir une synthèse visuelle que nous avons élaborée ensemble, et qui est possible parce que j'avais écrit beaucoup de notes dans le journal web que j'avais développé et dans mon journal en français.

L'apprentissage du français depuis 4 mois touche aussi divers aspects de ma vie quotidienne. J'aide ma fille à l'école, j'essaie d'utiliser l'IA, je bricole mes outils, je regarde des émissions, je cherche des mots pour mes centres d'intérêt. Par exemple, j'ai mis à jour la police de caractères de mon écriture pour inclure les lettres accentuées. Cela a associé le dessin, la programmation, et naturellement l'apprentissage du français. J'ai aussi modifié mon environnement d'écriture sous Emacs pour rechercher les mots dans le dictionnaire et pour afficher les commentaires de l'IA. J'aime particulièrement explorer des techniques d'apprentissage avec ma fille comme les cartes mémoire et les histoires qui suivent le principe de l'apport compréhensible. Quelles méthodes sont efficaces contre quels défis, et comment nous pouvons tirer le meilleur parti des technologies disponibles ? Ce que nous apprenons nous servira bien dans tous les sujets.

De la même manière, l'apprentissage du piano m'aide à apprécier le défi et le plaisir de progresser. Une autre raison de le faire est qu'il aide ma fille à l'apprendre aussi.

Comme ma vie est remplie d'intérêts qui s'entrelacent, c'est important de gérer mon attention face à plusieurs tentations de s'éparpiller, comme la programmation de nouvelles automatisations. Je commence peut-être une tâche et je me retrouve ensuite à faire une tâche complètement différente après une suite d'étapes logiques. On sait ce que c'est, de fil en aiguille. Donc je dois écrire mes notes au fur et à mesure. Rien ne me presse et peu de mes tâches sont urgentes, donc quand je perds le fil de mes pensées, je peux rire et le retrouver. Si j'écris et que je partage ces notes, quelqu'un peut les trouver même après plusieurs années et me les rappeler. C'est très difficile de choisir un moment où j'arrête d'explorer et où je publie mes notes. La tentation est toujours de continuer à suivre une nouvelle idée.

Heureusement, l'effet cumulatif de loisirs qui se complètent m'encourage à grandir, et quand je suis bloquée dans une direction, une ou deux autres pistes se sont ouvertes. En parlant de directions, je trouve que c'est difficile d'écrire quand je veux introduire deux ou plusieurs suites d'idées simultanées, à cause de la linéarité de l'écriture. De toute façon, c'est mieux d'écrire même si c'est un peu décousu.

Je pense que la reconnaissance vocale m'aide à saisir plus d'idées et les progrès technologiques m'aident à les exécuter. Je vais aussi m'améliorer en apprenant et en reliant de nouvelles curiosités à mes autres curiosités. J'ai hâte de voir quelles sortes de choses sont possibles.

Bien que j'aie plusieurs heures de liberté maintenant que ma fille est capable de faire beaucoup de choses elle-même, il y a toujours plus de choses que je veux apprendre. Les loisirs entrelacés se développent, tandis que les loisirs isolés sont oubliés. Par exemple, je ne joue plus à Stardew Valley maintenant que ma fille n'y joue plus. C'est un jeu amusant, mais si je peux choisir un passe-temps, j'en préfère un qui serve des objectifs multiples simultanés. Le jardin de mes intérêts n'est pas formel et ordonné, mais plutôt naturel et entremêlé.

Ma fille a aussi beaucoup de centres d'intérêt. Une année elle s'est intéressée au Cube de Rubik et aux autres casse-têtes, une autre année elle apprenait tout sur Pokémon. Ça ne me dérange pas, tout se combine de façons inattendues. Ce sera intéressant de voir comment elle grandira, et moi aussi.

Merci à Zachary Kai d'accueillir le Carnaval IndieWeb ce mois-ci !

jeudi 19 février

J'ai rangé mes notes pour me préparer à envoyer les titres de mes tâches à l'IA avec mes entrées de journal et mes projets pour qu'elle me suggère d'autres ressources et des idées.

J'ai mis à jour les données pour mon client et j'ai envoyé ma facture.

Après la pause de l'après-midi, j'ai emmené ma fille chez LifeLabs pour un ECG et une prise de sang. Elle était si courageuse. Puis elle a acheté deux bols de nouilles instantanées : aux fruits de mer pour elle et au poulet pour moi. Mon habitude est d'acheter une petite friandise pour ma fille après les rendez-vous médicaux pour lui donner quelque chose qu'elle peut attendre avec impatience pendant un examen médical. Elle préférait le McDonalds, mais maintenant elle préfère les nouilles instantanées.

Pour le dîner, ma fille a préparé des boules de riz au saumon. C'était délicieux.

J'ai essayé la synthèse vocale Kokoro TTS avec un serveur FastAPI. Je la préfère à Google Traduction car elle paraît plus naturelle. Elle me permet de convertir le texte en phonèmes, ce qui est mieux que de convertir mot par mot en utilisant la base de données Lexique parce que Kokoro traite les liaisons. Kokoro génère des horodatages par mot pour l'anglais, mais pas encore pour le français. Ce n'est pas grave, je pense qu'après quelques mois, ce sera possible.

Je me demande quelle est la meilleure façon de tirer profit de mes rendez-vous avec mon tuteur. Je voudrais profiter de son expérience.

  • Nous pouvons continuer à corriger ma prononciation avec l'aide des enregistrements.
  • Nous pouvons commencer par des sons de base, puis des mots, puis des expressions, puis des phrases.
  • Il y a d'autres manières que je ne connais même pas. C'est un long voyage, je n'ai pas besoin de me dépêcher. Je suis heureuse d'essayer des façons variées pour découvrir celles qui sont bonnes pour moi (et peut-être pour ma fille).

vendredi 20 février

Je me suis couchée très tard hier soir. Au réveil, je ne trouvais plus mes lunettes. Heureusement, j'avais des paires de rechange dans un tiroir. Je les ai cherchées. Après une brève recherche, j'ai finalement retrouvé mes lunettes sur mon iPad sur l'étagère.

Pendant le rendez-vous avec mon tuteur, j'ai essayé des virelangues qu'il m'a donnés. Je me suis amusée. Le « r » est trop difficile pour l'instant, mais ça viendra un jour. Nous avons aussi corrigé des mots dans mon journal comme « suggérant » et « apprentissage ». J'ai découvert que mes horodatages n'étaient pas synchronisés avec les fichiers audio, donc j'ai lu mon journal à voix haute.

J'ai ajouté les transcriptions de l'API grâce à Kokoro TTS. Le «r» est toujours très difficile pour moi. Ça viendra un jour. Pour le moment, je vais travailler sur :

  • Maman peint un grand lapin blanc.
    {mamˈɑ̃ pˈɛ̃ œ̃ ɡʁˈɑ̃ lapˈɛ̃ blˈɑ̃.}
  • Un enfant intelligent mange lentement.
    {œ̃n ɑ̃fˈɑ̃ ɛ̃tɛliʒˈɑ̃ mˈɑ̃ʒ lɑ̃tmˈɑ̃.}
  • Le roi croit voir trois noix.
    {lə ʁwˈa kʁwˈa vwˈaʁ tʁwˈa nwˈa.}
  • Il est loin mais moins loin que ce coin.
    {il ɛ lwˌɛ̃ mɛ mwˈɛ̃ lwˌɛ̃ kə sə kwˈɛ̃.}
  • Le témoin voit le chemin loin.
    {lə temwˈɛ̃ vwˈa lə ʃəmˈɛ̃ lwˈɛ̃.}
  • Moins de foin au loin ce matin.
    {mwˈɛ̃ də fwˈɛ̃ o lwˌɛ̃ sə matˈɛ̃.}
  • La laine beige sèche près du collège.
    {la lˈɛn bˈɛʒ sˈɛʃ pʁɛ dy kɔlˈɛʒ.}
  • La croquette sèche dans l’assiette.
    {la kʁokˈɛt sˈɛʃ dɑ̃ lasjˈɛt.}
  • Elle mène son frère à l’hôtel.
    {ɛl mˈɛn sɔ̃ fʁˈɛʁ a lotˈɛl.}
  • Le verre vert est très clair.
    {lə vˈɛʁ vˈɛʁ ɛ tʁɛ klˈɛʁ.}
  • Elle aimait manger et rêver.
    {ɛl ɛmˈɛ mɑ̃ʒˈe e ʁɛvˈe.}
  • Le jeu bleu me plaît peu
    {lə ʒˈø blˈø mə plˈɛ pˈø}
  • Ce neveu veut un jeu.
    {sə nəvˈø vˈøt œ̃ ʒˈø. - Kokoro TTS utilise « vˈøt œ̃ » pour « veut un », mais Gemini et le tuteur dit que c'est « vˈø œ̃ » sans liaison.}
  • Le feu bleu est dangereux.
    {lə fˈø blˈø ɛ dɑ̃ʒʁˈø.}
  • Le cœur seul pleure doucement.
    {lə kˈœʁ sˈœl plˈœʁ dusmˈɑ̃.}
  • Le beurre fond dans le cœur chaud.
    {lə bˈœʁ fˈɔ̃ dɑ̃ lə kˈœʁ ʃˈo.}
  • Les fleurs de ma sœur sentent bon.
    {le flˈœʁ də ma sˈœʁ sˈɑ̃t bˈɔ̃.}
  • Tu es sûr du futur ? \\ ** {ty ɛ sˈyːʁ dy fytˈyʁ ?}
  • Un mur dur bloque la rue.
    {œ̃ mˈyʁ dˈyʁ blˈok la ʁˈy.}
  • OU / OÙ / OÛ:
    • Où sommes-nous, sous ce grand loup ?
      {u sˈɔmnˈu, su sə ɡʁˈɑ̃ lˈu ?}
  • Le hibou sait où il va.
    {lə ibˈu sˈɛ u il vˈa.} - Kokoro TTS utilise « sˈɛt u » pour « sait où », mais le tuteur a dit que « sˈɛ u » sans liaison.
  • O fermé (devant consonne):
    • L’homme fort mord la pomme.
      {lˈɔm fˈɔʁ mˈɔʁ la pˈɔm.}
    • Le sombre col tombe.
      {lə sˈɔ̃bʁ kˈɔl tˈɔ̃b.}
  • O ouvert / Ô / AU / EAU (fin de syllabe)
    • L’auto saute au trottoir chaud.
      {lotˈo sˈot o tʁɔtwˈaʁ ʃˈo.}
    • Le château d’en haut est beau.
      {lə ʃatˈo dɑ̃ ˈo ɛ bˈo.} - Raphael says no t; Kokoro included t liaison.

Il m'a conseillé de me concentrer sur :

  • IN / IM / AIN / EIN / UN vs AN / AM / EN / EM (lapin VS mange)
  • EU vs AI / EI / ÈGE / Ê / ETTE (Je VS laine)
  • U / Û vs OU / OÙ / OÛ (Tu VS Tout)

Kokoro TTS indique quelques liaisons, mais le tuteur et la synthèse vocale de Google Traduction sont en désaccord avec Kokoro. Je pense que je dois trouver une autre source pour les phonèmes.

Après le rendez-vous, je me suis concentrée sur la différence entre la durée attendue de mon fichier réassemblé et la durée réelle. J'ai modifié ma bibliothèque compile-media pour concaténer des résultats intermédiaires au lieu de traiter en une seule passe. Il y avait encore des bogues.

Il a plu aujourd'hui, donc nous sommes restés chez nous à l'exception de ma brève sortie pour rendre des livres à la bibliothèque.

Ma fille avait mal au dos. Je me demande si elle s'est trop étirée ou si elle avait une mauvaise posture en étant assise sur le canapé.

Nous avons ajouté quelques intérêts et des événements à notre bilan graphique de l'année de ma fille.

La bénévole qui est responsable de l'infolettre cette semaine a une urgence familiale, donc j'ai repris le rôle. C'est facile grâce à mes automatisations.

samedi 21 février

Ma fille a eu du mal à multiplier un nombre à deux chiffres par un nombre à un seul chiffre, peut-être parce qu'elle était occupée à découdre une couture sur sa jupe. Elle est partie en trombe.

Ma fille a reçu de belles fleurs de ses tantes pour son anniversaire. Elle a remarqué que les fleurs LEGO ressemblent beaucoup aux vraies fleurs. Maintenant, notre table a un total de trois vases de fleurs : deux LEGO et un vrai. Elle aime bien les fleurs.

Mon mari et moi avons discuté pour savoir si nous voulions l'ancien four dont son frère s'était débarrassé. D'un côté, cela nécessite de l'argent pour louer un fourgon et demande des efforts pour l'installer, et nous nous étions débrouillés avec seulement notre mini four. D'un autre côté, c'est probablement une bonne occasion pour nouer des liens.

Ma fille et moi avons fait les courses. Nous avons aussi attrapé un Abra Dynamax sur Pokémon Go. Elle a fait tomber un de mes écouteurs Bluetooth et il est tombé dans une flaque, mais heureusement, il fonctionne après avoir séché.

J'ai modifié ma bibliothèque compile-media pour remettre tous les horodatages de paquets audio. Maintenant, la durée du fichier audio final est précise, ce qui permet l'utilisation de MFA pour générer les horodatages par mot.

J'ai commencé à réfléchir à une interface d'analyse de ma prononciation des virelangues. Je veux voir les formes d'onde de l'audio dans un tableau pour faciliter le lancement et la comparaison.

Mon interface de Reddit a commencé à traduire automatiquement toutes les discussions et les commentaires en français. Bien ! Ça transforme mon scrolling en un entraînement à la compréhension.

Ma fille a voulu dessiner un arbre d'intérêts comme l'arbre de lecture que je lui avais fait quand elle apprenait à lire. Elle a fait une petite erreur. J'ai dit que tous les artistes le font, mais elle est devenue trop frustrée et elle est encore partie en trombe. La première fois que j'ai vérifié si elle allait bien, elle était toujours de mauvaise humeur. La deuxième fois, je n'ai fait que des sons du Pokémon Psykokwak. Elle s'est assez amusée à répondre par des sons de Psykokwak. Après un peu plus de détente, elle était prête à demander du ruban correcteur à mon mari. Je pense que le perfectionnisme est un défi pour ma fille.

dimanche 22 février

Ma fille a organisé une réunion virtuelle avec ses tantes et ses cousines. C'était sympa de converser avec elles.

Je me suis dépêchée d'emmener ma fille à son cours de patinage. Nous sommes arrivées un peu tard. Ils ont continué avec l'évaluation des compétences telles que le patinage en arrière. Je pense que ce n'était pas grave, mais j'aimerais vraiment que ma fille trouve un moyen de se préparer à partir plus vite.

Je me suis entraînée aux virelangues en français que mon tuteur m'a donnés. J'ai généré des modèles audio grâce à la synthèse vocale Kokoro, et j'ai ajouté des pauses avec FFmpeg. De cette façon, je peux essayer le virelangue pendant le silence. J'ai enregistré mes tentatives pour les écouter avec mon tuteur mardi, mais je n'en suis pas totalement satisfaite.

  • 00:00 Maman peint un grand lapin blanc.
  • 00:02 Un enfant intelligent mange lentement.
  • 00:05 Le roi croit voir trois noix.
  • 00:07 Il est loin mais moins loin que ce coin.
  • 00:09 Le témoin voit le chemin loin.
  • 00:11 Moins de foin au loin ce matin.
  • 00:14 La laine beige sèche près du collège.
  • 00:16 La croquette sèche dans l'assiette.
  • 00:18 Elle mène son frère à l'hôtel.
  • 00:20 Le verre vert est très clair.
  • 00:22 Elle aimait manger et rêver.
  • 00:24 Le jeu bleu me plaît peu.
  • 00:26 Ce neveu veut un jeu.
  • 00:27 Le feu bleu est dangereux.
  • 00:29 Le beurre fond dans le cœur chaud.
  • 00:31 Les fleurs de ma sœur sentent bon.
  • 00:33 Un mur dur bloque la rue.
  • 00:36 Le hibou sait où il va.
  • 00:37 L’homme fort mord la pomme.
  • 00:39 Le sombre col tombe.
  • 00:40 L’auto saute au trottoir chaud.
  • 00:43 Le château d’en haut est beau.
  • 00:45 Le cœur seul pleure doucement.

J'ai aussi emmené ma fille chez Sephora pour acheter quelque chose. Elle a choisi un étui pour son désinfectant pour les mains qu'elle peut décorer avec des breloques. Je pense que c'est un peu cher, mais elle peut choisir ce qu'elle veut acheter avec ses propres économies. Elle a voulu m'acheter quelque chose, donc j'ai suggéré des élastiques pour cheveux.

Mon mari a préparé beaucoup de petits gâteaux à l'ananas et à la betterave pour la fête d'anniversaire de ma fille mardi. Parce que notre mini four ne peut cuire que six petits gâteaux à la fois et que la recette utilise du bicarbonate de soude pour faire lever la pâte, car elle réagit une fois qu'il est mélangé, il pense que c'est mieux de diviser les ingrédients en deux lots avant de les mélanger. Il a préparé trois fournées de petits gâteaux et un gâteau.

View Org source for this post

2026-02-23 Emacs news

| emacs, emacs-news

: Added m-x.app examples, moved el-init to AI category, added retrospective link.

Org Mode is a big part of why I enjoy Emacs, so I'm delighted that there's a new release out (Org 9.8). Thanks to all who contributed! If you would like to help out, Ihor is looking for several volunteers who can try to reproduce bugs and do initial feedback on the new patches.

Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, Mastodon #emacs, Bluesky #emacs, Hacker News, lobste.rs, programming.dev, lemmy.world, lemmy.ml, planet.emacslife.com, YouTube, the Emacs NEWS file, Emacs Calendar, and emacs-devel. Thanks to Andrés Ramírez for emacs-devel links. Do you have an Emacs-related link or announcement? Please e-mail me at sacha@sachachua.com. Thank you!

View Org source for this post

La semaine du 9 février au 15 février et un aperçu de mon processus

| french

Un aperçu de mon apprentissage du français

00:03 Je viens de commencer des cours particuliers avec un nouveau tuteur de français, donc c'est une bonne occasion de documenter mon processus actuel au cas où il aurait des suggestions.

Mon journal

00:19 Je commence par mes entrées de journal que j'écris sur mon téléphone tout au long de la journée (un peu par-ci, un peu par là) sur l'application Orgzly Revived. Je les synchronise avec mon ordinateur grâce à Syncthing. Orgzly utilise le champ de texte standard dans lequel un correcteur automatique est intégré. Pour chercher des mots dans le dictionnaire, je consulte WordReference ou je prends une note pour les revoir plus tard. Si je veux traduire une expression que je ne trouve pas sur WordReference, j'utilise Google Traduction. Les deux sont moins pratiques que de chercher les mots sur mon ordinateur sous Emacs, mais le compromis en vaut la peine car je peux écrire n'importe quand et n'importe où. Ça me permet d'utiliser les temps morts quand je dois attendre ma fille ou quand je me blottis sous les couvertures.

Réécrire

01:26 L'écriture de textes longs et la correction sont beaucoup plus faciles sur mon ordinateur que sur mon téléphone grâce à la taille de l'écran et à quelques fonctions que j'ai développées. Je dois utiliser le correcteur d'orthographe Flyspell parce que j'oublie souvent les accents. J'ai aussi besoin d'un correcteur grammatical. J'utilise donc Grammalecte via Flycheck sur Emacs pour identifier les erreurs d'accord du nom avec l'article, l'adjectif ou le verbe. Mais Grammalecte ne peut pas détecter les anglicismes ou les mauvais choix de mots.

02:12 J'ai essayé quelques modèles d'IA pour obtenir des commentaires. Pour le moment, je préfère Gemini ou Claude. L'API gratuite de Gemini est limitée à vingt requêtes par jour, donc il vaut mieux corriger mon journal quotidiennement au lieu de le mettre de côté jusqu'à mon rendez-vous avec mon tuteur. Claude n'offre pas d'API gratuite. Pour l'essayer de temps en temps, j'utilise Spookfox qui contrôle Firefox depuis Emacs.

02:50 J'affiche les résultats de l'IA avec Flycheck sous Emacs qui surligne les erreurs et en affiche l'explication. Ça facilite la réécriture. Je peux voir automatiquement l'explication de l'erreur à l'emplacement du curseur, et je peux aussi naviguer vers la prochaine erreur. Quand j'ai des questions ou des clarifications, je les pose à l'IA.

03:21 Après plusieurs révisions, je remarque quand l'IA commence à tourner en rond. Pour minimiser ça, je lui envoie mon brouillon actuel avec l'historique des suggestions. J'ajoute les commentaires à un journal de bord pour chaque entrée. Ce journal de bord est en fait disponible via le lien « View Org source for this post » au bas des articles. Un jour, je les analyserai pour visualiser la fréquence des types d'erreurs et générer des questions qui m'aideront à apprendre.

04:03 Je veux faciliter la correction sur mon smartphone, mais le petit écran me limite. Soit je dois passer souvent d'une application à l'autre, soit j'essaie d'intégrer la fonctionnalité à l'écran. Si j'ajoute un bouton pour accepter la suggestion au lieu de taper moi-même, je risque de ne pas apprendre aussi efficacement. C'est contre-productif car cela développe la mémoire du clic au lieu de la mémoire orthographique. Si je clique sur l'emplacement de l'erreur pour taper moi-même, la reconfiguration de l'affichage pour le clavier à l'écran est déroutante. Je me demande quel type d'interface serait le plus adapté…

04:54 L'usage de l'IA pour peaufiner mes textes ne donne qu'une illusion de compétence. Au fond, je reste une débutante. Cependant, je pense que c'est utile car cela m'habitue au subjonctif, au conditionnel et aux expressions plus naturelles plutôt qu'aux anglicismes dans le contexte de mes centres d'intérêt et de ma vie quotidienne. Comme lorsque l'on joue du piano, il vaut mieux s'exercer précisément, même si c'est lentement, plutôt que de prendre de mauvaises habitudes. Si je travaille davantage, je finirai par les corriger moi-même. L'IA n'écrit pas pour moi. Je choisis les idées et j'écris les brouillons ; en revanche, il faut que je fasse les corrections moi-même pour apprendre. Si l'IA n'existait pas, j'apprendrais plus lentement via les cours particuliers, qui sont chers, ou via les forums gratuits. Peut-être que je choisirais un autre loisir.

Les enregistrements

06:16 Après avoir essayé de corriger ma grammaire avec ces outils, j'enregistre mes tentatives de prononciation. J'aime les pratiquer dans le contexte des phrases parce que la combinaison des sons m'embrouille souvent, et aussi parce que les phrases viennent de mon journal et me rappellent certains moments.

06:43 Pour ce faire, j'utilise une fonction pour transformer mes phrases en sous-titres, et je les enregistre phrase par phrase. Avant chaque enregistrement, j'écoute un modèle de prononciation en utilisant la synthèse vocale de Google Traduction via une bibliothèque Python. J'écoute, je répète, j'écoute, je répète.

La synthèse vocale

07:11 L'intonation de Google Traduction est un peu plate, donc je dois faire un effort pour y mettre de l'animation quand je répète. Je peux aussi passer au moteur de synthèse vocale d'Azure, qui est plus naturel, mais pour une raison quelconque, je préfère l'intonation de Google Traduction. Quand ma prononciation sera un peu meilleure, je voudrais essayer de cloner ma voix comme si quelqu'un avait ajusté les tons de sa voix clonée lorsqu'il étudiait le chinois. Je pense que l'écoute d'un modèle de sa propre voix a un impact psychologique intéressant.

08:03 Une fois que j'ai terminé mes enregistrements, j'écoute souvent toutes les paires de modèles et d'enregistrements pour les réévaluer. Je les refais si c'est nécessaire. L'écoute des différences entre les sons est une grande partie de l'amélioration de la prononciation, donc j'étudie le cours de phonologie du FSI et d'autres ressources de temps en temps.

08:32 Après beaucoup de tentatives, j'utilise subed-record sous Emacs pour assembler l'enregistrement final, peut-être en alternance avec un carillon. De cette façon, même si j'enregistre les expressions au lieu de phrases complètes, elles n'embrouillent pas les auditeurs.

08:56 Je souhaite également simplifier cette tâche sur mon smartphone. J'ai créé un outil pour faciliter l'écoute de la synthèse vocale phrase par phrase en utilisant l'API Web Speech de Google Chrome. Je peux ajouter une fonctionnalité pour enregistrer mes tentatives, peut-être avec l'aide de la reconnaissance vocale pour minimiser les clics. Puis, je peux télécharger tous les enregistrements finaux accompagnés d'un fichier de sous-titres qui correspond au fichier audio. Si je le fais, je peux utiliser les temps morts pour enregistrer de courts extraits que je peux assembler sur mon ordinateur.

La publication

09:42 J'utilise Montréal Forced Aligner pour générer des horodatages mot par mot. Pour publier sur mon blog, j'entoure le texte d'un bloc Org Mode pour associer le fichier aux liens suivants. J'inclus le fichier de l'enregistrement final et j'ajoute des horodatages par paragraphe ou par point pour faciliter la navigation. Pour éviter le désordre, je n'affiche pas d'horodatages par mot, mais dans le sous-titre actuel sur le lecteur audio, mon logiciel me permet de cliquer sur un mot pour réécouter le son à ce moment-là.

10:22 Bien que je sois un peu gênée de publier mes brouillons et mes enregistrements avant que mon tuteur ne corrige tout, ce n'est pas la fin du monde. C'est facile à mettre à jour. Je pense que c'est comme une thérapie d'exposition, ce qui m'aidera à me délier la langue.

Le rendez-vous

10:46 Chaque semaine, je rencontre un tuteur pour identifier les expressions maladroites et les mots dont je dois travailler la prononciation. Ça vaut la peine car de temps en temps, l'IA génère des suggestions bizarres que je ne suis pas en mesure d'évaluer parce que je suis une débutante. Je ne trouve pas non plus de bonne manière d'utiliser l'IA pour corriger ma prononciation. La plupart des approches utilisent la reconnaissance vocale, mais c'est trop clément parce que celle-ci devine de manière probabiliste le sens. Je suppose que je peux utiliser la reconnaissance vocale pour fournir des scores de confiance mot par mot, ce qui semble être l'approche que d'autres applications utilisent. Le Montréal Forced Aligner peut aussi identifier les phonèmes, donc je peux éventuellement l'utiliser pour surligner les mots sur lesquels je m'embrouille avec les voyelles ou les lettres muettes, mais je crois que la transcription précise en API n'est pas un problème résolu. D'un autre côté, un interlocuteur réel peut non seulement identifier facilement mes erreurs, mais aussi me guider pour les corriger en expliquant les mouvements de la langue ou des lèvres, ou en suggérant des mots similaires pour enchaîner les sons. C'est une bonne occasion d'essayer d'apprendre avec un enseignant, et ça montre à ma fille que j'accorde de l'importance à l'apprentissage.

12:42 Avant le rendez-vous avec mon tuteur, j'exporte mes entrées d'Org Mode en HTML et je copie mes entrées dans un document partagé sur Google Docs. Pendant le rendez-vous, je lance mes enregistrements si j'en ai ou je lis mon journal à voix haute. Mon tuteur explique ses corrections et il écrit ses commentaires dans le document. Je répète les mots ou les phrases jusqu'à ce que ce soit correct. Ma prononciation a toujours besoin d'être grandement améliorée, donc c'est très utile de pouvoir lire les mots pendant qu'il écoute. Je pense que si je crée un logiciel pour synchroniser le sous-titre actuel avec ma sélection dans notre document partagé sur Google Docs, ça nous aidera à suivre où j'en suis plus facilement pour que mon tuteur ajoute ses remarques.

13:51 Une fois que nous nous serons habitués l'un à l'autre et que mon tuteur pensera que c'est gérable, nous pourrons discuter des sujets qui nous intéressent. Rien ne me presse de finir mes brouillons. C'est aussi une bonne chose que je m'entraîne à trouver des mots spontanément en conversant. L'écriture de mon journal doit me donner beaucoup de mots que je peux utiliser, mais bien sûr la taille du vocabulaire dont on dispose dans une conversation est inférieure à celle qu'on peut atteindre en écrivant tranquillement avec beaucoup d'outils. Parler intimide beaucoup d'étudiants, mais plus on essaie, plus on progresse. Le reste de mes brouillons peut attendre le prochain rendez-vous, ou peut-être que mes chers lecteurs me donneront des commentaires pour améliorer mon français.

14:58 Si seulement la conversation était dotée de soulignements automatiques pour identifier mes erreurs… De toute façon, mon tuteur peut corriger mes erreurs en temps réel ou prendre des notes pour m'expliquer mes erreurs sans couper le fil de nos pensées. Si c'est acceptable, je peux aussi enregistrer le rendez-vous pour le transcrire automatiquement et le réécouter plus tard. De temps en temps, j'utilise la reconnaissance vocale en temps réel via Live Captions sur Google Chrome pour les sous-titres instantanés. Cela m'aide à comprendre quand il parle trop vite ou utilise des mots que je comprends plus facilement en lisant qu'en écoutant à ce stade, même si les résultats ne sont pas très précis.

16:00 Comme Live Captions efface le sous-titre précédent pour afficher le sous-titre actuel au fur et à mesure, mon outil de journalisation est plus pratique. Mais il prend du temps à s'initialiser et Google Chrome bascule souvent sur mon micro physique par défaut, ignorant le périphérique virtuel qui inclut le son de mon tuteur. Ce n'est donc pas très fiable. Pourvu que je configure correctement mon système et que je garde la tête froide (c'est difficile en tant que débutante), je peux utiliser mon raccourci clavier pour insérer le résultat de la reconnaissance vocale à la demande, qui est plus précis mais plus lent sur mon ordinateur.

Mise à jour

16:54 Après le rendez-vous, je mets à jour mes enregistrements, mes sous-titres, et mes horodatages en suivant les commentaires de mon tuteur. Je les publie sur mon blog pour me responsabiliser et pour suivre mes progrès.

Des cartes Anki

17:15 J'extrais automatiquement le contenu des entrées dans des fichiers individuels par date pour l'analyser avec un logiciel Python qui repère les nouveaux lemmes, extrait les phrases qui les incluent, et crée des cartes Anki qui utilisent les textes à trous. Je préfère mémoriser les mots dans le contexte de la phrase plutôt que des mots isolés car je pense que ça minimise la tentation de traduire de l'anglais. Je révise les cartes chaque matin quand je me lève. Parce que les phrases entrent dans ce système de répétition espacée pour les mémoriser, c'est bien qu'une vraie personne qui parle bien le français me corrige pour éviter d'ancrer des erreurs.

Regarder et écouter

18:20 Je regarde aussi des émissions et des films doublés en français avec les sous-titres en français. Je vais télécharger les sous-titres sur mon ordinateur ou mon smartphone pour étudier à mon rythme. Ma fille s'est amusée quand nous avons regardé KPop Demon Hunters en français ensemble, donc je suis prête à le regarder plusieurs fois pour travailler mon oreille en lisant les sous-titres. Un jour, je tenterai de les corriger.

18:54 J'ai aussi téléchargé des chansons sur mon téléphone pour les écouter. Si je choisis des chansons familières comme Disney ou Kpop Demon Hunters, je peux me concentrer sur elles si je veux et je peux aussi les laisser en fond sonore au cas où je devrais me concentrer sur autre chose.

Les nombres

19:20 D'après mon outil de pointage, jusqu'à présent, cela représente un total de 216 heures, ou une moyenne de 2 heures par jour depuis novembre. Mes cartes Anki prennent 20 minutes. Une émission prend une heure.

19:41 En analysant mes données, je pense que l'apprentissage du français remplace le fait de jouer à Stardew Valley, qui a été mon obsession pendant un mois. Il a également réduit le temps consacré à l'écriture des articles en anglais pour mon blog et à la pratique du piano, mais je continue à faire ces activités. Les principales victimes de mon réaménagement du temps sont mon écriture en anglais et mes dessins tels que mes sommaires mensuels. Mon journal en français est plus minutieux que mon journal en anglais, donc ce n'est pas grave. Je peux toujours traduire si c'est nécessaire. Je pense que c'est facile d'augmenter le temps d'apprentissage du français grâce aux avantages cumulatifs qui rendent le temps plus plaisant.

20:47 À l'avenir, je vais passer à deux rendez-vous de 45 minutes avec mon tuteur par semaine au lieu d'un rendez-vous d'une heure. Cela m'encourage à écrire de façon plus complexe, crée l'espace pour des conversations et évite que ma voix ne se fatigue.

21:11 J'ai créé un logiciel pour analyser mon journal en utilisant la bibliothèque Spacy afin de compter les lemmes uniques dans mes textes pour que les mots similaires comme « savoir » et « sais » soient regroupés sous un seul lemme. Je pense que c'est plus précis que de chercher les mots dans la base de données Lexique. Jusqu'à présent, mon journal contient un total de plus de 31 000 mots ou plus de 2 500 lemmes uniques. J'accumule environ 25 nouveaux lemmes uniques à chaque entrée, ce qui est d'ailleurs légèrement supérieur à mon quota de nouvelles cartes Anki à apprendre, donc je n'arrive pas à rattraper mon retard qui ne cesse de grandir. Peut-être que je devrais augmenter ma limite, si mon cerveau peut le supporter. Peut-être qu'un jour presque tous les mots dans une entrée seront familiers, mais pour le moment, je trouve toujours beaucoup de nouvelles pensées que je veux écrire et beaucoup d'idées d'amélioration que je veux essayer et partager.

22:41 C'est très bien. Mes nouveaux loisirs ne durent pas toujours, mais parce que ce loisir inclut l'aide de ma fille, le bricolage de mes outils, les souvenirs de mon journal et l'engagement psychologique de payer mes cours particuliers, je crois que ça me convient probablement pour le moment. J'ai hâte d'apprendre davantage.

lundi 9 février

00:00 J'ai eu mon dernier rendez-vous avec ma tutrice Claire. J'ai montré mes enregistrements sur mon blog. Ils étaient très utiles pour réviser la prononciation parce que nous les avons écoutés et analysés. Quand je parle, je trouve que c'est difficile de m'écouter en même temps, donc l'enregistrement en valait la peine même s'il demande plusieurs tentatives.

00:28 Les cicatrices de ma fille lui faisaient mal, donc elle n'a pas voulu aller au cours de gymnastique. Nous sommes allés à pied à la bibliothèque, au supermarché et au parc en jouant à Pokémon Go.

00:42 Pour le dîner, mon mari et ma fille ont préparé deux soupes. En hiver, l'air est si sec, donc les soupes étaient très réconfortantes. Nous les avons mangées avec du pain de mon mari. C'était délicieux.

00:58 À l'heure du coucher, ma fille avait une sensation étrange au niveau du nez, mais nous n'avons pas pu faire grand-chose. Elle s'est encore barricadée dans sa chambre.

01:11 J'ai feuilleté des profils de professeurs de français sur Italki. J'aime les professeurs qui publient leurs vidéos de présentation avec sous-titres en français. Ça me montre qu'ils sont à l'aise avec la technologie et qu'ils ont réfléchi à la façon dont les étudiants peuvent apprendre grâce à leur présentation. Cette semaine, je dois choisir une personne pour faire un cours d'essai.

mardi 10 février

00:00 J'étais fatiguée parce que ma fille s'est blottie contre moi pendant la nuit. Mais j'étais contente que ma fille sache que même si elle a été de mauvaise humeur la nuit dernière, elle est toujours la bienvenue si elle veut un câlin.

00:18 Il faisait beau. Mon mari et moi avons déneigé le trottoir devant les maisons de nos voisins. Deux voisins nous ont dit que nous les avons inspirés à déneiger devant chez leurs voisins. Une autre personne a dit qu'il n'habitait pas ici, mais il a choisi notre rue pour essayer de trouver un chemin dans la neige, et il était clair que quelqu'un y avait mis beaucoup de soin. C'est gratifiant de voir les gens emprunter le chemin que nous avons tracé.

01:02 Grâce au temps calme, mon mari et moi nous nous sommes assis dehors pour profiter du soleil. Il a lu et j'ai écrit dans mon journal en français sur mon téléphone. J'ai utilisé un clavier Bluetooth pour taper, ce qui me permet de profiter de plus d'espace sur l'écran. Mes gants me permettent de taper assez bien, et de toute façon, taper n'est pas un problème dans mon apprentissage du français.

01:32 Ma fille s'était couchée trop tard hier soir, donc elle était trop fatiguée pour participer à la classe ce matin. Nous voulons trouver une meilleure façon de gérer cette situation. Elle déteste l'école parce qu'elle est trop lente, trop ennuyeuse et trop bruyante. Je suis ouverte aux alternatives. Je sais que ça ne marche pas si j'essaie de la forcer. Le principal défi est probablement la gestion de ses émotions. Si elle part furieuse et que ça l'empêche de prendre soin d'elle-même comme son sommeil ou le nettoyage de ses piercings, c'est un défi qu'elle peut relever avec ou sans notre aide. Donc comment lui montrer ça sans la mettre sur la défensive ? La colère est difficile pour beaucoup de gens. Comme toujours, elle doit vouloir quelque chose de différent avant qu'elle puisse changer. Je pense qu'une approche sévère ne l'aide pas. Dans l'ensemble, c'est tout à fait acceptable.

02:44 L'après-midi, je me suis renseignée sur la façon d'utiliser Montréal Forced Aligner pour générer des horodatages de mots. J'ai aussi essayé Aeneas pour les générer, mais je préfère les horodatages de MFA parce qu'ils sont plus précis. J'ai modifié subed-word-data.el pour analyser le format TextGrid que MFA produit, et j'ai aussi créé des fonctions pour insérer et supprimer les horodatages de mots dans les sous-titres au format VTT. Je les ai utilisées sur mon blog pour me permettre de cliquer sur un mot pour réécouter le son à ce moment-là. Je veux ajouter une fonctionnalité similaire à subed pour faciliter la répétition des sons.

03:39 Le bulletin de notes est arrivé ! Ma fille a obtenu des notes allant de B+ à A+, ce qui m'a tellement soulagée. Ça signifie qu'elle peut gérer ses devoirs, au moins pour la quatrième année. Pendant les mois précédents, je la laissais choisir quels devoirs faire et quand, et même ne pas faire certains devoirs. C'est difficile de se retenir de la pousser avec insistance, mais c'est nécessaire. Elle a été très fière grâce aux résultats de ses efforts. Maintenant, ces données vont m'aider à ne plus m'inquiéter.

04:26 Nous nous sommes mis d'accord sur une pause sans Internet de minuit à 6 h pour toute la famille. C'est un bon départ.

04:36 J'ai pris un rendez-vous avec un professeur de français. Je vais commencer avec un tuteur qui s'intéresse également à la technologie.

mercredi 11 février

00:00 Je suis allée à la banque à pied pour retirer des espèces pour la leçon d'escalade de ma fille aujourd'hui.

00:08 J'ai téléchargé les sous-titres d'une émission pour étudier plus en détail. Je pense qu'ils m'aideront à comprendre le français.

00:17 J'ai participé à la réunion virtuelle OrgMeetup. J'ai présenté mes fonctions pour insérer et publier des liens avec des horodatages.

00:27 Après le dîner, ma fille et moi sommes allées au cours d'escalade avec son amie et le père de son amie qui a organisé l'événement pour sa troupe. Il s'est avéré qu'il y avait assez de place pour que je les rejoigne, donc j'ai rangé mes affaires dans un casier et j'ai aussi fait de l'escalade. Nous nous sommes tellement amusés. (Mais je me suis un peu inquietée à cause d'un garçon qui toussait toujours.) Si son amie veut apprendre l'escalade dans un gymnase proche, ma fille veut l'accompagner.

01:05 Ma fille m'a posé des questions sur l'apprentissage du français. Elle était aussi curieuse de l'éducation des surdoués. J'ai expliqué pourquoi elle avait un examen individuel l'année dernière, et pourquoi elle doit trouver ses propres adaptations à un système qui ne peut pas s'adapter à elle.

01:27 Je dois me préparer pour mon premier rendez-vous demain avec un nouveau tuteur. Je vais me présenter : Je m'appelle Sacha. J'habite à Toronto avec mon mari et ma fille. Ma fille a neuf ans et elle a commencé à apprendre le français à l'école. Je viens des Philippines, donc je n'ai pas étudié le français quand j'étais enfant. Je veux l'aider, donc j'apprends le français depuis novembre. Cela fait environ quatre mois. Je trouve agréable la stimulation mentale de l'écriture dans une autre langue et le prétexte pour bricoler mes outils et flux de travail. Je tiens mon journal en français avec l'aide de l'IA pour obtenir des commentaires. J'extrais les phrases qui ont de nouveaux lemmes pour les mémoriser sur des cartes Anki. J'écoute des podcasts et des émissions avec les sous-titres en français. J'essaie quelques ressources pour l'apprentissage. Je pratique l'expression orale avec une tutrice en lisant mon journal à voix haute (ce qui lui permet de corriger ma prononciation et mon écriture en même temps). Mais elle a dû arrêter, donc je veux en trouver encore un ou une autre. Donc, nous y voilà.

jeudi 12 février

Ce matin, j'ai eu le premier rendez-vous avec mon nouveau tuteur. Après une brève présentation, nous avons commencé par mes notes de journal de lundi et de mardi. Je suis ravie de ses commentaires parce que je ne peux pas évaluer si les suggestions d'IA sont bizarres. Parce que j'utilise mon journal pour faire des cartes Anki pour mémoriser le vocabulaire, j'ai besoin de correction pour éviter d'ancrer les erreurs. Je veux aussi internaliser la prononciation du français pour faciliter la conversation. L'IA ne peut pas corriger ma prononciation. Le premier rendez-vous s'est bien passé, donc j'ai planifié deux rendez-vous de quarante-cinq minutes par semaine. On va voir.

J'ai facilité la mise à jour de mes sous-titres et mes enregistrements après que le tuteur a fait des remarques. J'ai utilisé Claude IA pour générer une fonction pour comparer deux listes de chaînes, puis j'ai utilisé ma fonction pour afficher les phrases qui ont été modifiées.

Ma fille a hâte que je dessine une récapitulation de l'année pour son anniversaire. J'en ai dessiné une l'année précédente. C'est une bonne façon de nous souvenir et de fêter sa croissance. Elle aura 10 ans dans deux semaines. C'était une année merveilleuse.

Par exemple :

  • Elle a géré sa participation à la classe et ses propres devoirs. Selon le dernier bulletin de notes, elle a réussi à obtenir des notes allant de B+ à A+. L'attente avant de recevoir les notes était difficile pour moi parce que je me suis inquiétée, particulièrement quand elle ne faisait pas certains devoirs ou qu'elle ne voulait pas participer à la classe. Mais avec l'aide d'une thérapeute, j'ai réussi à me retenir jusqu'à ce que l'enseignant nous ait donné le bilan. Elle aspire à plus d'indépendance, et c'est mieux si elle s'entraîne quand les conséquences sont minimes.
  • Elle a commencé à apprendre le français à l'école, donc j'ai aussi commencé pour que nous puissions apprendre ensemble.
  • Elle a pris des cours périscolaires différents : des entraînements individuels de natation et de gymnastique, certains ateliers et un camp d'été de poterie, un club nature, un club Minecraft à l'école virtuelle, et un cours d'art et un cours de patinage avec des amies différentes. Elle aime bien tout apprendre même si les camarades de classe étaient souvent trop bruyants.
  • Elle nous a aidés dans la cuisine. Elle est devenue très capable et elle peut gérer plusieurs aspects de la cuisine elle-même, comme la préparation du chocolat chaud pour ses amies ou le découpage d'ingrédients.
  • Elle est devenue capable d'aller au parc à vélo ou au magasin à pied un peu avant moi. Elle était aussi fière d'avoir pu choisir les produits et payer elle-même. Au marché fermier, elle aime bien acheter les fruits et son pain au levain préféré.
  • Elle a commencé à explorer les soins de la peau et d'autres aspects de ses soins personnels. Elle a découvert qu'elle préfère la marque Evereden et elle a acheté certains produits elle-même. Elle a choisi de se faire percer les oreilles. Je l'aide pour son nettoyage.
  • Elle continue de s'intéresser à Star Wars. Elle s'est amusée à utiliser Claude IA pour générer beaucoup d'histoires interactives.
  • Elle s'est intéressée à Pokémon. Elle joue souvent à Pokémon Go sur mon ancien smartphone que je lui ai donné. Elle joue aussi aux anciennes versions sur un émulateur. Elle regarde les émissions Pokémon et elle lit des livres. Naturellement, toute la famille a besoin d'apprendre tout ce qu'il y a à savoir sur Pokémon.
  • Nous avons souvent joué à KidSpark, qui comprenait un supermarché imaginaire. C'est sa partie préférée du Centre des sciences de l'Ontario, qui est maintenant fermé.
  • Elle s'est très amusée au Musée des Illusions avec son amie. Elle a aussi profité de l'occasion pour peindre sur sa tablette tactile au Musée des beaux-arts de l'Ontario et explorer les expositions au Musée royal de l'Ontario.
  • Elle a fait face à des changements dans ses amitiés : une amie est devenue plus proche, une amie est devenue un peu plus distante. Elle est devenue plus confiante quant à ses préférences.
  • Petit à petit, elle a clairement mûri. Cette année a offert plusieurs occasions de pratiquer la gestion de ses émotions, ce qui n'est pas toujours facile.
  • Elle a souvent appelé ses tantes et ses cousines pendant qu'elle jouait à Minecraft ou Donjons et Dragons. Elle s'est aussi rapprochée de notre famille lors d'un mariage et d'autres événements familiaux.
  • En été, elle nous a aidés en faisant du bénévolat pour Bike Brigade. Elle était tellement fière quand elle a livré des courses aux destinataires de banques alimentaires en utilisant son propre vélo.

Comment dessiner toutes les choses sur une seule feuille de papier… C'est un beau problème.

Après l'école, ma fille m'a dit en français « J'ai très froid. » Je lui ai fait une tasse de chocolat chaud pour la réchauffer. Elle a commencé à construire les fleurs LEGO qui sont arrivées aujourd'hui.

Nous sommes allés aux Stockyards pour chercher un vase parce que ma fille en veut un pour placer des fleurs LEGO. Aucun de ceux du magasin ne lui plaisait (trop grand, trop haut, trop petit, trop complexe), mais elle a voulu acheter certaines fournitures de bricolage.

Pour le dîner, nous avons préparé des boules de riz. Nous avons aussi mangé des restes.

Ma fille a dit qu'elle préfère pratiquer le français avec nous parce que l'enseignante de ma fille ne lui enseigne pas la compétence conversationnelle ou les mots qui sont liés à ses centres d'intérêt. Elle s'est amusée en apprenant des mots dans mon jeu de Pokémon Go que j'ai mis en français comme « Evoli est attrapé » et « Gagné ! ».

Je ne sais pas pourquoi je n'y ai pas pensé plus tôt… Nous pouvons regarder le KPop Demon Hunters en français. Nous l'avons regardé énormément de fois en anglais donc je n'ai pas besoin de la traduction, mais je veux trouver de meilleurs sous-titres. Nous avons essayé la première partie du film ce soir et j'étais étonnée de comprendre beaucoup de mots. C'est prometteur.

Nous diversifions notre apprentissage en mathématiques en apprenant d'autres choses comme les nombres binaires plutôt que de prendre de l'avance pour éviter l'ennui maintenant et plus tard. Si ma fille veut aussi élargir ses connaissances en français et apprendre les choses et les compétences que l'école ne va pas lui enseigner, je me demande ce que nous pouvons apprendre ensemble.

vendredi 13 février

Pendant une réunion parents-professeurs, l'enseignant et nous avons discuté du bulletin scolaire de ma fille. Il a dit que c'est une bonne élève, même si ce serait mieux si elle pouvait faire plus de devoirs. En sciences, elle peut s'améliorer si elle fait davantage de recherches. J'ai dit qu'elle a peut-être besoin de plus de motivation. Si elle veut apprendre une matière, elle lit tous les livres et tous les sites. En mathématiques, elle aime résoudre des problèmes que je lui pose. Il a aussi dit qu'elle est devenue plus capable de défendre ses propres intérêts. Il a dit qu'il peut offrir des possibilités d'adapter ses devoirs aux sujets qui l'intéressent. Ma fille est fière de pouvoir gérer de plus en plus par elle-même, donc si son enseignant lui dit que ces choses sont négociables, elle préfère peut-être négocier avec son enseignant directement plutôt que de passer par moi.

Nous avons attaché les perles-fleurs en céramique aux breloques pour sandales en utilisant le pistolet à colle. Elle a dit que maintenant nous pouvons distinguer nos sandales qui sont du même style et de la même couleur. Avant cela, elles n'avaient qu'une différence de taille.

J'ai emmené ma fille en métro à KidSpark pour jouer à la marchande. Nous avons aussi joué à Pokémon Go. Sur le chemin du retour, j'ai oublié de vérifier la destination et nous n'avons pas pris le bon tram. Au moment où nous sommes rentrées à la maison, ma fille était très fatiguée et elle avait très faim. Mon vélo cargo m'a beaucoup manqué. C'est plus pratique, mais à cause de la neige, les pistes cyclables ne sont pas fiables. J'ai hâte de faire du vélo une fois qu'elles seront dégagées.

samedi 14 février

J'ai aidé ma fille à ranger sa chambre en la transformant en un lieu magique comme Mary Poppins. Nous avons alterné entre claquements de doigts et rangement des affaires en chantant. Elle l'a fait avec enthousiasme. Elle m'a même aidée à nettoyer les miroirs.

Pour le déjeuner, nous avons préparé encore des boules de riz, qui étaient délicieuses.

Bien qu'il ait fait beau, ma fille n'a pas voulu participer au club nature du parc. Elle a préféré aller avec nous aux Stockyards à pied. Mon mari a apporté une pelle pour déneiger sur le chemin. Nous avons acheté des sacs poubelles au magasin de bricolage, des gouttes pour les yeux à la pharmacie, et quelques ingrédients au supermarché. Naturellement, nous avons aussi attrapé beaucoup de Pokémon.

Elle était très fatiguée à cause de notre longue promenade. Sur le chemin du retour, je la divertissais en bavardant sur Pokémon avec quelques mots français disséminés. C'est une bonne façon de l'entraîner en français. J'aime bien connaître ses centres d'intérêt. Pour le moment, mon mari et moi nous sommes ses personnes préférées et elle adore apprendre quelque chose ensemble. Bien sûr, ça changera un jour.

Après le retour, nous avons fait la lessive. J'ai oublié les rideaux de douche que j'avais blanchis, donc j'ai dû les attendre. À cause d'une mauvaise communication, j'ai ajouté les rideaux de douche à la lessive de polyester et de laine, que mon mari avait finie. Heureusement, malgré le décolorant et le cycle de lavage que j'avais choisi, aucun des vêtements en laine ne présentait de problème. Ce n'était pas grave.

J'ai proposé un lien à inclure dans l'infolettre de Bike Brigade sur des gens qui avaient dégagé une piste cyclable. Un bénévole de Bike Brigade n'a pas voulu l'inclure car il n'aime pas les gens. Alors, ça ne me regarde pas.

À l'heure du coucher, elle a dessiné des images Pokémon pour la Saint-Valentin.

dimanche 15 février

Nous sommes allées au cours de patinage de ma fille un peu tard, mais ce n'était pas grave. Elle a mis rapidement ses patins et son casque et elle s'est jointe à ses camarades. Aujourd'hui ils ont une évaluation. J'ai vu qu'elle peut gérer les tâches comme glisser sur un pied. Bravo !

Nous avons laissé nos Pokémon à deux arènes sur le chemin du retour. Ma fille a envie d'affronter un gigantesque Meowth, mais c'était trop puissant pour nous.

Nous avons apporté de la nourriture à ma belle-fille à vélo. Elle a donné à ma fille un cadeau pour son prochain anniversaire.

J'ai terminé la première saison des émissions en français. J'ai raté beaucoup de mots, mais j'ai suivi l'histoire assez bien. Je vais regarder la prochaine saison. Je n'ai jamais trouvé le temps de regarder des émissions en anglais parce que je préfère la programmation ou l'écriture, mais parce que c'est une partie de mon apprentissage du français, je me permets de les apprécier.

Prononciation

  • En hiver, l'air est si sec, donc les soupes étaient très réconfortantes.
  • Dans l'ensemble, c'est tout {/​tut​/ - liaison} à fait acceptable.
  • Grâce au temps calme, mon mari et moi nous nous sommes assis dehors pour profiter du soleil. Il a lu et j'ai écrit dans mon journal en français sur mon téléphone.
View Org source for this post

2026-02-16 Emacs news

| emacs, emacs-news

Lots of cool stuff this week! I'm looking forward to checking out the new futur library for async programming, and the developments around embedding graphics in a canvas in Emacs look interesting too (see the Multimedia section). Also, the discussion about making beginner configuration easier could be neat once the wrinkles are ironed out. Enjoy!

Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, Mastodon #emacs, Bluesky #emacs, Hacker News, lobste.rs, programming.dev, lemmy.world, lemmy.ml, planet.emacslife.com, YouTube, the Emacs NEWS file, Emacs Calendar, and emacs-devel. Thanks to Andrés Ramírez for emacs-devel links. Do you have an Emacs-related link or announcement? Please e-mail me at sacha@sachachua.com. Thank you!

View Org source for this post