/tlrc

A tldr client written in Rust

Primary LanguageRustMIT LicenseMIT

tlrc

A tldr client written in Rust.

CI release crates.io license
github downloads matrix

screenshot

Installation

Packaging status

Linux/macOS using Homebrew

Install tlrc with Homebrew:

brew install tlrc

Linux/macOS using Nix

Install tlrc from nixpkgs.

Arch Linux

Install tlrc (from source) or tlrc-bin (prebuilt) from the AUR.

openSUSE

Install tlrc with Zypper:

zypper install tlrc

Windows using Winget

Install tlrc with Winget:

winget install tldr-pages.tlrc

Windows using Scoop

Install tlrc with Scoop:

scoop install tlrc

macOS using MacPorts

Install tlrc with MacPorts:

port install tlrc

NetBSD

Install tlrc with pkgin:

pkgin install tlrc

From crates.io

To build tlrc from a source tarball, run:

cargo install tlrc

Note

Shell completion files and the man page will not be installed that way.

From GitHub Releases

You can find prebuilt binaries here.

Usage

See man tldr or the online manpage. For a brief description, you can also run:

tldr --help

Configuration

Tlrc can be customized with a TOML configuration file. To get the default path for your system, run:

tldr --config-path

To generate a default config file, run:

tldr --gen-config > "$(tldr --config-path)"

or copy the below example.

Configuration options

[cache]
# Override the cache directory.
dir = "/path/to/cache"
# Override the base URL used for downloading tldr pages.
# The mirror must provide files with the same names as the official tldr pages repository:
# mirror/tldr.sha256sums            must point to the SHA256 checksums of all assets
# mirror/tldr-pages.LANGUAGE.zip    must point to a zip archive that contains platform directories with pages in LANGUAGE
mirror = "https://github.com/tldr-pages/tldr/releases/latest/download"
# Automatically update the cache if it's older than max_age hours.
auto_update = true
max_age = 336 # 336 hours = 2 weeks
# Specify a list of desired page languages. If it's empty, languages specified in
# the LANG and LANGUAGE environment variables are downloaded.
# English is implied and will always be downloaded.
# You can see a list of language codes here: https://github.com/tldr-pages/tldr
# Example: ["de", "pl"]
languages = []

[output]
# Show the title in the rendered page.
show_title = true
# Show the platform name ('common', 'linux', etc.) in the title.
platform_title = false
# Prefix descriptions of examples with hyphens.
show_hyphens = false
# Use a custom string instead of a hyphen.
example_prefix = "- "
# Strip empty lines from output.
compact = false
# Print pages in raw markdown.
raw_markdown = false

# Number of spaces to put before each line of the page.
[indent]
# Command name.
title = 2
# Command description.
description = 2
# Descriptions of examples.
bullet = 2
# Example command invocations.
example = 4

# Style for the title of the page (command name).
[style.title]
# Fixed colors:       "black", "red", "green", "yellow", "blue", "magenta", "cyan", "white", "default"
# 256color ANSI code: { color256 = 50 }
# RGB:                { rgb = [0, 255, 255] }
color = "magenta"
background = "default"
bold = true
underline = false
italic = false
dim = false
strikethrough = false

# Style for the description of the page.
[style.description]
color = "magenta"
background = "default"
bold = false
underline = false
italic = false
dim = false
strikethrough = false

# Style for descriptions of examples.
[style.bullet]
color = "green"
background = "default"
bold = false
underline = false
italic = false
dim = false
strikethrough = false

# Style for command examples.
[style.example]
color = "cyan"
background = "default"
bold = false
underline = false
italic = false
dim = false
strikethrough = false

# Style for URLs inside the description.
[style.url]
color = "red"
background = "default"
bold = false
underline = false
italic = true
dim = false
strikethrough = false

# Style for text surrounded by backticks (`).
[style.inline_code]
color = "yellow"
background = "default"
bold = false
underline = false
italic = true
dim = false
strikethrough = false

# Style for placeholders inside command examples.
[style.placeholder]
color = "red"
background = "default"
bold = false
underline = false
italic = true
dim = false
strikethrough = false