Tags

Tags give the ability to mark specific points in history as being important
  • v1.25.17

    ebc1818f · Publish `tpnote` v1.25.17 ·
    Reduce false positives in natural language detection.
    
    This release filters URLs in texts with markup before passing it to the Lingua
    crate. Before, URLs were often recognized as one of the configure natural
    languages. There are no changes in the configuration or the templates. Just
    the `get_lang()` filter got a little smarter. Now, it can even launch multiple
    threads from a thread pool with the help of the Rayon crate. This reduces
    Tp-Note's startup time when creating new, very large notes.
  • v1.25.16

    537943c7 · Publish `tpnote` v1.25.16 ·
    Add `gnome-text-editor` to default search list
  • v1.25.15

    Publish a Tp-Note installer package for Windows 11
    
    This release upgrades the Windows installer tool chain. The published Windows
    installer package (`tpnote-1.25.15-x86_64.msi`) is tested with Windows 11 and is
    probably the first working Tp-Note installer package for this Windows version.
    
    The new installer also sets sub-entries to the context menu that appears when
    you right-click on a file, a directory, the desktop or on the file explorer's
    background. First, click on "Show more options" and then on one of the
    following: "New Tp-Note", "Open", "View Tp-Note" or "Export Tp-Note".
  • v1.25.14

    Change browser search order: local Firefox ESR first
    
    Change in the default configuration (can be overwritten with a custom
    configuration file). This release changes the search order for installed
    browsers and privileges Firefox ESR.
  • v1.25.13

    Improve interchangeability between operating systems
    
    This release filters the Windows `\r` (carriage return) of all input streams
    for internal processing. Under Windows, new notes are still written with
    `\r\n` as newline characters. The Git configuration of Tp-Note's repository
    is adjusted to use exclusively `\n` for all platforms. This fixes a minor bug
    introduced with v1.25.12 (commit 3b5564e, upgrade of the `toml` crate). This
    bug only concerned Windows builds.
  • v1.25.12

    Maintenance release, no new features
    
    * Update documentation
    * Update dependencies
    * Minor refactoring of two templates
  • v1.25.11

    Weasyprint: render checkboxes with `tpnote -x . <FILE.md>`
    
    Newer versions of `weasyprint` require some additional CSS to render checkboxes
    correctly. This release adds CSS to the default configuration variable
    `exporter_doc_css`.
    
    Render `*.pdf` with:
    
        tpnote --export=- mydoc.md | weasyprint - mydoc.md.pdf
  • v1.25.10

    Command line API: minor change of some sentinal values
    
    This release comes with some minor command line option changes:
    
    | before             | now             |
    |--------------------|-----------------|
    | --export ''        | --export .      |
    | -x ''              | -x .            |
    | --force-lang ''    | --force-lang -  |
    | -l ''              | -l -            |
    
    * The new template variable `force_lang` reflects the command line option
      `--force-lang` and shows its influence in templates explicitly.
    * The template filter `replace empty` now recognizes empty arrays and the
      `Null` type as empty. Its option `with` accepts now any type.
  • v1.25.9

    Maintenance release: migrate to Rust 2024 edition
    
    * Upgrade dependencies
    * `tpnote-lib` API: restrict the visibility of `context` and its state.
    * Upgrade the tool chain to `rustc` v1.86
  • v1.25.8

    83413e62 · Publish `tpnote` v1.25.8 ·
    Allow localization schemes
    
    This release comes with a major refactoring of Tp-Note's core, which
    
    * introduces a (type state) state machine providing all templates
      with the variables they need.
    * merges the templates: `from_clipboard_*`, `from_yaml_clipboard_*` and
      `from_dir_*` into to the `from_dir_*` templates, which had been generalized
      for that purpose.
    * renames the following template variables:
    
      | before                   | now                    |
      |--------------------------|------------------------|
      | `stdin_header`           | `stdin.header`         |
      | `stdin`                  | `stdin.body`           |
      | `html_clipboard_header`  | `html_clipboard.header`|
      | `html_clipboard`         | `html_clipboard.body`  |
      | `txt_clipboard_header`   | `txt_clipboard.header` |
      | `txt_clipboard`          | `txt_clipboard.body`   |
    
    You can now define "localization" schemes, e.g.:
    
    ```toml
    [[scheme]]
    name = 'Deutsch'
    [scheme.tmpl]
    fm_var.localization = [
        ["fm_title", "Titel"],
        ["fm_subtitle", "Untertitel"],
        ["fm_author", "Autor"],
        ["fm_date", "Datum"],
        ["fm_lang", "Sprache"],
        ["fm_languages", "Sprachen"],
        ["fm_sort_tag", "Kennzeichen"],
        ["fm_file_ext", "Dateierweiterung"],
        ["fm_no_filename_sync", "Keine_Sync"],
        ["fm_filename_sync", "Dateinamensync"],
        ["fm_scheme", "Schema"],
    ]
    ```
    
    To create a now note with the new scheme `Deutsch`, invoke Tp-Note with:
    
    ```sh
    tpnote --scheme Deutsch
    ```
    
    To reopen an existing note file written with the new scheme, just add the file
    name as usual, e.g. `tpnote '20250123-My note file.md'`.
  • v1.25.7

    e696111a · Publish `tpnote` v1.25.7 ·
    Reduce false positives when guessing languages
    
    v1.25.6 introduced the new feature: "detect multiple languages in the clipboard
    input". This release adds 3 configuration parameters which can help to reduce
    false positives when Tp-Note guesses languages:
    
    ```toml
    [base_scheme.tmpl]
    filter.get_lang.language_candidates = [ "en", "fr", "de" ]
    filter.get_lang.relative_distance_min = 0.3
    filter.get_lang.consecutive_words_min  = 7
    filter.get_lang.words_total_percentage_min = 10
    ```
    
    Please consult Tp-Note's Manpage for more information on how to fine-tune the
    recognition algorithm by modifying the above default values.
  • v1.25.6

    ae9f43f1 · Publish `tpnote` v1.25.6 ·
    New feature: detect multiple languages in clipboard and stdin
    
    The template filter `get_lang` now detects multiple languages in the input
    text usually provided by the clipboard and stdin. The templates have been
    extended to emit the new template variable `languages:` in the header of new
    note files. The variable lists all languages found in the input text.
    The first language of this list is displayed as `lang:`.
  • v1.25.5

    8670f879 · Publish `tpnote` v1.25.5 ·
    Minor regression fix: Format `--config-default` output correctly.
    
    In v1.25.4 the top level configuration file variable `base_scheme` was added.
    From now on, all other schemes inherit from this structure.
    This release v1.25.5 updates the formatting of the configuration file generated
    by the command line option `--config-default`. In the generated configuration
    file all variables are commented out with `#` and shown with their default
    values. To change a default value, uncomment the corresponding line(s) and
    update the value. Rename the file `tpnote.toml` and place it in one of the
    searched locations. To get a list of those locations type `tpnote -V`.
  • v1.25.4

    ac6f8524 · Publish `tpnote` v1.25.4 ·
    Add `reStructuredText` support in templates
    
    This release adds `reStructuredText` code to the `annotate_file_content`
    template. (All other templates are markup language agnostic).
    
    To create a new ReStructuredText note invoke Tp-Note with:
    
    ```sh
    TPNOTE_EXTENSION_DEFAULT=rst tpnote
    ```
    
    To make ReStructuredText the default markup language for all future new notes,
    write a configuration file '`~/.config/tpnote/tpnote.toml`' with the following
    content:
    
    ```toml
    [base_scheme.filename]
    extension_default="rst"
    ```
    
    Other new features:
    
    * Make `exporter_highlighting_css` configurable
    * Make `viewer_highlighting_css` configurable
    
    Some minor bug fixes shipped with this release:
    
    * errorpage: display correct path to browsed doc
    * Rst renderer: always `trim()` input
  • v1.25.3

    701beb15 · Publish `tpnote` v1.25.3 ·
    Viewer: add dark mode
    
    This release adds a dark mode to Tp-Note's viewer.
    In order to activate the dark mode in Firefox go to:
    
        Settings -> General
        _Language and Appearance_
        _Website appearance_
        -> Select [*] "Dark"
  • v1.25.2

    Improve the clipboard HTML to Markdown converter: add table conversion
    
    New and improved features of the clipboard HTML to Markdown filter:
    
    * Conversion of tables
    * Better whitespace handling
    * Extension API
    
    This release migrates to the `html2md` crate with some patches applied.
    The author of `html2md` grants to this repository the MIT license.
  • v1.25.1

    Bugfix release: this release fixes a minor regression introduced with v1.25.0
    
    The commit:
    
        d79a706  Centralize HTML stream tagging code
    
    did not detect the empty clipboard properly and therefor the template
    `from_clipboard` was applied in cases where `from_dir` were the right choice.
    Fixed.
    
    This release completes the new feature introduced in v1.25.0:
    
    When you copy a chapter with its heading in your browser, Tp-Note will place
    the heading in the `title:` field of the new note's YAML header.
    
    Technical details: A new filter `html_heading` used in the
    `from_clipboard_content` template extracts the first HTML heading in the HTML
    clipboard.
  • v1.25.0

    New feature: detect the first heading in the HTML clipboard
    
    A new filter `html_heading` used in the `from_clipboard_content` template
    extracts the first HTML heading in the HTML clipboard. When you copy a chapter
    with a heading in your browser, Tp-Note will place this heading in the `title:`
    field of the new note's YAML header.
  • v1.24.12

    Maintenance release: replace HTML to Markdown library
    
    This maintenance release migrates to the `htmd` library used by
    Tp-Note's internal HTML to Markdown clipboard filter to improve stability.
  • v1.24.11

    Breaking change: rename `.tpnote.toml` to `tpnote.toml`
    
    The former marker filename was `.tpnote.toml`. As the marker file
    and the configuration file `~/.config/tpnote/tpnote.toml` have the same
    syntax and semantics, it is more consistent that they have the same filename.
    
    If you have used marker files, please rename them from `.tpnote.toml` to
    `tpnote.toml`.