Tp-Note news: Multilingual note-taking with linguistic heuristics

Tp-Note's main design goal is to convert some input text - usually provided by the system's clipboard - into a Markdown note file with a descriptive YAML header and meaningful filename. This blog post explains how to configure Tp-Note for multilingual note-taking. Consider the following note file example:

---
title:    Demokratie und Menschenbild
subtitle: Vorlesung
author:   Prof. Rainer Mausfeld
date:     2023-04-21
lang:     de-DE
---

Kognitionswissenschaftliche Einsichten in die Beschaffenheit des Menschen.

The YAML variable lang: indicates the natural language in which the note text is authored, here de-DE. This IETF language tag is useful when working with grammar and spell checkers. For example: when placed in last position, the grammar checker LanguageTool (LTEX) reads the variable lang: to activate the grammar and spelling rules for the indicated specific language (c.f. blog post). The recently released Tp-Note version 1.21.0 integrates linguistic analysis provided by the Lingua library. This new feature allows Tp-Note to determine automatically the natural language of new note files during their creation process.

Tp-Note renders MathML and adds syntax highlighting

One downside when you take notes with your keyboard and laptop is, that you can not enter mathematical formulas.

To remedy this, Tp-Note version 1.19.8 comes with a new feature: its note viewer and internal web-server can now render MathML in note files written in Markdown. It also features syntax highlighting for source code.

Note talking with Helix, Tp-Note and LanguageTool

I recently discovered the text editor Helix, a relatively new project written in Rust. Many features, like Tree-sitter integration or support for the Language Server Protocol LSP are available by default without any plugins and laborious configuration. This short note shows how to integrate Helix with the template tool Tp-Note and the grammar checker LanguageTool under Linux.

Tp-Note news: bidirectional filename synchronization

In one of my previous posts Note Taking for Minimalists we argued about the importance to keep full control over all the tools we take personal notes with. In this approach personal notes are simple text files, that live in the filesystem next to other resources they refer to. As (note) files are identified by their filename, special care needs to be taken to ensure that the files are named consistently e.g. using so called sort tags, that specify their sequence or chronological order when listed. Secondly, the filename must reflect the content description (meta data) of a note. This is where the note taking tool Tp-Note comes into play: it takes care, that the filename of a note exposes the note's meta data. Technically, Tp-Note reads the YAML header of the note file - in particular the title field - and corrects the filename of the note, if does not comply with some synchronization rule. From it's first version on Tp-Note was able to synchronize the note's meta data and filename unidirectionally. With Tp-Note version 1.16 comes a new feature: bidirectional filename synchronization. This new feature allows you to add automatically YAML header to any existing text file. Used in scripts you can convert your random text file collection into ordered note files with meta data.