Skip to content

brightdroid/tldr-node-client

This branch is 283 commits behind tldr-pages/tldr-node-client:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a38c896 · May 21, 2016
Feb 23, 2016
May 21, 2016
Mar 5, 2016
Mar 14, 2016
Mar 14, 2016
Feb 26, 2014
Mar 5, 2016
Feb 16, 2016
Feb 3, 2016
Oct 2, 2014
Mar 7, 2016
Feb 15, 2016
Mar 5, 2016
Mar 14, 2016
Dec 9, 2013

Repository files navigation

tldr-node-client

NPM version Travs CI Build Status AppVeyor CI Build status David DM Dependency Status David DM devDependency Status Gitter chat

A Node.js based command-line client for tldr.

tldr screenshot

Installing

npm install -g tldr

If you have trouble with the post-install script, try the following commands:

npm install -g --ignore-scripts tldr
tldr --update

Usage

To see tldr pages:

  • tldr <command> show examples for this command
  • tldr <command> --os=<platform> show command page for the given platform (linux, osx, sunos)
  • tldr --linux <command> show command page for Linux
  • tldr --osx <command> show command page for OSX
  • tldr --sunos <command> show command page for SunOS
  • tldr --list show all pages for current platform
  • tldr --list-all show all available pages
  • tldr --random show a page at random
  • tldr --random-example show a single random example

The client caches a copy of all pages locally, in ~/.tldr. There are more commands to control the local cache:

  • tldr --update download the latest pages
  • tldr --clear-cache delete the entire local cache

As a contributor, you might also need the following commands:

  • tldr --render <path> render a local page for testing purposes

Configuration

You can configure the tldr client by adding a .tldrrc file in your HOME directory. This file has to be valid JSON:

{
  "colors": {
    "text": "green",
    "command-background": "black",
    "command-foreground": "red",
    "command-token": "white"
  }
}

If you regularly need pages for a different platform (e.g. Linux), you can put it in the config file:

{
  "platform": "linux"
}

The default platform value can be overwritten with command-line option:

tldr du --os=osx

As a contributor, you can also point to your own fork or branch:

{
  "repository" : "myfork/tldr",
  // or
  "repository" : "myfork/tldr#mybranch",
}

Command-line Autocompletion

Currently we only support command-line autocompletion for zsh. Pull requests for other shells are most welcome!

zsh

It's easiest for oh-my-zsh users, so let's start with that.

mkdir -p $ZSH_CUSTOM/tldr
ln -s autocompletion/tldr.zsh $ZSH_CUSTOM/tldr/_tldr

Then add tldr to your oh-my-zsh plugins, usually defined in ~/.zshrc, resulting in something looking like this:

plugins=(git tmux tldr)

Fret not regular zsh user! Copy or symlink autocompletion/tldr.zsh to my/completions/_tldr (note the filename). Then add the containing directory to your fpath:

fpath = (my/completions $fpath)

FAQ

Colors under Cygwin

Colors can't be shown under Mintty or PuTTY, because the dependency colors.js has a bug. Please show support to this pull request, so it can be merged.

Meanwhile, you can do one of the following to fix this issue:

  • Add the following script to your shell's rc file (.zshrc, .bashrc, etc.): (RECOMMENDED)
tldr_path="$(which tldr)"
function tldr() {
	eval "$tldr_path" $@ "--color"
}
  • Add alias tldr="tldr --color=true" to your shell's rc file.
  • Prepend process.stdout.isTTY = true; to tldr.js (NOT RECOMMENDED)
  • Fix colors.js's logic (NOT RECOMMENDED)
    • Go to %appdata%\npm\node_modules\tldr\node_modules\colors\lib\system\
    • Overwrite supports-colors.js with supports-colors.js from my repo.
  • Use CMD.exe.

Contributing

Contribution are most welcome! Have a look over here for a few rough guidelines.

About

Node.js command line client for TLDR-pages

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 96.2%
  • Shell 3.8%